:root{--bg: #000000;--bg-elevated: #1c1c1e;--bg-inset: #2c2c2e;--bg-tertiary: #3a3a3c;--border: rgba(84,84,88,.65);--border-opaque: #38383a;--text: #ffffff;--text-2: rgba(235,235,245,.6);--text-3: rgba(235,235,245,.3);--accent: #0a84ff;--accent-hover: #409cff;--ok: #30d158;--warn: #ff9f0a;--err: #ff453a;--purple: #bf5af2;--brand: #ff453a;--panel: var(--bg-elevated);--panel-2: var(--bg-inset);--muted: var(--text-2);--accent-2: var(--brand)}*,*:before,*:after{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,system-ui,sans-serif;font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.app-shell{display:flex;flex-direction:row;height:100vh;overflow:hidden}.sidebar{width:220px;flex-shrink:0;display:flex;flex-direction:column;background:var(--bg-elevated);border-right:1px solid var(--border);height:100vh;overflow:hidden}.sidebar-brand{display:flex;align-items:center;gap:10px;padding:18px 16px 14px;border-bottom:1px solid var(--border);flex-shrink:0}.sidebar-nav{flex:1;display:flex;flex-direction:column;gap:2px;padding:10px 8px;overflow-y:auto}.sidebar-item{display:flex;align-items:center;gap:10px;height:36px;padding:0 12px;background:transparent;border:none;border-radius:8px;color:var(--text-2);font-size:14px;font-weight:500;cursor:pointer;text-align:left;width:100%;transition:background .12s,color .12s;position:relative;letter-spacing:-.01em}.sidebar-item:hover{background:var(--bg-inset);color:var(--text);filter:none}.sidebar-item.active{background:var(--bg-inset);color:var(--text)}.sidebar-item.active:before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:3px;background:var(--accent);border-radius:0 2px 2px 0}.sidebar-icon{font-size:15px;width:18px;text-align:center;flex-shrink:0;opacity:.85}.sidebar-user{flex-shrink:0;padding:10px 8px 12px;border-top:1px solid var(--border)}.main-content{flex:1;overflow-y:auto;min-width:0;display:flex;flex-direction:column}main{padding:36px 40px 56px;max-width:1280px;margin:0 auto;width:100%}.mobile-tab-bar{display:none}@media (max-width: 768px){.app-shell{flex-direction:column}.sidebar{display:none}.mobile-tab-bar{display:flex;flex-direction:row;align-items:stretch;position:fixed;bottom:0;left:0;right:0;height:60px;background:var(--bg-elevated);border-top:1px solid var(--border);z-index:50;overflow-x:auto}.mobile-tab-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;background:transparent;border:none;color:var(--text-2);cursor:pointer;padding:6px 4px;min-width:50px;font-size:10px;font-weight:500;transition:color .12s}.mobile-tab-item.active{color:var(--accent)}.mobile-tab-item:hover{color:var(--text);filter:none}.mobile-tab-icon{font-size:18px;line-height:1}.mobile-tab-label{font-size:10px;white-space:nowrap}.main-content{padding-bottom:60px}}.brand-line{display:inline-flex;align-items:center;gap:11px}.brand-sub{color:var(--text-2);font-weight:500}.wordmark{font-weight:700;letter-spacing:-.02em;font-size:17px;white-space:nowrap}.wm-sig{color:var(--text)}.wm-flow{font-style:italic;background-image:linear-gradient(100deg,var(--accent) 0%,#6aa0ff 25%,var(--brand) 60%,#ff9a5a 100%);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;animation:flow-sheen 7s ease-in-out infinite}@keyframes flow-sheen{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@media (prefers-reduced-motion: reduce){.wm-flow{animation:none}}.brand-logo{width:auto;display:inline-block;vertical-align:middle}.brand-logo.header{height:24px}.brand-logo.login{height:60px}.login-card .wordmark{font-size:30px}.login-card .brand-line{justify-content:center;margin-bottom:8px}.user-chip{display:flex;align-items:center;gap:8px;background:var(--bg-inset);border:1px solid var(--border);border-radius:10px;padding:8px 10px}.user-chip img,.user-chip .avatar-fallback{width:28px;height:28px;border-radius:50%;object-fit:cover;background:var(--bg-tertiary);display:grid;place-items:center;font-weight:700;color:var(--text-2);font-size:12px;border:1px solid var(--border);flex-shrink:0}.user-meta{line-height:1.2;flex:1;min-width:0}.user-name{font-size:12px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-email{font-size:10px;color:var(--text-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-chip>button{font-size:11px;padding:3px 8px;flex-shrink:0;background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-2);border-radius:6px;cursor:pointer}.user-chip>button:hover{color:var(--text);filter:brightness(1.1)}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:20px}.login-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:14px;padding:40px;max-width:420px;width:100%;text-align:center}.login-card h1{font-size:20px;margin:0 0 8px}.login-card p{margin:0 0 20px}.login-error{background:#ff453a1f;color:var(--err);border:1px solid rgba(255,69,58,.4);padding:10px 12px;border-radius:8px;font-size:13px;margin-bottom:18px}.google-btn{display:inline-flex;align-items:center;gap:10px;text-decoration:none;background:#fff;color:#1f1f1f;font-weight:600;font-size:15px;padding:12px 22px;border-radius:8px;border:1px solid #dadce0}.google-btn:hover{filter:brightness(.97)}.google-btn .g{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:conic-gradient(from -45deg,#ea4335 0,#ea4335 25%,#fbbc05 0,#fbbc05 50%,#34a853 0,#34a853 75%,#4285f4 0);color:#fff;font-weight:800;font-size:13px}.panel{background:var(--bg-elevated);border:1px solid var(--border);border-radius:14px;padding:28px 32px;margin-bottom:24px}.panel h2{margin:0 0 20px;font-size:22px;font-weight:700;letter-spacing:-.025em;color:var(--text);text-transform:none}h1,h2,h3{letter-spacing:-.01em}.muted{color:var(--text-2)}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px 16px;border-bottom:1px solid var(--border);vertical-align:middle}th{color:var(--text-2);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.07em}tr:hover td{background:var(--bg-inset)}button{background:var(--bg-inset);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:7px 14px;font-size:14px;font-weight:500;cursor:pointer;font-family:inherit;transition:filter .12s,background .12s}button:hover{filter:brightness(1.12)}button.primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}button.primary:hover{background:var(--accent-hover);border-color:var(--accent-hover);filter:none}button.danger{background:transparent;border-color:var(--err);color:var(--err)}button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}select,input{background:var(--bg-inset);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:8px 12px;font-size:14px;font-family:inherit}input:focus,select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #0a84ff33}label.field{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:500;color:var(--text-2)}.pill{display:inline-block;padding:3px 10px;border-radius:6px;font-size:13px;font-weight:500}.pill.online{background:#30d15826;color:var(--ok)}.pill.offline{background:#ff453a26;color:var(--err)}.pill.unclaimed{background:#ff9f0a26;color:var(--warn)}.pill.takeover{background:#ff453a2e;color:var(--brand);font-weight:600}.tab-pill{border:1px solid var(--border);border-radius:6px;padding:6px 14px}.tab-pill.active{background:var(--accent);border-color:var(--accent);color:#fff}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b8;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:grid;place-items:center;z-index:100;padding:20px}.modal{background:var(--bg-elevated);border:1px solid var(--border);border-radius:12px;padding:18px;width:min(680px,90vw);max-height:80vh;overflow-y:auto}.modal-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:12px;width:min(460px,100%);box-shadow:0 20px 70px #0009;animation:modal-in .12s ease-out}@keyframes modal-in{0%{opacity:0;transform:translateY(6px) scale(.99)}to{opacity:1;transform:none}}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--border)}.modal-head h3{margin:0;font-size:15px;letter-spacing:-.01em}.modal-x{background:transparent;border:0;color:var(--text-2);font-size:14px;padding:2px 6px}.modal-x:hover{color:var(--text);filter:none}.modal-body{padding:16px}.modal-foot{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px;border-top:1px solid var(--border)}.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.code{font-family:ui-monospace,monospace;letter-spacing:.1em;font-weight:700}.thumb{width:54px;height:54px;object-fit:contain;background:#000;border-radius:6px;border:1px solid var(--border)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.asset{background:var(--bg-inset);border:1px solid var(--border);border-radius:8px;padding:8px;text-align:center;cursor:grab}.asset img{width:100%;height:80px;object-fit:contain;background:#000;border-radius:4px}.asset .name{font-size:11px;color:var(--text-2);margin-top:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bar{height:6px;background:var(--bg-inset);border-radius:3px;overflow:hidden;width:80px;display:inline-block}.bar>span{display:block;height:100%;background:var(--ok)}.item-row{display:flex;align-items:center;gap:10px;padding:6px 8px;background:var(--bg-inset);border:1px solid var(--border);border-radius:6px;margin-bottom:6px}.toast{position:fixed;bottom:20px;right:20px;background:var(--bg-inset);border:1px solid var(--border);padding:10px 14px;border-radius:10px;font-size:13px;z-index:200;box-shadow:0 8px 24px #0006}.preset-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:14px}.preset-card{border:1px solid var(--border);border-radius:10px;padding:12px;background:var(--bg-inset)}.preset-body{display:flex;gap:12px}.geo-preview{border-radius:4px;flex-shrink:0;background:#000}.preset-fields{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.preset-fields>input{width:100%}.pf-row{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-2)}.pf-row>label:first-child{min-width:56px}.pf-row label{display:inline-flex;align-items:center;gap:6px}.pf-row input[type=number]{width:82px;padding:6px 8px}.pf-row input[type=color]{width:40px;height:28px;padding:2px}.preset-add{border:1px dashed var(--border);border-radius:10px;background:transparent;color:var(--text-2);min-height:120px;font-size:14px;cursor:pointer}.preset-add:hover{border-color:var(--accent);color:var(--text);filter:none}.editor{display:flex;flex-direction:column;height:calc(100vh - 120px)}.editor-toolbar{display:flex;align-items:center;gap:8px;padding:10px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:10px;margin-bottom:10px;flex-wrap:wrap}.editor-tools{display:inline-flex;gap:4px;margin-left:8px}.editor-body{display:grid;grid-template-columns:200px 1fr 260px;gap:10px;flex:1;min-height:0}@media (max-width: 1400px){.editor-body{grid-template-columns:170px 1fr 230px}}@media (max-width: 1100px){.editor-body{grid-template-columns:140px 1fr 200px}}.editor-layers,.editor-inspector{background:var(--bg-elevated);border:1px solid var(--border);border-radius:10px;padding:12px;overflow-y:auto}.editor-layers h3,.editor-inspector h3{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-2);margin:0 0 10px}.layer-row{display:flex;align-items:center;gap:4px;padding:4px 6px;border-radius:6px;cursor:pointer}.layer-row:hover{background:var(--bg-inset)}.layer-row.sel{background:#0a84ff2e}.layer-row .layer-name{flex:1;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.layer-row button{padding:2px 5px;font-size:11px;background:transparent;border:none}.editor-canvas{background:repeating-conic-gradient(#15181f,#15181f 25%,#10131a 0%,#10131a 50%) 0 0 / 24px 24px;border:1px solid var(--border);border-radius:10px;display:grid;place-content:safe center;overflow:auto;padding:12px}.canvas-inner{position:relative;box-shadow:0 0 0 1px var(--border),0 8px 40px #00000080}.ov-box{position:absolute;outline:1px dashed transparent;cursor:move}.ov-box:hover{outline-color:#0a84ff99}.ov-box.sel{outline:1.5px solid var(--accent)}.ov-handle{position:absolute;width:12px;height:12px;background:#fff;border:1.5px solid var(--accent);border-radius:2px}.ov-handle.nw{left:-6px;top:-6px;cursor:nwse-resize}.ov-handle.ne{right:-6px;top:-6px;cursor:nesw-resize}.ov-handle.sw{left:-6px;bottom:-6px;cursor:nesw-resize}.ov-handle.se{right:-6px;bottom:-6px;cursor:nwse-resize}.ins{display:flex;flex-direction:column;gap:3px;font-size:11px;color:var(--text-2);margin-bottom:8px}.ins input,.ins select,.ins textarea{width:100%}.ins textarea{min-height:60px;resize:vertical;font-family:inherit}.ins-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.ins-section{border-top:1px solid var(--border);margin-top:8px;padding-top:6px}.seg{display:inline-flex;border:1px solid var(--border);border-radius:8px;overflow:hidden}.seg button{border:0;border-radius:0;background:transparent;padding:6px 12px;color:var(--text-2)}.seg button.active{background:var(--accent);color:#fff}.agenda-list{max-height:62vh;overflow-y:auto;padding-right:4px}.agenda-hour{position:sticky;top:0;z-index:1;background:var(--bg-elevated);font-size:11px;letter-spacing:.08em;color:var(--text-2);padding:6px 2px;border-bottom:1px solid var(--border);margin-top:6px}.agenda-row{display:flex;align-items:center;gap:8px;padding:5px 6px;border-bottom:1px solid rgba(84,84,88,.3);font-size:13px}.agenda-row:hover{background:var(--bg-inset)}.agenda-row.agenda-edit{flex-wrap:wrap;background:var(--bg-inset)}.agenda-row button{padding:3px 8px;font-size:11px}.agenda-time{font-variant-numeric:tabular-nums;color:var(--text-2);min-width:92px;font-size:12px}.agenda-title{font-weight:500}.agenda-notes{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:260px}.pill.stage-chip{background:#0a84ff26;color:#9ec1ff;font-size:11px}.agenda-grid-wrap{overflow:auto;max-height:68vh;border:1px solid var(--border);border-radius:8px}.agenda-grid{display:grid;min-width:max-content}.ag-head{position:sticky;top:0;z-index:2;background:var(--bg-inset);border-bottom:1px solid var(--border);padding:6px 8px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-2);white-space:nowrap}.ag-gutter{position:relative;border-right:1px solid var(--border)}.ag-hour-label{position:absolute;right:6px;transform:translateY(-50%);font-size:10px;color:var(--text-2);font-variant-numeric:tabular-nums}.ag-col{position:relative;border-right:1px solid rgba(84,84,88,.3)}.ag-line{position:absolute;left:0;right:0;border-top:1px solid rgba(84,84,88,.3)}.ag-item{position:absolute;left:3px;right:3px;overflow:hidden;background:#0a84ff38;border-left:3px solid var(--accent);border-radius:4px;padding:2px 5px;font-size:11px;line-height:1.25}.ag-item:hover{background:#0a84ff59}.ph-chip{background:#0a84ff26;color:#9ec1ff;border:1px solid rgba(10,132,255,.35);border-radius:5px;padding:2px 6px;font-size:11px;font-family:ui-monospace,monospace;-webkit-user-select:all;user-select:all;cursor:text}.grid-wrap{overflow:auto;max-height:60vh;border:1px solid var(--border);border-radius:8px}.data-grid{width:100%;border-collapse:collapse;min-width:max-content}.data-grid th{position:sticky;top:0;z-index:1;background:var(--bg-inset);border-bottom:1px solid var(--border);padding:5px 8px;white-space:nowrap;font-family:ui-monospace,monospace;text-transform:none;letter-spacing:0}.data-grid td{padding:2px 4px;border-bottom:1px solid rgba(84,84,88,.3)}.data-grid td input{width:100%;min-width:120px;padding:4px 6px;border-color:transparent;background:transparent}.data-grid td input:focus{border-color:var(--accent);background:var(--bg-inset)}.data-grid tr:hover td{background:#2c2c2e80}.data-grid button{padding:2px 6px;font-size:11px}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:24px}.panel-head h2{margin:0}.showlist{width:100%}.showlist tbody tr{cursor:pointer}.showlist tbody tr:hover td{background:var(--bg-inset)}.showlist .show-name{font-weight:600;font-size:15px}.linkish{background:none;border:0;color:var(--accent);padding:0;font-size:12px;cursor:pointer;text-decoration:none}.linkish:hover{text-decoration:underline}.show-header{padding-bottom:0}.subtabs{display:flex;gap:2px;margin-top:12px;border-bottom:1px solid var(--border)}.subtabs button{background:transparent;border:0;border-bottom:2px solid transparent;border-radius:0;padding:8px 14px;color:var(--text-2);font-size:13px}.subtabs button:hover{color:var(--text);filter:none}.subtabs button.active{color:var(--text);border-bottom-color:var(--accent)}.filebrowser{display:grid;grid-template-columns:220px 1fr;gap:12px;align-items:start}.tree{background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px;padding:4px;max-height:460px;overflow:auto}.tree-row{display:flex;align-items:center;gap:6px;padding:4px 6px;border-radius:5px;cursor:pointer;font-size:13px;-webkit-user-select:none;user-select:none}.tree-row:hover{background:var(--bg-inset)}.tree-row.sel{background:#0a84ff33}.tree-row.drop{outline:2px solid var(--accent);background:#0a84ff1f}.tree-caret{width:12px;color:var(--text-2);font-size:10px;text-align:center}.tree-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tree-count{font-size:11px;color:var(--text-2)}.files{background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px;padding:10px;min-height:200px}.crumbs{display:flex;align-items:center;gap:4px;flex-wrap:wrap;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid var(--border)}.crumb{background:none;border:0;color:var(--accent);cursor:pointer;padding:2px 4px;border-radius:4px;font-size:13px}.crumb:hover{background:var(--bg-inset);filter:none}.crumb.here{color:var(--text);font-weight:600}.folder-tile{cursor:pointer}.folder-tile.drop{outline:2px solid var(--accent)}.folder-icon{height:80px;display:grid;place-items:center;font-size:34px}.asset-meta{display:flex;align-items:center;justify-content:space-between;gap:4px;font-size:10px}.tile-btn{background:transparent;border:0;color:var(--text-2);padding:3px 7px;font-size:16px;border-radius:4px;cursor:pointer;line-height:1}.tile-btn:hover{color:var(--text);background:var(--bg-inset);filter:none}.picker-grid{max-height:52vh;overflow:auto}.sendlist{display:flex;flex-direction:column;gap:4px}.sendrow{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;padding:8px 10px;border-radius:8px;background:var(--bg-inset);border:1px solid var(--border)}.sendrow:hover:not(:disabled){border-color:var(--accent)}.sendrow:disabled{opacity:.5;cursor:not-allowed}.sendrow-name{font-weight:600}.zoombar{display:inline-flex;align-items:center;gap:2px;margin-right:4px}.zoombar button{padding:3px 7px;font-size:12px}.zoom-pct{min-width:64px;font-variant-numeric:tabular-nums}.schedule-editor{border-top:1px solid var(--border);padding-top:8px;margin-top:4px}.schedule-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.schedule-title{font-size:12px;font-weight:600;color:var(--text-2);text-transform:uppercase;letter-spacing:.04em}.schedule-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px;padding:4px 0;border-bottom:1px solid var(--border)}.schedule-time{font-variant-numeric:tabular-nums;font-weight:600;white-space:nowrap}.schedule-days{color:var(--text-2);white-space:nowrap}.schedule-pl{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-form{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:8px;background:var(--bg-inset);border-radius:8px;margin-top:6px}.day-picker{display:flex;gap:4px;flex-wrap:wrap;margin-top:4px}.day-btn{padding:2px 7px;border-radius:4px;font-size:11px;font-weight:500;border:1px solid var(--border);background:var(--bg-elevated);cursor:pointer;color:var(--text-2)}.day-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}.nav-badge{display:inline-block;background:var(--ok);color:#061a0c;font-size:10px;font-weight:700;padding:1px 5px;border-radius:999px;margin-left:5px;vertical-align:middle}.nav-badge.warn{background:var(--warn);color:#1a1200}.overview-fleet{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:32px}.fleet-stat{background:var(--bg-elevated);border:1px solid var(--border);border-radius:14px;padding:24px 32px;min-width:130px}.fleet-stat .stat-num{font-size:40px;font-weight:700;line-height:1;letter-spacing:-.03em}.fleet-stat .stat-label{font-size:13px;color:var(--text-2);margin-top:6px;font-weight:500}.fleet-stat.stat-ok .stat-num{color:var(--ok)}.fleet-stat.stat-warn .stat-num{color:var(--err)}.fleet-stat.stat-attn .stat-num{color:var(--warn)}.fleet-stat.stat-neutral .stat-num{color:var(--text-2)}.show-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}.show-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:14px;padding:22px 24px}.show-card-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:16px;gap:8px}.show-card-name{font-weight:700;font-size:17px;letter-spacing:-.02em;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.show-card-tz{font-size:13px;color:var(--text-2);white-space:nowrap}.show-screen-rows{display:flex;flex-direction:column;gap:0}.show-screen-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-top:1px solid var(--border);font-size:14px}.show-screen-row:first-child{border-top:none}.show-screen-name{flex:1;font-weight:500;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.show-screen-player{font-size:13px;color:var(--text-2);max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;align-items:start}.dash-main,.dash-side{display:flex;flex-direction:column;gap:24px;min-width:0}.dash-main .overview-fleet{margin-bottom:0}.dash-main .fleet-stat{flex:1}@media (max-width: 1100px){.dashboard{grid-template-columns:1fr}}.dash-widget{background:var(--bg-elevated);border:1px solid var(--border);border-radius:14px;padding:20px 22px}.dash-main .dash-widget{padding:24px 26px}.dash-widget-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:16px;gap:8px}.dash-widget-head h3{margin:0;font-size:17px;font-weight:700;letter-spacing:-.02em}.dash-main .dash-widget-head h3{font-size:19px}.dash-widget-meta{font-size:13px;color:var(--text-2)}.as-name{font-size:20px;font-weight:700;letter-spacing:-.02em;line-height:1.25}.as-clock{font-size:13px;color:var(--text-2);margin:4px 0 16px;font-variant-numeric:tabular-nums}.as-meter{height:6px;background:var(--bg-inset);border-radius:3px;overflow:hidden}.as-meter-fill{height:100%;background:var(--ok);border-radius:3px;transition:width .4s ease}.as-meter-label{font-size:13px;color:var(--text-2);margin-top:8px}.as-meter-label strong{color:var(--text)}.alerts-ok{display:flex;align-items:center;gap:10px;color:var(--ok);font-weight:500}.alerts-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.alerts-list li{font-size:13px;padding:10px 12px;border-radius:8px;line-height:1.35;border-left:3px solid}.alerts-list li.alert-err{background:#ff453a1a;border-color:var(--err)}.alerts-list li.alert-warn{background:#ff9f0a14;border-color:var(--warn)}.quick-actions{display:flex;flex-direction:column;gap:8px}.quick-actions button{text-align:left;padding:10px 14px;border-radius:10px}.quick-actions button:disabled{opacity:.4;cursor:not-allowed}.overview-section-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-2);margin-bottom:14px}.overview-section-label.warn{color:var(--warn)}.overview-empty{text-align:center;padding:72px 24px;color:var(--text-2)}.overview-empty-icon{font-size:48px;margin-bottom:16px}.overview-empty-title{font-size:20px;font-weight:700;letter-spacing:-.02em;color:var(--text);margin-bottom:8px}.overview-empty-body{font-size:15px}.player-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.player-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:14px;padding:20px 22px;display:flex;flex-direction:column;gap:14px}.player-card.pc-online{border-color:#30d1584d}.player-card.pc-offline{border-color:#ff453a2e}.player-card.pc-unclaimed{border-color:#ff9f0a66}.pc-header{display:flex;align-items:center;gap:10px}.pc-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0}.pc-dot-online{background:var(--ok);box-shadow:0 0 7px var(--ok);animation:pc-pulse 2.4s ease-in-out infinite}.pc-dot-offline{background:var(--err);opacity:.7}.pc-dot-warn{background:var(--warn)}@keyframes pc-pulse{0%,to{opacity:1}50%{opacity:.45}}.pc-name{flex:1;font-size:17px;font-weight:700;letter-spacing:-.02em;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pc-screen-info{background:var(--bg-inset);border-radius:9px;padding:12px 14px}.pc-screen-name{font-size:14px;font-weight:600}.pc-show-name{font-size:13px;color:var(--text-2);margin-top:3px}.pc-no-screen{font-size:13px;color:var(--text-3)}.pc-pairing{background:var(--bg-inset);border-radius:9px;padding:14px;text-align:center}.pc-pairing-code{font-family:ui-monospace,monospace;font-size:26px;font-weight:800;letter-spacing:.2em;color:var(--warn)}.pc-pairing-hint{font-size:12px;color:var(--text-2);margin-top:4px}.pc-health{display:flex;gap:14px;flex-wrap:wrap;font-size:13px;color:var(--text-2)}.pc-health-warn{color:var(--warn)}.pc-health-ip{color:var(--text-3);font-size:12px;font-family:ui-monospace,monospace}.pc-model{font-size:12px;color:var(--text-3);margin-top:-6px}.section-header{font-size:13px;text-transform:none;letter-spacing:-.01em;color:var(--text-2);font-weight:600;margin:28px 0 14px;padding-bottom:10px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.section-header:first-child{margin-top:4px}.unclaimed-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;margin-bottom:6px}.unclaimed-card{background:var(--bg-inset);border:1px solid rgba(255,159,10,.4);border-radius:14px;padding:20px}.unclaimed-device{font-size:11px;color:var(--text-2);margin-bottom:10px}.pairing-display{text-align:center;padding:12px 8px;background:var(--bg);border-radius:8px;margin-bottom:12px}.pairing-code{font-family:ui-monospace,monospace;font-size:24px;font-weight:800;letter-spacing:.25em;color:var(--warn)}.pairing-hint{font-size:11px;color:var(--text-2);margin-top:4px}.player-table{width:100%;border-collapse:collapse}.player-table th{color:var(--text-2);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.07em;padding:10px 16px;text-align:left;border-bottom:1px solid var(--border)}.player-table td{padding:14px 16px;border-bottom:1px solid rgba(84,84,88,.3);vertical-align:middle}.player-table tr:last-child td{border-bottom:none}.player-table tr:hover td{background:#2c2c2e66}.actions-group{display:flex;gap:6px;align-items:center}.action-menu{position:relative;display:inline-block}.action-menu-btn{background:var(--bg-inset);border:1px solid var(--border);border-radius:6px;padding:4px 9px;cursor:pointer;font-size:16px;line-height:1;color:var(--text-2);letter-spacing:.05em}.action-menu-btn:hover{color:var(--text);filter:brightness(1.15)}.action-dropdown{position:absolute;right:0;top:calc(100% + 4px);background:var(--bg-elevated);border:1px solid var(--border);border-radius:10px;min-width:170px;z-index:30;box-shadow:0 10px 30px #00000080;overflow:hidden}.action-dropdown button{display:block;width:100%;text-align:left;background:transparent;border:0;border-radius:0;padding:9px 14px;font-size:13px;color:var(--text);cursor:pointer}.action-dropdown button:hover{background:var(--bg-inset);filter:none}.action-dropdown button.danger{color:var(--err)}.dropdown-sep{height:1px;background:var(--border);margin:3px 0}.screen-card{border:1px solid var(--border);border-radius:14px;padding:22px 24px;margin-bottom:16px;background:var(--bg-inset)}.screen-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.screen-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}.screen-grid select{width:100%}.screen-card.player-online{border-color:#30d15859}.screen-card.player-offline{border-color:#ff453a4d}.screen-chain{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:6px 0 10px;margin-bottom:10px;border-bottom:1px solid var(--border);font-size:12px}.chain-label{color:var(--text-2);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em}.chain-chip{display:inline-block;padding:2px 8px;border-radius:4px;font-size:12px;font-weight:600;background:#0a84ff26;color:var(--accent)}.chain-chip.override{background:#ff453a2e;color:var(--brand)}.chain-chip.schedule{background:#30d15826;color:var(--ok)}.chain-chip.design{background:#ff9f0a1f;color:var(--warn)}.chain-chip.none{background:#ebebf514;color:var(--text-2)}.sc-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;gap:8px}.sc-name-input{font-size:17px;font-weight:700;flex:1;min-width:0;background:transparent;border:1px solid transparent;border-radius:5px;padding:3px 6px;color:var(--text);transition:border-color .15s,background .15s}.sc-name-input:hover{border-color:var(--border);background:var(--bg-inset)}.sc-name-input:focus{border-color:var(--accent);background:var(--bg-inset);outline:none}.sc-header-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.sc-player-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:500;border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-2)}.sc-status-dot{width:7px;height:7px;border-radius:50%;background:var(--text-2);flex-shrink:0}.sc-player-online{border-color:#30d15866;color:var(--ok)}.sc-player-online .sc-status-dot{background:var(--ok);box-shadow:0 0 6px var(--ok)}.sc-player-offline{border-color:#ff453a66;color:var(--err)}.sc-player-offline .sc-status-dot{background:var(--err)}.sc-action-menu>summary{list-style:none}.sc-action-menu>summary::-webkit-details-marker{display:none}.sc-now-strip{display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:#0000004d;border:1px solid var(--border);border-radius:7px;padding:8px 12px;margin-bottom:12px}.sc-now-label{font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--text-2);background:var(--bg-inset);border-radius:3px;padding:1px 6px;flex-shrink:0}.sc-priority-hint{font-size:10px;margin-left:auto;white-space:nowrap}.sc-content-stack{border:1px solid var(--border);border-radius:8px;overflow:hidden;margin-bottom:12px}.sc-content-row{display:flex;align-items:center;gap:10px;padding:8px 12px;border-bottom:1px solid var(--border);font-size:13px}.sc-content-row:last-child{border-bottom:none}.sc-row-icon{font-size:14px;flex-shrink:0;width:20px;text-align:center;opacity:.75}.sc-row-label{font-size:11px;font-weight:700;color:var(--text-2);text-transform:uppercase;letter-spacing:.06em;min-width:72px;flex-shrink:0}.sc-row-ctrl{flex:1;display:flex;align-items:center;gap:6px;min-width:0;flex-wrap:wrap}.sc-inline-select{flex:1;min-width:0;max-width:280px;font-size:12px;padding:4px 8px}.sc-action-btn{font-size:12px;padding:4px 12px;background:transparent;border:1px dashed var(--border);color:var(--text-2);cursor:pointer;border-radius:6px}.sc-action-btn:hover{border-color:var(--accent);color:var(--text);filter:none}.sc-clear-btn{font-size:11px;padding:2px 8px;flex-shrink:0}.sc-row-takeover{background:#ff453a0d}.sc-row-shownow{background:#ff453a05}.sc-row-design{background:#ff9f0a08}.sc-row-default{background:#0a84ff08}.sc-settings-row{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;padding:10px 0 6px;border-top:1px solid var(--border);margin-bottom:2px}.sc-setting{display:flex;flex-direction:column;gap:3px;min-width:110px}.sc-setting>span{font-size:10px;font-weight:700;color:var(--text-2);text-transform:uppercase;letter-spacing:.07em}.sc-setting select,.sc-setting input{font-size:12px;padding:4px 8px}.show-group+.show-group{margin-top:28px}.show-group-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-2);margin-bottom:10px}.show-rows{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:12px;overflow:hidden}.show-row{display:flex;align-items:center;gap:16px;width:100%;background:transparent;border:0;border-radius:0;text-align:left;padding:16px 20px;border-bottom:1px solid var(--border)}.show-row:last-child{border-bottom:0}.show-row:hover{background:var(--bg-inset);filter:none}.show-row-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.show-row-name{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:600;letter-spacing:-.01em}.show-row-sub{font-size:13px;color:var(--text-2)}.show-row-clock{font-size:13px;color:var(--text-2);font-variant-numeric:tabular-nums;white-space:nowrap}.show-row-chev{font-size:22px;color:var(--text-3);line-height:1}.show-row.phase-past .show-row-name{color:var(--text-2)}.as-dates{font-size:14px;color:var(--text);margin-top:4px}.filebrowser{grid-template-columns:240px 1fr;gap:20px}.lib-side{display:flex;flex-direction:column;gap:8px}.lib-side-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-2);padding:0 8px;margin-top:8px}.pools{display:flex;flex-direction:column;gap:2px;margin-bottom:8px}.pool-row{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;cursor:pointer;font-size:14px;border:1px solid transparent}.pool-row:hover{background:var(--bg-inset)}.pool-row.sel{background:#0a84ff2e;color:var(--text)}.pool-row.drop{border-color:var(--accent);background:#0a84ff1f}.pool-icon{width:14px;display:grid;place-items:center;color:var(--text-2);font-size:11px;flex-shrink:0}.pool-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.pool-past-toggle{text-align:left;padding:6px 10px;font-size:13px;color:var(--text-2)}.pool-target{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:10px;background:var(--bg-inset);border:1px solid var(--border)}@media (max-width: 780px){.filebrowser{grid-template-columns:1fr}}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:28px}.page-header h1{margin:0;font-size:32px;font-weight:700;letter-spacing:-.025em;line-height:1.15}.page-header p{margin:6px 0 0;color:var(--text-2);font-size:15px}.page-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.ph-live{color:var(--ok);font-weight:600}.stat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px;margin-bottom:24px}.stat-tile{display:flex;align-items:center;gap:14px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:14px;padding:18px 20px;text-align:left;color:var(--text);font:inherit;width:100%}.stat-tile.clickable{cursor:pointer;transition:background .15s,transform .15s}.stat-tile.clickable:hover{background:#232325;filter:none}.stat-icon{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;font-size:18px;flex-shrink:0;background:rgba(var(--tone),.16);color:rgb(var(--tone))}.stat-body{display:flex;flex-direction:column;min-width:0}.stat-value{font-size:28px;font-weight:700;line-height:1.1;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.stat-label{font-size:13px;color:var(--text-2);font-weight:500}.tone-blue{--tone: 10,132,255}.tone-green{--tone: 48,209,88}.tone-red{--tone: 255,69,58}.tone-orange{--tone: 255,159,10}.tone-purple{--tone: 191,90,242}.tone-teal{--tone: 100,210,255}.tone-gray{--tone: 142,142,147}.segmented{display:inline-flex;padding:2px;gap:2px;background:var(--bg-inset);border-radius:9px;border:1px solid var(--border)}.segmented button{border:0;background:transparent;color:var(--text-2);padding:6px 14px;border-radius:7px;font-size:13px;font-weight:600;white-space:nowrap}.segmented button:hover{color:var(--text);filter:none}.segmented button.active{background:var(--bg-tertiary);color:var(--text);box-shadow:0 1px 3px #0006}.segmented-sm button{padding:4px 10px;font-size:12px}.toggle{width:51px;height:31px;border-radius:16px;padding:0;border:0;position:relative;background:var(--bg-tertiary);transition:background .2s;flex-shrink:0}.toggle:hover{filter:none}.toggle.on{background:var(--ok)}.toggle.on.toggle-err{background:var(--err)}.toggle-knob{position:absolute;top:2px;left:2px;width:27px;height:27px;border-radius:50%;background:#fff;box-shadow:0 2px 6px #00000059;transition:transform .2s cubic-bezier(.3,.7,.4,1)}.toggle.on .toggle-knob{transform:translate(20px)}.toggle:disabled{opacity:.4}.chip{background:var(--bg-inset);border:1px solid var(--border);color:var(--text);border-radius:999px;padding:5px 12px;font-size:13px;font-weight:500}.chip.active{background:#0a84ff33;border-color:var(--accent);color:#fff}.pick-chips{display:flex;flex-wrap:wrap;gap:6px}.empty-state{text-align:center;padding:44px 16px}.empty-icon{font-size:36px;margin-bottom:10px}.empty-title{font-size:17px;font-weight:600}.empty-body{color:var(--text-2);margin-top:4px;max-width:460px;margin-left:auto;margin-right:auto}.empty-action{margin-top:16px}.icon-btn{width:32px;height:32px;padding:0;display:grid;place-items:center;font-size:18px;border-radius:8px}.small{font-size:13px}.strong{font-weight:600}.nowrap{white-space:nowrap}.ok-text{color:var(--ok)}.warn-text{color:var(--warn)}.err-text{color:var(--err)}.danger-text{color:var(--err)!important}.pc-dot-none{background:var(--text-3)}textarea{background:var(--bg-inset);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:8px 12px;font:inherit;font-size:14px;resize:vertical}textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #0a84ff33}input.search{min-width:240px}tr.clickable{cursor:pointer}button.primary.emergency{background:var(--err);border-color:var(--err)}.modal-card.wide{width:min(760px,100%)}.modal-body{max-height:min(72vh,760px);overflow-y:auto}.modal-foot{gap:8px}.form-stack{display:flex;flex-direction:column;gap:14px}.form-stack .field>span:first-child{font-size:12px;font-weight:500;color:var(--text-2)}.form-stack .field{display:flex;flex-direction:column;gap:6px}.form-stack input:not([type=checkbox]),.form-stack select,.form-stack textarea{width:100%}.form-row{display:flex;gap:12px;flex-wrap:wrap}.form-row>.field{flex:1;min-width:140px}.span-hint{justify-content:flex-end;padding-bottom:9px}.status-pill{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:600;background:#8e8e9329;color:var(--text-2)}.status-pill .pc-dot{width:7px;height:7px}.status-pill.st-live{background:#30d15829;color:var(--ok)}.status-pill.st-later,.status-pill.st-upcoming{background:#0a84ff29;color:#64a8ff}.status-pill.st-ended{background:#ff453a1f;color:var(--err)}.prio-tag{margin-left:6px;font-size:11px;font-weight:700;color:var(--warn)}.show-switch{display:flex;flex-direction:column;gap:4px;padding:12px 12px 4px}.show-switch-label{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3)}.show-switch select{width:100%;font-weight:600;font-size:14px;padding:8px 10px}.sidebar-section{display:flex;flex-direction:column;gap:2px}.sidebar-section+.sidebar-section{margin-top:14px}.sidebar-section-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);padding:4px 12px 6px}.mobile-show-bar{display:none}@media (max-width: 768px){.mobile-show-bar{display:block;padding:12px 16px 0}.mobile-show-bar select{width:100%;font-weight:600}main{padding:20px 16px 40px}.page-header h1{font-size:26px}.page-actions{width:100%}.stat-row{grid-template-columns:repeat(2,1fr);gap:10px}.stat-tile{padding:14px;gap:10px}.stat-icon{width:36px;height:36px;font-size:15px}.stat-value{font-size:22px}}.today-list{list-style:none;margin:0 0 12px;padding:0;display:flex;flex-direction:column;gap:2px}.today-row{display:grid;grid-template-columns:4px 150px 1fr auto;align-items:center;gap:14px;padding:10px 12px;border-radius:10px}.today-row:hover{background:var(--bg-inset)}.today-row.st-done{opacity:.5}.today-bar{width:4px;height:32px;border-radius:2px}.today-time{font-variant-numeric:tabular-nums;color:var(--text-2);font-size:14px}.today-main{display:flex;flex-direction:column;min-width:0}.today-name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.today-screen{font-size:13px;color:var(--text-2)}.today-empty{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}@media (max-width: 768px){.today-row{grid-template-columns:4px 1fr auto}.today-time{display:none}}.count-tiles{display:grid;grid-template-columns:1fr 1fr;gap:10px}.count-tile{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:14px;border-radius:12px;border:0;text-align:left;background:linear-gradient(145deg,rgba(var(--tone),.28),rgba(var(--tone),.1));color:#fff}.count-tile:hover{filter:brightness(1.15)}.count-icon{font-size:15px;color:rgb(var(--tone));margin-bottom:4px}.count-num{font-size:26px;font-weight:700;line-height:1.1;font-variant-numeric:tabular-nums}.count-label{font-size:12px;color:#ffffffb3;font-weight:500}.onair-banner{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 16px;margin-bottom:24px;border-radius:12px;background:#ff9f0a1f;border:1px solid rgba(255,159,10,.4)}.onair-banner .muted{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.onair-dot{width:10px;height:10px;border-radius:50%;background:var(--warn);animation:pc-pulse 1.6s ease-in-out infinite}.tl-panel{padding:0;overflow:hidden}.tl-toolbar{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:16px 20px;border-bottom:1px solid var(--border)}.tl-daynav{display:flex;align-items:center;gap:8px}.tl-day{font-size:17px;font-weight:700;min-width:130px;text-align:center;letter-spacing:-.01em}.tl-today{font-size:13px;padding:5px 12px}.tl-showdays{display:flex;gap:6px;flex-wrap:wrap}.tl-hint{margin-left:auto;font-size:13px}.tl-scroll{max-height:calc(100vh - 290px);min-height:360px;overflow:auto;position:relative}.tl-grid{display:grid;position:relative;min-width:max-content}.tl-corner,.tl-head{position:sticky;top:0;z-index:3;background:var(--bg-elevated);border-bottom:1px solid var(--border)}.tl-corner{left:0;z-index:4}.tl-head{padding:12px 14px;border-left:1px solid var(--border-opaque);min-width:0}.tl-head-name{display:flex;align-items:center;gap:8px;font-weight:600;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tl-head-sub{display:flex;flex-direction:column;gap:2px;font-size:12px;margin-top:3px}.tl-head-sub .muted{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tl-room{color:#9ec1ff;font-weight:600}.tl-gutter{position:sticky;left:0;z-index:2;background:var(--bg-elevated)}.tl-hour{position:absolute;right:10px;transform:translateY(-50%);font-size:11px;color:var(--text-3);font-variant-numeric:tabular-nums;white-space:nowrap}.tl-now-label{position:absolute;right:4px;transform:translateY(-50%);z-index:3;font-size:10px;font-weight:700;color:#fff;background:var(--err);padding:1px 5px;border-radius:4px}.tl-col{position:relative;border-left:1px solid var(--border-opaque);cursor:copy;background-image:linear-gradient(to bottom,rgba(84,84,88,.45) 1px,transparent 1px)}.tl-col:hover{background-color:#ffffff04}.tl-now-line{position:absolute;left:0;right:0;height:2px;background:var(--err);z-index:2;pointer-events:none}.tl-block{position:absolute;z-index:1;display:flex;flex-direction:column;align-items:flex-start;gap:1px;padding:4px 8px;overflow:hidden;text-align:left;cursor:pointer;border:0;border-left:3px solid var(--c);border-radius:6px;background:color-mix(in srgb,var(--c) 26%,#1c1c1e);color:#fff}.tl-block:hover{background:color-mix(in srgb,var(--c) 38%,#1c1c1e);filter:none}.tl-block.live{box-shadow:0 0 0 1px var(--c),0 4px 16px color-mix(in srgb,var(--c) 35%,transparent)}.tl-block.outranked{opacity:.55}.tl-block-name{font-size:12px;font-weight:700;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.tl-block-time{font-size:11px;color:#ffffffb3;font-variant-numeric:tabular-nums;white-space:nowrap}.tl-block-pl{font-size:11px;color:#ffffff8c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.tl-live-chip{position:absolute;top:4px;right:5px;font-size:9px;font-weight:800;letter-spacing:.06em;background:var(--ok);color:#000;padding:1px 5px;border-radius:4px}.list-toolbar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}.sched-table{width:100%}.sched-name{display:flex;align-items:center;gap:12px}.color-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.day-chips{display:inline-flex;gap:3px;flex-wrap:wrap}.day-chip{font-size:11px;font-weight:600;padding:2px 7px;border-radius:5px;background:#0a84ff29;color:#7db5ff}.day-chip.all{background:#8e8e9329;color:var(--text-2)}.sched-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}.sched-card{display:flex;flex-direction:column;align-items:stretch;gap:4px;text-align:left;background:var(--bg-elevated);border:1px solid var(--border);border-top:3px solid var(--c);border-radius:14px;padding:16px 18px;color:var(--text);font:inherit;cursor:pointer}.sched-card:hover{background:#232325;filter:none}.sched-card.live{border-color:color-mix(in srgb,var(--c) 60%,transparent);border-top-color:var(--c)}.sched-card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.sched-card-name{font-size:17px;font-weight:700;letter-spacing:-.01em}.sched-card-time{font-size:22px;font-weight:600;font-variant-numeric:tabular-nums;margin:8px 0 2px;letter-spacing:-.02em}.sched-card-meta{font-size:13px;color:var(--text-2)}.sched-card-foot{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:10px;flex-wrap:wrap}.bc-list{display:flex;flex-direction:column;gap:12px}.bc-card{display:flex;gap:20px;align-items:center;background:var(--bg-elevated);border:1px solid var(--border);border-left:4px solid var(--accent);border-radius:14px;padding:18px 20px}.bc-card.prio-high{border-left-color:var(--warn)}.bc-card.prio-emergency{border-left-color:var(--err)}.bc-card.live{background:linear-gradient(90deg,rgba(48,209,88,.07),var(--bg-elevated) 40%)}.bc-card.live.prio-emergency{background:linear-gradient(90deg,rgba(255,69,58,.12),var(--bg-elevated) 50%)}.bc-card-main{flex:1;min-width:0}.bc-card-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:4px}.bc-card-title{font-size:17px;font-weight:700;letter-spacing:-.01em}.bc-card-msg{white-space:pre-line;color:var(--text)}.bc-card-meta{display:flex;gap:16px;flex-wrap:wrap;margin-top:8px;font-size:13px;color:var(--text-2)}.bc-card-side{display:flex;flex-direction:column;align-items:flex-end;gap:10px}.bc-card-actions{display:flex;gap:12px}.prio-pill{font-size:11px;font-weight:700;padding:2px 8px;border-radius:5px;text-transform:uppercase;letter-spacing:.04em}.prio-pill.prio-normal{background:#0a84ff29;color:#7db5ff}.prio-pill.prio-high{background:#ff9f0a29;color:var(--warn)}.prio-pill.prio-emergency{background:#ff453a2e;color:var(--err)}.bc-editor{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:24px;align-items:start}@media (max-width: 720px){.bc-editor{grid-template-columns:1fr}}.bc-preview-wrap{position:sticky;top:0}.target-pick{display:flex;flex-direction:column;gap:8px;padding:12px;background:var(--bg-inset);border-radius:10px}.bc-preview{position:relative;aspect-ratio:16 / 9;border-radius:8px;overflow:hidden;background:linear-gradient(135deg,#2c3e50,#4a2c50);border:1px solid var(--border);font-size:11px;margin-top:6px}.bc-preview-content{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#ffffff40;font-size:14px;font-weight:600}.bc-preview .broadcast{position:absolute;z-index:1;color:#fff}.bc-preview .bc-title{font-weight:800}.bc-preview .bc-message{white-space:pre-line;line-height:1.25;font-weight:500}.bc-preview .bc-banner{left:0;right:0;bottom:0;padding:.75em 1.2em;background:#0a84fff0}.bc-preview .bc-banner .bc-inner{display:flex;flex-wrap:wrap;align-items:baseline;gap:.25em .8em}.bc-preview .bc-banner.bc-high{background:#ff9f0af5;color:#1c1c1e}.bc-preview .bc-banner.bc-emergency{background:#ff3b30f7}.bc-preview .bc-fullscreen{top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;text-align:center;padding:8%;background:radial-gradient(ellipse at center,#0a4a9c,#021a3a);font-size:18px}.bc-preview .bc-fullscreen .bc-title{font-size:1.35em;margin-bottom:.35em}.bc-preview .bc-fullscreen .bc-message{font-size:.8em;opacity:.92}.bc-preview .bc-fullscreen.bc-high{background:radial-gradient(ellipse at center,#a35f00,#3a2200)}.bc-preview .bc-fullscreen.bc-emergency{background:radial-gradient(ellipse at center,#c4140c,#4a0300);box-shadow:inset 0 0 0 3px #ffffffd9}.room-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:20px;align-items:start}@media (max-width: 768px){.room-grid{grid-template-columns:1fr}}.room-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:14px;overflow:visible}.room-card.room-none{border-style:dashed}.room-head{display:flex;justify-content:space-between;align-items:flex-start;padding:18px 20px 12px}.room-head h3{margin:0;font-size:19px;font-weight:700;letter-spacing:-.02em}.room-sub{font-size:13px;color:var(--text-2);margin-top:2px}.room-empty{padding:4px 20px 20px;font-size:13px}.room-screens{list-style:none;margin:0;padding:0 10px 8px}.room-screen{display:grid;grid-template-columns:10px 1fr auto auto;align-items:center;gap:12px;padding:10px;border-radius:10px}.room-screen:hover{background:var(--bg-inset)}.room-screen-main{min-width:0}.room-screen-name{font-weight:600;font-size:14px}.room-screen-now{font-size:12px;color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.room-screen-now.now-override{color:var(--err)}.room-screen-now.now-schedule{color:var(--ok)}.room-screen-now.now-design{color:var(--warn)}.room-player{font-size:12px;white-space:nowrap}.room-move{font-size:12px;padding:4px 8px;max-width:110px}.room-actions{display:flex;gap:8px;flex-wrap:wrap;padding:12px 20px 16px;border-top:1px solid var(--border)}.room-actions button,.room-actions select{font-size:13px;padding:6px 12px}@media (max-width: 768px){.room-player{display:none}.room-screen{grid-template-columns:10px 1fr auto}}button.sm{padding:4px 10px;font-size:12px}button.icon{padding:4px 8px;font-size:13px;line-height:1;background:transparent;border-color:transparent;color:var(--text-2)}button.icon:hover:not(:disabled){background:var(--bg-tertiary);color:var(--text);filter:none}button.icon.danger:hover:not(:disabled){color:var(--err)}button:disabled{opacity:.4;cursor:default;filter:none}.pl-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:20px;align-items:start}.pl-layout .panel{margin-bottom:0}.pl-list{padding:16px 12px;position:sticky;top:16px}.pl-list-head{display:flex;align-items:center;justify-content:space-between;padding:0 6px 10px}.pl-list-head h3{margin:0;font-size:15px}.pl-list ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.pl-list-empty{padding:4px 6px;font-size:13px}.pl-new{display:flex;flex-wrap:wrap;gap:6px;padding:0 6px 12px}.pl-new input{flex:1 1 100%}.pl-list-item{width:100%;display:flex;align-items:center;gap:10px;text-align:left;background:transparent;border:1px solid transparent;border-radius:10px;padding:9px 10px}.pl-list-item:hover{background:var(--bg-inset);filter:none}.pl-list-item.active{background:#0a84ff29;border-color:#0a84ff59}.pl-list-main{display:flex;flex-direction:column;min-width:0;flex:1}.pl-list-name{font-weight:600;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pl-list-sub{font-size:12px;color:var(--text-2)}.pl-swatch{width:10px;height:10px;border-radius:3px;flex:none;display:inline-block}.pl-swatch.lg{width:14px;height:14px;border-radius:4px;margin-right:10px;vertical-align:1px}.pl-dirty-dot{width:8px;height:8px;border-radius:50%;background:var(--warn);flex:none}.pl-editor{padding:24px 28px 0;min-height:420px;display:flex;flex-direction:column}.pl-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.pl-head h2{margin:0 0 4px}.pl-meta{color:var(--text-2);font-size:13px}.pl-head-actions{display:flex;gap:8px;flex:none}.pl-add-row{display:flex;align-items:center;gap:8px;margin-bottom:14px}.pl-hint{margin-left:auto;font-size:12px}.pl-items{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.pl-item{display:grid;grid-template-columns:14px 22px 96px minmax(0,1fr) auto auto auto;align-items:center;gap:12px;background:var(--bg-inset);border:1px solid var(--border);border-radius:10px;padding:8px 10px;transition:border-color .12s,opacity .12s,transform .12s}.pl-item.dragging{opacity:.4}.pl-item.drop-target{border-color:var(--accent);box-shadow:0 -2px 0 var(--accent)}.pl-grip{color:var(--text-3);cursor:grab;font-size:12px;letter-spacing:-2px;-webkit-user-select:none;user-select:none}.pl-num{color:var(--text-2);font-size:12px;font-variant-numeric:tabular-nums;text-align:right}.pl-thumb{position:relative;width:96px;aspect-ratio:16 / 9;border-radius:6px;overflow:hidden;background:#000;display:grid;place-items:center;color:var(--text-2);font-size:18px}.pl-thumb img,.pl-thumb video{width:100%;height:100%;object-fit:contain;display:block;pointer-events:none}.pl-thumb-badge{position:absolute;left:4px;bottom:4px;font-size:9px;padding:2px 4px;border-radius:4px;background:#000000b3;color:#fff}.pl-thumb-design{background:linear-gradient(135deg,#ff9f0a40,#bf5af240);color:var(--warn)}.pl-thumb-missing{color:var(--err)}.pl-item-main{display:flex;flex-direction:column;min-width:0}.pl-item-name{font-weight:600;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pl-item-sub{font-size:12px;color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pl-dur{font-size:12px;min-width:96px;text-align:right}.pl-dur label{display:inline-flex;align-items:center;gap:6px;color:var(--text-2)}.pl-dur input{width:60px;text-align:right;padding:5px 8px}.pl-row-actions{display:flex;gap:0}.pl-empty{border:1.5px dashed var(--border);border-radius:12px;padding:40px 20px;text-align:center;cursor:pointer;display:flex;flex-direction:column;gap:6px;align-items:center;font-weight:600}.pl-empty:hover{border-color:var(--accent)}.pl-empty .muted{font-weight:400;font-size:13px}.pl-empty-icon{font-size:26px;color:var(--accent)}.pl-bulk{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:14px;font-size:12px}.pl-savebar{position:sticky;bottom:0;margin:20px -28px 0;padding:0 28px;height:0;overflow:hidden;display:flex;align-items:center;justify-content:flex-end;gap:8px;background:#1c1c1eeb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid transparent;border-radius:0 0 14px 14px;transition:height .18s ease,border-color .18s}.pl-savebar.show{height:60px;border-top-color:var(--border)}.pl-savebar>span{margin-right:auto;color:var(--warn);font-size:13px;font-weight:600}.pl-editor>:last-child:not(.pl-savebar){margin-bottom:24px}.pl-savebar:not(.show){margin-top:24px}.pick-toolbar{display:flex;gap:8px;margin-bottom:12px}.pick-toolbar input{flex:1}.pick-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;max-height:min(56vh,560px);overflow-y:auto;padding:2px}.pick-card{position:relative;display:flex;flex-direction:column;gap:4px;padding:8px;text-align:left;background:var(--bg-inset);border:1px solid var(--border);border-radius:10px}.pick-card:hover{border-color:var(--text-3);filter:none}.pick-card.picked{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset;background:#0a84ff1f}.pick-card .pick-thumb,.pick-thumb{width:100%;aspect-ratio:16 / 9;border-radius:6px;display:grid;place-items:center;font-size:22px}.pick-name{font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pick-sub{font-size:11px;color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pick-badge{position:absolute;top:12px;right:12px;min-width:22px;height:22px;border-radius:11px;padding:0 6px;background:var(--accent);color:#fff;font-size:12px;font-weight:700;display:grid;place-items:center}.lib-thumb{width:100%;height:80px;aspect-ratio:auto;border-radius:4px}.font-tile{height:80px;display:grid;place-items:center;font-size:28px}.tile-btn.danger:hover{color:var(--err)}.lib-drop-hint{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;gap:6px;padding:40px 20px;background:transparent;border:1.5px dashed var(--border);border-radius:12px;font-size:14px}.lib-drop-hint:hover{border-color:var(--accent);filter:none}.lib-drop-icon{font-size:24px;color:var(--accent)}.upload-tray{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}.upload-tray li{display:grid;grid-template-columns:minmax(0,1fr) 200px 90px;align-items:center;gap:12px;background:var(--bg-inset);border:1px solid var(--border);border-radius:8px;padding:8px 12px;font-size:13px}.upload-tray li.err{grid-template-columns:minmax(0,1fr) auto auto;border-color:#ff453a80}.upload-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.upload-bar{height:6px;border-radius:3px;background:var(--bg-tertiary);overflow:hidden}.upload-bar span{display:block;height:100%;background:var(--accent);transition:width .2s}.upload-pct{text-align:right;color:var(--text-2);font-variant-numeric:tabular-nums}@media (max-width: 900px){.pl-layout{grid-template-columns:1fr}.pl-list{position:static}.pl-editor{padding:18px 16px 0}.pl-savebar{margin:16px -16px 0;padding:0 16px}.pl-head{flex-direction:column}.pl-item{grid-template-columns:22px 72px minmax(0,1fr) auto;grid-template-areas:"num thumb main actions" "num thumb dur trans";row-gap:6px}.pl-grip{display:none}.pl-num{grid-area:num}.pl-item .pl-thumb{grid-area:thumb;width:72px}.pl-item-main{grid-area:main}.pl-dur{grid-area:dur;text-align:left;min-width:0}.pl-item .segmented{grid-area:trans;justify-self:end}.pl-row-actions{grid-area:actions}.pl-hint{display:none}.upload-tray li{grid-template-columns:minmax(0,1fr) 80px 60px}}.more-sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;background:#00000080;display:none}@media (max-width: 768px){.more-sheet-backdrop{display:block}}.more-sheet{position:absolute;left:8px;right:8px;bottom:calc(68px + env(safe-area-inset-bottom));padding:6px;background:#2c2c2ef7;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border);border-radius:16px;display:flex;flex-direction:column;animation:sheet-up .18s ease}@keyframes sheet-up{0%{transform:translateY(12px);opacity:0}to{transform:none;opacity:1}}.more-item{display:flex;align-items:center;gap:12px;padding:14px;font-size:16px;text-align:left;background:transparent;border:0;border-radius:10px}.more-item.active{background:#0a84ff2e;color:var(--accent)}.more-signout{color:var(--text-2);font-size:13px;border-top:1px solid var(--border);border-radius:0;margin-top:4px}.data-tables{padding:18px 24px}.data-new{margin-left:auto}.page-header code{font-size:.9em;color:var(--text)}.design-thumb{position:relative;width:100%;aspect-ratio:16 / 9;background:#000;border-radius:6px;overflow:hidden}.design-thumb-stage{position:absolute;transform-origin:0 0;pointer-events:none}.design-thumb-fallback{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:var(--warn);font-size:22px}.chip-row{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:18px}.chip-btn{border-radius:999px;padding:6px 14px;font-size:13px}.chip-btn.active{background:var(--text);color:#000;border-color:var(--text)}.chip-count{opacity:.6;margin-left:4px;font-variant-numeric:tabular-nums}.design-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.design-card{background:var(--bg-inset);border:1px solid var(--border);border-radius:12px;overflow:visible}.design-card:hover{border-color:var(--text-3)}.design-card-open{display:block;width:100%;padding:0;border:0;border-radius:12px 12px 0 0;overflow:hidden;background:#000}.design-card-open .design-thumb{border-radius:0}.design-card-open:hover{filter:brightness(1.08)}.design-card-foot{display:flex;align-items:center;gap:8px;padding:10px 8px 10px 14px}.design-card-text{flex:1;min-width:0;cursor:pointer}.design-card-name{font-weight:600;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.design-card-sub{font-size:12px;color:var(--text-2)}.action-dropdown-label{padding:8px 12px 4px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3)}.page-actions select{max-width:220px}.action-menu>summary{list-style:none}.action-menu>summary::-webkit-details-marker{display:none}.pick-card{min-width:0}.pick-name,.pick-sub{max-width:100%;display:block}@media (max-width: 768px){.panel{padding:18px 16px;border-radius:12px}.filebrowser .lib-side{gap:4px}.design-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px}.page-actions{flex-wrap:wrap}}.size-picker{display:flex;flex-direction:column;gap:12px;margin-top:6px}.size-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px}.size-tile{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 8px;text-align:center;background:var(--bg-inset);border:1px solid var(--border);border-radius:10px}.size-tile:hover{border-color:var(--text-3);filter:none}.size-tile.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset;background:#0a84ff1f}.size-shape-box{width:64px;height:64px;display:grid;place-items:center}.size-shape{display:block;border:2px solid var(--text-2);border-radius:3px;background:#ffffff0f}.size-tile.active .size-shape{border-color:var(--accent);background:#0a84ff33}.size-tile-name{font-size:13px;font-weight:600;line-height:1.2}.size-tile-dims{font-size:11px;color:var(--text-2)}.size-custom{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 12px;border:1px dashed var(--border);border-radius:10px;font-size:13px}.size-custom.active{border-style:solid;border-color:var(--accent)}.size-custom input{width:90px}.size-custom input.invalid{border-color:var(--err)}.check-row{display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.45;cursor:pointer}.check-row input{margin-top:3px}.canvas-size-btn{display:block;width:100%;text-align:left;margin-bottom:10px;font-size:13px}.size-picker .size-custom input{width:96px;flex:0 0 96px;min-width:0}.size-picker .size-custom>span{white-space:nowrap}.pi-copy{display:block;font-size:10.5px;margin:2px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pl-item-sub .pi-copy{display:inline;font-size:inherit}.pi-copy .linkish{font-size:inherit;padding:0}.player-card.clickable{cursor:pointer;transition:border-color .12s,transform .12s}.player-card.clickable:hover{border-color:var(--accent)}.player-card.clickable:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.screen-link{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;background:transparent;border:0;padding:4px 6px;margin:-4px -6px;border-radius:6px}.screen-link:hover{background:var(--bg-inset);filter:none}.pp-head{display:flex;align-items:center;gap:10px;margin-bottom:14px;font-size:13px}.pp-join{padding:18px;border:1.5px dashed var(--border);border-radius:12px}.pp-join h4{margin:0 0 6px;font-size:15px}.pp-join .row{margin-top:12px}.pp-settings{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}.pp-foot{margin-top:14px;font-size:13px}@media (max-width: 768px){.pp-settings{grid-template-columns:1fr}}.name-view{display:inline-flex;align-items:center;gap:4px}.name-text{font-weight:600;font-size:15px}.name-edit{opacity:.45;font-size:12px}tr:hover .name-edit,.name-edit:focus-visible{opacity:1}.name-input{width:200px;font-weight:600}.ico{display:block;flex:none}.icon-button{position:relative;display:inline-grid;place-items:center;flex:none;width:30px;height:30px;padding:0;border-radius:8px;background:transparent;border:1px solid transparent;color:var(--text-2)}.icon-button:hover:not(:disabled){background:var(--bg-tertiary);color:var(--text);filter:none}.icon-button.tone-danger:hover:not(:disabled){background:#ff453a26;color:var(--err)}.icon-button:disabled{opacity:.3}.icon-button[data-tip]:hover:after,.icon-button[data-tip]:focus-visible:after{content:attr(data-tip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);white-space:nowrap;pointer-events:none;z-index:60;background:#f2f2f7;color:#000;font-size:12px;font-weight:500;line-height:1;padding:6px 8px;border-radius:6px;box-shadow:0 4px 14px #00000073}.icon-button.icon-btn{width:32px;height:32px;border:1px solid var(--border);background:var(--bg-inset);color:var(--text)}.asset-size{font-size:11px;margin-top:2px}.tile-actions{display:flex;justify-content:space-between;margin-top:8px;padding-top:6px;border-top:1px solid var(--border)}.name-edit{opacity:.7;width:26px;height:26px}tr:hover .name-edit{opacity:1}.layer-row .icon-button{width:26px;height:26px}.corner-radius{display:flex;align-items:center;gap:6px}.corner-radius input[type=range]{flex:1;min-width:0}.corner-radius input[type=number]{width:64px;flex:none}.corner-radius button{flex:none;padding:4px 8px;font-size:11px}
