.app-surface{min-height:100vh;background:var(--page,#181818);color:var(--ink,#f0f0f0)}.theme-dark{color-scheme:dark;--page:#181818;--surface:#202020;--border:#333;--muted:#b2b2b2;--ink:#f0f0f0;--accent:#88b6f3;--input:#181818;--soft:#262626}.theme-light{color-scheme:light;--page:#f5f5f5;--surface:#fff;--border:#ccc;--muted:#555;--ink:#202020;--accent:#245995;--input:#fff;--soft:#eee}
.app-surface .brand,.app-surface h1,.app-surface h2,.app-surface .quiet,.app-surface .secondary{color:var(--ink)}.app-surface input,.app-surface select{background:var(--input);color:var(--ink)}.app-surface .secondary,.app-surface .quiet,.app-surface th{background:var(--soft)}.app-surface th{color:var(--muted)}.theme-light .doc-name{color:#245995}.theme-light .notice{background:#fff0da;color:#614016}.theme-light .settings-section pre{background:#f5f5f5}
.settings-nav{display:flex;gap:12px 24px;flex-wrap:wrap;margin:-8px 0 26px}.settings-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px}.settings-grid>div{min-width:0}fieldset{border:0;padding:0;margin:22px 0 28px;min-width:0}legend{font-weight:600;color:var(--muted);padding:0;margin-bottom:12px;font-size:16px}.choice{display:flex;align-items:center;gap:12px;font-weight:400;font-size:16px;line-height:1.4;margin:12px 0;cursor:pointer}.choice input{flex:none;width:22px;height:22px;margin:0;accent-color:#88b6f3}.category-choices{display:grid;grid-template-columns:1fr;gap:0}.hint{font-size:13px;line-height:1.65;color:var(--muted);margin:10px 0 18px}.date-range{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.date-range input{width:100%;min-width:0}.inactive-range{opacity:.7}.settings-grid select{max-width:100%;width:100%}.settings-grid input[type=number]{width:100px}.override-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(140px,1fr);gap:12px;align-items:center;margin-bottom:12px}.override-row label{font-weight:400;margin:0}.color-options{display:flex;flex-wrap:wrap;gap:10px}.color-choice{position:relative;display:grid;place-items:center;width:42px;height:42px;margin:0;cursor:pointer;border:1px solid var(--border);border-radius:50%}.color-choice input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}.swatch{width:28px;height:28px;border-radius:50%;display:block}.color-choice:has(input:checked){outline:2px solid #559cfa;outline-offset:3px}.color-choice:has(input:checked) .swatch:after{content:'✓';display:grid;place-items:center;color:#101010;font-weight:700;line-height:28px}.color-choice:has(input:focus-visible){outline:3px solid #b5d6ff;outline-offset:3px}.swatch-gray{background:#929aa5}.swatch-blue{background:#639fe8}.swatch-green{background:#43b693}.swatch-amber{background:#dfb33b}.swatch-purple{background:#ad8bdd}.swatch-red{background:#ed606d}.swatch-teal{background:#39b6ba}
.settings-preview{border-top:1px solid var(--border);padding-top:16px;margin-top:8px}.settings-preview h3{font-size:18px}.preview-cards{display:grid;gap:16px}.save-row{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:28px}.save-row .muted{font-size:13px;margin:0}.reset-form{margin-top:18px}.section-card{background:var(--surface);color:var(--ink);border:1px solid var(--border);border-radius:12px;padding:16px;min-width:0}.section-header{display:flex;align-items:start;gap:16px;margin-bottom:12px;min-width:0}.section-name{font-size:16px;line-height:1.5;color:var(--muted);overflow-wrap:anywhere;min-width:0}.category-badge{font-weight:600;font-size:var(--badge-size,14px);line-height:1.5;border-radius:9px;padding:4px 10px;overflow-wrap:anywhere;max-width:100%;width:max-content}.position-right .category-badge{margin-left:auto;flex-shrink:0;max-width:65%}.position-beside .section-header{justify-content:start;flex-wrap:wrap}.position-center .section-header{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr) minmax(0,1fr);gap:12px}.position-center .category-badge{grid-column:2;justify-self:center;text-align:center}.section-body{min-width:0;outline-offset:4px}.section-body[data-expandable=true]{cursor:pointer}.section-body:focus-visible{outline:3px solid #77adf5;border-radius:4px}.section-text{font-size:var(--text-size,16px);line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:var(--preview-lines,5);overflow:hidden}.expanded .section-text,.full-content .section-text{display:block;overflow:visible}.expand-indicator{display:flex;gap:6px;align-items:center;justify-content:flex-end;color:var(--muted);font-size:14px;margin-top:8px}.collapse-label{display:none}.expanded .expand-label{display:none}.expanded .collapse-label{display:inline}.full-content .expand-indicator{display:none}.section-actions{display:flex;gap:16px;flex-wrap:wrap;font-size:13px;border-top:1px solid var(--border);margin-top:16px;padding-top:12px}
.color-gray{background:#30343b;color:#d7dde6}.color-blue{background:#24364c;color:#b8d6ff}.color-green{background:#203b31;color:#a5e5c9}.color-amber{background:#3e3420;color:#f1d48c}.color-purple{background:#362b46;color:#d9c3f5}.color-red{background:#40272b;color:#ffb8c0}.color-teal{background:#203b3d;color:#a3e6e9}
.theme-light .color-gray{background:#e5e8ed;color:#38414e}.theme-light .color-blue{background:#e3edfd;color:#205083}.theme-light .color-green{background:#dff2e8;color:#20563c}.theme-light .color-amber{background:#fff1cc;color:#6b4e09}.theme-light .color-purple{background:#eee4fc;color:#594080}.theme-light .color-red{background:#fce4e7;color:#8b2d3b}.theme-light .color-teal{background:#def2f3;color:#1a575b}
@media(max-width:760px){.settings-grid{grid-template-columns:minmax(0,1fr);gap:0}.settings-section{padding:20px}.position-right .section-header{flex-wrap:wrap}.position-right .category-badge{max-width:100%}.position-center .section-header{grid-template-columns:minmax(0,1fr)}.position-center .category-badge{grid-column:1;justify-self:center}.section-name{font-size:14px}.override-row{grid-template-columns:1fr}.override-row select{width:100%}.date-range{grid-template-columns:minmax(0,1fr)}.color-options{gap:10px}.settings-nav{gap:10px 18px}.section-card{padding:14px}}

.lines-1{--preview-lines:1}
.lines-2{--preview-lines:2}
.lines-3{--preview-lines:3}
.lines-4{--preview-lines:4}
.lines-5{--preview-lines:5}
.lines-6{--preview-lines:6}
.lines-7{--preview-lines:7}
.lines-8{--preview-lines:8}
.lines-9{--preview-lines:9}
.lines-10{--preview-lines:10}
.lines-11{--preview-lines:11}
.lines-12{--preview-lines:12}
.lines-13{--preview-lines:13}
.lines-14{--preview-lines:14}
.lines-15{--preview-lines:15}
.lines-16{--preview-lines:16}
.lines-17{--preview-lines:17}
.lines-18{--preview-lines:18}
.lines-19{--preview-lines:19}
.lines-20{--preview-lines:20}
.lines-21{--preview-lines:21}
.lines-22{--preview-lines:22}
.lines-23{--preview-lines:23}
.lines-24{--preview-lines:24}
.lines-25{--preview-lines:25}
.lines-26{--preview-lines:26}
.lines-27{--preview-lines:27}
.lines-28{--preview-lines:28}
.lines-29{--preview-lines:29}
.lines-30{--preview-lines:30}
.text-size-14{--text-size:14px}
.text-size-15{--text-size:15px}
.text-size-16{--text-size:16px}
.text-size-17{--text-size:17px}
.text-size-18{--text-size:18px}
.text-size-19{--text-size:19px}
.text-size-20{--text-size:20px}
.text-size-21{--text-size:21px}
.text-size-22{--text-size:22px}
.text-size-23{--text-size:23px}
.text-size-24{--text-size:24px}
.badge-size-12{--badge-size:12px}
.badge-size-13{--badge-size:13px}
.badge-size-14{--badge-size:14px}
.badge-size-15{--badge-size:15px}
.badge-size-16{--badge-size:16px}
.badge-size-17{--badge-size:17px}
.badge-size-18{--badge-size:18px}
.dashboard-filter{margin-bottom:28px}.search-row{display:flex;gap:12px}.search-row input{width:100%;min-width:0}.filter-choices{display:flex;gap:12px 20px;flex-wrap:wrap}.filter-period{display:grid;grid-template-columns:minmax(160px,2fr) minmax(0,1fr) minmax(0,1fr);gap:16px}.filter-period input,.filter-period select{width:100%;min-width:0}.result-heading{display:flex;justify-content:space-between;gap:12px;margin-bottom:20px}.result-heading .muted{margin:0;font-size:13px}.dashboard-cards{display:grid;gap:24px}.review-note{font-size:13px;line-height:1.6;color:#f1d2ac;margin:0 0 10px}.theme-light .review-note{color:#614016}.section-date{font-size:12px;color:var(--muted);margin:8px 0 0}@media(max-width:700px){.filter-period{grid-template-columns:1fr}.result-heading{flex-wrap:wrap}.dashboard-filter{padding:20px}.filter-choices{display:grid;gap:0}}
