:root{--bg-top:#fff8f0;--bg-mid:#f0f5ff;--bg-bottom:#eaf1f8;--card:rgba(255,255,255,0.88);--line:#d4dce8;--text:#333333;--muted:#6b7280;--brand:#4A90E2;--brand-2:#3570b8;--accent:#FF6B00;--warn:#c45500;--error:#dc2626;--success:#16a34a;--sticky-top:10px;--header-sticky-height:92px}*{box-sizing:border-box}body,html{margin:0;padding:0;min-height:100%;overflow-x:hidden}body{color:var(--text);font-family:Space Grotesk,Avenir Next,Segoe UI,sans-serif;background:radial-gradient(circle at 15% 10%,rgba(74,144,226,.15),transparent 36%),radial-gradient(circle at 85% 5%,rgba(255,107,0,.08),transparent 34%),linear-gradient(150deg,var(--bg-top),var(--bg-mid) 45%,var(--bg-bottom))}.app-shell{max-width:1400px;margin:0 auto;padding:20px}.app-header{border:1px solid var(--line);background:linear-gradient(120deg,#ffffff,#f0f6ff);border-radius:18px;padding:16px 18px;flex-wrap:wrap;gap:16px;justify-content:space-between;box-shadow:0 12px 36px rgba(16,33,52,.12);position:-webkit-sticky;position:sticky;top:var(--sticky-top);z-index:50}.app-header,.brand{display:flex;align-items:center}.brand-logo{height:76px;width:auto}.pro-badge-logo{position:absolute;top:-2px;left:calc(100% - 24px);background:var(--accent);color:#fff;font-size:.6rem;font-weight:700;padding:1px 5px;border-radius:4px;line-height:1.4;letter-spacing:.02em;white-space:nowrap;pointer-events:none}.top-nav{display:flex;gap:8px}.nav-link{display:inline-block;padding:8px 12px;border-radius:999px;text-decoration:none;color:var(--text);border:1px solid transparent}.nav-link.active{background:rgba(74,144,226,.1);border-color:rgba(74,144,226,.3);color:var(--brand)}.page{margin-top:18px;display:grid;grid-gap:14px;gap:14px;padding-bottom:60px;min-width:0}.card{border:1px solid var(--line);background:var(--card);border-radius:16px;padding:14px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.notification-bar{border-radius:12px;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:10px;position:-webkit-sticky;position:sticky;top:calc(var(--sticky-top) + var(--header-sticky-height) + 8px);z-index:30;margin-bottom:14px}.notification-bar p{margin:0}.notification-error{border:1px solid rgba(220,38,38,.3);background:rgba(220,38,38,.08);color:#991b1b}.notification-success{border:1px solid rgba(22,163,74,.3);background:rgba(22,163,74,.08);color:#166534}.notification-info{border:1px solid rgba(74,144,226,.3);background:rgba(74,144,226,.08);color:#1e5a9e}.notification-close{background:rgba(255,255,255,.7)}.notification-close-error{border-color:rgba(220,38,38,.3);color:#991b1b}.notification-close-success{border-color:rgba(22,163,74,.3);color:#166534}.notification-close-info{border-color:rgba(74,144,226,.3);color:#1e5a9e}.notice{border-radius:12px;padding:10px 12px;margin-bottom:10px}.notice p{margin:4px 0}.notice-warning{border:1px solid rgba(196,85,0,.3);background:rgba(255,107,0,.06);color:#9a3412}.notice-success{border:1px solid rgba(22,163,74,.3);background:rgba(22,163,74,.06);color:#166534}.dashboard,.planner-page{display:grid;grid-gap:14px;gap:14px;grid-template-columns:minmax(0,1fr)}.hero-grid{display:grid;grid-gap:14px;gap:14px;grid-template-columns:1fr 1fr}@media (max-width:768px){.hero-grid{grid-template-columns:1fr}}.dashboard-divider{border:none;border-top:2px solid var(--line);margin:6px 0;opacity:.7}.hero-card p{max-width:72ch}.dashboard-start-link{display:block;text-decoration:none;color:var(--text);border:1px solid var(--line);border-radius:10px;padding:10px 12px;transition:border-color .15s ease,box-shadow .15s ease}.dashboard-start-link:hover{border-color:rgba(74,144,226,.3);box-shadow:0 2px 8px rgba(74,144,226,.08)}.dashboard-start-link strong{display:block;font-size:.9rem}.dashboard-start-link small{display:block;color:var(--muted);margin-top:2px}.dashboard-start-cta{border-color:rgba(255,107,0,.3);background:rgba(255,107,0,.04)}.dashboard-start-cta:hover{border-color:rgba(255,107,0,.5);box-shadow:0 2px 8px rgba(255,107,0,.12)}.dashboard-start-cta strong{color:#e55f00}.split-grid{display:grid;grid-gap:14px;gap:14px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.issues-list,.simple-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:8px;gap:8px}.simple-list li{display:flex;justify-content:space-between;align-items:center;gap:8px;border:1px solid var(--line);border-radius:10px;padding:8px 10px}.simple-list small{display:block;color:var(--muted)}.inline-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.button-link,button{cursor:pointer;border:1px solid rgba(74,144,226,.28);background:rgba(74,144,226,.08);color:#1e5a9e;border-radius:10px;padding:5px 10px;font:inherit;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease}.button-link:hover,button:hover{background:rgba(74,144,226,.14)}.button-link:focus-visible,button:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.button-link.ghost,.ghost-button{background:rgba(255,255,255,.7);color:var(--text);border:1px dashed rgba(100,116,145,.4)}.button-link.compact{padding:5px 8px}button.is-active{background:rgba(74,144,226,.14);border-color:rgba(74,144,226,.4);color:#1e5a9e}.danger-button{background:rgba(220,38,38,.08);border-color:rgba(220,38,38,.3);color:#991b1b}.danger-button:hover{background:rgba(220,38,38,.14)}.btn-primary{background:var(--accent);border:1px solid transparent;color:#fff;font-weight:600;padding:5px 10px;font-size:.82rem;box-shadow:0 2px 6px rgba(255,107,0,.18)}.btn-primary:hover{background:#e55f00;box-shadow:0 3px 10px rgba(255,107,0,.25)}.btn-ghost:disabled,.btn-primary:disabled,.btn-secondary:disabled{opacity:.45;cursor:not-allowed}.btn-secondary{background:rgba(74,144,226,.08);border:1px solid rgba(74,144,226,.28);color:#1e5a9e}.btn-secondary:hover{background:rgba(74,144,226,.14)}.btn-ghost{background:transparent;border:1px solid var(--line);color:var(--muted)}.btn-ghost:hover{background:rgba(0,0,0,.04)}.btn-sm{padding:5px 10px;font-size:.82rem}.collapsible-header{display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;padding:4px 0}.collapsible-header h3{margin:0;display:flex;align-items:center;gap:8px}.collapsible-actions{justify-content:flex-end}.collapsible-chevron{font-size:.7rem;color:var(--muted);transition:transform .15s ease}.collapsible-chevron.open{transform:rotate(180deg)}.section-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;border-radius:999px;font-size:.72rem;font-weight:600;padding:0 5px}.section-badge-done{background:rgba(22,163,74,.1);border:1px solid rgba(22,163,74,.3);color:#166534}.section-badge-empty{background:rgba(255,107,0,.08);border:1px solid rgba(255,107,0,.25);color:#c45500}.progress-bar{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}.progress-bar-sticky{gap:6px;flex-wrap:wrap;background:var(--bg-mid);padding:8px 12px;border:1px solid var(--line);border-radius:12px;margin-bottom:10px}.progress-bar-sticky,.stepper-bar{display:flex;position:-webkit-sticky;position:sticky;top:calc(var(--sticky-top) + var(--header-sticky-height) + 4px);z-index:25;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.stepper-bar{align-items:center;background:rgba(240,245,255,.92);padding:10px 16px;border:1px solid var(--line);border-radius:14px;margin-bottom:12px;overflow-x:auto}.stepper-item{display:flex;align-items:center;white-space:nowrap}.stepper-dot{width:30px;height:30px;min-width:30px;border-radius:50%;border:2px solid var(--line);background:rgba(255,255,255,.8);color:var(--muted);font-size:.78rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:all .15s ease}.stepper-dot:hover{border-color:var(--brand);color:var(--brand);background:rgba(74,144,226,.06)}.stepper-dot.done{border-color:var(--brand);background:var(--brand);color:#fff}.stepper-dot.done:hover{opacity:.85;background:var(--brand);color:#fff}.stepper-label{font-size:.76rem;color:var(--muted);margin-left:5px;font-weight:500}.stepper-line{display:inline-block;width:24px;height:2px;background:var(--line);margin:0 6px;border-radius:1px;flex-shrink:0}.stepper-line.done{background:var(--brand)}@media (max-width:680px){.stepper-label{display:none}.stepper-line{width:14px;margin:0 3px}}.progress-step{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:999px;font-size:.78rem;border:1px solid var(--line);background:rgba(255,255,255,.7);color:var(--muted)}.progress-step.done{border-color:rgba(74,144,226,.3);background:rgba(74,144,226,.08);color:#1e5a9e}.empty-state{text-align:center;padding:32px 16px;color:var(--muted)}.empty-state h3{margin:0 0 8px;color:var(--text)}.empty-state p{margin:0 0 16px;max-width:42ch;margin-inline:auto}.muted{color:var(--muted)}.error-text{color:var(--error)}.planner-header,.slot-header,.wizard-header{flex-wrap:wrap}.planner-grid-header,.planner-header,.slot-header,.wizard-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.planner-grid-header{margin-bottom:8px}.planner-grid-header h3{margin:0}.planner-filters{background:var(--card-bg);border:1px solid var(--line);border-radius:8px;margin-bottom:10px}.planner-filters-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 14px;background:transparent;border:0;color:var(--text);font-size:.88rem;font-weight:600;cursor:pointer;border-radius:8px}.planner-filters-toggle:hover{background:rgba(74,144,226,.04)}.planner-filters-toggle-label{display:inline-flex;align-items:center;gap:8px}.planner-filters-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:99px;background:var(--brand);color:#fff;font-size:.72rem;font-weight:600}.planner-filters-chevron{display:inline-block;transition:transform .15s;color:var(--muted);font-size:.85rem}.planner-filters-chevron.open{transform:rotate(180deg)}.planner-filters-body{gap:8px 16px;padding:4px 14px 12px;border-top:1px solid var(--line)}.planner-filter-row,.planner-filters-body{display:flex;flex-wrap:wrap;align-items:center}.planner-filter-row{gap:6px;width:100%}.planner-filter-label{font-size:.78rem;font-weight:600;color:var(--muted);min-width:48px}.planner-filter-chips{display:flex;gap:4px;flex-wrap:wrap}.filter-chip{font-size:.78rem;padding:3px 10px;border-radius:99px;border:1px solid var(--line);background:transparent;color:var(--text);cursor:pointer;transition:background .12s,border-color .12s;line-height:1.4}.filter-chip:hover{border-color:var(--brand);background:rgba(74,144,226,.06)}.filter-chip.active{background:var(--brand);color:#fff;border-color:var(--brand)}.filter-reset{font-size:.75rem;color:var(--muted);border-color:transparent;text-decoration:underline;margin-left:auto}.filter-reset:hover{color:var(--text);background:transparent;border-color:transparent}.planner-filter-search{font-size:.82rem;padding:3px 10px;border-radius:6px;border:1px solid var(--line);background:transparent;color:var(--text);width:140px}.planner-filter-search::placeholder{color:var(--muted)}@media (max-width:768px){.planner-filters-body{padding:4px 12px 12px;gap:10px 12px}.planner-filter-row{width:100%;gap:8px}.planner-filter-label{min-width:56px;font-size:.82rem}.filter-chip{font-size:.88rem;padding:8px 14px;line-height:1.3}.planner-filter-search{flex:1 1;width:auto;min-width:0;font-size:.95rem;padding:8px 12px}.filter-reset{margin-left:0;width:100%;text-align:center;padding:8px}}.cell-highlight{background:rgba(74,144,226,.12)!important}.cell-dimmed{opacity:.3}.chip-highlight{background:var(--brand)!important;color:#fff!important;box-shadow:0 0 0 2px rgba(74,144,226,.3)}.card-view-match-highlight{background:rgba(74,144,226,.08);border-color:var(--brand)!important}.card-view-match-dimmed{opacity:.3}.group-highlight{font-weight:700;color:var(--brand)}.form-grid{min-width:0}.form-grid,.start-mode-grid{display:grid;grid-gap:10px;gap:10px}.start-mode-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.start-mode-item{position:relative}.start-mode-option{display:grid;grid-gap:4px;gap:4px;text-align:left;justify-items:start;min-height:82px;width:100%;padding-right:38px}.start-mode-option small{color:var(--muted);font-weight:400}.start-mode-help{position:absolute;top:10px;right:10px;z-index:2}.label-with-help{display:inline-flex;align-items:center;gap:6px}.help-icon-button{width:22px;height:22px;min-width:22px;border-radius:999px;padding:0;font-size:.78rem;line-height:1;background:rgba(31,63,149,.08);border:1px solid rgba(31,63,149,.28);color:#223b7c}.help-modal-backdrop{position:fixed;inset:0;background:rgba(10,20,36,.42);display:grid;place-items:center;padding:16px;z-index:120}.help-modal-card{width:min(560px,100%);border-radius:14px;border:1px solid var(--line);background:#fff;padding:20px;box-shadow:0 18px 44px rgba(16,33,52,.25)}.help-modal-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.help-modal-card h3{margin:0}.help-modal-card p{margin:10px 0 0}fieldset,label{display:grid;grid-gap:6px;gap:6px;min-width:0}input,select,textarea{width:100%;font:inherit;border:1px solid var(--line);border-radius:10px;padding:8px;background:rgba(255,255,255,.8)}input[type=checkbox],input[type=radio]{width:auto;padding:0;border:revert;border-radius:revert;background:revert}textarea{min-height:120px;resize:vertical}.toggle-field{display:flex;gap:8px;align-items:center}.toggle-field input{width:auto}.inline-fields{display:grid;grid-gap:8px;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.activities-grid{display:grid;grid-gap:10px;gap:10px}.sub-card{border:1px solid var(--line);border-radius:12px;padding:10px;margin-top:10px;background:rgba(255,255,255,.72)}.editor-list{display:grid;grid-gap:8px;gap:8px}.editor-row{border:1px solid var(--line);border-radius:10px;padding:8px;display:grid;grid-template-columns:minmax(240px,1fr) auto auto;grid-gap:8px;gap:8px;align-items:center}.table-wrap{overflow:auto}.simple-table{width:100%;border-collapse:collapse;min-width:560px}.simple-table td,.simple-table th{border:1px solid var(--line);padding:8px;vertical-align:top}.simple-table th{text-align:left}.timeslot-transition-row td{background:rgba(31,63,149,.08);color:#273554;font-size:.9rem}.planner-transition-row td{text-align:center;font-size:.78rem;padding:4px 6px}.station-capacity{display:grid;grid-template-columns:repeat(2,minmax(70px,1fr));grid-gap:6px;gap:6px}.schedule-builder{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:10px}.import-wizard{margin-top:10px}.import-config-grid,.import-wizard{display:grid;grid-gap:10px;gap:10px}.import-config-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.import-preview-table{min-width:720px}.import-preset-actions{align-self:end}.import-found-count{white-space:nowrap}.block-header-row{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) minmax(180px,1fr) auto;grid-gap:8px;gap:8px;align-items:end}.json-grid{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.code-textarea{min-height:180px;font-family:JetBrains Mono,SFMono-Regular,Menlo,Consolas,monospace;font-size:.88rem;line-height:1.35}.activity-row{border:1px solid var(--line);border-radius:12px;padding:10px;display:grid;grid-gap:8px;gap:8px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));align-items:end}.warnings-list{margin:0;padding-left:18px;color:var(--warn)}.wizard-footer{margin-top:12px;display:flex;justify-content:space-between}.planner-layout{display:grid;grid-gap:12px;gap:12px;grid-template-columns:minmax(0,1fr) 300px}.slot-block{border:1px solid var(--line);border-radius:12px;padding:10px;margin-bottom:12px;background:rgba(255,255,255,.72)}.slot-grid{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.activity-cell{border:1px solid rgba(142,154,180,.42);border-radius:10px;padding:8px}.activity-cell h4{margin:0 0 8px}.allocation-card{border:1px solid var(--line);border-radius:10px;padding:8px;margin-bottom:8px;display:grid;grid-gap:8px;gap:8px;background:rgba(255,255,255,.9)}.allocation-title{margin:0;font-size:.9rem;color:#2d3750}.chips{display:flex;gap:6px;flex-wrap:wrap}.chip-wrap{display:inline-flex;align-items:center;gap:4px}.chip{border-radius:999px;border:1px solid rgba(31,63,149,.35);background:rgba(31,63,149,.12);color:#223b7c;padding:2px 7px;font-size:.84rem;line-height:1.2;-webkit-user-select:none;-moz-user-select:none;user-select:none}.planner-grid .chip{padding:1px 6px;font-size:.76rem}.chip-remove{padding:2px 6px;border-radius:999px;border:1px solid rgba(154,25,41,.28);background:rgba(154,25,41,.1);color:#7c1120}.chip-target{display:inline-flex}.drag-overlay-chip{box-shadow:0 8px 20px rgba(25,48,97,.25)}.drop-over{outline:2px solid rgba(74,144,226,.5)}.drop-illegal{outline:2px solid rgba(154,25,41,.5);background:rgba(154,25,41,.06)}.allocation-actions{display:flex;gap:6px;flex-wrap:wrap}.slot-footer{margin-top:8px;font-size:.9rem;color:#38415a}.parking-zone{margin-top:10px;border:1px dashed rgba(89,106,145,.45);border-radius:10px;padding:8px;display:grid;grid-gap:2px;gap:2px;background:rgba(255,255,255,.6)}.issues-panel h3{margin-top:0;margin-bottom:0;display:inline-flex;align-items:center;gap:6px;font-size:1.02rem}.issues-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.issues-total-pill{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:20px;border-radius:999px;border:1px solid rgba(31,63,149,.35);background:rgba(31,63,149,.12);color:#223b7c;font-size:.74rem;padding:0 6px}.issues-summary-badges{display:flex;gap:6px;margin-bottom:8px;flex-wrap:wrap}.issues-badge{border-radius:999px;border:1px solid transparent;padding:1px 7px;font-size:.72rem;font-weight:600}.issues-summary-badges.compact{gap:4px;margin-bottom:6px}.badge-error{color:#7c1120;background:rgba(154,25,41,.12);border-color:rgba(154,25,41,.28)}.badge-warn{color:#7f4a00;background:rgba(143,77,0,.12);border-color:rgba(143,77,0,.28)}.badge-info{color:#223b7c;background:rgba(31,63,149,.12);border-color:rgba(31,63,149,.28)}.planner-grid-wrap{overflow:auto;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.78)}.planner-grid{width:100%;border-collapse:collapse;min-width:920px;font-size:.9rem}.planner-grid td,.planner-grid th{border:1px solid var(--line);vertical-align:top;padding:4px;line-height:1.2}.planner-grid th{background:rgba(255,255,255,.86);position:-webkit-sticky;position:sticky;top:0;z-index:2}.planner-grid .group-header{text-align:center;background:rgba(31,63,149,.08);font-weight:700}.planner-grid th small{display:block;color:var(--muted);font-weight:400;font-size:.72rem}.break-row td{background:rgba(90,102,125,.14);color:#2f3850}.cell-drop{min-height:28px;border-radius:8px;padding:1px}.cell-alloc{display:flex;align-items:center;gap:2px;flex-wrap:nowrap;white-space:nowrap}.vs-label{color:var(--muted);font-size:.72rem;font-weight:500}.bye-chip{display:inline-flex;padding:1px 5px;border-radius:999px;background:rgba(36,41,52,.08);border:1px solid rgba(36,41,52,.2);margin:1px;font-size:.76rem}.bye-column-cell{min-width:102px}.cell-issue-error{background:rgba(154,25,41,.08)}.cell-issue-warn{background:rgba(143,77,0,.1)}.cell-issue-info{background:rgba(31,63,149,.08)}.planner-cell{position:relative}.cell-issue-pill{position:absolute;top:2px;right:2px;z-index:1;border-radius:999px;padding:0 4px;font-size:.64rem;line-height:1.25;border:1px solid transparent;background:rgba(31,63,149,.12)}.cell-issue-pill-error{color:#7c1120;border-color:rgba(154,25,41,.35);background:rgba(154,25,41,.2)}.cell-issue-pill-warn{color:#7f4a00;border-color:rgba(143,77,0,.32);background:rgba(143,77,0,.2)}.cell-issue-pill-info{color:#223b7c;border-color:rgba(31,63,149,.3);background:rgba(31,63,149,.14)}.issue-row{border:1px solid var(--line);border-radius:8px;padding:5px 6px;display:grid;grid-gap:2px;gap:2px}.issue-row.compact{font-size:.82rem}.issue-row-header{display:flex;align-items:center;justify-content:space-between;gap:4px}.issue-type-badge{background:rgba(37,51,79,.08);padding:0 6px;text-transform:uppercase;letter-spacing:.01em}.issue-count-badge,.issue-type-badge{border-radius:999px;border:1px solid rgba(37,51,79,.24);font-size:.68rem}.issue-count-badge{padding:0 5px;color:#2b3752;background:rgba(255,255,255,.75)}.issue-message{font-size:.79rem;line-height:1.24}.issue-row small{font-size:.72rem}.issues-hidden-note{margin:6px 0 0;font-size:.74rem;color:var(--muted)}.severity-error{border-color:rgba(154,25,41,.4);background:rgba(154,25,41,.08)}.severity-warn{border-color:rgba(143,77,0,.35);background:rgba(143,77,0,.09)}.severity-info{border-color:rgba(31,63,149,.3);background:rgba(31,63,149,.08)}.rotation-table-wrap{overflow:auto}.rotation-table{width:100%;border-collapse:collapse;font-size:.92rem}.rotation-table td,.rotation-table th{border:1px solid var(--line);padding:8px;text-align:left}@media (max-width:980px){:root{--header-sticky-height:122px}.planner-layout{grid-template-columns:1fr}.top-nav{width:100%;overflow-x:auto}.block-header-row,.editor-row{grid-template-columns:1fr}}.analysis-content{padding:0 0 16px;font-size:.88rem;line-height:1.7;color:var(--text)}.analysis-content h2{font-size:1.05rem;font-weight:600;margin:20px 0 8px}.analysis-content h3{font-size:.95rem;font-weight:600;margin:16px 0 6px}.analysis-content h4{font-size:.9rem;font-weight:600;margin:12px 0 4px}.analysis-content p{margin:6px 0}.analysis-content ul{margin:6px 0;padding-left:20px}.analysis-content li{margin-bottom:4px}.analysis-content strong{color:var(--text)}.analysis-content em{font-style:italic;color:var(--muted)}.auth-layout{display:grid;place-items:center;min-height:100vh;padding:20px}.auth-card-wrapper{width:100%;max-width:420px}.auth-footer{margin:24px 0 0;font-size:.8rem;color:var(--muted)}.export-checkbox-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px 24px;gap:8px 24px}.export-checkbox-label{display:flex!important;align-items:center;gap:8px;font-size:.85rem;cursor:pointer;padding:0;margin:0;background:none!important;border:none!important;color:var(--text)!important;white-space:nowrap}.export-checkbox-label input[type=checkbox]{margin:0;flex-shrink:0;width:16px;height:16px}.help-sections-grid{display:grid;grid-gap:14px;gap:14px;grid-template-columns:repeat(2,1fr)}.app-footer{text-align:center;font-size:.82rem;color:var(--muted);border:1px solid var(--line);background:var(--card);border-radius:16px;padding:10px 14px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);margin-top:14px;position:fixed;bottom:10px;left:50%;transform:translateX(-50%);width:calc(100% - 40px);max-width:1360px;z-index:40}.app-footer a{color:var(--brand);text-decoration:none}.app-footer a:hover{text-decoration:underline}.simple-list li{transition:border-color .15s ease,box-shadow .15s ease}.simple-list li:hover{border-color:rgba(74,144,226,.3);box-shadow:0 2px 8px rgba(74,144,226,.08)}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--brand);outline-offset:1px}a:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:4px}.issues-modal-content .issues-panel{border:none;background:none;padding:0;-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:0}.card-view-list{display:grid;grid-gap:10px;gap:10px}.card-view-slot{border:1px solid var(--line);border-radius:12px;padding:10px;background:rgba(255,255,255,.78)}.card-view-break{background:rgba(90,102,125,.08)}.card-view-slot-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.card-view-time{font-weight:700;font-size:.92rem;color:var(--text)}.card-view-round{font-size:.76rem;color:var(--muted);background:rgba(74,144,226,.08);border:1px solid rgba(74,144,226,.2);border-radius:999px;padding:1px 8px}.card-view-break-label{font-size:.84rem;color:var(--muted)}.card-view-matches{display:grid;grid-gap:8px;gap:8px}.card-view-location-group{display:grid;grid-gap:4px;gap:4px}.card-view-location-name{font-size:.76rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.02em}.card-view-match{border:1px solid var(--line);border-radius:8px;padding:6px 8px;background:rgba(255,255,255,.9);display:grid;grid-gap:2px;gap:2px}.card-view-match-error{border-color:rgba(154,25,41,.35);background:rgba(154,25,41,.05)}.card-view-match-warn{border-color:rgba(143,77,0,.3);background:rgba(143,77,0,.05)}.card-view-sport{font-weight:600;font-size:.85rem;color:var(--brand-2)}.card-view-groups{font-size:.84rem;color:var(--text)}.card-view-vs{color:var(--muted);font-size:.74rem;margin:0 4px}.card-view-group-name{font-weight:500}.card-view-issues{display:flex;gap:4px;flex-wrap:wrap;margin-top:2px}.card-view-issue-pill{font-size:.7rem;padding:0 6px;border-radius:999px;border:1px solid transparent}.card-view-issue-error{color:#7c1120;background:rgba(154,25,41,.12);border-color:rgba(154,25,41,.3)}.card-view-issue-warn{color:#7f4a00;background:rgba(143,77,0,.12);border-color:rgba(143,77,0,.3)}.card-view-issue-info{color:#223b7c;background:rgba(31,63,149,.12);border-color:rgba(31,63,149,.3)}.card-view-byes{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:4px}.card-view-bye-label{font-size:.78rem;color:var(--muted);font-weight:600}.card-view-transition{text-align:center;font-size:.76rem;color:var(--muted);padding:4px 0}.planner-view-toggle{display:inline-flex;gap:0;border:1px solid var(--line);border-radius:8px;overflow:hidden}.planner-view-toggle button{border:none;border-radius:0;padding:5px 10px;font-size:.85rem;background:transparent;color:var(--muted);cursor:pointer}.planner-view-toggle button.is-active{background:rgba(74,144,226,.12);color:var(--brand)}.planner-view-toggle button+button{border-left:1px solid var(--line)}.pub-shell{min-height:100vh;display:flex;flex-direction:column}.pub-header{justify-content:space-between;padding:14px 22px;background:linear-gradient(120deg,#ffffff,#f0f6ff);border:1px solid var(--line);border-radius:18px;margin:12px auto 0;max-width:1320px;width:calc(100% - 24px);position:-webkit-sticky;position:sticky;top:12px;z-index:50;box-shadow:0 12px 36px rgba(16,33,52,.12);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.pub-brand,.pub-header{display:flex;align-items:center}.pub-brand-logo{height:48px;width:auto}.pub-nav{display:flex;gap:4px;align-items:center}.pub-nav-link{padding:7px 14px;border-radius:999px;text-decoration:none;color:var(--text);font-size:.9rem;font-weight:500;border:1px solid transparent;transition:color .15s ease,background .15s ease,border-color .15s ease}.pub-nav-link:hover{color:var(--brand);background:rgba(74,144,226,.08)}.pub-nav-active{background:rgba(74,144,226,.1);border-color:rgba(74,144,226,.3);color:var(--brand);font-weight:600}.pub-auth{display:flex;gap:8px;align-items:center}.pub-hamburger,.pub-nav-auth-mobile{display:none}.pub-page{flex:1 1}.pub-hero{padding:96px 32px 88px;text-align:center;position:relative;display:grid;place-content:center;min-height:420px;border-radius:24px;margin:20px max(16px,calc((100% - 1280px) / 2)) 0;box-shadow:0 16px 48px rgba(16,33,52,.18);overflow:hidden;isolation:isolate}.pub-hero-overlay{position:absolute;inset:0;background:linear-gradient(135deg,rgba(26,58,92,.55),rgba(74,144,226,.45));z-index:1;pointer-events:none}.pub-hero-inner{position:relative;z-index:2;max-width:920px;margin:0 auto}.pub-hero h1{font-size:clamp(1.7rem,3vw,2.4rem);line-height:1.2;margin:0 0 18px;color:#fff;letter-spacing:-.01em;text-shadow:0 2px 12px rgba(0,0,0,.25);white-space:nowrap}.pub-hero-sub{font-size:1.1rem;line-height:1.7;color:rgba(255,255,255,.92);margin:0 0 30px;text-shadow:0 1px 6px rgba(0,0,0,.2)}.pub-hero-cta{display:flex;gap:16px;justify-content:center;align-items:center;flex-wrap:wrap}.pub-text-link{color:rgba(255,255,255,.95);text-decoration:none;font-weight:500;font-size:.92rem;transition:color .15s ease}.pub-text-link:hover{color:#fff}.btn-lg{padding:12px 28px;font-size:1rem;border-radius:12px}.pub-page-hero{padding:96px 32px 88px;text-align:center;color:#fff;min-height:420px;display:grid;place-content:center;border-radius:24px;margin:20px max(16px,calc((100% - 1280px) / 2)) 0;box-shadow:0 16px 48px rgba(16,33,52,.18);overflow:hidden;position:relative;isolation:isolate}.pub-page-hero>h1,.pub-page-hero>p{position:relative;z-index:2}.pub-page-hero h1{font-size:2.4rem;margin:0 0 14px;color:#fff;letter-spacing:-.01em;text-shadow:0 2px 12px rgba(0,0,0,.25)}.pub-page-hero p{margin:0;color:rgba(255,255,255,.92);font-size:1.1rem;text-shadow:0 1px 6px rgba(0,0,0,.2)}.pub-section{max-width:1080px;margin:0 auto;padding:64px 32px}.pub-section[id]{scroll-margin-top:100px}.pub-toc{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:0 auto 40px}.pub-toc a{padding:8px 16px;border-radius:999px;background:rgba(255,255,255,.7);border:1px solid var(--line);color:var(--text);text-decoration:none;font-size:.88rem;font-weight:500;transition:background .15s ease,border-color .15s ease,color .15s ease;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.pub-toc a:hover{background:rgba(74,144,226,.1);border-color:rgba(74,144,226,.3);color:var(--brand)}.pub-section-gray{background:linear-gradient(180deg,rgba(255,255,255,.55),rgba(255,255,255,.35))}.pub-section-blue,.pub-section-gray{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid rgba(255,255,255,.6);border-bottom:1px solid rgba(255,255,255,.6);max-width:100%;padding:64px max(32px,calc((100% - 1080px) / 2))}.pub-section-blue{background:linear-gradient(180deg,rgba(240,245,255,.7),rgba(255,255,255,.4))}.pub-h2{font-size:1.65rem;margin:0 0 36px;width:100%;color:var(--text);letter-spacing:-.01em}.pub-center,.pub-h2{text-align:center}.pub-section-intro{text-align:center;color:#666;font-size:1.02rem;line-height:1.7;max-width:600px;margin:0 auto 32px}.pub-cards-3{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:20px;gap:20px}.pub-cards-4{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:20px;gap:20px}.pub-card{background:rgba(255,255,255,.85);border:1px solid var(--line);border-radius:16px;padding:26px;box-shadow:0 8px 24px rgba(16,33,52,.08);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:flex;flex-direction:column;transition:transform .2s ease,box-shadow .2s ease}.pub-card:hover{transform:translateY(-2px);box-shadow:0 12px 32px rgba(16,33,52,.12)}.pub-card h3{margin:0 0 10px;font-size:1.05rem;color:var(--text)}.pub-card p{margin:0;color:#666;font-size:.9rem;line-height:1.7}.pub-card-link{display:inline-block;margin-top:auto;padding-top:14px;font-size:.88rem;font-weight:600;color:var(--brand);text-decoration:none;align-self:flex-start}.pub-card-link:hover{text-decoration:underline}.pub-steps-row{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:24px;gap:24px;text-align:center}.pub-steps-row.pub-steps-5{grid-template-columns:repeat(5,1fr)}.pub-step-item{padding:26px 18px;background:rgba(255,255,255,.85);border:1px solid var(--line);border-radius:16px;box-shadow:0 8px 24px rgba(16,33,52,.08);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.pub-step-num{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:var(--brand);color:#fff;font-weight:700;font-size:1.1rem;margin-bottom:14px}.pub-step-item h3{margin:0 0 6px;font-size:1rem}.pub-step-item p{margin:0;color:#666;font-size:.88rem;line-height:1.6}.pub-feature-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:40px;gap:40px;align-items:center;margin-bottom:48px}.pub-feature-row:last-child{margin-bottom:0}.pub-feature-reverse{direction:rtl}.pub-feature-reverse>*{direction:ltr}.pub-feature-text h3{margin:0 0 10px;font-size:1.15rem}.pub-feature-text p{margin:0;color:#666;font-size:.92rem;line-height:1.7}.pub-feature-visual{border-radius:16px;overflow:hidden}.lightbox-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.8);display:grid;place-items:center;padding:24px;z-index:200;cursor:zoom-out}.lightbox-img{max-width:90vw;max-height:90vh;border-radius:8px;box-shadow:0 8px 32px rgba(0,0,0,.4)}.pub-feature-visual img{width:100%;height:auto;display:block;border-radius:16px;border:1px solid var(--line);box-shadow:0 8px 24px rgba(16,33,52,.08)}.pub-feature-placeholder{background:rgba(240,245,255,.7);border:2px dashed var(--line);border-radius:16px;min-height:200px;display:grid;place-items:center;color:var(--muted);font-size:.82rem}.pub-step-badge{display:inline-block;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--brand);background:rgba(74,144,226,.1);border-radius:4px;padding:3px 8px;margin-bottom:10px}.pub-audience-row{display:grid;grid-template-columns:300px 1fr;grid-gap:32px;gap:32px;align-items:stretch;max-width:920px;margin:0 auto}.pub-audience-row-reverse{grid-template-columns:1fr 300px}.pub-audience-row-reverse .pub-audience-img{order:2}.pub-audience-row-reverse .pub-audience-content{order:1}.pub-audience-img{border-radius:16px;min-height:280px;box-shadow:0 8px 24px rgba(16,33,52,.08);position:relative;overflow:hidden}.pub-audience-content{display:flex;flex-direction:column}.pub-audience-block{max-width:720px;margin:0 auto}.pub-audience-block h2{font-size:1.5rem;margin:0 0 16px;color:var(--brand)}.pub-audience-scenario{background:rgba(255,255,255,.7);border-left:3px solid var(--brand);padding:16px 20px;border-radius:0 16px 16px 0;margin-bottom:20px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.pub-audience-scenario p{margin:0;color:#666;line-height:1.7;font-size:.92rem}.pub-audience-solution h4{margin:0 0 8px;font-size:.95rem}.pub-audience-solution p{margin:0 0 20px;color:#666;line-height:1.7;font-size:.92rem}.pub-features-list{display:grid;grid-gap:24px;gap:24px;max-width:720px;margin:0 auto}.pub-feature-item{display:flex;gap:20px;align-items:flex-start}.pub-feature-num{display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:36px;border-radius:50%;background:var(--brand);color:#fff;font-weight:700;font-size:.88rem;flex-shrink:0;margin-top:2px}.pub-feature-item h3{margin:0 0 6px;font-size:1.05rem}.pub-feature-item p{margin:0;color:#666;font-size:.9rem;line-height:1.7}.pub-features-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:20px;gap:20px}.pub-feature-card{background:rgba(255,255,255,.85);border:1px solid var(--line);border-radius:16px;padding:26px;box-shadow:0 8px 24px rgba(16,33,52,.08);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:transform .2s ease,box-shadow .2s ease}.pub-feature-card:hover{transform:translateY(-2px);box-shadow:0 12px 32px rgba(16,33,52,.12)}.pub-feature-card-icon{font-size:1.8rem;margin-bottom:12px}.pub-feature-card h3{margin:0 0 8px;font-size:1.02rem;color:var(--text)}.pub-feature-card p{margin:0;color:#666;font-size:.9rem;line-height:1.7}.pub-pricing-grid-3{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:24px;gap:24px;max-width:960px;margin:0 auto}.pub-pricing-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:24px;gap:24px;max-width:800px;margin:0 auto}.pub-pricing-card{background:rgba(255,255,255,.88);border:1px solid var(--line);border-radius:18px;padding:30px;display:flex;flex-direction:column;box-shadow:0 8px 24px rgba(16,33,52,.08);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);position:relative;transition:transform .2s ease,box-shadow .2s ease}.pub-pricing-card:hover{transform:translateY(-2px);box-shadow:0 16px 40px rgba(16,33,52,.12)}.pub-pricing-featured{border-color:var(--brand);box-shadow:0 12px 36px rgba(74,144,226,.2)}.pub-pricing-badge{position:absolute;top:-10px;right:16px;background:var(--accent);color:#fff;font-size:.72rem;font-weight:700;padding:3px 10px;border-radius:4px}.pub-pricing-header h3{margin:0 0 8px;font-size:1.15rem}.pub-pricing-price{font-size:2rem;font-weight:700;color:var(--text);margin-bottom:20px}.pub-pricing-period{display:block;font-size:.82rem;color:#666;margin-bottom:16px}.pub-pricing-desc{font-size:.88rem;color:#666;line-height:1.6;margin:0 0 16px}.pub-pricing-price small{display:block;font-size:.82rem;font-weight:400;color:#666}.pub-pricing-tbd{font-size:1.2rem;color:var(--muted)}.pub-pricing-features{list-style:none;padding:0;margin:0 0 24px;display:grid;grid-gap:10px;gap:10px}.pub-pricing-features li{font-size:.9rem;color:var(--text);padding-left:22px;position:relative;line-height:1.5}.pub-pricing-features li:before{content:"✓";position:absolute;left:0;color:var(--success);font-weight:700}.pub-pricing-excluded{color:var(--muted)!important;text-decoration:line-through}.pub-pricing-excluded:before{content:"✗"!important;color:var(--muted)!important}.pub-pricing-waitlist{margin-top:auto;display:grid;grid-gap:8px;gap:8px}.pub-pricing-waitlist p{margin:0;font-size:.82rem;color:#666}.pub-pricing-email{width:100%;padding:9px 12px;border:1px solid var(--line);border-radius:10px;font:inherit;font-size:.9rem;background:rgba(255,255,255,.7)}.pub-pricing-faq{max-width:640px;margin:0 auto}.pub-faq-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:32px;gap:32px}.pub-faq-section h2{margin:0 0 14px;font-size:1.1rem;color:var(--brand)}.pub-faq-item{border:1px solid var(--line);border-radius:12px;margin-bottom:10px;background:rgba(255,255,255,.85);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 4px 12px rgba(16,33,52,.05);transition:box-shadow .15s ease}.pub-faq-item:hover{box-shadow:0 6px 18px rgba(16,33,52,.08)}.pub-faq-item[open]{box-shadow:0 8px 24px rgba(16,33,52,.1)}.pub-faq-item summary{padding:12px 14px;cursor:pointer;font-weight:600;font-size:.9rem;list-style:none;display:flex;justify-content:space-between;align-items:center;color:var(--text)}.pub-faq-item summary:after{content:"BC";font-size:.65rem;color:var(--muted);transition:transform .15s ease;flex-shrink:0;margin-left:8px}.pub-faq-item[open] summary:after{transform:rotate(180deg)}.pub-faq-item p{padding:0 14px 14px;margin:0;color:#666;font-size:.88rem;line-height:1.7}.pub-contact-grid{display:grid;grid-template-columns:1fr 320px;grid-gap:40px;gap:40px;max-width:800px;margin:0 auto}.pub-contact-form{display:grid;grid-gap:14px;gap:14px}.pub-contact-info h3{margin:0 0 8px}.pub-contact-email{display:block;font-size:1.1rem;font-weight:600;color:var(--brand);text-decoration:none;margin-bottom:8px}.pub-contact-info p{margin:0;color:#666;font-size:.88rem;line-height:1.6}.pub-cta-block{background:linear-gradient(135deg,var(--brand) 0,var(--brand-2) 100%);text-align:center;padding:64px 32px;border-radius:24px;margin:56px max(16px,calc((100% - 1080px) / 2));box-shadow:0 16px 48px rgba(74,144,226,.25);position:relative;overflow:hidden}.pub-cta-block:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 20%,rgba(255,255,255,.15),transparent 60%),radial-gradient(circle at 80% 80%,rgba(255,107,0,.12),transparent 50%);pointer-events:none}.pub-cta-block>*{position:relative}.pub-cta-block h2{margin:0 0 12px;font-size:1.85rem;color:#fff;letter-spacing:-.01em}.pub-cta-block p{margin:0 0 28px;color:rgba(255,255,255,.88);font-size:1.05rem}.pub-cta-btn{background:#fff!important;color:var(--brand)!important;border:none!important;font-weight:700!important;padding:12px 30px;font-size:1rem;border-radius:999px!important;box-shadow:0 4px 16px rgba(0,0,0,.2);transition:transform .15s ease,box-shadow .15s ease}.pub-cta-btn:hover{background:#fff!important;transform:translateY(-1px);box-shadow:0 8px 24px rgba(0,0,0,.25)}.pub-footer{background:transparent;border-top:none;padding:40px 12px 24px;margin-top:auto}.pub-footer-inner{max-width:1320px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;grid-gap:40px;gap:40px;background:linear-gradient(120deg,#ffffff,#f0f6ff);border:1px solid var(--line);border-radius:18px;padding:36px 40px;box-shadow:0 12px 36px rgba(16,33,52,.12);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.pub-footer-logo{height:36px;width:auto;margin-bottom:12px}.pub-footer-col p{margin:0;color:var(--muted);font-size:.85rem;line-height:1.65;max-width:280px}.pub-footer-col h4{margin:0 0 12px;font-size:.85rem;color:var(--text);font-weight:600}.pub-footer-col a{display:block;color:var(--muted);text-decoration:none;font-size:.85rem;padding:4px 0;transition:color .15s ease}.pub-footer-col a:hover{color:var(--brand)}.pub-footer-bottom{max-width:1320px;margin:20px auto 0;padding:0;border-top:none;text-align:center;font-size:.8rem;color:var(--muted)}@media (max-width:768px){.pub-header{padding:10px 16px;margin:0;width:100%;max-width:none;border-radius:0;border-left:none;border-right:none;border-top:none;top:0}.pub-brand-logo{height:36px}.pub-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);flex-direction:column;padding:8px 16px 16px;box-shadow:0 8px 16px rgba(0,0,0,.08);z-index:100;border-radius:0 0 16px 16px}.pub-nav-open{display:flex}.pub-nav-link{padding:10px 14px;width:100%;border-radius:10px}.pub-auth{display:none}.pub-nav-auth-mobile{display:flex;flex-direction:column;gap:8px;padding-top:8px;border-top:1px solid var(--line);margin-top:4px}.pub-hamburger{display:flex;width:44px;height:44px;align-items:center;justify-content:center;background:transparent;border:1px solid transparent;cursor:pointer;padding:0;border-radius:10px;flex-shrink:0}.pub-hero{padding:56px 20px 48px;margin:12px 12px 0;border-radius:18px;min-height:280px}.pub-hero h1{font-size:1.65rem;white-space:normal}.pub-hero-sub{font-size:.95rem}.pub-page-hero{padding:56px 20px 48px;margin:12px 12px 0;border-radius:18px;min-height:280px}.pub-page-hero h1{font-size:1.65rem}.pub-section,.pub-section-blue,.pub-section-gray{padding:40px 16px}.pub-h2{font-size:1.3rem;margin-bottom:24px}.pub-cards-3,.pub-cards-4,.pub-features-grid{grid-template-columns:1fr}.pub-steps-row,.pub-steps-row.pub-steps-5{grid-template-columns:repeat(2,1fr);gap:16px}.pub-feature-row{grid-template-columns:1fr;gap:20px}.pub-feature-reverse{direction:ltr}.pub-audience-row,.pub-audience-row-reverse,.pub-contact-grid,.pub-faq-grid,.pub-pricing-grid,.pub-pricing-grid-3{grid-template-columns:1fr}.pub-audience-row-reverse .pub-audience-content,.pub-audience-row-reverse .pub-audience-img{order:0}.pub-audience-img{min-height:200px}.pub-footer{padding:24px 12px 16px}.pub-footer-inner{grid-template-columns:1fr 1fr;gap:24px;padding:24px 20px;border-radius:16px}.pub-cta-block{padding:48px 20px;margin:32px 12px;border-radius:18px}.pub-cta-block h2{font-size:1.4rem}}.pub-blog-list{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:24px;gap:24px;max-width:1080px;margin:0 auto}@media (max-width:1024px){.pub-blog-list{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.pub-blog-list{grid-template-columns:1fr}}.pub-blog-card{background:rgba(255,255,255,.85);border:1px solid var(--line);border-radius:16px;overflow:hidden;text-decoration:none;color:inherit;display:flex;flex-direction:column;box-shadow:0 8px 24px rgba(16,33,52,.08);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:transform .2s ease,box-shadow .2s ease}.pub-blog-card:hover{transform:translateY(-2px);box-shadow:0 12px 32px rgba(16,33,52,.12)}.pub-blog-card-image{width:100%;height:180px;background-size:cover;background-position:50%;background-color:rgba(74,144,226,.08)}.pub-blog-card-body{padding:22px;display:flex;flex-direction:column;gap:8px;flex:1 1}.pub-blog-card-meta{font-size:.8rem;color:var(--muted)}.pub-blog-card-title{margin:4px 0 0;font-size:1.1rem;line-height:1.35;color:var(--text)}.pub-blog-card-desc{margin:0;color:var(--muted);font-size:.9rem;line-height:1.65;flex:1 1}.pub-blog-article-tags,.pub-blog-card-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.pub-blog-tag{display:inline-block;padding:3px 10px;border-radius:999px;background:rgba(74,144,226,.1);color:var(--brand);font-size:.75rem;font-weight:500}.pub-blog-article{max-width:880px;margin:40px auto 0;padding:0 32px}.pub-blog-back{display:inline-block;margin-bottom:20px;color:var(--muted);text-decoration:none;font-size:.9rem}.pub-blog-back:hover{color:var(--brand)}.pub-blog-article-header h1{font-size:2.2rem;line-height:1.2;margin:0 0 14px;letter-spacing:-.01em;color:var(--text)}.pub-blog-article-lede{font-size:1.15rem;line-height:1.6;color:var(--muted);margin:0 0 16px}.pub-blog-article-meta{font-size:.88rem;color:var(--muted);margin-bottom:28px}.pub-blog-article-hero{width:100%;height:420px;border-radius:16px;background-size:cover;background-position:50%;margin-bottom:32px;box-shadow:0 8px 24px rgba(16,33,52,.1)}.pub-blog-article-body{font-size:1.02rem;line-height:1.75;color:var(--text)}.pub-blog-article-body h2{font-size:1.5rem;line-height:1.3;margin:36px 0 14px;letter-spacing:-.01em;color:var(--text)}.pub-blog-article-body h3{font-size:1.2rem;line-height:1.4;margin:28px 0 10px;color:var(--text)}.pub-blog-article-body p{margin:0 0 18px}.pub-blog-article-body ol,.pub-blog-article-body ul{margin:0 0 18px;padding-left:24px}.pub-blog-article-body li{margin:8px 0}.pub-blog-article-body a{color:var(--brand);text-decoration:underline;text-underline-offset:2px}.pub-blog-article-body a:hover{color:var(--brand-2)}.pub-blog-article-body strong{color:var(--text)}.pub-blog-article-body blockquote{border-left:3px solid var(--brand);padding:8px 16px;margin:24px 0;background:rgba(74,144,226,.05);border-radius:0 8px 8px 0;color:var(--text);font-style:italic}.pub-blog-article-body code{background:rgba(74,144,226,.08);padding:1px 6px;border-radius:4px;font-size:.92em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.pub-blog-article-body pre{background:rgba(16,33,52,.04);border:1px solid var(--line);border-radius:8px;padding:14px 16px;overflow-x:auto;margin:18px 0}.pub-blog-article-body pre code{background:transparent;padding:0}.pub-blog-article-body img{max-width:100%;height:auto;border-radius:12px;margin:20px 0}.pub-blog-article-body hr{border:none;border-top:1px solid var(--line);margin:32px 0}@media (max-width:768px){.pub-blog-article{padding:0 20px;margin-top:24px}.pub-blog-article-header h1{font-size:1.6rem}.pub-blog-article-lede{font-size:1rem}.pub-blog-article-hero{height:220px}.pub-blog-article-body{font-size:.97rem}.pub-blog-article-body h2{font-size:1.25rem;margin-top:28px}.pub-blog-article-body h3{font-size:1.1rem}}.upgrade-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:20px;gap:20px;max-width:720px;margin:0 auto}.upgrade-card{display:flex;flex-direction:column;position:relative}.upgrade-current{border-color:var(--brand);box-shadow:0 0 0 1px var(--brand)}.upgrade-badge{position:absolute;top:-10px;right:14px;background:var(--accent);color:#fff;font-size:.72rem;font-weight:700;padding:3px 10px;border-radius:4px}.upgrade-price{font-size:2rem;font-weight:700;color:var(--text);margin-bottom:4px}.upgrade-features{list-style:none;padding:0;margin:0 0 20px;display:grid;grid-gap:8px;gap:8px;flex:1 1}.upgrade-features li{font-size:.88rem;color:var(--text);padding-left:20px;position:relative;line-height:1.4}.upgrade-features li:before{content:"\2713";position:absolute;left:0;color:var(--success);font-weight:700}@media (max-width:768px){.upgrade-grid{grid-template-columns:1fr}}.trial-expired-overlay{position:fixed;inset:0;background:rgba(10,20,36,.85);display:grid;place-items:center;padding:24px;z-index:200}.trial-expired-card{background:#fff;border-radius:16px;padding:40px 32px;max-width:440px;width:100%;text-align:center;box-shadow:0 20px 60px rgba(0,0,0,.3)}.trial-expired-card h2{font-size:1.4rem}.hamburger-btn{display:none;width:44px;height:44px;padding:0;background:transparent;border:1px solid transparent;border-radius:8px;cursor:pointer;align-items:center;justify-content:center;flex-shrink:0}.hamburger-icon{position:relative;transition:background .2s ease}.hamburger-icon,.hamburger-icon:after,.hamburger-icon:before{display:block;width:22px;height:2px;background:var(--text);border-radius:1px}.hamburger-icon:after,.hamburger-icon:before{content:"";position:absolute;left:0;transition:transform .2s ease}.hamburger-icon:before{top:-7px}.hamburger-icon:after{top:7px}.hamburger-icon.open{background:transparent}.hamburger-icon.open:before{top:0;transform:rotate(45deg)}.hamburger-icon.open:after{top:0;transform:rotate(-45deg)}@media (max-width:768px){.app-shell{padding:10px;max-width:100%}.page{margin-top:12px;padding-bottom:50px}.card{padding:12px}.card,.sub-card{overflow-x:auto}.simple-table{min-width:0;font-size:.82rem}.simple-table td,.simple-table th{padding:4px}.simple-table input,.simple-table select{min-width:0;max-width:100%;padding:6px 4px;font-size:.82rem}.simple-table input[type=time]{width:70px}.collapsible-actions{justify-content:flex-start}.hide-mobile{display:none}.material-edit-row{grid-template-columns:1fr auto!important}.material-edit-row input[placeholder=eenheid],.material-edit-row input[type=number]{width:100%}.responsive-two-col{grid-template-columns:1fr!important}.timeslot-transition-row td{font-size:.76rem;padding:3px 4px}input,select,textarea{font-size:16px;max-width:100%}.nav-link{min-height:44px;display:flex;align-items:center}.btn-sm{min-height:36px}.hamburger-btn{display:flex}.app-header{padding:10px 14px;gap:8px}.brand-logo{height:48px}:root{--header-sticky-height:68px}.top-nav{display:none;width:100%;flex-direction:column;gap:4px}.top-nav.nav-open{display:flex}.top-nav .nav-link{width:100%;padding:10px 12px;border-radius:10px;text-align:left}.dashboard-start-link strong{font-size:.85rem}.simple-list li{flex-direction:column;align-items:flex-start;gap:6px}.simple-list li .inline-actions{width:100%}.block-header-row,.editor-row,.inline-fields,.split-grid{grid-template-columns:1fr}.schedule-builder,.station-capacity{grid-template-columns:1fr 1fr}.start-mode-grid{grid-template-columns:1fr}.start-mode-option{min-height:auto}.planner-header,.slot-header,.wizard-header{flex-wrap:wrap;gap:8px}.planner-header>div,.wizard-header>div{min-width:0}.progress-bar{padding-bottom:4px}.progress-bar,.progress-bar-sticky{overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch}.progress-step{white-space:nowrap;flex-shrink:0}.stepper-bar{padding:8px 10px}.export-checkbox-grid{grid-template-columns:repeat(2,1fr)}.planner-layout{grid-template-columns:1fr}.planner-grid-header{flex-wrap:wrap}.planner-grid td:first-child{position:-webkit-sticky;position:sticky;left:0;z-index:3;background:#fff}.planner-grid thead tr:first-child th:first-child{position:-webkit-sticky;position:sticky;left:0;z-index:4;background:#fff}.planner-grid-wrap{position:relative}.planner-grid-wrap:after{content:"";position:absolute;top:0;right:0;bottom:0;width:24px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.7));pointer-events:none;border-radius:0 12px 12px 0}.app-footer{position:static;transform:none;width:100%;max-width:none;border-radius:12px;margin-top:14px;font-size:.76rem;padding:8px 12px}.auth-layout{padding:16px}.auth-logo{height:72px!important}.help-modal-backdrop{padding:10px}.help-sections-grid{grid-template-columns:1fr}.settings-column{grid-auto-rows:auto!important}.activity-row,.import-config-grid,.json-grid{grid-template-columns:1fr}}@media (max-width:480px){.export-checkbox-grid,.schedule-builder{grid-template-columns:1fr}}.scoreboard-header{padding:clamp(10px,1.8vh,20px) clamp(16px,3vw,40px);display:flex;justify-content:space-between;align-items:center;gap:clamp(12px,2vw,24px);border-bottom:2px solid rgba(255,255,255,.08);flex-wrap:wrap}.scoreboard-body{overflow:auto;padding:0 clamp(16px,3vw,40px) clamp(6px,1vh,14px)}.scoreboard-ticker{background:rgba(255,255,255,.05);padding:clamp(18px,3vh,42px) clamp(16px,3vw,40px);border-top:2px solid rgba(255,255,255,.08);overflow:hidden;white-space:nowrap}.scoreboard-table td,.scoreboard-table th{padding:clamp(4px,.7vh,10px) clamp(8px,1vw,14px)}@media (max-width:560px){.scoreboard-table .col-goals{display:none}.scoreboard-table .col-played{width:44px!important}}.scoreboard-ticker-viewport{overflow:hidden;flex:1 1;min-width:0;-webkit-mask-image:linear-gradient(90deg,transparent,#000 40px,#000 calc(100% - 40px),transparent);mask-image:linear-gradient(90deg,transparent,#000 40px,#000 calc(100% - 40px),transparent)}.scoreboard-ticker-track{display:flex;align-items:center;gap:28px;width:max-content;animation:scoreboard-ticker-scroll 40s linear infinite}.scoreboard-ticker-track>span+span:before{content:"•";display:inline-block;margin-right:28px;color:#ff6b00;font-weight:700}@keyframes scoreboard-ticker-scroll{0%{transform:translateX(0)}to{transform:translateX(-50%)}}@media (max-width:480px){.scoreboard-ticker{white-space:normal}.scoreboard-ticker-viewport{-webkit-mask-image:none;mask-image:none}.scoreboard-ticker-track{animation:none;flex-wrap:wrap;width:auto;gap:10px}}.chat-panel{display:flex;flex-direction:column;height:500px;max-height:70vh;border:1px solid var(--line,#d4dce8);border-radius:12px;overflow:hidden;background:var(--card,#fff);margin-top:12px}.chat-panel-header{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid var(--line,#d4dce8);background:rgba(255,255,255,.9);flex-shrink:0}.chat-back-btn{background:none;border:none;cursor:pointer;font-size:1rem;padding:4px 8px;border-radius:6px;position:relative}.chat-back-btn:hover{background:rgba(0,0,0,.05)}.chat-unread-dot{position:absolute;top:2px;right:2px;width:8px;height:8px;border-radius:50%;background:var(--error,#dc2626)}.chat-messages{flex:1 1;overflow-y:auto;padding:12px 14px;display:flex;flex-direction:column;gap:2px;-webkit-overflow-scrolling:touch}.chat-messages-empty{flex:1 1;display:grid;place-items:center;padding:40px 20px}.chat-date-separator{text-align:center;margin:12px 0 8px}.chat-date-separator span{background:rgba(0,0,0,.06);padding:3px 12px;border-radius:999px;font-size:.72rem;color:var(--muted,#6b7280)}.chat-bubble-row{display:flex;margin-bottom:2px}.chat-bubble-own{justify-content:flex-end}.chat-bubble-other{justify-content:flex-start}.chat-bubble{max-width:75%;padding:8px 12px;border-radius:12px;font-size:.88rem;line-height:1.45;word-break:break-word;white-space:pre-wrap}.chat-bubble-blue{background:var(--brand,#4A90E2);color:#fff;border-bottom-right-radius:4px}.chat-bubble-grey{background:rgba(0,0,0,.06);color:var(--text,#333);border-bottom-left-radius:4px}.chat-bubble-name{font-size:.76rem;font-weight:600;color:var(--accent,#ff6b00);margin-bottom:2px}.chat-bubble-blue .chat-bubble-name{color:rgba(255,255,255,.8)}.chat-bubble-meta{display:flex;justify-content:flex-end;margin-top:2px}.chat-msg-time{font-size:.68rem;color:var(--muted,#6b7280);opacity:.7}.chat-bubble-blue .chat-msg-time{color:rgba(255,255,255,.6)}.chat-broadcast-msg{background:rgba(255,107,0,.08);border:1px solid rgba(255,107,0,.2);border-radius:10px;padding:8px 12px;margin:6px 0;font-size:.86rem;display:flex;align-items:flex-start;gap:8px}.chat-broadcast-msg-content{flex:1 1;line-height:1.4}.chat-input-bar{border-top:1px solid var(--line,#d4dce8);padding:8px 12px;background:rgba(255,255,255,.95);flex-shrink:0}.chat-broadcast-toggle{display:flex;align-items:center;gap:6px;font-size:.76rem;color:var(--muted,#6b7280);cursor:pointer;margin-bottom:6px}.chat-input-row{display:flex;gap:8px;align-items:flex-end}.chat-textarea{flex:1 1;resize:none;border:1px solid var(--line,#d4dce8);border-radius:20px;padding:8px 14px;font-size:.88rem;line-height:1.4;max-height:100px;font-family:inherit}.chat-textarea:focus{outline:none;border-color:var(--brand,#4A90E2)}.chat-send-btn{padding:8px 16px;border:none;border-radius:20px;background:var(--brand,#4A90E2);color:#fff;font-weight:600;font-size:.86rem;cursor:pointer;flex-shrink:0}.chat-send-btn:disabled{opacity:.4;cursor:default}.chat-emoji-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;border-radius:18px;background:transparent;color:var(--muted);cursor:pointer;flex-shrink:0;padding:0}.chat-emoji-btn:hover{color:var(--text);background:rgba(0,0,0,.05)}.chat-emoji-btn:disabled{opacity:.4;cursor:default}.chat-emoji-dropdown{position:absolute;bottom:44px;left:0;z-index:100;border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,.15);overflow:hidden}.chat-channel-list{flex:1 1;overflow-y:auto;-webkit-overflow-scrolling:touch}.chat-channel-item{display:flex;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:12px 14px;border:none;border-bottom:1px solid var(--line,#d4dce8);background:none;cursor:pointer;text-align:left;font-size:.88rem}.chat-channel-item:hover{background:rgba(0,0,0,.02)}.chat-channel-active{background:rgba(74,144,226,.06)}.chat-channel-info{flex:1 1;min-width:0}.chat-channel-name{font-weight:600;font-size:.88rem}.chat-channel-preview{font-size:.78rem;color:var(--muted,#6b7280);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}.chat-channel-meta{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex-shrink:0}.chat-channel-time{font-size:.72rem;color:var(--muted,#6b7280)}.chat-unread-badge{background:var(--brand,#4A90E2);color:#fff;font-size:.7rem;font-weight:700;min-width:18px;height:18px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;padding:0 5px}.chat-channel-divider{padding:10px 14px 6px;font-size:.74rem;font-weight:600;color:var(--muted,#6b7280);text-transform:uppercase;letter-spacing:.04em}.chat-broadcast-banner{display:flex;align-items:center;gap:10px;padding:10px 14px;background:rgba(255,107,0,.1);border:1px solid rgba(255,107,0,.25);border-radius:10px;font-size:.86rem;margin-bottom:10px}.chat-tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--error,#dc2626);color:#fff;font-size:.68rem;font-weight:700;margin-left:6px;vertical-align:middle}.sv-tabs{display:flex;gap:4px;padding:0 2px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.sv-tabs::-webkit-scrollbar{display:none}.sv-tab{flex:1 0 auto;padding:7px 10px;font-size:.82rem;font-weight:500;border:1px solid var(--line);border-radius:6px;background:transparent;color:var(--text);cursor:pointer;white-space:nowrap;text-align:center;transition:background .12s,color .12s}.sv-tab:hover{background:var(--bg-offset,#f0f2f5)}.sv-tab.is-active{background:var(--brand);color:#fff;border-color:var(--brand)}.sv-camera-btn{position:relative;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:18px;border:1px solid var(--line);background:transparent;color:var(--text);cursor:pointer;padding:0;flex-shrink:0}.sv-camera-btn:hover{background:var(--bg-offset,#f0f2f5)}.sv-camera-badge{position:absolute;top:-4px;right:-4px;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:var(--brand);color:#fff;font-size:.62rem;font-weight:700;display:flex;align-items:center;justify-content:center}.sv-score-name{font-size:.84rem;font-weight:600;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sv-score-btn{width:36px;height:36px;min-width:36px;border-radius:18px;font-size:1.1rem;padding:0;display:flex;align-items:center;justify-content:center}.sv-score-value{font-size:2rem;font-weight:700;min-width:36px;text-align:center}.chat-broadcast-open{font-size:.82rem;font-weight:600;color:var(--accent,#ff6b00);flex-shrink:0;white-space:nowrap}.push-permission-banner{display:flex;align-items:center;gap:10px;padding:10px 14px;background:rgba(74,144,226,.08);border:1px solid rgba(74,144,226,.2);border-radius:10px;font-size:.84rem;margin-bottom:8px;flex-wrap:wrap}.sportdag-tabs{display:flex;gap:0;border-top:1px solid var(--line,#d4dce8);margin:14px -14px -14px;overflow-x:auto;-webkit-overflow-scrolling:touch}.sportdag-tab{flex:1 1;padding:10px 16px;background:none;font-size:.86rem;font-weight:500;color:var(--muted,#6b7280);cursor:pointer;white-space:nowrap;border:none;border-bottom:2px solid transparent;transition:color .15s,border-color .15s}.sportdag-tab:hover{color:var(--text,#333)}.sportdag-tab-active{color:var(--brand,#4A90E2);border-bottom-color:var(--brand,#4A90E2);font-weight:600}.match-grid-wrap{overflow:auto;border-radius:10px;border:1px solid var(--line,#d4dce8);background:rgba(255,255,255,.6);-webkit-overflow-scrolling:touch}.match-grid{width:100%;border-collapse:collapse;font-size:.84rem;min-width:600px}.match-grid td,.match-grid th{border:1px solid var(--line,#d4dce8);padding:6px 8px;vertical-align:top}.match-grid thead th{background:rgba(255,255,255,.92);position:-webkit-sticky;position:sticky;top:0;z-index:3;font-weight:600;font-size:.8rem;text-align:center;white-space:nowrap}.match-grid-station-col{z-index:5!important;background:rgba(255,255,255,.96)!important;text-align:left!important}.match-grid-station-cell,.match-grid-station-col{min-width:140px;position:-webkit-sticky;position:sticky;left:0}.match-grid-station-cell{z-index:2;background:rgba(255,255,255,.96)}.match-grid-station-name{font-weight:600;font-size:.84rem}.match-grid-station-location{font-size:.74rem;color:var(--muted,#6b7280)}.match-grid-supervisor-col{min-width:100px;font-size:.78rem;text-align:center}.match-grid-supervisor-cell{font-size:.8rem;white-space:nowrap;text-align:center}.match-grid-break-col{min-width:50px;background:rgba(107,114,128,.06)!important;font-size:.76rem;color:var(--muted,#6b7280);text-align:center}.match-grid-transition-col{min-width:28px;max-width:28px;background:rgba(107,114,128,.04)!important;font-size:.7rem;color:var(--muted,#6b7280);text-align:center}.match-cell-break{background:rgba(107,114,128,.06)}.match-cell-transition{background:rgba(107,114,128,.04);min-width:28px;max-width:28px}.match-grid-round-col{cursor:pointer;min-width:100px;transition:background .15s ease}.match-grid-round-col:hover{background:rgba(74,144,226,.04)}.match-grid-round-active{background:rgba(74,144,226,.08)!important}.match-grid-round-label{font-weight:600}.match-grid-round-time{font-size:.74rem;color:var(--muted,#6b7280)}.match-grid-round-progress{font-size:.72rem;color:var(--muted,#6b7280);margin-top:2px}.match-grid-round-progress.all-done{color:var(--success,#16a34a)}.match-grid-location-row td{background:rgba(31,63,149,.06);font-weight:600;font-size:.78rem;color:var(--brand,#4A90E2);padding:4px 8px}.match-cell{cursor:pointer;text-align:center;transition:background .15s ease;min-height:40px}.match-cell:hover{background:rgba(0,0,0,.03)}.match-cell-content{display:grid;grid-gap:2px;gap:2px}.match-cell-teams{font-size:.78rem;color:var(--muted,#6b7280)}.match-cell-vs{font-size:.7rem;color:var(--muted,#6b7280)}.match-score{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:700;font-size:.92rem}.match-score-empty{color:var(--muted,#6b7280);font-weight:400}.match-score-warning{color:var(--error,#dc2626);font-size:.88rem}.match-cell-completed{background:rgba(22,163,74,.05)}.match-cell-missing{background:rgba(220,38,38,.06)}.match-cell-cancelled{background:rgba(107,114,128,.05)}.match-cell-cancelled-text{text-decoration:line-through;color:var(--muted,#6b7280);font-size:.78rem}.match-cell-bye{background:rgba(107,114,128,.03);cursor:pointer}.match-cell-empty{cursor:default}.match-cell-highlight{outline:2px solid var(--brand,#4A90E2);outline-offset:-2px;background:rgba(74,144,226,.06)}.match-cell-dimmed{opacity:.3}.match-grid-cell-active{background:rgba(74,144,226,.06)}.match-round-card{border:1px solid var(--line,#d4dce8);border-radius:12px;overflow:hidden;background:rgba(255,255,255,.6)}.match-round-header{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--line,#d4dce8);background:rgba(255,255,255,.9)}.match-round-matches{display:grid;grid-gap:0;gap:0}.match-card-item{display:grid;grid-gap:4px;gap:4px;padding:10px 14px;border-bottom:1px solid var(--line,#d4dce8);cursor:pointer;transition:background .12s ease}.match-card-item:last-child{border-bottom:none}.match-card-item:hover{background:rgba(0,0,0,.02)}.match-card-station{font-size:.78rem;font-weight:600;color:var(--brand,#4A90E2)}.match-card-score-row{display:flex;align-items:center;gap:6px;font-size:.88rem}.match-card-vs{color:var(--muted,#6b7280);font-size:.76rem}.match-card-completed{background:rgba(22,163,74,.04)}.match-card-missing{background:rgba(220,38,38,.04)}.match-card-cancelled{background:rgba(107,114,128,.04)}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));grid-gap:8px;gap:8px}.photo-card{position:relative;aspect-ratio:4/3;border-radius:8px;overflow:hidden;cursor:pointer;background:#f0f0f0}.photo-card img{width:100%;height:100%;object-fit:cover;display:block}.photo-card-overlay{position:absolute;bottom:0;left:0;right:0;padding:6px 8px;background:linear-gradient(transparent,rgba(0,0,0,.65));color:#fff}.photo-card-pending{outline:2px dashed var(--accent);outline-offset:-2px}.photo-pending-badge{position:absolute;top:6px;left:6px;padding:2px 8px;border-radius:4px;background:var(--accent);color:#fff;font-size:.65rem;font-weight:700;text-transform:uppercase;z-index:2}.photo-card-actions{position:absolute;top:4px;right:4px;display:flex;gap:4px;opacity:0;transition:opacity .15s}.photo-card:hover .photo-card-actions{opacity:1}.photo-approve-btn,.photo-delete-btn,.photo-reject-btn{width:24px;height:24px;border-radius:12px;border:none;color:#fff;font-size:.82rem;cursor:pointer;display:flex;align-items:center;justify-content:center}.photo-approve-btn{background:var(--success,#16a34a)}.photo-approve-btn:hover{background:#15803d}.photo-reject-btn{background:var(--accent)}.photo-reject-btn:hover{background:var(--warn)}.photo-delete-btn{background:rgba(0,0,0,.5)}.photo-delete-btn:hover{background:rgba(0,0,0,.7)}.photo-lightbox{position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.85);display:grid;place-items:center;padding:16px}.photo-lightbox-content{position:relative;max-width:90vw;max-height:90vh;background:#fff;border-radius:12px;overflow:hidden}.photo-lightbox-content img{display:block;max-width:90vw;max-height:75vh;object-fit:contain}.photo-nav-btn{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border-radius:20px;border:none;background:rgba(0,0,0,.4);color:#fff;font-size:1.6rem;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1}.photo-nav-btn:hover{background:rgba(0,0,0,.6)}.photo-lightbox-close{position:absolute;top:8px;right:8px;width:32px;height:32px;border-radius:16px;border:none;background:rgba(0,0,0,.5);color:#fff;font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center}.media-filters{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:6px}.media-filter-label{font-size:.72rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.03em;flex:0 0 64px;width:64px;margin-right:4px}.media-filters select{flex:1 1;min-width:0;font-size:.78rem;padding:4px 6px;border:1px solid var(--line);border-radius:6px;background:#fff;white-space:nowrap}.ss-container{position:fixed;inset:0;z-index:10000;background:#000;overflow:hidden;cursor:pointer}.ss-bg{inset:-40px;background-size:cover;background-position:50%;filter:blur(30px) brightness(.4);z-index:0}.ss-bg,.ss-photo{position:absolute}.ss-photo{inset:0;display:flex;align-items:center;justify-content:center;z-index:1}.ss-photo img{max-width:100%;max-height:100%;object-fit:contain}.ss-fade{animation:ssFadeIn .8s ease both}@keyframes ssFadeIn{0%{opacity:0}to{opacity:1}}.ss-slide{animation:ssSlideIn .6s ease both}@keyframes ssSlideIn{0%{transform:translateX(100%);opacity:0}to{transform:translateX(0);opacity:1}}.ss-kenburns{animation:ssKenBurns 8s ease both}@keyframes ssKenBurns{0%{transform:scale(1);opacity:0}5%{opacity:1}to{transform:scale(1.15);opacity:1}}.ss-caption{position:absolute;bottom:48px;left:50%;transform:translateX(-50%);z-index:2;padding:16px 32px;background:rgba(0,0,0,.55);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:12px;color:#fff;font-size:1.4rem;display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center;max-width:80vw;transition:opacity .3s}.ss-caption strong{font-size:1.6rem}.ss-caption-hidden{opacity:0;pointer-events:none}.ss-toggle-btn{position:absolute;top:12px;right:12px;z-index:3;width:36px;height:36px;border-radius:18px;background:rgba(0,0,0,.4);border:none;color:#fff;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s}.ss-toggle-btn:hover,.ss-topbar{background:rgba(0,0,0,.6)}.ss-topbar{position:absolute;top:0;left:0;right:0;z-index:3;padding:10px 16px;display:flex;align-items:center;gap:10px;color:#fff;font-size:.85rem}.ss-select{font-size:.78rem;padding:4px 6px;border-radius:4px;border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.1);color:#fff}.ss-select option{background:#222;color:#fff}.ss-stop-btn{padding:4px 12px;border-radius:4px;border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.1);color:#fff;font-size:.82rem;cursor:pointer}.ss-stop-btn:hover{background:rgba(255,255,255,.2)}.cd-backdrop{position:fixed;inset:0;z-index:99999;background:rgba(0,0,0,0);display:grid;place-items:center;padding:16px;transition:background .15s}.cd-backdrop.cd-visible{background:rgba(0,0,0,.45)}.cd-panel{background:#fff;border-radius:14px;padding:24px;max-width:400px;width:100%;box-shadow:0 12px 40px rgba(0,0,0,.2);transform:scale(.95);opacity:0;transition:transform .15s ease,opacity .15s ease}.cd-panel.cd-visible{transform:scale(1);opacity:1}.cd-title{margin:0 0 8px;font-size:1.05rem}.cd-message{margin:0 0 20px;font-size:.9rem;color:var(--muted);line-height:1.5}.cd-actions{display:flex;justify-content:flex-end;gap:8px}.cd-btn{padding:8px 18px;border:none;border-radius:8px;font-size:.88rem;font-weight:600;cursor:pointer}.cd-btn-cancel{background:transparent;border:1px solid var(--line);color:var(--text)}.cd-btn-cancel:hover{background:var(--bg-offset,#f0f2f5)}.cd-btn-primary{background:var(--brand);color:#fff}.cd-btn-primary:hover{background:var(--brand-2)}.cd-btn-danger{background:var(--error,#dc2626);color:#fff}.cd-btn-danger:hover{background:#b91c1c}@page{size:landscape;margin:8mm}@media print{.app-footer,.app-header,.btn-ghost,.btn-primary,.btn-sm,.bye-popover,.help-modal-backdrop,.inline-actions,.match-round-card select,.planner-header,.planner-view-toggle,.print-hide,.top-nav,label:has(input[type=checkbox]){display:none!important}.app-shell{display:block}.page{padding:0!important;margin:0!important}.planner-page{padding:0!important;max-width:none!important}.card{box-shadow:none;border:none;-webkit-backdrop-filter:none;backdrop-filter:none;padding:0;margin:0}.match-grid-wrap{border:1px solid #999;overflow:visible;width:100%}.match-grid{min-width:0;width:100%;table-layout:fixed;font-size:.62rem}.match-grid td,.match-grid th{padding:2px 3px;border-color:#999;word-wrap:break-word;overflow-wrap:break-word}.match-grid-station-cell,.match-grid-station-col{position:static}.match-grid-supervisor-col{width:60px}.match-grid thead th{position:static;background:#f0f0f0!important}.match-cell-completed,.match-grid thead th{-webkit-print-color-adjust:exact;print-color-adjust:exact}.match-cell-completed{background:#e8f5e9!important}.match-cell-missing{background:#fce4ec!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.match-cell-dimmed,.match-cell-highlight{outline:none;opacity:1}.match-grid-round-active{background:#e3f2fd!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}}