:root{--bg: #fbfff0;--surface: #fdfef9;--surface-strong: #ffffff;--surface-soft: #fbffe8;--border: #dcebba;--border-strong: #b7de39;--text: #15341d;--muted: #57725d;--green: #2ea24c;--green-2: #55b14f;--green-soft: #eff9be;--accent: #e4f53f;--sun: #ffe34f;--shadow: 0 22px 44px rgba(101, 137, 28, .1);--radius-xl: 32px;--radius-lg: 24px;--radius-md: 16px;--font-display: "Sora", "Noto Sans SC", sans-serif;--font-body: "Noto Sans SC", sans-serif}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;font-family:var(--font-body);color:var(--text);background:radial-gradient(circle at 0% 0%,rgba(255,227,79,.34),transparent 24%),radial-gradient(circle at 92% 10%,rgba(111,212,78,.26),transparent 24%),radial-gradient(circle at 52% 100%,rgba(228,245,63,.18),transparent 30%),linear-gradient(180deg,#fffff3,#fbfff0 48%,#f6fde7)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{border:0;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}#app,.site-frame{width:100%}.page-shell{width:min(1160px,calc(100vw - 32px));margin:0 auto;padding-bottom:56px}.topbar{position:fixed;top:0;left:0;z-index:10;width:100%;background:transparent;border-bottom:1px solid transparent;transition:background .22s ease,border-color .22s ease,box-shadow .22s ease}.topbar.elevated{background:#fffff4eb;border-bottom-color:#dcebbaeb;box-shadow:0 10px 24px #32471214}.topbar-inner{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 0;width:min(1160px,calc(100vw - 32px));margin:0 auto}.topbar:not(.elevated) .brand-copy strong,.topbar:not(.elevated) .brand-copy em,.topbar:not(.elevated) .nav,.topbar:not(.elevated) .nav a{color:#f6ffe8}.topbar:not(.elevated) .ghost-btn{background:#faffee1f;border-color:#f5ffcf47;color:#f6ffe8}.brand,.toolbar,.hero-actions,.card-actions,.coach-top,.coach-id,.section-head,.mini-head,.site-footer,.panel-head,.match-head,.drawer-top,.drawer-total{display:flex;gap:14px}.brand{align-items:center}.brand-mark{width:52px;height:52px;display:grid;place-items:center;border-radius:16px;background:linear-gradient(135deg,#fff8cf,#e4f53f,#79d34a);color:#17311e;font-family:var(--font-display);font-weight:800;box-shadow:0 12px 26px #c2d62c3d}.brand-copy{display:grid;gap:2px}.brand-copy strong,.hero-copy h1,.panel-head h2,.section-head h2,.match-card h3,.coach-card h3,.package-card h3,.dashboard-card h3,.experience-copy h2,.modal-head h2,.drawer-top h2{font-family:var(--font-display)}.brand-copy em{font-style:normal;font-size:.74rem;letter-spacing:.14em;color:var(--muted)}.nav{display:flex;align-items:center;gap:18px;color:var(--muted);font-size:.96rem}.nav a:hover,.site-footer a:hover,.text-btn:hover{color:var(--green)}.primary-btn,.ghost-btn,.favorite-btn,.chip,.icon-btn{transition:transform .18s ease,background .18s ease,border-color .18s ease,color .18s ease}.primary-btn,.ghost-btn{min-height:48px;padding:0 18px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-weight:700}.primary-btn{background:linear-gradient(135deg,#ffe34f,#bdf235 55%,#5ebf4b);color:#17361f;box-shadow:0 16px 28px #abcc1c47}.ghost-btn,.chip,.favorite-btn,.icon-btn,.field input,.field select,.drawer-card input,.drawer-card textarea{background:var(--surface);border:1px solid var(--border);color:var(--text)}.primary-btn:hover,.ghost-btn:hover,.chip:hover,.favorite-btn:hover,.icon-btn:hover{transform:translateY(-1px)}.page-main{padding-top:22px;display:grid;gap:22px}.hero{display:block}.hero-immersive{position:relative;min-height:100vh;overflow:hidden;display:grid;align-items:end}.hero-media,.hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0}.hero-media{background:linear-gradient(120deg,#0d2c1629,#103e190f),url(https://images.unsplash.com/photo-1517836357463-d25dfeac3438?auto=format&fit=crop&w=1800&q=80) center 28% / cover no-repeat;transform:scale(1.04)}.hero-overlay{background:radial-gradient(circle at 15% 18%,rgba(255,228,77,.42),transparent 24%),radial-gradient(circle at 82% 12%,rgba(120,226,92,.26),transparent 22%),linear-gradient(180deg,#faffe133,#0a261114 45%,#091d0e85)}.hero-inner{position:relative;z-index:1;width:min(1160px,calc(100vw - 32px));margin:0 auto;padding:140px 0 64px}.hero-copy,.hero-panel,.content-section,.experience-banner,.dashboard-card{background:#ffffffd1;border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow)}.hero-copy,.hero-panel,.content-section,.experience-banner,.dashboard-card{padding:28px}.hero-copy{background:none;border:0;box-shadow:none;padding:0;min-height:min(74vh,720px);display:flex;flex-direction:column;justify-content:center;gap:20px;max-width:760px}.hero-kicker,.section-kicker,.badge,.soft-pill,.price-badge,.tag{display:inline-flex;align-items:center;width:fit-content;border-radius:999px;font-size:.82rem;font-weight:800}.hero-kicker,.section-kicker{margin:0;padding:8px 14px;background:linear-gradient(135deg,#eff7df,#fbf3bb);color:var(--green);letter-spacing:.05em;text-transform:uppercase}.hero-copy h1{margin:0;font-size:clamp(3.8rem,8vw,8.8rem);line-height:.82;letter-spacing:-.07em}.hero-wordmark{display:grid;gap:2px}.hero-wordmark span{display:block;width:fit-content;font-family:Sora,Noto Sans SC,sans-serif;font-weight:800;background:linear-gradient(180deg,#fffef1 6%,#fff36d 44%,#8ff05b);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 10px 28px rgba(32,52,17,.22),0 2px 0 rgba(255,255,255,.1)}.hero-wordmark span:last-child{margin-left:.18em;transform:skew(-8deg) rotate(-2deg)}.section-head h2{font-size:clamp(1.9rem,2.8vw,3rem);line-height:1.08}.experience-copy h2{margin:0;font-size:clamp(2.2rem,3.2vw,3.6rem);line-height:.96;letter-spacing:-.05em}.hero-note{margin:0;color:#f8ffece6;font-size:.98rem;letter-spacing:.18em;text-transform:uppercase}.hero-text,.match-card p,.coach-card p,.package-card p,.experience-copy p,.site-footer p,.list-card p,.modal-head p,.drawer-card p,.section-meta span{margin:0;color:var(--muted);line-height:1.72}.hero-stats,.package-grid,.coach-grid,.dashboard-grid{display:grid;gap:16px}.hero-stats{margin-top:8px;grid-template-columns:repeat(4,minmax(0,1fr))}.hero-stats article,.experience-points div,.profile-summary article,.match-card,.coach-card,.package-card,.dashboard-card,.list-card,.drawer-card{background:var(--surface-strong);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 8px 24px #2230250b}.hero-stats article,.experience-points div,.profile-summary article{padding:18px}.hero-stats article{background:#faffee29;border:1px solid rgba(245,255,207,.28);box-shadow:none}.hero-stats strong,.hero-stats span{color:#f6ffe8}.hero-scroll{display:inline-flex;align-items:center;gap:10px;width:fit-content;margin-top:6px;padding:10px 16px;border-radius:999px;background:#faffee29;border:1px solid rgba(245,255,207,.34);color:#f6ffe8;font-weight:700}.hero-scroll:hover{transform:translateY(-1px)}.hero-stats strong,.price-stack strong,.profile-summary strong,.drawer-total strong{display:block;font-family:var(--font-display)}.panel-head,.section-head,.mini-head,.site-footer,.drawer-top,.drawer-total{justify-content:space-between;align-items:flex-start}.hero-panel{display:grid;gap:16px;background:linear-gradient(180deg,#fffffff5,#fbffe9fa),radial-gradient(circle at top right,rgba(255,227,79,.16),transparent 28%)}.badge,.soft-pill,.price-badge,.tag{padding:7px 12px}.badge,.soft-pill,.price-badge{background:linear-gradient(135deg,var(--green-soft),#fff4b3);color:var(--green)}.preset-row,.sport-filter,.tag-row,.picker-row{display:flex;flex-wrap:wrap;gap:10px}.chip{min-height:42px;padding:0 14px;border-radius:999px}.chip.active{background:linear-gradient(135deg,#eef9cf,#fff0a2);border-color:var(--border-strong);color:var(--green)}.planner-grid,.filter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.field{display:grid;gap:8px}.field-wide{grid-column:1 / -1}.field span{color:var(--muted);font-size:.9rem}.field input,.field select,.drawer-card input,.drawer-card textarea{min-height:52px;padding:0 16px;border-radius:14px;outline:none}.drawer-card textarea{min-height:120px;padding:14px 16px;resize:vertical}.field input:focus,.field select:focus,.drawer-card input:focus,.drawer-card textarea:focus{border-color:var(--green-2);box-shadow:0 0 0 4px #688d741a}.match-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.match-card,.coach-card,.package-card,.list-card{padding:20px}.match-card.featured,.package-card.featured{background:linear-gradient(180deg,#fffde8,#f3f9dc);border-color:var(--border-strong)}.match-head,.package-top,.coach-top,.mini-head{justify-content:space-between;align-items:flex-start}.experience-points span{color:var(--muted);font-size:.9rem}.content-section{display:grid;gap:20px;scroll-margin-top:92px}.vitality-section{margin-top:14px}.pulse-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.pulse-card,.feed-card{border-radius:22px;border:1px solid rgba(220,235,186,.95)}.pulse-card{display:grid;gap:6px;padding:18px;background:linear-gradient(180deg,#fffff3,#f7fddf)}.pulse-card span,.feed-card strong{color:var(--muted);font-size:.85rem;letter-spacing:.06em;text-transform:uppercase}.pulse-card strong{color:var(--green);font-family:var(--font-display);font-size:1.8rem}.pulse-card small{color:var(--muted)}.demo-feed{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.feed-card{display:grid;gap:8px;padding:16px 18px;background:linear-gradient(180deg,#fff7b875,#eff9be85)}.feed-card span{color:var(--text);line-height:1.6}.filter-layout{display:grid;gap:16px}.section-meta{display:grid;gap:8px;max-width:320px}.section-meta strong{font-size:1rem}.coach-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.coach-id{align-items:center}.coach-card{display:grid;gap:16px}.coach-avatar{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;color:#102114;font-family:var(--font-display);font-weight:800}.favorite-btn,.icon-btn{width:40px;height:40px;border-radius:999px}.coach-meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.coach-metric{padding:14px 16px;border-radius:18px;background:linear-gradient(180deg,#fdffef,#f7fddf);border:1px solid rgba(220,235,186,.95)}.coach-metric span,.coach-label{display:block;margin-bottom:6px;color:var(--muted);font-size:.82rem;letter-spacing:.06em;text-transform:uppercase}.coach-metric strong{display:block;color:var(--green);font-family:var(--font-display);font-size:1.2rem}.coach-summary{min-height:3.4em}.coach-tags{display:grid;gap:10px;padding-top:2px}.coach-pills,.card-actions{display:flex;flex-wrap:wrap;gap:12px}.package-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.price-stack{display:grid;gap:4px;text-align:right}.price-stack strong{font-size:2rem}.perk-list{margin:14px 0 0;padding-left:18px;display:grid;gap:10px;color:var(--muted)}.experience-shell{display:block}.experience-banner{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:18px;align-items:center;background:linear-gradient(135deg,#fffffffa,#f8fce7fa),radial-gradient(circle at 100% 0%,rgba(255,217,90,.14),transparent 28%)}.experience-copy{display:grid;gap:14px}.experience-points{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.experience-points div,.profile-summary article,.list-card,.drawer-card,.match-card,.coach-card,.package-card{background:linear-gradient(180deg,#fff,#fbfdf8)}.profile-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.dashboard-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.stack-list{display:grid;gap:14px}.experience-points strong{display:block;margin-top:8px;font-family:var(--font-display);font-size:1rem;line-height:1.45}.section-meta strong,.site-footer strong{color:var(--green)}.site-footer{border-top:1px solid rgba(220,235,186,.95);padding-top:22px}.tag{background:#f2f8d8;color:var(--green)}.favorite-btn{font-size:1.05rem}.empty-state{padding:18px;border-radius:var(--radius-md);border:1px dashed var(--border);color:var(--muted)}.site-footer{margin-top:28px;padding:0 6px}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:39;background:#22302529}.side-drawer,.modal-shell{position:fixed;z-index:40;background:#fdfefa;border:1px solid var(--border);box-shadow:0 24px 80px #2230252e}.side-drawer{top:0;right:0;width:min(480px,100vw);height:100vh;padding:26px;display:grid;gap:18px}.drawer-stack{display:grid;gap:14px;overflow:auto}.drawer-card{padding:18px}.drawer-card span{display:block;margin-bottom:8px;color:var(--muted);font-size:.9rem}.modal-shell{top:50%;left:50%;transform:translate(-50%,-50%);width:min(560px,calc(100vw - 32px));padding:28px;border-radius:var(--radius-xl)}.coach-modal{width:min(820px,calc(100vw - 32px))}.modal-close{position:absolute;top:18px;right:18px}.modal-head{display:grid;gap:10px;margin-bottom:18px}.switcher{display:flex;gap:10px;margin-bottom:16px}.form-stack{display:grid;gap:14px}.coach-modal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%);padding:14px 18px;border-radius:999px;background:#233827;color:#f5f8f3;opacity:0;pointer-events:none;transition:opacity .18s ease}.toast.show{opacity:1}@media(max-width:1160px){.experience-banner{grid-template-columns:1fr}.match-grid,.pulse-grid,.package-grid,.dashboard-grid,.coach-grid,.demo-feed,.experience-points{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:860px){.nav{display:none}.toolbar{gap:10px}.planner-grid,.filter-grid,.coach-modal-grid{grid-template-columns:1fr}.page-shell{width:min(100vw - 20px,1240px)}.topbar,.section-head,.site-footer,.drawer-top,.drawer-total,.topbar-inner{flex-direction:column;align-items:flex-start}.hero-inner{padding-top:132px;padding-bottom:40px}}@media(max-width:720px){.hero-copy,.hero-panel,.content-section,.experience-banner,.dashboard-card,.modal-shell,.side-drawer{padding:20px}.hero-copy h1{font-size:clamp(2rem,10vw,3.2rem)}.hero-wordmark span:last-child{margin-left:0}.section-head h2,.experience-copy h2{font-size:clamp(1.8rem,8vw,2.6rem)}.hero-stats,.match-grid,.coach-grid,.package-grid,.pulse-grid,.demo-feed,.experience-points,.profile-summary,.dashboard-grid,.coach-meta-grid{grid-template-columns:1fr}}
