:root{--bg:#f4f6f8;--surface:#fff;--surface-subtle:#f8fafb;--surface-selected:#eef7f2;--text:#111827;--muted:#64707d;--faint:#8a95a1;--border:#d7dde3;--border-strong:#b8c2cc;--accent:#145f3d;--accent-dark:#0d432b;--accent-soft:#e8f3ed;--danger:#b42318;--warning:#a15c07;--success:#067647;--info:#3153a3;--shadow:0 18px 42px #15223014;color:var(--text);background:var(--bg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:var(--bg);min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}.page-shell{width:min(1180px,100% - 32px);margin:0 auto;padding:18px 0 48px}.page-shell.compact{max-width:740px}.app-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;min-height:64px;margin-bottom:18px;display:flex}.brand{align-items:center;gap:10px;min-width:0;display:inline-flex}.brand-mark{background:var(--accent);color:#fff;border-radius:6px;place-items:center;width:36px;height:36px;font-size:15px;font-weight:800;display:grid}.brand strong,.brand small{display:block}.brand strong{font-size:14px;line-height:1.15}.brand small{color:var(--muted);margin-top:2px;font-size:12px;line-height:1.2}.app-header nav{border:1px solid var(--border);background:var(--surface);border-radius:7px;align-items:center;gap:2px;padding:3px;display:inline-flex}.app-header nav a{min-height:34px;color:var(--muted);border-radius:5px;padding:8px 12px;font-size:13px;font-weight:750}.app-header nav a.active,.app-header nav a:hover{background:var(--accent-soft);color:var(--accent-dark)}.intro-strip,.admin-topbar{justify-content:space-between;align-items:end;gap:18px;margin-bottom:18px;display:flex}.intro-strip h1,.admin-topbar h1{letter-spacing:0;max-width:760px;margin:0;font-size:clamp(28px,3.2vw,38px);line-height:1.08}.intro-strip p,.admin-topbar p{max-width:620px;color:var(--muted);margin:8px 0 0;font-size:15px;line-height:1.55}.deadline-box{border:1px solid var(--border);border-left:3px solid var(--accent);background:var(--surface);border-radius:6px;min-width:206px;padding:12px 14px}.deadline-box span{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:850;display:block}.deadline-box strong{margin-top:4px;font-size:16px;display:block}.portal-layout{grid-template-columns:246px minmax(0,1fr);align-items:start;gap:16px;display:grid}.side-panel{position:sticky;top:16px}.step-progress{gap:6px;margin:0;padding:0;list-style:none;display:grid}.step-progress li{min-height:34px;color:var(--muted);align-items:center;gap:9px;font-size:13px;font-weight:750;display:flex}.step-progress li span{border:1px solid var(--border-strong);background:var(--surface);width:24px;height:24px;color:var(--muted);border-radius:999px;place-items:center;font-size:12px;display:grid}.step-progress li.current,.step-progress li.complete{color:var(--text)}.step-progress li.current span,.step-progress li.complete span{border-color:var(--accent);background:var(--accent);color:#fff}.notes-panel{border:1px solid var(--border);background:var(--surface);color:var(--muted);border-radius:6px;gap:10px;margin-top:16px;padding:13px;display:flex}.notes-panel svg{color:var(--accent);flex:none}.notes-panel p{margin:0;font-size:13px;line-height:1.45}.form-panel,.success-panel,.admin-detail,.admin-list,.auth-panel,.document-card{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);border-radius:6px}.form-panel{min-height:580px;padding:24px}.document-shell{max-width:960px}.document-card{padding:34px}.document-title{text-align:center;margin-bottom:22px}.document-title h1,.document-title h2,.document-title p{margin:0}.document-title h1{letter-spacing:0;font-size:clamp(22px,3vw,31px);font-weight:900;line-height:1.15}.document-title h2{letter-spacing:0;margin-top:8px;font-size:clamp(18px,2.4vw,24px);font-weight:900;line-height:1.2}.document-title p{color:var(--text);margin-top:10px;font-size:15px;font-weight:750}.paper-section,.paper-notes{border-top:1px solid var(--border);margin-top:24px;padding-top:20px}.paper-section h2,.paper-notes h2{letter-spacing:0;margin:0 0 14px;font-size:16px;font-weight:900;line-height:1.25}.paper-grid,.official-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.paper-field{color:var(--text);gap:6px;font-size:13px;font-weight:850;display:grid}.paper-field.full{grid-column:1/-1}.paper-field input,.paper-field textarea,.paper-field select{border:1px solid var(--border-strong);width:100%;color:var(--text);background:#fff;border-radius:6px;outline:none;font-size:14px;font-weight:600}.paper-field input,.paper-field select{min-height:42px;padding:0 11px}.paper-field textarea{resize:vertical;min-height:118px;padding:11px}.paper-field input:focus,.paper-field textarea:focus,.paper-field select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #145f3d1f}.paper-field input[aria-invalid=true],.paper-field textarea[aria-invalid=true]{border-color:var(--danger)}.paper-field input[readonly]{background:var(--surface-subtle);color:var(--muted)}.paper-fieldset{border:0;border-top:1px solid var(--border);margin:22px 0 0;padding:20px 0 0}.paper-fieldset legend{float:left;width:100%;color:var(--text);margin-bottom:12px;font-size:15px;font-weight:900}.paper-options{clear:both;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 18px;display:grid}.paper-options label{min-height:30px;color:var(--text);align-items:center;gap:8px;font-size:14px;font-weight:700;display:flex}.paper-options input,.readonly-checks input{accent-color:var(--accent)}.paper-copy{color:var(--text);margin:0 0 12px;font-size:14px;line-height:1.55}.document-check-list{margin-bottom:14px}.paper-blank-line{color:var(--text);grid-template-columns:max-content minmax(80px,1fr);align-items:end;gap:10px;margin-top:12px;font-size:14px;font-weight:800;display:grid}.paper-blank-line i{border-bottom:1px solid var(--border-strong);min-height:20px;display:block}.paper-notes p{color:var(--text);margin:7px 0;font-size:14px;line-height:1.5}.document-actions{justify-content:flex-end}.section-heading{margin-bottom:18px}.section-heading h2,.success-panel h1,.admin-detail h2,.auth-panel h1{letter-spacing:0;margin:0;font-size:24px;line-height:1.14}.section-heading p,.success-panel p,.auth-panel p{color:var(--muted);margin:6px 0 0;font-size:14px;line-height:1.55}.position-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.choice-card{border:1px solid var(--border);background:var(--surface);min-height:50px;color:var(--text);cursor:pointer;text-align:left;border-radius:6px;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;font-size:14px;font-weight:750;display:flex}.choice-card:hover,.choice-card.selected{border-color:var(--accent);background:var(--surface-selected);color:var(--accent-dark)}.field-grid,.review-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.field{color:var(--text);gap:6px;font-size:13px;font-weight:800;display:grid}.field strong{color:var(--danger)}.field input,.field textarea,.field select,.search-box input,.list-toolbar select{border:1px solid var(--border-strong);width:100%;color:var(--text);background:#fff;border-radius:6px;outline:none;font-size:14px;font-weight:600}.field input,.field select,.search-box input,.list-toolbar select{min-height:42px;padding:0 11px}.field textarea{resize:vertical;min-height:108px;padding:11px}.field input:focus,.field textarea:focus,.field select:focus,.search-box:focus-within,.list-toolbar select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #145f3d1f}.field input[aria-invalid=true],.field textarea[aria-invalid=true]{border-color:var(--danger)}.field-error{color:var(--danger);margin:0;font-size:12px;font-weight:800}.field-helper{color:var(--muted);margin:0 0 0 auto;font-size:12px;font-weight:750}.field-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.check-list{gap:10px;margin-bottom:18px;display:grid}.check-row{border:1px solid var(--border);background:var(--surface-subtle);color:var(--text);border-radius:6px;align-items:flex-start;gap:10px;padding:12px;line-height:1.45;display:flex}.check-row input{width:17px;height:17px;accent-color:var(--accent);margin-top:2px}.review-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.review-block{border:1px solid var(--border);border-radius:6px;padding:14px}.review-block h3{margin:0 0 10px;font-size:15px}.review-block div,.detail-row{border-top:1px solid var(--border);justify-content:space-between;gap:14px;padding:9px 0;display:flex}.review-block span,.detail-row span{color:var(--muted);font-size:12px;font-weight:750}.review-block strong,.detail-row strong{text-align:right;font-size:13px}.profile-preview{border:1px solid var(--border);background:var(--surface-subtle);border-radius:6px;margin-top:14px;padding:14px}.profile-preview strong{margin-bottom:7px;display:block}.profile-preview p{color:var(--muted);margin:0;font-size:14px;line-height:1.6}.turnstile-box{border-top:1px solid var(--border);margin-top:16px;padding-top:14px}.turnstile-box p{color:var(--muted);margin:8px 0 0;font-size:12px;font-weight:750}.form-alert{color:var(--danger);background:#fff5f3;border:1px solid #b4231847;border-radius:6px;margin-top:16px;padding:11px 12px;font-size:13px;font-weight:800}.form-actions,.admin-actions{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;margin-top:22px;padding-top:16px;display:flex}.primary-button,.secondary-button,.ghost-button,.icon-button,.primary-link{cursor:pointer;border-radius:6px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:0 14px;font-size:13px;font-weight:850;transition:background .14s,border-color .14s,color .14s;display:inline-flex}.primary-button,.primary-link{border:1px solid var(--accent);background:var(--accent);color:#fff}.primary-button:hover,.primary-link:hover{background:var(--accent-dark)}.secondary-button,.ghost-button,.icon-button{border:1px solid var(--border);color:var(--text);background:#fff}.secondary-button:hover,.ghost-button:hover,.icon-button:hover{border-color:var(--accent);color:var(--accent-dark)}.primary-button:disabled,.ghost-button:disabled{cursor:not-allowed;opacity:.55}.full-button{width:100%}.success-panel{justify-items:start;margin:32px auto 0;padding:30px;display:grid}.success-icon,.auth-icon{background:var(--accent-soft);width:48px;height:48px;color:var(--accent);border-radius:999px;place-items:center;margin-bottom:16px;display:grid}.success-panel dl{gap:8px;width:100%;margin:18px 0 22px;display:grid}.success-panel dl div{border-top:1px solid var(--border);justify-content:space-between;gap:16px;padding-top:10px;display:flex}.success-panel dt{color:var(--muted);font-weight:750}.success-panel dd{margin:0;font-weight:900}.auth-shell{max-width:520px}.auth-panel{margin-top:52px;padding:28px}.auth-panel form{gap:14px;margin-top:22px;display:grid}.auth-alert{margin-top:0}.auth-note{border-top:1px solid var(--border);padding-top:14px;margin-top:20px!important;font-size:12px!important}.loading-panel{color:var(--muted);padding:28px;font-weight:800}.admin-shell{width:min(1580px,100% - 28px);padding-bottom:18px}.admin-topbar{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;margin-bottom:14px;display:grid}.admin-topbar h1{font-size:clamp(26px,2.8vw,34px)}.metrics-row{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:14px;display:grid}.metric{border:1px solid var(--border);background:var(--surface);border-radius:6px;padding:13px 14px}.metric span{color:var(--muted);font-size:12px;font-weight:850;display:block}.metric strong{margin-top:6px;font-size:25px;line-height:1;display:block}.admin-workspace{grid-template-columns:minmax(480px,.92fr) minmax(560px,1.08fr);align-items:start;gap:14px;min-height:0;display:grid}.admin-list,.admin-detail{padding:14px}.admin-list{min-height:0;max-height:calc(100vh - 182px);overflow:auto}.admin-detail{min-height:0;padding:0;overflow:hidden}.admin-detail-scroll{max-height:calc(100vh - 182px);padding:14px;scroll-padding-top:16px;overflow-y:auto}.list-toolbar{grid-template-columns:minmax(250px,1fr) auto;gap:8px;margin-bottom:12px;display:grid}.search-box{border:1px solid var(--border-strong);background:#fff;border-radius:6px;align-items:center;gap:8px;padding:0 10px;display:flex}.search-box input{box-shadow:none;border:0;padding-left:0}.search-box input:focus{box-shadow:none}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{border-bottom:1px solid var(--border);text-align:left;vertical-align:middle;padding:11px 9px}th{color:var(--muted);letter-spacing:.03em;text-transform:uppercase;font-size:11px;font-weight:900}td{color:var(--text);font-size:13px;font-weight:700}td span{color:var(--muted);margin-top:3px;font-size:12px;font-weight:650;display:block}tbody tr{cursor:pointer}tbody tr:hover,.selected-row{background:var(--surface-selected)}.status-pill{white-space:nowrap;border-radius:999px;align-items:center;min-height:24px;padding:0 9px;font-size:11px;font-weight:900;display:inline-flex}.status-submitted{color:var(--info);background:#edf2ff}.status-under-review{color:var(--warning);background:#fff7e8}.status-accepted{color:var(--success);background:#e8f6ef}.status-rejected{color:var(--danger);background:#fff0ed}.official-pending{color:var(--info);background:#edf2ff}.official-yes{color:var(--success);background:#e8f6ef}.official-no{color:var(--danger);background:#fff0ed}.detail-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:14px;padding-bottom:14px;display:flex}.review-header{padding-bottom:10px}.detail-header span{color:var(--muted);font-size:12px;font-weight:900}.detail-header h2{margin-top:3px;font-size:23px}.detail-header p{color:var(--muted);margin:4px 0 0;font-size:13px;font-weight:750}.detail-sections{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:14px;display:grid}.admin-document-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px;display:grid}.review-summary-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}.review-summary-strip .detail-row{border:1px solid var(--border);background:var(--surface-subtle);border-radius:6px;gap:3px;padding:10px;display:grid}.review-summary-strip .detail-row strong{text-align:left}.document-detail-grid{gap:10px 14px;margin-top:0}.detail-sections h3{margin:0 0 8px;font-size:14px}.admin-profile{background:var(--surface-subtle)}.official-review-card{border:1px solid var(--border-strong);background:var(--surface);border-radius:6px;margin-top:12px;padding:10px;box-shadow:0 12px 24px #15223017}.official-review-heading{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px;display:flex}.official-review-heading h3{letter-spacing:0;margin:0;font-size:18px;font-weight:900}.official-review-heading p{color:var(--muted);margin:3px 0 0;font-size:12px;line-height:1.4}.official-heading-actions{flex:none;align-items:center;gap:8px;display:inline-flex}.official-heading-actions .primary-button{min-height:34px;padding:0 12px}.official-save-message{color:var(--success);margin:-4px 0 9px;font-size:12px;font-weight:850}.official-review-card .paper-field{gap:5px;font-size:12px}.official-review-card .paper-field input,.official-review-card .paper-field select{min-height:35px}.official-review-card .paper-field textarea{min-height:50px}.official-review-card .official-controls{gap:8px 12px}.review-controls{margin-top:0}.review-controls .full{grid-column:1/-1}.admin-actions p{color:var(--success);margin:0;font-size:13px;font-weight:850}.official-actions{margin-top:14px;padding-top:12px}.official-actions span{color:var(--muted);font-size:12px;font-weight:750}.admin-section-stack{gap:8px;margin-top:12px;display:grid}.admin-review-section{border:1px solid var(--border);background:var(--surface);border-radius:6px}.admin-review-section-toggle{cursor:pointer;width:100%;min-height:44px;color:var(--text);text-align:left;background:0 0;border:0;border-radius:6px;justify-content:space-between;align-items:center;padding:0 13px;font-size:13px;font-weight:900;display:flex}.admin-review-section-toggle svg{color:var(--muted);transition:transform .14s}.admin-review-section[data-open=true] .admin-review-section-toggle svg{transform:rotate(180deg)}.admin-review-section-body{border-top:1px solid var(--border);padding:12px 13px 13px}.compact-check-list{gap:7px;margin-bottom:12px}.compact-check-list .check-row{padding:9px 10px}.empty-state{min-height:300px;color:var(--muted);text-align:center;align-content:center;place-items:center;display:grid}.empty-state h2{color:var(--text);margin:10px 0 5px}.empty-state p{max-width:300px;margin:0}.compact-state{border:1px dashed var(--border-strong);border-radius:6px;min-height:132px;font-weight:800}@media (width<=1020px){.portal-layout,.admin-workspace{grid-template-columns:1fr}.side-panel{position:static}.step-progress{grid-template-columns:repeat(4,minmax(0,1fr))}.step-progress li{flex-direction:column;align-items:flex-start;gap:5px}.notes-panel{margin-top:14px}.metrics-row{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=720px){.page-shell,.admin-shell{width:min(100% - 20px,100%);padding-top:10px}.app-header,.intro-strip,.admin-topbar,.form-actions{flex-direction:column;align-items:stretch;display:flex}.app-header{padding-bottom:12px}.brand strong{font-size:13px}.app-header nav{width:100%}.app-header nav a{text-align:center;flex:1}.intro-strip h1,.admin-topbar h1{font-size:28px}.deadline-box{min-width:0}.form-panel,.success-panel,.admin-list,.admin-detail,.auth-panel{padding:16px}.position-grid,.paper-grid,.paper-options,.admin-document-meta,.review-summary-strip,.field-grid,.review-grid,.review-controls,.official-controls,.detail-sections,.list-toolbar{grid-template-columns:1fr}.document-card{padding:18px}.step-progress{grid-template-columns:repeat(2,minmax(0,1fr))}.metrics-row{grid-template-columns:1fr}.review-block div,.detail-row,.success-panel dl div{flex-direction:column;align-items:flex-start;gap:4px}.review-block strong,.detail-row strong{text-align:left}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}
