@import url("https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=Geist+Mono:wght@400;500;600&family=IBM+Plex+Sans+Arabic:wght@400;500;600;700&display=swap");.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}@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-filter-pills{display:flex;flex-wrap:wrap;gap:8px}.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-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)}.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}.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-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}}