:root{--bg:#0a0f18;--bg-highlight:#111c2e;--card-bg:#151f2e;--surface-elevated:#1a2637;--border:#29384c;--text-primary:#f4f0e8;--text-secondary:#a7b0bc;--accent-bg:#6ea8fe;--accent-bg-hover:#82b5ff;--accent-bg-pressed:#568fdf;--secondary-bg:#202d3e;--secondary-bg-hover:#29394d;--disabled:#657386;--shadow:0 4px 6px -1px #0000001a, 0 2px 4px -1px #0000000f;--shadow-elevated:0 24px 70px #00000052;--font-primary:Inter, Manrope, sans-serif;--font-mono:"Courier New", monospace}#app{--app-bg:radial-gradient(circle at 50% 35%, #14213a 0%, #0a0f18 48%, #070b11 100%);--card-surface:var(--card-bg);--timer-glow:none;--btn-primary-bg:var(--accent-bg);--btn-primary-text:#08111f;--btn-hover-gradient:linear-gradient(45deg, var(--accent-bg-pressed) 0%, var(--accent-bg-hover) 51%, var(--accent-bg-pressed) 100%);--btn-hover-shadow:0 6px 20px #568fdf38;--btn-secondary-bg:var(--btn-primary-bg);--btn-secondary-text:var(--btn-primary-text);--btn-secondary-border:none;--btn-secondary-hover-bg:var(--secondary-bg-hover);--btn-secondary-hover-overlay:var(--btn-hover-gradient);--btn-ghost-bg:var(--btn-primary-bg);--btn-ghost-text:var(--btn-primary-text);--btn-ghost-border:none;--btn-ghost-hover-bg:var(--secondary-bg-hover);--btn-ghost-hover-overlay:var(--btn-hover-gradient);--btn-quiet-hover-shadow:var(--btn-hover-shadow);--settings-button-hover:#233247;--theme-card-hover:#26364a;--switch-off:#4b5563}html,body{min-height:100%;margin:0;padding:0}body{background:var(--bg);overflow-x:hidden}#app{text-align:center;box-sizing:border-box;background:var(--app-bg);width:100%;min-height:100dvh;font-family:var(--font-primary);flex-direction:column;display:flex;position:relative}#center{flex-direction:column;flex-grow:1;place-content:center;place-items:center;gap:25px;padding:32px 20px 24px;display:flex}#card{background:var(--card-surface);box-shadow:var(--shadow-elevated);box-sizing:border-box;border:1px solid var(--border);border-radius:24px;width:100%;max-width:718px;margin:0 auto;padding:48px;position:relative}#timer{--timer-len:1;font-size:calc(min(96px, 19vw) * var(--timer-scale,1) * var(--timer-len));font-weight:var(--timer-weight,700);font-family:var(--timer-font,var(--font-mono));color:var(--text-primary);text-shadow:var(--timer-glow);-webkit-user-select:none;user-select:none;letter-spacing:var(--timer-tracking,-.04em);font-variant-numeric:lining-nums tabular-nums;white-space:nowrap;margin:20px 0;line-height:1.2}#app[data-timer-font=digital] #timer{position:relative}#app[data-timer-font=digital] #timer:before,.font-card-preview.is-segmented:before{content:attr(data-ghost);color:currentColor;opacity:.08;text-shadow:none;pointer-events:none;position:absolute;inset:0}.font-card-preview.is-segmented{text-align:right;position:relative}#timer[data-len="6"]{--timer-len:.86}#timer[data-len="7"]{--timer-len:.76}#timer[data-len="8"]{--timer-len:.68}#settings-content .designs-section-title{color:var(--text-secondary);letter-spacing:.1em;text-transform:uppercase;margin:16px 2px 8px;font-size:.6875rem;font-weight:600}#settings-content .designs-section-title:first-of-type{margin-top:4px}.font-card-current{color:var(--accent-bg);font-size:.6875rem;font-weight:600}.font-list{flex-direction:column;gap:8px;display:flex}.font-card{background:var(--secondary-bg);border:1px solid var(--border);width:100%;color:var(--text-primary);font-family:var(--font-primary);text-align:left;cursor:pointer;border-radius:12px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:10px 14px 10px 16px;transition:background .15s,border-color .15s;display:grid}.font-card:hover{background:var(--theme-card-hover)}.font-card.is-selected{border-color:var(--accent-bg)}.font-card.is-selected .palette-check{visibility:visible}.font-card-text{flex-direction:column;gap:2px;min-width:0;display:flex}.font-card-name{font-size:.95rem;font-weight:500}.font-card-note{color:var(--text-secondary);font-size:.75rem}.font-card-preview{color:var(--text-primary);font-variant-numeric:lining-nums tabular-nums;white-space:nowrap;font-size:2rem;line-height:1.1}@media (width<=380px){.font-card-preview{font-size:1.6rem}}#title{color:var(--text-secondary);font-size:24px;font-weight:500;font-family:var(--font-primary);margin-bottom:20px}.session-stage{border-left:1px solid color-mix(in srgb, currentColor 35%, transparent);opacity:.75;letter-spacing:.02em;font-variant-numeric:tabular-nums;margin-left:.6em;padding-left:.6em}.session-stage[hidden]{display:none}#session-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;display:flex}#session-label{border:1px solid var(--border);color:var(--text-secondary);font-family:var(--font-primary);letter-spacing:.08em;text-transform:uppercase;border-radius:999px;padding:4px 14px;font-size:.875rem;font-weight:600;display:inline-block}#controls{flex-wrap:wrap;justify-content:center;gap:15px;margin-top:15px;display:flex}#controls button{background:var(--btn-primary-bg);color:var(--btn-primary-text);cursor:pointer;min-width:120px;height:52px;font-size:1.2rem;font-weight:600;font-family:var(--font-primary);border:none;border-radius:14px;padding:16px 24px;transition:all .15s;position:relative;overflow:hidden}#controls button:before{content:"";background-image:var(--btn-hover-gradient);opacity:0;z-index:-1;background-size:200%;width:100%;height:100%;transition:opacity 1s;position:absolute;top:0;left:0}#controls button:hover:before{opacity:1;background-position:100%}#controls button:hover{opacity:.9;box-shadow:var(--btn-hover-shadow);transform:translateY(-1px)}#controls button:active{transform:scale(.96)}#controls #reset{background:var(--btn-secondary-bg);border:var(--btn-secondary-border);color:var(--btn-secondary-text)}#controls #reset:before{background-image:var(--btn-secondary-hover-overlay)}#controls #reset:hover{background:var(--btn-secondary-hover-bg);box-shadow:var(--btn-quiet-hover-shadow)}#controls #skip{background:var(--btn-ghost-bg);border:var(--btn-ghost-border);color:var(--btn-ghost-text)}#controls #skip:before{background-image:var(--btn-ghost-hover-overlay)}#controls #skip:hover{background:var(--btn-ghost-hover-bg);box-shadow:var(--btn-quiet-hover-shadow)}.skip-icon{vertical-align:middle;margin-right:6px;font-size:1.4rem}#card-nav{z-index:2;gap:8px;display:flex;position:absolute;top:18px;right:20px}.card-pill{background:var(--surface-elevated);border:1px solid var(--border);height:34px;color:var(--text-primary);font-family:var(--font-primary);white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:999px;align-items:center;gap:8px;padding:0 14px 0 12px;font-size:.8125rem;font-weight:500;transition:background .15s,transform .15s;display:inline-flex}.hub-icon{display:inline-flex}.hub-icon svg{width:16px;height:16px}.card-pill:focus-visible{outline:2px solid var(--accent-bg);outline-offset:2px}@media (width<=760px){#card-nav{gap:6px;top:14px;right:16px}.card-pill{height:32px;padding:0 12px 0 10px}#help-button,#float-button{width:32px;height:32px;top:14px;left:16px}#float-button{left:54px}}#help-button,#float-button{z-index:2;background:var(--surface-elevated);border:1px solid var(--border);width:34px;height:34px;color:var(--text-secondary);font-family:var(--font-primary);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:.95rem;font-weight:600;line-height:1;transition:background .15s,color .15s,border-color .15s,transform .15s;display:inline-flex;position:absolute;top:18px;left:20px}#help-button:hover,#float-button:hover{background:var(--settings-button-hover);border-color:color-mix(in srgb, var(--accent-bg) 45%, var(--border));color:var(--text-primary)}#help-button:active,#float-button:active{transform:scale(.95)}#help-button:focus-visible,#float-button:focus-visible{outline:2px solid var(--accent-bg);outline-offset:2px}#float-button{left:62px}#float-button svg{width:17px;height:17px}#help-dialog,#float-dialog{background:var(--surface-elevated);border:1px solid var(--border);width:min(560px,100vw - 32px);max-height:calc(100dvh - 48px);box-shadow:var(--shadow-elevated);color:var(--text-primary);font-family:var(--font-primary);overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--border) transparent;border-radius:18px;margin:auto;padding:0;overflow:auto}#help-dialog::backdrop,#float-dialog::backdrop{background:#05080e80}#help-dialog[open],#float-dialog[open]{animation:.18s ease-out help-in}@keyframes help-in{0%{opacity:0;transform:translateY(8px)scale(.98)}}.help-panel,.float-panel{text-align:left;padding:22px 24px 20px}#float-dialog{width:min(420px,100vw - 32px)}.float-panel:focus{outline:none}.float-text{color:var(--text-secondary);margin:12px 0 0;font-size:.875rem;line-height:1.5}.float-notify .save-button{margin-top:16px}#settings-content .float-setting-text{margin-bottom:12px;font-size:.8125rem;line-height:1.45}#settings-content .float-setting-note{margin-top:8px;font-size:.75rem;line-height:1.4}.help-panel:focus{outline:none}.help-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.help-header h2{margin:0;font-size:1.25rem;font-weight:600;line-height:1.3}.help-close{width:32px;height:32px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin:-4px -6px 0 0;font-size:1.1rem;transition:background .15s,color .15s;display:flex}.help-close:hover{background:var(--secondary-bg-hover);color:var(--text-primary)}.help-close:focus-visible{outline:2px solid var(--accent-bg);outline-offset:1px}.help-cycle{background:var(--secondary-bg);border:1px solid var(--border);border-radius:12px;flex-wrap:wrap;align-items:center;gap:6px;margin:16px 0 18px;padding:12px 14px;list-style:none;display:flex}.help-cycle-focus{box-sizing:border-box;background:color-mix(in srgb, var(--accent-bg) 22%, var(--surface-elevated));min-width:34px;height:26px;color:var(--text-primary);font-variant-numeric:tabular-nums;border-radius:999px;justify-content:center;align-items:center;padding:0 8px;font-size:.8125rem;font-weight:600;display:inline-flex}.help-cycle-focus:before{content:"Focus ";color:var(--text-secondary);margin-right:3px;font-weight:500}.help-cycle-break{background:color-mix(in srgb, var(--text-secondary) 55%, transparent);border-radius:50%;width:8px;height:8px}.help-cycle-long{border:1px dashed color-mix(in srgb, var(--accent-bg) 55%, var(--border));height:26px;color:var(--text-secondary);border-radius:999px;align-items:center;padding:0 10px;font-size:.8125rem;font-weight:500;display:inline-flex}.help-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.help-step{background:var(--secondary-bg);border:1px solid var(--border);border-radius:12px;align-items:flex-start;gap:12px;padding:14px;display:flex}.help-step-number{background:color-mix(in srgb, var(--accent-bg) 18%, var(--surface-elevated));width:26px;height:26px;color:var(--accent-bg);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.8125rem;font-weight:700;display:inline-flex}.help-step h3{margin:2px 0 4px;font-size:.9375rem;font-weight:600}.help-step p{color:var(--text-secondary);margin:0;font-size:.8125rem;line-height:1.45}.help-note{color:var(--text-secondary);margin:16px 0 0;font-size:.8125rem;line-height:1.45}@media (width<=560px){.help-panel{padding:18px 18px 16px}.help-steps{grid-template-columns:1fr}.help-cycle-focus:before{content:none}.help-cycle-focus{min-width:26px;padding:0}}@media (prefers-reduced-motion:reduce){#help-dialog[open]{animation:none}}@media (width<=520px){.hub-label{display:none}#hub-button{justify-content:center;width:32px;padding:0}}.card-pill:hover{background:var(--settings-button-hover)}.card-pill:active{transform:scale(.97)}.menu-icon{flex-direction:column;gap:4px;width:16px;display:flex}.menu-icon span{background:currentColor;border-radius:1px;height:2px}#settings-panel{--panel-pad:20px;box-sizing:border-box;background:var(--surface-elevated);border:1px solid var(--border);width:min(384px,100vw - 32px);box-shadow:var(--shadow-elevated);z-index:100;padding:20px var(--panel-pad);max-height:calc(100dvh - 94px);font-family:var(--font-primary);border-radius:16px;flex-direction:column;display:flex;position:absolute;top:70px;right:20px}#settings-panel.hidden{display:none!important}#settings-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:10px;display:flex}#settings-header h2{color:var(--text-primary);margin:0;font-size:1.3rem;font-weight:500}#close-settings{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;font-size:1.5rem;transition:background .15s;display:flex}#close-settings:hover{background:var(--secondary-bg-hover)}#settings-content h3{color:var(--text-primary);margin-top:0;margin-bottom:10px;font-weight:500}#settings-content p{color:var(--text-secondary);margin:0}.settings-submenu{text-align:left}#settings-content{min-height:0;margin-right:calc(-1 * var(--panel-pad));padding-right:var(--panel-pad);overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--border) transparent;overflow-y:auto}.back-button{background:var(--secondary-bg);border:1px solid var(--border);color:var(--text-secondary);font-family:var(--font-primary);cursor:pointer;border-radius:8px;align-items:center;gap:6px;margin-bottom:12px;padding:6px 12px 6px 10px;font-size:.875rem;font-weight:500;line-height:1;transition:background .15s,color .15s;display:inline-flex}.back-button:hover{background:var(--secondary-bg-hover);color:var(--text-primary)}.back-icon{font-size:1rem;line-height:1}.submenu-heading-card{background:var(--card-bg);border:1px solid var(--border);border-radius:12px;margin-bottom:10px;padding:12px 16px}#settings-content .submenu-heading{font-family:var(--font-primary);color:var(--text-primary);margin:0;font-size:21px;font-weight:600;line-height:1.2}.theme-list{flex-direction:column;gap:8px;display:flex}.theme-option,.category-card{background:var(--secondary-bg);border:1px solid var(--border);border-radius:12px;justify-content:space-between;align-items:center;padding:14px 16px;transition:background .15s;display:flex}.theme-option:hover,.category-card:hover{background:var(--theme-card-hover)}.theme-option-label{color:var(--text-primary);font-size:1rem}.nav-icon{background:color-mix(in srgb, var(--accent-bg) 12%, var(--surface-elevated));width:36px;height:36px;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent-bg) 18%, var(--border));color:var(--accent-bg);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,color .15s,transform .15s;display:inline-flex}.nav-icon svg{width:20px;height:20px}.category-card:hover .nav-icon{background:color-mix(in srgb, var(--accent-bg) 20%, var(--surface-elevated));color:color-mix(in srgb, var(--accent-bg) 82%, var(--text-primary));transform:translateY(-1px)}@media (prefers-reduced-motion:reduce){.category-card:hover .nav-icon{transform:none}}.category-card{width:100%;font-family:var(--font-primary);text-align:left;cursor:pointer;gap:14px;padding-block:12px}.category-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.category-title{color:var(--text-primary);font-size:1rem;font-weight:500;line-height:1.25}.category-description{color:var(--text-secondary);font-size:.8125rem;line-height:1.3}.category-chevron{color:var(--text-secondary);flex-shrink:0;margin-left:4px;font-size:1.4rem;line-height:1}.palette-card{background:var(--secondary-bg);border:1px solid var(--border);width:100%;color:var(--text-primary);font-family:var(--font-primary);text-align:left;cursor:pointer;border-radius:12px;align-items:center;gap:12px;padding:12px 14px 12px 16px;transition:background .15s,border-color .15s;display:flex}.palette-card:hover{background:var(--theme-card-hover)}.palette-card.is-selected{border-color:var(--accent-bg)}.palette-name{flex:1;font-size:.95rem;font-weight:500}.palette-swatches{gap:4px;display:flex}.palette-swatch{border-radius:50%;width:12px;height:12px;box-shadow:inset 0 0 0 1px #80808059}.palette-check{background:var(--accent-bg);width:18px;height:18px;color:var(--btn-primary-text);visibility:hidden;border-radius:50%;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:inline-flex}.palette-card.is-selected .palette-check{visibility:visible}#settings-content .submenu-subtitle{margin-top:4px;font-size:.8125rem;line-height:1.3}.duration-section{background:var(--secondary-bg);border:1px solid var(--border);border-radius:12px;margin-bottom:10px;padding:14px 16px}.duration-title{color:var(--text-primary);margin:0;font-size:1rem;font-weight:600;line-height:1.25}#settings-content .duration-hint{margin-top:2px;font-size:.8125rem;line-height:1.3}.duration-presets{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.duration-chip{background:var(--surface-elevated);border:1px solid var(--border);color:var(--text-primary);font-family:var(--font-primary);cursor:pointer;border-radius:999px;padding:6px 10px;font-size:.8125rem;line-height:1.2;transition:background .15s,border-color .15s}.duration-chip:hover{background:var(--secondary-bg-hover)}.duration-chip.is-selected{background:color-mix(in srgb, var(--accent-bg) 22%, var(--surface-elevated));border-color:var(--accent-bg);font-weight:600}.duration-custom{color:var(--text-secondary);align-items:center;gap:8px;margin-top:12px;font-size:.875rem;display:flex}.duration-input{background:var(--surface-elevated);border:1px solid var(--border);width:56px;color:var(--text-primary);font-family:var(--font-primary);text-align:center;border-radius:8px;padding:6px 8px;font-size:.875rem}.duration-input:focus{border-color:var(--accent-bg);outline:none}.duration-input[aria-invalid=true]{border-color:var(--accent-bg);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent-bg) 30%, transparent)}#settings-content .duration-message{color:var(--text-secondary);margin-bottom:10px;font-size:.8125rem;line-height:1.35}#settings-content .duration-message.is-error{background:var(--secondary-bg);border:1px solid var(--accent-bg);color:var(--text-primary);border-radius:8px;padding:8px 12px}.save-button{background:var(--btn-primary-bg);width:100%;color:var(--btn-primary-text);font-family:var(--font-primary);cursor:pointer;border:none;border-radius:12px;padding:12px 16px;font-size:1rem;font-weight:600;transition:box-shadow .15s,transform .15s;display:block}.save-button:hover{background:var(--btn-hover-gradient);box-shadow:var(--btn-hover-shadow);background-position:100%;background-size:200%}.save-button:active{transform:scale(.98)}#settings-content .empty-message{color:var(--text-secondary);padding:14px 16px;font-size:.875rem}.dev-testing{border:1px dashed var(--border);text-align:left;border-radius:12px;margin-top:16px;padding:10px 12px 12px}.dev-testing-title{color:var(--text-secondary);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:6px;margin:0;font-size:.75rem;font-weight:600;display:flex}#settings-content .dev-testing-hint{margin-top:2px;font-size:.75rem;line-height:1.3}.dev-speed-options{gap:6px;margin-top:8px;display:flex}.dev-speed-option{border:1px solid var(--border);min-height:32px;color:var(--text-primary);font-family:var(--font-mono);cursor:pointer;background:0 0;border-radius:8px;flex:1;padding:4px 0;font-size:.8125rem;transition:background .15s,border-color .15s}.dev-speed-option:hover{background:var(--secondary-bg-hover)}.dev-speed-option.is-selected{background:color-mix(in srgb, var(--accent-bg) 22%, transparent);border-color:var(--accent-bg);font-weight:700}#settings-panel.is-wide{--panel-pad:24px;width:min(480px,max(400px,44vw),100vw - 32px)}#settings-panel.is-progress #settings-content{flex-direction:column;padding-right:0;display:flex;overflow:hidden}#settings-panel.is-progress .progress-header,#settings-panel.is-progress .progress-body{padding-right:var(--panel-pad)}@media (width<=520px){#settings-panel,#settings-panel.is-wide{width:calc(100vw - 32px);right:16px}}#progress-submenu{flex-direction:column;min-height:0;display:flex}.progress-header{flex-shrink:0}.progress-body{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--border) transparent;min-height:0;padding-bottom:4px;overflow-y:auto}.progress-section{margin-top:20px}.progress-section:first-child{margin-top:6px}#settings-content .progress-section-title{color:var(--text-secondary);letter-spacing:.08em;text-transform:uppercase;margin:0 0 8px;font-size:.75rem;font-weight:600}.progress-stats{grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.progress-stat{border-left:1px solid var(--border);min-width:0;padding:0 12px}.progress-stat:first-child{border-left:none;padding-left:0}.progress-stat-label{color:var(--text-secondary);font-size:.75rem;line-height:1.3}.progress-stat-value{color:var(--text-primary);font-variant-numeric:tabular-nums;white-space:nowrap;margin:2px 0 0;font-size:1.0625rem;font-weight:600;line-height:1.25}.progress-stats-today{background:var(--secondary-bg);border:1px solid var(--border);border-radius:12px;padding:14px 16px}.progress-stats-today .progress-stat-value{letter-spacing:-.01em;font-size:1.5rem}.progress-activity-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}#settings-content .progress-activity-header .progress-section-title{margin:0}.progress-range{background:var(--secondary-bg);border:1px solid var(--border);border-radius:999px;padding:2px;display:inline-flex}.progress-range-option{min-height:28px;color:var(--text-secondary);font-family:var(--font-primary);white-space:nowrap;cursor:pointer;background:0 0;border:none;border-radius:999px;padding:4px 12px;font-size:.75rem;font-weight:600;transition:background .15s,color .15s}.progress-range-option:hover{color:var(--text-primary)}.progress-range-option[aria-pressed=true]{background:var(--accent-bg);color:var(--btn-primary-text)}#settings-content .progress-readout{justify-content:space-between;align-items:baseline;gap:12px;min-height:1.4em;margin-bottom:6px;font-size:.8125rem;line-height:1.4;display:flex}.progress-readout-value{color:var(--text-primary);font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.progress-chart-box{background:var(--secondary-bg);border:1px solid var(--border);border-radius:12px;padding:10px 10px 8px}.progress-chart{gap:6px;margin:0;padding:0;list-style:none;display:grid}.progress-day{min-width:0;display:flex}.progress-day-button{min-width:0;font-family:var(--font-primary);cursor:pointer;background:0 0;border:none;border-radius:8px;flex-direction:column;flex:1;align-items:center;gap:6px;margin:0;padding:2px 0 4px;transition:background .15s;display:flex}.progress-day-button:hover,.progress-day.is-selected .progress-day-button{background:color-mix(in srgb, var(--text-primary) 7%, transparent)}.progress-day-button:focus-visible{outline:2px solid var(--accent-bg);outline-offset:1px}.progress-chart-box.is-compact .progress-chart{gap:2px}.progress-chart-box.is-compact .progress-day-button{border-radius:3px;padding:2px 0}.progress-chart-box.is-compact .progress-bar{border-radius:2px 2px 1px 1px}.progress-chart-box.is-compact .progress-day-button:hover,.progress-chart-box.is-compact .progress-day.is-selected .progress-day-button{background:0 0}.progress-chart-box.is-compact .progress-day.is-selected .progress-bar{outline:1px solid var(--text-primary);outline-offset:1px}.progress-chart-box.is-compact .progress-segment+.progress-segment:not(.is-selected){box-shadow:none}.progress-axis{height:1.3em;margin-top:6px;font-size:.6875rem;position:relative}.progress-axis-label{color:var(--text-secondary);white-space:nowrap;position:absolute;top:0;transform:translate(-50%)}.progress-axis-label.is-start{transform:none;left:0!important}.progress-axis-label.is-end{color:var(--text-primary);font-weight:700;right:0;transform:none;left:auto!important}@media (width<=360px){.progress-axis-label.is-minor{display:none}}.progress-day-value{min-height:2.3em;color:var(--text-secondary);text-align:center;font-variant-numeric:tabular-nums;justify-content:center;align-items:flex-end;font-size:.6875rem;line-height:1.15;display:flex}.progress-bar-track{align-items:flex-end;width:100%;max-width:28px;height:84px;display:flex}.progress-bar{border-radius:6px 6px 3px 3px;flex-direction:column-reverse;width:100%;min-height:3px;display:flex;overflow:hidden}.progress-day.is-empty .progress-bar{background:var(--border)}.progress-day.is-today.is-empty .progress-bar{background:color-mix(in srgb, var(--accent-bg) 45%, var(--border))}.progress-segment{background:var(--task-color);flex:0 0 0;min-height:1px;transition:filter .15s}.progress-segment.is-neutral{background:color-mix(in srgb, var(--text-secondary) 50%, var(--secondary-bg))}.progress-segment+.progress-segment{box-shadow:inset 0 -1px 0 color-mix(in srgb, var(--secondary-bg) 80%, transparent)}.progress-day-button:hover .progress-segment:hover{filter:brightness(1.12)}.progress-chart-box .progress-segment.is-selected{box-shadow:inset 0 0 0 1.5px var(--text-primary)}.progress-day.is-today:not(.is-empty) .progress-bar-track{box-shadow:0 2px 0 -.5px var(--accent-bg)}.progress-readout-task{align-items:center;gap:6px;min-width:0;display:inline-flex}.progress-day-label{color:var(--text-secondary);font-size:.75rem;line-height:1.2}.progress-day.is-today .progress-day-value,.progress-day.is-today .progress-day-label{color:var(--text-primary);font-weight:700}.progress-streak{border-top:1px solid var(--border);border-bottom:1px solid var(--border);justify-content:space-between;align-items:baseline;gap:12px;padding:12px 0;display:flex}#settings-content .progress-streak .progress-section-title{margin:0}#settings-content .progress-streak-value{color:var(--text-primary);font-variant-numeric:tabular-nums;font-size:1.0625rem;font-weight:600}.progress-sessions{margin:0;padding:0;list-style:none}.progress-session{border-top:1px solid var(--border);flex-direction:column;gap:2px;padding:10px 0;display:flex}.progress-session:first-child{border-top:none;padding-top:2px}.progress-session-when{color:var(--text-secondary);font-size:.75rem;line-height:1.3}.progress-session-focused{color:var(--text-primary);font-variant-numeric:tabular-nums;font-size:.9375rem;font-weight:600;line-height:1.3}.progress-session-detail{color:var(--text-secondary);font-variant-numeric:tabular-nums;font-size:.8125rem;line-height:1.3}.progress-overtime{color:var(--text-primary)}.progress-empty{background:var(--secondary-bg);border:1px solid var(--border);text-align:center;border-radius:12px;flex-direction:column;align-items:center;gap:6px;padding:28px 16px 24px;display:flex}.progress-empty-icon{border:2px solid var(--border);border-radius:50%;width:36px;height:36px;margin-bottom:6px;position:relative}.progress-empty-icon:after{content:"";background:var(--accent-bg);border-radius:1px;width:2px;height:11px;margin-left:-1px;position:absolute;top:6px;left:50%}#settings-content .progress-empty-title{color:var(--text-primary);font-size:1rem;font-weight:600}#settings-content .progress-empty-text{max-width:260px;font-size:.8125rem;line-height:1.4}@media (width<=380px){.progress-stats-today .progress-stat-value{font-size:1.25rem}.progress-stat{padding:0 8px}.progress-stats-today{padding:12px}}.progress-breakdown{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.progress-breakdown-row{grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;display:grid}.progress-breakdown-name,.progress-session-task{min-width:0;color:var(--text-primary);align-items:center;gap:8px;font-size:.875rem;display:flex}.progress-breakdown-name>span:last-child,.progress-session-task>span:last-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.progress-breakdown-value{color:var(--text-primary);font-variant-numeric:tabular-nums;font-size:.875rem;font-weight:600}.progress-breakdown-track{background:color-mix(in srgb, var(--border) 60%, transparent);border-radius:2px;grid-column:1/-1;height:4px}.progress-breakdown-bar{background:var(--task-color,color-mix(in srgb, var(--accent-bg) 75%, var(--secondary-bg)));border-radius:2px;height:100%;display:block}.progress-breakdown-row.is-unassigned .progress-breakdown-name{color:var(--text-secondary);font-style:italic}.progress-breakdown-row.is-unassigned .progress-breakdown-bar{background:color-mix(in srgb, var(--text-secondary) 45%, transparent)}.progress-breakdown-more{color:var(--text-secondary);font-size:.75rem}#settings-content .progress-breakdown-empty{font-size:.8125rem}.progress-session-task{font-size:.9375rem;font-weight:600;line-height:1.3}.progress-session-task+.progress-session-focused{color:var(--text-secondary);font-size:.8125rem;font-weight:500}.task-selector{border:1px solid var(--border);min-width:0;max-width:min(300px,100%);height:30px;color:var(--text-primary);font-family:var(--font-primary);cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:6px;padding:0 10px 0 12px;font-size:.8125rem;font-weight:500;transition:background .15s,border-color .15s;display:inline-flex}.task-selector:hover{background:color-mix(in srgb, var(--text-primary) 6%, transparent)}.task-selector:focus-visible{outline:2px solid var(--accent-bg);outline-offset:2px}.task-selector.is-empty{color:var(--text-secondary);border-style:dashed}.task-selector-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.task-dot{background:var(--task-color);width:8px;height:8px;box-shadow:0 0 0 1px color-mix(in srgb, var(--text-primary) 18%, transparent);border-radius:50%;flex-shrink:0}.task-selector-chevron{color:var(--text-secondary);flex-shrink:0;font-size:.625rem}.task-selector-lock,.task-notice svg{width:10px;height:12px;color:var(--text-secondary);flex-shrink:0;display:inline-flex}.task-selector-lock svg{width:100%;height:100%}#settings-content .task-notice{background:var(--secondary-bg);border:1px solid var(--border);border-radius:12px;align-items:flex-start;gap:10px;padding:12px 14px;font-size:.8125rem;line-height:1.4;display:flex}.task-notice svg{margin-top:3px}.task-notice strong{color:var(--text-primary);overflow-wrap:anywhere;font-weight:600}.task-options{flex-direction:column;gap:6px;margin:0 0 12px;padding:0;list-style:none;display:flex}.task-option{background:var(--secondary-bg);border:1px solid var(--border);width:100%;min-height:46px;color:var(--text-primary);font-family:var(--font-primary);text-align:left;cursor:pointer;border-radius:12px;align-items:center;gap:12px;padding:8px 14px 8px 16px;transition:background .15s,border-color .15s;display:flex}.task-option:hover{background:var(--theme-card-hover)}.task-option.is-selected{border-color:var(--accent-bg)}.task-option.is-selected .palette-check{visibility:visible}.task-option-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.9375rem;font-weight:500;overflow:hidden}.task-actions{flex-wrap:wrap;gap:8px;display:flex}.task-secondary-button,.task-row-button{border:1px solid var(--border);min-height:36px;color:var(--text-primary);font-family:var(--font-primary);white-space:nowrap;cursor:pointer;background:0 0;border-radius:10px;padding:6px 14px;font-size:.8125rem;font-weight:500;transition:background .15s}.task-secondary-button:hover,.task-row-button:hover{background:var(--secondary-bg-hover)}.task-row-button{min-height:34px;color:var(--text-secondary);flex-shrink:0;padding:4px 12px}.task-link-button{color:var(--text-secondary);font-family:var(--font-primary);cursor:pointer;background:0 0;border:none;margin-top:16px;padding:6px 0;font-size:.8125rem;display:block}.task-link-button:hover{color:var(--text-primary)}.task-empty{background:var(--secondary-bg);border:1px solid var(--border);text-align:center;border-radius:12px;flex-direction:column;align-items:center;gap:6px;padding:24px 16px 18px;display:flex}#settings-content .task-empty-title{color:var(--text-primary);font-size:1rem;font-weight:600}#settings-content .task-empty-text{max-width:280px;margin-bottom:8px;font-size:.8125rem;line-height:1.4}.task-section{margin-top:18px}.task-section-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px;display:flex}.task-section-title{color:var(--text-secondary);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.75rem;font-weight:600}.task-rows{margin:0;padding:0;list-style:none}.task-row{border-top:1px solid var(--border);align-items:center;gap:12px;padding:10px 0;display:flex}.task-row:first-child{border-top:none}.task-row-name{min-width:0;color:var(--text-primary);overflow-wrap:anywhere;flex:1;font-size:.9375rem;line-height:1.3}#settings-content .task-section-empty{padding:4px 0;font-size:.8125rem;line-height:1.4}.task-archived{border-top:1px solid var(--border);margin-top:18px;padding-top:10px}.task-archived summary{color:var(--text-secondary);cursor:pointer;padding:6px 0;font-size:.8125rem}.dev-testing-icon,.task-archived-icon{color:var(--accent-bg);flex-shrink:0;display:inline-flex}.dev-testing-icon svg{width:14px;height:14px}.task-archived-icon{vertical-align:-3px;margin:0 6px 0 4px}.task-archived-icon svg{width:16px;height:16px}.task-archived .task-row-name{color:var(--text-secondary)}.task-field-label{color:var(--text-primary);margin-bottom:8px;font-size:.9375rem;font-weight:600;display:block}.task-input{box-sizing:border-box;background:var(--surface-elevated);border:1px solid var(--border);width:100%;color:var(--text-primary);font-family:var(--font-primary);border-radius:8px;padding:10px 12px;font-size:.9375rem}.task-input::placeholder{color:var(--text-secondary);opacity:.8}.task-input:focus{border-color:var(--accent-bg);outline:none}.task-input[aria-invalid=true]{border-color:var(--accent-bg);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent-bg) 30%, transparent)}.task-swatches{grid-template-columns:repeat(auto-fill,minmax(32px,1fr));gap:8px;display:grid}.task-swatch{background:var(--task-color);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;padding:0;transition:transform .15s,box-shadow .15s;display:flex;box-shadow:inset 0 0 0 1px #0000001f}.task-swatch:hover{transform:scale(1.08)}.task-swatch:focus-visible{outline:2px solid var(--accent-bg);outline-offset:3px}.task-swatch.is-selected{box-shadow:0 0 0 2px var(--secondary-bg), 0 0 0 4px var(--text-primary)}.task-swatch-check{visibility:hidden;color:#fff;text-shadow:0 1px 2px #00000073;font-size:.875rem;font-weight:700}.task-swatch.is-selected .task-swatch-check{visibility:visible}#settings-content .task-error{border-left:2px solid var(--accent-bg);color:var(--text-primary);margin-top:6px;padding-left:8px;font-size:.8125rem;line-height:1.35}.task-quiet-button{border:1px solid var(--border);width:100%;color:var(--text-secondary);font-family:var(--font-primary);cursor:pointer;background:0 0;border-radius:12px;margin-top:8px;padding:10px 16px;font-size:.875rem;transition:background .15s,color .15s;display:block}.task-quiet-button:hover{background:var(--secondary-bg-hover);color:var(--text-primary)}.cycle-reset{border-top:1px solid var(--border);margin-top:18px;padding-top:14px}#settings-content .cycle-reset-text{font-size:.8125rem}.cycle-reset-text strong{color:var(--text-primary);font-variant-numeric:tabular-nums}.task-quiet-button.is-confirm{border-color:var(--accent-bg);color:var(--text-primary);font-weight:600}.goal-setting-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.goal-setting-header .switch{flex-shrink:0;margin-top:2px}.goal-setting.is-off .goal-setting-body{opacity:.55}.progress-goals{background:var(--secondary-bg);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:12px;margin:0;padding:14px 16px;list-style:none;display:flex}.progress-goal{border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:6px 12px;margin:-4px -6px;padding:4px 6px;display:grid}.progress-goal-name{min-width:0;color:var(--text-primary);align-items:baseline;gap:6px;font-size:.875rem;display:inline-flex}.progress-goal-value{color:var(--text-primary);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.875rem;font-weight:600}.progress-goal-track{background:color-mix(in srgb, var(--border) 70%, transparent);border-radius:3px;grid-column:1/-1;height:6px;overflow:hidden}.progress-goal-bar{background:color-mix(in srgb, var(--accent-bg) 70%, var(--secondary-bg));border-radius:3px;height:100%;transition:width .4s;display:block}.progress-goal.is-done .progress-goal-bar{background:var(--accent-bg)}.progress-goal-check{color:var(--accent-bg);font-weight:700}.progress-goal.is-celebrating{animation:2.4s ease-out goal-row-glow}@keyframes goal-row-glow{0%{background:color-mix(in srgb, var(--accent-bg) 0%, transparent)}25%{background:color-mix(in srgb, var(--accent-bg) 16%, transparent)}to{background:color-mix(in srgb, var(--accent-bg) 0%, transparent)}}.progress-goal-prompt{border:1px dashed var(--border);min-height:32px;color:var(--text-secondary);font-family:var(--font-primary);cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:6px;margin-top:4px;padding:4px 12px;font-size:.8125rem;transition:color .15s,background .15s;display:inline-flex}.progress-goal-prompt:hover{background:var(--secondary-bg-hover);color:var(--text-primary)}#goal-toast{z-index:90;background:var(--surface-elevated);border:1px solid color-mix(in srgb, var(--accent-bg) 55%, var(--border));max-width:calc(100vw - 32px);box-shadow:var(--shadow-elevated);color:var(--text-primary);font-family:var(--font-primary);white-space:nowrap;text-overflow:ellipsis;pointer-events:none;opacity:0;border-radius:999px;margin:0;padding:10px 18px;font-size:.875rem;font-weight:500;transition:opacity .3s,transform .3s;position:fixed;bottom:24px;left:50%;overflow:hidden;transform:translate(-50%,8px)}#goal-toast.is-visible{opacity:1;transform:translate(-50%)}#card.goal-glow{animation:1.8s ease-out goal-glow}@keyframes goal-glow{0%{outline:2px solid color-mix(in srgb, var(--accent-bg) 70%, transparent);outline-offset:0}to{outline:2px solid color-mix(in srgb, var(--accent-bg) 0%, transparent);outline-offset:14px}}@media (prefers-reduced-motion:reduce){#card.goal-glow,.progress-goal.is-celebrating{animation:none}#goal-toast{transition:none}}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}#break-activity{margin-top:20px}#break-activity[hidden]{display:none}.break-activity-button{--game-c1:#6ea8fe;--game-c2:#5cc8e0;--game-c3:#9b7bea;--game-c4:#e57fb3;--game-c5:#f0a35e;--game-iridescent:linear-gradient(90deg, var(--game-c1), var(--game-c2), var(--game-c3), var(--game-c4), var(--game-c5), var(--game-c1));isolation:isolate;background:var(--game-iridescent) border-box;min-height:46px;color:var(--text-primary);font-family:var(--font-primary);letter-spacing:.01em;cursor:pointer;background-size:200% 100%;border:2px solid #0000;border-radius:999px;align-items:center;gap:10px;padding:0 26px 0 22px;font-size:.975rem;font-weight:600;transition:transform .18s,filter .18s;animation:8s linear infinite game-glow-drift;display:inline-flex;position:relative}.break-activity-button:before{content:"";z-index:-2;border-radius:inherit;background:var(--game-iridescent);filter:blur(10px);opacity:.22;pointer-events:none;background-size:200% 100%;transition:opacity .18s;animation:8s linear infinite game-glow-drift;position:absolute;inset:-2px}.break-activity-button:after{content:"";z-index:-1;border-radius:inherit;background:var(--surface-elevated);pointer-events:none;position:absolute;inset:0}.break-activity-icon{width:22px;height:15px;color:var(--game-c3);flex-shrink:0}.break-activity-button:hover{filter:saturate(1.15)brightness(1.06);transform:translateY(-1px)scale(1.02)}.break-activity-button:hover:before{opacity:.42}.break-activity-button:active{transition-duration:60ms;transform:scale(.97)}.break-activity-button:focus-visible{outline:2px solid var(--accent-bg);outline-offset:4px}@keyframes game-glow-drift{0%{background-position:0 0}to{background-position:200% 0}}.theme-fall .break-activity-button{--game-c1:#f0a35e;--game-c2:#e8c15a;--game-c3:#e57fb3;--game-c4:#9b7bea;--game-c5:#5cc8e0}.theme-fall .break-activity-icon{color:var(--game-c2)}.theme-halloween .break-activity-button{--game-c1:#9b7bea;--game-c2:#f0913a;--game-c3:#e57fb3;--game-c4:#6f5bd0;--game-c5:#5cc8e0}.theme-halloween .break-activity-icon{color:var(--game-c2)}.theme-library .break-activity-button{--game-c1:#d9b36a;--game-c2:#9b7bea;--game-c3:#e57fb3;--game-c4:#5cc8e0;--game-c5:#e89a5a}.theme-library .break-activity-icon{color:var(--game-c1)}.theme-fireplace .break-activity-button{--game-c1:#f0a35e;--game-c2:#e8c15a;--game-c3:#e57fb3;--game-c4:#9b7bea;--game-c5:#e5794a}.theme-fireplace .break-activity-icon{color:var(--game-c1)}.theme-cafe .break-activity-button{--game-c1:#e8c88a;--game-c2:#7fc4b0;--game-c3:#e57fb3;--game-c4:#9b7bea;--game-c5:#5cc8e0}.theme-cafe .break-activity-icon{color:var(--game-c1)}@media (prefers-reduced-motion:reduce){.break-activity-button,.break-activity-button:before{animation:none}.break-activity-button,.break-activity-button:hover,.break-activity-button:active{transform:none}}#card.is-break-game #session-row,#card.is-break-game #timer,#card.is-break-game #controls,#card.is-break-game #break-activity{display:none}.break-game{text-align:left;flex-direction:column;gap:12px;margin-top:14px;display:flex}.break-game-status{color:var(--text-secondary);font-family:var(--font-primary);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px;padding:0 2px;font-size:.875rem;display:flex}.break-game-status[hidden]{display:none}.break-game-clock{color:var(--text-primary);font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:1.25rem;font-weight:700}.break-game-stage{border:1px solid var(--border);background:var(--secondary-bg);aspect-ratio:16/9;border-radius:14px;max-height:380px;position:relative;overflow:hidden}.break-game-canvas{cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;width:100%;height:100%;display:block}.break-game-canvas:focus{outline:none}.break-game-score{color:#fff;font-family:var(--font-mono);font-variant-numeric:tabular-nums;pointer-events:none;background:#00000052;border-radius:999px;padding:2px 10px;font-size:1.25rem;font-weight:700;position:absolute;top:10px;right:14px}.break-game-score.is-pulse{animation:.3s ease-out break-game-pulse}@keyframes break-game-pulse{40%{transform:scale(1.18)}}.break-game-hint{color:#fff;font-family:var(--font-primary);white-space:nowrap;pointer-events:none;background:#00000073;border-radius:999px;margin:0;padding:6px 14px;font-size:.875rem;position:absolute;bottom:44px;left:50%;transform:translate(-50%)}.break-game-hint[hidden],.break-game-card[hidden]{display:none}.break-game-card{box-sizing:border-box;background:var(--surface-elevated);border:1px solid var(--border);width:min(280px,100% - 32px);box-shadow:var(--shadow-elevated);text-align:center;font-family:var(--font-primary);border-radius:14px;flex-direction:column;align-items:center;gap:4px;padding:18px 20px 16px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.break-game-card-title{color:var(--text-primary);margin:0;font-size:1.125rem;font-weight:600}.break-game-card-text{color:var(--text-secondary);font-variant-numeric:tabular-nums;margin:0;font-size:.875rem}.break-game-new-best{color:var(--accent-bg);margin:2px 0 0;font-size:.8125rem;font-weight:600}.break-game-actions{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:10px;display:flex}.break-game-primary,.break-game-secondary{min-height:38px;font-family:var(--font-primary);cursor:pointer;border-radius:10px;padding:8px 16px;font-size:.875rem;font-weight:600}.break-game-primary{background:var(--btn-primary-bg);color:var(--btn-primary-text);border:none}.break-game-primary:hover{box-shadow:var(--btn-hover-shadow)}.break-game-secondary{border:1px solid var(--border);color:var(--text-primary);background:0 0;font-weight:500}.break-game-secondary:hover{background:var(--secondary-bg-hover)}.break-game-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:0 2px;display:flex}.break-game-best{color:var(--text-secondary);font-family:var(--font-primary);font-variant-numeric:tabular-nums;font-size:.875rem}.break-game-footer-actions{gap:8px;display:flex}.break-game-footer-actions [hidden]{display:none}#settings-content .break-game-note{margin-top:12px;font-size:.8125rem;line-height:1.45}@media (width<=600px){.break-game-stage{aspect-ratio:1}}@media (prefers-reduced-motion:reduce){.break-game-score.is-pulse{animation:none}}@media (width<=520px){.task-selector{height:34px}}.switch{width:50px;height:24px;display:inline-block;position:relative}.switch input{opacity:0;width:0;height:0}.slider{cursor:pointer;background-color:var(--switch-off);border-radius:24px;transition:all .4s;position:absolute;inset:0}.slider:before{content:"";background-color:#fff;border-radius:50%;width:16px;height:16px;transition:all .4s;position:absolute;bottom:4px;left:4px}input:checked+.slider{background-color:var(--accent-bg)}input:checked+.slider:before{transform:translate(26px)}#main-settings,.settings-submenu{display:block}#main-settings.hidden,.settings-submenu.hidden{display:none!important}#app.theme-fall{--bg:#241a15;--bg-highlight:#2e211a;--card-bg:#2a1e17;--surface-elevated:#2c1f18;--border:#5a4130;--text-primary:#f3e3ca;--text-secondary:#cdb89a;--accent-bg:#c9763e;--accent-bg-hover:#dda83f;--accent-bg-pressed:#a85a2c;--secondary-bg:#33251c;--secondary-bg-hover:#3d2c21;--disabled:#7a6656;--shadow-elevated:0 24px 70px #0e08058c;--app-bg:linear-gradient(180deg, #6e8193 0%, #a9afae 50%, #5e5e42 60%, #241a15 100%);--card-surface:radial-gradient(ellipse 75% 60% at 14% 0%, #edbb611c, transparent 70%), repeating-linear-gradient(97deg, #ffe6be02 0 2px, transparent 2px 9px, #00000003 9px 10px, transparent 10px 17px), linear-gradient(165deg, #402a1ceb 0%, #2c1e16ed 55%, #201712f2 100%);--timer-glow:0 0 22px #edbb6133, 0 1px 0 #140a0599;--btn-primary-bg:linear-gradient(180deg, #f0c677 0%, #dda83f 52%, #c48632 100%);--btn-primary-text:#2a1810;--btn-hover-gradient:linear-gradient(45deg, #d49a3a 0%, #edbb61 46%, #f6d48e 50%, #edbb61 54%, #d49a3a 100%);--btn-hover-shadow:0 6px 18px #140a056b, 0 0 0 1px #edbb614d, 0 0 22px #edbb6129;--btn-secondary-bg:linear-gradient(180deg, #4a3224 0%, #3a2418 100%);--btn-secondary-text:var(--text-primary);--btn-secondary-border:1px solid #dda83f47;--btn-secondary-hover-bg:#51372a;--btn-secondary-hover-overlay:linear-gradient(45deg, #3a2418 0%, #5a3e2c 50%, #3a2418 100%);--btn-ghost-bg:transparent;--btn-ghost-text:var(--text-primary);--btn-ghost-border:1px solid #dda83f4d;--btn-ghost-hover-bg:#edbb6112;--btn-ghost-hover-overlay:linear-gradient(45deg, #edbb610a 0%, #edbb611f 50%, #edbb610a 100%);--btn-quiet-hover-shadow:0 6px 16px #140a0566, 0 0 0 1px #edbb6133;--settings-button-hover:#3a2a20;--theme-card-hover:#3d2c21;--switch-off:#5a4636;--fa-label:#edbb61;--fa-label-border:#dda83f80;--fa-label-bg:#dda83f1a;overflow:clip}#app.theme-fall[data-session=break]{--timer-glow:0 0 22px #c4be8229, 0 1px 0 #140a0599;--btn-primary-bg:linear-gradient(180deg, #e4cb86 0%, #c9a84f 52%, #a88b3c 100%);--fa-label:#c9c08a;--fa-label-border:#a8a0608c;--fa-label-bg:#6f76512e}body:has(#app.theme-fall){background:#241a15}#app.theme-fall #center{position:relative}.theme-fall #card{border-color:#dda83f42;transition:box-shadow 4s;position:relative;box-shadow:inset 1px 1px #f3e3ca14,inset 0 0 60px #140c0859,14px 26px 60px #0e080580,5px 10px 20px #0e080552,-10px -10px 50px #edbb610f}#app.theme-fall[data-session=break] #card{box-shadow:inset 1px 1px #dce2dc0f,inset 0 0 60px #140c0859,14px 26px 60px #0e080580,5px 10px 20px #0e080552,-10px -10px 50px #a7b3bb0d}.theme-fall #card:before{content:"";pointer-events:none;border:1px dashed #dda83f29;border-radius:16px;position:absolute;inset:10px}.theme-fall #card:after{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(90deg,#edbb6166,#edbb610d 45%,#0000 75%) top/100% 1px no-repeat,linear-gradient(#edbb614d,#edbb610a 45%,#0000 75%) 0/1px 100% no-repeat;position:absolute;inset:0}@media (width>=900px){.theme-fall #card{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}}.theme-fall #title{color:var(--text-secondary);letter-spacing:.04em;position:relative}.theme-fall #title:after{content:"";opacity:.75;pointer-events:none;background:#dda83f;width:11px;height:11px;position:absolute;bottom:-14px;left:50%;transform:translate(-50%)rotate(-12deg);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 1L13.5 5.5L16.5 4.2L15.8 8.8L21 7.6L19.6 11L23 12.6L18.8 15.4L19.6 18.2L13.2 16.6L12.6 20H11.4L10.8 16.6L4.4 18.2L5.2 15.4L1 12.6L4.4 11L3 7.6L8.2 8.8L7.5 4.2L10.5 5.5Z'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 1L13.5 5.5L16.5 4.2L15.8 8.8L21 7.6L19.6 11L23 12.6L18.8 15.4L19.6 18.2L13.2 16.6L12.6 20H11.4L10.8 16.6L4.4 18.2L5.2 15.4L1 12.6L4.4 11L3 7.6L8.2 8.8L7.5 4.2L10.5 5.5Z'/%3E%3C/svg%3E") 50%/contain no-repeat}.theme-fall #title:before{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#dda83f8c 38%,#0000 44% 56%,#dda83f8c 62%,#0000);width:120px;height:1px;position:absolute;bottom:-9px;left:50%;transform:translate(-50%)}.theme-fall #session-label{border-color:var(--fa-label-border);background:var(--fa-label-bg);color:var(--fa-label);transition:color 1.2s,border-color 1.2s,background 1.2s}.theme-fall #timer{transition:color 1s,text-shadow 3s}#app.theme-fall[data-overtime=true] #timer{color:#f8d9a0;text-shadow:0 0 26px #e2733247,0 0 2px #edbb6166,0 1px #140a0599}.theme-fall #controls #main-control{box-shadow:inset 0 1px #fff4d680,0 2px 6px #140a0559}.theme-fall #controls #main-control:hover{box-shadow:inset 0 1px 0 #fff4d680, var(--btn-hover-shadow)}.theme-fall #controls #reset,.theme-fall #controls #skip{box-shadow:inset 0 1px #f3e3ca12,0 2px 6px #140a054d}.theme-fall #controls #reset:hover,.theme-fall #controls #skip:hover{border-color:#edbb6173}.theme-fall #controls #main-control:active,.theme-fall #controls #reset:active,.theme-fall #controls #skip:active{filter:brightness(.94);transform:translateY(1px)scale(.975);box-shadow:inset 0 2px 4px #140a0559,0 1px 2px #140a0566}#app.theme-fall #settings-button,#app.theme-fall #hub-button{z-index:2;color:var(--text-primary);background:linear-gradient(#3a2a20,#2a1e17);border-color:#dda83f61;transition:background .15s,transform .15s,box-shadow .3s,border-color .3s;box-shadow:inset 0 1px #f3e3ca12,0 4px 14px #0e080561}#app.theme-fall #settings-button:hover,#app.theme-fall #hub-button:hover{background:linear-gradient(#45322a,#2f2219);border-color:#edbb618c;box-shadow:inset 0 1px #f3e3ca1a,0 0 0 1px #edbb6124,0 0 18px #edbb6124,0 6px 16px #0e080566}.theme-fall #settings-panel{box-shadow:var(--shadow-elevated), inset 0 1px 0 #f3e3ca0f;background:linear-gradient(#2e2119,#241a15);border-color:#dda83f52}.fa-scene{--fa-horizon:56%;pointer-events:none;z-index:0;position:absolute;inset:0;overflow:hidden}.fa-scene>*{position:absolute}.fa-scene svg,.fa-scene img{-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.fa-scene .fa-sprite{width:0;height:0;position:absolute;overflow:hidden}.fa-sky{inset:0 0 calc(100% - var(--fa-horizon) - 4%) 0;background:radial-gradient(55% 45% at 14% 8%,#edbb614d,#0000 70%),radial-gradient(90% 45% at 50% 100%,#f3e3ca4d,#0000 70%),linear-gradient(#546677 0%,#6c7f91 30%,#8496a3 58%,#a6adac 82%,#bfb6a2 100%)}.fa-sunlit{inset:0}.fa-sun{background:radial-gradient(circle,#ffe6aa80 0%,#edbb6142 16%,#edbb6114 40%,#0000 64%);width:70vmax;height:70vmax;animation:11s ease-in-out infinite alternate fa-breathe;position:absolute;top:calc(8% - 35vmax);left:calc(14% - 35vmax)}.fa-clouds{inset:0 0 calc(100% - var(--fa-horizon)) 0}.fa-cloud{position:absolute}.fa-cloud-high{background:radial-gradient(48% 46% at 32% 52%,#e8e4da4d,#0000 72%),radial-gradient(36% 38% at 64% 58%,#e8e4da33,#0000 72%);width:72%;height:26%;animation:260s ease-in-out -80s infinite alternate fa-cloud;top:2%;left:-12%}.fa-cloud-mid{background:radial-gradient(44% 44% at 40%,#e2ded23d,#0000 72%),radial-gradient(30% 36% at 72% 46%,#e2ded22e,#0000 72%);width:62%;height:22%;animation:180s ease-in-out -40s infinite alternate-reverse fa-cloud;top:16%;left:40%}.fa-cloud-low{background:radial-gradient(50% 40% at 50% 55%,#d6d0c033,#0000 75%);width:112%;height:22%;animation:340s ease-in-out -120s infinite alternate fa-cloud;top:46%;left:-6%}.fa-birds{inset:0}.fa-hills{left:0;right:0;bottom:calc(100% - var(--fa-horizon) - 1%);height:17%}.fa-treeline{left:0;right:0;bottom:calc(100% - var(--fa-horizon) - 1.5%);filter:blur(.6px);height:9%}.fa-haze{left:0;right:0;top:calc(var(--fa-horizon) - 16%);background:linear-gradient(#0000,#c6c2b44d 55%,#aaa08a29 76%,#0000);height:24%;transition:opacity 6s}.fa-ground{left:0;right:0;top:var(--fa-horizon);background:linear-gradient(#8a876a 0%,#777352 7%,#5d5c40 22%,#46452e 42%,#33301f 66%,#241a15 100%);bottom:0}.fa-field{position:absolute;inset:0}.fa-hedge{left:0;right:0;top:calc(var(--fa-horizon) - 2.2%);opacity:.7;height:6%}.fa-litter{aspect-ratio:600/110;opacity:.9}.fa-litter-oak{width:min(52vw,900px);bottom:-1vh;left:-6vw}.fa-litter-maple{aspect-ratio:500/100;width:min(34vw,600px);bottom:14vh;right:-4vw}.fa-path{width:34%;height:calc(100% - var(--fa-horizon) + 0.5%);opacity:.5;bottom:0;left:4%}.fa-path-leaves{opacity:.55;width:12%;bottom:16%;left:12%}.fa-midtree,.fa-evergreen{bottom:calc(100% - var(--fa-horizon) - 4%);aspect-ratio:200/260;transform-origin:50% 100%;height:19vh}.fa-midtree-a{height:17vh;left:21%}.fa-midtree-b{height:15vh;right:26%;bottom:calc(100% - var(--fa-horizon) - 2.5%)}.fa-midtree-c{height:21vh;left:10%;bottom:calc(100% - var(--fa-horizon) - 5%)}.fa-evergreen{aspect-ratio:100/270;height:25vh;right:16%;bottom:calc(100% - var(--fa-horizon) - 5.5%)}.fa-bench-group{left:11.5%;top:calc(var(--fa-horizon) + 7%);aspect-ratio:120/64;opacity:.92;width:clamp(100px,8.5vw,160px)}.fa-bench-group>*{position:absolute}.fa-bench{inset:0}.fa-bench-leaves{aspect-ratio:200/40;width:130%;bottom:-16%;left:-14%}.fa-bush{aspect-ratio:160/90;width:72%;bottom:-18%;left:-42%}.fa-shadows{inset:var(--fa-horizon) -4% 0 -4%;animation:9s ease-in-out infinite alternate fa-breathe}.fa-tree>.fa-sway,.fa-tree-body,.fa-trunk,.fa-bough-art,.fa-fgbranch-body{position:absolute;inset:0}.fa-bough{position:absolute}.fa-tree-oak{aspect-ratio:600/1000;transform-origin:28.3% 100%;height:104vh;bottom:2vh;left:-9vh}.fa-tree-oak>.fa-sway{transform-origin:28.3% 100%}.fa-tree-maple{aspect-ratio:500/900;transform-origin:66% 100%;height:68vh;bottom:19vh;right:-6vh}.fa-tree-maple>.fa-sway{transform-origin:66% 100%}.fa-squirrel{aspect-ratio:40/30;width:8%;position:absolute;bottom:.3%;left:25.5%}.fa-squirrel .fa-squirrel-tail{transform-box:fill-box;transform-origin:90% 90%}.fa-sway{animation:fa-micro var(--sway-dur) ease-in-out var(--sway-delay) infinite alternate;position:absolute;inset:0}.fa-light{inset:0}.fa-light>*{position:absolute;inset:0}.fa-rays{background:conic-gradient(from 98deg at 14% 6%,#0000 0deg,#ffdea012 4deg,#0000 8deg 15deg,#ffdea00d 17deg,#0000 21deg 27deg,#ffdea00f 30deg,#0000 34deg 44deg,#ffdea00a 46deg,#0000 50deg 360deg);animation:17s ease-in-out infinite alternate fa-rays;-webkit-mask-image:radial-gradient(circle at 14% 6%,#000 0%,#0000008c 40%,#0000 76%);mask-image:radial-gradient(circle at 14% 6%,#000 0%,#0000008c 40%,#0000 76%)}.fa-clearing{background:radial-gradient(34% 36%,#edbb611a,#0000 72%)}.fa-dapples{animation:7s ease-in-out infinite alternate fa-breathe}.fa-dapples-b{animation-duration:9.5s;animation-delay:-3s}.fa-mote{width:var(--mote-size);height:var(--mote-size);opacity:0;animation:fa-mote-drift var(--mote-dur) ease-in-out var(--mote-delay) infinite alternate, fa-mote-fade var(--mote-fade) ease-in-out var(--mote-fade-delay) infinite alternate;background:#ffe6b0;border-radius:50%;position:absolute;inset:auto;box-shadow:0 0 4px #ffdc9699}.fa-pollen{-webkit-mask-image:radial-gradient(50% 70% at 22% 40%,#000 30%,#0000 80%);mask-image:radial-gradient(50% 70% at 22% 40%,#000 30%,#0000 80%)}.fa-glint{opacity:0;background:radial-gradient(26% 30% at 16% 22%,#ffd68c33,#0000 70%),radial-gradient(15% 22% at 87% 32%,#ffc88226,#0000 70%),radial-gradient(30% 14% at 30% 82%,#ffd68c1a,#0000 70%)}.fa-props>*{position:absolute}.fa-props-left{--fa-prop:1;width:300px;height:120px;transform:scale(var(--fa-prop));transform-origin:0 100%;bottom:1vh;left:25vh}.fa-pile-main{aspect-ratio:260/70;width:260px;bottom:0;left:0}.fa-pumpkin{filter:saturate(.82)brightness(.9)}.fa-pumpkin-a{width:84px;bottom:16px;left:72px}.fa-pumpkin-b{width:56px;bottom:12px;left:144px}.fa-pile-front{aspect-ratio:180/46;width:180px;bottom:-8px;left:28px}.fa-acorn{aspect-ratio:12/16;width:10px}.fa-acorn-a{bottom:14px;left:206px}.fa-acorn-b{width:9px;bottom:9px;left:220px;transform:rotate(72deg)}.fa-acorn-c{width:9px;bottom:7px;left:48px;transform:rotate(-34deg)}.fa-acorn-drops{width:120px;height:20px;bottom:6px;left:150px}.fa-acorn-drop{position:absolute;bottom:0}.fa-props-right{--fa-prop:1;width:440px;height:170px;transform:scale(var(--fa-prop));transform-origin:100% 100%;bottom:0;right:0}.fa-blanket{aspect-ratio:420/160;width:440px;bottom:0;right:0}.fa-scarf{aspect-ratio:130/56;width:150px;bottom:4px;left:70px;transform:rotate(-4deg)}.fa-notebook{aspect-ratio:100/46;width:116px;bottom:60px;left:210px}.fa-mug{aspect-ratio:56/50;width:52px;bottom:66px;left:340px}.fa-blanket-leaf{width:16px;height:16px;transform:rotate(var(--rot)) scaleY(.6);opacity:.85}.fa-blanket-leaf-0{bottom:30px;left:150px}.fa-blanket-leaf-1{width:13px;height:13px;bottom:40px;left:300px}.fa-blanket-leaf-2{width:12px;height:12px;bottom:102px;left:396px}.fa-steam{width:40px;height:64px;position:absolute;bottom:88%;left:4px}.fa-wisp{opacity:0;width:10px;height:46px;animation:fa-steam var(--steam-dur) ease-out var(--steam-delay) infinite;position:absolute;bottom:0}.fa-scatter-a{aspect-ratio:140/36;width:140px;bottom:3%;left:29%}.fa-scatter-b{aspect-ratio:140/36;width:140px;bottom:2%;right:31%}.fa-scatter-c{aspect-ratio:120/30;width:120px;bottom:.5%;left:46%}.fa-grass{aspect-ratio:60/40;transform-origin:50% 100%;bottom:-2px}.fa-grass .fa-sway{transform-origin:50% 100%}.fa-grass-a{width:92px;left:.5%}.fa-grass-b{width:70px;left:21%}.fa-grass-c{width:58px;bottom:-6px;left:34%}.fa-grass-d{width:78px;right:1%}.fa-grass-e{width:62px;right:37%}.fa-grass-f{bottom:auto;left:13.5%;top:calc(var(--fa-horizon) + 13.5%);opacity:.6;width:38px}.fa-grass-g{width:64px;left:2.5%}.fa-grass-h{width:60px;right:23%}.fa-loose{width:18px;height:18px}.fa-loose-art{width:100%;height:100%;transform:rotate(var(--rot)) scaleY(.55)}.fa-loose-a{bottom:2.5%;left:16%}.fa-loose-b{width:15px;height:15px;bottom:1.5%;left:25%}.fa-loose-c{width:16px;height:16px;bottom:3%;left:39%}.fa-loose-d{bottom:1.5%;right:9%}.fa-loose-e{width:15px;height:15px;bottom:1%;right:28%}.fa-leaves,.fa-seeds,.fa-air{inset:0}.fa-leaf{width:var(--size);height:var(--size);opacity:var(--o);position:absolute;top:0;transform:translateY(-12vh)}.fa-leaf-wind,.fa-leaf-sway,.fa-leaf-spin{width:100%;height:100%}.fa-leaf-sway{animation:fa-sway var(--sway-dur) ease-in-out var(--sway-delay) infinite alternate}.fa-leaf--glide .fa-leaf-spin{animation:fa-tilt var(--sway-dur) ease-in-out var(--sway-delay) infinite alternate}.fa-leaf--tumble .fa-leaf-spin{animation:fa-tumble var(--spin-dur) linear infinite var(--spin-dir)}.fa-leaf--straight .fa-leaf-spin{animation:fa-turn calc(var(--spin-dur) * 3) linear infinite var(--spin-dir)}.fa-leaf--flutter .fa-leaf-spin{animation:fa-flutter calc(var(--spin-dur) * .6) linear infinite var(--spin-dir)}.fa-seed{width:7px;height:7px;animation:fa-seed var(--seed-dur) linear var(--seed-delay) infinite;background:radial-gradient(circle,#faf4e6b3 0 16%,#faf4e633 40%,#0000 70%);border-radius:50%;position:absolute;left:0}.fa-seed:nth-child(2n){animation-direction:reverse}.fa-temp-leaf{position:absolute;top:0;left:0}.fa-temp-spin{width:100%;height:100%}.fa-camera-leaf{filter:blur(2.4px)brightness(.78);opacity:.88}.fa-flock{color:#3e4650;width:1px;height:1px;position:absolute}.fa-bird{width:var(--bird-size);aspect-ratio:2;animation:fa-bob var(--bob) ease-in-out infinite alternate;position:absolute}.fa-bird svg{transform-origin:50% 60%;animation:fa-flap var(--flap) ease-in-out var(--flap-delay) infinite alternate}.fa-near-bird{aspect-ratio:40/24;color:#2a2622;width:26px;position:absolute}.fa-near-bird.is-leftward svg{transform:scaleX(-1)}.fa-near-bird .fa-wing{transform-box:fill-box;transform-origin:30% 100%;animation:.3s ease-in-out infinite alternate fa-wing}.fa-fgbranch{aspect-ratio:500/320;transform-origin:0 12%;filter:blur(1.4px)brightness(.7)saturate(.9);width:min(34vw,500px);top:-3vh;left:-1.5vw}.fa-fgbranch>.fa-sway{transform-origin:0 12%}.fa-sunlit-overlay,.fa-sunlit-overlay>*,.fa-cool,.fa-cloudshade,.fa-evening,.fa-vignette,.fa-dim{position:absolute;inset:0}.fa-warm{background:radial-gradient(70% 60% at 12% 6%,#edbb6129,#0000 70%),linear-gradient(#edbb610a,#0000 50%);transition:opacity 6s}.fa-cool{opacity:0;background:linear-gradient(#8195a529,#8195a50d 50%,#3c50601a);transition:opacity 6s}#app.theme-fall[data-session=break] .fa-warm{opacity:.5}#app.theme-fall[data-session=break] .fa-cool{opacity:1}#app.theme-fall[data-session=break] .fa-haze{opacity:.6}.fa-cloudshade{opacity:0;background:linear-gradient(#34425033,#28303821)}.fa-evening{opacity:0;background:linear-gradient(#2e365233 0%,#0000 40%),radial-gradient(80% 50% at 10% 58%,#e273321a,#0000 70%);animation:2700s linear forwards fa-evening}.fa-vignette{background:radial-gradient(78% 72% at 50% 48%,#0000 52%,#140c0852 84%,#140c088c 100%)}.fa-dim{opacity:0;background:#120b0757;transition:opacity .4s}#app.theme-fall:has(#settings-panel:not(.hidden)) .fa-dim{opacity:1}.fa-front{pointer-events:none;z-index:1;transition:opacity .4s;position:absolute;inset:0;overflow:hidden}#app.theme-fall:has(#settings-panel:not(.hidden)) .fa-front{opacity:.2}.theme-fall .fa-card-leaf{z-index:3;pointer-events:none;filter:drop-shadow(2px 3px 2px #0e080573);width:24px;height:24px;margin-left:-12px;position:absolute;top:-14px}.fa-card-leaf-art,.fa-card-leaf svg,.fa-front svg{width:100%;height:100%;display:block}@keyframes fa-breathe{0%{opacity:.82}to{opacity:1}}@keyframes fa-rays{0%{opacity:.6}to{opacity:1}}@keyframes fa-cloud{0%{transform:translate(-5%)}to{transform:translate(7%)}}@keyframes fa-micro{0%{transform:rotate(calc(var(--sway-a) * -1))}to{transform:rotate(var(--sway-a))}}@keyframes fa-sway{0%{transform:translateX(calc(var(--sway) * -1))}to{transform:translateX(var(--sway))}}@keyframes fa-tilt{0%{transform:rotate(calc(var(--rest) - var(--tilt))) rotateX(25deg)}to{transform:rotate(calc(var(--rest) + var(--tilt))) rotateX(-15deg)}}@keyframes fa-tumble{0%{transform:rotate3d(1,.55,.25,0)}to{transform:rotate3d(1,.55,.25,360deg)}}@keyframes fa-turn{0%{transform:rotate(var(--rest))}to{transform:rotate(calc(var(--rest) + 360deg))}}@keyframes fa-flutter{0%{transform:rotate(var(--rest)) rotateY(0deg)}to{transform:rotate(calc(var(--rest) + 40deg)) rotateY(360deg)}}@keyframes fa-seed{0%{opacity:0;transform:translate(-4vw)}8%{opacity:1}30%{transform:translate(28vw, calc(var(--seed-dy) * .3 - 14px))}60%{transform:translate(62vw, calc(var(--seed-dy) * .6 + 10px))}92%{opacity:1}to{transform:translate(104vw, var(--seed-dy));opacity:0}}@keyframes fa-mote-drift{0%{transform:translate(0)}to{transform:translate(var(--mote-dx), var(--mote-dy))}}@keyframes fa-mote-fade{0%,25%{opacity:0}to{opacity:var(--mote-o)}}@keyframes fa-steam{0%{opacity:0;transform:translateY(8px)scaleY(.6)}25%{opacity:.34}70%{opacity:.14}to{transform:translate(var(--steam-sway), -26px) scaleY(1.2);opacity:0}}@keyframes fa-bob{0%{transform:translateY(-2px)}to{transform:translateY(2px)}}@keyframes fa-flap{0%{transform:scaleY(1)}to{transform:scaleY(-.35)}}@keyframes fa-wing{0%{transform:scaleY(1)}to{transform:scaleY(-.6)}}@keyframes fa-evening{to{opacity:1}}@media (width<=1399px){.fa-midtree-b{display:none}.fa-props-right{--fa-prop:.85}}@media (width<=1199px){.fa-bench-group,.fa-path,.fa-path-leaves,.fa-grass-f,.fa-midtree-a,.fa-scatter-c,.fa-loose-c{display:none}.fa-tree-maple{height:58vh;right:-12vh}.fa-props-left{--fa-prop:.8}.fa-props-right{--fa-prop:.72}}@media (height<=760px){.fa-props-left{--fa-prop:.72}.fa-props-right{--fa-prop:.62}}@media (width<=899px){.fa-scene{--fa-horizon:60%}.fa-tree,.fa-litter,.fa-midtree,.fa-evergreen,.fa-shadows,.fa-dapples-b,.fa-scatter-b,.fa-grass-b,.fa-grass-c,.fa-grass-e,.fa-grass-h,.fa-loose-e,.fa-blanket,.fa-scarf,.fa-blanket-leaf,.fa-notebook,.fa-cloud-low,.fa-leaf[data-optional],.fa-mote:nth-child(n+7){display:none}.fa-fgbranch{filter:blur(1px)brightness(.72)saturate(.9);width:64vw;top:-2vh;left:-8vw}.fa-props-left{--fa-prop:.62;bottom:0;left:-10px}.fa-props-right{--fa-prop:.9;width:120px;height:110px;bottom:6px;right:14px}.fa-mug{bottom:8px;left:40px}.fa-scatter-a{left:38%}}@media (height<=500px) and (orientation:landscape){.fa-fgbranch,.fa-props-right,.fa-scatter-a,.fa-loose{display:none}.fa-props-left{--fa-prop:.45}}@media (prefers-reduced-motion:reduce){.fa-scene *,.fa-scene :before,.fa-scene :after,.fa-front *{animation:none!important}.fa-leaves,.fa-seeds,.fa-air,.fa-pollen,.fa-wisp,.fa-front{display:none}}#app.theme-halloween{--bg:#08070b;--bg-highlight:#131d33;--card-bg:#141b2e;--surface-elevated:#151a2b;--border:#2e2a44;--text-primary:#f3e9d4;--text-secondary:#c9c0b0;--accent-bg:#e0782a;--accent-bg-hover:#f4a641;--accent-bg-pressed:#c85e14;--secondary-bg:#1c1830;--secondary-bg-hover:#26203c;--disabled:#6b6478;--shadow-elevated:0 24px 70px #0009;--app-bg:linear-gradient(180deg, #0b0f1c 0%, #0d1220 45%, #08070b 100%);--card-surface:radial-gradient(ellipse 60% 50% at 10% 0%, #71839b21, transparent 70%), radial-gradient(ellipse 60% 55% at 94% 106%, #f07a241a, transparent 70%), linear-gradient(160deg, #1a162aeb 0%, #100f1ded 55%, #180f1cf2 100%);--btn-primary-bg:linear-gradient(180deg, #f6b860 0%, #f08a2e 55%, #d96a22 100%);--btn-primary-text:#1a0e05;--btn-hover-gradient:linear-gradient(45deg, #d96a22 0%, #f4a641 44%, #ffd28a 50%, #f4a641 56%, #d96a22 100%);--btn-hover-shadow:0 0 0 1px #f4a6414d, 0 8px 24px #d96a2240;--btn-secondary-bg:linear-gradient(180deg, #2a1e3a 0%, #1c1830 100%);--btn-secondary-text:var(--text-primary);--btn-secondary-border:1px solid #f4a64133;--btn-secondary-hover-bg:#2e2242;--btn-secondary-hover-overlay:linear-gradient(45deg, #1c1830 0%, #2e2242 45%, #3a2c52 50%, #2e2242 55%, #1c1830 100%);--btn-ghost-bg:transparent;--btn-ghost-text:var(--text-primary);--btn-ghost-border:1px solid #a9b2c138;--btn-ghost-hover-bg:#5a3d7329;--btn-ghost-hover-overlay:linear-gradient(45deg, #5a3d7324 0%, #f4a64114 50%, #5a3d7324 100%);--btn-quiet-hover-shadow:0 0 0 1px #f4a6412e, 0 6px 20px #24162f99;--settings-button-hover:#221c36;--theme-card-hover:#26203c;--switch-off:#3a3552;--hw-glow:#f07a2433;--hw-label:#ffd28a;--hw-label-border:#f07a246b;--hw-label-bg:#f07a2414;--timer-glow:0 0 22px #f4a64133, 0 0 2px #ffd28a4d;overflow:clip}#app.theme-halloween[data-session=break]{--hw-glow:#6e56a038;--hw-label:#d6ccec;--hw-label-border:#9678cd80;--hw-label-bg:#5a3d7333;--timer-glow:0 0 22px #a096dc38, 0 0 2px #dce6ff4d}body:has(#app.theme-halloween){background:#08070b}#app.theme-halloween #center{position:relative}.theme-halloween #card{isolation:isolate;border-color:#f4a64126;position:relative;box-shadow:inset 0 1px #c8d6f00d,inset 0 0 60px #0006,0 30px 70px #0009,0 10px 24px #0006}@media (width>=900px){.theme-halloween #card{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}}.theme-halloween #card:before{content:"";z-index:-1;border-radius:inherit;box-shadow:16px 22px 70px -12px var(--hw-glow), 0 0 0 1px #f07a240d;pointer-events:none;transition:box-shadow 2s;animation:4.6s linear infinite hw-candle;position:absolute;inset:0}.theme-halloween #card:after{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(270deg,#f4a6416b,#f4a6410f 50%,#0000 75%) bottom/100% 1px no-repeat,linear-gradient(#0000 25%,#f4a6410d 50%,#f4a64152) 100%/1px 100% no-repeat;position:absolute;inset:0}.hw-card-moonrim{border-radius:inherit;pointer-events:none;background:linear-gradient(90deg,#becee866,#becee80d 50%,#0000 75%) top/100% 1px no-repeat,linear-gradient(#becee84d,#becee80a 50%,#0000 75%) 0/1px 100% no-repeat;position:absolute;inset:0}#app.theme-halloween[data-session=break] .hw-card-moonrim{filter:brightness(1.25)}.theme-halloween #title{font-variant:small-caps;letter-spacing:.06em;color:#cfc6d8;text-shadow:0 0 18px #a9b2c12e;font-family:Georgia,Palatino Linotype,Book Antiqua,serif}.theme-halloween #session-label{border-color:var(--hw-label-border);background:var(--hw-label-bg);color:var(--hw-label);transition:color .8s,border-color .8s,background .8s;box-shadow:0 0 14px #f07a2414}.theme-halloween #timer{color:#f3e9d4;transition:color 1s,text-shadow 2s}#app.theme-halloween[data-overtime=true] #timer{color:#ffe2b0;text-shadow:0 0 26px #f4a64152,0 0 2px #ffd28a73}.theme-halloween #controls #main-control{box-shadow:inset 0 1px #ffecc873,0 3px 10px #00000073}.theme-halloween #controls #main-control:hover{box-shadow:inset 0 1px 0 #ffecc873, var(--btn-hover-shadow)}.theme-halloween #controls #reset,.theme-halloween #controls #skip{box-shadow:inset 0 1px #c8d6f00d,0 3px 10px #0006}.theme-halloween #controls #main-control:active,.theme-halloween #controls #reset:active,.theme-halloween #controls #skip:active{filter:brightness(.93);transform:translateY(1px)scale(.975);box-shadow:inset 0 2px 4px #00000073}#app.theme-halloween #settings-button,#app.theme-halloween #hub-button{color:var(--text-primary);background:linear-gradient(#221a34,#15121f);border-color:#f4a64147;transition:background .15s,transform .15s,box-shadow .3s,border-color .3s;box-shadow:inset 0 1px #c8d6f00d,0 4px 14px #00000073}#app.theme-halloween #settings-button:hover,#app.theme-halloween #hub-button:hover{background:linear-gradient(#2a2140,#1a1626);border-color:#f4a64173;box-shadow:0 0 0 1px #f4a6411a,0 0 18px #f4a6411f,0 6px 16px #00000073}.theme-halloween #settings-panel{box-shadow:var(--shadow-elevated), inset 0 1px 0 #c8d6f00d, 0 0 40px #24162f99;background:linear-gradient(#1a1a2e,#121222);border-color:#f4a6413d}.hw-card-pumpkin,.hw-cobweb{pointer-events:none;position:absolute}.hw-card-pumpkin{filter:drop-shadow(0 3px 3px #0009);width:52px;bottom:-14px;right:-12px;transform:rotate(-6deg)}.hw-card-pumpkin img,.hw-cobweb svg{width:100%;display:block}.hw-cobweb{color:#c8d6f026;width:74px;top:0;left:0}.hw-spider{position:absolute;top:30px;left:41px}.hw-spider-thread{transform-origin:0 0;background:#c8d6f073;width:1px;height:1px;position:absolute;top:0;left:0;transform:scaleY(0)}.hw-spider-body{background:#050508;border-radius:50%;width:5px;height:4px;position:absolute;top:-1px;left:-2px}.hw-spider-body:before,.hw-spider-body:after{content:"";background:#050508;width:9px;height:1px;position:absolute;top:2px;left:-2px;transform:rotate(18deg)}.hw-spider-body:after{transform:rotate(-18deg)}.hw-scene{pointer-events:none;z-index:0;position:absolute;inset:0;overflow:hidden}.hw-scene>*{position:absolute}.hw-scene svg,.hw-scene img{-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.hw-sky{background:radial-gradient(60% 50% at 82% 34%,#5a3d7329,#0000 70%),radial-gradient(80% 40% at 50% 78%,#24162f80,#0000 70%),linear-gradient(#0a0e1a 0%,#0d1220 30%,#141b2e 58%,#1a1a30 72%,#0b0b14 100%);inset:0}.hw-stars,.hw-twinkles{inset:0}.hw-twinkle{opacity:.25;width:2px;height:2px;animation:hw-twinkle var(--tw-dur) ease-in-out var(--tw-delay) infinite;background:#f3e9d4;border-radius:50%;position:absolute;box-shadow:0 0 4px #f3e9d4b3}.hw-moonglow{background:radial-gradient(circle at 16% 13%,#71839b33,#71839b0f 30%,#0000 55%);inset:0}.hw-moonwrap{aspect-ratio:1;width:clamp(84px,8.5vw,132px);top:8%;left:12%}.hw-halo-dim{position:absolute;inset:-160%}.hw-halo{background:radial-gradient(circle,#cddaf226 0%,#a0b0ce14 16%,#71839b0a 30%,#0000 46%);animation:47s ease-in-out infinite alternate hw-breathe;position:absolute;inset:0}.hw-moon{opacity:.88;background:radial-gradient(circle at 66% 62%,#96928c52 0 7%,#dcd6c833 8.5%,#0000 9.5%),radial-gradient(circle at 34% 70%,#96928c47 0 4.5%,#dcd6c82e 5.5%,#0000 6.5%),radial-gradient(circle at 46% 30%,#96928c3d 0 5%,#dcd6c829 6%,#0000 7%),radial-gradient(circle at 72% 36%,#96928c33 0 3%,#0000 4%),radial-gradient(30% 22% at 38% 44%,#a09c984d,#0000 70%),radial-gradient(26% 30% at 62% 52%,#96949642,#0000 70%),radial-gradient(22% 14% at 52% 74%,#a09c9838,#0000 70%),radial-gradient(circle at 38% 36%,#fbf4e4 0%,#ede4d2 40%,#d3ccc0 70%,#a9a6a6 100%);border-radius:50%;position:absolute;inset:0;box-shadow:0 0 24px 4px #cddaf224,inset -10px -12px 22px #3c466266,inset 4px 4px 10px #ffffff1f}.hw-moon-cloud{opacity:0;background:radial-gradient(34% 40% at 36% 52%,#121020f2,#0000 72%),radial-gradient(30% 34% at 62% 44%,#161224e6,#0000 72%),radial-gradient(46% 30% at 50% 62%,#1c182cb3,#0000 75%);width:340%;height:130%;margin:-65% 0 0 -170%;position:absolute;top:50%;left:50%}.hw-clouds{inset:0 0 50%}.hw-cloud{border-radius:50%;position:absolute}.hw-cloud-a{background:radial-gradient(50% 50%,#1e1a308c,#0000 70%);width:46vw;height:12vh;animation:280s ease-in-out -60s infinite alternate hw-cloud;top:14%;left:34%}.hw-cloud-b{background:radial-gradient(50% 50%,#24162f73,#0000 70%);width:40vw;height:10vh;animation:220s ease-in-out -30s infinite alternate-reverse hw-cloud;top:34%;left:56%}.hw-cloud-c{background:radial-gradient(50% 50%,#1c1e3266,#0000 70%);width:34vw;height:8vh;animation:340s ease-in-out -150s infinite alternate hw-cloud;top:4%;left:62%}.hw-skyevents{inset:0}.hw-hills{height:22vh;bottom:16vh;left:0;right:0}.hw-walker-lane{width:56%;height:15vh;bottom:18vh;left:0}.hw-walker{opacity:0;filter:blur(6px);background:radial-gradient(50% 50% at 50% 65%,#030307d9,#0000 72%);width:12%;height:100%;position:absolute;bottom:0}.hw-distant-trees{height:11vh;bottom:18vh;left:0;right:0}.hw-estate{aspect-ratio:900/400;width:min(52vw,1000px);bottom:19vh;right:-2vw;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 18%);mask-image:linear-gradient(90deg,#0000 0%,#000 18%)}.hw-estate>*{position:absolute;inset:0}.hw-window{background:#71839b12;position:absolute;overflow:hidden}.hw-window-light{opacity:0;background:radial-gradient(circle at 50% 60%,#ffd28a,#f4a641 60%,#c8641e);position:absolute;inset:0;box-shadow:0 0 6px 1px #f4a64180}.hw-window.is-lit .hw-window-light{opacity:.55}.hw-window.is-lit:nth-child(7) .hw-window-light{opacity:.3}.hw-window-shadow{opacity:0;background:#06050aeb;border-radius:40% 40% 0 0;width:44%;position:absolute;top:20%;bottom:0;left:28%}.hw-smoke{width:0;height:0;position:absolute;inset:auto}.hw-puff{filter:blur(2px);opacity:0;width:18px;height:18px;animation:hw-puff 18s ease-out var(--puff-delay) infinite;background:radial-gradient(circle,#a9b2c124,#0000 70%);border-radius:50%;position:absolute;top:-14px;left:-9px}.hw-cat{aspect-ratio:44/26;width:2.8%;margin:-1.65% 0 0 -1.4%;position:absolute}.hw-cat .hw-cat-tail{transform-box:fill-box;transform-origin:100% 100%}.hw-ghost{width:calc(46px * var(--ghost-scale));height:calc(100px * var(--ghost-scale));margin-left:calc(-23px * var(--ghost-scale));opacity:0;filter:blur(5px);background:radial-gradient(46% 26% at 50% 24%,#c8d2e8e6,#0000 72%),radial-gradient(38% 58% at 50% 62%,#b0bad699,#0000 74%);position:absolute}.hw-fogwrap{opacity:.8;transition:opacity 6s;left:0;right:0}.hw-fog-band{width:200%;animation:hw-drift var(--fog-dur,160s) linear infinite;background-repeat:repeat-x;background-size:50% 100%;position:absolute;top:0;bottom:0;left:0}.hw-fog-far{height:30vh;bottom:13vh}.hw-fog-far .hw-fog-band{--fog-dur:170s}.hw-fog-mid{height:30vh;bottom:4vh}.hw-fog-mid .hw-fog-band{--fog-dur:120s;animation-direction:reverse}.hw-fog-near{height:26vh;bottom:-6vh}.hw-fog-near .hw-fog-band{--fog-dur:95s;animation:95s linear infinite hw-drift,21s ease-in-out infinite alternate hw-fog-breathe}.hw-mist{opacity:.9;height:16vh;bottom:-3vh}.hw-mist .hw-fog-band{animation:70s linear infinite reverse hw-drift,15s ease-in-out -6s infinite alternate hw-fog-breathe}#app.theme-halloween[data-session=break] .hw-fogwrap{opacity:1}.hw-surge{opacity:0;background:radial-gradient(40% 30% at 40% 70%,#96a0b629,#0000 70%),radial-gradient(34% 26% at 62% 52%,#96a0b61f,#0000 70%),radial-gradient(50% 24% at 50% 88%,#a0aabe2e,#0000 70%);width:48%;height:72%;bottom:-4vh;left:0}.hw-surge.is-right{left:auto;right:0}.hw-fence{aspect-ratio:640/140;width:min(36vw,640px);bottom:15vh;right:3vw}.hw-fence>*{position:absolute}.hw-fence-art{inset:0;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 24%);mask-image:linear-gradient(90deg,#0000 0%,#000 24%)}.hw-gate{transform-origin:100%;width:17.2%;height:80%;top:11.4%;left:30.6%}.hw-gate-leaf{transform-origin:100%;position:absolute;inset:0;transform:perspective(500px)rotateY(-40deg)}.hw-lantern-post{width:6.25%;height:107%;bottom:0;left:50%}.hw-lantern{aspect-ratio:24/40;transform-origin:50% 0;width:3.75%;margin-left:-1.875%;top:4.4%;left:55%}.hw-lantern-light,.hw-lantern-art{position:absolute;inset:0}.hw-lantern-glow{background:radial-gradient(circle,#ffd28a57 0%,#f4a6411a 30%,#0000 60%);border-radius:50%;animation:5.3s linear -1.7s infinite hw-candle;position:absolute;inset:-170%}.hw-ground{height:22vh;bottom:0;left:0;right:0}.hw-tree-shadows{opacity:.75;background:repeating-linear-gradient(118deg,#00000038 0 10px,#0000 10px 46px,#00000024 46px 52px,#0000 52px 110px);width:58%;height:16vh;bottom:0;left:0;-webkit-mask-image:radial-gradient(60% 70% at 30% 70%,#000 25%,#0000 75%);mask-image:radial-gradient(60% 70% at 30% 70%,#000 25%,#0000 75%)}.hw-tree>.hw-sway,.hw-tree-body,.hw-trunk,.hw-bough-art{position:absolute;inset:0}.hw-bough{position:absolute}.hw-tree-left{aspect-ratio:600/1000;transform-origin:25% 100%;height:102vh;bottom:-1vh;left:-8vh}.hw-tree-left>.hw-sway{transform-origin:25% 100%}.hw-tree-right{aspect-ratio:500/900;transform-origin:76% 100%;height:74vh;bottom:-1vh;right:-15vh}.hw-tree-right>.hw-sway{transform-origin:76% 100%}.hw-sway{animation:hw-micro var(--sway-dur) ease-in-out var(--sway-delay) infinite alternate;position:absolute;inset:0}.hw-owl{aspect-ratio:26/32;width:3.9%;margin:-4.8% 0 0 -1.95%;position:absolute}.hw-owl .hw-owl-eyes,.hw-owl .hw-owl-head{transform-box:fill-box;transform-origin:50%}.hw-owl .hw-owl-head{transform-origin:50% 90%}.hw-tree-web{aspect-ratio:1;color:#c8d6f024;width:6%;margin:-3% 0 0 -1%;position:absolute}.hw-raven-perch{width:0;height:0;position:absolute}.hw-raven{aspect-ratio:40/34;width:40px;position:absolute;bottom:-2px;left:-20px}.hw-raven-fly,.hw-raven-sit{position:absolute;inset:0}.hw-raven-fly{width:120%;display:none;left:-10%}.hw-raven.is-flying .hw-raven-fly{display:block}.hw-raven.is-flying .hw-raven-sit{display:none}.hw-raven .hw-wing{transform-box:fill-box;transform-origin:30% 100%;animation:.32s ease-in-out infinite alternate hw-wing}.hw-patch{--hw-prop:1;transform:scale(var(--hw-prop))}.hw-patch>*{position:absolute}.hw-patch-right{transform-origin:100% 100%;width:300px;height:130px;bottom:3vh;right:14vw}.hw-pumpkin-big{aspect-ratio:80/60;width:112px;bottom:0;left:0}.hw-jack-right{width:94px;bottom:2px;left:92px}.hw-pumpkin-small{aspect-ratio:80/60;width:64px;bottom:0;left:180px}.hw-candle-tall{bottom:6px;left:252px}.hw-candle-short{bottom:2px;left:272px}.hw-patch-right .hw-embers{width:200px;height:150px;bottom:50px;left:90px}.hw-patch-left{transform-origin:0 100%;width:170px;height:100px;bottom:2vh;left:26vh}.hw-jack-left{width:70px;bottom:0;left:0}.hw-pumpkin-left{aspect-ratio:80/60;width:58px;bottom:0;left:64px}.hw-patch-left .hw-embers{width:80px;height:110px;bottom:40px;left:0}.hw-jack{aspect-ratio:80/62}.hw-jack>*{position:absolute}.hw-jack-shell,.hw-jack-flare{inset:0}.hw-jack-flare{opacity:.6;animation:hw-candle var(--jack-flicker) linear var(--jack-delay) infinite}.hw-jack-glow{animation:hw-candle var(--jack-flicker) linear calc(var(--jack-delay) - .7s) infinite;background:radial-gradient(circle at 50% 55%,#f07a243d 0%,#f07a2414 32%,#0000 60%);border-radius:50%;inset:-55%}.hw-jack-ground{height:40%;animation:hw-candle var(--jack-flicker) linear calc(var(--jack-delay) - 1.3s) infinite;background:radial-gradient(50% 50%,#f07a2433,#0000 70%);border-radius:50%;bottom:-16%;left:-45%;right:-45%}.hw-candle{width:9px;height:var(--wax)}.hw-candle>*{position:absolute}.hw-candle-wax{background:linear-gradient(90deg,#6e6658 0%,#d9ceb6 38%,#b8ac96 70%,#5e574c 100%);border-radius:2px 2px 1px 1px;inset:0}.hw-candle-wax:before{content:"";background:#e8dec8;border-radius:1px;width:2px;height:40%;position:absolute;top:0;left:1px}.hw-candle-wick{background:#1a1410;width:1px;height:4px;top:-4px;left:50%}.hw-flame-sway{transform-origin:50% 100%;width:7px;height:13px;animation:hw-flame-sway 3.4s ease-in-out var(--flicker-delay) infinite;margin-left:-3.5px;top:-17px;left:50%}.hw-flame{transform-origin:50% 100%;animation:hw-flame var(--flicker) linear var(--flicker-delay) infinite;background:radial-gradient(at 50% 72%,#fff6dc 0%,#ffd28a 34%,#f4a641d9 60%,#0000 74%);border-radius:50%/62% 62% 38% 38%;position:absolute;inset:0}.hw-candle-halo{width:64px;height:64px;animation:hw-candle calc(var(--flicker) * 2.3) linear var(--flicker-delay) infinite;background:radial-gradient(circle,#ffd28a42,#ffd28a0f 45%,#0000 70%);border-radius:50%;margin-left:-32px;top:-40px;left:50%}.hw-embers{pointer-events:none}.hw-ember{width:var(--ember-size);height:var(--ember-size);opacity:0;animation:hw-ember var(--ember-dur) ease-out var(--ember-delay) infinite;background:radial-gradient(circle,#ffd28a 0%,#f07a24 70%);border-radius:50%;position:absolute;bottom:0;box-shadow:0 0 5px 1px #f4a64180}.hw-grass{aspect-ratio:60/40;transform-origin:50% 100%;bottom:-2px}.hw-grass-a{width:92px;left:.5%}.hw-grass-b{width:64px;left:18%}.hw-grass-c{width:84px;right:1.5%}.hw-grass-d{width:60px;right:31%}.hw-grass-e{width:56px;left:37%}.hw-grass-f{width:50px;right:46%}.hw-dryleaf{width:13px;height:17px}.hw-dryleaf-art{width:100%;height:100%}.hw-dryleaf-a{bottom:2.5%;left:31%}.hw-dryleaf-b{bottom:2%;right:38%}.hw-falling{inset:0}.hw-fall-leaf{opacity:.55;width:11px;height:14px;animation:hw-fall var(--fall-dur) linear var(--fall-delay) infinite;position:absolute;top:0}.hw-fall-spin{width:100%;height:100%;animation:7s linear infinite hw-leaf-turn}.hw-drop-leaf{width:11px;height:14px;position:absolute}.hw-batgroup{width:1px;height:1px;position:absolute}.hw-bat{width:var(--bat-size);aspect-ratio:2;position:absolute}.hw-bat svg{fill:#040308;opacity:.9;animation:hw-flap var(--flap,.17s) ease-in-out var(--flap-delay,0s) infinite alternate}.hw-bat-near svg{fill:#030206}.hw-witch{aspect-ratio:2;color:#030206;width:clamp(52px,4.6vw,70px);position:absolute}.hw-witch.is-leftward svg{transform:scaleX(-1)}.hw-witch-bob{width:100%;height:100%;animation:4.2s ease-in-out infinite alternate hw-witch-bob}.hw-witch svg{fill:currentColor;opacity:.9}.hw-shooting{transform-origin:100%;opacity:0;background:linear-gradient(90deg,#0000,#f3e9d4e6);border-radius:1px;width:70px;height:1.5px;position:absolute}.hw-specks{inset:0}.hw-speck{opacity:0;width:1.5px;height:1.5px;animation:hw-speck var(--sp-dur) ease-in-out var(--sp-delay) infinite;background:#c8d4ea;border-radius:50%;position:absolute}.hw-warm,.hw-warm-boost,.hw-cool,.hw-shade,.hw-vignette,.hw-dim{inset:0}.hw-warm{background:radial-gradient(42% 36% at 50% 56%,#f4a6410f,#0000 70%),radial-gradient(30% 26% at 76% 94%,#f07a2412,#0000 70%);transition:opacity 6s}.hw-warm-boost{opacity:0;background:radial-gradient(26% 22% at 76% 92%,#f07a2424,#0000 70%),radial-gradient(18% 18% at 20% 94%,#f07a241a,#0000 70%)}.hw-cool{opacity:0;background:linear-gradient(#5a3d7321,#141b2e1f 60%,#24162f1a);transition:opacity 6s}#app.theme-halloween[data-session=break] .hw-warm{opacity:.5}#app.theme-halloween[data-session=break] .hw-cool{opacity:1}.hw-shade{opacity:0;background:linear-gradient(#24162f52,#0d122038)}.hw-vignette{background:radial-gradient(80% 75% at 50% 46%,#0000 50%,#04030866 82%,#040308a6 100%)}.hw-dim{opacity:0;background:#05040a66;transition:opacity .4s}#app.theme-halloween:has(#settings-panel:not(.hidden)) .hw-dim{opacity:1}@keyframes hw-candle{0%{opacity:.85}7%{opacity:.97}12%{opacity:.8}20%{opacity:1}33%{opacity:.88}41%{opacity:.98}55%{opacity:.82}68%{opacity:1}80%{opacity:.9}92%{opacity:.96}to{opacity:.85}}@keyframes hw-flame{0%{opacity:1;transform:scale(1)}11%{transform:scale(.9,1.08)skew(2deg)}19%{opacity:.9;transform:scale(1.05,.94)}31%{transform:scale(.94,1.12)skew(-3deg)}44%{opacity:1;transform:scale(1.02,.97)}57%{transform:scale(.9,1.05)skew(2deg)}70%{opacity:.88;transform:scale(1.04,.95)}84%{transform:scale(.95,1.1)skew(-1deg)}to{opacity:1;transform:scale(1)}}@keyframes hw-flame-sway{0%,to{transform:rotate(0)}30%{transform:rotate(3deg)}55%{transform:rotate(-2deg)}80%{transform:rotate(1.5deg)}}@keyframes hw-breathe{0%{opacity:.86}to{opacity:1}}@keyframes hw-twinkle{0%,88%{opacity:.25}92%{opacity:.95}96%{opacity:.35}to{opacity:.25}}@keyframes hw-cloud{0%{transform:translate(-8%)}to{transform:translate(10%)}}@keyframes hw-drift{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes hw-fog-breathe{0%{opacity:.7}to{opacity:1}}@keyframes hw-micro{0%{transform:rotate(calc(var(--sway-a) * -1))}to{transform:rotate(var(--sway-a))}}@keyframes hw-puff{0%{opacity:0;transform:translate(0)scale(.6)}15%{opacity:.8}to{transform:translate(var(--puff-dx), -64px) scale(2);opacity:0}}@keyframes hw-ember{0%{opacity:0;transform:translate(0)}15%{opacity:var(--ember-o)}70%{opacity:calc(var(--ember-o) * .5)}to{transform:translate(var(--ember-dx), var(--ember-rise));opacity:0}}@keyframes hw-speck{0%{opacity:0;transform:translate(0)}30%{opacity:var(--sp-o)}70%{opacity:var(--sp-o)}to{transform:translate(var(--sp-dx), var(--sp-dy));opacity:0}}@keyframes hw-fall{0%{transform:translateY(-6vh)}to{transform:translate(var(--fall-dx), 106vh)}}@keyframes hw-leaf-turn{0%{transform:rotate(0)rotateX(0)}to{transform:rotate(360deg)rotateX(360deg)}}@keyframes hw-flap{0%{transform:scaleY(1)}to{transform:scaleY(.35)}}@keyframes hw-wing{0%{transform:scaleY(1)}to{transform:scaleY(-.55)}}@keyframes hw-witch-bob{0%{transform:translateY(-5px)rotate(-1.5deg)}to{transform:translateY(6px)rotate(1.5deg)}}@media (width<=1399px){.hw-estate{width:min(50vw,900px)}.hw-patch-right{--hw-prop:.85}}@media (width<=1199px){.hw-estate-front,.hw-cat-lane,.hw-walker-lane,.hw-grass-e,.hw-grass-f{display:none}.hw-estate{width:54vw;right:-6vw}.hw-fence{width:34vw;right:1vw}.hw-patch-right{--hw-prop:.75;right:8vw}.hw-patch-left{--hw-prop:.85}}@media (height<=760px){.hw-patch-right{--hw-prop:.65}.hw-patch-left{--hw-prop:.7}}@media (width<=899px){.hw-estate,.hw-fence,.hw-tree-right,.hw-tree-shadows,.hw-distant-trees,.hw-fog-far,.hw-patch-left,.hw-pumpkin-big,.hw-candle-short,.hw-grass-b,.hw-grass-d,.hw-dryleaf-b,.hw-cloud-b,.hw-speck:nth-child(n+6){display:none}.hw-moonwrap{width:72px;top:4%;left:7%}.hw-tree-left{height:86vh;left:-38vh}.hw-patch-right{--hw-prop:.7;width:190px;bottom:6px;right:10px}.hw-jack-right{left:0}.hw-pumpkin-small{left:86px}.hw-candle-tall{left:150px}.hw-patch-right .hw-embers{width:120px;left:0}}@media (height<=500px) and (orientation:landscape){.hw-tree-left,.hw-dryleaf{display:none}.hw-patch-right{--hw-prop:.45}}@media (prefers-reduced-motion:reduce){.hw-scene *,.hw-scene :before,.hw-scene :after,.theme-halloween #card:before{animation:none!important}.hw-skyevents,.hw-embers,.hw-specks,.hw-falling,.hw-surge{display:none}}#app.theme-library{--bg:#0b0908;--bg-highlight:#17110d;--card-bg:#120d0a;--surface-elevated:#19120e;--border:#4a3826;--text-primary:#f0e3cb;--text-secondary:#c8b79d;--accent-bg:#d1aa68;--accent-bg-hover:#e9b86c;--accent-bg-pressed:#b58a4a;--secondary-bg:#241912;--secondary-bg-hover:#2e2016;--disabled:#6e604f;--shadow-elevated:0 30px 80px #000000a6;--app-bg:radial-gradient(ellipse at 80% 35%, #111820a6, transparent 55%), linear-gradient(180deg, #120d0a 0%, #100b09 55%, #0b0908 100%);--card-surface:radial-gradient(ellipse 80% 60% at 50% 0%, #e9b86c14, transparent 70%), linear-gradient(172deg, #1f1610 0%, #18110d 50%, #120d0a 100%);--timer-glow:0 0 20px #e9b86c33, 0 1px 0 #0009;--btn-primary-bg:linear-gradient(180deg, #e2bc78 0%, #d1aa68 45%, #b58a4a 100%);--btn-primary-text:#1e140c;--btn-hover-gradient:linear-gradient(45deg, #c99d5a 0%, #e2bc78 46%, #f0cf92 50%, #e2bc78 54%, #c99d5a 100%);--btn-hover-shadow:0 6px 18px #00000073, 0 0 0 1px #e9b86c38;--btn-secondary-bg:linear-gradient(180deg, #4a2d20 0%, #38231a 100%);--btn-secondary-text:var(--text-primary);--btn-secondary-border:1px solid #b58a4a59;--btn-secondary-hover-bg:#4f3123;--btn-secondary-hover-overlay:linear-gradient(45deg, #4a2d20 0%, #5a3828 50%, #4a2d20 100%);--btn-ghost-bg:transparent;--btn-ghost-text:var(--text-primary);--btn-ghost-border:1px solid #b58a4a59;--btn-ghost-hover-bg:#e9b86c0f;--btn-ghost-hover-overlay:linear-gradient(45deg, #e9b86c0a 0%, #e9b86c1c 50%, #e9b86c0a 100%);--btn-quiet-hover-shadow:0 6px 16px #00000073, 0 0 0 1px #e9b86c29;--settings-button-hover:#2e2016;--theme-card-hover:#2e2016;--switch-off:#4a3a2c;--lib-desk-top:calc(50% + 150px);--lib-card-half:360px;--lib-prop-scale:1.25;--lib-lamp-x:calc(50% - 652px);--lib-gilt:#d1aa688c;--lib-warmth:1;--lib-moonlight:.55}#app.theme-library[data-session=break]{--timer-glow:0 0 20px #96a8be29, 0 1px 0 #0009;--lib-warmth:.72;--lib-moonlight:1}#app.theme-library #center{position:relative}.theme-library #card{border-color:#b58a4a73;transition:box-shadow 2.5s;position:relative;box-shadow:inset 0 1px #ffd79614,inset 0 0 50px #00000073,0 2px #00000080,0 20px 40px #0000008c,0 50px 100px #00000073,0 0 90px #e9b86c1a}#app.theme-library[data-session=break] #card{box-shadow:inset 0 1px #c8d6e80f,inset 0 0 50px #00000073,0 2px #00000080,0 20px 40px #0000008c,0 50px 100px #00000073,0 0 90px #8295ad12}.theme-library #card:before{content:"";pointer-events:none;background:linear-gradient(var(--lib-gilt), var(--lib-gilt)) left 6px top 6px / 20px 1px no-repeat, linear-gradient(var(--lib-gilt), var(--lib-gilt)) left 6px top 6px / 1px 20px no-repeat, linear-gradient(var(--lib-gilt), var(--lib-gilt)) right 6px top 6px / 20px 1px no-repeat, linear-gradient(var(--lib-gilt), var(--lib-gilt)) right 6px top 6px / 1px 20px no-repeat, linear-gradient(var(--lib-gilt), var(--lib-gilt)) left 6px bottom 6px / 20px 1px no-repeat, linear-gradient(var(--lib-gilt), var(--lib-gilt)) left 6px bottom 6px / 1px 20px no-repeat, linear-gradient(var(--lib-gilt), var(--lib-gilt)) right 6px bottom 6px / 20px 1px no-repeat, linear-gradient(var(--lib-gilt), var(--lib-gilt)) right 6px bottom 6px / 1px 20px no-repeat;border:1px solid #b58a4a29;border-radius:16px;position:absolute;inset:9px}.theme-library #title{letter-spacing:.05em;font-family:Iowan Old Style,Palatino Linotype,Palatino,Book Antiqua,Georgia,serif;font-weight:500;position:relative}.theme-library #title:after,.theme-library #title:before{content:"";pointer-events:none;position:absolute;left:50%}.theme-library #title:after{background:linear-gradient(90deg,#0000,#b58a4ab3,#0000);width:110px;height:1px;bottom:-10px;transform:translate(-50%)}.theme-library #title:before{background:#b58a4a;width:5px;height:5px;bottom:-12.5px;transform:translate(-50%)rotate(45deg)}.theme-library #session-label{letter-spacing:.16em;color:#d9b676;background:#b58a4a14;border-color:#b58a4a80;font-family:Iowan Old Style,Palatino Linotype,Palatino,Book Antiqua,Georgia,serif;transition:color 1.5s,border-color 1.5s,background 1.5s}#app.theme-library[data-session=break] #session-label{color:#b4c4b8;background:#26372e66;border-color:#7a8a7699}.theme-library #timer{transition:color .8s,text-shadow 2.5s}#app.theme-library[data-overtime=true] #timer{color:#ffdda6;text-shadow:0 0 24px #ffd79652,0 1px #0009}.theme-library #controls #main-control{box-shadow:inset 0 1px #fff0d273,0 2px 6px #0006}.theme-library #controls #main-control:hover{box-shadow:inset 0 1px 0 #fff0d273, var(--btn-hover-shadow)}.theme-library #controls #reset{box-shadow:inset 0 1px #ffd79614,0 2px 6px #00000059}.theme-library #controls #main-control:active,.theme-library #controls #reset:active,.theme-library #controls #skip:active{filter:brightness(.92);box-shadow:inset 0 1px 2px #00000059,0 1px 2px #00000080}.theme-library #settings-button,.theme-library #hub-button{background:linear-gradient(#2a1d15,#1a130e);border-color:#b58a4a73;transition:background .15s,transform .15s,box-shadow .3s;box-shadow:inset 0 1px #ffd79614,0 4px 12px #0006}.theme-library #settings-button:hover,.theme-library #hub-button:hover{background:linear-gradient(#34251a,#22180f);box-shadow:inset 0 1px #ffd7961f,0 0 0 1px #e9b86c2e,0 6px 16px #00000073}.theme-library #settings-panel{box-shadow:var(--shadow-elevated), inset 0 1px 0 #ffd7960f;background:linear-gradient(#1c140f,#150f0b);border-color:#b58a4a66}.lib-scene{pointer-events:none;z-index:0;position:absolute;inset:0;overflow:hidden}.lib-scene>*{position:absolute}.lib-wall{background:linear-gradient(#0000008c 0%,#0000 16%),linear-gradient(#0000 0 calc(50% + 100px),#00000059 calc(50% + 150px)),repeating-linear-gradient(90deg,#00000052 0 2px,#ffd79606 2px 3px,#0000 3px 150px);inset:0}.lib-shelf{top:6%;bottom:calc(100% - var(--lib-desk-top));box-sizing:border-box;background:linear-gradient(90deg,#00000073,#0000 8% 92%,#00000073),repeating-linear-gradient(90deg,#ffd79604 0 1px,#0000 1px 11px),#110c09;border-inline:14px solid #1c130e;animation:46s ease-in-out infinite alternate lib-parallax;box-shadow:0 0 40px #0009}.lib-shelf:after{content:"";background:linear-gradient(90deg,#0605048c 0%,#06050440 55%,#0605041f 100%);position:absolute;inset:-24px -16px 0}.lib-shelf-right:after{background:linear-gradient(270deg,#0605048c 0%,#06050440 55%,#0605041f 100%)}.lib-shelf-left{left:2.5%;right:calc(50% + 330px)}.lib-shelf-right{animation-delay:-20s;left:calc(50% + 436px + 15vw);right:2.5%}.lib-cornice{background:linear-gradient(#2a1c14 0%,#1a120d 28%,#b58a4a47 30%,#3a281c 32%,#22170f 55%,#120c08 58%,#2a1c14 62%,#1c130e 100%);border-radius:2px;height:26px;position:absolute;top:-22px;left:-22px;right:-22px;box-shadow:0 6px 12px #0000008c}.lib-rows{flex-direction:column;display:flex;position:absolute;inset:10px 0 0;overflow:hidden}.lib-row{border-bottom:8px solid #24180f;flex:1;position:relative}.lib-shelf-book{border-radius:1px 1px 0 0;position:absolute;bottom:0}.lib-lean-book{transform-origin:0 100%;transform:rotate(14deg);box-shadow:-2px 0 4px #00000080}.lib-slide-gilt{background:var(--lib-gilt);height:1.5px;box-shadow:0 4px 0 var(--lib-gilt);position:absolute;top:9%;left:1px;right:1px}.lib-post{background:linear-gradient(90deg,#120c08,#241810 40%,#1a120d);width:10px;margin-left:-5px;position:absolute;top:10px;bottom:0;left:50%;box-shadow:0 0 8px #0009}.lib-rail{opacity:.5;background:linear-gradient(#e2c186,#8a6a36);border-radius:2px;height:3px;position:absolute;top:3px;left:0;right:0;box-shadow:0 2px 3px #0009}.lib-ladder{width:64px;position:absolute;top:2px;bottom:0;left:20%}.lib-ladder svg{width:100%;height:100%;display:block}.lib-owl{filter:drop-shadow(0 0 1px #d1aa6840);width:20px;position:absolute;top:-46px;right:30px}.lib-owl svg{width:100%;display:block}.lib-owl-eyes{transform-box:fill-box;transform-origin:50%}.lib-window{box-sizing:border-box;border:9px solid #1c130e;border-radius:999px 999px 4px 4px;width:15vw;top:13%;bottom:calc(50% - 80px);left:calc(50% + 400px);overflow:hidden;box-shadow:0 0 0 3px #0e0907,0 0 0 4px #b58a4a1f,inset 0 0 24px #000000b3,0 0 70px #8295ad14}.lib-window>*{position:absolute}.lib-sky{background:radial-gradient(circle at 70% 18%,#8295ad47,#0000 45%),linear-gradient(#0d1520 0%,#111820 55%,#172029 100%);inset:0}.lib-moon{aspect-ratio:1;opacity:.8;background:radial-gradient(circle at 38% 36%,#e8eef5,#b9c6d6 60%,#8295ad);border-radius:50%;width:30%;max-width:46px;top:9%;right:16%;box-shadow:0 0 24px 6px #8295ad59}.lib-cloud{background:radial-gradient(40% 50% at 30%,#3c485a8c,#0000 70%),radial-gradient(35% 45% at 70% 55%,#323c4e80,#0000 70%);width:120%;height:22%;left:-10%}.lib-cloud-a{animation:70s ease-in-out infinite alternate lib-cloud;top:8%}.lib-cloud-b{opacity:.7;animation:95s ease-in-out -30s infinite alternate-reverse lib-cloud;top:22%}.lib-skyline{height:26%;bottom:0;left:0;right:0}.lib-skyline svg{width:100%;height:100%;display:block}.lib-rain{width:180%;height:calc(100% + 720px);top:-360px;left:-40%}.lib-rain-far{opacity:.45;background-image:radial-gradient(.6px 7px,#becde180,#0000),radial-gradient(.6px 6px,#becde166,#0000),radial-gradient(.5px 5px,#becde159,#0000);background-position:0 0,13px 31px,7px 77px;background-size:31px 60px,47px 90px,23px 120px;animation:1.6s linear infinite lib-rain-far}.lib-rain-near{opacity:.5;background-image:radial-gradient(.8px 11px,#c8d6e880,#0000),radial-gradient(.7px 9px,#c8d6e866,#0000),radial-gradient(.8px 12px,#c8d6e859,#0000);background-position:9px 0,30px 50px,0 100px;background-size:53px 90px,71px 120px,41px 180px;animation:1.15s linear infinite lib-rain-near}.lib-drops{inset:0}.lib-drop{opacity:0;width:1.5px;height:14px;animation:lib-drop var(--drop-duration) ease-in var(--drop-delay) infinite;background:linear-gradient(#c8d6e800,#c8d6e880);border-radius:1px;position:absolute;top:0}.lib-glass{background:linear-gradient(118deg,#0000 30%,#e9b86c0b 44%,#0000 58%),radial-gradient(at 15% 100%,#e9b86c14,#0000 50%);inset:0}.lib-glint{opacity:0;background:linear-gradient(90deg,#0000,#c8d6e81a,#0000);width:45%;top:0;bottom:0;left:0}.lib-mullions{background:linear-gradient(90deg,#0000 calc(50% - 3px),#1c130e calc(50% - 3px) calc(50% + 3px),#0000 calc(50% + 3px)),linear-gradient(#0000 calc(40% - 3px),#1c130e calc(40% - 3px) calc(40% + 3px),#0000 calc(40% + 3px)),linear-gradient(#0000 calc(70% - 3px),#1c130e calc(70% - 3px) calc(70% + 3px),#0000 calc(70% + 3px));inset:0}.lib-sill{background:linear-gradient(#3a281c,#1c130e);border-radius:2px;width:calc(15vw + 28px);height:12px;bottom:calc(50% - 92px);left:calc(50% + 386px);box-shadow:0 6px 12px #0009}.lib-rod{opacity:.55;background:linear-gradient(#e2c186,#8a6a36);border-radius:2px;width:calc(15vw + 92px);height:4px;top:calc(13% - 20px);left:calc(50% + 340px);box-shadow:0 2px 4px #0009}.lib-rod:before,.lib-rod:after{content:"";background:radial-gradient(circle at 35% 35%,#e2c186,#6b4e28);border-radius:50%;width:9px;height:9px;position:absolute;top:-3px}.lib-rod:before{left:-6px}.lib-rod:after{right:-6px}.lib-curtain{transform-origin:top;clip-path:polygon(0 0,100% 0,92% 30%,72% 47%,66% 53%,82% 72%,100% 100%,0 100%);background:linear-gradient(90deg,#0000 70%,#8295ad17 100%),linear-gradient(#0000004d,#0000 30% 70%,#00000080),repeating-linear-gradient(90deg,#121b16 0 5px,#1f2e26 11px,#17231c 17px,#0d1410 23px);width:78px;animation:13s ease-in-out infinite alternate lib-curtain;top:calc(13% - 18px);bottom:calc(50% - 130px);left:calc(50% + 352px)}.lib-shade{background:radial-gradient(62% 70% at 47% 60%,#0000 38%,#06050480 72%,#030202d1 100%);animation:9s ease-in-out infinite alternate lib-shadow-breathe;inset:0}.lib-lamp-light{opacity:var(--lib-warmth);transition:opacity 2.5s;inset:0}.lib-lamp-light:before{content:"";background:radial-gradient(ellipse 560px 420px at calc(50% - 80px) calc(50% + 60px), #e9b86c29, #e9b86c0d 50%, transparent 72%), radial-gradient(ellipse 280px 230px at var(--lib-lamp-x) calc(50% + 150px), #ffd79624, transparent 70%);animation:7s ease-in-out infinite alternate lib-lamp-breathe;position:absolute;inset:0}.lib-desk{top:var(--lib-desk-top);background:linear-gradient(180deg, #e9b86c4d 0, #e9b86c14 2px, transparent 3px), radial-gradient(ellipse 520px 160px at calc(50% - 60px) 30px, #e9b86c2e, transparent 70%), radial-gradient(ellipse 260px 100px at var(--lib-lamp-x) 110px, #ffd79633, transparent 70%), radial-gradient(ellipse 180px 80px at calc(50% + 600px) 110px, #ffc8821a, transparent 70%), linear-gradient(90deg, #0000008c, transparent 22%, transparent 78%, #0000008c), linear-gradient(180deg, transparent 40%, #00000073 100%), repeating-linear-gradient(178.6deg, #ffd79606 0 1px, transparent 1px 7px), repeating-linear-gradient(181.2deg, #00000029 0 2px, transparent 2px 19px), linear-gradient(180deg, #2e1e15 0%, #22160f 30%, #150e0a 100%);bottom:0;left:0;right:0;box-shadow:0 -18px 40px #0000008c}.lib-blotter{left:calc(50% - var(--lib-card-half) - 60px);right:calc(50% - var(--lib-card-half) - 60px);top:calc(var(--lib-desk-top) + 10px);transform-origin:top;background:linear-gradient(90deg,#2a1a13 0 34px,#b58a4a4d 34px 35px,#0000 35px calc(100% - 35px),#b58a4a4d calc(100% - 35px) calc(100% - 34px),#2a1a13 calc(100% - 34px)),radial-gradient(70% 60% at 45% 20%,#e9b86c1a,#0000 70%),linear-gradient(#24170f,#1a110c);border:1px solid #b58a4a47;border-radius:6px;height:190px;transform:perspective(600px)rotateX(48deg);box-shadow:0 10px 24px #00000080}.lib-moonbeam{opacity:var(--lib-moonlight);clip-path:polygon(360px 0,calc(360px + 15vw) 0,72% 100%,4% 100%);background:linear-gradient(205deg,#8295ad1f 0%,#8295ad0b 45%,#0000 78%);transition:opacity 3s;inset:30% 0 calc(50% - 320px) calc(50% + 40px);-webkit-mask-image:linear-gradient(#0000 0%,#000 35% 65%,#0000 100%);mask-image:linear-gradient(#0000 0%,#000 35% 65%,#0000 100%)}.lib-dust{opacity:calc(.45 + var(--lib-warmth) * .55);transition:opacity 2.5s;-webkit-mask-image:radial-gradient(at 50% 55%,#000 25%,#0000 70%);mask-image:radial-gradient(at 50% 55%,#000 25%,#0000 70%)}.lib-dust-lamp{left:calc(var(--lib-lamp-x) - 190px);width:380px;height:340px;top:calc(50% - 130px)}.lib-mote{width:var(--mote-size);height:var(--mote-size);opacity:var(--mote-opacity);animation:lib-mote-drift var(--mote-drift) ease-in-out var(--mote-drift-delay) infinite alternate, lib-mote-fade var(--mote-fade) ease-in-out var(--mote-fade-delay) infinite alternate;background:#ffd796;border-radius:50%;position:absolute;box-shadow:0 0 4px #ffd79699}.lib-props{height:220px;bottom:calc(50% - 270px)}.lib-props>*{position:absolute}.lib-props-left{right:calc(50% + var(--lib-card-half) + 12px);width:300px;transform:scale(var(--lib-prop-scale));transform-origin:100% 100%}.lib-props-right{left:calc(50% + var(--lib-card-half) + 12px);width:260px;transform:scale(var(--lib-prop-scale));transform-origin:0 100%}.lib-flatbook{box-sizing:border-box;border-radius:2px 3px 3px 2px;position:relative;box-shadow:0 2px 3px #00000080,inset 0 1px #ffe6be1f}.lib-spine-out{background:linear-gradient(90deg, transparent 12%, var(--lib-gilt) 12% 13.2%, transparent 13.2% 86.8%, var(--lib-gilt) 86.8% 88%, transparent 88%), linear-gradient(180deg, var(--cover-light) 0%, var(--cover) 35%, var(--cover) 70%, #00000059 100%), var(--cover)}.lib-pages-out{border-left:5px solid var(--cover);background:repeating-linear-gradient(180deg, #6e503229 0 1px, transparent 1px 2.5px) 0 3px / 100% calc(100% - 6px) no-repeat, linear-gradient(90deg, #00000040, transparent 15%), linear-gradient(180deg, var(--cover-light) 0 3px, #d6c6a5 3px, #c4b291 calc(100% - 3px), var(--cover) calc(100% - 3px))}.lib-ribbon{clip-path:polygon(0 0,100% 0,100% 100%,50% 80%,0 100%);background:linear-gradient(#7a1f22,#561618);width:5px;height:22px;position:absolute;top:60%;right:22px}.lib-ribbon-short{height:17px;right:30px}.lib-lamp-group{width:150px;height:170px;bottom:6px;right:150px}.lib-lamp-group>*{position:absolute}.lib-lamp-book{background:linear-gradient(90deg, transparent 10%, var(--lib-gilt) 10% 11%, transparent 11% 89%, var(--lib-gilt) 89% 90%, transparent 90%), linear-gradient(180deg, var(--cover-light) 0%, var(--cover) 40%, #00000059 100%), var(--cover);width:142px;height:20px;bottom:0;left:4px}.lib-lamp{width:112px;height:132px;bottom:19px;left:20px}.lib-lamp>*{position:absolute}.lib-lamp-art{width:100%;height:100%;display:block;inset:0}.lib-lamp-cone{clip-path:polygon(6% 0,94% 0,100% 100%,0 100%);width:96px;height:80px;opacity:var(--lib-warmth);background:linear-gradient(#ffd79642,#ffd79612 75%,#0000);transition:opacity 2.5s;top:52px;left:8px}.lib-lamp-pool{height:64px;opacity:var(--lib-warmth);background:radial-gradient(#ffd79642,#0000 70%);transition:opacity 2.5s;bottom:-30px;left:-70px;right:-70px}.lib-lamp-rim{opacity:calc(.55 + var(--lib-warmth) * .45);transition:opacity 2.5s}.lib-openbook{transform-origin:bottom;width:150px;height:56px;transform-style:preserve-3d;bottom:6px;right:4px;transform:perspective(320px)rotateX(38deg)}.lib-openbook>*{position:absolute}.lib-openbook-cover{background:linear-gradient(#5c3a29,#3a2318);border-radius:4px;inset:3px -4px -5px;box-shadow:0 12px 16px #0000008c}.lib-page{width:50%;top:0;bottom:0;box-shadow:0 2px #d2c2a2,0 3.5px #bfad8c}.lib-page-left{background:radial-gradient(at 0 40%,#ffd79638,#0000 60%),repeating-linear-gradient(#0000 0 4px,#46301e38 4px 5px) 14% 26%/66% 56% no-repeat,linear-gradient(90deg,#d9c9a8 0%,#f0e3cb 28%,#eddfc4 78%,#bca987 100%);border-radius:10px 2px 2px 5px/16px 2px 2px 5px;left:0}.lib-page-right{background:repeating-linear-gradient(#0000 0 4px,#46301e33 4px 5px) 70% 26%/66% 56% no-repeat,linear-gradient(90deg,#bca987 0%,#e6d7ba 22%,#efe2c8 72%,#ddcdaf 100%);border-radius:2px 10px 5px 2px/2px 16px 5px 2px;left:50%}.lib-openbook-gutter{background:linear-gradient(90deg,#0000,#3c281959,#0000);width:8px;top:0;bottom:0;left:calc(50% - 4px)}.lib-page-turn{opacity:0;box-shadow:none;transform-origin:0;backface-visibility:visible}.lib-pen{filter:drop-shadow(0 3px 2px #0000008c);width:96px;bottom:-6px;right:34px;transform:rotate(-9deg)}.lib-pen svg{width:100%;display:block}.lib-note{background:linear-gradient(90deg,#0000 49%,#5a3c2340 50%,#0000 51%),repeating-linear-gradient(#0000 0 5px,#46301e24 5px 6px) 6px 6px/16px 18px no-repeat,linear-gradient(135deg,#e2d3b5,#c9b898);width:50px;height:32px;bottom:2px;right:112px;transform:perspective(300px)rotateX(40deg)rotate(8deg);box-shadow:0 4px 6px #0006}.lib-stack{flex-direction:column-reverse;align-items:flex-start;width:136px;display:flex;bottom:6px;left:6px}.lib-clock{filter:drop-shadow(0 2px 2px #00000080);width:34px;margin-left:48px}.lib-clock svg{width:100%;display:block}.lib-clock-minute,.lib-clock-hour{transform-box:view-box;transform-origin:18px 19px}.lib-clock-minute{animation:3600s steps(60,end) -2700s infinite lib-spin}.lib-clock-hour{animation:43200s steps(720,end) -42300s infinite lib-spin}.lib-candle{width:46px;height:96px;bottom:6px;left:146px}.lib-candle>*{position:absolute}.lib-candle-halo{background:radial-gradient(circle,#ffd79633,#ffc8780f 40%,#0000 68%);border-radius:50%;width:146px;height:146px;animation:2.3s linear infinite lib-halo;bottom:-16px;left:-50px}.lib-candle-holder{width:48px;bottom:0;left:0}.lib-candle-holder svg{width:100%;display:block}.lib-candle-wax{background:linear-gradient(90deg,#b9a88a 0%,#efe2c8 38%,#e4d5b7 65%,#a8977a 100%);border-radius:3px 2px 2px/4px 3px 2px 2px;width:13px;height:36px;bottom:9px;left:16px;box-shadow:inset 0 3px 3px #ffd79659}.lib-candle-wax:before{content:"";background:#e2d3b6;border-radius:2px 2px 3px 3px;width:4px;height:11px;position:absolute;top:1px;right:-1.5px}.lib-candle-wax:after{content:"";background:#f7ecd6;border-radius:50%;height:3px;position:absolute;top:-1.5px;left:1px;right:1px}.lib-wick{background:#1e140c;border-radius:1px;width:1.4px;height:5px;bottom:44px;left:21.8px}.lib-flame-sway{transform-origin:50% 100%;width:9px;height:19px;animation:3.1s ease-in-out infinite lib-flame-sway;bottom:47px;left:18px}.lib-flame{transform-origin:50% 100%;background:radial-gradient(50% 60% at 50% 72%,#fff 0%,#fff1c9 25%,#ffd796 45%,#e9a54a 70%,#e98c3c00 100%);border-radius:50%/62% 62% 38% 38%;width:100%;height:100%;animation:1.37s linear infinite lib-flame-flicker;position:relative;box-shadow:0 0 8px 2px #ffc87873,0 0 18px 6px #ffb45a29}.lib-flame:before{content:"";background:radial-gradient(circle,#6e8cff73,#0000 70%);border-radius:50%;height:26%;position:absolute;bottom:4%;left:25%;right:25%}.lib-mug{width:48px;height:90px;bottom:4px;left:194px}.lib-mug-art{width:48px;position:absolute;bottom:0;left:0}.lib-steam{width:40px;height:50px;position:absolute;bottom:40px;left:4px}.lib-wisp{opacity:0;filter:blur(.8px);width:9px;height:34px;animation:lib-steam var(--steam-duration) ease-out var(--steam-delay) infinite;position:absolute;bottom:0}.lib-wisp svg{width:100%;height:100%;display:block}.lib-candle-cast{background:radial-gradient(50% 55% at 62% 60%,#ffc8781a,#0000 70%);width:280px;height:150px;animation:2.9s linear -1s infinite lib-halo;bottom:-10px;left:-20px}.lib-scrap{clip-path:polygon(0 8%,96% 0,100% 88%,6% 100%);background:repeating-linear-gradient(#0000 0 4px,#46301e29 4px 5px) 4px 4px/18px 12px no-repeat,linear-gradient(160deg,#e6d7ba,#cbba9a);width:30px;height:20px;bottom:-8px;left:108px;transform:rotate(-6deg)}@keyframes lib-parallax{0%{transform:translate(-1.5px)}to{transform:translate(1.5px)}}@keyframes lib-cloud{0%{transform:translate(-12%)}to{transform:translate(12%)}}@keyframes lib-rain-far{0%{transform:rotate(10deg)translateY(0)}to{transform:rotate(10deg)translateY(360px)}}@keyframes lib-rain-near{0%{transform:rotate(12deg)translateY(0)}to{transform:rotate(12deg)translateY(360px)}}@keyframes lib-drop{0%,45%{opacity:0;transform:translateY(-20px)}50%{opacity:.8;transform:translateY(0)}62%{transform:translateY(6vh)}to{opacity:0;transform:translateY(60vh)}}@keyframes lib-curtain{0%{transform:skew(.8deg)}to{transform:skew(-.6deg)translate(1px)}}@keyframes lib-shadow-breathe{0%{opacity:.94}to{opacity:1}}@keyframes lib-lamp-breathe{0%{opacity:.88}to{opacity:1}}@keyframes lib-mote-drift{0%{transform:translate(0)}to{transform:translate(var(--mote-dx), var(--mote-dy))}}@keyframes lib-mote-fade{0%,20%{opacity:0}to{opacity:var(--mote-opacity)}}@keyframes lib-steam{0%{opacity:0;transform:translateY(8px)scaleY(.6)}25%{opacity:.38}70%{opacity:.16}to{transform:translate(var(--steam-sway), -24px) scaleY(1.2);opacity:0}}@keyframes lib-spin{to{transform:rotate(360deg)}}@keyframes lib-flame-flicker{0%{opacity:1;transform:scale(1)}9%{transform:scale(.92,1.06)translate(-.3px)}17%{transform:scale(1.04,.96)}26%{opacity:.92;transform:scale(.96,1.1)translate(.4px)}38%{transform:scale(1.02,.98)}47%{opacity:1;transform:scale(.9,1.04)translate(-.2px)}59%{transform:scale(1.05,.95)}70%{opacity:.9;transform:scale(.95,1.08)translate(.3px)}83%{transform:scaleX(1.01)}91%{transform:scale(.94,1.05)}to{opacity:1;transform:scale(1)}}@keyframes lib-flame-sway{0%{transform:rotate(0)}25%{transform:rotate(2deg)translate(.5px)}50%{transform:rotate(-1.5deg)translate(-.4px)}75%{transform:rotate(1deg)}to{transform:rotate(0)}}@keyframes lib-halo{0%{opacity:.88}13%{opacity:1}22%{opacity:.84}37%{opacity:.97}51%{opacity:.9}64%{opacity:1}78%{opacity:.86}90%{opacity:.95}to{opacity:.88}}@media (width<=1599px){#app.theme-library{--lib-prop-scale:1;--lib-lamp-x:calc(50% - 596px)}.lib-shelf-right{display:none}}@media (width<=1339px){#app.theme-library{--lib-prop-scale:.85;--lib-lamp-x:calc(50% - 562px)}}@media (width<=1239px){#app.theme-library{--lib-prop-scale:.9;--lib-lamp-x:calc(50% - 470px)}.lib-lamp-group,.lib-note{display:none}}@media (width<=1179px){.lib-window,.lib-sill,.lib-rod,.lib-curtain,.lib-moonbeam,.lib-mug{display:none}.lib-shelf-right{display:block;left:calc(50% + 330px);right:2.5%}}@media (width<=1069px){.lib-candle{display:none}}@media (width<=999px){.lib-props-left{display:none}}@media (width<=959px){.lib-props-right{display:none}}@media (width<=899px){#app.theme-library{--lib-desk-top:calc(100% - 130px)}.lib-shelf{animation:none}.lib-shelf-left{border-inline-width:0;top:0;left:0;right:0}.lib-shelf-left .lib-cornice,.lib-blotter,.lib-shelf-right,.lib-owl,.lib-ladder,.lib-props-left{display:none}.lib-props-right{width:244px;display:block;bottom:14px;left:50%;transform:translate(-50%)}.lib-candle,.lib-mug{display:block}.lib-lamp-light:before{background:radial-gradient(80% 45% at 50% 100%,#e9b86c29,#0000 70%),radial-gradient(70% 40% at 50% 45%,#e9b86c14,#0000 70%)}.lib-dust-lamp{width:80%;height:200px;top:auto;bottom:40px;left:10%}}@media (prefers-reduced-motion:reduce){.lib-scene,.lib-scene *,.lib-scene :before,.lib-scene :after{animation:none!important}.lib-drop,.lib-wisp{display:none}}#app.theme-fireplace{--bg:#0e0907;--bg-highlight:#1a110c;--card-bg:#160f0b;--surface-elevated:#1d140f;--border:#4f3626;--text-primary:#f3e4cf;--text-secondary:#cdb79b;--accent-bg:#e39a4f;--accent-bg-hover:#f0ae66;--accent-bg-pressed:#c47e3a;--secondary-bg:#261a13;--secondary-bg-hover:#31221a;--disabled:#6e5a48;--shadow-elevated:0 30px 80px #0009;--app-bg:linear-gradient(180deg, #120b08 0%, #1a110c 55%, #120b08 100%);--card-surface:linear-gradient(180deg, #ffdcb40b, transparent 18%), radial-gradient(ellipse 85% 75% at 0% 72%, #e8964c1a, transparent 70%), radial-gradient(ellipse 60% 50% at 50% 115%, #00000047, transparent 70%), repeating-linear-gradient(178deg, #ffd2a004 0 1px, transparent 1px 4px), repeating-linear-gradient(92deg, #0000000d 0 1px, transparent 1px 9px), linear-gradient(170deg, #26190f 0%, #1c130d 55%, #150e09 100%);--timer-glow:0 0 22px #f0aa6438, 0 1px 0 #0009;--btn-primary-bg:linear-gradient(180deg, #f2b472 0%, #e39a4f 48%, #c47e3a 100%);--btn-primary-text:#24140a;--btn-hover-gradient:linear-gradient(45deg, #d88b44 0%, #f2b472 46%, #fac88e 50%, #f2b472 54%, #d88b44 100%);--btn-hover-shadow:0 6px 18px #00000073, 0 0 0 1px #f0aa6440;--btn-secondary-bg:linear-gradient(180deg, #3e271b 0%, #2e1d14 100%);--btn-secondary-text:var(--text-primary);--btn-secondary-border:1px solid #d6965a52;--btn-secondary-hover-bg:#45301f;--btn-secondary-hover-overlay:linear-gradient(45deg, #3e271b 0%, #4e3322 50%, #3e271b 100%);--btn-ghost-bg:transparent;--btn-ghost-text:var(--text-primary);--btn-ghost-border:1px solid #d6965a52;--btn-ghost-hover-bg:#f0aa640f;--btn-ghost-hover-overlay:linear-gradient(45deg, #f0aa640a 0%, #f0aa641c 50%, #f0aa640a 100%);--btn-quiet-hover-shadow:0 6px 16px #00000073, 0 0 0 1px #f0aa6429;--settings-button-hover:#31221a;--theme-card-hover:#31221a;--switch-off:#4e3a2c;--fp-floor:calc(50% + 214px);--fp-hearth-right:calc(50% + 378px);--fp-scale:1;--fp-heat:1;overflow:clip}#app.theme-fireplace[data-session=break]{--fp-heat:.82;--timer-glow:0 0 20px #e6be9629, 0 1px 0 #0009}body:has(#app.theme-fireplace){background:#0e0907}#app.theme-fireplace #center{position:relative}.theme-fireplace #card{isolation:isolate;border-color:#c98c527a;position:relative;box-shadow:inset 0 0 0 1px #140b06bf,inset 0 0 0 2px #ecb07024,inset 2px 0 0 1px #ffbe781f,inset 0 2px 0 1px #ffdcb414,inset 0 0 60px #0000006b,inset 0 -30px 50px -30px #00000073,0 2px #00000080,0 22px 50px #0000008c,0 50px 100px #0006,-30px 12px 90px #e3783224}.theme-fireplace #card:before{--inlay:#d6a06457;content:"";z-index:-1;pointer-events:none;background: radial-gradient(circle, var(--inlay) 0 2px, transparent 2.5px) top -3px center / 7px 7px no-repeat, linear-gradient(90deg, transparent, var(--inlay) 30%, transparent 46%, transparent 54%, var(--inlay) 70%, transparent) top center / 90px 1px no-repeat,  radial-gradient(circle, var(--inlay) 0 2px, transparent 2.5px) bottom -3px center / 7px 7px no-repeat, linear-gradient(90deg, transparent, var(--inlay) 30%, transparent 46%, transparent 54%, var(--inlay) 70%, transparent) bottom center / 90px 1px no-repeat,  radial-gradient(circle, var(--inlay) 0 1.8px, transparent 2.3px) left 7px bottom 7px / 6px 6px no-repeat, radial-gradient(circle, var(--inlay) 0 1.8px, transparent 2.3px) right 7px bottom 7px / 6px 6px no-repeat;border:1px solid #d6a06421;border-radius:14px;position:absolute;inset:12px;box-shadow:0 0 0 1px #00000047,inset 0 0 0 1px #00000038}.theme-fireplace #card:after{content:"";z-index:-1;border-radius:inherit;pointer-events:none;opacity:calc(.85 * var(--fp-heat));background:linear-gradient(105deg,#0000 35%,#ffc48209 47%,#ffc4820d 50%,#ffc48209 53%,#0000 65%) 0 0/300% 100% no-repeat,linear-gradient(90deg,#f096461c,#f0964606 35%,#0000 60%),linear-gradient(90deg,#ffbe7873,#0000 2px) 0/100% 100% no-repeat;animation:6.3s ease-in-out infinite fp-light,16s ease-in-out infinite alternate fp-card-shimmer;position:absolute;inset:0}@keyframes fp-card-shimmer{0%{background-position:100% 0,0 0,0}to{background-position:0 0,0 0,0}}.theme-fireplace #title{color:#d8c2a4;letter-spacing:.04em}.theme-fireplace #session-label{color:#f0b477;background:#e39a4f1a;border-color:#e39a4f80;transition:color 1.5s,border-color 1.5s,background 1.5s}#app.theme-fireplace[data-session=break] #session-label{color:#dcc8ac;background:#cdb79b14;border-color:#cdb79b73}.theme-fireplace #timer{transition:color .8s,text-shadow 2.5s}#app.theme-fireplace[data-overtime=true] #timer{color:#ffd9ae;text-shadow:0 0 26px #ffb46e59,0 1px #0009}.theme-fireplace #controls #main-control{box-shadow:inset 0 1px #ffebc873,0 2px 6px #0006}.theme-fireplace #controls #main-control:hover{box-shadow:inset 0 1px 0 #ffebc873, var(--btn-hover-shadow)}.theme-fireplace #controls #reset{box-shadow:inset 0 1px #ffd7aa12,0 2px 6px #00000059}.theme-fireplace #controls #main-control:active,.theme-fireplace #controls #reset:active,.theme-fireplace #controls #skip:active{filter:brightness(.92);box-shadow:inset 0 1px 2px #00000059,0 1px 2px #00000080}.theme-fireplace #settings-button,.theme-fireplace #hub-button,.theme-fireplace #help-button,.theme-fireplace #float-button{background:linear-gradient(#2c1e15,#1e140e);border-color:#d6965a6b;box-shadow:inset 0 1px #ffd7aa12,0 4px 12px #0006}.theme-fireplace #help-button,.theme-fireplace #float-button{color:#e6cfaf}.theme-fireplace #settings-button:hover,.theme-fireplace #hub-button:hover,.theme-fireplace #help-button:hover,.theme-fireplace #float-button:hover{background:linear-gradient(#382619,#251910);box-shadow:inset 0 1px #ffd7aa1a,0 0 0 1px #f0aa6433,0 6px 16px #00000073}.theme-fireplace #settings-panel,.theme-fireplace #help-dialog,.theme-fireplace #float-dialog{box-shadow:var(--shadow-elevated), inset 0 1px 0 #ffd7aa0f;background:linear-gradient(#21160f,#170f0b);border-color:#d6965a5c}.fp-scene{pointer-events:none;z-index:0;position:absolute;inset:0;overflow:hidden}.fp-scene>*{position:absolute}.fp-scene svg{width:100%;height:100%;display:block}.fp-wall{background:radial-gradient(30% 22% at 22% 30%,#ffdcb406,#0000 70%),radial-gradient(26% 30% at 70% 60%,#0000001f,#0000 70%),radial-gradient(40% 26% at 50% 14%,#ffdcb405,#0000 70%),repeating-linear-gradient(90deg,#ffdcb403 0 1px,#0000 1px 7px),linear-gradient(#1a110c,#26180f);inset:0}.fp-crown{background:linear-gradient(#120b07 0 14px,#2e1d13 14px 18px,#1e140d 18px 22px,#00000059 22px 26px);height:26px;top:0;left:0;right:0}.fp-wallwash{left:calc(100% - var(--fp-hearth-right) - 180px * var(--fp-scale) - 520px);top:calc(var(--fp-floor) - 620px);width:1040px;height:640px;opacity:var(--fp-heat);background:radial-gradient(50% 55% at 50% 95%,#ff964624,#0000 70%);animation:5.7s ease-in-out infinite fp-light}.fp-wainscot{left:0;right:0;top:calc(var(--fp-floor) - 170px);background:repeating-linear-gradient(90deg,#0000 0 18px,#00000059 18px 20px,#ffc88c0d 20px 21px,#0000 21px 140px),linear-gradient(#24170f,#1c120c);border-top:6px solid #2e1d13;height:170px;box-shadow:0 -1px #ffc88c14}.fp-floor{left:0;right:0;top:var(--fp-floor);background:linear-gradient(#00000080,#0000 32%),repeating-linear-gradient(90deg,#0000004d 0 2px,#0000 2px 120px),repeating-linear-gradient(90deg,#0000 0 60px,#ffc88c08 60px 61px,#0000 61px 180px),linear-gradient(#3a2417,#2a1a10);bottom:0}.fp-baseboard{left:0;right:0;top:calc(var(--fp-floor) - 12px);background:linear-gradient(#2e1d13,#1a110b);height:14px;box-shadow:0 2px 4px #00000080,inset 0 1px #ffc88c14}.fp-moonpool{left:calc(50% + 380px);top:calc(var(--fp-floor) + 6px);background:radial-gradient(50% 45% at 50% 20%,#96afd71a,#0000 75%);width:320px;height:120px}.fp-rug{left:50%;top:calc(var(--fp-floor) + 30px);opacity:.88;background:linear-gradient(90deg,#ffa05024,#0000 45%),radial-gradient(#0000 52%,#d6a06440 53% 55%,#0000 56%),radial-gradient(#0000 66%,#00000040 67% 70%,#0000 71%),repeating-radial-gradient(#5a2a1e 0 10px,#4e2419 10px 22px),#4e2419;border-radius:50%;width:min(980px,82%);height:150px;transform:translate(-50%);box-shadow:0 0 0 3px #d6a0641f,0 8px 22px #00000080}.fp-window{border:10px solid #2a1b12;border-radius:95px 95px 4px 4px;width:190px;height:34%;top:11%;left:calc(50% + 430px);overflow:hidden;box-shadow:inset 0 0 0 1px #ffc88c14,0 10px 30px #00000073}.fp-window>*{position:absolute;inset:0}.fp-night{background:radial-gradient(circle at 70% 24%,#d7deec99 0 7px,#cdd6e624 8px 26px,#0000 46px),radial-gradient(120% 40% at 50% 100%,#28344a99,#0000 70%),linear-gradient(#0b1220,#131c2e 70%,#0e1420)}.fp-rain{filter:blur(.4px);inset:-20% -10%;transform:rotate(9deg)}.fp-streak{background:linear-gradient(180deg, transparent calc(100% - var(--len)), #c8d6e8e6);opacity:0;width:1px;height:100%;animation:1s linear infinite fp-streak;position:absolute;top:0}.fp-glass{background:linear-gradient(90deg,#ff964614,#0000 45%),linear-gradient(130deg,#ffffff0d,#0000 40%)}.fp-beads{opacity:.9}.fp-drop{width:var(--size);height:calc(var(--size) * 1.3);opacity:.92;background:radial-gradient(circle at 36% 30%,#ffffff80 0 9%,#fff0 20%),radial-gradient(at 64% 76%,#ffbe8229 0 16%,#ffbe8200 38%),radial-gradient(60% 55% at 50% 58%,#aabedc1a 0 40%,#0a0f1a73 85%,#0a0f1a99 100%);border-radius:46% 46% 50% 50%/62% 62% 40% 40%;position:absolute;transform:translate(-50%);box-shadow:0 .6px #c8d6e829}.fp-trail{transform-origin:50% 100%;opacity:0;background:linear-gradient(#becde200,#becde233);border-radius:1px;width:2px;position:absolute;transform:translate(-50%)scaleY(0)}.fp-mullions{background:linear-gradient(#2a1b12,#2a1b12) 50%/6px 100% no-repeat,linear-gradient(#2a1b12,#2a1b12) 50% 55%/100% 6px no-repeat}.fp-sill{background:linear-gradient(#4a2f1e,#2e1d13);border-radius:2px;width:214px;height:12px;top:calc(45% + 18px);left:calc(50% + 418px);box-shadow:0 6px 12px #0006}.fp-rod{background:linear-gradient(#c29a5e,#7a5a2e);border-radius:3px;width:318px;height:6px;top:calc(11% - 22px);left:calc(50% + 376px);box-shadow:0 3px 6px #00000073}.fp-rod:before,.fp-rod:after{content:"";background:radial-gradient(circle at 35% 35%,#e2bc78,#8a6430);border-radius:50%;width:14px;height:14px;position:absolute;top:-4px}.fp-rod:before{left:-10px}.fp-rod:after{right:-10px}.fp-curtain{top:calc(11% - 18px);bottom:calc(100% - var(--fp-floor) + 4px);clip-path:polygon(6% 0,94% 0,92% 40%,100% 88%,104% 100%,-4% 100%,2% 88%,8% 40%);background:radial-gradient(circle at 50% 3px,#b58a4acc 0 1.6px,#0000 2.2px) 0 0/15px 8px repeat-x,repeating-linear-gradient(90deg,#0000004d 0 2px,#0000001f 2px 5px,#ffbe8c0f 5px 7px,#0000 7px 15px),linear-gradient(#4e1f1a 0%,#3b1613 60%,#30120e 100%);width:62px}.fp-curtain-left{filter:drop-shadow(6px 0 8px #0006);left:calc(50% + 392px);box-shadow:inset 8px 0 16px #f096461a}.fp-curtain-right{filter:drop-shadow(-4px 0 8px #00000073);left:calc(50% + 616px)}.fp-hearth-area{right:var(--fp-hearth-right);bottom:calc(100% - var(--fp-floor) - 18px);width:360px;height:560px;transform:scale(var(--fp-scale));transform-origin:100% 100%}.fp-hearth-area>*{position:absolute}.fp-breast{background:linear-gradient(0deg,#ff964614,#0000 260px),linear-gradient(90deg,#00000059,#0000 12% 88%,#00000059),linear-gradient(#1c130d,#2a1b12);height:2000px;bottom:250px;left:28px;right:28px}.fp-mantel-items{width:320px;height:110px;bottom:276px;left:20px}.fp-mantel-items>svg{position:absolute;inset:0}.fp-candle-flame{transform-origin:50% 100%;background:radial-gradient(at 50% 75%,#fff4d0 0%,#ffcb6a 45%,#f0823299 75%,#0000 80%);border-radius:50% 50% 45% 45%/65% 65% 35% 35%;width:6px;height:13px;margin-left:-3px;animation:2.6s ease-in-out infinite alternate fp-candle;position:absolute;box-shadow:0 0 10px 3px #ffb45a59}.fp-candle-flame-a{top:35px;left:266.5px}.fp-candle-flame-b{animation-duration:3.1s;animation-delay:-1.2s;top:57px;left:288px}.fp-mantel{background:linear-gradient(#ffd29638 0 1px,#ffc88c14 1px 4px,#0000 9px),linear-gradient(0deg,#ff964638,#0000 7px),radial-gradient(45% 160% at 50% 110%,#ff964624,#0000 70%),repeating-linear-gradient(#0000 0 5px,#00000012 5px 6px,#0000 6px 11px),repeating-linear-gradient(90deg,#0000000f 0 1px,#0000 1px 47px,#ffdcaa08 47px 48px,#0000 48px 97px),linear-gradient(#5e3b26,#3c2417);border-radius:3px;height:26px;bottom:252px;left:0;right:0;box-shadow:inset 0 -2px #00000059,inset 0 -3px #ffa05a14,0 4px 3px #0006,0 12px 18px #00000080}.fp-surround{background:linear-gradient(90deg,#0000004d,#0000 15% 85%,#00000059),repeating-linear-gradient(0deg,#0000 0 37px,#00000047 37px 39px),repeating-linear-gradient(90deg,#0000 0 62px,#0000002e 62px 64px),linear-gradient(#5e4e40,#4a3c31);border-radius:3px 3px 0 0;height:230px;bottom:24px;left:22px;right:22px;box-shadow:inset 0 1px #ffdcb41f}.fp-surround>*{position:absolute}.fp-surround:before{content:"";border-radius:inherit;opacity:var(--fp-heat);background:radial-gradient(60% 70% at 50% 100%,#ff964661,#0000 70%);animation:5.1s ease-in-out infinite fp-light;position:absolute;inset:0}.fp-opening{border-radius:110px 110px 0 0/46px 46px 0 0;width:220px;height:162px;margin-left:-110px;bottom:0;left:50%;overflow:hidden;box-shadow:inset 0 0 0 4px #2a1c14,inset 0 10px 24px #000000b3}.fp-opening>*{position:absolute}.fp-back{background:repeating-linear-gradient(0deg,#0000 0 15px,#00000059 15px 16px),repeating-linear-gradient(90deg,#0000 0 30px,#0003 30px 31px),linear-gradient(#0a0604,#2a130b 70%,#5a240e);inset:0}.fp-fireglow{height:120%;opacity:var(--fp-heat);background:radial-gradient(50% 50% at 50% 70%,#ff963c99,#dc5a1e38 50%,#0000 72%);animation:3.7s ease-in-out infinite fp-light;bottom:-30%;left:-20%;right:-20%}.fp-flames{mix-blend-mode:screen;height:140px;bottom:0;left:0;right:0}.fp-flames svg{filter:blur(.5px)}.fp-flames-front{opacity:.85}.fp-f{transform-box:fill-box;transform-origin:50% 100%;animation:fp-lick var(--d) ease-in-out var(--dl) infinite, fp-flare calc(var(--d) * 1.7) ease-in-out var(--dl) infinite}.fp-logs{width:210px;height:57px;margin-left:-105px;bottom:4px;left:50%}.fp-log-glow{animation:3.3s ease-in-out infinite fp-embers}.fp-embers{background:radial-gradient(circle at 16% 62%,#ffb05a 0 2px,#0000 3px),radial-gradient(circle at 30% 40%,#ffd27a 0 1.5px,#0000 2.5px),radial-gradient(circle at 46% 58%,#ffc46e 0 2px,#0000 3px),radial-gradient(circle at 60% 36%,#ffb05a 0 1.5px,#0000 2.5px),radial-gradient(circle at 74% 64%,#ff9e4a 0 2px,#0000 3px),radial-gradient(circle at 86% 46%,#ffc46e 0 1.5px,#0000 2.5px),radial-gradient(at 50% 60%,#ff8c37e6,#aa3714a6 55%,#0000 74%);border-radius:50%;width:190px;height:26px;margin-left:-95px;animation:4.4s ease-in-out infinite fp-embers;bottom:0;left:50%}.fp-coals{background:radial-gradient(9px 5px at 12% 80%,#1a0e08 0 90%,#0000),radial-gradient(7px 4px at 30% 90%,#24130a 0 90%,#0000),radial-gradient(10px 5px at 52% 85%,#1a0e08 0 90%,#0000),radial-gradient(8px 4px at 72% 90%,#24130a 0 90%,#0000),radial-gradient(9px 5px at 90% 80%,#1a0e08 0 90%,#0000);width:200px;height:10px;margin-left:-100px;bottom:0;left:50%}.fp-sparks{height:0;bottom:70px;left:25%;right:25%}.fp-spark{opacity:0;background:#ffd18a;border-radius:50%;width:3px;height:3px;position:absolute;bottom:0;box-shadow:0 0 6px 1px #ffaa50d9}.fp-hearth{background:radial-gradient(40% 120% at 50% 0,#ffa0504d,#0000 70%),repeating-linear-gradient(90deg,#0000 0 78px,#00000040 78px 80px),linear-gradient(#6a584a,#463a30);border-radius:2px;height:26px;bottom:0;left:-12px;right:-12px;box-shadow:0 6px 14px #00000080,inset 0 1px #ffdcb426}.fp-tools{filter:drop-shadow(3px 5px 4px #0000008c);width:50px;height:125px;bottom:22px;left:-10px}.fp-chandelier{width:160px;height:calc(50% - 235px);margin-left:-80px;top:0;left:50%}.fp-chandelier>*{position:absolute}.fp-chandelier-glow{background:radial-gradient(30% 26% at 50% calc(100% - 128px),#ffbe781f,#0000 70%),radial-gradient(50% 60% at 50% 30%,#ffb46e0a,#0000 70%);animation:7.5s ease-in-out infinite alternate fp-chandelier-glow;inset:-40px -220px -90px}.fp-chandelier-sway{transform-origin:50% 0;animation:11s ease-in-out infinite alternate fp-chandelier-sway;inset:0}.fp-chandelier-sway>*{position:absolute}.fp-chandelier-sway:before{content:"";background:linear-gradient(90deg,#2a1d13,#5a3e24 50%,#2a1d13);border-radius:0 0 14px 14px;width:28px;height:8px;margin-left:-14px;position:absolute;top:20px;left:50%;box-shadow:0 2px 4px #0006}.fp-chain{background:repeating-linear-gradient(#4a3420 0 5px,#0000 5px 7px,#2e2015 7px 12px,#0000 12px 14px);border-radius:2px;width:4px;margin-left:-2px;top:27px;bottom:90px;left:50%;-webkit-mask-image:repeating-linear-gradient(#000 0 5px,#0009 5px 7px,#000 7px 12px,#0009 12px 14px);mask-image:repeating-linear-gradient(#000 0 5px,#0009 5px 7px,#000 7px 12px,#0009 12px 14px)}.fp-chandelier-art{filter:drop-shadow(0 6px 8px #00000073);height:92px;bottom:0;left:0;right:0}@keyframes fp-chandelier-sway{0%{transform:rotate(-.35deg)}to{transform:rotate(.35deg)}}@keyframes fp-chandelier-glow{0%{opacity:.88}to{opacity:1}}@media (height<=699px),(width<=899px){.fp-chandelier{display:none}}.fp-firelight{left:calc(100% - var(--fp-hearth-right) - 180px * var(--fp-scale) - 760px);top:calc(var(--fp-floor) - 100px - 640px);width:1520px;height:1280px;opacity:var(--fp-heat);background:radial-gradient(50% 50%,#ff964638,#f0823c17 38%,#0000 66%);animation:4.6s ease-in-out infinite fp-light}.fp-floorglow{left:calc(100% - var(--fp-hearth-right) - 180px * var(--fp-scale) - 330px);top:calc(var(--fp-floor) - 10px);width:660px;height:220px;opacity:var(--fp-heat);background:radial-gradient(50% 40% at 50% 10%,#ff964652,#0000 70%);animation:3.9s ease-in-out infinite fp-light}.fp-chair-shadow{left:calc(50% + 470px);bottom:calc(100% - var(--fp-floor) - 20px);filter:blur(6px);background:radial-gradient(50% 50% at 50% 60%,#00000073,#0000 75%);border-radius:50% 50% 10% 10%;width:260px;height:230px}.fp-armchair{left:calc(50% + 386px);bottom:calc(100% - var(--fp-floor) - 66px);filter:drop-shadow(0 12px 14px #00000080);width:270px;height:250px}.fp-books{left:calc(50% + 366px);bottom:calc(100% - var(--fp-floor) - 92px);filter:drop-shadow(0 6px 6px #00000073);width:76px;height:52px}.fp-table{left:calc(50% + 664px);bottom:calc(100% - var(--fp-floor) - 34px);filter:drop-shadow(0 8px 10px #00000073);width:112px;height:146px}.fp-steam{animation:4s ease-in-out infinite fp-steam}.fp-vignette{background:radial-gradient(75% 70% at 42% 55%,#0000 55%,#0503028c 100%),linear-gradient(90deg,#0000 70%,#05030233);inset:0}@keyframes fp-lick{0%{transform:scale(1)skew(0)}23%{transform:scale(.93,1.09)skew(-4deg)}47%{transform:scale(1.05,.9)skew(3deg)}72%{transform:scale(.97,1.05)skew(-2deg)}to{transform:scale(1)skew(0)}}@keyframes fp-flare{0%,to{opacity:.9}40%{opacity:1}70%{opacity:.8}}@keyframes fp-light{0%{opacity:calc(.92 * var(--fp-heat))}17%{opacity:calc(1 * var(--fp-heat))}31%{opacity:calc(.86 * var(--fp-heat))}52%{opacity:calc(.97 * var(--fp-heat))}68%{opacity:calc(.88 * var(--fp-heat))}85%{opacity:calc(1 * var(--fp-heat))}to{opacity:calc(.92 * var(--fp-heat))}}@keyframes fp-embers{0%,to{opacity:.78}50%{opacity:1}}@keyframes fp-candle{0%{transform:scale(1)skew(0)}50%{transform:scale(.92,1.08)skew(-4deg)}to{transform:scale(1.03,.95)skew(3deg)}}@keyframes fp-streak{0%{opacity:0;transform:translateY(-100%)}15%{opacity:var(--op)}80%{opacity:var(--op)}to{opacity:0;transform:translateY(15%)}}@keyframes fp-steam{0%,to{opacity:.25;transform:translateY(0)}50%{opacity:.6;transform:translateY(-2px)}}@media (width<=1599px){.fp-table{display:none}}@media (width<=1499px){#app.theme-fireplace{--fp-scale:.88}}@media (width<=1279px){#app.theme-fireplace{--fp-scale:.8}.fp-window,.fp-sill,.fp-rod,.fp-curtain,.fp-moonpool{display:none}}@media (width<=1179px){.fp-hearth-area{transform-origin:0 100%;left:max(-60px,50% - 659px);right:auto}.fp-armchair,.fp-chair-shadow,.fp-books{display:none}.fp-firelight{left:calc(max(-60px,50% - 659px) - 616px)}.fp-floorglow{left:calc(max(-60px,50% - 659px) - 186px)}.fp-wallwash{left:calc(max(-60px,50% - 659px) - 376px)}}@media (width<=899px){#app.theme-fireplace{--fp-floor:calc(100% - 22px);--fp-scale:.52}.fp-hearth-area{transform-origin:50% 100%;margin-left:-180px;left:50%;right:auto}.fp-wainscot,.fp-baseboard,.fp-rug,.fp-wallwash{display:none}.fp-firelight{top:calc(100% - 700px);left:calc(50% - 760px)}.fp-floorglow{left:calc(50% - 330px)}}@media (height<=500px) and (orientation:landscape){.fp-hearth-area{display:none}}@media (prefers-reduced-motion:reduce){.fp-scene,.fp-scene *,.fp-scene :before,.fp-scene :after,.theme-fireplace #card:after{animation:none!important}.fp-rain,.fp-sparks{display:none}}#app.theme-cafe{--bg:#1e140e;--bg-highlight:#2a1c14;--card-bg:#2a1b12;--surface-elevated:#33231a;--border:#c49c608c;--text-primary:#f6ecdc;--text-secondary:#d7c4a7;--accent-bg:#e8d3ae;--accent-bg-hover:#f2e1c2;--accent-bg-pressed:#d2b98e;--secondary-bg:#3a281d;--secondary-bg-hover:#463224;--disabled:#7a6550;--shadow-elevated:0 30px 70px #28180c73;--app-bg:#e6d9c2;--card-surface:linear-gradient(180deg, #ffeccd0f, transparent 20%), radial-gradient(ellipse 80% 80% at 100% 30%, #ffe4b417, transparent 70%), radial-gradient(ellipse 60% 50% at 50% 115%, #00000040, transparent 70%), repeating-linear-gradient(177deg, #ffdcaa04 0 1px, transparent 1px 5px), repeating-linear-gradient(91deg, #0000000b 0 1px, transparent 1px 11px), linear-gradient(165deg, #3b2618 0%, #2e1e14 55%, #24170f 100%);--timer-glow:0 1px 0 #00000080, 0 0 24px #ffe2b41f;--btn-primary-bg:linear-gradient(180deg, #f6e8cf 0%, #e8d3ae 55%, #d9bf93 100%);--btn-primary-text:#2a1a10;--btn-hover-gradient:linear-gradient(45deg, #dcc296 0%, #f4e4c6 46%, #fff3dc 50%, #f4e4c6 54%, #dcc296 100%);--btn-hover-shadow:0 6px 18px #140a0473, 0 0 0 1px #d6b07059;--btn-secondary-bg:linear-gradient(180deg, #4a3223 0%, #3a271b 100%);--btn-secondary-text:var(--text-primary);--btn-secondary-border:1px solid #cca4666b;--btn-secondary-hover-bg:#4f3727;--btn-secondary-hover-overlay:linear-gradient(45deg, #4a3223 0%, #5a3e2b 50%, #4a3223 100%);--btn-ghost-bg:transparent;--btn-ghost-text:var(--text-primary);--btn-ghost-border:1px solid #cca4666b;--btn-ghost-hover-bg:#e8d3ae0f;--btn-ghost-hover-overlay:linear-gradient(45deg, #e8d3ae0a 0%, #e8d3ae1c 50%, #e8d3ae0a 100%);--btn-quiet-hover-shadow:0 6px 16px #140a0473, 0 0 0 1px #d6b07033;--settings-button-hover:#463224;--theme-card-hover:#463224;--switch-off:#5a4434;--cf-floor:calc(50% + 236px);--cf-windows-left:calc(50% + 396px);--cf-bar-right:calc(50% + 372px);--cf-ws:1;--cf-hs:1;--cf-scale:min(var(--cf-ws), var(--cf-hs));--cf-sun:1;overflow:clip}#app.theme-cafe[data-session=break]{--cf-sun:.8}body:has(#app.theme-cafe){background:#e6d9c2}#app.theme-cafe #center{position:relative}.theme-cafe #card{isolation:isolate;border-color:#c9a26299;position:relative;box-shadow:inset 0 0 0 1px #1a0e07b3,inset 0 0 0 2px #ecc88c21,inset -2px 0 0 1px #ffe8be1a,inset 0 2px 0 1px #ffeccd12,inset 0 0 50px #0000004d,0 2px #1e100866,0 20px 44px #321e0e61,0 46px 90px #321e0e3d,14px 0 60px #ffecc82e}.theme-cafe #card:before{--inlay:#d6b0705c;content:"";z-index:-1;pointer-events:none;background:radial-gradient(circle, var(--inlay) 0 2px, transparent 2.5px) top -3px center / 7px 7px no-repeat, linear-gradient(90deg, transparent, var(--inlay) 30%, transparent 46%, transparent 54%, var(--inlay) 70%, transparent) top center / 90px 1px no-repeat, radial-gradient(circle, var(--inlay) 0 2px, transparent 2.5px) bottom -3px center / 7px 7px no-repeat, linear-gradient(90deg, transparent, var(--inlay) 30%, transparent 46%, transparent 54%, var(--inlay) 70%, transparent) bottom center / 90px 1px no-repeat;border:1px solid #d6b07026;border-radius:14px;position:absolute;inset:12px;box-shadow:0 0 0 1px #00000038}.theme-cafe #card:after{content:"";z-index:-1;border-radius:inherit;pointer-events:none;opacity:var(--cf-sun);background:linear-gradient(270deg,#ffe8be14,#0000 40%),linear-gradient(270deg,#ffecc866,#0000 2px);transition:opacity 3s;position:absolute;inset:0}.theme-cafe #title{color:#e2cfb0;letter-spacing:.04em}.theme-cafe #session-label{color:#e9cf9c;background:#d6b0701a;border-color:#d6b0708c;transition:color 1.5s,border-color 1.5s,background 1.5s}#app.theme-cafe[data-session=break] #session-label{color:#c8dcd2;background:#aac4ba1a;border-color:#aac4ba80}.theme-cafe #timer{transition:color .8s}#app.theme-cafe[data-overtime=true] #timer{color:#ffe6be}.theme-cafe #controls #main-control{box-shadow:inset 0 1px #fffcf0b3,0 2px 6px #140a0459}.theme-cafe #controls #main-control:hover{box-shadow:inset 0 1px 0 #fffcf0b3, var(--btn-hover-shadow)}.theme-cafe #controls #reset{box-shadow:inset 0 1px #ffe6be14,0 2px 6px #140a044d}.theme-cafe #controls #main-control:active,.theme-cafe #controls #reset:active,.theme-cafe #controls #skip:active{filter:brightness(.94);box-shadow:inset 0 1px 2px #0000004d,0 1px 2px #140a0466}.theme-cafe #settings-button,.theme-cafe #hub-button,.theme-cafe #help-button,.theme-cafe #float-button{background:linear-gradient(#3e2a1d,#2e1f15);border-color:#cca46673;box-shadow:inset 0 1px #ffe6be14,0 4px 12px #140a044d}.theme-cafe #help-button,.theme-cafe #float-button{color:#ebd8b8}.theme-cafe #settings-button:hover,.theme-cafe #hub-button:hover,.theme-cafe #help-button:hover,.theme-cafe #float-button:hover{background:linear-gradient(#4a3323,#36251a);box-shadow:inset 0 1px #ffe6be1a,0 0 0 1px #d6b0703d,0 6px 16px #140a0459}.theme-cafe #settings-panel,.theme-cafe #help-dialog,.theme-cafe #float-dialog{box-shadow:var(--shadow-elevated), inset 0 1px 0 #ffe6be0f;background:linear-gradient(#33231a,#261911);border-color:#cca4666b}.cf-scene{pointer-events:none;z-index:0;position:absolute;inset:0;overflow:hidden}.cf-scene>*{z-index:0;position:absolute}.cf-scene>.cf-bar,.cf-scene>.cf-windows{z-index:1}.cf-scene>.cf-pendants,.cf-scene>.cf-tableset{z-index:2}.cf-scene>.cf-fg-plant{z-index:3}.cf-scene>.cf-vignette{z-index:4}.cf-scene svg{width:100%;height:100%;display:block}.cf-wall{background:radial-gradient(ellipse 42% 60% at 84% 42%, rgba(255, 246, 226, calc(.6 * var(--cf-sun))), transparent 70%), radial-gradient(ellipse 34% 50% at 8% 50%, #6e503224, transparent 70%), radial-gradient(ellipse 30% 30% at 50% 30%, #fff4de2e, transparent 70%), repeating-radial-gradient(circle at 30% 40%, #96785004 0 2px, transparent 2px 7px), linear-gradient(180deg, #dccaa9 0%, #e6d6ba 45%, #e0cfb2 100%);transition:filter 3s;inset:0}#app.theme-cafe[data-session=break] .cf-wall{filter:brightness(.97)saturate(.95)}.cf-boiserie{--hi:#fffaf0cc;--lo:#82623e4d;top:118px;left:0;right:0;bottom:calc(100% - var(--cf-floor) + 150px * var(--cf-scale) + 30px);background:linear-gradient(90deg, transparent 26px, var(--lo) 26px 224px, transparent 224px) 50% 0 / 250px 1px repeat-x, linear-gradient(90deg, transparent 27px, var(--hi) 27px 223px, transparent 223px) 50% 1px / 250px 1px repeat-x, linear-gradient(90deg, transparent 27px, var(--lo) 27px 223px, transparent 223px) 50% calc(100% - 1px) / 250px 1px repeat-x, linear-gradient(90deg, transparent 26px, var(--hi) 26px 224px, transparent 224px) 50% 100% / 250px 1px repeat-x, linear-gradient(90deg, transparent 26px, var(--lo) 26px 27px, var(--hi) 27px 28px, #fff8e812 28px 222px, var(--lo) 222px 223px, var(--hi) 223px 224px, transparent 224px) 50% 50% / 250px 100% repeat-x}.cf-ceiling{background:#cdbb9c;height:76px;top:0;left:0;right:0;overflow:hidden}.cf-ceiling-plane{transform-origin:50% 100%;background:linear-gradient(90deg,#6e4c34 0 2px,#8c6648 2px 18px,#74503a 18px 21px,#0000 21px) 50% 0/240px 100% repeat-x,linear-gradient(#0000 70%,#5a3c1e40),#e3d6be;width:300%;height:900px;position:absolute;bottom:0;left:-100%;transform:perspective(560px)rotateX(-51deg)}.cf-cornice{background:linear-gradient(#b7a383 0 3px,#f1e8d6 3px 9px,#cdbb9a 9px 11px,#ede3d0 11px 18px,#c3b08e 18px 20px,#e9dec9 20px 27px,#b9a585 27px 29px,#785a3c33 29px 36px);height:36px;top:72px;left:0;right:0;box-shadow:0 6px 12px #6446281f}.cf-wainscot{left:0;right:0;top:calc(var(--cf-floor) - 150px * var(--cf-scale));bottom:calc(100% - var(--cf-floor));background:linear-gradient(90deg, transparent 14px, #0000004d 14px 15px, #ffd6aa14 15px 16px, #ffd6aa0d 16px 144px, #ffd6aa1f 144px 145px, #0000004d 145px 146px, transparent 146px) 50% 50% / 160px calc(100% - 34px) repeat-x, linear-gradient(90deg, #fff0d200 55%, rgba(255, 240, 210, calc(.1 * var(--cf-sun))) 90%), linear-gradient(180deg, #0003, transparent 18%), linear-gradient(180deg, #5a3a27, #3e2719);border-top:9px solid #5e3c28;box-shadow:0 -2px #ffeccd73,0 -3px #4a2f1f}.cf-floor{left:0;right:0;top:var(--cf-floor);background:#a87c52;bottom:0;overflow:hidden}.cf-floor-plane{transform-origin:50% 0;width:300%;height:590px;position:absolute;top:0;left:-100%;transform:perspective(560px)rotateX(66deg)}.cf-rug{opacity:.92;background:radial-gradient(13% 15%,#d2b07852 0 45%,#7846324d 46% 72%,#0000 73%),repeating-linear-gradient(45deg,#0000 0 26px,#e2c89c2e 26px 27.5px),repeating-linear-gradient(-45deg,#0000 0 26px,#e2c89c2e 26px 27.5px),radial-gradient(70% 70%,#9a6050,#8a5244);border-radius:4px;width:560px;height:330px;margin-left:-280px;position:absolute;top:40px;left:50%;box-shadow:inset 0 0 0 12px #5e3a30,inset 0 0 0 15px #d2b88e,inset 0 0 0 34px #74463a,inset 0 0 0 36px #c9ae84,0 0 0 3px #28140a33}.cf-floor:after{content:"";background:linear-gradient(180deg, #321e1066, transparent 16%), linear-gradient(180deg, transparent 45%, #321e104d), radial-gradient(ellipse 40% 80% at 86% 0%, rgba(255, 244, 220, calc(.22 * var(--cf-sun))), transparent 70%);position:absolute;inset:0}.cf-skirting{left:0;right:0;top:calc(var(--cf-floor) - 12px);background:linear-gradient(#4e3424,#2e1d13);height:14px;box-shadow:0 2px 4px #28180c59,inset 0 1px #ffdcb42e}.cf-bar{right:var(--cf-bar-right);bottom:calc(100% - var(--cf-floor) - 70px * var(--cf-scale));width:calc(580px * var(--cf-scale));height:calc(598px * var(--cf-scale));filter:drop-shadow(0 10px 12px #321e0e4d)}.cf-trail{transform-box:fill-box;transform-origin:50% 0;animation:14s ease-in-out infinite alternate cf-plant}.cf-machine-steam{width:22px;height:60px;position:absolute;top:50%;left:39%}.cf-machine-steam span{filter:blur(3px);opacity:0;background:radial-gradient(at 50% 70%,#ffffffbf,#0000 70%);border-radius:50%;width:9px;height:34px;animation:12s ease-out infinite cf-machine-steam;position:absolute;bottom:0;left:6px}.cf-machine-steam span+span{animation-delay:1.4s}.cf-windows{left:var(--cf-windows-left);bottom:calc(100% - var(--cf-floor));width:660px;height:700px;transform:scale(var(--cf-scale));transform-origin:0 100%}.cf-windows>*{position:absolute}.cf-rod{z-index:4;background:linear-gradient(#e9c98e,#a9813f 60%,#7c5c2a);border-radius:3px;width:704px;height:5px;top:38px;left:-22px;box-shadow:0 3px 4px #3c281440}.cf-rod:before,.cf-rod:after{content:"";background:radial-gradient(circle at 35% 35%,#f6dca6,#a9813f 60%,#6e4f22);border-radius:50%;width:13px;height:13px;position:absolute;top:-4px}.cf-rod:before{left:-10px}.cf-rod:after{right:-10px}.cf-window{z-index:2;width:190px;height:470px;top:60px}.cf-window>*{position:absolute}.cf-window-a{left:80px}.cf-window-b{left:370px}.cf-opening{box-sizing:border-box;background:#9fb6c4;border-top:14px solid #b8a486;border-bottom:0 solid #0000;border-left:16px solid #eadfc9;border-right:13px solid #a89474;border-radius:95px 95px 0 0;inset:0;overflow:hidden;box-shadow:0 0 0 6px #efe7d6,0 0 0 7px #96785680,0 0 0 11px #e6dac3,0 0 0 12px #96785659,0 12px 22px 8px #503c2824}.cf-keystone{clip-path:polygon(0 0,100% 0,78% 100%,22% 100%);filter:drop-shadow(0 2px 2px #503c284d);background:linear-gradient(#f4ede0,#dccfb6);width:24px;height:24px;margin-left:-12px;top:-22px;left:50%}.cf-view{position:absolute;inset:0;overflow:hidden}.cf-street{width:840px;height:630px;bottom:-120px;left:var(--street-x);position:absolute}.cf-window-a .cf-street{--street-x:-60px}.cf-window-b .cf-street{--street-x:-350px}.cf-outside-light{background:linear-gradient(#e1ecf424,#e1ecf40a 60%,#0000),linear-gradient(90deg,#fff4d61a,#0000 70%);position:absolute;inset:0}.cf-fanlight{height:96px;position:absolute;top:0;left:0;right:0}.cf-leaf{z-index:3;filter:drop-shadow(-3px 6px 5px #3c281433);width:42px;height:380px;animation:13s ease-in-out infinite alternate cf-leaf;top:92px}.cf-leaf-left{transform-origin:100%;left:-42px}.cf-leaf-right{transform-origin:0%;animation-duration:11s;animation-delay:-5s;right:-42px}.cf-curtain{z-index:3;transform-origin:50% 0;background:linear-gradient(90deg,#fff0,#ffffff47 50%,#fff0),repeating-linear-gradient(90deg,#f0e4cef5 0 8px,#d6c4a6f5 11px 14px,#f0e4cef5 18px 22px);width:88px;height:480px;animation:9s ease-in-out infinite alternate cf-curtain;top:34px;box-shadow:0 10px 16px #503c2829}.cf-curtain-left{clip-path:polygon(0 0,100% 0,96% 14%,46% 58%,54% 62%,82% 100%,0 100%);left:-26px}.cf-curtain-right{clip-path:polygon(0 0,100% 0,100% 100%,18% 100%,46% 62%,54% 58%,4% 14%);animation-duration:10.5s;animation-delay:-3s;left:600px}.cf-curtain:after{content:"";background:linear-gradient(#d9b26e,#9c7434);border-radius:3px;width:46%;height:6px;position:absolute;top:57%}.cf-curtain-left:after{left:6px}.cf-curtain-right:after{right:6px}.cf-sconce{z-index:4;width:46px;height:69px;top:70px;left:297px}.cf-sconce:after{content:"";background:radial-gradient(50% 50% at 50% 40%,#ffdca047,#0000 70%);height:120px;position:absolute;top:-40px;left:-50px;right:-50px}.cf-banquette{z-index:5;filter:drop-shadow(0 8px 10px #28180c4d);width:708px;height:230px;bottom:-2px;left:-24px}.cf-sunbeam{z-index:6;filter:blur(14px);width:1080px;height:900px;opacity:var(--cf-sun);mix-blend-mode:soft-light;background:linear-gradient(#fff4d657,#fff4d61f 55%,#0000 90%);transition:opacity 3s;top:70px;left:-480px}.cf-sunbeam-a{clip-path:polygon(566px 0,740px 0,330px 100%,156px 100%)}.cf-sunbeam-b{clip-path:polygon(856px 0,1030px 0,620px 100%,446px 100%)}.cf-sunpool{z-index:6;transform-origin:0 0;filter:blur(8px);width:190px;height:120px;opacity:var(--cf-sun);background:linear-gradient(#fff6de80,#fff0d229);transition:opacity 3s;animation:23s ease-in-out infinite alternate cf-sun;top:704px;transform:skew(-40deg)}.cf-sunpool-a{left:60px}.cf-sunpool-b{left:350px}.cf-dust{z-index:6;width:760px;height:520px;top:160px;left:-260px}.cf-dust span{width:var(--size);height:var(--size);opacity:0;background:#fffaece6;border-radius:50%;animation:linear infinite cf-mote;position:absolute}.cf-pendants{height:0;top:0;left:0;right:0}.cf-pendant{transform-origin:50% 0;width:52px;margin-left:-26px;animation:12s ease-in-out infinite alternate cf-pendant;position:absolute;top:66px}.cf-pendant:before{content:"";background:linear-gradient(90deg,#7a5a2e,#d6b077,#7e5e30);border-radius:0 0 10px 10px;width:20px;height:6px;position:absolute;top:0;left:16px}.cf-cord{width:2px;height:var(--cord);background:#3a2c22;margin:0 auto}.cf-shade{width:52px;height:61px;margin-top:-2px;position:relative}.cf-shade:after{content:"";background:radial-gradient(50% 45%,#ffdea04d,#0000 70%);position:absolute;inset:-30px -50px -50px}.cf-pendant-a{left:calc(100% - var(--cf-bar-right) - 320px * var(--cf-scale));--cord:70px}.cf-pendant-b{--cord:max(20px, calc(50vh - 420px));animation-delay:-4s;left:calc(50% - 210px)}.cf-pendant-c{--cord:max(20px, calc(50vh - 420px));animation-duration:14s;animation-delay:-8s;left:calc(50% + 210px)}.cf-tableset{left:calc(var(--cf-windows-left) + 60px * var(--cf-scale));bottom:calc(100% - var(--cf-floor) - 96px * var(--cf-scale));width:calc(560px * var(--cf-scale));height:calc(360px * var(--cf-scale));filter:drop-shadow(0 12px 14px #28180c4d)}.cf-steam{transform-origin:50% 100%;width:40px;height:25%;margin-left:-20px;position:absolute;top:14%;left:44.3%}.cf-steam span{filter:blur(3px);opacity:0;background:radial-gradient(50% 50% at 50% 60%,#ffffffbf,#0000 75%);border-radius:50%;width:9px;height:70%;animation:6.2s ease-out infinite cf-steam;position:absolute;bottom:0;left:15px}.cf-steam span:nth-child(2){animation-duration:7s;animation-delay:-2.1s;left:8px}.cf-steam span:nth-child(3){animation-duration:6.6s;animation-delay:-4.3s;left:22px}.cf-fg-plant{width:calc(300px * var(--cf-scale));height:calc(360px * var(--cf-scale));filter:blur(1.4px)brightness(.86)drop-shadow(0 10px 14px #1e12084d);bottom:-60px;left:-70px}.cf-fg-leaves{transform-box:fill-box;transform-origin:50% 100%;animation:15s ease-in-out infinite alternate cf-plant}.cf-vignette{background:radial-gradient(80% 75%,#0000 58%,#462c184d 100%),linear-gradient(90deg,#3c28161f,#0000 30%);inset:0}.cf-walker{animation:52s linear -12s infinite cf-walk}.cf-walker-b{animation-name:cf-walk-back;animation-duration:64s;animation-delay:-40s}.cf-leg{transform-box:fill-box;transform-origin:50% 0;animation:1.1s ease-in-out infinite alternate cf-stride}.cf-leg-b{animation-delay:-1.1s}.cf-cyclist{animation:37s linear -30s infinite cf-ride}.cf-canopy{transform-box:fill-box;transform-origin:50% 100%;animation:8s ease-in-out infinite alternate cf-canopy}.cf-clouds{animation:90s ease-in-out infinite alternate cf-clouds}@keyframes cf-walk{0%{transform:translate(-30px)}70%{transform:translate(680px)}to{transform:translate(680px)}}@keyframes cf-walk-back{0%{transform:translate(680px)}75%{transform:translate(-40px)}to{transform:translate(-40px)}}@keyframes cf-stride{0%{transform:rotate(14deg)}to{transform:rotate(-14deg)}}@keyframes cf-ride{0%{transform:translate(-80px)}28%{transform:translate(700px)}to{transform:translate(700px)}}@keyframes cf-canopy{0%{transform:rotate(-.8deg)}to{transform:rotate(1deg)}}@keyframes cf-clouds{0%{transform:translate(-30px)}to{transform:translate(40px)}}@keyframes cf-curtain{0%{transform:skew(0)}50%{transform:skew(.8deg)}to{transform:skew(-.5deg)}}@keyframes cf-leaf{0%{transform:scaleX(1)}to{transform:scaleX(1.06)}}@keyframes cf-pendant{0%{transform:rotate(-.4deg)}to{transform:rotate(.4deg)}}@keyframes cf-plant{0%{transform:rotate(-.7deg)}to{transform:rotate(.7deg)}}@keyframes cf-sun{0%{opacity:calc(.92 * var(--cf-sun))}50%{opacity:calc(1 * var(--cf-sun))}to{opacity:calc(.86 * var(--cf-sun))}}@keyframes cf-steam{0%{opacity:0;transform:translateY(0)scaleX(1)}20%{opacity:.55}60%{opacity:.3;transform:translateY(-34px)translate(4px)scaleX(1.5)}to{opacity:0;transform:translateY(-64px)translate(-3px)scaleX(2)}}@keyframes cf-machine-steam{0%,72%{opacity:0;transform:translateY(0)scale(1)}78%{opacity:.6}to{opacity:0;transform:translateY(-44px)scale(1.8)}}@keyframes cf-mote{0%{opacity:0;transform:translate(0)}20%{opacity:var(--op)}80%{opacity:var(--op)}to{transform:translate(var(--dx), var(--dy));opacity:0}}@media (width<=1599px){#app.theme-cafe{--cf-ws:.88}}@media (width<=1399px){#app.theme-cafe{--cf-ws:.8;--cf-windows-left:calc(50% + 380px);--cf-bar-right:calc(50% + 366px)}}@media (height<=959px){#app.theme-cafe{--cf-hs:.88}}@media (height<=839px){#app.theme-cafe{--cf-hs:.78}}@media (height<=719px){#app.theme-cafe{--cf-hs:.68}}@media (height<=799px){.cf-pendant-b,.cf-pendant-c{display:none}}@media (width<=1179px){#app.theme-cafe{--cf-ws:.72;--cf-windows-left:calc(50% + 366px);--cf-bar-right:calc(50% + 362px)}.cf-tableset,.cf-fg-plant,.cf-pendant-b,.cf-pendant-c{display:none}}@media (width<=899px){#app.theme-cafe{--cf-floor:calc(100% - 36px);--cf-ws:.56;--cf-windows-left:calc(50% - 185px)}.cf-bar,.cf-pendants,.cf-sunbeam,.cf-dust,.cf-rug{display:none}.cf-tableset{left:calc(50% - 200px * var(--cf-scale));display:block}}@media (height<=500px) and (orientation:landscape){.cf-bar,.cf-pendants,.cf-tableset,.cf-fg-plant,.cf-dust{display:none}}@media (prefers-reduced-motion:reduce){.cf-scene,.cf-scene *,.cf-scene :before,.cf-scene :after{animation:none!important}.cf-walker,.cf-cyclist,.cf-dust,.cf-steam,.cf-machine-steam{display:none}}
