*,*:before,*:after{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}html,body{height:100%;overflow:hidden;overscroll-behavior:none}input,textarea,select{font-size:16px!important}:root{--safe-top: env(safe-area-inset-top);--safe-bottom: env(safe-area-inset-bottom);--safe-left: env(safe-area-inset-left);--safe-right: env(safe-area-inset-right);--digit-size: clamp(64px, 19vmin, 200px);--digit-size-compact: clamp(44px, 12vmin, 130px);--label-size: clamp(9px, 1.6vmin, 11px);--meta-size: clamp(10px, 1.8vmin, 13px);--title-size: clamp(14px, 2.2vmin, 18px)}[data-theme=modern]{--bg-base: #000000;--bg-surface: rgba(255, 255, 255, .03);--bg-elevated: rgba(10, 10, 12, .92);--bg-glass: rgba(255, 255, 255, .04);--bg-grid: rgba(0, 212, 255, .025);--bg-spotlight: rgba(0, 212, 255, .06);--text-primary: #ffffff;--text-secondary: rgba(255, 255, 255, .55);--text-tertiary: rgba(255, 255, 255, .32);--text-accent: #00d4ff;--border-default: rgba(255, 255, 255, .08);--border-hover: rgba(255, 255, 255, .18);--border-accent: rgba(0, 212, 255, .35);--accent: #00d4ff;--accent-dim: rgba(0, 212, 255, .5);--accent-glow: rgba(0, 212, 255, .25);--break-color: #f0f0f0;--long-break-color: #b78dff;--danger: #ff4757;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 18px;--radius-xl: 28px;--radius-pill: 9999px;--border-w: 1px;--transition: all .24s cubic-bezier(.32, .72, 0, 1);--transition-fast: all .16s cubic-bezier(.32, .72, 0, 1);--shadow-active: 0 0 60px rgba(0, 212, 255, .18), 0 0 120px rgba(0, 212, 255, .08);--shadow-card: 0 8px 24px rgba(0, 0, 0, .5);--font-ui: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", monospace}[data-theme=brutal]{--bg-base: #ffffff;--bg-surface: #ffffff;--bg-elevated: #ffffff;--bg-glass: #ffffff;--bg-grid: transparent;--bg-spotlight: transparent;--text-primary: #000000;--text-secondary: #4a4a4a;--text-tertiary: #666666;--text-accent: #000000;--border-default: #000000;--border-hover: #000000;--border-accent: #000000;--accent: #000000;--accent-dim: #000000;--accent-glow: transparent;--break-color: #000000;--long-break-color: #000000;--danger: #ff0000;--radius-sm: 0;--radius-md: 0;--radius-lg: 0;--radius-xl: 0;--radius-pill: 0;--border-w: 3px;--transition: none;--transition-fast: none;--shadow-active: 8px 8px 0 0 #000000;--shadow-card: 6px 6px 0 0 #000000;--font-ui: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", monospace}body{font-family:var(--font-ui);font-feature-settings:"ss01","cv11","tnum";background:var(--bg-base);color:var(--text-primary);height:100dvh;width:100vw;overflow:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;position:relative;transition:background-color .4s cubic-bezier(.32,.72,0,1),color .4s cubic-bezier(.32,.72,0,1)}[data-theme=brutal] body{transition:none}body:before{content:"";position:fixed;inset:0;background-image:linear-gradient(var(--bg-grid) 1px,transparent 1px),linear-gradient(90deg,var(--bg-grid) 1px,transparent 1px);background-size:40px 40px;pointer-events:none;z-index:1;mask-image:radial-gradient(ellipse at center,#000 35%,transparent 75%);-webkit-mask-image:radial-gradient(ellipse at center,#000 35%,transparent 75%)}body:after{content:"";position:fixed;width:60vmax;height:60vmax;background:radial-gradient(circle,var(--bg-spotlight),transparent 60%);pointer-events:none;z-index:2;top:var(--spotlight-y, 50%);left:var(--spotlight-x, 50%);transform:translate(-50%,-50%);transition:top .8s cubic-bezier(.32,.72,0,1),left .8s cubic-bezier(.32,.72,0,1)}[data-theme=brutal] body:before,[data-theme=brutal] body:after{display:none}button:focus-visible,.toggle:focus-visible,.mode-option:focus-visible,.drawer-tab:focus-visible{outline:2px solid var(--accent);outline-offset:2px}[data-theme=brutal] button:focus-visible,[data-theme=brutal] .toggle:focus-visible,[data-theme=brutal] .mode-option:focus-visible,[data-theme=brutal] .drawer-tab:focus-visible{outline:4px solid var(--text-primary);outline-offset:2px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
