:root{--_blue-50:#eef4ff;--_blue-100:#d4e5fa;--_blue-200:#a3c5ee;--_blue-300:#6b9ed8;--_blue-400:#4a7ec0;--_blue-500:#2b6cb0;--_blue-600:#245e9e;--_blue-700:#1a365d;--_blue-800:#112545;--_blue-900:#0a1626;--_amber-200:#fef08a;--_amber-300:#fde047;--_amber-400:#f6e05e;--_amber-500:#d4b800;--_amber-600:#a08000;--_warm-50:#fafaf8;--_warm-100:#fff;--_warm-200:#ede9e0;--_warm-300:#ddd8ce;--_warm-400:#c4bdb0;--_warm-500:#9e9488;--_warm-600:#6b6258;--_warm-700:#3d3830;--_green-500:#2d7d4e;--_green-bg:#e8f5ee;--_green-text:#1a5435;--_green-border:#6ee7a0;--_red-500:#b52a2a;--_red-bg:#fdeaea;--_red-text:#7f1a1a;--_red-border:#fca5a5;--vsc-bg:var(--vscode-editor-background,var(--_warm-100));--vsc-surface:var(--vscode-sideBar-background,#fff);--vsc-fg:var(--vscode-foreground,var(--_blue-700));--vsc-border:var(--vscode-panel-border,var(--_warm-300));--vsc-btn-bg:var(--vscode-button-background,var(--_blue-500));--vsc-btn-fg:var(--vscode-button-foreground,#fff);--color-bg:var(--vsc-bg);--color-surface:var(--vsc-surface);--color-surface-2:var(--_warm-50);--color-border:var(--vsc-border);--color-border-light:var(--_warm-200);--color-text:var(--vsc-fg);--color-text-muted:var(--_warm-600);--color-text-subtle:var(--_warm-500);--color-text-on-dark:#fff;--color-primary:var(--_blue-500);--color-primary-dark:var(--_blue-700);--color-primary-hover:var(--_blue-600);--color-primary-pale:var(--_blue-50);--color-accent:var(--_amber-400);--color-accent-hover:var(--_amber-500);--color-accent-text:var(--_blue-700);--color-accent-bg:#fefde8;--color-success:var(--_green-500);--color-success-bg:var(--_green-bg);--color-success-text:var(--_green-text);--color-success-border:var(--_green-border);--color-danger:var(--_red-500);--color-danger-bg:var(--_red-bg);--color-danger-text:var(--_red-text);--color-danger-border:var(--_red-border);--font-family:"Nunito", system-ui, -apple-system, sans-serif;--fw-light:300;--fw-regular:400;--fw-semibold:600;--fw-bold:700;--fw-extrabold:800;--fw-black:900;--text-xs:.6875rem;--text-sm:.8125rem;--text-base:.9375rem;--text-md:1.0625rem;--text-lg:1.25rem;--text-xl:1.5rem;--text-2xl:1.875rem;--text-3xl:2.5rem;--lh-tight:1.15;--lh-snug:1.3;--lh-normal:1.55;--lh-relaxed:1.7;--ls-tight:-.03em;--ls-snug:-.02em;--ls-normal:0em;--ls-wide:.04em;--ls-wider:.09em;--sp-1:.25rem;--sp-2:.5rem;--sp-3:.75rem;--sp-4:1rem;--sp-5:1.25rem;--sp-6:1.5rem;--sp-8:2rem;--sp-10:2.5rem;--sp-12:3rem;--sp-16:4rem;--sp-20:5rem;--r-xs:4px;--r-sm:12px;--r-md:12px;--r-lg:16px;--r-xl:22px;--r-2xl:30px;--r-full:9999px;--shadow-xs:0 1px 2px #1a365d0f;--shadow-sm:var(--shadow-sm);--shadow-md:0 4px 16px #1a365d17, 0 2px 4px #1a365d0d;--shadow-lg:var(--shadow-lg);--shadow-xl:0 24px 64px #1a365d29, 0 8px 16px #1a365d14;--shadow-accent:0 4px 20px #f6e05e73;--dur-fast:.1s;--dur-base:.18s;--dur-slow:.3s;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-io:cubic-bezier(.4, 0, .2, 1);--primary:var(--color-primary);--primary-dark:var(--color-primary-dark);--primary-hover:var(--color-primary-hover);--primary-light:var(--_blue-300);--primary-pale:var(--color-primary-pale);--bg:var(--color-bg);--surface:var(--color-surface);--surface-2:var(--color-surface-2);--border:var(--color-border);--border-light:var(--color-border-light);--text:var(--color-text);--text-muted:var(--color-text-muted);--text-light:var(--color-text-subtle);--accent:var(--color-accent);--accent-hover:var(--color-accent-hover);--accent-bg:var(--color-accent-bg);--accent-text:var(--color-accent-text);--success:var(--color-success);--success-bg:var(--color-success-bg);--success-text:var(--color-success-text);--success-border:var(--color-success-border);--danger:var(--color-danger);--danger-bg:var(--color-danger-bg);--danger-text:var(--color-danger-text);--danger-border:var(--color-danger-border);--gray:var(--color-text-muted);--gray-bg:var(--color-surface-2);--gray-border:var(--color-border);--radius-sm:var(--r-md);--radius:var(--r-lg);--radius-lg:var(--r-xl);--shadow:var(--shadow-md)}*,:before,:after{box-sizing:border-box}:root{font-family:var(--font-family);font-size:var(--text-base);font-weight:var(--fw-regular);line-height:var(--lh-normal);color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{min-height:100vh;margin:0}#root{flex-direction:column;min-height:100vh;display:flex}h1,h2,h3,h4,h5,h6{line-height:var(--lh-snug);font-weight:var(--fw-extrabold);letter-spacing:var(--ls-snug);margin:0}p{margin:0}a{color:var(--color-primary);text-decoration:none}button{cursor:pointer;font-family:var(--font-family);font-size:var(--text-sm);font-weight:var(--fw-semibold);border-radius:var(--r-sm);transition:background var(--dur-base) var(--ease-out), color var(--dur-base) var(--ease-out), border-color var(--dur-base) var(--ease-out), box-shadow var(--dur-base) var(--ease-out), transform var(--dur-fast) var(--ease-out), opacity var(--dur-base) var(--ease-out);white-space:nowrap;border:none;padding:8px 16px;line-height:1.4}button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}button:active:not(:disabled){transform:scale(.96)}button:disabled{opacity:.5;cursor:not-allowed}input,select,textarea{font-family:var(--font-family);font-size:var(--text-sm);font-weight:var(--fw-regular);color:var(--color-text);border:1.5px solid var(--color-border);border-radius:var(--r-md);background:var(--color-surface);width:100%;transition:border-color var(--dur-base) var(--ease-out), box-shadow var(--dur-base) var(--ease-out);outline:none;padding:10px 13px}input:focus,select:focus,textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #2b6cb021}select{cursor:pointer;appearance:auto}select:disabled{opacity:.5;cursor:not-allowed;background:var(--color-surface-2)}code{background:var(--color-surface-2);border:1px solid var(--color-border-light);border-radius:var(--r-xs);padding:2px 5px;font-family:ui-monospace,Cascadia Code,Consolas,monospace;font-size:12px}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.3}}@keyframes card-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes radar-pulse{0%{opacity:.8;transform:scale(.8)}to{opacity:0;transform:scale(2.4)}}.app{background-image:url(/assets/PingOwl%20Background-BKRzBene.png);background-position:bottom;background-repeat:no-repeat;background-size:100%;background-attachment:fixed;flex-direction:column;min-height:100vh;display:flex}.main-content{padding:var(--sp-4) var(--sp-8) 180px;background:var(--color-bg);flex:1;width:100%;max-width:1320px;margin:0 auto}.app-loading{min-height:100vh;font-size:var(--text-base);color:var(--color-text-muted);justify-content:center;align-items:center;display:flex}.load-error{color:var(--color-danger);background:var(--color-danger-bg);border:1px solid var(--color-danger-border);border-radius:var(--r-md);padding:var(--sp-3) var(--sp-4);font-size:var(--text-sm)}.load-spinner{color:var(--color-text-muted);font-size:var(--text-sm);padding:var(--sp-4) 0}.btn{border-radius:var(--r-sm);font-size:var(--text-sm);font-weight:var(--fw-semibold);cursor:pointer;transition:background var(--dur-base) var(--ease-out), color var(--dur-base) var(--ease-out), border-color var(--dur-base) var(--ease-out), box-shadow var(--dur-base) var(--ease-out), transform var(--dur-fast) var(--ease-out);white-space:nowrap;border:1.5px solid #0000;justify-content:center;align-items:center;gap:6px;padding:8px 18px;line-height:1.4;text-decoration:none;display:inline-flex}.btn:active:not(:disabled){transform:scale(.96)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--color-accent);color:var(--color-accent-text);border-color:var(--color-accent);font-weight:var(--fw-bold);box-shadow:var(--shadow-accent)}.btn-primary:hover:not(:disabled){background:var(--color-accent-hover);border-color:var(--color-accent-hover);box-shadow:0 4px 24px #f6e05e8c}.btn-outline{background:var(--color-surface);color:var(--color-primary);border-color:var(--color-primary)}.btn-outline:hover:not(:disabled){background:var(--color-primary-pale)}.btn-ghost{color:var(--color-text-muted);background:0 0;border-color:#0000}.btn-ghost:hover:not(:disabled){background:var(--color-border-light);color:var(--color-text)}.btn-danger-ghost{color:var(--color-danger)}.btn-danger-ghost:hover:not(:disabled){background:var(--color-danger-bg);color:var(--color-danger)}.btn-success{background:var(--color-success);color:#fff;border-color:var(--color-success)}.btn-success:hover:not(:disabled){background:#186039;border-color:#186039}.btn-danger{color:var(--color-danger)!important}.btn-danger:hover{background:var(--color-danger-bg)!important}.btn-share-success{background:var(--color-success-bg);color:var(--color-success);border-color:var(--color-success-border)}.btn-sm{font-size:var(--text-xs);border-radius:var(--r-sm);padding:5px 13px}.header{z-index:100;background:linear-gradient(135deg,#0d1f3c 0%,#1a3a6b 55%,#2b6cb0 100%);position:sticky;top:0;box-shadow:0 4px 24px #11254566}.header-inner{max-width:1320px;padding:0 var(--sp-8);align-items:center;gap:0;height:104px;margin:0 auto;display:flex}.header-brand{cursor:pointer;text-align:left;transition:opacity var(--dur-base) var(--ease-out);background:0 0;border:none;border-radius:10px;flex-shrink:0;align-items:center;gap:14px;padding:0;text-decoration:none;display:flex}.header-brand:hover{opacity:.88}.header-icon{object-fit:contain;flex-shrink:0;width:93px;height:93px}.header-wordmark{line-height:1}.header-title{font-size:26px;font-weight:var(--fw-black);letter-spacing:-.5px;margin-bottom:3px;line-height:1}.brand-ping{color:#90c4f9}.brand-owl{color:var(--color-accent)}.header-subtitle{color:#ffffff73;font-size:11.5px;font-weight:var(--fw-semibold);letter-spacing:.2px;text-transform:none}.header-center{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;display:flex}.header-ping-counter{flex-direction:column;align-items:center;gap:3px;line-height:1;display:flex}.header-support-btn{color:var(--color-accent);font-size:11.5px;font-weight:var(--fw-semibold);white-space:nowrap;background:#f6e05e1a;border:1px solid #f6e05e73;border-radius:20px;align-items:center;gap:4px;padding:4px 12px;text-decoration:none;transition:background .15s,border-color .15s;display:inline-flex}.header-support-btn:hover{background:#f6e05e33;border-color:#f6e05eb3}.ping-count-number{font-size:44px;font-weight:var(--fw-black);color:var(--color-accent);letter-spacing:-2px;text-shadow:0 0 40px #f6e05e80,0 2px #0003;line-height:1}.ping-count-label{font-size:11px;font-weight:var(--fw-bold);color:#ffffff80;text-transform:uppercase;letter-spacing:1.5px;white-space:nowrap}.header-right{align-items:center;gap:var(--sp-2);flex-shrink:0;display:flex}.header-nav{background:#ffffff14;border-radius:8px;gap:2px;padding:3px;display:flex}.header-nav-btn{font-size:13.5px;font-weight:var(--fw-bold);color:#ffffffa6;cursor:pointer;transition:color var(--dur-base) var(--ease-out), background var(--dur-base) var(--ease-out);background:0 0;border:none;border-radius:6px;padding:6px 14px}.header-nav-btn:hover{color:#fff;background:#ffffff1a}.header-nav-btn.active{color:#fff;background:#ffffff2e}.header .btn-primary{background:var(--color-accent);color:#1a1400;font-weight:var(--fw-extrabold);border-radius:8px;box-shadow:0 2px 8px #f6e05e4d}.header .btn-primary:hover{background:#ecc94b;box-shadow:0 4px 16px #f6e05e73}.header .btn-ghost{color:#ffffffb3;border-color:#fff3}.header .btn-ghost:hover{color:#fff;background:#ffffff1a;border-color:#ffffff59}.header-run-bar{background:#0000002e;border-top:1px solid #ffffff14}.header-run-bar-inner{max-width:1320px;padding:0 var(--sp-8);align-items:center;gap:var(--sp-2);height:34px;margin:0 auto;font-size:12.5px;display:flex}.run-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.run-dot--idle{background:#ffffff4d}.run-dot--none-available{background:#f5c430}.run-dot--some-available{background:#48bb78;animation:2s ease-in-out infinite pulse-dot;box-shadow:0 0 6px #48bb78}.run-label{color:#ffffff73;font-weight:var(--fw-semibold)}.run-time{color:#fffc;font-weight:var(--fw-bold)}.run-summary{color:#ffffff73;font-weight:var(--fw-semibold)}.run-divider{color:#ffffff40}.run-next{color:#fffc;font-weight:var(--fw-bold)}.badge{font-size:var(--text-xs);font-weight:var(--fw-bold);border-radius:var(--r-full);letter-spacing:var(--ls-wide);white-space:nowrap;align-items:center;gap:5px;padding:4px 10px;line-height:1;display:inline-flex}.badge:before{content:"";border-radius:50%;flex-shrink:0;align-self:center;width:6px;height:6px;display:block}.badge-available{background:var(--color-success-bg);color:var(--color-success-text);border:1px solid var(--color-success-border)}.badge-available:before{background:var(--color-success);animation:2.5s ease-in-out infinite pulse-dot}.badge-on-watch{color:#1a365d;letter-spacing:var(--ls-wider);background:#f6e05e;border:1.5px solid #c8aa0059;font-size:10px}.badge-on-watch:before{background:#1a365d}.badge-expired{background:var(--color-surface-2);color:var(--color-text-muted);border:1px solid var(--color-border)}.badge-expired:before{background:var(--color-text-muted)}.badge-partial{color:#92400e;background:#fef3c7;border:1px solid #fcd34d}.badge-partial:before{background:#f59e0b;animation:2.5s ease-in-out infinite pulse-dot}.entry-list{gap:var(--sp-10);flex-direction:column;display:flex}.entry-section{gap:var(--sp-4);flex-direction:column;display:flex}.entry-section-header{justify-content:space-between;align-items:center;display:flex}.section-title{font-size:13px;font-weight:var(--fw-extrabold);letter-spacing:1px;text-transform:uppercase;color:var(--color-text);align-items:center;gap:10px;display:flex}.section-count{background:var(--color-primary);color:#fff;min-width:24px;height:24px;font-size:12px;font-weight:var(--fw-extrabold);letter-spacing:0;border-radius:100px;justify-content:center;align-items:center;padding:0 8px;display:inline-flex}.section-title--muted{color:var(--color-text-muted)}.section-title--muted .section-count{background:#a0aec0}.entry-grid{grid-template-columns:repeat(4,1fr);gap:20px;display:grid}.entry-card{background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--r-lg);transition:box-shadow var(--dur-base) var(--ease-out), transform var(--dur-base) var(--ease-out);animation:card-in var(--dur-slow) var(--ease-out) both;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 2px 8px #11254514,0 1px 2px #1125450a}.entry-card:first-child{animation-delay:0s}.entry-card:nth-child(2){animation-delay:60ms}.entry-card:nth-child(3){animation-delay:.12s}.entry-card:nth-child(4){animation-delay:.18s}.entry-card:nth-child(5){animation-delay:.24s}.entry-card:nth-child(6){animation-delay:.3s}.entry-card:nth-child(7){animation-delay:.36s}.entry-card:nth-child(8){animation-delay:.42s}.entry-card:nth-child(n+9){animation-delay:.48s}.entry-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px #11254524,0 2px 6px #11254514}.entry-card-available{border-color:var(--color-success-border)}.entry-card-expired{opacity:.72}.entry-card-expired:hover{transform:translateY(-1px)}.entry-card-hero{flex-direction:column;flex-shrink:0;justify-content:flex-end;height:140px;display:flex;position:relative;overflow:hidden}.entry-card-hero-badge{position:absolute;top:14px;right:14px}.entry-card-hero .badge{letter-spacing:.04em;padding:5px 13px;font-size:11px}.entry-card-hero .badge:before{display:none}.entry-card-hero .badge-on-watch{color:#f6e05e;background:#f6e05e2e;border:1.5px solid #f6e05e80}.entry-card-hero .badge-available{color:#6ee7b7;background:#10b98133;border:1.5px solid #34d39999}.entry-card-hero .badge-expired{color:#ffffff8c;background:#0000004d;border:1px solid #fff3}.entry-card-hero .badge-partial{color:#fcd34d;background:#f59e0b33;border:1.5px solid #f59e0b8c}.entry-card-hero-bottom{padding:0 18px 16px}.entry-card-hero-park{font-size:11px;font-weight:var(--fw-semibold);color:#ffffff85;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis;margin-bottom:4px;overflow:hidden}.entry-camp{font-size:22px;font-weight:var(--fw-extrabold);color:#fff;letter-spacing:-.3px;margin:0;line-height:1.15}.entry-card-body{padding:14px 18px 10px}.entry-card-title-row{justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.entry-card-actions{flex-shrink:0;gap:4px;display:flex}.entry-card-actions .btn{border-radius:5px;padding:3px 9px;font-size:11px}.entry-accom-chip{font-size:var(--text-xs);font-weight:var(--fw-semibold);border-radius:var(--r-full);background:var(--color-surface-2);color:var(--color-text-muted);border:1px solid var(--color-border-light);margin-bottom:10px;padding:3px 9px;display:inline-block}.entry-card-available .entry-accom-chip{background:var(--color-success-bg);color:var(--color-success-text);border-color:var(--color-success-border)}.entry-meta{flex-direction:column;gap:5px;padding:0 0 8px;display:flex}.entry-meta-item{align-items:center;gap:var(--sp-2);font-size:15px;font-weight:var(--fw-semibold);color:var(--color-text);display:flex}.entry-meta-item strong{color:var(--color-text);font-weight:var(--fw-extrabold)}.entry-meta-item--admin{border-top:1px dashed var(--color-border);margin-top:2px;padding-top:5px}.entry-meta-item--partial{color:#92400e;font-size:13px}.entry-meta-user{color:var(--color-text-muted);font-size:11px;font-weight:var(--fw-semibold);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.entry-meta-icon{color:var(--color-text-muted);flex-shrink:0;font-size:14px}.entry-last-checked{color:#a0aec0;font-size:11px;font-weight:var(--fw-semibold);align-items:center;gap:4px;display:flex}.entry-last-checked--checking{color:var(--color-primary)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.check-spin{font-size:13px;line-height:1;animation:1s linear infinite spin;display:inline-block}.entry-row-checked--checking{color:var(--color-primary);font-weight:var(--fw-semibold)}.entry-card-footer{border-top:1px solid var(--color-border-light);flex-direction:column;gap:8px;margin-top:auto;padding:12px 18px 18px;display:flex}.btn-card-primary{text-align:center;width:100%;font-size:14px;font-weight:var(--fw-bold);background:var(--color-primary);color:#fff;border-radius:var(--r-md);cursor:pointer;transition:background var(--dur-base) var(--ease-out);border:none;padding:11px 16px;text-decoration:none;display:block}.btn-card-primary:hover:not(:disabled){background:var(--color-primary-dark)}.entry-card-available .btn-card-primary{background:var(--color-success)}.entry-card-available .btn-card-primary:hover:not(:disabled){background:#186039}.entry-card-footer-row{align-items:center;gap:6px;display:flex}.entry-footer-spacer{flex:1}.btn-icon-sec{font-size:12px;font-weight:var(--fw-semibold);border:.5px solid var(--color-border-light);color:var(--color-text-muted);cursor:pointer;white-space:nowrap;background:0 0;border-radius:7px;align-items:center;gap:5px;padding:6px 10px;font-family:inherit;line-height:1;display:inline-flex}.btn-icon-sec i{font-size:14px}.btn-icon-sec:hover:not(:disabled){background:var(--color-surface-2);color:var(--color-text);border-color:var(--color-border)}.btn-icon-sec:disabled{opacity:.45;cursor:not-allowed}.btn-icon-sec--success,.btn-icon-sec--available{background:var(--color-success-bg);color:var(--color-success-text);border-color:var(--color-success-border)}.empty-state{text-align:center;padding:var(--sp-20) var(--sp-8);animation:slide-up var(--dur-slow) var(--ease-out) both}.empty-state-icon{margin-bottom:var(--sp-5);font-size:64px;line-height:1}.empty-state h2{font-size:var(--text-xl);font-weight:var(--fw-extrabold);color:var(--color-text);letter-spacing:var(--ls-snug);margin-bottom:var(--sp-2)}.empty-state p{font-size:var(--text-base);color:var(--color-text-muted);max-width:34ch;margin:0 auto var(--sp-8);line-height:var(--lh-relaxed)}.hiw-empty{padding:var(--sp-8) 0 var(--sp-20);animation:slide-up var(--dur-slow) var(--ease-out) both}.hiw-empty-top{text-align:center;margin-bottom:var(--sp-8)}.hiw-empty-title{font-size:var(--text-xl);font-weight:var(--fw-extrabold);color:var(--color-text);letter-spacing:var(--ls-snug);margin:0 0 var(--sp-2)}.hiw-empty-sub{font-size:var(--text-base);color:var(--color-text-muted);line-height:var(--lh-relaxed);margin:0 0 var(--sp-6)}.hiw-empty-cta{font-size:var(--text-base);padding:13px 28px}.hiw-steps{gap:var(--sp-4);grid-template-columns:repeat(3,1fr);display:grid}.hiw-step{background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--r-lg);padding:var(--sp-5)}.hiw-step-num{font-size:var(--text-xs);font-weight:var(--fw-bold);color:var(--color-text-subtle);letter-spacing:var(--ls-wider);margin:0 0 var(--sp-3)}.hiw-step-icon{margin-bottom:var(--sp-3);font-size:28px;line-height:1;display:block}.hiw-step-title{font-size:var(--text-base);font-weight:var(--fw-bold);color:var(--color-text);margin:0 0 var(--sp-2)}.hiw-step-desc{font-size:var(--text-sm);color:var(--color-text-muted);line-height:var(--lh-relaxed);margin:0}@media (width<=640px){.hiw-steps{grid-template-columns:1fr}}.modal-backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);padding:var(--sp-12) var(--sp-4);z-index:200;animation:fade-in var(--dur-base) var(--ease-out);background:#0a162685;justify-content:center;align-items:flex-start;display:flex;position:fixed;inset:0;overflow-y:auto}.modal{background:var(--color-surface);border-radius:var(--r-2xl);box-shadow:var(--shadow-xl);width:100%;max-width:560px;animation:slide-up var(--dur-slow) var(--ease-out);margin:auto;overflow:hidden}.modal-header{padding:var(--sp-5) var(--sp-6) var(--sp-4);border-bottom:1px solid var(--color-border-light);justify-content:space-between;align-items:center;display:flex}.modal-header h2{font-size:var(--text-md);font-weight:var(--fw-extrabold);letter-spacing:var(--ls-snug)}.modal-close{color:var(--color-text-muted);border-radius:var(--r-md);cursor:pointer;width:36px;height:36px;transition:background var(--dur-base) var(--ease-out), color var(--dur-base) var(--ease-out);background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:22px;line-height:1;display:flex}.modal-close:hover{background:var(--color-border-light);color:var(--color-text)}.modal-body{padding:var(--sp-6);gap:var(--sp-5);flex-direction:column;max-height:calc(100dvh - 200px);display:flex;overflow-y:auto}.modal-footer{justify-content:flex-end;gap:var(--sp-2);padding-top:var(--sp-2);border-top:1px solid var(--color-border-light);margin-top:var(--sp-2);display:flex}.form-row{gap:var(--sp-5);flex-direction:column;display:flex}.form-row-2{flex-direction:row}.form-row-2 .form-field{flex:1;min-width:0}.form-field-group{gap:var(--sp-4);background:var(--color-surface-2);border:1px solid var(--color-border-light);border-radius:var(--r-lg);padding:var(--sp-4);flex-direction:column;display:flex}.form-field{flex-direction:column;gap:5px;display:flex}.form-field label{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--color-text);letter-spacing:var(--ls-wide)}.form-field.has-error input,.form-field.has-error select{border-color:var(--color-danger)}.form-field.has-error input:focus,.form-field.has-error select:focus{border-color:var(--color-danger);box-shadow:0 0 0 3px #b52a2a1a}.field-error{font-size:var(--text-xs);color:var(--color-danger);font-weight:var(--fw-semibold)}.field-hint{font-size:var(--text-xs);color:var(--color-text-muted);line-height:var(--lh-relaxed);margin-top:2px}.input-row{gap:var(--sp-2);align-items:flex-start;display:flex}.input-row input{flex:1;min-width:0}.input-row .btn{flex-shrink:0}.code-confirmed{align-items:flex-start;gap:var(--sp-3);background:var(--color-success-bg);border:1.5px solid var(--color-success-border);border-radius:var(--r-lg);padding:var(--sp-4);display:flex}.code-confirmed-icon{background:var(--color-success);color:#fff;width:22px;height:22px;font-size:13px;font-weight:var(--fw-bold);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:1px;display:flex}.code-confirmed-body{flex:1;min-width:0}.code-confirmed-title{font-size:var(--text-sm);font-weight:var(--fw-bold);color:var(--color-success-text);margin-bottom:3px}.code-confirmed-sub{font-size:var(--text-sm);color:var(--color-success)}.code-confirmed-url{font-size:var(--text-xs);margin-top:var(--sp-2);color:var(--color-success);text-underline-offset:2px;text-decoration:underline;display:inline-block}.code-confirmed-override{color:var(--color-text-muted);font-size:var(--text-xs);flex-shrink:0}.find-code-section{background:var(--color-surface-2);border:1.5px solid var(--color-border);border-radius:var(--r-lg);padding:var(--sp-4);flex-direction:column;gap:0;display:flex}.find-code-section.has-error{border-color:var(--color-danger)}.find-code-header{margin-bottom:var(--sp-3);justify-content:space-between;align-items:center;display:flex}.find-code-label{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--color-text)}.find-code-intro{font-size:var(--text-sm);color:var(--color-text-muted);margin-bottom:var(--sp-3)}.find-code-steps{margin:0 0 0 var(--sp-1);padding-left:var(--sp-5);gap:var(--sp-2);flex-direction:column;display:flex}.find-code-steps li{font-size:var(--text-sm);color:var(--color-text-muted);line-height:var(--lh-normal)}.find-code-steps strong{color:var(--color-text)}.find-code-link{color:var(--color-primary);font-weight:var(--fw-semibold);text-underline-offset:2px;text-decoration:underline}.accom-select{position:relative}.accom-select-input{box-sizing:border-box;width:100%}.accom-select--disabled .accom-select-input{opacity:.5;cursor:not-allowed}.accom-select-dropdown{z-index:200;background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--r-md);max-height:280px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 8px 24px #0000001f}.accom-select-group-label{font-size:var(--text-xs);font-weight:var(--fw-semibold);color:var(--color-text-muted);letter-spacing:var(--ls-wide);text-transform:uppercase;background:var(--color-surface-2);padding:6px 12px 4px;position:sticky;top:0}.accom-select-option{justify-content:space-between;align-items:center;gap:var(--sp-3);cursor:pointer;font-size:var(--text-sm);padding:8px 12px;display:flex}.accom-select-option--active,.accom-select-option:hover{background:var(--color-primary-pale)}.accom-option-main{color:var(--color-text)}.accom-option-sleeps{font-size:var(--text-xs);color:var(--color-text-muted);background:var(--color-surface-2);border:1px solid var(--color-border-light);border-radius:var(--r-xs);flex-shrink:0;padding:1px 6px}.accom-select-empty{font-size:var(--text-sm);color:var(--color-text-muted);text-align:center;padding:12px}.drp{border:1.5px solid var(--color-border);border-radius:var(--r-md);background:var(--color-bg);-webkit-user-select:none;user-select:none;overflow:hidden}.drp-summary{align-items:center;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);background:var(--color-surface-2);border-bottom:1px solid var(--color-border-light);display:flex}.drp-slot{padding:var(--sp-2) var(--sp-3);border-radius:var(--r-sm);cursor:pointer;transition:border-color var(--dur-base) var(--ease-out), background var(--dur-base) var(--ease-out);text-align:center;background:0 0;border:1.5px solid #0000;flex-direction:column;flex:1;align-items:center;gap:2px;display:flex}.drp-slot:disabled{cursor:default;opacity:.5}.drp-slot--active{border-color:var(--color-primary);background:var(--color-bg);box-shadow:0 0 0 3px var(--color-primary-pale)}.drp-slot-label{font-size:10px;font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:var(--ls-wide);color:var(--color-text-muted)}.drp-slot-val{font-size:var(--text-sm);font-weight:var(--fw-bold);color:var(--color-text)}.drp-arrow{color:var(--color-text-muted);font-size:var(--text-sm);flex-shrink:0}.drp-nights{font-size:var(--text-xs);font-weight:var(--fw-semibold);color:var(--color-primary);background:var(--color-primary-pale);border-radius:var(--r-full);white-space:nowrap;flex-shrink:0;padding:3px 10px}.drp-header{padding:var(--sp-3) var(--sp-4);border-bottom:1px solid var(--color-border-light);justify-content:space-between;align-items:center;display:flex}.drp-month-label{font-size:var(--text-sm);font-weight:var(--fw-bold);color:var(--color-text)}.drp-nav-btn{border-radius:var(--r-sm);border:1px solid var(--color-border-light);background:var(--color-bg);width:30px;height:30px;color:var(--color-text-muted);font-size:var(--text-lg);cursor:pointer;transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);justify-content:center;align-items:center;line-height:1;display:flex}.drp-nav-btn:hover{background:var(--color-surface-2);border-color:var(--color-border);color:var(--color-text)}.drp-grid{padding:var(--sp-3) var(--sp-3) var(--sp-2);grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.drp-day-label{text-align:center;font-size:10px;font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:var(--ls-wide);color:var(--color-text-muted);padding:var(--sp-1) 0 var(--sp-2)}.drp-cell{aspect-ratio:1;border-radius:var(--r-sm);cursor:default;transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);justify-content:center;align-items:center;display:flex;position:relative}.drp-cell--empty{pointer-events:none}.drp-cell--past{color:var(--color-text-subtle);cursor:not-allowed}.drp-cell--selectable{cursor:pointer}.drp-cell--selectable:hover .drp-cell-inner{background:var(--color-surface-2);border-radius:var(--r-sm)}.drp-cell--range{background:var(--color-primary-pale);border-radius:0}.drp-cell--range-left{border-radius:var(--r-sm) 0 0 var(--r-sm)}.drp-cell--range-right{border-radius:0 var(--r-sm) var(--r-sm) 0}.drp-cell--start .drp-cell-inner,.drp-cell--end .drp-cell-inner{background:var(--color-primary)!important;color:#fff!important}.drp-cell--start{background:var(--color-primary-pale);border-radius:var(--r-sm) 0 0 var(--r-sm)}.drp-cell--end{background:var(--color-primary-pale);border-radius:0 var(--r-sm) var(--r-sm) 0}.drp-cell--start:not(.drp-cell--range-left),.drp-cell--end:not(.drp-cell--range-right){background:0 0}.drp-cell-inner{border-radius:var(--r-sm);width:32px;height:32px;font-size:var(--text-sm);font-weight:var(--fw-semibold);z-index:1;transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);justify-content:center;align-items:center;display:flex;position:relative}.drp-cell--today .drp-cell-inner{border:2px solid var(--color-primary);color:var(--color-primary);font-weight:var(--fw-extrabold)}.drp-cell--start .drp-cell-inner,.drp-cell--end .drp-cell-inner{border:none}.drp-hint{text-align:center;font-size:var(--text-xs);color:var(--color-text-muted);padding:var(--sp-2) var(--sp-4) var(--sp-3);border-top:1px solid var(--color-border-light);margin:0}.form-field.has-error .drp{border-color:var(--color-danger-border)}.code-preview-url{font-size:var(--text-xs);margin-top:var(--sp-2);color:var(--color-primary);text-underline-offset:2px;text-decoration:underline;display:inline-block}.code-auto-badge{font-size:var(--text-xs);font-weight:var(--fw-bold);border-radius:var(--r-full);background:var(--color-success-bg);color:var(--color-success-text);margin-left:var(--sp-2);text-transform:uppercase;letter-spacing:var(--ls-wider);vertical-align:middle;align-items:center;padding:2px 7px;display:inline-flex}.login-page{height:100vh;display:flex;overflow:hidden}.login-brand{background:linear-gradient(155deg,#2b6cb0 0%,#112545 100%);flex-direction:column;flex-shrink:0;width:46%;display:flex;position:relative;overflow:hidden}.radar-ring{pointer-events:none;border-radius:50%;position:absolute}.radar-bl{border:1.5px solid #f6e05e33;width:320px;height:320px;bottom:-80px;left:-80px;box-shadow:0 0 0 60px #f6e05e0f,0 0 0 120px #f6e05e08,0 0 0 180px #f6e05e04}.radar-tr{border:1px solid #ffffff12;width:240px;height:240px;top:-60px;right:-90px;box-shadow:0 0 0 45px #ffffff08,0 0 0 90px #ffffff04}.login-brand-inner{z-index:1;flex-direction:column;flex:1;min-height:0;padding:24px 44px 16px;display:flex;position:relative}.login-brand-top{align-items:center;gap:18px;margin-bottom:14px;display:flex}.login-brand-logo-badge{flex-shrink:0;justify-content:center;align-items:center;width:200px;height:200px;display:flex}.login-brand-logo-img{object-fit:contain;width:100%;height:100%;padding:8px}.login-brand-wordmark{font-size:34px;font-weight:var(--fw-black);letter-spacing:var(--ls-tight);line-height:1}.login-brand-tagline{font-size:var(--text-sm);color:#ffffffa6;font-weight:var(--fw-semibold);letter-spacing:.01em;margin-top:4px}.login-brand-divider{background:#ffffff24;height:1px;margin-bottom:12px}.login-hiw-label{font-size:14px;font-weight:var(--fw-extrabold);text-transform:uppercase;letter-spacing:.12em;color:#ffffff73;margin-bottom:8px}.login-hiw-list{flex-direction:column;flex:1;min-height:0;list-style:none;display:flex}.login-hiw-item{border-bottom:1px solid #ffffff14;align-items:flex-start;gap:14px;padding:13px 0;display:flex}.login-hiw-item:last-child{border-bottom:none}.login-hiw-item--muted{opacity:.65}.login-hiw-num{color:#fff;width:26px;height:26px;font-size:12px;font-weight:var(--fw-extrabold);background:#ffffff2e;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:1px;display:flex}.login-hiw-num--accent{background:var(--color-accent);color:var(--color-accent-text)}.login-hiw-icon{flex-shrink:0;font-size:26px;line-height:1}.login-hiw-body{flex-direction:column;gap:5px;min-width:0;display:flex}.login-hiw-step-title{font-size:var(--text-md);font-weight:var(--fw-extrabold);color:#fff;flex-wrap:wrap;align-items:center;gap:8px;line-height:1.3;display:flex}.login-hiw-desc{font-size:var(--text-base);color:#ffffff9e;font-weight:var(--fw-regular);line-height:1.5}.hiw-badge{font-size:9px;font-weight:var(--fw-extrabold);text-transform:uppercase;letter-spacing:.08em;background:var(--color-accent);color:var(--color-accent-text);white-space:nowrap;border-radius:20px;padding:2px 7px;display:inline-block}.hiw-support-link{font-size:var(--text-xs);font-weight:var(--fw-bold);color:var(--color-accent);transition:opacity var(--dur-fast) var(--ease-out);margin-top:4px;text-decoration:none;display:inline-block}.hiw-support-link:hover{opacity:.8;text-decoration:underline}.login-ping-stat{background:#f3ae2d;border-radius:16px;flex-shrink:0;align-self:center;align-items:center;width:48%;margin:0 auto 32px;padding:14px 24px;display:flex;box-shadow:0 4px 20px #f3ae2d59}.login-ping-number{font-size:34px;font-weight:var(--fw-black);color:#112545;letter-spacing:-1.5px;white-space:nowrap;flex-shrink:0;padding-right:18px;line-height:1}.login-ping-divider{background:#0000002e;border-radius:2px;flex-shrink:0;width:1.5px;height:34px}.login-ping-copy{flex-direction:column;gap:2px;padding-left:18px;display:flex}.login-ping-copy span:first-child{font-size:14px;font-weight:var(--fw-extrabold);color:#112545;line-height:1.2}.login-ping-copy span:last-child{font-size:13px;font-weight:var(--fw-bold);color:#112545b8;line-height:1.2}.login-form-panel{background:var(--color-bg);padding:var(--sp-10) var(--sp-12);flex:1;justify-content:center;align-items:center;display:flex;position:relative;overflow-y:auto}.login-safari{z-index:0;pointer-events:none;height:220px;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.login-safari:before{content:"";background:linear-gradient(to bottom, var(--color-bg) 0%, transparent 100%);z-index:1;pointer-events:none;height:70%;position:absolute;top:0;left:0;right:0}.login-safari-img{object-fit:cover;object-position:bottom center;opacity:.55;width:100%;height:100%;display:block}.login-form-inner{z-index:1;width:100%;max-width:380px;animation:slide-up var(--dur-slow) var(--ease-out) 80ms both;position:relative}.login-form-title{font-size:var(--text-3xl);font-weight:var(--fw-black);letter-spacing:var(--ls-snug);color:var(--color-text);margin-bottom:var(--sp-2)}.login-form-subtitle{font-size:var(--text-base);color:var(--color-text-muted);margin-bottom:var(--sp-8);line-height:var(--lh-relaxed)}.login-form{gap:var(--sp-4);flex-direction:column;display:flex}.login-submit{width:100%;margin-top:var(--sp-2);font-size:var(--text-base);border-radius:var(--r-md);padding:12px}.login-message{font-size:var(--text-sm);color:var(--color-success-text);background:var(--color-success-bg);border:1px solid var(--color-success-border);border-radius:var(--r-md);padding:var(--sp-3) var(--sp-4)}.login-links{align-items:flex-start;gap:var(--sp-2);margin-top:var(--sp-6);flex-direction:column;display:flex}.login-link{color:var(--color-primary);font-size:var(--text-sm);font-weight:var(--fw-semibold);cursor:pointer;text-underline-offset:3px;transition:color var(--dur-base) var(--ease-out);background:0 0;border:none;padding:0;text-decoration:underline;text-decoration-thickness:1px}.login-link:hover{color:var(--color-primary-dark)}.admin-dashboard{max-width:1100px}.admin-tabs{margin-bottom:var(--sp-6);border-bottom:1.5px solid var(--color-border-light);gap:4px;display:flex}.admin-tab{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--color-text-muted);cursor:pointer;transition:color var(--dur-base) var(--ease-out), border-color var(--dur-base) var(--ease-out);background:0 0;border:none;border-bottom:2.5px solid #0000;margin-bottom:-1.5px;padding:10px 18px}.admin-tab:hover{color:var(--color-text)}.admin-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.deploy-timestamp{font-size:var(--text-xs);color:var(--color-text-muted);margin:0 0 var(--sp-4)}.stat-grid{gap:var(--sp-4);margin-bottom:var(--sp-8);grid-template-columns:repeat(auto-fill,minmax(150px,1fr));display:grid}.stat-card{background:var(--color-surface);border:1.5px solid var(--color-border-light);border-radius:var(--r-lg);padding:var(--sp-5);gap:var(--sp-1);box-shadow:var(--shadow-xs);transition:box-shadow var(--dur-base) var(--ease-out);flex-direction:column;display:flex}.stat-card:hover{box-shadow:var(--shadow-sm)}.stat-card--green{border-color:var(--color-success-border);background:var(--color-success-bg)}.stat-card--blue{border-color:var(--_blue-300);background:var(--_blue-50)}.stat-card--grey{background:var(--color-surface-2)}.stat-card--amber{background:#fffbeb;border-color:#fcd34d}.stat-value{font-size:28px;font-weight:var(--fw-extrabold);color:var(--color-text);letter-spacing:var(--ls-tight);line-height:1}.stat-label{font-size:var(--text-xs);color:var(--color-text-muted);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:var(--ls-wider)}.stat-card--green .stat-value{color:var(--color-success-text)}.stat-card--blue .stat-value{color:var(--color-primary-dark)}.admin-trigger-section{background:var(--color-surface);border:1.5px solid var(--color-border-light);border-radius:var(--r-lg);padding:var(--sp-5) var(--sp-6);margin-bottom:var(--sp-6);box-shadow:var(--shadow-xs)}.admin-trigger-section h3{margin:0 0 var(--sp-1);font-size:var(--text-base)}.trigger-result{margin-top:var(--sp-3);font-size:var(--text-sm);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-md);background:var(--color-success-bg);color:var(--color-success-text);border:1px solid var(--color-success-border)}.trigger-result--error{background:var(--color-danger-bg);color:var(--color-danger-text);border-color:var(--color-danger-border)}.admin-logs{background:var(--color-surface);border:1.5px solid var(--color-border-light);border-radius:var(--r-lg);padding:var(--sp-5) var(--sp-6);box-shadow:var(--shadow-xs)}.admin-logs h3{margin:0 0 var(--sp-4);font-size:var(--text-base)}.admin-logs-empty{text-align:center;color:var(--color-text-muted);font-size:var(--text-sm);padding:var(--sp-8) 0;margin:0}.logs-table,.users-table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.logs-table th,.logs-table td,.users-table th,.users-table td{padding:var(--sp-3) var(--sp-3);text-align:left;border-bottom:1px solid var(--color-border-light)}.logs-table th,.users-table th{font-weight:var(--fw-bold);color:var(--color-text-muted);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--ls-wider)}.log-available{color:var(--color-success-text);font-weight:var(--fw-bold)}.log-error{color:var(--color-danger);font-weight:var(--fw-bold)}.log-row-clickable{cursor:pointer}.log-row-clickable:hover{background:var(--color-surface-2)}.log-error-detail-row td{background:var(--color-danger-bg);padding:var(--sp-2) var(--sp-3) var(--sp-3) var(--sp-6)}.error-details-list{margin:var(--sp-2) 0 0;gap:var(--sp-2);flex-direction:column;padding:0;list-style:none;display:flex}.error-details-list li{font-size:var(--text-xs)}.error-detail-header{align-items:center;gap:var(--sp-2);flex-wrap:wrap;margin-bottom:2px;display:flex}.error-entry-name{font-weight:var(--fw-bold);color:var(--color-text)}.error-entry-dates,.error-entry-code{color:var(--color-text-muted);font-family:monospace;font-size:11px}.error-detail-reason{color:var(--color-danger);font-weight:var(--fw-semibold)}.error-detail-hint{color:var(--color-text-subtle);margin-top:2px;font-size:11px;font-style:italic}.status-badge{padding:2px var(--sp-2);border-radius:var(--r-full,999px);font-size:var(--text-xs);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:var(--ls-wider);display:inline-block}.status-badge--available{background:var(--color-success-bg);color:var(--color-success-text)}.status-badge--partial{color:#92400e;background:#fef3c7}.status-badge--unavailable{background:var(--color-surface-2);color:var(--color-text-muted)}.status-badge--error{background:var(--color-danger-bg);color:var(--color-danger-text)}.hunt-legacy{color:var(--color-text-subtle);font-style:italic}.hunt-cell-main{margin-bottom:2px}.hunt-cell-meta{font-size:var(--text-xs);color:var(--color-text-muted);flex-wrap:wrap;align-items:center;gap:2px;display:flex}.hunt-cell-owner{font-family:monospace}.hunt-cell-link{margin-left:var(--sp-2);color:var(--color-accent-text);font-weight:var(--fw-semibold);white-space:nowrap;text-decoration:none}.hunt-cell-link:hover{text-decoration:underline}.trigger-result-hunt{flex-wrap:wrap;align-items:center;gap:2px;display:flex}.trigger-result-hunt+.trigger-result-hunt{margin-top:var(--sp-2)}.cycle-section{margin-bottom:var(--sp-8)}.cycle-card{background:var(--color-success-bg);border:1.5px solid var(--color-success-border);border-radius:var(--r-lg);padding:var(--sp-5)}.cycle-card--warn{background:var(--color-danger-bg);border-color:var(--color-danger-border)}.cycle-rate{font-size:32px;font-weight:var(--fw-extrabold);color:var(--color-success-text);letter-spacing:var(--ls-tight);line-height:1}.cycle-card--warn .cycle-rate{color:var(--color-danger-text)}.cycle-detail{margin-top:var(--sp-2);font-size:var(--text-sm);color:var(--color-text-muted)}.cycle-bar{margin-top:var(--sp-3);border-radius:var(--r-full,999px);background:var(--color-surface);height:6px;overflow:hidden}.cycle-bar-fill{background:var(--color-success);height:100%;transition:width var(--dur-base) var(--ease-out)}.cycle-card--warn .cycle-bar-fill{background:var(--color-danger)}.um-header{align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-4);display:flex}.um-title{font-size:var(--text-base);font-weight:var(--fw-extrabold);margin:0}.um-count{font-size:var(--text-sm);font-weight:var(--fw-regular);color:var(--color-text-muted);background:var(--color-surface-2);border:1px solid var(--color-border-light);border-radius:var(--r-full);padding:1px 8px}.um-table-wrap{overflow-x:auto}.um-table{border-collapse:collapse;width:100%;min-width:640px;font-size:var(--text-sm)}.um-table th,.um-table td{padding:var(--sp-3) var(--sp-3);text-align:left;vertical-align:middle;border-bottom:1px solid var(--color-border-light)}.um-table th{font-size:var(--text-xs);font-weight:var(--fw-bold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:var(--ls-wider);white-space:nowrap;border-bottom:2px solid var(--color-border-light)}.um-row:last-child td{border-bottom:none}.um-row--self{background:#2b6cb00a}.um-row--disabled{background:var(--color-surface-2)}.um-row--disabled td{opacity:.5}.um-cell-email{min-width:180px}.um-email-line{align-items:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.um-email{font-weight:var(--fw-semibold);color:var(--color-text);word-break:break-all}.um-badge{font-size:10px;font-weight:var(--fw-bold);border-radius:var(--r-full);text-transform:uppercase;letter-spacing:var(--ls-wide);white-space:nowrap;flex-shrink:0;padding:2px 7px;display:inline-block}.um-badge--you{background:var(--color-primary-pale,#ebf4ff);color:var(--color-primary)}.um-badge--disabled{background:var(--color-danger-bg);color:var(--color-danger)}.um-badge--unconfirmed{color:#b7791f;background:#fffbeb;border:1px solid #f6e05e}.um-feedback{font-size:var(--text-xs);font-weight:var(--fw-semibold);margin:var(--sp-1) 0 0;line-height:1.4}.um-feedback--ok{color:var(--color-success-text)}.um-feedback--err{color:var(--color-danger)}.um-col-hunts{text-align:center;white-space:nowrap}.um-cell-hunts{text-align:center}.um-stat-num{font-size:var(--text-base);font-weight:var(--fw-extrabold);color:var(--color-primary);line-height:1.1;display:block}.um-stat-label{color:var(--color-text-muted);white-space:nowrap;font-size:10px;display:block}.um-stat-of{color:var(--color-text-subtle);font-size:10px}.um-cell-date{white-space:nowrap;color:var(--color-text-muted)}.um-col-login,.um-col-joined{white-space:nowrap}.um-col-role{min-width:90px}.um-col-actions{min-width:190px}.um-actions{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.um-actions .btn{white-space:nowrap;padding:3px 9px;font-size:11px}@media (width<=900px){.um-col-joined{display:none}}@media (width<=680px){.um-col-login{display:none}}.role-select{font-size:var(--text-sm);border-radius:var(--r-md);border:1px solid var(--color-border);padding:4px 8px}@media (width<=1024px){.entry-grid{grid-template-columns:repeat(3,1fr)}.login-brand-inner{padding:20px 28px 16px}.login-brand-logo-badge{width:110px;height:110px}}@media (width<=768px){.login-page{flex-direction:column;height:auto;min-height:100vh;overflow-y:auto}.login-brand{flex-direction:row;align-items:center;width:100%;padding:14px 20px}.login-brand-inner{flex-direction:row;flex:1;align-items:center;padding:0}.login-brand-top{margin-bottom:0}.login-brand-logo-badge{width:72px;height:72px}.login-brand-wordmark{font-size:var(--text-xl)}.login-ping-stat,.login-brand-tagline,.login-brand-divider,.login-hiw-label,.login-hiw-list,.login-safari,.radar-bl,.radar-tr{display:none}.login-form-panel{padding:var(--sp-8) var(--sp-5);justify-content:flex-start;align-items:flex-start}}@media (width<=640px){.app{background-position:bottom;background-size:250%;background-attachment:fixed}.header-inner{padding:10px var(--sp-4);flex-wrap:wrap;align-items:center;gap:6px;height:auto;min-height:60px}.header-brand{flex:1 0 auto;min-width:0}.header-icon{width:44px;height:44px}.header-title{font-size:var(--text-lg)}.header-subtitle,.header-center{display:none}.header-right{flex-wrap:wrap;flex:0 0 100%;justify-content:flex-end;gap:6px}.header-nav{gap:1px;padding:2px}.header-nav-btn{padding:4px 10px;font-size:12px}.header .btn-primary{padding:5px 12px;font-size:12px}.header .btn-ghost.btn-sm{padding:4px 10px;font-size:12px}.header-run-bar-inner{padding:0 var(--sp-4);gap:4px;height:30px;font-size:11px}.run-summary,.run-divider{display:none}.main-content{padding:var(--sp-6) var(--sp-4) 140px}.entry-grid{grid-template-columns:1fr;gap:14px}.form-row-2{flex-direction:column}.modal-backdrop{align-items:flex-end;padding:0}.modal{border-radius:var(--r-xl) var(--r-xl) 0 0;max-width:100%;max-height:92dvh}.admin-logs,.user-management{overflow-x:unset}.logs-table{min-width:unset;table-layout:fixed;width:100%}.logs-table th:first-child,.logs-table td:first-child{width:30%}.logs-table th:nth-child(2),.logs-table td:nth-child(2){width:45%}.logs-table th:nth-child(3),.logs-table td:nth-child(3){text-align:center;width:25%}.logs-table th,.logs-table td{white-space:nowrap;text-overflow:ellipsis;padding:var(--sp-2) var(--sp-2);font-size:10.5px;overflow:hidden}.logs-table .hunt-cell-main,.logs-table .hunt-cell-meta{white-space:normal;text-overflow:clip;overflow:visible}.um-table{font-size:12px}.um-table th,.um-table td{padding:var(--sp-2) var(--sp-2)}.um-table .role-select{padding:3px 4px;font-size:12px}.empty-state{padding:var(--sp-12) var(--sp-4)}}.profile-modal{max-width:440px}.profile-body{padding:var(--sp-6);gap:var(--sp-5);flex-direction:column;max-height:calc(100dvh - 200px);display:flex;overflow-y:auto}.profile-section{gap:var(--sp-3);flex-direction:column;display:flex}.profile-section-title{font-size:var(--text-xs);font-weight:var(--fw-bold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:var(--ls-wider);margin:0}.profile-form{gap:var(--sp-3);flex-direction:column;display:flex}.profile-form-footer{justify-content:flex-end;display:flex}.profile-msg{font-size:var(--text-xs);font-weight:var(--fw-semibold);padding:var(--sp-2) var(--sp-3);border-radius:var(--r-sm);line-height:var(--lh-relaxed);margin:0}.profile-msg--ok{color:var(--color-success);background:var(--color-success-bg)}.profile-msg--err{color:var(--color-danger);background:var(--color-danger-bg)}.profile-divider{border:none;border-top:1px solid var(--color-border-light);margin:0}.header-user-menu{position:relative}.btn-user-avatar{color:#fff;width:34px;height:34px;font-size:11px;font-weight:var(--fw-bold);letter-spacing:.5px;cursor:pointer;transition:background var(--dur-base) var(--ease-out);background:#ffffff26;border:1.5px solid #ffffff4d;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}.btn-user-avatar:hover{background:#ffffff47}.btn-hamburger{border-radius:var(--r-md);cursor:pointer;width:36px;height:36px;transition:background var(--dur-base) var(--ease-out);background:#ffffff1f;border:1.5px solid #ffffff38;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:4px;padding:0;display:flex}.btn-hamburger:hover{background:#ffffff3d}.hamburger-bar{background:#fff;border-radius:2px;width:16px;height:1.5px;display:block}.user-menu-dropdown{background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);z-index:200;min-width:180px;animation:slide-up var(--dur-base) var(--ease-out);position:absolute;top:calc(100% + 8px);right:0;overflow:hidden}.user-menu-identity{padding:var(--sp-3) var(--sp-4);border-bottom:1px solid var(--color-border-light);align-items:center;gap:10px;display:flex}.user-menu-avatar{background:var(--color-primary-pale);width:30px;height:30px;color:var(--color-primary);font-size:11px;font-weight:var(--fw-bold);letter-spacing:.5px;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.user-menu-email{font-size:var(--text-xs);color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;max-width:190px;display:block;overflow:hidden}.user-menu-item{text-align:left;width:100%;padding:var(--sp-3) var(--sp-4);font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--color-text);cursor:pointer;white-space:nowrap;transition:background var(--dur-base) var(--ease-out);background:0 0;border:none;border-radius:0;align-items:center;gap:10px;text-decoration:none;display:flex}.user-menu-item svg{color:var(--color-text-muted);flex-shrink:0}.user-menu-item:hover{background:var(--color-surface-2)}.user-menu-item:active{transform:none}.user-menu-item--danger{color:var(--color-danger);border-top:1px solid var(--color-border-light)}.user-menu-item--danger svg{color:var(--color-danger)}.user-menu-item--danger:hover{background:var(--color-danger-bg);color:var(--color-danger)}.user-menu-item--support,.user-menu-item--support svg{color:var(--color-success-text)}.user-menu-item--feedback,.user-menu-item--feedback svg{color:var(--color-primary)}.user-menu-item--support:hover{background:var(--color-success-bg);color:var(--color-success-text)}.entry-list-controls{margin-bottom:var(--sp-1);justify-content:flex-end;display:flex}.view-toggle{background:var(--color-surface-2);border-radius:10px;gap:2px;padding:3px;display:flex}.view-toggle-btn{width:30px;height:28px;color:var(--color-text-muted);cursor:pointer;transition:background var(--dur-base) var(--ease-out), color var(--dur-base) var(--ease-out);background:0 0;border:none;border-radius:7px;justify-content:center;align-items:center;padding:0;display:flex}.view-toggle-btn.active{background:var(--color-surface);color:var(--color-primary);box-shadow:var(--shadow-xs)}.view-toggle-btn:hover:not(.active){color:var(--color-text)}.view-toggle-btn:active{transform:none}.entry-rows{flex-direction:column;gap:5px;display:flex}.entry-row{background:var(--color-surface);border-left:4px solid var(--card-accent,#319795);border-radius:var(--r-md);align-items:center;gap:var(--sp-3);box-shadow:var(--shadow-xs);transition:box-shadow var(--dur-base) var(--ease-out), transform var(--dur-base) var(--ease-out);animation:card-in var(--dur-slow) var(--ease-out) both;padding:9px 14px;display:flex;overflow:hidden}.entry-row:hover{box-shadow:0 4px 12px #1125451a}.entry-row-available{--card-accent:#38a169}.entry-row-expired{--card-accent:#a0aec0;opacity:.72}.entry-row-status{flex-shrink:0}.entry-row-main{flex-direction:column;flex:1;gap:1px;min-width:160px;display:flex}.entry-row-park{font-size:var(--text-sm);font-weight:var(--fw-black);color:#112545;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.entry-row-sub{font-size:var(--text-xs);color:var(--color-text-muted);font-weight:var(--fw-semibold);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.entry-row-accom{color:#1e4f8a;font-weight:var(--fw-bold)}.entry-row-email{color:var(--color-text-subtle);white-space:nowrap;text-overflow:ellipsis;font-size:10.5px;overflow:hidden}.entry-row-dates{font-size:var(--text-xs);font-weight:var(--fw-semibold);color:#4a5568;white-space:nowrap;flex-shrink:0}.entry-row-partial{color:#92400e}.entry-row-checked{color:#a0aec0;font-size:11px;font-weight:var(--fw-semibold);white-space:nowrap;flex-shrink:0}.entry-row-actions{flex-shrink:0;align-items:center;gap:5px;display:flex}.entry-row-actions .btn{padding:4px 10px;font-size:12px}@media (width<=960px){.entry-row-checked{display:none}}@media (width<=700px){.entry-row-dates,.entry-row-mark{display:none}}.fb-page{background:var(--color-bg-secondary);min-height:100vh;padding:var(--sp-6);justify-content:center;align-items:center;display:flex}.fb-card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--r-xl);padding:var(--sp-10) var(--sp-8);width:100%;max-width:480px;box-shadow:0 4px 24px #0000000f}.fb-header{align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-6);display:flex}.fb-logo{font-size:28px;line-height:1}.fb-brand{font-size:var(--text-lg);font-weight:var(--fw-bold);color:var(--color-primary)}.fb-title{font-size:var(--text-xl);font-weight:var(--fw-bold);color:var(--color-text);margin:0 0 var(--sp-2)}.fb-subtitle{font-size:var(--text-sm);color:var(--color-text-muted);margin:0 0 var(--sp-5);line-height:1.5}.fb-form{gap:var(--sp-4);flex-direction:column;display:flex}.fb-textarea{width:100%;padding:var(--sp-3) var(--sp-4);border:1px solid var(--color-border);border-radius:var(--r-md);font-size:var(--text-sm);color:var(--color-text);background:var(--color-bg);resize:vertical;box-sizing:border-box;transition:border-color var(--dur-base) var(--ease-out);font-family:inherit}.fb-textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light);outline:none}.fb-error{font-size:var(--text-sm);color:var(--color-danger);margin:0}.fb-btn{border-radius:var(--r-md);font-size:var(--text-sm);font-weight:var(--fw-semibold);cursor:pointer;transition:opacity var(--dur-base) var(--ease-out);border:none;padding:10px 20px;text-decoration:none;display:inline-block}.fb-btn:disabled{opacity:.5;cursor:not-allowed}.fb-btn--teal{background:var(--color-primary);color:#fff}.fb-btn--amber{color:#fff;background:#f59e0b}.fb-success{gap:var(--sp-3);flex-direction:column;display:flex}.fb-success-title{font-size:var(--text-lg);font-weight:var(--fw-semibold);color:var(--color-text);margin:0}.fb-success-body{font-size:var(--text-sm);color:var(--color-text-muted);margin:0;line-height:1.5}.contact-modal{max-width:480px}.contact-modal-header{padding:var(--sp-4) var(--sp-6) var(--sp-4);background:var(--color-primary);justify-content:space-between;align-items:center;display:flex}.contact-modal-title{align-items:center;gap:var(--sp-2);color:#fff;font-size:var(--text-md);font-weight:var(--fw-semibold);display:flex}.contact-modal-header .modal-close{color:#fffc}.contact-modal-header .modal-close:hover{color:#fff;background:#ffffff26}.contact-modal-form{gap:var(--sp-4)}.contact-field-label{font-size:var(--text-xs);font-weight:var(--fw-semibold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.07em;margin-bottom:var(--sp-2);display:block}.contact-pills{gap:var(--sp-2);display:flex}.contact-pill{border:1.5px solid var(--color-border);color:var(--color-text-muted);font-size:var(--text-sm);font-weight:var(--fw-medium);cursor:pointer;transition:all var(--dur-base) var(--ease-out);background:0 0;border-radius:999px;padding:6px 16px}.contact-pill--active{border-color:var(--color-primary);background:var(--color-primary);color:#fff}.contact-pill:not(.contact-pill--active):hover{border-color:var(--color-border-strong);color:var(--color-text)}.contact-textarea{box-sizing:border-box;width:100%;padding:var(--sp-3);border:1.5px solid var(--color-border);border-radius:var(--r-lg);font-size:var(--text-sm);color:var(--color-text);background:var(--color-surface);resize:vertical;transition:border-color var(--dur-base) var(--ease-out);outline:none;font-family:inherit;line-height:1.6}.contact-textarea:focus{border-color:var(--color-primary)}.contact-reply-note{font-size:var(--text-xs);color:var(--color-text-muted);margin:0;line-height:1.5}.contact-error{font-size:var(--text-sm);color:var(--color-danger,#dc2626);margin:0}.contact-modal-success{padding:var(--sp-8) var(--sp-6);text-align:center;align-items:center;gap:var(--sp-3);flex-direction:column;display:flex}.contact-success-icon{background:var(--color-success-bg);width:52px;height:52px;color:var(--color-success);border-radius:50%;justify-content:center;align-items:center;font-size:22px;font-weight:700;display:flex}.contact-success-title{font-size:var(--text-lg);font-weight:var(--fw-semibold);color:var(--color-text);margin:0}.contact-success-body{font-size:var(--text-sm);color:var(--color-text-muted);margin:0;line-height:1.6}.app-footer{color:#e2e8f0;background:#0a1628;margin-top:auto}.ft-accent-line{background:linear-gradient(90deg,#2b6cb0 0%,#4a9fd4 40%,#f6e05e 100%);height:3px}.ft-main{grid-template-columns:1.4fr 1fr 1.2fr;align-items:start;gap:56px;max-width:1320px;margin:0 auto;padding:52px 48px 44px;display:grid}.ft-brand-row{align-items:center;gap:16px;margin-bottom:20px;display:flex}.ft-logo{object-fit:contain;filter:brightness(1.1);flex-shrink:0;width:auto;height:72px}.ft-wordmark{letter-spacing:-.03em;font-size:32px;font-weight:800;line-height:1}.ft-ping{color:#63b3ed}.ft-owl-text{color:#f6e05e}.ft-sub-label{color:#4a6fa5;letter-spacing:.1em;text-transform:uppercase;margin-top:5px;font-size:11px;font-weight:600}.ft-tagline{color:#8fa8c8;margin:0;font-size:17px;line-height:1.7}.ft-col-label{color:#4a6fa5;text-transform:uppercase;letter-spacing:.12em;margin:0 0 18px;font-size:11px;font-weight:700}.ft-nav{flex-direction:column;gap:0;display:flex}.ft-nav-link{color:#7a9fc0;border-bottom:1px solid #ffffff0a;align-items:center;gap:10px;padding:10px 0;font-size:17px;font-weight:500;text-decoration:none;transition:color .15s;display:flex}.ft-nav-link svg{opacity:.55;flex-shrink:0}.ft-nav-link:hover{color:#e2e8f0}.ft-nav-link:hover svg{opacity:.8}.ft-ctas{flex-direction:column;gap:12px;display:flex}.ft-btn-bru{color:#78350f;letter-spacing:-.01em;cursor:pointer;background:#f6e05e;border:none;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:15px 24px;font-family:inherit;font-size:17px;font-weight:800;text-decoration:none;transition:opacity .15s;display:flex}.ft-btn-bru:hover{opacity:.88}.ft-btn-feedback{color:#90cdf4;cursor:pointer;letter-spacing:-.01em;background:#63b3ed12;border:1.5px solid #63b3ed33;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:15px 24px;font-family:inherit;font-size:17px;font-weight:700;transition:background .15s,border-color .15s;display:flex}.ft-btn-feedback:hover{background:#63b3ed24;border-color:#63b3ed66}.ft-cta-note{color:#3d5a7a;text-align:center;margin:4px 0 0;font-size:13px;line-height:1.5}.ft-bottom{border-top:1px solid #ffffff0d;justify-content:space-between;align-items:center;max-width:1320px;margin:0 auto;padding:18px 48px;display:flex}.ft-bottom p{color:#2d4a6e;margin:0;font-size:13px}@media (width<=860px){.ft-main{grid-template-columns:1fr 1fr;gap:36px;padding:40px 28px 32px}.ft-brand{grid-column:1/-1}}@media (width<=600px){.ft-main{grid-template-columns:1fr;gap:28px;padding:32px 20px 24px}.ft-nav{flex-flow:wrap;gap:0 24px}.ft-nav-link{border-bottom:none;padding:6px 0;font-size:15px}.ft-ctas{gap:10px}.ft-cta-note{text-align:left}.ft-bottom{padding:14px 20px}}.verify-banner{padding:10px var(--sp-8);background:#fffbeb;border-bottom:1px solid #f59e0b}.verify-banner--urgent{background:#fff5f5;border-bottom-color:#e53e3e}.verify-banner-content{align-items:center;gap:var(--sp-3);max-width:1320px;margin:0 auto;display:flex}.verify-banner-icon{flex-shrink:0;font-size:16px}.verify-banner-text{font-size:var(--text-sm);color:#92400e;line-height:var(--lh-normal);flex:1;margin:0}.verify-banner--urgent .verify-banner-text{color:#c53030}.verify-banner-actions{align-items:center;gap:var(--sp-2);flex-shrink:0;display:flex}.verify-banner-btn{font-size:var(--text-xs);font-weight:var(--fw-semibold);color:#92400e;border-radius:var(--r-sm);cursor:pointer;white-space:nowrap;background:#fde68a;border:1px solid #f59e0b;padding:4px 10px;line-height:1.5}.verify-banner-btn:hover:not(:disabled){background:#fcd34d}.verify-banner-btn:disabled{opacity:.5;cursor:not-allowed}.verify-banner--urgent .verify-banner-btn{color:#c53030;background:#fed7d7;border-color:#e53e3e}.verify-banner--urgent .verify-banner-btn:hover:not(:disabled){background:#feb2b2}.verify-banner-sent{font-size:var(--text-xs);color:#047857;font-weight:var(--fw-semibold)}.verify-banner-dismiss{cursor:pointer;color:#92400e;opacity:.5;background:0 0;border:none;padding:2px 4px;font-size:13px;line-height:1}.verify-banner-dismiss:hover{opacity:1}@media (width<=640px){.verify-banner{padding:10px var(--sp-4)}.verify-banner-content{gap:var(--sp-2);flex-wrap:wrap}.verify-banner-text{width:100%}}.metrics-section{margin-bottom:var(--sp-6)}.metrics-header{justify-content:space-between;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-4);flex-wrap:wrap;display:flex}.admin-section-title{font-size:var(--text-base);font-weight:var(--fw-bold);color:var(--color-text);margin:0}.metrics-period-toggle{background:var(--color-surface-2);border:1px solid var(--color-border-light);border-radius:var(--r-md);gap:2px;padding:3px;display:flex}.metrics-period-btn{border-radius:calc(var(--r-md) - 2px);font-size:var(--text-xs);font-weight:var(--fw-semibold);color:var(--color-text-muted);cursor:pointer;transition:background var(--dur-base) var(--ease-out), color var(--dur-base) var(--ease-out);white-space:nowrap;background:0 0;border:none;padding:5px 12px}.metrics-period-btn:hover{color:var(--color-text)}.metrics-period-btn.active{background:var(--color-surface);color:var(--color-primary);box-shadow:0 1px 3px #00000014}.metrics-cards{gap:var(--sp-3);grid-template-columns:repeat(4,1fr);display:grid}.metric-card{background:var(--color-surface);border:1.5px solid var(--color-border-light);border-radius:var(--r-lg);padding:var(--sp-5) var(--sp-4);text-align:center;align-items:center;gap:var(--sp-2);transition:box-shadow var(--dur-base) var(--ease-out);flex-direction:column;display:flex}.metric-card:hover{box-shadow:var(--shadow-sm)}.metric-card-icon{font-size:22px;line-height:1}.metric-card-value{font-size:var(--text-3xl,28px);font-weight:var(--fw-extrabold);color:var(--color-text);letter-spacing:var(--ls-snug);line-height:1}.metric-card-label{font-size:var(--text-xs);font-weight:var(--fw-semibold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:var(--ls-wider)}.metric-card--amber .metric-card-value{color:var(--color-accent-dark,#b45309)}.metric-card--red .metric-card-value{color:var(--color-danger)}.metric-card--green .metric-card-value{color:var(--color-success-text)}.admin-empty-msg{font-size:var(--text-sm);color:var(--color-success-text);background:var(--color-success-bg);border:1px solid var(--color-success-border);border-radius:var(--r-md);padding:var(--sp-3) var(--sp-4);margin:0}.pager{align-items:center;gap:var(--sp-2);margin-top:var(--sp-3);justify-content:flex-end;display:flex}.pager-btn{border:1px solid var(--color-border);border-radius:var(--r-md);font-size:var(--text-sm);cursor:pointer;color:var(--color-text);background:0 0;padding:4px 12px;font-family:inherit;transition:background .1s,border-color .1s}.pager-btn:hover:not(:disabled){background:var(--color-surface-2);border-color:var(--color-border-light)}.pager-btn:disabled{opacity:.35;cursor:default}.pager-info{font-size:var(--text-sm);color:var(--color-text-muted);text-align:center;min-width:48px}@media (width<=900px){.metrics-cards{grid-template-columns:repeat(2,1fr)}}@media (width<=500px){.metrics-cards{grid-template-columns:1fr 1fr}.metrics-header{flex-direction:column;align-items:flex-start}.metrics-period-toggle{justify-content:stretch;width:100%}.metrics-period-btn{text-align:center;flex:1;padding:6px 4px}}
