@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500&family=IBM+Plex+Sans:wght@300;400;500;600&family=Literata:opsz,wght@7..72,400;7..72,500;7..72,600&family=Material+Symbols+Rounded:opsz,wght,FILL,GRAD@24,300,0,0&display=swap";:root{color:oklch(26% .018 50);font-synthesis:none;--accent:oklch(56% .13 42);--accent-strong:oklch(48% .13 42);--canvas:oklch(97.6% .011 78);--sidebar:oklch(95.8% .013 78);--surface:oklch(99.3% .005 85);--surface-soft:oklch(96.8% .012 77);--border:oklch(88% .018 76);--border-soft:oklch(91% .015 76);--text:oklch(26% .018 50);--text-secondary:oklch(40% .02 55);--text-muted:oklch(56% .022 62);--success:oklch(48% .11 145);--success-bg:oklch(95% .035 145);--warning:oklch(55% .12 85);--warning-bg:oklch(96% .05 85);--danger:oklch(55% .15 30);--danger-bg:oklch(95% .035 30);--shadow:0 18px 45px oklch(26% .03 50/.08);background:oklch(97.6% .011 78);font-family:IBM Plex Sans,system-ui,sans-serif}*{box-sizing:border-box}html,body{min-height:100%}body{background:var(--canvas);color:var(--text);-webkit-font-smoothing:antialiased;margin:0}button,input,textarea,select{font:inherit;color:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-strong)}h1,h2,h3,p{margin-top:0}h1,h2{letter-spacing:-.02em;font-family:Literata,Georgia,serif;font-weight:400}h1{margin-bottom:8px;font-size:clamp(29px,3.5vw,40px);line-height:1.13}h2{margin-bottom:8px;font-size:24px;line-height:1.25}.mono{font-family:IBM Plex Mono,monospace}.icon{font-family:Material Symbols Rounded;font-size:21px;font-weight:300;line-height:1}.eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);font:400 12px/1 IBM Plex Mono,monospace}.muted{color:var(--text-muted)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.page-copy{color:var(--text-secondary);font-size:16px;line-height:1.55}.button{background:var(--accent);color:oklch(99% .005 85);cursor:pointer;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:10px 18px;font-weight:500;transition:background .15s,border-color .15s,transform .15s;display:inline-flex}.button:hover{background:var(--accent-strong);color:#fff}.button:active{transform:translateY(1px)}.button:disabled{opacity:.5;cursor:not-allowed;transform:none}.button.secondary{background:var(--surface);border-color:var(--border);color:var(--text)}.button.secondary:hover{background:var(--surface-soft);border-color:oklch(82% .022 74)}.button.ghost{color:var(--text-secondary);background:0 0;border-color:#0000}.button.danger{background:var(--danger)}.button.small{min-height:38px;padding:8px 13px;font-size:14px}.button.full{width:100%}.field{gap:7px;display:grid}.field>span{font-size:14px;font-weight:500}.input,.textarea,.select{border:1px solid var(--border);background:var(--surface);border-radius:9px;outline:none;width:100%;padding:12px 14px;transition:border-color .15s,box-shadow .15s}.textarea{resize:vertical;min-height:150px;line-height:1.6}.input:focus,.textarea:focus,.select:focus{border-color:var(--accent);box-shadow:0 0 0 3px oklch(56% .13 42/.13)}.input::placeholder,.textarea::placeholder{color:oklch(66% .02 62)}.surface{border:1px solid var(--border);background:var(--surface);border-radius:14px}.surface-pad{padding:clamp(20px,3vw,32px)}.stack{gap:18px;display:grid}.cluster{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.page-header{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:24px;display:flex}.page-header p{color:var(--text-secondary);margin:0}.error-message{background:var(--danger-bg);color:var(--danger);border:1px solid oklch(87% .06 30);border-radius:9px;padding:12px 14px;font-size:14px}.success-message{background:var(--success-bg);color:var(--success);border:1px solid oklch(87% .05 145);border-radius:9px;padding:12px 14px;font-size:14px}.empty-state{text-align:center;justify-items:center;gap:10px;padding:56px 24px;display:grid}.empty-state>.icon{background:var(--surface-soft);border-radius:999px;place-items:center;width:48px;height:48px;font-size:25px;display:grid}.empty-state .button>.icon{background:0 0;border-radius:0;width:auto;height:auto;font-size:21px;display:inline}.center-state{min-height:100vh;color:var(--text-muted);place-content:center;justify-items:center;gap:12px;display:grid}.spinner{border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:24px;height:24px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.status{background:var(--surface-soft);width:fit-content;color:var(--text-secondary);border-radius:999px;align-items:center;gap:7px;padding:6px 10px;font-size:13px;display:inline-flex}.status:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.status.success{background:var(--success-bg);color:var(--success)}.status.warning{background:var(--warning-bg);color:var(--warning)}.status.danger{background:var(--danger-bg);color:var(--danger)}@media (width<=760px){.button.small{min-height:44px}.touch-link{align-items:center;min-height:44px;display:inline-flex}.page-header{align-items:flex-start}.page-header>.button{display:none}h1{font-size:30px}.surface-pad{padding:20px 16px}}.analytics-consent.svelte-qhmsoe{z-index:1000;border:1px solid var(--border-soft);background:var(--surface,#fff);border-radius:16px;justify-content:space-between;align-items:center;gap:24px;max-width:920px;margin:0 auto;padding:18px 20px;display:flex;position:fixed;bottom:20px;left:20px;right:20px;box-shadow:0 16px 50px #251c142e}.analytics-consent.svelte-qhmsoe strong:where(.svelte-qhmsoe),.analytics-consent.svelte-qhmsoe p:where(.svelte-qhmsoe){display:block}.analytics-consent.svelte-qhmsoe p:where(.svelte-qhmsoe){color:var(--text-muted);margin:5px 0 0;line-height:1.45}.analytics-consent.svelte-qhmsoe a:where(.svelte-qhmsoe){text-decoration:underline}.consent-actions.svelte-qhmsoe{flex:none;gap:8px;display:flex}@media (width<=700px){.analytics-consent.svelte-qhmsoe{flex-direction:column;align-items:stretch;gap:14px}.consent-actions.svelte-qhmsoe .button:where(.svelte-qhmsoe){flex:1}}
