/* TALION Control foundation — one persistent shell for every operational module. */
/* Shared, opt-out platform-safe scrollbar and textarea baseline. */
:root{--control-scroll-thumb:var(--talion-paint-text, #3a493f);--control-scroll-track:var(--talion-paint-text, #0a0d0b);scrollbar-color:var(--control-scroll-thumb) var(--control-scroll-track);scrollbar-width:auto}
*{scrollbar-color:var(--control-scroll-thumb) var(--control-scroll-track);scrollbar-width:auto}
*::-webkit-scrollbar{width:11px;height:11px}
*::-webkit-scrollbar-track{background:var(--control-scroll-track)}
*::-webkit-scrollbar-thumb{background:var(--control-scroll-thumb);border:2px solid var(--control-scroll-track);border-radius:9px}
*::-webkit-scrollbar-thumb:hover{background:var(--talion-paint-raised, #65766a)}
textarea{resize:none;min-height:6rem}
@media(forced-colors:active){*{scrollbar-color:auto}*::-webkit-scrollbar-thumb{background:ButtonText}}
:root{--control-bg:var(--talion-paint-canvas, #0a0d0b);--control-bg-soft:var(--talion-paint-surface, #0d120f);--control-panel:var(--talion-paint-surface, #111512);--control-panel-2:var(--talion-paint-surface, #171b18);--control-panel-3:var(--talion-paint-raised, #1d231f);--control-line:var(--talion-paint-line, #29332d);--control-line-soft:var(--talion-paint-line, #202923);--control-text:var(--talion-paint-text, #f2f0e8);--control-muted:var(--talion-paint-muted, #9da69f);--control-acid:var(--talion-paint-accent, #c8ff3d);--control-info:var(--talion-paint-info, #84a7ff);--control-warning:var(--talion-paint-warning, #ffc66d);--control-danger:var(--talion-paint-danger, #e56b6b);--control-success:var(--talion-paint-accent, #8bd450);--control-radius-sm:9px;--control-radius:14px;--control-radius-lg:20px;--control-shadow:0 24px 70px var(--talion-paint-shadow, #0007)}
html{scrollbar-color:var(--talion-paint-muted, #3a493f) var(--talion-paint-text, #0a0d0b)}body{background:radial-gradient(46rem 28rem at 76% -12%,var(--talion-paint-accent-tint, #c8ff3d0b),transparent 72%),var(--control-bg);color:var(--control-text)}
button,a,input,select,textarea{font:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--control-acid)!important;outline-offset:2px}
.app{grid-template-columns:232px minmax(0,1fr);background:transparent}.sidebar{width:232px;height:100dvh;padding:18px 12px 14px;border-color:var(--control-line-soft);background:linear-gradient(180deg,var(--talion-paint-surface, #0b100deb),var(--talion-paint-surface, #08100ced));backdrop-filter:blur(18px)}
.sidebar .brand{min-height:52px;padding:3px 11px 17px;border-bottom:1px solid var(--control-line-soft);gap:9px}.sidebar .brand .talion-mark{width:27px;height:27px}.sidebar .brand>span{font-size:14px;letter-spacing:.11em}.sidebar .brand small{display:block;margin-top:2px;color:var(--talion-paint-muted, #728078);font-size:7px;letter-spacing:.14em}.nav{display:block;flex:1;min-height:0;overflow-y:auto;padding:13px 0 8px;scrollbar-width:thin}.nav section{display:grid;gap:2px;margin-bottom:12px}.nav section>span{padding:0 12px 5px;color:var(--talion-paint-muted, #68736c);font-size:9px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.nav button{min-height:37px;padding:8px 11px;border:1px solid transparent;border-radius:9px;color:var(--talion-paint-muted, #9ca69f);font-size:12px}.nav button b{width:20px;color:var(--talion-paint-muted, #aab7af);font-size:15px;font-weight:500}.nav button em{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-style:normal}.nav button:hover{border-color:var(--talion-paint-line, #26332c);background:var(--talion-paint-surface, #131b16);color:var(--talion-paint-text, #fff)}.nav button.active{border-color:var(--talion-paint-accent-line, #c8ff3d13);background:linear-gradient(90deg,var(--talion-paint-accent-tint, #c8ff3d18),var(--talion-paint-accent-tint, #c8ff3d07));box-shadow:inset 2px 0 var(--control-acid);color:var(--talion-paint-accent-text, #eaffbd)}.nav button.active b{color:var(--control-acid)}
.sidebar-bottom{margin-top:4px;padding-top:10px;border-top:1px solid var(--control-line-soft)}.sidebar-bottom .user-card{padding:9px 11px;margin:0 0 8px;border:0;background:var(--talion-paint-surface, #111914)}.sidebar-bottom .user-card strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-bottom .user-card span{font-size:8px}.sidebar-bottom>button{min-height:36px;padding:8px;font-size:11px}
.main{min-width:0}.topbar{height:64px;padding:0 24px;justify-content:flex-start;gap:16px;border-color:var(--control-line-soft);background:var(--talion-paint-surface, #0b100ded)}.control-global-search{width:min(640px,56vw);height:39px;display:flex;align-items:center;gap:9px;padding:0 12px;border:1px solid var(--talion-paint-line, #2c3931);border-radius:10px;background:var(--talion-paint-surface, #111914);color:var(--talion-paint-muted, #819087)}.control-global-search input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:var(--control-text);font-size:12px}.control-global-search kbd{padding:3px 6px;border:1px solid var(--talion-paint-line, #334139);border-radius:5px;color:var(--talion-paint-muted, #6f7b74);font-size:9px}.control-topbar-actions{margin-left:auto;display:flex;align-items:center;gap:11px}.control-topbar-actions>button,.control-topbar-actions>a{width:38px;height:38px;position:relative;display:grid;place-items:center;border:1px solid var(--control-line);border-radius:50%;background:var(--talion-paint-surface, #131a16);color:var(--control-text);text-decoration:none;cursor:pointer}.control-topbar-actions>button b{display:none;position:absolute;right:-3px;top:-3px;min-width:16px;height:16px;padding:0 4px;place-items:center;border-radius:20px;background:var(--control-danger);color:var(--talion-paint-text, #fff);font-size:8px}.control-topbar-actions>button b.has-alerts{display:grid}.control-topbar-actions>div{display:grid}.control-topbar-actions strong{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.control-topbar-actions small{color:var(--control-muted);font-size:9px}.content{width:100%;max-width:1740px;margin-inline:auto;padding:28px clamp(18px,3vw,42px) 70px}
.control-sidebar-backdrop{display:none}.control-command-menu{position:fixed;z-index:80;top:56px;left:256px;width:min(620px,calc(100vw - 280px));max-height:70vh;overflow:auto;padding:8px;border:1px solid var(--talion-paint-line, #344138);border-radius:14px;background:var(--talion-paint-surface, #111713);box-shadow:var(--control-shadow)}.control-command-menu[hidden]{display:none}.control-command-menu>span{display:block;padding:8px 10px;color:var(--talion-paint-muted, #78837c);font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.control-command-menu button{width:100%;min-height:42px;display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:9px;padding:8px 10px;border:0;border-radius:9px;background:transparent;color:var(--talion-paint-text, #d7ddd8);text-align:left;cursor:pointer}.control-command-menu button:hover{background:var(--talion-paint-raised, #1a221d)}.control-command-menu button i{color:var(--control-acid);font-style:normal;text-align:center}.control-command-menu button small{color:var(--talion-paint-muted, #7c8780);font-size:9px}
.control-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:22px}.control-page-head>div:first-child{max-width:800px}.control-kicker{display:block;color:var(--control-acid);font-size:9px;font-weight:850;letter-spacing:.15em;text-transform:uppercase}.control-page-head h1{margin:7px 0 5px;font-size:clamp(34px,4vw,54px);line-height:1;letter-spacing:-.05em}.control-page-head p{margin:0;color:var(--control-muted);font-size:13px;line-height:1.55}.control-page-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.control-page-actions button,.control-button{min-height:40px;padding:9px 14px;border:1px solid var(--control-line);border-radius:10px;background:var(--talion-paint-surface, #161d19);color:var(--control-text);font-size:11px;font-weight:800;cursor:pointer}.control-page-actions button.primary,.control-button.primary{border-color:var(--control-acid);background:var(--control-acid);color:var(--talion-paint-on-accent, #0a0d0b)}.control-page-actions button:hover,.control-button:hover{border-color:var(--talion-paint-line, #536159);transform:translateY(-1px)}
.control-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px}.control-kpi{min-height:116px;position:relative;padding:16px;border:1px solid var(--control-line-soft);border-radius:var(--control-radius);background:linear-gradient(145deg,var(--talion-paint-surface, #131a16),var(--talion-paint-surface, #0e1411));overflow:hidden}.control-kpi>i{width:32px;height:32px;display:grid;place-items:center;border-radius:9px;background:var(--talion-paint-accent-tint, #c8ff3d12);color:var(--control-acid);font-size:15px;font-style:normal}.control-kpi>span{display:block;margin:15px 0 4px;color:var(--control-muted);font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.control-kpi strong{font-size:25px;letter-spacing:-.04em}.control-kpi small{display:block;margin-top:5px;color:var(--talion-paint-muted, #738079);font-size:10px}.control-kpi.warning>i{background:var(--talion-paint-warning-tint, #ffc66d12);color:var(--control-warning)}.control-kpi.danger>i{background:var(--talion-paint-danger-tint, #e56b6b14);color:var(--control-danger)}.control-kpi.info>i{background:var(--talion-paint-info-tint, #84a7ff13);color:var(--control-info)}
.control-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:12px}.control-panel{grid-column:span 6;min-width:0;border:1px solid var(--control-line-soft);border-radius:var(--control-radius);background:linear-gradient(160deg,var(--talion-paint-surface, #111713),var(--talion-paint-surface, #0d120f));overflow:hidden}.control-panel.wide{grid-column:span 8}.control-panel.narrow{grid-column:span 4}.control-panel.full{grid-column:1/-1}.control-panel>header{min-height:54px;display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--control-line-soft)}.control-panel>header h2,.control-panel>header h3{margin:0;font-size:14px}.control-panel>header p{margin:3px 0 0;color:var(--control-muted);font-size:10px}.control-panel>header button{margin-left:auto;border:0;background:transparent;color:var(--control-info);font-size:10px;cursor:pointer}.control-list{display:grid}.control-list>button,.control-list>article{min-height:56px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:11px 16px;border:0;border-bottom:1px solid var(--control-line-soft);background:transparent;color:var(--control-text);text-align:left}.control-list>button{cursor:pointer}.control-list>button:hover{background:var(--talion-paint-raised, #171f1a)}.control-list strong,.control-list small{display:block}.control-list small{margin-top:4px;color:var(--control-muted);font-size:10px}.control-list time{color:var(--control-muted);font-size:10px}.control-list .control-alert{color:var(--control-danger)}
.control-status{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border:1px solid var(--talion-paint-line, #39453e);border-radius:99px;color:var(--talion-paint-text, #cbd2cd);font-size:9px;white-space:nowrap}.control-status:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--talion-paint-raised, #7e8a83)}.control-status[data-status="done"]:before,.control-status[data-status="paid"]:before,.control-status[data-status="active"]:before,.control-status[data-status="resolved"]:before{background:var(--control-success)}.control-status[data-status="in_progress"]:before,.control-status[data-status="sent"]:before{background:var(--control-info)}.control-status[data-status="urgent"]:before,.control-status[data-status="late"]:before,.control-status[data-status="open"]:before{background:var(--control-danger)}.control-status[data-status="waiting"]:before,.control-status[data-status="high"]:before{background:var(--control-warning)}
.control-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:12px;padding:10px;border:1px solid var(--control-line-soft);border-radius:12px;background:var(--talion-paint-surface, #101512)}.control-toolbar label{min-width:220px;display:flex;align-items:center;gap:7px;padding:0 10px;border:1px solid var(--control-line);border-radius:9px;background:var(--talion-paint-surface, #161d19);color:var(--talion-paint-muted, #7f8b84)}.control-toolbar input{width:100%;height:36px;border:0;outline:0;background:transparent;color:var(--control-text);font-size:11px}.control-toolbar select{height:38px;padding:0 10px;border:1px solid var(--control-line);border-radius:9px;background:var(--talion-paint-surface, #161d19);color:var(--control-text);font-size:11px}.control-toolbar .control-button{margin-left:auto}
.control-data-table{width:100%;border-collapse:collapse;min-width:760px}.control-data-table th{padding:11px 14px;border-bottom:1px solid var(--control-line);color:var(--talion-paint-muted, #758079);font-size:9px;letter-spacing:.09em;text-align:left;text-transform:uppercase}.control-data-table td{padding:13px 14px;border-bottom:1px solid var(--control-line-soft);color:var(--talion-paint-text, #d9dedb);font-size:11px}.control-data-table tr:hover td{background:var(--talion-paint-surface, #151c18)}.control-data-table td strong,.control-data-table td small{display:block}.control-data-table td small{margin-top:4px;color:var(--control-muted)}.control-data-table button{min-height:32px;padding:6px 9px;border:1px solid var(--control-line);border-radius:8px;background:var(--talion-paint-raised, #19201b);color:var(--control-text);font-size:9px;cursor:pointer}.control-actions{display:flex;gap:5px;justify-content:flex-end}
.control-empty{padding:46px 24px;text-align:center;color:var(--control-muted)}.control-empty>i{width:46px;height:46px;display:grid;place-items:center;margin:0 auto 12px;border-radius:14px;background:var(--talion-paint-accent-tint, #c8ff3d0c);color:var(--control-acid);font-size:22px;font-style:normal}.control-empty strong{display:block;color:var(--control-text);font-size:16px}.control-empty span{display:block;max-width:520px;margin:7px auto 15px;font-size:11px;line-height:1.6}.control-empty button{min-height:38px;padding:8px 13px;border:1px solid var(--control-acid);border-radius:9px;background:var(--control-acid);color:var(--talion-paint-on-accent, #0a0d0b);font-size:10px;font-weight:850;cursor:pointer}.control-loading{min-height:300px;display:grid;place-items:center;color:var(--control-muted);font-size:12px}.control-loading:before{content:"";width:27px;height:27px;border:2px solid var(--talion-paint-line, #2e3a33);border-top-color:var(--control-acid);border-radius:50%;animation:control-spin .7s linear infinite}.control-error{padding:14px;border:1px solid var(--talion-paint-danger-line, #e56b6b55);border-radius:11px;background:var(--talion-paint-danger-tint, #e56b6b0d);color:var(--talion-paint-danger, #ffaaa6);font-size:11px}.control-note{padding:12px 14px;border:1px solid var(--talion-paint-info-line, #84a7ff30);border-radius:11px;background:var(--talion-paint-info-tint, #84a7ff0b);color:var(--talion-paint-info, #bdccf4);font-size:11px;line-height:1.5}.control-note.warning{border-color:var(--talion-paint-warning-line, #ffc66d35);background:var(--talion-paint-warning-tint, #ffc66d09);color:var(--talion-paint-warning, #f3d69c)}
.control-project-grid,.control-fleet-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.control-project-card,.control-fleet-card{padding:17px;border:1px solid var(--control-line-soft);border-radius:var(--control-radius);background:linear-gradient(145deg,var(--talion-paint-surface, #131a16),var(--talion-paint-surface, #0d1210))}.control-project-card header,.control-fleet-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.control-project-card h3,.control-fleet-card h3{margin:0;font-size:15px}.control-project-card p,.control-fleet-card p{margin:6px 0;color:var(--control-muted);font-size:10px}.control-project-card dl,.control-fleet-card dl{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:16px 0}.control-project-card dl div,.control-fleet-card dl div{padding:9px;border-radius:8px;background:var(--talion-paint-raised, #18201b)}.control-project-card dt,.control-fleet-card dt{color:var(--talion-paint-muted, #76817a);font-size:8px;text-transform:uppercase}.control-project-card dd,.control-fleet-card dd{margin:5px 0 0;font-size:12px;font-weight:800}.control-progress{height:5px;margin:12px 0;border-radius:10px;background:var(--talion-paint-raised, #26312b);overflow:hidden}.control-progress b{display:block;height:100%;border-radius:inherit;background:var(--control-acid)}.control-card-actions{display:flex;gap:7px;margin-top:12px}.control-card-actions button{flex:1;min-height:35px;border:1px solid var(--control-line);border-radius:8px;background:var(--talion-paint-raised, #18201b);color:var(--control-text);font-size:9px;cursor:pointer}
.control-report-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.control-report-card{padding:18px;border:1px solid var(--control-line-soft);border-radius:var(--control-radius);background:var(--talion-paint-surface, #111713)}.control-report-card i{color:var(--control-info);font-size:22px;font-style:normal}.control-report-card h3{margin:15px 0 6px}.control-report-card p{min-height:44px;margin:0;color:var(--control-muted);font-size:11px;line-height:1.5}.control-report-card button{width:100%;min-height:38px;margin-top:14px;border:1px solid var(--control-line);border-radius:9px;background:var(--talion-paint-raised, #18201b);color:var(--control-text);font-size:10px;cursor:pointer}
.control-settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.control-settings-card{padding:18px;border:1px solid var(--control-line-soft);border-radius:var(--control-radius);background:var(--talion-paint-surface, #111713)}.control-settings-card h2{margin:0 0 14px;font-size:15px}.control-settings-card label{display:grid;gap:7px;margin:12px 0;color:var(--talion-paint-text, #bdc6c0);font-size:11px}.control-settings-card input,.control-settings-card select{height:40px;padding:0 11px;border:1px solid var(--control-line);border-radius:9px;background:var(--talion-paint-raised, #171f1a);color:var(--control-text)}.control-settings-card label.toggle{grid-template-columns:1fr auto;align-items:center}.control-settings-card label.toggle input{width:18px;height:18px;accent-color:var(--control-acid)}.control-health{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--control-line-soft);font-size:11px}.control-health b{color:var(--control-success)}.control-health b.down{color:var(--control-danger)}
.control-toast{position:fixed;right:22px;bottom:22px;z-index:120;max-width:380px;padding:12px 15px;border:1px solid var(--talion-paint-accent-line, #c8ff3d55);border-radius:10px;background:var(--talion-paint-raised, #142016);color:var(--talion-paint-accent-text, #ecffca);box-shadow:var(--control-shadow);font-size:11px}.control-modal-layer{position:fixed;inset:0;z-index:110;display:grid;place-items:center;padding:18px;background:var(--talion-paint-surface, #000b);backdrop-filter:blur(7px)}.control-modal{width:min(620px,100%);max-height:90vh;overflow:auto;border:1px solid var(--talion-paint-line, #38453e);border-radius:18px;background:var(--talion-paint-surface, #111713);box-shadow:var(--control-shadow)}.control-modal>header{display:flex;align-items:center;justify-content:space-between;padding:18px;border-bottom:1px solid var(--control-line)}.control-modal>header h2{margin:0;font-size:18px}.control-modal>header button{width:36px;height:36px;border:1px solid var(--control-line);border-radius:50%;background:var(--talion-paint-raised, #1a221d);color:var(--talion-paint-text, #fff);cursor:pointer}.control-modal form{display:grid;grid-template-columns:1fr 1fr;gap:11px;padding:18px}.control-modal label{display:grid;gap:6px;color:var(--talion-paint-text, #b9c2bc);font-size:10px}.control-modal label.full{grid-column:1/-1}.control-modal input,.control-modal select,.control-modal textarea{width:100%;padding:11px;border:1px solid var(--control-line);border-radius:9px;background:var(--talion-paint-raised, #171f1a);color:var(--control-text)}.control-modal textarea{min-height:90px;resize:vertical}.control-modal footer{grid-column:1/-1;display:flex;justify-content:flex-end;gap:8px;padding-top:8px}
/* Keep Prospects and Dispatch inside the persistent Control shell. */
body.crm-prospect-workspace .app,body.talion-dispatch-page .app{display:grid!important}body.crm-prospect-workspace .app>.sidebar,body.crm-prospect-workspace .main>.topbar,body.talion-dispatch-page .app>.sidebar,body.talion-dispatch-page .app>.main>.topbar{display:flex!important}body.crm-prospect-workspace .main,body.talion-dispatch-page .main{width:auto!important}body.crm-prospect-workspace .content,body.talion-dispatch-page .app>.main>.content{width:100%!important;max-width:1740px!important;margin-inline:auto!important;padding:28px clamp(18px,3vw,42px) 70px!important}
#dispatch-control,#talion-dispatch-workspace{min-height:0!important;display:block!important;background:transparent!important;color:var(--control-text)}.crm-workspace-sidebar,.crm-commandbar,.crm-nav-backdrop,.dw-sidebar,.dw-topbar,.dw-sidebar-backdrop{display:none!important}.crm-workspace-content,.dw-content{max-width:none!important;padding:0!important;margin:0!important}.crm-workspace-main,.dw-main{min-width:0}.crm-module-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 16px}.crm-module-tabs{display:flex;gap:6px;flex:1;overflow:auto;padding-bottom:2px}.crm-module-tabs button{min-height:38px!important;white-space:nowrap}.crm-module-tabs button.active{border-color:var(--talion-paint-accent-line, #c8ff3d55)!important;background:var(--talion-paint-accent-tint, #c8ff3d12)!important;color:var(--control-acid)!important}.crm-module-filter{width:min(360px,100%);height:40px;display:flex;align-items:center;gap:7px;padding:0 10px;border:1px solid var(--control-line);border-radius:9px;background:var(--talion-paint-surface, #151d18)}.crm-module-filter input{min-width:0;flex:1;border:0;background:transparent;color:var(--control-text);outline:0}.dw-heading h1{font-size:clamp(30px,3vw,43px)!important}.dw-heading>div:first-child>span,.dw-card header>div>span{font-size:9px!important}.dw-heading p,.dw-heading blockquote,.dw-kpis p,.dw-kpis small,.dw-card header h2,.dw-card header h3,.dw-list strong,.dw-alerts article strong,.dw-unassigned>button,.dw-quick>div button,.dw-table>button,.dw-load>div strong,.dw-fleet>div,.dw-stock>div,.dw-drawer section p,.dw-drawer section label{font-size:11px!important}.dw-list small,.dw-alerts article small,.dw-ruler i,.dw-team-row header small,.dw-table>span{font-size:9px!important}.dw-job strong{font-size:10px!important}.dw-job span{font-size:8px!important}.dw-quick>div button{min-height:54px!important}.dw-content button{min-height:34px}.dw-kpis article{min-height:96px}.dw-primary-grid{grid-template-columns:minmax(620px,1.8fr) minmax(270px,.75fr) minmax(240px,.62fr)}
@keyframes control-spin{to{transform:rotate(360deg)}}
@media(max-width:1280px){.control-kpi-grid{grid-template-columns:repeat(2,1fr)}.control-project-grid,.control-fleet-grid,.control-report-grid{grid-template-columns:repeat(2,1fr)}.control-panel.wide,.control-panel.narrow{grid-column:span 6}.dw-primary-grid{grid-template-columns:minmax(560px,1fr) 300px}.dw-rail{grid-column:1/-1;grid-row:auto;display:grid;grid-template-columns:repeat(4,1fr);max-height:none}}
@media(max-width:960px){.app{grid-template-columns:76px minmax(0,1fr)}.sidebar{width:76px;padding-inline:9px}.sidebar .brand>span,.nav section>span,.nav button em,.sidebar-bottom .user-card,.sidebar-bottom>button{display:none}.sidebar .brand{justify-content:center;padding-inline:0}.nav button{justify-content:center}.nav button b{font-size:17px}.control-command-menu{left:96px;width:calc(100vw - 116px)}.control-topbar-actions>div{display:none}.control-grid{display:block}.control-panel{margin-bottom:12px}.control-settings-grid{grid-template-columns:1fr}.control-project-grid,.control-fleet-grid,.control-report-grid{grid-template-columns:1fr 1fr}.dw-primary-grid{display:flex;flex-direction:column}.dw-planning{overflow:auto}.dw-planning>header,.dw-filter-panel,.dw-timeline{min-width:720px}.dw-rail{display:grid;grid-template-columns:1fr 1fr}}
@media(max-width:720px){.app{display:block!important}.sidebar{position:fixed!important;left:-248px!important;width:232px!important;padding-inline:12px!important;transition:left .22s ease}.sidebar.open{left:0!important;box-shadow:30px 0 70px var(--talion-paint-shadow, #000)}.sidebar.open~.control-sidebar-backdrop{display:block;position:fixed;inset:0;z-index:19;border:0;background:var(--talion-paint-overlay, #000a)}.sidebar .brand>span,.nav section>span,.nav button em,.sidebar-bottom .user-card,.sidebar-bottom>button{display:block}.nav button{justify-content:flex-start}.topbar{height:60px;padding:0 12px}.mobile-menu{display:block;flex:0 0 auto}.control-global-search{width:auto;flex:1}.control-global-search kbd,.control-topbar-actions>div,.control-topbar-actions>a{display:none}.control-topbar-actions{margin-left:0}.control-command-menu{left:12px;right:12px;top:56px;width:auto}.content,body.crm-prospect-workspace .content,body.talion-dispatch-page .app>.main>.content{padding:20px 13px 56px!important}.control-page-head{align-items:flex-start;flex-direction:column}.control-page-actions{width:100%;justify-content:flex-start}.control-kpi-grid{grid-template-columns:1fr 1fr}.control-kpi{min-height:104px;padding:13px}.control-project-grid,.control-fleet-grid,.control-report-grid{grid-template-columns:1fr}.control-toolbar{align-items:stretch}.control-toolbar label{width:100%;min-width:0}.control-toolbar select{flex:1}.control-toolbar .control-button{margin-left:0}.control-settings-grid{grid-template-columns:1fr}.control-modal form{grid-template-columns:1fr}.control-modal label.full,.control-modal footer{grid-column:1}.crm-module-toolbar{align-items:stretch}.crm-module-tabs{width:100%}.crm-module-filter{width:100%}.dw-heading{grid-template-columns:1fr!important}.dw-date{grid-column:auto!important}.dw-kpis{display:grid!important;grid-template-columns:1fr 1fr!important;overflow:visible!important}.dw-kpis article{min-width:0!important}.dw-rail{display:block}.dw-rail>*{margin-bottom:10px}.dw-planning,.dw-map,.dw-rail{width:100%}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* Operational accessibility and state polish. */
body{color-scheme:var(--talion-native-scheme, dark)}
button:disabled,[aria-disabled="true"]{opacity:.52!important;cursor:not-allowed!important;transform:none!important;box-shadow:none!important}
.nav button{min-height:42px}
.control-global-search{height:42px;transition:border-color .17s ease,box-shadow .17s ease}
.control-global-search:focus-within,.control-toolbar label:focus-within,.crm-module-filter:focus-within{border-color:var(--talion-paint-accent-line, #c8ff3d80);box-shadow:0 0 0 3px var(--talion-paint-shadow, #c8ff3d12)}
.control-topbar-actions>button,.control-topbar-actions>a{width:42px;height:42px}
.control-command-menu button{min-height:44px}
.control-page-actions button,.control-button{min-height:42px}
.control-panel .table-wrap{max-width:100%;overflow:auto;overscroll-behavior-inline:contain;scrollbar-width:thin;scrollbar-color:var(--talion-paint-muted, #3a493f) var(--talion-paint-text, #111713)}
.control-data-table td{font-size:12px}
.control-data-table button{min-height:36px;font-size:10px;white-space:nowrap}
.control-actions{flex-wrap:wrap}
.control-status{font-size:10px}
.control-status[data-status="done"],.control-status[data-status="paid"],.control-status[data-status="active"],.control-status[data-status="resolved"],.control-status[data-status="available"],.control-status[data-status="complete"]{border-color:var(--talion-paint-accent-line, #8bd45045);background:var(--talion-paint-accent-tint, #8bd4500c);color:var(--talion-paint-accent-text, #cfeeb8)}
.control-status[data-status="in_progress"],.control-status[data-status="sent"],.control-status[data-status="planned"],.control-status[data-status="approved"],.control-status[data-status="assigned"],.control-status[data-status="received"]{border-color:var(--talion-paint-info-line, #84a7ff45);background:var(--talion-paint-info-tint, #84a7ff0c);color:var(--talion-paint-info, #c6d4ff)}
.control-status[data-status="waiting"],.control-status[data-status="high"],.control-status[data-status="draft"],.control-status[data-status="review"],.control-status[data-status="maintenance"],.control-status[data-status="paused"]{border-color:var(--talion-paint-warning-line, #ffc66d45);background:var(--talion-paint-warning-tint, #ffc66d0b);color:var(--talion-paint-warning, #f3d8a2)}
.control-status[data-status="urgent"],.control-status[data-status="late"],.control-status[data-status="cancelled"],.control-status[data-status="suspended"],.control-status[data-status="unavailable"]{border-color:var(--talion-paint-danger-line, #e56b6b55);background:var(--talion-paint-danger-tint, #e56b6b0d);color:var(--talion-paint-danger, #ffb1b1)}
.control-status[data-status="planned"]:before,.control-status[data-status="approved"]:before,.control-status[data-status="assigned"]:before,.control-status[data-status="received"]:before{background:var(--control-info)}
.control-status[data-status="draft"]:before,.control-status[data-status="review"]:before,.control-status[data-status="maintenance"]:before,.control-status[data-status="paused"]:before{background:var(--control-warning)}
.control-status[data-status="cancelled"]:before,.control-status[data-status="suspended"]:before,.control-status[data-status="unavailable"]:before{background:var(--control-danger)}
.control-status[data-status="available"]:before,.control-status[data-status="complete"]:before{background:var(--control-success)}
.content>.control-note{margin:0 0 14px}
.control-loading{align-content:center;gap:11px}
.control-empty button,.control-card-actions button,.control-report-card button{min-height:42px}
.control-toast{bottom:max(22px,env(safe-area-inset-bottom));margin:0}
.control-toast.error{border-color:var(--talion-paint-danger-line, #e56b6b66);background:var(--talion-paint-surface, #291719);color:var(--talion-paint-danger, #ffc0c0)}
.control-toast.warning{border-color:var(--talion-paint-warning-line, #ffc66d66);background:var(--talion-paint-raised, #271f12);color:var(--talion-paint-warning, #ffe0a6)}
.control-modal{max-height:min(90vh,90dvh);overscroll-behavior:contain}
.control-modal>header{position:sticky;top:0;z-index:2;background:var(--talion-paint-surface, #111713f5);backdrop-filter:blur(12px)}
.control-modal>header button{width:42px;height:42px;flex:0 0 auto}
.control-modal label{font-size:11px}
.control-modal footer{position:sticky;bottom:0;padding-bottom:max(8px,env(safe-area-inset-bottom));background:var(--talion-paint-surface, #111713)}
body.control-compact .control-data-table th{padding-block:8px}
body.control-compact .control-data-table td{padding-block:8px}
body.control-compact .control-list>button,body.control-compact .control-list>article{min-height:46px;padding-block:8px}
body.control-compact .control-kpi{min-height:98px;padding:13px}
body.control-compact .control-kpi>span{margin-top:10px}

/* Real Dispatch period, location and alert views. */
#talion-dispatch-workspace>.dw-content{width:100%;min-width:0}
.dw-period-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;min-width:0}
.dw-period-day{min-width:0;border:1px solid var(--control-line-soft);border-radius:var(--control-radius);background:linear-gradient(160deg,var(--talion-paint-surface, #111713),var(--talion-paint-surface, #0d120f));overflow:hidden}
.dw-period-day>header{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-bottom:1px solid var(--control-line-soft);background:var(--talion-paint-surface, #131a16)}
.dw-period-day>header span{font-size:11px;font-weight:850;text-transform:capitalize}
.dw-period-day>header b{padding:4px 7px;border-radius:99px;background:var(--talion-paint-accent-tint, #c8ff3d10);color:var(--control-acid);font-size:9px;white-space:nowrap}
.dw-period-jobs{display:grid}
.dw-period-jobs .dw-period-job{width:100%;min-height:58px;display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:9px;padding:9px 11px;border:0;border-left:3px solid var(--talion-paint-line, #6f7a73);border-bottom:1px solid var(--control-line-soft);border-radius:0;background:transparent;color:var(--control-text);text-align:left;cursor:pointer}
.dw-period-job:last-child{border-bottom:0}
.dw-period-job:hover{background:var(--talion-paint-raised, #18201b)}
.dw-period-job time{color:var(--control-acid);font-size:10px;font-weight:850;font-variant-numeric:tabular-nums}
.dw-period-job>span{min-width:0}
.dw-period-job strong,.dw-period-job small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dw-period-job strong{font-size:11px}
.dw-period-job small{margin-top:4px;color:var(--control-muted);font-size:9px}
.dw-period-job em{padding:4px 6px;border:1px solid var(--control-line);border-radius:99px;color:var(--talion-paint-text, #bdc6c0);font-size:8px;font-style:normal;white-space:nowrap}
.dw-period-job.status-planned{border-left-color:var(--control-info)}
.dw-period-job.status-in_progress{border-left-color:var(--control-acid);background:var(--talion-paint-accent-tint, #c8ff3d07)}
.dw-period-job.status-done{border-left-color:var(--control-success);opacity:.72}
.dw-period-job.status-cancelled{border-left-color:var(--control-danger);opacity:.62}
.dw-period-job.status-done strong,.dw-period-job.status-cancelled strong{text-decoration:line-through}

.dw-inline-empty{grid-column:1/-1;min-height:118px;display:grid;place-items:center;align-content:center;gap:6px;padding:20px;color:var(--control-muted);text-align:center}
.dw-inline-empty i{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;background:var(--talion-paint-accent-tint, #c8ff3d0d);color:var(--control-acid);font-size:17px;font-style:normal}
.dw-inline-empty strong{color:var(--control-text);font-size:12px}
.dw-inline-empty span{max-width:420px;font-size:10px;line-height:1.5}

.dw-location-list,.dw-alert-list{display:grid}
.dw-location-list>button{width:100%;min-height:60px;display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;border:0;border-bottom:1px solid var(--control-line-soft);border-radius:0;background:transparent;color:var(--control-text);text-align:left;cursor:pointer}
.dw-location-list>button:last-child{border-bottom:0}
.dw-location-list>button:hover{background:var(--talion-paint-raised, #17201b)}
.dw-location-list>button>i{width:32px;height:32px;display:grid;place-items:center;border-radius:9px;background:var(--talion-paint-info-tint, #84a7ff12);color:var(--control-info);font-style:normal}
.dw-location-list>button>span{min-width:0}
.dw-location-list strong,.dw-location-list small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dw-location-list strong{font-size:11px}
.dw-location-list small{margin-top:4px;color:var(--control-muted);font-size:9px}
.dw-location-list>button>b{color:var(--control-info);font-size:9px;white-space:nowrap}

.dw-alert-list .dw-alert-item{width:100%;min-height:56px;display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:9px;padding:9px 11px;border:0;border-bottom:1px solid var(--control-line-soft);border-radius:0;background:transparent;color:var(--control-text);text-align:left;cursor:pointer}
.dw-alert-item:last-child{border-bottom:0}
.dw-alert-item:hover{background:var(--talion-paint-raised, #18201b)}
.dw-alert-item>i{width:30px;height:30px;display:grid;place-items:center;border-radius:8px;background:var(--talion-paint-info-tint, #84a7ff13);color:var(--control-info);font-style:normal;font-weight:900}
.dw-alert-item>span{min-width:0}
.dw-alert-item strong,.dw-alert-item small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dw-alert-item strong{font-size:11px}
.dw-alert-item small{margin-top:3px;color:var(--control-muted);font-size:9px}
.dw-alert-item>b{color:var(--talion-paint-muted, #738079);font-size:14px}
.dw-alert-item.danger>i{background:var(--talion-paint-danger-tint, #e56b6b16);color:var(--control-danger)}
.dw-alert-item.danger strong{color:var(--talion-paint-danger, #ffaaaa)}
.dw-alert-item.warning>i{background:var(--talion-paint-warning-tint, #ffc66d14);color:var(--control-warning)}
.dw-alert-item.info>i{background:var(--talion-paint-info-tint, #84a7ff13);color:var(--control-info)}
.dw-alerts header em{color:var(--control-danger);font-style:normal}
.dw-unassigned>button[data-job]{min-height:50px;padding:9px 11px;color:var(--talion-paint-text, #c6cec9);font-size:11px!important}
.dw-unassigned>button[data-job]:hover{background:var(--talion-paint-raised, #18201b)}

.dw-operation-form{display:grid;gap:12px}
.dw-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.dw-form-grid label{display:grid;gap:6px;min-width:0;color:var(--talion-paint-text, #b9c2bc);font-size:11px}
.dw-form-grid label.full{grid-column:1/-1}
.dw-form-grid input,.dw-form-grid select,.dw-form-grid textarea{width:100%;min-height:42px;padding:10px 11px;border:1px solid var(--control-line);border-radius:9px;background:var(--talion-paint-surface, #151d18);color:var(--control-text)}
.dw-form-grid textarea{min-height:92px;resize:vertical}
.dw-operation-form>footer{position:sticky;bottom:-20px;z-index:2;display:flex;justify-content:flex-end;gap:8px;margin:0 -20px -20px;padding:12px 20px max(12px,env(safe-area-inset-bottom));border-top:1px solid var(--control-line);background:var(--talion-paint-surface, #0b1512f2);backdrop-filter:blur(12px)}
.dw-operation-form>footer button{min-height:42px;padding:9px 13px}
.dw-secondary{border:1px solid var(--control-line)!important;background:var(--talion-paint-raised, #17201b)!important;color:var(--control-text)!important}

@media(max-width:960px){.dw-period-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

@media(max-width:720px){body.crm-prospect-workspace .app,body.talion-dispatch-page .app{display:block!important}
.topbar{gap:8px}
.mobile-menu{width:42px;height:42px;padding:0;place-items:center}
.sidebar{padding-top:max(18px,env(safe-area-inset-top))!important;padding-bottom:max(14px,env(safe-area-inset-bottom))!important}
.control-page-actions button{flex:1;min-width:min(180px,100%)}
.control-panel .table-wrap{margin-inline:-1px}
.control-data-table{min-width:700px}
.control-toast{left:12px;right:12px;max-width:none}
.control-modal-layer{padding:8px}
.control-modal{max-height:calc(100dvh - 16px);border-radius:14px}
.control-modal form{padding:14px}
.control-modal footer{flex-wrap:wrap}
.control-modal footer button{flex:1;min-width:140px}
.dw-period-grid{grid-template-columns:1fr}
.dw-period-job{grid-template-columns:44px minmax(0,1fr)}
.dw-period-job em{grid-column:2;justify-self:start}
.dw-location-list>button{grid-template-columns:32px minmax(0,1fr)}
.dw-location-list>button>b{grid-column:2;justify-self:start}
.dw-form-grid{grid-template-columns:1fr}
.dw-form-grid label.full{grid-column:1}
.dw-operation-form>footer{bottom:-20px;flex-wrap:wrap}
.dw-operation-form>footer button{flex:1;min-width:130px}
}

@media(max-width:460px){.control-kpi-grid{grid-template-columns:1fr}
.control-page-actions button{width:100%;flex-basis:100%}
.control-toolbar select,.control-toolbar .control-button{width:100%;flex:none}
}
