/* Final theme contract, applied after legacy theme sheets. */
html[data-theme=dark]{--paper:#101010;--surface:#191919;--soft:#252525;--ink:#fafafa;--text-secondary:#c4c4c4;--muted:#b0b0b0;--line:#3a3a3a;--accent:#805af5}
html[data-theme=light]{--paper:#f8f5ef;--surface:#ffffff;--soft:#eee8de;--ink:#211b14;--text-secondary:#554a3d;--muted:#655544;--line:#d1c5b6;--accent:#6840cf}
html[data-theme] body{color:var(--ink);background:var(--paper)}
html[data-theme] .dashboard-brand strong,html[data-theme] .brand .wordmark,html[data-theme] .wordmark>span{color:var(--ink)!important}
html[data-theme] .dashboard-brand img,html[data-theme] .brand img{filter:none!important}
html[data-theme] .tool-card,html[data-theme] .quick-tool,html[data-theme] .plan,html[data-theme] .resource-card,html[data-theme] dialog{color:var(--ink)!important;background:var(--surface)!important}
html[data-theme] .tool-card p,html[data-theme] .dashboard-hero p,html[data-theme] .faq p,html[data-theme] .plan p,html[data-theme] .plan li{color:var(--text-secondary)!important}
html[data-theme] .dashboard-nav button,html[data-theme] .dashboard-nav a{font-size:15px;line-height:1.5;min-height:44px}
html[data-theme] .dashboard-nav .selected,html[data-theme] .primary,html[data-theme] .plan-button.dark{color:#ffffff!important;background:linear-gradient(110deg,#7546eb,#805af5)!important;border-color:#805af5!important}
html[data-theme] .tabs button.selected{background:var(--accent)!important;color:var(--paper)!important}
html[data-theme] .dashboard-hero p{font-size:17px;line-height:1.8}
html[data-theme] .tool-card h3,html[data-theme] .quick-tool strong{font-size:17px!important}
html[data-theme] .tool-card p{font-size:15px!important;line-height:1.65}
html[data-theme] .card-bottom{font-size:12px}
html[data-theme] .plan li,html[data-theme] .faq p,html[data-theme] .field-help,html[data-theme] .fields label{font-size:15px;line-height:1.65}
html[data-theme] .resource-article p{font-size:18px;line-height:1.8}
html[data-theme] input,html[data-theme] textarea,html[data-theme] select{font-size:16px;color:var(--ink);background:var(--surface)}
html[data-theme] .modal-head button{background:var(--soft)!important;color:var(--ink)!important;border-color:var(--muted)!important}
html[data-theme] :where(button,a,input,select,textarea,summary):focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.sidebar-search{min-width:0;padding:12px!important;gap:8px}
.sidebar-search input{width:100%;min-width:0;border:0;background:transparent!important;padding:0;outline:none!important}
.sidebar-search input::placeholder{color:var(--text-secondary);opacity:1}
.sidebar-search:focus-within{outline:2px solid var(--accent);outline-offset:3px}
#tools{scroll-margin-top:24px}
html .card-top .badge{display:inline-block;position:static;font-size:9px!important;white-space:normal;max-width:none}
html .card-top{flex-direction:column;align-items:flex-start;gap:6px}
html .tool-card{grid-template-columns:85px minmax(130px,1fr) minmax(180px,1.6fr) minmax(100px,1fr)}
html .tool-card h3:after{display:none!important}
html .dashboard-sidebar{position:absolute;max-height:calc(100vh - 64px)}
@media(max-width:1100px){html .tool-card{grid-template-columns:85px 1fr 1.5fr}}
@media(max-width:720px){html .tool-card{grid-template-columns:75px 1fr}html .dashboard-sidebar{position:fixed;max-height:100vh}html .tool-card p{grid-column:2}html .dashboard-hero h1{font-size:36px}html .dashboard-topbar{position:sticky;top:0;z-index:40}}
html[data-theme] .shorts-workspace,html[data-theme] .shorts-clip,html[data-theme] .resource-callout{background:var(--surface)!important;color:var(--ink)!important;border-color:var(--line)!important}
html[data-theme] .shorts-intro p,html[data-theme] .shorts-note,html[data-theme] .shorts-privacy,html[data-theme] .shorts-clip p{color:var(--text-secondary)!important;font-size:16px}
html[data-theme] .caption-controls button,html[data-theme] .shorts-clip button{font-size:15px}
