.brand-logo-img{width:34px;height:34px;border-radius:9px;object-fit:cover;flex-shrink:0;box-shadow:0 1px 2px rgba(28,24,20,.18)}.sidebar-brand .brand-stack{display:flex;flex-direction:column;line-height:1.1;min-width:0}.sidebar-brand .brand-stack .brand-name{font-weight:600;font-size:14.5px;color:var(--ink-900);letter-spacing:-.01em}.sidebar-brand .brand-stack .brand-name span{color:var(--clay-500)}.sidebar-brand .brand-stack .brand-sub{font-size:11px;color:var(--ink-500);white-space:nowrap}.mini .sidebar-brand .brand-stack{display:none}.sidebar-brand{justify-content:flex-start;gap:11px}.mini .sidebar-brand{justify-content:center}.module-card{display:flex;flex-direction:column;gap:14px;padding:20px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-1);text-align:start;cursor:pointer;transition:transform .15s var(--ease),box-shadow .2s var(--ease),border-color .15s var(--ease);min-width:0}.module-card:hover{transform:translateY(-2px);box-shadow:var(--sh-2);border-color:var(--line-2)}.module-card .module-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.module-card .module-ic{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--clay-50);color:var(--clay-600);flex-shrink:0}.module-card h3{margin:0;font-size:16px;font-weight:600;color:var(--ink-900);letter-spacing:-.01em}.module-card .module-desc{font-size:13px;color:var(--ink-500);line-height:1.5}.module-card .module-foot{display:flex;align-items:center;gap:6px;color:var(--clay-600);font-size:13px;font-weight:500}.student-dashboard-grid,.student-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px;align-items:start}.student-detail-grid{grid-template-columns:1fr}.student-detail-toolbar{margin:10px 0 12px}.student-detail-selector{display:grid;grid-auto-flow:column;grid-auto-columns:max-content;grid-gap:8px;gap:8px;overflow-x:auto;overflow-y:hidden;padding:10px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(180deg,#fff,#fffaf6);box-shadow:var(--sh-1);scrollbar-width:thin;-webkit-overflow-scrolling:touch}.student-detail-selector::-webkit-scrollbar{height:8px}.student-detail-selector::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:999px}.student-detail-selector .student-filter-pill{min-width:108px;height:auto;min-height:44px;padding:8px 10px;flex:0 0 auto;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:1px;text-align:start;white-space:normal;border-radius:12px}.student-detail-selector .student-filter-pill small{display:block;font-size:10px;line-height:1.2;color:inherit;opacity:.7;font-weight:600;letter-spacing:.01em}.student-detail-selector .student-filter-pill.active{box-shadow:0 0 0 2px rgba(41,127,184,.08)}.student-layout{display:block}.student-main{min-width:0;width:100%}.student-stepper-header{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:10px}.student-stepper-kicker{font-size:11.5px;text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:var(--ink-500)}.student-stepper-status{margin-top:4px;font-size:13.5px;font-weight:600;color:var(--ink-900)}.student-stepper-progress{font-size:12.5px;font-weight:600;color:var(--clay-700);white-space:nowrap}.student-stepper-track{height:6px;border-radius:999px;border:1px solid #ead9cb;background:#f8f1ea;overflow:hidden;margin-bottom:12px}.student-stepper-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--clay-500),#d8683f);transition:width .2s var(--ease)}.student-stepper-wrap{width:100%;overflow-x:auto;overflow-y:hidden;padding:4px 2px 6px;margin-bottom:16px;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scroll-snap-type:x proximity}.student-section-stack{display:flex;flex-direction:column;gap:16px}.student-stepper{display:flex;flex-direction:row;gap:0;min-width:max-content;align-items:stretch;padding:14px 16px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(180deg,#fff,#fffaf6);box-shadow:0 1px 0 rgba(17,24,39,.02)}.student-step{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;border-radius:0;padding:10px 18px 10px 0;text-align:left;display:flex;align-items:center;gap:12px;cursor:pointer;width:100%;min-width:210px;flex:0 0 auto;position:relative;transition:transform .14s var(--ease),color .14s var(--ease);scroll-snap-align:start}.student-step:not(:last-child):after{content:"";position:absolute;inset-inline-end:0;top:50%;width:28px;height:2px;border-radius:999px;background:#e8dbcf;transform:translateY(-50%)}.student-step.complete:not(:last-child):after{background:var(--clay-500)}.student-step.active:not(:last-child):after{background:#e7a37f}.student-step:hover{transform:translateY(-1px)}.student-step-index{width:38px;height:38px;border-radius:999px;flex-shrink:0;display:grid;place-items:center;background:#fff;border:2px solid #e2d7cb;color:var(--ink-600);font-size:13px;font-weight:700;box-shadow:0 1px 0 rgba(17,24,39,.03)}.student-step.active .student-step-index{border-color:var(--clay-500);color:var(--clay-700);box-shadow:0 0 0 4px var(--clay-50)}.student-step.complete .student-step-index{border-color:var(--clay-500);background:var(--clay-500);color:transparent}.student-step.complete .student-step-index:before{content:"✓";color:#fff;font-size:14px;line-height:1}.student-step-copy{display:flex;flex-direction:column;gap:2px;min-width:0}.student-step-title{font-size:14px;font-weight:700;color:var(--ink-900);line-height:1.2}.student-step-sub{font-size:11.5px;color:var(--ink-500);line-height:1.35}.student-step.active .student-step-title{color:var(--clay-700)}.student-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-1);overflow:hidden}.student-card.compact .student-card-body{padding-top:12px}.student-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 18px 0}.student-card-body{padding:16px 18px 18px}.student-card-kicker{font-size:14.5px;font-weight:600;color:var(--ink-900)}.student-card-sub{margin-top:2px;font-size:12px;color:var(--ink-500);line-height:1.5}.student-accordion-stack{display:flex;flex-direction:column;gap:10px}.student-accordion{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-1);overflow:hidden;transition:box-shadow .15s var(--ease)}.student-accordion[open]{box-shadow:0 4px 14px rgba(17,24,39,.07)}.student-accordion-tab{list-style:none;display:flex;align-items:flex-start;gap:10px;padding:14px 18px;cursor:pointer;-webkit-tap-highlight-color:transparent;background:linear-gradient(180deg,#fff,#fffaf6);border-bottom:1px solid transparent}.student-accordion[open]>.student-accordion-tab{border-bottom-color:var(--line)}.student-accordion-tab::-webkit-details-marker{display:none}.student-accordion-chevron{margin-top:2px;display:inline-flex;color:var(--ink-400);transition:transform .15s var(--ease);flex-shrink:0}.student-accordion[open] .student-accordion-chevron{transform:rotate(90deg);color:var(--clay-600)}.student-accordion-tab-copy{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1}.student-accordion-tab-right{margin-left:auto;flex-shrink:0}.student-accordion .student-card-body{padding-top:16px}@media (max-width:900px){.student-stepper-header{align-items:flex-start}.student-stepper{padding:12px}.student-step{min-width:190px;-webkit-padding-end:14px;padding-inline-end:14px}}@media (max-width:640px){.student-stepper-header{flex-direction:column;align-items:flex-start}.student-stepper-progress{align-self:flex-start}.student-step{min-width:176px}.student-step-sub{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}}.student-field{display:flex;flex-direction:column;gap:8px;min-width:0}.student-field-label{display:flex;align-items:center;gap:8px;font-size:11.5px;text-transform:uppercase;letter-spacing:.07em;font-weight:600;color:var(--ink-500)}.required-marker{color:var(--bad-600)}.student-field-help{font-size:11.5px;color:var(--ink-500);line-height:1.45}.checklist-custom-row input,.student-field input,.student-field select,.student-field textarea,.student-search input,.student-table input{width:100%;min-width:0;border:1px solid var(--line-2);border-radius:var(--r-md);background:var(--surface);color:var(--ink-900);font:inherit;transition:border-color .12s var(--ease),box-shadow .12s var(--ease)}.student-field input,.student-field select{height:42px;padding:0 12px}.student-field textarea{padding:12px;resize:vertical;min-height:108px}.checklist-custom-row input:focus,.student-field input:focus,.student-field select:focus,.student-field textarea:focus,.student-search input:focus{outline:none;border-color:var(--clay-400);box-shadow:0 0 0 3px rgba(41,127,184,.12)}.checklist-group{display:flex;flex-direction:column;gap:14px;padding-top:4px}.checklist-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex-wrap:wrap}.checklist-title{font-size:13.5px;font-weight:600;color:var(--ink-900)}.checklist-sub{margin-top:2px;font-size:12px;color:var(--ink-500);line-height:1.45}.checklist-warning{display:inline-flex;align-items:flex-start;gap:8px;padding:8px 10px;border-radius:var(--r-md);border:1px solid #ecd5a5;background:var(--warn-50);color:var(--warn-700);font-size:12px;line-height:1.45;max-width:440px}.checklist-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:10px;gap:10px}.checklist-grid.single{grid-template-columns:1fr}.check-pill{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--line);background:var(--surface);border-radius:var(--r-md);padding:11px 12px;display:flex;align-items:flex-start;gap:10px;text-align:left;cursor:pointer;color:var(--ink-800);transition:background .14s var(--ease),border-color .14s var(--ease),transform .14s var(--ease)}.check-pill:hover{border-color:var(--line-2);background:var(--surface-2);transform:translateY(-1px)}.check-pill.active{border-color:var(--clay-300);background:var(--clay-50);color:var(--ink-900)}.check-pill-box{width:18px;height:18px;border-radius:5px;border:1.5px solid var(--line-2);background:var(--surface);display:grid;place-items:center;flex-shrink:0;margin-top:1px;color:var(--surface)}.check-pill-box.active{background:var(--clay-500);border-color:var(--clay-500)}.check-pill span:last-child{font-size:13px;line-height:1.45}.checklist-custom{display:flex;flex-direction:column;gap:12px}.checklist-custom-row{display:flex;gap:10px;align-items:center}.checklist-custom-row input{height:38px;padding:0 12px}.chip-list{display:flex;flex-wrap:wrap;gap:8px}.chip{display:inline-flex;align-items:center;gap:8px;padding:7px 10px;border-radius:999px;border:1px solid var(--line);background:var(--surface-2);color:var(--ink-700);font-size:12px}.chip-dismissable{cursor:pointer}.chip-dismissable:hover{border-color:var(--clay-300);background:var(--clay-50);color:var(--clay-700)}.student-detail-summary,.student-review-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:10px;gap:10px}.student-review-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:12px;gap:12px}.student-review-profile{display:flex;flex-direction:column;gap:6px}.student-review-name{font-size:20px;font-weight:600;color:var(--ink-900);letter-spacing:-.01em}.student-review-meta{font-size:12.5px;color:var(--ink-500);line-height:1.45}.student-review-blocks{display:flex;flex-direction:column;gap:12px}.student-review-block{padding:14px;border-radius:var(--r-md);border:1px solid var(--line);background:var(--surface)}.student-review-block-body{display:flex;flex-direction:column;gap:10px}.student-detail-lines,.student-review-lines{display:flex;flex-direction:column;gap:8px}.student-review-line{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding:10px 12px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}.student-review-line span{color:var(--ink-500);font-size:12.5px;line-height:1.45}.student-review-line strong{color:var(--ink-900);font-size:13px;font-weight:600;text-align:right;line-height:1.45}.student-review-block-title{margin-bottom:8px;font-size:11.5px;text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:var(--ink-500)}.student-detail-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:12px;gap:12px}.student-note,.student-note-block{padding:12px 14px;border-radius:var(--r-md);border:1px dashed var(--line-2);background:var(--surface-2);color:var(--ink-600);font-size:13px;line-height:1.55}.student-empty,.student-empty-inline{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;padding:28px 20px}.student-empty-title{font-size:15px;font-weight:600;color:var(--ink-900)}.student-empty-inline,.student-empty-sub{font-size:13px;color:var(--ink-500)}.student-empty-inline{padding:8px 0}.student-assessment-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px;margin-bottom:16px}.student-assessment-summary-card{padding:14px 16px;border-radius:var(--r-lg);border:1px solid var(--line);background:var(--surface);box-shadow:var(--sh-1)}.student-assessment-summary-label{font-size:11.5px;text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:var(--ink-500)}.student-assessment-summary-value{margin-top:4px;font-size:22px;font-weight:700;color:var(--ink-900)}.student-assessment-summary-meta{margin-top:3px;font-size:12px;color:var(--ink-500);line-height:1.45}.student-assessment-layout{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.25fr);grid-gap:16px;gap:16px;align-items:start}.student-assessment-detail,.student-assessment-list{display:flex;flex-direction:column;gap:12px}.student-assessment-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 16px;border-radius:var(--r-lg);border:1px solid var(--line);background:var(--surface);box-shadow:var(--sh-1);cursor:pointer;transition:border-color .14s var(--ease),background .14s var(--ease),transform .14s var(--ease)}.student-assessment-row:hover{border-color:var(--line-2);transform:translateY(-1px)}.student-assessment-row.active{border-color:var(--clay-300);background:var(--clay-50)}.student-assessment-row-main{min-width:0;display:flex;flex-direction:column;gap:4px}.student-assessment-row-title{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:14px;font-weight:700;color:var(--ink-900)}.student-assessment-row-meta{font-size:12px;color:var(--ink-500);line-height:1.45}.student-assessment-row-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.student-assessment-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px;border-radius:var(--r-lg);border:1px solid var(--line);background:linear-gradient(135deg,rgba(15,118,110,.06),rgba(14,165,233,.04))}.student-assessment-detail-kicker{font-size:11.5px;text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:var(--ink-500)}.student-assessment-detail-head h3{margin:4px 0 0;font-size:18px;color:var(--ink-900)}.student-assessment-detail-meta{margin-top:4px;font-size:12px;color:var(--ink-500);line-height:1.45}.student-assessment-detail-badges{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.student-assessment-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px}.student-assessment-detail-card{padding:14px 16px;border-radius:var(--r-md);border:1px solid var(--line);background:var(--surface)}.student-assessment-detail-card-label{font-size:11.5px;text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:var(--ink-500)}.student-assessment-detail-card-value{margin-top:4px;font-size:14px;font-weight:700;color:var(--ink-900);line-height:1.45}.student-assessment-detail-card-meta{margin-top:3px;font-size:12px;color:var(--ink-500);line-height:1.45}.student-assessment-chart{display:flex;flex-direction:column;gap:12px;padding:16px;border-radius:var(--r-lg);border:1px solid var(--line);background:var(--surface)}.student-assessment-chart-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.student-assessment-chart-title{margin-top:3px;font-size:16px;font-weight:800;color:var(--ink-900)}.student-assessment-chart-total{min-width:110px;padding:10px 12px;border-radius:var(--r-md);border:1px solid var(--line);background:var(--surface-2);text-align:right}.student-assessment-chart-total span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-500);font-weight:600}.student-assessment-chart-total strong{display:block;margin-top:2px;font-size:22px;line-height:1;color:var(--ink-900)}.student-assessment-chart-row{display:flex;flex-direction:column;gap:6px}.student-assessment-chart-row-head{display:flex;justify-content:space-between;gap:12px;font-size:12.5px;color:var(--ink-700)}.student-assessment-chart-row-head strong{color:var(--ink-900)}.student-assessment-chart-bar{height:8px;border-radius:999px;background:var(--surface-2);overflow:hidden}.student-assessment-chart-bar span{display:block;height:100%;border-radius:inherit}.student-assessment-issue-list{display:flex;flex-direction:column;gap:12px}.student-assessment-issue-group{padding:14px 16px;border-radius:var(--r-lg);border:1px solid var(--line);background:var(--surface)}.student-assessment-issue-group-title{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px;font-weight:700;color:var(--ink-900);margin-bottom:10px}.student-assessment-issue-group-title span{font-size:12px;font-weight:600;color:var(--ink-500)}.student-assessment-chip-list{display:flex;flex-wrap:wrap;gap:8px}.student-assessment-chip{display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;border:1px solid var(--line);background:var(--surface-2);color:var(--ink-700);font-size:12px;line-height:1.35}.student-list-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;margin-bottom:16px}.student-searchbar{flex:1 1 320px;max-width:460px;height:44px;display:flex;align-items:center;gap:10px;padding:0 14px;border-radius:999px;border:1px solid var(--line);background:var(--surface);box-shadow:var(--sh-1)}.student-searchbar:focus-within{border-color:var(--clay-300);box-shadow:0 0 0 3px rgba(41,127,184,.12)}.student-searchbar input{flex:1 1;min-width:0;border:0;background:transparent;outline:none;font-size:13.5px;color:var(--ink-900);padding:0}.student-searchbar input::placeholder{color:var(--ink-400)}.student-list-controls{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.student-filter-pills{display:flex;flex-wrap:wrap;gap:6px}.student-filter-pill{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--line);background:var(--surface);color:var(--ink-600);height:32px;padding:0 12px;border-radius:999px;font-size:12.5px;font-weight:500;cursor:pointer;transition:background .14s var(--ease),border-color .14s var(--ease),color .14s var(--ease)}.student-filter-pill:hover{border-color:var(--line-2)}.student-filter-pill.active{background:var(--clay-50);border-color:var(--clay-300);color:var(--clay-700)}.student-sort-wrap{position:relative}.student-toolbar-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink-600);font-size:12.5px;font-weight:500;cursor:pointer;transition:border-color .14s var(--ease);white-space:nowrap}.student-toolbar-btn:hover{border-color:var(--line-2)}.student-toolbar-icon-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:4px;background:none;border:none;color:var(--ink-400);cursor:pointer;padding:4px;border-radius:6px}.student-toolbar-icon-btn:hover{color:var(--ink-700);background:var(--ink-50,rgba(0,0,0,.04))}.student-dropdown-scrim{position:fixed;inset:0;z-index:49}.student-dropdown{position:absolute;top:calc(100% + 6px);right:0;z-index:50;min-width:200px;background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,.12),0 2px 6px rgba(0,0,0,.06);padding:4px;animation:student-dropdown-in .12s ease-out}@keyframes student-dropdown-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.student-dropdown-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;display:flex;align-items:center;gap:8px;height:36px;padding:0 12px;border:none;background:none;color:var(--ink-700);font-size:13px;border-radius:8px;cursor:pointer;transition:background .1s var(--ease)}.student-dropdown-item:hover{background:var(--ink-50,rgba(0,0,0,.04))}.student-dropdown-item.active{color:var(--clay-600);font-weight:600}.student-filters-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:14px}.student-filter-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:32px;padding:0 28px 0 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23888' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m3 4.5 3 3 3-3'/%3E%3C/svg%3E") no-repeat right 8px center;font-size:12.5px;color:var(--ink-700);cursor:pointer;transition:border-color .14s var(--ease)}.student-filter-select:hover{border-color:var(--line-2)}.student-filter-select:focus{border-color:var(--clay-300);outline:none;box-shadow:0 0 0 3px rgba(41,127,184,.12)}.student-list-quick{display:flex;flex-wrap:wrap;gap:10px}.student-table-note{margin:0 0 12px;font-size:12px;color:var(--ink-500);line-height:1.45}.student-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface)}.student-drawer-scrim{position:fixed;inset:0;z-index:60;background:rgba(20,28,38,.34);display:flex;justify-content:flex-end;animation:student-drawer-fade .14s ease-out}.student-drawer{width:min(460px,100%);height:100%;background:var(--surface);box-shadow:-12px 0 40px rgba(0,0,0,.18);display:flex;flex-direction:column;animation:student-drawer-slide .18s ease-out}@keyframes student-drawer-fade{0%{opacity:0}to{opacity:1}}@keyframes student-drawer-slide{0%{transform:translateX(24px);opacity:.6}to{transform:translateX(0);opacity:1}}.student-drawer-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid var(--line);flex:0 0 auto}.student-drawer-title{font-size:15px;font-weight:650;color:var(--ink-900)}.student-drawer-sub{font-size:12px;color:var(--ink-500);margin-top:2px}.student-drawer-body{padding:16px 18px;overflow-y:auto;flex:1 1 auto}@media (max-width:560px){.student-drawer{width:100%}}.org-form-grid{gap:16px}.org-field,.org-form-grid{display:flex;flex-direction:column}.org-field{gap:8px;font-size:13px;font-weight:600;color:var(--ink-700)}.org-field input,.org-field select{width:100%;min-height:44px;border-radius:12px;border:1px solid var(--line);background:var(--surface);padding:0 14px;font:inherit;color:var(--ink-900);outline:none}.org-field input:focus,.org-field select:focus{border-color:var(--clay-500);box-shadow:0 0 0 3px rgba(122,106,69,.12)}.org-permission-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:10px;gap:10px}.org-permission-card{display:flex;flex-direction:column;gap:6px;border:1px solid var(--line);border-radius:14px;background:var(--surface);padding:12px;cursor:pointer;transition:border-color .16s var(--ease),box-shadow .16s var(--ease),transform .16s var(--ease)}.org-permission-card input{align-self:flex-start;accent-color:var(--clay-600)}.org-permission-card strong{font-size:13px;color:var(--ink-900)}.org-permission-card small{font-size:11px;color:var(--ink-500);word-break:break-word}.org-permission-card.active{border-color:rgba(122,106,69,.45);box-shadow:0 0 0 3px rgba(122,106,69,.08)}.role-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:14px;gap:14px}.role-card{border:1px solid var(--line);border-radius:var(--r-lg);background:linear-gradient(180deg,hsla(0,0%,100%,.92),hsla(43,37%,96%,.96));overflow:hidden}.org-inline-select{min-height:34px;border-radius:10px;border:1px solid var(--line);background:var(--surface);padding:0 10px;font:inherit;color:var(--ink-800)}.org-empty-inline{padding:8px 0;color:var(--ink-500);font-size:13px}.org-role-section-label{font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:600;color:var(--ink-500);margin-bottom:8px}.org-privilege-groups{display:flex;flex-direction:column;gap:10px}.org-privilege-group{display:flex;flex-direction:column;gap:4px}.org-privilege-cat{font-size:11.5px;font-weight:600;color:var(--ink-700)}.org-privilege-list{margin:0;-webkit-padding-start:16px;padding-inline-start:16px;display:flex;flex-direction:column;gap:2px}.org-privilege-list li{font-size:12.5px;color:var(--ink-600);line-height:1.35}.student-table{width:100%;min-width:760px;border-collapse:collapse}.student-table thead th{text-align:left;font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;font-weight:600;color:var(--ink-500);background:var(--surface-2);white-space:nowrap}.student-table tbody td,.student-table thead th{padding:14px;border-bottom:1px solid var(--line)}.student-table tbody td{vertical-align:top;color:var(--ink-800)}.student-table tbody tr:last-child td{border-bottom:0}.student-table tbody tr:hover{background:var(--surface-2)}.student-table tbody tr.archived{background:rgba(122,176,214,.07)}.student-table-name{font-size:13.5px;font-weight:600;color:var(--ink-900)}.student-table-sub{font-size:12px;color:var(--ink-500);line-height:1.45}.student-actions{gap:8px}.student-stat{padding:14px 16px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}.student-stat.brand{background:var(--clay-50);border-color:var(--clay-200)}.student-stat-label{font-size:11.5px;text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:var(--ink-500)}.student-stat-value{margin-top:4px;font-size:18px;font-weight:600;color:var(--ink-900);overflow-wrap:anywhere}.student-fileno-pill{cursor:pointer;transition:box-shadow .14s var(--ease)}.student-fileno-pill:hover{box-shadow:0 0 0 2px var(--clay-200)}.student-fileno-edit,.student-fileno-pill .student-stat-value{display:flex;align-items:center}.student-fileno-edit{gap:6px;margin-top:4px}.student-fileno-input{font-family:var(--font-mono,monospace);font-size:16px;font-weight:700;color:var(--ink-900);background:transparent;border:none;border-bottom:2px solid var(--clay-300);outline:none;padding:0 0 2px;width:100%;min-width:80px}.student-fileno-input:focus{border-color:var(--clay-500)}.student-fileno-actions{display:flex;gap:2px;flex-shrink:0}.student-footer-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:16px;margin-top:4px;border-top:1px solid var(--line)}.student-toggle-label{display:inline-flex;align-items:center;gap:10px;cursor:pointer;font-size:13px;color:var(--ink-800)}.student-toggle-label input{display:none}.toggle-swatch{width:40px;height:22px;border-radius:999px;background:var(--line-2);position:relative;flex-shrink:0;transition:background .18s var(--ease)}.toggle-swatch:after{content:"";position:absolute;top:2px;inset-inline-start:2px;width:18px;height:18px;border-radius:50%;background:var(--surface);box-shadow:var(--sh-1);transition:transform .18s var(--ease)}.student-toggle-label input:checked+.toggle-swatch{background:var(--clay-500)}.student-toggle-label input:checked+.toggle-swatch:after{transform:translateX(18px)}[dir=rtl] .student-toggle-label input:checked+.toggle-swatch:after{transform:translateX(-18px)}.skeleton-card,.skeleton-detail,.skeleton-line,.skeleton-stepper,.skeleton-table{background:linear-gradient(90deg,var(--surface-2) 25%,#ece8e0 37%,var(--surface-2) 63%);background-size:400% 100%;animation:skeleton-shimmer 1.35s ease infinite;border-radius:var(--r-md)}.skeleton-card{height:88px}.skeleton-card.tall{height:420px}.skeleton-stepper{height:66px;width:100%;margin-bottom:12px}.skeleton-table{height:380px;margin-top:12px}.skeleton-detail{height:520px}@keyframes skeleton-shimmer{0%{background-position:100% 0}to{background-position:0 0}}.quick-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:16px;gap:16px}.step-bubble svg{display:block}.assessment-view-toggle{display:inline-flex;gap:4px;padding:4px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-md);margin-bottom:20px}.assessment-view-pill{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;padding:6px 18px;border-radius:var(--r-sm);font-size:13px;font-weight:500;color:var(--ink-600);cursor:pointer;transition:background .14s var(--ease),color .14s var(--ease),box-shadow .14s var(--ease)}.assessment-view-pill:hover{color:var(--ink-900)}.assessment-view-pill.active{color:var(--clay-700)}.assessment-view-pill.active,.category-card{background:var(--surface);box-shadow:var(--sh-1)}.category-card{border:1px solid var(--line);border-radius:var(--r-lg);margin-bottom:14px;overflow:hidden}.category-header{display:flex;align-items:center;gap:14px;padding:14px 18px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background .14s var(--ease)}.category-header:hover{background:var(--surface-2)}.category-header-left{display:flex;align-items:center;gap:12px;flex:1 1;min-width:0}.category-icon{width:38px;height:38px;border-radius:10px;background:var(--clay-50);color:var(--clay-700);display:grid;place-items:center;font-size:13px;font-weight:700;letter-spacing:.02em;flex-shrink:0;text-transform:uppercase}.category-label{font-size:14.5px;font-weight:600;color:var(--ink-900)}.category-count{font-size:12px;color:var(--ink-500);margin-top:1px}.category-badge{font-size:11.5px;font-weight:500;padding:2px 9px;border-radius:999px;background:var(--surface-2);color:var(--ink-600);border:1px solid var(--line);white-space:nowrap;flex-shrink:0}.category-badge.has-items{background:var(--clay-50);color:var(--clay-700);border-color:var(--clay-200)}.category-header .chevron{width:18px;height:18px;color:var(--ink-400);flex-shrink:0;transition:transform .24s var(--ease)}.category-card.expanded .category-header .chevron{transform:rotate(180deg)}.category-body{max-height:0;overflow:hidden;transition:max-height .3s var(--ease)}.category-card.expanded .category-body{max-height:6000px}.issue-list{padding:6px 18px 16px;display:flex;flex-direction:column;gap:2px}.issue-item{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:var(--r-md);flex-wrap:wrap;transition:background .12s var(--ease)}.issue-item:hover{background:var(--surface-2)}.issue-item.checked{background:var(--clay-50)}.issue-checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer;flex:1 1;min-width:0}.issue-checkbox-label input{display:none}.custom-check{width:18px;height:18px;border-radius:5px;border:1.5px solid var(--line-2);background:var(--surface);display:grid;place-items:center;flex-shrink:0;transition:background .12s var(--ease),border-color .12s var(--ease)}.custom-check svg{opacity:0;transition:opacity .12s var(--ease)}.issue-checkbox-label input:checked+.custom-check{background:var(--clay-500);border-color:var(--clay-500)}.issue-checkbox-label input:checked+.custom-check svg{opacity:1}.issue-checkbox-label:hover .custom-check{border-color:var(--clay-400)}.issue-text{font-size:13.5px;color:var(--ink-800);line-height:1.45}.issue-item.checked .issue-text{color:var(--ink-900)}.ext-badge{font-size:10px;font-weight:700;letter-spacing:.04em;padding:2px 6px;border-radius:5px;flex-shrink:0;border:1px solid transparent}.ext-badge.ext-WO{background:var(--surface-2);color:var(--ink-500);border-color:var(--line)}.ext-badge.ext-WE{background:var(--info-50);color:var(--info-700);border-color:#bad1e0}.ext-badge.ext-WP{background:var(--warn-50);color:var(--warn-700);border-color:#ecd5a5}.specifics-btn{display:inline-flex;align-items:center;gap:5px;padding:5px 11px;border-radius:var(--r-sm);border:1px dashed var(--line-2);background:var(--surface);color:var(--ink-600);font-size:12px;font-weight:500;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:border-color .14s var(--ease),color .14s var(--ease),background .14s var(--ease)}.specifics-btn:hover{border-color:var(--clay-400);color:var(--clay-700)}.specifics-btn span:first-child{font-weight:700}.specifics-btn.has-specifics{border-style:solid;border-color:var(--clay-300);background:var(--clay-50);color:var(--clay-700)}.specifics-btn.hidden{display:none}.inline-dropdown-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:32px;border:1px solid var(--line-2);border-radius:var(--r-sm);background:var(--surface) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none' stroke='%23807B70' stroke-width='1.6' stroke-linecap='round'><path d='M3 5l3 3 3-3'/></svg>") no-repeat right 8px center;padding:0 28px 0 10px;font-size:12.5px;color:var(--ink-800);cursor:pointer;flex-shrink:0;transition:border-color .12s var(--ease),box-shadow .12s var(--ease)}.inline-dropdown-select:focus{outline:none;border-color:var(--clay-400);box-shadow:0 0 0 3px rgba(41,127,184,.15)}.inline-dropdown-select.is-idle{color:var(--ink-400)}.card-section-title{font-size:11.5px;text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:var(--ink-500);padding:16px 20px 0}.recommendation-options{display:flex;flex-direction:column;gap:8px;padding:14px 20px 20px}.recommendation-option{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--r-md);cursor:pointer;transition:border-color .14s var(--ease),background .14s var(--ease)}.recommendation-option:hover{border-color:var(--line-2);background:var(--surface-2)}.recommendation-option.checked{border-color:var(--clay-300);background:var(--clay-50)}.report-generator-page{display:flex;flex-direction:column;gap:16px}.report-phase-strip{display:flex;flex-direction:column;gap:8px}.report-phase-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.report-phase-kicker{font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:var(--ink-500)}.report-phase-status{margin-top:3px;font-size:13px;font-weight:600;color:var(--ink-900)}.report-phase-progress{font-size:12px;font-weight:600;color:var(--ink-600);white-space:nowrap}.report-phase-track{height:4px;border-radius:999px;border:1px solid #eadfcd;background:#f7f3ec;overflow:hidden}.report-phase-track span{display:block;height:100%;border-radius:inherit;background:var(--clay-500);transition:width .35s var(--ease)}.report-step-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:10px;gap:10px;padding:16px}.report-step-pill{display:flex;align-items:flex-start;gap:12px;padding:14px;border-radius:var(--r-md);border:1px solid var(--line);background:var(--surface-2);color:inherit;text-align:start;cursor:pointer;transition:transform .15s var(--ease),border-color .15s var(--ease),box-shadow .15s var(--ease),background .15s var(--ease)}.report-step-pill:hover{transform:translateY(-1px);border-color:var(--line-2);box-shadow:var(--sh-1)}.report-step-pill.active{background:linear-gradient(135deg,rgba(15,118,110,.12),rgba(14,165,233,.08));border-color:var(--primary-border);box-shadow:var(--sh-2)}.report-step-pill.completed .report-step-pill-index{background:var(--success-soft);color:var(--success)}.report-step-pill-index{width:34px;height:34px;border-radius:12px;display:grid;place-items:center;background:var(--primary-soft);color:var(--primary-strong);font-size:12px;font-weight:700;flex-shrink:0}.report-step-pill-copy{min-width:0;display:flex;flex-direction:column;gap:3px}.report-step-pill-title{font-size:14px;font-weight:700;color:var(--text-strong);letter-spacing:-.01em}.report-step-pill-subtitle{font-size:12px;color:var(--text-muted);line-height:1.45}.report-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(290px,.95fr);grid-gap:16px;gap:16px;align-items:start}.report-stage{overflow:hidden}.report-stage-head{align-items:flex-start}.report-stage-badges{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.report-stage-badge{padding:6px 10px;border-radius:999px;border:1px solid var(--line);background:var(--surface-2);color:var(--ink-600);font-size:12px;font-weight:600}.report-stage-body,.report-stage-footer{border-top:1px solid var(--line)}.report-section-stack{display:flex;flex-direction:column;gap:16px}.report-section-note{padding:12px 14px;border-radius:var(--r-md);border:1px solid var(--accent-border);background:var(--accent-soft);color:var(--ink-700);font-size:13px;line-height:1.55}.report-student-mode-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.report-mode-option{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-radius:var(--r-lg);border:1px solid var(--line);background:var(--surface);cursor:pointer;transition:border-color .14s var(--ease),background .14s var(--ease),transform .14s var(--ease),box-shadow .14s var(--ease)}.report-mode-option:hover{border-color:var(--line-2);transform:translateY(-1px);box-shadow:var(--sh-1)}.report-mode-option input{position:absolute;opacity:0;pointer-events:none}.report-mode-option.active{border-color:var(--clay-300);background:var(--clay-50)}.report-mode-option-marker{width:18px;height:18px;border-radius:999px;border:2px solid var(--line-2);flex-shrink:0;margin-top:2px;position:relative}.report-mode-option.active .report-mode-option-marker{border-color:var(--clay-500)}.report-mode-option.active .report-mode-option-marker:after{content:"";position:absolute;inset:3px;border-radius:999px;background:var(--clay-500)}.report-mode-option-copy{display:flex;flex-direction:column;gap:3px}.report-mode-option-copy strong{font-size:13.5px;color:var(--ink-900)}.report-mode-option-copy small{font-size:12px;color:var(--ink-500);line-height:1.45}.report-student-link-panel{display:flex;flex-direction:column;gap:12px;padding:16px;border-radius:var(--r-lg);border:1px solid var(--clay-200);background:linear-gradient(135deg,rgba(15,118,110,.09),rgba(14,165,233,.06))}.report-student-link-copy{display:flex;flex-direction:column;gap:4px}.report-student-link-title{font-size:14px;font-weight:700;color:var(--ink-900)}.report-student-link-meta{font-size:12.5px;color:var(--ink-600);line-height:1.45}.report-student-link-pill{display:flex;flex-direction:column;gap:3px;padding:10px 12px;border-radius:var(--r-md);border:1px solid var(--clay-300);background:var(--surface);box-shadow:var(--sh-1);min-width:min(100%,320px)}.report-student-link-pill.empty{border-style:dashed;border-color:var(--line-2)}.report-student-link-pill strong{font-size:13px;color:var(--ink-900)}.report-student-link-pill small{font-size:12px;color:var(--ink-500);line-height:1.45}.required-marker{color:var(--error);margin-left:4px}.report-step-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.report-step-final-actions{display:flex;gap:10px;flex-wrap:wrap;margin-left:auto}.report-rail{display:flex;flex-direction:column;gap:16px;position:-webkit-sticky;position:sticky;top:82px}.report-rail-card{overflow:hidden}.report-rail-stack{display:flex;flex-direction:column;gap:12px}.report-rail-item{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 0;border-bottom:1px solid var(--line)}.report-rail-item:last-child{border-bottom:0;padding-bottom:0}.report-rail-item span{color:var(--ink-500);font-size:13px}.report-rail-item strong{color:var(--ink-900);font-size:13px;font-weight:600;text-align:right}.report-rail-mini-list{display:flex;flex-direction:column;gap:10px;padding-top:4px}.report-options-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px}.report-options-card{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface-2);padding:16px;display:flex;flex-direction:column;gap:12px}.report-options-title{font-size:13px;font-weight:700;color:var(--ink-900);letter-spacing:-.01em}.report-toggle-list{display:flex;flex-direction:column;gap:10px}.report-toggle-row{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);color:var(--ink-700);cursor:pointer;transition:border-color .14s var(--ease),background .14s var(--ease),transform .14s var(--ease)}.report-toggle-row:hover{border-color:var(--line-2);transform:translateY(-1px)}.report-toggle-row input{display:none}.report-toggle-row.active{border-color:var(--clay-300);background:var(--clay-50);box-shadow:inset 0 0 0 1px rgba(122,106,69,.06)}.report-toggle-check{color:transparent;transition:background .12s var(--ease),border-color .12s var(--ease),color .12s var(--ease)}.report-toggle-row.active .report-toggle-check{background:var(--clay-500);border-color:var(--clay-500);color:#fff}.report-toggle-row.active .report-toggle-check svg{opacity:1}.report-toggle-name{font-weight:600}.report-setting-note{font-size:12.5px;line-height:1.5;color:var(--ink-500);background:hsla(0,0%,100%,.72);border:1px solid var(--line);border-radius:var(--r-sm);padding:10px 12px}.report-select-field{gap:8px}.report-select-shell{position:relative}.field-help{display:block;margin-top:6px;font-size:11.5px;line-height:1.45;color:var(--ink-500)}.report-select-shell select{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:100%;height:46px;padding:0 42px 0 14px;border-radius:var(--r-md);border:1px solid var(--line);background:linear-gradient(180deg,#fff,#fbf8f2);color:var(--ink-900);font-size:13.5px;font-weight:600;outline:none;transition:border-color .14s var(--ease),box-shadow .14s var(--ease),transform .14s var(--ease)}.report-select-shell select:hover{border-color:var(--line-2)}.report-select-shell select:focus{border-color:var(--clay-400);box-shadow:0 0 0 3px rgba(122,106,69,.12)}.report-select-icon{position:absolute;inset-inline-end:14px;top:50%;transform:translateY(-50%);color:var(--ink-500);pointer-events:none}.report-export-panel{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px;border-radius:var(--r-lg);background:linear-gradient(135deg,rgba(15,118,110,.12),rgba(14,165,233,.08));border:1px solid var(--primary-border)}.report-export-meta{display:flex;flex-direction:column;gap:4px}.report-export-title{font-size:15px;font-weight:700;color:var(--ink-900)}.report-export-subtitle{font-size:13px;color:var(--ink-600)}.report-export-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.report-recommendation-list{padding:0}.report-student-summary-card{padding:16px 18px;border:1px solid var(--line);border-radius:var(--r-lg);background:linear-gradient(135deg,hsla(0,0%,100%,.96),hsla(39,54%,95%,.95));box-shadow:var(--sh-1);display:flex;flex-direction:column;gap:14px}.report-student-summary-head{display:flex;gap:14px;justify-content:space-between;align-items:flex-start}.report-student-summary-kicker{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-500);font-weight:700}.report-student-summary-head h3{margin:4px 0 0;font-size:18px;color:var(--ink-900)}.report-student-summary-subtitle{margin-top:4px;font-size:13px;color:var(--ink-600)}.report-student-summary-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:10px;gap:10px}.report-student-summary-item{padding:12px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);display:flex;flex-direction:column;gap:4px}.report-student-summary-item span{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-500);font-weight:700}.report-student-summary-item strong{font-size:13.5px;color:var(--ink-900);line-height:1.35}.report-summary-panel{padding:18px;border-radius:var(--r-xl);border:1px solid rgba(122,106,69,.18);background:linear-gradient(180deg,hsla(0,0%,100%,.98),hsla(40,47%,96%,.98));box-shadow:var(--sh-1);display:flex;flex-direction:column;gap:16px}.report-summary-panel.compact{padding:16px}.report-summary-panel-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.report-summary-panel-kicker{font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--ink-500)}.report-summary-panel-head h3{margin:4px 0 0;font-size:18px;color:var(--ink-900)}.report-summary-panel-subtitle{margin-top:4px;font-size:13px;line-height:1.5;color:var(--ink-600)}.report-summary-panel-actions{display:flex;flex-wrap:wrap;justify-content:flex-end}.report-summary-panel-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);grid-gap:16px;gap:16px}.report-summary-panel-card{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);padding:16px;display:flex;flex-direction:column;gap:14px}.report-summary-panel-card-title{font-size:13px;font-weight:700;color:var(--ink-900);letter-spacing:-.01em}.report-summary-panel-profile{display:flex;flex-direction:column;gap:4px}.report-summary-panel-profile-name{font-size:18px;font-weight:700;color:var(--ink-900);letter-spacing:-.01em}.report-summary-panel-profile-meta{font-size:13px;color:var(--ink-600);line-height:1.5}.report-summary-panel-profile-meta span{color:var(--ink-300);padding:0 4px}.report-summary-panel-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.report-summary-panel-metric{padding:10px 12px;border-radius:var(--r-sm);border:1px solid var(--line);background:var(--surface-2);display:flex;flex-direction:column;gap:3px}.report-summary-panel-metric span{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-500);font-weight:700}.report-summary-panel-metric strong{font-size:13.5px;color:var(--ink-900)}.report-summary-kpi-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px}.report-summary-kpi{padding:14px 14px 12px;border-radius:var(--r-md);border:1px solid var(--line);background:linear-gradient(180deg,#fff,#fbf8f2)}.report-summary-kpi-label{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-500);font-weight:700}.report-summary-kpi-value{margin-top:5px;font-size:18px;font-weight:700;color:var(--ink-900);line-height:1.15}.report-summary-kpi-sub{margin-top:2px;font-size:12px;color:var(--ink-600);line-height:1.45}.report-summary-chart-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.report-summary-chart-legend{display:flex;align-items:center;gap:8px;color:var(--ink-500);font-size:12px;font-weight:600}.report-summary-chart-legend span{display:inline-flex;align-items:center;gap:5px}.report-summary-chart{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:10px;gap:10px;align-items:end}.report-summary-chart-column{display:flex;flex-direction:column;align-items:center;gap:8px}.report-summary-chart-value{font-size:13px;font-weight:700;color:var(--ink-900)}.report-summary-chart-bar-shell{width:100%;min-height:152px;padding:10px;border-radius:var(--r-lg);background:linear-gradient(180deg,hsla(39,41%,93%,.7),hsla(0,0%,100%,.9));border:1px solid var(--line);display:flex;align-items:flex-end;justify-content:center}.report-summary-chart-bar{width:100%;max-width:48px;border-radius:12px 12px 6px 6px;background:linear-gradient(180deg,var(--report-bar-soft,rgba(122,106,69,.16)),var(--report-bar-color,var(--clay-600)));box-shadow:0 10px 20px color-mix(in srgb,var(--report-bar-color,#7a6a45) 24%,transparent)}.report-summary-chart-column.empty .report-summary-chart-bar{background:linear-gradient(180deg,#d9d1c5,#beb4a5);box-shadow:none}.report-summary-chart-label{font-size:12px;font-weight:600;color:var(--ink-700);text-align:center;line-height:1.25}.report-analytics-section{display:flex;flex-direction:column;gap:18px}.report-analytics-header{margin-bottom:2px}.report-analytics-card{padding:16px 18px;border:1px solid var(--line);border-radius:var(--r-md);background:linear-gradient(180deg,#fff,#fcfaf5)}.report-analytics-card-head{margin-bottom:14px}.report-analytics-card-title{font-size:13px;font-weight:700;color:var(--ink-800);letter-spacing:-.01em}.report-analytics-card-sub{font-size:12px;color:var(--ink-500);margin-top:2px;line-height:1.4}.report-analytics-stacked-chart{display:grid;grid-template-columns:repeat(auto-fit,minmax(72px,1fr));grid-gap:10px;gap:10px;align-items:end}.report-analytics-stacked-col{display:flex;flex-direction:column;align-items:center;gap:8px}.report-analytics-stacked-value{font-size:14px;font-weight:700;color:var(--ink-900)}.report-analytics-stacked-track{width:100%;height:200px;padding:6px;border-radius:var(--r-lg);background:linear-gradient(180deg,hsla(39,41%,93%,.55),hsla(0,0%,100%,.85));border:1px solid var(--line);display:flex;align-items:flex-end;justify-content:center}.report-analytics-stacked-bar{width:100%;max-width:44px;border-radius:10px 10px 5px 5px;overflow:hidden;display:flex;flex-direction:column;min-height:6px}.report-analytics-stacked-segment{min-height:4px;transition:opacity .15s ease}.report-analytics-stacked-segment:first-child{border-radius:10px 10px 0 0}.report-analytics-stacked-segment:last-child{border-radius:0 0 5px 5px}.report-analytics-stacked-segment:only-child{border-radius:10px 10px 5px 5px}.report-analytics-stacked-label{font-size:12px;font-weight:600;color:var(--ink-700);text-align:center;line-height:1.25}.report-analytics-legend-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:12px;gap:12px;margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.report-analytics-legend-group{display:flex;flex-direction:column;gap:6px}.report-analytics-legend-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-500)}.report-analytics-legend-items{display:flex;flex-wrap:wrap;gap:6px 10px}.report-analytics-legend-item{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--ink-700);line-height:1.35}.report-analytics-legend-dot{width:8px;height:8px;border-radius:3px;flex-shrink:0}.report-analytics-legend-text{flex:1 1;min-width:0}.report-analytics-legend-count{font-weight:700;color:var(--ink-800);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.report-analytics-breakdown{display:flex;flex-direction:column;gap:18px}.report-analytics-breakdown-group{display:flex;flex-direction:column;gap:8px}.report-analytics-breakdown-head{display:flex;align-items:center;gap:8px}.report-analytics-breakdown-dot{width:10px;height:10px;border-radius:4px;flex-shrink:0}.report-analytics-breakdown-subject{font-size:13px;font-weight:700;color:var(--ink-800)}.report-analytics-breakdown-total{margin-left:auto;font-size:12px;font-weight:600;color:var(--ink-500);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.report-analytics-breakdown-bar-wrap{width:100%}.report-analytics-breakdown-stacked{display:flex;width:100%;height:22px;border-radius:6px;overflow:hidden;gap:2px}.report-analytics-breakdown-seg{min-width:6px;transition:opacity .15s ease}.report-analytics-breakdown-seg:first-child{border-radius:6px 0 0 6px}.report-analytics-breakdown-seg:last-child{border-radius:0 6px 6px 0}.report-analytics-breakdown-seg:only-child{border-radius:6px}.report-analytics-breakdown-labels{display:flex;flex-wrap:wrap;gap:4px 14px}.report-analytics-breakdown-label-row{display:inline-flex;align-items:center;gap:5px;font-size:12px;line-height:1.35}.report-analytics-breakdown-label-dot{width:7px;height:7px;border-radius:2px;flex-shrink:0}.report-analytics-breakdown-label-text{color:var(--ink-700)}.report-analytics-breakdown-label-count{font-weight:600;color:var(--ink-800);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.report-analytics-linegraph-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));grid-gap:18px;gap:18px}.report-analytics-linegraph-wrap{border:1px solid var(--line);border-radius:var(--r-lg);padding:14px 12px 10px;background:var(--surface-2,#faf8f5)}.report-analytics-linegraph-head{display:flex;align-items:center;gap:8px;margin-bottom:10px}.report-analytics-linegraph-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.report-analytics-linegraph-title{font-size:13px;font-weight:700;color:var(--ink-900)}.report-analytics-linegraph-total{font-size:12px;color:var(--ink-500);margin-left:auto}.report-analytics-linegraph-svg-wrap{overflow-x:auto;overflow-y:hidden}.report-analytics-linegraph-svg{display:block;width:100%;min-width:280px;height:auto}.report-summary-section-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:10px;gap:10px}.report-summary-section-chip{display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-2)}.report-summary-section-chip.active{background:var(--clay-50);border-color:var(--clay-300)}.report-summary-section-chip.muted{opacity:.68}.report-summary-section-dot{width:9px;height:9px;border-radius:999px;background:var(--clay-500);flex-shrink:0}.report-summary-section-chip.muted .report-summary-section-dot{background:#a39a8d}.report-summary-section-chip span{font-size:12.5px;color:var(--ink-800);flex:1 1}.report-summary-section-chip strong{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-600)}@media (max-width:1120px){.report-layout{grid-template-columns:1fr}.report-rail{position:static}.report-step-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.report-options-grid,.report-student-summary-grid,.report-summary-kpi-row,.report-summary-panel-grid,.report-summary-section-list{grid-template-columns:1fr}.report-summary-chart{grid-template-columns:repeat(auto-fit,minmax(84px,1fr))}.report-analytics-stacked-chart{grid-template-columns:repeat(auto-fit,minmax(64px,1fr))}.report-analytics-legend-grid,.report-student-mode-switch,.student-assessment-detail-grid,.student-assessment-layout,.student-assessment-summary{grid-template-columns:1fr}.report-export-panel{flex-direction:column;align-items:stretch}.report-export-actions{justify-content:flex-start}}@media (max-width:720px){.report-phase-head{flex-direction:column;align-items:flex-start}.report-phase-progress{align-self:flex-start}.form-grid,.form-grid.center,.report-step-strip{grid-template-columns:1fr}.report-step-pill{padding:12px}.student-assessment-detail-head,.student-assessment-row,.student-picker-row{flex-direction:column;align-items:stretch}.student-assessment-detail-badges,.student-assessment-row-actions{justify-content:flex-start}.report-step-actions{flex-direction:column;align-items:stretch}.report-step-final-actions{width:100%}.report-step-actions .btn,.report-step-final-actions .btn{width:100%;justify-content:center}}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:32px;position:relative;overflow:hidden}.auth-backdrop{position:absolute;inset:0;background:radial-gradient(circle at top left,rgba(41,127,184,.16),transparent 34%),radial-gradient(circle at bottom right,rgba(122,176,214,.18),transparent 32%),linear-gradient(180deg,#fafaf7,#f4f1ea)}.auth-card{position:relative;width:min(100%,460px);background:hsla(0,0%,100%,.92);border:1px solid hsla(40,22%,89%,.9);border-radius:22px;box-shadow:var(--sh-3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:28px}.auth-brand{display:flex;gap:16px;align-items:flex-start;margin-bottom:24px}.auth-logo{width:54px;height:54px;border-radius:14px;object-fit:cover;box-shadow:var(--sh-1);flex-shrink:0}.auth-kicker{font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:var(--clay-600);margin-bottom:4px}.auth-brand h1{margin:0;font-size:28px;letter-spacing:-.03em}.auth-brand p{margin:8px 0 0;color:var(--ink-600)}.auth-form{gap:14px}.auth-field,.auth-form{display:flex;flex-direction:column}.auth-field{gap:6px}.auth-field span{font-size:12px;font-weight:600;color:var(--ink-700)}.auth-field input,.field input,.field textarea{width:100%;border:1px solid var(--line-2);border-radius:12px;padding:12px 14px;background:var(--surface);outline:none;transition:border-color .14s var(--ease),box-shadow .14s var(--ease)}.auth-field input:focus,.field input:focus,.field textarea:focus{border-color:var(--clay-400);box-shadow:0 0 0 3px rgba(41,127,184,.12)}.auth-alert{background:var(--bad-50);color:var(--bad-700);border:1px solid #e6c0ba;border-radius:12px;padding:12px 14px;font-size:13px}.auth-submit{width:100%;justify-content:center;margin-top:4px}.form-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:14px;gap:14px}.form-grid.center{grid-template-columns:repeat(2,minmax(0,1fr))}.field{display:flex;flex-direction:column;gap:6px}.field span{font-size:12px;font-weight:600;color:var(--ink-700)}.field textarea{resize:vertical}.report-history{display:flex;flex-direction:column;gap:12px}.report-history-item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.report-history-title{font-weight:600;color:var(--ink-900)}.report-history-meta{margin-top:3px;font-size:12px;color:var(--ink-500)}.empty-state{padding:18px;text-align:center;color:var(--ink-500)}.saved-reports-page{min-height:calc(100vh - 32px)}.finder-shell{background:radial-gradient(circle at top left,rgba(122,106,69,.08),transparent 34%),linear-gradient(180deg,#faf8f2,#f7f4ec)}.finder-shell .page-head{margin-bottom:16px}.saved-reports-layout{display:grid;grid-template-columns:300px minmax(0,1fr);grid-gap:16px;gap:16px;align-items:start}.saved-reports-sidebar{position:-webkit-sticky;position:sticky;top:16px}.saved-reports-main{min-width:0}.saved-reports-toolbar{flex-wrap:wrap;justify-content:flex-end}.view-toggle{display:inline-flex;border:1px solid var(--line);background:var(--surface);padding:3px;gap:3px}.view-toggle,.view-toggle .btn.sm{border-radius:999px}.view-toggle .btn.sm.active{background:var(--clay-500);color:#fff;border-color:var(--clay-500)}.folder-tree-shell{display:flex;flex-direction:column;gap:10px}.folder-tree-node{display:flex;flex-direction:column;gap:8px}.folder-tree-row{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(180deg,#fff,#fcfaf5);text-align:left;cursor:pointer;transition:border-color .14s var(--ease),transform .14s var(--ease),box-shadow .14s var(--ease)}.folder-tree-row:hover{border-color:var(--line-2);transform:translateY(-1px)}.folder-tree-row.active{border-color:var(--clay-300);box-shadow:0 0 0 3px rgba(122,106,69,.09)}.folder-tree-row-indent{flex-shrink:0}.file-folder-icon,.file-report-icon,.folder-tree-icon,.report-history-icon{width:28px;height:28px;border-radius:10px;display:grid;place-items:center;flex-shrink:0;color:var(--ink-700);background:var(--folder-tint,rgba(122,106,69,.18))}.color-clay{background:rgba(122,106,69,.18);color:var(--clay-700)}.color-sky{background:rgba(58,122,179,.18);color:#2f6ea7}.color-mint{background:rgba(70,154,137,.18);color:#2e786a}.color-sun{background:rgba(194,135,43,.18);color:#a56f20}.color-rose{background:rgba(197,92,114,.18);color:#b04d67}.color-ink{background:rgba(78,83,103,.18);color:#50566a}.folder-tree-copy{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1}.file-folder-title,.file-report-title,.folder-tree-copy strong,.report-history-title{font-size:13.5px;font-weight:600;color:var(--ink-900);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.folder-tree-copy small{font-size:11.5px;color:var(--ink-500);text-transform:capitalize}.folder-tree-count{font-size:12px;font-weight:700;color:var(--clay-700);background:var(--clay-50);border:1px solid var(--clay-200);border-radius:999px;padding:2px 8px;flex-shrink:0}.folder-tree-actions{display:flex;gap:8px;flex-wrap:wrap;padding-left:24px}.folder-tree-children{display:flex;flex-direction:column;gap:10px;padding-left:8px;border-left:1px dashed var(--line);margin-left:10px}.explorer-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));grid-gap:12px;gap:12px}.file-folder-card,.file-report-card{border:1px solid var(--line);border-radius:18px;background:linear-gradient(180deg,#fff,#fdfaf3);box-shadow:var(--sh-1);padding:14px;text-align:left;transition:transform .14s var(--ease),border-color .14s var(--ease),box-shadow .14s var(--ease)}.file-folder-card:hover,.file-report-card:hover{transform:translateY(-2px);border-color:var(--line-2);box-shadow:var(--sh-2)}.file-folder-card{display:flex;flex-direction:column;gap:10px;width:100%;cursor:pointer}.file-folder-title,.file-report-title{white-space:normal;line-height:1.35}.file-folder-meta,.file-report-meta,.report-history-folder{font-size:12px;color:var(--ink-500);line-height:1.4}.file-report-card{display:flex;flex-direction:column;gap:12px}.file-report-body{display:flex;flex-direction:column;gap:10px;text-align:left;width:100%;border:0;background:transparent;padding:0;cursor:pointer}.file-report-chip{font-size:11.5px;color:var(--clay-700);background:var(--clay-50);border:1px solid var(--clay-200);border-radius:999px;padding:5px 8px;width:-moz-fit-content;width:fit-content}.file-report-actions{display:flex;gap:8px;flex-wrap:wrap}.report-history-item-list,.report-history-left{align-items:flex-start}.report-history-left{display:flex;gap:12px;min-width:0}.report-history-icon{width:34px;height:34px;border-radius:12px}.report-detail-page{max-width:1080px;margin:0 auto}.report-detail-topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid var(--line)}.report-detail-back{font-weight:600;gap:4px}.report-detail-topbar-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.report-detail-heading{margin-bottom:20px}.report-detail-heading h1{font-size:20px;font-weight:700;color:var(--ink-900);margin:0 0 4px}.report-detail-heading .sub{font-size:13px;color:var(--ink-500)}.report-detail-content{min-height:200px}.folder-popup{width:min(620px,100%)}.popup-body{padding:18px 20px 20px;display:flex;flex-direction:column;gap:14px}.popup-footer{justify-content:flex-end;gap:10px;padding:0 20px 20px}.folder-color-palette{display:flex;flex-direction:column;gap:10px}.folder-color-label{font-size:12px;font-weight:600;color:var(--ink-700)}.folder-color-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px;gap:8px}.folder-color-chip{display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink-700);text-align:left}.folder-color-chip.selected{border-color:var(--clay-300);box-shadow:0 0 0 3px rgba(122,106,69,.09)}.folder-color-swatch{width:12px;height:12px;border-radius:999px;flex-shrink:0}.recommendation-option input{display:none}.recommendation-option-check{width:20px;height:20px;border-radius:6px;border:1.5px solid var(--line-2);background:var(--surface);display:grid;place-items:center;flex-shrink:0;margin-top:1px;transition:background .12s var(--ease),border-color .12s var(--ease)}.recommendation-option-check svg{opacity:0}.recommendation-option.checked .recommendation-option-check{background:var(--clay-500);border-color:var(--clay-500)}.recommendation-option.checked .recommendation-option-check svg{opacity:1}.recommendation-option-copy{display:flex;flex-direction:column;gap:3px;min-width:0}.recommendation-option-code{font-family:Geist Mono,monospace;font-size:11px;color:var(--ink-500)}.recommendation-option-text{font-size:13.5px;color:var(--ink-800);line-height:1.45}.report-template-note{font-size:13px;color:var(--ink-500);padding:4px 20px 0}.template-options{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px;padding:14px 20px 20px}.template-option{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border:1px solid var(--line);border-radius:var(--r-md);cursor:pointer;transition:border-color .14s var(--ease),background .14s var(--ease),box-shadow .14s var(--ease)}.template-option:hover{border-color:var(--line-2)}.template-option.selected{border-color:var(--clay-400);background:var(--clay-50);box-shadow:0 0 0 3px rgba(41,127,184,.1)}.template-option input{display:none}.template-option-check{width:18px;height:18px;border-radius:50%;border:2px solid var(--line-2);flex-shrink:0;margin-top:2px;position:relative;transition:border-color .14s var(--ease)}.template-option.selected .template-option-check{border-color:var(--clay-500)}.template-option.selected .template-option-check:after{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--clay-500)}.template-option-copy{display:flex;flex-direction:column;gap:3px}.template-option-title{font-size:13.5px;font-weight:600;color:var(--ink-900)}.template-option-text{font-size:12.5px;color:var(--ink-500)}.report-student-card{padding:18px 20px}.report-student-label{font-size:11.5px;text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:var(--ink-500)}.report-student-name{font-size:20px;font-weight:600;color:var(--ink-900);margin-top:4px;letter-spacing:-.01em}.report-student-meta{font-size:13px;color:var(--ink-600);margin-top:2px}.report-toggles{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:10px;gap:10px;padding:14px 20px 20px}.report-toggle-item{display:flex;align-items:center;gap:11px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--r-md);cursor:pointer;transition:border-color .14s var(--ease),background .14s var(--ease)}.report-toggle-item:hover{border-color:var(--line-2)}.report-toggle-item.active{border-color:var(--clay-300);background:var(--clay-50)}.report-toggle-item input{display:none}.report-toggle-check{width:18px;height:18px;border-radius:5px;border:1.5px solid var(--line-2);background:var(--surface);display:grid;place-items:center;flex-shrink:0;transition:background .12s var(--ease),border-color .12s var(--ease)}.report-toggle-check svg{opacity:0}.report-toggle-item.active .report-toggle-check{background:var(--clay-500);border-color:var(--clay-500)}.report-toggle-item.active .report-toggle-check svg{opacity:1}.report-toggle-name{font-size:13.5px;font-weight:500;color:var(--ink-900);flex:1 1}.report-toggle-count{font-size:11.5px;color:var(--ink-500)}.toggle-label{display:flex;align-items:center;gap:11px;cursor:pointer;padding:14px 20px 20px}.toggle-label input{display:none}.toggle-switch{width:40px;height:22px;border-radius:999px;background:var(--line-2);position:relative;flex-shrink:0;transition:background .18s var(--ease)}.toggle-switch:after{content:"";position:absolute;top:2px;inset-inline-start:2px;width:18px;height:18px;border-radius:50%;background:var(--surface);box-shadow:var(--sh-1);transition:transform .18s var(--ease)}.toggle-label input:checked+.toggle-switch{background:var(--clay-500)}.toggle-label input:checked+.toggle-switch:after{transform:translateX(18px)}[dir=rtl] .toggle-label input:checked+.toggle-switch:after{transform:translateX(-18px)}.toggle-text{font-size:13.5px;color:var(--ink-800)}.report-summary{padding:16px 20px 20px}.report-summary-header{display:flex;gap:20px;flex-wrap:wrap;align-items:stretch}.report-summary-total{flex:0 0 auto;min-width:200px;padding:16px 18px;border-radius:var(--r-lg);background:var(--clay-50);border:1px solid var(--clay-200)}.report-summary-total-label{font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;font-weight:600;color:var(--clay-700)}.report-summary-total-value{font-size:38px;font-weight:600;color:var(--ink-900);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.1;margin-top:4px}.report-summary-total-meta{font-size:12px;color:var(--ink-600);margin-top:2px}.report-summary-kpis{flex:1 1;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:12px;gap:12px;min-width:0}.report-kpi-card{padding:14px 16px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}.report-kpi-label{font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;font-weight:600;color:var(--ink-500)}.report-kpi-value{font-size:18px;font-weight:600;color:var(--ink-900);margin-top:4px}.report-kpi-sub{font-size:11.5px;color:var(--ink-500);margin-top:1px}.report-distribution{margin-top:20px;display:flex;flex-direction:column;gap:14px}.dist-row.excluded{opacity:.5}.dist-row-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:6px}.dist-name{font-size:13px;font-weight:500;color:var(--ink-800)}.dist-count{font-size:12.5px;color:var(--ink-600);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.dist-bar{height:8px;background:var(--surface-2);border-radius:6px;overflow:hidden}.dist-fill{display:block;height:100%;background:var(--clay-500);border-radius:6px;transition:width .4s var(--ease)}.dist-meta{font-size:11px;color:var(--ink-500);margin-top:4px}.popup-overlay{position:fixed;inset:0;background:rgba(20,18,14,.45);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:grid;place-items:center;z-index:1100;padding:24px;animation:fadein .2s var(--ease)}.popup{background:var(--surface);border-radius:var(--r-xl);box-shadow:var(--sh-3);width:min(640px,100%);max-height:calc(100vh - 48px);display:flex;flex-direction:column;overflow:hidden;animation:modal-in .25s var(--ease)}.popup-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 20px;border-bottom:1px solid var(--line)}.popup-header h3{margin:0;font-size:15.5px;font-weight:600;color:var(--ink-900)}.popup-header-meta{font-size:12.5px;color:var(--ink-500);margin-top:3px;line-height:1.4}.popup-close{width:32px;height:32px;border-radius:var(--r-sm);border:0;background:transparent;display:grid;place-items:center;color:var(--ink-500);cursor:pointer;flex-shrink:0;transition:background .12s var(--ease),color .12s var(--ease)}.popup-close:hover{background:var(--surface-2);color:var(--ink-900)}.popup-tabs{display:flex;gap:4px;padding:12px 20px 0;border-bottom:1px solid var(--line);flex-wrap:wrap}.popup-tabs.hidden{display:none}.popup-tab{padding:8px 14px;font-size:13px;font-weight:500;color:var(--ink-600);background:transparent;border:0;border-bottom:2px solid transparent;margin-bottom:-1px;cursor:pointer;transition:color .12s var(--ease)}.popup-tab:hover{color:var(--ink-900)}.popup-tab.active{color:var(--clay-700);border-bottom-color:var(--clay-500)}.popup-body{padding:18px 20px;overflow-y:auto;flex:1 1}.student-picker-overlay{z-index:1160}.student-picker-popup{width:min(920px,100%)}.student-picker-body{display:flex;flex-direction:column;gap:14px;padding:18px 20px 20px;overflow-y:auto;flex:1 1}.student-picker-search input{width:100%}.student-picker-current{padding:14px 16px;border-radius:var(--r-md);border:1px solid var(--clay-200);background:var(--clay-50)}.student-picker-current-label{font-size:11.5px;text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:var(--clay-700)}.student-picker-current-value{margin-top:4px;font-size:15px;font-weight:700;color:var(--ink-900)}.student-picker-current-meta{margin-top:3px;font-size:12px;color:var(--ink-600);line-height:1.45}.student-picker-results{display:flex;flex-direction:column;gap:10px}.student-picker-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;border-radius:var(--r-lg);border:1px solid var(--line);background:var(--surface)}.student-picker-row.active{border-color:var(--clay-300);background:var(--clay-50)}.student-picker-row-main{min-width:0;display:flex;flex-direction:column;gap:4px}.student-picker-row-title{font-size:14px;font-weight:700;color:var(--ink-900)}.student-picker-row-meta{font-size:12px;color:var(--ink-500);line-height:1.45}.student-picker-empty{padding:18px 16px;border-radius:var(--r-md);border:1px dashed var(--line-2);background:var(--surface-2);color:var(--ink-500);text-align:center;font-size:13px}.student-picker-empty.error{border-color:#e6c0ba;background:var(--bad-50);color:var(--bad-700)}.sub-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}.sub-tab{padding:5px 12px;font-size:12.5px;font-weight:500;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--ink-600);cursor:pointer;transition:all .12s var(--ease)}.sub-tab:hover{border-color:var(--line-2);color:var(--ink-900)}.sub-tab.active{background:var(--clay-50);border-color:var(--clay-300);color:var(--clay-700)}.char-group-label{font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;font-weight:600;color:var(--ink-500);margin:14px 0 8px}.char-group-label:first-child{margin-top:0}.char-grid{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:6px}.char-btn{min-width:38px;height:38px;padding:0 10px;border-radius:var(--r-sm);border:1px solid var(--line-2);background:var(--surface);color:var(--ink-800);font-size:14px;cursor:pointer;transition:border-color .12s var(--ease),background .12s var(--ease),color .12s var(--ease),transform .04s}.char-btn:hover{border-color:var(--clay-400);background:var(--clay-50)}.char-btn:active{transform:translateY(1px)}.char-btn.lg{min-width:46px;height:46px;font-size:19px}.char-btn.selected{background:var(--clay-500);border-color:var(--clay-500);color:#fff}.char-btn.pending{border-color:var(--clay-500);background:var(--clay-50);color:var(--clay-700);box-shadow:0 0 0 3px rgba(41,127,184,.18)}.custom-input-area>p,.dropdown-issue-help,.pair-hint{font-size:12.5px;color:var(--ink-600);background:var(--info-50);border:1px solid #bad1e0;color:var(--info-700);border-radius:var(--r-md);padding:9px 12px;margin-bottom:14px;line-height:1.45}.custom-input-area>p{background:var(--surface-2);border-color:var(--line);color:var(--ink-600)}.popup-special-section{margin-bottom:12px}.popup-special-title{font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;font-weight:600;color:var(--ink-500);margin-bottom:8px}.dropdown-issue-label{font-size:12.5px;font-weight:500;color:var(--ink-700)}.dropdown-issue-select{width:100%;height:38px;margin-top:6px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--surface) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none' stroke='%23807B70' stroke-width='1.6' stroke-linecap='round'><path d='M3 5l3 3 3-3'/></svg>") no-repeat right 10px center;border:1px solid var(--line-2);border-radius:var(--r-md);padding:0 30px 0 12px;font-size:13.5px;color:var(--ink-900);cursor:pointer}.dropdown-issue-select:focus{outline:none;border-color:var(--clay-400);box-shadow:0 0 0 3px rgba(41,127,184,.15)}.dropdown-issue-help{margin-top:8px;margin-bottom:0}.custom-input-row{display:flex;gap:8px;margin-bottom:12px}.custom-input-row input{flex:1 1;height:38px;border:1px solid var(--line-2);border-radius:var(--r-md);padding:0 12px;font-size:14px;color:var(--ink-900)}.custom-input-row input:focus{outline:none;border-color:var(--clay-400);box-shadow:0 0 0 3px rgba(41,127,184,.15)}.custom-chips{font-size:12px;color:var(--ink-500)}.custom-input-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px}.custom-input-actions-note{font-size:11.5px;color:var(--ink-500);line-height:1.4}.custom-keyboard{border:1px solid var(--line);border-radius:22px;background:linear-gradient(180deg,var(--surface),var(--surface-2));overflow:hidden;box-shadow:0 18px 46px rgba(20,18,14,.16)}.keyboard-dock{position:fixed;right:16px;bottom:16px;width:min(var(--keyboard-dock-width,780px),calc(100vw - 32px));max-height:min(var(--keyboard-dock-max-height,calc(100vh - 32px)),calc(100vh - 32px));z-index:1125;touch-action:none;will-change:left,top;pointer-events:auto}.keyboard-dock.positioned{right:auto;bottom:auto}.keyboard-dock.dragging{z-index:1130}.keyboard-drag-handle{cursor:-webkit-grab;cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:none}.keyboard-dock.dragging .keyboard-drag-handle{cursor:-webkit-grabbing;cursor:grabbing}.custom-keyboard-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:var(--keyboard-pad-y,14px) var(--keyboard-pad-x,16px) calc(var(--keyboard-pad-y, 14px) - 2px);border-bottom:1px solid var(--line);background:linear-gradient(180deg,hsla(0,0%,100%,.62),hsla(0,0%,100%,.1))}.custom-keyboard-header-xl{align-items:center;padding-top:8px;padding-bottom:8px;gap:10px}.custom-keyboard-header-copy{flex:1 1;min-width:0}.custom-keyboard-title{font-size:13px;font-weight:700;color:var(--ink-900);letter-spacing:.01em}.custom-keyboard-note{font-size:11.5px;color:var(--ink-500);margin-top:2px;line-height:1.45;max-width:var(--keyboard-note-max-width,56ch)}.keyboard-header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0;flex-wrap:wrap;justify-content:flex-end}.keyboard-header-actions-xl{gap:6px;flex-wrap:nowrap}.keyboard-toggle-btn{border:1px solid var(--line-2);background:var(--surface);border-radius:999px;padding:7px 12px;font-size:12px;font-weight:600;color:var(--ink-700);cursor:pointer;white-space:nowrap;flex-shrink:0;transition:background .12s var(--ease),border-color .12s var(--ease),color .12s var(--ease)}.keyboard-toggle-btn:hover{background:var(--surface-2);border-color:var(--ink-300)}.keyboard-toggle-btn-small{padding-inline:10px;min-width:72px}.keyboard-size-tabs{display:inline-flex;align-items:center;gap:4px;padding:3px;border:1px solid var(--line-2);border-radius:999px;background:var(--surface)}.keyboard-size-btn{border:0;background:transparent;color:var(--ink-600);width:34px;height:28px;border-radius:999px;font-size:11px;font-weight:700;cursor:pointer;transition:background .12s var(--ease),color .12s var(--ease),box-shadow .12s var(--ease)}.keyboard-size-btn.active{background:var(--clay-50);color:var(--clay-700);box-shadow:inset 0 0 0 1px var(--clay-300)}.keyboard-switches{display:flex;flex-direction:column;gap:10px;padding:12px var(--keyboard-pad-x,16px) 0}.keyboard-lang-tabs,.keyboard-view-tabs{display:flex;gap:6px;flex-wrap:wrap}.keyboard-lang,.keyboard-view{padding:6px 12px;font-size:12px;font-weight:600;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--ink-600);cursor:pointer;transition:all .12s var(--ease)}.keyboard-lang.active,.keyboard-view.active{background:var(--clay-50);border-color:var(--clay-300);color:var(--clay-700)}.keyboard-grid-wrap{display:flex;flex-direction:column;gap:var(--keyboard-row-gap,8px);padding:12px var(--keyboard-pad-x,16px) var(--keyboard-pad-y,16px);overflow-y:auto}.keyboard-row{display:flex;gap:var(--keyboard-gap,6px);flex-wrap:nowrap}.keyboard-key{flex:1 1;min-width:0;min-height:var(--keyboard-key-min-height,42px);padding:0 calc(var(--keyboard-gap, 6px) * 1.5);border-radius:14px;border:1px solid var(--line-2);background:var(--surface);color:var(--ink-800);font-size:var(--keyboard-key-font-size,14px);font-weight:500;cursor:pointer;overflow:hidden;transition:border-color .12s var(--ease),background .12s var(--ease),transform .04s}.keyboard-key:hover{border-color:var(--clay-400);background:var(--clay-50)}.keyboard-key:active{transform:translateY(1px)}.keyboard-key.wide{flex:1.8 1}.keyboard-key.action{font-size:12px;font-weight:600;color:var(--ink-600)}.keyboard-key.action.active{background:var(--clay-50);border-color:var(--clay-300);color:var(--clay-700)}.keyboard-actions{margin-top:2px}@media (max-width:860px){.keyboard-dock{left:12px;right:12px;bottom:12px;width:auto;max-height:calc(100vh - 24px)}.custom-keyboard{box-shadow:var(--sh-3)}}@media (max-width:560px){.custom-input-row{flex-direction:column}.custom-input-row .btn{width:100%;justify-content:center}.custom-input-actions{align-items:stretch}.custom-input-actions .keyboard-toggle-btn{width:100%}.keyboard-switches{padding-top:10px}.keyboard-header-actions{width:100%;justify-content:flex-start}.keyboard-header-actions-xl{width:auto;justify-content:flex-end}.keyboard-row{gap:4px}.keyboard-key{min-height:40px;font-size:13px;padding:0 8px}}.popup-footer{border-top:1px solid var(--line);padding:14px 20px;display:flex;flex-direction:column;gap:12px}.selected-preview{min-height:22px}.preview-empty{font-size:12.5px;color:var(--ink-400)}.preview-output{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-md);padding:10px 12px;margin-bottom:10px}.preview-output-label{font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;font-weight:600;color:var(--ink-500)}.preview-output-text{font-size:13px;color:var(--ink-900);margin-top:3px;line-height:1.45}.preview-chips{display:flex;flex-wrap:wrap;gap:6px}.sel-chip{display:inline-flex;align-items:center;gap:5px;padding:3px 5px 3px 10px;border-radius:999px;background:var(--clay-50);border:1px solid var(--clay-200);color:var(--clay-700);font-size:12.5px}.sel-chip button{width:18px;height:18px;border:0;background:transparent;color:var(--clay-600);cursor:pointer;display:grid;place-items:center;border-radius:50%}.sel-chip button:hover{background:var(--clay-100)}.popup-actions{display:flex;justify-content:flex-end;gap:8px}.btn.btn-sm{height:32px;font-size:12.5px;padding:0 12px}.dialog-overlay{position:fixed;inset:0;background:rgba(20,18,14,.45);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:grid;place-items:center;z-index:1100;padding:24px;animation:fadein .2s var(--ease)}.dialog{background:var(--surface);border-radius:var(--r-xl);box-shadow:var(--sh-3);width:min(420px,100%);padding:28px 26px 22px;text-align:center;animation:modal-in .25s var(--ease)}.dialog-icon{width:56px;height:56px;border-radius:16px;background:var(--bad-50);color:var(--bad-700);display:grid;place-items:center;margin:0 auto 16px}.dialog-title{margin:0;font-size:18px;font-weight:600;color:var(--ink-900)}.dialog-body{font-size:13.5px;color:var(--ink-600);margin:8px 0 22px;line-height:1.5}.dialog-actions{display:flex;justify-content:center;gap:10px}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:16px;gap:16px;padding:20px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:12.5px;font-weight:500;color:var(--ink-700)}.form-group .required{color:var(--clay-500)}.form-group input,.form-group select,.form-group textarea{width:100%;height:38px;border:1px solid var(--line-2);border-radius:var(--r-md);padding:0 12px;font-size:13.5px;color:var(--ink-900);background:var(--surface);transition:border-color .12s var(--ease),box-shadow .12s var(--ease)}.form-group textarea{height:auto;min-height:120px;padding:10px 12px;resize:vertical;line-height:1.5}.form-group select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--surface) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none' stroke='%23807B70' stroke-width='1.6' stroke-linecap='round'><path d='M3 5l3 3 3-3'/></svg>") no-repeat right 10px center;-webkit-padding-end:30px;padding-inline-end:30px;cursor:pointer}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--clay-400);box-shadow:0 0 0 3px rgba(41,127,184,.15)}.form-actions{display:flex;justify-content:space-between;gap:12px;padding:16px 20px;border-top:1px solid var(--line);flex-wrap:wrap}.form-actions.nav-actions{border-top:0;padding:4px 0 0}.page-header{margin-bottom:22px}.page-header h1{margin:0;font-size:26px;font-weight:600;letter-spacing:-.02em;color:var(--ink-900);line-height:1.2}.page-header p{margin:6px 0 0;font-size:14px;color:var(--ink-500);line-height:1.55;max-width:760px}.btn .btn-ic{display:inline-grid;place-items:center}.btn .btn-ic svg{display:block}.choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:16px;gap:16px}.choice-card{display:flex;flex-direction:column;align-items:flex-start;gap:14px;padding:22px 20px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-1);cursor:pointer;text-align:start;transition:transform .15s var(--ease),box-shadow .2s var(--ease),border-color .15s var(--ease)}.choice-card:hover{transform:translateY(-2px);box-shadow:var(--sh-2);border-color:var(--clay-300)}.choice-card .choice-ic{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:var(--clay-50);color:var(--clay-600)}.choice-card .choice-title{font-size:16px;font-weight:600;color:var(--ink-900)}.choice-card .choice-meta{font-size:12.5px;color:var(--ink-500)}.choice-card .choice-cta{margin-top:auto;display:inline-flex;align-items:center;gap:6px;color:var(--clay-600);font-size:13px;font-weight:500}.viewer-shell{display:flex;flex-direction:column;gap:16px}.viewer-stage{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-1);display:flex;align-items:center;justify-content:center;padding:20px 76px;min-height:60vh;overflow:hidden}.viewer-stage img{display:block;max-width:100%;max-height:calc(100vh - 280px);width:auto;height:auto;object-fit:contain;border-radius:var(--r-sm)}.viewer-nav{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:64px;border-radius:var(--r-md);border:1px solid var(--line);background:var(--surface);box-shadow:var(--sh-1);display:grid;place-items:center;color:var(--ink-700);cursor:pointer;z-index:5;transition:background .12s var(--ease),color .12s var(--ease),box-shadow .12s var(--ease)}.viewer-nav:hover:not(:disabled){background:var(--clay-50);color:var(--clay-700);box-shadow:var(--sh-2)}.viewer-nav:disabled{opacity:.35;cursor:default}.viewer-nav.prev{inset-inline-start:14px}.viewer-nav.next{inset-inline-end:14px}[dir=rtl] .viewer-nav svg{transform:scaleX(-1)}.viewer-counter{position:absolute;bottom:14px;left:50%;transform:translateX(-50%);background:var(--ink-900);color:#fff;font-size:12.5px;font-weight:500;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;padding:4px 14px;border-radius:999px;pointer-events:none}.viewer-thumbs{display:flex;gap:8px;overflow-x:auto;padding:6px 2px}.viewer-thumb{flex:0 0 auto;width:64px;height:80px;border-radius:var(--r-sm);border:2px solid var(--line);overflow:hidden;background:var(--surface-2);cursor:pointer;padding:0;transition:border-color .12s var(--ease)}.viewer-thumb img{width:100%;height:100%;object-fit:cover;display:block}.viewer-thumb.active{border-color:var(--clay-500)}.viewer-empty{padding:80px 20px;text-align:center;color:var(--ink-500)}.page-fullscreen{position:fixed;inset:0;z-index:1000;max-width:none;margin:0;padding:0;overflow:hidden;background:#0b1016}.page-fullscreen .fullscreen-exit-wrap{position:fixed;top:10px;inset-inline-start:10px;z-index:1010}.page-fullscreen .fullscreen-exit{width:28px;height:28px;border:0;border-radius:999px;display:grid;place-items:center;background:hsla(0,0%,100%,.08);color:hsla(0,0%,100%,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer}.page-fullscreen .fullscreen-exit:hover{background:hsla(0,0%,100%,.14)}.page-fullscreen .viewer-shell-fullscreen{position:fixed;inset:0;margin:0;gap:0}.page-fullscreen .viewer-stage-fullscreen{position:fixed;inset:0;width:100vw;height:100vh;min-height:100vh;padding:14px;background:transparent;border:0;border-radius:0;box-shadow:none;overflow:hidden;touch-action:pan-y;-webkit-user-select:none;-moz-user-select:none;user-select:none}.page-fullscreen .viewer-stage-fullscreen img{max-width:calc(100vw - 28px);max-height:calc(100vh - 28px);width:auto;height:auto;object-fit:contain;border-radius:0;pointer-events:none}.page-fullscreen .fullscreen-loading{position:fixed;inset:0;display:grid;place-items:center;color:hsla(0,0%,100%,.78);font-size:14px}.page-fullscreen .page-head,.page-fullscreen .viewer-counter,.page-fullscreen .viewer-nav,.page-fullscreen .viewer-thumbs{display:none!important}@media (max-width:640px){.template-options{grid-template-columns:1fr}.form-actions{flex-direction:column-reverse}.form-actions .btn{width:100%;justify-content:center}.viewer-stage{padding:14px 14px 56px;min-height:46vh}.viewer-nav{width:40px;height:52px}.viewer-nav.prev{inset-inline-start:8px}.viewer-nav.next{inset-inline-end:8px}.issue-item{gap:8px}.page-fullscreen .viewer-stage-fullscreen{padding:10px}.page-fullscreen .viewer-stage-fullscreen img{max-width:calc(100vw - 20px);max-height:calc(100vh - 20px)}.saved-reports-layout{grid-template-columns:1fr}.saved-reports-sidebar{position:static}.folder-color-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.explorer-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.report-detail-topbar{flex-direction:column;align-items:flex-start}.report-detail-topbar-actions{width:100%;flex-wrap:wrap}}.student-unassigned{display:inline-flex;align-items:center;gap:4px;font-size:11.5px;font-weight:600;color:var(--warn-700);background:var(--warn-50);border:1px solid var(--warn-200,var(--line));padding:2px 7px;border-radius:999px;white-space:nowrap}.student-plan-chips{display:flex;flex-wrap:wrap;gap:4px}.student-plan-chip{display:inline-flex;align-items:center;gap:4px;font-size:10.5px;font-weight:650;line-height:1.5;padding:1px 6px;border-radius:999px;border:1px solid transparent;white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.student-plan-chip .dot{width:6px;height:6px;border-radius:50%;flex:none}.student-therapy-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid var(--line)}.student-therapy-head .lbl{font-size:12px;font-weight:650;color:var(--ink-600)}.student-therapy-head .org-inline-select{min-width:190px}.dash{display:flex;flex-direction:column;gap:18px}.dash-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.dash-head h1{margin:0;font-size:24px}.dash-head .sub{color:var(--ink-500);font-size:13px;margin-top:2px}.dash-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:12px;gap:12px}.dash-kpi{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:14px 16px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--sh-1);cursor:pointer;text-align:left;transition:box-shadow .12s var(--ease),transform .05s var(--ease)}.dash-kpi:hover{box-shadow:var(--sh-2);transform:translateY(-1px)}.dash-kpi .ic{display:inline-flex;width:30px;height:30px;align-items:center;justify-content:center;border-radius:9px;background:var(--clay-50,#e7f1f8);color:var(--clay-600);margin-bottom:4px}.dash-kpi .v{font-size:26px;font-weight:700;color:var(--ink-900);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.05}.dash-kpi .l{font-size:12px;color:var(--ink-500)}.dash-kpi.warn .ic{background:var(--warn-50);color:var(--warn-700)}.dash-body{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);grid-gap:16px;gap:16px;align-items:start}.dash-card{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--sh-1);overflow:hidden}.dash-card-head{display:flex;align-items:baseline;justify-content:space-between;padding:13px 16px;border-bottom:1px solid var(--line)}.dash-card-head h3{margin:0;font-size:14px}.dash-card-sub{font-size:12px;color:var(--ink-500)}.dash-agenda{list-style:none;margin:0;padding:4px;display:flex;flex-direction:column}.dash-agenda-row{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:var(--r-md);cursor:pointer}.dash-agenda-row:hover{background:var(--surface-2)}.dash-agenda-row .t{font-size:12px;font-weight:650;color:var(--ink-700);width:58px;flex:none;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.dash-agenda-row .rail{width:4px;height:26px;border-radius:3px;flex:none}.dash-agenda-row .who{flex:1 1;min-width:0}.dash-agenda-row .who .nm{font-size:13px;font-weight:600;color:var(--ink-900)}.dash-agenda-row .who .mt,.dash-agenda-row .who .nm{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dash-agenda-row .who .mt{font-size:11.5px;color:var(--ink-500)}.dash-agenda-row .st{font-size:10.5px;font-weight:650;text-transform:capitalize;padding:2px 8px;border-radius:999px;background:var(--surface-2);color:var(--ink-600);border:1px solid var(--line);flex:none}.dash-agenda-row .st.st-completed{background:var(--good-50);color:var(--good-700);border-color:transparent}.dash-agenda-row .st.st-no_show{background:var(--bad-50);color:var(--bad-700);border-color:transparent}.dash-empty{display:flex;align-items:center;gap:8px;padding:22px 16px;color:var(--ink-500);font-size:13px}.dash-empty svg{color:var(--good-500)}.dash-launchers{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px;align-content:start}.dash-launchers.full{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.dash-launch{display:flex;align-items:center;gap:11px;padding:13px 14px;text-align:left;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);cursor:pointer;box-shadow:var(--sh-1);transition:box-shadow .12s var(--ease),transform .05s var(--ease)}.dash-launch:hover{box-shadow:var(--sh-2);transform:translateY(-1px)}.dash-launch .ic{display:inline-flex;width:38px;height:38px;align-items:center;justify-content:center;border-radius:11px;background:var(--surface-2);color:var(--clay-600);flex:none}.dash-launch .tx{flex:1 1;min-width:0}.dash-launch .lb{display:flex;align-items:center;gap:7px;font-size:13.5px;font-weight:650;color:var(--ink-900)}.dash-launch .sb{display:block;font-size:11.5px;color:var(--ink-500);margin-top:1px}.dash-launch>svg{color:var(--ink-300);flex:none}.dash-badge{font-size:10px;font-weight:700;background:var(--clay-500);color:#fff;border-radius:999px;padding:1px 6px}@media (max-width:860px){.dash-body{grid-template-columns:1fr}.dash-launchers{grid-template-columns:1fr 1fr}}@media (max-width:520px){.dash-launchers,.dash-launchers.full{grid-template-columns:1fr}}.parent-access-empty p{margin:0 0 14px;color:var(--ink-600);max-width:62ch}.parent-access-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:12px;gap:12px;margin-bottom:14px}.parent-access-form label{display:flex;flex-direction:column;gap:6px}.parent-access-form label span{font-size:12px;font-weight:600;color:var(--ink-600)}.parent-access-form input,.parent-access-form select{height:38px;padding:0 10px;border:1px solid var(--line-2);border-radius:var(--r-md);background:var(--surface);outline:none;transition:border-color .16s var(--ease),box-shadow .16s var(--ease)}.parent-access-form input:focus,.parent-access-form select:focus{border-color:var(--clay-400);box-shadow:0 0 0 3px rgba(41,127,184,.14)}.parent-access-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:10px;gap:10px;margin-bottom:16px}.parent-access-summary>div{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-2);padding:10px 12px}.parent-access-summary span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-500);margin-bottom:4px}.parent-access-summary strong{font-size:14px;color:var(--ink-900)}.parent-access-summary .tone-good{color:var(--good-700)}.parent-access-summary .tone-bad{color:var(--bad-700)}.parent-access-actions{display:flex;flex-wrap:wrap;gap:8px}.parent-access-slip{margin-top:18px;border:1px solid var(--good-500);background:var(--good-50);border-radius:var(--r-lg);padding:14px 16px}.parent-access-slip-head{display:flex;align-items:center;gap:8px;color:var(--good-700);margin-bottom:6px}.parent-access-slip p{margin:0 0 12px;font-size:13px;color:var(--ink-700)}.parent-access-slip dl{margin:0 0 12px;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:10px;gap:10px}.parent-access-slip dt{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-500);margin-bottom:3px}.parent-access-slip dd{margin:0;font-size:15px;font-weight:600;color:var(--ink-900);word-break:break-all}.goals-plan-card{margin-bottom:16px;border-left:3px solid var(--clay-400)}.goals-plan-card textarea{width:100%;margin-top:4px}.goals-months-field{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--ink-500)}.goals-months-field input{width:56px;text-align:center;padding:4px 6px}.goals-periods-head{display:flex;align-items:center;gap:10px;margin-bottom:10px;flex-wrap:wrap}.goals-partition-pill{font-size:11.5px;font-weight:650;padding:3px 10px;border-radius:999px;background:var(--surface-2);color:var(--ink-500)}.goals-partition-pill.complete{background:var(--good-50);color:var(--good-700)}.goals-partition-pill.over{background:var(--bad-50);color:var(--bad-700)}.goals-period-list{display:grid;grid-gap:10px;gap:10px;margin-bottom:14px}.goals-period-card{border-left:3px solid var(--line)}.goals-period-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:8px}.goals-period-label-input{flex:1 1;min-width:120px;font-weight:650;border:none;background:transparent;padding:2px 4px;border-radius:6px}.goals-period-label-input:focus,.goals-period-label-input:hover{background:var(--surface-2)}.goals-period-items{width:100%;margin-top:2px}.goals-new-period{border-style:dashed;border-left-color:var(--line)}.goals-sessions-toggle{margin-top:10px;border:none;background:none;color:var(--clay-600);font-size:12px;font-weight:600;cursor:pointer;padding:4px 0}.goals-sessions-toggle:hover{text-decoration:underline}.goals-session-list{margin-top:8px;display:grid;grid-gap:6px;gap:6px}.goals-session-row{border:1px solid var(--line);border-radius:10px;background:var(--surface);overflow:hidden}.goals-session-row-toggle{width:100%;display:flex;align-items:center;gap:10px;padding:8px 12px;background:none;border:none;cursor:pointer;font-size:12.5px;color:var(--ink-700);text-align:left}.goals-session-row-toggle:hover{background:var(--surface-2)}.goals-session-mini{padding:4px 12px 12px;border-top:1px solid var(--line)}.goals-mini-checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;flex:1 1}.date-input{display:inline-flex;align-items:center;gap:0;border:1px solid var(--line);border-radius:10px;background:var(--surface);padding:0 10px;height:38px;width:100%;box-sizing:border-box}.date-input:focus-within{border-color:var(--clay-400);outline:2px solid var(--clay-100)}.date-input-seg{border:none!important;background:transparent!important;outline:none!important;padding:0!important;text-align:center;font-size:14px;color:var(--ink-900);width:28px;min-width:0;-moz-appearance:textfield}.date-input-seg.date-input-year{width:44px}.date-input-seg::placeholder{color:var(--ink-400)}.date-input-sep{color:var(--ink-400);padding:0 4px;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-shrink:0}.auth-field .date-input{border-radius:10px}.su-card{width:min(100%,560px)}.su-step-kicker{display:flex;align-items:center;justify-content:space-between;width:100%;margin-bottom:6px}.signup-step-badge{display:flex;align-items:center;gap:8px}.signup-step-dots{display:flex;gap:5px}.signup-dot{width:7px;height:7px;border-radius:50%;background:var(--line-2);transition:background .18s}.signup-dot.active{background:var(--clay-500)}.signup-dot.done{background:var(--good-400)}.signup-step-label{font-size:11px;font-weight:600;color:var(--ink-500);letter-spacing:.03em}.su-field{flex-direction:column}.su-field,.su-label{display:flex;gap:6px}.su-label{font-size:12px;font-weight:650;color:var(--ink-700);align-items:baseline}.su-hint{font-size:11px;font-weight:400;color:var(--ink-400)}.su-input{border:1px solid var(--line-2);border-radius:11px;padding:11px 13px;background:var(--surface);outline:none;font-size:14px;transition:border-color .14s,box-shadow .14s;width:100%;box-sizing:border-box}.su-input:focus{border-color:var(--clay-400);box-shadow:0 0 0 3px rgba(41,127,184,.11)}.su-abbr{max-width:140px;text-transform:uppercase;letter-spacing:.06em}.su-row-2{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.su-error{display:flex;align-items:flex-start;gap:8px;background:var(--bad-50);color:var(--bad-700);border:1px solid var(--bad-200,#f5c6c0);border-radius:11px;padding:11px 13px;font-size:13px}.su-error svg{flex-shrink:0;margin-top:1px}.su-colour-grid{display:grid;grid-template-columns:repeat(8,1fr);grid-gap:6px;gap:6px;padding:10px}.su-swatch{width:28px;height:28px;border-radius:8px;background:var(--swatch);border:2px solid transparent;cursor:pointer;transition:transform .12s,border-color .12s}.su-swatch:hover{transform:scale(1.15)}.su-swatch.selected{border-color:var(--ink-800);box-shadow:inset 0 0 0 2px #fff}.su-category-list{display:flex;flex-direction:column;gap:10px}.su-category-row{display:flex;align-items:center;gap:8px;position:relative}.su-cat-swatch-preview{width:24px;height:24px;border-radius:7px;flex-shrink:0;border:1px solid rgba(0,0,0,.08)}.su-cat-name{flex:1 1}.su-cat-colour-btn{width:34px;height:34px;border-radius:9px;border:1px solid var(--line-2);background:var(--swatch,var(--surface-alt));color:#fff;display:grid;place-items:center;cursor:pointer;flex-shrink:0;filter:drop-shadow(0 1px 2px rgba(0,0,0,.18));transition:opacity .12s}.su-cat-colour-btn:hover{opacity:.82}.su-cat-remove{width:28px;height:28px;border-radius:8px;border:1px solid var(--line-2);background:var(--surface-alt);color:var(--ink-500);display:grid;place-items:center;cursor:pointer;flex-shrink:0;transition:background .12s,color .12s}.su-cat-remove:hover{background:var(--bad-50);color:var(--bad-600)}.su-colour-popover{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:80;background:var(--surface);border:1px solid var(--line-2);border-radius:14px;box-shadow:var(--sh-3);overflow:hidden}.su-colour-done{width:100%;padding:8px 12px;border-top:1px solid var(--line-1);background:var(--surface-alt);font-size:12px;color:var(--ink-700);border-radius:0}.su-add-row,.su-colour-done{display:flex;align-items:center;gap:6px;font-weight:600;cursor:pointer}.su-add-row{font-size:13px;color:var(--clay-600);background:none;border:1px dashed var(--clay-300);border-radius:10px;padding:9px 14px;transition:background .12s,border-color .12s;margin-top:2px}.su-add-row:hover{background:var(--clay-50);border-color:var(--clay-400)}.su-day-grid{display:flex;flex-wrap:wrap;gap:6px}.su-day-btn{padding:6px 12px;border-radius:20px;border:1.5px solid var(--line-2);background:var(--surface-alt);font-size:12px;font-weight:650;color:var(--ink-600);cursor:pointer;transition:all .14s}.su-day-btn.active{background:var(--clay-100);border-color:var(--clay-400);color:var(--clay-700)}.su-break-list{display:flex;flex-direction:column;gap:8px}.su-break-row{display:flex;align-items:center;gap:8px}.su-time{max-width:120px}.su-break-to{font-size:12px;color:var(--ink-500);flex-shrink:0}.su-label-row{justify-content:space-between;margin-bottom:2px}.su-add-inline,.su-label-row{display:flex;align-items:center}.su-add-inline{gap:4px;font-size:11px;font-weight:650;color:var(--clay-600);background:none;border:none;cursor:pointer;padding:2px 4px}.su-invite-list{display:flex;flex-direction:column;gap:8px}.su-invite-row{display:flex;align-items:center;gap:8px}.su-invite-email{flex:1 1}.su-invite-role{width:136px;flex-shrink:0}.su-role-legend{display:flex;flex-direction:column;gap:3px;background:var(--surface-alt);border-radius:10px;padding:10px 12px;font-size:11.5px;color:var(--ink-600);line-height:1.5}.su-btn-row{gap:10px;justify-content:flex-end;margin-top:4px}.su-btn-main,.su-btn-row{display:flex;align-items:center}.su-btn-main{gap:6px}.su-invite-results{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.su-invite-result{display:flex;align-items:center;gap:8px;font-size:13px;padding:8px 12px;border-radius:9px;border:1px solid}.su-invite-result.ok{background:var(--good-50);color:var(--good-700);border-color:var(--good-200,#bbdfc0)}.su-invite-result.fail{background:var(--bad-50);color:var(--bad-700);border-color:var(--bad-200,#f5c6c0)}.su-result-label{margin-left:auto;font-size:11px;font-weight:600}.su-done-box{display:flex;align-items:center;gap:10px;background:var(--good-50);border:1px solid var(--good-300,#90d09a);color:var(--good-800,#1e6329);border-radius:12px;padding:12px 14px;font-size:13px;font-weight:600;margin-bottom:4px}html[data-auth-screen] .app{grid-template-columns:0 1fr!important;grid-template-rows:0 1fr!important}html[data-auth-screen] .side,html[data-auth-screen] .topbar{display:none!important}html[data-auth-screen] .main{grid-area:1/1/-1/-1;padding:0;overflow:auto}@media (prefers-color-scheme:dark){.auth-backdrop{background:radial-gradient(circle at top left,rgba(41,127,184,.12),transparent 34%),radial-gradient(circle at bottom right,rgba(100,160,200,.1),transparent 32%),linear-gradient(180deg,#1a1a18,#141410)}.auth-card{background:rgba(30,30,27,.94);border-color:rgba(60,58,52,.8)}.su-colour-popover{background:var(--surface)}}.org-centre-setup{display:flex;flex-direction:column;gap:16px}.org-setup-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-block:8px 0}.org-setup-head h2{margin:0}.org-field-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));grid-gap:14px;gap:14px;align-items:start}.org-field-grid.narrow{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.org-field-grid+.org-field-grid,.org-set-status+.org-field-grid{margin-top:14px}.org-set-field{display:flex;flex-direction:column;gap:6px;min-width:0}.org-set-field>label{font-size:12px;font-weight:600;color:var(--ink-600)}.org-set-field input,.org-set-field select{height:40px;width:100%;min-width:0;border:1px solid var(--line-2);border-radius:var(--r-md);padding:0 12px;font:inherit;font-size:13.5px;background:var(--surface);color:var(--ink-800)}.org-set-field input:focus,.org-set-field select:focus{outline:none;border-color:var(--clay-400);box-shadow:0 0 0 3px rgba(41,127,184,.14)}.org-set-hint{font-size:11.5px;line-height:1.45;color:var(--ink-400)}.org-set-note{font-size:12.5px;line-height:1.55;color:var(--ink-600)}.org-set-note strong{color:var(--ink-800)}.org-choice-list{display:flex;flex-direction:column;gap:10px}.org-choice{display:grid;grid-template-columns:auto 1fr;grid-gap:10px;gap:10px;align-items:start;cursor:pointer}.org-choice>input{margin:1px 0 0;width:16px;height:16px;accent-color:var(--clay-600);flex:none}.org-choice-text{display:flex;flex-direction:column;gap:3px;min-width:0}.org-choice-text strong{font-size:13px;font-weight:600;color:var(--ink-900)}.org-choice-text span{font-size:12px;line-height:1.5;color:var(--ink-500)}.org-set-group{margin-top:18px}.org-set-group:first-child{margin-top:0}.org-set-group>h4{margin:0 0 4px;font-size:12.5px;font-weight:650;color:var(--ink-800)}.org-set-group>.org-set-note{margin-bottom:10px}.org-disclosure{margin-top:18px;border-top:1px solid var(--line);padding-top:14px}.org-disclosure>summary{cursor:pointer;font-size:12.5px;font-weight:600;color:var(--ink-700);list-style:none;display:flex;align-items:center;gap:6px}.org-disclosure>summary::-webkit-details-marker{display:none}.org-disclosure>summary:before{content:"";width:6px;height:6px;border-right:1.5px solid var(--ink-400);border-bottom:1.5px solid var(--ink-400);transform:rotate(-45deg);transition:transform .16s var(--ease)}.org-disclosure[open]>summary:before{transform:rotate(45deg)}.org-disclosure>summary:hover{color:var(--ink-900)}.org-disclosure-body{margin-top:12px}.org-set-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.org-set-status{display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:12.5px;color:var(--ink-700);padding:10px 12px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-2)}@media (max-width:720px){.org-centre-setup{gap:14px}.org-field-grid{grid-template-columns:1fr;gap:12px}.org-set-actions>.btn{flex:1 1 auto;justify-content:center}}.org-grow-input{flex:1 1 auto;min-width:140px}.org-abbr-input{max-width:160px;text-transform:uppercase}.org-role-tag{-webkit-margin-start:6px;margin-inline-start:6px}.org-cat-archived .org-role-section-label{margin-top:16px}.org-break-add+.sch-day-toggles{margin-top:10px}.org-centre-setup .org-color-input,.org-centre-setup .org-inline-select,.org-centre-setup input[type=number],.org-centre-setup input[type=time]{min-height:40px}.org-page .crumb-sep{color:var(--ink-300)}.org-page .crumb-current{color:var(--ink-800)}.org-page .dashboard-grid>.col{gap:16px}.org-intro-copy{color:var(--ink-500);font-size:14px;line-height:1.6}.org-invite-alert,.org-invite-form{margin-bottom:20px}.org-alert-title{font-weight:600;margin-bottom:6px}.org-sub-wide{max-width:520px}.org-note-top{margin-top:12px}.org-note-bottom{margin-bottom:12px}.org-link-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.org-link-input{flex:1 1 320px;min-width:0}.org-actions-col{text-align:end}.org-row-end{justify-content:flex-end;flex-wrap:wrap}.org-role-body{padding:0 16px 16px}.org-role-section-label-spaced{margin-top:14px}@media (max-width:720px){.org-page .dashboard-grid>.col{gap:14px}.org-row-end{justify-content:flex-start}.org-link-input{flex-basis:100%}.org-sub-wide{max-width:none}}@media (max-width:860px){.org-page .student-table{min-width:620px}.org-page .student-table-wrap{-webkit-overflow-scrolling:touch}}.cir-shell{display:grid;grid-template-columns:236px minmax(0,1fr);grid-gap:20px;gap:20px;align-items:start}.cir-rail{position:-webkit-sticky;position:sticky;top:calc(var(--top-h) + 16px);gap:12px;padding:14px;border:1px solid var(--line);border-radius:var(--r-xl);background:var(--surface);box-shadow:var(--sh-1)}.cir-rail,.cir-rail-progress{display:flex;flex-direction:column}.cir-rail-progress{gap:8px;padding:2px 4px 12px;border-bottom:1px solid var(--line)}.cir-rail-progress-row{display:flex;justify-content:space-between;align-items:baseline;font-size:12px;color:var(--ink-500)}.cir-rail-progress-row strong{font-size:15px;color:var(--clay-700);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cir-meter{height:6px;border-radius:999px;background:var(--surface-2);overflow:hidden}.cir-meter span{display:block;height:100%;border-radius:inherit;background:var(--clay-500);transition:width .3s var(--ease)}.cir-save-status{font-size:11.5px;color:var(--ink-500)}.cir-rail-list{display:flex;flex-direction:column;gap:2px}.cir-rail-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px;border:0;border-radius:var(--r-md);background:transparent;color:var(--ink-700);font:inherit;font-size:13px;text-align:left;cursor:pointer;transition:background .12s var(--ease),color .12s var(--ease)}.cir-rail-item:hover{background:var(--surface-2);color:var(--ink-900)}.cir-rail-item.active{background:var(--clay-50);color:var(--clay-800);font-weight:600}.cir-rail-index{flex:0 0 auto;display:grid;place-items:center;width:22px;height:22px;border-radius:999px;border:1px solid var(--line-2);background:var(--surface);font-size:11px;font-weight:600;color:var(--ink-500)}.cir-rail-item.active .cir-rail-index{border-color:var(--clay-500);color:var(--clay-600)}.cir-rail-item.complete .cir-rail-index{border-color:var(--good-500);background:var(--good-500);color:#fff}.cir-rail-title{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cir-rail-count{font-size:11.5px;color:var(--ink-400);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cir-stage{min-width:0;display:flex;flex-direction:column;gap:14px}.cir-stage-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.cir-view-toggle{display:inline-flex;padding:3px;border:1px solid var(--line);border-radius:999px;background:var(--surface)}.cir-view-toggle button{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 14px;border:0;border-radius:999px;background:transparent;color:var(--ink-600);font:inherit;font-size:12.5px;font-weight:600;cursor:pointer}.cir-view-toggle button.active{background:var(--ink-900);color:var(--surface)}.cir-dots{display:flex;gap:6px;align-items:center}.cir-dots span{width:8px;height:8px;border-radius:999px;background:var(--line-2);transition:width .2s var(--ease),background .2s var(--ease)}.cir-dots span.done{background:var(--clay-300)}.cir-dots span.current{width:22px;background:var(--clay-500)}.cir-card{position:relative;display:flex;flex-direction:column;gap:22px;padding:30px 32px 28px;border:1px solid var(--line);border-radius:22px;background:var(--surface);box-shadow:var(--sh-2);outline:none;animation:cir-card-in-forward .28s var(--ease)}.cir-card.back{animation-name:cir-card-in-back}.cir-card:before{content:"";position:absolute;inset:auto 18px -7px 18px;height:14px;border:1px solid var(--line);border-top:0;border-radius:0 0 20px 20px;background:var(--surface-2);z-index:-1}.cir-card:focus-visible{box-shadow:var(--sh-2),0 0 0 3px rgba(41,127,184,.18)}@keyframes cir-card-in-forward{0%{opacity:0;transform:translateX(18px) scale(.99)}to{opacity:1;transform:none}}@keyframes cir-card-in-back{0%{opacity:0;transform:translateX(-18px) scale(.99)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.cir-card,.cir-card.back{animation:none}}.cir-card-head{display:flex;flex-direction:column;gap:6px}.cir-card-kicker{display:flex;gap:10px;align-items:center;font-size:11.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--clay-600)}.cir-card-kicker span+span{color:var(--ink-400);letter-spacing:.04em}.cir-card-kicker span+span:before{content:"·";margin-right:10px}.cir-card-head h2{margin:0;font-size:clamp(20px,2.4vw,26px);line-height:1.25;font-weight:650;letter-spacing:-.01em;color:var(--ink-900);text-wrap:balance}.cir-card-help{margin:0;font-size:13.5px;line-height:1.5;color:var(--ink-500);max-width:62ch}.cir-body{gap:22px}.cir-block,.cir-body{display:flex;flex-direction:column}.cir-block{gap:10px}.cir-block-label{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--ink-800)}.cir-count,.cir-optional{padding:2px 8px;border-radius:999px;background:var(--surface-2);font-size:11px;font-weight:500;color:var(--ink-500)}.cir-count{background:var(--clay-50);color:var(--clay-700)}.cir-options{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));grid-gap:10px;gap:10px}.cir-options.compact{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.cir-option{display:flex;align-items:center;gap:12px;min-height:52px;padding:12px 14px;border:1.5px solid var(--line);border-radius:14px;background:var(--surface);color:var(--ink-800);font:inherit;font-size:13.5px;line-height:1.4;text-align:left;cursor:pointer;transition:border-color .12s var(--ease),background .12s var(--ease),transform .12s var(--ease),box-shadow .12s var(--ease)}.cir-option:hover{border-color:var(--clay-200);background:var(--paper);transform:translateY(-1px);box-shadow:var(--sh-1)}.cir-option:active{transform:translateY(0) scale(.99)}.cir-option:focus-visible{outline:none;border-color:var(--clay-400);box-shadow:0 0 0 3px rgba(41,127,184,.16)}.cir-option.active{border-color:var(--clay-500);background:var(--clay-50);color:var(--ink-900)}.cir-option-mark{flex:0 0 auto;display:grid;place-items:center;width:20px;height:20px;border:1.5px solid var(--line-2);border-radius:999px;background:var(--surface);color:#fff;transition:background .12s var(--ease),border-color .12s var(--ease)}.cir-option-mark.square{border-radius:6px}.cir-option.active .cir-option-mark{background:var(--clay-500);border-color:var(--clay-500)}.cir-option-label{flex:1 1 auto;min-width:0}.cir-kbd{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border:solid var(--line-2);border-width:1px 1px 2px;border-radius:5px;background:var(--surface);font-family:inherit;font-size:10.5px;font-weight:600;color:var(--ink-500)}.cir-option .cir-kbd{opacity:0;transition:opacity .12s var(--ease)}.cir-card:focus-within .cir-option .cir-kbd,.cir-option:hover .cir-kbd{opacity:1}.cir-options-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:22px}.cir-foot-note{font-size:12px;color:var(--ink-500)}.cir-link{border:0;background:none;padding:0;font:inherit;font-size:12px;font-weight:600;color:var(--clay-600);cursor:pointer}.cir-link:hover{text-decoration:underline}.cir-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:14px 16px;gap:14px 16px}.cir-field{display:flex;flex-direction:column;gap:6px;min-width:0}.cir-field.wide{grid-column:1/-1}.cir-field-label{font-size:12.5px;font-weight:600;color:var(--ink-700)}.cir-field-help{font-size:11.5px;color:var(--ink-500);line-height:1.45}.cir-autotext,.cir-field>input,.cir-inline-input{width:100%;min-width:0;border:1.5px solid var(--line-2);border-radius:12px;background:var(--surface);color:var(--ink-900);font:inherit;font-size:14px;transition:border-color .12s var(--ease),box-shadow .12s var(--ease)}.cir-field>input,.cir-inline-input{height:46px;padding:0 14px}.cir-field .date-input{min-height:46px;border-radius:12px;border-width:1.5px}.cir-field.readonly>input{background:var(--surface-2);color:var(--ink-600);border-style:dashed}.cir-autotext{display:block;padding:12px 14px;line-height:1.5;resize:none;overflow:hidden;min-height:46px}.cir-autotext:focus,.cir-field>input:focus,.cir-inline-input:focus{outline:none;border-color:var(--clay-400);box-shadow:0 0 0 3px rgba(41,127,184,.14)}.cir-autotext::placeholder,.cir-field>input::placeholder,.cir-inline-input::placeholder{color:var(--ink-400)}.cir-inline-input{animation:cir-reveal .2s var(--ease)}.cir-custom{display:flex;flex-direction:column;gap:10px;padding:12px;border:1px dashed var(--line-2);border-radius:14px;background:var(--paper)}.cir-custom-row{display:flex;gap:8px;align-items:flex-start}.cir-custom-row .cir-autotext{flex:1 1 auto;background:var(--surface)}.cir-custom-row .btn{flex:0 0 auto;height:46px}.cir-custom-list{display:flex;flex-wrap:wrap;gap:8px}.cir-custom-chip{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:6px 6px 6px 12px;border:1.5px solid var(--clay-500);border-radius:999px;background:var(--clay-50);color:var(--ink-900);font-size:13px;animation:cir-reveal .18s var(--ease)}.cir-custom-chip>span{overflow-wrap:anywhere}.cir-custom-chip button{display:grid;place-items:center;width:22px;height:22px;border:0;border-radius:999px;background:transparent;color:var(--clay-700);cursor:pointer}.cir-custom-chip button:hover{background:var(--clay-100)}.cir-yesno{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:14px;overflow:hidden}.cir-yesno-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px}.cir-yesno-row+.cir-yesno-row{border-top:1px solid var(--line)}.cir-yesno-label{font-size:14px;line-height:1.45;color:var(--ink-800)}.cir-segment{flex:0 0 auto;display:inline-flex;padding:3px;border-radius:999px;background:var(--surface-2)}.cir-segment button{min-width:58px;height:32px;padding:0 14px;border:0;border-radius:999px;background:transparent;color:var(--ink-600);font:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:background .12s var(--ease),color .12s var(--ease)}.cir-segment button.active.yes{background:var(--clay-500);color:#fff}.cir-segment button.active.no{background:var(--surface);color:var(--ink-900);box-shadow:var(--sh-1)}.cir-hint{display:flex;align-items:flex-start;gap:8px;padding:10px 12px;border-radius:12px;background:var(--info-50);color:var(--info-700);font-size:12.5px;line-height:1.45;animation:cir-reveal .2s var(--ease)}.cir-hint.warn{background:var(--warn-50);color:var(--warn-700)}.cir-hint svg{flex:0 0 auto;margin-top:1px}@keyframes cir-reveal{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.cir-nav{display:flex;align-items:center;justify-content:space-between;gap:12px}.cir-nav .btn{min-width:112px;justify-content:center}.cir-nav-hint{display:flex;align-items:center;gap:4px;font-size:11.5px;color:var(--ink-400)}.cir-nav-sep{width:1px;height:12px;margin:0 8px;background:var(--line-2)}.cir-board-wrap{outline:none;display:flex;flex-direction:column;gap:14px}.cir-board-intro{margin:0;font-size:13px;color:var(--ink-500)}.cir-board{display:flex;flex-direction:column;gap:22px}.cir-board.compact{gap:16px}.cir-board-section{display:flex;flex-direction:column;gap:10px}.cir-board-head{display:flex;align-items:baseline;justify-content:space-between;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-600)}.cir-board-tally{font-size:12px;color:var(--ink-400);letter-spacing:0;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cir-board-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:10px;gap:10px}.cir-board.compact .cir-board-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.cir-tile{display:flex;flex-direction:column;gap:6px;min-height:118px;padding:14px;border:1px solid var(--line);border-radius:16px;background:var(--surface);font:inherit;text-align:left;cursor:pointer;transition:border-color .12s var(--ease),transform .12s var(--ease),box-shadow .12s var(--ease)}.cir-tile:hover{border-color:var(--clay-200);transform:translateY(-2px);box-shadow:var(--sh-2)}.cir-tile:focus-visible{outline:none;border-color:var(--clay-400);box-shadow:0 0 0 3px rgba(41,127,184,.16)}.cir-tile.answered{background:linear-gradient(180deg,var(--clay-50),var(--surface) 70%);border-color:var(--clay-100)}.cir-tile.current{border-color:var(--clay-500)}.cir-tile-top{display:flex;align-items:center;justify-content:space-between}.cir-tile-num{font-size:11px;font-weight:700;color:var(--ink-400);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cir-dot{width:8px;height:8px;border-radius:999px;background:var(--line-2)}.cir-dot.answered{background:var(--clay-500)}.cir-dot.seen{background:var(--good-500)}.cir-tile-title{font-size:13.5px;font-weight:600;line-height:1.35;color:var(--ink-900)}.cir-tile-summary{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:12px;line-height:1.45;color:var(--ink-500)}.cir-tile.open .cir-tile-summary{color:var(--ink-400);font-style:italic}.cir-review{display:flex;flex-direction:column;gap:18px}.cir-review-hero{display:flex;align-items:center;gap:16px;padding:16px 18px;border-radius:16px;background:var(--surface-2)}.cir-review-avatar{flex:0 0 auto;display:grid;place-items:center;width:48px;height:48px;border-radius:999px;background:var(--clay-500);color:#fff;font-size:20px;font-weight:700}.cir-review-name{font-size:17px;font-weight:650;color:var(--ink-900)}.cir-review-meta{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:4px;font-size:12.5px;color:var(--ink-500)}.cir-review-score{margin-left:auto;display:flex;flex-direction:column;align-items:flex-end}.cir-review-score strong{font-size:20px;color:var(--clay-700);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cir-review-score span{font-size:11.5px;color:var(--ink-500)}@media (max-width:1024px){.cir-shell{grid-template-columns:minmax(0,1fr);gap:14px}.cir-rail{position:static;padding:10px;gap:10px}.cir-rail-progress{padding:0 4px 10px}.cir-rail-list{flex-direction:row;gap:6px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.cir-rail-list::-webkit-scrollbar{display:none}.cir-rail-item{flex:0 0 auto;width:auto;padding:7px 12px 7px 8px;border:1px solid var(--line);border-radius:999px}.cir-rail-item.active{border-color:var(--clay-300)}.cir-rail-title{overflow:visible}}@media (max-width:640px){.cir-card{padding:22px 18px 20px;border-radius:18px;gap:18px}.cir-options{grid-template-columns:minmax(0,1fr)}.cir-options.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.cir-option{min-height:48px}.cir-kbd,.cir-nav-hint{display:none}.cir-fields{grid-template-columns:minmax(0,1fr)}.cir-yesno-row{flex-direction:column;align-items:stretch;gap:10px}.cir-segment{align-self:flex-start}.cir-board-grid,.cir-board.compact .cir-board-grid{grid-template-columns:minmax(0,1fr)}.cir-tile{min-height:0}.cir-review-hero{flex-wrap:wrap}.cir-review-score{margin-left:0;align-items:flex-start}.cir-nav{position:-webkit-sticky;position:sticky;bottom:0;z-index:5;margin:0 -16px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:color-mix(in srgb,var(--surface) 92%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.cir-nav .btn{flex:1 1;min-width:0}.cir-dots{display:none}}.new-student-modes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px;margin-top:16px;max-width:760px}.new-student-mode{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border:1.5px solid var(--line);border-radius:16px;background:var(--surface);color:inherit;text-decoration:none;transition:border-color .12s var(--ease),background .12s var(--ease),box-shadow .12s var(--ease)}.new-student-mode:hover{border-color:var(--clay-200);box-shadow:var(--sh-1)}.new-student-mode:focus-visible{outline:none;border-color:var(--clay-400);box-shadow:0 0 0 3px rgba(41,127,184,.16)}.new-student-mode.active{border-color:var(--clay-500);background:var(--clay-50)}.new-student-mode-icon{flex:0 0 auto;display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--surface-2);color:var(--ink-600)}.new-student-mode.active .new-student-mode-icon{background:var(--clay-500);color:#fff}.new-student-mode-copy{flex:1 1 auto;display:flex;flex-direction:column;gap:3px;min-width:0}.new-student-mode-copy strong{font-size:14px;color:var(--ink-900)}.new-student-mode-copy span{font-size:12.5px;line-height:1.45;color:var(--ink-500)}.new-student-mode-check{flex:0 0 auto;display:grid;place-items:center;width:20px;height:20px;border:1.5px solid var(--line-2);border-radius:999px;color:#fff}.new-student-mode.active .new-student-mode-check{background:var(--clay-500);border-color:var(--clay-500)}.cir-form{display:grid;grid-template-columns:240px minmax(0,1fr);grid-gap:20px;gap:20px;align-items:start}.cir-form.single{grid-template-columns:minmax(0,1fr);max-width:880px}.cir-form-main{min-width:0;display:flex;flex-direction:column;gap:16px}.cir-form-section{scroll-margin-top:calc(var(--top-h) + 16px);padding:22px 24px 8px;border:1px solid var(--line);border-radius:var(--r-xl);background:var(--surface);box-shadow:var(--sh-1)}.cir-form-section-head{padding-bottom:14px;border-bottom:1px solid var(--line)}.cir-form-section-head h2{margin:0;font-size:17px;font-weight:650;color:var(--ink-900)}.cir-form-section-head p{margin:4px 0 0;font-size:12.5px;color:var(--ink-500)}.cir-form-q{display:flex;flex-direction:column;gap:12px;padding:18px 0}.cir-form-q+.cir-form-q{border-top:1px dashed var(--line)}.cir-form-q-head h3{margin:0;font-size:14px;font-weight:600;color:var(--ink-800)}.cir-form-q-head p{margin:3px 0 0;font-size:12px;line-height:1.45;color:var(--ink-500)}.cir-form .cir-options{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:8px}.cir-form .cir-option{min-height:44px;padding:9px 12px;border-radius:12px;font-size:13px}.cir-form-empty{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;border:1px dashed var(--clay-300);border-radius:var(--r-xl);background:var(--clay-50)}.cir-form-empty strong{font-size:14px;color:var(--ink-900)}.cir-form-empty p{margin:4px 0 0;font-size:12.5px;color:var(--ink-600);line-height:1.45}.cir-form-empty .btn{flex:0 0 auto}.cir-form-bar{position:-webkit-sticky;position:sticky;bottom:0;z-index:5;display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:12px 16px;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--surface) 94%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--sh-2)}.cir-form-bar-note{margin-right:auto;font-size:12.5px;color:var(--ink-500)}@media (max-width:1024px){.cir-form{grid-template-columns:minmax(0,1fr);gap:14px}.cir-form-index{position:-webkit-sticky;position:sticky;top:var(--top-h);z-index:4}}@media (max-width:640px){.new-student-modes{grid-template-columns:minmax(0,1fr)}.cir-form-section{padding:18px 16px 4px}.cir-form .cir-options{grid-template-columns:minmax(0,1fr)}.cir-form-empty{flex-direction:column;align-items:stretch}.cir-form-bar{margin:0 -16px;border-radius:0;border-width:1px 0 0;padding-bottom:calc(12px + env(safe-area-inset-bottom))}.cir-form-bar-note{display:none}.cir-form-bar .btn{flex:1 1;justify-content:center}}.cir-switch{display:inline-flex;align-items:center;gap:8px;margin-right:auto;padding:0 4px;border:0;background:none;font:inherit;font-size:12.5px;font-weight:600;color:var(--ink-600);cursor:pointer}.cir-switch-track{position:relative;width:32px;height:18px;border-radius:999px;background:var(--line-2);transition:background .15s var(--ease)}.cir-switch-track span{position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:999px;background:#fff;box-shadow:var(--sh-1);transition:transform .15s var(--ease)}.cir-switch.on{color:var(--clay-700)}.cir-switch.on .cir-switch-track{background:var(--clay-500)}.cir-switch.on .cir-switch-track span{transform:translateX(14px)}.cir-switch:focus-visible{outline:none}.cir-switch:focus-visible .cir-switch-track{box-shadow:0 0 0 3px rgba(41,127,184,.2)}.cir-autoadvance{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-radius:12px;background:var(--clay-50);color:var(--clay-800);font-size:12.5px;font-weight:600;overflow:hidden;animation:cir-reveal .15s var(--ease)}.cir-autoadvance:after{content:"";position:absolute;left:0;bottom:0;height:3px;width:100%;background:var(--clay-500);transform-origin:left;animation:cir-advance-bar .7s linear forwards}@keyframes cir-advance-bar{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@media (prefers-reduced-motion:reduce){.cir-autoadvance:after{animation:none}}.cir-view{display:flex;flex-direction:column;gap:18px}.cir-view-filter{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}.cir-view-filter::-webkit-scrollbar{display:none}.cir-view-filter button{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink-700);font:inherit;font-size:12.5px;font-weight:600;cursor:pointer}.cir-view-filter button span{font-size:11px;font-weight:600;color:var(--ink-400)}.cir-view-filter button.active{border-color:var(--clay-500);background:var(--clay-50);color:var(--clay-800)}.cir-view-filter button.active span{color:var(--clay-600)}.cir-view-section{display:flex;flex-direction:column;gap:10px}.cir-view-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));grid-gap:10px;gap:10px}.cir-view-card{display:flex;flex-direction:column;gap:10px;padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.cir-view-card h4{margin:0;font-size:13.5px;font-weight:600;line-height:1.35;color:var(--ink-900)}.cir-view-answers{display:flex;flex-direction:column;gap:8px}.cir-view-answer{display:flex;flex-direction:column;gap:5px;min-width:0}.cir-view-answer.row-style{flex-direction:row;align-items:baseline;justify-content:space-between;gap:12px}.cir-view-answer.row-style strong{font-size:13px;font-weight:600;color:var(--ink-900);text-align:right;overflow-wrap:anywhere}.cir-view-label{font-size:12px;color:var(--ink-500);line-height:1.4}.cir-view-chips{display:flex;flex-wrap:wrap;gap:6px}.cir-view-chip{padding:4px 10px;border-radius:999px;background:var(--clay-50);border:1px solid var(--clay-100);color:var(--clay-800);font-size:12.5px;line-height:1.4}.cir-view-note{margin:0;font-size:13px;line-height:1.5;color:var(--ink-800);white-space:pre-wrap}@media (max-width:640px){.cir-view-grid{grid-template-columns:minmax(0,1fr)}.cir-switch{margin-right:0}}.assess-deck{display:flex;flex-direction:column;gap:14px}.assess-deck-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.assess-deck-bar .assessment-view-toggle{margin:0}.assess-card{gap:18px;padding:24px 26px 20px}.assess-card .cir-card-head h2{font-size:clamp(18px,2vw,22px)}.cir-view-filter button.has-count:not(.active){border-color:var(--clay-200)}.issue-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));grid-gap:10px;gap:10px}.issue-grid>.notes-empty{grid-column:1/-1}.issue-option{display:flex;flex-direction:column;border:1.5px solid var(--line);border-radius:14px;background:var(--surface);overflow:hidden;transition:border-color .12s var(--ease),background .12s var(--ease),box-shadow .12s var(--ease),transform .12s var(--ease)}.issue-option:hover{border-color:var(--clay-200);box-shadow:var(--sh-1);transform:translateY(-1px)}.issue-option.active{border-color:var(--clay-500);background:var(--clay-50)}.issue-option.disabled{opacity:.7}.issue-option.disabled:hover{transform:none;box-shadow:none}.issue-option-main{display:flex;align-items:center;gap:12px;min-height:52px;padding:12px 14px;border:0;background:transparent;color:var(--ink-800);font:inherit;font-size:13.5px;line-height:1.4;text-align:left;cursor:pointer}.issue-option-main:disabled{cursor:default}.issue-option-main:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--clay-400);border-radius:12px}.issue-option.active .cir-option-mark{background:var(--clay-500);border-color:var(--clay-500)}.issue-option-text{flex:1 1 auto;min-width:0}.issue-option .ext-badge{flex:0 0 auto}.issue-option-specifics{display:flex;align-items:center;gap:6px;margin:0 10px 10px 46px;padding:6px 10px;border:1px dashed var(--clay-300);border-radius:10px;background:var(--surface);color:var(--clay-700);font:inherit;font-size:12px;font-weight:600;text-align:left;cursor:pointer}.issue-option-specifics span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.issue-option-specifics.has-value{border-style:solid;border-color:var(--clay-200);background:var(--clay-100);color:var(--clay-800)}.assess-card-nav{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:14px;border-top:1px solid var(--line)}.assess-card-last,.assess-card-total{font-size:12px;color:var(--ink-500)}.assess-card-last{font-weight:600}.academic-subjects{margin-bottom:10px}.academic-notes-dot{display:inline-block;width:6px;height:6px;border-radius:999px;background:currentColor;opacity:.6}.assess-view-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:10px;gap:10px}.assess-view-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.assess-view-head span{font-size:11.5px;font-weight:600;color:var(--clay-700)}.assess-view-issues{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.assess-view-issues li{display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.45;color:var(--ink-800)}.assess-view-issues em{display:block;margin-top:2px;font-style:normal;font-size:12px;color:var(--clay-700)}.assess-view-mark{flex:0 0 auto;width:7px;height:7px;margin-top:7px;border-radius:999px;background:var(--clay-500)}.assess-qa-list{display:grid;grid-gap:12px;gap:12px}.assess-qa-answer{font-size:14px;font-weight:600;color:var(--ink-900)}.assess-hidden-note{margin-top:12px;font-size:12px;color:var(--ink-500)}@media (max-width:640px){.assess-card{padding:20px 16px 16px}.assess-view-grid,.issue-grid{grid-template-columns:minmax(0,1fr)}.assess-card-nav{flex-wrap:wrap}.assess-card-total{order:3;width:100%;text-align:center}}.report-step-strip{display:flex;flex-direction:column;gap:8px;margin-bottom:14px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--r-xl);background:var(--surface)}.report-step-strip .cir-view-filter{margin-top:4px}.report-step-strip .report-step-num{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:999px;background:var(--surface-2);color:var(--ink-500);font-size:10.5px}.report-step-strip button.active .report-step-num{background:var(--clay-500);color:#fff}.report-step-strip button.has-count:not(.active) .report-step-num{background:var(--clay-100);color:var(--clay-700)}.cir-view-filter button:disabled{opacity:.45;cursor:not-allowed}.cir-view-value{font-size:15px;font-weight:600;color:var(--ink-900)}.fileno-input{display:flex;align-items:stretch;min-width:0;border:1.5px solid var(--line-2);border-radius:12px;background:var(--surface);overflow:hidden;transition:border-color .12s var(--ease),box-shadow .12s var(--ease)}.student-field .fileno-input{border-width:1px;border-radius:var(--r-md)}.fileno-input:focus-within{border-color:var(--clay-400);box-shadow:0 0 0 3px rgba(41,127,184,.14)}.fileno-prefix{display:grid;place-items:center;padding:0 10px 0 12px;background:var(--surface-2);border-right:1px solid var(--line);font-family:var(--font-mono,ui-monospace,monospace);font-size:13px;font-weight:600;color:var(--ink-600)}.fileno-input input,.student-field .fileno-input input{flex:1 1 auto;min-width:0;height:44px;padding:0 12px;border:0!important;border-radius:0;background:transparent;box-shadow:none!important;font-family:var(--font-mono,ui-monospace,monospace);font-size:14px;color:var(--ink-900);outline:none}.student-field .fileno-input input{height:40px}.cir-age{display:flex;align-items:center;min-height:46px;padding:0 14px;border-radius:12px;background:var(--clay-50);color:var(--clay-800);font-size:15px;font-weight:650;transition:background .2s var(--ease),color .2s var(--ease)}.cir-age.empty{background:var(--surface-2);color:var(--ink-400);font-size:13px;font-weight:500}.cir-review-card{font:inherit;text-align:left;cursor:pointer;transition:border-color .12s var(--ease),box-shadow .12s var(--ease)}.cir-review-card:hover{border-color:var(--clay-200);box-shadow:var(--sh-1)}.cir-review-card:focus-visible{outline:none;border-color:var(--clay-400);box-shadow:0 0 0 3px rgba(41,127,184,.16)}.cir-review-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;color:var(--ink-400)}.cir-review-card-title{font-size:13.5px;font-weight:600;line-height:1.35;color:var(--ink-900)}.date-input .date-input-seg,.date-input input.date-input-seg{width:28px;height:auto;min-height:0;flex:0 0 auto;border:none;border-radius:0;background:transparent;box-shadow:none;padding:0;font:inherit;font-size:14px}.date-input .date-input-seg.date-input-year{width:44px}.student-field .date-input{height:42px;padding:0 12px;border:1px solid var(--line-2);border-radius:var(--r-md)}.student-field .date-input:focus-within{outline:none;border-color:var(--clay-400);box-shadow:0 0 0 3px rgba(41,127,184,.12)}.cir-field .date-input{padding:0 14px;border-color:var(--line-2)}.cir-field .date-input:focus-within{outline:none;border-color:var(--clay-400);box-shadow:0 0 0 3px rgba(41,127,184,.14)}.phone-input{display:flex;align-items:stretch;min-width:0;width:100%;border:1px solid var(--line-2);border-radius:var(--r-md);background:var(--surface);overflow:hidden;transition:border-color .12s var(--ease),box-shadow .12s var(--ease)}.cir-field .phone-input{border-width:1.5px;border-radius:12px}.phone-input:focus-within{border-color:var(--clay-400);box-shadow:0 0 0 3px rgba(41,127,184,.14)}.parent-access-form .phone-input select,.phone-input select,.student-field .phone-input select{flex:0 0 auto;width:108px;height:auto;min-height:40px;padding:0 8px 0 12px;border:0;border-right:1px solid var(--line);border-radius:0;background:var(--surface-2);box-shadow:none;font:inherit;font-size:13px;font-weight:600;color:var(--ink-700);outline:none;cursor:pointer}.parent-access-form .phone-input input,.phone-input input,.student-field .phone-input input{flex:1 1 auto;width:auto;min-width:0;height:auto;min-height:40px;padding:0 12px;border:0;border-radius:0;background:transparent;box-shadow:none;font:inherit;font-size:14px;color:var(--ink-900);outline:none}.cir-field .phone-input input,.cir-field .phone-input select{min-height:44px}.parent-access-form .phone-input input,.parent-access-form .phone-input select{min-height:36px}.parent-access-phone{display:flex;flex-direction:column;gap:6px}.parent-access-phone>span{font-size:12px;font-weight:600;color:var(--ink-600)}.cir-dot.progress{background:var(--warn-500)}.cir-tile.progress{border-color:var(--clay-100)}.phone-code{position:relative;flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;padding:0 10px 0 12px;border-right:1px solid var(--line);background:var(--surface-2);font-size:13px;font-weight:600;color:var(--ink-700)}.phone-code svg{color:var(--ink-400)}.parent-access-form .phone-input .phone-code select,.phone-input .phone-code select,.student-field .phone-input .phone-code select{position:absolute;inset:0;width:100%;height:100%;min-height:0;padding:0;border:0;opacity:0;cursor:pointer}.phone-input:focus-within .phone-code{color:var(--clay-700)}.date-input-wrap{display:flex;flex-direction:column;gap:4px;width:100%;min-width:0}.date-input{position:relative;cursor:text}.date-input.disabled{cursor:default;opacity:.7}.date-input .date-input-seg{border-radius:6px;caret-color:var(--clay-500);transition:background .12s var(--ease)}.date-input .date-input-seg:focus{background:var(--clay-50)}.date-input .date-input-seg::selection{background:var(--clay-200)}.date-input-actions{display:inline-flex;align-items:center;gap:2px;margin-left:auto;padding-left:8px}.date-input-btn{display:grid;place-items:center;width:28px;height:28px;border:0;border-radius:8px;background:transparent;color:var(--ink-400);cursor:pointer;transition:background .12s var(--ease),color .12s var(--ease)}.date-input-btn:hover{background:var(--surface-2);color:var(--clay-700)}.date-input-btn:disabled{cursor:default;opacity:.5}.date-input-native{position:absolute;right:0;bottom:0;width:1px;height:1px;padding:0;border:0;opacity:0;pointer-events:none}.cir-field .date-input.invalid,.date-input.invalid,.student-field .date-input.invalid{border-color:var(--bad-500)}.date-input.invalid:focus-within{box-shadow:0 0 0 3px rgba(189,66,52,.14)}.date-input-error{font-size:11.5px;color:var(--bad-700);line-height:1.4}.cir-rail-item.active .cir-rail-count{color:var(--clay-700);font-weight:700}.cir-rail-item.partial .cir-rail-index{border-color:var(--clay-300);background:conic-gradient(var(--clay-100) 0 50%,var(--surface) 50% 100%);color:var(--clay-700)}