:root{--safe-area-inset-top: env(safe-area-inset-top, 0px);--safe-area-inset-bottom: env(safe-area-inset-bottom, 0px);--bottom-nav-height: calc(65px + var(--safe-area-inset-bottom));--slate-50:#F8FAFC;--slate-100:#F1F5F9;--slate-200:#E2E8F0;--slate-300:#CBD5E1;--slate-400:#94A3B8;--slate-500:#64748B;--slate-600:#475569;--slate-700:#334155;--slate-800:#1E293B;--slate-900:#0F172A;--blue-50:#EFF4FF;--blue-100:#DCE5FF;--blue-200:#B8C9FF;--blue-300:#8AA4FF;--blue-400:#5C7FFF;--blue-500:#3D5AFE;--blue-600:#2945E5;--blue-700:#1E36B8;--blue-800:#182B8E;--blue-900:#0E1F4D;--amber-50:#FFF8E6;--amber-100:#FFEFC2;--amber-200:#FFE08A;--amber-300:#FFCF52;--amber-400:#FFBE2E;--amber-500:#F5A623;--amber-600:#D08810;--amber-700:#9E6500;--amber-800:#6B4400;--evt-hit:#3D5AFE;--evt-hit-bg:#EEF2FF;--evt-hit-bd:#C7D2FE;--evt-2b:#2945E5;--evt-2b-bg:#E0E7FF;--evt-2b-bd:#A5B4FC;--evt-3b:#1E36B8;--evt-3b-bg:#DCE5FF;--evt-3b-bd:#8AA4FF;--evt-hr:#D08810;--evt-hr-bg:#FFF8E6;--evt-hr-bd:#FFCF52;--evt-k:#E11D48;--evt-k-bg:#FEE7EB;--evt-k-bd:#FBA8B8;--evt-bb:#7C3AED;--evt-bb-bg:#F3EBFF;--evt-bb-bd:#C4A8FB;--evt-hbp:#A78BFA;--evt-hbp-bg:#F5F0FF;--evt-hbp-bd:#D6C3FB;--evt-out:#64748B;--evt-out-bg:#F1F5F9;--evt-out-bd:#CBD5E1;--evt-dp:#334155;--evt-dp-bg:#E2E8F0;--evt-dp-bd:#94A3B8;--evt-sac:#0D9488;--evt-sac-bg:#E6F7F4;--evt-sac-bd:#7DD3C5;--evt-err:#F59E0B;--evt-err-bg:#FEF3D7;--evt-err-bd:#FBBF24;--evt-sb:#0891B2;--evt-sb-bg:#E0F6FA;--evt-sb-bd:#67E8F9;--safe:#0891B2;--warn:#F59E0B;--danger:#E11D48;--info:#3D5AFE;--success:#0D9488;--bg:#F4F6FB;--surface:#FFFFFF;--border:#E5EAF2;--border-strong:#CDD6E2;--text:#0F172A;--text-muted:#64748B;--text-subtle:#94A3B8;--font-display:"Inter",-apple-system,BlinkMacSystemFont,system-ui,sans-serif;--font-mono:"JetBrains Mono","SF Mono","Menlo",ui-monospace,monospace;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:20px;--s-6:24px;--s-8:32px;--s-10:40px;--s-12:48px;--r-sm:8px;--r-md:12px;--r-lg:16px;--r-xl:20px;--r-2xl:24px;--r-full:999px;--shadow-sm:0 1px 2px rgba(15,23,42,.05);--shadow-md:0 4px 16px rgba(15,23,42,.06);--shadow-lg:0 10px 24px rgba(15,23,42,.1);--shadow-card:0 1px 0 rgba(15,23,42,.03),0 2px 6px rgba(15,23,42,.04);--shadow-fab:0 6px 20px rgba(61,90,254,.35);--shadow-pop:0 12px 32px rgba(15,23,42,.12);--surface-2:#F8FAFC;--primary: var(--blue-600);--primary-dark: var(--blue-700);--primary-light: var(--blue-50);--secondary: var(--slate-500);--accent-success: var(--success);--accent-error: var(--danger);--accent-warning: var(--warn);--accent-purple: var(--evt-bb);--bg-main: var(--bg);--bg-secondary: var(--slate-100);--bg-card: var(--surface);--text-primary: var(--text);--text-secondary: var(--slate-600);--text-muted: var(--slate-400);--text-on-primary: #FFFFFF;--border-light: var(--border);--border-focus: var(--blue-500);--radius-sm: var(--r-sm);--radius-md: var(--r-md);--radius-lg: var(--r-lg);--radius-full: var(--r-full)}body{margin:0;font-family:var(--font-display);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-main);color:var(--text-primary)}button{-webkit-tap-highlight-color:transparent;outline:none}.app-container{max-width:600px;margin:0 auto;background:var(--bg-main);min-height:100vh;display:flex;flex-direction:column;position:relative}.text-h1{font-size:24px;font-weight:800;letter-spacing:-.03em;color:var(--text)}.text-h2{font-size:20px;font-weight:700;letter-spacing:-.02em;color:var(--text)}.text-h3{font-size:18px;font-weight:700;letter-spacing:-.01em;color:var(--text)}.text-body{font-size:15px;color:var(--slate-700);line-height:1.5}.text-caption{font-size:11px;color:var(--text-muted);font-weight:700;letter-spacing:.06em;text-transform:uppercase}.text-mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.chip-grp{display:inline-flex;align-items:center;gap:4px;height:32px;padding:0 12px;border-radius:var(--r-full);background:var(--surface);border:1px solid var(--border);font-family:var(--font-display);font-size:12px;font-weight:700;flex-shrink:0;white-space:nowrap;cursor:pointer;color:var(--text)}.chip-grp .lbl{color:var(--text-muted);font-weight:600}.chip-grp .sep{color:var(--text-subtle);margin:0 2px}.chip-grp .val{color:var(--blue-600);font-weight:800}.chip-grp .chev{color:var(--text-muted);font-size:9px;margin-left:2px}.chip-grp.has-active{background:var(--blue-50);border-color:var(--blue-200)}.chip-grp.has-active .lbl,.chip-grp.has-active .val{color:var(--blue-700)}.badge{display:inline-flex;align-items:center;gap:3px;padding:3px 8px;border-radius:var(--r-full);font-size:10px;font-weight:800;letter-spacing:-.01em;font-family:var(--font-mono)}.badge-win{background:#dcfce7;color:#15803d}.badge-loss{background:#fee2e2;color:#b91c1c}.badge-draw{background:#f1f5f9;color:#475569}.badge-upcoming{background:var(--blue-50);color:var(--blue-700)}.badge-pro{background:var(--blue-100);color:var(--blue-700)}.badge-beta{background:var(--amber-100);color:var(--amber-700)}.section-label{font-size:11px;font-weight:800;color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:var(--s-2);font-family:var(--font-display)}.android-setup-container{background:var(--bg-main);height:100vh;height:100dvh;display:flex;flex-direction:column;overflow:hidden}.android-top-bar{background:var(--surface);color:var(--text);padding:var(--s-3) var(--s-5);box-shadow:0 1px 0 var(--slate-200),0 8px 20px #0f172a17;flex-shrink:0;z-index:1000;padding-top:calc(var(--s-3) + var(--safe-area-inset-top))}.android-top-bar h1{position:absolute;left:50%;transform:translate(-50%);font-size:17px;margin:0;font-weight:700;letter-spacing:-.03em;color:var(--slate-900);white-space:nowrap;pointer-events:none;font-family:var(--font-display)}.bar-content{display:flex;justify-content:space-between;align-items:center;width:100%;position:relative;min-height:44px}.android-main{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:20px 16px;padding-bottom:calc(80px + var(--safe-area-inset-bottom))}.tstat-tbl-wrap{overflow-x:auto;margin:0;scrollbar-width:none;-webkit-overflow-scrolling:touch}.tstat-tbl-wrap::-webkit-scrollbar{display:none}.tstat-tbl{min-width:520px;border-collapse:collapse;width:100%;font-family:var(--font-display)}.tstat-tbl th,.tstat-tbl td{padding:9px 10px;font-size:12px;white-space:nowrap;text-align:right;border-bottom:1px solid var(--border)}.tstat-tbl th{background:var(--surface);color:var(--text-muted);font-weight:700;letter-spacing:.04em;position:relative}.tstat-tbl td{color:var(--text);font-size:13px}.tstat-tbl th.sticky,.tstat-tbl td.sticky{position:sticky;background:var(--surface);z-index:2}.tstat-tbl th.sticky-rank,.tstat-tbl td.sticky-rank{left:0;width:36px;text-align:center;padding-left:0;padding-right:0}.tstat-tbl th.sticky-name,.tstat-tbl td.sticky-name{left:36px;min-width:110px;text-align:left;border-right:1px solid var(--border)}.tstat-tbl th.sortable{cursor:pointer;user-select:none;-webkit-user-select:none}.tstat-tbl th.sortable:active{background:var(--slate-50)}.tstat-tbl td.primary-cell{font-weight:800;color:var(--blue-600)}.tstat-tbl td.zero{color:var(--slate-300)}.tstat-tbl tbody tr:last-child td{border-bottom:none}.tstat-tbl tbody tr:active{background:var(--slate-50)}.tstat-rank-num[data-top=true]{color:var(--blue-600);font-weight:800}.tstat-rank-num[data-top=false]{color:var(--text-muted);font-weight:600}.md-card{background:var(--surface);border-radius:var(--r-lg);padding:var(--s-5);margin-bottom:var(--s-4);box-shadow:var(--shadow-card);border:1px solid var(--border);transition:transform .15s,box-shadow .15s}.md-card.interactive{cursor:pointer}.md-card.interactive:active{transform:scale(.985);box-shadow:none}.md-field{margin-bottom:var(--s-5)}.md-field label{display:block;font-family:var(--font-mono);font-size:11px;color:var(--text-muted);font-weight:600;margin-bottom:var(--s-2);letter-spacing:.04em}.md-input,.md-field select,.md-field input{width:100%;height:44px;border:1px solid var(--border-strong);border-radius:var(--r-md);padding:0 var(--s-4);font-size:15px;font-weight:500;font-family:var(--font-display);background:var(--surface);color:var(--text);box-sizing:border-box;transition:border-color .15s,box-shadow .15s;-webkit-appearance:none;-moz-appearance:none;appearance:none}.md-input::placeholder,.md-field input::placeholder{color:var(--text-subtle)}.md-input:focus,.md-field select:focus,.md-field input:focus{border-color:var(--blue-500);outline:none;box-shadow:0 0 0 3px #3d5afe1f}.md-btn-raised{background:var(--blue-600);color:#fff;border:none;padding:0 var(--s-6);height:48px;border-radius:var(--r-md);font-family:var(--font-display);font-weight:700;font-size:15px;cursor:pointer;transition:background .15s,transform .1s,box-shadow .15s;display:flex;align-items:center;justify-content:center;gap:var(--s-2);box-shadow:0 1px 2px #2945e533,inset 0 1px #ffffff26;letter-spacing:-.01em;white-space:nowrap}.md-btn-raised:hover{background:var(--blue-700);box-shadow:0 4px 12px #2945e540}.md-btn-raised:active{transform:scale(.97);background:var(--blue-700);box-shadow:none}.md-btn-raised:disabled{background:var(--slate-300);box-shadow:none;cursor:not-allowed;transform:none}.md-btn-raised.success{background:var(--success);box-shadow:0 1px 2px #0d948833}.md-btn-raised.error{background:var(--danger);box-shadow:0 1px 2px #e11d4833}.md-btn-secondary{background:var(--surface);color:var(--text);border:1px solid var(--border-strong);padding:0 var(--s-5);height:44px;border-radius:var(--r-md);font-family:var(--font-display);font-weight:700;font-size:14px;cursor:pointer;transition:background .15s,border-color .15s,transform .1s;display:flex;align-items:center;justify-content:center;gap:var(--s-2);white-space:nowrap}.md-btn-secondary:hover{background:var(--slate-50);border-color:var(--slate-400)}.md-btn-secondary:active{transform:scale(.97)}.md-btn-flat{background:transparent;border:none;color:var(--blue-600);font-family:var(--font-display);font-weight:700;padding:var(--s-2) var(--s-4);font-size:14px;cursor:pointer;border-radius:var(--r-sm);transition:background .15s}.md-btn-flat:hover{background:var(--blue-50)}.md-btn-flat:active{background:var(--blue-100)}.md-btn-pro-large{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--s-2);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--s-6);color:var(--text);font-family:var(--font-display);font-weight:700;font-size:15px;transition:background .15s,transform .1s;cursor:pointer;box-shadow:var(--shadow-card)}.md-btn-pro-large:hover{background:var(--slate-50)}.md-btn-pro-large:active{background:var(--slate-100);transform:translateY(1px)}.md-btn-pro-large.primary{background:var(--blue-600);color:#fff;border:none;box-shadow:0 2px 8px #2945e533}.md-btn-pro-large.primary:hover,.md-btn-pro-large.primary:active{background:var(--blue-700)}.bottom-nav{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:600px;height:var(--bottom-nav-height);background:var(--surface);display:flex;justify-content:space-around;align-items:center;box-shadow:0 -1px 0 var(--slate-200),0 -6px 16px #0f172a12;padding-bottom:var(--safe-area-inset-bottom);z-index:2000;box-sizing:border-box;overflow:visible}.nav-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;background:none;border:none;outline:none;-webkit-tap-highlight-color:transparent;color:var(--slate-400);gap:4px;transition:color .15s;cursor:pointer;height:65px;position:relative;padding-bottom:4px;font-family:var(--font-display)}.nav-item span{font-size:10px;font-weight:600;letter-spacing:.01em;font-family:var(--font-display)}.nav-item:active{opacity:.6}.nav-item.active{color:var(--blue-600)}.nav-item.active:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:24px;height:3px;background:var(--blue-600);border-radius:0 0 3px 3px}.nav-item-fab{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;background:none;border:none;outline:none;-webkit-tap-highlight-color:transparent;cursor:pointer;gap:4px;height:65px;position:relative;padding-bottom:4px;font-family:var(--font-display)}.nav-fab-circle{width:48px;height:48px;background:var(--blue-600);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px #2945e559,0 1px 3px #2945e533;color:#fff;transition:transform .15s,box-shadow .15s;position:absolute;top:-10px}.nav-fab-circle:active,.nav-item-fab:active .nav-fab-circle{transform:scale(.93);box-shadow:0 2px 8px #2945e540}.nav-fab-label{font-size:10px;font-weight:600;color:var(--text-subtle);position:absolute;bottom:9px;letter-spacing:.01em;font-family:var(--font-display)}.scoreboard-view{padding:var(--s-4) 0 var(--s-10);background:var(--bg);display:flex;flex-direction:column;gap:var(--s-1)}.scoreboard-view .sub-tab-bar{margin-left:var(--s-4);margin-right:var(--s-4);margin-bottom:var(--s-2)}th.p-name-fixed{text-align:center!important}.scoreboard-view .section-title{margin-top:var(--s-2)}.timeline-view{background:var(--bg)}.tl-inning-header{padding:5px var(--s-4);font-family:var(--font-display);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--text-subtle);background:var(--slate-100);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.log-item{display:flex;align-items:flex-start;gap:var(--s-3);padding:10px var(--s-4);border-bottom:1px solid var(--border);background:var(--surface)}.event-time{font-family:var(--font-mono);font-size:10px;font-weight:600;color:var(--text-subtle);white-space:nowrap;min-width:38px;flex-shrink:0;padding-top:2px}.event-info{flex:1;font-family:var(--font-display);font-size:13px;font-weight:600;color:var(--text);line-height:1.4}.pitcher-meta{font-size:11px;font-weight:500;color:var(--text-subtle);margin-top:2px}.overall-summary-card{background:var(--surface);margin:0 var(--s-4) var(--s-3);border-radius:var(--r-xl);box-shadow:var(--shadow-card);border:1px solid var(--border);overflow-x:auto;-webkit-overflow-scrolling:touch}.box-score-table{width:100%;min-width:440px;border-collapse:collapse;font-family:var(--font-mono);font-size:13px;font-variant-numeric:tabular-nums}.box-score-table th{background:var(--slate-50);color:var(--text-muted);font-weight:700;padding:10px var(--s-2);border-bottom:1px solid var(--border);font-size:10px;letter-spacing:.08em;text-transform:uppercase;text-align:center}.box-score-table td{padding:12px var(--s-2);text-align:center;border-bottom:1px solid var(--border);font-weight:600;color:var(--slate-700)}.box-score-table tr:last-child td{border-bottom:none}.box-score-table .team-name{text-align:left;padding-left:var(--s-4);font-family:var(--font-display);font-weight:800;color:var(--slate-900);min-width:72px;white-space:nowrap;position:sticky;left:0;background:var(--surface);z-index:2}.box-score-table .total-col{font-weight:800;font-size:15px;color:var(--blue-700);background:var(--blue-50)}.section-title{font-size:13px;font-weight:800;letter-spacing:-.01em;margin:var(--s-4) var(--s-4) var(--s-2);color:var(--slate-900);display:flex;align-items:center;gap:var(--s-2);text-transform:uppercase;font-family:var(--font-display)}.section-title:before{content:"";width:3px;height:14px;background:var(--blue-600);border-radius:var(--r-full)}.player-stats-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 var(--s-4) var(--s-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-card)}.p-name-fixed{text-align:left!important;padding-left:var(--s-3)!important;font-weight:700;white-space:nowrap;position:sticky;left:0;background:var(--surface);z-index:5;min-width:72px}.stats-table{table-layout:fixed;width:auto;min-width:100%;border-collapse:collapse;font-family:var(--font-mono);font-size:12px;font-variant-numeric:tabular-nums}.stats-table th{background:var(--slate-50);padding:8px var(--s-2);color:var(--text-muted);font-family:var(--font-display);font-weight:700;border-bottom:2px solid var(--slate-300);font-size:9px;letter-spacing:.02em;text-align:center;white-space:nowrap}.stats-table td{padding:10px var(--s-2);text-align:center;border-bottom:1px solid var(--border);font-size:12px;color:var(--slate-700);font-weight:600}.stats-table tr:last-child td{border-bottom:none}.stat-col{width:34px;min-width:34px}.inning-col{width:56px;min-width:56px}.inning-res{background:var(--slate-50);color:var(--slate-600);font-size:10px;font-weight:700;border-left:1px solid var(--border);letter-spacing:-.02em;word-break:break-all;white-space:normal;line-height:1.3}.gc-out-dot{width:14px;height:14px;border-radius:var(--radius-full);background:#fff3;border:1.5px solid rgba(255,255,255,.3);transition:all .3s ease}.gc-out-dot.active{background:#ff4d4d;border-color:#ff8080;box-shadow:0 0 12px #ff4d4dcc,inset 0 0 4px #fff6;transform:scale(1.1)}.gc-field-outs{display:flex;align-items:center;gap:8px;padding:6px 12px;border-radius:var(--radius-full);background:#0006;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.15)}.gc-out-label{font-size:11px;font-weight:900;color:#ffffffb3;letter-spacing:.05em}.gc-runner-tag{display:block;background:#f97316;color:#fff;padding:3px 8px;border-radius:var(--r-full);font-size:10px;font-weight:800;white-space:nowrap;border:1px solid #ea580c;box-shadow:0 2px 8px #f9731666;pointer-events:none}.bottom-sheet{position:fixed;bottom:0;left:50%;transform:translate(-50%) translateY(100%);width:100%;max-width:600px;background:var(--surface);border-radius:var(--r-2xl) var(--r-2xl) 0 0;padding:var(--s-4) var(--s-5) calc(var(--s-4) + var(--safe-area-inset-bottom));z-index:3000;transition:transform .26s cubic-bezier(.32,.72,0,1);box-shadow:0 -8px 32px #0f172a1f,0 -1px 0 var(--border);will-change:transform}.bottom-sheet.show{transform:translate(-50%) translateY(0)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes toastSlideIn{0%{transform:translate(-50%,-20px);opacity:0}to{transform:translate(-50%);opacity:1}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-fade-in{animation:fadeIn .3s ease-out}.animate-slide-up{animation:slideUp .3s ease-out}.animate-toast{animation:toastSlideIn .3s ease-out forwards}.toast{position:fixed;top:calc(var(--safe-area-inset-top) + 16px);left:50%;transform:translate(-50%);z-index:9999;display:flex;align-items:center;gap:8px;padding:9px 18px;border-radius:var(--r-full);font-family:var(--font-display);font-size:13px;font-weight:700;white-space:nowrap;pointer-events:none;animation:toastSlideIn .22s cubic-bezier(.32,.72,0,1) both}.toast.success{background:var(--success);color:#fff;box-shadow:0 4px 16px #0d948859}.toast.danger{background:var(--danger);color:#fff;box-shadow:0 4px 16px #e11d4859}.toast.info{background:var(--blue-600);color:#fff;box-shadow:0 4px 16px #2945e559}.animate-spin{animation:spin 1s linear infinite}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.gc-header{background:linear-gradient(160deg,var(--blue-700) 0%,var(--blue-600) 100%);padding:8px 16px 12px;padding-top:calc(8px + var(--safe-area-inset-top));color:#fff;display:flex;flex-direction:column;gap:8px}.gc-header-top{display:flex;align-items:center;justify-content:space-between;min-height:36px}.gc-score-row{display:flex;align-items:center;justify-content:space-between;background:#0000002e;border-radius:var(--r-md);padding:10px 16px}.gc-team-unit{display:flex;align-items:center;gap:10px}.gc-team-unit.home{flex-direction:row-reverse}.gc-team-name{font-size:14px;font-weight:800;font-family:var(--font-display);color:#ffffffd9}.gc-score-num{font-size:26px;font-weight:900;font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.03em;color:#fff}.gc-matchup-bar{display:grid;grid-template-columns:1fr 1.4fr;background:var(--bg-secondary);border-bottom:1px solid var(--border-light)}.gc-matchup-unit{padding:12px;display:flex;align-items:center;gap:12px;border-right:1px solid var(--border-light)}.gc-m-info{display:flex;flex-direction:column;gap:2px}.gc-role-box{width:28px;height:28px;background:var(--accent-warning);color:#fff;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);font-weight:800;font-size:12px}.gc-role-box.ab{background:var(--primary)}.gc-field-view{background:#f1f5f9;height:280px;position:relative;overflow:hidden;padding:4px 10px 0}.gc-field-container{position:relative;width:100%;height:100%}.gc-field-container>svg{position:absolute;top:0;left:0;width:100%;height:100%}.gc-def-badge{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;pointer-events:none;gap:1px;z-index:5}.gc-def-name{padding:2px 7px;border-radius:5px;font-size:10px;font-weight:700;background:#4755691c;color:#334155;border:1px solid rgba(71,85,105,.22);white-space:nowrap}.gc-def-pos{font-size:8px;font-weight:600;color:#94a3b8}.gc-runner-badge{position:absolute;transform:translate(-50%,-50%);z-index:20;cursor:pointer}.gc-action-footer{background:var(--surface);border-top:1px solid var(--border);padding:var(--s-3) var(--s-4) var(--s-4);display:flex;flex-direction:column;gap:var(--s-3)}.pad-btn{height:56px;border-radius:var(--r-md);border:1px solid var(--slate-200);background:var(--slate-50);font-family:var(--font-display);font-weight:800;font-size:15px;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;transition:transform .1s;letter-spacing:-.01em;color:var(--slate-700)}.pad-btn small{font-size:10px;font-weight:600;color:var(--slate-400);font-family:var(--font-display);letter-spacing:-.01em}.pad-btn:active{transform:scale(.95)}.pad-btn.out,.pad-btn.k{background:var(--surface);border-color:var(--slate-300);color:var(--slate-800);box-shadow:0 1px 3px #0f172a12}.pad-btn.hit,.pad-btn.bb{background:var(--blue-50);border-color:var(--blue-300);color:var(--blue-700);box-shadow:0 1px 3px #2945e514}.pad-btn.hr{background:var(--amber-50);border-color:var(--amber-300);color:var(--amber-700)}.pad-btn.err{background:var(--slate-50);border-color:var(--slate-200);color:var(--slate-500)}.btn-tool-strip{display:flex;align-items:center;justify-content:center;gap:var(--s-1);height:42px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);font-family:var(--font-display);font-size:12px;font-weight:600;cursor:pointer;color:var(--text-muted);transition:background .15s;white-space:nowrap}.btn-tool-strip:active{background:var(--slate-50)}.btn-tool-strip.danger{background:var(--surface);border-color:var(--border);color:var(--danger)}.btn-tool-strip.primary{background:var(--surface);border-color:var(--slate-300);color:var(--slate-700);font-size:12px;font-weight:700}.btn-game-pro{background:var(--slate-800);border:none;border-radius:var(--radius-md);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:12px 0;gap:6px;cursor:pointer}.btn-pro-icon{width:32px;height:32px;background:#fff;color:var(--text-primary);border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-weight:900}.sub-tab-bar{display:flex;background:var(--slate-100);padding:3px;gap:2px;border-radius:var(--r-full);margin:0 0 var(--s-4)}.sub-tab{flex:1;border:none;background:transparent;height:34px;font-family:var(--font-display);font-size:13px;font-weight:700;color:var(--text-muted);border-radius:var(--r-full);transition:background .15s,color .15s,box-shadow .15s;cursor:pointer;letter-spacing:-.01em}.sub-tab.active{background:var(--surface);color:var(--blue-700);box-shadow:var(--shadow-sm)}.remove-btn{background:none;border:none;color:var(--accent-error);padding:8px;cursor:pointer;display:flex;align-items:center;justify-content:center}.remove-btn:disabled{opacity:.3}.btn-tool-gray{display:flex;align-items:center;justify-content:center;gap:8px;height:48px;border:none;border-radius:var(--radius-md);font-size:14px;font-weight:700;cursor:pointer;transition:all .2s;background:#ffffff14;color:#ffffffe6}.btn-tool-gray:active{transform:scale(.95);background:#ffffff26}.sub-list-scroll{max-height:50vh;overflow-y:auto;padding:4px 0;margin:0 -8px}.sub-player-btn{width:100%;display:flex;align-items:center;justify-content:space-between;padding:var(--s-4);margin-bottom:var(--s-2);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);cursor:pointer;transition:background .15s,border-color .15s,transform .1s;text-align:left}.sub-player-btn:active{background:var(--slate-50);transform:scale(.98)}.sub-player-btn .p-name{font-size:15px;font-weight:800;letter-spacing:-.01em;color:var(--text)}.sub-player-btn .p-status{font-family:var(--font-mono);font-size:11px;font-weight:700;padding:3px var(--s-2);border-radius:var(--r-full);background:var(--slate-100);color:var(--text-muted)}.sub-player-btn.active{border-color:var(--blue-500);background:var(--blue-50)}.sub-player-btn.active .p-status{background:var(--blue-600);color:#fff}.bottom-sheet:before{content:"";position:absolute;top:8px;left:50%;transform:translate(-50%);width:36px;height:4px;background:var(--border-strong);border-radius:var(--r-full)}.badge{display:inline-flex;align-items:center;gap:5px;padding:3px var(--s-2);border-radius:var(--r-full);font-family:var(--font-mono);font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;flex-shrink:0;line-height:1}.badge-live{background:var(--danger);color:#fff}.badge-live:before{content:"";width:5px;height:5px;border-radius:50%;background:#fff;animation:blink 1.4s infinite}@keyframes blink{50%{opacity:.3}}.badge-final{background:var(--slate-200);color:var(--slate-700)}.badge-scheduled,.badge-win{background:var(--blue-50);color:var(--blue-700);border:1px solid var(--blue-200)}.badge-draft{background:var(--amber-50);color:var(--amber-700);border:1px solid var(--amber-200)}.evt-chip{display:inline-flex;align-items:center;gap:4px;padding:3px var(--s-2);border-radius:6px;font-family:var(--font-mono);font-size:11px;font-weight:800;letter-spacing:.02em;border:1px solid transparent;white-space:nowrap}.evt-chip.hit{background:var(--evt-hit-bg);color:var(--evt-hit);border-color:var(--evt-hit-bd)}.evt-chip.s2{background:var(--evt-2b-bg);color:var(--evt-2b);border-color:var(--evt-2b-bd)}.evt-chip.s3{background:var(--evt-3b-bg);color:var(--evt-3b);border-color:var(--evt-3b-bd)}.evt-chip.hr{background:var(--evt-hr-bg);color:var(--evt-hr);border-color:var(--evt-hr-bd)}.evt-chip.k{background:var(--evt-k-bg);color:var(--evt-k);border-color:var(--evt-k-bd)}.evt-chip.bb{background:var(--evt-bb-bg);color:var(--evt-bb);border-color:var(--evt-bb-bd)}.evt-chip.hbp{background:var(--evt-hbp-bg);color:var(--evt-hbp);border-color:var(--evt-hbp-bd)}.evt-chip.out{background:var(--evt-out-bg);color:var(--evt-out);border-color:var(--evt-out-bd)}.evt-chip.dp{background:var(--evt-dp-bg);color:var(--evt-dp);border-color:var(--evt-dp-bd)}.evt-chip.sac{background:var(--evt-sac-bg);color:var(--evt-sac);border-color:var(--evt-sac-bd)}.evt-chip.err{background:var(--evt-err-bg);color:var(--evt-err);border-color:var(--evt-err-bd)}.evt-chip.sb{background:var(--evt-sb-bg);color:var(--evt-sb);border-color:var(--evt-sb-bd)}[data-tooltip]{position:relative}[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:125%;left:50%;transform:translate(-50%);background-color:#333;color:#fff;padding:6px 10px;border-radius:6px;font-size:12px;white-space:nowrap;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;z-index:1000;pointer-events:none;box-shadow:0 4px 12px #0003}[data-tooltip]:hover:after{opacity:1;visibility:visible}[data-tooltip]:active:after{opacity:1;visibility:visible}.gr-role-row{display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);margin-bottom:var(--s-4)}.gr-role-tabs{display:inline-flex;gap:2px;background:var(--surface-2);padding:3px;border-radius:var(--r-full)}.gr-role-tabs button{background:transparent;border:0;color:var(--text-muted);font-size:13px;font-weight:700;padding:6px 16px;border-radius:var(--r-full);cursor:pointer;font-family:var(--font-display);letter-spacing:-.01em}.gr-role-tabs button.active{background:var(--surface);color:var(--blue-700);box-shadow:0 1px 2px #00000014}.gr-cal-link{background:var(--surface);border:1px solid var(--border);color:var(--text);font-size:12px;font-weight:700;padding:7px 13px;border-radius:var(--r-full);cursor:pointer;font-family:var(--font-display);letter-spacing:-.01em;display:inline-flex;align-items:center;gap:4px}.gr-cal-link:active{background:var(--surface-2)}.gr-hi-card{background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff;border-radius:var(--r-xl);padding:var(--s-4);margin-bottom:var(--s-4);box-shadow:var(--shadow-card)}.gr-hi-title{font-size:11px;font-weight:800;letter-spacing:.06em;opacity:.85;margin-bottom:var(--s-3);text-transform:uppercase;font-family:var(--font-display)}.gr-hi-list{display:flex;flex-direction:column;gap:8px}.gr-hi-item{display:flex;align-items:center;gap:10px}.gr-hi-icon{font-size:16px;line-height:1}.gr-hi-text{font-size:13px;font-weight:700;letter-spacing:-.01em;font-family:var(--font-display)}.gr-change-section{margin-bottom:var(--s-4)}.gr-section-head{display:flex;align-items:center;margin-bottom:var(--s-2);padding:0 2px}.gr-section-h{font-size:11px;font-weight:800;color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;font-family:var(--font-display)}.gr-feed-head{margin-top:var(--s-3)}.gr-change-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.gr-change-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:10px 8px;text-align:center;box-shadow:var(--shadow-card)}.gr-change-label{font-size:10px;font-weight:700;color:var(--text-muted);letter-spacing:.04em;font-family:var(--font-display);margin-bottom:4px}.gr-change-value{font-size:18px;font-weight:800;color:var(--text);font-family:var(--font-mono);letter-spacing:-.02em;line-height:1.1}.gr-change-delta{font-size:11px;font-weight:800;margin-top:4px;font-family:var(--font-mono);letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gr-change-delta.good{color:#10b981}.gr-change-delta.bad{color:#ef4444}.gr-change-delta.neutral{color:var(--text-subtle)}.gr-change-empty{padding:var(--s-4);background:var(--surface);border:1px dashed var(--border-strong);border-radius:var(--r-md);text-align:center;font-size:12px;color:var(--text-muted);line-height:1.5}.gr-card{width:100%;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);padding:var(--s-4);margin-bottom:var(--s-3);cursor:pointer;text-align:left;font-family:var(--font-display);display:block;box-shadow:var(--shadow-card);transition:transform .1s,box-shadow .15s}.gr-card:active{transform:scale(.99)}.gr-card-game{border-left:3px solid var(--blue-600)}.gr-card-practice{border-left:3px solid var(--amber-500)}.gr-card-head{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-bottom:var(--s-2)}.gr-card-type{font-size:10px;font-weight:800;padding:3px 8px;border-radius:var(--r-full);letter-spacing:.04em}.gr-card-type.game{color:var(--blue-700);background:var(--blue-50)}.gr-card-type.practice{color:var(--amber-600);background:var(--amber-50)}.gr-card-date{font-size:12px;font-weight:700;color:var(--text-muted);font-family:var(--font-mono);letter-spacing:-.01em}.gr-card-sep{font-size:11px;color:var(--text-subtle)}.gr-card-vs{font-size:14px;font-weight:800;color:var(--text);letter-spacing:-.01em}.gr-card-result{margin-left:auto;font-size:11px;font-weight:800;padding:3px 8px;border-radius:var(--r-full);font-family:var(--font-mono);letter-spacing:-.02em}.gr-card-result.win{color:var(--evt-hit);background:var(--evt-hit-bg)}.gr-card-result.lose{color:var(--evt-k);background:var(--evt-k-bg)}.gr-card-result.tie{color:var(--text-muted);background:var(--surface-2)}.gr-card-stat{display:flex;align-items:center;gap:var(--s-2);padding:8px 12px;background:var(--surface-2);border-radius:var(--r-md);margin-bottom:var(--s-2)}.gr-card-stat-key{font-size:10px;font-weight:800;color:var(--blue-700);background:var(--blue-50);padding:3px 7px;border-radius:var(--r-full);letter-spacing:.04em;flex-shrink:0}.gr-card-stat-key.pit{color:var(--evt-hr);background:var(--evt-hr-bg)}.gr-card-stat-val{font-size:12px;color:var(--text);font-weight:600;font-family:var(--font-mono);letter-spacing:-.02em;flex:1;min-width:0}.gr-card-stat-empty{font-size:11px;color:var(--text-subtle);font-style:italic;background:transparent;padding:4px 0}.gr-card-videos{display:flex;gap:6px;margin-bottom:var(--s-3);overflow:hidden}.gr-card-thumb{position:relative;flex:1;aspect-ratio:16/9;border-radius:var(--r-md);overflow:hidden;background:linear-gradient(135deg,var(--slate-400),var(--slate-700))}.gr-card-videos.single .gr-card-thumb{max-width:100%}.gr-card-thumb img{width:100%;height:100%;object-fit:cover;display:block}.gr-card-thumb-empty{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#ffffffb3;font-size:22px}.gr-card-thumb-badge{position:absolute;top:4px;left:4px;font-size:9px;font-weight:700;padding:2px 6px;border-radius:var(--r-full);background:#ffffffeb;letter-spacing:.04em}.gr-card-thumb-badge.game{color:var(--evt-hit)}.gr-card-thumb-badge.practice{color:var(--evt-sac)}.gr-card-thumb-badge.highlight{color:var(--evt-hr)}.gr-card-thumb-more{background:var(--surface-2);color:var(--text-muted);font-size:14px;font-weight:800;display:flex;align-items:center;justify-content:center}.gr-card-memo{display:flex;gap:8px;background:var(--amber-50);border-left:3px solid var(--amber-500);padding:10px 12px;font-size:13px;color:var(--slate-800);border-radius:4px;line-height:1.55;letter-spacing:-.01em}.gr-card-memo-icon{flex-shrink:0;color:var(--amber-600);font-size:14px;line-height:1.4}.gr-card-memo-text{flex:1;white-space:pre-line;min-width:0;word-break:break-word}.gr-empty{text-align:center;padding:var(--s-7) var(--s-4);background:var(--surface);border:1px dashed var(--border-strong);border-radius:var(--r-xl)}.gr-empty-emoji{font-size:42px;margin-bottom:var(--s-3)}.gr-empty-title{font-size:14px;font-weight:700;color:var(--text);margin-bottom:var(--s-2);font-family:var(--font-display)}.gr-empty-sub{font-size:12px;color:var(--text-muted);line-height:1.6}.gr-mini-card{width:100%;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);padding:var(--s-3) var(--s-4);margin-bottom:var(--s-4);cursor:pointer;display:grid;grid-template-columns:auto 1fr auto;gap:var(--s-3);align-items:center;font-family:var(--font-display);text-align:left;box-shadow:var(--shadow-card)}.gr-mini-card:active{background:var(--surface-2)}.gr-mini-info{display:flex;flex-direction:column;gap:2px}.gr-mini-label{font-size:10px;font-weight:700;color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase}.gr-mini-value{font-size:18px;font-weight:800;color:var(--text);font-family:var(--font-mono);letter-spacing:-.02em;line-height:1.1}.gr-mini-svg{width:100%;height:40px;min-width:100px}.gr-mini-arrow{font-size:18px;color:var(--text-subtle);font-weight:400}.gr-period-row{display:flex;gap:4px;margin-bottom:var(--s-3);background:var(--surface-2);padding:3px;border-radius:var(--r-md)}.gr-period-btn{flex:1;background:transparent;border:0;font-size:12px;font-weight:700;color:var(--text-muted);padding:6px 0;border-radius:var(--r-sm);cursor:pointer;font-family:var(--font-display);letter-spacing:-.01em}.gr-period-btn:active{transform:scale(.98)}.gr-period-btn.active{background:var(--surface);color:var(--blue-700);box-shadow:0 1px 2px #0000000f}.gr-graph-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--s-3);gap:var(--s-2)}.gr-metric-btn{background:var(--surface);border:1px solid var(--border);color:var(--text);font-size:13px;font-weight:700;padding:7px 14px;border-radius:var(--r-full);cursor:pointer;font-family:var(--font-display);letter-spacing:-.01em}.gr-metric-btn:active{background:var(--surface-2)}.gr-graph-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);padding:var(--s-4);box-shadow:var(--shadow-card)}.gr-graph-svg{display:block;width:100%;height:220px}.gr-graph-empty{padding:32px 0;text-align:center;font-size:12px;color:var(--text-subtle)}.gr-graph-legend{display:flex;gap:var(--s-3);font-size:11px;color:var(--text-muted);margin-top:var(--s-2)}.gr-graph-legend .dot{width:6px;height:6px;border-radius:50%;display:inline-block;margin-right:4px;vertical-align:middle}.gr-graph-legend .dot.game{background:var(--blue-600)}.gr-graph-legend .dot.practice{background:var(--amber-500)}.gr-sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a80;z-index:110;animation:gr-fade-in .18s ease}.gr-sheet{position:fixed;left:0;right:0;bottom:0;background:var(--surface);border-radius:var(--r-2xl) var(--r-2xl) 0 0;z-index:111;box-shadow:var(--shadow-pop);animation:gr-slide-up .22s cubic-bezier(.32,.72,0,1);padding-bottom:calc(var(--safe-area-inset-bottom) + var(--s-4))}.gr-sheet-title{font-size:11px;font-weight:700;color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;padding:0 var(--s-5);margin:var(--s-2) 0 var(--s-2)}.gr-sheet-list{padding:0 var(--s-3) var(--s-2)}.gr-sheet-item{width:100%;display:flex;justify-content:space-between;align-items:center;background:transparent;border:0;font-family:var(--font-display);font-size:15px;font-weight:600;color:var(--text);padding:var(--s-3);border-radius:var(--r-md);cursor:pointer;letter-spacing:-.01em}.gr-sheet-item:active{background:var(--surface-2)}.gr-sheet-item.active{color:var(--blue-700)}.gr-sheet-item .check{color:var(--blue-600);font-weight:800;font-size:16px}.gr-cal-sheet{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg);z-index:90;overflow-y:auto;animation:gr-fade-in .18s ease}.cal-nav{display:flex;align-items:center;justify-content:space-between;padding:0 var(--s-2) var(--s-3)}.cal-nav button{width:32px;height:32px;border:0;background:var(--surface-2);border-radius:var(--r-sm);cursor:pointer;color:var(--text-muted);display:flex;align-items:center;justify-content:center;padding:0}.cal-nav button:hover{background:var(--slate-200)}.cal-nav-label{font-size:15px;font-weight:700;color:var(--text);letter-spacing:-.01em}.cal-weekdays .wd{text-align:center;font-size:10px;font-weight:600;color:var(--text-subtle);letter-spacing:.05em;padding:6px 0}.cal-weekdays .wd.sun{color:var(--danger)}.cal-weekdays .wd.sat{color:var(--blue-600)}.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.cal-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;margin-bottom:4px}.cal-cell{box-sizing:border-box;aspect-ratio:1;border:1px solid transparent;border-radius:var(--r-sm);background:transparent;font-family:var(--font-display);font-weight:600;color:var(--text);cursor:pointer;padding:5px 2px 6px;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;line-height:1;transition:background .12s,border-color .12s,transform .1s;min-width:0;overflow:hidden}.cal-cell:disabled{cursor:default}.cal-cell:not(:disabled):active{transform:scale(.95)}.cal-cell .day{font-size:12px;line-height:1;color:var(--text)}.cal-cell.sun .day{color:var(--danger)}.cal-cell.sat .day{color:var(--blue-600)}.cal-cell.other-month .day{color:var(--text-subtle);opacity:.5;font-weight:500}.cal-cell.other-month .mark{opacity:.5}.cal-cell.has-activity{background:var(--surface-2);border-color:var(--border)}.cal-cell.has-game-only{background:var(--evt-hit-bg);border-color:var(--evt-hit-bd)}.cal-cell.has-practice-only{background:var(--amber-50);border-color:var(--amber-200)}.cal-cell.has-both{background:linear-gradient(90deg,var(--evt-hit-bg) 50%,var(--amber-50) 50%);border-color:var(--evt-hit-bd)}.cal-cell.has-activity:not(:disabled):hover{filter:brightness(.97)}.cal-cell.today .day{background:var(--blue-600);color:#fff!important;width:20px;height:20px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700}.cal-cell.selected:not(.today){background:var(--blue-100);border-color:var(--blue-500)}.cal-cell .marks{margin-top:5px;display:inline-flex;gap:3px;line-height:1;align-items:center}.cal-cell .dot,.cal-legend .dot{width:6px;height:6px;border-radius:50%;display:inline-block}.cal-cell .dot.game,.cal-legend .dot.game{background:var(--evt-hit)}.cal-cell .dot.practice,.cal-legend .dot.practice{background:var(--amber-500)}.cal-legend .lg-item{display:inline-flex;align-items:center;gap:5px}.cal-cell .result-bar{position:absolute;bottom:3px;left:6px;right:6px;height:3px;border-radius:2px}.cal-cell .result-bar.win{background:var(--evt-hit)}.cal-cell .result-bar.lose{background:var(--evt-k)}.cal-cell .result-bar.tie{background:var(--slate-300)}.cal-legend{display:flex;align-items:center;flex-wrap:wrap;gap:var(--s-3);padding:var(--s-3) var(--s-2) 0;border-top:1px solid var(--border);margin-top:var(--s-3);font-size:11px;color:var(--text-muted)}.cal-legend .legend-results{margin-left:auto;display:inline-flex;gap:var(--s-3)}.cal-legend .bar{display:inline-block;width:10px;height:3px;border-radius:2px;vertical-align:middle;margin-right:4px}.cal-legend .bar.win{background:var(--evt-hit)}.cal-legend .bar.lose{background:var(--evt-k)}.gr-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a80;z-index:100;animation:gr-fade-in .2s ease}.gr-modal{position:fixed;left:0;right:0;bottom:0;background:var(--surface);border-radius:var(--r-2xl) var(--r-2xl) 0 0;z-index:101;max-height:85vh;overflow-y:auto;box-shadow:var(--shadow-pop);animation:gr-slide-up .28s cubic-bezier(.32,.72,0,1);padding-bottom:calc(var(--safe-area-inset-bottom) + var(--s-4))}@keyframes gr-fade-in{0%{opacity:0}to{opacity:1}}@keyframes gr-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.gr-modal-grabber{width:36px;height:4px;background:var(--slate-300);border-radius:var(--r-full);margin:var(--s-3) auto var(--s-2)}.gr-modal-close{position:absolute;top:var(--s-3);right:var(--s-3);width:32px;height:32px;border:0;background:var(--surface-2);border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-muted);z-index:2}.gr-modal-close:hover{background:var(--slate-200)}.gr-section-label{font-size:10px;font-weight:700;color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;margin:var(--s-3) 0 6px}.gr-section-label:first-child,.gr-section-row:first-child .gr-section-label,.gr-section-row:first-child{margin-top:0}.gr-section-row{display:flex;align-items:center;justify-content:space-between;gap:var(--s-2);margin-top:var(--s-3)}.gr-section-row .gr-section-label{margin:0 0 6px}.gr-section-link{background:none;border:0;font-size:11px;font-weight:600;color:var(--blue-600);cursor:pointer;padding:4px 0;letter-spacing:-.01em}.gr-section-link:active{opacity:.6}.gr-player-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000;z-index:200;display:flex;align-items:center;justify-content:center;animation:gr-fade-in .18s ease}.gr-player-video{width:100%;max-height:100vh;background:#000;outline:none}.gr-player-close{position:absolute;top:calc(var(--safe-area-inset-top, 0) + var(--s-3));right:var(--s-3);width:40px;height:40px;border-radius:50%;border:0;background:#0000008c;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:2}.gr-player-close:active{background:#000c}.gr-record-line{display:flex;align-items:center;gap:var(--s-2);padding:9px var(--s-3);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);overflow:hidden}.gr-record-line+.gr-record-line{margin-top:6px}.gr-record-line .role{font-size:10px;font-weight:800;color:var(--blue-700);background:var(--blue-50);padding:3px 7px;border-radius:var(--r-full);letter-spacing:.04em;flex-shrink:0}.gr-record-line .role.pit{color:var(--evt-hr);background:var(--evt-hr-bg)}.gr-record-line .stat-text{font-size:12px;color:var(--text);font-weight:600;font-family:var(--font-mono);letter-spacing:-.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.gr-video-row{display:flex;gap:var(--s-2);overflow-x:auto;margin:0 calc(-1 * var(--s-5));padding:0 var(--s-5) 4px;scrollbar-width:none}.gr-video-row::-webkit-scrollbar{display:none}.gr-video-thumb{flex:0 0 220px;aspect-ratio:16/9;border-radius:var(--r-md);position:relative;overflow:hidden;background:linear-gradient(135deg,var(--slate-500),var(--slate-800));cursor:pointer;text-decoration:none;display:block;padding:0;border:0;font:inherit;color:inherit}.gr-video-thumb img{width:100%;height:100%;object-fit:cover;display:block}.gr-video-thumb .play{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:#fffffff2;font-size:28px;text-shadow:0 2px 8px rgba(0,0,0,.6)}.gr-video-thumb .badge{position:absolute;top:8px;left:8px;font-size:10px;font-weight:700;padding:3px 9px;border-radius:var(--r-full);background:#fffffff2;letter-spacing:.04em}.gr-video-thumb.game .badge{color:var(--evt-hit)}.gr-video-thumb.practice .badge{color:var(--evt-sac)}.gr-video-thumb.highlight .badge{color:var(--evt-hr)}.gr-memo{margin-top:6px;background:var(--amber-50);border-left:3px solid var(--amber-500);padding:6px 10px;font-size:12px;color:var(--slate-700);border-radius:4px;line-height:1.6;white-space:pre-line}.gr-memo:first-of-type{margin-top:0}.gr-memo .memo-tag{font-size:9px;font-weight:700;color:var(--amber-600);letter-spacing:.06em;margin-right:6px}:root{--primary: #2945E5;--bg-main: #F4F6FB}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}body{margin:0;padding:0;background-color:var(--bg-main);font-family:Inter,-apple-system,BlinkMacSystemFont,system-ui,sans-serif;overflow-x:hidden}#root{min-height:100vh}
