body{overscroll-behavior:none}:root{--radius: 26px}.shell{height:100%;display:flex;flex-direction:column}.shell-main{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch}.child-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:8px 12px 0;padding:8px 14px 8px 18px;border-radius:999px;background:var(--navy);color:#fff;font-size:13px;font-weight:500}.child-bar select{border:1px solid rgba(255,255,255,.3);border-radius:999px;padding:4px 12px;background:#ffffff1f;color:#fff}.child-bar select option{color:var(--text)}.tabbar{display:grid;grid-template-columns:repeat(5,1fr);gap:2px;margin:0 12px;margin-bottom:calc(10px + env(safe-area-inset-bottom));padding:5px;border-radius:999px;background:#ffffff8c;border:1px solid var(--glass-bd);box-shadow:0 14px 40px -18px #16314473;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.tabbar a{display:grid;justify-items:center;align-content:center;gap:1px;padding:6px 0 5px;font-size:11px;font-weight:500;color:var(--muted);min-height:50px;border-radius:999px}.tabbar a.on{color:var(--navy);background:#fff;box-shadow:0 4px 14px -6px #1631444d}.page{max-width:760px;margin:0 auto}.page-head:before{content:"";position:fixed;inset:0;z-index:-1;background:var(--bg);pointer-events:none}.page-head{position:sticky;top:0;z-index:5;isolation:isolate;padding-bottom:14px!important;-webkit-mask-image:linear-gradient(180deg,#000 calc(100% - 14px),transparent);mask-image:linear-gradient(180deg,#000 calc(100% - 14px),transparent);display:flex;align-items:center;gap:10px;padding:14px 20px 12px;padding-top:calc(14px + env(safe-area-inset-top));color:#fff}.page-head h1{font-size:26px;flex:1}.page-body{padding:4px 12px 28px;display:grid;gap:10px}.icon-btn{width:42px;height:42px;border:1px solid var(--glass-bd);border-radius:50%;background:#fff6;color:var(--navy);font-size:24px;font-weight:300;line-height:1;display:grid;place-items:center;padding:0 2px 3px 0;flex:none}.icon-btn.light{color:var(--navy)}.section-title{display:flex;align-items:baseline;justify-content:space-between;font-size:17px;font-weight:500;letter-spacing:-.01em;color:var(--text);margin:14px 20px 0}.section-title a,.section-title .muted{font-size:13px;font-weight:400;color:var(--muted)}.pad{padding:20px;display:grid;gap:10px}.ok-text{color:var(--ok);font-size:13px;font-weight:500}.clamp{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.note{white-space:pre-wrap;color:var(--text-2)}.seg{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:2px;padding:4px;border-radius:999px;background:var(--glass);border:1px solid var(--glass-bd)}.seg button{min-height:38px;border:0;border-radius:999px;background:transparent;font-weight:500;color:var(--text-2)}.seg button.on{background:var(--navy);color:#fff}.list{overflow:hidden}.row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 20px;border:0;border-top:1px solid var(--line);background:transparent;color:inherit;width:100%;text-align:left}.row:first-child{border-top:0}.row b{font-weight:500}.row.head{background:var(--soft);padding:9px 20px;font-size:13px}.row.notif.read{opacity:.5}.dot{width:8px;height:8px;border-radius:50%;background:var(--danger);flex:none}.auth{min-height:100%;display:grid;align-content:start;gap:10px;padding:0 12px 28px;padding-top:env(safe-area-inset-top);max-width:520px;margin:0 auto}.auth-top{display:flex;align-items:center;gap:12px;height:64px;padding:0 8px;font-weight:500;font-size:17px;letter-spacing:-.01em;color:#fff}.auth-top img{height:30px;width:auto;display:block;padding:5px 9px 7px;border-radius:12px;background:#ffffffdb;box-sizing:content-box}.auth-top span{line-height:1.2}.brand{padding:26px 24px 22px;display:grid;gap:26px}.brand .lead{font-weight:300;font-size:clamp(28px,8vw,40px);line-height:1.12;letter-spacing:-.03em}.brand .lead b{font-weight:500}.brand .mono{font-size:13px;line-height:1.7;color:var(--muted)}.hero-chips{display:flex;flex-wrap:wrap;gap:6px}.hero-chips span{padding:5px 13px;border-radius:999px;background:#ffffff80;border:1px solid var(--glass-bd);font-size:13px;color:var(--text-2)}.auth-card{width:100%;padding:22px;display:grid;gap:14px}.auth-card h2{font-size:22px}.auth-links{display:grid;gap:8px;text-align:center;font-size:13px;color:var(--muted)}.auth-links a{color:var(--text);font-weight:500;font-size:15px;text-decoration:underline;text-decoration-color:var(--muted);text-underline-offset:3px}.check{display:flex;align-items:center;gap:8px;font-size:14px;min-height:32px}.check input{width:22px;height:22px;flex:none;border-radius:7px}.check input:after{width:11px;height:6px}.notice-box{position:relative;display:grid;gap:10px;padding:12px 16px 12px 34px;border-radius:18px;background:#b9801a1a;color:var(--text);font-size:14px}.notice-box:before{content:"";position:absolute;left:15px;top:19px;width:8px;height:8px;border-radius:50%;background:var(--warn)}.terms{font-size:13px;color:var(--text-2);border:1px solid var(--line);border-radius:16px;padding:10px 14px}.terms summary{font-weight:500;cursor:pointer}.terms p{margin-top:8px}.home-head{display:flex;align-items:center;justify-content:space-between;padding:22px 20px 12px;padding-top:calc(22px + env(safe-area-inset-top));color:#fff}.home-head p{font-size:13.5px;color:#ffffffdb;margin-bottom:2px}.home-head h1{font-size:30px;font-weight:300;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.home-head .badge{background:#ffffffe6;color:var(--navy)}.bell{position:relative;width:46px;height:46px;display:grid;place-items:center;border-radius:50%;background:#fff6;border:1px solid var(--glass-bd);color:var(--navy);flex:none}.bell i{position:absolute;top:-3px;right:-3px;min-width:19px;height:19px;padding:0 5px;border-radius:10px;background:var(--navy);color:#fff;font-size:11px;font-style:normal;display:grid;place-items:center}.search{display:grid;grid-template-columns:1fr auto;gap:6px}.search input{min-height:48px;padding:0 20px;border:1px solid var(--glass-bd);border-radius:999px;background:var(--glass-2);color:var(--text)}.search input::placeholder{color:var(--muted)}.search input:focus{outline:2px solid rgba(22,49,68,.35);outline-offset:2px}.search .btn{min-height:48px;padding:0 22px}.resume.card{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding:22px;min-height:164px;background:linear-gradient(150deg,#1b405b,#163144);border-color:#ffffff24;color:#fff;cursor:pointer}.resume>div:first-child{display:grid;gap:6px;flex:1;min-width:0;align-self:stretch;align-content:space-between}.resume h2{font-size:32px;font-weight:300;letter-spacing:-.03em;line-height:1.08}.resume p,.resume-tag{font-size:13px;color:#ffffffa8}.bar.on-dark{background:#ffffff2e}.bar.on-dark>i{background:#fff}.play-fab{width:56px;height:56px;border-radius:50%;background:#fff;color:var(--navy);display:grid;place-items:center;flex:none;padding-left:3px}.course-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}a.card,.resume.card{transition:transform .12s,box-shadow .15s}a.card:active,.resume.card:active{transform:scale(.985)}.course-card{padding:18px 20px;display:grid;gap:10px;justify-items:start;min-height:150px;align-content:space-between}.course-card>b{font-size:21px;font-weight:500;letter-spacing:-.02em;line-height:1.2}.course-card .bar{width:100%}.course-card .muted{font-size:13px}.course-row{display:flex;align-items:center;gap:14px;padding:18px 20px}.course-summary{display:flex;align-items:center;gap:18px;padding:20px}.ring text{font-weight:400}.poomsae-list{display:grid;gap:10px}.poomsae-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:16px 16px 16px 18px}.poomsae-index{width:32px;height:32px;border-radius:50%;background:var(--soft-2);color:var(--text-2);font-size:13px;font-weight:500;display:grid;place-items:center}.poomsae-main{display:grid;gap:7px;min-width:0}.poomsae-main .muted{font-size:12.5px}.poomsae-title{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.poomsae-title b{font-size:18px;font-weight:500;letter-spacing:-.01em;margin-right:2px}.poomsae-actions{display:grid;gap:6px}.task-card{padding:20px;display:grid;gap:10px}.task-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.task-top h2{font-size:21px}.feedback{border-color:#1f8f6b73}.stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.stat{padding:18px 20px;display:grid;gap:12px}.stat span{font-size:13px;color:var(--text-2)}.stat b.num{font-variant-numeric:normal}.stat b{font-size:46px;font-weight:300;line-height:1;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{padding:4px 12px;border-radius:999px;font-size:12.5px;font-weight:500;background:var(--soft);color:var(--muted)}.chip.doing{background:var(--navy);color:#fff}.chip.done{color:var(--ok);background:#1f8f6b1a}.profile{display:flex;grid-auto-flow:column;align-items:center;gap:16px}.profile h2{font-size:21px}.avatar{width:56px;height:56px;border-radius:50%;background:var(--navy);color:#fff;font-size:21px;font-weight:400;display:grid;place-items:center;flex:none}.form{display:grid;gap:12px}.learn{height:100%;display:grid;grid-template-rows:auto minmax(0,1fr) auto minmax(120px,30vh);color:var(--text)}.learn.center{place-items:center}.learn-top{display:flex;align-items:center;gap:10px;padding:8px 14px 10px;padding-top:calc(8px + env(safe-area-inset-top));flex-wrap:wrap}.learn-title{display:grid;flex:1;min-width:120px;line-height:1.2;gap:2px;color:#fff}.learn-title b{font-size:21px;font-weight:400;letter-spacing:-.02em}.learn-title span{font-size:12px;color:#fffc}.chips-row{display:flex;gap:4px;flex-wrap:wrap;align-items:center}.chips-row.grow{flex:1;justify-content:flex-end}.stepper{display:inline-flex;align-items:center;gap:2px;padding:0 2px;border-radius:999px;background:var(--glass);border:1px solid var(--glass-bd)}.stepper .pill{min-height:32px;min-width:32px;padding:0 8px;border:0!important;background:transparent!important;font-size:16px}.stepper b{min-width:42px;text-align:center;font-size:13px;font-weight:500}.panel-row>.chips-row{flex:none;justify-content:flex-end;max-width:62%}.pill{min-height:34px;padding:0 14px;border-radius:999px;border:1px solid var(--glass-bd);background:#ffffff80;color:var(--text);font-size:13px;font-weight:500;white-space:nowrap}.pill.on{background:var(--navy);border-color:var(--navy);color:#fff}.pill.dark{background:#ffffffa8;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.pill.dark.on{background:var(--navy);border-color:var(--navy);color:#fff}.learn-stage{position:relative;min-height:0;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;background:#e6efec;margin:0 12px;border-radius:26px;overflow:hidden;border:1px solid var(--glass-bd);box-shadow:var(--shadow)}.learn-stage .viewer{min-height:0;height:100%}.video-pane{width:100%;height:100%;object-fit:contain;background:#0c1a24;min-height:0}.view-pip .video-pane{position:absolute;left:12px;bottom:12px;z-index:3;width:min(38%,300px);height:auto;aspect-ratio:16 / 9;border-radius:16px;box-shadow:0 6px 24px #16314459}@media(orientation:portrait){.view-video3d .learn-stage{grid-auto-flow:row;grid-auto-rows:1fr}}.preset-col{position:absolute;top:12px;right:12px;display:grid;gap:4px;z-index:2}.stage-tag{position:absolute;left:12px;top:12px;z-index:2;padding:4px 12px;border-radius:999px;background:var(--navy);color:#fff;font-size:12px;font-weight:500}.toast{position:absolute;left:50%;top:14px;transform:translate(-50%);z-index:4;padding:6px 16px;border-radius:999px;background:var(--navy);color:#fff;font-size:13px;font-weight:500;white-space:nowrap;max-width:92%;overflow:hidden;text-overflow:ellipsis}.kp-card{position:absolute;left:12px;right:12px;bottom:12px;z-index:4;max-width:460px;padding:16px 18px;border-radius:22px;background:#ffffffd6;border:1px solid #fff;color:var(--text);display:grid;gap:8px;box-shadow:0 16px 40px -18px #16314480;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.kp-card:before{content:"";position:absolute;right:16px;top:18px;width:8px;height:8px;border-radius:50%;background:var(--navy)}.kp-card.caution:before{background:var(--warn)}.kp-card.important:before{background:var(--danger)}.kp-card p{color:var(--text-2);font-size:14px;white-space:pre-wrap}.kp-card .btn{justify-self:start}.learn-controls{padding:10px 18px 8px;display:grid;gap:8px}.ctrl-row{display:flex;align-items:center;gap:10px}.play-btn{width:50px;height:50px;border-radius:50%;border:0;background:var(--navy);color:#fff;display:grid;place-items:center;flex:none;box-shadow:0 10px 24px -10px #163144b3}.play-btn:disabled{opacity:.35}.time{font-size:13px;color:var(--text-2);white-space:nowrap}.timeline{position:relative;height:28px}.timeline .track{position:absolute;left:0;right:0;top:12px;height:4px;border-radius:2px;background:var(--track)}.timeline .track i{position:absolute;top:0;height:100%}.timeline .played{left:0;border-radius:2px;background:var(--navy)}.timeline .loop{top:-4px!important;height:12px!important;border-radius:6px;background:#7377e838;outline:1px solid var(--violet);min-width:2px}.timeline .tick{width:2px;background:#ffffffe6}.timeline .kp{top:-10px!important;width:7px;height:7px!important;margin-left:-3.5px;border-radius:50%;background:var(--navy)}.timeline .kp.caution{background:var(--warn)}.timeline .kp.important{background:var(--danger)}.timeline .bm{top:8px!important;width:0;height:0!important;margin-left:-4px;border:4px solid transparent;border-bottom-color:var(--ok)}.timeline .thumb{top:-6px!important;width:16px;height:16px!important;margin-left:-8px;border-radius:50%;background:#fff;border:2px solid var(--navy)}.timeline input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.learn-panel{display:grid;grid-template-rows:auto minmax(0,1fr);padding-bottom:env(safe-area-inset-bottom);min-height:0}.panel-tabs{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(max-content,1fr);gap:2px;margin:2px 14px 8px;padding:4px;overflow-x:auto;scrollbar-width:none;background:var(--glass);border:1px solid var(--glass-bd);border-radius:999px}.panel-tabs button{padding:6px 12px;border:0;border-radius:999px;background:transparent;color:var(--text-2);font-size:13px;font-weight:500;white-space:nowrap}.panel-tabs button.on{color:#fff;background:var(--navy)}.panel-body{overflow-y:auto;padding:2px 14px 14px;display:grid;gap:6px;align-content:start}.panel-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 10px 10px 18px;border-radius:20px;background:var(--glass);border:1px solid var(--glass-bd);width:100%;color:var(--text)}.panel-row.on{background:var(--navy);border-color:var(--navy);color:#fff}.panel-row.on .panel-main span{color:#ffffffb3}.panel-row.on .pill.dark{background:#fff;color:var(--navy);border-color:#fff}.panel-main{display:grid;gap:1px;text-align:left;flex:1;min-width:0;border:0;background:transparent;color:inherit;padding:0}button.panel-row.panel-main{display:flex;padding:12px 18px}.panel-main b{font-size:15px;font-weight:500}.panel-main span{font-size:12px;color:var(--muted)}.panel-empty{color:var(--muted);font-size:13px;text-align:center;padding:10px 4px}.kp-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--navy);margin-right:6px}.kp-dot.caution{background:var(--warn)}.kp-dot.important{background:var(--danger)}.mode-seg{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;padding:4px;border-radius:999px;background:var(--glass);border:1px solid var(--glass-bd)}.mode-seg button{min-height:38px;border:0;border-radius:999px;background:transparent;color:var(--text-2);font-weight:500}.mode-seg button.on{background:var(--navy);color:#fff}.learn.view-video{grid-template-rows:auto minmax(0,1fr) minmax(120px,30vh)}@media(min-width:900px)and (orientation:landscape){.learn{grid-template-columns:minmax(0,1fr) 372px;grid-template-rows:auto minmax(0,1fr) auto}.learn.view-video{grid-template-rows:auto minmax(0,1fr)}.learn-top{grid-column:1 / -1}.learn-stage{grid-column:1;grid-row:2}.learn-controls{grid-column:1;grid-row:3}.learn-panel{grid-column:2;grid-row:2 / -1}}.link-btn{border:0;background:none;color:var(--muted);font-size:13px;text-decoration:underline;text-underline-offset:3px}.card,.pill.dark{backdrop-filter:none;-webkit-backdrop-filter:none}.tabbar{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.tabbar svg{stroke-width:1.6}.tabbar a.on{box-shadow:0 4px 12px -8px #1631442e}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.tabbar,.kp-card{background:#f7fbfaf0}}.btn,.btn.sm,.pill,.seg button,.mode-seg button,.panel-tabs button,.check{min-height:44px}.icon-btn{width:44px;height:44px;padding:0}.stepper .pill{min-width:44px;min-height:44px}.panel-main{min-height:44px;align-content:center}.terms summary{min-height:44px;display:flex;align-items:center}.terms{padding:2px 14px}.page-body,.course-grid,.poomsae-list,.stat-grid{gap:12px}.row.notif.read{opacity:1}.row.notif.read .badge.blue,.row.notif.read .badge{background:#16314414;color:var(--text-2)}.row.notif.read b{font-weight:400}.home-head p,.learn-title span{color:#fff}.brand .lead{line-height:1.22;letter-spacing:-.02em}.course-card>b,.poomsae-title b{font-weight:400;line-height:1.3}.poomsae-actions .btn.primary{background:#ffffffa8;border-color:#16314424;color:var(--navy);box-shadow:none}.stat b .unit{font-size:.42em;color:var(--muted)}.timeline{height:44px}.timeline .track{top:20px}.timeline .tick{width:1px;background:#ffffff8c}.toast{top:66px;max-width:calc(100% - 24px);white-space:normal;text-align:center;line-height:1.4;pointer-events:none;border-radius:18px}.panel-row.ghost-settings{flex-direction:column;align-items:stretch;padding:12px 14px 12px 18px}.panel-row.ghost-settings>.chips-row{max-width:none;justify-content:flex-start;gap:6px}@media(max-width:600px){.preset-col{left:12px;right:12px;top:12px;display:flex;gap:6px;overflow-x:auto;scrollbar-width:none}.preset-col::-webkit-scrollbar{display:none}.preset-col .pill{flex:0 0 auto;padding-inline:14px}.stage-tag{top:66px}.toast{top:auto;bottom:12px}}.tabbar{width:min(560px,calc(100% - 24px));align-self:center}.ctrl-row .pill{margin-left:auto}.ctrl-extra{display:flex;flex-wrap:wrap;gap:6px}.ctrl-extra:empty{display:none}.gesture-hint{position:absolute;left:50%;bottom:14px;transform:translate(-50%);z-index:3;display:flex;align-items:center;gap:8px;padding:9px 16px;border-radius:999px;background:var(--navy);color:#fff;font-size:13px;font-weight:500;white-space:nowrap;max-width:calc(100% - 24px);box-shadow:0 12px 28px -14px #16314499;animation:hint-in .35s ease both,hint-out .4s ease 4.7s forwards;pointer-events:none}.gesture-hint svg{width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}@keyframes hint-in{0%{opacity:0;transform:translate(-50%,8px)}}@keyframes hint-out{to{opacity:0;transform:translate(-50%,8px)}}.learn-empty{width:min(420px,calc(100% - 24px))}.check-note{margin:-6px 0 0 30px;font-size:12.5px;color:var(--muted);line-height:1.5}.submit-hint{position:relative;padding:10px 14px 10px 34px;border-radius:16px;background:#704b1317;color:var(--text);font-size:14px}.submit-hint:before{content:"";position:absolute;left:15px;top:18px;width:8px;height:8px;border-radius:50%;background:var(--warn)}@media(max-height:700px){.learn-title span{display:none}.learn-top{padding-bottom:6px}.ctrl-extra{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.ctrl-extra::-webkit-scrollbar{display:none}.ctrl-extra .pill{flex:none}.learn-controls{padding-top:4px;gap:4px}.timeline{height:36px}.timeline .track{top:16px}.play-btn{width:44px;height:44px}}.learn.center{grid-template-rows:minmax(0,1fr);align-content:center}@media(pointer:coarse){::-webkit-scrollbar{display:none}*{scrollbar-width:none}}.terms summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:8px}.terms summary::-webkit-details-marker{display:none}.terms summary:after{content:"";width:8px;height:8px;border-right:2px solid var(--text-2);border-bottom:2px solid var(--text-2);transform:rotate(45deg) translateY(-2px);transition:transform .2s}.terms[open] summary:after{transform:rotate(-135deg) translateY(-2px)}@media(max-width:600px){.preset-col{padding-right:24px;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 36px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 36px),transparent)}}.auth-top{position:relative}.lang-select{width:auto;min-height:36px;padding:0 30px 0 14px;border-radius:999px;font-size:13.5px;font-weight:500}.auth-top .auth-lang{margin-left:auto;color:var(--text);background-color:#ffffffd1;border-color:transparent}.compare-hud{position:absolute;left:12px;bottom:12px;z-index:4;display:grid;gap:8px;justify-items:start;max-width:calc(100% - 24px);pointer-events:none}.compare-pip{position:relative;width:112px;aspect-ratio:3 / 4;border-radius:18px;overflow:hidden;background:#0d1b24;border:1.5px solid rgba(255,255,255,.7);box-shadow:0 14px 30px -14px #0d1b24b3}.compare-pip video,.compare-pip canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scaleX(-1)}.compare-wait{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:8px;background:#0d1b24b8;color:#fff;font-size:12.5px;font-weight:500}.compare-score{display:grid;gap:2px;padding:8px 14px;border-radius:16px;background:#fffffff0;color:var(--text);font-size:13px;box-shadow:0 10px 24px -14px #0d1b2499;border:1.5px solid transparent}.compare-score b{font-weight:600;font-size:15px}.compare-score span{color:var(--text-2);font-weight:500}.compare-score.ok{border-color:#4fd1a5}.compare-score.warn{border-color:#f2b94b}.compare-score.bad,.compare-score.lost{border-color:#ef5b6b}.compare-panel{display:grid;gap:12px;padding:4px 4px 12px}.compare-tips{margin:0;padding-left:18px;color:var(--text-2);font-size:13.5px;line-height:1.6}.compare-joints{display:grid;gap:6px}.cj{position:relative;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 14px;border-radius:14px;background:#ffffffb3;overflow:hidden;font-size:13.5px}.cj>*{position:relative}.cj>i{position:absolute;left:0;top:0;bottom:0;opacity:.22;background:var(--ok)}.cj.warn>i{background:#d99a1e}.cj.bad>i{background:var(--danger)}.cj em{font-style:normal;font-weight:500;color:var(--text-2);white-space:nowrap}.cj.bad em{color:var(--danger)}.cj.warn em{color:var(--warn)}.cj.na{opacity:.55}.compare-summary{display:grid;gap:6px;padding:14px 16px;border-radius:18px;background:#ffffffbf}.compare-summary h4{margin:0;font-size:14px;font-weight:500;color:var(--muted)}.compare-summary ul{margin:0;padding-left:18px;line-height:1.7;font-size:14px}.cs-score{display:flex;align-items:baseline;gap:6px}.cs-score b{font-size:40px;font-weight:400;letter-spacing:-.03em}.cs-score span{color:var(--text-2)}@media(max-height:700px){.compare-pip{width:88px}}.push-banner{position:fixed;z-index:50;left:12px;right:12px;top:calc(env(safe-area-inset-top,0px) + 10px);display:grid;gap:2px;text-align:left;padding:12px 16px;border:0;border-radius:14px;background:var(--navy);color:#fff;box-shadow:0 8px 24px #00000040;font:inherit;cursor:pointer}.push-banner b{font-size:14px;font-weight:700}.push-banner span{font-size:13px;opacity:.85;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.timeline .sig{top:4px!important;height:5px!important;border-radius:2px;opacity:.85}.timeline .sig.hand{background:#ff9420}.timeline .sig.foot{background:#33b3ff}.timeline .sig.turn{background:#73e066}.signal-chips{position:absolute;left:12px;top:58px;z-index:4;display:flex;flex-wrap:wrap;gap:6px;max-width:calc(100% - 96px);pointer-events:none}.signal-chips .sig-chip{pointer-events:auto;padding:5px 12px;border-radius:999px;font-size:12.5px;font-weight:600;color:#10222d;background:#fff;border:0;box-shadow:0 2px 8px #0000002e}.sig-chip.hand{background:#ffb55e}.sig-chip.foot{background:#8fd3ff}.sig-chip.turn{background:#a6f09b}.sig-chip.pick{background:#ff5b6b;color:#fff;cursor:pointer}.stage-tag.offline{background:#7a4b00}.saved-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0}.saved-row+.saved-row{border-top:1px solid var(--line, rgb(0 0 0 / .08))}
