[data-signage-admin]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--admin-bg:#07111f;--admin-surface:#0d1c2d;--admin-surface-2:#12263c;--admin-border:#ffffff1f;--admin-text:#f4f8fc;--admin-muted:#9db0c7;--admin-blue:#39a9ff;--admin-blue-dark:#0879c7;--admin-green:#45d19a;--admin-amber:#ffc15a;--admin-red:#ff6f82;--admin-radius:16px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}[data-signage-admin] *{box-sizing:border-box}[data-signage-admin]{background:radial-gradient(circle at 10% 0%, #39a9ff1a, transparent 28rem), var(--admin-bg);min-height:100%;color:var(--admin-text);margin:0}[data-signage-admin] button,[data-signage-admin] input,[data-signage-admin] select,[data-signage-admin] textarea{font:inherit}[data-signage-admin] button{cursor:pointer}[data-signage-admin] button:focus-visible,[data-signage-admin] input:focus-visible,[data-signage-admin] select:focus-visible,[data-signage-admin] textarea:focus-visible{outline-offset:2px;outline:3px solid #39a9ff73}[data-signage-admin] [hidden]{display:none!important}[data-signage-admin] .admin-shell{min-height:100vh}[data-signage-admin] .login-view{place-items:center;min-height:100vh;padding:24px;display:grid}[data-signage-admin] .login-card{border:1px solid var(--admin-border);background:#0d1c2df5;border-radius:22px;width:min(100%,430px);padding:32px;box-shadow:0 28px 80px #00000059}[data-signage-admin] .brand-mark{color:#07111f;letter-spacing:-.08em;background:linear-gradient(135deg,#d7a947,#29aebc);border-radius:14px;place-items:center;width:54px;height:54px;font-weight:900;display:grid}[data-signage-admin] .brand-mark.small{border-radius:11px;width:42px;height:42px}[data-signage-admin] .eyebrow{color:var(--admin-blue);letter-spacing:.13em;text-transform:uppercase;margin:18px 0 5px;font-size:.74rem;font-weight:800}[data-signage-admin] .console-title .eyebrow,[data-signage-admin] .section-heading .eyebrow,[data-signage-admin] .editor-header .eyebrow,[data-signage-admin] h1,[data-signage-admin] h2,[data-signage-admin] p{margin-top:0}[data-signage-admin] .login-card h1{margin-bottom:10px;font-size:2rem}[data-signage-admin] .intro{color:var(--admin-muted);margin-bottom:24px;line-height:1.55}[data-signage-admin] label,[data-signage-admin] .field-label{color:#dce9f6;margin-bottom:7px;font-size:.84rem;font-weight:700;display:block}[data-signage-admin] input,[data-signage-admin] select,[data-signage-admin] textarea{border:1px solid var(--admin-border);width:100%;min-height:44px;color:var(--admin-text);background:#081522;border-radius:10px;padding:10px 12px}[data-signage-admin] textarea{resize:vertical;min-height:92px;line-height:1.45}[data-signage-admin] .login-card input{margin-bottom:16px}[data-signage-admin] .primary-button,[data-signage-admin] .secondary-button,[data-signage-admin] .text-button,[data-signage-admin] .danger-button{border-radius:10px;min-height:42px;padding:9px 14px;font-weight:750}[data-signage-admin] .primary-button{border:1px solid var(--admin-blue);background:linear-gradient(180deg, var(--admin-blue), var(--admin-blue-dark));color:#03101d;width:100%}[data-signage-admin] .primary-button.compact{width:auto}[data-signage-admin] .secondary-button{border:1px solid var(--admin-border);background:var(--admin-surface-2);color:var(--admin-text)}[data-signage-admin] .text-button{color:var(--admin-muted);background:0 0;border:0}[data-signage-admin] .danger-button{color:#ffadba;background:#ff6f821a;border:1px solid #ff6f8273}[data-signage-admin] .form-message,[data-signage-admin] .editor-message{min-height:1.4em;color:var(--admin-red);margin:12px 0 0}[data-signage-admin] .console-header{border-bottom:1px solid var(--admin-border);z-index:10;background:#07111ff2;justify-content:space-between;align-items:center;gap:18px;min-height:74px;padding:14px 24px;display:flex;position:sticky;top:0}[data-signage-admin] .console-title{align-items:center;gap:12px;display:flex}[data-signage-admin] .console-title strong{font-size:1.08rem;display:block}[data-signage-admin] .header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}[data-signage-admin] .save-state{color:var(--admin-muted);margin-right:4px;font-size:.82rem}[data-signage-admin] .workspace{grid-template-columns:minmax(340px,.78fr) minmax(500px,1.22fr);gap:18px;width:min(1600px,100%);margin:0 auto;padding:22px;display:grid}[data-signage-admin] .screen-column,[data-signage-admin] .editor-column{border:1px solid var(--admin-border);border-radius:var(--admin-radius);background:#0d1c2de0}[data-signage-admin] .screen-column{padding:20px}[data-signage-admin] .editor-column{align-self:start;position:sticky;top:96px;overflow:hidden}[data-signage-admin] .section-heading,[data-signage-admin] .editor-header,[data-signage-admin] .preview-heading{justify-content:space-between;align-items:center;gap:14px;display:flex}[data-signage-admin] .section-heading h1{margin-bottom:0;font-size:1.35rem}[data-signage-admin] .screen-id{color:var(--admin-muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8rem}[data-signage-admin] .layout-map{aspect-ratio:16/8;grid-template-rows:minmax(170px,.72fr) auto auto;grid-template-columns:minmax(0,3fr) minmax(170px,1fr);gap:9px;margin-top:18px;display:grid}[data-signage-admin] .side-windows{grid-template-rows:repeat(3,1fr);gap:9px;display:grid}[data-signage-admin] .bottom-windows{grid-column:1/-1;grid-template-columns:repeat(4,1fr);gap:9px;display:grid}[data-signage-admin] .ticker-window{grid-column:1/-1;min-height:58px}[data-signage-admin] .zone-button{border:1px solid var(--admin-border);color:var(--admin-text);text-align:left;background:linear-gradient(145deg,#122a43,#0b1c2d);border-radius:12px;flex-direction:column;justify-content:flex-end;align-items:flex-start;gap:3px;padding:13px;transition:border-color .14s,transform .14s,background .14s;display:flex}[data-signage-admin] .zone-button:hover{border-color:#39a9ff99;transform:translateY(-1px)}[data-signage-admin] .zone-button.selected{border-color:var(--admin-blue);background:linear-gradient(145deg,#16466d,#0c2941)}[data-signage-admin] .zone-button span{color:var(--admin-muted);text-transform:uppercase;letter-spacing:.08em;font-size:.75rem}[data-signage-admin] .zone-button strong{font-size:.94rem}[data-signage-admin] .live-preview{border-top:1px solid var(--admin-border);margin-top:22px;padding-top:18px}[data-signage-admin] .preview-heading h2{margin:0;font-size:1rem}[data-signage-admin] .preview-heading span{color:var(--admin-muted);font-size:.8rem}[data-signage-admin] .preview-frame-wrap{aspect-ratio:16/9;background:#000;border-radius:12px;margin-top:12px;overflow:hidden}[data-signage-admin] .preview-frame-wrap iframe{border:0;width:100%;height:100%}[data-signage-admin] .editor-header{border-bottom:1px solid var(--admin-border);padding:18px 20px}[data-signage-admin] .editor-header h2{margin:0;font-size:1.2rem}[data-signage-admin] .dirty-indicator{color:var(--admin-amber);font-size:.78rem;font-weight:800}[data-signage-admin] .editor-content{max-height:calc(100vh - 190px);padding:20px;overflow-y:auto}[data-signage-admin] .empty-editor{color:var(--admin-muted);line-height:1.55}[data-signage-admin] .editor-message{padding:0 20px 16px}[data-signage-admin] .field{margin-bottom:15px}[data-signage-admin] .field-help{color:var(--admin-muted);margin-top:5px;font-size:.75rem;display:block}[data-signage-admin] .field-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}[data-signage-admin] .upload-group{border-top:1px solid var(--admin-border);gap:9px;margin-top:14px;padding-top:14px;display:grid}[data-signage-admin] .upload-group input[type=file]{color:var(--admin-muted);padding:7px}[data-signage-admin] .upload-group input[type=file]::file-selector-button{border:1px solid var(--admin-border);background:var(--admin-surface-2);min-height:36px;color:var(--admin-text);cursor:pointer;border-radius:8px;margin-right:10px;padding:7px 11px}[data-signage-admin] .upload-success{color:var(--admin-green)}[data-signage-admin] .upload-error{color:var(--admin-red)}[data-signage-admin] .check-field{border:1px solid var(--admin-border);background:#081522;border-radius:10px;align-items:center;gap:10px;min-height:44px;padding:10px 12px;display:flex}[data-signage-admin] .check-field input{width:18px;min-height:18px;margin:0}[data-signage-admin] .check-field label{margin:0}[data-signage-admin] .editor-section-title{color:var(--admin-blue);text-transform:uppercase;letter-spacing:.1em;margin:22px 0 12px;font-size:.78rem}[data-signage-admin] .editor-section-title:first-child{margin-top:0}[data-signage-admin] .announcement-list{gap:10px;display:grid}[data-signage-admin] .announcement-card{border-top:1px solid var(--admin-border);padding-top:14px}[data-signage-admin] .announcement-card:first-child{border-top:0;padding-top:0}[data-signage-admin] .announcement-card-header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}[data-signage-admin] .announcement-card-header strong{font-size:.9rem}[data-signage-admin] .announcement-actions{gap:8px;margin-top:12px;display:flex}[data-signage-admin] .success{color:var(--admin-green)!important}[data-signage-admin] .warning{color:var(--admin-amber)!important}@media (max-width:1050px){[data-signage-admin] .console-header{align-items:flex-start}[data-signage-admin] .workspace{grid-template-columns:1fr}[data-signage-admin] .editor-column{position:static}[data-signage-admin] .editor-content{max-height:none}}@media (max-width:760px){[data-signage-admin] .console-header{flex-direction:column;padding:14px;position:static}[data-signage-admin] .header-actions{justify-content:flex-start}[data-signage-admin] .save-state{width:100%}[data-signage-admin] .workspace{padding:12px}[data-signage-admin] .screen-column{padding:14px}[data-signage-admin] .layout-map{aspect-ratio:auto;grid-template-rows:auto;grid-template-columns:1fr}[data-signage-admin] .main-window{min-height:180px}[data-signage-admin] .side-windows,[data-signage-admin] .bottom-windows{grid-column:1;grid-template-rows:auto;grid-template-columns:1fr 1fr}[data-signage-admin] .zone-button{min-height:88px}[data-signage-admin] .ticker-window{grid-column:1}[data-signage-admin] .field-grid{grid-template-columns:1fr}}[data-signage-admin] .layout-controls{border:1px solid var(--admin-border);background:var(--admin-surface);color:var(--admin-text);border-radius:16px;margin-bottom:20px;padding:20px}[data-signage-admin] .layout-controls h2{margin:0 0 14px;font-size:18px}[data-signage-admin] .layout-shortcuts{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}[data-signage-admin] .layout-fields{grid-template-columns:2fr 1fr 1fr;gap:12px;display:grid}[data-signage-admin] .window-toggles{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px;display:grid}[data-signage-admin] .window-toggle{align-items:center;gap:8px;font-size:13px;display:flex}[data-signage-admin] .window-toggle input{flex:none;width:18px;height:18px}[data-signage-admin] .zone-button.window-off{opacity:.48;border-style:dashed}[data-signage-admin] .zone-button.window-off strong:after{content:" (hidden)"}@media (max-width:700px){[data-signage-admin] .layout-fields,[data-signage-admin] .window-toggles{grid-template-columns:1fr}}[data-signage-admin] .window-toggle{margin:0}[data-signage-admin] .layout-controls .check-field{margin:8px 0;padding:9px 12px}[data-signage-admin]{isolation:isolate;line-height:1.5}[data-signage-admin] button:disabled{opacity:.5;cursor:not-allowed}[data-signage-admin] .editor-lock{border:0;min-width:0;margin:0;padding:0}[data-signage-admin] .preview-unavailable{color:var(--admin-muted);padding:20px}[data-signage-admin] .layout-preview-canvas{aspect-ratio:16/9;background:#050b13;border:7px solid #020712;border-radius:12px;flex-direction:column;margin-top:12px;display:flex;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff14}[data-signage-admin] .layout-preview-header,[data-signage-admin] .layout-preview-ticker{min-height:32px;color:var(--admin-text);text-align:left;background:#0b1b2c;border:0;flex:none;justify-content:space-between;align-items:center;gap:12px;padding:7px 11px;display:flex}[data-signage-admin] .layout-preview-header span,[data-signage-admin] .layout-preview-ticker span{color:var(--admin-muted);font-size:.68rem}[data-signage-admin] .layout-preview-zones{flex:auto;gap:5px;min-height:0;padding:5px;display:grid}[data-signage-admin] .layout-preview-zone{min-width:0;min-height:0;color:var(--admin-text);text-align:left;background:linear-gradient(145deg,#15334f,#0b1c2d);border:1px solid #39a9ff57;border-radius:6px;flex-direction:column;justify-content:center;align-items:flex-start;padding:8px;display:flex;overflow:hidden}[data-signage-admin] .layout-preview-zone:hover{border-color:var(--admin-blue)}[data-signage-admin] .layout-preview-zone span,[data-signage-admin] .layout-preview-zone small{color:var(--admin-muted);text-transform:uppercase;font-size:.62rem}[data-signage-admin] .layout-preview-zone strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.78rem;overflow:hidden}[data-signage-admin] .layout-preview-ticker{border-top:1px solid #ffffff14;justify-content:flex-start}[data-signage-admin] .layout-preview-ticker strong{color:var(--admin-blue);text-transform:uppercase;font-size:.68rem}[data-signage-admin] .preview-count-1{grid-template-columns:1fr}[data-signage-admin] .preview-count-2{grid-template-columns:repeat(2,1fr)}[data-signage-admin] .preview-count-2.preview-preset-split-vertical{grid-template-rows:repeat(2,1fr);grid-template-columns:1fr}[data-signage-admin] .preview-count-3{grid-template-rows:repeat(2,1fr);grid-template-columns:2fr 1fr}[data-signage-admin] .preview-count-3 .preview-primary-zone{grid-row:1/-1}[data-signage-admin] .preview-count-4{grid-template-columns:repeat(2,1fr)}[data-signage-admin] .preview-count-5,[data-signage-admin] .preview-count-6{grid-template-columns:repeat(3,1fr)}[data-signage-admin] .preview-count-7,[data-signage-admin] .preview-count-8{grid-template-columns:repeat(4,1fr)}[data-signage-admin] .layout-map{aspect-ratio:auto;flex-direction:column;gap:7px;margin-top:14px;display:flex}[data-signage-admin] .layout-map-zones{height:245px;min-height:0;display:grid}[data-signage-admin] .ticker-window{grid-column:auto;width:100%;min-height:42px}[data-signage-admin] .zone-button{padding:10px}[data-signage-admin] .zone-button strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.84rem;overflow:hidden}[data-signage-admin] .main-window strong{font-size:1rem}[data-signage-admin] .live-preview{margin-top:18px;padding-top:16px}[data-signage-admin] .layout-preview-zone{padding:0;display:block;position:relative}[data-signage-admin] .layout-preview-media{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}[data-signage-admin] .layout-preview-zone-copy{z-index:1;color:var(--admin-text);font-size:initial;text-transform:none;background:linear-gradient(#0000,#020712f0);flex-direction:column;align-items:flex-start;padding:7px 8px;display:flex;position:absolute;inset:auto 0 0}[data-signage-admin] .layout-preview-zone-copy>span,[data-signage-admin] .layout-preview-zone-copy small{color:var(--admin-muted);text-transform:uppercase;font-size:.62rem}[data-signage-admin] .layout-preview-zone-copy strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.78rem;overflow:hidden}@media (min-width:901px) and (max-width:1050px){[data-signage-admin] .workspace{grid-template-columns:minmax(300px,.75fr) minmax(460px,1.25fr)}[data-signage-admin] .editor-column{position:sticky}[data-signage-admin] .editor-content{max-height:calc(100vh - 190px)}}@media (max-width:760px){[data-signage-admin] .layout-map-zones .zone-button,[data-signage-admin] .layout-map-zones .main-window{min-height:0}}[data-signage-admin] .preset-workspace{grid-template-columns:96px minmax(0,1fr) 260px;align-items:start;width:100%;padding:16px}[data-signage-admin] .preset-rail{flex-direction:column;gap:9px;display:flex}[data-signage-admin] .preset-rail .eyebrow{margin:0 0 4px}[data-signage-admin] .preset-button{border:1px solid var(--admin-border);background:var(--admin-surface);color:var(--admin-muted);border-radius:10px;padding:7px;font-size:11px}[data-signage-admin] .preset-button.selected{border-color:var(--admin-blue);color:#fff;box-shadow:0 0 0 1px var(--admin-blue);background:#143753}[data-signage-admin] .preset-thumbnail{aspect-ratio:1.25;gap:3px;width:100%;margin-bottom:6px;display:grid}[data-signage-admin] .preset-thumbnail>span{background:#277392;border:1px solid #6eb7d1;min-width:0;min-height:0}[data-signage-admin] .composition-preview{aspect-ratio:16/9;border:1px solid var(--admin-border);border-radius:12px;margin-top:16px;overflow:hidden}[data-signage-admin] .preset-workspace .screen-column{min-width:0;padding:16px}[data-signage-admin] .preset-workspace .editor-content{max-height:none;padding:16px 0;overflow:visible}[data-signage-admin] .global-settings .editor-content{padding:16px}[data-signage-admin] .global-settings{min-width:0;position:static}[data-signage-admin] .global-settings .layout-fields{display:block}[data-signage-admin] .window-editor-tabs{flex-wrap:wrap;gap:5px;padding:16px 0;display:flex}[data-signage-admin] .window-editor-tabs .selected{border-color:var(--admin-blue)}[data-signage-admin] .console-header h1{margin:0;font-size:22px}@media (max-width:1150px){[data-signage-admin] .preset-workspace{grid-template-columns:80px minmax(0,1fr)}[data-signage-admin] .global-settings{grid-column:2}}@media (max-width:650px){[data-signage-admin] .preset-workspace{grid-template-columns:minmax(0,1fr);padding:10px}[data-signage-admin] .preset-rail{flex-direction:row;padding:3px;overflow-x:auto}[data-signage-admin] .preset-rail .eyebrow{display:none}[data-signage-admin] .preset-button{flex:0 0 72px}[data-signage-admin] .global-settings{grid-column:1}[data-signage-admin] .console-header{flex-direction:column;align-items:stretch;padding:16px;position:static}}
.layout-shortcuts{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;padding:0;display:flex}.layout-grid-container{grid-template-columns:repeat(4,minmax(80px,1fr));gap:6px;display:grid}.layout-shortcuts .secondary-button{cursor:pointer;border:1px solid #ccc;border-radius:50%;justify-content:center;align-items:center;width:50%;height:50%;padding:0;transition:all .2s;display:flex;overflow:hidden}.layout-shortcuts .secondary-button:hover{transform:scale(1.05)}
