:root{--navy:#0B376D;--blue:#2775C9;--blue2:#1763b5;--pale:#EAF4FF;--bg:#F5F8FC;--text:#17324d;--muted:#6d7f91;--line:#dce6ef;--green:#67C587;--yellow:#F2D45C;--orange:#F59A45;--red:#EB5B5B;--white:#fff;--shadow:0 16px 36px rgba(14,52,91,.10);--radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,"Segoe UI",Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.55}a{text-decoration:none;color:inherit}img{max-width:100%}.container-xl{max-width:1220px;margin:auto;padding-left:24px;padding-right:24px}.btn{border-radius:12px;padding:11px 18px;font-weight:700;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:.2s;cursor:pointer}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--blue);color:#fff;box-shadow:0 8px 20px rgba(39,117,201,.22)}.btn-primary:hover{background:var(--blue2);color:#fff}.btn-ghost{border-color:var(--line);background:#fff;color:var(--navy)}.btn-soft{background:var(--pale);color:var(--navy)}.btn-danger-soft{background:#fff0f0;color:#ae2929}.btn-block{width:100%}.brand{display:inline-flex;align-items:center;gap:10px;font-size:22px;font-weight:800;color:var(--navy)}.brand>span:last-child span{color:var(--blue)}.brand-mark{width:38px;height:38px;border-radius:12px;background:linear-gradient(145deg,var(--blue),var(--navy));color:#fff;display:grid;place-items:center;font-weight:900;box-shadow:0 8px 20px rgba(11,55,109,.25)}.brand-light{color:#fff}.public-header{height:76px;background:rgba(255,255,255,.94);position:sticky;top:0;z-index:50;border-bottom:1px solid rgba(220,230,239,.8);backdrop-filter:blur(12px)}.public-nav{height:100%;display:flex;align-items:center;justify-content:space-between}.public-nav nav{display:flex;gap:30px;color:#526a81;font-weight:600}.nav-actions{display:flex;gap:10px}.hero{padding:80px 0 58px;background:radial-gradient(circle at 85% 20%,#d7ebff 0,transparent 34%),linear-gradient(180deg,#fff,#f5f9fd)}.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center}.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;background:var(--pale);color:var(--navy);font-weight:800;font-size:13px;letter-spacing:.03em}.hero h1{font-size:54px;line-height:1.08;margin:20px 0;color:#102f4e;letter-spacing:-.035em}.hero h1 span{color:var(--blue)}.hero .lead{font-size:18px;color:#5c7185;max-width:680px}.hero-actions{display:flex;gap:12px;margin:28px 0}.trust-row{display:flex;gap:18px;flex-wrap:wrap;color:#65798d;font-size:14px}.trust-row span:before{content:'✓';display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#e4f7eb;color:#25834b;margin-right:7px}.hero-visual{position:relative}.device-card{background:#fff;border:1px solid #dce7f2;border-radius:28px;padding:18px;box-shadow:0 28px 70px rgba(21,70,118,.18);transform:rotate(1deg)}.device-top{height:24px;border-radius:11px 11px 5px 5px;background:var(--navy);display:flex;align-items:center;padding:0 12px;gap:6px}.device-top i{width:7px;height:7px;border-radius:50%;background:#fff;opacity:.55}.device-screen{border:1px solid #e4ebf2;border-radius:12px;margin-top:10px;padding:22px;background:#f8fbfe}.mini-dashboard{display:grid;grid-template-columns:1.2fr .8fr;gap:14px}.mini-gauge-card,.mini-factor{background:#fff;border-radius:14px;padding:16px;border:1px solid #e5edf5}.mini-gauge{width:190px;height:95px;margin:12px auto 0;border-radius:190px 190px 0 0;background:conic-gradient(from 270deg at 50% 100%,var(--green) 0 25%,var(--yellow) 25% 50%,var(--orange) 50% 75%,var(--red) 75% 100%);position:relative;overflow:hidden}.mini-gauge:after{content:'';position:absolute;left:28px;right:28px;bottom:0;height:67px;border-radius:140px 140px 0 0;background:#fff}.mini-score{font-size:34px;font-weight:900;text-align:center;margin-top:-42px;position:relative}.mini-factor ul{padding:0;margin:12px 0 0;list-style:none}.mini-factor li{display:flex;justify-content:space-between;padding:7px 0;border-bottom:1px solid #edf2f6;font-size:12px}.float-chip{position:absolute;background:#fff;border-radius:14px;padding:12px 15px;box-shadow:var(--shadow);font-weight:700;font-size:13px}.chip-one{top:-14px;right:-18px}.chip-two{bottom:12px;left:-35px}.section{padding:72px 0}.section-white{background:#fff}.section-head{text-align:center;max-width:760px;margin:0 auto 38px}.section-head h2{font-size:38px;margin:10px 0}.section-head p{color:var(--muted)}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.feature-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:25px;box-shadow:0 8px 25px rgba(19,60,100,.06)}.feature-card .icon-box{width:50px;height:50px;border-radius:14px;background:var(--pale);display:grid;place-items:center;font-size:24px;margin-bottom:16px}.feature-card h3{font-size:18px;margin:0 0 8px}.feature-card p{color:var(--muted);font-size:14px;margin:0}.risk-strip{display:grid;grid-template-columns:repeat(4,1fr);border-radius:16px;overflow:hidden;margin-top:30px}.risk-strip>div{text-align:center;padding:22px 12px;font-weight:800}.risk-strip small{display:block;margin-top:4px}.risk-low{background:#b8e9c8}.risk-mid{background:#f7e88b}.risk-high{background:#ffc27f}.risk-vhigh{background:#fa8989}.evidence-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.evidence-card{border:1px solid var(--line);border-radius:var(--radius);padding:28px;background:#fff}.evidence-card h3{margin-top:0}.evidence-card li{margin:11px 0;color:#526b81}.disclaimer-box{background:#0c3d78;color:#fff;border-radius:18px;padding:26px;display:flex;gap:18px;align-items:flex-start}.disclaimer-box .warn{font-size:31px}.public-footer{background:#082b55;color:#c8d8e8;padding:48px 0 18px}.footer-grid{display:grid;grid-template-columns:1fr 1.4fr .8fr;gap:40px}.footer-grid h4{color:#fff}.status-badge{display:block;width:max-content;border:1px solid rgba(255,255,255,.25);border-radius:999px;padding:6px 10px;margin:8px 0;font-size:11px;font-weight:800}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:30px;padding-top:18px;font-size:13px}.app-shell{display:flex;min-height:100vh}.sidebar{position:fixed;left:0;top:0;bottom:0;width:248px;background:linear-gradient(180deg,#0b376d,#08284f);color:#c9dbec;padding:24px 16px;z-index:100;display:flex;flex-direction:column}.sidebar .brand{padding:0 10px 24px}.sidebar-nav{display:flex;flex-direction:column;gap:5px;overflow-y:auto}.sidebar-nav a{padding:11px 13px;border-radius:12px;display:flex;align-items:center;gap:11px;font-size:14px;font-weight:650}.sidebar-nav a:hover,.sidebar-nav a.active{background:rgba(255,255,255,.12);color:#fff}.nav-icon{width:23px;text-align:center;font-size:17px}.nav-section{padding:18px 13px 6px;font-size:10px;font-weight:900;letter-spacing:.14em;color:#7598ba}.sidebar-footer{margin-top:auto;border-top:1px solid rgba(255,255,255,.14);padding-top:16px}.user-mini{display:flex;align-items:center;gap:10px;margin-bottom:10px}.avatar{width:37px;height:37px;border-radius:12px;display:grid;place-items:center;background:#fff;color:var(--navy);font-weight:900}.user-mini strong,.user-mini small{display:block}.user-mini strong{font-size:13px;color:#fff}.user-mini small{font-size:11px;color:#8fb0d0}.sidebar-footer>a{font-size:12px;color:#9db8d2}.app-main{margin-left:248px;width:calc(100% - 248px);min-height:100vh;display:flex;flex-direction:column}.app-header{height:84px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 30px;gap:16px;position:sticky;top:0;z-index:40}.app-header h1{font-size:20px;margin:0}.app-header p{font-size:12px;color:var(--muted);margin:2px 0 0}.header-actions{margin-left:auto;display:flex;align-items:center;gap:8px}.status-dot{width:8px;height:8px;border-radius:50%;background:#f59a45;box-shadow:0 0 0 5px rgba(245,154,69,.13)}.model-pill{font-size:11px;font-weight:700;color:#8b5a13;background:#fff4dc;border-radius:999px;padding:7px 10px}.menu-toggle{display:none;border:0;background:var(--pale);width:38px;height:38px;border-radius:10px}.content-wrap{padding:28px 30px;flex:1}.app-footer{padding:16px 30px;background:#fff;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}.app-footer a{color:var(--blue);font-weight:700}.page-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:20px}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 7px 24px rgba(15,53,91,.055);padding:22px}.card-flat{box-shadow:none}.card-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.card-title h2,.card-title h3{margin:0;font-size:17px}.muted{color:var(--muted)}.small{font-size:12px}.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.kpi{padding:19px;border-radius:16px;background:#fff;border:1px solid var(--line)}.kpi .kpi-label{font-size:12px;color:var(--muted)}.kpi .kpi-value{font-size:27px;font-weight:900;margin-top:5px}.kpi-icon{width:38px;height:38px;border-radius:12px;background:var(--pale);display:grid;place-items:center;float:right}.welcome-card{grid-column:span 8;background:linear-gradient(125deg,#0c3d78,#2775c9);color:#fff;border:0;overflow:hidden;position:relative}.welcome-card:after{content:'';position:absolute;width:270px;height:270px;border-radius:50%;background:rgba(255,255,255,.08);right:-70px;top:-110px}.welcome-card h2{font-size:26px;margin:0 0 8px}.welcome-card p{max-width:600px;color:#d7e7f6}.welcome-card .btn{background:#fff;color:var(--navy)}.quick-card{grid-column:span 4}.score-card{grid-column:span 5}.factor-card{grid-column:span 4}.education-mini{grid-column:span 3}.progress-card{grid-column:span 7}.habit-card{grid-column:span 5}.gauge-wrap{position:relative;width:280px;height:150px;margin:12px auto 0;overflow:hidden}.gauge-track{position:absolute;width:280px;height:280px;border-radius:50%;background:conic-gradient(from 270deg,var(--green) 0 25%,var(--yellow) 25% 50%,var(--orange) 50% 75%,var(--red) 75% 100%);clip-path:inset(0 0 50% 0)}.gauge-track:after{content:'';position:absolute;inset:35px;border-radius:50%;background:#fff}.gauge-needle{position:absolute;width:112px;height:4px;background:#17324d;bottom:10px;left:28px;transform-origin:100% 50%;transform:rotate(var(--needle,-20deg));border-radius:4px;z-index:3;transition:1s}.gauge-center{position:absolute;bottom:2px;left:50%;transform:translateX(-50%);text-align:center;z-index:4}.gauge-center strong{font-size:36px}.risk-badge{display:inline-block;padding:7px 12px;border-radius:999px;font-size:12px;font-weight:900}.risk-badge.success{background:#e1f5e7;color:#287449}.risk-badge.warning{background:#fff5c9;color:#7e6810}.risk-badge.orange{background:#fff0df;color:#a55b0f}.risk-badge.danger{background:#ffe3e3;color:#ad3333}.factor-list{display:flex;flex-direction:column;gap:12px}.factor-row{display:grid;grid-template-columns:1fr auto;gap:8px}.factor-row .bar{grid-column:1/-1;height:7px;background:#edf2f6;border-radius:999px;overflow:hidden}.factor-row .bar span{display:block;height:100%;background:var(--blue);border-radius:999px}.recommend-card{border-left:4px solid var(--blue);padding:16px;background:#fbfdff;border-radius:12px;margin-bottom:12px}.recommend-card h4{margin:0 0 6px}.recommend-card p{margin:4px 0;font-size:13px;color:#5d7287}.recommend-card .target{background:var(--pale);padding:9px;border-radius:9px;color:#214f7e}.auth-wrap{min-height:calc(100vh - 76px);display:grid;place-items:center;padding:50px 20px;background:radial-gradient(circle at 15% 10%,#dceeff,transparent 30%),var(--bg)}.auth-card{width:min(460px,100%);background:#fff;border:1px solid var(--line);border-radius:24px;padding:32px;box-shadow:var(--shadow)}.auth-card h1{margin:10px 0 4px}.auth-card .form-group{margin:15px 0}.form-label{display:block;font-size:13px;font-weight:750;margin-bottom:7px}.form-control,.form-select{width:100%;border:1px solid #cfdbe6;border-radius:11px;padding:11px 12px;font:inherit;background:#fff;color:var(--text)}.form-control:focus,.form-select:focus{outline:0;border-color:var(--blue);box-shadow:0 0 0 4px rgba(39,117,201,.11)}.input-help{font-size:11px;color:var(--muted);margin-top:5px}.field-error{color:#b33434;font-size:11px;margin-top:5px}.form-check{display:flex;align-items:flex-start;gap:9px}.form-check input{margin-top:5px}.setup-note{background:#fff7df;border:1px solid #f1d893;color:#805d15;padding:12px;border-radius:11px;font-size:12px}.wizard-shell{max-width:980px;margin:auto}.wizard-progress{display:flex;justify-content:space-between;margin:0 0 22px;position:relative}.wizard-progress:before{content:'';position:absolute;left:5%;right:5%;top:18px;height:2px;background:#dfe8f0}.wizard-step-indicator{position:relative;z-index:2;text-align:center;width:12.5%;font-size:10px;color:var(--muted)}.wizard-step-indicator span{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;margin:auto;background:#fff;border:2px solid #d4e0eb;font-weight:900}.wizard-step-indicator.active span,.wizard-step-indicator.done span{background:var(--blue);border-color:var(--blue);color:#fff}.wizard-step-indicator b{display:block;margin-top:5px}.wizard-panel{display:none}.wizard-panel.active{display:block}.form-section-title{display:flex;gap:14px;align-items:flex-start;margin-bottom:22px}.step-number{width:42px;height:42px;border-radius:13px;background:var(--navy);color:#fff;display:grid;place-items:center;font-weight:900}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.form-grid .full{grid-column:1/-1}.conditional-block{display:none;padding:18px;border-radius:14px;background:#f8fbfe;border:1px dashed #bfcfdd}.conditional-block.show{display:block}.wizard-actions{display:flex;justify-content:space-between;margin-top:24px;padding-top:18px;border-top:1px solid var(--line)}.choice-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.choice-card input{position:absolute;opacity:0}.choice-card span{display:block;padding:16px;border:1px solid var(--line);border-radius:13px;background:#fff;cursor:pointer;font-weight:700}.choice-card input:checked+span{border-color:var(--blue);background:var(--pale);box-shadow:0 0 0 2px rgba(39,117,201,.10)}.alert-box{border-radius:13px;padding:14px 16px;margin:14px 0}.alert-warning{background:#fff6dc;color:#795813;border:1px solid #efda9a}.alert-danger{background:#fff0f0;color:#982e2e;border:1px solid #efbcbc}.alert-info{background:#eaf4ff;color:#1f527f;border:1px solid #c7dff5}.result-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:20px}.score-hero{padding:28px}.score-hero .gauge-wrap{width:360px;height:190px}.score-hero .gauge-track{width:360px;height:360px}.score-hero .gauge-needle{width:145px;left:35px;bottom:10px}.score-hero .gauge-center strong{font-size:48px}.score-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:20px}.score-meta div{padding:12px;border-radius:12px;background:#f7fafc;text-align:center}.score-meta span{display:block;color:var(--muted);font-size:10px}.score-meta strong{font-size:13px}.result-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.article-card{background:#fff;border:1px solid var(--line);border-radius:17px;overflow:hidden}.article-thumb{height:125px;background:linear-gradient(145deg,#dceeff,#eff7fd);display:grid;place-items:center;font-size:40px}.article-body{padding:18px}.article-body h3{font-size:17px;margin:5px 0 8px}.article-body p{font-size:13px;color:var(--muted)}.source-line{font-size:10px;color:var(--blue);font-weight:700}.timer-display{font-size:72px;font-weight:900;letter-spacing:-.04em;text-align:center;margin:20px}.timer-controls{display:flex;justify-content:center;gap:10px}.challenge-ring{width:200px;height:200px;border-radius:50%;background:conic-gradient(var(--green) var(--progress,35%),#edf2f6 0);display:grid;place-items:center;margin:auto}.challenge-ring:before{content:'';width:150px;height:150px;border-radius:50%;background:#fff;position:absolute}.challenge-ring strong{position:relative;font-size:36px}.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{text-align:left;padding:12px;border-bottom:1px solid var(--line);font-size:13px}.data-table th{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.admin-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.check-list{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.check-row{display:flex;justify-content:space-between;padding:13px;border:1px solid var(--line);border-radius:11px}.check-ok{color:#25864e;font-weight:800}.check-fail{color:#b73333;font-weight:800}.toast-note{position:fixed;right:22px;top:94px;z-index:999;padding:13px 17px;border-radius:12px;box-shadow:var(--shadow);font-size:13px;animation:fadeOut .4s 4.5s forwards}.toast-note.success{background:#e3f7ea;color:#236b42}.toast-note.error{background:#ffe8e8;color:#9d2e2e}@keyframes fadeOut{to{opacity:0;transform:translateY(-10px);pointer-events:none}}.empty-state{text-align:center;padding:40px;color:var(--muted)}.empty-state .empty-icon{font-size:48px}.red-flag{border:1px solid #efb2b2;background:#fff4f4;border-radius:14px;padding:14px}.model-banner{display:flex;gap:10px;align-items:center;background:#fff8e7;border:1px solid #efdfa8;color:#71591a;border-radius:13px;padding:12px;font-size:12px;margin-bottom:18px}.metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.metric-box{padding:13px;background:#f7fafc;border-radius:11px}.metric-box span{display:block;font-size:10px;color:var(--muted)}.metric-box strong{font-size:18px}.progress-list{display:flex;flex-direction:column;gap:13px}.progress-item{display:grid;grid-template-columns:38px 1fr auto;gap:10px;align-items:center}.progress-icon{width:38px;height:38px;background:var(--pale);border-radius:11px;display:grid;place-items:center}.progress-item h4{margin:0;font-size:14px}.progress-item p{margin:2px 0 0;font-size:11px;color:var(--muted)}.badge-soft{background:var(--pale);color:var(--navy);padding:5px 8px;border-radius:999px;font-size:10px;font-weight:800}.profile-grid{display:grid;grid-template-columns:300px 1fr;gap:20px}.profile-card{text-align:center}.profile-avatar{width:92px;height:92px;border-radius:26px;background:linear-gradient(145deg,var(--blue),var(--navy));color:#fff;display:grid;place-items:center;font-size:34px;font-weight:900;margin:0 auto 15px}@media(max-width:1050px){.hero-grid{grid-template-columns:1fr}.hero-visual{max-width:650px;margin:auto}.feature-grid,.article-grid{grid-template-columns:repeat(2,1fr)}.welcome-card,.quick-card,.score-card,.factor-card,.education-mini,.progress-card,.habit-card{grid-column:span 12}.kpi-grid,.admin-kpis{grid-template-columns:repeat(2,1fr)}}@media(max-width:820px){.sidebar{transform:translateX(-100%);transition:.25s}.sidebar.open{transform:translateX(0)}.app-main{margin-left:0;width:100%}.menu-toggle{display:block}.header-actions{display:none}.content-wrap{padding:20px}.public-nav nav{display:none}.hero{padding-top:50px}.hero h1{font-size:40px}.feature-grid,.evidence-grid,.article-grid,.result-grid,.profile-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.choice-cards{grid-template-columns:1fr}.wizard-progress b{display:none}.score-meta{grid-template-columns:1fr}.check-list{grid-template-columns:1fr}}@media(max-width:560px){.container-xl{padding-left:16px;padding-right:16px}.public-header{height:68px}.public-nav .btn-ghost{display:none}.brand{font-size:19px}.hero h1{font-size:34px}.hero-actions{flex-direction:column}.trust-row{flex-direction:column;gap:8px}.feature-grid{grid-template-columns:1fr}.risk-strip{grid-template-columns:1fr 1fr}.kpi-grid,.admin-kpis{grid-template-columns:1fr}.app-header{padding:0 16px}.content-wrap{padding:16px}.gauge-wrap{transform:scale(.86);transform-origin:center}.score-hero .gauge-wrap{width:300px;transform:scale(.82);transform-origin:left top;margin-bottom:-25px}.article-grid{grid-template-columns:1fr}.app-footer{display:block}.wizard-step-indicator span{width:28px;height:28px}.wizard-progress:before{top:14px}.timer-display{font-size:52px}}


/* ===== MyoTrackAI Eye Exercise ===== */
.exercise-page{max-width:1180px;margin:0 auto}.exercise-hero-card{display:grid;grid-template-columns:1fr 280px;gap:24px;align-items:center;background:linear-gradient(135deg,#fff 0,#f3f9ff 100%);overflow:hidden;position:relative}.exercise-hero-card:after{content:'';position:absolute;width:260px;height:260px;border-radius:50%;background:rgba(39,117,201,.06);right:-110px;top:-120px}.exercise-hero-copy{position:relative;z-index:1}.exercise-eyebrow{display:inline-flex;padding:6px 10px;border-radius:999px;background:var(--pale);color:var(--navy);font-size:10px;font-weight:900;letter-spacing:.1em}.exercise-hero-card h2{font-size:30px;margin:10px 0 5px}.exercise-hero-card p{color:var(--muted);margin:0;max-width:720px}.exercise-safety-note{margin-top:14px;padding:11px 13px;border-radius:12px;background:#fff8e8;border:1px solid #efdea7;color:#735b1b;font-size:12px}.exercise-daily-progress{position:relative;z-index:1;background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;box-shadow:0 8px 24px rgba(15,53,91,.06)}.exercise-daily-progress>span{font-size:11px;color:var(--muted);font-weight:700}.exercise-daily-progress>strong{display:block;font-size:32px;margin:2px 0 8px;color:var(--navy)}.exercise-daily-progress small{font-size:10px;color:var(--muted)}.exercise-progress-track,.exercise-stage-progress{height:8px;border-radius:999px;background:#e9f0f6;overflow:hidden}.exercise-progress-track span,.exercise-stage-progress span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--blue),#5aa8ed);transition:width .35s ease}.exercise-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:20px 0}.exercise-card{position:relative;appearance:none;border:1px solid var(--line);background:#fff;border-radius:18px;padding:16px;text-align:center;box-shadow:0 8px 24px rgba(15,53,91,.055);cursor:pointer;color:var(--text);font:inherit;transition:.22s}.exercise-card:hover{transform:translateY(-3px);border-color:#b9d5ee;box-shadow:0 14px 30px rgba(15,53,91,.09)}.exercise-card:focus-visible{outline:3px solid rgba(39,117,201,.2);outline-offset:2px}.exercise-card.completed{border-color:#b8dfc5;background:#fbfffc}.exercise-card-status{position:absolute;right:10px;top:10px;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#dff5e7;color:#28794a;font-size:12px;font-weight:900;opacity:0;transform:scale(.75);transition:.2s}.exercise-card.completed .exercise-card-status{opacity:1;transform:scale(1)}.exercise-preview{height:138px;border-radius:15px;background:linear-gradient(145deg,#f7fbff,#eaf4ff);display:grid;place-items:center;position:relative;overflow:hidden;margin-bottom:13px;color:var(--navy)}.exercise-card-title{display:block;font-size:14px;font-weight:850;line-height:1.25}.exercise-card-sub{display:block;font-size:10px;color:var(--muted);margin-top:4px;min-height:30px}.exercise-duration{display:inline-flex;margin-top:8px;padding:4px 8px;border-radius:999px;background:#f3f7fa;color:#607589;font-size:9px;font-weight:800}.exercise-stage{margin:4px 0 20px;padding:24px;border-color:#c9deef;box-shadow:0 15px 36px rgba(15,53,91,.08)}.exercise-stage[hidden]{display:none}.exercise-stage-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.exercise-stage-head h2{margin:8px 0 4px;font-size:25px}.exercise-stage-head p{margin:0}.exercise-close{border:0;background:#f1f5f8;color:#587086;width:38px;height:38px;border-radius:11px;font-size:25px;line-height:1;cursor:pointer}.exercise-stage-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:20px}.exercise-stage-animation-wrap{position:relative;border-radius:18px;background:linear-gradient(145deg,#f7fbff,#e9f4ff);min-height:300px;display:grid;place-items:center;overflow:hidden;border:1px solid #dceaf5}.exercise-stage-animation{width:100%;height:100%;display:grid;place-items:center}.exercise-stage-animation .exercise-preview{width:100%;height:100%;min-height:300px;margin:0;border-radius:0;background:transparent}.exercise-countdown{position:absolute;left:16px;bottom:15px;background:rgba(255,255,255,.92);border:1px solid rgba(202,220,236,.9);padding:9px 12px;border-radius:12px;box-shadow:0 8px 18px rgba(14,52,91,.08)}.exercise-countdown strong{display:block;font-size:19px;color:var(--navy);line-height:1}.exercise-countdown span{font-size:9px;color:var(--muted)}.exercise-instructions{padding:4px 4px 4px 10px}.exercise-instructions h3{margin:0 0 12px}.exercise-instructions ol{padding-left:22px;margin:0}.exercise-instructions li{margin:10px 0;color:#526b81;font-size:13px}.exercise-mini-warning{margin-top:18px;border-radius:12px;background:#fff6de;border:1px solid #f0db9b;color:#795d18;padding:11px;font-size:11px}.exercise-stage-progress{margin-top:20px}.exercise-controls{display:flex;gap:9px;flex-wrap:wrap;margin-top:14px}.exercise-stage-message{font-size:12px;color:#2d7850;font-weight:700;margin:12px 0 0;min-height:18px}.exercise-bottom-note{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px 18px;border-radius:15px;background:#edf6ff;border:1px solid #cfe3f6;color:#315d86}.exercise-bottom-note>div{display:flex;gap:12px;align-items:flex-start}.exercise-bottom-note>div>span{width:34px;height:34px;border-radius:10px;background:#fff;display:grid;place-items:center;color:var(--blue);font-weight:900;flex:0 0 auto}.exercise-bottom-note p{margin:0;font-size:12px}.exercise-bottom-note .btn{white-space:nowrap}
/* palming */.visual-palming .palm-eye{width:96px;height:54px;border-radius:70% 25% 70% 25%/70% 30% 70% 30%;background:#fff;border:4px solid #d6e4ef;transform:rotate(-45deg);display:grid;place-items:center;position:absolute}.visual-palming .palm-eye i{width:29px;height:29px;border-radius:50%;background:var(--blue);box-shadow:inset 0 0 0 9px #bfe0f7;position:relative}.visual-palming .palm-eye i:after{content:'';position:absolute;width:9px;height:9px;border-radius:50%;background:#153a5e;left:10px;top:10px}.palm-hand{font-size:58px;position:absolute;top:40px;filter:saturate(.65)}.palm-hand-left{left:20px;transform:rotate(28deg)}.palm-hand-right{right:20px;transform:scaleX(-1) rotate(28deg)}.preview-live .palm-hand-left,.is-running .palm-hand-left{animation:palmInLeft 3s ease-in-out infinite}.preview-live .palm-hand-right,.is-running .palm-hand-right{animation:palmInRight 3s ease-in-out infinite}@keyframes palmInLeft{0%,100%{transform:translateX(-15px) rotate(28deg)}45%,65%{transform:translateX(20px) rotate(12deg)}}@keyframes palmInRight{0%,100%{transform:translateX(15px) scaleX(-1) rotate(28deg)}45%,65%{transform:translateX(-20px) scaleX(-1) rotate(12deg)}}
/* blink + breathing */.visual-blink .breath-ring{width:96px;height:96px;border-radius:50%;border:8px solid rgba(39,117,201,.17);position:absolute}.preview-live .breath-ring,.is-running .breath-ring{animation:breatheRing 4s ease-in-out infinite}.blink-eye{width:105px;height:58px;border-radius:70% 25% 70% 25%/70% 30% 70% 30%;background:#fff;border:4px solid #dbe7f0;transform:rotate(-45deg);display:grid;place-items:center;position:relative;overflow:hidden}.blink-eye i{width:31px;height:31px;border-radius:50%;background:#86bde5;box-shadow:inset 0 0 0 9px #2775c9}.blink-eye:after{content:'';position:absolute;left:-6px;right:-6px;top:-8px;height:0;background:#f0c7b5;border-bottom:2px solid #c68d7a;z-index:5}.preview-live .blink-eye:after,.is-running .blink-eye:after{animation:blinkLid 3s ease-in-out infinite}@keyframes breatheRing{0%,100%{transform:scale(.75);opacity:.45}50%{transform:scale(1.35);opacity:1}}@keyframes blinkLid{0%,43%,57%,100%{height:0}49%,51%{height:72px}}
/* eye move */.move-eye{width:115px;height:62px;border-radius:70% 25% 70% 25%/70% 30% 70% 30%;background:#fff;border:4px solid #dbe7f0;transform:rotate(-45deg);display:grid;place-items:center;overflow:hidden}.move-eye i{width:31px;height:31px;border-radius:50%;background:#80b9e2;box-shadow:inset 0 0 0 9px #2775c9;transform:rotate(45deg)}.preview-live .move-eye i,.is-running .move-eye i{animation:eyeTravel 5s ease-in-out infinite}.move-guide{position:absolute;color:#87a7c3;font-weight:900;font-size:20px}.move-guide-h{bottom:9px}.move-guide-v{right:14px}@keyframes eyeTravel{0%,100%{transform:rotate(45deg) translate(0,0)}20%{transform:rotate(45deg) translate(-14px,0)}40%{transform:rotate(45deg) translate(14px,0)}60%{transform:rotate(45deg) translate(0,-12px)}80%{transform:rotate(45deg) translate(0,12px)}}
/* zigzag */.visual-zigzag svg{width:88%;height:80%;color:#5f95c5}.exercise-stage-animation .visual-zigzag svg{width:min(560px,88%)}
/* flower */.visual-flower{isolation:isolate}.flower-core{width:35px;height:35px;border-radius:50%;background:#f4c34f;position:absolute;z-index:4;box-shadow:0 0 0 7px rgba(244,195,79,.16)}.petal{position:absolute;width:31px;height:56px;border-radius:55% 55% 45% 45%;background:linear-gradient(#ef8da0,#e95471);transform-origin:50% 68px;top:2px;left:calc(50% - 15px);opacity:.92}.p1{transform:rotate(0deg)}.p2{transform:rotate(45deg)}.p3{transform:rotate(90deg)}.p4{transform:rotate(135deg)}.p5{transform:rotate(180deg)}.p6{transform:rotate(225deg)}.p7{transform:rotate(270deg)}.p8{transform:rotate(315deg)}.preview-live .visual-flower,.is-running.visual-flower,.is-running .visual-flower{animation:flowerPulse 3.8s ease-in-out infinite}.preview-live .flower-core,.is-running .flower-core{animation:corePulse 1.9s ease-in-out infinite}@keyframes flowerPulse{0%,100%{transform:scale(.78) rotate(-4deg)}50%{transform:scale(1.04) rotate(4deg)}}@keyframes corePulse{0%,100%{box-shadow:0 0 0 7px rgba(244,195,79,.16)}50%{box-shadow:0 0 0 15px rgba(244,195,79,.07)}}
/* stars */.visual-stars{background:linear-gradient(160deg,#eaf4ff,#f8fbff)}.star-sky-dot{position:absolute;color:#91acc6;font-size:26px}.s1{color:#2775c9;font-size:44px;left:12%;top:20%}.s2{right:20%;top:18%}.s3{left:22%;bottom:18%}.s4{right:18%;bottom:20%}.preview-live .s1,.is-running .s1{animation:starTravel 5s ease-in-out infinite}@keyframes starTravel{0%,100%{left:12%;top:20%;transform:rotate(0) scale(1)}25%{left:68%;top:18%;transform:rotate(80deg) scale(.8)}50%{left:63%;top:62%;transform:rotate(170deg) scale(1.05)}75%{left:18%;top:60%;transform:rotate(250deg) scale(.82)}}
.exercise-stage-animation .preview-live{animation-play-state:paused}.exercise-stage-animation .preview-live *{animation-play-state:paused}.exercise-stage-animation .exercise-preview:not(.is-running) *{animation-play-state:paused!important}.exercise-stage-animation .exercise-preview.is-running *{animation-play-state:running!important}
@media(max-width:900px){.exercise-hero-card{grid-template-columns:1fr}.exercise-grid{grid-template-columns:repeat(2,1fr)}.exercise-stage-grid{grid-template-columns:1fr}.exercise-stage-animation-wrap{min-height:260px}.exercise-stage-animation .exercise-preview{min-height:260px}}@media(max-width:560px){.exercise-hero-card{padding:18px}.exercise-hero-card h2{font-size:25px}.exercise-grid{grid-template-columns:repeat(2,1fr);gap:10px}.exercise-card{padding:10px;border-radius:15px}.exercise-preview{height:115px;margin-bottom:10px}.exercise-card-title{font-size:12px}.exercise-card-sub{font-size:9px;min-height:28px}.exercise-duration{font-size:8px}.exercise-stage{padding:17px}.exercise-stage-head h2{font-size:21px}.exercise-stage-animation-wrap{min-height:230px}.exercise-stage-animation .exercise-preview{min-height:230px}.exercise-controls .btn{flex:1 1 44%;padding:10px 11px}.exercise-bottom-note{align-items:stretch;flex-direction:column}.exercise-bottom-note .btn{width:100%}.palm-hand{font-size:49px}.exercise-daily-progress{padding:14px}}@media(prefers-reduced-motion:reduce){.exercise-page *{scroll-behavior:auto!important}.exercise-preview *{animation-duration:8s!important}.exercise-card,.exercise-progress-track span,.exercise-stage-progress span{transition:none!important}}
