:root{color-scheme:light;--color-primary: #6366f1;--color-primary-hover: #4f46e5;--color-primary-active: #4338ca;--color-primary-glow: rgba(99, 102, 241, .25);--color-success: #10b981;--color-success-light: #34d399;--color-success-glow: rgba(16, 185, 129, .2);--color-danger: #ef4444;--color-danger-light: #f87171;--color-danger-glow: rgba(239, 68, 68, .2);--color-warning: #f59e0b;--color-warning-light: #fbbf24;--color-neutral: #64748b;--color-neutral-light: #94a3b8;--color-accent-cyan: #06b6d4;--color-accent-violet: #8b5cf6;--color-accent-amber: #f59e0b;--color-accent-rose: #f43f5e;--bg-primary: #ffffff;--bg-secondary: #f8fafc;--bg-tertiary: #f1f5f9;--bg-hover: #f9fafb;--bg-elevated: #ffffff;--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #94a3b8;--text-inverse: #ffffff;--border-primary: #e2e8f0;--border-secondary: #cbd5e1;--border-focus: #6366f1;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4rem;--radius-xs: 2px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 24px;--radius-full: 9999px;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .05);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .1), 0 1px 2px rgba(0, 0, 0, .06);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--shadow-glow: 0 0 20px rgba(99, 102, 241, .15);--shadow-glow-success: 0 0 20px rgba(16, 185, 129, .15);--shadow-glow-danger: 0 0 20px rgba(239, 68, 68, .15);--font-family-primary: "Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-family-mono: "JetBrains Mono", "SF Mono", "Monaco", "Consolas", monospace;--font-family-display: "Outfit", sans-serif;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--text-6xl: 3.75rem;--font-light: 300;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--font-extrabold: 800;--leading-none: 1;--leading-tight: 1.25;--leading-snug: 1.375;--leading-normal: 1.5;--leading-relaxed: 1.625;--tracking-tighter: -.05em;--tracking-tight: -.025em;--tracking-normal: 0;--tracking-wide: .025em;--tracking-wider: .05em;--tracking-widest: .1em;--transition-fast: .1s ease-out;--transition-normal: .2s ease-out;--transition-slow: .3s ease-out;--transition-bounce: .5s cubic-bezier(.34, 1.56, .64, 1);--z-base: 0;--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070;--z-toast: 1080;--card-bg: #ffffff;--card-border: #e5e7eb;--card-shadow: 0 1px 3px rgba(0, 0, 0, .08);--input-bg: #ffffff;--input-border: #d1d5db;--input-focus-border: #6366f1;--page-bg: #f3f4f6}[data-theme=dark]{color-scheme:dark;--color-primary: #818cf8;--color-primary-hover: #6366f1;--color-primary-active: #4f46e5;--color-primary-glow: rgba(129, 140, 248, .25);--color-success: #34d399;--color-success-light: #6ee7b7;--color-success-glow: rgba(52, 211, 153, .2);--color-danger: #f87171;--color-danger-light: #fca5a5;--color-danger-glow: rgba(248, 113, 113, .2);--color-warning: #fbbf24;--color-warning-light: #fcd34d;--color-neutral: #94a3b8;--color-neutral-light: #cbd5e1;--color-accent-cyan: #22d3ee;--color-accent-violet: #a78bfa;--color-accent-amber: #fbbf24;--color-accent-rose: #fb7185;--bg-primary: #111827;--bg-secondary: #0d1117;--bg-tertiary: #1e293b;--bg-hover: #1e3a5f;--bg-elevated: #1a2332;--text-primary: #e2e8f0;--text-secondary: #94a3b8;--text-muted: #64748b;--text-inverse: #0f172a;--border-primary: #1e293b;--border-secondary: #334155;--border-focus: #818cf8;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .3);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .4), 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .4), 0 2px 4px -1px rgba(0, 0, 0, .3);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .4), 0 4px 6px -2px rgba(0, 0, 0, .3);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .4), 0 10px 10px -5px rgba(0, 0, 0, .3);--shadow-glow: 0 0 20px rgba(129, 140, 248, .15);--shadow-glow-success: 0 0 20px rgba(52, 211, 153, .15);--shadow-glow-danger: 0 0 20px rgba(248, 113, 113, .15);--card-bg: #111827;--card-border: #1e293b;--card-shadow: 0 1px 3px rgba(0, 0, 0, .3);--input-bg: #1a2332;--input-border: #334155;--input-focus-border: #818cf8;--page-bg: #0d1117}@media(prefers-color-scheme:dark){html:not([data-theme]){color-scheme:dark;--bg-primary: #111827;--bg-secondary: #0d1117;--text-primary: #e2e8f0;--text-secondary: #94a3b8}}html[data-theme]{transition:background-color .3s ease,color .3s ease}html[data-theme] body,html[data-theme] .container,html[data-theme] .header,html[data-theme] .predictions-panel,html[data-theme] .murph-header,html[data-theme] .wheel-page{transition:background-color .3s ease,color .3s ease,border-color .3s ease}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{font-size:16px;scroll-behavior:smooth}body{margin:0;font-family:var(--font-family-primary);font-weight:var(--font-normal);background-color:var(--bg-secondary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:var(--leading-normal);text-rendering:optimizeLegibility;font-feature-settings:"kern" 1,"liga" 1}.mono,[data-mono],.price,.metric-value,.stat-value{font-family:var(--font-family-mono);font-feature-settings:"tnum" 1,"kern" 1}code,pre,kbd,samp{font-family:var(--font-family-mono);font-size:.9em}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}:focus:not(:focus-visible){outline:none}::selection{background-color:var(--color-primary);color:var(--text-inverse)}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.page-enter{animation:fadeIn .2s ease-out}@view-transition{navigation:auto}::view-transition-old(root){animation:fadeIn .15s ease-out reverse}::view-transition-new(root){animation:fadeIn .15s ease-out}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:var(--bg-tertiary);border:1px solid var(--border-secondary);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:1rem;cursor:pointer;transition:var(--transition-fast);flex-shrink:0}.theme-toggle:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--color-primary)}.theme-toggle:active{transform:rotate(30deg) scale(.9)}.action-btn{display:inline-flex;align-items:center;padding:var(--spacing-sm) var(--spacing-md);color:#fff;border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-sm);font-weight:500;transition:var(--transition-normal)}.action-btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-md);filter:brightness(1.1)}.action-btn:active{transform:translateY(0);filter:brightness(.95)}.action-btn--danger{background-color:var(--color-danger)}.action-btn--success{background-color:var(--color-success)}.action-btn--primary{background-color:var(--color-primary)}.action-btn--neutral{background-color:var(--text-secondary)}.preset-btn{padding:var(--spacing-xs) var(--spacing-sm);background-color:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-secondary);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-xs);transition:var(--transition-fast)}.preset-btn:hover{background-color:var(--bg-hover);border-color:var(--color-primary);color:var(--color-primary)}.nav-button-logout{display:inline-flex;align-items:center;padding:var(--spacing-sm) var(--spacing-lg);background-color:var(--color-danger);color:#fff;text-decoration:none;border-radius:var(--radius-md);font-weight:600;font-size:var(--text-sm);border:none;cursor:pointer;transition:var(--transition-normal)}.nav-button-logout:hover{background-color:var(--color-danger-light);transform:translateY(-1px);box-shadow:var(--shadow-md)}.nav-button-logout:active{transform:translateY(0)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-bold{font-weight:700}.font-semibold{font-weight:600}.font-medium{font-weight:500}.font-normal{font-weight:400}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-muted{color:var(--text-muted)}.text-success{color:var(--color-success)}.text-danger{color:var(--color-danger)}.text-warning{color:var(--color-warning)}.bg-primary{background-color:var(--bg-primary)}.bg-secondary{background-color:var(--bg-secondary)}.bg-tertiary{background-color:var(--bg-tertiary)}.border-primary{border-color:var(--border-primary)}.border-secondary{border-color:var(--border-secondary)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}@media(max-width:640px){:root{--spacing-lg: 1rem;--spacing-xl: 1.5rem;--spacing-2xl: 2rem}}@media(max-width:768px){:root{--text-4xl: 2rem;--text-3xl: 1.75rem;--text-2xl: 1.375rem}}.login-page{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);overflow:hidden}.login-page:before{content:"";position:absolute;inset:-50%;background:radial-gradient(circle at 30% 50%,var(--color-primary-glow) 0%,transparent 50%),radial-gradient(circle at 70% 50%,var(--color-success-glow) 0%,transparent 50%);animation:loginGlow 20s ease-in-out infinite alternate;pointer-events:none}@keyframes loginGlow{0%{transform:translate(0) scale(1)}50%{transform:translate(-5%,5%) scale(1.1)}to{transform:translate(5%,-5%) scale(1)}}.login-box{text-align:center;position:relative;z-index:1}.login-box h1{font-size:2.5rem;font-weight:300;color:var(--text-primary);margin:0 0 .5rem;letter-spacing:-.03em;font-family:var(--font-family-display)}.login-subtitle{font-size:.875rem;color:var(--text-muted);margin:0 0 2.5rem;letter-spacing:.15em;text-transform:uppercase;font-family:var(--font-family-mono);font-weight:400}.login-error{color:var(--color-danger);font-size:.875rem;margin:0 0 1rem;padding:.75rem 1rem;background:var(--color-danger-glow);border-radius:8px;border:1px solid var(--color-danger)}.login-btn{display:inline-flex;align-items:center;justify-content:center;gap:.75rem;padding:.875rem 2rem;background:var(--color-primary);border:none;border-radius:10px;font-size:.9375rem;font-weight:500;color:#fff;cursor:pointer;transition:transform .2s,box-shadow .2s,background-color .2s}.login-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px var(--color-primary-glow);background:var(--color-primary-hover)}.login-btn:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 8px var(--color-primary-glow)}.login-btn:disabled{opacity:.7;cursor:not-allowed}.google-icon{width:18px;height:18px}.login-btn-loading,.login-spinner{width:18px;height:18px;border:2px solid var(--color-primary-glow);border-top-color:var(--color-primary);border-radius:50%;animation:spin .7s linear infinite}.login-spinner{width:32px;height:32px;border-color:var(--color-primary-glow);border-top-color:var(--color-primary)}@media(prefers-reduced-motion:reduce){.login-page:before{animation:none}}.error-boundary{display:flex;justify-content:center;align-items:center;min-height:400px;padding:20px}.error-content{background:var(--bg-primary);border-radius:var(--radius-lg);padding:30px;box-shadow:var(--shadow-md);text-align:center;max-width:500px;border:1px solid var(--border-primary)}.error-content h2{color:var(--color-danger);margin-bottom:15px;font-size:24px}.error-content p{color:var(--text-secondary);margin-bottom:20px;line-height:1.5}.error-actions{display:flex;gap:12px;justify-content:center;margin-top:20px}.error-retry,.error-reload,.error-retry-button{background:var(--color-primary);color:#fff;border:none;padding:10px 20px;border-radius:var(--radius-md);font-size:14px;font-weight:500;cursor:pointer;transition:var(--transition-normal)}.error-retry:hover,.error-retry-button:hover{background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.error-reload{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-secondary)}.error-reload:hover{background:var(--bg-hover);border-color:var(--border-primary);transform:translateY(-1px)}.error-details{margin-top:20px;text-align:left}.error-details summary{cursor:pointer;color:var(--text-secondary);font-weight:500;margin-bottom:10px}.error-details pre{background:var(--bg-tertiary);padding:15px;border-radius:var(--radius-sm);overflow-x:auto;font-size:12px;color:var(--text-primary);margin:10px 0}.shortcuts-overlay{position:fixed;inset:0;background:#0009;backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.shortcuts-modal{background:var(--bg-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);max-width:480px;width:90%;max-height:85vh;overflow:hidden;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.shortcuts-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg) var(--spacing-xl);border-bottom:1px solid var(--border-primary);background:var(--bg-secondary)}.shortcuts-header h2{margin:0;font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--text-primary)}.shortcuts-close{background:none;border:none;padding:var(--spacing-sm);cursor:pointer;color:var(--text-secondary);border-radius:var(--radius-md);transition:var(--transition-fast);display:flex;align-items:center;justify-content:center}.shortcuts-close:hover{background:var(--bg-tertiary);color:var(--text-primary)}.shortcuts-close:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.shortcuts-content{padding:var(--spacing-lg) var(--spacing-xl);overflow-y:auto;max-height:calc(85vh - 140px)}.shortcuts-section{margin-bottom:var(--spacing-xl)}.shortcuts-section:last-child{margin-bottom:0}.shortcuts-section h3{margin:0 0 var(--spacing-md) 0;font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.shortcuts-list{list-style:none;margin:0;padding:0}.shortcut-item{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) 0;border-bottom:1px solid var(--bg-tertiary)}.shortcut-item:last-child{border-bottom:none}.shortcut-key{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);font-family:var(--font-family-mono);font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--text-primary);box-shadow:0 1px 2px #0000000d}.shortcut-description{color:var(--text-secondary);font-size:var(--text-sm)}.shortcuts-footer{padding:var(--spacing-md) var(--spacing-xl);border-top:1px solid var(--border-primary);background:var(--bg-secondary);text-align:center}.shortcuts-footer p{margin:0;font-size:var(--text-xs);color:var(--text-muted)}.shortcuts-footer kbd{display:inline-flex;padding:2px 6px;background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-xs);font-family:var(--font-family-mono);font-size:var(--text-xs);margin:0 2px}@media(max-width:480px){.shortcuts-modal{max-height:90vh;border-radius:var(--radius-lg)}.shortcuts-header,.shortcuts-content,.shortcuts-footer{padding-left:var(--spacing-lg);padding-right:var(--spacing-lg)}.shortcuts-content{max-height:calc(90vh - 140px)}}@media(prefers-reduced-motion:reduce){.shortcuts-overlay,.shortcuts-modal{animation:none}}body{font-family:var(--font-family-primary);background-color:var(--bg-secondary);color:var(--text-primary);margin:0;padding:var(--spacing-lg)}.container{max-width:1200px;margin:0 auto;padding:var(--spacing-lg);background-color:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.header{display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid var(--border-primary);padding-bottom:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.header h1{margin:0;font-size:var(--text-2xl);font-weight:700;color:var(--text-primary)}.sub-header{margin:var(--spacing-xs) 0 0;color:var(--text-secondary);font-size:var(--text-sm)}.header-right{display:flex;align-items:center;gap:var(--spacing-md)}.login-button,.logout-button{display:inline-block;padding:var(--spacing-sm) var(--spacing-lg);background-color:var(--color-primary);color:#fff;text-decoration:none;border-radius:var(--radius-md);font-weight:600;border:none;cursor:pointer;transition:var(--transition-normal);font-size:var(--text-sm)}.login-button:hover,.logout-button:hover{background-color:var(--color-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.logout-button{background-color:var(--color-danger)}.logout-button:hover{background-color:var(--color-danger-light)}.error-message{color:var(--color-danger);background-color:var(--color-danger-glow);border:1px solid var(--color-danger);padding:var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);font-size:var(--text-sm)}.table-container{width:100%;overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}th,td{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-primary);text-align:left}th{background-color:var(--bg-tertiary);font-weight:600;color:var(--text-primary)}tbody tr:nth-of-type(2n){background-color:var(--bg-hover)}tbody tr:hover{background-color:var(--bg-tertiary)}strong{color:var(--color-success);font-weight:600}.cursor-info{color:var(--text-secondary)}.news-card{display:flex;align-items:center;gap:var(--spacing-md);margin-top:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-primary);border-radius:var(--radius-md);cursor:pointer;user-select:none;transition:var(--transition-normal)}.news-card:hover{background:var(--bg-hover);box-shadow:var(--shadow-sm)}.news-legend{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--spacing-xs);font-size:var(--text-xs)}.news-legend li{display:flex;align-items:center;white-space:nowrap}.news-legend span{display:inline-block;width:12px;height:12px;margin-right:var(--spacing-xs);border-radius:var(--radius-sm)}.news-chart canvas{width:90px!important;height:90px!important}.sent-block{display:flex;flex-direction:column;align-items:center;margin-left:auto}.sent-block h3{margin:0;font-size:var(--text-sm);color:var(--text-secondary)}.sent-value{font-size:var(--text-3xl);font-weight:700;color:var(--text-primary)}.chart-panel{flex:0 0 auto}.news-card{width:max-content;margin-top:var(--spacing-sm)}.slipstream-login{min-height:100vh;display:flex;align-items:center;justify-content:center;background-color:var(--bg-primary);font-family:var(--font-family-primary)}.slipstream-content{text-align:center;color:var(--text-primary);max-width:600px;padding:var(--spacing-xl)}.slipstream-title{font-size:var(--text-4xl);font-weight:300;margin:0 0 var(--spacing-2xl) 0;letter-spacing:-.02em;line-height:1.1;color:var(--text-primary)}.slipstream-enter-button{display:block;width:100%;max-width:400px;margin:0 auto;padding:var(--spacing-xl);background-color:var(--color-primary);color:#fff;text-decoration:none;border:none;border-radius:var(--radius-lg);font-size:var(--text-3xl);font-weight:600;letter-spacing:.1em;text-transform:uppercase;transition:var(--transition-slow);box-shadow:0 4px 12px #007bff4d;cursor:pointer}.slipstream-enter-button:hover{background-color:var(--color-primary-hover);transform:translateY(-2px);box-shadow:0 6px 16px #007bff66}.slipstream-enter-button:active{transform:translateY(0);box-shadow:0 2px 8px #007bff4d}.oauth-error{background-color:var(--color-danger-glow);border:1px solid var(--color-danger);border-radius:var(--radius-lg);padding:var(--spacing-md);margin-bottom:var(--spacing-lg);display:flex;justify-content:space-between;align-items:center;color:var(--color-danger)}.oauth-error p{margin:0;font-size:var(--text-sm)}.error-dismiss{background:none;border:none;color:var(--color-danger);font-size:var(--text-lg);cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:var(--transition-fast)}.error-dismiss:hover{background-color:#dc26261a}.slipstream-enter-button.logging-in{background-color:var(--color-neutral);cursor:not-allowed;opacity:.7}.slipstream-enter-button.logging-in:hover{background-color:var(--color-neutral);transform:none}.dev-info{margin-top:var(--spacing-lg);padding:var(--spacing-sm);background-color:var(--bg-tertiary);border-radius:var(--radius-md);font-size:var(--text-xs);color:var(--text-secondary);text-align:center}.dev-info p{margin:var(--spacing-xs) 0}@media(max-width:768px){body,.container{padding:var(--spacing-sm)}.header{flex-direction:column;gap:var(--spacing-md);text-align:center}.header-right{justify-content:center}.slipstream-title{font-size:var(--text-3xl)}.slipstream-enter-button{font-size:var(--text-2xl);padding:var(--spacing-lg)}}@media(max-width:480px){.container{padding:var(--spacing-xs)}.header h1{font-size:var(--text-xl)}.slipstream-title{font-size:var(--text-2xl)}.slipstream-enter-button{font-size:var(--text-xl);padding:var(--spacing-md)}}.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}.skip-links{position:absolute;top:-40px;left:0;z-index:999}.skip-link{position:absolute;left:-9999px;z-index:999;padding:1em;background-color:var(--color-primary, #000);color:var(--color-primary-text, #fff);text-decoration:none;border-radius:0 0 4px}.skip-link:focus{left:0;top:40px;outline:3px solid var(--color-focus, #4A90E2);outline-offset:2px}:root.keyboard-user *:focus{outline:3px solid var(--color-focus, #4A90E2);outline-offset:2px}:root:not(.keyboard-user) *:focus{outline:none}:root.high-contrast{--color-background: #000;--color-text: #fff;--color-primary: #fff;--color-secondary: #ffff00;--color-border: #fff;--color-error: #ff6b6b;--color-success: #51cf66;--color-warning: #ffd93d}.high-contrast *{border-color:var(--color-border)!important}.high-contrast button,.high-contrast input,.high-contrast select,.high-contrast textarea{border:2px solid var(--color-border)!important}:root.reduced-motion *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}:root[data-font-size=small]{font-size:14px}:root[data-font-size=normal]{font-size:16px}:root[data-font-size=large]{font-size:18px}:root[data-font-size=extra-large]{font-size:20px}.accessible-button{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;font-size:1rem;font-weight:500;line-height:1.5;border:2px solid transparent;border-radius:4px;cursor:pointer;transition:all .2s ease-in-out;min-height:44px;min-width:44px}.accessible-button:disabled{opacity:.6;cursor:not-allowed}.accessible-button.loading{color:transparent}.loading-spinner{position:absolute;width:1rem;height:1rem;border:2px solid transparent;border-top-color:currentColor;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.accessible-button.primary{background-color:var(--color-primary, #007bff);color:var(--color-primary-text, #fff);border-color:var(--color-primary, #007bff)}.accessible-button.primary:hover:not(:disabled){background-color:var(--color-primary-hover, #0056b3);border-color:var(--color-primary-hover, #0056b3)}.accessible-button.secondary{background-color:transparent;color:var(--color-primary, #007bff);border-color:var(--color-primary, #007bff)}.accessible-button.secondary:hover:not(:disabled){background-color:var(--color-primary, #007bff);color:var(--color-primary-text, #fff)}.accessible-button.ghost{background-color:transparent;color:var(--color-text, #212529);border-color:transparent}.accessible-button.ghost:hover:not(:disabled){background-color:var(--color-background-hover, #f8f9fa)}.accessible-button.small{padding:.25rem .5rem;font-size:.875rem;min-height:32px}.accessible-button.large{padding:.75rem 1.5rem;font-size:1.125rem;min-height:56px}.accessible-button.full-width{width:100%}.accessible-input-group{margin-bottom:1rem}.accessible-label{display:block;margin-bottom:.25rem;font-weight:500;color:var(--color-text, #212529)}.required-indicator{color:var(--color-error, #dc3545);margin-left:.25rem}.help-text{margin-bottom:.25rem;font-size:.875rem;color:var(--color-text-muted, #6c757d)}.accessible-input{display:block;width:100%;padding:.5rem .75rem;font-size:1rem;line-height:1.5;color:var(--color-text, #212529);background-color:var(--color-background, #fff);border:2px solid var(--color-border, #ced4da);border-radius:4px;transition:border-color .15s ease-in-out;min-height:44px}.accessible-input:focus{border-color:var(--color-primary, #007bff);outline:none}.accessible-input.error,.accessible-input[aria-invalid=true]{border-color:var(--color-error, #dc3545)}.error-message{margin-top:.25rem;font-size:.875rem;color:var(--color-error, #dc3545)}.dialog-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.dialog{background-color:var(--color-background, #fff);border-radius:8px;box-shadow:0 4px 6px #0000001a;max-width:500px;width:100%;max-height:90vh;display:flex;flex-direction:column}.dialog-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-bottom:1px solid var(--color-border, #e9ecef)}.dialog-title{margin:0;font-size:1.25rem;font-weight:500;color:var(--color-text, #212529)}.dialog-content{padding:1.5rem;overflow-y:auto;flex:1}.loading-skeleton{background:linear-gradient(90deg,var(--color-skeleton-base, #e0e0e0) 25%,var(--color-skeleton-highlight, #f0f0f0) 50%,var(--color-skeleton-base, #e0e0e0) 75%);background-size:200% 100%;animation:loading 1.5s infinite;border-radius:4px}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}button,a,input,select,textarea,[role=button],[role=link]{min-height:44px;min-width:44px}p,li{line-height:1.5;margin-bottom:1em}.text-on-dark{color:#fff}.text-on-light{color:#000}@media(max-width:768px){:root{font-size:14px}}@media(min-width:1200px){:root{font-size:18px}}@media print{.skip-links,.loading-spinner,button:disabled{display:none}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}}
