@font-face{font-family:Barlow;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/88e4012f2051f8b4-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Barlow;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/0be08cad6fae8421-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Barlow;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/61d96c4884191721-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Barlow;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/cd5242d34e82716d-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Barlow;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/6662f7f4c6f2f062-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Barlow;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/b0bb26939bb40fdb-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Barlow;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/7816b93d847886e9-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Barlow;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/ea06843a6d8e9ab3-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Barlow;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/60c9b95e8d9e49be-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Barlow Fallback;src:local("Arial");ascent-override:103.43%;descent-override:20.69%;line-gap-override:0.00%;size-adjust:96.68%}.__className_1047a0{font-family:Barlow,Barlow Fallback;font-style:normal}.__variable_1047a0{--font-body:"Barlow","Barlow Fallback"}@font-face{font-family:Barlow Condensed;font-style:italic;font-weight:600;font-display:swap;src:url(/_next/static/media/ed4e551d5549d43d-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Barlow Condensed;font-style:italic;font-weight:600;font-display:swap;src:url(/_next/static/media/6eded7f801dfa17e-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Barlow Condensed;font-style:italic;font-weight:600;font-display:swap;src:url(/_next/static/media/29379020bca5f260-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Barlow Condensed;font-style:italic;font-weight:700;font-display:swap;src:url(/_next/static/media/ed84f09d903f4f15-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Barlow Condensed;font-style:italic;font-weight:700;font-display:swap;src:url(/_next/static/media/87afbb826db9328a-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Barlow Condensed;font-style:italic;font-weight:700;font-display:swap;src:url(/_next/static/media/14e12da985e5a1a3-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/d6e015f239232eb3-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/55b35d87b6156eea-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/5fb5c05ff73c0616-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/8599be8653318abe-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/3352fdb488e19d84-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/437e5f23c97e320c-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Barlow Condensed Fallback;src:local("Arial");ascent-override:130.73%;descent-override:26.15%;line-gap-override:0.00%;size-adjust:76.49%}.__className_ee4597{font-family:Barlow Condensed,Barlow Condensed Fallback}.__variable_ee4597{--font-display:"Barlow Condensed","Barlow Condensed Fallback"}:root{--night:#10291f;--night-2:#1b3a2d;--sky:#7cc8f2;--sky-soft:#bee5fa;--sky-tint:#e3f3fc;--fairway:#2a7048;--ground:#f2f4f1;--surface:#ffffff;--surface-2:#e9eee9;--ink:#0f2a21;--muted:#536a60;--line:#d3dbd5;--sub-on-night:#b9cbbf;--ok:#8a5a06;--bad:#b0402a;--radius:14px;--display:var(--font-display),"Arial Narrow",sans-serif;--body:var(--font-body),system-ui,-apple-system,"Segoe UI",sans-serif;color-scheme:light}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--ground);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%}a{color:var(--fairway);font-weight:600;text-underline-offset:2px}a:hover{color:var(--ink)}:focus-visible{outline:3px solid var(--sky);outline-offset:2px;border-radius:6px}button,input,select{font:inherit;color:inherit}img,svg,video{display:block;max-width:100%}.app{min-height:100dvh;align-items:center}.app,.column{display:flex;flex-direction:column}.column{width:100%;max-width:480px;flex:1 1;background:var(--ground)}.hero{background:var(--night);color:#fff;padding:calc(20px + env(safe-area-inset-top)) 24px 28px;display:flex;flex-direction:column;gap:14px}.topbar{justify-content:space-between;gap:12px;min-height:44px}.brand,.topbar{display:flex;align-items:center}.brand{gap:8px;color:inherit;text-decoration:none}.wordmark{font-style:italic;font-size:24px;letter-spacing:.04em;text-transform:uppercase;line-height:1}.hero h1,.page-title,.wordmark{font-family:var(--display);font-weight:700}.hero h1,.page-title{margin:0;line-height:.98}.hero h1{font-size:46px}.page-title{font-size:38px}.hero p{margin:0;color:var(--sub-on-night);font-size:16px}.kicker{font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.hero .kicker{color:var(--sky-soft)}main.content{padding:20px 20px calc(28px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:16px}.card{border:1px solid var(--line);border-radius:var(--radius);padding:16px;gap:12px}.card,.sheet{background:var(--surface);display:flex;flex-direction:column}.sheet{border-radius:22px 22px 0 0;margin-top:-14px;padding:22px 24px calc(28px + env(safe-area-inset-bottom));gap:14px;flex:1 1}.card h2,.sheet h2{margin:0;font-family:var(--display);font-weight:700;font-size:26px;line-height:1.05}.muted{color:var(--muted);font-size:14px;line-height:1.45;margin:0}.center{text-align:center}.btn{min-height:52px;border-radius:10px;border:1px solid transparent;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:600;font-size:16px;cursor:pointer;text-decoration:none;width:100%;transition:transform .05s ease,background-color .15s ease}.btn:active{transform:translateY(1px)}.btn:disabled{cursor:not-allowed;opacity:1;background:var(--surface-2);color:#8a9a92;border-color:transparent}.btn-primary{background:var(--night);color:#fff}.btn-primary:hover:not(:disabled){background:var(--night-2);color:#fff}.btn-accent{background:var(--sky);color:var(--ink);font-family:var(--display);font-weight:700;font-size:20px;letter-spacing:.05em;text-transform:uppercase}.btn-ghost{background:var(--surface);color:var(--ink);border-color:var(--line)}.btn-small{min-height:40px;width:auto;font-size:14px;padding:0 12px}.btn-on-night{border-color:rgba(255,255,255,.35)}.btn-on-night,.icon-btn{background:transparent;color:#fff}.icon-btn{width:44px;height:44px;border-radius:22px;border:1px solid rgba(255,255,255,.35);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:14px;font-weight:600}.input{min-height:52px;border-radius:10px;border:1px solid var(--line);background:var(--surface);padding:0 14px;font-size:17px}.input:focus{border-color:var(--night);outline:none;box-shadow:0 0 0 3px var(--sky-tint)}.check{display:flex;gap:12px;align-items:flex-start;font-size:15px;line-height:1.4;cursor:pointer}.check input{width:22px;height:22px;margin:0;flex:none;accent-color:var(--night)}.notice{border-radius:12px;padding:12px 14px;font-size:14px;line-height:1.45;display:flex;gap:10px;align-items:flex-start}.notice svg{flex:none;margin-top:1px}.notice-info{background:var(--sky-tint);color:#17577c}.notice-ok{background:#e1efe6;color:var(--night)}.notice-error{background:#f7e4df;color:#8a2f1f}.scorecard{background:var(--surface);color:var(--ink);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:8px}.scorecard-head{display:flex;justify-content:space-between;align-items:baseline}.hero .scorecard .kicker{color:var(--muted)}.scorecard-total{font-family:var(--display);font-weight:700;font-size:26px;color:var(--fairway);line-height:1}.scorecard-total small{font-size:14px;color:var(--muted);font-weight:600}.scorecard-grid{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));border:1px solid var(--line);font-family:var(--display);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.scorecard-grid .p{background:var(--night);color:#fff;font-size:11px;font-weight:600;text-align:center;padding:3px 0}.scorecard-grid .s{height:32px;display:flex;align-items:center;justify-content:center;border-top:1px solid var(--line);font-weight:700;font-size:14px}.ring{border-radius:50%;border:1.5px solid var(--fairway);color:var(--fairway)}.box,.ring{width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center}.box{border:1.5px solid var(--bad);color:var(--bad)}.mid{color:var(--ok)}.slot{border:1.5px dashed #a9b8af;border-radius:var(--radius);background:var(--surface-2);padding:14px;display:flex;flex-direction:column;gap:12px}.slot.ready{border:1px solid var(--line);background:var(--surface)}.slot-head{gap:12px}.slot-head,.slot-thumb{display:flex;align-items:center}.slot-thumb{width:78px;height:104px;border-radius:10px;background:var(--night);overflow:hidden;flex:none;position:relative;justify-content:center}.slot-thumb video{width:100%;height:100%;object-fit:cover}.slot-title{font-family:var(--display);font-weight:700;font-size:24px;line-height:1.05;margin:2px 0}.slot-meta{font-size:13px;color:var(--muted)}.slot-meta.ok{color:var(--fairway);font-weight:600}.slot-actions{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.file-btn{position:relative;overflow:hidden}.file-btn input{position:absolute;inset:0;opacity:0;cursor:pointer}.tips{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px;font-size:15px}.tips li{display:flex;gap:10px;align-items:flex-start}.tips .num{width:22px;height:22px;border-radius:11px;background:var(--night);color:#fff;font-size:12px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;flex:none;margin-top:1px}.segmented{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:4px;gap:4px;background:var(--surface-2);padding:4px;border-radius:12px}.segmented button{min-height:44px;border:0;border-radius:9px;background:transparent;font-weight:600;font-size:15px;cursor:pointer;color:var(--muted)}.segmented button[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px rgba(16,41,31,.15)}.chips{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.chip{min-height:60px;border-radius:12px;border:1px solid var(--line);background:var(--surface);padding:10px 12px;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:2px}.chip strong{font-size:16px}.chip span{font-size:13px;color:var(--muted);line-height:1.3}.chip[aria-pressed=true]{border:2px solid var(--night);background:var(--sky-tint);padding:9px 11px}.chip:disabled{opacity:.45;cursor:not-allowed}.steps{flex-direction:column}.step,.steps{display:flex;gap:12px}.step{font-size:15px;color:var(--muted)}.step,.step .dot{align-items:center}.step .dot{width:24px;height:24px;border-radius:12px;border:2px solid var(--line);flex:none;display:inline-flex;justify-content:center}.step.active{color:var(--ink);font-weight:600}.step.active .dot{border:3px solid var(--sky);border-top:3px solid transparent;animation:spin .8s linear infinite}.step.done{color:var(--ink)}.step.done .dot{background:var(--night);border-color:var(--night)}@keyframes spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.step.active .dot{animation:none;border-top-color:var(--sky)}}.swing-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column}.swing-list li{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--line)}.swing-list li:first-child{border-top:0}.swing-list .grow{flex:1 1;display:flex;flex-direction:column}.badge{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:2px 8px;border-radius:999px;background:var(--sky-tint);color:#17577c}.footer-links{display:flex;gap:16px;justify-content:center;font-size:13px;padding:8px 0 4px}.footer-links a{color:var(--muted);font-weight:500}.legal{padding:24px;display:flex;flex-direction:column;gap:12px}.legal h1{font-size:36px;margin:0;line-height:1}.legal h1,.legal h2{font-family:var(--display)}.legal h2{font-size:22px;margin:12px 0 0}.legal li,.legal p{font-size:15px;line-height:1.55}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.step .grow{flex:1 1}.step-pct{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:700;color:var(--fairway);font-size:14px}.result-head{display:flex;flex-direction:column;gap:10px}.result-total{font-family:var(--display);font-weight:700;font-size:88px;line-height:.9;color:#fff;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.result-total small{font-size:26px;color:var(--sub-on-night);margin-left:4px}.phase-bars{display:flex;flex-direction:column;gap:8px;margin-top:4px}.phase{display:grid;grid-template-columns:112px 1fr 48px;align-items:center;grid-gap:10px;gap:10px;font-size:14px;color:var(--sub-on-night)}.phase strong{color:#fff;text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.phase .bar{height:8px;border-radius:4px;background:rgba(255,255,255,.16);overflow:hidden}.phase .bar span{display:block;height:100%;border-radius:4px;background:var(--sky)}.scorecard-grid a.p{color:#fff;text-decoration:none}.lead{margin:0;font-size:17px;line-height:1.5}.body-text{margin:0;font-size:15px;line-height:1.55}.section-title{margin:8px 0 0;font-family:var(--display);font-weight:700;font-size:26px;line-height:1.05}.frame-pair{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.frame-pair figure{margin:0;display:flex;flex-direction:column;gap:4px}.frame-pair .frame-empty{width:100%;aspect-ratio:3/4;background:var(--night);border-radius:10px}.frame-pair figcaption{font-size:12px;color:var(--muted);text-align:center}.frame-box{position:relative;width:100%;aspect-ratio:3/4;padding:0;border:0;border-radius:10px;overflow:hidden;background:var(--night);display:flex;align-items:center;justify-content:center;cursor:zoom-in}.frame-canvas{position:relative;max-width:100%}.frame-canvas img{display:block;width:100%;height:100%}.frame-canvas svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}.ov-legend{display:flex;flex-direction:column;gap:8px;background:var(--night);color:#fff;border-radius:10px;padding:8px 10px}.ov-modes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:4px;gap:4px;background:rgba(255,255,255,.08);padding:3px;border-radius:9px}.ov-modes button{min-height:36px;border:0;border-radius:7px;background:transparent;color:var(--sub-on-night);font-size:13px;font-weight:600;cursor:pointer}.ov-modes button[aria-pressed=true]{background:var(--sky);color:var(--ink)}.ov-keys{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:12px;color:var(--sub-on-night)}.ov-keys span{display:inline-flex;align-items:center;gap:5px}.ov-label{position:absolute;transform:translate(-50%,-50%);pointer-events:none;white-space:nowrap;background:rgba(16,41,31,.72);color:#fff;font-size:10px;font-weight:600;line-height:1.2;padding:2px 5px;border-radius:6px}.ov-label.big{font-size:14px;padding:3px 8px;border-radius:8px}.face-chip{margin:0;display:flex;flex-direction:column;gap:2px;padding:8px 12px;border-radius:10px;background:var(--sky-tint);color:#17577c;line-height:1.4}.face-chip,.face-chip strong{font-size:14px}.face-chip span{color:var(--muted)}.face-chip.face-geschlossen,.face-chip.face-offen{background:#f7e4df;color:#8a2f1f}.face-chip.face-square{background:#e1efe6;color:var(--night)}.lightbox{position:fixed;inset:0;z-index:60;background:rgba(8,20,15,.97);display:flex;flex-direction:column;gap:10px;padding:max(14px,env(safe-area-inset-top)) 14px max(14px,env(safe-area-inset-bottom))}.lightbox-head{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#fff}.lightbox-head strong{font-family:var(--display);font-size:22px;font-weight:700}.lightbox-close{width:44px;height:44px;border-radius:22px;border:1px solid rgba(255,255,255,.35);background:transparent;display:inline-flex;cursor:pointer;flex:none}.lightbox-body,.lightbox-close{align-items:center;justify-content:center}.lightbox-body{flex:1 1;min-height:0;display:flex}.lightbox-body .frame-canvas{border-radius:8px;overflow:hidden}.lightbox-foot{flex:none}.check-mark{width:22px;height:22px;border-radius:11px;flex:none;display:inline-flex;align-items:center;justify-content:center}.check-mark.good{background:var(--fairway);color:#fff}.check-mark.mid{background:#f3e7cf;color:var(--ok)}.check-mark.fix,.check-mark.low{background:#f7e4df;color:var(--bad)}.check-note{display:block;color:var(--muted);font-size:14px;margin-top:2px}.verdict{display:flex;flex-direction:column;gap:8px}.verdict-title{margin:0;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.verdict-title.good{color:var(--fairway)}.verdict-title.bad{color:var(--bad)}.check-list,.plain-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}.check-list li,.plain-list li{display:flex;gap:10px;align-items:flex-start;font-size:15px;line-height:1.4}.drills-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.drill{display:flex;flex-direction:column;gap:8px;padding-top:12px;border-top:1px solid var(--line)}.drill h3{margin:0;font-family:var(--display);font-weight:700;font-size:22px;line-height:1.1}.positions{display:flex;flex-direction:column;gap:10px}.position{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);scroll-margin-top:16px}.position summary{list-style:none;cursor:pointer;padding:12px 16px;min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:12px}.position summary::-webkit-details-marker{display:none}.position summary:after{content:"›";font-size:22px;color:var(--muted);transition:transform .15s ease}.position[open] summary:after{transform:rotate(90deg)}.pos-label{flex:1 1;font-size:16px}.pos-label strong{font-family:var(--display);font-size:18px;margin-right:6px}.pos-score{display:inline-flex;align-items:center;gap:4px;font-family:var(--display);font-weight:700}.pos-score small{color:var(--muted);font-size:13px}.position-body{padding:0 16px 16px;display:flex;flex-direction:column;gap:12px}.swing-open{flex:1 1;display:flex;align-items:center;gap:12px;background:none;border:0;padding:0;text-align:left;cursor:pointer;min-height:44px}.swing-open .grow{display:flex;flex-direction:column}.badge-score{background:var(--night);color:#fff}.pose-stage{width:100%;aspect-ratio:4/3;background:var(--night);border-radius:var(--radius);overflow:hidden}.pose-stage:empty{display:none}.notice-warn{background:#fbf0dc;color:#6b4605}.notice-body{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.notice-btn{width:auto}.slot-note{font-size:13px}.vcheck{display:flex;flex-direction:column;gap:10px}.vcheck-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}.vcheck-list li{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;line-height:1;padding:6px 9px;border-radius:999px}.vcheck-list li svg{flex:none}.vcheck-list li.ok{background:#e1efe6;color:var(--night)}.vcheck-list li.ok svg{stroke:var(--fairway)}.vcheck-list li.warn{background:#fbf0dc;color:#6b4605}.vcheck-good{color:var(--fairway);font-weight:600}.rec{position:fixed;inset:0;z-index:50;background:var(--night);color:#fff;display:flex;flex-direction:column;overflow-y:auto;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.rec-top{display:flex;align-items:center;gap:12px;padding:12px 16px;min-height:64px}.rec-close{flex:none}.rec-title{flex:1 1;min-width:0;display:flex;flex-direction:column}.rec-title .kicker{color:var(--sky-soft)}.rec-title strong{font-family:var(--display);font-size:20px;line-height:1.1}.rec-dot{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#fff;background:#b0402a;padding:5px 10px;border-radius:999px}.rec-dot:before{content:"";width:8px;height:8px;border-radius:50%;background:#fff;animation:rec-blink 1s infinite}@keyframes rec-blink{50%{opacity:.3}}@media (prefers-reduced-motion:reduce){.rec-dot:before{animation:none}}.rec-stage{position:relative;display:none;flex:1 1;min-height:0;background:#000}.rec-stage.on{display:flex;align-items:center;justify-content:center}.rec-stage video{width:100%;height:100%;max-height:100%;object-fit:contain}.rec-stage>.rec-line{position:absolute;inset:auto 16px 16px}.rec-hud{position:absolute;inset:auto 0 0 0;padding:40px 16px 16px;display:flex;flex-direction:column;gap:10px;background:linear-gradient(0deg,rgba(16,41,31,.92),rgba(16,41,31,.6) 70%,transparent)}.rec-checks{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}.rec-checks li{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;line-height:1;padding:6px 9px;border-radius:999px;background:rgba(255,255,255,.14);color:#fff}.rec-checks li.ok{background:rgba(124,200,242,.25)}.rec-checks li.warn{background:rgba(251,240,220,.95);color:#6b4605}.rec-line{margin:0;font-family:var(--display);font-weight:700;font-size:26px;line-height:1.1;color:#fff}.rec-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.rec-actions .btn{width:auto}.rec-info{font-size:12px;color:var(--sub-on-night)}.rec-panel{background:var(--surface);color:var(--ink);border-radius:22px 22px 0 0;margin-top:auto;padding:22px 20px calc(24px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:14px;width:100%;max-width:480px;align-self:center}.rec-panel h2{margin:0;font-family:var(--display);font-weight:700;font-size:26px;line-height:1.05}.rec-toggle{display:flex;gap:12px;align-items:flex-start;font-size:15px;line-height:1.4;cursor:pointer}.rec-toggle input{width:22px;height:22px;margin:2px 0 0;flex:none;accent-color:var(--night)}.rec-toggle>span{display:flex;flex-direction:column;gap:2px}.rec-review{width:100%;max-height:50dvh;border-radius:12px;background:#000}@media (orientation:landscape) and (max-height:520px){.rec-top{min-height:48px;padding:6px 16px}.rec-line{font-size:20px}.rec-hud{padding-top:24px}}