@font-face{font-family:Interface Inter;src:url(/fonts/display/inter.ttf) format("truetype");font-weight:100 900;font-display:swap}@font-face{font-family:Display Inter;src:url(/fonts/display/inter.ttf) format("truetype");font-weight:100 900;font-display:swap}@font-face{font-family:Display Roboto;src:url(/fonts/display/roboto.ttf) format("truetype");font-weight:100 900;font-display:swap}@font-face{font-family:Display Open Sans;src:url(/fonts/display/open_sans.ttf) format("truetype");font-weight:100 900;font-display:swap}@font-face{font-family:Display Lato;src:url(/fonts/display/lato.ttf) format("truetype");font-display:swap}@font-face{font-family:Display Montserrat;src:url(/fonts/display/montserrat.ttf) format("truetype");font-weight:100 900;font-display:swap}@font-face{font-family:Display Poppins;src:url(/fonts/display/poppins.ttf) format("truetype");font-display:swap}@font-face{font-family:Display Nunito;src:url(/fonts/display/nunito.ttf) format("truetype");font-weight:100 900;font-display:swap}@font-face{font-family:Display Raleway;src:url(/fonts/display/raleway.ttf) format("truetype");font-weight:100 900;font-display:swap}@font-face{font-family:Display Fira Sans;src:url(/fonts/display/fira_sans.ttf) format("truetype");font-display:swap}@font-face{font-family:Display Work Sans;src:url(/fonts/display/work_sans.ttf) format("truetype");font-weight:100 900;font-display:swap}@font-face{font-family:Display DM Sans;src:url(/fonts/display/dm_sans.ttf) format("truetype");font-weight:100 900;font-display:swap}@font-face{font-family:Display Source Sans\ 3;src:url(/fonts/display/source_sans_3.ttf) format("truetype");font-weight:100 900;font-display:swap}@font-face{font-family:Display Oswald;src:url(/fonts/display/oswald.ttf) format("truetype");font-weight:100 900;font-display:swap}@font-face{font-family:Display Roboto Condensed;src:url(/fonts/display/roboto_condensed.ttf) format("truetype");font-weight:100 900;font-display:swap}@font-face{font-family:Display Barlow Condensed;src:url(/fonts/display/barlow_condensed.ttf) format("truetype");font-display:swap}@font-face{font-family:Display Merriweather;src:url(/fonts/display/merriweather.ttf) format("truetype");font-weight:100 900;font-display:swap}@font-face{font-family:Display Playfair Display;src:url(/fonts/display/playfair_display.ttf) format("truetype");font-weight:100 900;font-display:swap}@font-face{font-family:Display Libre Baskerville;src:url(/fonts/display/libre_baskerville.ttf) format("truetype");font-weight:100 900;font-display:swap}@font-face{font-family:Display Bebas Neue;src:url(/fonts/display/bebas_neue.ttf) format("truetype");font-display:swap}@font-face{font-family:Display Orbitron;src:url(/fonts/display/orbitron.ttf) format("truetype");font-weight:100 900;font-display:swap}@font-face{font-family:Display DS Digital;src:url(/fonts/display/ds_digital.ttf) format("truetype");font-weight:100 699;font-display:swap}@font-face{font-family:Display DS Digital;src:url(/fonts/display/ds_digital_bold.ttf) format("truetype");font-weight:700 900;font-display:swap}@font-face{font-family:Display Emirates Essentials;src:url(/fonts/display/emirates_essentials.ttf) format("truetype");font-weight:100 699;font-display:swap}@font-face{font-family:Display Emirates Essentials;src:url(/fonts/display/emirates_essentials_bold.ttf) format("truetype");font-weight:700 900;font-display:swap}@font-face{font-family:Display Kathondu Extreme;src:url(/fonts/display/kathondu_extreme.otf) format("opentype");font-display:swap}@font-face{font-family:Display Play Pretend;src:url(/fonts/display/play_pretend.otf) format("opentype");font-display:swap}@font-face{font-family:Display Robot Crush;src:url(/fonts/display/robot_crush.ttf) format("truetype");font-display:swap}:root{color-scheme:light;--bg:#f7f8fb;--panel:#fff;--ink:#17202a;--muted:#65758b;--line:#d9e0ea;--brand:#0d7c66;--brand-strong:#075f4d;--danger:#b42318;--warn:#b54708;--surface-muted:#f8fafc;--success:var(--brand);--success-bg:#e3f5ef;--warning:var(--warn);--warning-bg:#fef3e2;--danger-bg:#fde8e6;--info:#2563eb;--info-bg:#eaf1fd;--neutral-strong:#111827;--icon-nav-size:21px;--icon-action-size:20px;--icon-inline-size:18px;--icon-micro-size:16px;--icon-action-box:40px;--icon-action-box-touch:44px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--shadow-sm:0 4px 16px rgba(17,24,39,.08)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Interface Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.workspace{min-height:100vh;display:flex;flex-direction:column}.topnav{position:-webkit-sticky;position:sticky;top:0;z-index:30;background:#10202a;color:#fff}.topnav-row{height:56px;gap:var(--space-4);padding:0 var(--space-5)}.topnav-brand,.topnav-row{display:flex;align-items:center}.topnav-brand{gap:8px;font-size:14px;font-weight:800;letter-spacing:.02em;flex:0 0 auto}.topnav-mobile-toggle{display:none;border:0;background:transparent;color:#fff;padding:6px;cursor:pointer;border-radius:var(--radius-sm)}.topnav-groups{display:flex;align-items:center;gap:2px;flex:1 1 auto}.topnav-group{position:relative}.topnav-link{display:inline-flex;align-items:center;gap:4px;border:0;background:transparent;color:#cfd9e2;font-size:13px;font-weight:700;padding:8px 12px;border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap}.topnav-link:hover{background:hsla(0,0%,100%,.09);color:#fff}.topnav-link.active{background:rgba(87,214,184,.18);color:#c7fff0}.topnav-popover{position:absolute;top:calc(100% + 6px);left:0;min-width:220px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:6px;display:grid;grid-gap:2px;gap:2px;z-index:40}.topnav-popover a{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:var(--radius-sm);color:var(--ink);font-size:13px;font-weight:600}.topnav-popover a:hover{background:var(--surface-muted)}.topnav-popover a.active{background:var(--success-bg);color:var(--success)}.topnav-signout{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:#cfd9e2;font-size:13px;font-weight:700;padding:8px 10px;border-radius:var(--radius-sm);cursor:pointer;flex:0 0 auto}.topnav-signout:hover{background:hsla(0,0%,100%,.09);color:#fff}.account-menu{flex:0 0 auto}.account-menu-trigger{display:inline-flex;align-items:center;gap:8px;border:0;background:transparent;padding:4px;border-radius:50%;cursor:pointer}.account-menu-trigger.active,.account-menu-trigger:hover{background:hsla(0,0%,100%,.09)}.account-menu-trigger:focus-visible{outline:2px solid #57d6b8;outline-offset:2px}.account-menu-label{display:none}.account-menu-trigger-labeled{width:100%;border-radius:var(--radius-sm);padding:11px 10px;justify-content:flex-start}.account-menu-trigger-labeled.active,.account-menu-trigger-labeled:hover{background:var(--surface-muted)}.account-menu-trigger-labeled .account-menu-label{display:inline;color:var(--ink);font-weight:700;font-size:14px}.account-avatar{width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:rgba(87,214,184,.22);color:#c7fff0;font-size:11px;font-weight:800;flex:0 0 auto}.account-avatar-large{width:38px;height:38px;font-size:14px;background:var(--success-bg);color:var(--success)}.account-popover{left:auto;right:0;min-width:260px;max-width:calc(100vw - 24px)}.account-popover-header{display:flex;align-items:flex-start;gap:10px;padding:8px 10px 10px}.account-popover-header strong{display:block;color:var(--ink);font-size:13px;overflow-wrap:anywhere}.account-popover-header small{display:block;color:var(--muted);font-size:12px;overflow-wrap:anywhere;margin-top:1px}.account-role-pill{margin-top:6px;font-size:11px}.account-popover-divider{height:1px;margin:4px 2px;background:var(--line)}.account-popover-action{display:block;width:100%;text-align:left;border:0;background:transparent;color:var(--ink);font-size:13px;font-weight:600;padding:9px 10px;border-radius:var(--radius-sm);cursor:pointer;min-height:38px}.account-popover-action:hover{background:var(--surface-muted)}.password-toggle{flex:0 0 auto;border:0;background:transparent;color:var(--muted);cursor:pointer;padding:4px;display:grid;place-items:center}.password-toggle:hover{color:var(--ink)}.mobile-drawer-account{padding:6px 4px}.mobile-drawer-account .account-popover{right:auto;left:0;max-width:calc(100vw - 48px)}@media (max-width:480px){.account-popover{right:-8px}}.mobile-drawer-backdrop{position:fixed;inset:0;z-index:50;background:rgba(7,17,20,.46);display:none}.mobile-drawer{width:min(300px,84vw);height:100%;background:var(--panel);padding:var(--space-4);display:flex;flex-direction:column;gap:2px;overflow-y:auto}.mobile-drawer-header{display:flex;align-items:center;justify-content:space-between;color:var(--ink);margin-bottom:var(--space-3)}.mobile-drawer-header .topnav-brand{color:var(--ink)}.mobile-drawer-header button{border:0;background:transparent;color:var(--muted);cursor:pointer;padding:4px}.mobile-drawer>a{display:flex;align-items:center;gap:10px;padding:11px 10px;border-radius:var(--radius-sm);color:var(--ink);font-weight:700;font-size:14px}.mobile-drawer>a.active,.mobile-drawer>a:hover{background:var(--success-bg);color:var(--success)}.mobile-drawer-group{margin-top:var(--space-3);display:grid;grid-gap:2px;gap:2px}.mobile-drawer-group-label{padding:0 10px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-bottom:4px}.mobile-drawer-group a{display:flex;align-items:center;gap:10px;padding:11px 10px;border-radius:var(--radius-sm);color:var(--ink);font-weight:600;font-size:14px}.mobile-drawer-group a.active,.mobile-drawer-group a:hover{background:var(--success-bg);color:var(--success)}.mobile-drawer-signout{margin-top:auto;gap:10px;padding:11px 10px;border:0;border-radius:var(--radius-sm);color:var(--ink);font-weight:700;font-size:14px;cursor:pointer}.mobile-drawer-signout,.workspace-tabs{display:flex;align-items:center;background:var(--surface-muted)}.workspace-tabs{gap:4px;padding:6px var(--space-5) 0;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:thin;position:-webkit-sticky;position:sticky;top:56px;z-index:29}.workspace-tab{display:inline-flex;align-items:center;gap:8px;min-height:32px;padding:0 12px;font-size:13px;font-weight:600;line-height:1;color:var(--muted);border-radius:var(--radius-sm) var(--radius-sm) 0 0;white-space:nowrap;flex:0 0 auto}.workspace-tab>svg{flex:0 0 auto}.workspace-tab-label{display:block;max-width:220px;overflow:hidden;text-overflow:ellipsis}.workspace-tab:hover{color:var(--ink)}.workspace-tab.active{background:var(--panel);color:var(--ink);box-shadow:inset 0 -2px 0 var(--brand)}.workspace-tab-close{display:inline-grid;place-items:center;width:16px;height:16px;padding:0;border:0;border-radius:4px;background:transparent;color:inherit;opacity:.6;cursor:pointer}.workspace-tab-close:hover{opacity:1;background:rgba(0,0,0,.08)}.workspace-tabs-mobile{display:none;position:-webkit-sticky;position:sticky;top:56px;z-index:29;padding:8px var(--space-4);background:var(--surface-muted);border-bottom:1px solid var(--line)}.workspace-tabs-mobile-trigger{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);background:var(--panel);border-radius:var(--radius-sm);padding:7px 12px;font-size:13px;font-weight:700;color:var(--ink);cursor:pointer}.workspace-tabs-mobile-trigger>span:first-of-type{max-width:min(64vw,260px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workspace-tabs-count{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 4px;border-radius:9px;background:var(--brand);color:#fff;font-size:11px}.workspace-tabs-mobile-list{position:absolute;top:calc(100% + 4px);left:var(--space-4);right:var(--space-4);background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:6px;z-index:40}.workspace-tabs-mobile-heading{display:block;padding:6px 8px 4px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.workspace-tabs-mobile-item{justify-content:space-between;gap:6px}.workspace-tabs-mobile-item,.workspace-tabs-mobile-item a{display:flex;align-items:center;border-radius:var(--radius-sm)}.workspace-tabs-mobile-item a{flex:1 1 auto;min-width:0;gap:7px;padding:8px;font-size:13px;font-weight:600;color:var(--ink)}.workspace-tabs-mobile-item a span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.finance-workspace-tabs{display:flex;align-items:flex-end;gap:2px;min-width:0;padding:3px var(--space-5) 0;border-bottom:1px solid var(--line);background:var(--panel);overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;position:-webkit-sticky;position:sticky;top:95px;z-index:28}.finance-workspace-tab{flex:0 0 auto;color:var(--muted);border-radius:5px 5px 0 0;box-shadow:inset 0 -2px 0 transparent}.finance-workspace-tab,.finance-workspace-tab>a{display:inline-flex;align-items:center;min-width:0;min-height:29px}.finance-workspace-tab>a{gap:6px;padding:0 10px;color:inherit;font-size:12px;font-weight:700;white-space:nowrap}.finance-workspace-client-tab>a{padding-right:4px}.finance-workspace-client-tab>a span{display:block;max-width:190px;overflow:hidden;text-overflow:ellipsis}.finance-workspace-tab.active,.finance-workspace-tab:hover{color:var(--ink);background:var(--surface-muted)}.finance-workspace-tab.active{box-shadow:inset 0 -2px 0 var(--brand)}.finance-workspace-tab-close{display:inline-grid;place-items:center;flex:0 0 auto;width:18px;height:18px;margin-right:5px;padding:0;border:0;border-radius:4px;background:transparent;color:inherit;opacity:.62;cursor:pointer}.finance-workspace-tab-close:focus-visible,.finance-workspace-tab-close:hover{opacity:1;background:rgba(0,0,0,.08)}.workspace-tabs-mobile-item.active a{color:var(--success);background:var(--success-bg)}.workspace-tabs-mobile-item button{border:0;background:transparent;color:var(--muted);padding:6px;cursor:pointer}@media (max-width:900px){.topnav-mobile-toggle{display:inline-flex;align-items:center}.topnav-groups{display:none}.mobile-drawer-backdrop{display:flex;justify-content:flex-start}.workspace-tabs{display:none}.workspace-tabs-mobile{display:block}.finance-workspace-tabs{top:108px;padding-inline:var(--space-4)}}.main{min-width:0;padding:28px}.workspace-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-3)}.workspace-header h1{margin:2px 0 0}.workspace-eyebrow{margin:0;color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.workspace-subnav{display:flex;align-items:center;gap:2px;border-bottom:1px solid var(--line);margin-bottom:var(--space-4);overflow-x:auto}.workspace-subnav a,.workspace-subnav button,.workspace-subnav span{display:inline-flex;align-items:center;gap:6px;padding:10px 12px;font-size:13px;font-weight:700;color:var(--muted);border:0;background:transparent;cursor:pointer;white-space:nowrap;box-shadow:inset 0 -2px 0 transparent}.workspace-subnav a:hover,.workspace-subnav button:hover{color:var(--ink)}.workspace-subnav .active,.workspace-subnav button.active{color:var(--success);box-shadow:inset 0 -2px 0 var(--brand)}.workspace-panel{display:grid;grid-gap:var(--space-4);gap:var(--space-4)}.workspace-panel-note{font-size:13px}.section-subheading{margin:0 0 8px;font-size:14px;font-weight:800;color:var(--ink)}.location-summary-strip{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);padding:10px var(--space-4);margin-bottom:var(--space-3);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-muted);font-size:13px}.location-summary-strip span{display:flex;align-items:center;gap:6px;color:var(--ink)}.location-summary-strip span strong{color:var(--muted);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.location-summary-strip a{margin-left:auto}.danger-zone{display:grid;grid-gap:8px;gap:8px;padding:14px 16px;border:1px solid #f3c2c2;border-radius:var(--radius-md);background:#fef2f2}.danger-zone strong{color:var(--danger)}.workspace-panel-note a{color:var(--brand);font-weight:700}.media-panel-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.media-compact-table{border:1px solid var(--line);border-radius:var(--radius-md);overflow:hidden}.media-compact-row{display:grid;grid-template-columns:var(--icon-action-box,40px) minmax(160px,1.6fr) 110px minmax(130px,1fr) 90px 100px;grid-gap:var(--space-3);gap:var(--space-3);align-items:center;padding:10px 14px;border-bottom:1px solid var(--line);background:var(--panel)}.media-row-head{display:contents}.media-preview-cell{justify-self:center}.tooltip-anchor{display:inline-flex}.tooltip-bubble{z-index:200;pointer-events:none;max-width:220px;padding:5px 9px;border-radius:var(--radius-sm);background:var(--neutral-strong,#111827);color:#fff;font-size:12px;font-weight:600;line-height:1.3;white-space:nowrap;box-shadow:var(--shadow-sm)}@media (pointer:coarse){.tooltip-bubble{display:none}}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.media-compact-row:last-child{border-bottom:0}.media-compact-header,.media-compact-row:hover{background:var(--surface-muted)}.media-compact-header{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;color:var(--muted);padding:8px 14px}.media-compact-header:hover{background:var(--surface-muted)}.media-name-link{border:0;background:transparent;padding:0;color:var(--ink);font-weight:700;font-size:13px;text-align:left;cursor:pointer}.media-name-link:hover{color:var(--brand);text-decoration:underline}.detail-drawer-backdrop{justify-content:flex-end;padding:0}.detail-drawer{width:min(480px,92vw);height:100vh;background:var(--panel);display:flex;flex-direction:column;box-shadow:-12px 0 40px rgba(11,25,31,.18)}.detail-drawer-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--line);flex:0 0 auto}.detail-drawer-header-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}.detail-drawer-header-actions .icon-button:not(:disabled){border-color:var(--brand);color:var(--brand)}.detail-schedule-card h3,.replacement-queue h3{margin:0 0 2px}.replacement-queue h4{margin:4px 0 0;padding-top:12px;border-top:1px solid var(--line);font-size:13px}.detail-drawer-header h2{margin:2px 0 0;font-size:18px}.detail-drawer-body{flex:1 1 auto;overflow-y:auto;padding:var(--space-4) var(--space-5) var(--space-6);display:grid;grid-gap:var(--space-4);gap:var(--space-4)}.detail-preview-trigger{display:inline-flex;align-items:center;gap:8px;width:-moz-fit-content;width:fit-content;border:1px solid var(--line);background:var(--surface-muted);border-radius:var(--radius-sm);padding:8px 12px;font-size:13px;font-weight:700;color:var(--ink);cursor:pointer}.detail-preview-trigger:hover{border-color:var(--brand);color:var(--brand)}.detail-actions-row{display:flex;flex-wrap:wrap;gap:8px}.detail-actions-row .icon-action{width:auto;min-width:0;padding:0 12px;gap:6px;display:inline-flex;align-items:center;font-size:12px}.detail-url-row{display:grid;grid-gap:6px;gap:6px}.detail-url-row code{word-break:break-all}.workspace-media-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:8px;gap:8px}.workspace-media-list li{display:grid;grid-template-columns:minmax(0,1fr) 110px auto;align-items:center;grid-gap:var(--space-3);gap:var(--space-3);padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel)}.entity-picker{position:relative}.entity-picker-popover{position:absolute;top:calc(100% + 6px);left:0;width:min(360px,86vw);background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:10px;z-index:45;display:grid;grid-gap:8px;gap:8px}.entity-picker-search{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--muted)}.entity-picker-search input{border:0;padding:0;width:100%;color:var(--ink)}.entity-picker-search input:focus{outline:none}.entity-picker-results{display:grid;grid-gap:2px;gap:2px;max-height:320px;overflow-y:auto}.entity-picker-item{display:grid;grid-gap:1px;gap:1px;text-align:left;padding:8px 10px;border:0;border-radius:var(--radius-sm);background:transparent;cursor:pointer}.entity-picker-item:hover{background:var(--surface-muted)}.entity-picker-item strong{font-size:13px;color:var(--ink)}.entity-picker-item span{font-size:12px;color:var(--muted)}.entity-picker-item small{font-size:11px;color:var(--muted)}.entity-picker-empty,.entity-picker-more{margin:0;padding:8px 10px;font-size:12px;color:var(--muted)}.entity-picker-header{border-bottom:1px solid var(--line);padding-bottom:8px;display:grid;grid-gap:4px;gap:4px}.entity-picker-manage{display:flex;align-items:center;justify-content:space-between;padding:9px 10px;border-radius:var(--radius-sm);background:var(--surface-muted);font-size:13px;font-weight:700;color:var(--ink)}.entity-picker-manage:hover{background:var(--success-bg);color:var(--success)}.entity-picker-manage:after{content:"→";font-weight:400;opacity:.6}.back-button{display:inline-flex;align-items:center;gap:5px;margin-bottom:16px;padding:0;border:0;background:none;color:var(--muted);font-size:13px;font-weight:700;letter-spacing:.01em;cursor:pointer}.back-button svg{transition:transform .15s ease}.back-button:hover{color:var(--brand-strong)}.back-button:hover svg{transform:translateX(-3px)}.app-loading{min-height:100vh;display:grid;place-items:center;background:var(--bg)}.app-loading span{width:22px;height:22px;border:2px solid #cbd5e1;border-top:2px solid var(--brand);border-radius:50%;animation:app-loading-spin .7s linear infinite}@keyframes app-loading-spin{to{transform:rotate(1turn)}}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-5)}.page-summary-line{margin:4px 0 0;color:var(--muted);font-size:13px}.page-summary-line strong{color:var(--ink);font-weight:800}.page-summary-sep{margin:0 8px;color:var(--line)}.page-summary-alert{color:var(--danger)!important}.content-actions-row,.content-switch-row{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}.content-switch-row{padding-top:var(--space-3);border-top:1px solid var(--line)}.content-switch-row label{display:grid;grid-gap:4px;gap:4px;min-width:260px}.playlist-header-actions{display:flex;align-items:center;gap:8px}.content-sequence-panel{margin-top:var(--space-4)}.content-sequence-toolbar{align-items:flex-start}.content-readonly-notice{margin-top:2px}.content-shared-warning{margin-top:var(--space-2);padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-soft,#f6f6f6)}.content-shared-warning p{margin:0}.content-shared-warning p+p{margin-top:2px}.content-sequence-list{display:grid;grid-gap:6px;gap:6px;min-width:0;margin-top:var(--space-3)}.content-sequence-row{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff}.content-sequence-position{flex:0 0 auto;min-width:22px;text-align:center;font-weight:800;color:var(--muted)}.content-sequence-info{display:grid;grid-gap:2px;gap:2px;min-width:0;flex:1 1 auto}.content-sequence-info span{font-size:12px}@media (max-width:900px){.content-sequence-row{flex-wrap:wrap}}.grid{display:grid;grid-gap:16px;gap:16px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.finance-metrics{grid-template-columns:repeat(5,minmax(0,1fr));gap:0;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-md);overflow:hidden}.grid.finance-metrics .panel{border:0;border-radius:0;border-right:1px solid var(--line)}.grid.finance-metrics .panel:last-child{border-right:0}.grid.three{gap:0;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-md);overflow:hidden}.grid.three .panel{border:0;border-radius:0;border-right:1px solid var(--line)}.grid.three .panel:last-child{border-right:0}.grid.three .metric-link{border-right:1px solid var(--line)}.grid.three .metric-link:last-child{border-right:0}.card,.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-md);padding:var(--space-4)}.section{padding-top:var(--space-3);border-top:1px solid var(--line)}.section:first-child{padding-top:0;border-top:0}.section-title{margin:0 0 2px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.section-hint,.section-title{font-size:12px;color:var(--muted)}.section-hint{margin:0 0 var(--space-2)}.meta-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));grid-gap:var(--space-3) var(--space-4);gap:var(--space-3) var(--space-4)}.meta-grid dt{margin:0 0 2px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.meta-grid dd{margin:0;font-size:13px;color:var(--ink);overflow-wrap:anywhere}.action-strip{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}@media (max-width:640px){.meta-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.metric{font-size:26px;font-weight:700}.metric-small{font-size:20px}.metric-link{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:4px;text-align:left;color:var(--ink);cursor:pointer}.metric-link:focus-visible,.metric-link:hover{border-color:var(--brand);box-shadow:0 0 0 3px rgba(40,135,113,.12)}.metric-link small{color:var(--muted)}.operations-page{display:grid;grid-gap:24px;gap:24px}.operations-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.operations-header h1{margin:2px 0 7px;font-size:30px;line-height:1.15}.operations-eyebrow,.operations-header .muted{margin:0}.operations-eyebrow{color:var(--brand);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.operations-refresh{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:12px;white-space:nowrap}.operations-now{min-height:86px;display:grid;grid-template-columns:minmax(210px,1.25fr) repeat(4,minmax(120px,.7fr));align-items:stretch;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel)}.operations-now-label,.operations-stat{min-width:0;display:flex;align-items:center;gap:11px;padding:15px 20px}.operations-now-label{background:#102a31;color:#fff}.operations-now-label>div,.operations-stat{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:2px}.operations-now-label small,.operations-stat span{color:#6f7e91;font-size:11px;font-weight:700;text-transform:uppercase}.operations-now-label small{color:#a9bbc2}.operations-now-label strong{font-size:15px}.operations-health-dot{width:11px;height:11px;flex:0 0 auto;border-radius:50%;box-shadow:0 0 0 5px hsla(0,0%,100%,.08)}.operations-health-dot.healthy{background:#42d3a5}.operations-health-dot.attention{background:#ffb454}.operations-stat{border-left:1px solid var(--line);color:var(--ink);transition:background-color .15s ease}.operations-stat:focus-visible,.operations-stat:hover{background:#f3f8f7}.operations-stat strong{font-size:24px;line-height:1}.operations-stat-action{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-left:1px solid var(--line);background:transparent;cursor:pointer;text-align:left}.operations-stat-action.has-alert span,.operations-stat-action.has-alert strong{color:var(--warn)}.operations-overview{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.75fr);grid-gap:32px;gap:32px}.operations-screens,.operations-section{min-width:0}.operations-section-heading{min-height:44px;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:11px;border-bottom:1px solid var(--line)}.operations-section-heading span{display:block;margin-bottom:2px;color:#8793a5;font-size:10px;font-weight:800;text-transform:uppercase}.operations-section-heading h2{margin:0;font-size:18px}.operations-section-heading>strong{padding-top:12px;font-size:12px}.operations-section-heading>strong.attention{color:var(--warn)}.operations-section-heading>strong.healthy{color:var(--brand)}.attention-list{display:grid}.attention-row{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;min-height:64px;display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;grid-gap:12px;gap:12px;padding:10px 4px;border:0;border-bottom:1px solid #e9edf3;background:transparent;color:var(--ink);text-align:left;cursor:pointer}.attention-row:focus-visible,.attention-row:hover{background:#f7faf9}.attention-icon{width:32px;height:32px;display:grid;place-items:center;border-radius:var(--radius-sm)}.attention-icon.device{background:#fff1e7}.attention-icon.finance{background:#fff7dc}.attention-copy,.attention-copy small,.attention-copy strong{min-width:0;display:block}.attention-copy strong{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.activity-feed-row small,.attention-copy small{margin-top:3px;color:var(--muted);font-size:11px}.attention-action{color:var(--brand-strong);font-size:12px;font-weight:700;white-space:nowrap}.attention-action b,.operations-screens-heading a b{margin-left:4px;font-size:15px}.attention-empty{min-height:80px;display:flex;align-items:center;gap:12px;color:var(--brand)}.attention-empty small,.attention-empty span,.attention-empty strong{display:block}.attention-empty strong{font-size:13px}.attention-empty small{margin-top:3px;color:var(--muted);font-size:11px}.operations-activity{padding-left:28px;border-left:1px solid var(--line)}.activity-feed{display:grid;padding-top:4px}.activity-feed-row{position:relative;min-height:53px;display:grid;grid-template-columns:12px minmax(0,1fr);grid-gap:10px;gap:10px;padding:9px 0}.activity-feed-row:before{content:"";position:absolute;top:24px;bottom:-9px;left:4px;width:1px;background:#dfe6ec}.activity-feed-row:last-child:before{display:none}.activity-feed-row i{width:9px;height:9px;margin-top:4px;border:2px solid #fff;border-radius:50%;background:#41a98f;box-shadow:0 0 0 1px #95cdbc;z-index:1}.activity-feed-row strong{display:-webkit-box;overflow:hidden;font-size:12px;font-weight:700;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2}.activity-feed-row small{display:block}.activity-feed-empty{padding:18px 0;color:var(--muted);font-size:12px}.operations-screens{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel)}.operations-screens-heading{min-height:66px;align-items:center;padding:12px 18px;background:#fbfcfd}.operations-screens-heading a{color:var(--brand-strong);font-size:12px;font-weight:700}.operations-screen-header,.operations-screen-row{display:grid;grid-template-columns:minmax(180px,1.15fr) minmax(92px,.55fr) minmax(150px,.9fr) minmax(82px,.5fr) minmax(145px,.8fr) minmax(155px,.85fr);grid-gap:14px;gap:14px;align-items:center}.operations-screen-header{min-height:40px;padding:8px 18px;border-bottom:1px solid var(--line);color:#8b97a8;font-size:10px;font-weight:800;text-transform:uppercase}.operations-sort{-webkit-appearance:none;-moz-appearance:none;appearance:none;min-width:0;display:inline-flex;align-items:center;gap:5px;width:-moz-fit-content;width:fit-content;padding:0;border:0;background:transparent;color:inherit;font:inherit;text-transform:inherit;cursor:pointer}.operations-sort span{color:#6b7890;font-size:10px}.operations-sort.active,.operations-sort:hover{color:var(--ink)}.operations-sort:focus-visible{outline:2px solid rgba(13,124,102,.3);outline-offset:3px}.operations-screen-row{min-height:72px;padding:10px 18px;border-bottom:1px solid #e9edf3;transition:background-color .15s ease}.operations-screen-row:last-child{border-bottom:0}.operations-screen-row:focus-visible,.operations-screen-row:hover{background:#f3f8f7}.operations-screen-contact,.operations-screen-name,.operations-screen-value{min-width:0}.operations-screen-name{display:grid;grid-template-columns:9px minmax(0,1fr);align-items:center;grid-gap:10px;gap:10px}.operations-screen-name>i{width:9px;height:9px;border-radius:50%}.operations-screen-name>i.online{background:#22a06b;box-shadow:0 0 0 4px #e0f4eb}.operations-screen-name>i.offline{background:#d83b32;box-shadow:0 0 0 4px #fde9e7}.operations-screen-contact small,.operations-screen-contact strong,.operations-screen-name small,.operations-screen-name span,.operations-screen-name strong,.operations-screen-value small,.operations-screen-value strong{min-width:0;display:block}.operations-screen-contact strong,.operations-screen-name strong,.operations-screen-value strong{overflow:hidden;font-size:12.5px;text-overflow:ellipsis;white-space:nowrap}.operations-screen-contact small,.operations-screen-name small,.operations-screen-value small{margin-top:3px;overflow:hidden;color:var(--muted);font-size:10.5px;text-overflow:ellipsis;white-space:nowrap}.operations-connection{width:-moz-fit-content;width:fit-content;padding:4px 8px;border:1px solid;border-radius:999px;font-size:10.5px;font-weight:800}.operations-connection.online{color:#168257;background:#f0faf5}.operations-connection.offline{color:#c73027;background:#fff7f6}.operations-screen-empty{padding:28px 18px;color:var(--muted);font-size:13px;text-align:center}@media (max-width:1100px){.operations-now{grid-template-columns:minmax(190px,1.1fr) repeat(4,minmax(105px,.7fr))}.operations-now-label,.operations-stat{padding-inline:14px}.operations-screen-header,.operations-screen-row{grid-template-columns:minmax(170px,1.1fr) 90px minmax(140px,.9fr) 70px minmax(130px,.8fr) minmax(140px,.8fr);gap:10px}}@media (max-width:900px){.operations-now{grid-template-columns:repeat(4,minmax(0,1fr))}.operations-now-label{grid-column:1/-1;min-height:66px}.operations-overview{grid-template-columns:1fr}.operations-activity{padding-left:0;border-left:0}.operations-screens{overflow-x:auto}.operations-screen-header,.operations-screen-row,.operations-screens-heading{min-width:820px}}@media (max-width:640px){.operations-page{gap:18px}.operations-header{align-items:stretch;flex-direction:column;gap:12px}.operations-header h1{font-size:25px}.operations-refresh{justify-content:space-between}.operations-now{grid-template-columns:repeat(2,minmax(0,1fr))}.operations-stat{min-height:70px;border-top:1px solid var(--line)}.operations-stat:nth-child(2),.operations-stat:nth-child(4){border-left:0}.operations-stat strong{font-size:21px}.attention-row{grid-template-columns:32px minmax(0,1fr)}.attention-action{grid-column:2;margin-top:-5px}.operations-section-heading>strong{max-width:120px;text-align:right}}.muted{color:var(--muted)}.form{grid-gap:12px;gap:12px;max-width:720px}.form,label{display:grid}label{grid-gap:6px;gap:6px;color:var(--muted);font-size:14px}input,select{width:100%;border:1px solid var(--line);border-radius:var(--radius-sm);padding:10px 12px;background:#fff;color:var(--ink)}button.primary{border:0;border-radius:var(--radius-sm);background:var(--brand);color:#fff;padding:11px 14px;cursor:pointer}button.primary:hover{background:var(--brand-strong)}a.secondary,button.secondary{border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;color:var(--ink);padding:10px 12px;cursor:pointer}.table{width:100%;border-collapse:collapse}.table td,.table th{border-bottom:1px solid var(--line);padding:10px;text-align:left;vertical-align:top}.compact-table td,.compact-table th{padding:6px 4px;font-size:13px}.activity-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:0 var(--space-5);gap:0 var(--space-5);margin-top:var(--space-3)}.activity-column{min-width:0;padding-left:var(--space-5);border-left:1px solid var(--line)}.activity-column:first-child{padding-left:0;border-left:0}@media (max-width:900px){.activity-columns{grid-template-columns:1fr;gap:var(--space-4)}.activity-column{padding-left:0;padding-top:var(--space-3);border-left:0;border-top:1px solid var(--line)}.activity-column:first-child{padding-top:0;border-top:0}}.table tbody tr{transition:background-color .15s ease}.table tbody tr:hover{background:#f2f9f6}.status{display:inline-block;border-radius:999px;padding:4px 9px;background:#e7f5ef;color:#09614f;font-size:12px}.screen-name-link{display:inline-block;margin:-5px -9px;padding:5px 9px;border-radius:var(--radius-md);color:var(--ink);text-decoration:none;font-weight:600;border:1px solid transparent;transition:background-color .15s ease,border-color .15s ease,transform .15s ease}.screen-name-link:focus-visible,.screen-name-link:hover{background:#e7f5ef;border-color:#bfe3d6;transform:translateY(-1px)}.action-toast{position:fixed;top:20px;right:20px;z-index:60;max-width:min(420px,calc(100vw - 40px));animation:action-toast-in .2s ease;pointer-events:none}.action-toast .status{display:block;pointer-events:auto;box-shadow:0 12px 30px -8px rgba(15,32,42,.35)}@keyframes action-toast-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.status.warn{background:#fff4e5;color:var(--warn)}.status.danger{background:#fee4e2;color:var(--danger)}.drag-row{cursor:-webkit-grab;cursor:grab}.map{width:100%;height:620px;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--line)}.registry-panel{display:grid;grid-gap:14px;gap:14px}.registry-filters{display:grid;grid-template-columns:minmax(260px,1fr) 220px 120px;align-items:flex-end;grid-gap:12px;gap:12px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-md);padding:14px}.registry-total{min-height:42px;display:grid;align-content:center;border:1px solid var(--line);border-radius:var(--radius-sm);padding:8px 12px;background:#f8fafc}.registry-total strong{font-size:20px;line-height:1}.registry-total span{color:var(--muted);font-size:12px}.registry-table{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-md);overflow:hidden}.registry-header,.registry-row{display:grid;grid-template-columns:minmax(180px,.95fr) minmax(128px,.62fr) minmax(92px,.38fr) minmax(150px,.7fr) minmax(360px,1.6fr);grid-gap:8px;gap:8px;align-items:center}.registry-header>*,.registry-row>*{min-width:0}.registry-header{padding:12px 16px;color:#97a3b6;font-size:12px;font-weight:800;text-transform:uppercase;border-bottom:1px solid var(--line);background:#fbfcfe}.registry-header>:last-child{justify-self:end;padding-right:8px}.registry-sort-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:flex-start;gap:5px;width:-moz-fit-content;width:fit-content;min-width:0;padding:0;border:0;background:transparent;color:inherit;font:inherit;text-transform:inherit;cursor:pointer}.registry-sort-button span{color:#6b7890;font-size:11px}.registry-sort-button.active,.registry-sort-button:hover{color:var(--ink)}.registry-sort-button:focus-visible{outline:2px solid rgba(23,105,255,.35);outline-offset:3px;border-radius:3px}.table-sort-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:flex-start;gap:5px;padding:0;border:0;background:transparent;color:inherit;font:inherit;text-align:left;text-transform:inherit;cursor:pointer}.table-sort-button span{color:#6b7890;font-size:11px}.table-sort-button.active,.table-sort-button:hover{color:var(--ink)}.table-sort-button:focus-visible{outline:2px solid rgba(23,105,255,.35);outline-offset:3px;border-radius:3px}.registry-row{min-height:82px;padding:10px 16px;border-bottom:1px solid #edf1f6;transition:background-color .15s ease}.registry-row:hover{background:#f2f9f6}.registry-row:last-child{border-bottom:0}.registry-date,.registry-details,.registry-status,.registry-user{display:grid;grid-gap:4px;gap:4px}.registry-user strong{color:#1769ff;overflow-wrap:anywhere}.registry-date strong,.registry-details strong,.registry-user span{color:#5f6f93;font-size:14px}.registry-date small,.registry-date span,.registry-details span,.registry-user small{color:#8a96b2;font-size:12px;overflow-wrap:anywhere}.registry-status{align-content:center;justify-items:start}.replacement-queue{display:grid;grid-gap:10px;gap:10px}.replacement-queue h3{margin:0;font-size:14px}.replacement-queue-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:6px;gap:6px}.replacement-queue-list li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fbfcfe}.replacement-queue-list li>div{display:grid;grid-gap:2px;gap:2px;min-width:0}.replacement-queue-list li strong{font-size:13px}.replacement-queue-list li small{color:#64748b;font-size:11px}.replacement-queue-add{display:grid;grid-gap:8px;gap:8px;padding:10px;border:1px dashed var(--line);border-radius:var(--radius-sm)}.replacement-queue-ends{display:flex;gap:8px}.replacement-queue-ends label{flex:1 1}.replacement-queue-upload{width:auto;padding:0 14px;gap:6px;justify-self:start}.media-replace-note{margin:4px 0 0;color:#55657b;font-size:11px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.pill{display:inline-flex;width:-moz-fit-content;width:fit-content;align-items:center;border-radius:var(--radius-sm);padding:4px 8px;font-size:12px;font-weight:700}.pill.approved{background:var(--success-bg);color:var(--success)}.pill.pending{background:var(--warning-bg);color:var(--warning)}.pill.blocked{background:var(--danger-bg);color:var(--danger)}.pill.outline{border:1px solid #7c3aed;background:#fff;color:#6d28d9}.registry-actions{display:flex;align-items:center;justify-content:flex-end;align-self:center;gap:8px;flex-wrap:wrap;min-width:0}.icon-action,.role-chip{display:inline-flex;align-items:center;justify-content:center;min-width:var(--icon-action-box);height:var(--icon-action-box);border:0;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-weight:800}.icon-action:disabled{opacity:.4;cursor:not-allowed}@media (pointer:coarse){.icon-action,.role-chip{min-width:var(--icon-action-box-touch);height:var(--icon-action-box-touch)}.icon-button.preview-trigger{width:var(--icon-action-box-touch);height:var(--icon-action-box-touch)}}.icon-action.dark{background:var(--neutral-strong)}.finance-toolbar-caption,.icon-action-caption{display:none}@media (max-width:640px){.action-toolbar,.finance-toolbar{gap:var(--space-2,8px)}.action-toolbar .icon-action,.finance-toolbar .icon-action{width:auto;min-width:var(--icon-action-box-touch);height:auto;min-height:var(--icon-action-box-touch);flex-direction:column;gap:3px;padding:6px 10px}.action-toolbar .finance-toolbar-caption,.action-toolbar .icon-action-caption,.finance-toolbar .finance-toolbar-caption,.finance-toolbar .icon-action-caption{display:block;font-size:11px;font-weight:700;color:var(--ink)}}.modal-shell{display:flex;flex-direction:column;max-height:min(720px,90vh);background:var(--panel);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.modal-shell-small{width:min(420px,94vw)}.modal-shell-medium{width:min(560px,94vw)}.modal-shell-large{width:min(760px,96vw)}.modal-shell-wide{width:min(1100px,97vw)}.modal-shell-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);padding:16px 18px;border-bottom:1px solid var(--line)}.modal-shell-header-actions{display:flex;align-items:center;gap:6px;flex:0 0 auto}.modal-shell-body-flush{padding:0}.modal-shell-header h2{margin:0;font-size:17px}.modal-shell-header p{margin:4px 0 0;font-size:13px}.modal-shell-body{flex:1 1 auto;min-height:0;overflow:auto;padding:18px}.modal-shell-footer{display:flex;justify-content:flex-end;gap:var(--space-2);padding:14px 18px;border-top:1px solid var(--line)}@media (max-width:480px){.modal-shell{width:100vw;max-height:100vh;height:100vh;border-radius:0}}.icon-action-spinner{width:14px;height:14px;border-radius:50%;border:2px solid;border-top:2px solid transparent;animation:icon-action-spin .7s linear infinite}@keyframes icon-action-spin{to{transform:rotate(1turn)}}.icon-action.neutral{background:#fff;border:1px solid var(--line);color:var(--ink)}.icon-action.neutral:hover{border-color:var(--brand);background:var(--surface-muted)}.icon-action.danger{background:var(--danger)}.icon-action.blue,.icon-action.soft{background:var(--info)}.icon-action.edit,.icon-action.teal{background:var(--success)}.icon-action.amber{background:#ca8a04}.icon-action.warning{background:var(--warning)}.icon-action.green{background:var(--success)}.icon-action.file-action{position:relative;display:inline-flex;align-items:center;justify-content:center;overflow:hidden}.icon-action.file-action input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}.icon-action.file-action.busy{opacity:.6;pointer-events:none}.icon-action.violet{background:#7c3aed}.text-action{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;color:var(--ink);font-size:13px;font-weight:700;cursor:pointer;white-space:nowrap}.text-action:hover{border-color:var(--brand);background:var(--surface-muted)}.row-menu{position:relative;display:inline-flex}.row-menu-popover{position:absolute;top:calc(100% + 4px);right:0;min-width:180px;z-index:20}.row-menu-floating,.row-menu-popover{display:grid;grid-gap:2px;gap:2px;padding:6px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.row-menu-floating{min-width:190px}.row-menu-floating button,.row-menu-popover button{width:100%;padding:8px 10px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--ink);font-size:13px;font-weight:600;text-align:left;cursor:pointer}.row-menu-floating button:hover,.row-menu-popover button:hover{background:var(--surface-muted)}.row-menu-floating .row-menu-danger,.row-menu-popover .row-menu-danger{color:var(--danger)}.role-actions{display:flex;gap:6px;margin-left:4px}.role-chip{display:inline-grid;place-items:center;background:#fff;border:1px solid var(--line);color:var(--ink)}.role-chip:hover{border-color:var(--brand);background:var(--surface-muted)}.role-chip.active{border-color:var(--brand);background:var(--success-bg)}.protected-account{display:inline-flex;align-items:center;min-height:36px;border:1px solid #d7b56d;border-radius:var(--radius-sm);background:#fff8e6;color:#8a5d00;padding:0 12px;font-size:12px;font-weight:800}.icon-action-slot{display:inline-flex;min-width:36px;height:36px}.role-badge{width:-moz-fit-content;width:fit-content}.role-badge.green{background:#16a34a;color:#fff}.role-badge.amber,.role-badge.green{padding:2px 8px;border-radius:var(--radius-sm)}.role-badge.amber{background:#f59e0b;color:#3d2c00}.role-badge.plain{color:#12182b}.empty-state{padding:36px 16px;color:var(--muted);text-align:center}.media-console{display:grid;grid-gap:14px;gap:14px}.client-console{display:grid;grid-template-columns:320px minmax(0,1fr);grid-gap:14px;gap:14px;align-items:start}.client-list-panel{display:grid;align-content:start;max-height:calc(100vh - 130px);overflow:auto}.compact-filters{grid-template-columns:1fr;border:0;border-bottom:1px solid var(--line);border-radius:0}.client-list-item{display:grid;grid-gap:4px;gap:4px;width:100%;border:0;border-bottom:1px solid #edf1f6;background:#fff;color:var(--ink);padding:12px 14px;text-align:left;cursor:pointer}.client-list-item.active,.client-list-item:hover{background:#eefaf6}.client-list-item strong{color:#1769ff}.client-list-item small,.client-list-item span{color:var(--muted);font-size:12px}.client-detail{display:grid;grid-gap:14px;gap:14px}.form-grid{display:grid;grid-gap:12px;gap:12px}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.contract-mode-note{display:grid;align-content:start;grid-gap:5px;gap:5px;padding:12px 14px;border-radius:var(--radius-md);background:#e7f5ef;color:#09614f}.contract-mode-note strong{font-size:13.5px}.contract-mode-note small{color:#0f6b57;line-height:1.45}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.client-actions-strip{display:flex;flex-wrap:wrap;gap:10px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:var(--radius-md);padding:12px}.media-create-grid{display:grid;grid-template-columns:.9fr 1.2fr .9fr;grid-gap:10px;gap:10px}.media-create-grid .panel{align-content:start;padding:13px 14px}.media-create-grid h2{margin:0 0 8px;font-size:15px}.media-create-grid .form{gap:8px}.media-create-grid .muted{margin:0;font-size:12.5px}.upload-dropzone{border-style:dashed;transition:border-color .16s ease,background .16s ease}.upload-dropzone.active{border-color:var(--brand);background:#eefaf6}.upload-dropzone input[type=file]{min-height:40px}.media-create-grid.single{grid-template-columns:1fr}.media-create-grid.single .upload-dropzone{min-height:150px;padding:20px 22px}.upload-file-list{margin:10px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px;max-height:130px;overflow:auto}.upload-file-list li{padding:5px 10px;background:#f4f6f9;border:1px solid var(--line);border-radius:var(--radius-sm);font-size:12.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inline-field{display:flex;gap:8px}.inline-field>*{flex:1 1;min-width:0}.inline-field>button{flex:0 0 auto;white-space:nowrap}.panel-form-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.panel-form-heading h2{margin:0}button.secondary.compact{padding:0 12px;min-height:38px;font-size:13px}.media-header,.media-row{grid-template-columns:minmax(170px,1.25fr) minmax(105px,.55fr) minmax(90px,.4fr) minmax(120px,.55fr) minmax(132px,.5fr)}.media-row .registry-actions{gap:6px;justify-content:flex-start}.media-row .icon-action{min-width:42px;padding:0 8px}.icon-link{min-width:58px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);color:#fff;font-size:13px;font-weight:800}.icon-link.soft{background:#2563eb}.playlist-workbench{display:grid;grid-template-columns:280px minmax(0,1fr);grid-gap:14px;gap:14px}.playlist-studio{display:grid;grid-template-columns:240px minmax(420px,1fr) 330px;grid-gap:14px;gap:14px;align-items:start}.playlist-right,.playlist-sidebar{display:grid;grid-gap:10px;gap:10px}.playlist-sidebar{max-height:calc(100vh - 122px);overflow:auto}.playlist-create{display:grid;grid-gap:8px;gap:8px;padding:12px;border-bottom:1px solid var(--line);background:#fbfcfe}.playlist-list-item{display:grid;grid-gap:4px;gap:4px;width:100%;border:0;border-bottom:1px solid #edf1f6;background:#fff;color:var(--ink);padding:12px;text-align:left;cursor:pointer}.playlist-list-item.active,.playlist-list-item:hover{background:#eefaf6}.playlist-list-item strong{color:#1769ff;overflow-wrap:anywhere}.playlist-list-item span{color:var(--muted);font-size:12px}.playlist-center{display:grid;grid-gap:12px;gap:12px;min-width:0}.playlist-summary{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;row-gap:6px;gap:12px}.playlist-sequence-count{flex:0 0 auto;white-space:nowrap;font-size:15px;font-weight:600;color:var(--ink)}.playlist-modal-meta{margin-top:2px!important;font-size:12px;font-weight:400;line-height:1.4}.playlist-modal-meta strong{font-weight:600;color:var(--ink)}.toolbar-tool-action{border-color:transparent;background:transparent;color:var(--muted);font-weight:500}.toolbar-tool-action:hover{border-color:var(--line);background:#f8fafc;color:var(--ink)}.playlist-metrics{flex-wrap:wrap;justify-content:flex-end}.playlist-metrics,.sequence-search{display:flex;gap:8px;align-items:center}.sequence-search{margin-right:auto}.sequence-search-field{position:relative;display:flex;align-items:center;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;padding:0 8px;color:#b7bfcc}.sequence-search-field input{border:none;outline:none;width:190px;font-size:13px;padding:7px 22px 7px 6px;color:var(--ink);background:transparent}.sequence-search-clear{position:absolute;right:4px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:18px;height:18px;border:none;border-radius:50%;background:transparent;color:#9aa4b2;cursor:pointer}.sequence-search-clear:hover{background:#eef1f6;color:var(--ink)}.sequence-search-nav{display:flex;align-items:center;gap:2px}.sequence-search-count{display:inline-block;min-width:84px;white-space:nowrap;font-size:12px;color:var(--muted);margin-right:2px}.sequence-search-step{display:grid;place-items:center;width:22px;height:22px;border:none;border-radius:5px;background:transparent;color:var(--muted);cursor:pointer}.sequence-search-step:hover:not(:disabled){background:#eef1f6;color:var(--ink)}.sequence-search-step:disabled{opacity:.35;cursor:default}.playlist-metrics span{border:1px solid var(--line);border-radius:var(--radius-sm);background:#f8fafc;padding:8px 10px;color:var(--muted);font-size:12px}.playlist-metrics strong{color:var(--ink)}.playlist-metrics .playlist-duration-strip,.playlist-metrics .playlist-duration-strip *{border:0;background:transparent;border-radius:0;padding:0}.playlist-duration-strip{display:inline-flex;align-items:baseline;gap:6px;white-space:nowrap;font-size:12px;color:var(--muted)}.playlist-duration-strip strong{font-size:13px;color:var(--ink)}.playlist-duration-strip [aria-hidden=true]{color:#c3cad5}.playlist-duration-warning{color:#b45309}.playlist-metrics .clean-dot,.playlist-metrics .dirty-dot{border:0;padding:0;background:transparent;border-radius:0}.dirty-dot{color:#c2410c!important}.clean-dot,.dirty-dot{font-weight:600;font-size:12px;white-space:nowrap}.clean-dot{color:#15803d!important}.playlist-sequence-header,.playlist-sequence-row{display:grid;grid-template-columns:44px minmax(190px,1.7fr) minmax(135px,1fr) minmax(120px,.8fr) 132px;grid-gap:10px;gap:10px;align-items:center}.playlist-sequence-header{padding:11px 14px;color:#97a3b6;font-size:12px;font-weight:800;text-transform:uppercase;border-bottom:1px solid var(--line);background:#fbfcfe}.playlist-sequence-row{min-height:70px;padding:8px 14px;border-bottom:1px solid #edf1f6;cursor:-webkit-grab;cursor:grab}.playlist-sequence-row:hover{background:#fafbfd}.playlist-sequence-row:last-child{border-bottom:0}.sequence-row-highlight{background:#fef9c3;box-shadow:inset 3px 0 0 #eab308;transition:background .2s ease}.playlist-sequence-row>*{min-width:0}.sequence-number{width:32px;height:32px;display:grid;place-items:center;border-radius:var(--radius-sm);background:#eef4f7;color:var(--muted);font-weight:800}.sequence-position-input{min-width:32px;padding:0;border:1px solid transparent;text-align:center;cursor:text;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.sequence-position-input:focus,.sequence-position-input:hover{border-color:#16856f;background:#fff;outline:2px solid #16856f22}.sequence-position-input::-webkit-inner-spin-button,.sequence-position-input::-webkit-outer-spin-button{margin:0;-webkit-appearance:none;appearance:none}.sequence-client,.sequence-title{display:grid;grid-gap:3px;gap:3px;min-width:0}.sequence-client strong,.sequence-title strong{overflow-wrap:anywhere}.sequence-client small,.sequence-title small{color:var(--muted);font-size:12px}.sequence-title .media-replace-note{margin-top:0}.playlist-sequence-row .sequence-media-title{display:block;min-width:0;overflow:hidden;font-size:14px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.playlist-sequence-row .sequence-client strong{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600}.sequence-media-meta{display:flex;align-items:center;gap:8px;min-width:0;color:var(--muted);font-size:12px}.sequence-preview-link{display:inline-flex;align-items:center;flex:0 0 auto;gap:4px;min-height:22px;border:0;border-radius:5px;background:transparent;color:#5e7188;cursor:pointer;font-size:12px;font-weight:600;padding:2px 4px 2px 0}.sequence-preview-link:focus-visible,.sequence-preview-link:hover{color:#1769ff;outline:none}.sequence-media-meta small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.playlist-actions-panel{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}.playlist-effect-slot{position:relative;min-height:54px;display:grid;place-items:center;padding:8px 18px 10px;border-bottom:1px solid #edf1f6;background:linear-gradient(90deg,transparent,transparent 9%,rgba(134,150,170,.22) 0,rgba(134,150,170,.22) 91%,transparent 0)}.playlist-effect-slot:after,.playlist-effect-slot:before{content:"";position:absolute;left:50%;width:1px;height:10px;background:#c8d2df;transform:translateX(-50%)}.playlist-effect-slot:before{top:0}.playlist-effect-slot:after{bottom:0}.playlist-effect-add{position:relative;z-index:1;width:min(78%,520px);border:1px dashed #c3cfdd;border-radius:var(--radius-sm);background:#fff;color:#65758a;padding:6px 12px;cursor:pointer;font-size:11px;font-weight:600;box-shadow:0 1px 3px rgba(15,23,42,.04)}.playlist-effect-inline{position:relative;z-index:1;width:min(78%,560px);display:grid;grid-template-columns:18px minmax(0,1fr) max-content max-content;align-items:center;grid-gap:8px;gap:8px;border:1px solid #c9d7e8;border-radius:var(--radius-sm);background:#fbfdff;color:#55657b;padding:7px 8px;cursor:-webkit-grab;cursor:grab;box-shadow:0 4px 12px rgba(15,23,42,.07)}.playlist-effect-inline:focus-within,.playlist-effect-inline:hover{border-color:#9eb4cf;background:#f6faff}.playlist-effect-copy{display:grid;grid-gap:1px;gap:1px;min-width:0}.playlist-effect-copy strong{display:block;overflow:hidden;color:#34445b;font-size:12px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.playlist-effect-copy small{color:#8592a6;font-size:11px}.playlist-effect-duration{display:inline-grid;min-width:58px;place-items:center;border:1px solid #dce5ef;border-radius:var(--radius-sm);background:#fff;color:#516176;font-size:11px;font-weight:700;white-space:nowrap;padding:4px 7px}.playlist-effect-actions{display:flex;align-items:center;gap:4px}.playlist-effect-inline .icon-action{min-width:30px;width:30px;height:30px}.playlist-effect-inline [aria-hidden=true]{color:#a7b1c0}.video-duration{display:grid;grid-gap:3px;gap:3px;color:var(--muted);font-size:12px}.video-duration strong{color:var(--ink);font-size:13px}.playlist-effects{display:grid;grid-gap:10px;gap:10px;border:1px dashed #9db9e8;border-radius:var(--radius-md);background:#f5f9ff;padding:12px}.playlist-effects>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.playlist-effects-empty,.playlist-effects>div span{color:var(--muted);font-size:12px}.playlist-effect-row{display:grid;grid-template-columns:100px minmax(110px,1fr) minmax(150px,1.25fr) 110px 36px;grid-gap:8px;gap:8px;align-items:flex-end;border:1px solid #c9dcfb;border-radius:var(--radius-sm);background:#fff;padding:10px}.playlist-effect-row>span{align-self:center;color:#2563eb;font-size:12px;font-weight:800;text-transform:uppercase}.playlist-effect-row label{gap:4px;font-size:11px}.playlist-effect-row input,.playlist-effect-row select{min-height:34px;padding:6px 8px}.media-pick-list{max-height:430px;overflow:auto;overflow-x:hidden}.media-pick-row{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:10px;gap:10px;align-items:center;padding:10px 12px;border-bottom:1px solid #edf1f6}.media-pick-row:last-child{border-bottom:0}.media-pick-row>div{display:grid;grid-gap:3px;gap:3px;min-width:0}.media-pick-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.media-pick-row strong{color:#1769ff;overflow-wrap:anywhere}.media-pick-row small,.media-pick-row span{color:var(--muted);font-size:12px;overflow-wrap:anywhere}.media-pick-row-editor{grid-template-columns:var(--icon-action-box,40px) minmax(0,1fr) var(--icon-action-box,40px);gap:10px;align-items:center;min-height:74px;padding:10px 12px 10px 10px}.media-pick-row-editor>.icon-action,.media-pick-row-editor>.tooltip-anchor{align-self:center;flex:0 0 auto}.media-pick-copy{display:grid;min-width:0;grid-gap:4px;gap:4px;line-height:1.25}.media-pick-row-editor .media-pick-copy strong{color:#172033;font-size:13.5px;font-weight:600}.media-pick-client,.media-pick-row-editor .media-pick-copy strong{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.media-pick-client{color:#5d6b7f;font-size:12px}.media-pick-meta{display:flex;min-width:0;align-items:center;gap:6px;color:#7a8798;font-size:11.5px;white-space:nowrap}.media-pick-meta span{min-width:0;overflow:hidden;text-overflow:ellipsis}.media-pick-meta span+span:before{content:"·";margin-right:6px;color:#c2cad5}.playlist-layout{display:grid;grid-template-columns:minmax(260px,.7fr) minmax(320px,1.3fr);grid-gap:14px;gap:14px}.screen-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.screen-check-grid.one{grid-template-columns:1fr}.check-row{grid-template-columns:18px minmax(0,1fr);border:1px solid var(--line);border-radius:var(--radius-sm);padding:10px;color:var(--ink)}.check-row input{width:16px}.check-row span{display:grid;grid-gap:2px;gap:2px}.check-row small{color:var(--muted)}.playlist-row{display:grid;grid-template-columns:48px minmax(180px,1fr) 110px 110px 110px 110px;grid-gap:12px;gap:12px;align-items:center;min-height:72px;padding:10px 14px;border-bottom:1px solid #edf1f6;cursor:-webkit-grab;cursor:grab}.playlist-row:last-child{border-bottom:0}.playlist-row span{width:34px;height:34px;display:grid;place-items:center;border-radius:var(--radius-sm);background:#eef4f7;color:var(--muted);font-weight:800}.compact-field{gap:4px;font-size:11px}.compact-field input{height:34px;padding:6px 8px}.screen-header,.screen-row{grid-template-columns:minmax(210px,.95fr) minmax(150px,.62fr) minmax(100px,.38fr) minmax(170px,.7fr) minmax(430px,1.7fr)}.client-filters{grid-template-columns:minmax(260px,1fr) 190px 120px}.client-header,.client-row,.playlist-header,.playlist-registry-row{grid-template-columns:minmax(210px,.95fr) minmax(158px,.66fr) minmax(118px,.45fr) minmax(180px,.8fr) minmax(260px,1.18fr)}.library-header,.library-row{grid-template-columns:var(--icon-action-box,40px) minmax(220px,1.3fr) minmax(160px,.8fr) minmax(100px,.5fr) minmax(140px,.6fr)}.client-actions,.playlist-actions{gap:6px;flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;padding:2px 0;scrollbar-width:thin}.client-actions .icon-action,.playlist-actions .icon-action,.playlist-actions .text-action{flex:0 0 auto}.playlist-actions .icon-action-caption,.registry-actions .icon-action-caption,.sequence-actions .icon-action-caption{display:none!important}.playlist-actions.action-toolbar .icon-action,.registry-actions.action-toolbar .icon-action,.sequence-actions.action-toolbar .icon-action{flex-direction:row!important;min-height:unset!important;height:var(--icon-action-box)!important;padding:0!important}.playlist-name-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;padding:0;background:transparent;color:#1769ff;cursor:pointer;font:inherit;font-weight:800;letter-spacing:0;text-align:left;overflow-wrap:anywhere}.playlist-name-button:focus-visible,.playlist-name-button:hover{color:#0f766e;outline:none;text-decoration:underline}.playlist-summary-list{display:grid;grid-gap:1px;gap:1px;overflow:auto;max-height:48vh;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--line)}.playlist-summary-list article{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;grid-gap:10px;gap:10px;padding:10px;background:var(--panel)}.playlist-summary-list article>div{min-width:0;display:grid;grid-gap:3px;gap:3px}.playlist-summary-list small,.playlist-summary-list strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.playlist-summary-list article>span:last-child,.playlist-summary-list small{color:var(--muted);font-size:12px}.modal-panel.playlist-consult-modal{width:min(1040px,100%);max-height:min(760px,92vh);display:flex;flex-direction:column;overflow:hidden}.playlist-consult-modal>.playlist-consult-overview,.playlist-consult-modal>.toolbar{flex:0 0 auto}.playlist-consult-modal>.toolbar{margin-bottom:10px}.playlist-consult-body{flex:1 1 auto;min-height:0;display:flex;gap:10px;margin-top:8px}.playlist-consult-section-media{flex:1 1 auto;min-width:0;min-height:0;display:flex;flex-direction:column}.playlist-consult-section-media .playlist-summary-list{flex:1 1 auto;min-height:0;max-height:none}.linked-screens-tower{flex:0 0 auto;width:175px;display:flex;flex-direction:column;min-height:0;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fbfcfe;padding:10px}.linked-screens-tower h4{display:flex;align-items:center;gap:5px;margin:0 0 8px;font-size:12px;font-weight:700}.linked-screens-tower h4 i{display:inline-block;width:9px;height:9px;border-radius:50%}.linked-screens-tower.online h4{color:#15803d}.linked-screens-tower.online h4 i{background:#22c55e}.linked-screens-tower.offline h4{color:#b91c1c}.linked-screens-tower.offline h4 i{background:#dc2626}.linked-screens-tower ul{list-style:none;margin:0;padding:0;overflow-y:auto;flex:1 1 auto;min-height:0}.linked-screens-tower li{font-size:12px;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.linked-screens-tower li+li{margin-top:4px}.linked-screens-tower li.muted{color:var(--muted)}.playlist-consult-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:8px;gap:8px;margin-bottom:8px}.playlist-consult-overview>div{display:grid;grid-gap:4px;gap:4px;min-width:0;padding:10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fbfcfe}.playlist-consult-overview span{color:var(--muted);font-size:12px}.playlist-consult-overview strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.playlist-consult-section{display:grid;grid-gap:8px;gap:8px;margin-top:8px}.playlist-consult-section h3{margin:0;font-size:15px}.form-grid .span-two{grid-column:1/-1}.playlist-sequence-report{display:flex;flex-direction:column;width:min(1180px,96vw);max-height:92vh;overflow:hidden}.playlist-report-toolbar{flex:0 0 auto;padding-bottom:14px;border-bottom:1px solid var(--line)}.playlist-report-toolbar h2{margin:3px 0}.playlist-report-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:10px;gap:10px;margin:14px 0 10px}.playlist-report-summary>div{display:grid;grid-gap:3px;gap:3px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#f8fafc}.playlist-report-legend,.playlist-report-summary span{color:var(--muted);font-size:12px}.playlist-report-summary strong{font-size:19px}.playlist-report-legend{display:flex;align-items:center;gap:6px;margin:0 0 10px}.playlist-report-table-wrap{min-height:0;overflow:auto;border:1px solid var(--line);border-radius:var(--radius-sm)}.playlist-report-table{width:100%;border-collapse:collapse;font-size:13px}.playlist-report-table td,.playlist-report-table th{padding:9px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.playlist-report-table th{position:-webkit-sticky;position:sticky;top:0;z-index:1;color:#52627a;background:#f3f6fa;font-size:11px;text-transform:uppercase}.playlist-report-table tr:last-child td{border-bottom:0}.playlist-report-table .sequence-report-warning td{background:#fff7e6}.playlist-report-table .sequence-report-warning td:first-child{box-shadow:inset 3px 0 #d97706}.permissions-modal{width:min(780px,100%)}.permission-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.permission-groups section{display:grid;align-content:start;grid-gap:6px;gap:6px;padding:10px;border:1px solid var(--line);border-radius:var(--radius-sm)}.permission-groups h3{margin:0 0 4px;font-size:14px}.screen-presence{display:inline-flex;align-items:center;gap:5px;flex:0 0 auto;font-size:12px;font-weight:700}.screen-presence i{display:inline-block;flex:0 0 auto;width:9px;height:9px;border-radius:50%;background:#dc2626}.screen-presence.online{color:#15803d}.screen-presence.online i{background:#22c55e}.screen-presence.offline{color:#b91c1c}.screen-presence-badge{border-radius:999px;padding:4px 10px 4px 8px;border:1px solid}.status-text{font-size:13px;font-weight:700}.status-text.active{color:#15803d}.status-text.pending{color:#c2410c}.status-text.blocked{color:#b91c1c}.screen-playlist-save{width:50%;margin:0 auto}.field-warning{color:#92400e;background:#fff7e6;border:1px solid #f3d9a4;border-radius:var(--radius-sm);padding:8px 10px;font-size:13px;line-height:1.4}.screen-presence.stale{color:#92400e}.screen-presence.stale i{background:#d97706}.activation-console{display:grid;grid-gap:14px;gap:14px}.activation-header,.activation-row{grid-template-columns:minmax(130px,.52fr) minmax(230px,1fr) minmax(130px,.48fr) minmax(220px,.9fr) minmax(120px,.4fr)}.activation-row .primary{min-height:38px;padding:0 14px}.manual-activation{margin-top:16px}.manual-activation summary{cursor:pointer;color:var(--ink);font-weight:800}.screen-actions{gap:5px;flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;padding:2px 0;scrollbar-width:thin}.screen-actions .icon-action{min-width:36px;padding:0;font-size:16px;line-height:1;flex:0 0 auto}.screen-remote-link{min-width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);background:#0b74de;color:#fff;font-size:17px;font-weight:800;flex:0 0 auto}.screen-remote-link.amber{background:#ca8a04}.screen-remote-link.green{background:#16a34a}.screen-remote-link.violet{background:#7c3aed}.media-create-grid.two{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.modal-backdrop{position:fixed;inset:0;z-index:40;display:grid;place-items:center;padding:24px;background:rgba(7,17,20,.46)}.modal-panel{width:min(720px,100%);max-height:min(680px,92vh);overflow:auto;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;padding:18px;box-shadow:0 28px 90px rgba(11,25,31,.24)}.compact-modal{width:min(520px,100%)}.title-with-preview{display:flex;align-items:center;flex-wrap:wrap;gap:6px;width:100%}.title-text,.title-with-preview .title-text{overflow-wrap:anywhere}.icon-button.preview-trigger{width:22px;height:22px;min-width:22px;padding:0;line-height:1;display:inline-grid;place-items:center;flex:0 0 auto;border-radius:var(--radius-sm);color:#55657b}.icon-button.preview-trigger svg{display:block}.icon-button.preview-trigger:hover{border-color:#17836e;background:#edf9f5;color:#0d6e5b}.media-preview-shell{background:#0c1416;box-shadow:0 28px 90px rgba(0,0,0,.5)}.media-preview-shell .modal-shell-header{background:#131e21;border-bottom:1px solid hsla(0,0%,100%,.08)}.media-preview-shell .modal-shell-header h2{color:#f2f6f5;font-weight:600;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-preview-shell .modal-shell-header-actions .icon-button{background:hsla(0,0%,100%,.08);border-color:hsla(0,0%,100%,.16);color:#f2f6f5}.media-preview-shell .modal-shell-header-actions .icon-button:hover{background:hsla(0,0%,100%,.16)}.media-preview-body{flex:1 1 auto;min-height:0;display:grid;place-items:center;overflow:auto;padding:16px}.media-preview-image{max-width:100%;max-height:calc(92vh - 90px);object-fit:contain;cursor:zoom-in;border-radius:4px}.media-preview-body.zoomed{place-items:start start;cursor:zoom-out}.media-preview-body.zoomed .media-preview-image{max-width:none;max-height:none;cursor:zoom-out}.media-preview-video{max-width:100%;max-height:calc(92vh - 90px);border-radius:4px;background:#000}.media-preview-iframe{width:min(960px,100%);aspect-ratio:16/9;border:0;border-radius:4px}.media-preview-fallback{display:grid;grid-gap:12px;gap:12px;justify-items:center;color:#f2f6f5;text-align:center}.screen-edit-modal{max-height:min(720px,92vh);padding:0;overflow:hidden;display:flex;flex-direction:column}.screen-edit-modal>.toolbar{flex:0 0 auto;margin:0;padding:18px 18px 14px;border-bottom:1px solid var(--line)}.screen-edit-modal>.form{flex:1 1 auto;min-height:0;margin:0;padding:16px 18px 18px;overflow:auto}.operating-schedule-field{display:grid;grid-gap:8px;gap:8px;align-content:start}.operating-schedule-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr);grid-gap:24px;gap:24px;align-items:start}@media (max-width:860px){.operating-schedule-grid{grid-template-columns:1fr}}.operating-schedule-save{margin-top:var(--space-4,16px);justify-content:flex-end}.operating-schedule-label{font-size:13px;font-weight:600;color:#44536a}.operating-rules{display:grid;grid-gap:6px;gap:6px}.operating-rule{display:flex;align-items:center;gap:10px;padding:7px 10px;border:1px solid var(--line,#dce4ec);border-radius:var(--radius-sm);background:#f8fafc;font-size:13px}.operating-rule span{flex:1 1 auto;color:#55657b}.operating-rule.editing{border-color:#17836e;background:#edf9f5}.operating-rule strong{white-space:nowrap}.operating-rule-add{display:grid;grid-gap:8px;gap:8px;padding:10px;border:1px dashed var(--line,#dce4ec);border-radius:var(--radius-sm)}.operating-day-toggles{display:flex;flex-wrap:wrap;gap:6px}.day-toggle{min-width:42px;height:32px;padding:0 8px;border:1px solid #d4dee8;border-radius:var(--radius-sm);background:#fff;color:#44536a;font-size:12px}.day-toggle.active{border-color:#17836e;background:#edf9f5;color:#0d6e5b;font-weight:600}.operating-rule-add-row{display:flex;gap:8px;align-items:center}.operating-rule-add-row input{flex:1 1;min-width:0}.display-frame-modal{display:flex;width:min(1380px,96vw);height:min(900px,94vh);max-height:94vh;flex-direction:column;overflow:hidden}.display-frame-editor-grid{display:grid;min-height:0;flex:1 1 auto;grid-template-columns:minmax(360px,.9fr) minmax(480px,1.1fr);grid-gap:18px;gap:18px}.display-frame-preview-pane{display:flex;min-width:0;min-height:0;align-items:center;align-self:stretch;flex-direction:column;justify-content:flex-start;overflow:hidden;padding:4px 2px 12px}.display-frame-preview-hint{margin-top:10px;color:var(--muted);line-height:1.4;text-align:center}.display-frame-preview{display:flex;flex-direction:column;width:100%;aspect-ratio:16/9;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-sm);background:#0b1117}.display-frame-preview.portrait{width:min(360px,100%);aspect-ratio:9/16;align-self:center}.display-frame-media{display:grid;min-height:0;flex:1 1 auto;place-items:center;background:#dce5ec;color:#52647a;font-weight:700}.display-frame-preview-bar{gap:14px;flex:0 0 auto;min-height:1px;padding:0;letter-spacing:0}.display-frame-preview-bar,.display-frame-preview-brand{position:relative;display:flex;align-items:center;overflow:hidden}.display-frame-preview-brand{z-index:1;height:100%;flex:0 1 auto;gap:8px;padding-inline:14px;white-space:nowrap}.display-frame-preview-logo{position:absolute;z-index:3;display:block;width:auto;max-width:none;object-fit:contain;-webkit-user-select:none;-moz-user-select:none;user-select:none}.display-frame-preview-logo.draggable{cursor:move;touch-action:none}.display-frame-preview-logo.draggable:hover{outline:1px dashed currentColor;outline-offset:2px}.display-frame-preview-message{position:relative;z-index:1;min-width:0;flex:1 1 auto;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}.display-frame-preview-info{position:absolute;inset:0;display:block;overflow:hidden;pointer-events:none;white-space:nowrap}.display-frame-preview-info .display-frame-preview-module{position:absolute;display:block;box-sizing:border-box;overflow:hidden;cursor:move;outline:1px dashed hsla(0,0%,100%,.38);outline-offset:-1px;pointer-events:auto;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.display-frame-preview-info .display-frame-preview-module.selected,.display-frame-preview-info .display-frame-preview-module:hover{z-index:4;outline:2px solid var(--brand);outline-offset:-2px}.display-frame-preview-info .display-frame-preview-module.overlapping:not(.selected){outline:2px solid #d97706;outline-offset:-2px}.display-frame-preview-info .display-frame-preview-module.content-overflow:not(.selected){outline:2px dashed #dc2626;outline-offset:-2px}.display-frame-preview-module-content{display:inline-flex;width:100%;height:100%;box-sizing:border-box;align-items:center;justify-content:center;gap:.22em;overflow:hidden;padding:0;line-height:1;white-space:nowrap}.display-frame-preview-module-seconds{align-self:baseline}.display-frame-preview-info b{font-weight:700}.display-frame-preview-module-icon{display:inline-block;flex:0 0 auto;background-position:50%;background-repeat:no-repeat;background-size:contain}.display-frame-resize-handle{position:absolute;z-index:5;display:none;background:var(--brand)}.display-frame-preview-module.selected .display-frame-resize-handle,.display-frame-preview-module:hover .display-frame-resize-handle{display:block}.display-frame-resize-handle.east{top:20%;right:0;width:5px;height:60%;cursor:ew-resize}.display-frame-resize-handle.south{bottom:0;left:20%;width:60%;height:5px;cursor:ns-resize}.display-frame-resize-handle.corner{right:0;bottom:0;width:9px;height:9px;border:1px solid #fff;cursor:nwse-resize}.display-frame-form{margin-top:0}.display-frame-controls{min-height:0;overflow-x:hidden;overflow-y:auto;padding:2px 8px 18px 2px;overscroll-behavior:contain}.display-frame-copy{display:grid;grid-template-columns:minmax(220px,1fr) auto;grid-gap:8px;gap:8px;align-items:end;padding-bottom:var(--space-3);border-bottom:1px solid var(--line)}.display-frame-copy label{min-width:0}.display-frame-copy button{display:inline-flex;width:auto;align-items:center;gap:7px;white-space:nowrap}.display-frame-copy button svg{width:16px;height:16px}.display-frame-copy small{grid-column:1/-1;color:var(--muted)}.display-frame-enable{padding-bottom:var(--space-3);border-bottom:1px solid var(--line)}.display-frame-enable span{display:grid;grid-gap:2px;gap:2px}.display-frame-enable small{color:var(--muted)}.display-frame-colors{display:flex;flex-wrap:wrap;gap:14px;align-items:flex-end}.display-frame-color-field{display:grid;width:auto;grid-gap:4px;gap:4px;font-size:12px}.display-frame-color-field input[type=color]{width:34px;height:34px;min-height:34px;padding:2px;cursor:pointer}.display-frame-modules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:4px;gap:4px}.display-frame-module{min-width:0;border-bottom:1px solid var(--line)}.display-frame-module-title{min-height:38px;padding:7px 4px}.display-frame-module-title span{display:flex;align-items:center;gap:7px;font-weight:700}.display-frame-module-title svg{width:17px;height:17px}.display-frame-module-settings{display:grid;grid-template-columns:48px minmax(120px,1fr) 82px;grid-gap:8px;gap:8px;align-items:end;padding:9px 10px}.display-frame-module-settings label{min-width:0;font-size:12px}.display-frame-module-settings input[type=color]{width:34px;height:34px;min-height:34px;padding:2px}.display-frame-module-color{justify-items:start}.display-frame-module-settings input[type=number]{min-height:38px}.display-frame-module-settings .check-row{min-height:38px;align-items:center;padding:7px;border:1px solid var(--line);border-radius:var(--radius-sm)}.display-frame-typography-settings{display:grid;grid-template-columns:minmax(180px,1fr) auto;grid-gap:10px;gap:10px;align-items:end;padding:0 10px 10px}.display-frame-typography-settings>label{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:4px 8px;gap:4px 8px;align-items:center;font-size:12px}.display-frame-typography-settings input[type=range]{grid-column:1}.display-frame-text-style{display:flex;gap:5px}.display-frame-text-style button{display:grid;width:36px;height:36px;padding:0;place-items:center;border:1px solid var(--line);background:#fff;color:var(--ink)}.display-frame-text-style button.active{border-color:var(--brand);background:#e9f7f3;color:var(--brand)}.display-frame-text-style svg{width:17px;height:17px}.display-frame-base-typography{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.display-frame-base-typography-item{display:grid;grid-template-columns:auto minmax(120px,1fr) auto;grid-gap:8px;gap:8px;align-items:center;padding:9px;border:1px solid var(--line);border-radius:var(--radius-sm)}.display-frame-base-typography-item strong{font-size:12px}.display-frame-clock-settings,.display-frame-image-actions{display:flex;flex-direction:column;gap:6px;padding:0 10px 10px}.display-frame-clock-settings>label:not(.check-row){display:grid;grid-template-columns:minmax(140px,1fr) auto;grid-gap:4px 8px;gap:4px 8px;align-items:center;font-size:12px}.display-frame-clock-settings input[type=range]{grid-column:1}.display-frame-icon-settings{display:flex;align-items:center;gap:8px}.display-frame-image-actions{margin-top:-6px}.display-frame-icon-settings{padding:0 10px 10px}.display-frame-position-settings{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:8px;gap:8px;padding:0 10px 10px}.display-frame-position-settings label{min-width:0;font-size:12px}.display-frame-position-settings input{min-height:36px}.display-frame-icon-settings .file-button,.display-frame-image-actions .file-button{position:relative;display:inline-flex;width:auto;min-height:38px;align-items:center;justify-content:center;gap:6px;cursor:pointer}.display-frame-icon-settings .file-button input,.display-frame-image-actions .file-button input{position:absolute;inset:0;width:100%;opacity:0;cursor:pointer}.display-frame-icon-settings .file-button svg,.display-frame-image-actions .file-button svg{width:16px;height:16px}.display-frame-icon-settings .file-button.disabled,.display-frame-image-actions .file-button.disabled{cursor:not-allowed;opacity:.55}.display-frame-icon-settings>label:not(.file-button){display:grid;min-width:150px;grid-template-columns:1fr auto;align-items:center;grid-gap:4px 8px;gap:4px 8px;font-size:12px}.display-frame-icon-settings input[type=range]{grid-column:1}.display-frame-cities{display:grid;grid-gap:10px;gap:10px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-sm)}.display-frame-cities>div:first-child{display:grid;grid-gap:2px;gap:2px}.display-frame-cities small{color:var(--muted)}.display-frame-city-entry{display:grid;grid-template-columns:minmax(180px,1fr) auto minmax(190px,auto);grid-gap:8px;gap:8px;align-items:end}.display-frame-city-entry>label{display:grid;grid-template-columns:auto 74px auto;align-items:center;grid-gap:7px;gap:7px;white-space:nowrap}.display-frame-city-list{display:flex;flex-wrap:wrap;gap:7px;align-items:center}.display-frame-city-list>span{display:inline-flex;min-height:34px;align-items:center;gap:7px;padding:5px 6px 5px 10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#f8fafb}.display-frame-city-list button{display:grid;width:26px;height:26px;padding:0;place-items:center;border:0;background:transparent;color:var(--danger)}.display-frame-city-list svg{width:14px;height:14px}@media (max-width:900px){.display-frame-modal{width:min(760px,96vw)}.display-frame-editor-grid{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);gap:12px}.display-frame-preview-pane{max-height:40vh;padding-bottom:4px}.display-frame-preview{width:min(520px,100%)}.display-frame-preview.portrait{width:auto;height:min(34vh,320px)}.display-frame-preview-hint{margin-top:6px}}.coupon-modal{width:min(980px,100%);max-height:min(820px,94vh);display:flex;flex-direction:column}.coupon-form{max-width:none;grid-template-columns:minmax(0,7fr) minmax(170px,5fr);align-items:flex-end}.coupon-form .coupon-detail-field{min-width:0}.coupon-code-field,.coupon-detail-field,.coupon-submit,.coupon-type-field{grid-column:span 1}.coupon-history{margin-top:18px;min-height:0;overflow:hidden}.coupon-history .finance-header,.coupon-history .finance-row{grid-template-columns:minmax(150px,1.35fr) minmax(112px,.9fr) minmax(90px,.65fr) minmax(142px,1fr) 42px}.coupon-history .registry-header,.coupon-history .registry-row{gap:12px}.coupon-history .registry-row{min-height:74px}.coupon-history .registry-actions{justify-content:flex-end}@media (min-width:700px){.coupon-form{grid-template-columns:repeat(4,minmax(0,1fr))}.coupon-code-field,.coupon-type-field{grid-column:span 2}.coupon-submit{grid-column:4}}.wide-modal{width:min(1120px,100%);max-height:min(780px,94vh);display:flex;flex-direction:column;overflow:hidden;padding:0}.wide-modal-fixed{flex:0 0 auto;padding:18px 18px 0}.wide-modal-scroll{flex:1 1 auto;min-height:0;overflow:auto;padding:14px 18px 18px}.client-modal{width:min(720px,100%);max-height:min(680px,92vh);padding:0;overflow:hidden;display:flex;flex-direction:column}.client-modal>.toolbar{flex:0 0 auto;margin:0;padding:18px 18px 14px;border-bottom:1px solid var(--line)}.client-modal>.form{flex:1 1 auto;min-height:0;margin:0;padding:16px 18px 18px;overflow:auto}.portal-link{display:grid;grid-template-columns:minmax(0,1fr) 38px;grid-gap:8px;gap:8px;align-items:center;padding:8px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#f8fafc}.portal-link code{overflow:hidden;color:#275b99;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.portal-lead-note{margin-top:-10px}.portal-whatsapp-actions{display:flex;gap:8px}.portal-whatsapp-actions a{flex:1 1;justify-content:center}.portal-loading,.portal-shell{min-height:100vh;padding:clamp(20px,4vw,54px);background:#f4f7fb;color:var(--ink)}.portal-loading{display:grid;place-items:center;color:var(--muted)}.portal-shell{max-width:1320px;margin:0 auto}.portal-access-card{width:min(490px,100%);display:grid;grid-gap:16px;gap:16px;margin:min(14vh,120px) auto;padding:clamp(22px,4vw,38px);border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;box-shadow:0 20px 70px rgba(22,41,57,.1)}.portal-access-card h1,.portal-header h1{margin:0;letter-spacing:0}.portal-access-card>p:not(.portal-kicker){margin:0;color:var(--muted);line-height:1.55}.portal-brand-logo{height:44px;width:auto}.portal-header-brand{display:flex;align-items:center;gap:12px}.portal-header-brand-label{display:block;color:#168270;font-size:16px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.portal-header-brand-subtitle{display:block;color:var(--muted);font-size:12px;font-weight:500}.portal-header-actions{display:flex;align-items:center;gap:10px}.portal-account-menu{position:relative}.portal-account-menu>.secondary{display:inline-flex;align-items:center;gap:6px}.portal-account-backdrop{position:fixed;inset:0;z-index:20}.portal-account-dropdown{position:absolute;top:calc(100% + 8px);right:0;z-index:21;width:min(320px,90vw);display:grid;grid-gap:10px;gap:10px;padding:14px;background:#fff;border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:0 16px 40px rgba(22,41,57,.14)}.portal-account-dropdown>strong{padding-bottom:8px;border-bottom:1px solid var(--line)}.portal-account-dropdown a{display:flex;align-items:center;gap:10px;padding:8px;border-radius:var(--radius-sm);color:var(--ink);text-decoration:none}.portal-account-dropdown a:hover{background:#f4f7fb}.portal-account-dropdown a small{display:block;color:var(--muted);font-weight:400}.portal-days-toggle-wrap{position:relative;width:-moz-fit-content;width:fit-content}.portal-days-toggle{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:0 10px;font-size:12px}.portal-days-calendar{position:absolute;top:calc(100% + 8px);left:0;z-index:21;width:min(280px,90vw);padding:12px;display:grid;grid-gap:4px;gap:4px;background:#fff;border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:0 16px 40px rgba(22,41,57,.14)}.portal-days-calendar-title{display:block;text-align:center;color:var(--ink);font-size:13px;margin-bottom:4px}.portal-days-calendar-week,.portal-days-calendar-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:3px;gap:3px}.portal-days-calendar-weekdays span{text-align:center;color:var(--muted);font-size:10px;font-weight:700}.portal-days-calendar-cell{display:grid;place-items:center;grid-gap:1px;gap:1px;min-height:32px;border:1px solid #e3eaf2;border-radius:5px;background:#f8fafc}.portal-days-calendar-cell.empty{border-color:transparent;background:transparent}.portal-days-calendar-cell b{color:var(--muted);font-size:10px;font-weight:600}.portal-days-calendar-cell strong{color:#075e54;font-size:11px}.portal-days-calendar-cell.has-count{border-color:#a7e4d3;background:#ecfaf5}.portal-days-calendar-cell.out-of-range{opacity:.4}.portal-kicker{margin:0;color:#168270;font-size:12px;font-weight:800;letter-spacing:0;text-transform:uppercase}.portal-access-card .primary,.portal-access-card .secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%}.portal-access-divider{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.04em}.portal-access-divider:after,.portal-access-divider:before{content:"";flex:1 1;height:1px;background:var(--line)}.portal-header{display:flex;justify-content:space-between;align-items:center;gap:18px;min-height:64px;margin-bottom:18px}.portal-header-brand>div{display:grid;grid-gap:2px;gap:2px}.portal-header>.secondary{min-height:32px;padding:0 10px;color:#64748b;font-size:12px}.portal-tabs{display:flex;gap:8px;margin-bottom:16px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.portal-tabs::-webkit-scrollbar{display:none}.portal-screen-buttons button,.portal-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;color:var(--muted);cursor:pointer;font-weight:800;white-space:nowrap}.portal-tabs button{padding:0 13px}.portal-screen-buttons button.active,.portal-tabs button.active{border-color:#18806f;background:#e8f7f2;color:#116b5d}.portal-campaign-list{display:grid;border:1px solid var(--line);border-radius:7px}.portal-campaign-list>.portal-campaign-row:first-child{border-top-left-radius:7px;border-top-right-radius:7px}.portal-campaign-list>.portal-campaign-row:last-child{border-bottom-left-radius:7px;border-bottom-right-radius:7px}.portal-month-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px;margin-bottom:14px}.portal-month-summary button{-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:left;display:grid;grid-gap:2px;gap:2px;min-width:0;padding:12px;border:1px solid var(--line);border-radius:var(--radius-md);background:#f8fbfe;cursor:pointer;color:inherit}.portal-month-summary button.active{border-color:#168270;background:#ecfaf5}.portal-month-summary small,.portal-month-summary span{color:var(--muted);font-size:12px}.portal-month-summary strong{color:var(--ink);font-size:22px}.portal-campaign-row{display:grid;grid-template-columns:minmax(190px,1.15fr) minmax(150px,.9fr) minmax(180px,1fr) minmax(112px,auto);align-items:center;grid-gap:16px;gap:16px;min-width:0;padding:14px;border-bottom:1px solid #edf1f6}.portal-campaign-row.detailed{grid-template-columns:minmax(190px,1.1fr) minmax(140px,.8fr) minmax(170px,.95fr) minmax(112px,auto)}.portal-daily-grid{grid-column:1/-1;display:grid!important;grid-template-columns:repeat(auto-fit,minmax(38px,1fr));grid-gap:5px!important;gap:5px!important;margin-top:6px}.portal-daily-grid span{display:grid;grid-gap:2px;gap:2px;min-height:46px;place-items:center;border:1px solid #e3eaf2;border-radius:var(--radius-sm);background:#f8fafc;color:#64748b}.portal-daily-grid span.has-count{border-color:#a7e4d3;background:#ecfaf5;color:#075e54}.portal-daily-grid small{font-size:10px}.portal-daily-grid strong{font-size:13px}.portal-delivery-filters{display:grid;justify-items:end;grid-gap:8px;gap:8px}.portal-period-presets{display:flex;gap:5px;padding:3px;border:1px solid var(--line);border-radius:7px;background:#f5f8fb}.portal-period-presets button{min-height:34px;padding:0 12px;border:0;border-radius:5px;background:transparent;color:var(--muted);cursor:pointer;font-weight:700}.portal-period-presets button.active{background:#fff;color:#116b5d;box-shadow:0 1px 3px rgba(15,23,42,.12)}.portal-custom-period{display:flex;gap:8px}.portal-period-result{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:14px;gap:14px;align-items:center;margin-bottom:12px;padding:11px 13px;border:1px solid #bfe3d9;border-radius:7px;background:#f0faf7}.portal-period-result>div{display:grid;grid-gap:3px;gap:3px}.portal-active-days>small,.portal-period-result small{color:var(--muted);font-size:11px;font-weight:700}.portal-period-result>div:last-child{text-align:right}.portal-active-days{grid-column:1/-1;display:grid!important;grid-gap:7px!important;gap:7px!important;padding-top:4px}.portal-active-days em{color:var(--muted);font-size:12px;font-style:normal}.portal-campaign-row:last-child{border-bottom:0}.portal-campaign-row>div{display:grid;min-width:0;grid-gap:4px;gap:4px}.portal-campaign-row small{color:var(--muted);font-size:11px;font-weight:700}.portal-campaign-row span,.portal-campaign-row strong{overflow-wrap:anywhere}.portal-campaign-media{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px!important}.portal-campaign-media svg{color:#2864b9}.portal-campaign-media div{display:grid;grid-gap:3px;gap:3px}.portal-campaign-media span{color:var(--muted);font-size:12px}.portal-campaign-count{justify-items:flex-end;text-align:right}.portal-campaign-count strong{color:#087768;font-size:20px}.portal-bonus{color:#0d6e5b!important;font-weight:700}.portal-screen-list{border:1px solid var(--line);border-radius:7px;padding:0 14px}.portal-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px;gap:12px;margin-bottom:16px}.portal-metrics article{display:flex;gap:12px;align-items:center;min-width:0;padding:16px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff}.portal-metrics article>span{width:38px;height:38px;display:grid;place-items:center;flex:0 0 auto;border-radius:var(--radius-sm);background:#eef5ff;color:#2864b9}.portal-metrics div{display:grid;grid-gap:3px;gap:3px;min-width:0}.portal-metrics small{color:var(--muted);font-size:12px}.portal-metrics strong{font-size:22px}.portal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px}.portal-delivery{margin-top:16px}.portal-panel{min-width:0;padding:18px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff}.portal-panel h2{margin:0 0 14px;font-size:17px}.finance-summary-filter{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin:2px 0 10px;color:#52647a}.finance-summary-filter strong{color:var(--ink);font-size:14px}.finance-summary-filter span{display:block;margin-top:3px;font-size:12px;color:var(--muted)}.finance-metrics .panel{min-width:0}.finance-metrics .panel small{display:block;margin-top:5px;color:var(--muted);font-size:12px}.finance-summary-filter label{display:grid;grid-gap:4px;gap:4px;min-width:168px;color:#52647a;font-size:12px}.finance-summary-filter input{min-height:36px;border:1px solid var(--line);border-radius:var(--radius-sm);padding:0 8px;background:#fff;color:var(--ink)}.finance-client-page{max-width:1440px;margin:0 auto}.finance-client-breadcrumb{display:flex;align-items:center;gap:8px;margin-bottom:14px;color:var(--muted);font-size:13px}.finance-client-breadcrumb a{color:var(--brand);font-weight:700}.finance-breadcrumb-global{margin-left:auto;font-size:12px}.finance-client-metrics{margin-bottom:18px}.finance-detail-section{margin-top:18px;padding:18px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel)}.finance-detail-section .section-heading{align-items:flex-start;margin-bottom:14px}.finance-detail-section .section-heading h2{margin:0 0 4px;font-size:18px}.invoice-financial-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}.invoice-financial-actions .secondary{min-height:36px;white-space:nowrap}.invoice-payment-summary{margin-top:3px;line-height:1.35}.invoice-original-value{color:var(--muted);text-decoration:line-through}.pill.coupon-pill{margin-left:6px;padding:1px 6px;background:#ccfbf1;color:#0f766e;font-size:10px}.payment-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.payment-detail-grid>div{padding:12px;border:1px solid var(--line);border-radius:7px;background:#f8fbfe}.payment-detail-grid span,.payment-detail-grid strong{display:block}.payment-detail-grid span{color:var(--muted);font-size:12px}.payment-detail-grid strong{margin-top:4px;color:var(--ink)}.portal-panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}.portal-panel-heading h2{margin-bottom:5px}.portal-panel-heading .muted{margin:0}.portal-date-filter{display:grid;grid-gap:4px;gap:4px;flex:0 0 auto;color:var(--muted);font-size:12px;font-weight:700}.portal-date-filter input{min-height:36px;border:1px solid var(--line);border-radius:var(--radius-sm);padding:0 8px;background:#fff;color:var(--ink)}.portal-list{display:grid}.portal-list article{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;padding:11px 0;border-bottom:1px solid #edf1f6}.portal-list article:last-child{border-bottom:0}.portal-invoice{display:flex!important;flex-direction:column;align-items:stretch!important;gap:10px;padding:14px!important;border:1px solid var(--line);border-radius:var(--radius-md);background:#fbfcfe}.portal-invoice-list{gap:12px}.portal-invoice-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.portal-invoice-head>div{display:grid;grid-gap:2px;gap:2px;min-width:0}.portal-order-summary{display:grid;grid-gap:6px;gap:6px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff}.portal-order-summary.read-only{background:transparent;border-style:dashed}.portal-order-row{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--muted);font-size:13px}.portal-order-row strong{color:var(--ink);font-weight:700}.portal-order-row.discount,.portal-order-row.discount strong{color:#0f766e}.portal-order-row.total{padding-top:6px;border-top:1px dashed var(--line);color:var(--ink);font-size:14px;font-weight:700}.portal-order-row.total strong{font-size:16px}.portal-coupon-slot{display:flex;align-items:center;min-height:30px}.portal-coupon-chip{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border:1px dashed #0f766e;border-radius:999px;background:#f0fdfa;color:#0f766e;font-size:12px;font-weight:700;cursor:pointer}.portal-coupon-chip.selected{border-style:solid;background:#0f766e;color:#fff}.portal-coupon-chip.applied{border-style:solid;cursor:default}.portal-invoice-actions{display:flex!important;justify-content:flex-end;gap:8px}.portal-toast{position:fixed;top:20px;right:20px;z-index:60;display:flex;align-items:center;gap:10px;max-width:min(360px,calc(100vw - 40px));padding:14px 16px;border-radius:10px;background:#0f766e;color:#fff;box-shadow:0 12px 30px rgba(15,23,42,.25);animation:portal-toast-in .2s ease}.portal-toast svg{flex:0 0 auto}.portal-toast>div{display:grid;grid-gap:2px;gap:2px;min-width:0}.portal-toast strong{font-size:14px}.portal-toast span{font-size:12px;opacity:.9}.portal-toast button{display:grid;flex:0 0 auto;place-items:center;width:24px;height:24px;margin-left:auto;border:none;border-radius:999px;background:hsla(0,0%,100%,.15);color:#fff;cursor:pointer}@keyframes portal-toast-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.portal-list article>div{display:grid;min-width:0;grid-gap:4px;gap:4px}.portal-list span,.portal-list strong{overflow-wrap:anywhere}.portal-list article>span:not(.portal-status):not(.screen-presence),.portal-list div>span{color:var(--muted);font-size:12px}.portal-status{flex:0 0 auto;padding:4px 8px;border-radius:999px;background:#eef2f7;color:#526173;font-size:12px;font-weight:800}.portal-status.active,.portal-status.confirmed,.portal-status.paid{background:var(--success-bg);color:var(--success)}.portal-status.paused,.portal-status.pending,.portal-status.pending_payment{background:var(--warning-bg);color:var(--warning)}.portal-status.blocked,.portal-status.failed,.portal-status.overdue,.portal-status.suspended{background:var(--danger-bg);color:var(--danger)}.portal-payment-note{display:flex;align-items:center;min-height:48px;margin:14px 0 0;padding:10px 13px 10px 44px;border:1px solid #a7e4d3;border-radius:var(--radius-sm);background:#ecfaf5;color:#076653;font-size:13px;font-weight:700;line-height:1.45;position:relative}.portal-payment-note-icon{position:absolute;left:13px;width:22px;height:22px;display:grid;place-items:center;border-radius:50%;background:#168270;color:#fff}.portal-payment-note.danger{border-color:#f3b4b4;background:#fdecec;color:#9c1f1f}.portal-payment-note.danger .portal-payment-note-icon{background:#c0392b}.delivery-report-print,.finance-print-statement{display:none}.financial-history-link{width:-moz-fit-content;width:fit-content;display:inline-flex;align-items:center;gap:5px;margin-top:5px;padding:0;border:0;background:transparent;color:#0f766e;font-size:12px;font-weight:700;line-height:1.2}.financial-history-link:hover{color:#0b5f59;text-decoration:underline}.financial-record-modal{width:min(1180px,100%);max-height:min(860px,94vh)}.delivery-report-modal{width:min(1040px,100%);max-height:min(820px,94vh)}.financial-record-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:10px;gap:10px;margin:18px 0}.financial-record-summary>div{min-width:0;padding:12px;border:1px solid #dbe5ef;border-radius:7px;background:#f8fafc}.financial-record-list small,.financial-record-list span,.financial-record-summary small,.financial-record-summary span,.section-heading span{display:block;color:#64748b;font-size:12px}.financial-record-summary strong{display:block;margin:5px 0 2px;color:#0f172a;font-size:19px}.financial-record-content{display:grid;grid-gap:22px;gap:22px}.section-heading{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px}.spin{animation:spin .8s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.section-heading h3{margin:0;color:#172033;font-size:16px}.financial-record-list{border:1px solid #dbe5ef;border-radius:7px;overflow:hidden}.financial-record-list article{display:grid;grid-template-columns:minmax(180px,1.3fr) minmax(140px,1fr) minmax(130px,.9fr) minmax(138px,.9fr);grid-gap:14px;gap:14px;align-items:center;padding:12px;border-bottom:1px solid #e5edf5}.financial-record-list article:last-child{border-bottom:0}.financial-record-list.invoice-financial-list article{grid-template-columns:minmax(170px,1.25fr) minmax(125px,.75fr) minmax(105px,.55fr) minmax(170px,.95fr) 220px;gap:12px;min-height:72px}.financial-record-list strong{display:block;color:#172033;font-size:13px}.delivery-report-list article{grid-template-columns:minmax(220px,1.2fr) minmax(180px,1fr) minmax(120px,.6fr)}.delivery-report-list>.muted{padding:16px}.reports-panel{display:block}.reports-panel-modal{display:flex;flex-direction:column;min-height:0;height:100%;padding:20px 22px;overflow:hidden}.reports-panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);margin-bottom:6px}.reports-panel-header .eyebrow{display:block;color:#167d69;font-size:12px;font-weight:700;text-transform:uppercase}.reports-panel-header p.muted{margin:2px 0 0}.delivery-report-modal-shell,.report-v2{width:min(1440px,calc(100vw - 28px));height:calc(100vh - 24px);max-height:calc(100vh - 24px)}.report-v2{padding:0;overflow:hidden;display:flex;flex-direction:column}.report-toolbar{position:relative;z-index:5;flex:0 0 auto;margin:0;padding:20px 22px 14px;background:#fff;border-bottom:1px solid #dce4ec}.report-fixed{flex:0 0 auto;padding:14px 22px 0}.report-scroll-content{min-height:0;flex:1 1 auto;overflow:hidden;display:flex;flex-direction:column;padding:10px 22px 22px}.report-toolbar h2{margin:2px 0 0}.report-toolbar .eyebrow{color:#167d69;font-size:12px;font-weight:700;text-transform:uppercase}.report-actions,.report-presets,.report-tabs{display:flex;align-items:center;gap:8px}.icon-button{width:40px;height:40px;display:grid;place-items:center;border:1px solid #d4dee8;border-radius:var(--radius-sm);background:#fff;color:#172033}.icon-button:disabled{opacity:.55;cursor:not-allowed;color:#17836e}.report-table-icon-button{width:30px;height:30px;display:inline-grid;place-items:center;border:1px solid #d4dee8;border-radius:var(--radius-sm);background:#fff;color:#172033;cursor:pointer}.report-table-icon-button:hover{border-color:#17836e;background:#edf9f5;color:#0d6e5b}.media-audit-modal{width:max-content;max-width:min(1000px,96vw);min-width:480px;max-height:min(640px,90vh);overflow:hidden;display:flex;flex-direction:column;gap:12px}.media-audit-modal .report-table-wrap{max-height:460px;overflow-x:hidden}.media-audit-modal .report-table{min-width:0;width:auto}.media-audit-modal .toolbar{flex:0 0 auto;margin:0}.media-audit-modal .toolbar h3{margin:0 0 2px}.report-presets{margin-bottom:12px}.report-presets button,.report-tabs button{min-height:36px;padding:0 14px;border:1px solid #d4dee8;border-radius:var(--radius-sm);background:#fff;color:#44536a}.report-tabs button{display:inline-flex;align-items:center;gap:6px}.report-presets button:hover,.report-tabs button.active{border-color:#17836e;background:#edf9f5;color:#0d6e5b}.report-filters{display:grid;grid-template-columns:repeat(5,minmax(130px,.72fr)) minmax(220px,1.4fr);grid-gap:10px;gap:10px;padding:14px;border:1px solid #dce4ec;background:#f8fafc}.report-filters label{display:grid;grid-gap:5px;gap:5px;color:#55657b;font-size:12px}.report-filters input,.report-filters select{width:100%;min-width:0;height:39px}.report-search span{display:flex;align-items:center;gap:6px;height:39px;padding-left:10px;border:1px solid #d4dee8;background:#fff}.report-search span input{height:36px;padding-left:0;border:0;outline:0}.report-metrics{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:8px;gap:8px;margin:10px 0}.report-metric{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid #dce4ec;background:#fff}.report-metric>span{width:28px;height:28px;display:grid;place-items:center;border-radius:var(--radius-sm);color:#08745e;background:#e8f7f2}.report-metric>span svg{width:16px}.report-metric div{display:grid;grid-gap:0;gap:0}.report-metric small{color:#66768c;font-size:11px}.report-metric strong{font-size:17px;line-height:1.25}.report-tabs{margin:6px 0 10px}.report-table-wrap{border:1px solid #dce4ec;overflow:auto;flex:1 1 auto;min-height:0}.report-table{width:100%;border-collapse:collapse;min-width:980px}.report-table th{position:-webkit-sticky;position:sticky;top:0;z-index:1;padding:10px 12px;background:#f5f7fa;color:#76849a;font-size:11px;text-align:left;text-transform:uppercase}.report-table td{padding:11px 12px;border-top:1px solid #e4eaf0;vertical-align:middle}.report-table td small{display:block;color:#708096;margin-top:2px}.report-table code{padding:4px 6px;border-radius:4px;background:#eef2f6}.report-proof-note{margin:10px 0 0;flex:0 0 auto;color:#66768c;font-size:12px}.report-bonus{color:#0d6e5b!important;font-weight:700}.capacity-warning{display:grid;grid-gap:10px;gap:10px;padding:14px 16px;margin-top:12px;background:#fef3c7;border:1px solid #f3d68a;border-radius:var(--radius-md);color:#7a4c05}.capacity-warning-header{display:flex;align-items:flex-start;gap:10px}.capacity-warning-header svg{flex:0 0 auto;margin-top:2px;color:#a16207}.capacity-warning-header strong{display:block;color:#7a4c05}.capacity-warning-header p{margin:4px 0 0}.capacity-warning-breakdown{display:grid;grid-gap:4px;gap:4px;margin:0;padding:10px 12px;background:hsla(0,0%,100%,.55);border-radius:var(--radius-sm);list-style:none;max-height:140px;overflow:auto}.capacity-warning-breakdown li{display:flex;justify-content:space-between;gap:12px;font-size:13px}.capacity-warning-confirm{display:flex;align-items:flex-start;gap:8px;font-weight:600;font-size:13px}@media (max-width:900px){.report-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.report-search{grid-column:1/-1}.report-metrics{grid-template-columns:repeat(2,1fr)}.report-toolbar{align-items:flex-start}.report-actions{flex-wrap:wrap;justify-content:flex-end}.reports-panel-header{flex-direction:column}.reports-panel-modal{padding:14px 16px}}@media (max-width:560px){.modal-backdrop{padding:0}.modal-panel{max-width:100vw;border-radius:0;border:0}.modal-panel,.report-v2{width:100vw;max-height:100vh;min-height:100vh}.report-v2{height:100vh;padding:0;border-radius:0}.report-toolbar{margin:0;padding:14px}.report-fixed{padding:10px 14px 0}.report-scroll-content{padding:8px 14px 18px}.report-filters,.report-metrics{grid-template-columns:1fr}.report-search{grid-column:auto}.report-presets,.report-tabs{overflow-x:auto}.report-presets button,.report-tabs button{white-space:nowrap}}.financial-record-list .pill{width:-moz-fit-content;width:fit-content;margin-bottom:4px}.contract-search-field{display:flex;align-items:center;gap:8px;margin:14px 0 10px;padding:0 10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;color:var(--muted)}.contract-search-field input{flex:1 1 auto;min-height:38px;border:0;outline:0;padding-left:0}.settings-security-panel{padding-top:var(--space-4);border-top:1px solid var(--line)}.settings-security-panel:first-of-type{padding-top:0;border-top:0}.settings-security-intro{display:flex;gap:10px;align-items:flex-start}.settings-security-icon{display:grid;flex:0 0 auto;width:28px;height:28px;place-items:center;border-radius:var(--radius-sm);background:var(--surface-muted);color:var(--brand)}.settings-security-icon svg{width:16px;height:16px}.settings-security-intro h2{margin:0 0 3px;font-size:14px;font-weight:800}.settings-security-intro p{max-width:760px;margin:0;color:var(--muted);font-size:13px;line-height:1.5}.settings-security-form{display:flex;align-items:flex-end;gap:12px;max-width:670px;margin-top:var(--space-3)}.settings-security-form label{flex:1 1}.settings-security-form button{min-height:42px}.settings-security-form .file-button{position:relative;display:inline-flex;align-items:center;justify-content:center;width:auto;min-height:42px;cursor:pointer}.settings-security-form .file-button input{position:absolute;inset:0;width:100%;opacity:0;cursor:pointer}.settings-security-intro>.pill{margin-left:auto;align-self:center;flex:0 0 auto}.personalization-layout{display:grid;grid-template-columns:minmax(320px,42fr) minmax(360px,58fr);grid-gap:28px;gap:28px;margin-top:var(--space-4);align-items:start}.personalization-controls{display:grid;grid-gap:14px;gap:14px}.personalization-controls label{display:grid;grid-gap:6px;gap:6px;font-size:12.5px;font-weight:700;color:var(--muted)}.personalization-controls input[type=datetime-local],.personalization-controls input[type=text],.personalization-controls textarea{padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel);color:var(--ink);font:inherit}.personalization-controls textarea{resize:vertical;min-height:64px}.personalization-controls input[type=range]{width:100%;accent-color:var(--brand)}.personalization-controls select{height:40px;padding:0 10px;background:var(--panel);color:var(--ink);font:inherit}.personalization-controls select,.personalization-tabs{border:1px solid var(--line);border-radius:var(--radius-sm)}.personalization-tabs{display:flex;gap:4px;padding:3px;background:var(--panel-2,var(--panel))}.personalization-tabs button{flex:1 1;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:7px 10px;border:none;border-radius:6px;background:transparent;color:var(--muted);font-size:12.5px;font-weight:700;cursor:pointer}.personalization-tabs button.active{background:var(--panel);color:var(--ink);box-shadow:0 0 0 1px var(--line)}.personalization-load-error{margin-top:var(--space-4);padding:16px;border:1px solid var(--danger);border-radius:var(--radius-md);background:var(--danger-bg);display:grid;grid-gap:8px;gap:8px}.personalization-branding-editor,.personalization-campaign-editor,.personalization-campaigns,.personalization-content-editor{display:grid;grid-gap:12px;gap:12px}.personalization-campaign-list{display:grid;grid-gap:6px;gap:6px}.personalization-campaign-row{display:flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel)}.personalization-campaign-row.active{border-color:var(--brand);box-shadow:0 0 0 1px var(--brand)}.personalization-campaign-main{flex:1 1;display:flex;align-items:center;gap:10px;min-width:0;padding:8px 10px;border:none;background:transparent;text-align:left;cursor:pointer}.personalization-campaign-thumb{flex:0 0 auto;width:44px;height:34px;border-radius:6px;overflow:hidden;display:flex;align-items:center;justify-content:center;background:var(--panel-2,#eef2f1);color:var(--muted)}.personalization-campaign-thumb img{width:100%;height:100%;object-fit:cover;display:block}.personalization-campaign-info{display:grid;grid-gap:2px;gap:2px;min-width:0}.personalization-campaign-info strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.personalization-campaign-meta{font-size:11px;color:var(--muted)}.personalization-campaign-actions{flex:0 0 auto;display:flex;gap:2px;padding-right:6px}.personalization-campaign-actions button{width:26px;height:26px;display:flex;align-items:center;justify-content:center;border:none;border-radius:6px;background:transparent;color:var(--muted);cursor:pointer;font-size:13px}.personalization-campaign-actions button:hover:not(:disabled){background:var(--panel-2,#eef2f1);color:var(--ink)}.personalization-campaign-actions button:disabled{opacity:.35;cursor:default}.personalization-media-slot{display:flex;align-items:center;gap:10px}.personalization-media-slot-label{flex:0 0 92px;font-size:12px;font-weight:700;color:var(--muted)}.personalization-media-slot-actions{display:flex;flex-wrap:wrap;gap:8px}.personalization-media-thumb{flex:0 0 auto;width:56px;height:40px;border-radius:6px;object-fit:cover;display:block;background:var(--panel-2,#eef2f1)}.personalization-media-thumb.empty{border:1px dashed var(--line)}.personalization-toggle-row{display:flex!important;flex-direction:row!important;align-items:center;gap:8px}.personalization-toggle-row.compact{gap:6px;font-size:11.5px}.personalization-benefit-row{display:flex;align-items:center;gap:10px}.personalization-benefit-row input[type=text]{flex:1 1}.personalization-branding-row{display:flex;align-items:center;gap:14px}.personalization-branding-preview{width:64px;height:64px;object-fit:contain;border-radius:var(--radius-sm);background:var(--panel-2,#eef2f1);padding:6px}span.personalization-branding-preview.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border:1px dashed var(--line);color:var(--muted);font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.personalization-branding-actions{display:flex;flex-wrap:wrap;gap:8px}.personalization-divider{border:none;border-top:1px solid var(--line);margin:4px 0}.personalization-subheading{margin:0;color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.personalization-inline-field{display:flex!important;flex-direction:row!important;align-items:center;gap:8px}.personalization-inline-field input[type=number]{width:64px;height:34px;padding:0 8px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel);color:var(--ink);font:inherit;text-align:center}.personalization-value{font-weight:800;color:var(--ink)}.personalization-hint{margin:0;font-size:12px}.personalization-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}.personalization-preview{min-width:0;position:-webkit-sticky;position:sticky;top:var(--space-4);align-self:start;max-height:calc(100vh - var(--space-4) * 2);overflow-y:auto}.personalization-preview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.personalization-preview-label{margin:0;color:var(--muted);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.personalization-viewport-toggle{display:flex;gap:4px;padding:3px;border:1px solid var(--line);border-radius:var(--radius-sm);flex:0 0 auto}.personalization-viewport-toggle button{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border:none;border-radius:6px;background:transparent;color:var(--muted);font-size:11.5px;font-weight:700;cursor:pointer}.personalization-viewport-toggle button.active{background:var(--panel);color:var(--ink);box-shadow:0 0 0 1px var(--line)}.personalization-preview-frame{position:relative;width:100%;max-width:460px;aspect-ratio:6/7;overflow:hidden;border-radius:var(--radius-lg);background:#0a1a20;box-shadow:0 20px 40px -24px rgba(10,26,32,.45)}.personalization-preview-frame.mobile{max-width:380px;aspect-ratio:3/2}.personalization-preview-img{position:absolute;inset:0;width:100%;height:100%}.personalization-preview-vignette{position:absolute;inset:0;pointer-events:none}.personalization-preview-mark{width:68px}.personalization-preview-mark img{width:100%;height:auto;display:block;filter:drop-shadow(0 6px 12px rgba(3,10,14,.4));pointer-events:none}.personalization-preview-copy{width:min(80%,280px);padding:12px 16px;border-radius:var(--radius-md);display:grid;grid-gap:6px;gap:6px;color:#eef7f4}.personalization-preview-copy h3{margin:0;font-size:17px;font-weight:800;line-height:1.2}.personalization-preview-copy .auth-showcase-sub{max-width:none;font-size:12px}.personalization-preview-features{width:min(80%,280px)}.personalization-preview-features ul{display:flex;flex-wrap:wrap;gap:4px 12px;margin:0;padding:0;list-style:none;font-size:11px;font-weight:600;color:rgba(238,247,244,.8)}.personalization-layout-object{cursor:-webkit-grab;cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:none;border-radius:6px}.personalization-layout-object.selected{outline:2px solid var(--brand);outline-offset:4px}.personalization-layout-object:active{cursor:-webkit-grabbing;cursor:grabbing}.personalization-resize-handle{position:absolute;right:-9px;bottom:-9px;width:16px;height:16px;padding:0;border:2px solid #fff;border-radius:4px;background:var(--brand);box-shadow:0 1px 5px rgba(15,23,42,.4);cursor:nwse-resize}.personalization-preview-missing-badge{position:absolute;top:12px;right:12px;padding:4px 10px;border-radius:999px;background:rgba(4,10,14,.72);color:#eef7f4;font-size:11px;font-weight:700;letter-spacing:.02em;pointer-events:none}.personalization-finetune{display:grid;grid-gap:8px;gap:8px}.personalization-finetune,.personalization-finetune-hint{margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.personalization-finetune-fields{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px}.personalization-finetune-fields label{display:grid;grid-gap:4px;gap:4px;font-size:11px;font-weight:700;color:var(--muted)}.personalization-finetune-fields input[type=number]{height:32px;padding:0 8px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel);color:var(--ink);font:inherit;text-align:center}@media (max-width:900px){.personalization-layout{grid-template-columns:1fr}.personalization-preview{position:static;max-height:none;overflow-y:visible}.personalization-preview-frame{max-width:420px}}.player-logo-preview{display:flex;justify-content:center;margin-top:16px;padding:32px;background:#000;border-radius:var(--radius-md)}.player-logo-preview img{width:50%;height:auto;object-fit:contain}.apk-installation-controls{display:flex;align-items:flex-end;gap:10px;margin-top:18px;overflow-x:auto;padding-bottom:2px}.apk-installation-controls label{display:grid;grid-gap:5px;gap:5px;flex:0 0 auto;color:#52647a;font-size:13px}.apk-installation-controls .file-button,.apk-installation-controls .portal-link,.apk-installation-controls input,.apk-installation-controls>button{min-height:38px;box-sizing:border-box}.apk-installation-controls .file-button{position:relative;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.apk-installation-controls .file-button input{position:absolute;inset:0;opacity:0;cursor:pointer}.apk-installation-controls .apk-version-field input{width:180px}.apk-installation-controls .apk-code-field input{width:130px}.apk-installation-controls .apk-short-field input{width:250px}.apk-installation-controls .apk-official-field{min-width:280px}.apk-installation-controls .portal-link{grid-template-columns:minmax(0,1fr) 38px;width:100%}.apk-installation-controls>.icon-action{flex:0 0 38px}.generated-maintenance-code{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:16px;padding:14px;border:1px solid #7dd3c7;border-radius:7px;background:#ecfdf7}.generated-maintenance-code small,.generated-maintenance-code span{display:block;color:#51647a;font-size:12px}.generated-maintenance-code strong{display:block;margin:4px 0;color:#0f172a;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:27px;letter-spacing:2px}.settings-code-history{margin-top:16px}.settings-code-row{grid-template-columns:minmax(210px,1.2fr) minmax(160px,.85fr) minmax(170px,.9fr) 90px}.settings-kiosk-panel{margin-top:16px}.settings-kiosk-actions{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-top:18px}.settings-kiosk-actions small,.settings-kiosk-actions span{display:block;color:#64748b;font-size:12px}.settings-kiosk-actions strong{display:block;margin:4px 0;color:#172033;font-size:17px}@media (max-width:820px){.generated-maintenance-code,.settings-security-form{align-items:stretch;flex-direction:column}.generated-maintenance-code button,.settings-security-form button{width:100%;justify-content:center}.settings-code-row{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-kiosk-actions{align-items:stretch;flex-direction:column}.settings-kiosk-actions .action-group{width:100%}.settings-kiosk-actions .action-group button{flex:1 1}.apk-installation-controls{align-items:stretch;flex-direction:column;overflow:visible}.apk-installation-controls .apk-code-field input,.apk-installation-controls .apk-official-field,.apk-installation-controls .apk-short-field input,.apk-installation-controls .apk-version-field input{width:100%;min-width:0}.apk-installation-controls>button{width:100%}.remote-command-row{flex-direction:column;align-items:stretch}.remote-command-row button{width:100%}.remote-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.device-event-filters{flex-direction:column;align-items:stretch}.device-event-filters input,.device-event-filters select{flex:1 1 auto;width:100%}.device-event-date-field{justify-content:space-between}.device-event-date-field input[type=date]{flex:1 1 auto}.device-event-row{flex-wrap:wrap}.device-event-time{width:100%}.modal-backdrop{align-items:flex-end;padding:0}.financial-record-modal{width:100%;max-height:92vh;border-radius:9px 9px 0 0;padding:16px}.financial-record-modal .toolbar{align-items:flex-start}.financial-record-modal .action-group{width:100%}.financial-record-modal .action-group button{flex:1 1}.financial-record-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.financial-record-list article{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}.invoice-financial-list article{grid-template-columns:1fr}.invoice-financial-actions{justify-content:flex-start}.payment-detail-grid{grid-template-columns:1fr}}@media print{@page{size:A4 portrait;margin:10mm 8mm}body *{visibility:hidden!important}.delivery-report-print,.delivery-report-print *,.finance-print-statement,.finance-print-statement *{visibility:visible!important}.finance-print-statement{display:block;position:absolute;inset:0;padding:26px;color:#111827;font-family:Arial,Helvetica,sans-serif;background:#fff}.finance-print-statement header{display:flex;justify-content:space-between;align-items:center;padding-bottom:14px;border-bottom:2px solid #0f766e;color:#0f766e}.finance-print-statement h1{margin:24px 0 4px;font-size:24px}.finance-print-statement h2{margin:28px 0 9px;font-size:16px}.finance-print-statement p{margin:0;color:#475569;font-size:12px}.finance-print-statement table{width:100%;border-collapse:collapse;font-size:12px}.finance-print-statement td,.finance-print-statement th{padding:8px;border:1px solid #cbd5e1;text-align:left}.finance-print-statement th{background:#f1f5f9}body:has(.delivery-report-print) .shell{display:none!important}.delivery-report-print{display:block;padding:26px;color:#111827;font-family:Arial,Helvetica,sans-serif;background:#fff}.delivery-report-print header{display:flex;justify-content:space-between;align-items:center;padding-bottom:14px;border-bottom:2px solid #0f766e;color:#0f766e}.delivery-report-print h1{margin:24px 0 4px;font-size:24px}.delivery-report-print p{margin:0;color:#475569;font-size:12px}.delivery-report-print table{width:100%;border-collapse:collapse;font-size:12px;margin-top:16px}.delivery-report-print td,.delivery-report-print th{padding:8px;border:1px solid #cbd5e1;text-align:left;font-size:11px}.delivery-report-print th{background:#f1f5f9;font-size:12px}.delivery-report-print tr{page-break-inside:avoid}.delivery-report-print thead{display:table-header-group}.playlist-sequence-report{max-width:none;max-height:none;border:0;box-shadow:none;color:#111827}.playlist-report-backdrop,.playlist-sequence-report{position:static;display:block;width:100%;padding:0;overflow:visible;background:#fff}.playlist-report-backdrop{min-height:0}.shell:has(.playlist-sequence-report){display:block}.main:has(.playlist-sequence-report)>:not(.playlist-report-backdrop),.shell:has(.playlist-sequence-report)>.nav{display:none!important}.main:has(.playlist-sequence-report){display:block;width:100%;padding:0}.playlist-sequence-report .no-print{display:none!important}.playlist-sequence-report .playlist-report-toolbar{display:block;margin:0 0 5px;padding:0 0 5px}.playlist-sequence-report .playlist-report-toolbar .eyebrow{font-size:8px}.playlist-sequence-report .playlist-report-toolbar h2{margin:1px 0;font-size:17px}.playlist-sequence-report .playlist-report-toolbar p{display:none}.playlist-sequence-report .playlist-report-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin:5px 0}.playlist-sequence-report .playlist-report-summary>div{min-height:0;padding:4px 6px}.playlist-sequence-report .playlist-report-summary span{font-size:8px}.playlist-sequence-report .playlist-report-summary strong{font-size:12px}.playlist-sequence-report .playlist-report-legend{margin-bottom:5px;font-size:8px}.playlist-sequence-report .playlist-report-table-wrap{overflow:visible}.playlist-sequence-report .playlist-report-table{font-size:8px}.playlist-sequence-report .playlist-report-table td,.playlist-sequence-report .playlist-report-table th{padding:3px 4px;line-height:1.15}.playlist-sequence-report .playlist-report-table thead{display:table-header-group}.playlist-sequence-report .playlist-report-table th{position:static;font-size:7px}.playlist-sequence-report .playlist-report-table tr{break-inside:avoid;page-break-inside:avoid}}.playlist-modal{display:flex;flex-direction:column;width:min(1320px,100%);height:min(860px,94vh);max-height:min(860px,94vh);overflow:hidden}.playlist-modal-toolbar{flex:0 0 auto;padding-bottom:8px;border-bottom:1px solid var(--line)}.playlist-modal-toolbar h2,.playlist-modal-toolbar p{margin-top:0;margin-bottom:4px}.playlist-modal-toolbar-center{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.playlist-modal-scroll{min-height:0;flex:1 1 auto;overflow:hidden;padding-top:8px;padding-right:4px}.playlist-create-form{max-width:560px}.playlist-workspace{display:grid;height:100%;min-height:0;grid-template-columns:minmax(0,1fr) 320px;grid-gap:10px;gap:10px;align-items:stretch}.playlist-modal .playlist-center,.playlist-modal .playlist-right{min-height:0;grid-template-rows:auto minmax(0,1fr)}.playlist-modal .media-pick-list,.playlist-modal .playlist-center>.registry-table{min-height:0;max-height:none;overflow:auto;scrollbar-gutter:stable;padding-right:4px}.playlist-modal .playlist-sequence-header{position:-webkit-sticky;position:sticky;top:0;z-index:3}.playlist-modal .playlist-center{gap:8px}.playlist-modal .playlist-summary{padding:10px 12px}.playlist-modal .playlist-right>.panel{gap:8px;padding:12px}.playlist-modal .playlist-right>.panel h2{margin:0 0 2px}.audit-list{display:grid;grid-gap:10px;gap:10px}.audit-list article{display:grid;grid-gap:4px;gap:4px;border:1px solid var(--line);border-radius:var(--radius-md);padding:12px;background:#fbfcfe}.audit-list details,.audit-list small,.audit-list span{color:var(--muted);font-size:12px}.audit-list summary{cursor:pointer;color:#1769ff}.remote-command-panel h2{margin:0 0 6px}.remote-status-strip{display:flex;flex-wrap:wrap;align-items:center;row-gap:8px;column-gap:var(--space-3);padding:10px var(--space-4);margin-bottom:var(--space-3);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-muted)}.remote-status-strip>.icon-action,.remote-status-strip>.tooltip-anchor{margin-left:auto}.remote-status-chip{display:flex;align-items:center;gap:6px;padding-left:var(--space-3);border-left:1px solid var(--line);font-size:13px;color:var(--ink)}.remote-status-chip strong{color:var(--muted);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.remote-advanced-zone,.remote-quick-actions{margin-bottom:var(--space-3)}.remote-advanced-zone{padding:12px var(--space-4);border:1px solid var(--line);border-radius:var(--radius-sm);background:#fbfcfe}.remote-advanced-row,.remote-quick-actions-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px;margin-bottom:8px}.remote-quick-actions-row button{display:inline-flex;align-items:center;gap:6px}.remote-advanced-row label{flex:1 1 200px;min-width:0}.remote-advanced-row button{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto}.remote-command-row{display:flex;align-items:flex-end;flex-wrap:wrap;gap:10px}.remote-command-row label{flex:1 1 200px;min-width:0}.remote-command-row button{flex:0 0 auto}.remote-status-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:8px;gap:8px}.remote-status-grid>div{min-width:0;padding:6px 9px;border:1px solid var(--line);border-radius:7px;background:#f8fbfe}.remote-status-grid span{display:block;margin-bottom:2px;color:var(--muted);font-size:10px}.remote-status-grid strong{display:block;overflow-wrap:anywhere;font-size:12px;line-height:1.3}.device-event-filters{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 12px}.device-event-filters input,.device-event-filters select{min-height:36px;min-width:0}.device-event-filters input[type=search]{flex:1 1 220px}.device-event-date-field{display:flex;flex:0 0 auto;align-items:center;gap:6px;color:var(--muted);font-size:12px;font-weight:700}.device-event-date-field input[type=date]{min-height:36px}.device-event-filters select{flex:0 1 220px}.device-event-list{max-height:480px;overflow-y:auto;border:1px solid var(--line);border-radius:var(--radius-md)}.device-event-item{border-bottom:1px solid #edf1f6;padding:7px 10px}.device-event-item:last-child{border-bottom:0}.device-event-row{display:flex;align-items:center;gap:12px;font-size:12px}.device-event-row .status{flex:0 0 auto;white-space:nowrap}.device-event-message{flex:1 1 auto;min-width:0;overflow-wrap:anywhere;color:var(--ink)}.device-event-time{flex:0 0 auto;white-space:nowrap;font-size:11px}.device-event-details{margin-top:6px;color:var(--muted);font-size:12px}.device-event-details summary{cursor:pointer;color:#1769ff}.audit-list pre,.device-event-details pre{max-height:220px;overflow:auto;margin:8px 0 0;padding:8px;border:1px solid var(--line);border-radius:4px;background:#f8fafc;color:#334155;font-size:11px;white-space:pre-wrap;overflow-wrap:anywhere}.danger-confirm{display:grid;grid-gap:6px;gap:6px;border:1px solid #fecaca;border-radius:var(--radius-md);background:#fff1f2;color:#991b1b;padding:14px;margin-bottom:14px}.danger-confirm span{color:#7f1d1d;font-size:13px;line-height:1.45}.modal-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.danger-button{border:0;border-radius:var(--radius-sm);background:#dc2626;color:#fff;padding:10px 12px;cursor:pointer;font-weight:800}.auth{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:32px;background:radial-gradient(circle at 15% 0,rgba(13,124,102,.1),transparent 35%),var(--bg)}.auth-public{flex-direction:column;align-items:stretch;justify-content:flex-start;min-height:100dvh;gap:24px}.auth-public-content{flex:1 1 auto;min-height:0}.auth-public-content,.login-footer{display:flex;align-items:center;justify-content:center}.login-footer{flex:0 0 auto;flex-wrap:wrap;gap:6px;padding:0 16px 10px;text-align:center;color:var(--muted);font-size:12px}.login-footer a{color:var(--muted);text-decoration:underline;text-underline-offset:2px}.login-footer a:hover{color:var(--ink)}.login-footer-sep{opacity:.6}.login-footer-support{display:inline-flex;align-items:center;gap:5px}.auth-shell{width:min(980px,100%);display:grid;grid-template-columns:minmax(0,1.24fr) minmax(0,1fr);background:var(--panel);border-radius:16px;overflow:hidden;box-shadow:0 1px 1px rgba(10,20,25,.04),0 30px 60px -24px rgba(10,26,32,.35)}.auth-form-column{display:grid;min-width:0}.auth-showcase{position:relative;overflow:hidden;min-height:420px}.auth-showcase-scene,.auth-showcase-scene-img{position:absolute;inset:0}.auth-showcase-scene-img{width:100%;height:100%;transition:opacity .8s ease}@media (prefers-reduced-motion:reduce){.auth-showcase-scene-img{transition:none}}.auth-showcase-mark{width:92px;height:auto;display:block;filter:drop-shadow(0 8px 16px rgba(3,10,14,.45))}.auth-showcase-vignette{position:absolute;inset:0;pointer-events:none}.auth-showcase-copy{display:grid;grid-gap:8px;gap:8px;width:min(78%,420px);padding:14px 18px;border-radius:var(--radius-md);color:#eef7f4}.auth-showcase-eyebrow{margin:0;color:#8fe3c8;font-size:11.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.auth-showcase-copy h1{margin:0;max-width:20ch;font-size:27px;font-weight:800;line-height:1.18;letter-spacing:-.01em}.auth-showcase-sub{margin:0;max-width:34ch;color:rgba(238,247,244,.72);font-size:13.5px;line-height:1.5}.auth-showcase-features{display:flex;flex-wrap:wrap;gap:8px 16px;width:min(78%,420px);margin:0;padding:0;list-style:none}.auth-showcase-features li{display:inline-flex;align-items:center;gap:6px;color:rgba(238,247,244,.85);font-size:12.5px;font-weight:600}.login-card{display:grid;align-content:center;grid-gap:20px;gap:20px;padding:40px 38px}.login-form-logo{height:116px;width:auto;display:block}.login-kicker{margin:0 0 4px;color:var(--brand-strong);font-size:11.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.login-card h2{margin:0;font-size:24px;font-weight:800;letter-spacing:-.01em}.login-subtitle{margin:4px 0 0;color:var(--muted);font-size:13px;line-height:1.4}.google-button{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink);padding:12px 14px;cursor:pointer;font-weight:700;min-height:46px;transition:border-color .15s ease,background .15s ease}.google-button:hover{border-color:var(--brand);background:#f2faf7}.divider{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:13px}.divider:after,.divider:before{content:"";height:1px;flex:1 1;background:var(--line)}.login-card label{display:grid;grid-gap:6px;gap:6px;font-size:12.5px;font-weight:700;color:var(--muted)}.login-input{position:relative;display:flex;align-items:center}.login-input svg{position:absolute;left:13px;color:var(--muted);pointer-events:none}.login-input input{width:100%;height:44px;padding:0 14px 0 38px;border:1px solid var(--line);border-radius:9px;background:var(--bg);color:var(--ink);font:inherit;font-size:14px;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.login-input input:focus{outline:none;border-color:var(--brand);background:#fff;box-shadow:0 0 0 3px rgba(13,124,102,.14)}.login-submit{width:100%;min-height:46px;font-weight:800;box-shadow:0 10px 22px -10px rgba(13,124,102,.5)}.login-note{margin:0;font-size:13px;line-height:1.45}.login-forgot-link,.login-note{text-align:center;color:var(--muted)}.login-forgot-link{margin:-8px 0 0;padding:0;border:0;background:transparent;font-size:12.5px;font-weight:700;text-decoration:underline;text-underline-offset:2px;cursor:pointer;justify-self:center}.login-forgot-link:hover{color:var(--ink)}.recovery-card{max-width:440px;margin:0 auto}.recovery-processing{display:flex;align-items:center;gap:10px;margin:0}.recovery-invalid,.recovery-success{display:grid;grid-gap:16px;gap:16px}.recovery-success{text-align:center}.recovery-back-link{text-decoration:none}@media (max-width:820px){.playlist-modal-scroll{overflow:auto}.playlist-workspace{height:auto;align-items:start}.playlist-modal .playlist-center,.playlist-modal .playlist-right{grid-template-rows:auto}.playlist-modal .media-pick-list,.playlist-modal .playlist-center>.registry-table{max-height:430px}.grid.finance-metrics,.grid.three,.grid.two{grid-template-columns:1fr}.grid.finance-metrics .panel{border-right:0;border-bottom:1px solid var(--line)}.grid.finance-metrics .panel:last-child{border-bottom:0}.client-console,.form-grid.three,.form-grid.two,.media-create-grid,.playlist-effect-row,.playlist-layout,.playlist-row,.playlist-sequence-header,.playlist-sequence-row,.playlist-studio,.playlist-workbench,.playlist-workspace,.registry-filters,.registry-header,.registry-row,.screen-check-grid{grid-template-columns:1fr}.workspace-header{flex-direction:column;gap:8px}.media-compact-header{display:none}.media-compact-row{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px}.media-compact-row .media-row-head{display:flex;align-items:center;gap:8px;width:100%;order:1}.media-compact-row .media-name-link{flex:1 1 auto;min-width:0}.media-compact-row>span:nth-child(5){order:2;margin-right:auto}.media-compact-row>span:nth-child(2),.media-compact-row>span:nth-child(3),.media-compact-row>span:nth-child(4){order:3;font-size:12px}.media-compact-row>span:nth-child(2):after,.media-compact-row>span:nth-child(3):after{content:" · "}.detail-drawer{width:100vw}.workspace-media-list li{grid-template-columns:1fr;gap:6px}.workspace-media-list li .registry-actions{justify-content:flex-start}.entity-picker-popover{position:fixed;top:64px;left:12px;right:12px;width:auto}.playlist-effect-inline{width:100%}.playlist-consult-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-list article{align-items:flex-start;flex-direction:column}.portal-shell{padding:16px}.portal-header{min-height:auto;margin-bottom:12px}.portal-header h1{font-size:28px;line-height:1.08}.portal-header-brand>div{gap:3px}.portal-tabs{position:-webkit-sticky;position:sticky;top:0;z-index:2;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:5px;gap:5px;margin-left:-20px;margin-right:-20px;padding:10px 20px;background:#f4f7fb;overflow:visible}.portal-tabs button{min-width:0;min-height:38px;padding:0 4px;font-size:11px;gap:0;overflow:hidden;text-overflow:ellipsis}.portal-tabs button svg{display:none}.portal-screen-buttons{flex-wrap:nowrap;overflow-x:auto}.portal-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.portal-grid{grid-template-columns:1fr}.portal-metrics article{min-height:84px;padding:12px;gap:9px}.portal-metrics article>span{width:34px;height:34px}.portal-metrics strong{font-size:20px}.portal-panel{padding:14px}.portal-panel-heading{align-items:stretch;flex-direction:column}.portal-delivery-filters{justify-items:stretch}.portal-period-presets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.portal-period-presets button{padding:0 7px}.portal-custom-period{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.portal-period-result{grid-template-columns:1fr}.portal-period-result>div:last-child{text-align:left}.finance-summary-filter{align-items:stretch;flex-direction:column}.finance-summary-filter label,.portal-date-filter{width:100%}.portal-month-summary{grid-template-columns:1fr}.portal-campaign-row,.portal-campaign-row.detailed{grid-template-columns:1fr;gap:10px;padding:13px}.portal-campaign-row>div:not(.portal-campaign-media):not(.portal-active-days){grid-template-columns:minmax(112px,.8fr) minmax(0,1.2fr);align-items:baseline}.portal-campaign-count{justify-items:stretch;text-align:left}.portal-daily-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px!important}.portal-daily-grid span{min-height:40px}.portal-payment-note{margin-top:10px}.portal-invoice-actions{flex-direction:column}.portal-invoice-actions button{width:100%}.portal-toast{top:12px;right:12px;left:12px;max-width:none}.playlist-sequence-header,.registry-header{display:none}.playlist-sidebar{max-height:none}.playlist-summary{align-items:flex-start;flex-direction:column}.playlist-metrics,.registry-actions{justify-content:flex-start}.screen-actions{max-width:calc(100vw - 64px)}.display-frame-preview.landscape{aspect-ratio:16/9}.display-frame-preview-bar{gap:5px;padding-inline:0;font-size:11px}.display-frame-preview-info{gap:5px}.display-frame-modules{grid-template-columns:1fr}.display-frame-module-settings{grid-template-columns:48px minmax(120px,1fr) 82px}.display-frame-base-typography{grid-template-columns:1fr}.display-frame-icon-settings{flex-wrap:wrap}.display-frame-city-entry{grid-template-columns:minmax(0,1fr) auto}.display-frame-city-entry>label{grid-column:1/-1;justify-content:start}.display-frame-copy{grid-template-columns:1fr;align-items:stretch}.display-frame-copy button{width:100%;justify-content:center}.display-frame-copy small{grid-column:auto}.auth{padding:16px}.auth-shell{grid-template-columns:1fr;border-radius:14px}.auth-showcase{min-height:0;height:260px}.auth-showcase-mark{width:64px}.auth-showcase-copy{width:min(88%,300px);padding:10px 14px}.auth-showcase-copy h1{font-size:18px;max-width:none}.auth-showcase-sub{max-width:none;font-size:12px}.auth-showcase-features{display:none}.login-card{padding:28px 26px}.login-form-logo{height:88px}}.overlay-editor-modal{width:min(1480px,96vw);max-width:none;height:min(900px,94vh);display:flex;flex-direction:column;overflow:hidden}.overlay-editor-grid{display:grid;grid-template-columns:240px minmax(420px,1fr) 310px;grid-gap:12px;gap:12px;min-height:0;flex:1 1}.overlay-layer-list,.overlay-preview-column,.overlay-properties{min-height:0;overflow:auto;border:1px solid var(--line);border-radius:var(--radius-md);padding:12px}.overlay-add-row,.overlay-template-box>div{display:flex;gap:8px}.overlay-add-row select,.overlay-template-box input{min-width:0;flex:1 1}.overlay-layer-item{display:flex;width:100%;gap:8px;align-items:center;text-align:left;background:#fff;border:1px solid transparent;padding:9px;margin-top:6px}.overlay-layer-item.active{border-color:#16856f;background:#edf9f6}.overlay-layer-item span{display:flex;min-width:0;flex-direction:column}.overlay-layer-item small{color:var(--muted)}.overlay-template-box{display:grid;grid-gap:8px;gap:8px;margin-top:18px;padding-top:14px;border-top:1px solid var(--line)}.overlay-preview-column{display:flex;flex-direction:column;align-items:center;background:#e9eef3}.overlay-preview{position:relative;overflow:hidden;width:min(100%,920px);background:#0d161c;box-shadow:0 8px 26px #10232d33;touch-action:none}.overlay-preview.landscape{aspect-ratio:16/9}.overlay-preview.portrait{height:min(68vh,690px);aspect-ratio:9/16;width:auto}.overlay-preview-media{position:absolute;inset:0;display:grid;place-items:center;color:#b9c4ca;background:linear-gradient(135deg,#273943,#101b21)}.overlay-preview-layer{position:absolute;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:5px;cursor:move;-webkit-user-select:none;-moz-user-select:none;user-select:none}.overlay-preview-layer.selected{outline:2px solid #33d1ad;outline-offset:2px;overflow:visible}.overlay-preview-layer.overlay-type-image.selected{background:rgba(51,209,173,.1)!important}.overlay-preview-layer img{width:100%;height:100%;object-fit:contain}.overlay-resize-handle{position:absolute;right:-8px;bottom:-8px;width:17px;height:17px;min-width:17px;padding:0;border:2px solid #fff;border-radius:4px;background:#16856f;box-shadow:0 1px 5px #0f172a66;cursor:nwse-resize;z-index:2}.qr-placeholder{display:grid;place-items:center;width:100%;height:100%;background:repeating-linear-gradient(45deg,#111 0 5px,#fff 5px 10px);color:#fff;text-shadow:0 1px 3px #000}.overlay-help{margin:10px 0 0;text-align:center}.overlay-properties{display:grid;align-content:start;grid-gap:9px;gap:9px}.overlay-properties label{display:grid;grid-gap:4px;gap:4px}.field-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.check-row{display:flex!important;align-items:center;gap:8px}.check-row input{width:auto}.upload-button{display:flex!important;align-items:center;justify-content:center;gap:8px;padding:10px;cursor:pointer}.toolbar.compact{margin:0}.eyebrow{margin:0;color:#16856f;font-size:12px;font-weight:700;text-transform:uppercase}.icon-text{display:inline-flex;align-items:center;justify-content:center;gap:7px}@media(max-width:1000px){.overlay-editor-grid{grid-template-columns:190px 1fr}.overlay-properties{grid-column:1/-1;max-height:270px}.overlay-editor-modal{height:96vh}}@media(max-width:680px){.overlay-editor-grid{display:flex;flex-direction:column}.overlay-layer-list{max-height:190px}.overlay-preview-column{overflow:visible}.overlay-preview.portrait{height:46vh}.overlay-properties{max-height:none}.field-grid.four{grid-template-columns:1fr 1fr}}.sequence-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;min-width:0;white-space:nowrap}.overlay-preview-media{overflow:hidden;background:#101b21}.overlay-preview-media>img,.overlay-preview-media>video{width:100%;height:100%;object-fit:fill}.overlay-preview-media>video{pointer-events:none}.overlay-image-source{display:grid;grid-gap:7px;gap:7px;padding:10px;border:1px solid var(--line);border-radius:var(--radius-md)}.overlay-image-source>span,.overlay-template-box>small{color:var(--muted);font-size:12px}.overlay-image-source>span{text-align:center}.overlay-editor-header{flex:0 0 auto;margin:0;padding-bottom:12px;border-bottom:1px solid var(--line);background:var(--panel);z-index:3}.overlay-editor-header-actions{display:flex;align-items:center;gap:8px}.overlay-editor-footer{flex:0 0 auto;margin-top:10px;padding-top:10px;border-top:1px solid var(--line);background:var(--panel)}.overlay-editor-footer>span{margin-right:auto}.overlay-inherited-box{display:grid;grid-gap:7px;gap:7px;margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.overlay-inherited-box>small{color:var(--muted);font-size:12px;line-height:1.35}.overlay-inherited-item{display:flex;align-items:center;gap:6px;padding:8px;border:1px solid #efc36d;border-radius:var(--radius-sm);background:#fff9e8}.overlay-inherited-item>span{display:flex;min-width:0;flex:1 1;flex-direction:column}.overlay-inherited-item small{color:var(--muted);font-size:11px}.overlay-text-style{display:flex;gap:6px}.overlay-text-style button{display:grid;width:36px;height:34px;place-items:center;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;color:var(--ink)}.overlay-text-style button.active{border-color:var(--brand);background:#e5f7f2;color:var(--brand-strong)}.simulator{display:grid;grid-gap:16px;gap:16px}@media (min-width:481px){.simulator-modal-shell .modal-shell-body{flex:0 1 auto}}.simulator-mode-toggle{display:inline-flex;gap:4px;padding:3px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-muted);width:-moz-fit-content;width:fit-content}.simulator-mode-toggle button{border:0;background:transparent;padding:7px 16px;border-radius:var(--radius-sm);color:var(--muted);font-size:13px;font-weight:700;min-height:34px}.simulator-mode-toggle button.active{background:var(--panel);color:var(--ink);box-shadow:var(--shadow-sm)}.simulator-base{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;padding-bottom:14px;border-bottom:1px solid var(--line)}.simulator-base label{display:grid;grid-gap:4px;gap:4px;font-size:12px;font-weight:700;color:var(--muted)}.simulator-base select{min-width:260px}.simulator-base-summary{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:12.5px;color:var(--muted)}.simulator-base-summary strong{color:var(--ink)}.simulator-unknown-note{color:#b45309}.simulator-unknown-field{max-width:340px}.simulator-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-gap:20px;gap:20px}.simulator-section-title{margin:0 0 10px;color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.02em}.simulator-entry{display:grid;grid-gap:14px;gap:14px;align-content:start;padding-right:18px;border-right:1px solid var(--line)}.simulator-groups{display:grid;grid-gap:8px;gap:8px}.simulator-group-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 40px;grid-gap:8px;gap:8px;align-items:end}.simulator-group-row>.compact-field{min-width:0}.simulator-add-group{width:-moz-fit-content;width:fit-content;font-size:12.5px}.simulator-transitions{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));grid-gap:10px;gap:10px}.simulator-meta-target,.simulator-period{display:flex;align-items:end;gap:8px;flex-wrap:wrap}.simulator-meta-target .muted{padding-bottom:9px;font-size:12.5px}.simulator-reference{max-width:280px}.simulator-unit-field{display:flex;align-items:center;gap:6px}.simulator-unit-field input{flex:1 1 auto;min-width:0}.simulator-unit-field span{flex:0 0 auto;color:var(--muted);font-size:12px;white-space:nowrap}.simulator-meta-sentence{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0;font-size:13px;color:var(--ink);font-weight:600}.simulator-meta-sentence input{width:64px;flex:0 0 auto;text-align:center}.simulator-meta-summary{margin:0 0 8px;color:var(--muted);font-size:12.5px;font-weight:700}.simulator-result{display:grid;grid-gap:2px;gap:2px;align-content:start}.simulator-empty-state{padding:20px 0}.simulator-headline{display:flex;flex-wrap:wrap;gap:22px;padding-bottom:12px;margin-bottom:6px;border-bottom:1px solid var(--line)}.simulator-headline>div{display:grid;grid-gap:2px;gap:2px;min-width:0}.simulator-headline span{color:var(--muted);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.02em}.simulator-headline strong{color:var(--ink);font-size:21px;font-weight:800;white-space:nowrap}.simulator-result-list{display:grid;grid-gap:2px;gap:2px}.simulator-result-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:5px 0}.simulator-result-row span{color:var(--muted);font-size:13px}.simulator-result-row strong{color:var(--ink);font-size:15px;white-space:nowrap}.simulator-result-row small{flex:0 0 auto;color:var(--muted);font-size:11px}.simulator-target-badge{margin:10px 0 0;padding:8px 10px;border-radius:var(--radius-sm);font-size:13px;font-weight:700}.simulator-target-badge.met{background:#f0fdf4;color:#15803d}.simulator-target-badge.unmet{background:#fff7ed;color:#c2410c}.simulator-comparison{margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.simulator-comparison-table-wrap{overflow-x:auto}.simulator-meta-invalid{display:block;width:-moz-fit-content;width:fit-content;margin-top:2px}.simulator-comparison-table{width:100%;border-collapse:collapse;font-size:13px}.simulator-comparison-table th{padding:6px 8px;text-align:right;color:var(--muted);font-size:11px;font-weight:700;text-transform:uppercase}.simulator-comparison-table th:first-child{text-align:left}.simulator-comparison-table td{padding:7px 8px;text-align:right;border-top:1px solid #edf1f6}.simulator-comparison-table td:first-child{text-align:left;color:var(--muted)}.simulator-impact{margin:10px 0 0;color:var(--muted);font-size:12.5px}@media (max-width:720px){.simulator-grid{grid-template-columns:1fr}.simulator-entry{padding-right:0;padding-bottom:14px;border-right:0;border-bottom:1px solid var(--line)}.simulator-group-row{grid-template-columns:1fr}.simulator-group-row .icon-action{justify-self:start}.simulator-headline{gap:14px 22px}.simulator-headline strong{font-size:18px}}