
:root{
  --blue:#0F63B5;--blue-dark:#1E4DB7;--blue-soft:#EAF2FB;--text:#1F2A37;--muted:#5B6B82;
  --line:#D9E2EC;--bg:#F2F5FA;--white:#fff;--ok:#157347;--warn:#9a6700;--danger:#b42318;
  --purple:#6941c6;--advisor:#0F63B5;--advisor-soft:#EAF2FB;--shadow:0 8px 24px rgba(31,42,55,.07);
}
*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif}
body{min-height:100vh}button,input,select,textarea{font:inherit}button{cursor:pointer}
.app{max-width:1240px;margin:auto;padding-bottom:70px;transition:.2s ease}
.top{margin:16px 18px 0;background:linear-gradient(135deg,var(--advisor),#1E4DB7);color:white;border-radius:18px;padding:14px 20px;box-shadow:0 8px 22px rgba(15,99,181,.16)}
.top-row{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.brand{font-size:13px;font-weight:900;letter-spacing:.5px}.title{font-weight:900;line-height:1.1}
.title{font-size:24px;margin-top:4px}.userline{display:inline-block;font-size:11px;margin-top:7px;opacity:.94}.roles{display:inline-block;font-size:10px;opacity:.82;margin:7px 0 0 10px}.top-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.top-btn{border:1px solid rgba(255,255,255,.5);background:rgba(255,255,255,.14);color:#fff;border-radius:11px;padding:10px 12px;font-size:11px;font-weight:900}
.mode{display:inline-block;margin:7px 0 0 10px;background:#fff2cc;color:#6c5000;padding:4px 8px;border-radius:999px;font-size:9px;font-weight:900}
.content{padding:16px 18px}.block-title{font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:#526079;font-weight:900;margin:18px 2px 9px}
.summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.summary.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.kpi{background:#fff;border:1px solid var(--line);border-radius:13px;padding:10px 8px;text-align:center;box-shadow:var(--shadow)}
.kpi .n{font-size:24px;font-weight:900;color:var(--advisor);line-height:1}.kpi .l{font-size:9px;color:var(--muted);font-weight:850;margin-top:5px}
.kpi.publica .n{color:#1769aa}.kpi.privada .n{color:#b4237a}.kpi.total .n{color:#243b64}
.toolbar{display:grid;grid-template-columns:minmax(0,1fr) 210px 210px;gap:10px;margin:16px 0 10px}
.search,.filter{width:100%;border:1px solid #d1d9e5;background:#fff;border-radius:12px;padding:12px 14px;outline:none;height:46px}
.list{display:grid;gap:12px}.card{position:relative;background:white;border:1px solid var(--line);border-left:6px solid var(--advisor);border-radius:17px;padding:17px;box-shadow:0 4px 18px rgba(24,39,75,.055)}
.card.reassigned{background:#f9f8ff;border-left-color:#7c3aed}.reassigned-banner{margin:-17px -17px 14px;padding:9px 14px;border-radius:16px 16px 0 0;background:#ede9fe;color:#5b21b6;font-size:11px;font-weight:900}
.card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.school{font-size:17px;font-weight:900;line-height:1.3;padding-right:8px}.status{font-size:10px;font-weight:900;padding:7px 9px;border-radius:999px;background:#eef4ff;color:#244f8f;white-space:nowrap}
.status.visitada{background:#e9f8ef;color:var(--ok)}.status.seguimiento{background:#fff5d6;color:var(--warn)}
.badges{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0}.badge{font-size:10px;font-weight:850;padding:5px 8px;border-radius:999px;background:var(--advisor-soft);color:#244f8f}.badge.urgent{background:#b42318;color:#fff}
.assignment{background:#f8fafc;border:1px solid #e8edf3;border-radius:10px;padding:10px 12px;margin:9px 0;font-size:12px;line-height:1.55}
.meta{font-size:13px;line-height:1.55;color:#344054;margin:4px 0}.meta strong{color:#172033}
.ins-box{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:11px 0;padding:10px 12px;border:1px dashed #c9d4e3;border-radius:11px;background:#fbfcfe}
.ins-chip{font-size:11px;font-weight:850;color:#36506f}.ins-add{border:0;background:var(--advisor);color:white;border-radius:9px;padding:8px 10px;font-size:10px;font-weight:900;white-space:nowrap}
.contacts-box{margin:11px 0;padding:12px;border:1px solid #D7E3EF;border-radius:12px;background:#F7FAFD}.contacts-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.contacts-title{font-size:10px;font-weight:900;letter-spacing:.05em;color:#36506f}.contacts-actions{display:flex;gap:6px;flex-wrap:wrap}.contact-linkbtn{border:1px solid #C8D7E6;background:#fff;color:#28567F;border-radius:8px;padding:7px 9px;font-size:9px;font-weight:900}.contact-preview{display:grid;gap:7px;margin-top:9px}.contact-mini{background:#fff;border:1px solid #E0E8F0;border-radius:9px;padding:9px 10px}.contact-name{font-size:12px;font-weight:850;color:#1F2A37}.contact-detail{font-size:10px;color:#5B6B82;margin-top:3px;line-height:1.45}.contact-detail a{color:#0F63B5;text-decoration:none;font-weight:750}.contact-empty{font-size:10px;color:#718096;margin-top:8px}
.actions{display:grid;grid-template-columns:1.25fr 1.25fr .9fr .9fr .9fr;gap:8px;margin-top:13px}.btn{border:0;border-radius:10px;padding:11px 8px;font-size:10px;font-weight:900}.btn-primary{background:var(--advisor);color:white}.btn-problem{background:#b42318;color:white}.btn-light{background:#eef2f7;color:#27405f}.btn-outline{background:white;color:#35506f;border:1px solid #cbd5e1}
.empty,.loading,.error{background:white;border:1px solid var(--line);border-radius:15px;padding:28px 18px;text-align:center}.loading{color:var(--muted)}.error{background:#fff1ee;border-color:#f3c6bd;color:#8a1c13}.spinner{width:28px;height:28px;border:3px solid #dce5f2;border-top-color:var(--advisor);border-radius:50%;animation:spin .8s linear infinite;margin:0 auto 12px}@keyframes spin{to{transform:rotate(360deg)}}
.admin-actions{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.admin-actions button{border:0;background:var(--advisor);color:white;border-radius:11px;padding:12px 16px;font-size:11px;font-weight:900}.admin-actions .secondary{background:#fff;color:#31506f;border:1px solid #cad4e1}
.admin-section{background:white;border:1px solid var(--line);border-radius:17px;padding:17px;margin-top:16px;box-shadow:var(--shadow)}.admin-section h2{font-size:17px;margin:0 0 12px}
.advisor-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.advisor-card{border:1px solid var(--line);border-left:5px solid var(--ac,#0a56d0);border-radius:14px;padding:14px;cursor:pointer;background:#fff}.advisor-card h3{font-size:15px;margin:0}.score{font-size:18px;font-weight:900;color:var(--ac)}
.mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:10px}.mini{background:#f7f9fc;border-radius:9px;padding:8px;text-align:center}.mini b{display:block;font-size:16px}.mini span{display:block;font-size:8px;font-weight:850;color:#667085;margin-top:2px}
.activity{padding:10px 0;border-bottom:1px solid #edf0f4;font-size:13px;line-height:1.45}.activity:last-child{border-bottom:0}.small{font-size:11px;color:#667085}
.problem-row{border:1px solid var(--line);border-radius:12px;padding:12px;margin:8px 0}.problem-head{display:flex;justify-content:space-between;gap:8px}.problem-state{font-size:10px;font-weight:850;background:#eef2f7;padding:5px 7px;border-radius:999px}
.overlay{position:fixed;inset:0;background:rgba(9,18,32,.58);display:none;align-items:flex-end;justify-content:center;z-index:100;padding:0}.overlay.show{display:flex}.overlay.center{align-items:center;padding:18px}
.modal{width:100%;max-width:820px;background:white;border-radius:20px 20px 0 0;max-height:94vh;overflow:auto;padding:19px 19px calc(25px + env(safe-area-inset-bottom))}.center .modal{border-radius:18px;max-height:90vh}
.modal-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:13px}.modal-title{font-size:20px;font-weight:900}.modal-sub{font-size:12px;color:#667085;margin-top:4px}.close{border:0;background:#edf1f6;border-radius:9px;width:36px;height:36px;font-size:20px;color:#4a596c}
.field{margin:11px 0}label{display:block;font-size:12px;font-weight:850;color:#344054;margin-bottom:6px}.req{color:#b42318}input,select,textarea{width:100%;border:1px solid #ccd5e2;border-radius:10px;padding:11px;background:#fff;color:#172033;outline:none}textarea{min-height:92px;resize:vertical}input:disabled,select:disabled{background:#f2f4f7;color:#98a2b3}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.submit{width:100%;border:0;border-radius:11px;background:var(--advisor);color:white;padding:13px;font-weight:900;margin-top:8px}.submit.danger{background:#b42318}
.note{font-size:12px;line-height:1.5;background:#f8fafc;border:1px solid #e5e7eb;border-radius:10px;padding:11px;color:#475467}.modal-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.modal-actions button{flex:1;min-width:160px;border:0;border-radius:10px;padding:11px;font-weight:850}.modal-actions .main{background:var(--advisor);color:#fff}.modal-actions .warn{background:#f59e0b;color:#fff}.modal-actions .danger{background:#b42318;color:#fff}
.toast{position:fixed;left:50%;bottom:22px;transform:translateX(-50%) translateY(20px);opacity:0;pointer-events:none;background:#172033;color:white;padding:11px 15px;border-radius:10px;font-size:12px;font-weight:700;z-index:200;transition:.2s;max-width:90vw;text-align:center}.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
.reassigned-out{margin-top:18px}.reassigned-item{background:#f5f3ff;border:1px solid #ddd6fe;border-radius:11px;padding:11px;margin:8px 0;font-size:12px;line-height:1.5}
.advisor-sidebar{display:none}.advisor-menu-button{display:none}.advisor-nav-backdrop{display:none}.advisor-nav-section{margin:16px 0 7px;padding:0 10px;font-size:9px;font-weight:900;color:#718096;letter-spacing:.1em}.advisor-nav{display:flex;flex-direction:column;gap:4px}.advisor-nav button,.advisor-nav a{width:100%;border:0;background:transparent;color:#334155;text-align:left;padding:10px 11px;border-radius:10px;font-size:11px;font-weight:800;display:flex;align-items:center;gap:10px;text-decoration:none}.advisor-nav button:hover,.advisor-nav a:hover,.advisor-nav .active{background:#DCE8F4;color:#0F4F89}.advisor-nav-icon{width:24px;height:24px;display:grid;place-items:center;border-radius:8px;background:#fff;border:1px solid #D4DFEA;color:#0F63B5;font-style:normal}.advisor-brand{padding:10px 10px 16px;border-bottom:1px solid #D7E0EA}.advisor-brand strong{display:block;font-size:16px;color:#1E4DB7}.advisor-brand span{display:block;font-size:10px;color:#66768A;margin-top:4px}.advisor-user{margin-top:auto;padding:12px 10px;border-top:1px solid #D7E0EA}.advisor-user strong{display:block;font-size:11px}.advisor-user span{display:block;font-size:9px;color:#66768A;margin-top:3px;overflow:hidden;text-overflow:ellipsis}.contact-editor{border:1px solid #D9E2EC;border-radius:12px;padding:12px;margin:10px 0;background:#F8FAFC}.contact-editor-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.contact-editor-title{font-size:11px;font-weight:900;color:#36506F}.contact-remove{border:0;background:#FCE8E6;color:#9B271D;border-radius:8px;padding:6px 8px;font-size:9px;font-weight:900}.duplicate-warning{display:none;margin-top:7px;color:#8A5A00;background:#FFF6D8;border:1px solid #F3DE9D;border-radius:8px;padding:7px 8px;font-size:10px}.duplicate-warning.show{display:block}.add-contact{border:1px dashed #8FB3D3;background:#F2F7FC;color:#0F5A9E;border-radius:10px;padding:9px 11px;font-size:10px;font-weight:900}.contact-section{margin:14px 0;padding:12px;border:1px solid #D9E2EC;border-radius:12px;background:#F7FAFD}.contact-section-title{font-size:12px;font-weight:900}.contact-section-sub{font-size:10px;color:#66768A;margin:4px 0 10px}.directory-list{display:grid;gap:9px}.directory-card{border:1px solid #D9E2EC;border-radius:12px;padding:12px;background:#fff}.directory-card .school-label{font-size:9px;color:#5B6B82;font-weight:850;margin-bottom:5px}.picker-actions{display:flex;justify-content:flex-end;margin-top:12px}.activity-type{font-size:9px;font-weight:900;color:#0F63B5}.activity-row{border-bottom:1px solid #E6ECF2;padding:10px 2px}.activity-row:last-child{border-bottom:0}.perf{display:inline-block;font-size:9px;opacity:.82;margin:7px 0 0 10px}.global-results{display:grid;gap:8px;margin-top:10px;max-height:48vh;overflow:auto}.global-result{border:1px solid #D9E2EC;background:#fff;border-radius:11px;padding:11px;text-align:left}.global-result strong{display:block;font-size:12px}.global-result span{display:block;font-size:10px;color:#5B6B82;margin-top:3px}.global-result.outside{border-color:#F0C36D;background:#FFF9EA}.outside-note{font-size:10px;font-weight:850;color:#8A5A00;margin-top:5px}.directory-actions{display:flex;gap:7px;margin-top:9px}.directory-actions button{border:1px solid #C8D7E6;background:#fff;color:#28567F;border-radius:8px;padding:7px 9px;font-size:9px;font-weight:900}.directory-actions .delete{color:#9B271D;border-color:#E8C6C2}.history-tabs{display:flex;gap:8px;margin-bottom:12px}.history-tabs button{border:1px solid #C8D7E6;background:#fff;color:#28567F;border-radius:9px;padding:9px 11px;font-size:10px;font-weight:900}.history-tabs button.active{background:#0F63B5;color:#fff}.muted-banner{background:#FFF9EA;border:1px solid #F0D28F;color:#7A5200;border-radius:10px;padding:9px 11px;font-size:11px;margin:10px 0}
.login-screen{position:fixed;z-index:200000;inset:0;display:flex;align-items:center;justify-content:center;min-height:100dvh;padding:max(18px,env(safe-area-inset-top)) 18px max(18px,env(safe-area-inset-bottom));background:radial-gradient(circle at 18% 12%,rgba(70,196,226,.18),transparent 36%),linear-gradient(145deg,#073F7A,#0F63B5 58%,#1E4DB7);color:#fff}
.login-shell{width:min(420px,100%);text-align:center}.login-logo{width:min(205px,56vw);height:auto;display:block;margin:0 auto 18px;padding:10px 14px;background:rgba(255,255,255,.96);border-radius:16px;filter:drop-shadow(0 8px 18px rgba(0,0,0,.16))}.login-kicker{font-size:14px;font-weight:750;opacity:.9}.login-title{font-size:26px;line-height:1.12;font-weight:950;margin:5px 0 8px}.login-sub{font-size:13px;line-height:1.5;opacity:.9;margin:0 auto 18px;max-width:330px}.login-card{background:#fff;color:#1F2A37;border:1px solid rgba(255,255,255,.7);border-radius:22px;padding:22px;box-shadow:0 24px 65px rgba(5,35,72,.27)}.google-login{width:100%;min-height:52px;display:flex;align-items:center;justify-content:center;gap:11px;border:1px solid #C8D4E1;background:#fff;color:#1F2A37;border-radius:13px;font-weight:850}.google-login:hover{background:#F5F8FC}.google-icon{width:22px;height:22px}.login-access{font-size:11px;color:#5B6B82;line-height:1.5;margin:16px 0 0}.login-help{display:inline-block;margin-top:12px;color:#0F63B5;font-size:11px;font-weight:800;text-decoration:none}.login-mode{display:inline-flex;margin-bottom:12px;background:#FFF2CC;color:#6C5000;border-radius:999px;padding:5px 9px;font-size:9px;font-weight:950}.login-error{display:none;margin:12px 0 0;background:#FFF1EE;border:1px solid #F3C6BD;color:#8A1C13;border-radius:10px;padding:10px;font-size:11px}.login-error.show{display:block}.logout-btn{width:100%;margin-top:10px;border:1px solid #C8D7E6;background:#fff;color:#28567F;border-radius:9px;padding:9px;font-size:10px;font-weight:900}.simulation-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#FFF6C7;border:1px solid #F0D46A;color:#654D00;border-radius:12px;padding:11px 13px;margin:0 0 14px;font-size:11px;font-weight:850}.simulation-banner strong{font-weight:950}.simulation-banner button{border:1px solid #D5B84E;background:#fff;color:#654D00;border-radius:9px;padding:8px 10px;font-size:10px;font-weight:900;white-space:nowrap}.simulation-picker-list{display:grid;gap:8px;margin-top:12px}.simulation-user{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #D9E2EC;background:#fff;border-radius:11px;padding:11px 12px;text-align:left}.simulation-user strong{display:block;font-size:12px}.simulation-user span{display:block;font-size:10px;color:#667085;margin-top:3px}.simulation-user b{font-size:10px;color:#0F63B5}.simulation-note{font-size:11px;line-height:1.5;background:#F7FAFD;border:1px solid #D9E2EC;border-radius:10px;padding:10px;color:#475467}
@media(min-width:821px){body.advisor-view{padding-left:260px}body.advisor-view .app{max-width:none;width:100%;margin:0}body.advisor-view .advisor-sidebar{display:flex;position:fixed;z-index:500;left:0;top:0;bottom:0;width:260px;padding:16px 13px;background:#EAF0F6;border-right:1px solid #D3DEE9;flex-direction:column;overflow-y:auto}body.advisor-view .top{margin-left:22px;margin-right:22px}body.advisor-view .content{padding-left:22px;padding-right:22px}}
@media(max-width:1000px){.toolbar{grid-template-columns:minmax(0,1fr) 190px}.toolbar #orderMode{grid-column:1/-1}.advisor-grid{grid-template-columns:repeat(2,1fr)}.summary{grid-template-columns:repeat(3,1fr)}.actions{grid-template-columns:1fr 1fr}.actions .btn:first-child{grid-column:1/-1}}
@media(max-width:820px){body.advisor-view{padding-left:0}.advisor-menu-button{position:fixed;z-index:610;display:none;left:12px;top:12px;width:42px;height:42px;border:1px solid rgba(255,255,255,.6);border-radius:11px;background:#0F63B5;color:#fff;font-size:20px;box-shadow:0 8px 20px rgba(31,42,55,.18)}body.advisor-view .advisor-menu-button{display:block}body.advisor-view .advisor-sidebar{display:flex;position:fixed;z-index:600;left:0;top:0;bottom:0;width:min(290px,86vw);padding:16px 13px;background:#EAF0F6;border-right:1px solid #D3DEE9;flex-direction:column;overflow-y:auto;transform:translateX(-105%);transition:transform .22s ease}body.advisor-view.nav-open .advisor-sidebar{transform:translateX(0)}body.advisor-view .advisor-nav-backdrop{position:fixed;z-index:590;inset:0;background:rgba(31,42,55,.38)}body.advisor-view.nav-open .advisor-nav-backdrop{display:block}.top{padding-left:66px}.summary.four{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.top{margin:0;border-radius:0;padding:14px 14px 14px 66px}.top-row{display:block}.top-actions{justify-content:flex-start;margin-top:10px}.title{font-size:21px}.brand{font-size:11px}.content{padding:12px}.summary,.summary.four{grid-template-columns:repeat(2,1fr)}.toolbar{grid-template-columns:1fr}.toolbar #orderMode{grid-column:auto}.advisor-grid{grid-template-columns:1fr}.grid2,.grid3{grid-template-columns:1fr}.actions{grid-template-columns:1fr 1fr}.ins-box{align-items:flex-start;flex-direction:column}.ins-add{width:100%}.center{align-items:flex-start!important;padding-top:25px!important}.modal-actions{display:grid;grid-template-columns:1fr}.contacts-head{align-items:flex-start;flex-direction:column}}

/* SEDUCA Territorio CABA — QA UX 20260920.3 */
:root{--blue:#0f63b5;--blue-dark:#084778;--blue-soft:#edf5fc;--text:#172c42;--muted:#566b80;--line:#dce5ed;--bg:#f4f7fb;--shadow:0 4px 20px #223f5a08;color-scheme:light}
html{scroll-padding-top:24px}body{line-height:1.5}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button{touch-action:manipulation}button:disabled{cursor:default;opacity:.6}a{color:var(--blue)}:focus-visible{outline:3px solid #0f63b5!important;outline-offset:3px!important}input:focus,select:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #0f63b518}input[type=checkbox],input[type=radio]{width:20px;height:20px;flex:0 0 auto;accent-color:var(--blue)}.skip-link{position:fixed;z-index:300000;top:-100px;left:16px;background:white;padding:12px;border-radius:8px}.skip-link:focus{top:12px}.small,.bc-row-meta,.bc2-item-meta{font-size:13px;color:var(--muted);line-height:1.5;overflow-wrap:anywhere}
.app{max-width:none;padding-bottom:40px}.top{background:white;color:var(--text);box-shadow:none;border:1px solid var(--line);border-radius:16px;margin:22px 26px 0;padding:18px 22px}.top-row{align-items:center}.brand{font-size:11px;color:var(--blue);letter-spacing:.12em}.title{font-size:12px;letter-spacing:.09em;color:var(--muted);margin-top:8px}.userline{display:flex;flex-direction:column;margin-top:4px;font-size:13px;opacity:1;overflow-wrap:anywhere}.userline strong{font-size:23px;line-height:1.3;letter-spacing:-.02em}.userline span{color:var(--muted);margin-top:3px}.roles{font-size:11px;color:var(--muted);margin:7px 8px 0 0}.mode{background:#eaf2fb;color:#174e7d;font-size:10px;margin:6px 0 0}.top-btn{color:var(--blue-dark);border-color:var(--line);background:#f6f9fc;font-size:12px;min-height:44px}.content{padding:22px 26px}.perf{display:none}.block-title{font-size:12px}.summary{gap:12px}.kpi{padding:18px 12px;text-align:left}.kpi .n{font-size:28px;color:var(--text)}.kpi .l{font-size:11px;line-height:1.35;margin-top:7px}.toolbar{gap:12px;margin:22px 0 14px}.search,.filter{font-size:14px;height:48px}.card{border-left-width:4px;padding:20px;border-radius:16px}.school-card{content-visibility:auto;contain-intrinsic-size:auto 290px}.school{font-size:18px;letter-spacing:-.015em;font-weight:750}.school-link{padding:0;background:none;border:0;text-align:left;color:var(--blue-dark);text-decoration:none;line-height:1.4;white-space:normal;min-width:0}.school-link:hover{text-decoration:underline}.status{font-size:10px;white-space:normal;max-width:140px;text-align:center;flex-shrink:0}.badge{background:#edf4fb;color:#234c73;font-size:11px}.meta{font-size:13px;margin:6px 0}.next-action{border-left:3px solid #d5ab39;padding:8px 10px;margin-top:10px;background:#fff9e8;color:#705716;font-size:12px}.next-action strong{display:block}.actions.primary-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0 10px}.actions.primary-actions .btn:first-child{grid-column:auto}.btn{font-size:11px;min-height:44px;padding:10px 12px;line-height:1.4}.btn-primary,.submit,.ins-add{background:var(--blue)}.btn-problem{background:#fff1ee;color:#98352b;border:1px solid #ebc4bf}.school-secondary{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.school-secondary>*{flex:1;min-width:85px}.school-more{margin-top:14px;border-top:1px solid var(--line)}summary{cursor:pointer;min-height:44px;padding:12px 0;color:#315777;font-size:12px;font-weight:700}.school-more[open] summary{margin-bottom:2px}.contacts-title,.contact-linkbtn,.ins-add,.ins-chip,.contact-detail,.contact-empty,.directory-actions button{font-size:12px}.contact-name{font-size:14px}.contact-linkbtn,.directory-actions button,.add-contact,.contact-remove{min-height:44px;font-size:12px}.contact-section-title{font-size:14px}.contact-section-sub{font-size:12px}.contact-editor-title{font-size:12px}.duplicate-warning{font-size:12px}.directory-card{padding:16px}.school-label{font-size:12px!important}.activity-row{padding:14px 0}.activity-type{font-size:11px}.reassigned-item{background:white;border-color:var(--line);font-size:13px;padding:16px}.reassigned-out:empty{display:none}.history-tabs{flex-wrap:wrap}.history-tabs button{min-height:44px}.history-tabs button.active{background:var(--blue)}
.advisor-sidebar{background:white!important;border-right:1px solid var(--line)!important;padding:20px 14px!important}.advisor-brand{position:relative;padding:8px 12px 18px}.advisor-brand img{width:126px;height:auto;display:block}.advisor-brand>span{font-size:10px;letter-spacing:.12em;color:var(--blue-dark);font-weight:800;margin-top:9px}.advisor-nav{gap:3px;padding-top:5px}.advisor-nav-section{font-size:10px;letter-spacing:.12em;color:#63798e;margin:20px 0 6px}.advisor-nav button,.advisor-nav a{padding:10px 12px;min-height:44px;font-size:12px;font-weight:650;line-height:1.4}.advisor-nav-icon{background:transparent;border:0;flex:0 0 24px;font-size:17px;font-weight:600}.advisor-nav a>span:nth-child(2){flex:1}.advisor-nav .active{background:#eaf3fb;color:var(--blue);box-shadow:inset 3px 0 var(--blue)}.institutional-group{background:#f0f6fc;border:1px solid #d9e9f7;border-radius:12px;margin:20px 0 4px;padding:7px 3px}.institutional-group .advisor-nav-section{margin:5px 0;color:var(--blue-dark)}.institutional-group a{color:#245278}.sidebar-footer{margin-top:auto;padding-top:24px}.install-app{width:100%;min-height:46px;border:0;background:var(--blue);color:white;border-radius:11px;font-size:12px;font-weight:750}.advisor-user{margin-top:16px;padding:14px 8px 0}.advisor-user strong{font-size:13px}.advisor-user span{font-size:11px}.logout-btn{min-height:44px;font-size:12px}.drawer-close{display:none}.advisor-menu-button{width:44px;height:44px;box-shadow:none;border-radius:10px;background:white;color:var(--blue-dark);border:1px solid var(--line);top:max(15px,env(safe-area-inset-top));left:16px}.advisor-nav-backdrop{backdrop-filter:blur(2px)}
.simulation-banner{position:sticky;top:8px;z-index:20;margin-bottom:20px;font-size:13px;flex-wrap:wrap}.simulation-actor{font-size:11px;margin-top:3px;overflow-wrap:anywhere}.simulation-banner button{min-height:44px;font-size:12px}.simulation-user{min-height:58px}.simulation-user strong{font-size:14px}.simulation-user span{font-size:12px}.simulation-note{font-size:13px}
.overlay,.bc-modal,.bc3-modal{position:fixed;inset:0;z-index:1200;background:#17324d66;backdrop-filter:blur(3px);padding:24px;align-items:center;justify-content:center;overflow:auto}.overlay{display:none}.overlay.show,.bc-modal,.bc3-modal{display:flex}.modal,.bc-modal-card,.bc3-modalcard{width:min(900px,100%);max-height:calc(100dvh - 48px);overflow:auto;border:1px solid var(--line);border-radius:18px;background:white;color:var(--text);padding:22px;box-shadow:0 20px 70px #17324d22;overscroll-behavior:contain}.modal-head,.bc-modal-head,.bc3-modalhead{display:flex;gap:16px;align-items:flex-start;justify-content:space-between;border-bottom:1px solid var(--line);padding:0 0 16px;margin-bottom:16px}.modal-title,.bc-modal-head h2,.bc3-modalhead b{font-size:21px;line-height:1.3;margin:0;font-weight:750}.modal-sub{font-size:13px}.close,.bc-close{min-width:44px;min-height:44px;flex:0 0 auto;color:#385770;background:#f1f5f8;border:1px solid var(--line);border-radius:9px}.bc-close{font-size:11px;padding:8px}.dialog-open{overflow:hidden}.field{margin:12px 0}label{font-size:13px}.submit{min-height:48px;font-size:13px}.note{font-size:13px}.modal-actions button{min-height:44px;font-size:12px}.toast{z-index:210000;font-size:13px;bottom:max(20px,env(safe-area-inset-bottom));line-height:1.5}.empty,.error,.loading{font-size:14px;padding:28px 20px}.slow-loading{max-width:460px;margin:10px auto 0;font-size:13px;opacity:0;animation:show-slow 0s 12s forwards}@keyframes show-slow{to{opacity:1}}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.detail-grid section{border:1px solid var(--line);border-radius:12px;padding:16px}.detail-grid h3{margin:0 0 12px;font-size:15px}.detail-grid dl{margin:0}.detail-grid dl>div{margin-top:10px}.detail-grid dt{font-size:11px;color:var(--muted)}.detail-grid dd{font-size:13px;margin:2px 0 0;overflow-wrap:anywhere}.detail-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0 12px}.advisor-identity{display:flex;gap:12px;align-items:center;border-left:4px solid var(--ac);padding:12px 16px;background:#f5f8fb;margin-bottom:20px;border-radius:10px}.advisor-identity strong,.advisor-identity span{display:block}.advisor-identity span:not(.advisor-avatar){font-size:12px;color:var(--muted)}.advisor-avatar{width:44px;height:44px;border-radius:50%;display:grid!important;place-items:center;background:white;color:var(--ac);font-size:22px;font-weight:750}
.bc2-topbar{display:flex;gap:20px;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.bc2-title-kicker{font-size:10px;color:var(--blue);font-weight:800;letter-spacing:.14em}.bc2-title{font-size:26px;font-weight:800;letter-spacing:-.035em;line-height:1.2;margin-top:7px}.bc2-subtitle{font-size:13px;color:var(--muted);margin-top:8px}.bc2-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;max-width:50%}.bc2-search{width:100%;font-size:13px;min-height:44px}.bc2-action,.bc-btn{background:white;border:1px solid var(--line);color:#264f71;padding:10px 13px;min-height:44px;border-radius:10px;font-size:11px;font-weight:750;cursor:pointer;line-height:1.4}.bc2-action.primary,.bc-btn.primary{background:var(--blue);color:white;border-color:var(--blue)}.bc2-action.ai,.bc-btn.ai{background:#edf5fc;border-color:#cfdeec;color:#255f88}.bc2-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:20px}.bc2-kpi,.bc2-panel,.bc2-advisor{background:white;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}.bc2-kpi{padding:20px 16px}.bc2-kpi-value{font-size:32px;font-weight:800;line-height:1.1;letter-spacing:-.025em}.bc2-kpi-label{font-size:10px;font-weight:750;letter-spacing:.05em;margin-top:10px}.bc2-kpi-delta{font-size:11px;color:var(--muted);margin-top:6px}.bc2-kpi.blue .bc2-kpi-value{color:var(--blue)}.bc2-kpi.green .bc2-kpi-value{color:#187557}.bc2-kpi.red .bc2-kpi-value{color:#a63636}.bc2-analytics{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:16px}.bc2-panel{padding:20px;min-width:0}.bc2-panel-head,.bc2-section-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:18px}.bc2-panel-title,.bc2-section-title{font-size:16px;font-weight:750;letter-spacing:-.015em}.bc2-panel-sub,.bc2-section-sub{font-size:12px;color:var(--muted);margin-top:5px}.bc2-mini-tag,.bc2-count{font-size:9px;font-weight:750;border-radius:6px;padding:5px 7px;background:#edf3f8;color:#345974;white-space:nowrap}.bc2-section{margin-top:26px}.bc2-gauge-wrap{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.bc2-gauge{width:106px;height:106px;flex:0 0 auto;border-radius:50%;background:conic-gradient(var(--blue) var(--pct),#edf2f6 0);display:grid;place-items:center}.bc2-gauge-inner{width:86px;height:86px;border-radius:50%;background:white;display:flex;flex-direction:column;align-items:center;justify-content:center}.bc2-gauge-val{font-size:24px;font-weight:800}.bc2-gauge-lbl{font-size:8px;font-weight:700;color:var(--muted)}.bc2-split{flex:1;min-width:150px}.bc2-split-row{display:flex;align-items:center;gap:8px;margin:10px 0}.bc2-split-name{font-size:9px;flex:0 0 68px;color:var(--muted);font-weight:700}.bc2-track{height:6px;background:#eaf0f6;border-radius:8px;overflow:hidden;flex:1;min-width:16px}.bc2-fill{height:100%;background:var(--blue);border-radius:8px}.bc2-fill.magenta{background:#537d9f}.bc2-split-num{font-size:11px;font-weight:700}.bc2-bars{height:160px;display:flex;align-items:flex-end;gap:7px;padding-top:24px}.bc2-bar-col{height:100%;flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-end}.bc2-bar-val{font-size:10px;font-weight:700}.bc2-bar{width:min(20px,100%);max-height:100px;min-height:3px;border-radius:5px 5px 0 0;background:var(--blue)}.bc2-bar-name{font-size:9px;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis;margin-top:8px}.bc2-results{display:grid;grid-template-columns:1fr 1fr;gap:10px}.bc2-result{background:#f3f7fb;padding:12px;border-radius:10px}.bc2-result b{display:block;font-size:22px;line-height:1.2}.bc2-result span{display:block;font-size:9px;color:var(--muted);font-weight:750;margin-top:6px}.bc2-advisors{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.bc2-advisor{border-top:3px solid var(--ac);padding:18px;cursor:pointer;transition:box-shadow .15s,border-color .15s}.bc2-advisor:hover{box-shadow:0 6px 24px #24466514}.bc2-adv-head{display:flex;gap:10px;justify-content:space-between;align-items:flex-start}.bc2-adv-name{font-size:18px;font-weight:750}.bc2-adv-email{font-size:11px;color:var(--muted);overflow-wrap:anywhere;margin-top:3px}.bc2-status{font-size:8px;color:#27664e;background:#ebf7ef;border-radius:5px;padding:4px 6px}.bc2-adv-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:18px 0}.bc2-adv-metric b{display:block;font-size:20px}.bc2-adv-metric span{display:block;font-size:8px;color:var(--muted);font-weight:750;margin-top:3px}.bc2-coverage-label{display:flex;justify-content:space-between;gap:10px;font-size:9px;color:var(--muted)}.bc2-adv-track{height:5px;background:#edf2f6;border-radius:6px;overflow:hidden;margin:7px 0 14px}.bc2-adv-fill{height:100%;background:var(--ac)}.bc2-last{font-size:11px;line-height:1.5;color:var(--muted);margin-top:14px;overflow-wrap:anywhere}.bc2-open{font-size:10px;color:var(--blue);font-weight:750;margin-top:14px}.bc2-lower{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:26px}.bc2-list{display:grid;gap:12px}.bc2-item{padding:12px 0;border-bottom:1px solid var(--line)}.bc2-item:last-child{border-bottom:0}.bc2-item-head{display:flex;justify-content:space-between;gap:12px}.bc2-item-title{font-size:13px;font-weight:750}.bc2-item-meta{font-size:12px;margin-top:5px}.bc2-badge,.bc-badge{font-size:10px;padding:5px 8px;background:#edf4fa;border-radius:6px;color:#345b78;align-self:flex-start;white-space:normal}.bc2-badge.high{background:#fff0ed;color:#9f3732}.bc2-badge.medium{background:#fff7e5;color:#806312}.bc2-rank{display:grid;grid-template-columns:24px minmax(90px,1fr) minmax(30px,2fr) 36px;gap:12px;align-items:center;margin-top:14px}.bc2-rank-pos,.bc2-rank-score{font-size:13px;font-weight:750}.bc2-rank-name{font-size:13px;font-weight:750}.bc2-rank-meta{font-size:11px;color:var(--muted)}.bc2-rank-track{background:#edf2f7;border-radius:8px;height:6px}.bc2-rank-fill{background:var(--blue);height:100%;border-radius:8px}
.bc-grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.bc-mini{background:#f3f7fb;border:1px solid var(--line);padding:14px;border-radius:11px}.bc-mini b{display:block;font-size:23px}.bc-mini span{display:block;font-size:10px;color:var(--muted);margin-top:5px}.bc-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.bc-tab{min-height:44px;border:1px solid var(--line);border-radius:9px;background:#f4f8fc;color:#345774;padding:10px 12px;font-size:11px;font-weight:750}.bc-tab.active{background:var(--blue);color:white}.bc-pane{display:none}.bc-pane.active{display:block}.bc-list{display:grid;gap:10px}.bc-row{border:1px solid var(--line);border-radius:11px;padding:14px}.bc-row-top{display:flex;gap:12px;justify-content:space-between}.bc-row-title{font-size:14px;font-weight:750}.bc-row-meta{margin-top:5px}.bc-formline{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}.bc-field{flex:1;min-width:130px}.bc-field label{font-size:11px}.bc-loading{padding:24px;color:var(--muted);font-size:14px}.bc-event{border-left:2px solid var(--line);padding:0 0 18px 16px;font-size:13px}.bc-event div{font-size:12px;color:var(--muted);margin-top:4px}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px}th,td{text-align:left;padding:10px;border-bottom:1px solid var(--line)}
#bc2Legacy{margin-top:28px;border:1px solid #344c63;border-radius:14px;background:#172c42;color:#e4edf6;overflow:hidden}#bc2LegacyHead{display:flex;justify-content:space-between;gap:12px;padding:16px;font-size:11px;font-weight:750;cursor:pointer;min-height:48px}#bc2LegacyBody{display:none;padding:18px}#bc2Legacy.open #bc2LegacyBody{display:block}#bc2LegacyBody>.admin-section,#bc2LegacyBody>.summary .kpi{background:#20374d;border-color:#395268;color:#e4edf6}#bc2LegacyBody .block-title,#bc2LegacyBody .small,#bc2LegacyBody .kpi .l{color:#bdcfdf}#bc2LegacyBody .kpi .n{color:white}#bc2LegacyBody .note{background:#20374d;color:#dce8f2;border-color:#395268}#bc2LegacyBody .advisor-card{color:var(--text)}#bc2LegacyBody .activity{border-color:#395268}
/* Assignment layout retains the existing resumable workflow. */
#bc3Root{display:none;width:100%}.bc3-head{display:flex;justify-content:space-between;gap:18px;margin-bottom:20px}.bc3-kicker{font-size:10px;color:var(--blue);font-weight:750;letter-spacing:.1em}.bc3-title{font-size:26px;font-weight:800;line-height:1.25}.bc3-sub{font-size:13px;color:var(--muted);margin-top:6px}.bc3-actions,.bc3-tabs{display:flex;flex-wrap:wrap;gap:8px}.bc3-tabs{margin:20px 0}.bc3-btn,.bc3-tab,.bc3-page{border:1px solid var(--line);background:white;color:#305674;min-height:44px;padding:10px 13px;font-size:11px;font-weight:750;border-radius:9px}.bc3-btn.primary,.bc3-tab.active{background:var(--blue);border-color:var(--blue);color:white}.bc3-btn.red{background:#fff0ed;color:#96362e;border-color:#e5c3be}.bc3-btn.ai{background:#edf4fb;color:#2c5b82}.bc3-filterbox,.bc3-gridbox,.bc3-sum,.bc3-preview,.bc3-pick,.bc3-note,.bc3-planrow{background:white;border:1px solid var(--line);border-radius:12px;padding:16px}.bc3-filterbox{margin-bottom:18px}.bc3-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.bc3-field label{font-size:11px}.bc3-field input,.bc3-field select{font-size:13px;min-height:44px}.bc3-filter-actions,.bc3-gridtools{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:14px}.bc3-small,.bc3-selecthint{font-size:12px;color:var(--muted)}.bc3-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:16px}.bc3-sum b,.bc3-preview b{display:block;font-size:25px}.bc3-sum span,.bc3-preview span{display:block;font-size:10px;color:var(--muted);margin-top:4px}.bc3-gridbox{padding:0;overflow:hidden}.bc3-gridtools{margin:0;padding:16px;border-bottom:1px solid var(--line)}.bc3-tablewrap{max-height:60vh;overflow:auto}.bc3-table{min-width:1000px}.bc3-table th{position:sticky;top:0;background:#f0f5fa;font-size:10px;z-index:1}.bc3-table td{font-size:12px;vertical-align:top}.bc3-school{font-weight:750;font-size:13px}.bc3-meta{font-size:11px;color:var(--muted);margin-top:4px}.bc3-chip{font-size:10px;border:1px solid var(--line);background:#f2f7fb;border-radius:6px;padding:4px 6px;display:inline-block}.bc3-chip.pending{background:#fff7e6;color:#735918}.bc3-pages{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.bc3-actionbar{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;align-items:center;padding:16px;background:#edf4fb;border-top:1px solid var(--line);position:sticky;bottom:0;z-index:2}.bc3-selection{font-size:13px;font-weight:750}.bc3-selection span{display:block;font-size:11px;color:var(--muted)}.bc3-actionright{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.bc3-actionright select{width:auto;max-width:100%;font-size:12px}.bc3-previewgrid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.bc3-ok{color:#1c7651}.bc3-conflict{color:#aa3434}.bc3-progress{height:10px;border-radius:10px;overflow:hidden;background:#edf2f6;margin:16px 0}.bc3-progress>div{height:100%;background:var(--blue);width:0;transition:width .2s}.bc3-dist{display:none}.bc3-distbox{display:grid;grid-template-columns:1fr 1fr;gap:16px}.bc3-advisorpick{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.bc3-pick{display:flex;gap:10px;align-items:center;min-height:58px;padding:12px;font-size:13px}.bc3-plan{display:grid;gap:8px}.bc3-planrow{display:grid;grid-template-columns:1fr 80px 70px 80px;gap:8px;font-size:12px}.bc3-note{font-size:13px;line-height:1.6;background:#f5f9fc}.bc3-modalbody{min-width:0}
@media(min-width:821px){body.advisor-view{padding-left:254px}body.advisor-view .advisor-sidebar{width:254px}body.advisor-view .top{margin-left:26px;margin-right:26px}body.advisor-view .content{padding-left:26px;padding-right:26px}}
@media(min-width:1500px){.app{max-width:1600px!important;margin:auto!important}}
@media(max-width:1250px){.bc2-analytics{grid-template-columns:1fr 1fr}.bc2-analytics>.bc2-panel:last-child{grid-column:1/-1}.bc2-analytics>.bc2-panel:last-child .bc2-results{grid-template-columns:repeat(4,1fr)}.bc2-advisors{grid-template-columns:repeat(2,minmax(0,1fr))}.bc2-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.bc2-topbar{display:block}.bc2-actions{margin-top:16px;max-width:none;justify-content:flex-start}.bc2-search{flex:1;min-width:180px}.bc3-distbox{grid-template-columns:1fr}}
@media(max-width:820px){.advisor-menu-button{display:block}body:not(.advisor-view) .advisor-menu-button{display:none}.advisor-sidebar{width:min(300px,86vw)!important;padding-top:max(20px,env(safe-area-inset-top))!important}.drawer-close{display:block;position:absolute;right:0;top:8px;min-width:44px;min-height:44px;border:1px solid var(--line);border-radius:9px;background:white;color:var(--text);font-size:24px}.top{margin:0;border-radius:0;border-width:0 0 1px;padding:18px 18px 18px 76px;padding-top:max(18px,env(safe-area-inset-top))}.userline strong{font-size:21px}.content{padding:20px 18px}.bc2-analytics,.bc2-lower{grid-template-columns:1fr}.bc2-analytics>.bc2-panel:last-child{grid-column:auto}.bc2-analytics>.bc2-panel:last-child .bc2-results{grid-template-columns:1fr 1fr}.bc2-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.bc2-kpi{padding:16px}.bc2-kpi-value{font-size:30px}.bc2-title{font-size:25px}.bc3-head{flex-direction:column}.bc3-filters{grid-template-columns:1fr 1fr}.bc3-previewgrid,.bc3-summary{grid-template-columns:repeat(2,1fr)}.bc3-actionbar{position:static}.bc3-table{min-width:0}.bc3-table thead{display:none}.bc3-table tbody{display:grid;gap:12px;padding:12px}.bc3-table tr{display:grid;grid-template-columns:44px 1fr;border:1px solid var(--line);border-radius:12px;padding:10px;gap:6px}.bc3-table td{padding:6px;border:0;min-width:0}.bc3-table td:first-child{grid-row:1/6}.bc3-table td:not(:first-child){grid-column:2;overflow-wrap:anywhere}.bc3-table td:before{content:attr(data-label);display:block;font-size:10px;color:var(--muted)}.bc3-tablewrap{max-height:none;overflow:visible}.bc3-planrow{grid-template-columns:1fr 1fr}.bc3-advisorpick{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.top-row{display:block}.top-actions{margin-top:10px}.brand{font-size:9px;letter-spacing:.05em}.userline strong{font-size:20px}.userline span{font-size:11px}.roles{font-size:10px}.content{padding:18px 16px}.card{padding:16px}.card-head{flex-wrap:wrap;gap:8px}.school{font-size:17px}.status{max-width:none}.actions.primary-actions .btn{font-size:10px;padding:10px 7px}.school-secondary{gap:6px}.school-secondary .btn{font-size:11px;padding:8px}.bc2-advisors{grid-template-columns:1fr}.bc2-kpi-delta{font-size:10px}.bc2-panel{padding:17px}.bc2-actions{display:grid;grid-template-columns:1fr 1fr}.bc2-search{grid-column:1/-1;min-width:0}.bc2-section-head,.bc2-panel-head{flex-wrap:wrap}.bc2-item-head{flex-direction:column}.bc2-rank{grid-template-columns:18px 1fr 38px}.bc2-rank-track{display:none}.overlay,.bc-modal,.bc3-modal{padding:12px;align-items:flex-start!important;padding-top:max(12px,env(safe-area-inset-top))!important}.modal,.bc-modal-card,.bc3-modalcard{max-height:calc(100dvh - 24px - env(safe-area-inset-top));padding:16px;border-radius:15px;width:100%}.modal-title,.bc-modal-head h2{font-size:19px}.detail-grid{grid-template-columns:1fr}.bc-grid4{grid-template-columns:1fr 1fr}.bc-mini b{font-size:23px}.bc-formline{display:grid;grid-template-columns:1fr 1fr}.bc-field{min-width:0}.bc-formline>.bc-btn{grid-column:1/-1}.bc3-filters{grid-template-columns:1fr}.bc3-advisorpick{grid-template-columns:1fr}.bc3-actionright{width:100%}.bc3-actionright select{width:100%}.bc3-actionright .bc3-btn{flex:1}.simulation-banner{top:4px}.simulation-banner button{width:100%}input,select,textarea{font-size:16px}.bc3-field input,.bc3-field select{font-size:16px}.bc2-search,.search,.filter{font-size:16px}}
/* Full touch targets, including labels around compact native checkboxes. */
.school-link,.ins-add,#bc3target{min-height:44px}
label:has(>input[type=checkbox]),label:has(>input[type=radio]),.check-target{display:inline-flex;align-items:center;gap:8px;min-width:44px;min-height:44px;cursor:pointer}
.check-target{justify-content:center;margin:0}
@media(max-width:820px){.bc3-table td:first-child{padding:0}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}.spinner{animation:none}.slow-loading{animation:none;opacity:1}}
/* MIS ESCUELAS: institutional blue with the existing master's personal accent. */
.top.advisor-heading{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(120deg,#092e5b 0%,#0f63b5 78%,#1e4db7 100%);color:#fff;border:0;border-inline-start:5px solid var(--advisor,#0f63b5);box-shadow:0 8px 22px #0f63b51a;padding:24px 28px}
.top.advisor-heading::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(110deg,transparent 44%,var(--advisor,#0f63b5) 100%);opacity:.12}
.advisor-heading .top-row,.advisor-heading .top-row>div{min-width:0;width:100%}
.advisor-heading .brand{color:#fff;font-size:12px;line-height:1.5;font-weight:750;letter-spacing:.015em;text-transform:none;overflow-wrap:anywhere;max-width:52ch}
.advisor-heading .title{color:#fff;font-size:clamp(22px,2.4vw,28px);font-weight:850;letter-spacing:.035em;line-height:1.2;margin-top:19px}
.advisor-heading .userline{display:block;color:#fff;margin-top:10px;opacity:1;overflow-wrap:anywhere}
.advisor-heading .userline strong{display:inline-block;max-width:100%;font-size:clamp(24px,3vw,34px);line-height:1.25;font-weight:750;letter-spacing:-.015em;text-transform:uppercase;border-bottom:4px solid var(--advisor,#0f63b5);padding-bottom:7px}
.advisor-heading .mode{background:#ffffff1f;border:1px solid #ffffff66;color:#fff;font-size:10px;line-height:1.4;letter-spacing:.06em;font-weight:750;margin:15px 0 0;padding:5px 9px}
.advisor-heading .roles,.advisor-heading .perf,.advisor-heading .top-actions{display:none}
@media(max-width:820px){body.advisor-view .top.advisor-heading{margin:0;border-radius:0;padding:20px 18px 23px 71px;padding-top:max(20px,env(safe-area-inset-top));border-inline-start-width:5px}.advisor-heading .brand{font-size:11px;max-width:38ch}.advisor-heading .title{margin-top:17px;font-size:23px}.advisor-heading .userline strong{font-size:26px}}
@media(max-width:375px){.advisor-heading .brand{font-size:10px}.advisor-heading .title{font-size:21px}.advisor-heading .userline strong{font-size:24px}}

.login-screen{position:fixed;z-index:200000;inset:0;display:flex;align-items:center;justify-content:center;min-height:100dvh;padding:max(18px,env(safe-area-inset-top)) 18px max(18px,env(safe-area-inset-bottom));background:radial-gradient(circle at 18% 12%,rgba(70,196,226,.18),transparent 36%),linear-gradient(145deg,#073F7A,#0F63B5 58%,#1E4DB7);color:#fff}
.login-shell{width:min(420px,100%);text-align:center}
.login-logo{width:min(205px,56vw);height:auto;display:block;margin:0 auto 18px;padding:10px 14px;background:rgba(255,255,255,.96);border-radius:16px;filter:drop-shadow(0 8px 18px rgba(0,0,0,.16))}
.login-kicker{font-size:14px;font-weight:750;opacity:.9}
.login-title{font-size:26px;line-height:1.12;font-weight:950;margin:5px 0 8px}
.login-sub{font-size:13px;line-height:1.5;opacity:.9;margin:0 auto 18px;max-width:330px}
.login-card{background:#fff;color:#1F2A37;border:1px solid rgba(255,255,255,.7);border-radius:22px;padding:22px;box-shadow:0 24px 65px rgba(5,35,72,.27)}
.google-login{width:100%;min-height:52px;display:flex;align-items:center;justify-content:center;gap:11px;border:1px solid #C8D4E1;background:#fff;color:#1F2A37;border-radius:13px;font-weight:850}
.google-login:hover{background:#F5F8FC}
.google-icon{width:22px;height:22px}
.login-access{font-size:11px;color:#5B6B82;line-height:1.5;margin:16px 0 0}
.login-help{display:inline-block;margin-top:12px;color:#0F63B5;font-size:11px;font-weight:800;text-decoration:none}
.login-mode{display:inline-flex;margin-bottom:12px;background:#FFF2CC;color:#6C5000;border-radius:999px;padding:5px 9px;font-size:9px;font-weight:950}
.login-error{display:none;margin:12px 0 0;background:#FFF1EE;border:1px solid #F3C6BD;color:#8A1C13;border-radius:10px;padding:10px;font-size:11px}
.login-error.show{display:block}
.login-screen{background:linear-gradient(112deg,#03183F 0%,#062E77 42%,#075CD8 72%,#12A9F4 100%)}
.login-identity{margin:0 auto 13px}
.login-brand-logo{display:block;width:min(360px,86vw);height:auto;object-fit:contain;margin:0 auto;filter:drop-shadow(0 10px 22px rgba(0,20,57,.24))}
.login-territory{width:min(356px,86vw);margin:0 auto 18px;padding:10px 18px 11px;border:1px solid rgba(255,255,255,.42);border-radius:14px;background:rgba(255,255,255,.09);box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 10px 28px rgba(0,27,74,.12);font-size:28px;line-height:1;font-weight:950;letter-spacing:.14em;text-indent:.14em;color:#fff}
.login-logo{display:none}
@media(max-width:600px){.login-brand-logo{width:min(310px,88vw)}
.login-territory{width:min(304px,86vw);margin-bottom:16px;padding:9px 14px 10px;font-size:23px;border-radius:12px}
.login-card{padding:20px 18px}
.google-login{min-height:54px;font-size:15px}
.login-access{font-size:11px}
.login-help{font-size:11px;line-height:1.4}}

/* Production login is copied verbatim in production-login-reference/login.css.
   These adaptations preserve QA identification, scrolling and keyboard/touch access. */
.login-screen{font-family:"Myriad Pro",Myriad,Arial,Helvetica,sans-serif;line-height:normal;overflow-y:auto}
.login-screen .login-shell{margin:auto}
.login-mode{position:absolute;right:max(18px,env(safe-area-inset-right));top:max(16px,env(safe-area-inset-top));margin:0;color:#fff;background:#ffffff17;border:1px solid #ffffff55;font-size:9px;line-height:1.4;letter-spacing:.08em;padding:5px 10px}
.login-help{position:relative}
.login-help::after{content:"";position:absolute;left:0;right:0;top:50%;min-height:44px;transform:translateY(-50%)}
/* QA-UX-20260921.4: one compact institutional header, shared by all profiles. */
body.advisor-view .top,body.advisor-view .top.advisor-heading{padding:14px 20px;margin-top:0;min-height:0;background:linear-gradient(115deg,#082d58,#105eaa);border:0;border-inline-start:4px solid var(--advisor,#0f63b5);color:white;box-shadow:0 4px 16px #0a376812}
body.advisor-view .top .brand{font-size:11px;line-height:1.4;color:#fff;letter-spacing:.025em;text-transform:uppercase;max-width:none;overflow-wrap:normal}
body.advisor-view .top .title{font-size:21px;line-height:1.2;font-weight:800;letter-spacing:.025em;color:#fff;margin:5px 0 0}
.top #userline,.top #roles,.top #perf,.top #topActions{display:none!important}
.qa-environment{padding:8px 26px 5px;text-align:right;line-height:1}
.qa-environment .mode{margin:0;padding:3px 7px;font-size:9px;background:#e6eff8;color:#234e75;border:1px solid #cadbea}
.advisor-brand{padding-bottom:12px!important;margin-bottom:12px!important}.advisor-brand img{width:120px!important;max-width:75%;height:auto}.advisor-brand>span{display:none!important}
.advisor-nav button,.advisor-nav a{min-height:44px;padding:9px 10px!important;font-size:12px!important;gap:9px!important}.advisor-nav-icon{flex:0 0 18px!important;width:18px!important;font-size:17px!important}.advisor-nav-section{margin:16px 8px 7px!important;font-size:10px!important}.institutional-group{padding:6px!important}.sidebar-footer{padding-top:10px!important}.sidebar-session-actions:empty{display:none}.sidebar-footer .logout-btn{width:100%;min-height:44px;font-size:12px}
body.bc2-admin .bc2-actions{max-width:none;width:100%;margin-top:0}.bc2-topbar{margin-bottom:18px}
.bc2-kpi.blue{background:linear-gradient(125deg,#edf5ff,#dcecff);border-color:#b5d1f2;color:#145497}
.bc2-kpi.green{background:linear-gradient(125deg,#edfaf4,#dcf4e8);border-color:#acd9c2;color:#196349}
.bc2-kpi.violet{background:linear-gradient(125deg,#f5f0ff,#ede2fb);border-color:#cebae6;color:#653ca1}
.bc2-kpi.red{background:linear-gradient(125deg,#fff1ed,#ffe3de);border-color:#efb8ad;color:#a3332e}
.bc2-kpi.magenta{background:linear-gradient(125deg,#fff0f7,#fbe1ef);border-color:#e8b6cc;color:#99305f}
.bc2-kpi .bc2-kpi-value{color:inherit}.bc2-kpi .bc2-kpi-label,.bc2-kpi .bc2-kpi-delta{color:#354c60}
#advisorPerformance{margin:22px 0;width:100%;min-width:0}.performance-controls{display:flex;flex-wrap:wrap;gap:12px;align-items:end}.performance-controls label{flex:1;min-width:150px;margin:0;font-size:12px}.performance-controls select,.performance-controls input{margin-top:6px;font-size:14px;min-height:44px}.performance-controls [hidden]{display:none!important}.performance-period{font-size:12px;color:#516a80;margin:18px 0 12px}.performance-leader{display:flex;align-items:center;flex-wrap:wrap;gap:8px 20px;border:1px solid #b5d6ec;border-radius:12px;padding:14px 18px;background:linear-gradient(100deg,#edf6fd,#effaf4);margin:10px 0 18px}.performance-leader span{font-size:12px;color:#3c5e7b}.performance-leader strong{font-size:20px;color:#124a77}.performance-leader b{margin-left:auto;font-size:20px;color:#1c664d}
.performance-legend{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:12px}.performance-legend span{display:flex;align-items:center;gap:7px}.performance-legend i{width:10px;height:10px;border-radius:3px}.metric-visits{background:#1264b5}.metric-contacts{background:#087c82}.metric-affiliations{background:#b53169}.metric-courses{background:#7443bd}.metric-careers{background:#b46a10}
.performance-row{display:grid;grid-template-columns:minmax(100px,160px) minmax(0,1fr);gap:18px;padding:16px 0;border-top:1px solid #e1e9f2}.performance-name{border-left:4px solid var(--personal);padding:5px 0 5px 10px;align-self:start}.performance-name strong{display:block;font-size:15px;overflow-wrap:anywhere}.performance-name span{display:block;font-size:11px;color:#516a80;margin-top:6px}.performance-bars{display:grid;gap:5px}.performance-bar-row{display:grid;grid-template-columns:75px minmax(0,1fr) 32px;gap:8px;align-items:center;font-size:11px;color:#304a62}.performance-bar-row b{text-align:right;font-variant-numeric:tabular-nums}.performance-track{height:7px;border-radius:4px;background:#f0f4f8;overflow:hidden}.performance-track i{display:block;height:100%;border-radius:4px}.performance-detail{margin-top:16px;font-size:12px;line-height:1.6}.performance-detail summary{cursor:pointer;min-height:44px;padding:12px 0;font-weight:700;color:#155b98}.performance-detail table{min-width:900px}.performance-detail .table-scroll{max-width:100%}
@media(min-width:821px){body.advisor-view{padding-left:214px}body.advisor-view .advisor-sidebar{width:214px;padding-left:12px;padding-right:12px}body.advisor-view .top{margin-left:22px;margin-right:22px}body.advisor-view .content{padding:20px 22px}.qa-environment{padding-right:22px}}
@media(max-width:820px){body.advisor-view .top,body.advisor-view .top.advisor-heading{padding:12px 14px 14px 65px;margin:0;border-radius:0}body.advisor-view .top .brand{font-size:10px}body.advisor-view .top .title{font-size:18px;margin-top:5px}.qa-environment{padding:5px 12px}.advisor-menu-button{top:30px!important}.performance-row{grid-template-columns:100px minmax(0,1fr);gap:10px}}
@media(max-width:480px){.performance-controls{display:grid;grid-template-columns:1fr 1fr}.performance-controls label{min-width:0}.performance-controls select,.performance-controls input{width:100%;font-size:16px}.performance-controls button{grid-column:1/-1}.performance-row{grid-template-columns:1fr;gap:10px}.performance-name{display:flex;align-items:center;gap:12px}.performance-name span{margin:0}.performance-leader strong{font-size:17px}.performance-bar-row{grid-template-columns:72px minmax(0,1fr) 26px}body.advisor-view .top .brand{font-size:9px}body.advisor-view .top .title{font-size:17px}}

/* QA USERS & PERMISSIONS */
.up-toolbar{display:flex;gap:12px;align-items:center;margin-bottom:16px}.up-toolbar .bc2-search{flex:1}.up-count{font-size:12px;font-weight:800;color:#52657a;white-space:nowrap}.up-users{display:grid;gap:10px}.up-user{width:100%;border:1px solid #dbe5ef;background:#fff;border-radius:14px;padding:13px 14px;display:grid;grid-template-columns:44px minmax(0,1fr) auto auto;gap:12px;align-items:center;text-align:left;color:#17324d;cursor:pointer}.up-user:hover{border-color:#9fc2e8;box-shadow:0 6px 20px rgba(30,80,130,.08)}.up-avatar{width:40px;height:40px;border-radius:12px;background:var(--up,#0A56D0);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:900}.up-user-main{display:flex;flex-direction:column;min-width:0}.up-user-main strong{font-size:15px}.up-user-main small{margin-top:3px;color:#607287;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.up-state{font-size:10px;font-weight:900;border-radius:999px;padding:6px 9px;background:#e8f7ee;color:#16784a}.up-state.bloqueado{background:#fff2d8;color:#9a6200}.up-state.inactivo{background:#f2f4f7;color:#697586}.up-open{font-size:11px;font-weight:900;color:#0a56d0}.up-note{margin-top:16px;padding:11px 13px;border-radius:10px;background:#f6f9fc;color:#607287;font-size:12px}.up-profile{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.up-profile>div{display:flex;flex-direction:column;gap:6px}.up-profile label{font-size:11px;font-weight:900;color:#52657a}.up-profile input,.up-profile select,.up-scope,.up-scope-value{border:1px solid #cfdbe7;border-radius:9px;padding:10px;background:#fff;color:#17324d;min-width:0}.up-profile input[type=color]{padding:3px;height:42px}.up-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.up-perm-group{border-top:1px solid #e5edf5;padding-top:14px;margin-top:14px}.up-perm-group h3{margin:0 0 10px;font-size:13px;color:#0e477d}.up-perm{display:grid;grid-template-columns:minmax(0,1.6fr) auto minmax(130px,.7fr) minmax(150px,.9fr);gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid #eef3f7}.up-perm-main{display:flex;gap:9px;align-items:flex-start}.up-perm-main span{display:flex;flex-direction:column}.up-perm-main small{color:#6c7d90;margin-top:3px}.up-perm-status{font-size:9px;font-weight:900;border-radius:999px;background:#e8f7ee;color:#16784a;padding:5px 7px}.up-perm.prepared{opacity:.62}.up-perm.prepared .up-perm-status{background:#eef1f5;color:#667085}.up-feedback{margin-top:14px;font-weight:700;color:#0e5f96;min-height:20px}
@media(max-width:760px){.up-user{grid-template-columns:40px minmax(0,1fr) auto}.up-open{display:none}.up-profile{grid-template-columns:1fr}.up-perm{grid-template-columns:1fr}.up-perm-status{justify-self:start}.up-actions .bc-btn{width:100%}}

/* QA user offboarding flow */
.up-state.baja-pendiente{background:#fff0df;color:#a13d06}
.up-offboard{margin-top:19px;border:1px solid #f0c7a8;background:#fffaf6;border-radius:12px;padding:14px}
.up-offboard-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.up-offboard-head>div{display:flex;flex-direction:column;gap:4px}
.up-offboard-head strong{font-size:14px;color:#7d2d00}
.up-offboard-head small,.up-offboard-meta{font-size:12px;color:#64748b}
.up-offboard .bc-btn.danger{background:#a93414;color:#fff;border:0}
.up-offboard-box{margin-top:12px}
.up-offboard-summary{display:grid;gap:5px;color:#334155;font-size:13px}
.up-offboard-summary strong{font-size:14px;color:#17324d}
.up-offboard-select{display:grid;gap:6px;margin-top:12px;color:#334155;font-size:12px;font-weight:800}
.up-offboard-select select{padding:10px;border:1px solid #cfdbe7;border-radius:8px;background:#fff;color:#17324d}
.up-offboard-warning,.up-offboard-live{margin:12px 0;padding:10px 12px;border-radius:8px;background:#fff1e5;color:#87400d;font-size:12px;line-height:1.45}
.up-offboard-live{background:#eef6ff;color:#0e477d}
.up-offboard-progress{display:grid;gap:9px}
.up-offboard-row{display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:12px;color:#334155}
.up-offboard-row strong{font-size:14px;color:#0e477d}
.up-progress{height:8px;border-radius:99px;background:#e6edf5;overflow:hidden}
.up-progress i{display:block;height:100%;background:#0a56d0;border-radius:99px;transition:width .2s}
.up-offboard-error{margin:10px 0;padding:10px 12px;border-radius:8px;background:#fff0ed;color:#9b2c20;font-size:12px;line-height:1.45}
.up-offboard-error p{margin:7px 0}
.up-offboard button:disabled{opacity:.5;cursor:not-allowed}
@media(max-width:760px){.up-offboard-head{align-items:stretch;flex-direction:column}.up-offboard-head .bc-btn{width:100%}.up-offboard-row{align-items:flex-start;flex-direction:column}}
