@font-face{font-family:OpenDyslexic;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/opendyslexic-latin-400-normal-nUhe5EwG.woff2) format("woff2"),url(/assets/opendyslexic-latin-400-normal-Cv3YY6GF.woff) format("woff")}@font-face{font-family:OpenDyslexic;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/opendyslexic-latin-700-normal-Bnmt45Ln.woff2) format("woff2"),url(/assets/opendyslexic-latin-700-normal-wYUJcbXi.woff) format("woff")}.button{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-md) var(--space-xl);border:none;border-radius:var(--border-radius-sm);font-family:inherit;font-size:var(--text-button);font-weight:var(--font-medium);line-height:var(--line-height-normal);min-height:var(--button-min-height);cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast),background-color var(--transition-fast)}.button:hover:not(:disabled){transform:scale(1.02)}.button:active:not(:disabled){transform:scale(.98)}.button:disabled{opacity:.5;cursor:not-allowed}.button--primary{background-color:var(--color-button-primary);color:var(--color-button-text)}.button--primary:hover:not(:disabled){background-color:var(--color-button-hover);box-shadow:var(--shadow-md),var(--button-glow)}.button--secondary{background-color:transparent;color:var(--color-text-primary);border:2px solid var(--color-border)}.button--secondary:hover:not(:disabled){background-color:var(--color-bg-surface);border-color:var(--color-button-primary)}.button--full-width{width:100%}.input-wrapper{display:flex;flex-direction:column;gap:var(--space-sm);width:100%}.input-label{font-size:.9em;font-weight:var(--font-medium);color:var(--color-text-primary)}.input{width:100%;background-color:var(--color-bg-surface);border:2px solid var(--color-border);border-radius:var(--border-radius-sm);padding:var(--space-md);font-family:inherit;font-size:inherit;color:var(--color-text-primary);min-height:var(--button-min-height);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.input::placeholder{color:var(--color-text-secondary)}.input:focus{outline:none;border-color:var(--color-button-primary);box-shadow:0 0 0 3px var(--color-focus)}.input:disabled{opacity:.5;cursor:not-allowed}.input--textarea{resize:vertical;min-height:100px;line-height:var(--line-height-normal)}.input--error{border-color:var(--color-error)}.input--error:focus{border-color:var(--color-error);box-shadow:0 0 0 3px #b85c5c33}.input-error{font-size:.85em;color:var(--color-error);margin:0}.card{background-color:var(--color-bg-surface);border-radius:var(--border-radius-lg);padding:var(--space-xl) var(--space-lg);box-shadow:var(--shadow-card);transition:background-color var(--transition-normal),box-shadow var(--transition-normal)}.task-input-card{width:100%;max-width:var(--content-max-width)}.task-input-form{display:flex;flex-direction:column;gap:var(--space-lg)}.loading-state{display:flex;align-items:center;justify-content:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);min-height:52px}.loading-spinner{width:20px;height:20px;border:2px solid var(--color-border);border-top-color:var(--color-button-primary);border-radius:50%;animation:spin 1s linear infinite}.loading-text{font-size:1em;color:var(--color-text-secondary);animation:fade-text 1.5s ease-in-out infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fade-text{0%,to{opacity:.7}50%{opacity:1}}@media(prefers-reduced-motion:reduce){.loading-spinner{animation:none;border-top-color:var(--color-button-primary);opacity:.7}.loading-text{animation:none}}.step-display{width:100%;max-width:var(--content-max-width);display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--space-3xl) var(--space-lg)}.step-display--complete{padding:var(--space-2xl) var(--space-lg)}.task-description{font-size:.85em;color:var(--color-text-secondary);margin-bottom:var(--space-xl)}.step-content{width:100%;min-height:120px;display:flex;align-items:center;justify-content:center;outline:none}.step-text,.completion-message{font-size:var(--text-step);line-height:var(--line-height-loose);color:var(--color-text-primary);margin:0}.step-actions{display:flex;gap:var(--space-lg);margin-top:var(--space-2xl)}.step-actions--complete{flex-direction:column;width:100%;max-width:280px}.step-progress{margin-top:var(--space-xl);font-size:1em;color:var(--color-text-secondary)}.resting-state{display:flex;flex-direction:column;align-items:center;gap:var(--space-xl);margin-top:var(--space-xl)}.resting-message{font-size:1.1em;color:var(--color-text-secondary);margin:0}.resting-restart{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--border-radius-sm);color:var(--color-text-secondary);font-family:inherit;font-size:.9em;cursor:pointer;padding:var(--space-sm) var(--space-lg);transition:border-color var(--transition-fast),color var(--transition-fast),background-color var(--transition-fast)}.resting-restart:hover{color:var(--color-text-primary);border-color:var(--color-button-primary);background:var(--color-bg-primary)}@media(max-width:480px){.step-display{padding:var(--space-2xl) var(--space-md)}.step-actions{flex-direction:column;width:100%}.step-actions .button{width:100%}}.settings-button{position:fixed;top:var(--space-md);right:var(--space-md);width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:50%;color:var(--color-text-secondary);cursor:pointer;transition:color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.settings-button:hover{color:var(--color-text-primary);border-color:var(--color-button-primary)}.settings-button:focus{outline:none;box-shadow:0 0 0 3px var(--color-focus)}.settings-overlay{position:fixed;inset:0;background:#0000004d;display:flex;align-items:flex-start;justify-content:flex-end;padding:var(--space-md);z-index:1000}[data-theme=dark] .settings-overlay{background:#00000080}.settings-panel{background:var(--color-bg-surface);border-radius:var(--border-radius-md);box-shadow:var(--shadow-lg);width:100%;max-width:440px;max-height:calc(100vh - var(--space-xl));overflow-y:auto;overflow-x:hidden}.settings-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-lg);border-bottom:1px solid var(--color-border)}.settings-title{font-size:1.1em;font-weight:var(--font-semibold);margin:0}.settings-close{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--color-text-secondary);cursor:pointer;border-radius:var(--border-radius-sm);transition:color var(--transition-fast),background-color var(--transition-fast)}.settings-close:hover{color:var(--color-text-primary);background:var(--color-bg-primary)}.settings-section{padding:var(--space-lg)}.settings-section-title{font-size:.85em;font-weight:var(--font-medium);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin:0 0 var(--space-md) 0}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);margin-bottom:var(--space-md)}.settings-row:last-child{margin-bottom:0}.settings-label{font-size:.95em;color:var(--color-text-primary)}.settings-toggle-group{display:flex;background:var(--color-bg-primary);border-radius:var(--border-radius-sm);padding:2px}.settings-toggle{padding:var(--space-sm) var(--space-md);background:none;border:none;font-family:inherit;font-size:.9em;color:var(--color-text-secondary);cursor:pointer;border-radius:calc(var(--border-radius-sm) - 2px);transition:color var(--transition-fast),background-color var(--transition-fast);min-width:44px;white-space:nowrap}.settings-toggle:hover{color:var(--color-text-primary)}.settings-toggle--active{background:var(--color-bg-surface);color:var(--color-text-primary);box-shadow:var(--shadow-sm)}.settings-feedback-button{width:100%;padding:var(--space-md);background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--border-radius-sm);font-family:inherit;font-size:.95em;color:var(--color-text-secondary);cursor:pointer;transition:color var(--transition-fast),border-color var(--transition-fast),background-color var(--transition-fast)}.settings-feedback-button:hover{color:var(--color-text-primary);border-color:var(--color-button-primary);background:var(--color-bg-surface)}.settings-feedback-form{display:flex;flex-direction:column;gap:var(--space-md)}.settings-select{padding:var(--space-sm) var(--space-md);background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--border-radius-sm);font-family:inherit;font-size:.95em;color:var(--color-text-primary);cursor:pointer;min-width:140px}.settings-select:focus{outline:none;border-color:var(--color-button-primary);box-shadow:0 0 0 2px var(--color-focus)}.settings-textarea{width:100%;padding:var(--space-md);background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--border-radius-sm);font-family:inherit;font-size:.95em;color:var(--color-text-primary);resize:vertical;min-height:80px}.settings-textarea::placeholder{color:var(--color-text-secondary)}.settings-textarea:focus{outline:none;border-color:var(--color-button-primary);box-shadow:0 0 0 2px var(--color-focus)}.settings-feedback-actions{display:flex;justify-content:flex-end;gap:var(--space-sm)}.settings-feedback-cancel{padding:var(--space-sm) var(--space-md);background:none;border:1px solid var(--color-border);border-radius:var(--border-radius-sm);font-family:inherit;font-size:.9em;color:var(--color-text-secondary);cursor:pointer;transition:color var(--transition-fast),border-color var(--transition-fast)}.settings-feedback-cancel:hover{color:var(--color-text-primary);border-color:var(--color-text-secondary)}.settings-feedback-submit{padding:var(--space-sm) var(--space-lg);background:var(--color-button-primary);border:none;border-radius:var(--border-radius-sm);font-family:inherit;font-size:.9em;color:var(--color-button-text);cursor:pointer;transition:background-color var(--transition-fast),opacity var(--transition-fast)}.settings-feedback-submit:hover:not(:disabled){background:var(--color-button-primary-hover)}.settings-feedback-submit:disabled{opacity:.6;cursor:not-allowed}.settings-branding{text-align:center;font-size:.75em;color:var(--color-text-secondary);opacity:.6;padding-top:var(--space-lg);margin-top:var(--space-md);border-top:1px solid var(--color-border)}.settings-branding-link{color:var(--color-text-secondary);text-decoration:none;transition:color var(--transition-fast)}.settings-branding-link:hover{color:var(--color-text-primary);text-decoration:underline}@media(max-width:480px){.settings-overlay{padding:0;align-items:flex-end}.settings-panel{max-width:100%;max-height:85vh;border-radius:var(--border-radius-md) var(--border-radius-md) 0 0}.settings-header{position:sticky;top:0;background:var(--color-bg-surface);z-index:1}.settings-row{flex-direction:column;align-items:stretch;gap:var(--space-sm)}.settings-toggle-group{width:100%;display:flex}.settings-toggle-group--font{flex-direction:column}.settings-toggle{flex:1}.settings-select{width:100%}.settings-branding{padding-bottom:var(--space-lg)}}.history-button{position:fixed;top:var(--space-md);right:calc(var(--space-md) + 52px);width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:50%;color:var(--color-text-secondary);cursor:pointer;transition:color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.history-button:hover{color:var(--color-text-primary);border-color:var(--color-button-primary)}.history-button:focus{outline:none;box-shadow:0 0 0 3px var(--color-focus)}.history-overlay{position:fixed;inset:0;background:#0000004d;display:flex;align-items:flex-start;justify-content:flex-end;padding:var(--space-md);z-index:1000}[data-theme=dark] .history-overlay{background:#00000080}.history-panel{background:var(--color-bg-surface);border-radius:var(--border-radius-md);box-shadow:var(--shadow-lg);width:100%;max-width:480px;max-height:calc(100vh - var(--space-xl));overflow-y:auto;overflow-x:hidden}.history-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-lg);border-bottom:1px solid var(--color-border);position:sticky;top:0;background:var(--color-bg-surface)}.history-title{font-size:1.1em;font-weight:var(--font-semibold);margin:0}.history-close{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--color-text-secondary);cursor:pointer;border-radius:var(--border-radius-sm);transition:color var(--transition-fast),background-color var(--transition-fast)}.history-close:hover{color:var(--color-text-primary);background:var(--color-bg-primary)}.history-content{padding:var(--space-lg)}.history-loading,.history-empty{color:var(--color-text-secondary);text-align:center;padding:var(--space-xl)}.history-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-md)}.history-item{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-md);padding:var(--space-md);background:var(--color-bg-primary);border-radius:var(--border-radius-sm);border:1px solid var(--color-border)}.history-item-main{flex:1;min-width:0}.history-task-text{margin:0 0 var(--space-sm) 0;font-size:.95em;color:var(--color-text-primary);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.history-meta{display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap}.history-status{font-size:.8em;padding:2px 8px;border-radius:var(--border-radius-sm);background:var(--color-bg-surface)}.history-status--completed{background:#4caf5026;color:#4caf50}[data-theme=dark] .history-status--completed{background:#4caf5033;color:#81c784}.history-status--paused{background:#ffc10726;color:#f57c00}[data-theme=dark] .history-status--paused{background:#ffc10733;color:#ffb74d}.history-status--active{background:#2196f326;color:#1976d2}[data-theme=dark] .history-status--active{background:#2196f333;color:#64b5f6}.history-status--abandoned{background:var(--color-bg-surface);color:var(--color-text-secondary)}.history-date{font-size:.8em;color:var(--color-text-secondary)}.history-resume{flex-shrink:0;padding:var(--space-sm) var(--space-md);background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--border-radius-sm);color:var(--color-text-secondary);font-family:inherit;font-size:.85em;cursor:pointer;transition:border-color var(--transition-fast),color var(--transition-fast),background-color var(--transition-fast)}.history-resume:hover{color:var(--color-text-primary);border-color:var(--color-button-primary);background:var(--color-bg-primary)}.history-resume:focus{outline:none;box-shadow:0 0 0 3px var(--color-focus)}@media(max-width:480px){.history-button{right:calc(var(--space-md) + 48px)}.history-overlay{padding:0;align-items:flex-end}.history-panel{max-width:100%;max-height:80vh;border-radius:var(--border-radius-md) var(--border-radius-md) 0 0}.history-item{flex-direction:column;gap:var(--space-sm)}.history-resume{align-self:flex-start}}.login{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--space-lg)}.login-card{width:100%;max-width:400px;background:var(--color-bg-surface);border-radius:var(--radius-lg);padding:var(--space-2xl);box-shadow:var(--shadow-md);text-align:center}.login-title{font-size:var(--text-2xl);color:var(--color-text-primary);margin-bottom:var(--space-sm)}.login-subtitle{font-size:var(--text-md);color:var(--color-text-secondary);margin-bottom:var(--space-xl)}.login-message{font-size:var(--text-lg);color:var(--color-text-primary);margin-bottom:var(--space-md)}.login-hint{font-size:var(--text-sm);color:var(--color-text-secondary);margin-bottom:var(--space-xl)}.login-form{display:flex;flex-direction:column;gap:var(--space-lg);text-align:left}.login-privacy{font-size:var(--text-sm);color:var(--color-text-secondary);margin-top:var(--space-lg)}.login-demo-notice{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-md);margin-bottom:var(--space-lg);font-size:var(--text-sm);color:var(--color-text-secondary)}.admin-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;padding:var(--space-md);z-index:2000}.admin-panel{background:var(--color-bg-surface);border-radius:var(--border-radius-md);box-shadow:var(--shadow-lg);width:100%;max-width:700px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.admin-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-lg);border-bottom:1px solid var(--color-border)}.admin-title{font-size:1.2em;font-weight:var(--font-semibold);margin:0}.admin-close{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--color-text-secondary);cursor:pointer;border-radius:var(--border-radius-sm);transition:color var(--transition-fast),background-color var(--transition-fast)}.admin-close:hover{color:var(--color-text-primary);background:var(--color-bg-primary)}.admin-tabs{display:flex;border-bottom:1px solid var(--color-border)}.admin-tab{flex:1;padding:var(--space-md);background:none;border:none;font-family:inherit;font-size:.95em;color:var(--color-text-secondary);cursor:pointer;transition:color var(--transition-fast),background-color var(--transition-fast)}.admin-tab:hover{background:var(--color-bg-primary)}.admin-tab--active{color:var(--color-text-primary);border-bottom:2px solid var(--color-button-primary);margin-bottom:-1px}.admin-content{flex:1;overflow-y:auto;padding:var(--space-lg)}.admin-loading,.admin-empty{text-align:center;color:var(--color-text-secondary);padding:var(--space-2xl)}.admin-item{background:var(--color-bg-primary);border-radius:var(--border-radius-sm);padding:var(--space-md);margin-bottom:var(--space-md)}.admin-item:last-child{margin-bottom:0}.admin-item--safety{border-left:3px solid var(--color-warning, #f59e0b)}.admin-item-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-sm)}.admin-badge{font-size:.75em;font-weight:var(--font-medium);text-transform:uppercase;padding:var(--space-xs) var(--space-sm);border-radius:var(--border-radius-sm);background:var(--color-bg-surface)}.admin-badge--bug{background:#fef2f2;color:#dc2626}.admin-badge--suggestion{background:#f0fdf4;color:#16a34a}.admin-badge--safety_concern{background:#fffbeb;color:#d97706}.admin-badge--other{background:#f3f4f6;color:#6b7280}.admin-badge--safety{background:#fef3c7;color:#92400e}[data-theme=dark] .admin-badge--bug{background:#450a0a;color:#fca5a5}[data-theme=dark] .admin-badge--suggestion{background:#052e16;color:#86efac}[data-theme=dark] .admin-badge--safety_concern{background:#451a03;color:#fcd34d}[data-theme=dark] .admin-badge--other{background:#1f2937;color:#9ca3af}[data-theme=dark] .admin-badge--safety{background:#451a03;color:#fcd34d}.admin-date{font-size:.8em;color:var(--color-text-secondary)}.admin-item-message{margin:0 0 var(--space-sm) 0;line-height:var(--line-height-normal)}.admin-item-message--small{font-size:.9em;color:var(--color-text-secondary)}.admin-item-task{font-size:.85em;color:var(--color-text-secondary);font-style:italic;margin:0}.admin-summary{margin-bottom:var(--space-xl);padding-bottom:var(--space-lg);border-bottom:1px solid var(--color-border)}.admin-summary-title{font-size:.9em;font-weight:var(--font-medium);color:var(--color-text-secondary);margin:0 0 var(--space-md) 0}.admin-summary-grid{display:flex;flex-wrap:wrap;gap:var(--space-md)}.admin-summary-item{display:flex;flex-direction:column;align-items:center;padding:var(--space-md);background:var(--color-bg-primary);border-radius:var(--border-radius-sm);min-width:80px}.admin-summary-count{font-size:1.5em;font-weight:var(--font-semibold);color:var(--color-text-primary)}.admin-summary-label{font-size:.75em;color:var(--color-text-secondary);text-transform:capitalize}.admin-footer{padding:var(--space-md) var(--space-lg);border-top:1px solid var(--color-border);display:flex;justify-content:flex-end}.admin-refresh{padding:var(--space-sm) var(--space-lg);background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--border-radius-sm);font-family:inherit;font-size:.9em;color:var(--color-text-secondary);cursor:pointer;transition:color var(--transition-fast),border-color var(--transition-fast)}.admin-refresh:hover{color:var(--color-text-primary);border-color:var(--color-button-primary)}:root{--color-bg-primary: #F5F5F0;--color-bg-surface: #FFFFFF;--color-text-primary: #3A3A3A;--color-text-secondary: #6B6B6B;--color-button-primary: #6B9080;--color-button-hover: #5A7F6F;--color-button-text: #FFFFFF;--color-accent: #8B7E74;--color-border: #E0E0D8;--color-error: #B85C5C;--color-success: #6B9080;--color-focus: rgba(107, 144, 128, .3);--font-family-default: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-family-dyslexic: "OpenDyslexic", sans-serif;--text-xs: 14px;--text-sm: 16px;--text-base: 18px;--text-lg: 20px;--text-xl: 24px;--text-step: 1.5em;--text-heading: 1.2em;--text-button: 1em;--line-height-tight: 1.3;--line-height-normal: 1.6;--line-height-loose: 1.8;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px;--space-3xl: 64px;--content-max-width: 600px;--button-min-height: 48px;--border-radius-sm: 8px;--border-radius-md: 16px;--border-radius-lg: 24px;--transition-fast: .2s ease-out;--transition-normal: .4s ease-in-out;--transition-slow: .6s ease-in-out;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .04);--shadow-md: 0 4px 16px rgba(0, 0, 0, .06), 0 8px 32px rgba(0, 0, 0, .04);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .08), 0 16px 48px rgba(0, 0, 0, .06);--shadow-card: 0 4px 20px rgba(0, 0, 0, .06), 0 12px 40px rgba(0, 0, 0, .04);--button-glow: 0 0 20px rgba(107, 144, 128, .3)}[data-theme=dark]{--color-bg-primary: #1A1A1A;--color-bg-surface: #2A2A2A;--color-text-primary: #E8E8E8;--color-text-secondary: #A8A8A8;--color-button-primary: #4A6B5C;--color-button-hover: #3A5B4C;--color-button-text: #FFFFFF;--color-accent: #8B7E74;--color-border: #3A3A3A;--color-error: #B85C5C;--color-success: #4A6B5C;--color-focus: rgba(74, 107, 92, .4);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .2);--shadow-md: 0 4px 16px rgba(0, 0, 0, .2), 0 8px 32px rgba(0, 0, 0, .15);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .25), 0 16px 48px rgba(0, 0, 0, .2);--shadow-card: 0 4px 20px rgba(0, 0, 0, .2), 0 12px 40px rgba(0, 0, 0, .15);--button-glow: 0 0 20px rgba(74, 107, 92, .4)}[data-text-size=small]{--text-base: 16px}[data-text-size=medium]{--text-base: 18px}[data-text-size=large]{--text-base: 20px}[data-text-size=extra-large]{--text-base: 24px}[data-font=dyslexic]{--font-family-default: "OpenDyslexic", sans-serif}[data-font=dyslexic] body,[data-font=dyslexic] input,[data-font=dyslexic] textarea,[data-font=dyslexic] button{font-family:OpenDyslexic,sans-serif!important}@media(prefers-reduced-motion:reduce){:root{--transition-fast: .01ms;--transition-normal: .01ms;--transition-slow: .01ms}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:var(--text-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-family-default);font-weight:var(--font-normal);line-height:var(--line-height-normal);color:var(--color-text-primary);background-color:var(--color-bg-primary);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100' height='100' viewBox='0 0 100 100'%3E%3Cg fill-opacity='0.015'%3E%3Cpath fill='%23000' d='M11 18c3.866 0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7zm48 25c3.866 0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7zm-43-7c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zm63 31c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zM34 90c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zm56-76c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zM12 86c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm28-65c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm23-11c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm-6 60c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm29 22c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zM32 63c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm57-13c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm-9-21c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2zM60 91c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2zM35 41c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2z'/%3E%3C/g%3E%3C/svg%3E");min-height:100vh;overflow-x:hidden;transition:background-color var(--transition-normal),color var(--transition-normal)}[data-theme=dark] body{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100' height='100' viewBox='0 0 100 100'%3E%3Cg fill-opacity='0.02'%3E%3Cpath fill='%23fff' d='M11 18c3.866 0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7zm48 25c3.866 0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7zm-43-7c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zm63 31c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zM34 90c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zm56-76c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zM12 86c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm28-65c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm23-11c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm-6 60c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm29 22c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zM32 63c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm57-13c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm-9-21c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2zM60 91c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2zM35 41c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2z'/%3E%3C/g%3E%3C/svg%3E")}h1,h2,h3,h4,h5,h6{font-weight:var(--font-semibold);line-height:var(--line-height-tight);color:var(--color-text-primary)}p{margin-bottom:var(--space-md)}a{color:var(--color-button-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-button-hover)}:focus{outline:3px solid var(--color-focus);outline-offset:2px}:focus:not(:focus-visible){outline:none}:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.skip-link{position:absolute;top:-100px;left:0;background:var(--color-button-primary);color:var(--color-button-text);padding:var(--space-sm) var(--space-md);z-index:100;transition:top var(--transition-fast);clip:rect(0,0,0,0)}.skip-link:focus{top:0;clip:auto}.container{width:100%;max-width:var(--content-max-width);margin:0 auto;padding:var(--space-md)}.centered{display:flex;flex-direction:column;align-items:center;justify-content:center}.full-height{min-height:100vh}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes gentle-pulse{0%,to{opacity:.6}50%{opacity:1}}.loading{animation:gentle-pulse 2s ease-in-out infinite}.step-enter{opacity:0;transform:translateY(20px)}.step-enter-active{opacity:1;transform:translateY(0);transition:opacity var(--transition-normal),transform var(--transition-normal)}.step-exit{opacity:1;transform:translateY(0)}.step-exit-active{opacity:0;transform:translateY(-20px);transition:opacity var(--transition-normal),transform var(--transition-normal)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.step-enter,.step-enter-active,.step-exit,.step-exit-active{transition:none;transform:none}}.app{min-height:100vh;display:flex;flex-direction:column}.app-main{flex:1;display:flex;flex-direction:column;align-items:center;padding:var(--space-2xl) var(--space-md);padding-top:calc(var(--space-2xl) + 44px)}@media(max-width:480px){.app-main{padding-top:calc(var(--space-xl) + 50px)}}.app-header{text-align:center;margin-bottom:var(--space-2xl)}.app-title{font-size:1.5em;font-weight:var(--font-semibold);color:var(--color-text-primary);margin:0 0 var(--space-xs) 0}.app-tagline{font-size:.9em;color:var(--color-text-secondary);margin:0}.app-content{width:100%;max-width:var(--content-max-width);display:flex;flex-direction:column;align-items:center}.loading-container{padding:var(--space-3xl) var(--space-lg);text-align:center}.loading-text{font-size:var(--text-step);color:var(--color-text-secondary)}.stuck-message{text-align:center;padding:var(--space-2xl) var(--space-lg);max-width:var(--content-max-width)}.stuck-text{font-size:var(--text-step);line-height:var(--line-height-loose);color:var(--color-text-primary);margin:0 0 var(--space-md) 0}.stuck-subtext{font-size:1em;color:var(--color-text-secondary);margin:0 0 var(--space-2xl) 0}.stuck-actions{display:flex;flex-direction:column;gap:var(--space-md);max-width:280px;margin:0 auto}.stuck-actions .button{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-md) var(--space-xl);border:none;border-radius:var(--border-radius-sm);font-family:inherit;font-size:var(--text-button);font-weight:var(--font-medium);line-height:var(--line-height-normal);min-height:var(--button-min-height);cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast),background-color var(--transition-fast);width:100%}.stuck-actions .button:hover{transform:scale(1.02)}.stuck-actions .button:active{transform:scale(.98)}.stuck-actions .button--primary{background-color:var(--color-button-primary);color:var(--color-button-text)}.stuck-actions .button--primary:hover{background-color:var(--color-button-hover);box-shadow:var(--shadow-md)}.stuck-actions .button--secondary{background-color:transparent;color:var(--color-text-primary);border:2px solid var(--color-border)}.stuck-actions .button--secondary:hover{background-color:var(--color-bg-surface);border-color:var(--color-button-primary)}.app-top-buttons{position:fixed;top:var(--space-md);left:var(--space-md);right:var(--space-md);display:flex;justify-content:space-between;z-index:10;pointer-events:none}.app-top-buttons>*{pointer-events:auto}.sign-out-button{background:transparent;border:none;color:var(--color-text-secondary);font-size:var(--text-sm);cursor:pointer;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);transition:color var(--transition-fast),background-color var(--transition-fast)}.sign-out-button:hover{color:var(--color-text-primary);background-color:var(--color-bg-surface)}.safety-message{text-align:center;padding:var(--space-2xl) var(--space-lg);max-width:var(--content-max-width)}.safety-text{font-size:var(--text-lg);line-height:var(--line-height-loose);color:var(--color-text-primary);margin:0 0 var(--space-2xl) 0;white-space:pre-line}.safety-actions{display:flex;justify-content:center}.error-message{text-align:center;padding:var(--space-2xl) var(--space-lg);max-width:var(--content-max-width)}.error-text{font-size:var(--text-md);line-height:var(--line-height-normal);color:var(--color-text-secondary);margin:0 0 var(--space-xl) 0}.error-actions{display:flex;justify-content:center}.beta-label{position:fixed;bottom:var(--space-md);left:50%;transform:translate(-50%);font-size:.75em;color:var(--color-text-secondary);opacity:.6;padding:var(--space-xs) var(--space-md);background:var(--color-bg-surface);border-radius:var(--border-radius-sm);pointer-events:none;-webkit-user-select:none;user-select:none;z-index:1}@media(max-width:480px){.beta-label{display:none}}
