*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;font-family:var(--font-sans);font-size:var(--fs-base);line-height:var(--lh-body);color:var(--fg-0);background-color:var(--bg-0);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;-webkit-tap-highlight-color:transparent}input,textarea,button,select{font:inherit;color:inherit;background:transparent;border:none;outline:none}button{cursor:pointer;-webkit-user-select:none;user-select:none}a{color:inherit;text-decoration:none}::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:var(--r-pill)}:root,[data-theme=light]{color-scheme:light;--scene: oklch(.968 .012 240);--scene-tint-a: oklch(.93 .05 230 / .55);--scene-tint-b: oklch(.95 .04 300 / .4);--surface-1: oklch(.985 .005 240 / .92);--surface-2: oklch(.995 .003 240 / .95);--glass-1: oklch(.995 .004 240 / .62);--glass-2: oklch(.99 .006 240 / .74);--glass-3: oklch(.985 .006 240 / .86);--surface-read: oklch(.995 .003 240 / .96);--bg-canvas: var(--surface-1);--bg-elevated: var(--surface-2);--bg-glass-1: var(--glass-1);--bg-glass-2: var(--glass-2);--tile: oklch(1 0 0 / .55);--tile-hover: oklch(1 0 0 / .72);--tile-pressed: oklch(.96 .01 240 / .8);--hairline: oklch(.2 .02 250 / .1);--hairline-strong:oklch(.2 .02 250 / .18);--specular: inset 0 1px 0 oklch(1 0 0 / .85), inset 0 0 0 1px oklch(1 0 0 / .35);--fg-0: oklch(.22 .02 255);--fg-1: oklch(.4 .02 255);--fg-2: oklch(.52 .02 255);--fg-on-accent: oklch(.99 0 0);--accent: oklch(.58 .17 250);--accent-soft: oklch(.58 .17 250 / .12);--ok: oklch(.6 .14 155);--warn: oklch(.7 .15 70);--danger: oklch(.58 .19 25);--danger-soft: oklch(.58 .19 25 / .12);--shadow-float: 0 1px 1px oklch(.2 .03 250 / .04), 0 8px 24px oklch(.2 .03 250 / .1), 0 24px 56px oklch(.2 .03 250 / .08);--shadow-tile: 0 1px 2px oklch(.2 .03 250 / .06);--bg-0: var(--scene);--bg-1: var(--surface-1);--bg-2: var(--surface-2);--bg-elev: var(--surface-2);--line: var(--hairline);--line-strong: var(--hairline-strong);--tile-active: var(--accent-soft);--glass-bg: var(--glass-2);--glass-border: var(--hairline);--shadow-1: var(--shadow-tile);--shadow-2: var(--shadow-float);--highlight-top: inset 0 1px 0 oklch(1 0 0 / .45);--mask: oklch(.2 .02 250 / .45);--blur-1: 18px;--blur-2: 28px;--blur-3: 40px;--saturate: 180%}[data-theme=dark]{color-scheme:dark;--scene: oklch(.17 .012 260);--scene-tint-a: oklch(.3 .08 245 / .35);--scene-tint-b: oklch(.28 .07 300 / .25);--surface-1: oklch(.2 .012 260 / .82);--surface-2: oklch(.23 .012 260 / .92);--glass-1: oklch(.24 .012 260 / .58);--glass-2: oklch(.22 .012 260 / .72);--glass-3: oklch(.21 .012 260 / .84);--surface-read: oklch(.195 .01 260 / .97);--bg-canvas: var(--surface-1);--bg-elevated: var(--surface-2);--bg-glass-1: var(--glass-1);--bg-glass-2: var(--glass-2);--tile: oklch(1 0 0 / .06);--tile-hover: oklch(1 0 0 / .1);--tile-pressed: oklch(1 0 0 / .04);--hairline: oklch(1 0 0 / .09);--hairline-strong:oklch(1 0 0 / .16);--specular: inset 0 1px 0 oklch(1 0 0 / .1), inset 0 0 0 1px oklch(1 0 0 / .05);--fg-0: oklch(.95 .005 250);--fg-1: oklch(.8 .01 250);--fg-2: oklch(.66 .012 250);--fg-on-accent: oklch(.15 .02 250);--accent: oklch(.74 .13 245);--accent-soft: oklch(.74 .13 245 / .16);--ok: oklch(.74 .13 155);--warn: oklch(.8 .13 75);--danger: oklch(.7 .16 25);--danger-soft: oklch(.7 .16 25 / .18);--shadow-float: 0 1px 1px oklch(0 0 0 / .3), 0 12px 32px oklch(0 0 0 / .45), 0 0 0 .5px oklch(1 0 0 / .06);--shadow-tile: 0 1px 2px oklch(0 0 0 / .35);--bg-0: var(--scene);--bg-1: var(--surface-1);--bg-2: var(--surface-2);--bg-elev: var(--surface-2);--line: var(--hairline);--line-strong: var(--hairline-strong);--tile-active: var(--accent-soft);--glass-bg: var(--glass-2);--glass-border: var(--hairline);--shadow-1: var(--shadow-tile);--shadow-2: var(--shadow-float);--highlight-top: inset 0 1px 0 oklch(1 0 0 / .12);--mask: oklch(0 0 0 / .55)}:root{--r-tile: 18px;--r-card: 14px;--r-ctl: 10px;--r-chip: 8px;--r-pill: 999px;--r-window: 14px;--r-xs: 4px;--r-sm: 8px;--r-md: 12px;--r-lg: 18px;--r-btn: 10px;--canvas-w: 1200px;--sidebar-w: 280px;--pill-h: 28px;--ease: cubic-bezier(.2, .8, .2, 1);--dur-1: .12s;--dur-2: .22s;--font-sans: -apple-system, "SF Pro Text", "Segoe UI Variable Text", "Segoe UI", "PingFang SC", "Microsoft YaHei UI", "HarmonyOS Sans SC", "Noto Sans SC", sans-serif;--font-mono: "SF Mono", "Cascadia Code", "JetBrains Mono", Consolas, monospace;--fs-caption: 11px;--fs-xs: 12px;--fs-sm: 13px;--fs-base: 14px;--fs-body: 15px;--fs-title: 17px;--fs-hero: 22px;--lh-body: 1.7;--lh-tight: 1.35;--read-width: 760px;--ease-spring: cubic-bezier(.32, .72, 0, 1);--ease-out: cubic-bezier(.2, .8, .2, 1);--dur-fast: .12s;--dur-base: .22s;--dur-slow: .36s;--composer-h: 0px;--kb: 0px;--safe-b: env(safe-area-inset-bottom, 0px)}@media(prefers-reduced-transparency:reduce){:root,[data-theme=light],[data-theme=dark]{--glass-1: var(--surface-read);--glass-2: var(--surface-read);--glass-3: var(--surface-read);--surface-1: var(--surface-read);--surface-2: var(--surface-read);--blur-1: 0px;--blur-2: 0px;--blur-3: 0px}}@media(prefers-contrast:more){:root,[data-theme=light]{--hairline: oklch(.2 .02 250 / .35);--fg-2: var(--fg-1);--blur-1: 0px;--blur-2: 0px;--blur-3: 0px}[data-theme=dark]{--hairline: oklch(1 0 0 / .3);--fg-2: var(--fg-1);--blur-1: 0px;--blur-2: 0px;--blur-3: 0px}}@media(prefers-reduced-motion:reduce){:root{--dur-fast: 0ms;--dur-base: 0ms;--dur-slow: 0ms;--dur-1: 0ms;--dur-2: 0ms}*{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}.glass-surface{position:relative;border-radius:var(--r-card, 14px);backdrop-filter:blur(var(--blur-2, 28px)) saturate(var(--saturate, 180%));-webkit-backdrop-filter:blur(var(--blur-2, 28px)) saturate(var(--saturate, 180%));box-shadow:var(--specular),var(--shadow-float);border:1px solid var(--hairline);transition:background-color var(--dur-base) var(--ease-out),border-color var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out)}.glass-1{background-color:var(--glass-1);backdrop-filter:blur(var(--blur-1, 18px)) saturate(var(--saturate, 180%));-webkit-backdrop-filter:blur(var(--blur-1, 18px)) saturate(var(--saturate, 180%))}.glass-2{background-color:var(--glass-2);backdrop-filter:blur(var(--blur-2, 28px)) saturate(var(--saturate, 180%));-webkit-backdrop-filter:blur(var(--blur-2, 28px)) saturate(var(--saturate, 180%))}.glass-3{background-color:var(--glass-3);backdrop-filter:blur(var(--blur-3, 40px)) saturate(var(--saturate, 180%));-webkit-backdrop-filter:blur(var(--blur-3, 40px)) saturate(var(--saturate, 180%))}.surface-panel{background-color:var(--surface-1);color:var(--fg-0)}.surface-float{background-color:var(--surface-2);backdrop-filter:blur(var(--blur-2, 28px)) saturate(var(--saturate, 180%));-webkit-backdrop-filter:blur(var(--blur-2, 28px)) saturate(var(--saturate, 180%));border:1px solid var(--hairline);box-shadow:var(--specular),var(--shadow-float);border-radius:var(--r-card, 14px);color:var(--fg-0)}.reading-surface{background-color:var(--surface-read);border:1px solid var(--hairline);border-radius:var(--r-card, 14px);box-shadow:var(--shadow-tile);color:var(--fg-0)}.bento-tile{background-color:var(--tile);border:1px solid var(--hairline);border-radius:var(--r-tile, 18px);box-shadow:var(--specular),var(--shadow-tile);transition:transform var(--dur-fast) var(--ease-spring),background-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.bento-tile:hover{background-color:var(--tile-hover);box-shadow:var(--specular),var(--shadow-float)}.bento-tile:active{background-color:var(--tile-pressed);transform:scale(.985)}.scene-background{background-color:var(--scene);background-image:radial-gradient(circle at 10% 0%,var(--scene-tint-a) 0%,transparent 45%),radial-gradient(circle at 90% 100%,var(--scene-tint-b) 0%,transparent 45%);background-attachment:fixed;min-height:100vh}.responsive-container{container-type:inline-size}@container (max-width: 480px){.compact-hide{display:none!important}}.glass-panel{background:var(--glass-2);backdrop-filter:blur(var(--blur-2)) saturate(var(--saturate));-webkit-backdrop-filter:blur(var(--blur-2)) saturate(var(--saturate));border:1px solid var(--hairline);box-shadow:var(--specular),var(--shadow-float);border-radius:var(--r-card)}.subtle-border{border:1px solid var(--hairline)}.highlight-top{box-shadow:inset 0 1px #ffffff73}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes pulseBreathe{0%,to{opacity:.35;transform:scale(.95)}50%{opacity:1;transform:scale(1.05)}}.anim-fade-in{animation:fadeIn var(--dur-base) var(--ease-out) forwards}.anim-slide-up{animation:slideUp var(--dur-base) var(--ease-spring) forwards}.anim-scale-in{animation:scaleIn var(--dur-base) var(--ease-spring) forwards}.breathe{animation:pulseBreathe 1.8s infinite ease-in-out}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--hairline-strong);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--fg-2)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@keyframes turnFlash{0%{box-shadow:0 0 0 2px var(--accent),0 0 16px var(--accent-soft)}50%{box-shadow:0 0 0 2px var(--accent),0 0 24px var(--accent-soft)}to{box-shadow:none}}.turn-flash-highlight{animation:turnFlash 1.4s ease-out;border-radius:var(--r-card, 14px)}
