@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/Inter-Variable-Dx4kXJAl.woff2)format("woff2-variations"),url(/assets/Inter-Variable-Dx4kXJAl.woff2)format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/assets/JetBrainsMono-Variable-6fWv1k7M.woff2)format("woff2-variations"),url(/assets/JetBrainsMono-Variable-6fWv1k7M.woff2)format("woff2")}*,:before,:after{box-sizing:border-box;margin:0;padding:0}.icon{vertical-align:-.15em;flex-shrink:0;width:1em;height:1em;display:inline-block}:root{--bg:#f4f6fa;--surface:#fff;--surface2:#eef1f7;--border:#d0d7e4;--text:#0f1117;--muted:#6b7590;--accent:#2b6ef5;--accent-dim:#dce8ff;--success:#16a34a;--success-bg:#dcfce7;--success-border:#86efac;--success-text:#15803d;--error:#dc2626;--error-bg:#fee2e2;--error-border:#fca5a5;--error-text:#b91c1c;--warning:#d97706;--warning-bg:#fef9c3;--warning-border:#fde047;--warning-text:#92400e;--fmt-doc-bg:#dbeafe;--fmt-doc-text:#1d4ed8;--fmt-doc-border:#bfdbfe;--fmt-img-bg:#dcfce7;--fmt-img-text:#166534;--fmt-img-border:#bbf7d0;--success-tint:#f0fdf4;--focus-ring:0 0 0 3px var(--accent-dim), 0 0 0 1px var(--accent);--radius:8px;--font:"Inter", system-ui, sans-serif}:root.dark-mode{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0f1724;--surface:#151f2e;--surface2:#1d2a3d;--border:#314158;--text:#eef4ff;--muted:#9aa9bd;--accent:#7aa7ff;--accent-dim:#203b66;--success:#4ade80;--success-bg:#143522;--success-border:#256f43;--success-text:#86efac;--error:#f87171;--error-bg:#3b1d22;--error-border:#7f2d35;--error-text:#fecaca;--warning:#fbbf24;--warning-bg:#3a2c12;--warning-border:#7c5c18;--warning-text:#fde68a;--fmt-doc-bg:#1e3a8a;--fmt-doc-text:#dbeafe;--fmt-doc-border:#3b82f6;--fmt-img-bg:#14532d;--fmt-img-text:#dcfce7;--fmt-img-border:#22c55e;--success-tint:#102f20;--focus-ring:0 0 0 3px #7aa7ff3d, 0 0 0 1px var(--accent)}body{background:var(--bg);color:var(--text);font-family:var(--font);min-height:100vh;font-size:15px;line-height:1.5}#root{flex-direction:column;min-height:100vh;display:flex}[hidden]{display:none!important}.hidden-input{display:none}.app-header{background:var(--surface);border-bottom:1px solid var(--border);padding:0 20px}.header-inner{align-items:center;gap:16px;max-width:1040px;margin:0 auto;padding:16px 0;display:flex}.header-gov-logo{cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:auto;height:56px;padding:4px 6px;display:flex}.header-gov-logo:hover{background:0 0;border-color:#0000}.header-gov-logo img{width:auto;height:48px;display:block}.header-center{flex:1;min-width:0}.logo{align-items:center;gap:10px;margin-bottom:2px;display:flex}.logo-mark{color:var(--accent);font-size:22px}.logo-text{letter-spacing:-.3px;font-size:20px;font-weight:700}.logo-sub{color:var(--accent);letter-spacing:.6px;text-transform:uppercase;opacity:.85;margin-left:6px;font-size:12px;font-weight:500}.header-tagline{color:var(--muted);font-size:13px}.header-edu-logo{border-radius:6px;flex-shrink:0;align-items:center;height:40px;display:flex;overflow:hidden}.header-edu-logo img{width:auto;height:40px;display:block}main{flex-direction:column;flex:1;gap:22px;width:100%;max-width:1040px;margin:0 auto;padding:40px 28px 72px;display:flex}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:14px;padding:24px;display:flex;box-shadow:8px 10px 18px #0f11170e,1px 2px 4px #0f111709}.field-label{letter-spacing:.5px;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:600}.field-help{color:var(--muted);margin-top:4px;font-size:12px;line-height:1.45}#view-screening{flex-direction:column;gap:24px;display:flex}#view-screening .action-row{margin-top:2px}#ev-result-wrap{flex-direction:column;gap:16px;display:flex}.text-input{background:var(--surface2);border:1px solid var(--border);color:var(--text);border-radius:6px;outline:none;width:100%;padding:10px 12px;font-family:JetBrains Mono,monospace;font-size:13px;transition:border-color .15s}.text-input:focus{border-color:var(--accent)}.select-wrap{position:relative}select{appearance:none;background:var(--surface2);border:1px solid var(--border);color:var(--text);font-size:14px;font-family:var(--font);cursor:pointer;border-radius:6px;outline:none;width:100%;padding:10px 36px 10px 12px;transition:border-color .15s}select option{background:var(--surface);color:var(--text)}select:focus{border-color:var(--accent)}.select-arrow{pointer-events:none;color:var(--muted);font-size:14px;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.visually-hidden{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.custom-select{position:relative}.custom-select-trigger{background:var(--surface2);border:1px solid var(--border);width:100%;color:var(--text);font-size:14px;font-family:var(--font);cursor:pointer;text-align:left;border-radius:6px;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;transition:border-color .15s;display:flex}.custom-select-trigger:hover{border-color:var(--muted)}.custom-select.open .custom-select-trigger{border-color:var(--accent)}.custom-select-trigger .select-arrow{transition:transform .15s;position:static;transform:none}.custom-select.open .custom-select-trigger .select-arrow{color:var(--accent);transform:rotate(180deg)}.custom-select-value{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.custom-select-value.placeholder{color:var(--muted)}.custom-select-panel{z-index:20;background:var(--surface);border:1px solid var(--border);border-radius:6px;max-height:260px;padding:4px;list-style:none;display:none;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto;box-shadow:0 8px 24px #0f11171f}.custom-select.open .custom-select-panel{display:block}.custom-select-option{color:var(--text);cursor:pointer;border-radius:4px;padding:9px 10px;font-size:14px}.custom-select-option:hover,.custom-select-option.active{background:var(--accent-dim)}.custom-select-option[aria-selected=true]{color:var(--accent);font-weight:600}.custom-select-trigger:focus-visible{box-shadow:var(--focus-ring);border-color:var(--accent);outline:none}.dropzone{border:1.5px dashed var(--border);text-align:center;cursor:pointer;background:var(--surface2);border-radius:8px;padding:38px 24px;transition:border-color .15s,background .15s}.dropzone:hover,.dropzone.over{border-color:var(--accent);background:var(--accent-dim)}.dropzone:focus-visible{box-shadow:var(--focus-ring);border-color:var(--accent);outline:none}.drop-icon{justify-content:center;margin-bottom:12px;display:flex}.drop-icon img{opacity:.55;width:48px;height:48px;transition:opacity .15s}.dropzone:hover .drop-icon img,.dropzone.over .drop-icon img{opacity:.85}.drop-primary{margin-bottom:6px;font-weight:600}.formats{flex-wrap:wrap;justify-content:center;gap:5px;margin-top:8px;display:flex}.fmt{border:1px solid #0000;border-radius:4px;padding:2px 7px;font-size:11px;font-weight:700}.fmt.doc{background:var(--fmt-doc-bg);color:var(--fmt-doc-text);border-color:var(--fmt-doc-border)}.fmt.img{background:var(--fmt-img-bg);color:var(--fmt-img-text);border-color:var(--fmt-img-border)}.file-list{flex-direction:column;gap:8px;margin-top:4px;display:flex}.file-tag{background:var(--surface2);border:1px solid var(--border);border-radius:6px;align-items:center;gap:8px;padding:6px 10px;font-size:13px;display:flex}.file-thumb{object-fit:cover;border:1px solid var(--border);border-radius:4px;flex-shrink:0;width:36px;height:36px}.file-ext{border:1px solid #0000;border-radius:4px;flex-shrink:0;padding:2px 6px;font-size:10px;font-weight:800}.file-ext.doc{background:var(--fmt-doc-bg);color:var(--fmt-doc-text);border-color:var(--fmt-doc-border)}.file-ext.img{background:var(--fmt-img-bg);color:var(--fmt-img-text);border-color:var(--fmt-img-border)}.file-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.file-size{color:var(--muted);flex-shrink:0;font-size:12px}.file-remove{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:18px;line-height:1;transition:color .15s}.file-remove:hover{color:var(--error)}.action-row{gap:10px;display:flex}.btn{cursor:pointer;min-height:42px;font-size:14px;font-weight:700;font-family:var(--font);border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:10px 20px;transition:opacity .16s,background-color .16s,border-color .16s,color .16s,transform .16s,box-shadow .16s;display:inline-flex}.btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}.btn-primary{background:var(--accent);color:#fff;box-shadow:0 4px 12px #2b6ef52e}.btn-primary:disabled{opacity:.35;cursor:not-allowed}.btn-primary:not(:disabled):hover{opacity:.94;transform:translateY(-1px);box-shadow:0 6px 16px #2b6ef53d}.btn-primary:not(:disabled):active{transform:translateY(0);box-shadow:0 2px 8px #2b6ef529}.btn-ghost{background:var(--surface2);border:1px solid var(--border);color:var(--muted)}.btn-ghost:hover{color:var(--text);border-color:var(--muted);background:var(--border);transform:translateY(-1px);box-shadow:0 3px 10px #0f111714}.btn-ghost:disabled:hover{color:var(--muted);border-color:var(--border);background:var(--surface2);box-shadow:none;transform:none}.btn-ghost:active{box-shadow:none;transform:translateY(0)}.btn-danger{background:var(--error);color:#fff;box-shadow:0 4px 12px #dc262629}.btn-danger:not(:disabled):hover{opacity:.94;transform:translateY(-1px);box-shadow:0 6px 16px #dc262638}#ev-submit{min-width:150px}#ev-submit.is-screening{cursor:wait}.screen-btn-spinner{border:2px solid #ffffff6b;border-top-color:#fff;border-radius:999px;flex-shrink:0;width:16px;height:16px;animation:.72s linear infinite screenButtonSpin}.screen-btn-label{line-height:1}@keyframes screenButtonSpin{to{transform:rotate(360deg)}}.btn.btn-saved,.btn.btn-saved:hover{background:var(--success-bg);color:var(--success-text);border:1px solid var(--success-border);opacity:1;transform:none;box-shadow:0 3px 10px #16a34a1f}.btn.btn-saved-in{animation:.22s savedButtonIn}.btn.btn-saved-out{opacity:.85;transform:translateY(1px)}@keyframes savedButtonIn{0%{transform:translateY(1px);box-shadow:0 0 #16a34a00}to{transform:translateY(0);box-shadow:0 3px 10px #16a34a1f}}.result-box{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;box-shadow:8px 10px 18px #0f11170e,1px 2px 4px #0f111709}.result-box.ok{border-left:3px solid var(--success)}.result-box.err{border-left:3px solid var(--error)}.result-box.warn{border-left:3px solid var(--warning)}.result-box.pend{border-left:3px solid var(--accent)}.result-header{align-items:center;gap:10px;padding:12px 14px;display:flex}.result-icon{flex-shrink:0;font-size:15px}.result-box.ok .result-icon{color:var(--success)}.result-box.err .result-icon{color:var(--error)}.result-box.warn .result-icon{color:var(--warning)}.result-box.pend .result-icon{color:var(--accent)}.result-label{flex:1;font-size:13px;font-weight:500}.result-raw{border-top:1px solid var(--border);color:var(--accent);background:var(--surface2);white-space:pre-wrap;word-break:break-word;margin:0;padding:14px;font-family:JetBrains Mono,monospace;font-size:12px;line-height:1.6;overflow-x:auto}.mismatch-body{border-top:1px solid var(--border);flex-direction:column;gap:10px;padding:14px;display:flex}.mismatch-msg{color:var(--warning-text);font-size:.85rem;line-height:1.5}.table-scroll{overflow-x:auto}.mismatch-table{border-collapse:collapse;width:100%;font-size:.76rem}.mismatch-table th{text-align:left;color:var(--muted);background:#0000000a;border-bottom:1px solid #00000014;padding:5px 10px;font-weight:600}.mismatch-table td{color:var(--text);vertical-align:top;border-bottom:1px solid #0000000f;padding:6px 10px}.mismatch-table tr:last-child td{border-bottom:none}.loader-wrap{border-top:1px solid var(--border);flex-direction:column;align-items:center;gap:16px;padding:28px 20px;display:flex}.loader-dots{align-items:center;gap:7px;display:flex}.loader-dots span{background:var(--accent);border-radius:50%;width:8px;height:8px;animation:1.2s ease-in-out infinite dotBounce}.loader-dots span:nth-child(2){animation-delay:.18s}.loader-dots span:nth-child(3){animation-delay:.36s}@keyframes dotBounce{0%,80%,to{opacity:.3;transform:scale(.6)}40%{opacity:1;transform:scale(1)}}.loader-bar-wrap{background:var(--border);border-radius:2px;width:100%;max-width:260px;height:3px;overflow:hidden}.loader-bar{background:var(--accent);border-radius:2px;width:40%;height:100%;animation:1.4s ease-in-out infinite barSlide}@keyframes barSlide{0%{transform:translate(-100%)}to{transform:translate(350%)}}.loader-text{color:var(--muted);letter-spacing:.02em;font-size:.78rem}.sr-body{border-top:1px solid var(--border);flex-direction:column;gap:10px;padding:14px;display:flex}.sr-meta{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.sr-name{color:var(--text);font-size:1rem;font-weight:600}.sr-subject{color:var(--muted);margin-top:2px;font-size:.75rem}.sr-badge{letter-spacing:.05em;white-space:nowrap;border-radius:20px;flex-shrink:0;padding:3px 13px;font-size:.72rem;font-weight:700}.sr-badge.PASS{background:var(--success-bg);color:var(--success-text);border:1px solid var(--success-border)}.sr-badge.FAIL{background:var(--error-bg);color:var(--error-text);border:1px solid var(--error-border)}.sr-badge.UNCLEAR{background:var(--warning-bg);color:var(--warning-text);border:1px solid var(--warning-border)}.sr-summary{color:var(--text);font-size:.82rem;line-height:1.5}.sr-section{border-radius:6px;overflow:hidden}.sr-section.matched{border:1px solid #22c55e40}.sr-section.missing{border:1px solid #ef444440}.sr-section.mismatch{border:1px solid #f59e0b40}.sr-sec-head{letter-spacing:.04em;padding:5px 10px;font-size:.73rem;font-weight:700}.sr-section.matched .sr-sec-head{color:var(--success-text);background:#22c55e14;border-bottom:1px solid #22c55e33}.sr-section.missing .sr-sec-head{color:var(--error-text);background:#ef444414;border-bottom:1px solid #ef444433}.sr-section.mismatch .sr-sec-head{color:var(--warning-text);background:#f59e0b14;border-bottom:1px solid #f59e0b33}.sr-table{border-collapse:collapse;width:100%;font-size:.76rem}.sr-table th{text-align:left;color:var(--muted);background:#0000000a;border-bottom:1px solid #00000014;padding:5px 10px;font-weight:600}.sr-table td{color:var(--text);vertical-align:top;border-bottom:1px solid #0000000f;padding:6px 10px}.sr-table tr:last-child td{border-bottom:none}.sr-table tr:nth-child(2n) td{background:#00000005}.gear-btn{background:var(--surface2);border:1px solid var(--border);width:40px;height:40px;color:var(--muted);cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:18px;transition:color .15s,border-color .15s,background-color .15s;display:flex}.gear-btn:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-dim)}.gear-btn.active{color:var(--accent);border-color:var(--accent)}body.settings-modal-open{overflow:hidden}#view-settings{z-index:100;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f11175c;padding:34px 20px;position:fixed;inset:0;overflow:hidden auto}.settings-shell{--settings-shell-padding:24px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:min(1040px,100%);max-height:calc(100vh - 68px);padding:var(--settings-shell-padding);flex-direction:column;gap:20px;margin:0 auto;display:flex;overflow:hidden auto;box-shadow:14px 18px 36px #0f11172e,3px 5px 12px #0f111714}.settings-panel-header{z-index:50;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex;position:relative}.settings-panel-header h2{font-size:17px;font-weight:700}.settings-close-btn{border:1px solid var(--border);color:var(--muted);cursor:pointer;background:0 0;border-radius:6px;width:30px;height:30px;font-size:18px;line-height:1;transition:color .15s,border-color .15s}.settings-close-btn:hover{color:var(--error);border-color:var(--error)}.settings-subtabs{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:20px;display:flex}.subtab-btn{color:var(--muted);font-family:var(--font);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:8px 2px 10px;font-size:13px;font-weight:600;transition:color .15s,border-bottom-color .15s}.subtab-btn:hover{color:var(--accent);border-bottom-color:var(--accent-dim)}.subtab-btn.active{color:var(--accent);border-bottom-color:var(--accent)}#subview-subjects,#subview-general,#subview-page-settings,#subview-appendix,#subview-backups{flex-direction:column;gap:24px;display:flex}.backups-overview{grid-template-columns:minmax(0,max-content) minmax(0,1fr);align-items:end;gap:14px;display:grid}.backups-overview-copy{width:fit-content;min-width:0;max-width:100%}.backup-stats{grid-template-columns:repeat(2,minmax(132px,168px));gap:10px;width:fit-content;max-width:100%;margin-top:12px;display:grid}.backup-stat{background:var(--surface2);border:1px solid var(--border);border-radius:6px;min-width:0;min-height:62px;padding:10px 12px;transition:border-color .15s,background-color .15s}.backup-stat:hover{border-color:var(--accent);background:var(--accent-dim)}.backup-stat-value{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:18px;font-weight:800;line-height:1.2;display:block;overflow:hidden}.backup-stat-date{padding-top:2px;font-size:14px}.backup-stat-label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-top:3px;font-size:11px;font-weight:700;display:block}.backups-controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;max-width:100%;margin-bottom:14px;display:flex}.backup-filter-group{background:var(--surface2);border:1px solid var(--border);border-radius:999px;align-items:center;gap:2px;padding:3px;display:inline-flex}.backup-filter-btn{color:var(--muted);cursor:pointer;font-family:var(--font);background:0 0;border:none;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:700;transition:color .15s,background-color .15s,box-shadow .15s}.backup-filter-btn:hover{color:var(--text)}.backup-filter-btn.active{color:var(--accent);background:var(--surface);box-shadow:0 2px 8px #0f111714}.backup-refresh-btn:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-dim)}.backup-refresh-btn.is-loading .icon{animation:.75s linear infinite backupSpin}@keyframes backupSpin{to{transform:rotate(360deg)}}.backup-section{transition:opacity .18s}.backup-section.is-hidden{display:none}.backup-section-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.backup-section-note{color:var(--muted);margin-top:4px;font-size:12px}.backup-count-pill{text-align:center;border:1px solid var(--border);background:var(--surface2);min-width:34px;color:var(--muted);border-radius:999px;flex-shrink:0;padding:4px 9px;font-size:12px;font-weight:800}.backups-list{flex-direction:column;gap:8px;display:flex}.backup-row{background:var(--surface2);border:1px solid var(--border);border-radius:6px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;font-size:13px;transition:border-color .15s,box-shadow .15s,background-color .15s;display:grid}.backup-row:hover{border-color:var(--accent);box-shadow:0 6px 18px #0f111714}.backup-row.is-open{border-color:var(--accent);box-shadow:inset 3px 0 0 var(--accent), 0 6px 18px #0f111714;background:var(--surface)}.backup-info{align-items:center;gap:10px;min-width:0;display:flex}.backup-kind-mark{background:var(--accent);opacity:.9;border-radius:999px;flex-shrink:0;width:9px;height:34px}.backup-kind-mark.subject{background:var(--success)}.backup-meta{flex-direction:column;gap:3px;min-width:0;display:flex}.backup-name{word-break:break-all;font-family:JetBrains Mono,monospace;font-size:12px}.backup-meta-line{color:var(--muted);flex-wrap:wrap;align-items:center;gap:7px;font-size:12px;display:flex}.backup-time{flex-shrink:0}.backup-size,.backup-latest{border:1px solid var(--border);border-radius:999px;align-items:center;padding:1px 7px;font-size:11px;font-weight:700;line-height:1.6;display:inline-flex}.backup-size{background:var(--surface);color:var(--muted)}.backup-latest{background:var(--accent-dim);color:var(--accent);border-color:#0000}.backup-actions{flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;align-items:center;gap:8px;max-width:100%;display:flex}[data-tooltip]{position:relative}[data-tooltip]:after{content:attr(data-tooltip);z-index:10;pointer-events:none;opacity:0;visibility:hidden;white-space:nowrap;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:4px;padding:5px 7px;font-size:11px;font-weight:600;transition:opacity .12s,transform .12s,visibility .12s;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)translateY(2px);box-shadow:0 8px 24px #0f11171f}[data-tooltip]:before{content:"";z-index:11;pointer-events:none;opacity:0;visibility:hidden;border:5px solid #0000;border-top-color:var(--surface);transition:opacity .12s,transform .12s,visibility .12s;position:absolute;bottom:calc(100% + 3px);left:50%;transform:translate(-50%)translateY(2px)}[data-tooltip]:hover:after,[data-tooltip]:hover:before,[data-tooltip]:focus-visible:after,[data-tooltip]:focus-visible:before{opacity:1;visibility:visible;transform:translate(-50%)translateY(0)}.gear-btn[data-tooltip]:after{top:calc(100% + 8px);bottom:auto;transform:translate(-50%)translateY(-2px)}.gear-btn[data-tooltip]:before{border-top-color:#0000;border-bottom-color:var(--surface);top:calc(100% + 3px);bottom:auto;transform:translate(-50%)translateY(-2px)}.gear-btn[data-tooltip]:hover:after,.gear-btn[data-tooltip]:hover:before,.gear-btn[data-tooltip]:focus-visible:after,.gear-btn[data-tooltip]:focus-visible:before{transform:translate(-50%)translateY(0)}.settings-close-btn[data-tooltip]{z-index:60}.settings-close-btn[data-tooltip]:after{z-index:1000;top:calc(100% + 8px);bottom:auto;transform:translate(-50%)translateY(-2px)}.settings-close-btn[data-tooltip]:before{z-index:1001;border-top-color:#0000;border-bottom-color:var(--surface);top:calc(100% + 3px);bottom:auto;transform:translate(-50%)translateY(-2px)}.settings-close-btn[data-tooltip]:hover:after,.settings-close-btn[data-tooltip]:hover:before,.settings-close-btn[data-tooltip]:focus-visible:after,.settings-close-btn[data-tooltip]:focus-visible:before{transform:translate(-50%)translateY(0)}.btn-icon-action{border:1px solid var(--border);color:var(--muted);cursor:pointer;background:0 0;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;font-size:16px;line-height:1;transition:color .15s,border-color .15s,background-color .15s;display:inline-flex}.btn-icon-action:disabled{opacity:.55;cursor:wait}.backup-view-btn:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-dim)}.backup-default-btn:hover{color:var(--success);border-color:var(--success);background:var(--success-bg)}.backup-delete-btn:hover{color:var(--error);border-color:var(--error);background:var(--error-bg)}.backup-empty{color:var(--muted);border:1px dashed var(--border);background:var(--surface2);border-radius:6px;padding:14px;font-size:13px}.backup-preview-wrap{background:var(--bg);border:1px solid var(--border);border-radius:6px;grid-column:1/-1;animation:.18s backupPreviewIn;overflow:hidden}.backup-preview-head{border-bottom:1px solid var(--border);color:var(--muted);justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;font-size:12px;font-weight:700;display:flex}.backup-preview-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:500;overflow:hidden}.backup-preview{max-height:420px;margin:0;padding:12px;overflow:auto}.backup-preview-loading{color:var(--muted);font-size:13px;font-style:italic}.backup-preview .md-preview{background:var(--surface2)}@keyframes backupPreviewIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.backup-subjects-meta{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px;display:grid}.backup-subjects-meta .field-label{margin-bottom:4px;display:block}.backup-subjects-meta>div>div{word-break:break-word;font-size:13px;font-weight:600}.backup-subjects-list{flex-direction:column;gap:10px;display:flex}.subject-card-readonly{background:var(--surface2);box-shadow:none}.subject-card-readonly .field-label{margin-bottom:6px;display:block}.subject-name-readonly{display:block}.settings-meta-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.settings-meta-row>div,.subject-card-head,.md-editor-pair{min-width:0}.settings-meta-row .field-label{margin-bottom:6px;display:block}#subjects-list{flex-direction:column;gap:14px;display:flex}.subject-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:14px;padding:20px;display:flex;box-shadow:8px 10px 18px #0f11170e,1px 2px 4px #0f111709}.subject-card-head{align-items:center;gap:10px;display:flex}.subject-name-input{flex:1;font-size:14px;font-weight:700}.btn-icon-remove{border:1px solid var(--border);color:var(--muted);cursor:pointer;background:0 0;border-radius:6px;flex-shrink:0;width:30px;height:30px;font-size:16px;line-height:1;transition:color .15s,border-color .15s}.btn-icon-remove:hover{color:var(--error);border-color:var(--error)}textarea.subject-textarea{resize:none;min-height:60px;overflow:hidden}textarea.md-editor{resize:vertical;white-space:pre;min-height:420px}.md-editor-pair{grid-template-columns:minmax(0,1fr) minmax(220px,.85fr);align-items:start;gap:10px;display:grid}.md-preview{background:var(--surface);border:1px solid var(--border);min-height:60px;color:var(--text);overflow-wrap:anywhere;border-radius:6px;padding:10px 12px;font-size:13px;line-height:1.55}.md-preview h1,.md-preview h2,.md-preview h3,.md-preview h4,.md-preview h5,.md-preview h6{margin:0 0 8px;font-size:1em;line-height:1.25}.md-preview p,.md-preview ul,.md-preview ol,.md-preview pre{margin:0 0 8px}.md-preview>:last-child{margin-bottom:0}.md-preview ul,.md-preview ol{padding-left:20px}.md-preview code{background:var(--surface2);border-radius:4px;padding:1px 4px;font-family:JetBrains Mono,monospace;font-size:.92em}.md-preview pre{background:var(--surface2);border:1px solid var(--border);border-radius:6px;padding:8px;overflow-x:auto}.md-preview pre code{background:0 0;border-radius:0;padding:0}.md-preview a{color:var(--accent);text-decoration:none}.md-preview a:hover{text-decoration:underline}.md-preview-empty{color:var(--muted);font-style:italic}.md-preview-disabled .md-preview,.md-preview-disabled .md-preview-label{display:none}.md-preview-disabled .md-editor-pair{grid-template-columns:1fr}.setting-toggle{cursor:pointer;align-items:flex-start;gap:12px;display:flex}.setting-toggle+.setting-toggle{border-top:1px solid var(--border);margin-top:2px;padding-top:14px}.setting-toggle input{width:18px;height:18px;accent-color:var(--accent);flex-shrink:0;margin-top:2px}.setting-title{color:var(--text);font-size:14px;font-weight:700;display:block}.setting-desc{color:var(--muted);margin-top:3px;font-size:13px;line-height:1.45;display:block}.subjects-sticky-actions{bottom:calc(-1 * var(--settings-shell-padding));z-index:5;margin:0 calc(-1 * var(--settings-shell-padding));padding:28px var(--settings-shell-padding) 14px;background:linear-gradient(to top, var(--surface) 45%, transparent 100%);border-radius:0 0 var(--radius) var(--radius);opacity:1;flex-direction:column;align-items:center;gap:10px;transition:transform .28s,opacity .28s;display:flex;position:sticky;transform:translateY(0)}.subjects-sticky-actions .action-row{justify-content:center}.subjects-sticky-actions.is-hidden{opacity:0;pointer-events:none;transform:translateY(calc(100% + 40px))}.subjects-sticky-actions #subjects-status:empty{display:none}.subjects-actions-row{grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;width:100%;display:grid}.subjects-primary-actions{grid-column:2;justify-content:center;align-items:center;gap:10px;display:flex}.subjects-bottom-btn{color:var(--muted);background:0 0;border:none;grid-column:3;justify-self:end;transition:color .15s,transform .15s}.subjects-bottom-btn .icon{transition:transform .15s}.subjects-bottom-btn:hover{color:var(--accent);background:0 0;transform:translateY(1px)}.subjects-bottom-btn:hover .icon{transform:translateY(2px)}.subjects-bottom-btn:active{transform:translateY(3px)}.subjects-bottom-btn.is-go-top:hover{transform:translateY(-1px)}.subjects-bottom-btn.is-go-top:hover .icon{transform:translateY(-2px)}.subjects-bottom-btn.is-go-top:active{transform:translateY(-3px)}.status-msg{border-radius:999px;align-items:center;gap:8px;max-width:100%;margin-top:2px;padding:8px 12px;font-size:13px;font-weight:600;line-height:1.35;display:inline-flex;box-shadow:4px 5px 12px #0f11170d}.status-msg .status-icon{flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;display:inline-flex}.status-msg>span:not(.status-icon){min-width:0}.status-msg.ok{background:var(--success-tint);color:var(--success-text);border:1px solid var(--success-border)}.status-msg.err{background:var(--error-bg);color:var(--error-text);border:1px solid var(--error-border);border-radius:8px}.status-msg.info{background:var(--surface2);color:var(--muted);border:1px solid var(--border)}.status-action{color:inherit;cursor:pointer;font:inherit;background:0 0;border:1px solid;border-radius:999px;flex-shrink:0;margin-left:2px;padding:3px 8px;font-size:12px;font-weight:800}.status-action:hover{background:#ffffff59}.field-label{align-items:center;gap:8px;display:flex}.label-note{opacity:.7;font-size:.85em;font-weight:400}.appendix-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}@media (width<=560px){.appendix-grid{grid-template-columns:1fr}}.appendix-slot{flex-direction:column;gap:8px;display:flex}.appendix-dropzone{border:1.5px dashed var(--border);text-align:center;cursor:pointer;background:var(--surface2);border-radius:8px;padding:22px 14px;font-size:13px;transition:border-color .15s,background .15s}.appendix-dropzone:hover,.appendix-dropzone.over{border-color:var(--accent);background:var(--accent-dim)}.appendix-dropzone:focus-visible{box-shadow:var(--focus-ring);border-color:var(--accent);outline:none}.appendix-dropzone.filled{border-style:solid;border-color:var(--success);background:var(--success-tint)}.appendix-filename{color:var(--muted);word-break:break-word;font-size:12px}.app-dialog-backdrop{z-index:300;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f11177a;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.app-dialog{background:var(--surface);width:min(420px,100%);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:14px;padding:20px;display:flex;box-shadow:14px 18px 36px #0f111733,3px 5px 12px #0f11171a}.app-dialog-title{font-size:17px;font-weight:800;line-height:1.25}.app-dialog-message{color:var(--muted);white-space:pre-line;font-size:13px;line-height:1.5}.app-dialog-field{flex-direction:column;gap:6px;display:flex}.app-dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.app-dialog-actions .btn{padding:9px 16px}.app-footer{border-top:1px solid var(--border);color:var(--muted);text-align:center;padding:16px 20px;font-size:12px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{box-shadow:var(--focus-ring);outline:none}.text-input:focus-visible,select:focus-visible{border-color:var(--accent)}@media (width<=500px){.md-editor-pair{grid-template-columns:1fr}main{gap:16px;padding:28px 16px 56px}#view-screening{gap:18px}#view-settings{padding:16px}.settings-shell{--settings-shell-padding:18px;max-height:calc(100vh - 32px)}.card,.subject-card{padding:18px}.dropzone{padding:30px 16px}.action-row{flex-direction:column}.btn{width:100%}.header-inner{gap:10px}.header-gov-logo{height:44px}.header-gov-logo img{height:36px}.header-edu-logo,.header-edu-logo img{height:32px}.logo-text{font-size:17px}.backup-row{grid-template-columns:1fr}.backup-actions{justify-content:flex-start}.backup-filter-group{width:auto}.backup-filter-btn{flex:none}.subjects-actions-row{grid-template-columns:1fr auto}.subjects-primary-actions{flex-wrap:wrap;grid-column:1;justify-self:end}.subjects-primary-actions .btn{width:auto}.subjects-bottom-btn{grid-column:2}}@media (width<=700px){.settings-meta-row{grid-template-columns:1fr}.settings-subtabs{gap:14px}.backups-overview{grid-template-columns:1fr;align-items:stretch}.backups-controls{justify-content:flex-end;margin-bottom:0}.backup-stats{grid-template-columns:repeat(auto-fit,minmax(min(132px,100%),168px));width:min(100%,346px)}.backup-subjects-meta{grid-template-columns:1fr}}
