.theme-toolbar{background:#f4f8fa;color:#264967;border-bottom:1px solid #d5e5e8;font-size:12px}
.theme-toolbar-inner{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding-block:11px}
.theme-toolbar label{font-weight:700}.theme-toolbar select{font:inherit;min-height:42px;max-width:100%;min-width:220px;border:1px solid #9fbac5;border-radius:8px;padding:7px 12px;background:#fff;color:#174d5d}
.theme-toolbar button{font:inherit;min-height:42px;border:1px solid #9fbac5;border-radius:8px;background:#fff;color:#174d5d;padding:7px 12px;cursor:pointer}
.theme-status{flex-basis:100%;color:#255955}.theme-status:empty{display:none}
.theme-toolbar select:focus-visible,.theme-toolbar button:focus-visible{outline:3px solid #087e80;outline-offset:2px}
.attachment-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 30px;gap:12px;padding:18px 0;border-bottom:1px solid var(--line);align-items:start}.attachment-row:first-child{padding-top:0}.attachment-row .field{min-width:0}.attachment-row input{min-width:0;max-width:100%;width:100%}.attachment-row input[type=file]{padding:9px 6px;font-size:10px;min-height:46px;overflow:hidden}.attachment-row input[type=file]::file-selector-button{border:0;background:var(--pale);color:var(--navy);padding:6px;border-radius:4px;font:inherit;margin-inline-end:4px;cursor:pointer}.attachment-filename{overflow-wrap:anywhere;font-size:10px;line-height:1.6;min-height:16px}.attachment-remove{border:0;background:#f5eeee;color:#9a4050;border-radius:7px;width:30px;height:32px;font-size:20px;margin-top:31px}.attachment-list{margin-bottom:15px}.attachment-error{margin-bottom:0}.visibility-panel{margin-top:22px;border-top:1px solid var(--line);padding-top:20px}.visibility-panel h3{font-size:15px;margin-bottom:15px}.visibility-panel .check-row{margin:12px 0}.field-help{font-size:11px;color:var(--muted);margin:8px 0}
html[data-theme^="theme-"] body{background:var(--theme-page);color:var(--ink)}
html[data-theme^="theme-"] :is(#header,.project-card,.resource-card,.vision-card,.honor-card,.panel,.filters,.metric,.auth-form,.table-wrap,.reference-facts .facts-inner,dialog){background:var(--theme-surface);color:var(--theme-surface-ink);border-color:var(--line);box-shadow:none;--ink:var(--theme-surface-ink);--muted:var(--theme-surface-muted);--navy:var(--theme-surface-ink)}
html[data-theme^="theme-"] :is(p,.card-meta,.local-likes-note,.footer-bottom,.field-help,.muted){color:var(--muted)}
html[data-theme^="theme-"] :is(h1,h2,h3,strong,.field label,.detail-meta dd){color:var(--navy)}
html[data-theme^="theme-"] :is(.text-link,.eyebrow,.download-attachment){color:var(--teal)}
html[data-theme^="theme-"] .button{background:var(--teal);color:var(--theme-action-ink);border-color:var(--teal);box-shadow:none}
html[data-theme^="theme-"] .button:hover{filter:brightness(.93)}
html[data-theme^="theme-"] :is(.button.secondary,.like-button,.chip){background:var(--theme-surface);border-color:var(--line);color:var(--theme-surface-ink)}
html[data-theme^="theme-"] .button.danger{background:#a63142;color:#fff;border-color:#a63142}
html[data-theme^="theme-"] :is(.badge,.button.soft,.chip.active,.like-button.liked,.nav-links a.active){background:var(--theme-soft);color:var(--teal);border-color:var(--teal)}
html[data-theme^="theme-"] :is(.demo-strip,.page-heading,.soft-section,.section.soft-section,.category-tile,.idea-banner,.poster-file-card,.auth-visual,.competition-visual,.project-visual,.honor-card,.upload-zone,.poster-preview,th,.tool-tags span){background:var(--theme-soft);color:var(--theme-surface-ink);border-color:var(--line);--muted:var(--theme-surface-muted);--navy:var(--theme-surface-ink)}
html[data-theme^="theme-"] :is(.icon-tile,.reference-facts .fact svg,.resource-symbol,.honor-symbol,.benefit-grid>a>svg){background:var(--theme-soft);color:var(--teal)!important}
html[data-theme^="theme-"] .reference-hero{background:linear-gradient(115deg,var(--theme-soft),var(--theme-page));border-color:var(--line)}
html[data-theme^="theme-"] .reference-hero .hero-art>img{filter:none;mix-blend-mode:normal;opacity:1}
html[data-theme^="theme-"] .reference-hero:before{border-color:var(--line);background:transparent}
html[data-theme^="theme-"] #footer{background:var(--theme-soft);color:var(--theme-surface-ink);--navy:var(--theme-surface-ink);--muted:var(--theme-surface-muted)}
html[data-theme^="theme-"] .tvtc img{background:#fff;padding:8px;border-radius:8px;box-sizing:content-box;max-width:calc(100% - 16px)}
html[data-theme^="theme-"] :is(input,select,textarea,.control){background:var(--theme-surface);color:var(--theme-surface-ink);border-color:var(--line)}
html[data-theme^="theme-"] :is(input,textarea)::placeholder{color:var(--theme-surface-muted);opacity:1}
html[data-theme^="theme-"] :is(th,td,.detail-meta div,.footer-bottom){border-color:var(--line)}
html[data-theme^="theme-"] .dashboard-tabs .active{background:var(--teal);color:var(--theme-action-ink)}
html[data-theme^="theme-"] .dashboard-tabs a{background:var(--theme-surface);color:var(--theme-surface-ink)}
html[data-theme^="theme-"] .dashboard-tabs a.active{background:var(--teal);color:var(--theme-action-ink)}
html[data-theme^="theme-"] .notice{background:var(--theme-surface);color:var(--theme-surface-ink);border-color:var(--line)}
html[data-theme^="theme-"] .hero-caption{color:var(--teal)}
html[data-theme^="theme-"] :is(a,button,input,select,textarea):focus-visible{outline:3px solid var(--aqua);outline-offset:3px}
html[data-theme-mode="dark"] :is(.theme-toolbar,.theme-toolbar select,.theme-toolbar button){background:#1d416a;color:#fff;border-color:#7d9fb5}
html[data-theme-mode="dark"] .theme-status{color:#7dd6d5}
html[data-theme-mode="dark"] .menu-button{background:#1d416a;color:#fff;border-color:#7d9fb5}
html[data-theme-mode="dark"] :is(.result-line,.breadcrumb,.footer-column a,.footer-bottom button,.hero-caption){color:#c1d9e4}
html[data-theme-mode="dark"] .badge,html[data-theme-mode="dark"] .nav-links a.active{color:#7dd6d5}
html[data-theme^="theme-"] .nav-links a{color:var(--theme-surface-ink)}
html[data-theme-mode="dark"] :is(.demo-strip a,.auth-tabs .active,.eyebrow,.text-link){color:#7dd6d5}
html[data-theme^="theme-"] .detail-copy{background:var(--theme-surface);color:var(--theme-surface-ink);--navy:var(--theme-surface-ink);--muted:var(--theme-surface-muted);padding:22px;border-radius:14px}
html[data-theme-mode="gradient"] body{background:linear-gradient(180deg,#1d416a 0%,#1d416a 22%,#1b6f84 60%,#17a1a3 100%);background-attachment:fixed}
html[data-theme-mode="gradient"] #header{background:#1d416a;--navy:#fff;--muted:#e2f3f4;color:#fff}
html[data-theme-mode="gradient"] #header :is(.nav-links a,.user-name,.menu-button){color:#fff}
html[data-theme-mode="gradient"] #header .nav-links a.active{background:#174d5d;color:#fff}
html[data-theme-mode="gradient"] #header .menu-button{background:#174d5d;border-color:#7d9fb5}
html[data-theme-mode="gradient"] :is(.reference-hero,.page-heading,#footer){background:linear-gradient(180deg,#1d416a,#17a1a3);--navy:#fff;--muted:#e2f3f4;color:#fff}
html[data-theme-mode="gradient"] :is(.reference-hero,.page-heading,#footer) :is(h1,h2,h3,p,a,.hero-caption,.breadcrumb,.footer-bottom,.footer-bottom button){color:#fff}
html[data-theme-mode="gradient"] :is(.section-intro,.section-heading,.result-line,.local-likes-note):not(.panel *){--navy:#fff;--muted:#e2f3f4;color:#fff}
html[data-theme-mode="gradient"] .prose:not(.panel){--navy:#fff;--muted:#e2f3f4;color:#fff}
html[data-theme-mode="gradient"] .soft-section .section-heading{--navy:var(--theme-surface-ink);--muted:var(--theme-surface-muted);color:var(--theme-surface-ink)}
html[data-theme-mode="gradient"] :is(.reference-hero,.page-heading,#footer) .button.secondary{color:#174d5d;background:#fff}
html[data-theme-mode="gradient"] .idea-banner{background:linear-gradient(180deg,#1d416a,#17a1a3);--navy:#fff;--muted:#e2f3f4}
html[data-theme-mode="gradient"] .idea-banner .eyebrow{color:#fff}
html[data-theme-mode="mixed"] :is(.reference-hero,#footer){background:linear-gradient(180deg,#1d416a,#17a1a3);--navy:#fff;--muted:#e2f3f4;color:#fff}
html[data-theme-mode="mixed"] :is(.reference-hero,#footer) :is(h1,h2,h3,p,a,.hero-caption,.footer-bottom,.footer-bottom button){color:#fff}
html[data-theme-mode="mixed"] :is(.reference-hero,#footer) .button.secondary{background:#fff;color:#174d5d}
html[data-theme-mode="mixed"] .hero-wordmark,html[data-theme-mode="mixed"] .footer-brand img{filter:brightness(0) invert(1)}
@media(max-width:560px){.theme-toolbar-inner{gap:8px}.theme-toolbar label{flex-basis:100%}.theme-toolbar select{min-width:0;flex:1}.theme-toolbar button{font-size:10px;padding:7px 9px}.theme-toolbar #theme-preview-note{flex-basis:100%;font-size:10px}.attachment-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 23px;gap:7px}.attachment-row .field label{font-size:10px}.attachment-row input[type=text]{font-size:11px;padding:9px 7px;min-height:43px}.attachment-row input[type=file]{font-size:9px;min-height:43px;padding:8px 3px}.attachment-row input[type=file]::file-selector-button{padding:5px 3px}.attachment-remove{width:23px;height:29px;font-size:17px;margin-top:30px}.attachment-filename{font-size:9px}.visibility-panel .check-row{font-size:11px}}
