@font-face{font-family:Geist;font-weight:100 900;font-display:swap;src:url(/fonts/geist-variable.woff2)format("woff2")}@font-face{font-family:Barlow Condensed;font-weight:600;font-display:swap;src:url(/fonts/barlow-condensed-600.woff2)format("woff2")}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--g-0:#09090b;--g-50:#0e0e11;--g-100:#141418;--g-150:#1a1a1f;--g-200:#212127;--g-300:#2b2b33;--g-400:#3a3a44;--g-500:#5b5b67;--g-600:#8e8e9a;--g-700:#b4b4bf;--g-800:#d7d7de;--g-900:#f3f3f6;--y-300:#ffd84d;--y-400:#ffc81a;--y-500:#f2b705;--bg-app:var(--g-50);--bg-sidebar:var(--g-0);--bg-surface:var(--g-100);--bg-raised:var(--g-150);--bg-hover:var(--g-200);--bg-sunken:var(--g-0);--border:var(--g-200);--border-strong:var(--g-300);--text-primary:var(--g-900);--text-secondary:var(--g-700);--text-muted:var(--g-600);--accent:var(--y-500);--accent-hover:var(--y-400);--accent-soft:#f2b70524;--accent-line:var(--y-500);--on-accent:#0f0f11;--club-band:transparent;--stage-bg:var(--g-0);--stage-tape:var(--y-400);--status-error:#ff8a80;--status-error-soft:#ff635824;--status-success:#6ee7a0;--status-success-soft:#34d38124;--status-warn:#ffcf70;--status-warn-soft:#ffbf4024;--focus:var(--accent);--shadow-float:0 18px 48px #0000008c, 0 2px 8px #0006;--shadow-soft:0 1px 0 #ffffff0a inset;--font-body:"Geist", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mark:"Barlow Condensed", "Arial Narrow", sans-serif;--fs-sm:.8125rem;--fs-md:1rem;--fs-lg:1.25rem;--fs-xl:1.5625rem;--fs-2xl:1.9375rem;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--s-6:32px;--s-7:48px;--tap:44px;--tap-lg:48px;--r-ctl:10px;--r-panel:16px;--r-pill:999px;--sidebar-w:248px}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;background:var(--bg-app)}body{background:var(--bg-app);color:var(--text-primary);font:var(--fs-md) / 1.5 var(--font-body);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;margin:0}h1,h2,h3{letter-spacing:-.02em;margin:0;font-weight:650;line-height:1.2}h1{font-size:var(--fs-2xl)}h2{font-size:var(--fs-xl)}h3{font-size:var(--fs-lg)}p{margin:0}a{color:inherit}button{font-family:inherit}code{font-size:var(--fs-sm);background:var(--bg-raised);border-radius:6px;padding:2px 6px}:focus{outline:2px solid var(--focus);outline-offset:2px}:focus:not(:focus-visible){outline:none}::selection{background:var(--accent);color:var(--on-accent)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.muted{color:var(--text-muted)}.small{font-size:var(--fs-sm)}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.app{grid-template-columns:var(--sidebar-w) minmax(0, 1fr);min-height:100vh;display:grid}.sidebar{gap:var(--s-5);height:100vh;padding:var(--s-4) var(--s-3);background:var(--bg-sidebar);border-right:1px solid var(--border);flex-direction:column;display:flex;position:sticky;top:0}.sidebar:before{content:"";background:var(--club-band);height:3px;position:absolute;top:0;left:0;right:0}.club-block{align-items:center;gap:var(--s-3);padding:var(--s-2);border-radius:var(--r-ctl);min-width:0;text-decoration:none;display:flex}.club-logo{object-fit:contain;background:var(--g-900);border-radius:10px;flex:none;width:40px;height:40px}.club-mono{background:var(--accent);width:40px;height:40px;color:var(--on-accent);font:600 20px / 1 var(--font-mark);letter-spacing:.04em;border-radius:10px;flex:none;justify-content:center;align-items:center;display:flex}.club-text{flex-direction:column;min-width:0;display:flex}.club-text strong{white-space:nowrap;text-overflow:ellipsis;font-weight:650;overflow:hidden}.wordmark{font:600 13px / 1 var(--font-mark);letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);margin-top:4px}.nav{flex-direction:column;flex:1;gap:2px;min-height:0;display:flex}.nav-item{width:100%;font:inherit;cursor:pointer;text-align:left;background:0 0;border:0}.nav-label{margin:var(--s-4) var(--s-3) var(--s-1);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);font-size:11px;font-weight:650}.nav-spacer{flex:1}.nav-item{align-items:center;gap:var(--s-3);min-height:var(--tap);padding:0 var(--s-3);border-radius:var(--r-ctl);color:var(--text-secondary);white-space:nowrap;font-weight:520;text-decoration:none;transition:background .15s,color .15s;display:flex;position:relative}.nav-item:hover{background:var(--bg-hover);color:var(--text-primary)}.nav-item[aria-current=page]{background:var(--bg-raised);color:var(--text-primary)}.nav-item[aria-current=page]:before{content:"";background:var(--accent-line);border-radius:0 3px 3px 0;width:3px;position:absolute;top:10px;bottom:10px;left:-12px}.nav-item[aria-current=page] svg{color:var(--accent-line)}.user-block{align-items:center;gap:var(--s-3);padding:var(--s-2);border-top:1px solid var(--border);padding-top:var(--s-4);margin-top:auto;display:flex}.user-block form{margin:0 0 0 auto}.user-name{min-width:0;font-size:var(--fs-sm);flex-direction:column;line-height:1.3;display:flex}.user-name strong{white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.user-name span{color:var(--text-muted)}.mobile-top{display:none}.content{min-width:0}.page{max-width:1160px;padding:var(--s-6) var(--s-6) var(--s-7);margin:0 auto}.page-head{justify-content:space-between;align-items:flex-end;gap:var(--s-4);margin-bottom:var(--s-5);flex-wrap:wrap;display:flex}.page-head p{color:var(--text-secondary);margin-top:var(--s-2);max-width:62ch}.back{align-items:center;gap:var(--s-1);margin-bottom:var(--s-2);color:var(--text-muted);font-size:var(--fs-sm);min-height:32px;font-weight:520;text-decoration:none;display:inline-flex}.back:hover{color:var(--text-primary)}.section{margin-top:var(--s-7)}.section-head{justify-content:space-between;align-items:baseline;gap:var(--s-3);margin-bottom:var(--s-4);display:flex}.section-head h2{font-size:var(--fs-lg)}.hello{font-size:var(--fs-2xl)}.hello-sub{color:var(--text-secondary);margin-top:var(--s-2)}.btn{justify-content:center;align-items:center;gap:var(--s-2);min-height:var(--tap);padding:0 var(--s-4);border-radius:var(--r-ctl);border:1px solid var(--border-strong);background:var(--bg-raised);color:var(--text-primary);font:560 var(--fs-md) / 1 var(--font-body);cursor:pointer;white-space:nowrap;text-decoration:none;transition:background .15s,border-color .15s,transform .1s;display:inline-flex}.btn:hover:not(:disabled){background:var(--bg-hover)}.btn:active:not(:disabled){transform:scale(.98)}.btn:disabled{opacity:.4;cursor:default}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:650}.btn-primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.btn-ghost{color:var(--text-secondary);background:0 0;border-color:#0000}.btn-ghost:hover:not(:disabled){color:var(--text-primary);background:var(--bg-hover)}.btn-danger{color:var(--status-error);background:0 0;border-color:#0000}.btn-danger:hover:not(:disabled){background:var(--status-error-soft)}.btn-danger-solid{color:#fff;background:#dc3b2e;border-color:#dc3b2e;font-weight:650}.btn-icon{width:var(--tap);flex:none;padding:0}.btn[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent-line);color:var(--text-primary)}.btn[aria-pressed=true] svg{color:var(--accent-line)}.btn-row{gap:var(--s-2);flex-wrap:wrap;align-items:center;display:flex}.form{gap:var(--s-4);display:grid}.form-grid{gap:var(--s-4);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.sheet .form-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.field{gap:6px;display:grid}.field label,.legend{font-size:var(--fs-sm);color:var(--text-secondary);font-weight:600}.field input,.field select,.field textarea,.input{width:100%;min-height:var(--tap);padding:0 var(--s-3);font:var(--fs-md) var(--font-body);border:1px solid var(--border-strong);border-radius:var(--r-ctl);background:var(--bg-sunken);color:var(--text-primary);-webkit-appearance:none;appearance:none}.field input::placeholder,.input::placeholder{color:var(--g-500)}.field select{background-image:linear-gradient(45deg, transparent 50%, var(--g-600) 50%), linear-gradient(135deg, var(--g-600) 50%, transparent 50%);background-position:calc(100% - 18px),calc(100% - 13px);background-repeat:no-repeat;background-size:5px 5px;padding-right:36px}.field input:focus,.field select:focus,.input:focus{border-color:var(--accent-line);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.field .hint{color:var(--text-muted);font-size:var(--fs-sm)}.field .err{color:var(--status-error);font-size:var(--fs-sm)}.field [aria-invalid=true]{border-color:var(--status-error)}.checks{gap:var(--s-2);border:0;flex-wrap:wrap;margin:0;padding:0;display:flex}.checks legend{margin-bottom:6px;padding:0}.check{align-items:center;gap:var(--s-2);min-height:var(--tap);padding:0 var(--s-3);border:1px solid var(--border-strong);border-radius:var(--r-ctl);background:var(--bg-raised);cursor:pointer;font-weight:520;transition:background .15s,border-color .15s;display:inline-flex}.check input{width:20px;height:20px;accent-color:var(--accent);margin:0}.search{flex:260px;max-width:380px;position:relative}.search svg{color:var(--text-muted);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.search input{padding-left:40px}input[type=color]{width:var(--tap);height:var(--tap);border:1px solid var(--border-strong);border-radius:var(--r-ctl);background:var(--bg-sunken);cursor:pointer;padding:4px}.toolbar{gap:var(--s-3);margin-bottom:var(--s-4);flex-wrap:wrap;align-items:center;display:flex}.seg{background:var(--bg-sunken);border:1px solid var(--border);border-radius:var(--r-ctl);gap:2px;padding:3px;display:inline-flex}.seg button{min-height:38px;padding:0 var(--s-3);color:var(--text-secondary);font:560 var(--fs-sm) var(--font-body);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:8px}.seg button[aria-pressed=true]{background:var(--bg-hover);color:var(--text-primary)}.tabs{gap:var(--s-1);border-bottom:1px solid var(--border);margin-bottom:var(--s-5);display:flex;overflow:auto hidden}.tabs button{min-height:var(--tap-lg);padding:0 var(--s-4);color:var(--text-secondary);font:560 var(--fs-md) var(--font-body);cursor:pointer;white-space:nowrap;background:0 0;border:0;position:relative}.tabs button:hover,.tabs button[aria-selected=true]{color:var(--text-primary)}.tabs button[aria-selected=true]:after{content:"";left:var(--s-3);right:var(--s-3);background:var(--accent-line);border-radius:2px;height:2px;position:absolute;bottom:-1px}.tag{font-size:var(--fs-sm);border-radius:var(--r-pill);background:var(--bg-hover);color:var(--text-secondary);margin-right:var(--s-1);white-space:nowrap;align-items:center;padding:6px 10px;font-weight:520;line-height:1;display:inline-flex}.count{font-variant-numeric:tabular-nums;color:var(--text-muted);font-weight:520}.dot{border-radius:50%;flex:none;width:12px;height:12px;display:inline-block}.fn{align-items:center;gap:var(--s-2);white-space:nowrap;display:inline-flex}.fns{gap:var(--s-1) var(--s-3);flex-wrap:wrap;display:inline-flex}.avatar{width:36px;height:36px;font-size:var(--fs-sm);color:#0f0f11;background:var(--g-600);border-radius:50%;flex:none;justify-content:center;align-items:center;font-weight:650;display:inline-flex}.panel{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--r-panel);padding:var(--s-5);box-shadow:var(--shadow-soft)}.panel+.panel{margin-top:var(--s-4)}.panel-head{justify-content:space-between;align-items:center;gap:var(--s-3);margin-bottom:var(--s-4);display:flex}.panel-head h2{font-size:var(--fs-lg)}.panel-head p{color:var(--text-muted);font-size:var(--fs-sm);margin-top:2px}.notice{align-items:center;gap:var(--s-3);padding:var(--s-3) var(--s-4);margin-bottom:var(--s-4);border-radius:var(--r-ctl);background:var(--status-error-soft);color:var(--status-error);font-weight:520;display:flex}.notice.success{background:var(--status-success-soft);color:var(--status-success)}.notice.warn{background:var(--status-warn-soft);color:var(--status-warn)}.notice svg{flex:none}.notice .btn{margin-left:auto}.empty{justify-items:start;gap:var(--s-2);padding:var(--s-7) var(--s-6);background:var(--bg-surface);border:1px dashed var(--border-strong);border-radius:var(--r-panel);color:var(--text-secondary);display:grid}.empty .empty-icon{background:var(--accent-soft);width:52px;height:52px;color:var(--accent-line);margin-bottom:var(--s-2);border-radius:14px;justify-content:center;align-items:center;display:flex}.empty strong{color:var(--text-primary);font-size:var(--fs-lg);font-weight:650}.empty .btn{margin-top:var(--s-3)}.copy{gap:var(--s-2);margin-top:var(--s-2);display:flex}.copy input{min-width:0;min-height:var(--tap);padding:0 var(--s-3);font:var(--fs-sm) var(--font-body);border:1px solid var(--border);border-radius:var(--r-ctl);background:var(--bg-sunken);color:var(--text-primary);flex:1}.skeleton{border-radius:var(--r-ctl);height:56px;margin-bottom:var(--s-2);background:linear-gradient(90deg, var(--g-100), var(--g-200), var(--g-100));background-size:200% 100%;animation:1.4s ease-in-out infinite shimmer}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.toasts{z-index:50;left:50%;bottom:var(--s-5);gap:var(--s-2);pointer-events:none;justify-items:center;display:grid;position:fixed;transform:translate(-50%)}.toast{align-items:center;gap:var(--s-3);max-width:min(560px,100vw - 32px);min-height:48px;padding:0 var(--s-4);border-radius:var(--r-pill);background:var(--g-900);color:var(--g-0);box-shadow:var(--shadow-float);pointer-events:auto;font-weight:560;animation:.22s cubic-bezier(.16,1,.3,1) rise;display:flex}.toast.error{color:#fff;background:#dc3b2e}.toast svg{flex:none}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.modal-wrap{z-index:40;padding:var(--s-4);background:#0009;justify-content:center;align-items:center;animation:.15s ease-out fade;display:flex;position:fixed;inset:0}.modal{width:440px;max-width:100%;padding:var(--s-5);border-radius:var(--r-panel);background:var(--bg-raised);border:1px solid var(--border-strong);box-shadow:var(--shadow-float);gap:var(--s-3);animation:.18s cubic-bezier(.16,1,.3,1) pop;display:grid}.modal h2{font-size:var(--fs-lg)}.modal p{color:var(--text-secondary)}.modal .btn-row{margin-top:var(--s-3);justify-content:flex-end}@keyframes pop{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:none}}.table-wrap{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--r-panel);overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;padding:var(--s-2) var(--s-4);vertical-align:middle}th{height:44px;font-size:var(--fs-sm);color:var(--text-muted);border-bottom:1px solid var(--border);white-space:nowrap;font-weight:560}td{border-bottom:1px solid var(--border);height:62px}tr:last-child td{border-bottom:0}tr.clickable{cursor:pointer}tr.clickable:hover td{background:var(--bg-raised)}tr.inactive td{color:var(--text-muted)}td.actions{text-align:right;white-space:nowrap;width:1%}td.actions .btn-row{flex-wrap:nowrap;justify-content:flex-end}.cell-person{align-items:center;gap:var(--s-3);display:flex}.row-link{color:inherit;font:560 var(--fs-md) var(--font-body);text-align:left;cursor:pointer;background:0 0;border:0;padding:0;display:block}.sub{color:var(--text-muted);font-size:var(--fs-sm);font-weight:400;display:block}.access{white-space:nowrap;color:var(--text-secondary);font-size:var(--fs-sm);align-items:center;gap:6px;display:inline-flex}.access.ok{color:var(--status-success)}.access.pending{color:var(--status-warn)}.cards{gap:var(--s-4);grid-template-columns:repeat(auto-fill,minmax(260px,1fr));margin:0;padding:0;list-style:none;display:grid}.card{gap:var(--s-2);min-height:148px;padding:var(--s-5);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--r-panel);color:var(--text-primary);box-shadow:var(--shadow-soft);flex-direction:column;text-decoration:none;transition:border-color .15s,background .15s,transform .1s;display:flex;position:relative}.card:hover{border-color:var(--g-400);background:var(--bg-raised)}.card:active{transform:scale(.99)}.card strong{font-size:var(--fs-lg);letter-spacing:-.015em;font-weight:650}.card .meta{gap:var(--s-4);color:var(--text-secondary);font-size:var(--fs-sm);flex-wrap:wrap;margin-top:auto;display:flex}.card .meta span{align-items:center;gap:6px;display:inline-flex}.card .go{top:var(--s-5);right:var(--s-5);color:var(--text-muted);transition:transform .15s,color .15s;position:absolute}.card:hover .go{color:var(--accent-line);transform:translate(3px)}.card-preview{margin:calc(-1 * var(--s-5)) calc(-1 * var(--s-5)) var(--s-2);border-radius:var(--r-panel) var(--r-panel) 0 0;background:var(--bg-sunken);border-bottom:1px solid var(--border);justify-content:center;align-items:center;height:132px;display:flex;overflow:hidden}.card-preview svg{width:100%;height:100%}.card-preview img{object-fit:cover;width:100%;height:100%}.photo-preview{border-radius:var(--r-ctl);object-fit:cover;background:var(--bg-sunken);border:1px solid var(--border);width:160px;height:100px}.photo-preview.empty{color:var(--g-500);justify-content:center;align-items:center;display:flex}.head-image{border-radius:var(--r-ctl);object-fit:cover;flex:none;width:64px;height:64px}.title-row{align-items:center;gap:var(--s-4);display:flex}.card-wrap{position:relative}.card-wrap>.card-settings{z-index:1;bottom:var(--s-3);right:var(--s-3);position:absolute}.scrim{z-index:30;background:#0000008c;animation:.15s ease-out fade;position:fixed;inset:0}.sheet{z-index:31;background:var(--bg-surface);border-left:1px solid var(--border-strong);width:480px;max-width:100%;box-shadow:var(--shadow-float);flex-direction:column;animation:.22s cubic-bezier(.16,1,.3,1) slide;display:flex;position:fixed;top:0;bottom:0;right:0}.sheet-head{align-items:center;gap:var(--s-3);padding:var(--s-4) var(--s-4) var(--s-4) var(--s-5);border-bottom:1px solid var(--border);display:flex}.sheet-head h2{font-size:var(--fs-lg);margin-right:auto}.sheet-body{-webkit-overflow-scrolling:touch;padding:var(--s-5);gap:var(--s-5);flex:1;align-content:start;display:grid;overflow-y:auto}.sheet-foot{gap:var(--s-2);padding:var(--s-4) var(--s-5);border-top:1px solid var(--border);background:var(--bg-raised);display:flex}.sheet-section{gap:var(--s-3);padding-top:var(--s-5);border-top:1px solid var(--border);display:grid}.sheet-section h3{font-size:var(--fs-md)}@keyframes slide{0%{opacity:0;transform:translate(32px)}to{opacity:1;transform:none}}@keyframes fade{0%{opacity:0}to{opacity:1}}.swatches{gap:var(--s-2);flex-wrap:wrap;align-items:center;display:flex}.swatch{width:var(--tap);height:var(--tap);cursor:pointer;border:2px solid #0000;border-radius:50%}.swatch[aria-pressed=true]{border-color:var(--g-900);box-shadow:0 0 0 3px var(--bg-surface), 0 0 0 5px var(--g-900)}.color-pick{position:relative}.color-pick-dot{border:1px solid var(--border-strong);border-radius:50%;width:20px;height:20px}.color-pick code{font-size:var(--fs-sm);color:var(--text-muted)}.color-pick input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.swatch-label{font-size:var(--fs-sm);color:var(--text-muted);width:100%}.fn-chip{width:40px;height:40px;font-weight:650;font-size:var(--fs-sm);border-radius:12px;justify-content:center;align-items:center;display:inline-flex}.color-row{align-items:center;gap:var(--s-3);flex-wrap:wrap;display:flex}.preview-strip{align-items:center;gap:var(--s-3);padding:var(--s-4);border-radius:var(--r-ctl);background:var(--bg-sunken);border:1px solid var(--border);flex-wrap:wrap;display:flex}.logo-box{align-items:center;gap:var(--s-4);flex-wrap:wrap;display:flex}.logo-preview{object-fit:contain;background:var(--g-900);border-radius:18px;width:88px;height:88px}.picklist{gap:var(--s-2);grid-template-columns:repeat(auto-fill,minmax(240px,1fr));margin:0;padding:0;list-style:none;display:grid}.picklist .check{width:100%}.slot-list{gap:var(--s-2);margin:0;padding:0;list-style:none;display:grid}.slot-row{align-items:center;gap:var(--s-2);display:flex}.slot-row .input{flex:1 1 0;min-width:0}.slot-no{text-align:center;width:24px;color:var(--text-muted);font-size:var(--fs-sm);font-variant-numeric:tabular-nums;flex:none}.card-button{text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer}.pick-section+.pick-section{margin-top:var(--s-5)}.pick-head{align-items:center;gap:var(--s-3);margin-bottom:var(--s-2);display:flex}.pick-head h3{align-items:center;gap:var(--s-2);font-size:var(--fs-md);display:flex}.pick-head .btn{margin-left:auto}.picklist .check.on{border-color:var(--accent-line);background:var(--accent-soft)}.dropzone{align-items:center;gap:var(--s-4);padding:var(--s-5);border:2px dashed var(--border-strong);border-radius:var(--r-panel);background:var(--bg-surface);cursor:pointer;transition:border-color .15s;display:flex;position:relative}.dropzone:hover{border-color:var(--accent-line)}.dropzone .drop-icon{background:var(--accent-soft);width:56px;height:56px;color:var(--accent-line);border-radius:14px;flex:none;justify-content:center;align-items:center;display:flex}.dropzone strong{font-size:var(--fs-lg);display:block}.dropzone input{opacity:0;width:1px;height:1px;position:absolute}.stats{gap:var(--s-3);margin:var(--s-5) 0;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));display:grid}.stat{padding:var(--s-4);border-radius:var(--r-panel);background:var(--bg-surface);border:1px solid var(--border)}.stat b{font-size:var(--fs-2xl);font-variant-numeric:tabular-nums;font-weight:650;line-height:1.1;display:block}.stat span{color:var(--text-secondary);font-size:var(--fs-sm)}.stat.good b{color:var(--status-success)}.stat.warn b{color:var(--status-warn)}.stat.bad b{color:var(--status-error)}.status{white-space:nowrap;align-items:center;gap:6px;font-weight:560;display:inline-flex}.status-new{color:var(--status-success)}.status-error{color:var(--status-error)}.status-needs-mapping,.status-update{color:var(--status-warn)}.status-unchanged{color:var(--text-muted)}.err-text{color:var(--status-error);font-size:var(--fs-sm)}.editor{top:0;left:var(--sidebar-w);background:var(--bg-app);flex-direction:column;display:flex;position:fixed;bottom:0;right:0}.editor-bar{align-items:center;gap:var(--s-2);height:64px;padding:0 var(--s-3);border-bottom:1px solid var(--border);background:var(--bg-surface);-webkit-overflow-scrolling:touch;flex:none;display:flex;overflow-x:auto}.editor-bar .btn{flex:none}.editor-title{min-width:7.5rem;padding-left:var(--s-2);flex-direction:column;margin-right:auto;display:flex}.editor-title h1{font-size:var(--fs-lg);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.editor-title span{font-size:var(--fs-sm);color:var(--text-muted);white-space:nowrap}.divider{background:var(--border-strong);width:1px;height:28px;margin:0 var(--s-1);flex:none}.save-status{height:32px;padding:0 var(--s-3);border-radius:var(--r-pill);background:var(--bg-hover);font-size:var(--fs-sm);color:var(--text-secondary);white-space:nowrap;flex:none;align-items:center;gap:6px;font-weight:560;display:inline-flex}.save-saved{color:var(--status-success);background:var(--status-success-soft)}.lift-counters{margin:0 0 var(--s-3);font-size:var(--fs-sm);color:var(--text-secondary);gap:2px;padding:0;list-style:none;display:grid}.lift-counters li{align-items:center;gap:6px;display:flex}.lift-card{gap:var(--s-2);padding:var(--s-3);margin-bottom:var(--s-2);border:1px solid var(--border);border-radius:var(--r-ctl);background:var(--bg-surface);display:grid}.lift-card.lift-muted{opacity:.85;border-style:dashed}.lift-head{justify-content:space-between;align-items:center;gap:var(--s-2);display:flex}.lift-group{gap:var(--s-1);display:grid}.lift-group-name{font-size:var(--fs-sm);color:var(--text-muted);margin-top:var(--s-1);font-weight:600}.lift-place{align-items:center;gap:var(--s-2);grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);display:grid}.lift-place-label{font-size:var(--fs-sm);line-height:1.25}.lift-place .input{min-height:40px}.lift-check{width:100%}.lift-pick{text-align:left;justify-content:flex-start;width:100%;min-height:56px}.publish-changed{color:var(--status-warn)}.version-list li{justify-content:space-between;align-items:center;gap:var(--s-3);padding:var(--s-2) 0;border-bottom:1px solid var(--border);display:flex}.version-list li span .tag{margin-left:var(--s-2)}.tag-accent{background:var(--accent-soft);color:var(--accent-line)}.live-status{height:32px;padding:0 var(--s-3);border-radius:var(--r-pill);background:var(--bg-hover);font-size:var(--fs-sm);color:var(--text-secondary);white-space:nowrap;flex:none;align-items:center;gap:6px;font-weight:560;display:inline-flex}.live-live{color:var(--status-success)}.live-offline{color:var(--status-warn);background:var(--status-warn-soft)}.save-retrying,.save-failed{color:var(--status-error);background:var(--status-error-soft)}.editor>.notice{margin:var(--s-2) var(--s-3) 0}.editor-main{flex:1;min-height:0;display:flex}.stage-col{flex-direction:column;flex:1;min-width:0;display:flex}.stage-wrap{flex:1;min-height:0;display:flex;position:relative}.stage-box{background:var(--stage-bg);touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;flex:1;min-width:0;position:relative;overflow:hidden}.editor-tools{z-index:5;top:var(--s-3);background:var(--bg-raised);border:1px solid var(--border-strong);border-radius:var(--r-panel);max-width:calc(100% - 24px);box-shadow:var(--shadow-float);-webkit-overflow-scrolling:touch;align-items:center;gap:2px;padding:6px;display:flex;position:absolute;left:50%;overflow-x:auto;transform:translate(-50%)}.editor-tools .btn{padding:0 var(--s-3);background:0 0;border-color:#0000;flex:none}.editor-tools .btn:hover:not(:disabled){background:var(--bg-hover)}.editor-tools .sel-count{padding:0 var(--s-3);font-size:var(--fs-sm);white-space:nowrap;color:var(--accent-line);font-weight:650}.stage-zoom{left:var(--s-3);bottom:var(--s-3);background:var(--bg-raised);border:1px solid var(--border-strong);border-radius:var(--r-ctl);box-shadow:var(--shadow-float);gap:2px;padding:4px;display:flex;position:absolute}.stage-zoom .btn{background:0 0;border-color:#0000}.filmstrip{gap:var(--s-2);padding:var(--s-3);background:var(--bg-surface);border-top:1px solid var(--border);-webkit-overflow-scrolling:touch;flex:none;display:flex;overflow-x:auto}.frame{width:132px;color:var(--text-secondary);text-align:left;cursor:pointer;font:520 var(--fs-sm) var(--font-body);background:0 0;border:2px solid #0000;border-radius:12px;flex:none;gap:6px;padding:6px;display:grid;position:relative}.frame:hover{background:var(--bg-hover)}.frame[aria-current=true]{border-color:var(--accent-line);background:var(--accent-soft);color:var(--text-primary)}.frame-thumb{background:var(--g-0);border-radius:8px;width:100%;height:76px;display:block;overflow:hidden}.frame-thumb svg{width:100%;height:100%;display:block}.frame-label{align-items:center;gap:6px;min-width:0;display:flex}.frame-label span:last-child{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.frame-no{font:600 15px / 1 var(--font-mark);color:var(--text-primary)}.frame-add{border:2px dashed var(--border-strong);width:132px;min-height:112px;color:var(--text-secondary);cursor:pointer;font:560 var(--fs-sm) var(--font-body);background:0 0;border-radius:12px;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:6px;display:flex}.frame-add:hover{border-color:var(--accent-line);color:var(--text-primary)}.editor-side{-webkit-overflow-scrolling:touch;background:var(--bg-surface);border-left:1px solid var(--border);width:300px;padding:var(--s-4);gap:var(--s-5);flex-direction:column;flex:0 0 300px;display:flex;overflow-y:auto}.side-head{margin-bottom:var(--s-2);justify-content:space-between;align-items:center;display:flex}.side-head h2{font-size:var(--fs-sm);text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-weight:650}.side-title{font-size:var(--fs-lg);margin-bottom:var(--s-3);white-space:nowrap;text-overflow:ellipsis;font-weight:650;overflow:hidden}.side-actions{flex-wrap:wrap;gap:2px;display:flex}.side-actions .btn{background:0 0;border-color:#0000}.side-actions .btn:hover:not(:disabled){background:var(--bg-hover)}.plain-list{gap:var(--s-1);margin:0;padding:0;list-style:none;display:grid}.group-row{align-items:center;gap:2px;display:flex}.group-row>.btn:first-child{background:0 0;border-color:#0000;flex:1;justify-content:flex-start}.group-row>.btn:first-child:hover{background:var(--bg-hover)}.side-foot{gap:var(--s-2);margin-top:auto;display:grid}.side-foot .btn{justify-content:flex-start}.tip{font-size:var(--fs-sm);color:var(--text-muted);line-height:1.45}.menu-backdrop{z-index:20;position:fixed;inset:0}.context-menu{background:var(--bg-raised);border:1px solid var(--border-strong);border-radius:var(--r-panel);min-width:240px;box-shadow:var(--shadow-float);gap:2px;padding:6px;animation:.14s ease-out pop;display:grid;position:fixed}.context-menu strong{padding:var(--s-2) var(--s-3);font-size:var(--fs-sm);color:var(--text-muted)}.context-menu .btn{background:0 0;border-color:#0000;justify-content:flex-start}.context-menu .btn:hover{background:var(--bg-hover)}.cast-row{gap:var(--s-2);flex-wrap:wrap;align-items:center;display:flex}.cast-row .check{flex:200px}.cast-row select{min-height:var(--tap);border-radius:var(--r-ctl);border:1px solid var(--border-strong);padding:0 var(--s-3);font:var(--fs-sm) var(--font-body);background:var(--bg-sunken);color:var(--text-primary)}.cast-list{gap:var(--s-2);margin:0;padding:0;list-style:none;display:grid}.section-first+section{margin-top:var(--s-6)}.dancer-view{gap:var(--s-4);display:grid}.dancer-head h1{font-size:var(--fs-xl)}.dancer-stage{background:var(--bg-sunken);border:1px solid var(--border);border-radius:var(--r-panel);padding:var(--s-3)}.dancer-stage svg{width:100%;height:auto;max-height:62vh;transition:transform .25s;display:block}.dancer-info{gap:var(--s-3);display:grid}.dancer-nav{align-items:center;gap:var(--s-3);display:flex}.dancer-where{text-align:center;flex:1;gap:2px;display:grid}.dancer-zone{font-size:var(--fs-lg);color:var(--accent-line);font-weight:650}.frame-dots{gap:var(--s-1);flex-wrap:wrap;justify-content:center;display:flex}.frame-dots button{border-radius:var(--r-pill);border:1px solid var(--border);background:var(--bg-surface);min-width:36px;height:36px;color:var(--text-secondary);font:600 var(--fs-sm) var(--font-body);cursor:pointer}.frame-dots button[aria-selected=true]{background:var(--accent);color:var(--on-accent);border-color:#0000}.rotate-hint{display:none}@media (max-width:767px) and (orientation:portrait){.dancer-view .dancer-stage,.dancer-view .dancer-info,.stage-col .stage-wrap,.stage-col .filmstrip{display:none}.rotate-hint{justify-items:center;gap:var(--s-2);text-align:center;padding:var(--s-7) var(--s-4);color:var(--text-secondary);display:grid}.rotate-hint strong{font-size:var(--fs-lg);color:var(--text-primary)}}@media (max-height:500px) and (orientation:landscape){.dancer-view{align-items:start;gap:var(--s-3);grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}.dancer-head{align-items:baseline;gap:var(--s-3);flex-wrap:wrap;grid-column:1/-1;display:flex}.dancer-head .back{margin:0}.dancer-head h1{font-size:var(--fs-lg)}.dancer-stage{padding:var(--s-1)}.dancer-stage svg{max-height:calc(100vh - 110px)}.page{padding-top:var(--s-3);padding-bottom:var(--s-3)}.sidebar{gap:var(--s-2);overflow-y:auto}}.app-narrow{--sidebar-w:76px}.app-narrow .club-text,.app-narrow .nav-item span,.app-narrow .user-name{display:none}.app-narrow .club-block,.app-narrow .nav-item{justify-content:center;padding:0}.app-narrow .user-block{padding:var(--s-3) 0 0;flex-direction:column}.app-narrow .user-block form{margin:0}.app-narrow .nav-label{height:1px;margin:var(--s-3) var(--s-3);color:#0000;background:var(--border);overflow:hidden}@media (max-width:1099px){:root{--sidebar-w:76px}.club-text,.nav-item span,.user-name{display:none}.club-block,.nav-item{justify-content:center;padding:0}.user-block{padding:var(--s-3) 0 0;flex-direction:column}.user-block form{margin:0}.nav-label{height:1px;margin:var(--s-3) var(--s-3);color:#0000;background:var(--border);overflow:hidden}.nav-toggle{display:none}.editor-side{flex-basis:264px;width:264px}}@media (max-width:1279px){.editor-bar .btn-label{display:none}.editor-bar .btn:not(.btn-icon){padding:0 var(--s-3)}}@media (max-width:767px){.app{grid-template-columns:1fr}.sidebar{z-index:15;height:64px;padding:0 var(--s-2);border-right:0;border-top:1px solid var(--border);flex-direction:row;justify-content:center;position:fixed;inset:auto 0 0}.sidebar:before,.club-block,.user-block{display:none}.nav{gap:var(--s-1);flex-direction:row;flex:none;justify-content:space-around;width:100%}.nav-label,.nav-spacer,.nav-toggle{display:none}.nav-item,.app-narrow .nav-item{flex-direction:column;flex:1 1 0;justify-content:center;gap:2px;width:auto;min-width:0;min-height:56px;padding:6px 2px;font-size:10px}.nav-item span{text-overflow:ellipsis;max-width:100%;overflow:hidden}.nav-item span,.app-narrow .nav-item span{display:block}.nav-item[aria-current=page]:before{border-radius:0 0 3px 3px;width:auto;height:3px;inset:-1px 30% auto}.mobile-top{align-items:center;gap:var(--s-3);padding:var(--s-3) var(--s-4);border-bottom:1px solid var(--border);background:var(--bg-sidebar);display:flex}.mobile-top form{margin-left:auto}.content{padding-bottom:72px}.page{padding:var(--s-5) var(--s-4) var(--s-7)}.editor{bottom:64px;left:0}.editor-main{flex-direction:column}.editor-side{border-left:0;border-top:1px solid var(--border);flex:0 0 40%;width:auto}.toasts{bottom:84px}}
