:root{--nasq-petrol:#123B4A;--nasq-turquoise:#18A999;--nasq-gold:#C9A24A;--bg:#F4F7F8;--panel:#fff;--ink:#17313B;--muted:#63747C;--primary:#18A999;--primary-dark:#117F75;--accent:#C9A24A;--border:#DDE6E8;--danger:#B33B49;--success:#23845C;--warning:#956719;--shadow:0 16px 42px rgba(18,59,74,.09)}*{box-sizing:border-box}html{font-family:"Tahoma","Arial",sans-serif;background:var(--bg);color:var(--ink)}body{margin:0}.app-shell{min-height:100vh;display:grid;grid-template-columns:275px 1fr}.sidebar{background:linear-gradient(180deg,#123f43,#0d2f33);color:#fff;padding:26px 18px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow:auto}.brand{display:flex;gap:12px;align-items:center;padding:0 8px 24px;border-bottom:1px solid rgba(255,255,255,.12)}.brand-mark{width:48px;height:48px;border-radius:15px;background:linear-gradient(135deg,#f2ca63,#c99018);display:grid;place-items:center;color:#173b3d;font-size:25px;font-weight:800}.brand strong{display:block;font-size:17px}.brand small{display:block;color:#b9d3d1;margin-top:5px}.sidebar nav{padding-top:18px}.sidebar nav a{display:flex;gap:11px;align-items:center;color:#d9e7e6;text-decoration:none;padding:11px 12px;border-radius:11px;margin:3px 0;font-size:14px}.sidebar nav a>.nav-icon{width:22px;text-align:center;font-size:18px}.sidebar nav a:hover,.sidebar nav a.active{background:rgba(255,255,255,.11);color:#fff}.nav-section{font-size:11px;color:#80aaa8;padding:20px 12px 7px;text-transform:uppercase;letter-spacing:.5px}.sidebar-note{margin-top:auto;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:13px;padding:14px;font-size:13px}.sidebar-note strong,.sidebar-note small{display:block}.sidebar-note small{color:#abc9c7;margin-top:7px;line-height:1.6}.status-dot{display:inline-block;width:8px;height:8px;background:#f0b849;border-radius:50%;margin:8px 0 0 5px}.main-content{min-width:0;padding:0 34px 30px}.topbar{display:flex;justify-content:space-between;align-items:center;min-height:105px}.topbar h1{font-size:25px;margin:0 0 8px}.topbar p{margin:0;color:var(--muted);font-size:14px}.topbar-badge{background:#e8f2f1;color:var(--primary-dark);padding:10px 14px;border-radius:999px;font-size:13px;font-weight:700}.foundation-banner{background:#fff9e7;border:1px solid #f0dfae;color:#73591a;border-radius:12px;padding:12px 16px;font-size:13px;margin-bottom:20px}.alert{border-radius:12px;padding:13px 16px;margin-bottom:15px}.alert.success{background:#eaf7f1;color:#176646;border:1px solid #bce4d3}.alert.error{background:#fff0f1;color:#9a2833;border:1px solid #efc2c7}.alert.info{background:#eef7f6;color:#285e59;border:1px solid #cfe4e1}.alert.compact{margin:.75rem 0;padding:.75rem 1rem;font-size:.82rem}.hero-card{background:linear-gradient(135deg,#176b63,#124f59);color:#fff;border-radius:22px;padding:28px 30px;display:flex;justify-content:space-between;align-items:center;box-shadow:var(--shadow)}.hero-card h2{font-size:24px;margin:7px 0 10px}.hero-card p{max-width:700px;margin:0;color:#d7eae8;line-height:1.8}.eyebrow{font-size:12px;background:rgba(255,255,255,.13);padding:6px 10px;border-radius:999px}.readiness-ring{width:120px;height:120px;border:8px solid rgba(255,255,255,.19);border-top-color:#e8bd50;border-radius:50%;display:grid;place-content:center;text-align:center;flex-shrink:0}.readiness-ring strong{font-size:30px}.readiness-ring span{font-size:11px;color:#d9ece9}.metrics-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;margin:20px 0}.metric-card{background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:18px;text-decoration:none;color:var(--ink);box-shadow:0 5px 18px rgba(26,50,75,.04);transition:.2s}.metric-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.metric-card.warning{border-color:#ecd7a4}.metric-icon{display:block;width:35px;height:35px;border-radius:10px;background:#eaf4f3;color:var(--primary);display:grid;place-items:center;font-size:19px;margin-bottom:13px}.metric-card strong{font-size:27px;display:block}.metric-card small{color:var(--muted)}.two-columns{display:grid;grid-template-columns:1.25fr .75fr;gap:18px;margin:18px 0}.panel,.form-card,.table-card{background:var(--panel);border:1px solid var(--border);border-radius:17px;box-shadow:0 5px 18px rgba(26,50,75,.04)}.panel{padding:20px}.panel-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.panel-header h3{margin:0 0 5px;font-size:17px}.panel-header p{margin:0;color:var(--muted);font-size:12px}.journey-item{display:flex;gap:13px;padding:12px 0;border-bottom:1px dashed var(--border)}.journey-item:last-child{border:0}.journey-item>span{width:31px;height:31px;border-radius:50%;display:grid;place-items:center;background:#eef1f5;color:#788397;font-weight:700}.journey-item.done>span{background:#dff2ea;color:var(--success)}.journey-item.current>span{background:#fff0bd;color:#7d5c00}.journey-item strong,.journey-item small{display:block}.journey-item small{color:var(--muted);margin-top:4px}.status-list{margin:0}.status-list>div{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid var(--border);gap:15px}.status-list dt{color:var(--muted)}.status-list dd{margin:0;font-weight:700;text-align:left}.pill{display:inline-block;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:700;white-space:nowrap}.pill.success{background:#e4f5ed;color:#17704d}.pill.warning{background:#fff1cc;color:#805900}.pill.neutral{background:#edf0f4;color:#657186}.activity-list>div{position:relative;padding:8px 25px 14px 0;border-right:2px solid #e5e9ef}.activity-dot{position:absolute;right:-6px;top:12px;width:10px;height:10px;border-radius:50%;background:var(--primary)}.activity-list strong,.activity-list small{display:block}.activity-list small{color:var(--muted);margin-top:3px}.activity-list p{margin:4px 0 0;color:#596579}.text-link{color:var(--primary);text-decoration:none;font-size:13px;font-weight:700}.page-actions{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:16px}.filter-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.filter-bar input,.filter-bar select{min-width:220px}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:10px;padding:10px 16px;text-decoration:none;font:inherit;font-size:13px;font-weight:700;cursor:pointer}.btn.primary{background:var(--primary);color:#fff}.btn.primary:hover{background:var(--primary-dark)}.btn.secondary{background:#eaf2f2;color:var(--primary-dark)}.btn.ghost{background:#f2f4f7;color:#5e6879}.btn.full{width:100%}.table-card{overflow:auto}table{width:100%;border-collapse:collapse;min-width:750px}th{text-align:right;color:#697589;font-size:12px;background:#f8fafc;padding:13px 15px;border-bottom:1px solid var(--border)}td{padding:14px 15px;border-bottom:1px solid #edf0f4;font-size:13px;vertical-align:middle}tbody tr:last-child td{border-bottom:0}td small,.table-sub{color:var(--muted)}.table-sub{display:block;margin-top:4px}.icon-btn{color:var(--primary);border:1px solid #cfe0df;border-radius:8px;padding:7px 10px;text-decoration:none;background:#fff;font:inherit;font-size:12px;cursor:pointer;white-space:nowrap}.icon-btn.danger{color:var(--danger);border-color:#edc9cd}.row-actions{display:flex;gap:6px;align-items:center}.row-actions form{margin:0}.form-card{padding:24px;max-width:980px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.field{display:flex;flex-direction:column;gap:7px}.field.wide{grid-column:1/-1}.field label,.json-label{font-size:13px;font-weight:700}.field input,.field select,.field textarea,.filter-bar input,.filter-bar select{border:1px solid #ccd5e0;border-radius:9px;padding:10px 12px;background:#fff;color:var(--ink);font:inherit;outline:none}.field input:focus,.field select:focus,.field textarea:focus,.filter-bar input:focus,.filter-bar select:focus{border-color:#5fa49d;box-shadow:0 0 0 3px rgba(23,107,99,.09)}.field span,.validation-summary{color:var(--danger);font-size:12px}.field small{color:var(--muted);line-height:1.6}.validation-summary:empty{display:none}.validation-summary{background:#fff0f1;border:1px solid #efc2c7;border-radius:10px;padding:10px;margin-bottom:15px}.check-field{display:flex;align-items:center;gap:8px;padding:11px 0;font-size:13px;font-weight:700}.check-field input{width:18px;height:18px;accent-color:var(--primary)}.form-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:24px;padding-top:18px;border-top:1px solid var(--border)}.security-note{background:#eef7f6;border:1px solid #cfe4e1;color:#285e59;border-radius:11px;padding:13px 15px;margin-bottom:20px;font-size:13px}.cards-list{display:grid;gap:12px}.record-card{display:flex;align-items:center;gap:15px;background:#fff;border:1px solid var(--border);border-radius:15px;padding:17px}.record-card.highlight{border-right:5px solid var(--primary)}.record-icon{width:46px;height:46px;border-radius:13px;background:#eaf4f3;color:var(--primary);display:grid;place-items:center;font-size:22px}.record-main{flex:1}.record-title{display:flex;align-items:center;gap:9px}.record-main p{margin:6px 0}.record-main small{color:var(--muted)}.record-meta{text-align:left;display:flex;align-items:flex-end;flex-direction:column;gap:10px;color:var(--muted);font-size:11px}.person-cell{display:flex;align-items:center;gap:10px}.avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#eaf4f3;color:var(--primary);font-weight:800}.page-hint{color:var(--muted);font-size:13px}.systems-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.system-card{background:#fff;border:1px solid var(--border);border-radius:17px;padding:19px;box-shadow:0 5px 18px rgba(26,50,75,.04)}.system-head{display:flex;align-items:center;gap:11px}.system-head>div:nth-child(2){flex:1}.system-head h3{margin:0 0 4px}.system-logo{width:44px;height:44px;border-radius:13px;background:#153f43;color:#fff;display:grid;place-items:center;font-size:20px;font-weight:800}.system-card dl>div{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--border);font-size:12px}.system-card dt{color:var(--muted)}.system-card dd{margin:0;font-weight:700}.system-card p{color:var(--muted);font-size:12px;min-height:42px;line-height:1.6}.json-box{direction:ltr;text-align:left;background:#172235;color:#dce5ef;border-radius:11px;padding:15px;overflow:auto;min-height:100px;white-space:pre-wrap}.json-label{display:block;margin:14px 0 7px}.resolution-box{background:#eaf7f1;border:1px solid #bce4d3;border-radius:12px;padding:16px}.timeline{position:relative}.timeline-item{display:grid;grid-template-columns:18px 1fr;gap:8px}.timeline-dot{width:11px;height:11px;border-radius:50%;background:var(--primary);margin-top:22px;position:relative}.timeline-dot:after{content:"";position:absolute;right:5px;top:11px;width:1px;height:calc(100% + 30px);background:#d7dee7}.timeline-item:last-child .timeline-dot:after{display:none}.timeline-card{background:#fff;border:1px solid var(--border);border-radius:14px;padding:15px;margin-bottom:10px}.timeline-head{display:flex;justify-content:space-between;gap:15px}.timeline-head strong{margin-left:8px}.timeline-head span,.timeline-card small,.timeline-head time{color:var(--muted);font-size:11px}.timeline-card p{margin:8px 0;color:#5d687b}.empty-inline{text-align:center;color:var(--muted);padding:30px}.empty-state{text-align:center;background:#fff;border-radius:17px;padding:50px}.empty-icon{width:60px;height:60px;border-radius:50%;background:#fff0f1;color:var(--danger);display:grid;place-items:center;margin:auto;font-size:28px;font-weight:800}footer{text-align:center;color:#8993a3;font-size:11px;padding:35px 0 5px}@media(max-width:1200px){.metrics-grid{grid-template-columns:repeat(3,1fr)}.systems-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:900px){.app-shell{display:block}.sidebar{position:static;height:auto}.sidebar nav{display:grid;grid-template-columns:repeat(2,1fr)}.nav-section{grid-column:1/-1}.main-content{padding:0 16px 25px}.two-columns{grid-template-columns:1fr}.systems-grid{grid-template-columns:1fr}.topbar{align-items:flex-start;padding:20px 0}.hero-card{align-items:flex-start}.readiness-ring{display:none}}@media(max-width:620px){.metrics-grid{grid-template-columns:repeat(2,1fr)}.form-grid{grid-template-columns:1fr}.field.wide{grid-column:auto}.page-actions{align-items:stretch;flex-direction:column}.filter-bar{align-items:stretch;flex-direction:column}.filter-bar input,.filter-bar select{min-width:0;width:100%}.sidebar nav{grid-template-columns:1fr}.hero-card{padding:21px}.topbar-badge{display:none}}

/* Staff Import Center V0.2.0 */
.import-metrics{margin:18px 0}.import-upload-layout{align-items:start}.upload-dropzone{border:2px dashed #bfd7d4;border-radius:15px;padding:20px;background:#f7fbfb}.upload-dropzone input[type=file]{width:100%;padding:16px;background:#fff;border:1px solid var(--border);border-radius:11px}.field-note{display:block;margin-top:7px}.danger-text{color:var(--danger)}.fixed-map-card{position:sticky;top:20px}.rule-step{display:flex;gap:12px;align-items:flex-start;padding:13px 0;border-bottom:1px solid var(--border)}.rule-step>strong{width:30px;height:30px;border-radius:9px;background:var(--primary);color:#fff;display:grid;place-items:center}.rule-step div{display:flex;flex-direction:column;gap:4px}.rule-step span{color:var(--muted);font-size:12px}.safe-note{margin-top:16px;padding:13px;border-radius:11px;background:#eaf7f1;color:#22634d;font-size:12px}.import-summary-card{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--border);border:1px solid var(--border);border-radius:16px;overflow:hidden;margin-bottom:18px}.import-summary-card>div{background:#fff;padding:16px;display:flex;flex-direction:column;gap:6px}.import-summary-card span,.import-summary-card small{color:var(--muted);font-size:11px}.import-summary-card strong{font-size:14px}.details-metrics{grid-template-columns:repeat(6,1fr)}.import-note{margin:0 0 18px}.filters-head{align-items:flex-end}.filter-pills{display:flex;flex-wrap:wrap;gap:7px}.filter-pills a{padding:7px 11px;border:1px solid var(--border);border-radius:999px;color:var(--muted);font-size:11px;text-decoration:none;background:#fff}.filter-pills a.active{background:var(--primary);color:#fff;border-color:var(--primary)}.table-sub{display:block;color:var(--muted);font-size:10px;margin-top:5px}.mono{direction:ltr;text-align:right;font-family:monospace}.issue-message{display:block;max-width:230px;margin-top:7px;color:#7b4c1d;font-size:10px;line-height:1.5}.row-alert{background:#fff9f6}.badge-success{background:#e7f6ef;color:#227154}.badge-warning{background:#fff4d8;color:#8b6418}.badge-danger{background:#feecee;color:#a13b48}.badge-neutral{background:#eef1f5;color:#5c6675}.badge-info{background:#e7f1fb;color:#245e91}.import-table th,.import-table td{vertical-align:top}.import-table-wrap{max-height:68vh;overflow:auto}.import-table thead{position:sticky;top:0;z-index:2}.form-actions button[disabled]{opacity:.5;cursor:not-allowed}@media(max-width:1200px){.details-metrics{grid-template-columns:repeat(3,1fr)}.import-summary-card{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.details-metrics{grid-template-columns:repeat(2,1fr)}.import-summary-card{grid-template-columns:1fr}.fixed-map-card{position:static}}
.inline-action{display:block;margin-top:7px}.text-action{border:0;background:transparent;padding:0;color:var(--primary);font-size:10px;font-weight:700;cursor:pointer;text-decoration:underline}.text-action.danger-text{color:var(--danger)}

/* School Provisioning & Roster Approval V0.3.0 */
.provisioning-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.provisioning-card{background:#fff;border:1px solid var(--border);border-radius:18px;padding:19px;box-shadow:0 5px 18px rgba(26,50,75,.04)}.provisioning-head{display:flex;gap:12px;align-items:flex-start}.provisioning-head h3{margin:2px 0 5px;font-size:16px}.provisioning-head p{margin:0 0 5px;color:var(--muted);font-size:12px}.school-emblem{width:44px;height:44px;border-radius:13px;background:#e8f3f2;color:var(--primary);display:grid;place-items:center;font-weight:800;font-size:20px}.readiness-track{height:8px;background:#edf1f5;border-radius:999px;overflow:hidden;margin:18px 0 7px}.readiness-track span{height:100%;display:block;border-radius:999px}.readiness-track .ready{background:#23845c}.readiness-track .progress{background:#d9a928}.readiness-track .starting{background:#bc6670}.readiness-caption{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.readiness-caption strong{font-size:17px}.readiness-caption span{font-size:11px;color:var(--muted)}.card-facts{margin:0 0 15px}.card-facts>div{display:flex;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid #edf0f4;font-size:11px}.card-facts dt{color:var(--muted)}.card-facts dd{margin:0;font-weight:700;text-align:left}.school-command-card,.roster-header-card{background:linear-gradient(135deg,#176b63,#123f4c);color:#fff;border-radius:20px;padding:25px 27px;display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.school-command-card h2,.roster-header-card h2{margin:9px 0 7px}.school-command-card p,.roster-header-card p{margin:0;color:#d7eae8}.readiness-score{width:110px;height:110px;border-radius:50%;border:8px solid rgba(255,255,255,.22);border-top-color:#e8bd50;display:flex;flex-direction:column;align-items:center;justify-content:center}.readiness-score strong{font-size:28px}.readiness-score span{font-size:10px}.provisioning-metrics{grid-template-columns:repeat(4,1fr)}.provisioning-layout{align-items:start}.readiness-check{display:grid;grid-template-columns:36px 1fr auto;gap:12px;align-items:center;padding:14px 0;border-bottom:1px solid var(--border)}.readiness-check:last-child{border:0}.readiness-check>span{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;font-weight:800}.readiness-check.done>span{background:#e3f5ec;color:var(--success)}.readiness-check.pending>span{background:#fff0d4;color:var(--warning)}.readiness-check strong,.readiness-check small{display:block}.readiness-check small{color:var(--muted);margin-top:4px;line-height:1.5}.readiness-check a{color:var(--primary);font-size:11px;font-weight:700;text-decoration:none}.roster-action-card{position:sticky;top:18px}.roster-number{font-size:42px;font-weight:800;color:var(--primary);margin:8px 0}.status-list.compact>div{padding:9px 0;font-size:12px}.role-distribution{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.role-distribution>div{background:#f8fafc;border:1px solid var(--border);border-radius:10px;padding:11px;display:flex;justify-content:space-between;gap:8px;font-size:12px}.role-distribution strong{color:var(--primary)}.mini-import-list{display:grid;gap:8px}.mini-import-list a{display:grid;grid-template-columns:1fr auto;gap:3px 10px;border:1px solid var(--border);border-radius:10px;padding:11px;color:var(--ink);text-decoration:none}.mini-import-list a span{font-size:11px;color:var(--muted)}.mini-import-list a small{grid-column:2;grid-row:1/3;color:var(--muted);align-self:center}.roster-header-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.roster-header-actions form{margin:0}.inline-form{display:flex;gap:6px}.inline-form input{border:1px solid #b8cecc;border-radius:9px;padding:9px;min-width:150px}.roster-metrics{grid-template-columns:repeat(6,1fr)}.roster-filter-panel{padding:13px;margin-bottom:15px}.roster-table{max-height:70vh}.roster-table thead{position:sticky;top:0;z-index:2}.decision-form{display:grid;gap:6px;min-width:205px}.decision-form select,.decision-form input{border:1px solid #ccd5e0;border-radius:8px;padding:7px;font:inherit;font-size:11px}.snapshot-list{display:grid;gap:9px}.snapshot-list>div{display:grid;grid-template-columns:1fr auto;gap:5px 12px;border:1px solid var(--border);border-radius:10px;padding:11px}.snapshot-list code{direction:ltr;font-size:10px}.snapshot-list small{grid-column:1/-1;color:var(--muted)}.pill.danger{background:#feecee;color:#a13b48}@media(max-width:1200px){.provisioning-grid{grid-template-columns:repeat(2,1fr)}.roster-metrics{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.provisioning-grid{grid-template-columns:1fr}.school-command-card,.roster-header-card{align-items:flex-start;flex-direction:column;gap:18px}.provisioning-metrics,.roster-metrics{grid-template-columns:repeat(2,1fr)}.roster-header-actions{justify-content:flex-start}.readiness-score{width:90px;height:90px}.role-distribution{grid-template-columns:1fr}}
.school-command-actions{display:flex;align-items:center;gap:10px;flex-direction:column}.school-command-actions form{margin:0}

/* Academic Calendar Administration V0.4.0 */
.action-group,.record-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.year-switcher{display:flex;gap:7px;flex-wrap:wrap}.year-switcher a{padding:9px 13px;border:1px solid var(--border);border-radius:999px;background:#fff;color:var(--muted);text-decoration:none;font-size:11px}.year-switcher a.active{background:var(--primary);border-color:var(--primary);color:#fff}.year-foundation-card{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--border);border:1px solid var(--border);border-radius:16px;overflow:hidden;margin-bottom:18px}.year-foundation-card>div{background:#fff;padding:16px;display:flex;flex-direction:column;gap:5px}.year-foundation-card span{color:var(--muted);font-size:11px}.year-foundation-card strong{font-size:13px}.term-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.term-card{background:#fff;border:1px solid var(--border);border-radius:17px;padding:18px}.term-card.inactive{opacity:.65}.term-card>header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.term-card>header>div{display:flex;align-items:center;gap:11px}.term-card h3{margin:0 0 4px;font-size:16px}.term-order{width:36px;height:36px;border-radius:11px;background:#e7f3f1;color:var(--primary);display:grid;place-items:center;font-weight:800}.term-dates{display:flex;justify-content:center;align-items:center;gap:12px;background:#f7fafb;border-radius:11px;padding:11px;margin:15px 0;font-size:12px}.period-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px}.period-head a{font-size:11px;color:var(--primary);font-weight:700;text-decoration:none}.period-list{display:grid;gap:7px}.period-list>div{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:10px;border:1px solid var(--border);border-radius:10px;padding:10px;font-size:11px}.period-list span{display:flex;flex-direction:column}.period-list small{color:var(--muted);margin-top:3px}.period-list a{color:var(--primary);text-decoration:none;font-weight:700}.calendar-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.calendar-card{background:#fff;border:1px solid var(--border);border-radius:18px;padding:18px;box-shadow:0 5px 18px rgba(26,50,75,.04);position:relative;overflow:hidden}.calendar-card:before{content:"";position:absolute;top:0;right:0;left:0;height:4px;background:#6f8794}.calendar-card.status-published:before{background:var(--success)}.calendar-card.status-underreview:before{background:var(--warning)}.calendar-card.status-draft:before{background:#4184a5}.calendar-card.status-archived:before{background:#8b929d}.calendar-card header{display:grid;grid-template-columns:42px 1fr auto;gap:11px;align-items:start}.calendar-card h3{font-size:15px;margin:2px 0 5px}.calendar-icon{width:42px;height:42px;border-radius:12px;background:#e8f3f2;color:var(--primary);display:grid;place-items:center;font-size:20px}.calendar-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:16px 0}.calendar-facts>div{background:#f8fafc;border-radius:9px;padding:9px;display:flex;flex-direction:column;gap:3px}.calendar-facts span{font-size:10px;color:var(--muted)}.calendar-facts strong{font-size:11px}.calendar-range{padding:10px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);text-align:center;font-size:11px}.calendar-counts{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0}.calendar-counts span{background:#f0f4f7;border-radius:999px;padding:6px 9px;font-size:10px;color:#5a6675}.btn.full{width:100%;justify-content:center}.calendar-hero{background:linear-gradient(135deg,#165e59,#153d4c);color:#fff;border-radius:20px;padding:24px 27px;display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px}.calendar-hero h2{margin:10px 0 7px}.calendar-hero p{margin:0;color:#d7eae8}.hero-labels,.calendar-hero-actions,.workflow-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.calendar-hero-actions form,.workflow-actions form{margin:0}.btn.light{background:#fff;color:#155a55;border-color:#fff}.btn.danger-light{background:rgba(255,255,255,.1);color:#fff;border:1px solid rgba(255,255,255,.35)}.calendar-metrics{grid-template-columns:repeat(6,1fr)}.calendar-workspace{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:18px;align-items:start}.calendar-main,.calendar-side{display:grid;gap:18px}.sticky-panel{position:sticky;top:18px}.readiness-ok{padding:14px;border-radius:11px;background:#e8f6ef;color:#216d50;font-weight:700}.readiness-issues{display:grid;gap:7px}.readiness-issues>div{display:flex;gap:9px;align-items:flex-start;padding:10px;border-radius:9px;background:#fff4df;color:#77551a;font-size:12px}.readiness-issues span{font-weight:900}.workflow-actions{margin-top:14px}.structure-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.structure-strip>div{border:1px solid var(--border);border-radius:11px;padding:12px;display:flex;flex-direction:column;gap:5px}.structure-strip span,.structure-strip small{font-size:10px;color:var(--muted)}.event-form{display:grid;grid-template-columns:2fr 1fr 1fr 1fr auto auto;gap:9px;align-items:end;background:#f7fafb;border:1px solid var(--border);border-radius:13px;padding:13px}.check-field.compact{padding:9px;margin:0;align-self:end}.event-list{display:grid;gap:8px;margin-top:14px}.event-list>div{display:grid;grid-template-columns:auto 1fr auto auto;gap:10px;align-items:center;border:1px solid var(--border);border-radius:11px;padding:11px}.event-list div>div{display:flex;flex-direction:column;gap:3px}.event-list small{color:var(--muted)}.event-type{width:46px;height:34px;border-radius:9px;background:#e9f2f6;color:#35637a;display:grid;place-items:center;font-size:10px}.week-list{display:grid;gap:10px}.week-card{border:1px solid var(--border);border-radius:13px;background:#fff;overflow:hidden}.week-card.holiday-week{border-color:#ead49e}.week-card summary{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 15px;cursor:pointer;background:#f9fbfc}.week-card summary>div{display:flex;align-items:center;gap:10px}.week-card summary div>div{display:flex;flex-direction:column;gap:3px}.week-card summary small{color:var(--muted)}.week-number{width:34px;height:34px;border-radius:10px;background:#e7f3f1;color:var(--primary);display:grid;place-items:center;font-weight:800}.days-table-wrap{overflow:auto}.days-table{margin:0}.days-table td,.days-table th{font-size:10px}.non-school-day{background:#fbfaf7}.day-edit-form{display:grid;grid-template-columns:110px 130px auto auto auto;gap:5px;align-items:center;min-width:460px}.day-edit-form select,.day-edit-form input{padding:6px;border:1px solid var(--border);border-radius:7px;font-size:10px}.day-edit-form label{font-size:9px;white-space:nowrap}.assignment-form{display:grid;gap:10px}.assignment-form select[multiple]{min-height:130px}.assignment-list{display:grid;gap:7px}.assignment-list>div{display:flex;justify-content:space-between;gap:10px;border:1px solid var(--border);border-radius:9px;padding:10px;font-size:11px}.alert.warning{background:#fff4df;color:#79581c;border-color:#edd39c}@media(max-width:1250px){.calendar-cards{grid-template-columns:repeat(2,1fr)}.calendar-metrics{grid-template-columns:repeat(3,1fr)}.event-form{grid-template-columns:repeat(2,1fr)}.structure-strip{grid-template-columns:1fr}.calendar-workspace{grid-template-columns:1fr}.sticky-panel{position:static}}@media(max-width:780px){.term-grid,.calendar-cards{grid-template-columns:1fr}.year-foundation-card{grid-template-columns:repeat(2,1fr)}.calendar-hero{flex-direction:column;align-items:flex-start}.calendar-metrics{grid-template-columns:repeat(2,1fr)}.event-form{grid-template-columns:1fr}.period-list>div{grid-template-columns:1fr auto}.calendar-card header{grid-template-columns:42px 1fr}.calendar-card header>.pill{grid-column:2}.week-card summary{align-items:flex-start;flex-direction:column}}


/* Central Identity, Accounts & SSO Readiness V0.5.0 */
.topbar-account{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.topbar-account form{margin:0}.identity-page{min-height:100vh;display:grid;place-items:center;background:linear-gradient(145deg,#eef6f5,#f7f9fc);padding:24px}.identity-card{width:min(460px,100%);background:#fff;border:1px solid var(--border);border-radius:22px;padding:28px;box-shadow:0 20px 55px rgba(21,61,76,.12)}.identity-card.wide{width:min(760px,100%)}.identity-brand{display:flex;gap:12px;align-items:center;margin-bottom:24px}.identity-brand>div:last-child{display:flex;flex-direction:column}.identity-card h1{margin:0 0 8px}.identity-card>p{color:var(--muted);margin:0 0 20px}.identity-card form{display:grid;gap:10px}.identity-card input{border:1px solid var(--border);border-radius:10px;padding:12px;font:inherit}.identity-card label{font-size:12px;font-weight:700}.password-policy{background:#f7fafb;border-radius:9px;padding:10px;color:var(--muted);font-size:11px}.validation-summary{color:#a13b48;font-size:12px}.identity-account-hero{background:linear-gradient(135deg,#174d5c,#176860);color:#fff;border-radius:19px;padding:24px;display:flex;justify-content:space-between;gap:20px;align-items:center}.identity-account-hero h2{margin:8px 0}.identity-account-hero p{margin:0;color:#d7ebe9}.account-actions{display:flex;gap:8px;flex-wrap:wrap;margin:15px 0}.account-actions form{display:flex;gap:6px;margin:0}.account-actions select{border:1px solid var(--border);border-radius:9px;padding:8px}.scope-list,.session-list,.trusted-app-list{display:grid;gap:8px}.scope-list>div,.session-list>div,.trusted-app-list>div{border:1px solid var(--border);border-radius:10px;padding:11px;display:grid;gap:4px}.scope-list small,.session-list small,.trusted-app-list small{color:var(--muted)}.session-list>div{grid-template-columns:1fr auto}.session-list small{grid-column:1/-1}.role-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.role-card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:17px}.role-card header{display:flex;justify-content:space-between;gap:12px}.role-card h3{margin:0 0 5px}.role-card p{color:var(--muted);min-height:40px}.permission-chips{display:flex;gap:6px;flex-wrap:wrap}.permission-chips span{background:#eaf4f2;color:#1c665e;padding:6px 8px;border-radius:999px;font-size:10px}.trusted-app-list>div{display:flex;justify-content:space-between;align-items:center}.trusted-app-list>div>div{display:grid;gap:4px}.truncate{max-width:260px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.danger-outline{background:#fff;color:#a13b48;border:1px solid #dca7ad}.btn.xs{padding:6px 9px;font-size:10px}.form-grid .span-2{grid-column:1/-1}@media(max-width:1000px){.role-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.role-grid{grid-template-columns:1fr}.identity-account-hero{align-items:flex-start;flex-direction:column}.account-actions{display:grid}.account-actions form{display:grid}.topbar-account{justify-content:flex-start}}

.role-management{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.role-management>form{display:flex;gap:7px}.role-management select{border:1px solid var(--border);border-radius:9px;padding:9px}.permission-chips form{margin:0}.role-remove{border:0;background:#eaf4f2;color:#1c665e;padding:7px 9px;border-radius:999px;font:inherit;font-size:10px;cursor:pointer}.compact-panel{margin:15px 0}.help-text{color:var(--muted);font-size:11px}

.mini-list{display:grid;gap:.4rem;margin-top:1rem;border-top:1px solid var(--border,#e5e7eb);padding-top:.75rem}.mini-list div{display:flex;justify-content:space-between;gap:1rem}.mini-list small{color:#64748b}.details-list{display:grid;gap:.75rem}.details-list div{display:grid;grid-template-columns:140px 1fr;border-bottom:1px solid #e5e7eb;padding:.5rem 0}.details-list dt{font-weight:700}.details-list dd{margin:0}.button-row form{display:inline-block}

/* Role-Based Guided Administration & School Onboarding V0.8.1 */
.auth-shell{min-height:100vh;background:linear-gradient(145deg,#edf6f4,#f8fafc);display:grid;grid-template-rows:auto 1fr;padding:28px}.auth-brand{display:flex;align-items:center;gap:14px;max-width:1120px;width:100%;margin:0 auto}.auth-brand .brand-mark.large{width:58px;height:58px}.auth-brand strong,.auth-brand small{display:block}.auth-brand strong{font-size:20px}.auth-brand small{color:var(--muted);margin-top:5px}.auth-content{display:grid;place-items:center}.sidebar-help,.sidebar-account-card{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.07);border-radius:14px;padding:14px;margin-top:16px}.sidebar-help strong,.sidebar-help small,.sidebar-account-card strong,.sidebar-account-card small{display:block}.sidebar-help small,.sidebar-account-card small{color:#b9d3d1;line-height:1.6;margin-top:5px}.sidebar-account-card{margin-top:auto}.sidebar-logout{margin-top:12px;width:100%;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);border-radius:9px;color:#fff;padding:8px;font:inherit;cursor:pointer}.advanced-nav{margin-top:18px;border-top:1px solid rgba(255,255,255,.1);padding-top:10px}.advanced-nav summary{cursor:pointer;color:#9fc1bf;font-size:12px;padding:9px 12px}.advanced-nav a{padding-right:24px!important;font-size:12px!important}.role-badge{background:#e6f1ef;color:var(--primary-dark);border-radius:999px;padding:9px 13px;font-size:12px;font-weight:700}.welcome-card{border-radius:22px;padding:28px 30px;display:flex;justify-content:space-between;align-items:center;gap:24px;box-shadow:var(--shadow);margin-bottom:18px}.welcome-card h2{margin:8px 0;font-size:25px}.welcome-card p{margin:0;line-height:1.8}.admin-welcome{background:linear-gradient(135deg,#165f59,#153f4b);color:#fff}.admin-welcome p,.school-welcome p{color:#d7e9e7}.school-welcome{background:linear-gradient(135deg,#184e5a,#176a61);color:#fff}.setup-progress{width:120px;height:120px;border-radius:50%;border:8px solid rgba(255,255,255,.2);border-top-color:#e5bb4c;display:grid;place-content:center;text-align:center;flex:0 0 auto}.setup-progress strong{font-size:26px}.setup-progress span{font-size:10px;color:#d6e9e7}.status-chip{border-radius:999px;padding:9px 13px;font-size:12px;font-weight:700}.status-chip.success{background:#dff4ea;color:#176948}.status-chip.warning{background:#fff1c9;color:#77530a}.next-action-card{background:#fff;border:1px solid #cfe2df;border-right:6px solid var(--primary);border-radius:19px;padding:22px 24px;display:grid;grid-template-columns:58px 1fr auto;gap:18px;align-items:center;box-shadow:0 8px 28px rgba(26,50,75,.06);margin-bottom:18px}.next-action-number{width:58px;height:58px;border-radius:17px;background:#e7f3f1;color:var(--primary);display:grid;place-items:center;font-size:24px;font-weight:800}.next-action-content span{font-size:11px;color:var(--primary);font-weight:700}.next-action-content h2{margin:5px 0;font-size:20px}.next-action-content p{margin:0;color:var(--muted)}.btn.large{padding:13px 20px;font-size:14px}.guided-steps-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}.guided-step-card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:17px;display:grid;grid-template-columns:38px 1fr;gap:12px;text-decoration:none;color:var(--ink);position:relative}.guided-step-card.complete{border-color:#c9e5d9}.guided-step-card.current{border-color:#e2bd57;box-shadow:0 8px 22px rgba(203,153,33,.12)}.guided-step-card.locked{opacity:.72}.step-number{width:38px;height:38px;border-radius:12px;background:#eef2f5;color:#647186;display:grid;place-items:center;font-weight:800}.guided-step-card.complete .step-number{background:#e3f4eb;color:var(--success)}.guided-step-card.current .step-number{background:#fff0c5;color:#7a5608}.guided-step-card strong,.guided-step-card small{display:block}.guided-step-card small{color:var(--muted);margin-top:5px;line-height:1.5}.step-state{grid-column:2;font-size:10px;color:var(--muted);font-weight:700}.admin-overview-grid,.school-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin:18px 0}.overview-card,.summary-card{background:#fff;border:1px solid var(--border);border-radius:15px;padding:17px;text-decoration:none;color:var(--ink)}.overview-card span,.summary-card span{display:block;color:var(--muted);font-size:11px;margin-bottom:8px}.overview-card strong,.summary-card strong{font-size:23px}.overview-card .text-value{font-size:14px;line-height:1.5}.overview-card.warning{border-color:#ecd49d}.school-summary-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.school-summary-grid.compact{grid-template-columns:repeat(4,minmax(0,1fr))}.guided-panel{margin:18px 0}.readiness-checklist.large{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.readiness-row{display:grid;grid-template-columns:34px 1fr auto;gap:11px;align-items:center;border:1px solid var(--border);border-radius:13px;padding:13px;text-decoration:none;color:var(--ink)}.readiness-row.complete{background:#f7fcf9}.readiness-row.pending{background:#fffaf0;border-color:#ead8ad}.check-mark{width:34px;height:34px;border-radius:11px;background:#e7f3ed;color:var(--success);display:grid;place-items:center;font-weight:900}.readiness-row.pending .check-mark{background:#fff0c8;color:#7c5706}.readiness-row strong,.readiness-row small{display:block}.readiness-row small{color:var(--muted);margin-top:3px}.row-arrow{color:var(--primary);font-size:18px}.quick-actions-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.quick-action-card{width:100%;min-height:105px;background:#fff;border:1px solid var(--border);border-radius:16px;padding:16px;display:flex;align-items:center;gap:13px;text-align:right;text-decoration:none;color:var(--ink);font:inherit;cursor:pointer}.quick-action-card.primary{border-color:#a9d1cc;background:#f8fcfb}.quick-action-card strong,.quick-action-card small{display:block}.quick-action-card small{color:var(--muted);margin-top:5px;line-height:1.5}.quick-icon{width:42px;height:42px;border-radius:13px;background:#e6f2f0;color:var(--primary);display:grid;place-items:center;font-size:20px;flex:0 0 auto}.quick-action-form{margin:0}.page-intro-card{background:#fff;border:1px solid var(--border);border-radius:18px;padding:22px;display:flex;justify-content:space-between;align-items:center;gap:18px}.page-intro-card h2{margin:6px 0}.page-intro-card p{margin:0;color:var(--muted)}.seat-meter{background:#f4f8f8;border-radius:14px;padding:14px 18px;text-align:center;min-width:160px}.seat-meter span,.seat-meter small{display:block}.seat-meter strong{font-size:20px;display:block;margin:5px 0}.action-cluster,.table-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.action-cluster form,.table-actions form{margin:0}.subtle-panel{background:#fbfcfd}.simple-list{display:grid;gap:8px}.simple-list a{display:flex;justify-content:space-between;gap:15px;padding:11px;border:1px solid var(--border);border-radius:10px;text-decoration:none;color:var(--ink)}.simple-list span{color:var(--muted)}.empty-state{text-align:center;padding:35px}.empty-state strong{font-size:17px}.empty-state p{color:var(--muted)}.activation-links-list{display:grid;gap:12px}.activation-link-card{border:1px solid var(--border);border-radius:13px;padding:14px;display:grid;grid-template-columns:minmax(180px,.4fr) 1fr;gap:14px;align-items:center}.activation-link-card strong,.activation-link-card small{display:block}.activation-link-card small{color:var(--muted);margin-top:4px}.activation-link-card input{width:100%;border:1px solid var(--border);border-radius:9px;padding:10px;direction:ltr;text-align:left}.locked-school-field{background:#f6faf9;border:1px solid #d5e6e3;border-radius:12px;padding:13px}.locked-school-field strong,.locked-school-field small{display:block}.locked-school-field small{margin-top:5px}.activity-list.compact>div{padding-bottom:9px}.alert.warning{background:#fff4df;color:#79581c;border:1px solid #edd39c}
@media(max-width:1200px){.guided-steps-grid{grid-template-columns:repeat(2,1fr)}.school-summary-grid{grid-template-columns:repeat(3,1fr)}.quick-actions-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.app-shell{grid-template-columns:1fr}.sidebar{position:static;height:auto}.sidebar nav{display:grid;grid-template-columns:repeat(2,1fr);gap:5px}.nav-section,.advanced-nav,.sidebar-help{grid-column:1/-1}.main-content{padding:0 18px 25px}.topbar{min-height:90px}.next-action-card{grid-template-columns:50px 1fr}.next-action-card .btn{grid-column:1/-1}.admin-overview-grid,.school-summary-grid.compact{grid-template-columns:repeat(2,1fr)}.readiness-checklist.large{grid-template-columns:1fr}}
@media(max-width:620px){.auth-shell{padding:18px}.welcome-card,.page-intro-card{flex-direction:column;align-items:flex-start}.setup-progress{width:92px;height:92px}.guided-steps-grid,.quick-actions-grid,.admin-overview-grid,.school-summary-grid,.school-summary-grid.compact{grid-template-columns:1fr}.sidebar nav{grid-template-columns:1fr}.activation-link-card{grid-template-columns:1fr}.next-action-card{grid-template-columns:1fr}.next-action-number{width:44px;height:44px}.topbar{align-items:flex-start;flex-direction:column;justify-content:center;gap:8px}.role-badge{display:none}}

/* V0.8.1 role hand-off and administrative activation */
.admin-school-welcome{background:linear-gradient(135deg,#183f57,#17695f);color:#fff}.admin-school-welcome p{color:#d8e9e7}.school-activation-state{width:122px;height:122px;border-radius:50%;border:8px solid rgba(255,255,255,.2);border-top-color:#e5bb4c;display:grid;place-content:center;text-align:center;flex:0 0 auto}.school-activation-state strong{font-size:27px}.school-activation-state span{font-size:10px;color:#d8e9e7}.role-handoff-panel{border-right:5px solid var(--primary);background:#f9fcfb}.handoff-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.handoff-steps>div{display:flex;align-items:center;gap:10px;border:1px solid var(--border);background:#fff;border-radius:12px;padding:13px}.handoff-steps span{width:31px;height:31px;border-radius:10px;background:#e5f1ef;color:var(--primary);display:grid;place-items:center;font-weight:800;flex:0 0 auto}.handoff-steps strong{font-size:12px;line-height:1.5}.enabled-products-list{display:grid;gap:9px}.enabled-products-list>div{display:flex;justify-content:space-between;gap:16px;border:1px solid var(--border);border-radius:11px;padding:12px}.enabled-products-list strong,.enabled-products-list span{display:block}.enabled-products-list span{color:var(--muted);font-size:11px}.account-create-form{display:grid;grid-template-columns:minmax(240px,1fr) auto;gap:9px}.account-create-form select{border:1px solid #ccd5e0;border-radius:9px;padding:10px 12px;background:#fff;font:inherit}.quick-action-card.disabled{cursor:not-allowed;opacity:.58;background:#f3f5f7}.quick-action-card:disabled{cursor:not-allowed}.compact-panel{padding:17px}.danger-text{color:var(--danger)!important}.btn.danger-outline{background:#fff;color:var(--danger);border:1px solid #e6b9bf}.btn[disabled]{opacity:.48;cursor:not-allowed}.advanced-details{border:1px solid var(--border);border-radius:12px;margin-top:13px}.advanced-details summary{cursor:pointer;padding:12px;font-weight:700;color:var(--muted)}.details-inner{padding:0 13px 13px}.empty-state.compact{padding:22px}.text-action{border:0;background:transparent;color:var(--primary);padding:3px;font:inherit;font-size:12px;font-weight:700;cursor:pointer}.table-actions small{color:var(--muted)}
@media(max-width:1000px){.handoff-steps{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.handoff-steps{grid-template-columns:1fr}.account-create-form{grid-template-columns:1fr}.school-activation-state{width:96px;height:96px}.enabled-products-list>div{flex-direction:column}}

/* V0.8.2 — calendar, packages, subscriptions and reference-data UX */
.term-settings-intro{margin-bottom:18px}.term-definition-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.term-definition-card{background:#fff;border:1px solid var(--border);border-radius:17px;padding:18px;display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:14px;box-shadow:0 5px 18px rgba(26,50,75,.04)}.term-definition-card.inactive{opacity:.67}.term-order,.term-period-order{width:48px;height:48px;border-radius:14px;background:#e7f3f1;color:var(--primary);display:grid;place-items:center;font-size:20px;font-weight:800}.term-definition-main h3{margin:0}.term-definition-main code{display:inline-block;margin-top:6px}.term-definition-main p{margin:8px 0 0;color:var(--muted);font-size:12px}.guided-form-card{max-width:860px}.form-section-heading,.builder-step-head{display:flex;gap:14px;align-items:flex-start;margin-bottom:20px}.form-section-heading>span,.builder-step-number{width:42px;height:42px;border-radius:13px;background:#e5f2f0;color:var(--primary);display:grid;place-items:center;font-size:18px;font-weight:800;flex:0 0 auto}.form-section-heading h3,.builder-step-head h2{margin:0 0 5px}.form-section-heading p,.builder-step-head p{margin:0;color:var(--muted);font-size:13px}.option-boxes{justify-content:center}.calendar-builder-form,.plan-builder-form,.subscription-wizard-form{display:grid;gap:16px;max-width:1180px}.builder-step-card{background:#fff;border:1px solid var(--border);border-radius:19px;padding:24px;box-shadow:0 6px 20px rgba(26,50,75,.045)}.calendar-term-builder-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.calendar-term-input-card{border:1px solid var(--border);border-radius:15px;padding:17px;background:#fbfcfd}.calendar-term-input-card header{display:flex;gap:11px;align-items:center;margin-bottom:15px}.calendar-term-input-card header>span{width:34px;height:34px;border-radius:10px;background:#e6f3f1;color:var(--primary);display:grid;place-items:center;font-weight:800}.calendar-term-input-card h3{margin:0 0 3px;font-size:15px}.calendar-term-input-card small{color:var(--muted)}.term-date-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.field-error-block{display:block;color:var(--danger);font-size:12px;margin:-7px 0 13px}.department-selection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.department-select-card{position:relative;border:1px solid var(--border);border-radius:14px;padding:15px 15px 15px 45px;display:block;cursor:pointer;background:#fff;min-height:92px;transition:.18s}.department-select-card:hover{border-color:#82b9b3;transform:translateY(-1px)}.department-select-card.selected{border-color:var(--primary);background:#f4fbfa;box-shadow:0 0 0 2px rgba(23,107,99,.08)}.department-select-card.unavailable{cursor:not-allowed;background:#f5f6f8;opacity:.66}.department-select-card input{position:absolute;opacity:0;pointer-events:none}.department-check,.product-select-mark,.choice-check{position:absolute;left:12px;top:13px;width:25px;height:25px;border-radius:8px;background:#edf1f4;color:transparent;display:grid;place-items:center;font-weight:900}.department-select-card.selected .department-check,.plan-product-card.selected .product-select-mark,.subscription-choice-card.selected .choice-check{background:var(--primary);color:#fff}.department-select-card strong,.department-select-card small{display:block}.department-select-card small{margin-top:6px;color:var(--muted);font-size:11px}.department-select-card em{display:block;color:var(--danger);font-size:10px;font-style:normal;margin-top:7px}.builder-summary-card,.subscription-confirmation-card{background:linear-gradient(135deg,#f5fbfa,#fffaf0);border:1px solid #d4e6e3;border-radius:17px;padding:18px 22px;display:flex;align-items:center;justify-content:space-between;gap:18px}.builder-summary-card strong,.builder-summary-card p,.subscription-confirmation-card strong,.subscription-confirmation-card p{display:block;margin:0}.builder-summary-card p,.subscription-confirmation-card p{color:var(--muted);margin-top:5px;line-height:1.6}.calendar-builder-actions{background:#fff;border:1px solid var(--border);border-radius:15px;padding:15px;margin-top:0;position:sticky;bottom:10px;z-index:5;box-shadow:0 8px 30px rgba(26,50,75,.1)}.calendar-policy-note{background:#fff8e5;border:1px solid #ead49e;border-radius:14px;padding:14px 16px;display:flex;gap:12px;margin-bottom:17px}.calendar-policy-note>span{width:31px;height:31px;border-radius:10px;background:#f2d884;display:grid;place-items:center;font-weight:900}.calendar-policy-note strong,.calendar-policy-note p{display:block;margin:0}.calendar-policy-note p{color:#715b28;font-size:12px;margin-top:4px}.calendar-cards.redesigned{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-department-chips,.plan-products-chips,.choice-products{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}.calendar-department-chips span,.plan-products-chips span,.choice-products span{background:#edf6f5;color:var(--primary-dark);padding:6px 9px;border-radius:999px;font-size:10px;font-weight:700}.calendar-summary-hero{background:linear-gradient(135deg,#174c57,#176b63);color:#fff;border-radius:22px;padding:25px 28px;display:flex;justify-content:space-between;gap:25px;align-items:center}.calendar-summary-hero h2{margin:10px 0 7px}.calendar-summary-hero p{margin:0;color:#d8e9e7}.calendar-hero-stats{display:grid;grid-template-columns:repeat(3,95px);gap:8px}.calendar-hero-stats>div{background:rgba(255,255,255,.1);border-radius:13px;padding:14px;text-align:center}.calendar-hero-stats strong,.calendar-hero-stats span{display:block}.calendar-hero-stats strong{font-size:22px}.calendar-hero-stats span{font-size:10px;color:#d5e7e5;margin-top:4px}.calendar-command-bar{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.calendar-command-bar form{margin:0}.calendar-readiness-panel{border-radius:14px;padding:15px 18px;margin-bottom:16px;display:flex;gap:13px;align-items:flex-start}.calendar-readiness-panel.success{background:#eaf7f1;border:1px solid #bce4d3;color:#176646}.calendar-readiness-panel.warning{background:#fff5df;border:1px solid #ecd39a;color:#75551c;display:block}.calendar-readiness-panel p{margin:4px 0 0}.calendar-readiness-panel ul{margin:10px 20px 0 0}.calendar-details-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:17px}.calendar-details-grid main{display:grid;gap:17px}.calendar-details-grid aside{display:grid;gap:17px;align-content:start}.sticky-panel{position:sticky;top:18px}.term-period-timeline{display:grid;gap:10px}.term-period-timeline article{border:1px solid var(--border);border-radius:13px;padding:13px;display:grid;grid-template-columns:44px 1fr auto;gap:12px;align-items:center}.term-period-timeline strong,.term-period-timeline small{display:block}.term-period-timeline small{color:var(--muted);margin-top:4px}.term-period-timeline em{font-style:normal;font-size:11px;color:var(--muted)}.holiday-entry-form{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:11px;border:1px dashed #b9d6d2;background:#f8fcfb;border-radius:14px;padding:16px;margin-bottom:15px}.holiday-entry-form .wide{grid-column:span 2}.holiday-entry-form button{align-self:end}.calendar-events-list{display:grid;gap:9px}.calendar-events-list article{display:grid;grid-template-columns:39px 1fr auto;gap:11px;align-items:center;border:1px solid var(--border);border-radius:12px;padding:12px}.event-type-icon{width:39px;height:39px;border-radius:11px;background:#fff2ca;color:#795500;display:grid;place-items:center;font-size:18px}.calendar-events-list strong,.calendar-events-list small{display:block}.calendar-events-list small{color:var(--muted);margin-top:4px}.weeks-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.weeks-summary-grid article{border:1px solid var(--border);border-radius:11px;padding:10px}.weeks-summary-grid article.effective{border-right:4px solid var(--success)}.weeks-summary-grid article.holiday{border-right:4px solid #d5a629;background:#fffaf0}.weeks-summary-grid article.outside{opacity:.55}.weeks-summary-grid strong,.weeks-summary-grid span,.weeks-summary-grid small{display:block}.weeks-summary-grid span,.weeks-summary-grid small{color:var(--muted);font-size:10px;margin-top:4px}.assigned-departments-list{display:grid;gap:8px}.assigned-departments-list>div{display:flex;gap:10px;border:1px solid var(--border);border-radius:11px;padding:11px}.assigned-departments-list>div>span{color:var(--primary);font-size:19px}.assigned-departments-list strong,.assigned-departments-list small{display:block}.assigned-departments-list small{color:var(--muted);margin-top:3px}.plan-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.plan-product-card{position:relative;display:grid;grid-template-columns:47px 1fr;gap:12px;border:1px solid var(--border);border-radius:15px;padding:15px 45px 15px 15px;cursor:pointer;background:#fff}.plan-product-card input{position:absolute;opacity:0}.plan-product-card.selected{border-color:var(--primary);background:#f5fbfa;box-shadow:0 0 0 2px rgba(23,107,99,.07)}.plan-product-card strong,.plan-product-card small,.plan-product-card code{display:block}.plan-product-card small{color:var(--muted);margin:4px 0 7px;font-size:11px;line-height:1.5}.pricing-layout{display:grid;grid-template-columns:330px 1fr;gap:18px}.price-highlight-box{background:linear-gradient(135deg,#174d57,#176b63);color:#fff;border-radius:17px;padding:21px}.price-highlight-box label{display:block;font-weight:700;margin-bottom:13px}.price-highlight-box>div{display:flex;align-items:center;gap:8px}.price-highlight-box input{width:100%;font-size:30px;font-weight:800;background:rgba(255,255,255,.96);border:0;border-radius:12px;padding:12px}.price-highlight-box small{display:block;color:#d9e9e7;margin-top:11px}.compact-grid{gap:12px}.plan-status-selector>div{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.status-option{border:1px solid var(--border);border-radius:13px;padding:13px;display:flex;gap:8px;cursor:pointer}.status-option input{accent-color:var(--primary)}.status-option strong,.status-option small{display:block}.status-option small{color:var(--muted);margin-top:4px;font-size:10px}.subscription-plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.subscription-plan-card{background:#fff;border:1px solid var(--border);border-radius:18px;padding:20px;box-shadow:0 5px 18px rgba(26,50,75,.04)}.subscription-plan-card.active{border-top:5px solid var(--primary)}.subscription-plan-card header{display:flex;justify-content:space-between;gap:15px}.subscription-plan-card h3{margin:9px 0 5px}.subscription-plan-card>p{color:var(--muted);line-height:1.6}.plan-price{text-align:left}.plan-price strong,.plan-price span,.plan-price small{display:block}.plan-price strong{font-size:28px}.plan-price span{color:var(--primary);font-weight:700}.plan-price small{color:var(--muted)}.plan-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}.plan-facts>div{background:#f7f9fb;border-radius:11px;padding:10px}.plan-facts span,.plan-facts strong{display:block}.plan-facts span{color:var(--muted);font-size:10px;margin-bottom:5px}.subscription-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.subscription-choice-card{position:relative;border:1px solid var(--border);border-radius:17px;padding:18px 48px 18px 18px;cursor:pointer;background:#fff}.subscription-choice-card input{position:absolute;opacity:0}.subscription-choice-card.selected{border-color:var(--primary);box-shadow:0 0 0 2px rgba(23,107,99,.08);background:#f7fcfb}.subscription-choice-card header{display:flex;justify-content:space-between;gap:14px}.subscription-choice-card strong,.subscription-choice-card small{display:block}.subscription-choice-card small{color:var(--muted);margin-top:5px}.choice-price{text-align:left}.choice-price b{font-size:24px}.choice-price span{font-size:11px;color:var(--primary);font-weight:700}.subscription-choice-card dl{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:13px 0 0}.subscription-choice-card dl>div{background:#f5f7f9;border-radius:9px;padding:8px}.subscription-choice-card dt{color:var(--muted);font-size:9px}.subscription-choice-card dd{margin:4px 0 0;font-size:11px;font-weight:700}.school-subscription-select{max-width:650px}.school-subscription-select select{font-size:14px;padding:13px}.activation-mode-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.activation-mode-card{border:1px solid var(--border);border-radius:15px;padding:16px;display:flex;gap:13px;cursor:pointer}.activation-mode-card input{position:absolute;opacity:0}.activation-mode-card.selected{border-color:var(--primary);background:#f5fbfa}.activation-mode-icon{width:44px;height:44px;border-radius:13px;background:#e7f3f1;color:var(--primary);display:grid;place-items:center;font-size:19px;font-weight:800}.activation-mode-card strong,.activation-mode-card small{display:block}.activation-mode-card small{color:var(--muted);margin-top:5px;line-height:1.5}
@media(max-width:1100px){.department-selection-grid,.plan-product-grid{grid-template-columns:repeat(2,1fr)}.calendar-details-grid{grid-template-columns:1fr}.sticky-panel{position:static}.weeks-summary-grid{grid-template-columns:repeat(3,1fr)}.holiday-entry-form{grid-template-columns:repeat(2,1fr)}.pricing-layout{grid-template-columns:1fr}.calendar-cards.redesigned{grid-template-columns:1fr}}
@media(max-width:700px){.term-definition-grid,.calendar-term-builder-grid,.subscription-plan-grid,.subscription-choice-grid,.activation-mode-grid{grid-template-columns:1fr}.department-selection-grid,.plan-product-grid{grid-template-columns:1fr}.term-date-row{grid-template-columns:1fr}.calendar-summary-hero{align-items:flex-start;flex-direction:column}.calendar-hero-stats{width:100%;grid-template-columns:repeat(3,1fr)}.weeks-summary-grid{grid-template-columns:repeat(2,1fr)}.holiday-entry-form{grid-template-columns:1fr}.holiday-entry-form .wide{grid-column:auto}.plan-status-selector>div{grid-template-columns:1fr}.builder-summary-card,.subscription-confirmation-card{align-items:flex-start;flex-direction:column}.calendar-builder-actions{position:static}.term-definition-card{grid-template-columns:42px 1fr}.term-definition-card .icon-btn{grid-column:1/-1}.subscription-choice-card dl{grid-template-columns:1fr}}

/* V0.8.2 reference data and subscription details */
.reference-data-banner{display:flex;align-items:center;justify-content:space-between;gap:18px;background:linear-gradient(135deg,#f3fbf9,#fff);border:1px solid #cfe5e1;border-radius:16px;padding:17px 19px;margin-bottom:16px}.reference-data-banner strong,.reference-data-banner p{display:block;margin:0}.reference-data-banner p{color:var(--muted);font-size:12px;margin-top:5px;line-height:1.7}.reference-badge{display:inline-block;background:#dff2ed;color:#176b63;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:800;margin-bottom:7px}.subscription-details-hero{display:flex;justify-content:space-between;align-items:center;gap:18px;background:linear-gradient(135deg,#174c57,#176b63);color:#fff;border-radius:21px;padding:25px 28px;margin-bottom:17px}.subscription-details-hero h2{margin:10px 0 7px}.subscription-details-hero p{margin:0;color:#d6e9e6}.subscription-number-box{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.14);border-radius:14px;padding:15px 18px;text-align:left}.subscription-number-box small,.subscription-number-box strong{display:block}.subscription-number-box small{color:#d6e9e6;margin-bottom:5px}.subscription-details-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:17px}.subscription-details-layout main{display:grid;gap:17px}.entitlement-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.entitlement-product-grid article{display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:11px;border:1px solid var(--border);border-radius:13px;padding:13px}.entitlement-product-grid strong,.entitlement-product-grid small{display:block}.entitlement-product-grid small{color:var(--muted);margin-top:4px}.entitlement-list-redesigned{display:grid;gap:8px}.entitlement-list-redesigned>div{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid var(--border);border-radius:12px;padding:12px}.entitlement-list-redesigned strong,.entitlement-list-redesigned small{display:block}.entitlement-list-redesigned small{color:var(--muted);margin-top:4px}.entitlement-list-redesigned>div>div:last-child{text-align:left}.subscription-timeline{display:grid}.subscription-timeline>div{display:grid;grid-template-columns:18px 1fr;gap:10px;padding:0 0 17px}.subscription-timeline>div>span{width:10px;height:10px;border-radius:50%;background:var(--primary);margin-top:5px;position:relative}.subscription-timeline>div>span:after{content:"";position:absolute;width:2px;background:#dbe5e5;right:4px;top:12px;height:34px}.subscription-timeline>div:last-child>span:after{display:none}.subscription-timeline strong,.subscription-timeline small{display:block}.subscription-timeline small{color:var(--muted);margin-top:4px}.subscription-action-form{display:grid;gap:11px}.subscription-action-form hr,.sticky-panel hr{border:0;border-top:1px solid var(--border);margin:18px 0}.btn.large{padding:13px 21px;font-size:14px}.field-error-block{display:block;color:var(--danger);font-size:12px;margin:8px 0}.choice-check,.product-select-mark,.department-check{position:absolute;right:13px;top:13px;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#edf1f4;color:transparent;font-size:12px;font-weight:900}.subscription-choice-card.selected .choice-check,.plan-product-card.selected .product-select-mark,.department-select-card.selected .department-check{background:var(--primary);color:#fff}
@media(max-width:900px){.subscription-details-layout{grid-template-columns:1fr}.entitlement-product-grid{grid-template-columns:1fr}.reference-data-banner,.subscription-details-hero{align-items:flex-start;flex-direction:column}.subscription-number-box{width:100%;text-align:right}}

/* V0.8.3 touch calendar */
.touch-calendar-panel{overflow:hidden}.touch-calendar-heading{align-items:flex-start;gap:1rem}.touch-calendar-legend{display:flex;gap:.5rem;flex-wrap:wrap}.touch-calendar-legend span{padding:.4rem .7rem;border-radius:999px;font-size:.82rem}.legend-school{background:#e8f6ef;color:#176a4c}.legend-holiday{background:#fff1e4;color:#a65312}.legend-weekend{background:#eef1f5;color:#687385}.touch-calendar-toolbar{position:sticky;top:.5rem;z-index:5;display:flex;align-items:end;gap:.75rem;flex-wrap:wrap;padding:1rem;margin-bottom:1rem;border:1px solid #dce7e5;background:rgba(255,255,255,.97);border-radius:18px;box-shadow:0 8px 24px rgba(21,68,73,.08)}.touch-calendar-toolbar .grow{min-width:220px;flex:1}.selected-days-count{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:86px;padding:.55rem .75rem;border-radius:14px;background:#eef8f6}.selected-days-count strong{font-size:1.25rem}.selected-days-count span{font-size:.75rem;color:#64748b}.touch-calendar-weeks{display:flex;flex-direction:column;gap:1rem}.touch-calendar-week{border:1px solid #dde7e6;border-radius:20px;background:#fff;overflow:hidden}.touch-calendar-week>header{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1rem;background:#f4f8f8}.touch-calendar-week>header div{display:flex;gap:.65rem;align-items:center;flex-wrap:wrap}.touch-calendar-week>header span,.touch-calendar-week>header small{color:#64748b;font-size:.82rem}.touch-calendar-week.holiday-week>header{background:#fff4e8}.touch-calendar-week.outside-week{opacity:.72}.touch-calendar-days{display:grid;grid-template-columns:repeat(7,minmax(105px,1fr));gap:.65rem;padding:.85rem}.touch-calendar-day{position:relative;display:flex;min-height:112px;cursor:pointer;user-select:none;flex-direction:column;align-items:center;justify-content:center;gap:.22rem;border:1px solid #dfe7e7;border-radius:16px;background:#fff;transition:.16s ease}.touch-calendar-day:hover{transform:translateY(-2px);box-shadow:0 7px 20px rgba(25,80,82,.1)}.touch-calendar-day input{position:absolute;top:.55rem;right:.55rem;width:19px;height:19px;accent-color:#167b72}.touch-calendar-day:has(input:checked){outline:3px solid rgba(22,123,114,.28);border-color:#167b72}.touch-calendar-day strong{font-size:1.5rem}.touch-calendar-day small{color:#778394}.touch-calendar-day em{font-style:normal;font-size:.76rem;text-align:center;max-width:95%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.touch-calendar-day.school-day{background:#edf9f4;border-color:#c6e8d7;color:#135f45}.touch-calendar-day.holiday-day{background:#fff2e6;border-color:#f4cda8;color:#91440f}.touch-calendar-day.weekend{cursor:default;background:#f1f3f6;color:#7c8796}.touch-calendar-day.other-day{background:#f8fafc;color:#75808d}.touch-calendar-day.manual:after{content:'تعديل يدوي';position:absolute;bottom:.35rem;left:.45rem;font-size:.58rem;color:#6d28d9}.touch-calendar-weeks.readonly .touch-calendar-day{cursor:default}.compact-grid{margin-top:1rem}@media(max-width:1050px){.touch-calendar-days{grid-template-columns:repeat(4,minmax(105px,1fr))}}@media(max-width:680px){.touch-calendar-toolbar{position:static}.touch-calendar-toolbar .btn{width:100%}.touch-calendar-days{grid-template-columns:repeat(2,minmax(120px,1fr));padding:.6rem}.touch-calendar-day{min-height:100px}.touch-calendar-week>header{align-items:flex-start;flex-direction:column}}

/* V0.8.3 school stage dropdown */
.multi-select-dropdown{position:relative}.multi-select-dropdown>summary{list-style:none;cursor:pointer;border:1px solid #cfdada;border-radius:12px;padding:.72rem .85rem;background:#fff}.multi-select-dropdown>summary::-webkit-details-marker{display:none}.multi-select-dropdown>summary:after{content:'⌄';float:left;color:#607477}.multi-select-options{position:absolute;z-index:20;right:0;left:0;top:calc(100% + .35rem);display:flex;flex-direction:column;gap:.5rem;padding:.8rem;border:1px solid #d9e4e2;border-radius:14px;background:#fff;box-shadow:0 12px 30px rgba(20,58,62,.15)}.multi-select-options label{display:flex;align-items:center;gap:.55rem;padding:.5rem;border-radius:9px;cursor:pointer}.multi-select-options label:hover{background:#eef8f6}.multi-select-options input{width:18px;height:18px;accent-color:#167b72}.multi-select-options small{color:#6c7a89}

/* V0.8.3 commercial guided UI */
.billing-cycle-grid{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:.8rem}.billing-cycle-card{position:relative;display:flex;flex-direction:column;gap:.35rem;padding:1rem;border:1px solid #d8e3e2;border-radius:16px;cursor:pointer;background:#fff}.billing-cycle-card input{position:absolute;top:.75rem;left:.75rem;accent-color:#167b72}.billing-cycle-card strong{font-size:1rem}.billing-cycle-card small{color:#6d7986}.billing-cycle-card.selected{border-color:#167b72;background:#edf8f6;box-shadow:0 0 0 3px rgba(22,123,114,.12)}.plans-showcase-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.plan-showcase-card{display:flex;flex-direction:column;gap:.8rem;padding:1.1rem;border:1px solid #dce6e5;border-radius:20px;background:#fff}.plan-card-head{display:flex;justify-content:space-between;gap:1rem}.plan-card-head h3{margin:.45rem 0 .15rem}.plan-card-head>strong{font-size:1.35rem;color:#126c64}.plan-meta-row{display:flex;justify-content:space-between;padding:.65rem 0;border-top:1px dashed #dce4e5}.plan-products-mini{display:flex;gap:.4rem;flex-wrap:wrap}.plan-products-mini span{padding:.35rem .55rem;border-radius:999px;background:#eef6f5;font-size:.78rem}@media(max-width:850px){.billing-cycle-grid{grid-template-columns:repeat(2,minmax(140px,1fr))}}@media(max-width:520px){.billing-cycle-grid{grid-template-columns:1fr}}

.customer-type-grid,.activation-mode-grid{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:.8rem}.customer-type-card,.activation-mode-card,.subscription-plan-card{position:relative;display:flex;flex-direction:column;gap:.4rem;padding:1rem;border:1px solid #d9e4e2;border-radius:18px;background:#fff;cursor:pointer}.customer-type-card input,.activation-mode-card input,.subscription-plan-card>input{position:absolute;top:.8rem;left:.8rem;accent-color:#167b72}.customer-type-card.selected,.activation-mode-card.selected,.subscription-plan-card.selected{border-color:#167b72;background:#edf8f6;box-shadow:0 0 0 3px rgba(22,123,114,.12)}.subscription-plan-choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.8rem}.subscription-plan-title{display:flex;justify-content:space-between;gap:1rem}.paid-period-area{display:flex;flex-direction:column;gap:1rem;margin-top:1rem}.compact-cycles{grid-template-columns:repeat(4,minmax(130px,1fr))}.access-preview-card{display:flex;flex-wrap:wrap;align-items:center;gap:.7rem;padding:1rem;border-radius:16px;background:#edf8f6;border:1px solid #cce8e2}.access-preview-card p{margin:0}.access-preview-card div{display:flex;gap:.5rem;flex-wrap:wrap}.access-preview-card div span{padding:.35rem .55rem;border-radius:999px;background:#fff;font-size:.8rem}.access-preview-card.error{background:#fff1f0;border-color:#efc4bf}.subscription-access-summary{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:.7rem;margin:1rem 0}.subscription-access-summary article{display:flex;flex-direction:column;gap:.25rem;padding:1rem;border:1px solid #dce6e5;border-radius:16px;background:#fff}.subscription-access-summary small,.subscription-access-summary em{color:#6c7886;font-style:normal;font-size:.75rem}.panel-inline-action{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;padding:1rem;border-radius:16px;background:#f2f8f7}.panel-inline-action p{margin:.2rem 0 0}.simple-list>div{display:flex;justify-content:space-between;padding:.7rem;border-bottom:1px solid #edf0f0}.advanced-action-details summary{cursor:pointer;font-weight:700;padding:.5rem 0}@media(max-width:900px){.subscription-access-summary{grid-template-columns:repeat(2,1fr)}.compact-cycles{grid-template-columns:repeat(2,1fr)}}@media(max-width:580px){.customer-type-grid,.activation-mode-grid,.subscription-access-summary{grid-template-columns:1fr}.panel-inline-action{align-items:stretch;flex-direction:column}}

.teacher-seat-hero{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.2rem;margin-bottom:1rem;border-radius:22px;background:linear-gradient(135deg,#135f60,#1d8078);color:#fff}.teacher-seat-hero h2{margin:0 0 .35rem}.teacher-seat-hero p{margin:0;color:#d9eeee}.teacher-seat-stats{display:flex;gap:.7rem}.teacher-seat-stats article{display:flex;flex-direction:column;align-items:center;min-width:95px;padding:.75rem;border-radius:16px;background:rgba(255,255,255,.13)}.teacher-seat-stats strong{font-size:1.45rem}.teacher-seat-list{display:flex;flex-direction:column;gap:.7rem}.teacher-seat-list article{display:grid;grid-template-columns:auto minmax(180px,1fr) minmax(180px,auto) auto;align-items:center;gap:1rem;padding:.8rem;border:1px solid #dfe8e7;border-radius:16px}.teacher-seat-avatar{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:#eaf7f4;color:#176b62;font-weight:800}.teacher-seat-name{display:flex;flex-direction:column}.teacher-seat-name small{color:#768391}.teacher-access-sources{display:flex;gap:.4rem;flex-wrap:wrap}@media(max-width:800px){.teacher-seat-hero{align-items:flex-start;flex-direction:column}.teacher-seat-list article{grid-template-columns:auto 1fr}.teacher-access-sources,.teacher-seat-list form{grid-column:1/-1}}

/* V0.8.4.1 — canonical Gregorian + Umm al-Qura date presentation */
.dual-calendar-range{display:grid;gap:.45rem;margin-top:.8rem}.dual-calendar-range>div{display:grid;grid-template-columns:74px minmax(0,1fr);align-items:start;gap:.55rem;padding:.55rem .7rem;border-radius:11px;background:rgba(255,255,255,.09)}.dual-calendar-range>div>span{font-size:.72rem;font-weight:800;opacity:.82}.dual-calendar-range>div>strong{font-size:.82rem;line-height:1.55}.dual-calendar-range.compact{margin:.85rem 0;padding:.55rem;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.dual-calendar-range.compact>div{background:#f7fafb;text-align:right}.hero-date-range{max-width:850px}.calendar-date-source-note{margin-top:.45rem!important;padding:.55rem .7rem;border-radius:10px;background:#f5f9f9;color:#52636c!important;font-size:.78rem!important;line-height:1.55}.week-date-ranges{display:flex!important;flex-direction:column;align-items:flex-start!important;gap:.18rem!important}.week-date-ranges>span{display:block;color:#5f6e78!important}.week-date-ranges b,.dual-range-stack b{display:inline-block;min-width:48px;color:#176b63}.touch-calendar-days{grid-template-columns:repeat(7,minmax(145px,1fr))}.touch-calendar-day{min-height:166px;padding:.6rem .45rem;justify-content:flex-start;gap:.42rem}.touch-calendar-day .day-name{font-weight:800;margin-top:.2rem}.day-dual-dates{display:grid;width:100%;gap:.35rem}.day-dual-dates small{display:grid;grid-template-columns:44px minmax(0,1fr);gap:.28rem;align-items:start;width:100%;padding:.38rem .4rem;border-radius:9px;text-align:right;line-height:1.45;font-size:.7rem}.day-dual-dates small b{font-size:.62rem}.day-dual-dates small span{overflow-wrap:anywhere}.day-dual-dates .gregorian-date{background:rgba(255,255,255,.62);color:inherit}.day-dual-dates .hijri-date{background:rgba(22,123,114,.08);color:inherit}.touch-calendar-day em{margin-top:auto;white-space:normal;line-height:1.35}.dual-range-stack{display:grid;gap:.28rem;min-width:0}.dual-range-stack small{line-height:1.55}.status-dual-date{display:grid;gap:.22rem}.status-dual-date span{display:block;line-height:1.45}.date-input-preview{display:grid;gap:.28rem;margin-top:.42rem;padding:.55rem .65rem;border:1px solid #dce7e5;border-radius:10px;background:#f7fbfa}.date-input-preview>span{display:grid;grid-template-columns:50px minmax(0,1fr);gap:.4rem;font-size:.72rem;line-height:1.45}.date-input-preview b{color:#176b63}.date-input-preview .empty-date-preview{display:block;color:#74818a}.calendar-term-input-card .term-date-row{align-items:start}
@media(max-width:1250px){.touch-calendar-days{grid-template-columns:repeat(4,minmax(145px,1fr))}}
@media(max-width:760px){.dual-calendar-range>div{grid-template-columns:1fr}.touch-calendar-days{grid-template-columns:repeat(2,minmax(135px,1fr))}.touch-calendar-day{min-height:158px}.week-date-ranges{font-size:.72rem}}
.subscription-summary-card{display:flex;justify-content:space-between;align-items:center;gap:16px;border:1px solid var(--border);border-radius:14px;padding:15px;background:#fbfdfd;margin-bottom:12px}.subscription-summary-card h3,.subscription-summary-card p,.subscription-summary-card strong,.subscription-summary-card small{display:block;margin:0}.subscription-summary-card h3{margin:7px 0 4px}.subscription-summary-card p,.subscription-summary-card small{color:var(--muted)}.pill.danger{background:#fff0f1;color:var(--danger)}
@media(max-width:620px){.subscription-summary-card{flex-direction:column;align-items:flex-start}}

.unified-subscription-actions{display:grid;gap:.75rem;margin-top:1rem;border-top:1px solid var(--line);padding-top:1rem}.unified-subscription-actions details{border:1px solid var(--line);border-radius:16px;background:#fff;padding:.85rem 1rem}.unified-subscription-actions summary{cursor:pointer;font-weight:800;color:var(--ink);list-style:none}.unified-subscription-actions summary::-webkit-details-marker{display:none}.unified-subscription-actions details[open] summary{margin-bottom:.8rem}.unified-subscription-actions .subscription-action-form{display:grid;gap:.75rem}.form-grid.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}@media(max-width:720px){.form-grid.two{grid-template-columns:1fr}}
.school-journey-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.school-journey-grid .guided-step-card.locked{pointer-events:none}.school-journey-grid .guided-step-card.current{background:#fffaf0}.school-journey-grid .guided-step-card.complete{background:#f7fcf9}@media(max-width:1000px){.school-journey-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.school-journey-grid{grid-template-columns:1fr}}

/* V0.8.5.8 — consolidated staff import review and direct approval */
.import-review-shell{margin-top:18px}.import-review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.import-review-card{border:1px solid var(--border);border-radius:18px;padding:17px;background:#fff;display:grid;gap:15px}.import-review-title{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.import-review-title h3{margin:8px 0 4px;font-size:18px}.import-review-title small{color:var(--muted)}.import-review-total{width:58px;height:58px;border-radius:17px;background:#eaf6f4;color:var(--primary);display:grid;place-items:center;font-size:23px;font-weight:800}.import-review-counts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.import-review-counts>div{background:#f7fafb;border:1px solid #e8edef;border-radius:12px;padding:10px;display:flex;flex-direction:column;gap:4px}.import-review-counts span{font-size:10px;color:var(--muted)}.import-review-counts strong{font-size:18px}.import-review-counts .count-warning{background:#fff8e8;border-color:#f2dfae}.import-review-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.import-review-actions form{margin:0}.import-review-next{margin-top:18px;display:flex;justify-content:space-between;align-items:center;gap:18px}.import-review-next div{display:flex;flex-direction:column;gap:5px}.import-review-next span{color:var(--muted);font-size:12px}@media(max-width:950px){.import-review-grid{grid-template-columns:1fr}}@media(max-width:620px){.import-review-counts{grid-template-columns:repeat(2,1fr)}.import-review-next{align-items:stretch;flex-direction:column}.import-review-next .btn{width:100%}}

/* V0.8.5.9 — serialized staff approvals and explicit completion handoff */
.import-completion-card {
  margin-top: 1.25rem;
  padding: 1.25rem 1.35rem;
  border: 1px solid #d7e2e7;
  border-radius: 22px;
  background: #f8fbfc;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 1rem;
}
.import-completion-card.success { background: #eefaf5; border-color: #b7e2cf; }
.import-completion-card.warning { background: #fff8e8; border-color: #efd391; }
.import-completion-card .completion-icon {
  width: 52px;
  height: 52px;
  border-radius: 16px;
  display: grid;
  place-items: center;
  font-size: 1.6rem;
  font-weight: 800;
  background: #dff3ea;
  color: #0f6b57;
}
.import-completion-card.warning .completion-icon { background: #ffefc6; color: #8a5a00; }
.import-completion-card span { color: #5d7282; font-size: .9rem; }
.import-completion-card h2 { margin: .25rem 0; font-size: 1.25rem; }
.import-completion-card p { margin: 0; color: #5d7282; }
@media (max-width: 900px) {
  .import-completion-card { grid-template-columns: auto 1fr; }
  .import-completion-card > .btn { grid-column: 1 / -1; width: 100%; }
}

/* V0.8.7.1 — job-title account activation */
.users-page-actions{align-items:stretch}.users-page-actions>.action-cluster{justify-content:flex-end}.account-activation-launch{border:1px solid #9fcfc8;background:#f7fcfb;border-radius:15px;padding:11px 15px;display:flex;align-items:center;gap:11px;min-width:285px;text-align:right;color:var(--ink);font:inherit;cursor:pointer;transition:.18s ease}.account-activation-launch:hover{transform:translateY(-1px);box-shadow:0 8px 22px rgba(23,107,99,.12);border-color:var(--primary)}.account-activation-launch.disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.account-activation-icon,.account-modal-icon{width:42px;height:42px;border-radius:13px;background:var(--primary);color:#fff;display:grid;place-items:center;font-size:27px;line-height:1;font-weight:400;flex:0 0 auto}.account-activation-launch strong,.account-activation-launch small{display:block}.account-activation-launch small{margin-top:4px;color:var(--muted);font-size:11px}.account-modal{position:fixed;inset:0;z-index:1200;display:none;align-items:center;justify-content:center;padding:22px}.account-modal.open{display:flex}.account-modal-backdrop{position:absolute;inset:0;background:rgba(11,26,38,.58);backdrop-filter:blur(2px)}.account-modal-card{position:relative;z-index:1;width:min(690px,100%);max-height:88vh;overflow:auto;background:#fff;border-radius:22px;border:1px solid var(--border);box-shadow:0 24px 80px rgba(0,0,0,.24)}.account-modal-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:22px 24px;border-bottom:1px solid var(--border)}.account-modal-header>div{display:flex;gap:13px;align-items:center}.account-modal-header h3{margin:0 0 5px;font-size:21px}.account-modal-header p{margin:0;color:var(--muted);line-height:1.6}.account-modal-close{border:0;background:#eef2f5;width:36px;height:36px;border-radius:11px;font-size:24px;color:var(--muted);cursor:pointer}.job-title-selection-list{padding:18px 24px;display:grid;gap:10px}.job-title-check-row{border:1px solid var(--border);border-radius:14px;padding:13px 14px;display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;cursor:pointer;background:#fff;transition:.15s ease}.job-title-check-row:hover{border-color:#9fcfc8;background:#fbfefd}.job-title-check-row.complete{background:#f6faf8;cursor:default}.job-title-checkbox-wrap{position:relative;width:25px;height:25px}.job-title-checkbox-wrap input{position:absolute;opacity:0;pointer-events:none}.job-title-checkbox{width:25px;height:25px;border:2px solid #b8c3cf;border-radius:7px;display:grid;place-items:center;background:#fff}.job-title-checkbox-wrap input:checked+.job-title-checkbox{background:var(--primary);border-color:var(--primary)}.job-title-checkbox-wrap input:checked+.job-title-checkbox:after{content:'✓';color:#fff;font-size:16px;font-weight:800}.job-title-checkbox-wrap input:focus-visible+.job-title-checkbox{outline:3px solid rgba(23,107,99,.2);outline-offset:2px}.job-title-checkbox-wrap input:disabled+.job-title-checkbox{background:#e8f2ee;border-color:#a7cabd}.job-title-checkbox-wrap input:disabled+.job-title-checkbox:after{content:'✓';color:var(--success);font-size:16px;font-weight:800}.job-title-check-content strong,.job-title-check-content small{display:block}.job-title-check-content small{margin-top:4px;color:var(--muted)}.job-title-count{font-weight:700;color:var(--primary);font-size:12px}.account-modal-validation{margin:0 24px 10px;padding:10px 12px;border-radius:10px;background:#fff0f1;color:var(--danger);font-weight:700}.account-modal-footer{padding:16px 24px 22px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:9px}.account-activate-submit{min-width:120px}.account-activate-submit span{font-size:16px;margin-left:5px}.account-modal-open{overflow:hidden}
@media(max-width:620px){.users-page-actions{align-items:stretch}.users-page-actions,.users-page-actions>.action-cluster{display:grid;grid-template-columns:1fr}.account-activation-launch{min-width:0;width:100%}.account-modal{padding:10px}.account-modal-card{max-height:94vh;border-radius:17px}.account-modal-header,.job-title-selection-list,.account-modal-footer{padding-left:15px;padding-right:15px}.job-title-check-row{grid-template-columns:auto 1fr}.job-title-check-row>.badge,.job-title-count{grid-column:2}.account-modal-footer{display:grid;grid-template-columns:1fr 1fr}}
.portal-context-chip{display:inline-flex;align-items:center;gap:5px;background:#edf6f4;border:1px solid #cae2de;color:#315f5a;border-radius:999px;padding:9px 14px;margin-bottom:12px}.portal-customer-filter select{min-width:220px}

/* V0.8.7.2 — platform-wide UX consistency and interaction audit */
:root{
  --info:#246b9b;
  --info-soft:#eaf4fb;
  --warning-soft:#fff7df;
  --danger-soft:#fff0f1;
  --success-soft:#eaf7f1;
  --focus:0 0 0 3px rgba(23,107,99,.18);
}
html{scroll-behavior:smooth}
body{line-height:1.55}
button,a,input,select,textarea,summary{outline:none}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{box-shadow:var(--focus);outline:2px solid transparent;outline-offset:2px}
button:disabled,.btn:disabled{cursor:not-allowed;opacity:.58;transform:none!important;box-shadow:none!important}

.sidebar nav a>.nav-icon{width:30px;height:30px;display:grid;place-items:center;border-radius:9px;background:rgba(255,255,255,.07);font-size:16px;flex:0 0 auto}
.sidebar nav a.active>.nav-icon,.sidebar nav a:hover>.nav-icon{background:rgba(255,255,255,.15)}
.sidebar nav a{min-height:46px}

.btn{min-height:42px;gap:8px;transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}
.btn:hover:not(:disabled){transform:translateY(-1px)}
.btn.secondary{border:1px solid #cfe0df}
.btn.ghost{border:1px solid #e0e5eb}
.btn.danger,.btn.danger-outline{background:var(--danger);color:#fff}
.btn.danger-outline{background:#fff;color:var(--danger);border:1px solid #edc9cd}
.btn.warning{background:#a86f0d;color:#fff}
.btn.info{background:var(--info);color:#fff}
.btn.xs{min-height:34px;padding:6px 10px;font-size:12px}
.btn.large{min-height:48px;padding:12px 20px;font-size:14px}
.icon-btn{min-height:36px;display:inline-flex;align-items:center;justify-content:center;transition:.15s ease}
.icon-btn:hover{background:#f4faf9;border-color:#9fcfc8;transform:translateY(-1px)}
.icon-btn.danger:hover{background:var(--danger-soft);border-color:#d99aa1}

.alert{position:relative;padding-right:46px;animation:ux-alert-in .25s ease both;animation-delay:var(--alert-delay,0ms)}
.alert::before{position:absolute;right:16px;top:50%;transform:translateY(-50%);width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-weight:900;font-size:12px}
.alert.success::before{content:'✓';background:#cfeadd;color:#176646}
.alert.error::before{content:'!';background:#f3cfd3;color:#9a2833}
.alert.info::before{content:'i';background:#d8ebe8;color:#285e59}
.alert.warning{background:var(--warning-soft);color:#7d570a;border:1px solid #efd89d}
.alert.warning::before{content:'!';background:#f5dfaa;color:#7d570a}
@keyframes ux-alert-in{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}

.field input,.field select,.field textarea,.filter-bar input,.filter-bar select{min-height:44px;transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease}
.field textarea{min-height:110px;resize:vertical}
.field input:disabled,.field select:disabled,.field textarea:disabled{background:#f1f4f6;color:#7b8593}
.field label,.json-label{display:flex;align-items:center;gap:5px}
.field label:has(+ input[required])::after,.field label:has(+ select[required])::after,.field label:has(+ textarea[required])::after{content:'*';color:var(--danger)}
.validation-summary{padding:12px 14px;line-height:1.7}
.form-actions{position:sticky;bottom:0;background:rgba(255,255,255,.95);backdrop-filter:blur(7px);z-index:10;margin-left:-24px;margin-right:-24px;margin-bottom:-24px;padding:16px 24px;border-radius:0 0 17px 17px}

.table-card{border-radius:16px}
tbody tr{transition:background-color .12s ease}
tbody tr:hover{background:#fbfdfd}
th{position:sticky;top:0;z-index:2}
.row-actions{flex-wrap:wrap}
.empty-state{border:1px dashed #cfd9e3;background:#fbfcfd;border-radius:18px;padding:30px;text-align:center}
.empty-state.compact{padding:20px}
.empty-state h3,.empty-state strong{display:block;margin:0 0 7px}
.empty-state p{color:var(--muted);margin:0 0 16px;line-height:1.7}
.empty-icon{width:56px;height:56px;margin:0 auto 15px;border-radius:17px;background:#eaf4f3;color:var(--primary);display:grid;place-items:center;font-size:27px}

.pill.info{background:var(--info-soft);color:var(--info)}
.pill.danger{background:var(--danger-soft);color:var(--danger)}
.pill.warning{background:var(--warning-soft);color:#805900}

/* Unified confirmation and information dialogs */
.dialog-open{overflow:hidden}
.ux-dialog{position:fixed;inset:0;z-index:3000;display:none;align-items:center;justify-content:center;padding:20px}
.ux-dialog.open{display:flex}
.ux-dialog-backdrop{position:absolute;inset:0;background:rgba(10,24,34,.58);backdrop-filter:blur(3px);animation:ux-fade .16s ease}
.ux-dialog-card{position:relative;z-index:1;width:min(520px,100%);background:#fff;border:1px solid var(--border);border-radius:22px;box-shadow:0 28px 90px rgba(6,20,29,.28);padding:25px;display:grid;grid-template-columns:auto 1fr;gap:16px;animation:ux-dialog-in .2s ease}
.ux-dialog-symbol{width:52px;height:52px;border-radius:16px;background:var(--success-soft);color:var(--success);display:grid;place-items:center;font-size:24px;font-weight:900}
.ux-dialog[data-tone="warning"] .ux-dialog-symbol{background:var(--warning-soft);color:var(--warning)}
.ux-dialog[data-tone="danger"] .ux-dialog-symbol{background:var(--danger-soft);color:var(--danger)}
.ux-dialog-content h2{margin:1px 0 7px;font-size:20px}
.ux-dialog-content p{margin:0;color:var(--muted);line-height:1.8;white-space:pre-line}
.ux-dialog-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:9px;border-top:1px solid var(--border);padding-top:17px;margin-top:3px}
.ux-dialog[data-tone="warning"] [data-dialog-confirm]{background:#a86f0d}
.ux-dialog[data-tone="danger"] [data-dialog-confirm]{background:var(--danger)}
@keyframes ux-fade{from{opacity:0}to{opacity:1}}
@keyframes ux-dialog-in{from{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}

/* Loading and duplicate-action prevention */
.button-spinner{width:16px;height:16px;border:2px solid currentColor;border-left-color:transparent;border-radius:50%;animation:ux-spin .7s linear infinite;display:inline-block}
.is-loading{pointer-events:none}
@keyframes ux-spin{to{transform:rotate(360deg)}}

/* Responsive interaction rules */
@media(max-width:900px){
  .main-content{padding:0 18px 24px}
  .topbar{min-height:88px;align-items:flex-start;padding-top:20px;gap:12px}
  .page-actions{align-items:stretch;flex-direction:column}
  .page-actions>.btn,.page-actions>.action-group,.page-actions>.action-cluster{width:100%}
  .action-group,.action-cluster{display:flex;flex-wrap:wrap}
  .filter-bar{width:100%}
  .filter-bar input,.filter-bar select{flex:1;min-width:180px}
}
@media(max-width:720px){
  .app-shell{display:block}
  .sidebar{position:relative;height:auto;padding:14px}
  .sidebar nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}
  .sidebar nav .nav-section,.sidebar nav .sidebar-help,.sidebar nav .advanced-nav{grid-column:1/-1}
  .sidebar nav a{margin:0;padding:9px}
  .main-content{padding:0 12px 20px}
  .topbar{min-height:82px}
  .topbar-badge{display:none}
  .form-card{padding:17px}
  .form-grid{grid-template-columns:1fr}
  .form-actions{position:static;margin:20px -17px -17px;padding:15px 17px;display:grid;grid-template-columns:1fr}
  .form-actions .btn{width:100%}
  .ux-dialog-card{grid-template-columns:1fr;text-align:center;padding:20px;border-radius:18px}
  .ux-dialog-symbol{margin:auto}
  .ux-dialog-actions{display:grid;grid-template-columns:1fr}
  .ux-dialog-actions .btn{width:100%}
}
@media(max-width:460px){
  .sidebar nav{grid-template-columns:1fr}
  .sidebar nav .nav-section{padding-top:13px}
  .topbar h1{font-size:21px}
  .filter-bar{display:grid;grid-template-columns:1fr}
  .filter-bar input,.filter-bar select,.filter-bar .btn{width:100%;min-width:0}
  .row-actions{display:grid;grid-template-columns:1fr 1fr}
  .row-actions>*{width:100%}
  .row-actions .icon-btn,.row-actions .btn{width:100%}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* V0.9.0.3 — school subscription requests and launch-state recovery */
.identity-entry-page{min-height:100vh;background:radial-gradient(circle at 80% 15%,rgba(24,169,153,.16),transparent 34%),linear-gradient(145deg,#eef5f7,#f7f9fc 55%,#edf4f2);padding:32px;display:grid;place-items:center}
.identity-entry-shell{width:min(1050px,100%);display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.75fr);gap:24px;align-items:stretch}
.identity-login-card{width:auto;max-width:none;margin:0;padding:34px;border-radius:26px;box-shadow:0 24px 70px rgba(13,47,51,.13)}
.identity-heading{margin:28px 0 22px}.identity-heading>span{display:inline-flex;padding:7px 12px;border-radius:999px;background:#e9f5f2;color:var(--primary);font-size:12px;font-weight:800}.identity-heading h1{font-size:32px;margin:12px 0 7px}.identity-heading p{color:var(--muted);line-height:1.8;margin:0}.identity-login-form{display:grid;gap:15px}
.subscription-request-entry{background:linear-gradient(155deg,#174f50,#0d3337);color:#fff;border-radius:26px;padding:34px;display:flex;flex-direction:column;justify-content:center;box-shadow:0 24px 70px rgba(13,47,51,.2);position:relative;overflow:hidden}.subscription-request-entry:after{content:'';position:absolute;width:210px;height:210px;border-radius:50%;background:rgba(255,255,255,.06);left:-70px;bottom:-80px}.subscription-request-entry-icon{width:62px;height:62px;border-radius:19px;background:linear-gradient(135deg,#f2ca63,#c99018);display:grid;place-items:center;color:#173b3d;font-size:30px;font-weight:900;margin-bottom:22px}.subscription-request-entry>span{color:#bcdad6;font-weight:800}.subscription-request-entry h2{font-size:29px;margin:8px 0 12px}.subscription-request-entry p{color:#d6e7e5;line-height:1.9;margin:0 0 22px}.request-entry-button{background:#fff;color:#174f50;justify-content:center;position:relative;z-index:1}.request-entry-button:hover{background:#f3fbf9}.subscription-request-entry small{color:#a9cbc7;line-height:1.7;margin-top:15px;position:relative;z-index:1}
.subscription-request-card{width:min(920px,100%);background:#fff;border:1px solid var(--border);border-radius:25px;box-shadow:var(--shadow);overflow:hidden}.request-intro{background:linear-gradient(135deg,#edf8f5,#f8fbfd);padding:26px 30px;display:flex;gap:17px;align-items:center;border-bottom:1px solid var(--border)}.request-intro-icon{width:55px;height:55px;border-radius:17px;background:var(--primary);color:#fff;display:grid;place-items:center;font-size:25px}.request-intro h1{margin:0 0 5px;font-size:27px}.request-intro p{margin:0;color:var(--muted);line-height:1.75}.request-form{padding:28px}.stage-request-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.stage-request-option{display:flex;align-items:center;gap:9px;padding:13px 14px;border:1px solid var(--border);border-radius:14px;cursor:pointer;background:#fff;transition:.15s}.stage-request-option:hover{border-color:#9fcfc8;background:#f7fbfa}.stage-request-option input{position:absolute;opacity:0;pointer-events:none}.stage-request-option span{width:25px;height:25px;border-radius:8px;border:2px solid #c6d3dc;color:transparent;display:grid;place-items:center}.stage-request-option input:checked+span{background:var(--primary);border-color:var(--primary);color:#fff}.request-notice{padding:15px 17px;border-radius:15px;background:#eef7f5;border:1px solid #d4e8e3;display:grid;gap:4px;margin-top:20px}.request-notice strong{color:var(--primary)}.request-notice span{color:var(--muted);line-height:1.75}.request-actions{margin-top:26px}.request-success-card{width:min(680px,100%);margin:auto;text-align:center;background:#fff;border:1px solid var(--border);border-radius:26px;padding:42px;box-shadow:var(--shadow)}.request-success-icon{width:76px;height:76px;margin:0 auto 18px;border-radius:23px;background:var(--success-soft);color:var(--success);font-size:38px;display:grid;place-items:center;font-weight:900}.request-success-card h1{margin:0 0 9px}.request-success-card p{color:var(--muted);line-height:1.8}.request-success-card>code{display:inline-block;font-size:18px;padding:12px 18px;border-radius:12px;background:#f1f5f8;margin:8px 0 23px}.request-success-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:0 0 26px}.request-success-steps span{padding:14px 8px;border-radius:14px;background:#f7fafb;font-weight:900;color:var(--primary)}.request-success-steps small{display:block;color:var(--muted);font-weight:500;margin-top:5px}.request-toolbar{display:flex;justify-content:space-between;gap:16px;align-items:center}.request-list-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.request-list-card{background:#fff;border:1px solid var(--border);border-radius:19px;padding:19px;box-shadow:0 8px 26px rgba(27,47,66,.06);display:flex;flex-direction:column;gap:16px}.request-list-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.request-list-head code{font-size:11px;color:var(--muted)}.request-list-head h3{margin:6px 0 0;font-size:18px}.request-list-card dl{margin:0;display:grid;gap:9px}.request-list-card dl div{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid #edf1f4;padding-bottom:8px}.request-list-card dt{color:var(--muted);font-size:12px}.request-list-card dd{margin:0;font-weight:700;text-align:left}.request-review-hero{background:linear-gradient(135deg,#174f50,#11645e);color:#fff;border-radius:21px;padding:25px 28px;display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.request-review-hero h2{margin:10px 0 5px}.request-review-hero p{margin:0;color:#cce3df}.request-review-hero code{background:rgba(255,255,255,.13);color:#fff;padding:11px 15px;border-radius:11px}.request-review-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.request-review-panel{padding:22px}.details-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin:0}.details-grid>div{background:#f8fafb;border:1px solid #edf1f3;border-radius:12px;padding:12px}.details-grid>div.wide{grid-column:1/-1}.details-grid dt{color:var(--muted);font-size:12px;margin-bottom:5px}.details-grid dd{margin:0;font-weight:700}.request-decision-panel{display:flex;justify-content:space-between;gap:22px;align-items:center;margin-top:18px}.request-decision-panel h3{margin:0 0 5px}.request-decision-panel p{margin:0;color:var(--muted);line-height:1.7}.request-decision-actions{display:flex;gap:10px;flex-wrap:wrap}.request-reject-box{background:#fff6f7;border:1px solid #edc9cd;border-radius:18px;padding:20px;margin-top:15px}.request-reject-box form{display:grid;gap:11px}.request-reject-box textarea{width:100%;border:1px solid var(--border);border-radius:12px;padding:12px;font:inherit}.request-history-panel{margin-top:18px}.school-logo-preview{align-items:flex-start}.school-logo-preview .btn{margin-top:10px;width:max-content}
@media(max-width:980px){.identity-entry-shell{grid-template-columns:1fr}.subscription-request-entry{min-height:340px}.request-list-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.identity-entry-page{padding:14px}.identity-login-card,.subscription-request-entry{padding:23px;border-radius:20px}.stage-request-options,.request-success-steps,.request-review-grid,.details-grid{grid-template-columns:1fr}.request-list-grid{grid-template-columns:1fr}.request-toolbar,.request-decision-panel{align-items:stretch;flex-direction:column}.request-decision-actions{display:grid}.request-intro{padding:21px}.request-form{padding:19px}.request-review-hero{align-items:flex-start;flex-direction:column;gap:13px}}

/* V0.9.0.5 — school-request product selection and approval */
.request-products-title{margin-top:28px}.request-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.request-product-option{position:relative;display:grid;grid-template-columns:auto auto 1fr;gap:12px;align-items:center;border:1px solid var(--border);border-radius:17px;padding:15px;background:#fff;cursor:pointer;transition:border-color .15s,box-shadow .15s,background .15s}.request-product-option:hover{border-color:#9fcfc8;box-shadow:0 8px 22px rgba(23,79,80,.08)}.request-product-option input{position:absolute;opacity:0;pointer-events:none}.request-product-check{width:27px;height:27px;border:2px solid #c5d1d8;border-radius:9px;display:grid;place-items:center;color:transparent;font-weight:900;transition:.15s}.request-product-option input:checked~.request-product-check{background:var(--primary);border-color:var(--primary);color:#fff}.request-product-option:has(input:checked){border-color:#83bdb6;background:#f3faf8;box-shadow:0 8px 24px rgba(23,79,80,.08)}.request-product-icon{width:46px;height:46px;border-radius:14px;background:linear-gradient(135deg,#174f50,#17877c);color:#fff;display:grid;place-items:center;font-size:20px;font-weight:900}.request-product-copy{min-width:0;display:grid;gap:4px}.request-product-copy strong{font-size:17px}.request-product-copy small{color:var(--muted);line-height:1.55}.request-product-copy code{width:max-content;max-width:100%;font-size:10px;color:#52706f;background:#edf5f4;padding:3px 7px;border-radius:7px}.request-systems-review-panel{margin-top:18px}.request-product-grid.review-mode{margin-top:8px}.request-approval-note{margin-top:13px;padding:11px 13px;border-radius:12px;background:#fff8e7;border:1px solid #ecd9a0;color:#69551d}.request-decision-panel.embedded{padding:20px 0 0;border:0;box-shadow:none;margin-top:10px}.request-products-empty{padding:16px;border:1px dashed #c9d4da;border-radius:14px;color:var(--muted);background:#f8fafb}.request-product-option.result-option{cursor:default}.request-product-option.result-option.approved{border-color:#9fd6bd;background:#f1fbf5}.request-product-option.result-option.approved .request-product-check{background:var(--success);border-color:var(--success);color:#fff}.request-product-option.result-option.not-approved{opacity:.72;background:#f8fafb}.request-product-option.result-option.not-approved .request-product-check{color:#7e8d97}.request-list-products{grid-column:1/-1;display:grid!important}.request-list-products dd{text-align:right!important;line-height:1.55}.request-list-card dl .request-list-products{padding-top:2px}.field-validation-error{display:block;margin-top:8px;color:var(--danger);font-size:13px}
@media(max-width:720px){.request-product-grid{grid-template-columns:1fr}.request-product-option{grid-template-columns:auto auto minmax(0,1fr)}.request-decision-panel.embedded{align-items:stretch}}

/* V0.9.0.7 — requested and approved duration per school product */
.request-product-grid.duration-grid{align-items:start}.request-product-option.duration-card{display:block;padding:0;overflow:hidden}.request-product-selector{position:relative;display:grid;grid-template-columns:auto auto minmax(0,1fr);gap:12px;align-items:center;padding:15px;cursor:pointer}.request-product-selector>input[type=checkbox]{position:absolute;opacity:0;pointer-events:none}.request-product-selector>input[type=checkbox]:checked~.request-product-check{background:var(--primary);border-color:var(--primary);color:#fff}.duration-card.is-selected{border-color:#83bdb6;background:#f9fdfc;box-shadow:0 8px 24px rgba(23,79,80,.08)}.request-duration-controls{border-top:1px solid #e7efef;padding:14px 15px 16px;background:#fbfdfd;display:grid;gap:11px}.request-duration-controls select,.request-duration-controls input{position:static;opacity:1;pointer-events:auto;width:100%;border:1px solid var(--border);border-radius:11px;background:#fff;padding:10px 11px;font:inherit;color:var(--ink)}.request-duration-controls select:disabled,.request-duration-controls input:disabled{background:#f1f4f5;color:#8a989f;cursor:not-allowed}.duration-field{display:grid;gap:6px}.duration-field>span{font-size:12px;color:var(--muted);font-weight:700}.custom-duration-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.custom-duration-fields[hidden]{display:none}.requested-duration-summary{margin:0 15px 13px;padding:11px 12px;border:1px solid #d8e9e5;border-radius:12px;background:#eef8f5;display:grid;gap:3px}.requested-duration-summary span,.duration-comparison span{font-size:11px;color:var(--muted)}.requested-duration-summary strong{color:var(--primary)}.requested-duration-summary small,.duration-comparison small{color:var(--muted);line-height:1.5}.approval-duration-controls{border-top:0;padding-top:0}.result-selector{cursor:default}.duration-comparison{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:0 15px 15px}.duration-comparison>div{border:1px solid #e3eaed;border-radius:12px;background:#fff;padding:11px;display:grid;gap:4px}.duration-comparison strong{font-size:14px}.request-product-option.result-option.not-approved .duration-comparison>div:last-child{background:#f3f5f6}.request-list-products dd{white-space:normal}
@media(max-width:720px){.custom-duration-fields,.duration-comparison{grid-template-columns:1fr}.request-product-selector{grid-template-columns:auto auto minmax(0,1fr)}}

/* V0.9.1.3 — WhatsApp credential delivery */
.btn.whatsapp{background:#147d58;color:#fff;border-color:#147d58}.btn.whatsapp:hover{background:#0f6849}.btn.compact{padding:8px 11px;font-size:12px}.credentials-table{min-width:1420px}.credential-fields,.whatsapp-preference-form,.credential-actions{display:grid;gap:7px}.credential-fields label,.whatsapp-preference-form label{font-size:11px;color:var(--muted);font-weight:800}.whatsapp-preference-form{min-width:260px}.whatsapp-preference-form input[type=text],.whatsapp-preference-form input:not([type]){width:100%}.check-row{display:grid!important;grid-template-columns:auto 1fr;gap:8px;align-items:start;line-height:1.55}.check-row input{margin-top:4px}.credential-actions{min-width:170px}.whatsapp-readiness{display:flex;align-items:center;justify-content:space-between;gap:18px}.whatsapp-readiness h2{margin:0 0 6px}.whatsapp-readiness p{margin:0;color:var(--muted)}.whatsapp-settings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.whatsapp-settings-grid>div{display:grid;gap:6px;padding:14px;border:1px solid var(--border);border-radius:14px;background:#f8fbfb}.whatsapp-settings-grid small{color:var(--muted)}.whatsapp-settings-grid input{width:100%}.whatsapp-steps{margin:0;padding-right:22px;display:grid;gap:10px;line-height:1.8}.pill.danger{background:var(--danger-soft);color:var(--danger)}
@media(max-width:900px){.whatsapp-settings-grid{grid-template-columns:1fr}.whatsapp-readiness{align-items:flex-start;flex-direction:column}}

/* Nasq V0.9.2.0 — Phase 1 brand identity and shell refresh */
:root{
  --nasq-petrol:#123B4A;
  --nasq-petrol-deep:#0B2C36;
  --nasq-turquoise:#18A999;
  --nasq-turquoise-dark:#117F75;
  --nasq-turquoise-soft:#E9F8F5;
  --nasq-gold:#C9A24A;
  --nasq-gold-soft:#FBF5E7;
  --focus:0 0 0 3px rgba(24,169,153,.2);
}
html{scroll-behavior:smooth}
body.nasq-ui{background:var(--bg);color:var(--ink)}
::selection{background:rgba(24,169,153,.22);color:var(--nasq-petrol)}
:focus-visible{outline:2px solid var(--nasq-turquoise);outline-offset:2px}
.skip-link{position:fixed;z-index:2000;top:10px;right:12px;transform:translateY(-150%);background:#fff;color:var(--nasq-petrol);border:1px solid var(--nasq-turquoise);border-radius:10px;padding:10px 14px;text-decoration:none;font-weight:800;box-shadow:var(--shadow)}
.skip-link:focus{transform:translateY(0)}

.app-shell{grid-template-columns:286px minmax(0,1fr);background:var(--bg)}
.sidebar{background:linear-gradient(180deg,var(--nasq-petrol) 0%,var(--nasq-petrol-deep) 100%);padding:22px 17px 18px;box-shadow:-12px 0 36px rgba(6,31,39,.12)}
.nasq-sidebar-brand{display:grid;gap:8px;padding:0 7px 19px;margin-bottom:4px}
.nasq-sidebar-logo{display:block;width:100%;max-width:218px;height:auto}
.nasq-sidebar-brand>small{color:#B9D1D6;margin:0 5px;font-size:12px}
.sidebar nav{padding-top:11px}
.sidebar nav a{min-height:44px;border:1px solid transparent;transition:background .16s ease,border-color .16s ease,transform .16s ease}
.sidebar nav a:hover{background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.08);transform:translateX(-2px)}
.sidebar nav a.active{background:linear-gradient(90deg,rgba(24,169,153,.18),rgba(255,255,255,.1));border-color:rgba(24,169,153,.36);box-shadow:inset -3px 0 0 var(--nasq-turquoise)}
.nav-section{color:#83B8B5;letter-spacing:0;text-transform:none;font-weight:800}
.sidebar-account-card{border-color:rgba(255,255,255,.13);background:rgba(255,255,255,.07);box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.sidebar-logout{border-color:rgba(255,255,255,.14)!important}

.main-content{padding:0 38px 30px;background:linear-gradient(180deg,#F8FAFA 0,#F4F7F8 160px)}
.topbar{min-height:112px;border-bottom:1px solid rgba(221,230,232,.8);margin-bottom:22px}
.topbar-title-group{display:flex;align-items:center;gap:13px;min-width:0}
.topbar h1{color:var(--nasq-petrol);font-size:27px;letter-spacing:-.25px}
.role-badge{background:var(--nasq-turquoise-soft);color:var(--nasq-turquoise-dark);border:1px solid rgba(24,169,153,.18);padding:9px 14px}
.mobile-menu-button{display:none;width:43px;height:43px;border:1px solid var(--border);border-radius:12px;background:#fff;color:var(--nasq-petrol);align-items:center;justify-content:center;cursor:pointer;box-shadow:0 5px 16px rgba(18,59,74,.06)}
.mobile-menu-button svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
.sidebar-backdrop{display:none}
.nasq-footer{margin-top:30px;padding:20px 0 4px;border-top:1px solid var(--border);display:flex;justify-content:space-between;gap:14px;color:var(--muted);font-size:12px}
.nasq-footer span{color:var(--nasq-petrol);font-weight:800}
.nasq-footer small{font-size:11px}

.btn{border:1px solid transparent;transition:transform .14s ease,box-shadow .14s ease,background .14s ease}
.btn:hover{transform:translateY(-1px)}
.btn.primary{background:var(--nasq-turquoise);box-shadow:0 8px 20px rgba(24,169,153,.18)}
.btn.primary:hover{background:var(--nasq-turquoise-dark);box-shadow:0 10px 24px rgba(17,127,117,.22)}
.btn.secondary{background:var(--nasq-turquoise-soft);color:var(--nasq-turquoise-dark);border-color:rgba(24,169,153,.16)}
.field input:focus,.field select:focus,.field textarea:focus,.filter-bar input:focus,.filter-bar select:focus,.identity-card input:focus{border-color:var(--nasq-turquoise);box-shadow:var(--focus);outline:0}
.panel,.form-card,.table-card,.metric-card,.system-card{border-color:var(--border);box-shadow:0 7px 24px rgba(18,59,74,.055)}
.metric-icon,.record-icon,.avatar{background:var(--nasq-turquoise-soft);color:var(--nasq-turquoise-dark)}
.hero-card,.calendar-hero,.request-review-hero,.identity-account-hero{background:linear-gradient(135deg,var(--nasq-petrol),#145866)}
.readiness-ring{border-top-color:var(--nasq-gold)}

.auth-shell{background:radial-gradient(circle at 82% 12%,rgba(24,169,153,.12),transparent 35%),linear-gradient(145deg,#EFF6F5,#F8FAFA 55%,#F4F7F8)}
.nasq-auth-brand{display:flex;flex-direction:column;align-items:center;gap:8px;border:0}
.nasq-auth-logo{width:min(330px,88vw);height:auto}
.nasq-auth-brand small{color:var(--muted)}

.identity-entry-page{background:radial-gradient(circle at 82% 12%,rgba(24,169,153,.2),transparent 32%),radial-gradient(circle at 16% 86%,rgba(201,162,74,.13),transparent 28%),linear-gradient(145deg,#EEF5F4,#F8FAFA 55%,#EDF4F3)}
.nasq-login-shell{width:min(1120px,100%);grid-template-columns:minmax(420px,.9fr) minmax(0,1.1fr);gap:0;border-radius:30px;overflow:hidden;box-shadow:0 28px 85px rgba(18,59,74,.18);background:#fff;align-items:stretch}
.nasq-login-card{border:0;border-radius:0;box-shadow:none;padding:46px 50px;display:flex;flex-direction:column;justify-content:center}
.nasq-login-brand{margin-bottom:17px}
.nasq-login-brand img{display:block;width:min(286px,100%);height:auto}
.nasq-login-card .identity-heading{margin:21px 0 25px}
.nasq-login-card .identity-heading>span,.compact-heading>span{background:var(--nasq-turquoise-soft);color:var(--nasq-turquoise-dark)}
.nasq-login-card .identity-heading h1{color:var(--nasq-petrol);font-size:34px}
.nasq-login-card .field label{color:var(--nasq-petrol)}
.nasq-login-card .field input{min-height:49px;border-radius:12px;border-color:#CAD8DB;background:#FCFDFD;padding:12px 14px}
.identity-password-wrap{position:relative;display:flex;align-items:center}
.identity-password-wrap input{width:100%;padding-left:52px!important}
.password-visibility-button{position:absolute;left:7px;width:38px;height:38px;border:0;border-radius:9px;background:transparent;color:#667B83;display:grid;place-items:center;cursor:pointer}
.password-visibility-button:hover{background:var(--nasq-turquoise-soft);color:var(--nasq-turquoise-dark)}
.password-visibility-button svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7}
.nasq-login-button{min-height:50px;border-radius:12px;font-size:15px;margin-top:2px}
.identity-security-note{display:flex;align-items:flex-start;gap:9px;color:var(--muted);font-size:11px;line-height:1.7;margin-top:2px}
.identity-security-note svg{width:20px;height:20px;flex:0 0 20px;fill:none;stroke:var(--nasq-turquoise-dark);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.nasq-login-promo{border-radius:0;box-shadow:none;background:linear-gradient(155deg,var(--nasq-petrol) 0%,#0D303A 100%);padding:46px;justify-content:space-between;min-height:660px}
.nasq-login-promo:before{content:"";position:absolute;inset:auto auto -100px -80px;width:330px;height:330px;border-radius:50%;border:1px solid rgba(255,255,255,.08);box-shadow:0 0 0 55px rgba(255,255,255,.025),0 0 0 110px rgba(255,255,255,.018)}
.nasq-login-promo:after{width:250px;height:250px;background:rgba(24,169,153,.09);left:auto;right:-110px;top:-90px;bottom:auto}
.nasq-promo-brand{position:relative;z-index:1;display:flex;align-items:center;gap:12px;color:#fff;font-weight:800}
.nasq-promo-brand img{width:46px;height:46px}
.nasq-promo-copy{position:relative;z-index:1;margin:42px 0}
.nasq-promo-eyebrow{display:inline-flex;color:#B7DCD8!important;background:rgba(24,169,153,.12);border:1px solid rgba(24,169,153,.22);border-radius:999px;padding:7px 11px;font-size:11px}
.nasq-promo-copy h2{font-size:32px;line-height:1.45;margin:13px 0 13px;max-width:480px}
.nasq-promo-copy p{margin:0;color:#D0E1E3;line-height:1.9}
.nasq-promo-features{list-style:none;padding:0;margin:23px 0 0;display:grid;gap:12px;color:#F4FAFA}
.nasq-promo-features li{display:flex;align-items:center;gap:9px}
.nasq-promo-features li span{width:25px;height:25px;border-radius:8px;background:rgba(24,169,153,.18);color:#63D5C8;display:grid;place-items:center;font-weight:900}
.nasq-request-box{position:relative;z-index:1;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.07);border-radius:17px;padding:15px;display:grid;gap:13px}
.nasq-request-box>div{display:grid;gap:4px}
.nasq-request-box small{color:#BCD1D4;margin:0}
.nasq-request-box .request-entry-button{width:100%;min-height:43px;color:var(--nasq-petrol)}
.nasq-identity-card{border-top:5px solid var(--nasq-turquoise)}
.compact-heading{margin:18px 0 22px}
.compact-heading h1{margin:11px 0 7px;color:var(--nasq-petrol)}
.compact-heading p{color:var(--muted);line-height:1.8;margin:0}

@media(max-width:980px){
  .nasq-login-shell{grid-template-columns:1fr;max-width:720px;border-radius:24px}
  .nasq-login-promo{min-height:auto;padding:32px}
  .nasq-promo-copy{margin:28px 0}
  .nasq-promo-copy h2{font-size:28px}
}
@media(max-width:900px){
  .app-shell{display:block}
  .sidebar{position:fixed;z-index:1200;right:0;top:0;width:min(315px,88vw);height:100dvh;padding:19px 16px;transform:translateX(108%);transition:transform .22s ease;overflow:auto}
  body.sidebar-open{overflow:hidden}
  body.sidebar-open .sidebar{transform:translateX(0)}
  .sidebar nav{display:block!important}
  .sidebar nav .nav-section,.sidebar nav .sidebar-help,.sidebar nav .advanced-nav{display:block;grid-column:auto}
  .sidebar nav a{margin:3px 0;padding:11px 12px}
  .sidebar-backdrop{display:block;position:fixed;z-index:1100;inset:0;border:0;background:rgba(7,28,35,.48);opacity:0;pointer-events:none;transition:opacity .2s ease}
  body.sidebar-open .sidebar-backdrop{opacity:1;pointer-events:auto}
  .mobile-menu-button{display:inline-flex}
  .main-content{padding:0 18px 24px}
  .topbar{min-height:92px;margin-bottom:18px}
}
@media(max-width:620px){
  .identity-entry-page{padding:12px}
  .nasq-login-shell{border-radius:20px}
  .nasq-login-card{padding:28px 22px}
  .nasq-login-card .identity-heading h1{font-size:29px}
  .nasq-login-promo{padding:27px 22px}
  .nasq-promo-copy h2{font-size:25px}
  .nasq-promo-features{font-size:13px}
  .topbar h1{font-size:21px}
  .main-content{padding:0 12px 20px}
  .nasq-footer{flex-direction:column;gap:5px}
}

/* Nasq V0.9.2.1 — Phase 2 navigation and dashboard experience */
.nasq-icon{width:21px;height:21px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.app-shell{grid-template-columns:285px minmax(0,1fr);transition:grid-template-columns .22s ease}
.sidebar{width:285px;transition:width .22s ease,padding .22s ease;overflow-x:hidden}
.nasq-sidebar-logo-icon{display:none;width:44px;height:44px;margin-inline:auto}
.nasq-navigation{display:grid;gap:6px;align-content:start}
.sidebar nav .nav-link{display:flex;align-items:center;gap:11px;min-height:45px;margin:0;padding:8px 10px;border-radius:12px;color:#dce9ea;border:1px solid transparent;text-decoration:none;transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}
.sidebar nav .nav-link:hover{transform:none}
.sidebar nav .nav-link-featured{background:rgba(255,255,255,.055);margin-bottom:3px}
.sidebar nav .nav-link.active{background:linear-gradient(90deg,rgba(24,169,153,.2),rgba(255,255,255,.085));border-color:rgba(24,169,153,.32);box-shadow:inset -3px 0 0 var(--nasq-turquoise)}
.sidebar nav .nav-icon{width:31px;height:31px;display:grid;place-items:center;border-radius:9px;background:rgba(255,255,255,.07);color:#d8eceb;flex:0 0 auto}
.sidebar nav .nav-link.active .nav-icon,.sidebar nav .nav-link:hover .nav-icon{background:rgba(24,169,153,.2);color:#fff}
.sidebar nav .nav-icon .nasq-icon{width:18px;height:18px}
.nav-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nav-group{border:1px solid rgba(255,255,255,.075);border-radius:13px;background:rgba(255,255,255,.025);overflow:hidden}
.nav-group>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:42px;padding:9px 12px;color:#93bfbd;font-size:11px;font-weight:800;cursor:pointer;user-select:none}
.nav-group>summary::-webkit-details-marker{display:none}
.nav-group>summary .nasq-icon{width:16px;height:16px;transition:transform .18s ease}
.nav-group[open]>summary .nasq-icon{transform:rotate(90deg)}
.nav-group-links{display:grid;gap:2px;padding:0 5px 6px}
.nav-group-links .nav-link{font-size:13px;min-height:42px;padding:6px 7px}
.advanced-nav{background:transparent;border-style:dashed}
.advanced-nav .nav-group-links .nav-link{padding-inline:14px;color:#b6cdcf}
.sidebar-footer-area{margin-top:auto;display:grid;gap:10px;padding-top:16px}
.sidebar-collapse-button{width:100%;min-height:40px;display:flex;align-items:center;justify-content:center;gap:9px;border:1px solid rgba(255,255,255,.12);border-radius:11px;background:rgba(255,255,255,.045);color:#bdd3d5;font:inherit;font-size:12px;cursor:pointer}
.sidebar-collapse-button:hover{background:rgba(255,255,255,.09);color:#fff}
.sidebar-collapse-button .nasq-icon{width:17px;height:17px;transition:transform .2s ease}
.sidebar-account-card{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;align-items:center;margin:0;padding:11px}
.sidebar-account-avatar{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,var(--nasq-turquoise),#56c8bc);color:#fff;font-weight:900;font-size:16px}
.sidebar-account-copy{min-width:0}
.sidebar-account-copy strong,.sidebar-account-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sidebar-account-copy strong{font-size:12px;color:#fff}.sidebar-account-copy small{font-size:10px;color:#a8c4c7;margin-top:3px}
.sidebar-account-card form{grid-column:1/-1}.sidebar-account-card .sidebar-logout{width:100%;margin-top:0;min-height:34px}
body.sidebar-collapsed .app-shell{grid-template-columns:88px minmax(0,1fr)}
body.sidebar-collapsed .sidebar{width:88px;padding-inline:12px}
body.sidebar-collapsed .nasq-sidebar-brand{padding-inline:0;justify-items:center}
body.sidebar-collapsed .nasq-sidebar-logo-full,body.sidebar-collapsed .sidebar-role-label,body.sidebar-collapsed .nav-label,body.sidebar-collapsed .sidebar-help,body.sidebar-collapsed .sidebar-account-copy,body.sidebar-collapsed .sidebar-account-card form{display:none}
body.sidebar-collapsed .nasq-sidebar-logo-icon{display:block}
body.sidebar-collapsed .nav-group{border:0;background:transparent;overflow:visible}
body.sidebar-collapsed .nav-group>summary{display:none}
body.sidebar-collapsed .nav-group>.nav-group-links{display:grid!important;padding:0;gap:5px}
body.sidebar-collapsed .sidebar nav .nav-link{justify-content:center;padding:6px;overflow:visible;position:relative}
body.sidebar-collapsed .sidebar nav .nav-icon{width:38px;height:38px}
body.sidebar-collapsed .sidebar nav .nav-link:hover::after{content:attr(title);position:absolute;right:calc(100% + 9px);top:50%;transform:translateY(-50%);background:#0c3038;color:#fff;border:1px solid rgba(255,255,255,.12);border-radius:8px;padding:7px 10px;white-space:nowrap;font-size:11px;z-index:1300;box-shadow:0 8px 20px rgba(0,0,0,.18)}
body.sidebar-collapsed .sidebar-account-card{display:flex;justify-content:center;padding:8px}
body.sidebar-collapsed .sidebar-collapse-button .nasq-icon{transform:rotate(180deg)}
body.sidebar-collapsed .sidebar-collapse-button{padding:0}

.topbar{position:relative;min-height:118px}
.topbar-copy{min-width:0}.nasq-breadcrumb{display:flex;align-items:center;gap:7px;color:#8a9a9f;font-size:10px;margin-bottom:6px}.nasq-breadcrumb b{font-weight:400;color:#bdc8cb}
.mobile-brand-icon{display:none;width:37px;height:37px}
.topbar-actions{display:flex;align-items:center;gap:10px}.role-badge{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--border);color:var(--nasq-petrol);border-radius:999px;padding:9px 13px;font-size:11px;font-weight:800;box-shadow:0 4px 14px rgba(18,59,74,.04)}
.role-dot{width:8px;height:8px;border-radius:50%;background:var(--nasq-turquoise);box-shadow:0 0 0 4px rgba(24,169,153,.12)}
.mobile-menu-button .nasq-icon{width:23px;height:23px}
.page-feedback .alert{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;align-items:center;padding:13px 15px;animation:feedback-in .26s ease both;animation-delay:var(--alert-delay,0ms)}
.page-feedback .alert strong{font-size:12px}.page-feedback .alert span{font-size:12px;line-height:1.6}
.structured-alert{display:grid;grid-template-columns:auto 1fr;gap:5px 12px}.structured-alert strong{font-size:12px}.structured-alert span{font-size:12px;line-height:1.65}
@keyframes feedback-in{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}

.dashboard-section{margin:26px 0}
.dashboard-hero{position:relative;overflow:hidden;min-height:210px;border-radius:24px;padding:30px 32px;display:flex;justify-content:space-between;align-items:center;gap:26px;background:linear-gradient(135deg,#123B4A 0%,#155663 58%,#12786e 100%);color:#fff;box-shadow:0 18px 42px rgba(18,59,74,.15)}
.dashboard-hero::before{content:"";position:absolute;width:310px;height:310px;border:1px solid rgba(255,255,255,.08);border-radius:50%;left:-85px;top:-155px}.dashboard-hero::after{content:"";position:absolute;width:180px;height:180px;background:radial-gradient(circle,rgba(201,162,74,.18),transparent 68%);left:17%;bottom:-115px}
.dashboard-hero>*{position:relative;z-index:1}
.dashboard-hero-copy{max-width:760px}.dashboard-hero h2{font-size:28px;margin:12px 0 9px;line-height:1.45}.dashboard-hero p{margin:0;color:#d4e5e7;line-height:1.8;max-width:720px}.eyebrow.solid{display:inline-flex;color:#d1eeeb;background:rgba(24,169,153,.16);border:1px solid rgba(93,220,207,.2);font-weight:800}
.hero-inline-status{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:20px}.hero-inline-status .status-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid transparent;padding:7px 10px;border-radius:999px;font-size:10px;font-weight:800}.hero-inline-status .status-chip .nasq-icon{width:14px;height:14px}.hero-inline-status .status-chip.success{color:#d9fff2;background:rgba(44,190,135,.14);border-color:rgba(114,233,188,.18)}.hero-inline-status .status-chip.neutral{color:#e1eef0;background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.12)}.hero-inline-status .status-chip.warning{color:#fff1bd;background:rgba(201,162,74,.17);border-color:rgba(240,204,112,.2)}
.progress-orbit{--progress:0;width:132px;height:132px;flex:0 0 132px;border-radius:50%;padding:8px;background:conic-gradient(var(--nasq-gold) calc(var(--progress)*1%),rgba(255,255,255,.15) 0);box-shadow:0 12px 30px rgba(0,0,0,.12)}
.progress-orbit>div{width:100%;height:100%;border-radius:50%;display:grid;place-content:center;text-align:center;background:#164954;border:1px solid rgba(255,255,255,.1)}.progress-orbit strong{font-size:27px}.progress-orbit span{font-size:9px;color:#cae0e2;margin-top:2px}
.school-dashboard-hero{background:linear-gradient(135deg,#123B4A 0%,#174e59 55%,#168c7f 100%)}.school-identity-block{display:flex;align-items:center;gap:19px;min-width:0}.school-identity-icon{width:67px;height:67px;border-radius:20px;display:grid;place-items:center;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.13);color:#fff;flex:0 0 auto}.school-identity-icon .nasq-icon{width:34px;height:34px}.school-identity-block h2{margin-top:10px}.separator-dot{margin-inline:5px;color:#87c8c3}
.section-heading-row{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:14px}.section-heading-row h2{margin:3px 0 5px;color:var(--nasq-petrol);font-size:20px}.section-heading-row p{margin:0;color:var(--muted);font-size:12px;line-height:1.65}.section-kicker{font-size:10px;color:var(--nasq-turquoise);font-weight:900}.compact-heading-row{align-items:center}.attention-counter{display:inline-flex;align-items:center;justify-content:center;min-width:92px;border-radius:999px;padding:8px 12px;font-size:10px;font-weight:900}.attention-counter.has-items{background:#fff0dc;color:#855a12;border:1px solid #ecd09a}.attention-counter.clear{background:#e9f6f0;color:#237451;border:1px solid #c9e7d8}
.attention-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.attention-card{position:relative;min-height:125px;display:grid;grid-template-columns:43px 1fr auto;gap:12px;align-items:start;background:#fff;border:1px solid var(--border);border-radius:17px;padding:16px 17px;color:var(--ink);text-decoration:none;box-shadow:0 6px 20px rgba(18,59,74,.045);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.attention-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(18,59,74,.09)}.attention-icon{width:43px;height:43px;border-radius:13px;display:grid;place-items:center;background:#eef5f5;color:var(--nasq-petrol)}.attention-icon .nasq-icon{width:22px;height:22px}.attention-card strong{display:block;font-size:13px;margin-top:2px}.attention-card p{margin:6px 0 0;color:var(--muted);font-size:11px;line-height:1.6}.attention-value{font-size:25px;font-weight:900;color:var(--nasq-petrol)}.attention-card .card-arrow{position:absolute;left:15px;bottom:13px}.card-arrow{color:#8da2a6;display:grid;place-items:center}.card-arrow .nasq-icon{width:17px;height:17px}.attention-card.urgent{border-color:#e8c786;background:linear-gradient(180deg,#fffdfa,#fff)}.attention-card.warning{border-color:#edd7a9}.attention-card.danger{border-color:#e8c2c7}.attention-card.danger .attention-icon{background:#fff0f1;color:var(--danger)}.attention-card.resolved .attention-icon{background:#eaf7f1;color:var(--success)}.attention-card.resolved .attention-value{color:var(--success)}
.dashboard-next-action{border-right-width:5px}.dashboard-next-action .btn{gap:7px}.dashboard-next-action .btn .nasq-icon{width:16px;height:16px}
.journey-track{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.journey-stage{position:relative;min-height:135px;background:#fff;border:1px solid var(--border);border-radius:17px;padding:16px;text-decoration:none;color:var(--ink);display:grid;grid-template-columns:38px 1fr;gap:11px;box-shadow:0 5px 17px rgba(18,59,74,.035)}.journey-stage-number{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#eef2f3;color:#718287;font-weight:900}.journey-stage strong,.journey-stage small{display:block}.journey-stage strong{font-size:13px}.journey-stage small{margin-top:5px;color:var(--muted);font-size:10px;line-height:1.55}.journey-stage-status{grid-column:2;align-self:end;width:max-content;border-radius:999px;padding:5px 8px;background:#f0f3f4;color:#748489;font-size:9px;font-weight:900}.journey-stage.complete{border-color:#c9e6d8}.journey-stage.complete .journey-stage-number{background:#e5f5ed;color:var(--success)}.journey-stage.complete .journey-stage-status{background:#e9f7f0;color:#22724f}.journey-stage.current{border-color:#ddb95c;box-shadow:0 10px 25px rgba(201,162,74,.12)}.journey-stage.current .journey-stage-number{background:#fff2c8;color:#825d0b}.journey-stage.current .journey-stage-status{background:#fff3d1;color:#7b570d}.journey-stage.upcoming{opacity:.72}
.operations-overview-grid,.school-overview-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.operation-metric{min-height:137px;display:flex;flex-direction:column;background:#fff;border:1px solid var(--border);border-radius:17px;padding:16px;color:var(--ink);text-decoration:none;box-shadow:0 5px 17px rgba(18,59,74,.035);transition:transform .16s ease,border-color .16s ease}.operation-metric:hover{transform:translateY(-2px);border-color:#bad7d4}.operation-metric.primary-metric{background:linear-gradient(145deg,#f7fcfb,#edf8f6);border-color:#b9ded9}.metric-top{display:flex;align-items:center;gap:8px;color:var(--nasq-turquoise)}.metric-top .nasq-icon{width:18px;height:18px}.metric-top small{color:var(--muted);font-size:10px;font-weight:800}.operation-metric strong{font-size:25px;color:var(--nasq-petrol);margin-top:15px}.operation-metric strong.metric-text{font-size:14px;line-height:1.55}.operation-metric p{margin:auto 0 0;color:var(--muted);font-size:10px;line-height:1.5}
.activity-panel{padding:22px}.activity-panel .panel-header{margin-bottom:10px}.activity-timeline{display:grid}.activity-entry{display:grid;grid-template-columns:39px minmax(0,1fr) auto;gap:12px;align-items:start;padding:13px 0;border-bottom:1px solid #edf1f2}.activity-entry:last-child{border-bottom:0}.activity-entry-icon{width:39px;height:39px;border-radius:12px;display:grid;place-items:center;background:#edf6f5;color:var(--nasq-turquoise)}.activity-entry-icon .nasq-icon{width:19px;height:19px}.activity-entry-copy strong{font-size:12px}.activity-entry-copy p{margin:4px 0;color:var(--muted);font-size:11px;line-height:1.5}.activity-entry-copy small{color:#8a999e;font-size:9px}.activity-entry time{color:#7f9196;font-size:9px;white-space:nowrap;padding-top:4px}.compact-empty{padding:25px}.empty-state-icon{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:#edf5f5;color:#7f999b;margin:0 auto 10px}.empty-state-icon .nasq-icon{width:23px;height:23px}

.school-focus-grid{display:grid;grid-template-columns:1.45fr .75fr;gap:14px;margin:18px 0 26px}.school-focus-card{background:#fff;border:1px solid var(--border);border-radius:19px;padding:21px;box-shadow:0 7px 22px rgba(18,59,74,.045)}.school-focus-card.primary-focus{border-right:5px solid var(--nasq-turquoise)}.focus-card-heading{display:flex;align-items:center;gap:12px}.focus-card-icon{width:45px;height:45px;border-radius:14px;display:grid;place-items:center;background:#eaf6f4;color:var(--nasq-turquoise)}.focus-card-icon .nasq-icon{width:23px;height:23px}.focus-card-heading span:not(.focus-card-icon){display:block;color:var(--nasq-turquoise);font-size:9px;font-weight:900}.focus-card-heading h2{font-size:18px;margin:3px 0 0;color:var(--nasq-petrol)}.school-focus-card>p{margin:14px 0 17px;color:var(--muted);line-height:1.75;font-size:12px}.school-focus-card .btn{gap:7px}.school-focus-card .btn .nasq-icon{width:16px;height:16px}.focus-status-list{display:grid;gap:0;margin:14px 0 0}.focus-status-list>div{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid #edf1f2}.focus-status-list>div:last-child{border:0}.focus-status-list dt{font-size:11px;color:var(--muted)}.focus-status-list dd{margin:0;font-size:11px;font-weight:900;color:var(--nasq-petrol)}.focus-status-list dd.positive{color:var(--success)}.focus-status-list dd.pending{color:var(--warning)}.focus-status-list dd small{font-size:8px;color:var(--muted);font-weight:400}
.school-journey-list{display:grid;gap:9px}.school-journey-step{display:grid;grid-template-columns:42px minmax(0,1fr) auto 25px;gap:13px;align-items:center;min-height:86px;background:#fff;border:1px solid var(--border);border-radius:16px;padding:13px 15px;color:var(--ink);text-decoration:none;transition:border-color .16s ease,transform .16s ease}.school-journey-step:hover{transform:translateX(-2px);border-color:#bad7d4}.school-step-index{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:#edf2f3;color:#728287;font-weight:900}.school-step-copy strong{display:block;font-size:12px}.school-step-copy p{margin:5px 0 0;color:var(--muted);font-size:10px;line-height:1.55}.school-step-state{border-radius:999px;padding:6px 9px;background:#f1f3f4;color:#748287;font-size:9px;font-weight:900;white-space:nowrap}.school-step-state.optional{background:#eef6f5;color:#497f7a}.school-journey-step.complete{border-color:#cee7da}.school-journey-step.complete .school-step-index{background:#e6f5ed;color:var(--success)}.school-journey-step.current{border-color:#dec16e;background:#fffdf7}.school-journey-step.current .school-step-index{background:#fff0c7;color:#7e590a}.school-journey-step.current .school-step-state{background:#fff0ca;color:#785407}
.task-launcher-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.task-launcher-card{position:relative;min-height:112px;display:grid;grid-template-columns:45px minmax(0,1fr) 22px;gap:12px;align-items:center;background:#fff;border:1px solid var(--border);border-radius:17px;padding:15px;color:var(--ink);text-decoration:none;box-shadow:0 5px 17px rgba(18,59,74,.035);transition:transform .16s ease,border-color .16s ease}.task-launcher-card:hover{transform:translateY(-2px);border-color:#afd5d0}.task-launcher-card.featured{background:linear-gradient(145deg,#f6fcfb,#eaf8f5);border-color:#acd8d2}.task-launcher-card.disabled{opacity:.62;cursor:not-allowed}.task-launcher-icon{width:45px;height:45px;border-radius:14px;display:grid;place-items:center;background:#edf6f5;color:var(--nasq-turquoise)}.task-launcher-icon .nasq-icon{width:23px;height:23px}.task-launcher-card strong,.task-launcher-card small{display:block}.task-launcher-card strong{font-size:12px}.task-launcher-card small{font-size:10px;color:var(--muted);line-height:1.55;margin-top:5px}

@media(max-width:1250px){
  .operations-overview-grid,.school-overview-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .attention-grid{grid-template-columns:1fr 1fr}.attention-card:last-child{grid-column:1/-1}
  .task-launcher-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:1050px){
  .journey-track{grid-template-columns:repeat(2,minmax(0,1fr))}
  .school-focus-grid{grid-template-columns:1fr}
}
@media(max-width:900px){
  body.sidebar-collapsed .app-shell,.app-shell{grid-template-columns:1fr}
  body.sidebar-collapsed .sidebar,.sidebar{width:min(320px,89vw);padding:19px 15px}
  body.sidebar-collapsed .nasq-sidebar-logo-full{display:block}
  body.sidebar-collapsed .nasq-sidebar-logo-icon{display:none}
  body.sidebar-collapsed .sidebar-role-label,body.sidebar-collapsed .nav-label,body.sidebar-collapsed .sidebar-help,body.sidebar-collapsed .sidebar-account-copy{display:block}
  body.sidebar-collapsed .sidebar-account-card form{display:block}
  body.sidebar-collapsed .nav-group>summary{display:flex}
  body.sidebar-collapsed .nav-group>.nav-group-links{display:grid}
  body.sidebar-collapsed .sidebar nav .nav-link{justify-content:flex-start;padding:8px 10px}
  body.sidebar-collapsed .sidebar nav .nav-icon{width:31px;height:31px}
  body.sidebar-collapsed .sidebar-account-card{display:grid;justify-content:normal;padding:11px}
  .sidebar-collapse-button{display:none}
  .mobile-brand-icon{display:block}
  .topbar{min-height:102px;padding-top:16px}
  .dashboard-hero{padding:25px 24px}.dashboard-hero h2{font-size:24px}
  .progress-orbit{width:112px;height:112px;flex-basis:112px}.progress-orbit strong{font-size:23px}
}
@media(max-width:700px){
  .dashboard-hero{align-items:flex-start;flex-direction:column}.progress-orbit{position:absolute;left:18px;top:18px;width:83px;height:83px;flex-basis:83px;padding:6px}.progress-orbit strong{font-size:18px}.progress-orbit span{font-size:7px}.dashboard-hero-copy,.school-identity-block{padding-left:85px}.school-identity-icon{display:none}
  .attention-grid,.operations-overview-grid,.school-overview-grid,.journey-track,.task-launcher-grid{grid-template-columns:1fr}.attention-card:last-child{grid-column:auto}
  .section-heading-row{align-items:flex-start;flex-direction:column}.attention-counter{align-self:flex-start}
  .school-journey-step{grid-template-columns:40px minmax(0,1fr) 22px}.school-step-state{grid-column:2}.school-journey-step>.card-arrow{grid-column:3;grid-row:1/3}.school-step-copy p{font-size:10px}
  .activity-entry{grid-template-columns:38px 1fr}.activity-entry time{grid-column:2}
}
@media(max-width:520px){
  .dashboard-hero{min-height:245px;padding:22px 19px}.dashboard-hero-copy,.school-identity-block{padding-left:70px}.progress-orbit{width:70px;height:70px;left:13px;top:14px}.progress-orbit>div span{display:none}.dashboard-hero h2{font-size:21px}.dashboard-hero p{font-size:11px}.hero-inline-status{margin-top:14px}
  .school-identity-block{align-items:flex-start}.school-identity-block p{font-size:10px}
  .attention-card{grid-template-columns:40px 1fr auto;padding:14px}.attention-value{font-size:22px}
  .school-focus-card{padding:17px}.focus-card-heading h2{font-size:16px}
  .operation-metric{min-height:120px}
  .topbar-actions{display:none}.nasq-breadcrumb{display:none}
}

/* Nasq V0.9.2.2 — Phase 3 forms, tables, and interaction consistency */
.nasq-data-page{display:grid;gap:16px}
.data-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;background:#fff;border:1px solid var(--border);border-radius:18px;padding:16px 18px;box-shadow:0 6px 22px rgba(18,59,74,.045)}
.data-toolbar-copy{min-width:0}.data-toolbar-copy h2,.data-toolbar-copy h3{margin:0 0 5px;color:var(--nasq-petrol);font-size:17px}.data-toolbar-copy p{margin:0;color:var(--muted);font-size:12px;line-height:1.65}
.data-toolbar-controls{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}.data-toolbar-controls form{margin:0}
.nasq-search-field{position:relative;display:flex;align-items:center;min-width:270px}.nasq-search-field svg{position:absolute;right:12px;width:18px;height:18px;color:#7e9298;pointer-events:none}.nasq-search-field input{width:100%;min-height:43px;border:1px solid #cad7da;border-radius:12px;background:#fbfdfd;color:var(--ink);font:inherit;padding:10px 42px 10px 12px;outline:0}.nasq-search-field input:focus{border-color:var(--nasq-turquoise);box-shadow:var(--focus);background:#fff}
.table-summary{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:11px;white-space:nowrap}.table-summary strong{color:var(--nasq-petrol);font-size:13px}.table-summary-dot{width:6px;height:6px;border-radius:50%;background:var(--nasq-turquoise)}
.nasq-table-shell{overflow:hidden;background:#fff;border:1px solid var(--border);border-radius:18px;box-shadow:0 7px 24px rgba(18,59,74,.05)}.nasq-table-shell .table-wrap{overflow:auto}.nasq-data-table{margin:0}.nasq-data-table thead th{background:#f4f8f8;color:#5c7076;font-size:11px;letter-spacing:.01em;border-bottom:1px solid #dce7e8}.nasq-data-table tbody tr{background:#fff}.nasq-data-table tbody tr:hover{background:#f8fcfb}.nasq-data-table td{padding-top:15px;padding-bottom:15px}.table-primary{display:grid;gap:4px}.table-primary strong{color:var(--nasq-petrol);font-size:13px}.table-primary small{color:var(--muted);font-size:10px;line-height:1.55}.table-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.table-action-link{display:inline-flex;align-items:center;justify-content:center;min-height:35px;padding:7px 10px;border-radius:9px;border:1px solid #cfe0df;background:#fff;color:var(--primary-dark);text-decoration:none;font-size:11px;font-weight:800;white-space:nowrap}.table-action-link:hover{background:#eef8f6;border-color:#9dcfc8}.table-action-link.primary{background:var(--nasq-turquoise);border-color:var(--nasq-turquoise);color:#fff}.table-action-link.danger{color:var(--danger);border-color:#edc9cd}.data-no-results{display:none;padding:30px;text-align:center;color:var(--muted);border-top:1px solid var(--border)}.data-no-results.visible{display:block}
.nasq-empty-state{display:grid;place-items:center;text-align:center;gap:7px;padding:38px 24px}.nasq-empty-state .empty-state-icon{margin:0 0 4px}.nasq-empty-state strong{color:var(--nasq-petrol);font-size:15px}.nasq-empty-state p{max-width:520px;margin:0;color:var(--muted);font-size:12px;line-height:1.7}.nasq-empty-state .btn{margin-top:9px}

.form-experience{max-width:1080px;padding:0;overflow:visible}.form-section{padding:25px 26px;border-bottom:1px solid #e7eeee}.form-section:last-of-type{border-bottom:0}.form-section-header{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:13px;align-items:start;margin-bottom:20px}.form-section-index{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:#eaf6f4;color:var(--nasq-turquoise);font-size:15px;font-weight:900}.form-section-header h2,.form-section-header h3{margin:1px 0 5px;color:var(--nasq-petrol);font-size:17px}.form-section-header p{margin:0;color:var(--muted);font-size:11px;line-height:1.65}.form-section-badge{align-self:center;border-radius:999px;padding:6px 9px;background:#f1f5f5;color:#657a80;font-size:9px;font-weight:900}.form-section-badge.optional{background:#eef7f5;color:#3b7770}.form-section .form-grid{gap:17px}.field-card{padding:14px;border:1px solid #e1eaec;border-radius:14px;background:#fbfdfd}.field small.field-help{display:block;margin-top:1px}.form-note{display:flex;align-items:flex-start;gap:10px;border-radius:13px;padding:12px 14px;background:#eef8f6;border:1px solid #d5eae6;color:#315f5a;font-size:11px;line-height:1.7}.form-note.warning{background:#fff9eb;border-color:#ecdcae;color:#725b20}.form-note-icon{width:24px;height:24px;border-radius:8px;display:grid;place-items:center;background:#d8ede8;color:var(--nasq-turquoise);font-weight:900;flex:0 0 auto}.form-actions.nasq-form-actions{margin:0;border-radius:0 0 17px 17px;padding:17px 26px}.form-actions-copy{margin-left:auto}.form-actions-copy strong,.form-actions-copy small{display:block}.form-actions-copy strong{font-size:11px;color:var(--nasq-petrol)}.form-actions-copy small{margin-top:3px;color:var(--muted);font-size:9px}
.file-input-card{position:relative;border:1px dashed #a9c8c5;border-radius:15px;background:#f7fbfa;padding:16px}.file-input-card input[type=file]{width:100%;background:#fff}.file-input-card-preview{display:flex;align-items:center;gap:14px;margin-top:13px;padding:12px;border:1px solid #dbe7e8;border-radius:13px;background:#fff}.file-input-card-preview[hidden]{display:none}.file-input-card-preview img{width:76px;height:62px;object-fit:contain;border-radius:10px;border:1px solid #e3eaec;background:#fff;padding:5px}.file-input-card-preview span{display:grid;gap:3px}.file-input-card-preview strong{font-size:11px}.file-input-card-preview small{color:var(--muted);font-size:9px}.logo-preview-card{display:flex;align-items:center;gap:16px;border:1px solid #dce7e8;border-radius:15px;background:#fbfdfd;padding:14px}.logo-preview-card img{width:120px;height:90px;object-fit:contain;border:1px solid #e1e8ea;border-radius:12px;padding:8px;background:#fff}.logo-preview-copy{display:grid;gap:6px}.logo-preview-copy strong{font-size:12px}.logo-preview-copy small{color:var(--muted);font-size:10px;line-height:1.6}

.copy-control{display:flex;align-items:center;gap:7px}.copy-control input{min-width:0;flex:1}.copy-button{width:38px;height:38px;display:grid;place-items:center;border:1px solid #ceddde;border-radius:10px;background:#fff;color:var(--nasq-turquoise);cursor:pointer}.copy-button:hover{background:#edf8f6;border-color:#a9d3ce}.copy-button svg{width:17px;height:17px}
.selection-status-bar{display:none;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;padding:11px 13px;border-radius:13px;background:#edf8f6;border:1px solid #cfe7e2;color:#315e59;font-size:11px}.selection-status-bar.visible{display:flex}.selection-status-bar strong{color:var(--nasq-petrol)}
.nasq-toast-region{position:fixed;left:22px;bottom:22px;z-index:4000;display:grid;gap:9px;pointer-events:none}.nasq-toast{min-width:240px;max-width:360px;display:flex;align-items:center;gap:10px;background:#123b4a;color:#fff;border-radius:13px;padding:12px 14px;box-shadow:0 20px 50px rgba(18,59,74,.24);font-size:11px;line-height:1.6;animation:nasq-toast-in .2s ease both}.nasq-toast::before{content:'✓';width:24px;height:24px;border-radius:8px;background:rgba(255,255,255,.15);display:grid;place-items:center;font-weight:900;flex:0 0 auto}.nasq-toast.error{background:#8f2f3b}.nasq-toast.error::before{content:'!'}.nasq-toast.out{animation:nasq-toast-out .18s ease forwards}@keyframes nasq-toast-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes nasq-toast-out{to{opacity:0;transform:translateY(8px)}}

@media(max-width:900px){.data-toolbar{align-items:stretch;flex-direction:column}.data-toolbar-controls{justify-content:flex-start}.nasq-search-field{min-width:min(100%,320px)}.form-section{padding:21px 19px}.form-actions.nasq-form-actions{padding:15px 19px}.form-actions-copy{display:none}}
@media(max-width:720px){.data-toolbar-controls,.data-toolbar-controls>.btn,.data-toolbar-controls>form{width:100%}.data-toolbar-controls>form .btn{width:100%}.nasq-search-field{width:100%;min-width:0}.table-responsive-cards{overflow:visible}.table-responsive-cards table,.table-responsive-cards tbody,.table-responsive-cards tr,.table-responsive-cards td{display:block;width:100%}.table-responsive-cards table{min-width:0}.table-responsive-cards thead{display:none}.table-responsive-cards tbody{display:grid;gap:12px;padding:12px;background:#f4f7f8}.table-responsive-cards tr{border:1px solid var(--border);border-radius:15px;background:#fff!important;overflow:hidden;box-shadow:0 4px 14px rgba(18,59,74,.04)}.table-responsive-cards td{display:grid;grid-template-columns:minmax(92px,34%) minmax(0,1fr);gap:11px;align-items:start;padding:10px 13px;border-bottom:1px solid #edf1f2;text-align:right}.table-responsive-cards td:last-child{border-bottom:0}.table-responsive-cards td::before{content:attr(data-label);color:#75878d;font-size:9px;font-weight:900;padding-top:2px}.table-responsive-cards td[data-label=""]::before{display:none}.table-responsive-cards td[data-label=""]{grid-template-columns:1fr}.table-responsive-cards .table-actions,.table-responsive-cards .row-actions{display:grid;grid-template-columns:1fr;gap:7px}.table-responsive-cards .table-action-link,.table-responsive-cards .btn,.table-responsive-cards .icon-btn{width:100%}.form-section-header{grid-template-columns:40px minmax(0,1fr)}.form-section-index{width:40px;height:40px}.form-section-badge{grid-column:2;justify-self:start}.logo-preview-card{align-items:flex-start;flex-direction:column}.nasq-toast-region{left:12px;right:12px;bottom:12px}.nasq-toast{min-width:0;max-width:none;width:100%}}
.file-selection-summary{display:none;margin-top:12px;border:1px solid #dbe7e8;border-radius:13px;background:#fff;padding:12px}.file-selection-summary.visible{display:block}.file-selection-summary strong{display:block;color:var(--nasq-petrol);font-size:11px;margin-bottom:7px}.file-selection-list{display:grid;gap:6px;margin:0;padding:0;list-style:none}.file-selection-list li{display:flex;justify-content:space-between;gap:12px;padding:7px 9px;border-radius:9px;background:#f5f9f9;color:#52676d;font-size:10px}.file-selection-list small{color:#819197;white-space:nowrap}
.form-grid>.wide{grid-column:1/-1}
.users-table-toolbar,.import-table-toolbar{margin:0 0 13px;padding:12px 13px;background:#f8fbfb;box-shadow:none}.users-table-toolbar .nasq-search-field,.import-table-toolbar .nasq-search-field{min-width:min(100%,360px)}

/* Nasq V0.9.2.3 — Phase 4 accessibility, mobile coverage, and final polish */
html{min-width:320px;scroll-padding-top:112px}
body{min-width:320px;line-height:1.55;overflow-wrap:anywhere}
body.nasq-modal-open{overflow:hidden}
[hidden]{display:none!important}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid rgba(24,169,153,.34);outline-offset:3px}
.sidebar :where(a,button,summary):focus-visible{outline-color:rgba(255,255,255,.62)}
:where(input,select,textarea)[aria-invalid="true"]{border-color:var(--danger)!important;box-shadow:0 0 0 3px rgba(179,59,73,.1)!important}
:where(button,.btn,.icon-btn,.table-action-link,.copy-button){touch-action:manipulation}

.main-content{isolation:isolate}
.page-feedback:empty{display:none}
.page-feedback .alert{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 10px;align-items:start;animation:nasq-feedback-in .2s ease both;animation-delay:var(--alert-delay,0ms)}
.page-feedback .alert strong{grid-row:1/3}
.page-feedback .alert span{line-height:1.7}
@keyframes nasq-feedback-in{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}

.nasq-scroll-region{position:relative;scrollbar-width:thin;scrollbar-color:#a9c7c7 transparent}
.nasq-scroll-region.is-scrollable{box-shadow:inset 10px 0 14px -15px rgba(18,59,74,.45),inset -10px 0 14px -15px rgba(18,59,74,.45)}
.nasq-scroll-region.is-scrollable:focus-visible{outline-offset:1px}
.nasq-scroll-region::-webkit-scrollbar{height:9px;width:9px}
.nasq-scroll-region::-webkit-scrollbar-thumb{background:#b3c9ca;border-radius:999px;border:2px solid transparent;background-clip:padding-box}

.nasq-status-page{min-height:min(560px,65vh);display:grid;grid-template-columns:92px minmax(0,680px);align-content:center;justify-content:center;gap:24px;margin:10px auto 28px;padding:42px;border:1px solid var(--border);border-radius:24px;background:radial-gradient(circle at 88% 10%,rgba(24,169,153,.1),transparent 34%),#fff;box-shadow:var(--shadow)}
.nasq-status-symbol{width:84px;height:84px;border-radius:24px;display:grid;place-items:center;background:#eef8f6;color:var(--nasq-turquoise)}
.nasq-status-symbol.warning{background:#fff7df;color:#946814}
.nasq-status-symbol.danger{background:#fff0f2;color:var(--danger)}
.nasq-status-symbol .nasq-icon{width:38px;height:38px;stroke-width:1.65}
.nasq-status-copy{align-self:center}
.nasq-status-eyebrow{display:inline-flex;margin-bottom:8px;padding:6px 10px;border-radius:999px;background:#eef6f5;color:#547278;font-size:10px;font-weight:900}
.nasq-status-copy h2{margin:0 0 10px;color:var(--nasq-petrol);font-size:25px}
.nasq-status-copy>p{max-width:640px;margin:0;color:var(--muted);line-height:1.9}
.nasq-status-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:23px}
.nasq-status-actions .btn{gap:8px}.nasq-status-actions .nasq-icon{width:18px;height:18px}
.nasq-request-reference{display:grid;grid-template-columns:auto minmax(0,1fr) 40px;align-items:center;gap:10px;margin-top:18px;padding:10px 12px;border:1px solid #dce7e8;border-radius:13px;background:#f8fbfb}
.nasq-request-reference span{color:var(--muted);font-size:10px;font-weight:800}.nasq-request-reference code{direction:ltr;text-align:left;overflow:auto;color:var(--nasq-petrol)}

/* Tablet widths: keep task surfaces readable before the mobile breakpoint. */
@media(max-width:1180px){
  .metrics-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .systems-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .two-columns,.subscription-details-layout{grid-template-columns:1fr}
  .sticky-panel{position:static!important}
  .main-content{padding-inline:24px}
}

@media(max-width:900px){
  html{scroll-padding-top:92px}
  .main-content{padding-inline:max(16px,env(safe-area-inset-left));padding-bottom:max(22px,env(safe-area-inset-bottom))}
  .topbar{position:sticky;z-index:800;top:0;min-height:84px;margin-inline:-16px;margin-bottom:18px;padding:13px 16px;background:rgba(244,247,248,.94);backdrop-filter:blur(13px);border-bottom-color:#d7e3e5}
  .topbar-title-group{align-items:flex-start}.topbar-copy{padding-top:1px}.topbar h1{font-size:22px;margin-bottom:4px}.topbar p{font-size:11px;line-height:1.55}
  .mobile-menu-button{min-width:44px;min-height:44px;flex:0 0 44px}.mobile-brand-icon{margin-top:4px}
  .sidebar{padding-top:max(18px,env(safe-area-inset-top));padding-bottom:max(18px,env(safe-area-inset-bottom))}
  .page-actions,.panel-header{gap:12px}
  .panel-header{flex-wrap:wrap}.panel-header>.btn,.panel-header>.action-group,.panel-header>.action-cluster{max-width:100%}
  .form-grid{grid-template-columns:1fr}.field.wide,.form-grid>.wide{grid-column:auto}
  .hero-card{align-items:flex-start;gap:20px}.readiness-ring{width:100px;height:100px}
  .record-card{align-items:flex-start}.record-meta{align-items:flex-start;text-align:right}
}

@media(max-width:720px){
  .metrics-grid,.systems-grid{grid-template-columns:1fr}
  .hero-card{display:grid;padding:22px;border-radius:18px}.readiness-ring{justify-self:start}
  .panel,.form-card{border-radius:15px;padding:17px}.form-experience{padding:0}.form-section{padding:19px 16px}.form-actions.nasq-form-actions{padding:14px 16px}
  .page-actions,.filter-bar,.action-group,.action-cluster,.form-actions{width:100%}
  .filter-bar{display:grid;grid-template-columns:1fr}.filter-bar input,.filter-bar select{width:100%;min-width:0}
  .page-actions>.btn,.page-actions>a.btn,.page-actions>form,.form-actions>.btn,.form-actions>a.btn,.form-actions>form{width:100%}
  .form-actions{display:grid;grid-template-columns:1fr}.form-actions form .btn{width:100%}
  .record-card{display:grid;grid-template-columns:auto minmax(0,1fr)}.record-meta{grid-column:1/-1;width:100%;padding-top:8px;border-top:1px solid var(--border)}
  .status-list>div{display:grid;grid-template-columns:1fr}.status-list dd{text-align:right}
  .nasq-status-page{min-height:0;grid-template-columns:1fr;justify-items:center;text-align:center;padding:30px 18px;border-radius:19px}
  .nasq-status-symbol{width:72px;height:72px;border-radius:21px}.nasq-status-symbol .nasq-icon{width:32px;height:32px}
  .nasq-status-copy h2{font-size:22px}.nasq-status-actions{display:grid;grid-template-columns:1fr;width:100%}.nasq-status-actions .btn{width:100%}
  .nasq-request-reference{grid-template-columns:1fr 40px;text-align:right}.nasq-request-reference>span{grid-column:1/-1}.nasq-request-reference code{min-width:0}
  .table-responsive-cards tbody{padding:10px}.table-responsive-cards td{grid-template-columns:minmax(82px,32%) minmax(0,1fr);padding:10px 11px}
  .nasq-footer{text-align:center;align-items:center}
}

@media(max-width:480px){
  .main-content{padding-inline:10px}.topbar{margin-inline:-10px;padding-inline:10px}.topbar p{display:none}.mobile-brand-icon{display:none}
  .topbar-title-group{gap:9px}.topbar h1{font-size:19px;line-height:1.4}
  .panel,.form-card,.nasq-table-shell{border-radius:13px}.panel{padding:15px}.panel-header h3{font-size:15px}
  .btn{min-height:44px;padding-inline:13px}.icon-btn,.table-action-link{min-height:42px}
  .form-section-header{grid-template-columns:36px minmax(0,1fr);gap:10px}.form-section-index{width:36px;height:36px;border-radius:11px}
  .table-responsive-cards td{grid-template-columns:1fr;gap:4px}.table-responsive-cards td::before{font-size:9px}.table-responsive-cards td[data-label=""]{grid-template-columns:1fr}
  .nasq-toast-region{bottom:max(10px,env(safe-area-inset-bottom))}
}

@media(hover:none) and (pointer:coarse){
  .btn,.icon-btn,.table-action-link,.copy-button,.mobile-menu-button,.sidebar-collapse-button,.sidebar-logout{min-height:44px}
  .nav-group>summary,.sidebar nav .nav-link{min-height:48px}
  .metric-card:hover{transform:none;box-shadow:0 5px 18px rgba(26,50,75,.04)}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}

@media(forced-colors:active){
  :root{--border:CanvasText}
  .sidebar,.hero-card,.nasq-login-promo{background:Canvas;color:CanvasText;border:1px solid CanvasText}
  .btn,.icon-btn,.table-action-link,.pill,.role-badge,.nav-link{border:1px solid ButtonText}
  .sidebar nav .nav-link.active{outline:2px solid Highlight;box-shadow:none}
  .nasq-status-symbol,.metric-icon,.record-icon,.empty-state-icon{border:1px solid CanvasText}
}

@media print{
  @page{size:A4;margin:14mm}
  html,body{background:#fff!important;color:#000!important;font-family:Arial,sans-serif}
  .app-shell{display:block}.sidebar,.sidebar-backdrop,.topbar,.nasq-footer,.page-actions,.data-toolbar-controls,.form-actions,.row-actions,.table-actions,.btn,.icon-btn,.copy-button,.nasq-toast-region,.ux-dialog{display:none!important}
  .main-content{padding:0!important}.panel,.form-card,.table-card,.nasq-table-shell,.hero-card,.nasq-status-page{box-shadow:none!important;border:1px solid #bbb!important;background:#fff!important;color:#000!important;break-inside:avoid}
  .table-wrap,.table-card,.nasq-scroll-region{overflow:visible!important}.table-responsive-cards table{display:table!important;min-width:0!important}.table-responsive-cards thead{display:table-header-group!important}.table-responsive-cards tbody{display:table-row-group!important;padding:0!important}.table-responsive-cards tr{display:table-row!important;box-shadow:none!important;border:0!important}.table-responsive-cards td{display:table-cell!important;border-bottom:1px solid #ddd!important}.table-responsive-cards td::before{display:none!important}
  a{color:#000!important;text-decoration:none!important}.pill{border:1px solid #999!important;background:#fff!important;color:#000!important}
}


/* Nasq V0.9.2.5 — Phase 6 responsive sidebar and login layout correction */
.sidebar,.nasq-navigation,.nav-group,.nav-group-links,.sidebar nav .nav-link{min-width:0}
.sidebar{overscroll-behavior:contain;scrollbar-gutter:stable}
.sidebar nav .nav-link{width:100%;overflow:hidden}
.sidebar nav .nav-link>.nav-label,
.sidebar nav a>.nav-label{
  width:auto;
  min-width:0;
  max-width:none;
  flex:1 1 auto;
  display:block;
  text-align:right;
  font-size:13px;
  line-height:1.55;
  white-space:normal;
  overflow:visible;
  text-overflow:clip;
  overflow-wrap:anywhere;
}
.nav-group>summary>span:first-child{
  min-width:0;
  flex:1 1 auto;
  text-align:right;
  white-space:normal;
  line-height:1.55;
  overflow-wrap:anywhere;
}
.sidebar-mobile-close{
  display:none;
  width:40px;
  height:40px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:11px;
  background:rgba(255,255,255,.07);
  color:#fff;
  align-items:center;
  justify-content:center;
  cursor:pointer;
}
.sidebar-mobile-close span{display:block;font-size:26px;font-weight:300;line-height:1;transform:translateY(-1px)}

.identity-entry-page{
  min-width:320px;
  overflow-x:hidden;
  overflow-y:auto;
  place-items:start center;
}
.nasq-login-shell{
  width:min(1120px,calc(100vw - clamp(24px,5vw,64px)));
  max-width:100%;
  min-width:0;
  min-height:min(660px,calc(100dvh - clamp(24px,5vw,64px)));
  margin-block:auto;
}
.nasq-login-card,.nasq-login-promo,.nasq-promo-copy,.nasq-request-box{min-width:0}
.nasq-login-brand{width:100%;justify-content:flex-start}
.nasq-login-brand img{width:clamp(210px,22vw,286px);max-width:100%}
.nasq-promo-brand{min-width:0;flex-wrap:wrap}
.nasq-promo-brand span,.nasq-promo-copy h2,.nasq-promo-copy p{overflow-wrap:anywhere}
.nasq-promo-copy h2{text-wrap:balance}
.nasq-login-promo{min-height:0}

@media(max-width:1100px){
  .nasq-login-shell{grid-template-columns:minmax(0,1fr);max-width:720px;min-height:0}
  .nasq-login-card{order:1}
  .nasq-login-promo{order:2;min-height:0}
}

@media(max-width:900px){
  .sidebar{
    width:min(340px,calc(100vw - 20px));
    max-width:100%;
    padding:18px 15px max(18px,env(safe-area-inset-bottom));
    overflow-x:hidden;
  }
  .nasq-sidebar-brand{position:relative;grid-template-columns:minmax(0,1fr) 40px;align-items:start;padding-inline:7px}
  .nasq-sidebar-logo{width:min(218px,100%);grid-column:1;grid-row:1;justify-self:start}
  .sidebar-role-label{grid-column:1/-1;grid-row:2}
  .sidebar-mobile-close{display:inline-flex;grid-column:2;grid-row:1;justify-self:end}
  .sidebar nav .nav-link,
  body.sidebar-collapsed .sidebar nav .nav-link{justify-content:flex-start;align-items:center;gap:11px;padding:8px 10px}
  .sidebar nav .nav-icon,
  body.sidebar-collapsed .sidebar nav .nav-icon{width:34px;height:34px;flex:0 0 34px}
  .sidebar nav .nav-link>.nav-label,
  body.sidebar-collapsed .sidebar nav .nav-link>.nav-label{display:block;font-size:13px;line-height:1.55}
  .nav-group>summary{font-size:13px;min-height:48px;padding:10px 12px}
  .nav-group-links{padding:2px 7px 8px;gap:3px}
  .nav-group-links .nav-link{min-height:46px}
}

@media(min-width:1101px) and (max-height:760px){
  .identity-entry-page{padding-block:16px}
  .nasq-login-shell{margin-block:0;min-height:0}
  .nasq-login-card{padding-block:30px}
  .nasq-login-promo{padding-block:30px}
  .nasq-login-card .identity-heading{margin-block:15px 18px}
  .nasq-promo-copy{margin-block:24px}
  .nasq-promo-copy h2{font-size:27px}
}

@media(max-width:620px){
  .identity-entry-page{padding:10px}
  .nasq-login-shell{width:100%;border-radius:18px}
  .nasq-login-card{padding:24px 18px}
  .nasq-login-brand img{width:min(235px,100%)}
  .nasq-login-card .identity-heading{margin:17px 0 20px}
  .nasq-login-card .identity-heading h1{font-size:27px;line-height:1.4}
  .nasq-login-promo{padding:24px 18px}
  .nasq-promo-brand img{width:40px;height:40px}
  .nasq-promo-brand span{font-size:14px}
  .nasq-promo-copy{margin:22px 0}
  .nasq-promo-copy h2{font-size:23px;line-height:1.5}
}

@media(max-width:380px){
  .sidebar{width:calc(100vw - 12px);padding-inline:12px}
  .nasq-sidebar-brand{grid-template-columns:minmax(0,1fr) 38px;padding-inline:4px}
  .sidebar nav .nav-link,
  body.sidebar-collapsed .sidebar nav .nav-link{gap:9px;padding-inline:8px}
  .sidebar nav .nav-icon,
  body.sidebar-collapsed .sidebar nav .nav-icon{width:32px;height:32px;flex-basis:32px}
  .sidebar nav .nav-link>.nav-label{font-size:12.5px}
  .nav-group>summary{padding-inline:10px}
  .nasq-login-card{padding-inline:16px}
}

/* Nasq V0.9.2.6 — Visual consistency, product identity and credential center */
.product-identity{width:56px;height:56px;display:grid;place-items:center;flex:0 0 56px;border-radius:17px;overflow:hidden;box-shadow:0 8px 20px rgba(18,59,74,.12)}
.product-identity img{display:block;width:100%;height:100%;object-fit:contain}
.system-head .product-identity{margin-inline-end:2px}
.system-title-copy{min-width:0;flex:1}.system-title-copy h3{font-size:18px}.system-title-copy code{display:inline-block;margin-top:2px;color:var(--muted);background:#f4f7f8;padding:3px 7px;border-radius:7px;font-size:10px}
.product-systems-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.product-system-card{position:relative;display:flex;flex-direction:column;gap:16px;padding:22px;overflow:hidden}
.product-system-card:before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:linear-gradient(90deg,var(--nasq-turquoise),var(--nasq-gold))}
.product-system-card.unavailable{background:#fbfcfc}.product-system-card.unavailable .product-identity{filter:grayscale(.25);opacity:.78}
.system-access-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}
.system-access-details>div{padding:12px;border:1px solid #e4ecee;border-radius:12px;background:#f8fbfb}
.system-access-details dt{font-size:10px;color:var(--muted);margin-bottom:4px}.system-access-details dd{margin:0;font-weight:800;color:var(--nasq-petrol)}
.system-decision-text{margin:0;color:var(--muted);line-height:1.75;min-height:44px}
.portal-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px;padding:14px 16px;background:#fff;border:1px solid var(--border);border-radius:16px}
.portal-toolbar .portal-context-chip{margin:0}.portal-security-note{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px}.portal-security-note .nasq-icon{width:18px;height:18px;color:var(--nasq-turquoise)}

.entitlement-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.entitlement-product-card{display:grid!important;grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px!important;border:1px solid var(--border);border-radius:16px;background:#fff;min-height:88px}
.entitlement-product-card .product-identity{width:56px;height:56px}
.entitlement-product-copy{min-width:0}.entitlement-product-copy strong,.entitlement-product-copy small{display:block}.entitlement-product-copy strong{font-size:17px;color:var(--nasq-petrol)}.entitlement-product-copy small{margin-top:5px;color:var(--muted)}
.plan-product-choice .product-identity{width:48px;height:48px;flex-basis:48px}

.filter-workspace{display:grid;grid-template-columns:minmax(230px,.75fr) minmax(0,1.65fr);gap:18px;background:#fff;border:1px solid var(--border);border-radius:20px;padding:20px;margin-bottom:20px;box-shadow:0 8px 24px rgba(18,59,74,.05)}
.filter-workspace-copy{display:flex;align-items:flex-start;gap:12px;padding-inline-end:18px;border-inline-end:1px solid var(--border)}
.filter-workspace-copy h2{margin:0 0 5px;font-size:17px;color:var(--nasq-petrol)}.filter-workspace-copy p{margin:0;color:var(--muted);font-size:12px;line-height:1.7}
.filter-workspace-icon{width:44px;height:44px;border-radius:13px;background:var(--nasq-turquoise-soft);color:var(--nasq-turquoise-dark);display:grid;place-items:center;flex:0 0 44px}.filter-workspace-icon .nasq-icon{width:22px;height:22px}
.filter-workspace-form{display:grid;grid-template-columns:minmax(240px,1.5fr) minmax(180px,.8fr) auto;gap:10px;align-items:end}
.filter-control{display:grid;gap:6px}.filter-control label{font-size:11px;font-weight:800;color:var(--muted)}.filter-control select{width:100%;min-height:46px;border:1px solid #cbd8dc;border-radius:12px;padding:10px 12px;background:#fff;color:var(--ink);font:inherit}
.filter-workspace-actions{display:flex;gap:8px;align-items:center}.filter-workspace-actions .btn{white-space:nowrap}.filter-workspace-actions .nasq-icon{width:17px;height:17px}
.filter-workspace-footer{grid-column:1/-1;border-top:1px solid var(--border);padding-top:13px;display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:12px}

.credential-center-intro{display:grid;grid-template-columns:58px minmax(0,1fr);gap:16px;align-items:start;padding:20px 22px;border:1px solid #e8d6a3;background:linear-gradient(135deg,#fff9e8,#fffdf7);border-radius:20px;margin-bottom:16px}
.credential-center-intro-icon{width:58px;height:58px;border-radius:17px;background:#fff3c9;color:#8b6412;display:grid;place-items:center}.credential-center-intro-icon .nasq-icon{width:29px;height:29px}
.credential-center-intro h2{margin:7px 0 5px;font-size:19px;color:var(--nasq-petrol)}.credential-center-intro p{margin:0;color:#6e5a2b;line-height:1.8;font-size:13px}
.credential-command-center{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(0,1.5fr);gap:18px;align-items:center;background:#fff;border:1px solid var(--border);border-radius:20px;padding:20px;margin-bottom:16px}
.credential-command-copy h2{margin:4px 0 6px;font-size:18px}.credential-command-copy p{margin:0;color:var(--muted);font-size:12px;line-height:1.7}
.credential-command-actions{display:flex;justify-content:flex-end;gap:9px;flex-wrap:wrap}.credential-command-actions form{margin:0}.credential-command-actions .nasq-icon{width:18px;height:18px}
.credential-toolbar{display:flex;justify-content:space-between;align-items:end;gap:18px;background:#fff;border:1px solid var(--border);border-radius:18px;padding:16px 18px;margin-bottom:12px}
.credential-search{display:grid;gap:7px;flex:1}.credential-search>label{font-size:11px;font-weight:800;color:var(--muted)}.credential-search-row{display:flex;gap:8px}.credential-search-row .nasq-search-field{flex:1;min-width:280px}
.credential-toolbar-summary{display:flex;align-items:center;gap:9px;padding:9px 13px;border-radius:13px;background:#f5f9f9}.credential-toolbar-summary div{display:grid}.credential-toolbar-summary small{color:var(--muted);font-size:10px}.credential-toolbar-summary strong{font-size:20px;color:var(--nasq-petrol)}
.credential-selection-bar{display:flex!important;align-items:center;gap:14px;margin-bottom:14px}.credential-select-all{display:flex;align-items:center;gap:8px;font-weight:800}.credential-select-all input{width:18px;height:18px;accent-color:var(--nasq-turquoise)}
.credential-account-list{display:grid;gap:15px}
.credential-account-card{background:#fff;border:1px solid var(--border);border-radius:20px;overflow:hidden;box-shadow:0 8px 26px rgba(18,59,74,.055)}
.credential-account-header{display:grid;grid-template-columns:auto 48px minmax(0,1fr) auto;gap:12px;align-items:center;padding:17px 19px;border-bottom:1px solid var(--border);background:#fbfdfd}
.credential-account-check{position:relative;width:22px;height:22px}.credential-account-check input{position:absolute;opacity:0}.credential-account-check span{display:block;width:22px;height:22px;border:2px solid #b9c9ce;border-radius:7px;background:#fff}.credential-account-check input:checked+span{background:var(--nasq-turquoise);border-color:var(--nasq-turquoise)}.credential-account-check input:checked+span:after{content:"✓";display:grid;place-items:center;height:100%;color:#fff;font-weight:900}
.credential-avatar{width:48px;height:48px;border-radius:15px;background:linear-gradient(135deg,var(--nasq-petrol),#246474);color:#fff;display:grid;place-items:center;font-size:20px;font-weight:900}
.credential-account-title h3{margin:0 0 5px;color:var(--nasq-petrol);font-size:17px}.credential-account-meta{display:flex;gap:8px;flex-wrap:wrap;color:var(--muted);font-size:10px}.credential-account-meta span:not(:last-child):after{content:"•";margin-inline-start:8px;color:#a7b4b9}
.credential-account-body{display:grid;grid-template-columns:1.05fr 1.25fr .7fr;gap:0}
.credential-card-section{padding:18px;border-inline-start:1px solid var(--border);min-width:0}.credential-card-section:first-child{border-inline-start:0}
.credential-section-heading{display:flex;gap:10px;align-items:flex-start;margin-bottom:14px}.credential-section-heading>span{width:36px;height:36px;border-radius:11px;background:#eaf6f4;color:var(--nasq-turquoise-dark);display:grid;place-items:center;flex:0 0 36px}.credential-section-heading .nasq-icon{width:19px;height:19px}.credential-section-heading h4{margin:0 0 3px;font-size:14px}.credential-section-heading p{margin:0;color:var(--muted);font-size:10px;line-height:1.6}
.credential-field-block{display:grid;gap:6px;margin-bottom:11px}.credential-field-block>label{font-size:10px;font-weight:800;color:var(--muted)}.credential-field-block small{color:var(--muted);font-size:10px}.credential-field-block input{width:100%;min-height:42px;border:1px solid #cbd8dc;border-radius:10px;padding:9px 11px;background:#fff;color:var(--ink);font:inherit}
.credential-preference-form{min-width:0}.credential-consent-row{padding:8px 0}.delivery-status-card{display:grid;gap:8px;align-content:start}.delivery-status-card strong{font-size:12px}.delivery-status-card small{color:var(--muted);font-size:11px}
.credential-account-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;padding:14px 18px;border-top:1px solid var(--border);background:#fafcfc}.credential-account-actions form{margin:0}.credential-account-actions .nasq-icon{width:17px;height:17px}
.credentials-table{min-width:0}

.nasq-login-brand img{height:auto!important;max-height:90px;object-fit:contain;object-position:right center}.nasq-login-brand{overflow:visible!important;min-height:76px}.identity-brand.nasq-login-brand{align-items:center}

@media(max-width:1100px){.product-systems-grid{grid-template-columns:1fr}.credential-account-body{grid-template-columns:1fr 1fr}.delivery-section{grid-column:1/-1;border-top:1px solid var(--border);border-inline-start:0}.filter-workspace{grid-template-columns:1fr}.filter-workspace-copy{border-inline-end:0;border-bottom:1px solid var(--border);padding:0 0 15px}.filter-workspace-form{grid-template-columns:minmax(0,1fr) minmax(180px,.55fr) auto}.credential-command-center{grid-template-columns:1fr}.credential-command-actions{justify-content:flex-start}}
@media(max-width:760px){.entitlement-product-grid{grid-template-columns:1fr}.entitlement-product-card{grid-template-columns:50px minmax(0,1fr) auto}.entitlement-product-card .product-identity{width:50px;height:50px}.filter-workspace-form{grid-template-columns:1fr}.filter-workspace-actions{display:grid;grid-template-columns:1fr 1fr}.filter-workspace-actions .btn{width:100%}.filter-workspace-footer{align-items:flex-start;flex-direction:column;gap:8px}.portal-toolbar{align-items:stretch;flex-direction:column}.portal-security-note{align-items:flex-start}.system-access-details{grid-template-columns:1fr 1fr}.credential-toolbar{align-items:stretch;flex-direction:column}.credential-search-row{display:grid;grid-template-columns:1fr 1fr}.credential-search-row .nasq-search-field{grid-column:1/-1;min-width:0}.credential-toolbar-summary{align-self:flex-start}.credential-selection-bar{align-items:flex-start!important;flex-direction:column}.credential-account-body{grid-template-columns:1fr}.credential-card-section,.credential-card-section:first-child{border-inline-start:0;border-top:1px solid var(--border)}.credential-card-section:first-child{border-top:0}.delivery-section{grid-column:auto}.credential-account-actions{display:grid;grid-template-columns:1fr}.credential-account-actions form,.credential-account-actions .btn{width:100%}.credential-command-actions{display:grid;grid-template-columns:1fr}.credential-command-actions form,.credential-command-actions .btn{width:100%}}
@media(max-width:480px){.credential-center-intro{grid-template-columns:1fr}.credential-center-intro-icon{width:48px;height:48px}.credential-account-header{grid-template-columns:auto 42px minmax(0,1fr)}.credential-account-header>.pill{grid-column:3;justify-self:start}.credential-avatar{width:42px;height:42px}.credential-account-meta{display:grid;gap:2px}.credential-account-meta span:after{display:none}.system-head{align-items:flex-start;flex-wrap:wrap}.system-head>.pill{margin-inline-start:auto}.product-identity{width:50px;height:50px;flex-basis:50px}.system-access-details{grid-template-columns:1fr}.filter-workspace-actions{grid-template-columns:1fr}.credential-search-row{grid-template-columns:1fr}.credential-search-row .nasq-search-field{grid-column:auto}}

/* Nasq V0.9.3.0 — Central AI governance */
.ai-page-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:24px}.ai-page-heading>div:first-child{max-width:820px}.ai-page-heading .eyebrow{display:inline-block;margin-bottom:8px;color:var(--nasq-turquoise-dark);font-weight:800;font-size:12px}.ai-page-heading p{max-width:780px}
.ai-provider-state{display:flex;align-items:center;gap:11px;min-width:260px;padding:13px 16px;border:1px solid var(--border);border-radius:16px;background:#fff}.ai-provider-state .status-dot{width:12px;height:12px;border-radius:50%;background:#b7c2c6;box-shadow:0 0 0 5px #eef2f3}.ai-provider-state.is-ready .status-dot{background:var(--nasq-turquoise);box-shadow:0 0 0 5px var(--nasq-turquoise-soft)}.ai-provider-state div{display:grid;gap:3px}.ai-provider-state strong{font-size:13px}.ai-provider-state small{font-size:10px;color:var(--muted);line-height:1.5}
.ai-metrics-grid{display:grid;grid-template-columns:repeat(7,minmax(130px,1fr));gap:12px;margin-bottom:18px}.ai-metrics-grid article{display:grid;gap:8px;background:#fff;border:1px solid var(--border);border-radius:16px;padding:16px;box-shadow:0 6px 20px rgba(18,59,74,.045)}.ai-metrics-grid small{color:var(--muted);font-size:10px}.ai-metrics-grid strong{font-size:21px;color:var(--nasq-petrol)}.ai-cost-card{background:linear-gradient(135deg,#fff9e9,#fff)!important;border-color:#e8d7a5!important}
.ai-settings-panel{margin-bottom:18px}.ai-settings-form{display:grid;gap:18px}.ai-switches{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.check-card{display:flex;gap:10px;align-items:flex-start;padding:14px;border:1px solid var(--border);border-radius:14px;background:#fbfdfd;cursor:pointer}.check-card input{width:18px;height:18px;accent-color:var(--nasq-turquoise);margin-top:2px}.check-card span{display:grid;gap:4px}.check-card strong{font-size:12px}.check-card small{font-size:10px;line-height:1.6;color:var(--muted)}.check-card.is-disabled{opacity:.58;cursor:not-allowed}
.form-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.form-span-3{grid-column:span 3}.form-span-2{grid-column:span 2}.ai-admin-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}.stack-form{display:grid;gap:14px}.stack-form>label,.ai-settings-form label{display:grid;gap:6px}.stack-form label>span,.ai-settings-form label>span{font-size:11px;font-weight:800;color:var(--muted)}.check-row{display:flex!important;grid-template-columns:auto 1fr;align-items:center;gap:9px}.check-row input{width:18px;height:18px;accent-color:var(--nasq-turquoise)}
.ai-operations-table table{min-width:1320px}.ai-operations-table td{vertical-align:top}.ai-operations-table td>span,.ai-operations-table td>strong,.ai-operations-table td>small{display:block}.ai-operations-table td>small{margin-top:5px;color:var(--muted);font-size:10px;max-width:260px;line-height:1.5}.ai-operations-table .text-danger{color:#a43a47}.ai-status-succeeded{background:#e6f6ed;color:#17643d}.ai-status-failed{background:#fdebed;color:#9a3340}.ai-status-localfallbackprovided{background:#fff3d7;color:#795913}.ai-status-inprogress,.ai-status-authorized{background:#e8f5f4;color:#0b6d66}.ai-status-permitexpired{background:#eef1f2;color:#59686e}
.compact-list{display:grid;gap:8px}.compact-list article{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:12px;border:1px solid var(--border);border-radius:13px;background:#fbfdfd}.compact-list article>div{display:grid;gap:3px}.compact-list strong{font-size:12px}.compact-list small{font-size:10px;color:var(--muted);line-height:1.5}.compact-list form{margin:0}.btn-small{min-height:34px;padding:7px 11px;font-size:11px}
@media(max-width:1380px){.ai-metrics-grid{grid-template-columns:repeat(4,minmax(140px,1fr))}.ai-switches{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}.form-span-3{grid-column:span 1}}
@media(max-width:900px){.ai-page-heading{flex-direction:column}.ai-provider-state{width:100%}.ai-admin-columns{grid-template-columns:1fr}.ai-metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.ai-metrics-grid,.ai-switches,.form-grid-4{grid-template-columns:1fr}.form-span-2,.form-span-3{grid-column:auto}.compact-list article{grid-template-columns:minmax(0,1fr) auto}.compact-list article form{grid-column:1/-1}.compact-list article form .btn{width:100%}}

/* Nasq V0.9.4.0 — Unified Smart Support & Return Navigation Hub */
.topbar-support-link{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border:1px solid var(--border);border-radius:12px;background:#fff;color:var(--nasq-petrol);font-size:12px;font-weight:800;text-decoration:none}.topbar-support-link .nasq-icon{width:18px;height:18px;color:var(--nasq-turquoise)}
.support-fab{position:fixed;left:max(26px,env(safe-area-inset-left));right:auto;bottom:calc(92px + env(safe-area-inset-bottom));z-index:45;display:inline-flex;align-items:center;gap:8px;padding:12px 16px;border-radius:999px;background:var(--nasq-petrol);color:#fff;text-decoration:none;font-weight:900;box-shadow:0 14px 34px rgba(18,59,74,.28)}.support-fab .nasq-icon{width:21px;height:21px;color:#fff}.support-fab:hover{transform:translateY(-2px);background:#0c303c}
.support-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px 28px;margin-bottom:20px;border-radius:22px;background:linear-gradient(135deg,#123b4a,#18576a);color:#fff;box-shadow:0 14px 36px rgba(18,59,74,.16);overflow:hidden;position:relative}.support-hero:after{content:"";position:absolute;width:230px;height:230px;border-radius:50%;background:rgba(24,169,153,.2);inset-inline-start:-70px;inset-block-start:-120px}.support-hero>div,.support-hero>a{position:relative;z-index:1}.support-hero h2{margin:6px 0 8px;font-size:28px}.support-hero p{margin:0;max-width:760px;line-height:1.8;color:rgba(255,255,255,.84)}.support-hero .section-kicker{color:#8ce3d7}.support-new-button .nasq-icon{width:20px;height:20px}
.support-metrics{grid-template-columns:repeat(5,minmax(0,1fr));margin-bottom:20px}.support-metrics .metric-card{min-height:105px}.support-metrics .metric-card strong{font-size:27px}
.support-filter-panel{padding:16px 18px}.support-filter-form{display:grid;grid-template-columns:minmax(260px,1.6fr) minmax(160px,.7fr) minmax(170px,.7fr) auto;gap:12px;align-items:end}.support-filter-form label{display:grid;gap:6px}.support-filter-form label>span{font-size:11px;color:var(--muted);font-weight:800}.support-filter-actions{display:flex;gap:8px;align-items:center}.result-count{padding:6px 10px;border-radius:999px;background:#eff7f7;color:var(--nasq-petrol);font-size:11px;font-weight:900}
.support-ticket-list{display:grid;gap:12px}.support-ticket-card{display:grid;grid-template-columns:minmax(210px,.75fr) minmax(0,1.5fr) minmax(160px,.45fr);gap:18px;align-items:center;padding:17px 18px;border:1px solid var(--border);border-inline-start:4px solid #9aa9ae;border-radius:17px;background:#fff;color:inherit;text-decoration:none;transition:.18s ease}.support-ticket-card:hover{transform:translateY(-2px);box-shadow:0 10px 25px rgba(18,59,74,.08);border-color:#b9d7d5}.support-ticket-card.severity-medium{border-inline-start-color:#c9a24a}.support-ticket-card.severity-high{border-inline-start-color:#db7b38}.support-ticket-card.severity-critical{border-inline-start-color:#b83d4b}.support-ticket-leading{display:flex;align-items:center;gap:12px;min-width:0}.support-system-mark{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(145deg,#f7fbfb,#edf5f4);border:1px solid #d6e5e3;color:var(--nasq-petrol);flex:0 0 48px;overflow:hidden}.support-system-mark>.nasq-icon{width:24px;height:24px}.support-system-mark>.product-identity{width:100%;height:100%;display:grid;place-items:center;padding:7px}.support-system-mark>.product-identity img{display:block;width:100%;height:100%;max-width:34px;max-height:34px;object-fit:contain}.support-ticket-leading strong,.support-ticket-leading small{display:block}.support-ticket-leading small{margin-top:4px;color:var(--muted);font-size:11px}.support-ticket-summary{min-width:0}.support-ticket-summary>strong{font-size:13px;color:var(--nasq-petrol)}.support-ticket-summary p{margin:5px 0;line-height:1.6;color:#425d67;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.support-ticket-summary small{color:var(--muted)}.support-ticket-state{display:grid;justify-items:start;gap:6px}.severity-label,.similar-indicator{font-size:10px;color:var(--muted)}.similar-indicator{color:#8d6d18;font-weight:800}.support-empty .nasq-icon{width:40px;height:40px;color:var(--nasq-turquoise)}
.support-guidance-banner{display:flex;align-items:center;gap:15px;padding:18px 20px;margin-bottom:18px;border:1px solid #cce9e6;border-radius:18px;background:#f1fbfa}.support-guidance-icon{width:48px;height:48px;border-radius:15px;background:var(--nasq-turquoise);color:#fff;display:grid;place-items:center;flex:0 0 48px}.support-guidance-icon .nasq-icon{width:25px;height:25px}.support-guidance-banner strong{display:block;color:var(--nasq-petrol);font-size:16px}.support-guidance-banner p{margin:4px 0 0;color:var(--muted);line-height:1.65;font-size:12px}
.support-wizard{position:relative;padding-bottom:82px}.support-step{display:none;padding:24px;border:1px solid var(--border);border-radius:20px;background:#fff;box-shadow:0 8px 24px rgba(18,59,74,.05)}.support-step.is-active{display:block}.support-step-heading{display:flex;gap:14px;align-items:flex-start;margin-bottom:22px}.support-step-heading>span{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:var(--nasq-petrol);color:#fff;font-size:18px;font-weight:900;flex:0 0 42px}.support-step-heading h2{margin:0 0 4px;color:var(--nasq-petrol);font-size:21px}.support-step-heading p{margin:0;color:var(--muted);font-size:12px;line-height:1.7}.support-step-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:22px}.support-category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.support-category-choice input{position:absolute;opacity:0;pointer-events:none}.support-category-choice>span{min-height:88px;display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--border);border-radius:15px;background:#fbfcfc;cursor:pointer;transition:.16s}.support-category-choice .nasq-icon{width:23px;height:23px;color:var(--nasq-turquoise);flex:0 0 23px}.support-category-choice strong{font-size:13px;line-height:1.5}.support-category-choice input:checked+span{border-color:var(--nasq-turquoise);background:#effaf8;box-shadow:0 0 0 2px rgba(24,169,153,.12)}.support-category-choice input:focus-visible+span{outline:3px solid rgba(24,169,153,.28);outline-offset:2px}.support-quick-actions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.support-quick-actions button{border:1px solid #d7e4e6;border-radius:999px;background:#fff;padding:8px 12px;color:var(--nasq-petrol);font:inherit;font-size:11px;font-weight:800;cursor:pointer}.support-quick-actions button:hover{border-color:var(--nasq-turquoise);background:#effaf8}.support-upload-zone{padding:16px;border:1px dashed #a9c8cc;border-radius:15px;background:#f8fbfb}.support-upload-zone input{background:#fff}.support-upload-zone small{display:block;margin-top:7px;color:var(--muted)}.support-context-preview{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:16px;padding:13px;border-radius:14px;background:#f3f7f8}.support-context-preview strong{color:var(--nasq-petrol);font-size:11px}.support-context-preview span{padding:5px 9px;border-radius:999px;background:#fff;border:1px solid #dce7e9;font-size:10px;color:var(--muted)}.support-progress{position:absolute;inset-inline:0;inset-block-end:0;display:grid;grid-template-columns:repeat(4,1fr);gap:5px;padding:10px;border:1px solid var(--border);border-radius:16px;background:#fff}.support-progress button{border:0;background:transparent;color:var(--muted);font:inherit;font-size:11px;font-weight:800;padding:7px;border-radius:11px;cursor:pointer}.support-progress button span{display:inline-grid;place-items:center;width:24px;height:24px;margin-inline-end:5px;border-radius:8px;background:#edf2f3}.support-progress button.is-active{color:var(--nasq-petrol);background:#effaf8}.support-progress button.is-active span{background:var(--nasq-turquoise);color:#fff}
.support-ticket-header{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:22px 25px;margin-bottom:18px;border:1px solid var(--border);border-inline-start:5px solid #9aa9ae;border-radius:20px;background:#fff}.support-ticket-header.severity-medium{border-inline-start-color:#c9a24a}.support-ticket-header.severity-high{border-inline-start-color:#db7b38}.support-ticket-header.severity-critical{border-inline-start-color:#b83d4b}.support-ticket-header h2{margin:4px 0;color:var(--nasq-petrol)}.support-ticket-header p{margin:0;color:var(--muted)}.support-ticket-badges{display:flex;flex-wrap:wrap;gap:7px;justify-content:flex-end}.support-diagnosis-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:18px;margin-bottom:18px}.diagnostic-confidence{padding:7px 10px;border-radius:999px;background:#effaf8;color:#087b70;font-size:11px;font-weight:900}.diagnostic-block{padding:13px 15px;margin-top:10px;border-radius:13px;background:#f7f9fa}.diagnostic-block strong{color:var(--nasq-petrol);font-size:12px}.diagnostic-block p{margin:5px 0 0;line-height:1.75;color:#425d67}.diagnostic-block.recommended{background:#effaf8;border:1px solid #cdece8}.similar-ticket-callout{display:flex;align-items:center;gap:9px;margin-top:13px;padding:11px 13px;border-radius:12px;background:#fff8e7;color:#75590e;text-decoration:none;font-weight:800;font-size:12px}.similar-ticket-callout .nasq-icon{width:18px;height:18px}.support-details-list{display:grid;gap:9px;margin:0}.support-details-list>div{padding:11px 12px;border:1px solid #e3ecee;border-radius:12px;background:#fafcfc}.support-details-list dt{font-size:10px;color:var(--muted);font-weight:800}.support-details-list dd{margin:4px 0 0;color:var(--nasq-petrol);font-weight:700;line-height:1.65;overflow-wrap:anywhere}.support-details-list.technical{grid-template-columns:repeat(2,minmax(0,1fr))}.support-details-list .wide{grid-column:1/-1}.ltr-text{direction:ltr;text-align:left;font-family:ui-monospace,Consolas,monospace;font-size:11px}.support-details-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:18px}.support-context-json{margin-top:13px;border:1px solid var(--border);border-radius:12px;overflow:hidden}.support-context-json summary{padding:11px 13px;cursor:pointer;font-weight:800;color:var(--nasq-petrol)}.support-context-json pre{margin:0;padding:13px;background:#102c36;color:#d8eeeb;direction:ltr;text-align:left;white-space:pre-wrap;overflow:auto;font-size:10px}.support-attachments{display:grid;gap:8px;margin-top:15px}.support-attachments>a{display:flex;align-items:center;gap:9px;padding:10px 12px;border:1px solid var(--border);border-radius:11px;text-decoration:none;color:var(--nasq-petrol)}.support-attachments .nasq-icon{width:18px;height:18px;color:var(--nasq-turquoise)}.support-attachments small{margin-inline-start:auto;color:var(--muted)}.support-timeline{display:grid;gap:0}.support-timeline article{display:grid;grid-template-columns:20px minmax(0,1fr);gap:10px;position:relative;padding-bottom:18px}.support-timeline article>span{width:11px;height:11px;border-radius:50%;background:var(--nasq-turquoise);margin-top:5px;position:relative;z-index:1}.support-timeline article:not(:last-child):before{content:"";position:absolute;inset-inline-start:5px;top:15px;bottom:0;width:1px;background:#d9e6e7}.support-timeline strong{font-size:12px;color:var(--nasq-petrol)}.support-timeline p{margin:4px 0;color:#4d646d;line-height:1.55}.support-timeline small{color:var(--muted);font-size:10px}.support-management-panel,.support-resolution{margin-bottom:18px}
.support-status-new{background:#eaf6ff;color:#17638a}.support-status-diagnosing,.support-status-inprogress{background:#fff5da;color:#806012}.support-status-waitingforuser{background:#f8ebff;color:#79469a}.support-status-resolved,.support-status-closed{background:#e9f8ef;color:#267045}.support-status-knownissue{background:#fff0e8;color:#98512c}
@media(max-width:1100px){.support-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.support-filter-form{grid-template-columns:repeat(2,minmax(0,1fr))}.support-ticket-card{grid-template-columns:minmax(190px,.7fr) minmax(0,1.3fr)}.support-ticket-state{grid-column:1/-1;display:flex;align-items:center;flex-wrap:wrap}.support-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.support-diagnosis-grid,.support-details-columns{grid-template-columns:1fr}}
@media(max-width:700px){.topbar-support-link span,.support-fab span{display:none}.support-fab{left:max(14px,env(safe-area-inset-left));right:auto;bottom:calc(76px + env(safe-area-inset-bottom));width:48px;height:48px;padding:0;justify-content:center}.support-hero{align-items:flex-start;flex-direction:column;padding:22px}.support-hero h2{font-size:23px}.support-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.support-filter-form{grid-template-columns:1fr}.support-filter-actions>*{flex:1}.support-ticket-card{grid-template-columns:1fr;padding:15px}.support-ticket-summary p{white-space:normal}.support-category-grid{grid-template-columns:1fr}.support-step{padding:19px 15px}.support-progress button{font-size:0}.support-progress button span{font-size:11px;margin:0}.support-ticket-header{align-items:flex-start;flex-direction:column;padding:18px}.support-ticket-badges{justify-content:flex-start}.support-details-list.technical{grid-template-columns:1fr}}

/* Nasq V0.9.4.2 — AI usage reliability and smart-support UX refinement */
.support-filter-panel{padding:0;overflow:hidden;background:linear-gradient(180deg,#fff,#fbfdfd)}
.support-filter-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:19px 21px;border-bottom:1px solid var(--border);background:linear-gradient(135deg,#f4fbfa,#fff)}
.support-filter-heading-main{display:flex;align-items:center;gap:13px;min-width:0}
.support-filter-heading-icon{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;flex:0 0 46px;background:var(--nasq-petrol);color:#fff;box-shadow:0 8px 18px rgba(18,59,74,.13)}
.support-filter-heading-icon .nasq-icon{width:23px;height:23px}
.support-filter-heading h2{margin:2px 0 3px;font-size:18px;color:var(--nasq-petrol)}
.support-filter-heading p{margin:0;color:var(--muted);font-size:11px;line-height:1.65}
.support-filter-heading .result-count{display:flex;align-items:baseline;gap:5px;white-space:nowrap;padding:8px 12px;background:#fff;border:1px solid #dbe8e8}
.support-filter-heading .result-count strong{font-size:16px;color:var(--nasq-petrol)}
.support-filter-form{grid-template-columns:minmax(280px,1.55fr) minmax(180px,.7fr) minmax(180px,.7fr) auto;gap:13px;padding:18px 21px 21px;align-items:end}
.support-filter-field{display:grid;gap:7px;min-width:0}
.support-filter-field>span:first-child{font-size:11px;color:var(--nasq-petrol);font-weight:900}
.support-input-with-icon,.support-select-with-icon{position:relative;display:flex!important;align-items:center;min-width:0;font-size:inherit!important;color:inherit!important;font-weight:inherit!important}
.support-input-with-icon>.nasq-icon,.support-select-with-icon>.nasq-icon{position:absolute;inset-inline-start:14px;width:19px;height:19px;color:#759097;pointer-events:none;z-index:1}
.support-input-with-icon input,.support-select-with-icon select{width:100%;min-width:0;min-height:50px;padding:11px 44px 11px 13px;border:1px solid #cbdadd;border-radius:14px;background:#fff;color:var(--ink);font:inherit;box-shadow:0 2px 7px rgba(18,59,74,.025);transition:border-color .16s,box-shadow .16s,background .16s}
.support-input-with-icon input::placeholder{color:#8a9ca2}
.support-input-with-icon input:focus,.support-select-with-icon select:focus{outline:0;border-color:var(--nasq-turquoise);box-shadow:0 0 0 3px rgba(24,169,153,.12);background:#fff}
.support-filter-actions{display:grid;grid-template-columns:max-content max-content;gap:8px;align-items:stretch}
.support-filter-actions .btn{min-height:50px;display:inline-flex;align-items:center;justify-content:center;gap:7px;white-space:nowrap;border-radius:14px}
.support-filter-actions .nasq-icon{width:18px;height:18px}
.support-filter-actions .is-muted{opacity:.58}
.active-filter-indicator{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:999px;background:#effaf8;color:#087b70;font-size:10px;font-weight:900}
.active-filter-indicator .nasq-icon{width:15px;height:15px}

.support-category-choice>span{min-height:96px;padding:13px;gap:11px}
.support-category-icon{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;flex:0 0 44px;background:#eaf6f4;color:var(--nasq-turquoise-dark);transition:.16s}
.support-category-icon .nasq-icon{width:23px;height:23px;color:currentColor}
.support-category-copy{display:grid;gap:4px;min-width:0}
.support-category-copy strong{font-size:12px;line-height:1.5;color:var(--nasq-petrol)}
.support-category-copy small{font-size:9.5px;line-height:1.55;color:var(--muted)}
.support-category-choice input:checked+span .support-category-icon{background:var(--nasq-turquoise);color:#fff;box-shadow:0 7px 16px rgba(24,169,153,.2)}

.support-quick-actions{padding:12px;border:1px solid #e1ebec;border-radius:16px;background:#f8fbfb}
.support-quick-actions button{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:8px 12px;background:#fff}
.support-quick-actions button .nasq-icon{width:16px;height:16px;color:var(--nasq-turquoise-dark)}
.support-quick-actions button.is-selected,.support-quick-actions button[aria-pressed="true"]{border-color:var(--nasq-turquoise);background:#eaf9f7;color:#087b70;box-shadow:0 0 0 2px rgba(24,169,153,.08)}
.support-story-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.support-story-field{display:grid;align-content:start;gap:11px;padding:16px;border:1px solid #dce8ea;border-radius:17px;background:#fbfdfd;min-width:0}
.support-story-field.is-primary{background:#fff;border-color:#cfdfe2;box-shadow:0 6px 18px rgba(18,59,74,.035)}
.support-story-label{display:flex;align-items:flex-start;gap:10px}
.support-story-label>span:last-child{display:grid;gap:3px;min-width:0}
.support-story-label strong{font-size:12px;color:var(--nasq-petrol)}
.support-story-label small{font-size:10px;line-height:1.55;color:var(--muted)}
.support-story-icon{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;flex:0 0 38px;background:#eaf6f4;color:var(--nasq-turquoise-dark)}
.support-story-icon.is-alert{background:#fff1e8;color:#b55b26}
.support-story-icon .nasq-icon{width:19px;height:19px}
.support-story-field textarea{display:block;width:100%;min-height:112px;resize:vertical;border:1px solid #cbdadd;border-radius:13px;padding:12px 13px;background:#fff;color:var(--ink);font:inherit;line-height:1.75}
.support-story-field.is-primary textarea{min-height:138px}
.support-story-field textarea:focus{outline:0;border-color:var(--nasq-turquoise);box-shadow:0 0 0 3px rgba(24,169,153,.11)}

.support-management-heading{align-items:flex-start}
.support-management-badge{display:inline-flex;align-items:center;gap:7px;padding:9px 12px;border:1px solid #cae6e2;border-radius:999px;background:#effaf8;color:#087b70;font-size:10px;font-weight:900;white-space:nowrap}
.support-management-badge .nasq-icon{width:16px;height:16px}
.support-management-form{display:grid;gap:16px}
.support-management-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.support-management-group{min-width:0;margin:0;padding:16px;border:1px solid #dce8ea;border-radius:17px;background:#fbfdfd}
.support-management-group legend{display:flex;align-items:center;gap:10px;width:auto;max-width:calc(100% - 12px);padding:0 7px;color:inherit}
.support-management-group legend>span:last-child{display:grid;gap:3px;min-width:0}
.support-management-group legend strong{font-size:12px;color:var(--nasq-petrol)}
.support-management-group legend small{font-size:9.5px;line-height:1.5;color:var(--muted);font-weight:400}
.support-management-icon{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;flex:0 0 38px;background:#eaf6f4;color:var(--nasq-turquoise-dark)}
.support-management-icon.is-solution{background:#fff6da;color:#8a6817}
.support-management-icon .nasq-icon{width:19px;height:19px}
.support-management-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-top:10px}
.support-management-fields label,.support-resolution-field{display:grid;gap:7px}
.support-management-fields label>span,.support-resolution-field>span{font-size:10px;font-weight:900;color:var(--muted)}
.support-management-fields input,.support-management-fields select,.support-resolution-field textarea{width:100%;min-width:0;min-height:46px;border:1px solid #cbdadd;border-radius:12px;padding:10px 12px;background:#fff;color:var(--ink);font:inherit}
.support-management-fields input:focus,.support-management-fields select:focus,.support-resolution-field textarea:focus{outline:0;border-color:var(--nasq-turquoise);box-shadow:0 0 0 3px rgba(24,169,153,.1)}
.support-management-resolution{grid-column:1/-1;background:linear-gradient(135deg,#fffdf7,#fff)}
.support-resolution-field{margin-top:10px}
.support-resolution-field textarea{min-height:130px;resize:vertical;line-height:1.75}
.support-management-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-top:15px;border-top:1px solid var(--border)}
.support-management-actions>span{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:10px}
.support-management-actions>span .nasq-icon{width:15px;height:15px;color:var(--nasq-turquoise)}
.support-management-actions .btn{display:inline-flex;align-items:center;gap:7px;min-width:160px;justify-content:center}
.support-management-actions .btn .nasq-icon{width:17px;height:17px}

@media(max-width:1100px){
  .support-filter-form{grid-template-columns:repeat(2,minmax(0,1fr))}
  .support-filter-search{grid-column:1/-1}
  .support-filter-actions{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr))}
  .support-filter-actions .btn{width:100%}
}
@media(max-width:760px){
  .support-filter-heading{align-items:flex-start;flex-direction:column}
  .support-filter-heading .result-count{align-self:flex-start}
  .support-filter-form{grid-template-columns:1fr;padding:16px}
  .support-filter-search,.support-filter-actions{grid-column:auto}
  .support-story-grid,.support-management-grid{grid-template-columns:1fr}
  .support-management-resolution{grid-column:auto}
  .support-management-fields{grid-template-columns:1fr}
  .support-management-heading{align-items:flex-start;flex-direction:column}
  .support-management-actions{align-items:stretch;flex-direction:column}
  .support-management-actions .btn{width:100%}
}
@media(max-width:480px){
  .support-filter-heading{padding:16px}
  .support-filter-heading-main{align-items:flex-start}
  .support-filter-heading-icon{width:40px;height:40px;flex-basis:40px}
  .support-filter-actions{grid-template-columns:1fr}
  .support-quick-actions{display:grid;grid-template-columns:1fr}
  .support-quick-actions button{justify-content:flex-start}
  .support-story-field,.support-management-group{padding:13px}
}


/* Nasq V0.9.4.3 — comprehensive UI consistency, brand lockup, and sidebar state persistence */
.nasq-brand-lockup{display:inline-flex;align-items:center;gap:12px;max-width:100%;min-width:0;text-decoration:none;line-height:1}
.nasq-brand-lockup>img{width:48px;height:48px;object-fit:contain;flex:0 0 48px}
.nasq-brand-copy{display:grid;gap:3px;min-width:0;text-align:right}
.nasq-brand-copy strong{font-size:28px;line-height:.95;font-weight:900;letter-spacing:-.8px;white-space:nowrap}
.nasq-brand-copy small{font-size:11px;line-height:1.1;font-weight:700;white-space:nowrap;margin:0!important}
.nasq-brand-lockup.is-dark{color:var(--nasq-petrol)}
.nasq-brand-lockup.is-dark .nasq-brand-copy small{color:#577078}
.nasq-brand-lockup.is-light{color:#fff}
.nasq-brand-lockup.is-light .nasq-brand-copy small{color:#c8dcdf}
.nasq-brand-lockup.is-compact>img{width:42px;height:42px;flex-basis:42px}
.nasq-brand-lockup.is-compact .nasq-brand-copy strong{font-size:21px}
.nasq-brand-lockup.is-compact .nasq-brand-copy small{font-size:9px}
.nasq-sidebar-brand>.nasq-brand-lockup{width:100%;justify-content:center;padding-inline:4px}
.nasq-auth-brand>.nasq-brand-lockup{justify-content:center}
.nasq-login-brand>.nasq-brand-lockup{justify-content:flex-start}
.nasq-promo-brand>.nasq-brand-lockup{justify-content:flex-start}

/* Support both the established semantic button classes and Bootstrap-like aliases used by newer pages. */
.btn.btn-primary,.btn-primary{background:var(--nasq-turquoise);color:#fff;border-color:var(--nasq-turquoise);box-shadow:0 8px 20px rgba(24,169,153,.18)}
.btn.btn-primary:hover,.btn-primary:hover{background:var(--nasq-turquoise-dark);border-color:var(--nasq-turquoise-dark);color:#fff;box-shadow:0 10px 24px rgba(17,127,117,.22)}
.btn.btn-secondary,.btn-secondary{background:var(--nasq-turquoise-soft);color:var(--nasq-turquoise-dark);border-color:rgba(24,169,153,.2)}
.btn.btn-ghost,.btn-ghost{background:#f2f5f6;color:#536970;border-color:#dce5e7;box-shadow:none}
.btn.btn-ghost:hover,.btn-ghost:hover{background:#e9eff0;color:var(--nasq-petrol)}
.btn.btn-danger,.btn-danger{background:#fff0f1;color:var(--danger);border-color:#efc7cc}
.btn.btn-outline-primary,.btn-outline-primary{background:#fff;color:var(--nasq-turquoise-dark);border-color:#a8d8d2}
.btn.btn-small,.btn-small,.btn.btn-sm,.btn-sm{min-height:34px;padding:7px 11px;font-size:11px}
.btn>.nasq-icon{width:18px;height:18px;flex:0 0 18px}

/* A global form-grid contract prevents raw browser controls on any page using the shared grid. */
.form-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.form-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.form-grid>label:not([class]),.form-grid>label.full,.form-grid>label.form-span-2,.form-grid>label.form-span-3{display:grid;align-content:start;gap:8px;min-width:0;color:var(--ink)}
.form-grid>label:not([class]),.form-grid>label.full,.form-grid>label.form-span-2,.form-grid>label.form-span-3>span:first-child{font-size:12px;font-weight:800;color:var(--nasq-petrol);line-height:1.55}
.form-grid>label:not([class])>input:not([type=checkbox]):not([type=radio]),.form-grid>label.full>input:not([type=checkbox]):not([type=radio]),.form-grid>label.form-span-2>input:not([type=checkbox]):not([type=radio]),.form-grid>label.form-span-3>input:not([type=checkbox]):not([type=radio]),
.form-grid>label:not([class])>select,.form-grid>label.full>select,.form-grid>label.form-span-2>select,.form-grid>label.form-span-3>select,
.form-grid>label:not([class])>textarea,.form-grid>label.full>textarea,.form-grid>label.form-span-2>textarea,.form-grid>label.form-span-3>textarea{width:100%;min-width:0;min-height:46px;border:1px solid #cbdadd;border-radius:12px;padding:10px 12px;background:#fff;color:var(--ink);font:inherit;outline:0}
.form-grid>label:not([class])>textarea,.form-grid>label.full>textarea,.form-grid>label.form-span-2>textarea,.form-grid>label.form-span-3>textarea{min-height:108px;resize:vertical;line-height:1.7}
.form-grid>label:not([class])>input:focus,.form-grid>label.full>input:focus,.form-grid>label.form-span-2>input:focus,.form-grid>label.form-span-3>input:focus,
.form-grid>label:not([class])>select:focus,.form-grid>label.full>select:focus,.form-grid>label.form-span-2>select:focus,.form-grid>label.form-span-3>select:focus,
.form-grid>label:not([class])>textarea:focus,.form-grid>label.full>textarea:focus,.form-grid>label.form-span-2>textarea:focus,.form-grid>label.form-span-3>textarea:focus{border-color:var(--nasq-turquoise);box-shadow:var(--focus)}
.form-grid>label.full{grid-column:1/-1}

.support-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.support-contact-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.support-form-field{display:grid;align-content:start;gap:12px;min-width:0;padding:17px;border:1px solid #dce7e9;border-radius:17px;background:#fbfdfd;transition:border-color .16s,box-shadow .16s,background .16s}
.support-form-field:focus-within{border-color:var(--nasq-turquoise);background:#fff;box-shadow:0 0 0 3px rgba(24,169,153,.08)}
.support-form-heading,.support-upload-heading{display:flex;align-items:flex-start;gap:11px;min-width:0}
.support-form-heading>span:last-child,.support-upload-heading>span:last-child{display:grid;gap:4px;min-width:0}
.support-form-heading strong,.support-upload-heading strong{color:var(--nasq-petrol);font-size:13px;line-height:1.45}
.support-form-heading small,.support-upload-heading small{color:var(--muted);font-size:10px;line-height:1.55}
.support-form-icon{width:40px;height:40px;flex:0 0 40px;border-radius:12px;display:grid;place-items:center;background:#eaf6f4;color:var(--nasq-turquoise-dark)}
.support-form-icon.is-school{background:#eef3fa;color:#41648a}
.support-form-icon.is-upload{background:#fff6dd;color:#8b691a}
.support-form-icon .nasq-icon{width:20px;height:20px}
.support-control-with-icon{position:relative;display:flex;align-items:center;min-width:0}
.support-control-with-icon>.nasq-icon{position:absolute;inset-inline-start:14px;width:19px;height:19px;color:#718b92;pointer-events:none;z-index:1}
.support-control-with-icon>input,.support-control-with-icon>select{width:100%;min-width:0;min-height:50px;border:1px solid #cbdadd;border-radius:13px;padding:11px 44px 11px 13px;background:#fff;color:var(--ink);font:inherit;outline:0}
.support-control-with-icon>input:focus,.support-control-with-icon>select:focus{border-color:var(--nasq-turquoise);box-shadow:0 0 0 3px rgba(24,169,153,.11)}
.support-control-with-icon>select:disabled{background:#eef3f4;color:#6d7e83;cursor:not-allowed}
.support-contact-upload{grid-column:1/-1;display:grid;gap:13px;padding:18px;border:1px dashed #9fc9c5;border-radius:17px;background:linear-gradient(135deg,#f7fcfb,#fff);cursor:pointer}
.support-contact-upload:hover{border-color:var(--nasq-turquoise);background:#f2fbf9}
.support-contact-upload input[type=file]{width:100%;min-height:48px;padding:6px;border:1px solid #d6e3e5;border-radius:12px;background:#fff;color:var(--muted);font:inherit;cursor:pointer}
.support-contact-upload input[type=file]::file-selector-button{border:0;border-radius:9px;padding:10px 14px;margin-inline-end:10px;background:var(--nasq-turquoise-soft);color:var(--nasq-turquoise-dark);font:inherit;font-weight:800;cursor:pointer}
.support-file-summary{display:flex;align-items:center;min-height:34px;padding:8px 11px;border-radius:10px;background:#eef5f5;color:#5b7076;font-size:10px;line-height:1.5}
.support-step-actions .btn{min-width:112px;min-height:46px;gap:7px}
.support-wizard .validation-summary:not(:empty){margin-bottom:16px}

/* Sidebar branding and scrolling are independent from the page content. */
.sidebar{overscroll-behavior:contain;scrollbar-gutter:stable}
.sidebar-role-label{display:block;text-align:center}
body.sidebar-collapsed .nasq-sidebar-brand>.nasq-brand-lockup{display:none}
body.sidebar-collapsed .nasq-sidebar-logo-icon{display:block}

@media(max-width:1050px){
  .support-contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .support-contact-grid>.support-form-field:first-child{grid-column:1/-1}
}
@media(max-width:760px){
  .support-form-grid,.support-contact-grid,.form-grid-2,.form-grid-3{grid-template-columns:1fr}
  .support-contact-grid>.support-form-field:first-child,.support-contact-upload{grid-column:auto}
  .support-form-field{padding:14px}
  .support-step-actions{display:grid;grid-template-columns:1fr 1fr}
  .support-step-actions .btn:only-child{grid-column:1/-1}
  .support-step-actions .btn{width:100%}
  .nasq-brand-copy strong{font-size:24px}
}
@media(max-width:900px){
  body.sidebar-collapsed .nasq-sidebar-brand>.nasq-brand-lockup{display:inline-flex}
  body.sidebar-collapsed .nasq-sidebar-logo-icon{display:none}
}

.support-upload-control{position:relative;display:flex;align-items:center;gap:12px;min-height:56px;padding:9px 11px;border:1px solid #d6e3e5;border-radius:13px;background:#fff;overflow:hidden}
.support-upload-control input[type=file]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;z-index:2}
.support-upload-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:9px 13px;border-radius:10px;background:var(--nasq-turquoise-soft);color:var(--nasq-turquoise-dark);font-size:11px;font-weight:900;white-space:nowrap}
.support-upload-button .nasq-icon{width:16px;height:16px}
.support-upload-hint{color:var(--muted);font-size:10px;line-height:1.5}
.support-upload-control:focus-within{border-color:var(--nasq-turquoise);box-shadow:0 0 0 3px rgba(24,169,153,.1)}
@media(max-width:520px){.support-upload-control{align-items:stretch;flex-direction:column}.support-upload-button{width:100%}.support-upload-hint{text-align:center}}
