@font-face{font-family:Newsreader;font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/newsreader-400.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Newsreader;font-style:normal;font-weight:600;font-display:swap;src:url('/fonts/newsreader-600.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Newsreader;font-style:normal;font-weight:700;font-display:swap;src:url('/fonts/newsreader-700.woff2') format('woff2')}@font-face{font-family:Newsreader;font-style:italic;font-weight:400;font-display:swap;src:url('/fonts/newsreader-400italic.woff2') format('woff2')}@font-face{font-family:'Fragment Mono';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/fragment-mono-400.woff2') format('woff2')}:root{--bg-primary:#fbf9f6;--bg-secondary:#f5f3ef;--ink:#0a0a0a;--ink-muted:#3a3a3a;--accent:#0040FF;--border-col:#0a0a0a;--transition-fast:150ms ease;--transition-med:300ms cubic-bezier(0.4, 0, 0.2, 1);color-scheme:light}*,::after,::before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;background-color:var(--bg-primary);color:var(--ink)}body{background-color:var(--bg-primary);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}[data-theme=dark],body[data-theme=dark],html[data-theme=dark]{--bg-primary:#121212;--bg-secondary:#1c1c1c;--ink:#f0ede8;--ink-muted:#a8a29a;--border-col:rgba(255, 255, 255, 0.22);color-scheme:dark}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg-primary:#121212;--bg-secondary:#1c1c1c;--ink:#f0ede8;--ink-muted:#a8a29a;--border-col:rgba(255, 255, 255, 0.22);color-scheme:dark}:root:not([data-theme=light]) input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(to right,var(--accent) 0,var(--accent) var(--slider-pct,50%),#333 var(--slider-pct,50%),#333 100%);border-color:rgba(255,255,255,.22)}}[data-theme=dark] body{background-color:#121212!important;color:#f0ede8!important}[data-theme=dark] .bg-bg-primary{background-color:#121212!important}[data-theme=dark] .bg-bg-secondary{background-color:#1c1c1c!important}[data-theme=dark] .text-ink{color:#f0ede8!important}[data-theme=dark] .text-ink-muted{color:#a8a29a!important}[data-theme=dark] .border-black{border-color:rgba(255,255,255,.22)!important}[data-theme=dark] .border-black\/40{border-color:rgba(255,255,255,.25)!important}[data-theme=dark] .border-black\/30{border-color:rgba(255,255,255,.18)!important}[data-theme=dark] .border-black\/20{border-color:rgba(255,255,255,.14)!important}[data-theme=dark] .border-black\/10{border-color:rgba(255,255,255,.08)!important}[data-theme=dark] input[type=email],[data-theme=dark] input[type=text],[data-theme=dark] kbd,[data-theme=dark] select,[data-theme=dark] textarea{background-color:#1c1c1c!important;color:#f0ede8!important;border-color:rgba(255,255,255,.22)!important}[data-theme=dark] table tr{border-color:rgba(255,255,255,.15)!important}#ring-center{position:absolute;background:#050505;display:flex;align-items:center;justify-content:center;overflow:hidden;transition:none;will-change:left,top,width,height}#ring-circle,#strip-bottom,#strip-left,#strip-right,#strip-top{position:absolute;pointer-events:none;transition:none;will-change:left,top,width,height,background,filter}#camera-preview{position:absolute;will-change:width,height,left,top,border-radius,opacity;transition:none;object-fit:cover;transform:scaleX(-1);z-index:5}.mode-btn{background:var(--bg-secondary);color:var(--ink);cursor:pointer;border:none;font-family:inherit;transition:background var(--transition-fast),color var(--transition-fast)}.mode-btn:hover{background:color-mix(in srgb,var(--accent) 15%,var(--bg-secondary))}[data-theme=dark] .mode-btn{background:#1c1c1c;color:#f0ede8}.mode-btn[aria-disabled=true]{opacity:.55}input[type=range]{-webkit-appearance:none;appearance:none;background:0 0;outline:0;cursor:pointer}input[type=range]::-webkit-slider-runnable-track{height:6px;background:linear-gradient(to right,var(--accent) 0,var(--accent) var(--slider-pct,50%),#d1cdc7 var(--slider-pct,50%),#d1cdc7 100%);border-radius:3px;border:1px solid var(--border-col)}[data-theme=dark] input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(to right,var(--accent) 0,var(--accent) var(--slider-pct,50%),#333 var(--slider-pct,50%),#333 100%);border-color:rgba(255,255,255,.22)}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:var(--bg-primary);border:2px solid var(--border-col);cursor:pointer;margin-top:-5px;transition:border-color var(--transition-fast),transform var(--transition-fast)}[data-theme=dark] input[type=range]::-webkit-slider-thumb{background:#1c1c1c;border-color:#f0ede8}input[type=range]::-webkit-slider-thumb:hover{border-color:var(--accent);transform:scale(1.15)}input[type=range]:focus::-webkit-slider-thumb{border-color:var(--accent);outline:2px solid var(--accent);outline-offset:2px}input[type=range]::-moz-range-track{height:6px;background:#d1cdc7;border-radius:3px;border:1px solid var(--border-col)}[data-theme=dark] input[type=range]::-moz-range-track{background:#333;border-color:rgba(255,255,255,.22)}input[type=range]::-moz-range-progress{height:6px;background:var(--accent);border-radius:3px}input[type=range]::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--bg-primary);border:2px solid var(--border-col);cursor:pointer}[data-theme=dark] input[type=range]::-moz-range-thumb{background:#1c1c1c;border-color:#f0ede8}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}details summary::-webkit-details-marker{display:none}:fullscreen #ring-light-area{aspect-ratio:unset!important;height:100vh!important;width:100vw!important}:-webkit-full-screen #ring-light-area{aspect-ratio:unset!important;height:100vh!important;width:100vw!important}#tool-container.pseudo-fs #ring-light-area{aspect-ratio:unset!important;height:100%!important;width:100%!important}#tool-container.pseudo-fs #controls-panel,:fullscreen #controls-panel{display:none!important}:-webkit-full-screen #controls-panel{display:none!important}#tool-container.pseudo-fs #btn-hide-controls,:fullscreen #btn-hide-controls{display:none!important}:-webkit-full-screen #btn-hide-controls{display:none!important}#tool-container:fullscreen{border:none!important;border-radius:0!important}#tool-container:-webkit-full-screen{border:none!important;border-radius:0!important}#tool-container.pseudo-fs{position:fixed;inset:0;z-index:9999;min-height:0!important;border:none!important;border-radius:0!important}.preset-btn{padding:4px 10px;font-size:11px;font-family:inherit;border:1px solid var(--border-col);background:var(--bg-primary);color:var(--ink);border-radius:4px;cursor:pointer;min-height:30px;transition:border-color var(--transition-fast),color var(--transition-fast),background var(--transition-fast)}.preset-btn:hover{border-color:var(--accent);color:var(--accent)}.preset-btn.active-preset{background:var(--accent);color:#fff;border-color:var(--accent)}[data-theme=dark] .preset-btn{background:#1c1c1c;color:#f0ede8;border-color:rgba(255,255,255,.22)}[data-theme=dark] .preset-btn.active-preset{background:var(--accent);color:#fff;border-color:var(--accent)}#fs-bottom-sheet{display:none!important;position:absolute;bottom:0;left:0;right:0;z-index:100;transform:translateY(calc(100% - 40px));transition:transform var(--transition-med);background:rgba(12,12,12,.96);border-top:1px solid rgba(255,255,255,.18)}:fullscreen #fs-bottom-sheet.fs-sheet-visible{display:block!important}:-webkit-full-screen #fs-bottom-sheet.fs-sheet-visible{display:block!important}#tool-container.pseudo-fs #fs-bottom-sheet.fs-sheet-visible{display:block!important}#fs-bottom-sheet.fs-sheet-expanded{transform:translateY(0)!important}#fs-sheet-handle{width:100%;height:40px;display:flex;align-items:center;justify-content:center;gap:8px;color:rgba(255,255,255,.7);font-size:11px;font-family:inherit;cursor:pointer;background:0 0;border:none;padding:0 16px;position:relative;user-select:none;-webkit-user-select:none}#fs-sheet-handle:hover{color:#fff}#fs-sheet-handle:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.fs-handle-line{width:32px;height:3px;background:rgba(255,255,255,.4);border-radius:2px;position:absolute;left:50%;top:10px;transform:translateX(-50%)}#fs-handle-arrow{transition:transform var(--transition-med);font-size:10px}#fs-bottom-sheet.fs-sheet-expanded #fs-handle-arrow{transform:rotate(180deg)}#fs-sheet-content{padding:0 16px 16px;max-height:320px;overflow-y:auto}.fs-slider-row{display:flex;align-items:center;gap:10px;margin-bottom:8px}.fs-slider-label{color:rgba(255,255,255,.5);font-size:10px;font-family:inherit;text-transform:uppercase;letter-spacing:.08em;width:60px;flex-shrink:0}.fs-slider-val{color:var(--accent);font-size:11px;font-family:inherit;font-weight:700;width:50px;text-align:right;flex-shrink:0}.fs-slider-row input[type=range]{flex:1}.fs-slider-row input[type=range]::-webkit-slider-runnable-track{border-color:rgba(255,255,255,.15);background:linear-gradient(to right,var(--accent) 0,var(--accent) var(--slider-pct,50%),rgba(255,255,255,.1) var(--slider-pct,50%),rgba(255,255,255,.1) 100%)}.fs-slider-row input[type=range]::-webkit-slider-thumb{background:#1a1a1a;border-color:rgba(255,255,255,.3)}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--ink-muted);border-radius:3px}input[type=color]{-webkit-appearance:none;padding:2px;cursor:pointer}input[type=color]::-webkit-color-swatch-wrapper{padding:0}input[type=color]::-webkit-color-swatch{border:none;border-radius:3px}table{border-collapse:collapse}@media (prefers-reduced-motion:reduce){*,::after,::before{animation-duration:0s!important;animation-iteration-count:1!important;transition-duration:0s!important}html{scroll-behavior:auto}#fs-bottom-sheet{transition:none}}@media print{#fs-bottom-sheet,#tool-container{display:none!important}}