:root{--accent:#087f77;--side:#142e3b;--ink:#203044;--muted:#687a8e;--bg:#f5f7fa;--panel:#fff;--line:#e5eaf1;--radius:15px;--font:system-ui,-apple-system,'Segoe UI',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.55 var(--font)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.6}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--accent);outline-offset:3px}a{color:var(--accent)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.layout{display:grid;grid-template-columns:242px minmax(0,1fr);min-height:100vh}.side{background:var(--side);color:#c4d3e2;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;min-height:0;padding:23px 13px 16px;overflow:auto}.logo{display:flex;gap:12px;align-items:center;padding:5px 10px 22px;color:#fff;text-decoration:none}.logo-mark{width:39px;height:39px;flex:none;border-radius:12px;background:var(--accent);display:grid;place-items:center;font-size:22px;color:white;font-weight:900}.logo strong{font-size:19px;letter-spacing:-.6px;line-height:1.1;display:block}.logo small{display:block;font-size:9px;letter-spacing:1.65px;color:#93b5c2;margin-top:5px;font-weight:800}.nav-label{font-size:10px;letter-spacing:1.5px;color:#89a1ba;padding:8px 12px}.nav{display:grid;gap:3px;align-content:start;overflow:auto;min-height:0}.nav-item{width:100%;display:flex;gap:11px;align-items:center;background:transparent;border:0;border-radius:9px;padding:10px 13px;color:inherit;text-align:left;font-weight:630;font-size:12.5px}.nav-item:hover,.nav-item.active{background:#ffffff15;color:#fff}.nav-item.active{box-shadow:inset 3px 0 var(--accent)}.nav-symbol{width:21px;font-size:18px;flex:none;text-align:center}.side-footer{margin-top:auto;padding:15px 10px 2px;border-top:1px solid #ffffff24;font-size:11px;color:#93b5c2}.side-footer a{color:#acd1ce;text-decoration:none}.light-sidebar .side{border-right:1px solid var(--line);color:var(--muted)}.light-sidebar .logo{color:var(--ink)}.light-sidebar .logo small,.light-sidebar .nav-label,.light-sidebar .side-footer{color:var(--muted)}.light-sidebar .nav-item:hover,.light-sidebar .nav-item.active{background:#eae6fb;color:var(--accent)}.light-sidebar .side-footer{border-top:1px solid var(--line)}.main{min-width:0}.top{display:flex;align-items:center;justify-content:space-between;background:var(--panel);padding:16px clamp(15px,3vw,36px);border-bottom:1px solid var(--line);gap:16px;min-height:76px}.top h1{font-size:18px;letter-spacing:-.4px;margin:3px 0 0}.crumb{font-size:11px;color:var(--muted);font-weight:750}.top-actions,.actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.mode-tag{border:1px solid #d1d0ed;border-radius:40px;background:#eeedff;color:#5950ad;padding:6px 11px;font-size:10px;letter-spacing:.7px;font-weight:900;white-space:nowrap}.btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;gap:5px;background:var(--panel);border:1px solid var(--line);border-radius:9px;padding:10px 13px;font-size:12px;font-weight:800;color:var(--ink);white-space:nowrap}.btn:hover{filter:brightness(.96);border-color:var(--accent)}.btn.primary{background:var(--accent);color:#fff;border-color:var(--accent)}.btn.quiet{background:color-mix(in srgb,var(--accent) 9%,white);color:var(--accent);border-color:color-mix(in srgb,var(--accent) 20%,white)}.btn.ghost{background:transparent;color:#ad4b59;border:0;padding:8px}.btn.topbuy{background:#0d9488;color:#fff;border-color:#0d9488}.content{max-width:1570px;margin:auto;padding:25px clamp(13px,2.5vw,34px) 50px}.notice{border:1px solid #d4d5f1;background:#f0efff;color:#515382;border-radius:11px;padding:11px 15px;margin-bottom:17px;font-size:12px}.notice strong{font-weight:900}.warning,.callout{padding:12px 15px;border-radius:10px;border:1px solid #eed9b5;background:#fff8eb;color:#7f6038;font-size:12px;margin:14px 0}.connect{padding:14px;font-size:12px;color:var(--muted)}.hero{background:linear-gradient(113deg,color-mix(in srgb,var(--side) 93%,#293d64),color-mix(in srgb,var(--accent) 62%,#23354e));border-radius:18px;padding:25px 28px;display:flex;align-items:center;justify-content:space-between;color:white;gap:20px;margin-bottom:19px}.hero-eyebrow{font-size:10px;letter-spacing:2px;color:#ccf2ea;font-weight:850}.hero h2{font-size:25px;line-height:1.25;letter-spacing:-.7px;max-width:700px;margin:10px 0}.hero p{color:#e2f2ee;font-size:12px;margin:0}.hero-symbol{font-size:65px;opacity:.55}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:17px 0}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:19px;min-width:0;box-shadow:0 4px 24px #132a4206}.card h3{margin:0 0 14px;font-size:15px}.stat-top{font-size:12px;font-weight:730;color:var(--muted);display:flex;justify-content:space-between}.stat-ico{background:color-mix(in srgb,var(--accent) 10%,white);color:var(--accent);border-radius:10px;padding:6px}.stat-number{font-size:28px;font-weight:870;margin:8px 0 4px;letter-spacing:-1px;overflow-wrap:anywhere}.stat small{color:var(--muted);font-size:10px}.section-title{margin:23px 0 14px;display:flex;gap:15px;align-items:center;justify-content:space-between}.section-title h2{font-size:22px;letter-spacing:-.7px;margin:0}.section-title p{margin:4px 0;color:var(--muted);font-size:12px}.path-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-bottom:17px}.path-card h3{margin:11px 0 6px}.path-card p{font-size:12px;color:var(--muted);min-height:36px;margin:0 0 15px}.path-head{display:flex;justify-content:space-between;align-items:center}.path-icon{display:inline-grid;place-items:center;width:34px;height:34px;background:color-mix(in srgb,var(--accent) 10%,white);color:var(--accent);border-radius:11px;font-size:19px}.mini-label{font-size:11px;color:var(--muted)}.split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px;margin:18px 0}.itemrow{padding:12px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:13px;font-size:12px}.itemrow:last-child{border:0}.itemrow b{font-weight:760}.itemrow small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.feature{font-size:12px;padding:7px 0;display:flex;gap:11px;color:var(--muted)}.feature span{color:var(--accent)}.filters{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:13px}.filters input,.filters select{min-width:170px;max-width:360px;border:1px solid var(--line);padding:9px 11px;border-radius:9px;background:var(--panel);color:var(--ink)}.filters input{flex:1}.filters small{color:var(--muted)}.tablewrap{max-width:100%;overflow:auto}.tablewrap table{border-collapse:collapse;width:100%;font-size:12px;text-align:left}.tablewrap th{font-size:10px;text-transform:uppercase;color:var(--muted);letter-spacing:.5px;font-weight:850;background:var(--bg)}.tablewrap th,.tablewrap td{border-bottom:1px solid var(--line);padding:12px;white-space:nowrap;vertical-align:middle}.tablewrap tbody tr:last-child td{border-bottom:0}.tablewrap td:first-child{font-weight:700}.cell-actions{display:flex;gap:6px;align-items:center}.cell-actions .btn{font-size:11px;padding:6px 8px}.empty{text-align:center;padding:30px}.badge{display:inline-flex;padding:4px 8px;border-radius:6px;font-size:10px;font-weight:800;background:#edf0f5;color:#667286}.badge.good{background:#e4f7ee;color:#137b58}.badge.amber{background:#fff0d9;color:#926113}.badge.red{background:#ffe9eb;color:#ab4352}.cal-controls{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}.cal-controls h3{margin:0}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.cal-weekday{text-align:center;font-size:11px;font-weight:800;color:var(--muted);padding:9px}.cal-cell{min-height:105px;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:8px;overflow:hidden}.cal-cell.dim{opacity:.5;background:var(--bg)}.cal-cell.today{border:2px solid var(--accent)}.cal-cell b{font-size:11px}.cal-event{display:block;border:0;border-radius:6px;background:color-mix(in srgb,var(--accent) 14%,white);color:var(--accent);max-width:100%;width:100%;font-size:10px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;text-align:left;margin:4px 0 0;padding:5px}.bars{padding:7px 0}.brow{display:grid;grid-template-columns:minmax(85px,1fr) minmax(70px,2fr) 55px;gap:11px;align-items:center;margin-bottom:15px;font-size:11px}.brow span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.brow b{text-align:right}.bartrack{height:9px;background:var(--bg);border-radius:10px;overflow:hidden}.barfill{height:100%;background:var(--accent);border-radius:10px}.seat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.seat{padding:15px 8px;background:color-mix(in srgb,var(--accent) 8%,white);border:1px dashed color-mix(in srgb,var(--accent) 50%,white);color:var(--accent);border-radius:12px;min-height:100px}.seat b,.seat small{display:block}.seat small{color:var(--muted);font-size:10px;margin-top:4px}.locked{text-align:center;padding:38px}.locked h3{font-size:21px}.locked p{max-width:600px;margin:14px auto;color:var(--muted)}.lock-icon{font-size:35px;border-radius:19px;background:color-mix(in srgb,var(--accent) 9%,white);color:var(--accent);width:72px;height:72px;display:grid;place-items:center;margin:auto}.formgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.formgrid label,.form-field{display:grid;gap:6px;font-weight:760;font-size:12px;color:var(--muted)}.formgrid input,.formgrid select,.formgrid textarea,.form-field input,.form-field select,.form-field textarea{width:100%;border:1px solid var(--line);background:var(--panel);border-radius:8px;padding:10px;color:var(--ink);min-width:0}.form-actions{grid-column:1/-1;display:flex;gap:8px;justify-content:flex-end;align-items:center;margin-top:14px}.quote-total{font-size:27px;color:var(--accent);font-weight:850;padding-top:18px}dialog{width:min(690px,calc(100% - 25px));max-height:90vh;border:0;border-radius:18px;box-shadow:0 26px 75px #101f3652;padding:0;color:var(--ink);background:var(--panel)}dialog::backdrop{background:#0c1b2e99}dialog .modal-head{display:flex;justify-content:space-between;align-items:center;padding:20px 22px;border-bottom:1px solid var(--line)}dialog h2{margin:0;font-size:19px}dialog .modal-body{padding:20px 22px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;overflow:auto;max-height:65vh}dialog .form-actions{padding-top:12px}.toast{position:fixed;bottom:20px;right:20px;max-width:min(450px,90vw);border-radius:12px;padding:14px 17px;color:white;background:#142b42;z-index:300;box-shadow:0 9px 35px #162c4140}.footer{text-align:center;color:var(--muted);font-size:11px;margin-top:30px}.night{--bg:#192734;--panel:#223343;--ink:#e8f0f3;--muted:#adbbc7;--line:#3e5260}.night .notice{color:#cad0ff;background:#2b3153;border-color:#4d5577}.night .btn.quiet{background:#2e4651;color:#bbd6d4}.night .cal-event{background:#314b54;color:#ccf8ee}.night .path-icon,.night .stat-ico{background:#31505b;color:#c0e9e0}.night .tablewrap th{background:#1b2a36}.night .warning,.night .callout{background:#4f4028;color:#f5d19f;border-color:#765b38}@media(max-width:1120px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.layout{grid-template-columns:210px minmax(0,1fr)}.path-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:800px){.layout{display:block}.side{height:auto;position:relative;padding:12px}.logo{padding:5px 10px}.side-footer,.nav-label{display:none}.nav{display:flex;gap:4px;overflow:auto;scrollbar-width:thin}.nav-item{white-space:nowrap;width:auto;padding:8px 10px;font-size:12px}.nav-symbol{display:none}.top{padding:14px;align-items:start}.top h1{font-size:15px}.content{padding:16px 13px 30px}.split{grid-template-columns:1fr}.hero{padding:19px}.hero h2{font-size:20px}.hero-symbol{display:none}.section-title{align-items:start;flex-wrap:wrap}.calendar-grid{gap:2px}.cal-cell{padding:4px;min-height:67px}.cal-event{padding:3px;font-size:8px}.cal-weekday{font-size:9px}}@media(max-width:480px){.stats{gap:8px}.stat{padding:12px}.stat-number{font-size:22px}.path-grid{grid-template-columns:1fr}.top-actions{justify-content:flex-end}.top-actions .btn{padding:7px;font-size:10px}.mode-tag{font-size:9px;padding:5px}.btn{white-space:normal}.formgrid,dialog .modal-body{grid-template-columns:1fr}.seat-grid{grid-template-columns:repeat(2,1fr)}.cal-cell{min-height:55px}.cal-cell small{font-size:8px}.calendar-grid{gap:1px}}
