:root{--bg:#07080b;--surface:#ffffff0b;--surface-2:#ffffff14;--border:#ffffff17;--text:#f4f6fb;--muted:#8b93a7;--accent:#e60012;--on-accent:#fff;--win:#34d399;--loss:#fb7185;--radius:18px}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{color:var(--text);background:radial-gradient(1100px 560px at 50% -8%, color-mix(in srgb, var(--accent) 26%, transparent), transparent 62%), linear-gradient(180deg, #0c0d12 0%, #07080b 60%);-webkit-font-smoothing:antialiased;background-attachment:fixed;margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Hiragino Kaku Gothic ProN,Noto Sans JP,Yu Gothic,Meiryo,sans-serif}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.app{max-width:460px;min-height:100vh;margin:0 auto;padding:18px 16px 120px;animation:.28s both fadeUp}h1{letter-spacing:.01em;margin:4px 2px;font-size:22px;font-weight:800}.hero{color:#fff;background:radial-gradient(120% 120% at 8% -20%, color-mix(in srgb, var(--accent) 62%, transparent), transparent 56%), linear-gradient(135deg, color-mix(in srgb, var(--accent) 28%, #0c0d12), #0a0b10 64%);border:1px solid color-mix(in srgb, var(--accent) 30%, var(--border));box-shadow:0 24px 50px -26px color-mix(in srgb, var(--accent) 55%, transparent);border-radius:24px;margin-bottom:18px;padding:30px 22px 26px;position:relative;overflow:hidden}.hero:after{content:"";background:radial-gradient(58% 50% at 92% 6%, color-mix(in srgb, var(--accent) 30%, transparent), transparent 62%);pointer-events:none;position:absolute;inset:0}.hero-season{letter-spacing:.16em;opacity:.85;font-size:12px;font-weight:700}.hero-title{letter-spacing:.01em;margin:6px 0 2px;font-size:30px;font-weight:800}.hero-club{opacity:.95;font-size:16px}.gear{color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff29;border:1px solid #ffffff47;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;padding:0;font-size:18px;display:flex;position:absolute;top:16px;right:16px}.stats{grid-template-columns:1fr 1fr;gap:12px;display:grid}.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:16px;position:relative;overflow:hidden}.stat:before{content:"";background:linear-gradient(90deg, var(--accent), transparent 75%);opacity:.85;height:2px;position:absolute;top:0;left:0;right:0}.stat .label{color:var(--muted);letter-spacing:.03em;font-size:12px}.stat .value{font-variant-numeric:tabular-nums;letter-spacing:.01em;margin-top:8px;font-size:32px;font-weight:800;line-height:1.05}.stat .sub{color:var(--muted);margin-top:5px;font-size:12px}.chips{flex-wrap:wrap;gap:8px;margin:16px 0 4px;display:flex}.badge{background:var(--surface-2);border:1px solid var(--border);border-radius:999px;padding:7px 13px;font-size:13px;font-weight:600}.rates{grid-template-columns:1fr 1fr;gap:12px;margin:16px 0 2px;display:grid}.rate{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;position:relative;overflow:hidden}.rate:before{content:"";background:linear-gradient(90deg, var(--accent), transparent 75%);opacity:.85;height:2px;position:absolute;top:0;left:0;right:0}.rate-val{font-variant-numeric:tabular-nums;font-size:26px;font-weight:800}.rate-label{color:var(--muted);margin-top:4px;font-size:12px}.rate-sub{color:var(--muted);margin-top:2px;font-size:11px}.section{margin-top:24px}.section-head{color:var(--muted);letter-spacing:.04em;align-items:center;gap:8px;margin:0 2px 10px;font-size:13px;font-weight:700;display:flex}.section-head .line{background:var(--border);flex:1;height:1px}.jpmap-svg{width:100%;max-width:100%;height:auto;filter:drop-shadow(0 0 16px color-mix(in srgb, var(--accent) 34%, transparent));margin:6px auto 10px;display:block}.map-legend{color:var(--muted);flex-wrap:wrap;gap:12px;margin:0 2px 10px;font-size:12px;display:flex}.map-legend span{align-items:center;gap:6px;display:inline-flex}.map-legend i{border:1px solid var(--border);border-radius:3px;width:12px;height:12px;display:inline-block}ul.story{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}ul.story li{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:12px 14px;font-size:14px}ul.story li b{color:var(--text)}ul.story li.muted{color:var(--muted);background:0 0;border:none;padding:2px}button{font:inherit;cursor:pointer;color:var(--text);border:1px solid var(--border);background:var(--surface-2);border-radius:14px;padding:13px 16px;transition:transform 80ms,filter .15s,background .15s,opacity .15s}button:active{transform:translateY(1px)scale(.99)}button.full{width:100%}button.ghost{background:0 0}button.primary{color:var(--on-accent);background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 96%, #fff), color-mix(in srgb, var(--accent) 70%, #000));box-shadow:0 14px 30px -14px color-mix(in srgb, var(--accent) 80%, transparent);border:none;font-weight:700}button.primary:hover{filter:brightness(1.06)}button:disabled{opacity:.5;cursor:default}.bottombar{z-index:50;border:1px solid var(--border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0c0d12ad;border-radius:20px;gap:10px;width:min(460px,100% - 24px);padding:10px;display:flex;position:fixed;bottom:16px;left:50%;transform:translate(-50%);box-shadow:0 16px 44px -16px #000000b3}.bottombar .grow{flex:1}.icon-btn{justify-content:center;align-items:center;width:52px;padding:0;font-size:18px;display:flex}.topbar{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.topbar-title{margin:0;font-size:20px;font-weight:800}label{color:var(--muted);margin:16px 2px 8px;font-size:13px;display:block}select,input[type=date],input[type=text]{width:100%;font:inherit;border:1px solid var(--border);background:var(--surface);color:var(--text);appearance:none;border-radius:14px;padding:14px}select:focus,input:focus{border-color:color-mix(in srgb, var(--accent) 60%, var(--border));outline:none}.game{background:var(--surface);border:1px solid var(--border);border-radius:16px;margin-bottom:12px;padding:14px}.game .match{font-size:15px;font-weight:700}.game .fav{color:#ffd34d}.game .meta{color:var(--muted);margin:3px 0 12px;font-size:12px}.segment{border:1px solid var(--border);background:#00000040;border-radius:13px;gap:4px;margin-bottom:10px;padding:4px;display:flex}.segment button{color:var(--muted);background:0 0;border:none;border-radius:10px;flex:1;padding:9px;font-size:13px}.segment button.on{background:var(--accent);color:var(--on-accent);font-weight:700}.wl{gap:10px;display:flex}.wl button{flex:1;font-weight:700}.btn-win{background:color-mix(in srgb, var(--win) 16%, transparent);border-color:color-mix(in srgb, var(--win) 42%, transparent);color:var(--win)}.btn-loss{background:color-mix(in srgb, var(--loss) 14%, transparent);border-color:color-mix(in srgb, var(--loss) 40%, transparent);color:var(--loss)}.recorded{color:var(--win);justify-content:space-between;align-items:center;font-size:13px;display:flex}.capture-stage{z-index:9000;position:fixed;inset:0;overflow:hidden}.capture-cover{z-index:9001;background:var(--bg);color:var(--muted);justify-content:center;align-items:center;font-size:15px;display:flex;position:fixed;inset:0}.modal-backdrop{z-index:9100;background:#000000bd;justify-content:center;align-items:center;padding:20px;animation:.2s both fadeUp;display:flex;position:fixed;inset:0}.modal-card{background:var(--surface);border:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:18px;width:100%;max-width:360px;padding:16px}.share-preview{border-radius:12px;width:100%;margin-bottom:14px;display:block}.legal h2{margin:22px 0 6px;font-size:16px;font-weight:700}.legal p{color:#cfd5e1;margin:6px 0;font-size:14px;line-height:1.75}.legal p.muted{color:var(--muted)}.legal a{color:var(--text)}.legal-links{text-align:center;color:var(--muted);margin-top:24px;font-size:12px}.legal-links a{color:var(--muted);margin:0 6px}.center{text-align:center}.muted{color:var(--muted)}.spacer{height:12px}.linkbtn{color:var(--muted);background:0 0;border:none;padding:6px;text-decoration:underline}.filebtn{text-align:center;cursor:pointer;width:100%;font:inherit;border:1px solid var(--border);background:var(--surface-2);color:var(--text);border-radius:14px;padding:13px 16px;display:block}
