:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#182235;background:#f5f7fb;font-synthesis:none;--ink: #182235;--muted: #5f6c80;--line: #d9e1ec;--surface: #ffffff;--surface-soft: #f1f5fa;--navy: #111b30;--primary: #164bc5;--primary-dark: #0e3899;--success: #087852;--warning: #9a5b00;--danger: #b4232d;--focus: #ffbf47;--shadow: 0 10px 30px rgb(28 44 72 / 7%);--radius: 14px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;line-height:1.5}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}h1,h2,h3,p{overflow-wrap:anywhere}h1{font-size:clamp(1.75rem,3vw,2.35rem);line-height:1.15}h2{line-height:1.25}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:.75rem;left:.75rem;z-index:100;transform:translateY(-160%);background:#fff;color:#111;padding:.75rem 1rem;border-radius:8px;box-shadow:var(--shadow)}.skip-link:focus{transform:translateY(0)}.shell{min-height:100vh;display:grid;grid-template-columns:258px minmax(0,1fr)}.app-column{min-width:0;display:flex;flex-direction:column}.sidebar{position:sticky;top:0;z-index:30;height:100vh;display:flex;flex-direction:column;gap:1.5rem;padding:1.4rem;color:#f8fbff;background:var(--navy)}.brand{display:flex;align-items:center;gap:.75rem}.brand strong,.brand small{display:block}.brand small{color:#b7c5df}.brand-mark{flex:0 0 auto;width:42px;height:42px;border-radius:12px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#326af0,#0d988f);font-weight:900}.sidebar nav{display:grid;gap:.3rem}.sidebar nav a{min-height:44px;display:flex;align-items:center;gap:.75rem;padding:.65rem .8rem;border-radius:9px;color:#c6d1e6;font-weight:650}.sidebar nav a:hover,.sidebar nav a.active{color:#fff;background:#223555}.sidebar-user{margin-top:auto;display:flex;align-items:center;gap:.7rem;padding-top:1rem;border-top:1px solid #344563}.sidebar-user strong,.sidebar-user small{display:block}.sidebar-user small{color:#b7c5df;font-size:.75rem}.avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;color:#092a39;background:#b7f2e9;font-size:.78rem;font-weight:900}.mobile-header{display:none}.topbar{min-height:88px;margin:0 2rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--line)}.product-context{margin:.15rem 0 0;font-weight:750}.user-chip{display:grid;text-align:right}.user-chip span{color:var(--muted);font-size:.8rem}.main-content{width:100%;max-width:1500px;margin:0 auto;padding:2rem clamp(1rem,3vw,2.5rem) 3.5rem}.app-footer{margin-top:auto;padding:1.25rem 2rem;color:var(--muted);font-size:.8rem;border-top:1px solid var(--line)}.eyebrow{margin:0;color:#2555bf;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:850}.page-heading{margin:0 0 1.5rem;display:flex;align-items:flex-start;justify-content:space-between;gap:1.25rem}.page-heading h1{margin:.25rem 0}.page-description{max-width:760px;margin:.35rem 0 0;color:var(--muted)}.page-actions,.card-actions,.form-actions,.wizard-actions,.review-nav,.review-status-bar,.row-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.7rem}.report-actions{justify-content:flex-end;margin:.75rem 0}.accounting-document{border:1px solid var(--border);background:#fff;padding:1.25rem}.accounting-document-header{display:grid;grid-template-columns:minmax(0,1fr) minmax(270px,.9fr);gap:1.25rem;border-bottom:2px solid var(--primary);padding-bottom:1rem;margin-bottom:1rem}.accounting-document-header h2,.accounting-document-header p{margin:.2rem 0}.accounting-document-header dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem 1rem;margin:0}.accounting-document-header dl div{min-width:0}.accounting-document-header dt{color:var(--muted);font-size:.75rem;font-weight:700}.accounting-document-header dd{margin:.1rem 0 0;overflow-wrap:anywhere;font-size:.86rem;font-weight:700}.accounting-document-footer{border-top:1px solid var(--border);color:var(--muted);font-size:.75rem;margin-top:1rem;padding-top:.7rem}@media print{@page{size:A4 portrait;margin:14mm}.app-sidebar,.app-header,.breadcrumbs,.cycle-stepper,.sticky-actions,.list-actions,.table-controls,.report-actions,.button,dialog{display:none!important}body{background:#fff;color:#000;font-size:11pt}.page-shell,.cycle-layout,.cycle-workspace,.data-table,.table-wrap{display:block;overflow:visible}.card,.statement-card{box-shadow:none;border:0;padding:0}body[data-accounting-print] .accounting-document:not([data-print-active]){display:none!important}body[data-accounting-print] .accounting-document[data-print-active]{border:0;padding:0}body[data-accounting-print] .accounting-document .row-actions,body[data-accounting-print] .accounting-document th:last-child,body[data-accounting-print] .accounting-document td:last-child,body[data-accounting-print] .accounting-document+.sticky-actions,body[data-accounting-print] .field{display:none!important}.accounting-document-header,.accounting-document-footer{break-inside:avoid}.accounting-document-footer:after{content:" Página " counter(page);float:right}table{width:100%;break-inside:avoid}thead{display:table-header-group}}.review-status-bar{margin:-1rem 0 1.25rem}.version-label{display:inline-flex;align-items:center;gap:.45rem;color:var(--muted);font-size:.8rem}.breadcrumbs{margin-bottom:.8rem;color:var(--muted);font-size:.84rem}.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:.4rem;list-style:none;padding:0;margin:0}.breadcrumbs li:not(:last-child):after{content:"/";margin-left:.4rem;color:#929db0}.breadcrumbs a{color:var(--primary);text-decoration:underline;text-underline-offset:3px}.button,button.button{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;border:1px solid transparent;border-radius:9px;padding:.65rem .9rem;background:var(--primary);color:#fff;font-weight:780;cursor:pointer;line-height:1.2}.button:hover{background:var(--primary-dark)}.button.secondary{color:#1d3c67;background:#e8eef8;border-color:#ced9e9}.button.secondary:hover{background:#dbe5f3}.button.danger{background:var(--danger)}.button.ghost{color:inherit;background:transparent;border-color:currentColor}.button:disabled,.button.disabled{opacity:.55;cursor:not-allowed;pointer-events:none}.text-link{color:var(--primary);font-weight:750;text-decoration:underline;text-underline-offset:3px}.danger-link{min-height:40px;border:0;color:var(--danger);background:transparent;font-weight:750;cursor:pointer}.card,.panel,.table-wrap{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.card,.panel{padding:1.25rem}.card h2:first-child,.card h3:first-child,.panel h2:first-child{margin-top:0}.card-meta,.immutable-label{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;color:var(--muted);font-size:.82rem}.linked-card{display:block;transition:transform .15s ease,border-color .15s ease}.linked-card:hover{transform:translateY(-2px);border-color:#8ba5db}.metric-grid,.card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-bottom:1rem}.card-grid.compact{grid-template-columns:repeat(3,minmax(0,1fr))}.metric{min-height:132px;display:grid;align-content:center;gap:.2rem}.metric span,.metric small{color:var(--muted)}.metric strong{font-size:clamp(1.7rem,3vw,2.2rem);line-height:1.1}.metric.accent{border-color:#73cabb;background:#f0fbf8}.priority-card{margin:1rem 0;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;border-left:5px solid #2a65dd}.priority-card h2{margin:.3rem 0}.content-grid{display:grid;gap:1rem;margin:1rem 0}.content-grid.two-thirds{grid-template-columns:minmax(0,2fr) minmax(270px,1fr)}.section-heading,.score-heading,.ledger-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.section-heading h2,.score-heading h3{margin:.25rem 0}.summary-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-bottom:1.25rem;overflow:hidden;background:var(--line);border:1px solid var(--line);border-radius:var(--radius)}.summary-strip>div{padding:1rem;display:grid;gap:.15rem;background:#fff}.summary-strip span{color:var(--muted);font-size:.78rem}.assignment-hero{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:1px;margin-bottom:1.25rem;overflow:hidden;background:var(--line);border:1px solid var(--line);border-radius:var(--radius)}.assignment-hero>div{display:grid;gap:.2rem;padding:1rem;background:#fff}.assignment-hero>div span{color:var(--muted);font-size:.78rem}.assignment-hero>.button{align-self:stretch;border-radius:0}.badge{display:inline-flex;width:fit-content;align-items:center;gap:.38rem;border-radius:999px;padding:.28rem .55rem;color:#465369;background:#e9edf3;font-size:.69rem;font-weight:850;letter-spacing:.025em}.status-dot{width:7px;height:7px;border-radius:50%;background:currentColor}.status-active,.status-open,.status-ready,.status-posted,.status-balanced,.status-published,.status-grade-published,.status-completed,.status-valid{color:#086543;background:#d9f4e8}.status-draft,.status-not-started,.status-not-submitted,.status-not-graded{color:#536073;background:#eaedf2}.status-submitted,.status-under-review,.status-reviewed,.status-graded,.status-validated,.status-in-progress{color:#154ca8;background:#e1ebff}.status-late,.status-warning,.status-stale,.status-reopened{color:#845000;background:#fff0ce}.status-failed,.status-error,.status-closed,.status-dropped,.status-reversed{color:#9c2029;background:#ffe2e4}.field{display:grid;align-content:start;gap:.38rem;color:#435167;font-size:.84rem;font-weight:730}.field input,.field select,.field textarea,table input,table select{width:100%;min-height:42px;border:1px solid #b9c5d5;border-radius:8px;padding:.65rem .72rem;color:var(--ink);background:#fff}.field textarea{resize:vertical}.field input:hover,.field select:hover,.field textarea:hover{border-color:#6e82a0}.field input[aria-invalid=true],.field select[aria-invalid=true],.field textarea[aria-invalid=true]{border-color:var(--danger)}.field-hint{color:var(--muted);font-weight:500}.field-error{color:var(--danger)}.checkbox{min-height:44px;display:flex;align-items:flex-start;gap:.65rem;cursor:pointer}.checkbox input{width:19px;height:19px;margin-top:.15rem;accent-color:var(--primary)}.checkbox strong,.checkbox small{display:block}.checkbox small{color:var(--muted);font-weight:400}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.form-stack{display:grid;gap:1rem}.form-actions{grid-column:1 / -1;justify-content:flex-end}.span-2{grid-column:span 2}.toolbar,.filter-bar,.inline-controls{display:flex;flex-wrap:wrap;align-items:end;gap:.8rem}.toolbar,.filter-bar{margin:1rem 0;padding:1rem;background:var(--surface-soft);border:1px solid var(--line);border-radius:var(--radius)}.toolbar .field,.filter-bar .field{flex:1 1 230px}.tabs{display:flex;gap:.25rem;margin:1rem 0;overflow-x:auto;border-bottom:1px solid var(--line)}.tabs button{flex:0 0 auto;min-height:44px;border:0;border-bottom:3px solid transparent;padding:.65rem .85rem;color:var(--muted);background:transparent;font-weight:750;cursor:pointer}.tabs button[aria-selected=true]{color:var(--primary);border-color:var(--primary)}.tabs button span{display:inline-grid;min-width:1.5rem;place-items:center;margin-left:.3rem;border-radius:999px;background:#e5eaf2;color:#4f5b6e;font-size:.72rem}.table-wrap{max-width:100%;margin-top:1rem;overflow:auto}.list-actions{display:flex;justify-content:flex-end;margin:.75rem 0 .5rem}.table-controls{display:flex;align-items:end;gap:.75rem;flex-wrap:wrap;margin-top:.75rem}.table-controls .field{flex:1 1 190px;max-width:320px}.table-count{margin-left:auto;padding-bottom:.55rem;color:var(--muted);font-size:.8rem}.table-sort{display:inline-flex;align-items:center;justify-content:inherit;width:100%;min-height:30px;padding:0;border:0;background:transparent;color:inherit;font:inherit;text-align:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer}.table-sort:hover,.table-sort:focus-visible{color:var(--primary)}.table-sort span{margin-left:.3rem;white-space:nowrap}table{width:100%;min-width:760px;border-collapse:collapse}th,td{padding:.8rem .9rem;text-align:left;vertical-align:top;border-bottom:1px solid #e5eaf1}th{color:#49566a;background:#f6f8fb;font-size:.75rem;text-transform:uppercase;letter-spacing:.035em}tbody tr:hover{background:#f8faff}tfoot th,.grand-total{background:#edf2f8}.table-secondary{display:block;margin-top:.15rem;color:var(--muted);font-size:.74rem;font-weight:400}.financial-table td.number,.statement-table td:last-child{text-align:right;font-variant-numeric:tabular-nums}.subtotal{font-weight:750;background:#f5f8fc}.alert{display:grid;gap:.25rem;margin:.8rem 0;padding:.8rem 1rem;border:1px solid #a9c5fa;border-radius:10px;color:#174489;background:#edf4ff}.alert.success{color:#096344;background:#e2f7ed;border-color:#91d8bc}.alert.warning{color:#704600;background:#fff3d7;border-color:#e6c77c}.alert.danger{color:#8c1f28;background:#ffe8ea;border-color:#e8a0a5}.empty-state,.error-state,.status-page,.fatal-error{padding:2rem;text-align:center;border:1px dashed #bec9d8;border-radius:var(--radius);background:#fff}.empty-icon{display:inline-grid;width:48px;height:48px;place-items:center;border-radius:50%;color:var(--primary);background:#e8efff;font-size:1.5rem}.empty-state p,.error-state p,.muted{color:var(--muted)}.error-state{display:flex;align-items:center;justify-content:center;gap:1rem;color:var(--danger);border-style:solid;border-color:#e6a0a6;background:#fff3f4}.error-state h3,.error-state p{margin:.1rem}.skeleton{display:grid;gap:.8rem;padding:1rem 0}.skeleton span{height:55px;border-radius:10px;background:linear-gradient(90deg,#e7ebf2 25%,#f5f7fa,#e7ebf2 75%);background-size:200% 100%;animation:shimmer 1.4s infinite}@keyframes shimmer{to{background-position:-200% 0}}.login-page{min-height:100vh;display:grid;grid-template-columns:1.15fr minmax(360px,.85fr);background:var(--navy)}.login-hero{padding:clamp(2.5rem,8vw,8rem);display:flex;flex-direction:column;justify-content:center;color:#fff;background:radial-gradient(circle at 20% 20%,rgb(56 105 240 / 35%),transparent 35%)}.login-hero h1{max-width:780px;margin:2.5rem 0 1rem;font-size:clamp(2.6rem,5vw,5.3rem);line-height:.99}.login-hero>p{max-width:650px;color:#c0cbe0;font-size:1.1rem}.login-benefits{display:grid;gap:.4rem;padding:0;list-style:none;color:#d7e0ef}.login-panel{display:grid;place-items:center;padding:2rem;background:#eef2f7}.login-card{width:min(430px,100%);display:grid;gap:1rem;padding:clamp(1.4rem,4vw,2.2rem);background:#fff;border-radius:20px;box-shadow:0 24px 70px #040c1b3d}.login-card h2{margin:0;font-size:2rem}.cycle-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:1.25rem;align-items:start}.cycle-stepper{position:sticky;top:1rem;padding:.65rem;background:#fff;border:1px solid var(--line);border-radius:var(--radius)}.cycle-stepper ol{display:grid;gap:.2rem;margin:0;padding:0;list-style:none}.cycle-stepper li>a,.cycle-stepper li>span{min-height:44px;display:grid;grid-template-columns:26px 1fr;align-items:center;gap:.55rem;padding:.45rem;border-radius:8px}.cycle-stepper li>a>span,.cycle-stepper li>span>span{display:grid;grid-template-columns:1fr;gap:0}.cycle-stepper small{display:block;color:var(--muted);font-size:.68rem}.cycle-stepper a:hover,.cycle-stepper .active{background:#eaf0fc}.cycle-stepper .stale{color:var(--warning)}.cycle-workspace{min-width:0}.transaction-list,.timeline-cards,.statements-stack,.grade-list,.rubric-scoring,.feedback-thread{display:grid;gap:1rem}.transaction-card,.statement-card,.score-card,.grade-detail{margin:0}.transaction-sequence,.criterion-number{display:inline-grid;min-width:2rem;min-height:2rem;place-items:center;border-radius:50%;color:#fff;background:var(--primary);font-size:.78rem;font-weight:800}.journal-lines,.criterion-editor,.account-editor,.requirement-grid{display:grid;gap:.75rem}.journal-line{display:grid;grid-template-columns:minmax(180px,2fr) 1fr 1fr minmax(130px,1fr) auto;gap:.65rem;align-items:end;padding:.8rem;border:1px solid var(--line);border-radius:10px}.journal-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:.75rem;align-items:center;margin-top:.85rem;padding:.8rem;background:#f2f5f9;border:1px solid var(--line);border-radius:10px}.journal-totals>div{display:grid;gap:.1rem}.journal-totals span{color:var(--muted);font-size:.75rem}.journal-totals strong{font-variant-numeric:tabular-nums}.journal-totals.balanced{border-color:#7fcbb0;background:#eefaf5}.auto-score{display:flex;justify-content:space-between;gap:1rem;margin:.8rem 0;padding:.7rem .8rem;background:#eef4ff;border-radius:8px}.balance-list,.details-list,.criteria-list,.finding-list,.feedback-list,.penalty-list,.activity-list{padding:0;margin:.8rem 0;list-style:none}.details-list>div,.feedback-list li{display:flex;justify-content:space-between;gap:1rem;padding:.55rem 0;border-bottom:1px solid var(--line)}.details-list dt{color:var(--muted)}.details-list dd{margin:0;font-weight:700;text-align:right}.transaction-list{padding:0;list-style:none}.transaction-list>li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.75rem;align-items:start}.submission-checklist{display:grid;gap:.25rem;margin:0;padding:0;list-style:none}.submission-checklist li{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:.65rem;align-items:center;min-height:52px;padding:.55rem .7rem;border-bottom:1px solid var(--line)}.submission-checklist li>span{width:26px;height:26px;display:grid;place-items:center;border-radius:50%;color:#4e5d72;background:#e8edf4;font-weight:900}.submission-checklist li>div{display:grid}.submission-checklist small{color:var(--muted)}.submission-checklist li.ready>span{color:#fff;background:var(--success)}.submission-checklist li.stale>span{color:#fff;background:var(--warning)}.submission-checklist a{color:var(--primary);font-weight:750;text-decoration:underline}.balance-list li,.criteria-list li,.penalty-list li,.activity-list li{display:flex;justify-content:space-between;gap:1rem;padding:.65rem 0;border-bottom:1px solid var(--line)}.criteria-list li>div{display:grid}.criteria-list li span{color:var(--muted)}.finding-list li{display:flex;align-items:flex-start;gap:.7rem;padding:.8rem 0;border-bottom:1px solid var(--line)}.finding-list p,.finding-list small{display:block;margin:.2rem 0}.grade-number{margin:1rem 0;color:var(--primary);font-size:clamp(2.7rem,7vw,4.5rem);font-weight:900;line-height:1}.grade-summary dl,.review-summary dl{display:grid;gap:.6rem}.grade-summary dl>div,.review-summary dl>div{display:flex;justify-content:space-between;gap:1rem}.grade-summary dt,.review-summary dt{color:var(--muted)}.grade-summary dd,.review-summary dd{margin:0;font-weight:750;text-align:right}.timeline{display:grid;gap:.8rem;padding-left:1.2rem}.timeline li strong,.timeline li span{display:block}.timeline li span{color:var(--muted)}.pre-line{white-space:pre-line}.editor-panel{margin:1rem 0}.editor-panel.wide{max-width:1120px}.wizard-progress{display:grid;grid-template-columns:repeat(9,minmax(72px,1fr));gap:.35rem;margin:1rem 0;padding:0 0 .75rem;overflow-x:auto;list-style:none}.wizard-progress li{display:grid;justify-items:center;gap:.3rem;color:var(--muted);font-size:.7rem;text-align:center}.wizard-progress li span{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;color:#405069;background:#e6ebf2;font-weight:800}.wizard-progress li.current span,.wizard-progress li.done span{color:#fff;background:var(--primary)}.wizard-panel{min-height:260px;padding:1rem;background:#f8fafe;border:1px solid var(--line);border-radius:10px}.wizard-actions{justify-content:flex-end;margin-top:1rem}.wizard-actions .secondary{margin-right:auto}.sticky-actions{position:sticky;z-index:10;bottom:1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1rem;padding:.8rem 1rem;color:#fff;background:#1d2c45;border-radius:10px;box-shadow:0 12px 30px #0003}.dialog{width:min(520px,calc(100% - 2rem));padding:0;border:0;border-radius:16px;box-shadow:0 28px 80px #00000047}.dialog::backdrop{background:#060f1f9e}.dialog-body{padding:1.4rem}.dialog-body h2{margin-top:0}.dialog-actions{justify-content:flex-end;margin-top:1.2rem}.form-dialog{width:min(680px,calc(100% - 2rem));max-height:min(90vh,900px);overflow:auto;border-radius:8px}.form-dialog.wide{width:min(1100px,calc(100% - 2rem))}.form-dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;border-bottom:1px solid var(--line)}.form-dialog-heading h2{margin:0;font-size:1.2rem}.form-dialog-heading .button{width:auto;flex:0 0 auto}.form-dialog-content{padding:1.25rem}.form-dialog-content .editor-panel{border:0;padding:0;box-shadow:none}.toast-region{position:fixed;right:1rem;bottom:1rem;z-index:100;display:grid;gap:.5rem}.toast-region>div{max-width:380px;padding:.85rem 1rem;color:#fff;background:#162642;border-radius:10px;box-shadow:var(--shadow)}.pagination{display:flex;align-items:center;justify-content:flex-end;gap:.8rem;margin-top:1rem}.filter-pills{display:flex;flex-wrap:wrap;gap:.4rem}.filter-pills button{border:1px solid var(--line);border-radius:999px;padding:.4rem .7rem;color:var(--ink);background:#fff;cursor:pointer}.filter-pills button.active{color:#fff;background:var(--primary)}.session-loading{min-height:100vh;display:grid;place-items:center;padding:2rem}@media(max-width:1120px){.metric-grid,.card-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.cycle-layout{grid-template-columns:1fr}.cycle-stepper{position:static;overflow-x:auto}.cycle-stepper ol{grid-template-columns:repeat(6,minmax(150px,1fr))}.journal-line{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:820px){.shell{display:block}.mobile-header{position:sticky;top:0;z-index:45;min-height:62px;display:flex;align-items:center;gap:.8rem;padding:.65rem 1rem;background:#fff;border-bottom:1px solid var(--line)}.menu-button{width:44px;height:44px;border:0;border-radius:8px;color:var(--ink);background:#e9eef6;font-size:1.25rem}.brand-dark{color:var(--ink)}.sidebar{position:fixed;inset:0 auto 0 0;z-index:60;width:min(300px,84vw);transform:translate(-105%);transition:transform .2s ease}.sidebar.drawer-open{transform:translate(0)}.drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;border:0;background:#040c198c}.topbar{min-height:72px;margin:0 1rem}.user-chip{display:none}.content-grid.two-thirds{grid-template-columns:1fr}.assignment-hero{grid-template-columns:repeat(2,minmax(0,1fr))}.login-page{grid-template-columns:1fr}.login-hero{display:none}}@media(max-width:600px){.main-content{padding:1.35rem .8rem 2.5rem}.page-heading,.priority-card,.section-heading,.score-heading,.sticky-actions{align-items:stretch;flex-direction:column}.metric-grid,.card-grid,.card-grid.compact,.form-grid,.summary-strip,.assignment-hero,.journal-totals{grid-template-columns:1fr}.span-2{grid-column:span 1}.metric{min-height:105px}.toolbar,.filter-bar,.inline-controls{align-items:stretch;flex-direction:column}.toolbar .field,.filter-bar .field{flex-basis:auto}.table-controls .field{max-width:none}.list-actions .button{width:auto}.button{width:100%}.sticky-actions{position:static}.review-nav .button,.row-actions .button,.dialog-actions .button{width:auto}.cycle-stepper ol{grid-template-columns:repeat(11,minmax(135px,1fr))}.journal-line{grid-template-columns:1fr}.error-state{align-items:stretch;flex-direction:column}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media print{.sidebar,.mobile-header,.topbar,.app-footer,.breadcrumbs,.page-actions,.button,.tabs,.toolbar,.filter-bar,.sticky-actions{display:none!important}.shell{display:block}.main-content{max-width:none;padding:0}.card,.table-wrap{box-shadow:none;break-inside:avoid}.table-wrap{overflow:visible}table{min-width:0}}
