:root{--background:var(--theme-bg);--foreground:var(--theme-text);--card:var(--theme-surface);--card-foreground:var(--theme-text);--popover:var(--theme-surface);--popover-foreground:var(--theme-text);--primary:var(--theme-accent);--primary-foreground:var(--theme-on-accent);--secondary:var(--theme-soft);--secondary-foreground:var(--theme-text);--muted:var(--theme-soft);--muted-foreground:var(--theme-muted);--accent:var(--theme-soft);--accent-foreground:var(--theme-text);--destructive:var(--theme-danger);--border:var(--theme-border);--input:var(--theme-border);--ring:var(--theme-accent);--chart-1:var(--theme-accent);--chart-2:var(--theme-muted);--chart-3:var(--theme-border);--chart-4:var(--theme-success);--chart-5:var(--theme-soft)}
body{background:var(--theme-bg);color:var(--theme-text)}.logo,.routine-logo{filter:var(--theme-logo-filter)}::selection{background:var(--theme-accent);color:var(--theme-on-accent)}input,select,textarea{accent-color:var(--theme-accent)}:focus-visible{outline-color:var(--theme-accent)}.manifesto :is(p,strong,.eyebrow,h2),.stat.dark :is(p,span,strong,small,div){color:var(--theme-on-accent)}.chart svg polyline{stroke:var(--theme-accent)}.chart svg circle{fill:var(--theme-accent)}.chart svg line{stroke:var(--theme-border)}.chart svg stop{stop-color:var(--theme-accent)}.chart svg text{fill:var(--theme-muted)}.lock-veil{background:color-mix(in srgb,var(--theme-muted) 32%,transparent);color:var(--theme-text)}
.theme-settings{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px 0;margin-top:24px;border-top:1px solid var(--theme-border)}.theme-settings h3{font-size:23px;letter-spacing:-.035em;margin:0 0 8px}.theme-settings p{font-size:14px;margin:0;color:var(--theme-muted)}.theme-settings .button{background:var(--theme-accent);color:var(--theme-on-accent);border-color:var(--theme-accent);font-size:14px;gap:0;white-space:nowrap}.theme-dialog{padding:28px;width:min(1000px,calc(100% - 32px));max-height:calc(100dvh - 40px);border:1px solid var(--theme-border);border-radius:18px;background:var(--theme-surface);color:var(--theme-text);box-shadow:0 25px 100px #0005}.theme-dialog::backdrop{background:#0008;backdrop-filter:blur(5px)}.theme-dialog-header{display:flex;justify-content:space-between;align-items:center;gap:20px}.theme-dialog h2{font:inherit;font-weight:750;font-size:28px;letter-spacing:-.04em;margin:0}.theme-close{font:inherit;font-size:28px;border:0;background:var(--theme-soft);color:var(--theme-text);border-radius:50%;width:42px;height:42px;flex-shrink:0}.theme-dialog>p{font-size:14px;color:var(--theme-muted);line-height:1.6}.theme-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;padding:6px 0 20px;margin:0;border:0}.theme-option{position:relative;cursor:pointer;min-width:0;display:block;border:2px solid var(--theme-border);border-radius:12px;padding:5px;transition:border-color .15s}.theme-option:hover{border-color:var(--theme-accent)}.theme-option:has(input:checked){border-color:var(--theme-accent);box-shadow:0 0 0 2px var(--theme-accent)}.theme-option:has(input:focus-visible){outline:3px solid var(--theme-accent);outline-offset:4px}.theme-option input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.theme-thumbnail{display:block;aspect-ratio:1.65;background:var(--thumb-bg);border-radius:7px;overflow:hidden;border:1px solid var(--thumb-border)}.thumb-top{height:18%;background:var(--thumb-surface);display:flex;gap:4px;align-items:center;padding:0 7px;border-bottom:1px solid var(--thumb-border)}.thumb-top i{display:block;width:4px;height:4px;border-radius:50%;background:var(--thumb-muted)}.thumb-body{height:82%;display:flex}.thumb-nav{width:23%;background:var(--thumb-surface);padding:10px 6px;display:flex;gap:7px;flex-direction:column;border-right:1px solid var(--thumb-border)}.thumb-nav i{height:4px;width:100%;background:var(--thumb-border);border-radius:2px}.thumb-nav i:first-child{background:var(--thumb-accent)}.thumb-content{flex:1;display:flex;flex-direction:column;padding:10px;gap:6px;min-width:0}.thumb-title{height:5px;width:55%;background:var(--thumb-text);border-radius:2px}.thumb-line{height:3px;width:75%;background:var(--thumb-muted);border-radius:2px}.thumb-panels{display:flex;gap:4px;flex:1}.thumb-panels i{flex:1;background:var(--thumb-surface);border:1px solid var(--thumb-border);border-radius:3px}.thumb-panels i:last-child{background:var(--thumb-soft)}.thumb-button{height:9px;width:38%;border-radius:2px;background:var(--thumb-accent);margin-top:2px}.theme-caption{display:flex;align-items:center;justify-content:space-between;gap:5px;padding:9px 5px 4px;font-size:12px;color:var(--theme-muted)}.theme-caption strong{font-size:14px;color:var(--theme-text);font-weight:650}.theme-dialog-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;position:sticky;bottom:-28px;background:var(--theme-surface);padding:18px 0 0;border-top:1px solid var(--theme-border)}.theme-dialog-footer p{font-size:14px;color:var(--theme-muted);margin:0}.theme-dialog-footer>div{display:flex;gap:12px}.theme-dialog-footer .button{font:inherit;font-size:14px;padding:12px 18px;min-height:44px;background:var(--theme-accent);color:var(--theme-on-accent);border:1px solid var(--theme-accent)}.theme-cancel{font:inherit;font-size:14px;background:var(--theme-surface);border:1px solid var(--theme-border);color:var(--theme-text);padding:10px 18px;border-radius:8px;min-height:44px}.theme-dialog button:disabled{opacity:.5;cursor:not-allowed;transform:none}#theme-status{min-height:22px;margin:0 0 12px}#theme-status.theme-error{color:var(--theme-danger)}@media(max-width:750px){.theme-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.theme-settings{align-items:flex-start;flex-direction:column;gap:18px}.theme-dialog{padding:22px}.theme-dialog-footer{bottom:-22px}}@media(max-width:500px){.theme-dialog{padding:18px;width:calc(100% - 20px);max-height:calc(100dvh - 24px)}.theme-dialog h2{font-size:23px}.theme-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.theme-dialog-footer{align-items:stretch;flex-direction:column;gap:12px;bottom:-18px;padding-top:14px}.theme-dialog-footer>div>*{flex:1}.theme-settings .button{width:100%;justify-content:center}.theme-caption strong{font-size:13px}.theme-caption{font-size:11px}.theme-dialog-footer .button{padding:12px;font-size:13px}}
