.theme-toggle{position:fixed;top:1.25rem;right:1.5rem;width:48px;height:48px;border-radius:999px;border:1px solid var(--border-soft);display:grid;place-items:center;font-size:1.35rem;cursor:pointer;background:var(--toggle-bg);color:var(--toggle-fg);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:transform .15s ease,box-shadow .15s ease;z-index:1000}.theme-toggle:hover{transform:translateY(-1px);box-shadow:var(--shadow-medium)}.app-shell{min-height:100vh;display:flex;flex-direction:column;background:var(--bg-canvas);color:var(--text-primary)}.header{padding:2rem 1.5rem 1rem;text-align:center}.header h1{font-size:2.25rem;font-weight:700;margin-bottom:.5rem}.header p{color:var(--text-secondary)}.main-content{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:2rem;padding:2rem 1.5rem 3rem}.insights-grid{width:min(64rem,100%);display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.insight-card{background:var(--card-bg);border-radius:1.5rem;padding:2rem 2.25rem;box-shadow:var(--shadow-soft);min-height:200px;display:grid;gap:.5rem}.insight-label{text-transform:uppercase;letter-spacing:.08em;font-size:.85rem;color:var(--text-muted);margin:0}.insight-card h2{font-size:1.4rem;margin:0 0 .25rem;color:var(--text-primary)}.insight-placeholder{color:var(--text-secondary);margin:0}.insight-error{color:var(--danger-color);font-weight:600;margin:0}.weather-card{--tile-bg: linear-gradient(150deg, #dbeafe 0%, #eef2ff 55%, #e0e7ff 100%);--tile-color: #0f172a;--tile-body-color: #1d4ed8;--tile-border: transparent;--tile-shadow: 0 18px 40px rgba(37, 99, 235, .18)}[data-theme=dark] .weather-card{--tile-bg: linear-gradient(160deg, rgba(30, 58, 138, .88), rgba(15, 23, 42, .85));--tile-color: #dbeafe;--tile-body-color: rgba(191, 219, 254, .9);--tile-border: rgba(96, 165, 250, .35);--tile-shadow: 0 25px 50px rgba(15, 23, 42, .55)}.weather-temp{font-size:clamp(2.4rem,4vw,3.2rem);font-weight:700;margin:0;color:var(--tile-color)}.weather-temp span{font-size:1.25rem;margin-left:.2rem}.weather-desc{font-weight:600;margin:0;color:var(--tile-body-color)}.weather-meta{margin:0;color:color-mix(in srgb,var(--tile-body-color) 70%,#0f172a);font-size:.95rem}.steps-card{--steps-bg: var(--bg-soft);--steps-color: var(--text-primary);--steps-border: var(--border-soft);--steps-shadow: var(--shadow-soft);border:1px solid var(--steps-border);background:var(--steps-bg);color:var(--steps-color);box-shadow:var(--steps-shadow)}.steps-card.steps-achieved{--steps-bg: linear-gradient(150deg, #bbf7d0 0%, #ecfccb 55%, #a7f3d0 100%);--steps-color: #065f46;--steps-border: transparent;--steps-shadow: 0 22px 45px rgba(16, 185, 129, .2)}[data-theme=dark] .steps-card.steps-achieved{--steps-bg: linear-gradient(160deg, rgba(5, 122, 85, .7), rgba(4, 120, 87, .5));--steps-color: #bbf7d0;--steps-border: rgba(45, 212, 191, .35)}.steps-card.steps-close{--steps-bg: linear-gradient(150deg, #fef9c3 0%, #fde68a 55%, #fcd34d 100%);--steps-color: #92400e;--steps-border: transparent;--steps-shadow: 0 22px 45px rgba(251, 191, 36, .22)}[data-theme=dark] .steps-card.steps-close{--steps-bg: linear-gradient(160deg, rgba(146, 64, 14, .65), rgba(180, 83, 9, .55));--steps-color: #fde68a;--steps-border: rgba(251, 191, 36, .35)}.steps-card.steps-missed{--steps-bg: linear-gradient(150deg, #fee2e2 0%, #fecaca 55%, #fca5a5 100%);--steps-color: #7f1d1d;--steps-border: transparent;--steps-shadow: 0 22px 45px rgba(239, 68, 68, .2)}[data-theme=dark] .steps-card.steps-missed{--steps-bg: linear-gradient(160deg, rgba(127, 29, 29, .65), rgba(185, 28, 28, .55));--steps-color: #fecaca;--steps-border: rgba(248, 113, 113, .35)}.steps-card.steps-pending,.steps-card.steps-loading{--steps-bg: var(--bg-soft);--steps-color: var(--text-primary);--steps-border: var(--border-soft)}.steps-answer{font-size:clamp(1.8rem,3vw,2.2rem);margin:0;font-weight:700}.steps-detail{margin:0;font-size:1rem}.steps-meta{margin:0;font-size:.9rem;color:inherit;opacity:.85}.tiles-grid{display:grid;gap:2rem;width:min(64rem,100%);grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.cta-card{--tile-bg: var(--card-bg);--tile-color: var(--text-primary);--tile-body-color: var(--text-secondary);--tile-border: transparent;--tile-shadow: var(--shadow-strong);background:var(--tile-bg);border-radius:1.5rem;padding:3rem 2.5rem;max-width:28rem;width:100%;text-align:center;box-shadow:var(--tile-shadow);border:1px solid var(--tile-border);color:var(--tile-color)}.loading-card,.error-card,.empty-card{max-width:none}.error-card{--tile-bg: var(--error-surface);--tile-color: var(--danger-color);--tile-body-color: color-mix(in srgb, var(--danger-color) 78%, #fff 22%);--tile-shadow: var(--shadow-soft)}.loading-card,.empty-card{--tile-bg: var(--bg-soft);--tile-color: var(--text-primary);--tile-body-color: var(--text-secondary);--tile-shadow: var(--shadow-soft);--tile-border: var(--border-soft)}.cta-card h2{font-size:2rem;margin-bottom:.75rem;color:var(--tile-color)}.cta-card p{color:var(--tile-body-color);margin-bottom:2rem}.tile-accent-default{--tile-bg: linear-gradient(145deg, #f8fafc 0%, #f1f5f9 60%, #ffffff 100%);--tile-color: var(--text-primary);--tile-body-color: color-mix(in srgb, var(--text-primary) 65%, var(--text-secondary));--tile-border: var(--border-soft);--tile-shadow: var(--shadow-soft)}[data-theme=dark] .tile-accent-default{--tile-bg: linear-gradient(150deg, rgba(15, 23, 42, .9), rgba(15, 23, 42, .75));--tile-color: #f8fafc;--tile-body-color: rgba(226, 232, 240, .85);--tile-border: rgba(148, 163, 184, .25);--tile-shadow: var(--shadow-soft)}.tile-accent-ski{--tile-bg: linear-gradient(160deg, #ecfeff 0%, #cffafe 55%, #99f6e4 100%);--tile-color: #065f46;--tile-body-color: rgba(6, 95, 70, .85);--tile-border: transparent;--tile-shadow: 0 25px 45px rgba(13, 148, 136, .18)}[data-theme=dark] .tile-accent-ski{--tile-bg: linear-gradient(165deg, rgba(8, 47, 73, .9), rgba(6, 78, 59, .8));--tile-color: #ecfeff;--tile-body-color: rgba(207, 250, 254, .9);--tile-border: rgba(45, 212, 191, .35);--tile-shadow: 0 25px 50px rgba(15, 118, 110, .3)}.tile-accent-sunset{--tile-bg: linear-gradient(150deg, #ffe4e6 0%, #fef3c7 50%, #fecdd3 100%);--tile-color: #9f1239;--tile-body-color: rgba(124, 45, 18, .85);--tile-border: transparent;--tile-shadow: 0 25px 45px rgba(249, 115, 22, .18)}[data-theme=dark] .tile-accent-sunset{--tile-bg: linear-gradient(160deg, rgba(190, 24, 93, .45), rgba(234, 88, 12, .35));--tile-color: #ffe4e6;--tile-body-color: rgba(255, 240, 230, .9);--tile-border: rgba(251, 146, 60, .3)}.tile-accent-meadow{--tile-bg: linear-gradient(140deg, #ecfccb 0%, #bbf7d0 55%, #86efac 100%);--tile-color: #065f46;--tile-body-color: rgba(22, 101, 52, .85);--tile-border: transparent;--tile-shadow: 0 25px 40px rgba(22, 163, 74, .18)}[data-theme=dark] .tile-accent-meadow{--tile-bg: linear-gradient(150deg, rgba(21, 128, 61, .4), rgba(5, 150, 105, .4));--tile-color: #ecfccb;--tile-body-color: rgba(217, 249, 157, .9);--tile-border: rgba(134, 239, 172, .35)}.tile-accent-midnight{--tile-bg: linear-gradient(160deg, #e0e7ff 0%, #c4b5fd 50%, #818cf8 100%);--tile-color: #312e81;--tile-body-color: rgba(49, 46, 129, .85);--tile-border: transparent;--tile-shadow: 0 25px 45px rgba(99, 102, 241, .22)}[data-theme=dark] .tile-accent-midnight{--tile-bg: linear-gradient(160deg, rgba(30, 64, 175, .9), rgba(76, 29, 149, .85));--tile-color: #e0e7ff;--tile-body-color: rgba(224, 231, 255, .9);--tile-border: rgba(129, 140, 248, .35)}.tile-accent-citrus{--tile-bg: linear-gradient(140deg, #fef9c3 0%, #fde68a 55%, #fdba74 100%);--tile-color: #92400e;--tile-body-color: rgba(146, 64, 14, .85);--tile-border: transparent;--tile-shadow: 0 25px 40px rgba(251, 191, 36, .22)}[data-theme=dark] .tile-accent-citrus{--tile-bg: linear-gradient(150deg, rgba(250, 204, 21, .25), rgba(251, 146, 60, .35));--tile-color: #fff7d6;--tile-body-color: rgba(255, 243, 189, .88);--tile-border: rgba(251, 191, 36, .35)}.tile-accent-blossom{--tile-bg: linear-gradient(150deg, #fce7f3 0%, #fbcfe8 45%, #ddd6fe 100%);--tile-color: #9d174d;--tile-body-color: rgba(131, 24, 67, .85);--tile-border: transparent;--tile-shadow: 0 25px 40px rgba(236, 72, 153, .22)}[data-theme=dark] .tile-accent-blossom{--tile-bg: linear-gradient(160deg, rgba(236, 72, 153, .4), rgba(147, 51, 234, .35));--tile-color: #fff0f6;--tile-body-color: rgba(255, 224, 243, .9);--tile-border: rgba(236, 72, 153, .35)}.tile-accent-slate{--tile-bg: linear-gradient(150deg, #f8fafc 0%, #e2e8f0 55%, #cbd5f5 100%);--tile-color: #0f172a;--tile-body-color: rgba(15, 23, 42, .75);--tile-border: var(--border-soft);--tile-shadow: var(--shadow-soft)}[data-theme=dark] .tile-accent-slate{--tile-bg: linear-gradient(150deg, rgba(30, 41, 59, .8), rgba(15, 23, 42, .9));--tile-color: #f1f5f9;--tile-body-color: rgba(226, 232, 240, .85);--tile-border: rgba(148, 163, 184, .4)}.archived-card{--tile-bg: var(--bg-soft);--tile-color: var(--text-secondary);--tile-body-color: var(--text-secondary);--tile-border: var(--border-soft);--tile-shadow: none;opacity:.85}[data-theme=dark] .archived-card{--tile-bg: rgba(15, 23, 42, .7);--tile-color: rgba(148, 163, 184, .95);--tile-body-color: rgba(148, 163, 184, .85);--tile-border: rgba(148, 163, 184, .35)}.cta-button{display:inline-flex;align-items:center;justify-content:center;text-transform:uppercase;background:var(--button-primary-gradient);color:#fff;font-weight:600;letter-spacing:.05em;border:none;border-radius:9999px;padding:1rem 2.75rem;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease;box-shadow:var(--cta-shadow)}.cta-button:hover{transform:translateY(-2px);box-shadow:var(--cta-shadow-hover)}.tile-button{display:inline-flex;align-items:center;justify-content:center;text-transform:uppercase;background:var(--button-secondary-gradient);color:#fff;font-weight:600;letter-spacing:.05em;border:none;border-radius:9999px;padding:1rem 2.75rem;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease;box-shadow:var(--cta-shadow)}.tile-button:hover{transform:translateY(-2px);box-shadow:var(--cta-shadow-hover)}.tile-button.is-link{text-decoration:none}.archive-panel{width:100%;margin-top:3rem;padding:0 1.5rem 3rem}.archive-inner{margin:0 auto;width:min(64rem,100%);text-align:center}.archive-intro{margin:0 auto;max-width:38rem;color:var(--text-secondary)}.archive-list{margin:2rem auto 0;padding:0;list-style:none;width:min(48rem,100%);display:grid;gap:1rem}.archive-row{display:flex;align-items:center;justify-content:space-between;background:var(--bg-soft);border-radius:1rem;padding:1.25rem 1.5rem;border:1px solid var(--border-soft)}.archive-title{font-weight:600;color:var(--text-primary)}.archive-actions{display:flex;gap:.75rem}.archive-button{padding:.75rem 2rem;font-size:.85rem}.cta-secondary{display:inline-flex;justify-content:center;margin-top:1.5rem;color:var(--link-color);font-weight:600}.cta-secondary:hover{text-decoration:underline}.footer{padding:1.5rem;text-align:center;color:var(--text-muted);font-size:.875rem}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop-color);display:flex;align-items:center;justify-content:center;padding:1.5rem;z-index:50}.modal-card{background:var(--card-bg);border-radius:1.25rem;padding:2rem;width:min(24rem,100%);box-shadow:var(--shadow-strong);text-align:left}.modal-card h2{font-size:1.5rem;margin-bottom:.75rem;color:var(--text-primary)}.modal-card p{color:var(--text-secondary);margin-bottom:0}.modal-form{margin-top:1rem;display:grid;gap:1rem}.password-input{width:100%;border:1px solid var(--input-border-strong);border-radius:.85rem;padding:.75rem 1rem;font-size:1rem;background:var(--input-bg)}.password-input:focus{outline:none;border-color:var(--link-color);box-shadow:0 0 0 3px var(--focus-ring-color);background:var(--card-bg)}.modal-error{margin:0;color:var(--danger-color)}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem}.modal-cancel,.modal-confirm{border:none;border-radius:999px;padding:.6rem 1.4rem;font-weight:600;cursor:pointer}.modal-cancel{background:var(--border-soft);color:var(--text-primary)}.modal-confirm{background:var(--link-color);color:#fff}.modal-cancel:hover{background:var(--border-strong)}.modal-confirm:hover{background:var(--link-hover)}.auth-shell{min-height:100vh;background:radial-gradient(circle at 20% 15%,color-mix(in srgb,var(--info-color) 32%,transparent) 0%,transparent 45%),radial-gradient(circle at 80% 0%,color-mix(in srgb,var(--success-color) 28%,transparent) 0%,transparent 42%),var(--bg-canvas);display:flex;align-items:center;justify-content:center;padding:2rem 1.5rem;color:var(--text-primary)}.auth-card{background:var(--card-bg);border-radius:1.5rem;padding:2.5rem;width:min(420px,100%);box-shadow:var(--shadow-strong);text-align:left}.auth-card h1{font-size:1.9rem;margin-bottom:.5rem;color:var(--text-primary)}.auth-card p{margin:0 0 1.25rem;color:var(--text-secondary)}.auth-form{display:grid;gap:1.25rem}.auth-form label{display:grid;gap:.35rem;font-size:.95rem;color:var(--text-secondary)}.auth-form input{border-radius:.85rem;border:1px solid var(--input-border-strong);padding:.75rem 1rem;font-size:1rem;background:var(--input-bg);color:inherit}.auth-form input:focus{outline:none;border-color:var(--link-color);box-shadow:0 0 0 3px var(--focus-ring-color);background:var(--card-bg)}.auth-error{margin:0;color:var(--danger-color);font-weight:600}.auth-form button{margin-top:.5rem;border:none;border-radius:999px;padding:.9rem 1.5rem;font-weight:600;font-size:1rem;text-transform:uppercase;color:#fff;background:var(--button-primary-gradient);cursor:pointer;transition:transform .15s ease,box-shadow .15s ease;box-shadow:var(--cta-shadow)}.auth-form button:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--cta-shadow-hover)}.auth-form button:disabled{cursor:not-allowed;opacity:.6;box-shadow:none}.auth-loading{min-height:50vh;display:flex;align-items:center;justify-content:center;font-weight:600;color:var(--text-primary)}.page-shell{min-height:100vh;display:flex;flex-direction:column;background:radial-gradient(circle at 10% 10%,color-mix(in srgb,var(--info-color) 24%,transparent) 0%,transparent 45%),radial-gradient(circle at 90% 0,color-mix(in srgb,var(--warning-color) 18%,transparent) 0%,transparent 40%),var(--bg-canvas);color:var(--text-primary)}.page-shell header{padding:2rem 1.5rem 1rem;text-align:center}.page-shell header h1{font-size:2rem;font-weight:700;margin-bottom:.5rem}.page-shell header p{color:var(--text-secondary)}.overview-link{display:inline-flex;margin-top:.75rem;color:var(--link-color);font-weight:600}.overview-link:hover{text-decoration:underline}.form-wrapper{flex:1;width:min(720px,92vw);margin:0 auto 3rem;background:var(--card-bg);box-shadow:var(--shadow-medium);border-radius:1.75rem;padding:2.75rem 2.5rem}.form-grid{display:grid;gap:1.75rem}.form-group label{display:block;font-weight:600;margin-bottom:.25rem;color:var(--text-primary)}.group-label{font-weight:600;margin-bottom:.75rem;color:var(--text-primary)}.checkbox-group{display:grid;gap:.5rem;max-height:14rem;overflow-y:auto;padding-right:.35rem}.checkbox-group::-webkit-scrollbar{width:.4rem}.checkbox-group::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:999px}.checkbox-option{display:flex;align-items:center;gap:.25rem;padding:.65rem .85rem;border-radius:.75rem;border:1px solid transparent;background:var(--bg-soft);transition:border-color .12s ease,background-color .12s ease}.checkbox-option input{accent-color:var(--link-color)}.checkbox-option-label{flex:1;padding-left:5px}.response-indicator{display:inline-flex;align-items:center}.response-indicator-icon{width:1.25rem;height:1.25rem}.checkbox-option:hover{border-color:var(--border-strong);background:var(--info-surface)}.text-input,.select-input,.textarea-input{width:100%;border:1px solid var(--input-border);border-radius:.85rem;padding:.85rem 1rem;font-size:1rem;background:var(--input-bg);min-height:3.1rem;transition:border-color .12s ease,background-color .12s ease,box-shadow .12s ease;color:inherit}.textarea-input{resize:vertical;min-height:6.5rem;line-height:1.5}.text-input:focus,.select-input:focus,.textarea-input:focus{border-color:var(--link-color);background:var(--card-bg);box-shadow:0 0 0 3px var(--focus-ring-color);outline:none}.radio-group{display:grid;gap:.5rem}.radio-option{display:flex;align-items:center;gap:.75rem;padding:.75rem .85rem;border-radius:.75rem;border:1px solid transparent;background:var(--bg-soft);transition:border-color .12s ease,background-color .12s ease}.radio-option input{accent-color:var(--link-color);margin-right:5px}.radio-option:hover{border-color:var(--border-strong);background:var(--info-surface)}.actions-row{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;justify-content:space-between;margin-top:2.5rem}.submit-button{background:var(--button-primary-gradient);color:#fff;border:none;border-radius:9999px;padding:.95rem 2.75rem;font-weight:600;letter-spacing:.04em;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease;box-shadow:var(--cta-shadow)}.submit-button:disabled{cursor:not-allowed;opacity:.7;box-shadow:none}.feedback{flex:1;color:var(--text-primary);font-weight:500}.back-link{color:var(--text-secondary);font-weight:600}.error-text{color:var(--danger-color)}.success-text{color:var(--success-color)}@media (max-width: 720px){.form-wrapper{padding:2rem 1.5rem}.actions-row{flex-direction:column;align-items:stretch}.submit-button{width:100%;justify-content:center}}.summary-shell{min-height:100vh;background:radial-gradient(circle at 15% 5%,color-mix(in srgb,var(--info-color) 22%,transparent) 0%,transparent 40%),radial-gradient(circle at 80% -10%,color-mix(in srgb,var(--success-color) 18%,transparent) 0%,transparent 38%),var(--bg-canvas);display:flex;flex-direction:column;color:var(--text-primary)}.summary-header{padding:2rem 1.5rem 1rem;text-align:center}.summary-header h1{font-size:2rem;font-weight:700;margin-bottom:.5rem}.summary-header p{color:var(--text-secondary)}.summary-nav{margin-top:1rem;display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}.summary-link{color:var(--link-color);font-weight:600}.summary-wrapper{flex:1;width:min(900px,94vw);margin:0 auto 3rem;display:grid;gap:1.5rem}.summary-stats{background:color-mix(in srgb,var(--info-color) 75%,var(--link-hover) 25%);color:#fff;padding:1.5rem;border-radius:1.5rem;display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem}.summary-stats span{font-weight:600}.aggregate-card{background:var(--card-bg);border-radius:1.5rem;padding:2rem;box-shadow:var(--shadow-medium)}.aggregate-header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1.5rem;color:var(--text-primary)}.aggregate-header h2{font-size:1.5rem;font-weight:700}.aggregate-header span{font-size:.9rem;color:var(--text-secondary)}.aggregate-grid{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.aggregate-grid h3{font-size:1.05rem;font-weight:600;margin-bottom:.75rem;color:var(--text-primary)}.aggregate-list{list-style:none;margin:0;padding:0;display:grid;gap:.35rem;color:var(--text-secondary)}.aggregate-empty{color:var(--text-muted);margin:0}.summary-card{background:var(--card-bg);border-radius:1.5rem;padding:2rem;box-shadow:var(--shadow-medium)}.summary-card header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1.5rem}.summary-card h2{font-size:1.5rem;font-weight:700}.summary-card time{font-size:.9rem;color:var(--text-secondary)}.summary-grid{display:grid;gap:1rem}.summary-grid dt{font-weight:600;color:var(--text-primary)}.summary-grid dd{margin:0;color:var(--text-secondary)}.empty-state,.error-state,.loading-state{padding:2rem;text-align:center;color:var(--text-secondary)}.error-state{color:var(--danger-color)}@media (max-width: 640px){.summary-card{padding:1.5rem}.summary-stats{flex-direction:column;align-items:flex-start}.aggregate-card{padding:1.5rem}}.ski-shell{min-height:100vh;background:radial-gradient(circle at 10% 5%,color-mix(in srgb,var(--info-color) 28%,transparent) 0%,transparent 45%),radial-gradient(circle at 85% -5%,color-mix(in srgb,var(--success-color) 24%,transparent) 0%,transparent 40%),var(--bg-canvas);display:flex;flex-direction:column;color:var(--text-primary)}.ski-header{padding:2.25rem 1.5rem 1.25rem;text-align:center}.ski-header h1{font-size:2.25rem;font-weight:700;margin-bottom:.5rem;color:var(--text-primary)}.ski-header p{color:var(--text-secondary);margin-bottom:1rem}.ski-nav{display:flex;justify-content:center;gap:1.25rem;flex-wrap:wrap}.ski-link{color:var(--link-color);font-weight:600}.ski-link:hover{text-decoration:underline}.ski-grid{flex:1;width:min(1040px,94vw);margin:0 auto 3.5rem;display:grid;gap:1.75rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-auto-rows:minmax(260px,auto);align-items:start}.ski-tile{background:var(--card-bg);border-radius:1.75rem;padding:2.25rem 2rem;box-shadow:var(--shadow-medium);display:grid;gap:1rem;min-height:260px}.ski-tile h2{font-size:1.5rem;font-weight:700;color:var(--text-primary);margin-bottom:.5rem}.countdown-tile{background:linear-gradient(165deg,#dcfce7,#bbf7d0)}.schedule-tile{background:linear-gradient(180deg,#3b82f61a,#1e40af26)}.schedule-list{list-style:none;padding:0;margin:0;display:grid;gap:1.25rem}.schedule-list li{display:grid;grid-template-columns:auto 1fr;gap:.5rem 1rem;align-items:start}.schedule-date{background:color-mix(in srgb,var(--info-color) 25%,transparent);color:color-mix(in srgb,var(--info-color) 80%,#0b1a3a);font-weight:700;padding:.45rem .8rem;border-radius:999px;font-size:.95rem;text-transform:uppercase;letter-spacing:.04em}.schedule-title{margin:0;font-weight:600;color:var(--text-primary)}.schedule-detail{margin:.125rem 0 0;color:var(--text-secondary)}.schedule-detail:first-of-type{margin-top:0}.webcam-tile{background:linear-gradient(165deg,#67e8f966,#0ea5e959)}.weather-tile{background:linear-gradient(160deg,#fee2e2,#fecaca,#fef2f2)}.wide-tile{grid-column:1 / -1}.countdown-number{font-size:clamp(2.5rem,5vw,3.5rem);font-weight:700;color:var(--success-color);margin:0}.countdown-note{margin:0;color:color-mix(in srgb,var(--success-color) 70%,#064e3b)}.resource-tile p,.finance-tile p{color:var(--text-secondary);margin:0}.sheet-link{display:inline-flex;align-items:center;gap:.75rem;padding:.85rem 1.25rem;background:var(--link-color);color:#fff;border-radius:999px;font-weight:600;width:fit-content}.sheet-link:hover{background:var(--link-hover)}.sheet-link svg{width:1.5rem;height:1.5rem}.placeholder-note{margin:0;font-size:.9rem;color:var(--text-muted)}.prepayment-list{list-style:none;padding:0;margin:0;display:grid;gap:1rem}.prepayment-item{background:var(--bg-soft);border-radius:1rem;padding:1rem 1.25rem;border:1px solid var(--border-soft)}.prepayment-item div{display:flex;justify-content:space-between;align-items:baseline;gap:1rem}.prepayment-name{font-weight:600;color:var(--text-primary)}.prepayment-amount{font-weight:600;color:var(--link-color)}.prepayment-note{margin:.5rem 0 0;color:var(--text-secondary)}.tile-link{display:inline-flex;align-items:center;justify-content:center;padding:.85rem 1.75rem;border-radius:999px;background:color-mix(in srgb,var(--link-color) 65%,#0f766e 35%);color:var(--text-inverse);font-weight:600;width:fit-content}.tile-link:hover{background:color-mix(in srgb,var(--link-hover) 70%,#08344f 30%)}.helper-text{margin:0;color:var(--text-primary);font-size:.95rem}.weather-grid{display:grid;gap:.35rem}.weather-value{font-size:clamp(2.25rem,4vw,3rem);font-weight:700;color:var(--danger-color);margin:0}.weather-value span{font-size:1.5rem;margin-left:.25rem}.weather-label{margin:0;font-weight:600;color:color-mix(in srgb,var(--danger-color) 70%,black 20%)}.weather-meta{margin:0;color:color-mix(in srgb,var(--danger-color) 60%,black 20%);font-size:.95rem}.weather-error{margin:0;color:var(--danger-color);font-weight:600}@media (max-width: 640px){.ski-tile{padding:1.75rem 1.5rem}.wide-tile{grid-column:auto}.schedule-list li{grid-template-columns:1fr;gap:.35rem}}.admin-shell{min-height:100vh;background:var(--bg-canvas);color:var(--text-primary);display:flex;flex-direction:column}.admin-header{padding:2.5rem 2rem 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.admin-kicker{margin:0;text-transform:uppercase;letter-spacing:.08em;font-size:.85rem;color:var(--text-muted)}.admin-header h1{margin:.25rem 0;font-size:2rem;color:var(--text-primary)}.admin-header p{margin:0;color:var(--text-secondary)}.admin-signout{border:none;border-radius:999px;padding:.75rem 1.5rem;font-weight:600;background:var(--text-primary);color:var(--text-inverse);cursor:pointer}.admin-main{flex:1;display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.75rem;padding:0 2rem 3rem}.admin-panel{background:var(--card-bg);border-radius:1.5rem;padding:1.75rem;box-shadow:var(--shadow-soft)}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.panel-heading h2{margin:0;font-size:1.4rem}.panel-action{border:none;border-radius:.85rem;padding:.65rem 1.25rem;font-weight:600;background:var(--link-color);color:#fff;cursor:pointer}.panel-error{margin:0 0 1rem;color:var(--danger-color);font-weight:600}.panel-feedback{margin:0 0 1rem;color:var(--success-color);font-weight:600}.tile-list{list-style:none;margin:0;padding:0;display:grid;gap:1rem;max-height:480px;overflow:auto}.tile-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem;border:1px solid var(--border-soft);border-radius:1rem;background:var(--bg-soft)}.tile-title{margin:0;font-weight:600;color:var(--text-primary)}.tile-meta{margin:.25rem 0 0;color:var(--text-secondary);font-size:.9rem}.tile-actions{display:flex;flex-wrap:wrap;gap:.5rem}.tile-actions button{border:none;border-radius:.75rem;padding:.45rem .9rem;font-weight:600;background:var(--border-soft);color:var(--text-primary);cursor:pointer}.tile-actions button:hover{background:var(--border-strong)}.form-panel{min-width:0}.tile-form{display:grid;gap:1.25rem}.accent-fieldset{border:1px solid var(--border-soft);border-radius:1.25rem;padding:1.25rem;display:grid;gap:1rem}.accent-fieldset legend{font-weight:600;padding:0 .35rem}.accent-options{display:grid;gap:.75rem}@media (min-width: 720px){.accent-options{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}}.accent-option{position:relative;border:1px solid var(--border-soft);border-radius:1rem;padding:.85rem 1rem;display:flex;gap:.9rem;align-items:center;background:var(--bg-soft);cursor:pointer;transition:border-color .12s ease,box-shadow .12s ease,transform .12s ease}.accent-option.is-selected{border-color:var(--link-color);box-shadow:0 0 0 2px var(--focus-ring-color);transform:translateY(-1px)}.accent-option input{position:absolute;opacity:0;pointer-events:none}.accent-preview{width:3.5rem;height:3.5rem;border-radius:.85rem;border:1px solid var(--tile-border, transparent);background:var(--tile-bg);box-shadow:var(--tile-shadow, var(--shadow-soft))}.accent-copy{display:grid;gap:.15rem}.accent-copy strong{font-size:.95rem;color:var(--text-primary)}.accent-copy small{font-size:.8rem;color:var(--text-secondary)}.tile-form label,.tile-form fieldset{display:flex;flex-direction:column;gap:.35rem}.tile-form input,.tile-form textarea,.tile-form select{border-radius:.85rem;border:1px solid var(--input-border-strong);padding:.75rem .9rem;font-size:1rem;background:var(--input-bg);color:inherit}.tile-form textarea{resize:vertical}.form-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.checkbox{flex-direction:row;align-items:center;gap:.5rem}.toggles{gap:.75rem}.form-actions{display:flex;gap:1rem;flex-wrap:wrap}.form-actions button{border:none;border-radius:999px;padding:.85rem 1.5rem;font-weight:600;cursor:pointer}.form-actions button[type=submit]{background:var(--button-primary-gradient);color:#fff}.form-actions button.secondary{background:var(--border-soft);color:var(--text-primary)}@media (max-width: 640px){.admin-header,.tile-row{flex-direction:column;align-items:flex-start}.tile-actions{width:100%}}.steps-shell{min-height:100vh;background:var(--bg-canvas);display:flex;flex-direction:column;color:var(--text-primary)}.steps-header{padding:2.25rem 1.5rem 1.25rem;text-align:center}.steps-header h1{font-size:2.25rem;font-weight:700;margin-bottom:.5rem}.steps-header p{color:var(--text-secondary);margin-bottom:1rem}.steps-nav{display:flex;justify-content:center;gap:1.25rem;flex-wrap:wrap}.steps-link{color:var(--link-color);font-weight:600}.steps-link.steps-link-button{background:transparent;border:0;padding:0;font:inherit;cursor:pointer}.steps-link:hover{text-decoration:underline}.steps-wrapper{flex:1;width:min(1040px,94vw);margin:0 auto 3.5rem;display:grid;gap:1.75rem}.steps-section{background:var(--card-bg);border-radius:1.75rem;padding:2rem;box-shadow:var(--shadow-medium)}.steps-dashboard-actions{margin-top:1.25rem;display:flex;justify-content:center;gap:1.25rem;flex-wrap:wrap}.steps-details-anchor{scroll-margin-top:1rem}.steps-dashboard{position:relative;overflow:hidden;width:100vw;height:100vh;margin-bottom:20px}.steps-tile.steps-tile-dashboard.is-active{border-color:color-mix(in srgb,var(--link-color) 35%,var(--border-soft));background:linear-gradient(90deg,color-mix(in srgb,var(--link-color) 14%,transparent),var(--bg-soft))}.steps-personal{display:grid;gap:1rem}.steps-personal-top{display:flex;gap:.6rem;flex-wrap:wrap}.steps-personal-pill{padding:.35rem .7rem;border-radius:999px;border:1px solid var(--border-soft);background:color-mix(in srgb,var(--card-bg) 70%,transparent);color:var(--text-secondary);font-weight:700;font-size:.95rem}.steps-personal-main{display:grid;grid-template-columns:1fr;gap:1rem;align-items:center}@media (min-width: 520px){.steps-personal-main{grid-template-columns:1.1fr .9fr}}.steps-personal-kicker{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:.85rem;font-weight:800}.steps-personal-steps{font-weight:900;font-size:clamp(2.2rem,3.6vw,3rem);margin-top:.25rem}.steps-personal-sub{color:var(--text-secondary)}.steps-personal-note{margin-top:.6rem;color:var(--text-secondary);font-size:.95rem}.steps-personal-ring{position:relative;width:min(160px,48vw);aspect-ratio:1;margin-left:auto;margin-right:auto}.steps-ring{width:100%;height:100%;transform:rotate(-90deg)}.steps-ring-track{fill:none;stroke:color-mix(in srgb,var(--border-soft) 80%,transparent);stroke-width:10}.steps-ring-progress{fill:none;stroke:var(--link-color);stroke-width:10;stroke-linecap:round;transition:stroke-dashoffset .26s ease}.steps-ring-label{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-content:center;text-align:center}.steps-ring-pct{font-weight:900;font-size:1.5rem}.steps-ring-sub{color:var(--text-secondary);font-weight:700}.steps-personal-actions{display:flex;gap:.75rem;flex-wrap:wrap}.steps-action{border-radius:999px;border:1px solid var(--border-soft);padding:.55rem .9rem;background:color-mix(in srgb,var(--card-bg) 70%,transparent);color:var(--text-primary);font-weight:800;cursor:pointer}.steps-action:disabled{opacity:.6;cursor:not-allowed}.steps-personal-status{border-radius:1rem;border:1px solid var(--border-soft);background:color-mix(in srgb,var(--card-bg) 70%,transparent);padding:.75rem .9rem;color:var(--text-secondary);display:grid;gap:.35rem}.steps-dashboard:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 18% 12%,color-mix(in srgb,var(--link-color) 22%,transparent),transparent 55%),radial-gradient(circle at 82% 0%,color-mix(in srgb,var(--border-soft) 35%,transparent),transparent 52%);pointer-events:none}.steps-dashboard>*{position:relative}.steps-dashboard-grid{display:grid;gap:1rem}@media (min-width: 820px){.steps-dashboard-grid{grid-template-columns:1.15fr .85fr;align-items:start}}.steps-dashboard-card{background:var(--bg-soft);border-radius:1.25rem;border:1px solid var(--border-soft);padding:1.25rem 1.35rem;display:grid;gap:1rem}.steps-dashboard-card-header{display:grid;gap:.25rem}.steps-dashboard-card-header h3{margin:0;font-size:1.1rem;font-weight:800}.steps-dashboard-card-header p{margin:0;color:var(--text-secondary)}.steps-race{display:grid;gap:.75rem;max-height:420px;overflow:auto;padding-right:.25rem}.steps-race-row{position:relative;border-radius:1.25rem;border:1px solid var(--border-soft);background:color-mix(in srgb,var(--card-bg) 60%,transparent);overflow:hidden}.steps-race-fill{position:absolute;top:0;right:0;bottom:0;left:0;width:0;background:linear-gradient(90deg,color-mix(in srgb,var(--accent, var(--link-color)) 22%,transparent),transparent);pointer-events:none}.steps-race-row.is-active{border-color:color-mix(in srgb,var(--link-color) 35%,var(--border-soft))}.steps-race-main{position:relative;padding:.9rem 1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.steps-race-left{display:inline-flex;align-items:center;gap:.85rem;min-width:0}.steps-race-rank{width:34px;height:34px;border-radius:999px;display:grid;place-content:center;border:1px solid var(--border-soft);background:color-mix(in srgb,var(--card-bg) 78%,transparent);color:var(--text-secondary);font-weight:900;flex:0 0 auto}.steps-race-name{display:inline-flex;align-items:center;gap:.55rem;font-weight:800;color:var(--text-primary);min-width:0}.steps-race-name>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.steps-race-right{display:inline-flex;align-items:center;gap:.75rem;flex:0 0 auto}.steps-race-steps{font-weight:900;font-variant-numeric:tabular-nums}.steps-poke{border-radius:999px;border:1px solid var(--border-soft);background:color-mix(in srgb,var(--card-bg) 70%,transparent);color:var(--text-primary);font-weight:800;padding:.35rem .7rem;cursor:pointer}.steps-poke:disabled{opacity:.6;cursor:not-allowed}.steps-race-spark{position:relative;padding:0 1rem .9rem;opacity:.9}@media (max-width: 520px){.steps-race-spark{display:none}}.steps-team-pulse{display:grid;gap:.75rem;padding-top:.25rem}@media (min-width: 820px){.steps-team-pulse{grid-template-columns:1fr 1fr;align-items:center}}.steps-team-pulse-left{display:grid;gap:.5rem}.steps-team-pill{border-radius:999px;border:1px solid var(--border-soft);background:color-mix(in srgb,var(--card-bg) 70%,transparent);padding:.45rem .75rem;color:var(--text-secondary);font-weight:700}.steps-team-pill strong{color:var(--text-primary);font-weight:900}.steps-team-pulse-right{display:grid;gap:.4rem}.steps-team-spark-title{color:var(--text-secondary);font-weight:800}.steps-dashboard-tiles{display:flex;gap:1rem;overflow-x:auto;padding-bottom:.5rem;scroll-snap-type:x mandatory}.steps-dashboard-tiles::-webkit-scrollbar{height:10px}.steps-dashboard-tiles::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--border-soft) 85%,transparent);border-radius:999px}.steps-tile.steps-tile-dashboard{min-width:210px;flex:0 0 auto;scroll-snap-align:start}@media (min-width: 820px){.steps-dashboard-tiles{display:grid;overflow:visible;padding-bottom:0;scroll-snap-type:none;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.steps-tile.steps-tile-dashboard{min-width:0}}.steps-tile-top{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem}.steps-tile-rank{display:inline-flex;align-items:center;justify-content:center;padding:.12rem .6rem;border-radius:999px;border:1px solid var(--border-soft);background:color-mix(in srgb,var(--card-bg) 75%,transparent);color:var(--text-secondary);font-weight:800;font-size:.9rem;white-space:nowrap}.steps-dashboard-highlights-grid{display:grid;gap:.75rem;grid-template-columns:repeat(2,minmax(0,1fr))}.steps-highlight{border-radius:1rem;border:1px solid var(--border-soft);background:color-mix(in srgb,var(--card-bg) 70%,transparent);padding:.9rem .95rem;display:grid;gap:.35rem}.steps-highlight-title{font-weight:800;color:var(--text-primary)}.steps-highlight-value{font-weight:900;font-size:1.15rem}.steps-highlight-meta{color:var(--text-secondary);font-size:.95rem}.steps-section-header{display:grid;gap:.25rem;margin-bottom:1.25rem}.steps-section-header h2{font-size:1.5rem;font-weight:700;margin:0}.steps-section-header p{margin:0;color:var(--text-secondary)}.steps-state{padding:1rem 1.25rem;border-radius:1rem;background:var(--bg-soft);border:1px solid var(--border-soft);color:var(--text-secondary)}.steps-state.steps-error{color:var(--danger-color);background:var(--error-surface)}.steps-tiles{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.steps-tile{background:var(--bg-soft);border-radius:1.25rem;padding:1.25rem 1.35rem;border:1px solid var(--border-soft);border-top-width:4px;display:grid;gap:.25rem}.steps-tile-label{margin:0;text-transform:uppercase;letter-spacing:.08em;font-size:.85rem;color:var(--text-muted)}.steps-tile-value{margin:0;font-weight:800;font-size:clamp(1.8rem,2.8vw,2.25rem)}.steps-tile-meta{margin:0;color:var(--text-secondary)}.steps-stats-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.steps-stat-card{background:var(--bg-soft);border-radius:1.25rem;padding:1.25rem 1.35rem;border:1px solid var(--border-soft);display:grid;gap:.5rem}.steps-stat-value{margin:0;font-weight:800;font-size:1.4rem}.steps-stat-meta{margin:0;color:var(--text-secondary)}.steps-route{position:relative;height:14px;border-radius:999px;background:color-mix(in srgb,var(--border-soft) 65%,transparent);overflow:hidden;border:1px solid var(--border-soft)}.steps-route-line{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,color-mix(in srgb,var(--link-color) 18%,transparent),transparent)}.steps-route-fill{position:absolute;left:0;top:0;bottom:0;background:var(--button-primary-gradient)}.steps-route-marker{position:absolute;top:50%;width:12px;height:12px;border-radius:999px;transform:translate(-50%,-50%);background:var(--card-bg);border:2px solid var(--link-color);box-shadow:var(--shadow-soft)}.steps-route-start{left:2px;transform:translateY(-50%)}.steps-route-end{left:calc(100% - 2px);transform:translate(-100%,-50%)}.steps-charts{display:grid;gap:1.75rem}.steps-leaderboard{display:grid;gap:1rem}.steps-leader-row{background:var(--bg-soft);border-radius:1.25rem;border:1px solid var(--border-soft);padding:1.1rem 1.25rem;display:grid;grid-template-columns:1fr;gap:.75rem}.steps-leader-main{display:flex;align-items:baseline;justify-content:space-between;gap:1rem}.steps-leader-title{display:inline-flex;align-items:baseline;gap:.6rem}.steps-leader-dot{width:10px;height:10px;border-radius:999px;background:var(--text-muted);box-shadow:0 0 0 3px color-mix(in srgb,var(--border-soft) 55%,transparent);flex:0 0 auto;transform:translateY(1px)}.steps-leader-rank{font-weight:800;color:var(--text-primary)}.steps-leader-name{font-weight:700;color:var(--text-primary)}.steps-leader-metrics{display:inline-flex;align-items:baseline;gap:.35rem}.steps-leader-steps{font-weight:800;color:var(--text-primary)}.steps-leader-unit{color:var(--text-secondary);font-weight:600}.steps-leader-bar{height:12px;border-radius:999px;background:color-mix(in srgb,var(--border-soft) 55%,transparent);overflow:hidden;border:1px solid var(--border-soft)}.steps-leader-bar-fill{height:100%;background:var(--button-primary-gradient)}.steps-leader-spark{display:flex;justify-content:flex-end}.steps-sparkline{width:120px;height:34px;border-radius:10px;background:var(--card-bg);border:1px solid var(--border-soft)}.steps-sparkline-line{fill:none;stroke:var(--link-color);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.steps-sparkline-empty{width:120px;height:34px;border-radius:10px;background:var(--card-bg);border:1px dashed var(--border-soft)}.steps-period-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.steps-period-card{background:var(--bg-soft);border:1px solid var(--border-soft);border-radius:1.25rem;padding:1.25rem 1.35rem;display:grid;gap:.9rem}.steps-period-card h3{margin:0;font-size:1.1rem;font-weight:800;color:var(--text-primary)}.steps-period-list{list-style:none;padding:0;margin:0;display:grid;gap:.9rem}.steps-period-row{display:grid;grid-template-columns:minmax(110px,160px) 1fr;gap:.8rem;align-items:start}.steps-period-name{font-weight:800;color:var(--text-primary);display:inline-flex;align-items:baseline;gap:.5rem}.steps-period-values{display:grid;gap:.15rem}.steps-period-total{font-weight:800;color:var(--text-primary)}.steps-period-meta{color:var(--text-secondary);font-size:.95rem}.steps-chart-card{background:var(--card-bg);border-radius:1.75rem;padding:2rem;box-shadow:var(--shadow-medium);display:grid;gap:1.25rem}.steps-chart-header{display:grid;gap:.35rem}.steps-chart-header h2{margin:0;font-size:1.5rem}.steps-chart-subtitle{margin:0;color:var(--text-secondary);font-size:.95rem}.steps-chart-scroll{overflow-x:auto;padding-bottom:.25rem}.steps-chart{width:100%;min-width:720px;height:auto;display:block}.steps-chart-plot{fill:var(--bg-soft);stroke:var(--border-soft);stroke-width:2}.steps-chart-grid{stroke:color-mix(in srgb,var(--border-soft) 70%,transparent);stroke-width:1}.steps-chart-threshold{stroke:color-mix(in srgb,var(--text-secondary) 70%,transparent);stroke-width:2;stroke-dasharray:6 6}.steps-chart-threshold-label{fill:var(--text-secondary);font-size:13px;font-weight:700}.steps-monthly-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.steps-monthly-card{background:var(--bg-soft);border-radius:1.25rem;padding:1.25rem 1.35rem;border:1px solid var(--border-soft);display:grid;gap:.75rem}.steps-monthly-card.is-wide{grid-column:1 / -1}.steps-monthly-card h3{margin:0;font-size:1.1rem}.steps-monthly-subtitle{margin:0;color:var(--text-secondary)}.steps-podium{display:grid;gap:.75rem;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end}.steps-podium-slot{border-radius:1.25rem;border:2px solid var(--border-soft);padding:.9rem 1rem;background:color-mix(in srgb,var(--card-bg) 60%,transparent);display:grid;gap:.25rem;min-height:120px}.steps-podium-slot.is-second{min-height:132px}.steps-podium-slot.is-third{min-height:120px}.steps-podium-slot.is-first{min-height:162px}.steps-podium-rank{font-weight:900;color:var(--text-secondary);display:inline-flex;align-items:center;gap:.4rem}.steps-podium-medal{font-size:1.05rem;line-height:1}.steps-podium-name{font-weight:900;font-size:1.05rem}.steps-podium-score{color:var(--text-secondary);font-weight:700}.steps-goal-block{display:grid;gap:.5rem;padding:.75rem .85rem;border-radius:1rem;border:1px solid color-mix(in srgb,var(--border-soft) 65%,transparent);background:color-mix(in srgb,var(--card-bg) 55%,transparent)}.steps-goal-header{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem}.steps-goal-title{font-weight:800;color:var(--text-primary)}.steps-goal-meta{color:var(--text-secondary);font-weight:700;font-size:.95rem}.steps-goal-bar{height:12px;border-radius:999px;background:color-mix(in srgb,var(--border-soft) 65%,transparent);overflow:hidden;border:1px solid var(--border-soft)}.steps-goal-bar-fill{height:100%;width:0;background:var(--button-primary-gradient)}.steps-goal-list{display:grid;gap:.35rem}.steps-goal-row{display:flex;justify-content:space-between;gap:.75rem}.steps-goal-person{font-weight:800;display:inline-flex;align-items:baseline;gap:.5rem}.steps-member-dot{width:10px;height:10px;border-radius:999px;background:var(--text-muted);box-shadow:0 0 0 3px color-mix(in srgb,var(--border-soft) 55%,transparent);flex:0 0 auto;transform:translateY(1px)}.steps-goal-footnote{margin:0;color:var(--text-secondary)}.steps-badges{display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.steps-badge-section{margin-top:1rem}.steps-badges.steps-badges-compact{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.steps-badge-showcase{border-radius:1.1rem;border:1px solid color-mix(in srgb,var(--border-soft) 70%,transparent);background:color-mix(in srgb,var(--card-bg) 55%,transparent);padding:.8rem .9rem;display:grid;gap:.55rem;margin-bottom:.8rem}.steps-badge-showcase-row{display:grid;grid-template-columns:minmax(180px,240px) 1fr;gap:.75rem;align-items:center}.steps-badge-showcase-name{display:inline-flex;align-items:baseline;gap:.55rem;font-weight:900;color:var(--text-primary)}.steps-badge-showcase-count{font-size:.85rem;font-weight:900;color:var(--text-muted);border:1px solid color-mix(in srgb,var(--border-soft) 75%,transparent);background:color-mix(in srgb,var(--card-bg) 70%,transparent);padding:.05rem .45rem;border-radius:999px}.steps-badge-showcase-icons{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}.steps-badge-showcase-empty{color:var(--text-muted);font-weight:800}.steps-mini-badge{width:30px;height:30px;border-radius:12px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--border-soft) 70%,transparent);background:color-mix(in srgb,var(--card-bg) 70%,transparent);font-size:16px;line-height:1}.steps-mini-badge.is-daily{box-shadow:0 0 0 2px color-mix(in srgb,var(--link-color) 18%,transparent)}.steps-mini-badge.is-weekly{box-shadow:0 0 0 2px color-mix(in srgb,var(--button-primary-gradient) 18%,transparent)}.steps-mini-badge.is-monthly{box-shadow:0 0 0 2px color-mix(in srgb,var(--border-soft) 60%,transparent)}.steps-badge{border-radius:1.1rem;border:1px solid color-mix(in srgb,var(--border-soft) 70%,transparent);background:color-mix(in srgb,var(--card-bg) 55%,transparent);padding:.9rem 1rem;display:grid;gap:.45rem;border-left-width:6px;border-left-color:var(--border-soft)}.steps-badge.is-compact{padding:.65rem .75rem;min-height:64px;align-content:center;overflow:hidden}.steps-badge-compact-top{display:flex;align-items:center;justify-content:space-between;gap:.6rem;min-width:0}.steps-badge.is-compact .steps-badge-icon{flex:0 0 auto;width:30px;height:30px;border-radius:11px;font-size:16px}.steps-badge.is-compact .steps-badge-scope{flex:0 0 auto;white-space:nowrap}.steps-badge-compact-name{flex:1;min-width:0;font-weight:900;color:var(--text-primary);font-size:.92rem;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.steps-badge-top{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.steps-badge-title{font-weight:900;color:var(--text-primary);display:inline-flex;align-items:center;gap:.55rem}.steps-badge-scope{font-size:.75rem;font-weight:950;letter-spacing:.06em;padding:.1rem .45rem;border-radius:999px;border:1px solid color-mix(in srgb,var(--border-soft) 75%,transparent);color:var(--text-secondary);background:color-mix(in srgb,var(--card-bg) 70%,transparent)}.steps-badge-scope.is-daily{color:color-mix(in srgb,var(--link-color) 80%,var(--text-primary));border-color:color-mix(in srgb,var(--link-color) 35%,var(--border-soft));background:color-mix(in srgb,var(--link-color) 10%,transparent)}.steps-badge-scope.is-weekly{color:color-mix(in srgb,var(--button-primary-gradient) 75%,var(--text-primary));border-color:color-mix(in srgb,var(--button-primary-gradient) 30%,var(--border-soft));background:color-mix(in srgb,var(--button-primary-gradient) 10%,transparent)}.steps-badge-scope.is-monthly{color:var(--text-secondary)}.steps-yesterday-hourly{margin-top:1rem}.steps-hourly-card{border-radius:1.1rem;border:1px solid color-mix(in srgb,var(--border-soft) 70%,transparent);background:color-mix(in srgb,var(--card-bg) 55%,transparent);padding:.75rem .85rem}.steps-hourly-scroll{overflow-x:auto;padding-bottom:.25rem}.steps-hourly-svg{width:100%;min-width:560px;height:auto;display:block}.steps-hourly-bg{fill:color-mix(in srgb,var(--card-bg) 70%,transparent);stroke:color-mix(in srgb,var(--border-soft) 70%,transparent)}.steps-hourly-band{fill:color-mix(in srgb,var(--border-soft) 10%,transparent)}.steps-hourly-hour{fill:var(--text-muted);font-size:11px;font-weight:800}.steps-hourly-name{fill:var(--text-secondary);font-size:12px;font-weight:900}.steps-hourly-note{margin:.5rem 0 0;color:var(--text-muted);font-size:.9rem;font-weight:700}.steps-badge-icon{width:34px;height:34px;border-radius:12px;display:grid;place-items:center;background:color-mix(in srgb,var(--link-color) 14%,transparent);border:1px solid color-mix(in srgb,var(--border-soft) 70%,transparent);font-size:18px;line-height:1}.steps-badge-holders{display:inline-flex;align-items:baseline;gap:.6rem;color:var(--text-secondary);font-weight:700}.steps-badge-holder{display:inline-flex;align-items:baseline;gap:.4rem}.steps-badge-holder.is-empty{color:var(--text-muted)}.steps-badge-holder-name{color:var(--text-primary);font-weight:800}.steps-badge-detail{color:var(--text-secondary);font-weight:700}.steps-badge-hint{color:var(--text-muted);font-size:.9rem}.steps-inline-members{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:.55rem}.steps-inline-member{display:inline-flex;align-items:baseline;gap:.45rem}.steps-inline-member-name{color:var(--text-primary);font-weight:800}.steps-inline-sep{color:var(--text-muted);font-weight:800}.steps-route-card{border-radius:1.1rem;border:1px solid color-mix(in srgb,var(--border-soft) 70%,transparent);background:color-mix(in srgb,var(--card-bg) 55%,transparent);padding:.75rem .85rem}.steps-route-svg{width:100%;height:auto;display:block}.steps-route-path{stroke:color-mix(in srgb,var(--border-soft) 80%,transparent);stroke-width:10;stroke-linecap:round}.steps-route-path.steps-route-path-progress{stroke:var(--link-color)}.steps-route-dot{fill:var(--card-bg);stroke:var(--border-soft);stroke-width:2}.steps-route-dot.is-reached{stroke:var(--link-color)}.steps-route-label{fill:var(--text-secondary);font-size:12px;font-weight:800}.steps-route-meta{margin:0;color:var(--text-secondary)}.steps-heatmap{display:grid;gap:.65rem}.steps-heatmap-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.35rem}.steps-heatmap-weekday{color:var(--text-muted);font-weight:800;font-size:.85rem;text-align:center}.steps-heatmap-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.35rem}.steps-heatmap-cell{position:relative;border-radius:.65rem;border:1px solid var(--border-soft);background:var(--bg-soft);min-height:42px;display:grid;place-items:center;overflow:hidden}.steps-heatmap-cell:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--link-color);opacity:var(--heat, 0)}.steps-heatmap-cell.is-empty{border-style:dashed;background:transparent}.steps-heatmap-cell.is-future{opacity:.6}.steps-heatmap-day{position:relative;z-index:1;font-weight:900;color:var(--text-primary)}.steps-heatmap-legend{margin:0;color:var(--text-secondary);font-size:.95rem}.steps-chart-tick,.steps-chart-xlabel{fill:var(--text-secondary);font-size:12px}.steps-series{fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.steps-series-point{fill:var(--card-bg);stroke-width:3}.series-0{stroke:var(--link-color)}.series-1{stroke:var(--text-primary)}.series-2{stroke:var(--text-secondary)}.series-3{stroke:var(--danger-color)}.steps-legend{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.75rem 1.25rem}.steps-legend-item{display:inline-flex;align-items:center;gap:.6rem;color:var(--text-secondary)}.steps-legend-swatch{width:1.1rem;height:0;border-top-width:4px;border-top-style:solid;border-radius:999px}.steps-legend-label{font-weight:600;color:var(--text-primary)}.steps-footer{padding:1.5rem;text-align:center;color:var(--text-muted);font-size:.875rem}.steps-admin-shell{min-height:100vh;background:var(--bg-canvas);display:flex;flex-direction:column;color:var(--text-primary)}.steps-admin-header{padding:2.25rem 1.5rem 1.25rem;text-align:center}.steps-admin-header h1{font-size:2.25rem;font-weight:700;margin-bottom:.5rem}.steps-admin-header p{color:var(--text-secondary);margin-bottom:1rem}.steps-admin-nav{display:flex;justify-content:center;gap:1.25rem;flex-wrap:wrap}.steps-admin-link{color:var(--link-color);font-weight:600}.steps-admin-link:hover{text-decoration:underline}.steps-admin-main{flex:1;width:min(980px,94vw);margin:0 auto 3.5rem;display:grid;gap:1.75rem;grid-template-columns:1fr;align-items:start}@media (min-width: 900px){.steps-admin-main{grid-template-columns:minmax(0,1fr) minmax(0,340px)}}.steps-admin-card{background:var(--card-bg);border-radius:1.75rem;padding:2rem;box-shadow:var(--shadow-medium);display:grid;gap:1.25rem;min-width:0;overflow:hidden}.steps-admin-card-header{display:grid;gap:.35rem}.steps-admin-card-header h2{margin:0;font-size:1.5rem;font-weight:800}.steps-admin-card-header p{margin:0;color:var(--text-secondary)}.steps-admin-state{padding:1rem 1.25rem;border-radius:1rem;background:var(--bg-soft);border:1px solid var(--border-soft);color:var(--text-secondary)}.steps-admin-error{color:var(--danger-color);background:var(--error-surface)}.steps-admin-success{color:var(--success-color);background:color-mix(in srgb,var(--success-color) 10%,var(--bg-soft))}.steps-admin-form{display:grid;gap:1rem}.steps-admin-field{display:grid;gap:.35rem;min-width:0}.steps-admin-color-swatch{width:100%;height:10px;border-radius:999px;border:1px solid color-mix(in srgb,var(--border-soft) 65%,transparent)}.steps-admin-label{font-weight:700;color:var(--text-primary)}.steps-admin-input{border:1px solid var(--border-soft);border-radius:.9rem;padding:.75rem .95rem;background:var(--bg-soft);color:var(--text-primary);font-size:1rem;width:100%;min-width:0;box-sizing:border-box}.steps-admin-input:focus{outline:none;border-color:var(--link-color);box-shadow:0 0 0 3px var(--focus-ring-color)}.steps-admin-textarea{min-height:120px;resize:vertical}.steps-admin-help{margin:.15rem 0 0;color:var(--text-secondary);font-size:.95rem}.steps-admin-divider{height:1px;background:var(--border-soft);margin:.35rem 0}.steps-admin-participants{display:grid;gap:.75rem}.steps-admin-participants-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.steps-admin-participants-grid{display:grid;gap:1rem}.steps-admin-participant-row{background:var(--bg-soft);border:1px solid var(--border-soft);border-radius:1.25rem;padding:1rem;display:grid;gap:.75rem;min-width:0}@media (min-width: 900px){.steps-admin-participant-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end}}.steps-admin-toggle{display:inline-flex;align-items:center;gap:.55rem;padding:.75rem .25rem;color:var(--text-secondary);font-weight:700}.steps-admin-toggle input{width:18px;height:18px}.steps-admin-small{border:none;border-radius:.85rem;padding:.7rem 1.1rem;font-weight:800;background:var(--border-soft);color:var(--text-primary);cursor:pointer;height:fit-content}.steps-admin-small:hover{background:var(--border-strong)}.steps-admin-actions{display:flex;justify-content:flex-end;padding-top:.5rem}.steps-admin-button{border:none;border-radius:999px;padding:.75rem 1.6rem;font-weight:700;cursor:pointer;background:var(--link-color);color:#fff}.steps-admin-button:disabled{opacity:.7;cursor:not-allowed}.steps-admin-notes{margin:0;padding-left:1.25rem;color:var(--text-secondary);display:grid;gap:.5rem}.steps-admin-footer{padding:1.5rem;text-align:center;color:var(--text-muted);font-size:.875rem}:root{color-scheme:light;font-family:Sora,Space Grotesk,Segoe UI Variable,Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--font-body: "Sora", "Space Grotesk", "Segoe UI Variable", "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--bg-canvas: #f5f6fb;--bg-muted: #eef2ff;--bg-surface: #ffffff;--bg-soft: #f8fafc;--card-bg: #ffffff;--card-elevated: #ffffff;--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #94a3b8;--text-inverse: #f8fafc;--link-color: #2563eb;--link-hover: #1d4ed8;--border-soft: #e2e8f0;--border-strong: #cbd5f5;--input-bg: #f8fafc;--input-border: #d0d7e2;--input-border-strong: #cbd5f5;--focus-ring-color: rgba(99, 102, 241, .25);--shadow-soft: 0 18px 40px rgba(15, 23, 42, .08);--shadow-medium: 0 22px 45px rgba(30, 64, 175, .12);--shadow-strong: 0 30px 60px rgba(15, 23, 42, .15);--button-primary-gradient: linear-gradient(135deg, #1d4ed8 0%, #9333ea 100%);--button-secondary-gradient: linear-gradient(135deg, #0f766e 0%, #14b8a6 100%);--cta-shadow: 0 14px 30px rgba(59, 130, 246, .25);--cta-shadow-hover: 0 20px 40px rgba(79, 70, 229, .22);--danger-color: #dc2626;--warning-color: #f59e0b;--success-color: #059669;--info-color: #1d4ed8;--error-surface: #fef2f2;--warning-surface: #fef9c3;--success-surface: #ecfccb;--info-surface: #eef2ff;--backdrop-color: rgba(15, 23, 42, .65);--toggle-bg: rgba(255, 255, 255, .92);--toggle-fg: #0f172a;--steps-palette-ocean: var(--link-color);--steps-palette-sky: color-mix(in srgb, var(--link-color) 70%, var(--info-color) 30%);--steps-palette-teal: color-mix(in srgb, var(--info-color) 45%, var(--success-color) 55%);--steps-palette-mint: var(--success-color);--steps-palette-lime: color-mix(in srgb, var(--success-color) 70%, var(--warning-color) 30%);--steps-palette-amber: var(--warning-color);--steps-palette-orange: color-mix(in srgb, var(--warning-color) 70%, var(--danger-color) 30%);--steps-palette-rose: var(--danger-color);--steps-palette-magenta: color-mix(in srgb, var(--danger-color) 55%, var(--link-color) 45%);--steps-palette-violet: color-mix(in srgb, var(--link-color) 65%, var(--text-primary) 35%);--steps-palette-indigo: color-mix(in srgb, var(--info-color) 75%, var(--text-primary) 25%);--steps-palette-slate: var(--text-secondary)}[data-theme=dark]{color-scheme:dark;--font-body: "Sora", "Space Grotesk", "Segoe UI Variable", "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--bg-canvas: #050b18;--bg-muted: #08152b;--bg-surface: #0f1f37;--bg-soft: #0d1a2b;--card-bg: #0f1f37;--card-elevated: #122545;--text-primary: #f1f5f9;--text-secondary: #cbd5f5;--text-muted: #94a3b8;--text-inverse: #050b18;--link-color: #7dd3fc;--link-hover: #38bdf8;--border-soft: rgba(148, 163, 184, .35);--border-strong: rgba(148, 163, 184, .55);--input-bg: rgba(15, 23, 42, .75);--input-border: rgba(99, 102, 241, .4);--input-border-strong: rgba(191, 219, 254, .6);--focus-ring-color: rgba(125, 211, 252, .3);--shadow-soft: 0 18px 40px rgba(2, 6, 23, .7);--shadow-medium: 0 22px 45px rgba(8, 25, 52, .75);--shadow-strong: 0 30px 60px rgba(3, 7, 18, .85);--button-primary-gradient: linear-gradient(135deg, #7dd3fc 0%, #c084fc 100%);--button-secondary-gradient: linear-gradient(135deg, #34d399 0%, #10b981 100%);--cta-shadow: 0 14px 30px rgba(13, 148, 136, .35);--cta-shadow-hover: 0 20px 40px rgba(13, 148, 136, .45);--danger-color: #f87171;--warning-color: #fbbf24;--success-color: #6ee7b7;--info-color: #93c5fd;--error-surface: rgba(248, 113, 113, .2);--warning-surface: rgba(251, 191, 36, .2);--success-surface: rgba(16, 185, 129, .2);--info-surface: rgba(59, 130, 246, .22);--backdrop-color: rgba(2, 6, 23, .85);--toggle-bg: rgba(15, 23, 42, .9);--toggle-fg: #f8fafc;--steps-palette-ocean: var(--link-color);--steps-palette-sky: color-mix(in srgb, var(--link-color) 70%, var(--info-color) 30%);--steps-palette-teal: color-mix(in srgb, var(--info-color) 45%, var(--success-color) 55%);--steps-palette-mint: var(--success-color);--steps-palette-lime: color-mix(in srgb, var(--success-color) 70%, var(--warning-color) 30%);--steps-palette-amber: var(--warning-color);--steps-palette-orange: color-mix(in srgb, var(--warning-color) 70%, var(--danger-color) 30%);--steps-palette-rose: var(--danger-color);--steps-palette-magenta: color-mix(in srgb, var(--danger-color) 55%, var(--link-color) 45%);--steps-palette-violet: color-mix(in srgb, var(--link-color) 65%, var(--text-primary) 35%);--steps-palette-indigo: color-mix(in srgb, var(--info-color) 75%, var(--text-primary) 25%);--steps-palette-slate: var(--text-secondary)}*{box-sizing:border-box;margin:0;padding:0}body{min-height:100vh;background:var(--bg-canvas);color:var(--text-primary);font-family:var(--font-body, "Sora", "Space Grotesk", "Segoe UI Variable", "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif);transition:background .2s ease,color .2s ease}#root{min-height:100vh}a{color:var(--link-color);text-decoration:none}a:hover{color:var(--link-hover)}button,input,select,textarea{font:inherit;color:inherit}
