@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:400 800;font-display:swap;src:url("./media/hanken-grotesk-6TDUXVWR.woff2") format("woff2")}@font-face{font-family:Libre Caslon Display;font-style:normal;font-weight:400;font-display:swap;src:url("./media/libre-caslon-display-X5N23HUX.woff2") format("woff2")}@font-face{font-family:Space Mono;font-style:normal;font-weight:400;font-display:swap;src:url("./media/space-mono-400-GO2M6NQ6.woff2") format("woff2")}@font-face{font-family:Space Mono;font-style:normal;font-weight:700;font-display:swap;src:url("./media/space-mono-700-5R3UJXON.woff2") format("woff2")}*,*:before,*:after{box-sizing:border-box}:root{--font-display: "Libre Caslon Display", Georgia, serif;--font-body: "Hanken Grotesk", system-ui, -apple-system, sans-serif;--font-mono: "Space Mono", ui-monospace, "SFMono-Regular", monospace;--radius: 6px;--radius-lg: 12px;--shadow: 0 14px 34px -18px rgba(26, 26, 26, .45);--safe-area-inset-top: env(safe-area-inset-top, 0px);--safe-area-inset-right: env(safe-area-inset-right, 0px);--safe-area-inset-bottom: env(safe-area-inset-bottom, 0px);--safe-area-inset-left: env(safe-area-inset-left, 0px)}:root,[data-theme=dark]{color-scheme:dark;--color-bg: #141414;--color-bg-elevated: #1A1A1A;--color-surface: #222222;--color-text: #F4EFE6;--color-text-muted: rgba(244, 239, 230, .65);--color-text-subtle: rgba(244, 239, 230, .45);--color-header-bg: rgba(20, 20, 20, .92);--color-panel-bg: rgba(26, 26, 26, .95);--color-border: rgba(244, 239, 230, .16);--color-icon: #F4EFE6;--color-icon-btn-bg: rgba(244, 239, 230, .08);--color-icon-btn-hover: rgba(244, 239, 230, .16);--color-icon-btn-border: rgba(244, 239, 230, .28);--color-accent: #C9A063;--color-accent-strong: #E0BE83;--color-accent-text: #1A1A1A;--color-overlay: rgba(0, 0, 0, .72);--color-input-bg: rgba(244, 239, 230, .07);--color-danger: #CC6663;--color-danger-bg: rgba(176, 65, 62, .22);--color-slider-track: rgba(244, 239, 230, .22);--color-slider-thumb: #F4EFE6}[data-theme=light]{color-scheme:light;--color-bg: #F4EFE6;--color-bg-elevated: #FBF8F2;--color-surface: #FBF8F2;--color-text: #2A2A2A;--color-text-muted: #625B50;--color-text-subtle: #6E665A;--color-header-bg: rgba(244, 239, 230, .92);--color-panel-bg: rgba(251, 248, 242, .98);--color-border: #D8D1C2;--color-icon: #2A2A2A;--color-icon-btn-bg: #FBF8F2;--color-icon-btn-hover: rgba(42, 42, 42, .08);--color-icon-btn-border: #C4BBA8;--color-accent: #C9A063;--color-accent-strong: #2A2A2A;--color-accent-text: #1A1A1A;--color-overlay: rgba(26, 26, 26, .45);--color-input-bg: #FBF8F2;--color-danger: #B0413E;--color-danger-bg: rgba(176, 65, 62, .13);--color-slider-track: #C4BBA8;--color-slider-thumb: #2A2A2A}html,body{margin:0;padding:0;width:100%;height:100%;overflow:hidden}body{font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--color-bg);color:var(--color-text);line-height:1.5;overscroll-behavior-y:contain}.icon-btn{position:relative;width:44px;height:44px;border:1.5px solid var(--color-icon-btn-border);border-radius:50%;background:var(--color-icon-btn-bg);color:var(--color-icon);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .2s,border-color .2s,transform .15s}.icon-btn:hover{background:var(--color-icon-btn-hover)}.icon-btn:active{transform:scale(.96)}.icon-btn .header-icon{width:22px;height:22px;display:block}@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}*{-webkit-tap-highlight-color:transparent}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--color-input-bg)}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}::selection{background:color-mix(in srgb,var(--color-accent) 35%,transparent);color:var(--color-text)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}button{font-family:inherit;font-size:inherit;line-height:inherit}img{max-width:100%;height:auto;display:block}.no-select{user-select:none;-webkit-user-select:none}.fade-in{animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.slide-up{animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
