/* ===== Flatsome guard (Phase 7): chống theme ghi đè layout trong shortcode ===== */
.mlp-dash, .mlp-dash *{ box-sizing:border-box; }
.mlp-dash{ line-height:1.5 !important; }
.mlp-dash h3{ margin:0 0 16px !important; padding:0 !important; border:0 !important; }
.mlp-dash p{ margin:0 0 8px; }
.mlp-dash a{ box-shadow:none !important; text-decoration:none; }
.mlp-dash a:hover{ box-shadow:none !important; }
.mlp-dash ul, .mlp-dash li{ list-style:none !important; margin:0 !important; padding:0 !important; }
.mlp-dash button{ font-family:inherit !important; text-transform:none !important; letter-spacing:normal !important;
    line-height:normal !important; box-shadow:none !important; width:auto !important; height:auto !important; }
.mlp-dash table{ width:100% !important; margin:0 !important; border:0 !important; background:none !important; box-shadow:none !important; }
.mlp-dash th, .mlp-dash td{ background:none !important; }
.mlp-dash input, .mlp-dash select, .mlp-dash textarea{ width:auto; max-width:100%; box-shadow:none !important; }
.mlp-dash .mlp-input{ width:100%; }
.mlp-dash img{ max-width:100%; }

/* 9Listening — student dashboard (Phase 4). Scoped under .mlp-dash to avoid theme conflicts. */
.mlp-dash{--p:#C8442C;--ink:#0F172A;--slate:#475569;--mut:#94A3B8;--line:#E8EDF3;
    font-family:'Inter',system-ui,-apple-system,sans-serif; color:var(--ink); max-width:980px; margin:0 auto;}
.mlp-dash *{box-sizing:border-box;}
.mlp-dash .material-symbols-outlined{font-family:'Material Symbols Outlined';font-size:18px;vertical-align:middle;}
.mlp-dash .mlp-muted{color:var(--mut);}

.mlp-dash-notice{display:flex;align-items:center;gap:8px;background:#EFF6FF;color:#1e40af;
    border:1px solid #dbeafe;border-radius:12px;padding:12px 15px;font-size:14px;margin-bottom:18px;}

.mlp-dash-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px;}
.mlp-stat{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px 20px;text-align:center;}
.mlp-stat-num{font-family:'Manrope',sans-serif;font-weight:800;font-size:30px;color:var(--p);line-height:1;}
.mlp-stat-lab{font-size:12.5px;color:var(--mut);margin-top:6px;}

.mlp-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px 22px;margin-bottom:18px;}
.mlp-card-h{font-family:'Manrope',sans-serif;font-weight:800;font-size:16px;margin:0 0 16px;}

.mlp-subgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px 26px;}
.mlp-subrow-top{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:5px;}
.mlp-subname{font-size:13.5px;font-weight:600;color:var(--slate);}
.mlp-subval{font-size:12.5px;font-weight:700;color:var(--p);}
.mlp-progress{height:8px;background:#EEF2F7;border-radius:999px;overflow:hidden;}
.mlp-progress-fill{height:100%;background:linear-gradient(90deg,#60a5fa,#C8442C);border-radius:999px;transition:width .4s;}

.mlp-hist{width:100%;border-collapse:collapse;font-size:13.5px;}
.mlp-hist th{text-align:left;color:var(--mut);font-weight:600;font-size:12px;padding:6px 8px;border-bottom:1px solid var(--line);}
.mlp-hist td{padding:9px 8px;border-bottom:1px solid #F7F2E9;}
.mlp-pct{font-weight:700;border-radius:6px;padding:1px 8px;font-size:12.5px;}
.mlp-pct-hi{background:#D1FAE5;color:#047857;} .mlp-pct-mid{background:#FEF3C7;color:#92400e;} .mlp-pct-lo{background:#FEE2E2;color:#dc2626;}
.mlp-link{color:var(--p);text-decoration:none;font-weight:600;} .mlp-link:hover{text-decoration:underline;}

.mlp-filters{display:flex;flex-direction:column;gap:9px;margin-bottom:16px;}
.mlp-filter-group{display:flex;flex-wrap:wrap;gap:7px;}
.mlp-pillbtn{border:1px solid var(--line);background:#fff;color:var(--slate);border-radius:999px;
    padding:5px 13px;font-size:12.5px;font-weight:600;cursor:pointer;transition:all .12s;}
.mlp-pillbtn:hover{border-color:#cbd5e1;}
.mlp-pillbtn.active{background:var(--p);color:#fff;border-color:var(--p);}
.mlp-pillbtn-sub.active{background:#0E7C66;border-color:#0E7C66;}

.mlp-testgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:13px;}
.mlp-tcard{display:block;background:#fff;border:1px solid var(--line);border-radius:14px;padding:15px;
    text-decoration:none;color:var(--ink);transition:border-color .12s,box-shadow .12s,transform .12s;}
.mlp-tcard:hover{border-color:var(--p);box-shadow:0 4px 14px rgba(59,130,246,.12);transform:translateY(-2px);}
.mlp-tcard-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px;}
.mlp-tlevel{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:2px 8px;border-radius:5px;}
.mlp-tlevel-skill{background:#EFF6FF;color:#A5361F;} .mlp-tlevel-section{background:#F3E8FF;color:#7c3aed;}
.mlp-tlevel-full{background:#FEE2E2;color:#dc2626;} .mlp-tlevel-pre_listening{background:#ECFDF5;color:#047857;}
.mlp-tdone{font-size:11px;font-weight:700;color:#047857;}
.mlp-tcard-title{font-weight:700;font-size:14.5px;line-height:1.35;margin-bottom:8px;}
.mlp-tcard-meta{display:flex;flex-wrap:wrap;align-items:center;gap:5px;font-size:11.5px;color:var(--mut);}
.mlp-dot{color:#cbd5e1;}
.mlp-diff{margin-left:auto;color:var(--p);letter-spacing:1px;font-size:9px;}

@media (max-width:640px){
    .mlp-dash-stats{grid-template-columns:1fr 1fr 1fr;gap:8px;}
    .mlp-stat{padding:12px;} .mlp-stat-num{font-size:22px;}
    .mlp-subgrid{grid-template-columns:1fr;}
}
