*{box-sizing:border-box}:root{--bg: #080808;--surface: #121212;--surface-2: #1a1a1a;--surface-3: #242424;--border: #2d2d2d;--border-bright: #3b3b3b;--text: #f4f4f4;--muted: #8b8b8b;--dim: #555;--orange: #ff6a00;--amber: #ffa400;--orange-dim: rgba(255, 106, 0, .16);--success: #3bff7a;--success-dim: rgba(59, 255, 122, .14);--danger: #ff4d4d;--danger-dim: rgba(255, 77, 77, .14);--warn: #ffb24d;--warn-dim: rgba(255, 178, 77, .14);--font: "Sora", system-ui, sans-serif}html,body,#root{min-height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button:disabled{cursor:not-allowed;opacity:.45}.app-frame{min-height:100vh;display:grid;grid-template-columns:260px minmax(0,1fr);background:var(--bg)}.sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;justify-content:space-between;padding:24px 18px;background:#101010;border-right:1px solid var(--border)}.sidebar-logo{display:block;width:168px;height:auto}.sidebar-subtitle{margin-top:12px;color:var(--muted);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.12em}.side-nav{display:flex;flex-direction:column;gap:8px;margin-top:34px}.side-nav-item,.logout-button,.primary-button,.secondary-button,.danger-button,.icon-button{border:1px solid var(--border);border-radius:8px;min-height:40px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:700}.side-nav-item{justify-content:flex-start;width:100%;padding:0 12px;color:var(--muted);background:transparent}.side-nav-item.active{color:#090909;background:linear-gradient(135deg,var(--orange),var(--amber));border-color:transparent}.logout-button{color:var(--muted);background:var(--surface);padding:0 12px;overflow:hidden;text-overflow:ellipsis}.workspace{min-width:0;padding:28px}.topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:18px}.topbar h1,.login-panel h1{margin:2px 0 0;font-size:32px;line-height:1.1;letter-spacing:-.035em}.topbar p,.login-panel p{margin:6px 0 0;color:var(--muted);font-size:13px}.topbar-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.eyebrow{color:var(--amber);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.primary-button{min-width:128px;padding:0 16px;color:#080808;background:linear-gradient(135deg,var(--orange),var(--amber));border-color:transparent}.compact-button{min-width:auto;min-height:36px}.secondary-button{min-width:112px;padding:0 14px;color:var(--text);background:var(--surface-2)}.danger-button{width:100%;color:var(--danger);background:var(--danger-dim);border-color:#ff4d4d73}.icon-button{width:40px;color:var(--text);background:var(--surface-2)}.metrics-grid{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));gap:10px;margin-bottom:14px}.metric-card{min-height:86px;padding:14px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.metric-card strong{display:block;font-size:28px;line-height:1}.metric-card span{display:block;margin-top:8px;color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.editor-layout{display:grid;grid-template-columns:minmax(560px,1fr) 380px;gap:14px;align-items:start}.map-card,.panel{border:1px solid var(--border);border-radius:8px;background:var(--surface);overflow:hidden}.map-toolbar{min-height:48px;padding:0 14px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:12px;font-weight:700}.map-toolbar span{display:inline-flex;align-items:center;gap:7px}.status-pill{padding:4px 9px;border-radius:999px;color:var(--success);background:var(--success-dim);border:1px solid rgba(59,255,122,.3)}.status-pill.dirty{color:var(--warn);background:var(--warn-dim);border-color:#ffb24d59}.venue-map{position:relative;aspect-ratio:1.55 / 1;background:repeating-linear-gradient(45deg,#1a1a1a 0,#1a1a1a 6px,#131313 6px,#131313 12px);background-position:center;background-size:cover;touch-action:none;-webkit-user-select:none;user-select:none}.zone-box{position:absolute;border:1px dashed rgba(255,164,0,.58);border-radius:4px;background:#ffa4001f;color:#fff;cursor:move;display:flex;align-items:center;justify-content:center;overflow:hidden;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.9)}.zone-box.active{z-index:3;border:2px solid var(--amber);background:#ffa40057;box-shadow:0 0 0 1px #000000b3,0 0 28px #ffa4002e}.zone-box span{padding:4px;font-size:11px;font-weight:800;line-height:1.1}.resize-handle{position:absolute;width:18px;height:18px;border-radius:50%;border:2px solid #fff;background:var(--orange);cursor:nwse-resize;z-index:6}.resize-handle.tl{top:-9px;left:-9px}.resize-handle.br{right:-9px;bottom:-9px}.inspector{display:flex;flex-direction:column;gap:14px}.panel{padding:16px}.panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.panel-header.compact{margin-bottom:10px}.panel h2{margin:2px 0 0;font-size:18px;letter-spacing:-.02em}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.field{display:flex;flex-direction:column;gap:6px}.field:first-child,.field:nth-child(2){grid-column:1 / -1}.field span{color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.field input,.field select,.field textarea,.login-form input{width:100%;min-height:40px;padding:0 12px;border:1px solid var(--border);border-radius:8px;outline:none;background:var(--surface-2);color:var(--text)}.field select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 17px) 17px,calc(100% - 12px) 17px;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.field textarea{min-height:86px;padding:11px 12px;resize:vertical;line-height:1.35}.login-form input{min-height:50px;border-radius:10px;padding:0 16px;font-size:16px}.login-form input::placeholder{color:var(--dim)}.field input:focus,.field select:focus,.field textarea:focus,.login-form input:focus{border-color:var(--amber)}.button-row{grid-column:1 / -1;display:grid;grid-template-columns:1fr 1fr;gap:8px}.danger-button{grid-column:1 / -1}.zone-list{display:flex;flex-direction:column;gap:7px;max-height:420px;overflow:auto;padding-right:2px}.zone-list-item{width:100%;min-height:54px;padding:9px 11px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);color:var(--text);display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;text-align:left}.zone-list-item.active{border-color:var(--amber);background:var(--orange-dim)}.zone-list-item strong,.zone-list-item small{display:block}.zone-list-item strong{font-size:13px}.zone-list-item small{margin-top:2px;color:var(--muted);font-size:10px}.alert{margin-bottom:12px;padding:12px 14px;border:1px solid var(--border);border-radius:8px;display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600}.alert.danger{color:var(--danger);background:var(--danger-dim);border-color:#ff4d4d59}.alert.warn{color:var(--warn);background:var(--warn-dim);border-color:#ffb24d59}.alert.success{color:var(--success);background:var(--success-dim);border-color:#3bff7a4d}.muted{color:var(--muted);font-size:13px}.template-editor{display:flex;flex-direction:column;gap:14px}.template-summary,.template-section,.template-empty{border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:16px}.template-summary{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.template-summary h2,.template-section h2,.template-empty h2{margin:2px 0 0;font-size:20px;letter-spacing:-.02em}.template-summary p,.template-empty p{margin:6px 0 0;color:var(--muted);font-size:13px}.template-summary span{padding:5px 9px;border:1px solid var(--border);border-radius:999px;color:var(--muted);background:var(--surface-2);font-size:11px;font-weight:800;white-space:nowrap}.template-empty{display:flex;align-items:flex-start;gap:12px;color:var(--warn)}.template-section-header{display:flex;align-items:center;margin-bottom:14px}.template-field-main{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}.template-section .template-section-title{margin:0;color:var(--amber);font-size:26px;font-weight:900;letter-spacing:0;text-transform:uppercase}.template-field-list{display:flex;flex-direction:column;gap:10px}.template-field{padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2)}.template-field input,.template-options textarea{width:100%;min-height:40px;padding:0 12px;border:1px solid var(--border);border-radius:8px;outline:none;background:var(--surface);color:var(--text)}.template-field input:focus,.template-options textarea:focus{border-color:var(--amber)}.template-options{margin-top:10px}.template-options textarea{min-height:130px;padding:11px 12px;resize:vertical;line-height:1.4}.template-options .primary-button{margin-top:8px}.brief-layout{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:14px;align-items:start}.brief-form{display:flex;flex-direction:column;gap:14px}.brief-section,.preview-card{border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:16px}.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}.section-heading h2,.preview-card h2{margin:2px 0 0;font-size:18px;letter-spacing:-.02em}.section-heading .brief-section-title{margin:0;color:var(--amber);font-size:26px;font-weight:900;letter-spacing:0;text-transform:uppercase}.section-heading>.field{min-width:180px}.brief-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.brief-grid.small{margin-top:10px}.production-details,.production-additional{margin-top:24px}.brief-grid .field:first-child,.brief-grid .field:nth-child(2){grid-column:auto}.brief-grid .field:has(textarea){grid-column:1 / -1}.conditional-fields{grid-column:1 / -1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:10px;border:1px solid rgba(255,178,77,.32);border-radius:8px;background:var(--warn-dim)}.conditional-fields .field:first-child,.conditional-fields .field:nth-child(2){grid-column:auto}.currency-input{min-height:40px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);display:grid;grid-template-columns:28px minmax(0,1fr);align-items:center}.currency-input:focus-within{border-color:var(--amber)}.currency-input span{width:28px;color:var(--muted);display:inline-flex;justify-content:flex-end;font-size:14px;font-weight:800;letter-spacing:0}.currency-input input{width:100%;min-height:38px;padding:0 12px 0 6px;border:0;outline:0;background:transparent;color:var(--text)}.checkbox-group{margin-top:12px}.checkbox-group:first-of-type{margin-top:0}.field-label{margin-bottom:8px;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.checkbox-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.check-tile{min-height:38px;padding:0 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);color:var(--text);display:inline-flex;align-items:center;justify-content:flex-start;gap:8px;cursor:pointer;font-size:12px;font-weight:700;text-align:left}.check-tile span{width:16px;height:16px;border:1px solid var(--border-bright);border-radius:4px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.check-tile.active{border-color:#ffa4009e;background:var(--orange-dim)}.check-tile.active span{color:#090909;background:var(--amber);border-color:var(--amber)}.available-table-editor{display:flex;flex-direction:column;gap:8px;margin-top:12px}.available-table-row{display:grid;grid-template-columns:minmax(180px,1fr) minmax(140px,.7fr) 40px;gap:8px;align-items:end}.available-table-row .field:first-child,.available-table-row .field:nth-child(2){grid-column:auto}.available-table-row .icon-button:disabled{opacity:.42;cursor:not-allowed}.table-row{display:grid;grid-template-columns:.8fr 1fr 1fr 1.4fr 40px;gap:8px}.table-row input,.table-row select{width:100%;min-height:40px;padding:0 10px;border:1px solid var(--border);border-radius:8px;outline:none;background:var(--surface-2);color:var(--text)}.brief-preview-panel{position:sticky;top:28px}.preview-card p{margin:14px 0 8px;color:var(--muted);font-size:13px;font-weight:700}.note-preview{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:10px}.note-preview li{color:var(--text);font-size:13px;line-height:1.45}.note-preview li strong{display:inline-flex;margin-left:8px;padding:2px 6px;border-radius:999px;color:var(--warn);background:var(--warn-dim);border:1px solid rgba(255,178,77,.32);font-size:9px;text-transform:uppercase;letter-spacing:.06em;white-space:nowrap}.ack-panel{margin-top:18px;padding-top:14px;border-top:1px solid var(--border)}.ack-list{display:flex;flex-direction:column;gap:7px}.ack-item{width:100%;min-height:38px;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);color:var(--muted);display:grid;grid-template-columns:16px minmax(0,1fr);gap:8px;align-items:center;cursor:pointer;font-size:11px;font-weight:700;line-height:1.35;text-align:left}.ack-item span{width:16px;height:16px;border:1px solid var(--border-bright);border-radius:4px;display:inline-flex;align-items:center;justify-content:center}.ack-item.active{color:var(--text);border-color:#ffb24d7a;background:var(--warn-dim)}.ack-item.active span{color:#090909;background:var(--warn);border-color:var(--warn)}.bolo-section{border-color:#ff4d4d61}.field input[type=file]{padding:9px 12px;color:var(--muted)}.bolo-photo-preview,.bolo-preview{margin-top:12px;border:1px solid rgba(255,77,77,.35);border-radius:8px;background:var(--danger-dim);overflow:hidden}.bolo-photo-preview{display:grid;grid-template-columns:96px minmax(0,1fr);align-items:center}.bolo-photo-preview img{width:96px;height:96px;object-fit:cover}.bolo-photo-preview span{padding:12px;color:var(--text);font-size:12px;font-weight:700;overflow:hidden;text-overflow:ellipsis}.bolo-preview{padding:12px}.bolo-preview strong{display:block;color:var(--danger);font-size:12px;letter-spacing:.08em}.bolo-preview img{display:block;width:100%;max-height:260px;margin-top:10px;border-radius:6px;object-fit:cover}.centered,.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.centered{gap:10px;color:var(--muted);font-weight:700}.login-panel{width:min(448px,100%);padding:0 28px;border:none;border-radius:0;background:transparent}.login-logo-wrap{display:flex;justify-content:center;margin-bottom:74px}.login-logo{display:block;width:min(720px,90vw);height:auto;max-width:none}.login-form{display:flex;flex-direction:column;gap:14px}.login-form .primary-button{width:100%;min-height:51px;margin-top:5px;border-radius:14px;font-size:16px;letter-spacing:.02em}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 1120px){.app-frame{grid-template-columns:1fr}.sidebar{position:static;height:auto;flex-direction:row;align-items:center;gap:16px}.side-nav{margin-top:0;flex-direction:row;flex:1}.editor-layout,.brief-layout{grid-template-columns:1fr}.brief-preview-panel{position:static}.metrics-grid{grid-template-columns:repeat(3,minmax(120px,1fr))}}@media (max-width: 720px){.workspace{padding:18px}.topbar,.sidebar{flex-direction:column}.topbar-actions,.side-nav{width:100%}.metrics-grid{grid-template-columns:1fr 1fr}.form-grid,.button-row,.brief-grid,.checkbox-grid,.table-row,.template-section-header,.template-field-main{grid-template-columns:1fr}.section-heading{flex-direction:column}}
