:root{--bg: #1a1a1a;--panel: #2c2c2c;--surface: #3d3d3d;--text: #e0e0e0;--text-secondary: #b0b0b0;--muted: #b0b0b0;--border: #6e6e6e;--divider: #6e6e6e;--brand: #00b7c2;--brand-rgb: 0, 183, 194;--vip: #ffd700;--vip-rgb: 255, 215, 0;--danger: #d72638;--danger-rgb: 215, 38, 56;--primary: var(--brand);--primary-dark: #0096a0;--primary-light: #33c5cf;--success: #4caf50;--warning: var(--vip);--error: var(--danger);--info: var(--brand);--edit: var(--brand);--delete: var(--danger);--create: #4caf50;--accent: var(--vip);--cinema-red: var(--danger);--cinema-gold: var(--vip);--cinema-purple: #9c27b0;--seat-stage: rgba(0, 0, 0, .28);--seat-stage-border: rgba(255, 255, 255, .16);--seat-card: rgba(0, 0, 0, .22);--seat-card-border: rgba(255, 255, 255, .14);--seat-aisle: rgba(20, 20, 20, .55);--seat-aisle-border: rgba(255, 255, 255, .28);--seat-label: #f2f2f2;--seat-heading: #f5f5f5;--seat-heading-muted: rgba(245, 245, 245, .72);--seat-text-shadow: 0 1px 3px rgba(0, 0, 0, .85);--seat-hover: rgba(255, 255, 255, .07);--seat-empty: rgba(0, 0, 0, .45);--seat-empty-border: rgba(255, 255, 255, .35);--seat-beam: radial-gradient( ellipse at top, rgba(255, 255, 255, .18) 0%, rgba(140, 210, 255, .08) 35%, rgba(140, 210, 255, .03) 60%, transparent 100% )}[data-theme=light]{--bg: #f5f5f5;--panel: #eaeaea;--surface: #dddddd;--text: #1a1a1a;--text-secondary: #4f4f4f;--muted: #4f4f4f;--border: #a6a6a6;--divider: #a6a6a6;--brand: #007c91;--brand-rgb: 0, 124, 145;--vip: #cba135;--vip-rgb: 203, 161, 53;--danger: #b22222;--danger-rgb: 178, 34, 34;--primary: var(--brand);--primary-dark: #006070;--primary-light: #0092a8;--success: #388e3c;--warning: var(--vip);--error: var(--danger);--info: var(--brand);--edit: var(--brand);--delete: var(--danger);--create: #388e3c;--accent: var(--vip);--cinema-red: var(--danger);--cinema-gold: var(--vip);--cinema-purple: #7b1fa2;--seat-stage: rgba(255, 255, 255, .75);--seat-stage-border: rgba(0, 0, 0, .12);--seat-card: rgba(255, 255, 255, .6);--seat-card-border: rgba(0, 0, 0, .1);--seat-aisle: rgba(0, 0, 0, .05);--seat-aisle-border: rgba(0, 0, 0, .1);--seat-label: #2a2a2a;--seat-heading: #1a1a1a;--seat-heading-muted: rgba(26, 26, 26, .65);--seat-text-shadow: none;--seat-hover: rgba(0, 0, 0, .05);--seat-empty: rgba(255, 255, 255, .7);--seat-empty-border: rgba(0, 0, 0, .2);--seat-beam: radial-gradient( ellipse at top, rgba(0, 124, 145, .12) 0%, rgba(0, 124, 145, .06) 35%, rgba(0, 124, 145, .02) 60%, transparent 100% )}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:var(--brand);text-decoration:none}.app-shell{display:grid;grid-template-rows:auto 1fr;height:100%}.topbar{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;border-bottom:1px solid var(--border);background:var(--panel);position:sticky;top:0;z-index:10;box-shadow:0 1px 3px #0000004d}.brand{font-weight:800;font-size:20px;letter-spacing:.5px;color:var(--primary)}.layout{display:grid;grid-template-columns:240px 1fr;height:calc(100vh - 66px)}.layout.no-sidebar{grid-template-columns:1fr}.sidebar{border-right:1px solid var(--border);background:var(--surface);padding:20px 12px;overflow-y:auto}.sidebar .section-title{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.1em;margin:10px 8px}.navlist{list-style:none;padding:0;margin:0;display:grid;gap:4px}.navitem a{display:flex;align-items:center;gap:12px;padding:12px 14px;color:var(--muted);border-radius:10px;transition:all .3s cubic-bezier(.4,0,.2,1);font-weight:500;position:relative;overflow:hidden}.navitem a:before{content:"";position:absolute;left:0;top:0;height:100%;width:3px;background:var(--primary);transform:scaleY(0);transition:transform .3s ease;border-radius:0 3px 3px 0}.navitem a:hover{background:rgba(var(--brand-rgb),.1);color:var(--text);transform:translate(4px);box-shadow:0 2px 8px rgba(var(--brand-rgb),.1)}.navitem a:hover:before{transform:scaleY(1)}.navitem a.active{background:linear-gradient(135deg,rgba(var(--brand-rgb),.15),rgba(var(--vip-rgb),.1));color:var(--text);border:1px solid rgba(var(--brand-rgb),.3);box-shadow:0 4px 12px rgba(var(--brand-rgb),.2);transform:translate(2px)}.navitem a.active:before{transform:scaleY(1);background:var(--vip)}[data-theme=light] .sidebar{background:var(--surface);border-right-color:var(--border)}[data-theme=light] .sidebar .section-title,[data-theme=light] .navitem a{color:var(--muted)}[data-theme=light] .navitem a:hover{background:rgba(var(--brand-rgb),.08);color:var(--text)}[data-theme=light] .navitem a.active{background:linear-gradient(135deg,rgba(var(--brand-rgb),.15),rgba(var(--vip-rgb),.1));color:var(--text);border-color:rgba(var(--brand-rgb),.3)}.content{padding:18px;overflow-y:auto}.card{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:24px;box-shadow:0 1px 3px #0000001a;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.card:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(var(--brand-rgb),.05) 50%,transparent 100%);transition:left .5s ease}.card:hover{box-shadow:0 8px 25px #0003;transform:translateY(-2px);border-color:rgba(var(--brand-rgb),.3)}.card:hover:before{left:100%}.card h3{margin:0 0 16px;color:var(--text);font-weight:700;font-size:18px}.btn{background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:10px 16px;cursor:pointer;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1);font-size:14px;position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none}.btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:#ffffff1a;border-radius:50%;transform:translate(-50%,-50%);transition:width .3s ease,height .3s ease}.btn:hover:before{width:300%;height:300%}.btn:hover{background:var(--border);transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.btn:active{transform:translateY(0);transition:transform .1s ease}.btn.primary{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);border-color:var(--primary);color:#fff;box-shadow:0 2px 8px rgba(var(--brand-rgb),.2)}.btn.primary:hover{background:linear-gradient(135deg,var(--primary-dark) 0%,var(--primary) 100%);box-shadow:0 6px 20px rgba(var(--brand-rgb),.3);transform:translateY(-3px)}.btn.danger{background:var(--danger)!important;border-color:var(--danger)!important;color:#fff!important;box-shadow:0 2px 8px rgba(var(--danger-rgb),.2)}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn:disabled:hover{transform:none;box-shadow:none}[data-theme=light] .btn{background:var(--surface);color:var(--text);border-color:var(--border)}[data-theme=light] .btn.primary{background:var(--primary);color:#fff}.icon-btn{background:transparent;color:var(--text);border:1px solid transparent;border-radius:8px;padding:6px 8px;cursor:pointer}.icon-btn:hover{background:#ffffff0f}[data-theme=light] .icon-btn:hover{background:#0000000f}[data-theme=light] .topbar{background:var(--panel);border-bottom-color:var(--border)}[data-theme=light] .brand{color:var(--primary)}.table{width:100%;border-collapse:collapse}.table th,.table td{border:1px solid var(--border);padding:8px 10px;text-align:left}.grid{display:grid;gap:12px}.grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width: 1000px){.layout{grid-template-columns:70px 1fr}.sidebar .label{display:none}}input,select,textarea{background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:8px 10px;transition:all .2s ease;position:relative;width:100%}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px rgba(var(--brand-rgb),.1);transform:translateY(-1px)}input[type=checkbox]{width:16px;height:16px}input:hover:not(:focus),select:hover:not(:focus),textarea:hover:not(:focus){border-color:rgba(var(--brand-rgb),.5)}.form-group{position:relative;margin-bottom:16px}.form-group label{display:block;margin-bottom:6px;font-weight:500;transition:color .2s ease}.form-group:focus-within label{color:var(--primary)}.form-group.loading input,.form-group.loading select,.form-group.loading textarea{background-image:linear-gradient(90deg,transparent 0%,rgba(var(--brand-rgb),.1) 50%,transparent 100%);background-size:200% 100%;animation:shimmer 1.5s infinite}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}label{color:var(--muted);font-size:12px}form .row{display:grid;gap:8px;margin-bottom:10px}[data-theme] input::placeholder,[data-theme] select::placeholder{color:var(--muted)}[data-theme=light] input,[data-theme=light] select{background:var(--surface);color:var(--text);border-color:var(--border)}[data-theme=light] input::placeholder,[data-theme=light] select::placeholder{color:var(--muted)}.dropdown{position:relative}.menu{position:absolute;right:0;top:36px;background:var(--panel);border:1px solid var(--border);border-radius:12px;min-width:200px;box-shadow:0 8px 32px #0000004d;z-index:20;overflow:hidden}.menu-header{padding:16px;border-bottom:1px solid var(--border);background:var(--surface)}.user-info{text-align:center}.user-name{font-weight:600;color:var(--text);font-size:14px;margin-bottom:4px}.user-email{color:var(--muted);font-size:12px}.menu-item{display:flex;align-items:center;gap:8px;width:100%;text-align:left;padding:12px 16px;background:transparent;border:none;color:var(--text);text-decoration:none;font-size:14px;transition:all .2s ease}.menu-item:hover:not(:disabled){background:#ffffff0f}.menu-item:disabled{opacity:.6;cursor:not-allowed}[data-theme=light] .menu-item:hover:not(:disabled){background:#0000000f}.statcards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}.stat{padding:20px;border-radius:16px;border:1px solid var(--border);background:linear-gradient(135deg,var(--surface) 0%,var(--panel) 100%);position:relative;overflow:hidden;transition:all .3s ease}.stat:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--brand) 0%,var(--accent) 100%)}.stat:hover{transform:translateY(-3px);box-shadow:0 8px 25px #0003}[data-theme=light] .stat{background:linear-gradient(135deg,var(--surface) 0%,var(--panel) 100%)}.stat .title{color:var(--muted);font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.stat .value{font-size:32px;font-weight:800;margin-top:8px;color:var(--text)}.stat .trend{color:var(--success);font-size:13px;font-weight:500}.kpi-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:14px}.placeholder-chart{height:180px;border:1px dashed var(--border);border-radius:10px;background:repeating-linear-gradient(90deg,var(--surface) 0,var(--surface) 8px,var(--panel) 8px,var(--panel) 16px)}[data-theme=light] .placeholder-chart{border-color:var(--border);background:repeating-linear-gradient(90deg,var(--surface) 0,var(--surface) 8px,var(--panel) 8px,var(--panel) 16px)}.data-table-container{background:var(--panel);border:1px solid var(--border);border-radius:12px;overflow:hidden}.table-controls{padding:16px;border-bottom:1px solid var(--border);background:var(--surface)}.search-input{width:100%;max-width:300px;background:#ffffff0d;border:1px solid var(--border);border-radius:8px;padding:8px 12px;color:var(--text);font-size:14px}.search-input::placeholder{color:var(--muted)}.table-wrapper{overflow-x:auto}.data-table{width:100%;border-collapse:collapse;font-size:14px}.data-table th{background:var(--surface);padding:12px 16px;text-align:left;font-weight:600;color:var(--text);border-bottom:2px solid var(--border);-webkit-user-select:none;user-select:none;white-space:nowrap}.data-table th.sortable{cursor:pointer;transition:background .2s ease}.data-table th.sortable:hover{background:var(--border)}.th-content{display:flex;align-items:center;justify-content:space-between;gap:8px}.sort-indicator{font-size:12px;opacity:.6}.data-table td{padding:12px 16px;border-bottom:1px solid rgba(255,255,255,.05);color:var(--text)}.table-row{transition:background .2s ease}.table-row:hover{background:var(--surface)}.table-row:nth-child(2n){background:#ffffff05}.table-row:nth-child(2n):hover{background:rgba(var(--brand-rgb),.08)}.empty-state{padding:40px 20px;text-align:center;color:var(--muted)}[data-theme=light] .search-input{background:#0000000d}[data-theme=light] .data-table td{border-bottom-color:#0000001a}[data-theme=light] .table-row:nth-child(2n){background:#00000005}[data-theme=light] .table-row:hover{background:rgba(var(--brand-rgb),.08)}[data-theme=light] .table-row:nth-child(2n):hover{background:rgba(var(--brand-rgb),.12)}.chart-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;margin:20px 0}.chart-card{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:20px;transition:all .2s ease}.chart-card:hover{box-shadow:0 4px 12px #00000026}.chart-title{font-size:16px;font-weight:700;color:var(--text);margin-bottom:16px;display:flex;align-items:center;gap:8px}.metric-highlight{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;background:var(--primary);color:#fff;border-radius:6px;font-size:12px;font-weight:600}.action-buttons{display:flex;gap:8px;align-items:center}.action-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:6px;cursor:pointer;font-size:14px;transition:all .2s ease;position:relative;overflow:hidden}.action-btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:#fff3;border-radius:50%;transform:translate(-50%,-50%);transition:width .3s ease,height .3s ease}.action-btn:hover:before{width:100%;height:100%}.action-btn.edit{background:var(--edit);color:#fff;box-shadow:0 2px 4px rgba(var(--brand-rgb),.2)}.action-btn.edit:hover{background:var(--primary-dark);transform:translateY(-2px);box-shadow:0 4px 12px rgba(var(--brand-rgb),.3)}.action-btn.delete{background:var(--delete);color:#fff;box-shadow:0 2px 4px rgba(var(--danger-rgb),.2)}.action-btn.delete:hover{background:#c62828;transform:translateY(-2px);box-shadow:0 4px 12px rgba(var(--danger-rgb),.3)}.action-btn.activate{background:var(--success);color:#fff;box-shadow:0 2px 4px #4caf5033}.action-btn.activate:hover{background:#388e3c;transform:translateY(-2px);box-shadow:0 4px 12px #4caf504d}.action-btn.deactivate{background:var(--warning);color:#fff;box-shadow:0 2px 4px rgba(var(--vip-rgb),.2)}.action-btn.deactivate:hover{background:#f57c00;transform:translateY(-1px)}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--bg) 0%,var(--panel) 100%);padding:20px}.login-card{background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:40px;width:100%;max-width:420px;box-shadow:0 20px 40px #0000004d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease}.login-card:hover{transform:translateY(-2px);box-shadow:0 25px 50px #0006}.login-header{text-align:center;margin-bottom:32px}.login-logo{font-size:48px;margin-bottom:16px;display:flex;justify-content:center}.login-header h1{margin:0 0 8px;font-size:28px;font-weight:700;color:var(--text);background:linear-gradient(135deg,var(--brand) 0%,var(--accent) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.login-subtitle{margin:0;color:var(--muted);font-size:14px;font-weight:500}.login-form{margin-bottom:24px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;color:var(--text);font-size:14px;font-weight:600}.form-group input{width:100%;padding:12px 16px;border:2px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);font-size:14px;transition:all .2s ease}.form-group input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px rgba(var(--brand-rgb),.1)}.form-group input.error{border-color:var(--error)}.form-group input:disabled{opacity:.6;cursor:not-allowed}.error-message{display:block;color:var(--error);font-size:12px;margin-top:6px;font-weight:500}.error-banner{background:rgba(var(--danger-rgb),.1);border:1px solid rgba(var(--danger-rgb),.3);border-radius:8px;padding:12px 16px;margin-bottom:20px;color:var(--error);font-size:14px;display:flex;align-items:center;gap:8px}.login-btn{width:100%;padding:14px 20px;background:linear-gradient(135deg,var(--brand) 0%,var(--primary-dark) 100%);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px}.login-btn:hover:not(:disabled){background:linear-gradient(135deg,var(--primary-dark) 0%,var(--brand) 100%);transform:translateY(-1px);box-shadow:0 8px 20px rgba(var(--brand-rgb),.3)}.login-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.login-footer{text-align:center;padding-top:20px;border-top:1px solid var(--border)}.login-footer p{margin:0;color:var(--muted);font-size:12px}[data-theme=light] .login-container{background:linear-gradient(135deg,var(--bg) 0%,var(--panel) 100%)}[data-theme=light] .login-card{background:var(--panel);box-shadow:0 20px 40px #0000001a}[data-theme=light] .login-card:hover{box-shadow:0 25px 50px #00000026}.loading-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg)}.loading-spinner{text-align:center;color:var(--text)}.loading-spinner .spinner{width:40px;height:40px;border:4px solid rgba(var(--brand-rgb),.2);border-top:4px solid var(--brand);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 16px}.loading-spinner p{margin:0;font-size:14px;color:var(--muted)}.loading-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.loading-card{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:32px;text-align:center;box-shadow:0 20px 40px #0000004d;animation:fadeInScale .3s ease}@keyframes fadeInScale{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.notification{position:fixed;top:20px;right:20px;padding:16px 20px;border-radius:8px;color:#fff;font-weight:500;z-index:1001;animation:slideInRight .3s ease;box-shadow:0 4px 12px #0003}.notification.success{background:linear-gradient(135deg,var(--success) 0%,#4caf50 100%)}.notification.error{background:linear-gradient(135deg,var(--error) 0%,#f44336 100%)}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.pulse{animation:pulse 2s infinite}@keyframes pulse{0%{box-shadow:0 0 rgba(var(--brand-rgb),.4)}70%{box-shadow:0 0 0 10px rgba(var(--brand-rgb),0)}to{box-shadow:0 0 rgba(var(--brand-rgb),0)}}.password-input-wrapper{position:relative;width:100%}.password-input-wrapper input{width:100%;padding-right:40px}.password-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:transparent;border:none;cursor:pointer;padding:0;font-size:1.2rem;opacity:.6;transition:opacity .2s}.password-toggle:hover{opacity:1}.seat-grid-scroll{scrollbar-width:thin;scrollbar-color:var(--border) transparent}.seat-grid-scroll::-webkit-scrollbar{height:10px;width:10px}.seat-grid-scroll::-webkit-scrollbar-track{background:transparent}.seat-grid-scroll::-webkit-scrollbar-thumb{background-color:var(--border);border-radius:8px}.seat-grid-scroll::-webkit-scrollbar-thumb:hover{background-color:var(--primary)}.seat-icon-btn{position:relative;display:inline-block;background:transparent;border:none;padding:0;cursor:pointer;transition:transform .18s ease}.seat-icon-btn:hover{transform:translateY(-2px)}.seat-icon-btn:active{transform:translateY(-1px) scale(.97)}.seat-icon-btn.disabled{cursor:not-allowed}.seat-icon-btn.hidden{cursor:default}.seat-icon-shadow{position:absolute;border-radius:50%;background:#00000073;opacity:0;transition:opacity .2s ease;pointer-events:none}.seat-icon-btn:hover .seat-icon-shadow{opacity:.6}.seat-icon-arm{position:absolute;bottom:0;border-radius:3px 3px 1px 1px;transition:background .2s ease}.seat-icon-back{position:absolute;top:0;border-radius:7px 7px 2px 2px;box-shadow:inset 0 -3px 4px #00000026;transition:background .2s ease}.seat-icon-cushion{position:absolute;bottom:0;border-radius:3px 3px 5px 5px;box-shadow:inset 0 2px 3px #ffffff14,inset 0 -2px 3px #0003;transition:background .2s ease}.seat-icon-cushion:after{content:"";position:absolute;top:12%;left:50%;width:1px;height:65%;background:#00000026}.seat-icon-label{position:absolute;bottom:6%;left:50%;transform:translate(-50%);font-weight:700;letter-spacing:.3px;pointer-events:none;text-shadow:0 1px 3px rgba(0,0,0,.75),0 0 2px rgba(0,0,0,.55);white-space:nowrap}.seat-icon-check{position:absolute;left:50%;transform:translate(-50%) scale(0);color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center;transition:transform .2s ease;pointer-events:none;text-shadow:0 1px 3px rgba(0,0,0,.6)}.seat-icon-check.visible{transform:translate(-50%) scale(1)}.row-label-editable{color:var(--seat-label);border-radius:6px;transition:color .15s ease,background .15s ease,transform .15s ease}.row-label-editable:hover{color:var(--primary);background:var(--seat-hover);transform:scale(1.15)}.password-toggle:disabled{cursor:not-allowed;opacity:.4}.compact-form .row{display:flex;flex-direction:column;gap:4px;margin-bottom:0}.compact-form label{font-size:12px;font-weight:600}.compact-form input,.compact-form select{padding:6px 8px;font-size:13px;border-radius:6px}.section-panel{border:1px solid var(--border);border-left:3px solid var(--primary);border-radius:10px;padding:12px 14px;background:var(--surface)}.section-panel-head{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 10px;margin-bottom:12px}.section-panel-title{font-size:13px;font-weight:700;letter-spacing:.2px;color:var(--text)}.section-panel-sub{font-size:11.5px;line-height:1.4;color:var(--muted);margin:0}.section-badge{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;border-radius:6px;font-size:12px;font-weight:700;flex:0 0 auto}.section-badge.active{background:var(--primary);color:#fff}.section-badge.saved{background:var(--panel);border:1px solid var(--border);color:var(--text)}.section-fields{display:flex;flex-wrap:wrap;align-items:flex-start;gap:10px 14px}.section-field{display:flex;flex-direction:column;gap:4px;min-width:0;flex:0 0 auto}.section-field>label{font-size:11px;font-weight:600;letter-spacing:.2px;color:var(--muted);white-space:nowrap}.section-field input,.section-field select{width:100%;padding:6px 9px;font-size:13px;border-radius:6px}.section-field.w-num{flex:0 0 74px}.section-field.w-name{flex:1 1 170px;max-width:230px}.section-field.w-select{flex:0 0 170px}.section-field.w-checkbox{flex:0 0 auto;justify-content:flex-end}.section-field.w-checkbox .section-checkbox-label{display:flex;align-items:center;gap:6px;padding:6px 0;font-size:13px;color:var(--text);white-space:nowrap;cursor:pointer}.section-field.w-checkbox input[type=checkbox]{width:auto;margin:0}.section-field .field-error{font-size:11px;line-height:1.3;color:var(--error);font-weight:600}.section-field input[aria-invalid=true],.section-field select[aria-invalid=true]{border-color:var(--error)}.section-preview{display:inline-flex;align-items:center;flex-wrap:wrap;gap:4px 10px;padding:5px 11px;border:1px solid rgba(var(--brand-rgb),.45);border-radius:20px;background:rgba(var(--brand-rgb),.1);font-size:11.5px;color:var(--muted);white-space:nowrap}.section-preview strong{color:var(--text);font-weight:700}.section-panel-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:14px}.section-panel-actions .btn{padding:7px 14px;font-size:13px}.section-row{display:flex;align-items:center;flex-wrap:wrap;gap:6px 14px;padding:8px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface);cursor:pointer;transition:border-color .2s ease}.section-row:hover,.section-row:focus-visible{border-color:var(--primary);outline:none}.section-row-name{font-size:13px;font-weight:600;color:var(--text);min-width:88px}.section-row-meta{display:inline-flex;align-items:center;gap:4px;font-size:11.5px;color:var(--muted);white-space:nowrap}.section-row-meta strong{color:var(--text);font-weight:600}.section-row-actions{display:flex;align-items:center;gap:6px;margin-left:auto}.section-row-actions .btn{padding:4px 11px;font-size:11.5px}.btn.danger-outline{color:var(--danger);border-color:var(--danger);background:transparent}.btn.danger-outline:hover:not(:disabled){background:var(--danger);border-color:var(--danger);color:#fff}.designer-sections{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:center;margin-bottom:20px}.designer-card{flex:0 0 auto;max-width:100%;background:var(--seat-card);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);border:1px solid var(--seat-card-border);border-radius:12px;padding:10px 12px 12px}.designer-card-head{display:flex;flex-direction:column;align-items:center;gap:3px;width:100%;margin:0 0 8px;padding:2px 4px 4px;background:none;border:none;border-radius:8px;cursor:pointer;transition:background .2s ease}.designer-card-head:hover,.designer-card-head:focus-visible{background:var(--seat-hover);outline:none}.designer-card-title{display:inline-flex;align-items:center;gap:7px;font-size:13.5px;font-weight:700;letter-spacing:.2px;color:var(--seat-heading);text-shadow:var(--seat-text-shadow)}.designer-card-number{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:6px;background:var(--primary);border:1px solid var(--primary);color:#fff;font-size:11.5px;font-weight:700;line-height:1;text-shadow:none;flex:0 0 auto}.designer-card-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.designer-card-pencil{font-size:11px;opacity:0;transition:opacity .2s ease}.designer-card-head:hover .designer-card-pencil,.designer-card-head:focus-visible .designer-card-pencil{opacity:.85}.designer-card-meta{display:inline-flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:2px 6px;font-size:11px;line-height:1.3;color:var(--seat-heading-muted);text-shadow:var(--seat-text-shadow)}.designer-card-dot{opacity:.45}.designer-card-selected{padding:0 7px;border-radius:10px;background:var(--primary);border:1px solid var(--primary);color:#fff;font-weight:600;text-shadow:none}.seat-zoom{display:inline-flex;align-items:center;gap:8px}.seat-zoom-label{font-size:10.5px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--muted);white-space:nowrap}.seat-zoom-stepper{display:inline-flex;align-items:stretch;height:28px;border:1px solid var(--border);border-radius:8px;background:var(--surface);overflow:hidden}.seat-zoom-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;padding:0;border:0;background:transparent;color:var(--text);cursor:pointer;transition:background .15s ease,color .15s ease}.seat-zoom-btn:hover:not(:disabled){background:rgba(var(--brand-rgb),.18);color:var(--primary)}.seat-zoom-btn:active:not(:disabled){background:rgba(var(--brand-rgb),.3)}.seat-zoom-btn:disabled{opacity:.32;cursor:not-allowed}.seat-zoom-btn:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.seat-zoom-value{display:inline-flex;align-items:center;justify-content:center;min-width:46px;padding:0 4px;border-left:1px solid var(--border);border-right:1px solid var(--border);font-size:11.5px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text);white-space:nowrap}.seat-zoom-reset{display:inline-flex;align-items:center;gap:5px;height:28px;padding:0 11px;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--primary);font-size:11.5px;font-weight:600;white-space:nowrap;cursor:pointer;transition:background .15s ease,border-color .15s ease}.seat-zoom-reset:hover{background:rgba(var(--brand-rgb),.14);border-color:var(--primary)}.seat-zoom-reset:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.designer-tip{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;color:var(--muted);margin-left:auto}.designer-tip strong{color:var(--text);font-weight:600}
