*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--color-background-primary:#fff;--color-background-secondary:#f7f8fa;--color-background-tertiary:#f0f2f5;--color-text-primary:#1a1a2e;--color-text-secondary:#5a6178;--color-text-tertiary:#8a8f9c;--color-border-primary:#dfe2e8;--color-border-secondary:#e4e7ed;--color-border-tertiary:#eaedf2;--color-accent-navy:#0d1b3e;--color-accent-gold:#c9a84c;--color-accent-blue:#378add;--color-success:#3b6d11;--color-warning:#854f0b;--color-error:#a32d2d;--color-text-info:#378add;--color-text-danger:#a32d2d;--color-background-info:#e6f1fb;--color-background-danger:#fcebeb;--color-text-success:#3b6d11;--color-text-warning:#854f0b;--color-border-info:#bbdaf3;--color-border-warning:#ef9f27;--color-background-success:#eaf3de;--color-background-warning:#fef9ec;--color-success-bg:#eaf3de;--color-success-bg-hover:#dce9cc;--color-warning-bg:#fef9ec;--color-warning-text-dark:#633806;--color-claude-bg:#ede9fe;--color-claude-bg-hover:#ddd6fe;--color-claude-text:#5b21b6;--color-claude-border:#c4b5fd;--color-claude-border-strong:#7c3aed;--font-sans:"Inter", system-ui, -apple-system, sans-serif;--border-radius-sm:5px;--border-radius-md:8px;--border-radius-lg:12px;--shadow-sm:0 1px 3px #0d1b3e0f, 0 1px 2px #0d1b3e0a;--shadow-md:0 4px 12px #0d1b3e14, 0 1px 4px #0d1b3e0a;--strength-not-assessed:#d3d1c7;--strength-weak:#e24b4a;--strength-developing:#ef9f27;--strength-strong:#639922;--strength-exceptional:#0d1b3e;--space-0-5:2px;--space-1:4px;--space-1-5:6px;--space-2:8px;--space-2-5:10px;--space-3:12px;--space-3-5:14px;--space-4:16px;--space-5:20px;--space-6:24px;--text-2xs:9px;--text-xs:10px;--text-sm:11px;--text-base:12px;--text-md:13px;--text-lg:14px;--text-body:15px;--text-xl:16px}html,body,#root{height:100%}body{font-family:var(--font-sans);font-size:var(--text-body);color:var(--color-text-primary);background:var(--color-background-tertiary);-webkit-font-smoothing:antialiased;line-height:1.5}.pill{white-space:nowrap;letter-spacing:.01em;border-radius:999px;align-items:center;padding:3px 10px;font-size:12px;font-weight:500;display:inline-flex}.pill-navy{color:#0d1b3e;background:#e6ebf4}.pill-green{background:var(--color-success-bg);color:var(--color-success)}.pill-amber{color:#854f0b;background:#faeeda}.pill-blue{color:#185fa5;background:#e6f1fb}.pill-red{color:#a32d2d;background:#fcebeb}.pill-grey{color:#5f5e5a;background:#f1f0ec}.pill-purple{color:#3c3489;background:#eeedfe}.pill-teal{color:#0f6e56;background:#e1f5ee}.pill-claude{background:var(--color-claude-bg);color:var(--color-claude-text)}.pill-xs{font-size:var(--text-2xs);padding:var(--space-0-5) var(--space-1-5)}button{font-family:var(--font-sans);cursor:pointer;border:none;outline:none}.btn-primary{border:1px solid var(--color-accent-navy);border-radius:var(--border-radius-md);background:var(--color-accent-navy);color:#fff;letter-spacing:.01em;padding:8px 18px;font-size:13px;font-weight:500;transition:opacity .15s,box-shadow .15s}.btn-primary:hover{opacity:.9;box-shadow:var(--shadow-sm)}.btn-ghost{border:1px solid var(--color-border-primary);border-radius:var(--border-radius-md);color:var(--color-text-secondary);background:0 0;padding:8px 16px;font-size:13px;transition:background .15s,border-color .15s}.btn-ghost:hover{background:var(--color-background-secondary);border-color:#ccc}.btn-gold{border:1px solid var(--color-accent-gold);border-radius:var(--border-radius-md);background:var(--color-accent-gold);color:#3d2e06;padding:8px 18px;font-size:13px;font-weight:500;transition:opacity .15s}.btn-gold:hover{opacity:.9}.btn-gold-ghost{border:1px solid var(--color-accent-gold);border-radius:var(--border-radius-md);color:#3d2e06;background:0 0;padding:8px 18px;font-size:13px;font-weight:500;transition:background .15s}.btn-gold-ghost:hover{background:#c9a0631a}.btn-green{border:1px solid var(--color-success);border-radius:var(--border-radius-md);background:var(--color-success-bg);color:var(--color-success);padding:8px 16px;font-size:13px;font-weight:500;transition:background .15s}.btn-green:hover{background:var(--color-success-bg-hover)}.btn-red-text{border:1px solid var(--color-border-primary);border-radius:var(--border-radius-md);color:var(--color-error);background:0 0;padding:8px 16px;font-size:13px}.btn-red-text:hover{background:#fdf5f5}.btn-claude{border:1px solid var(--color-claude-border-strong);border-radius:var(--border-radius-md);background:var(--color-claude-bg);color:var(--color-claude-text);padding:8px 16px;font-size:13px;font-weight:500}.btn-claude:hover{background:var(--color-claude-bg-hover)}.btn-claude-solid{border:1px solid var(--color-claude-border-strong);border-radius:var(--border-radius-md);background:var(--color-claude-border-strong);color:#fff;padding:8px 16px;font-size:13px;font-weight:500;transition:opacity .15s}.btn-claude-solid:hover:not(:disabled){opacity:.9}.btn-claude-solid:disabled{opacity:.5;cursor:not-allowed}.btn-sm{border:1px solid var(--color-border-primary);border-radius:var(--border-radius-sm);color:var(--color-text-secondary);background:0 0;padding:5px 12px;font-size:12px}.btn-sm:hover{background:var(--color-background-secondary)}.btn-back{align-items:center;gap:var(--space-1);padding:var(--space-1-5) var(--space-3);border:1px solid var(--color-border-primary);border-radius:var(--border-radius-sm);background:var(--color-background-primary);color:var(--color-text-secondary);font-size:var(--text-body);transition:background .15s,border-color .15s;display:inline-flex}.btn-back:hover{background:var(--color-background-secondary);border-color:#ccc}.btn-link{color:var(--color-accent-blue);font-size:var(--text-body);cursor:pointer;background:0 0;border:none;padding:0;text-decoration:none}.btn-link:hover{text-decoration:underline}.btn-close{width:28px;height:28px;color:var(--color-text-secondary);font-size:var(--text-xl);cursor:pointer;border-radius:var(--border-radius-sm);background:0 0;border:none;justify-content:center;align-items:center;padding:0;line-height:1;transition:background .1s,color .1s;display:inline-flex}.btn-close:hover{background:var(--color-background-secondary);color:var(--color-text-primary)}.modal-backdrop{z-index:500;padding:var(--space-4);background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-card{background:var(--color-background-primary);border-radius:var(--border-radius-lg);flex-direction:column;width:100%;max-width:520px;max-height:85vh;display:flex;overflow:hidden;box-shadow:0 10px 40px #00000026}.modal-header{padding:var(--space-3) var(--space-4);border-bottom:.5px solid var(--color-border-tertiary);justify-content:space-between;align-items:center;display:flex}.modal-title{font-size:var(--text-lg);font-weight:500}.modal-body{padding:var(--space-4);flex:1;overflow-y:auto}.modal-footer{justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:.5px solid var(--color-border-tertiary);display:flex}.chip{align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);border:1px solid var(--color-border-primary);background:var(--color-background-primary);color:var(--color-text-secondary);font-size:var(--text-md);cursor:pointer;white-space:nowrap;border-radius:999px;font-weight:500;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.chip:hover{background:var(--color-background-secondary);border-color:var(--color-text-secondary)}.chip.active{background:var(--color-accent-navy);border-color:var(--color-accent-navy);color:#fff}.chip:disabled,.chip[disabled]{opacity:.5;cursor:not-allowed}.chip-sm{padding:var(--space-0-5) var(--space-2);font-size:var(--text-sm);border-width:.5px}.chip--reach.active{border-color:var(--color-error);color:var(--color-error);background:#fcebeb}.chip--target.active{color:var(--color-warning);background:#faeeda;border-color:#ef9f27}.chip--safety.active{background:var(--color-success-bg);border-color:var(--color-success);color:var(--color-success)}.chip--weak.active{border-color:var(--color-error);color:var(--color-error);background:#fcebeb}.chip--developing.active{color:var(--color-warning);background:#faeeda;border-color:#ef9f27}.chip--strong.active{background:var(--color-success-bg);border-color:var(--color-success);color:var(--color-success)}.chip--exceptional.active{background:var(--color-accent-navy);border-color:var(--color-accent-navy);color:#fff}.card{background:var(--color-background-primary);border:1px solid var(--color-border-tertiary);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.card-header{border-bottom:1px solid var(--color-border-tertiary);justify-content:space-between;align-items:center;padding:11px 16px;display:flex}.card-title{font-size:var(--text-body);font-weight:500}.banner{align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border-primary);border-radius:var(--border-radius-md);font-size:var(--text-body);color:var(--color-text-primary);border-left-width:4px;display:flex}.banner--warning{background:var(--color-warning-bg);border-color:var(--color-warning);color:var(--color-warning-text-dark)}.banner--claude{background:var(--color-claude-bg);border-color:var(--color-claude-border-strong);color:var(--color-claude-text)}.banner--info{border-color:var(--color-accent-blue);color:#185fa5;background:#eaf3fb}.banner--success{background:var(--color-success-bg);border-color:var(--color-success);color:var(--color-success)}.page-header{justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border-tertiary);display:flex}.page-header__main{gap:var(--space-0-5);flex-direction:column;min-width:0;display:flex}.page-header__title{font-size:var(--text-xl);color:var(--color-text-primary);font-weight:600;line-height:1.25}.page-header__sub{font-size:var(--text-sm);color:var(--color-text-secondary)}.page-header__actions{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.readiness-dot{border-radius:50%;flex-shrink:0;width:11px;height:11px}.readiness-dot--not-assessed{background:var(--strength-not-assessed)}.readiness-dot--weak{background:var(--strength-weak)}.readiness-dot--developing{background:var(--strength-developing)}.readiness-dot--strong{background:var(--strength-strong)}.readiness-dot--exceptional{background:var(--strength-exceptional)}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.row.flex-nowrap{flex-wrap:nowrap}.spacer{flex:1}input,textarea,select{font-family:var(--font-sans);color:var(--color-text-primary);border:1px solid var(--color-border-primary);border-radius:var(--border-radius-md);background:var(--color-background-primary);outline:none;padding:8px 12px;font-size:14px;transition:border-color .15s,box-shadow .15s}input:focus,textarea:focus,select:focus{border-color:var(--color-accent-blue);box-shadow:0 0 0 3px #378add1f}a{color:inherit;text-decoration:none}.text-2xs{font-size:var(--text-2xs)}.text-xs{font-size:var(--text-xs)}.text-sm{font-size:var(--text-sm)}.text-base{font-size:var(--text-base)}.text-md{font-size:var(--text-md)}.text-lg{font-size:var(--text-lg)}.text-body{font-size:var(--text-body)}.text-xl{font-size:var(--text-xl)}.text-secondary{color:var(--color-text-secondary)}.text-tertiary{color:var(--color-text-tertiary)}.text-primary{color:var(--color-text-primary)}.text-error{color:var(--color-error)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.font-medium{font-weight:500}.font-semi{font-weight:600}.uppercase{text-transform:uppercase}.tracking-wide{letter-spacing:.04em}.section-header{font-size:var(--text-sm);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-1-5);border-top:1px solid var(--color-border-tertiary);margin-top:16px;padding-top:14px;font-weight:600}.section-header:first-of-type{border-top:none;margin-top:0;padding-top:0}.state-text{padding:var(--space-5);font-size:var(--text-base);color:var(--color-text-secondary)}.state-text--error{color:var(--color-error)}.flex{display:flex}.inline-flex{display:inline-flex}.flex-col{flex-direction:column;display:flex}.flex-1{flex:1}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.flex-shrink-0{flex-shrink:0}.min-w-0{min-width:0}.text-right{text-align:right}.leading-relaxed{line-height:1.6}.border-t{border-top:1px solid var(--color-border-tertiary)}.border-b{border-bottom:1px solid var(--color-border-tertiary)}.gap-0-5{gap:var(--space-0-5)}.gap-1{gap:var(--space-1)}.gap-1-5{gap:var(--space-1-5)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-3-5{gap:var(--space-3-5)}.gap-4{gap:var(--space-4)}.mb-0{margin-bottom:0}.mb-0-5{margin-bottom:var(--space-0-5)}.mb-1{margin-bottom:var(--space-1)}.mb-1-5{margin-bottom:var(--space-1-5)}.mb-2{margin-bottom:var(--space-2)}.mb-2-5{margin-bottom:var(--space-2-5)}.mb-3{margin-bottom:var(--space-3)}.mb-3-5{margin-bottom:var(--space-3-5)}.mb-4{margin-bottom:var(--space-4)}.mb-5{margin-bottom:var(--space-5)}.mt-0{margin-top:0}.mt-0-5{margin-top:var(--space-0-5)}.mt-1{margin-top:var(--space-1)}.mt-1-5{margin-top:var(--space-1-5)}.mt-2{margin-top:var(--space-2)}.mt-2-5{margin-top:var(--space-2-5)}.mt-3{margin-top:var(--space-3)}.mt-4{margin-top:var(--space-4)}.ml-0{margin-left:0}.ml-0-5{margin-left:var(--space-0-5)}.ml-1{margin-left:var(--space-1)}.ml-1-5{margin-left:var(--space-1-5)}.ml-2{margin-left:var(--space-2)}.ml-3{margin-left:var(--space-3)}.ml-4{margin-left:var(--space-4)}.ml-auto{margin-left:auto}.py-0-5{padding-top:var(--space-0-5);padding-bottom:var(--space-0-5)}.py-1{padding-top:var(--space-1);padding-bottom:var(--space-1)}.py-1-5{padding-top:var(--space-1-5);padding-bottom:var(--space-1-5)}.py-2{padding-top:var(--space-2);padding-bottom:var(--space-2)}.py-3{padding-top:var(--space-3);padding-bottom:var(--space-3)}.py-4{padding-top:var(--space-4);padding-bottom:var(--space-4)}.px-1{padding-left:var(--space-1);padding-right:var(--space-1)}.px-1-5{padding-left:var(--space-1-5);padding-right:var(--space-1-5)}.px-2{padding-left:var(--space-2);padding-right:var(--space-2)}.px-3{padding-left:var(--space-3);padding-right:var(--space-3)}.px-4{padding-left:var(--space-4);padding-right:var(--space-4)}.p-1{padding:var(--space-1)}.p-1-5{padding:var(--space-1-5)}.p-2{padding:var(--space-2)}.p-3{padding:var(--space-3)}.p-4{padding:var(--space-4)}.p-5{padding:var(--space-5)}.pt-0{padding-top:0}.pt-1{padding-top:var(--space-1)}.pt-2{padding-top:var(--space-2)}.pt-3{padding-top:var(--space-3)}.pt-4{padding-top:var(--space-4)}.pb-0{padding-bottom:0}.pb-1{padding-bottom:var(--space-1)}.pb-2{padding-bottom:var(--space-2)}.pb-3{padding-bottom:var(--space-3)}.pb-4{padding-bottom:var(--space-4)}.pl-0{padding-left:0}.pl-1{padding-left:var(--space-1)}.pl-2{padding-left:var(--space-2)}.pl-3{padding-left:var(--space-3)}.pl-4{padding-left:var(--space-4)}.pr-0{padding-right:0}.pr-1{padding-right:var(--space-1)}.pr-2{padding-right:var(--space-2)}.pr-3{padding-right:var(--space-3)}.pr-4{padding-right:var(--space-4)}.gap-5{gap:var(--space-5)}.gap-6{gap:var(--space-6)}.mt-5{margin-top:var(--space-5)}.mt-6{margin-top:var(--space-6)}.mb-6{margin-bottom:var(--space-6)}.ml-5{margin-left:var(--space-5)}.ml-6{margin-left:var(--space-6)}.mr-0{margin-right:0}.mr-1{margin-right:var(--space-1)}.mr-2{margin-right:var(--space-2)}.mr-3{margin-right:var(--space-3)}.mr-4{margin-right:var(--space-4)}.text-info{color:var(--color-text-info)}.text-danger{color:var(--color-text-danger)}.stat-cell-sm .stat-label{font-size:var(--text-2xs);margin-bottom:var(--space-0-5)}.form-label{color:var(--color-text-secondary);margin-bottom:6px;font-size:11px;display:block}.form-input{box-sizing:border-box;border:.5px solid var(--color-border-primary);border-radius:var(--border-radius-md);width:100%;font-size:13px;font-family:var(--font-sans);color:var(--color-text-primary);background:var(--color-background-primary);outline:none;padding:7px 10px}.form-input:focus{border-color:var(--color-accent-blue)}.form-textarea{box-sizing:border-box;border:.5px solid var(--color-border-primary);border-radius:var(--border-radius-md);width:100%;font-size:13px;font-family:var(--font-sans);color:var(--color-text-primary);resize:vertical;outline:none;min-height:70px;padding:8px 10px}.form-textarea:focus{border-color:var(--color-accent-blue)}.form-grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.form-grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.form-grid-4{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}@media (width<=600px){.form-grid-2,.form-grid-3,.form-grid-4{grid-template-columns:1fr}}:root{--sidebar-width-expanded:190px;--sidebar-width-collapsed:56px;--sidebar-bg:#0d1b3e;--sidebar-border:#ffffff12;--sidebar-text:#ffffff80;--sidebar-text-active:#fff;--sidebar-hover-bg:#ffffff0f;--sidebar-active-bg:#ffffff1a;--sidebar-active-border:#c9a84c;--gold:#c9a84c;--transition:.2s cubic-bezier(.4,0,.2,1)}.advisor-app{min-height:100vh;display:flex}.advisor-sidebar{width:var(--sidebar-width-expanded);background:var(--sidebar-bg);z-index:200;transition:width var(--transition);flex-direction:column;flex-shrink:0;display:flex;position:fixed;top:0;bottom:0;left:0;overflow:hidden auto}.advisor-sidebar.collapsed{width:var(--sidebar-width-collapsed)}.sidebar-logo-area{border-bottom:1px solid var(--sidebar-border);flex-shrink:0;justify-content:center;align-items:center;min-height:72px;padding:16px 12px;display:flex;position:relative}.sidebar-logo-img{object-fit:contain;opacity:.92;width:120px;height:auto;transition:width var(--transition), opacity var(--transition)}.advisor-sidebar.collapsed .sidebar-logo-img{width:32px}.sidebar-collapse-btn{color:#ffffff73;cursor:pointer;width:22px;height:22px;transition:background var(--transition), color var(--transition), transform var(--transition);background:#ffffff14;border:1px solid #ffffff1f;border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;top:8px;right:6px}.sidebar-collapse-btn:hover{color:#ffffffd9;background:#ffffff24}.sidebar-collapse-btn svg{transition:transform var(--transition)}.advisor-sidebar.collapsed .sidebar-collapse-btn svg{transform:rotate(180deg)}.sidebar-nav{flex-direction:column;flex:1;gap:2px;padding:8px 0;display:flex;overflow:hidden}.sidebar-nav-item{color:var(--sidebar-text);cursor:pointer;font-family:var(--font-sans,system-ui);white-space:nowrap;transition:color var(--transition), background var(--transition), border-color var(--transition);text-align:left;background:0 0;border:none;border-left:3px solid #0000;align-items:center;gap:10px;width:100%;padding:10px 16px;font-size:14px;font-weight:400;text-decoration:none;display:flex}.sidebar-nav-item:hover{color:var(--sidebar-text-active);background:var(--sidebar-hover-bg)}.sidebar-nav-item.active{color:var(--sidebar-text-active);border-left-color:var(--sidebar-active-border);background:var(--sidebar-active-bg);font-weight:500}.sidebar-nav-icon{flex-shrink:0;justify-content:center;align-items:center;width:18px;display:flex}.sidebar-nav-label{transition:opacity var(--transition);opacity:1;overflow:hidden}.advisor-sidebar.collapsed .sidebar-nav-label{opacity:0;pointer-events:none;width:0}.advisor-sidebar.collapsed .sidebar-nav-item{justify-content:center;padding:10px 0;position:relative}.advisor-sidebar.collapsed .sidebar-nav-item:after{content:attr(title);left:calc(var(--sidebar-width-collapsed) + 8px);color:#fff;white-space:nowrap;pointer-events:none;opacity:0;z-index:300;background:#1a2f5a;border-radius:6px;padding:5px 12px;font-size:13px;transition:opacity .15s;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 2px 8px #0000004d}.advisor-sidebar.collapsed .sidebar-nav-item:hover:after{opacity:1}.sidebar-bottom{border-top:1px solid var(--sidebar-border);flex-direction:column;padding:8px 0 12px;display:flex}.sidebar-logout{color:#ffffff47;cursor:pointer;font-family:var(--font-sans,system-ui);white-space:nowrap;text-align:left;width:100%;transition:color var(--transition);background:0 0;border:none;align-items:center;gap:10px;padding:10px 16px;font-size:14px;display:flex}.sidebar-logout:hover{color:#ffffffa6}.advisor-sidebar.collapsed .sidebar-logout{justify-content:center;padding:10px 0;position:relative}.advisor-sidebar.collapsed .sidebar-logout:after{content:"Sign out";left:calc(var(--sidebar-width-collapsed) + 8px);color:#fff;white-space:nowrap;pointer-events:none;opacity:0;z-index:300;background:#1a2f5a;border-radius:6px;padding:5px 12px;font-size:13px;transition:opacity .15s;position:absolute;top:50%;transform:translateY(-50%)}.advisor-sidebar.collapsed .sidebar-logout:hover:after{opacity:1}.advisor-main{margin-left:var(--sidebar-width-expanded);background:var(--color-background-secondary,#f7f8fa);min-height:100vh;transition:margin-left var(--transition);flex-direction:column;flex:1;display:flex}.advisor-app.collapsed .advisor-main{margin-left:var(--sidebar-width-collapsed)}.advisor-topbar{z-index:100;background:#fff;border-bottom:1px solid #0d1b3e0f;flex-shrink:0;justify-content:space-between;align-items:center;height:60px;padding:0 32px;display:flex;position:sticky;top:0;box-shadow:0 1px 3px #0d1b3e08}.advisor-topbar-title{color:#0d1b3e;letter-spacing:-.02em;font-size:18px;font-weight:600}.advisor-topbar-right{align-items:center;gap:14px;display:flex}.advisor-avatar{width:36px;height:36px;color:var(--gold);letter-spacing:.02em;background:#0d1b3e;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-family:Georgia,serif;font-size:13px;font-weight:600;display:flex}.advisor-topbar-name{color:#0d1b3e;font-size:15px;font-weight:500}.advisor-role-badge{color:#8b6914;letter-spacing:.03em;background:#c9a84c1f;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:500}.advisor-page-content{flex:1;padding:28px 32px}.sidebar-logo-eca{color:var(--gold);letter-spacing:.08em;text-align:center;padding:4px 0;font-family:Georgia,Times New Roman,serif;font-size:15px;font-weight:600}.mobile-hamburger{color:#0d1b3e;cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;margin-right:auto;padding:0;display:none}.mobile-backdrop{display:none}@media (width<=900px){.advisor-sidebar{transition:transform var(--transition);box-shadow:none;transform:translate(-100%);width:var(--sidebar-width-expanded)!important}.advisor-sidebar.mobile-open{transform:translate(0);box-shadow:4px 0 20px #0000004d}.advisor-main{margin-left:0!important}.advisor-app .mobile-hamburger{display:flex!important}.mobile-backdrop{z-index:199;background:#0006;display:block;position:fixed;inset:0}.sidebar-collapse-btn{display:none}.advisor-sidebar.collapsed .sidebar-nav-label,.advisor-sidebar.mobile-open .sidebar-nav-label{opacity:1;pointer-events:auto;width:auto}.advisor-sidebar.collapsed.mobile-open .sidebar-nav-item,.advisor-sidebar.mobile-open .sidebar-nav-item,.advisor-sidebar.collapsed.mobile-open .sidebar-logout,.advisor-sidebar.mobile-open .sidebar-logout{justify-content:flex-start;padding:10px 16px}.advisor-sidebar.collapsed.mobile-open .sidebar-logo-img,.advisor-sidebar.mobile-open .sidebar-logo-img{width:120px}.advisor-topbar{height:52px;padding:0 12px;justify-content:space-between!important}.advisor-topbar-right{overflow:hidden}.advisor-topbar-name{text-overflow:ellipsis;white-space:nowrap;max-width:120px;font-size:13px;overflow:hidden}.advisor-role-badge{display:none}.advisor-page-content{padding:16px 12px}.hide-mobile{display:none!important}}.sidebar-nav-item.student-locked{cursor:not-allowed;pointer-events:none;color:#ffffff26!important}.sidebar-nav-item.student-locked:hover{color:#ffffff26!important;background:0 0!important}.parent-readonly-banner{color:#854f0b;background:#faeeda;border:.5px solid #e8c98c;border-radius:8px;margin-bottom:16px;padding:10px 14px;font-size:13px}@media (width<=767px){.dash-page{padding:16px 12px 60px}.dash-greeting-text{font-size:16px}.dash-greeting-sub{font-size:12px}.dash-session-card{flex-direction:column;align-items:flex-start;gap:8px;padding:14px}.dash-section-card{padding:12px}.dash-task-row,.dash-dl-row{flex-wrap:wrap;gap:6px;padding:10px 12px}.dash-news-card{padding:12px}.task-page{padding:16px 12px 60px}.task-add-form{flex-direction:column;align-items:stretch}.task-date{max-width:none}.task-card{flex-wrap:wrap;gap:6px;padding:10px 12px}.task-source{order:3}.task-due{order:4;width:100%;padding-left:26px}}@media (width<=600px){.q-page{padding:16px 12px}.q-two-col{grid-template-columns:1fr}.q-four-col{grid-template-columns:1fr 1fr}.q-course-header,.q-course-row{grid-template-columns:1fr 1fr;gap:6px}.q-course-header>:nth-child(3),.q-course-header>:nth-child(4),.q-course-row>:nth-child(3),.q-course-row>:nth-child(4){display:none}.q-award-header,.q-award-row{grid-template-columns:1fr 1fr 24px}.q-award-header>:nth-child(2),.q-award-row>:nth-child(2){display:none}.q-footer{flex-direction:column;align-items:stretch;gap:8px}.q-save-btn{text-align:center;width:100%}.q-pill{padding:5px 10px;font-size:11px}}@media (width<=767px){.explore-body{padding:16px 12px 0}.explore-filter-row{gap:6px}.explore-search-wrap{min-width:100%}.fp{padding:4px 8px;font-size:12px}.col-stats-grid{grid-template-columns:repeat(2,1fr)}.col-stat-label{font-size:11px}.col-stat-val{font-size:13px}.di-pill{padding:4px 10px;font-size:12px}.advisor-topbar-right{overflow:hidden}.advisor-topbar-name{text-overflow:ellipsis;white-space:nowrap;max-width:120px;font-size:13px;overflow:hidden}.hide-mobile{display:none!important}}.ss-wrap{z-index:9999;flex:1;max-width:400px;position:relative}.ss-input{border:.5px solid var(--color-border-tertiary);border-radius:var(--border-radius-md);background:var(--color-background-secondary);width:100%;color:var(--color-text-primary);font-size:13px;font-family:var(--font-sans);outline:none;padding:7px 12px 7px 32px;transition:border-color .15s,background .15s}.ss-input:focus{border-color:var(--color-accent-blue);background:var(--color-background-primary);box-shadow:0 0 0 3px #378add1f}.ss-input::placeholder{color:var(--color-text-secondary)}.ss-search-icon{color:var(--color-text-secondary);pointer-events:none;font-size:13px;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.ss-kbd{color:var(--color-text-secondary);background:var(--color-background-primary);border:.5px solid var(--color-border-tertiary);pointer-events:none;border-radius:3px;padding:1px 5px;font-size:10px;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.ss-dropdown{background:var(--color-background-primary);border:.5px solid var(--color-border-tertiary);border-radius:var(--border-radius-lg);z-index:9999;min-width:500px;max-height:480px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 8px 24px #0d1b3e26}.ss-loading{color:var(--color-text-secondary);text-align:center;padding:16px;font-size:13px}.ss-error{color:var(--color-error);padding:12px 16px;font-size:13px}.ss-empty{color:var(--color-text-secondary);text-align:center;padding:20px 16px;font-size:13px}.ss-type-badge{color:#5b21b6;background:#ede9fe;border-radius:999px;align-items:center;gap:4px;padding:2px 7px;font-size:10px;font-weight:500;display:inline-flex}.ss-result-header{justify-content:space-between;align-items:center;padding:10px 14px 6px;display:flex}.ss-result-title{color:var(--color-text-primary);font-size:13px;font-weight:500}.ss-result-sub{color:var(--color-text-secondary);font-size:11px}.ss-table{border-collapse:collapse;width:100%;font-size:12px}.ss-table th{text-align:left;text-transform:uppercase;letter-spacing:.3px;color:var(--color-text-secondary);border-bottom:.5px solid var(--color-border-tertiary);padding:6px 14px;font-size:10px;font-weight:500}.ss-table td{border-bottom:.5px solid var(--color-border-tertiary);color:var(--color-text-primary);cursor:pointer;padding:8px 14px}.ss-table tr:hover td{background:var(--color-background-secondary)}.ss-table .ss-cell-name{color:var(--color-accent-blue);font-weight:500}.ss-group{border-top:.5px solid var(--color-border-tertiary)}.ss-group:first-child{border-top:none}.ss-group-label{text-transform:uppercase;letter-spacing:.3px;color:var(--color-text-secondary);padding:10px 14px 4px;font-size:11px;font-weight:500}.ss-group-item{cursor:pointer;align-items:center;gap:10px;padding:8px 14px;display:flex}.ss-group-item:hover{background:var(--color-background-secondary)}.ss-group-icon{color:#fff;background:var(--color-accent-navy);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:11px;font-weight:500;display:flex}.ss-group-name{color:var(--color-text-primary);font-size:13px;font-weight:500}.ss-group-meta{color:var(--color-text-secondary);margin-top:1px;font-size:11px}.ss-full-link{color:var(--color-accent-blue);border-top:.5px solid var(--color-border-tertiary);cursor:pointer;justify-content:space-between;align-items:center;padding:10px 14px;font-size:12px;display:flex}.ss-full-link:hover{background:var(--color-background-secondary)}.ss-pill{white-space:nowrap;border-radius:999px;margin-left:4px;padding:1px 7px;font-size:10px;font-weight:500;display:inline-block}@media (width<=900px){.ss-wrap{display:none}}.login-page{background:#fff;min-height:100vh;display:flex}.login-brand{color:#0d1b3e;background:#f7f8fa;border-right:1px solid #eaedf2;flex:1;justify-content:center;align-items:center;padding:48px;display:flex;overflow-y:auto}.login-brand-inner{width:100%;max-width:520px}.login-brand-logo{align-items:center;gap:14px;margin-bottom:40px;display:flex}.login-shield{background:#0d1b3e;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.login-shield-text{color:#c9a84c;letter-spacing:.1em;font-family:Georgia,Times New Roman,serif;font-size:16px;font-weight:700}.login-brand-name{color:#0d1b3e;letter-spacing:-.01em;font-size:18px;font-weight:600}.login-brand-tag{color:#5a6178;letter-spacing:.02em;margin-top:1px;font-size:13px}.login-headline{color:#0d1b3e;letter-spacing:-.02em;margin:0 0 16px;font-size:32px;font-weight:700;line-height:1.25}.login-subhead{color:#5a6178;margin:0 0 36px;font-size:16px;line-height:1.6}.login-features{flex-direction:column;gap:24px;margin-bottom:40px;display:flex}.login-feature{align-items:flex-start;gap:14px;display:flex}.login-feature-icon{color:#0d1b3e;background:#0d1b3e0f;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;margin-top:2px;display:flex}.login-feature-title{color:#0d1b3e;margin-bottom:3px;font-size:15px;font-weight:600}.login-feature-desc{color:#5a6178;font-size:14px;line-height:1.5}.login-brand-footer{border-top:1px solid #dfe2e8;padding-top:20px}.login-website-link{color:#0d1b3e;letter-spacing:.01em;font-size:13px;text-decoration:none;transition:color .15s}.login-website-link:hover{color:#378add}.login-form-panel{background:#fff;flex-shrink:0;justify-content:center;align-items:center;width:480px;padding:48px;display:flex}.login-form-inner{width:100%;max-width:340px}.login-form-header{margin-bottom:32px}.login-form-title{color:#0d1b3e;letter-spacing:-.02em;margin:0 0 6px;font-size:24px;font-weight:700}.login-form-subtitle{color:#5a6178;margin:0;font-size:15px}.login-form{flex-direction:column;gap:18px;display:flex}.login-field{flex-direction:column;gap:6px;display:flex}.login-label{color:#5a6178;font-size:14px;font-weight:500}.login-field input{color:#1a1a2e;background:#fff;border:1px solid #dfe2e8;border-radius:8px;outline:none;width:100%;padding:10px 14px;font-size:15px;transition:border-color .15s,box-shadow .15s}.login-field input:focus{border-color:#378add;box-shadow:0 0 0 3px #378add1f}.login-field input::placeholder{color:#b0b5c3}.login-error{color:#a32d2d;background:#fcebeb;border-radius:8px;padding:10px 14px;font-size:14px}.login-submit{color:#fff;cursor:pointer;letter-spacing:.01em;background:#0d1b3e;border:none;border-radius:8px;width:100%;margin-top:4px;padding:12px 0;font-size:15px;font-weight:600;transition:opacity .15s,box-shadow .15s}.login-submit:hover{opacity:.92;box-shadow:0 2px 8px #0d1b3e33}.login-submit:disabled{opacity:.5;cursor:not-allowed}.login-form-footer{border-top:1px solid #eaedf2;margin-top:28px;padding-top:20px}.login-form-footer p{color:#8b90a0;margin:0;font-size:13px;line-height:1.5}@media (width<=900px){.login-page{flex-direction:column}.login-brand{padding:32px 24px}.login-brand-inner{max-width:100%}.login-headline{font-size:24px}.login-features{gap:16px}.login-form-panel{width:100%;padding:32px 24px}}
