/* Arcadia Ops — surfaces, navigation et confort multi-écran */
:root{--ink:#14283c;--muted:#61778a;--line:#dbe5ec;--surface:#fff;--soft:#f0f5f8;--blue:#1769e8;--navy:#0a1d2d;--shadow:0 12px 32px -27px #16364d80;scroll-behavior:smooth}
body{background:#f4f7f9;color:var(--ink);font-family:'DM Sans',system-ui,sans-serif}
.app-shell,.app-shell:not(.collapsed){min-height:100dvh;grid-template-columns:244px minmax(0,1fr);transition:grid-template-columns .24s cubic-bezier(.2,.8,.2,1)}
.app-shell.role-agent{--role-accent:#137b74;--role-soft:#e8f5f2}
.app-shell.role-manager{--role-accent:#1769e8;--role-soft:#eaf2ff}
.app-shell.role-adv{--role-accent:#1769e8;--role-soft:#eaf2ff}
.app-shell.role-controller{--role-accent:#0d8b72;--role-soft:#e6f7f2}
.app-shell.role-billing{--role-accent:#7555c7;--role-soft:#f1edff}
.app-shell.role-client{--role-accent:#ca6b1b;--role-soft:#fff2e6}
.app-shell.role-admin{--role-accent:#6755c7;--role-soft:#f0edff}
.app-shell.role-super-admin{--role-accent:#a16b21;--role-soft:#fbf2e4}
.app-shell.role-it{--role-accent:#087e91;--role-soft:#e6f5f7}
.sidebar{height:100dvh;min-height:0;padding:20px 13px 14px;gap:16px;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#39576b transparent}
.sidebar-brand{position:sticky;top:-20px;z-index:2;min-height:48px;margin:-20px -13px 0;padding:14px 13px;background:var(--navy);border-bottom:1px solid #ffffff12}
.sidebar-brand .brand{min-width:0;gap:9px;padding:0 5px;font-size:.96rem;letter-spacing:-.03em;white-space:nowrap}
.sidebar-brand .brand span{overflow:visible;text-overflow:clip}
.sidebar-brand .brandmark{width:32px;height:32px}
.collapse-btn{flex:none;width:38px;height:38px;border-radius:12px;background:#ffffff0b;border-color:#ffffff21;color:#edf5fa}
.collapse-btn svg{width:19px;height:19px;transition:transform .24s cubic-bezier(.2,.8,.2,1)}
.app-shell.collapsed{grid-template-columns:78px minmax(0,1fr)}
.app-shell.collapsed .sidebar-brand{justify-content:space-between;padding-inline:7px}
.app-shell.collapsed .sidebar-brand .brand{flex:0 0 auto;padding:0;justify-content:center}
.app-shell.collapsed .sidebar-brand .brandmark{width:25px;height:25px}
.app-shell.collapsed .sidebar-brand .brand span,.app-shell.collapsed .sidebar-info h2{display:none}
.app-shell.collapsed .collapse-btn{position:static;flex:0 0 27px;width:27px;height:30px;padding:4px}
.app-shell.collapsed .collapse-btn svg{transform:rotate(180deg)}
.side-nav,.sidebar-info nav{display:grid;gap:4px}
.nav-btn{min-height:44px;padding:10px 12px;border-radius:11px;gap:11px;transition:background .16s ease,color .16s ease,transform .16s ease}
.nav-btn svg{width:19px;height:19px;display:block}
.nav-icon{width:22px;height:22px;display:grid;place-items:center;flex:none}
.nav-btn.active{background:var(--role-soft,#eaf2ff);color:var(--role-accent,var(--blue));box-shadow:inset 3px 0 var(--role-accent,var(--blue))}
.nav-btn:hover:not(.active){background:#ffffff12;color:#fff}
.sidebar-info{padding-top:15px;border-top:1px solid #ffffff1c}
.sidebar-info h2{margin:0 9px 8px;color:#8da6b8;font-family:inherit;font-size:.68rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}
.sidebar-info .nav-btn{min-height:38px;padding-block:8px;font-size:.88rem;font-weight:600}
.app-shell.collapsed .sidebar-info .nav-btn{justify-content:center;padding-inline:8px}
.app-shell.collapsed .sidebar-info .nav-btn span:last-child{display:none}
.sidebar-foot{gap:6px;padding-top:12px;border-top:1px solid #ffffff1c}
.sidebar-foot button{min-height:42px;border-color:#ffffff22;border-radius:11px;padding:9px 12px;transition:background .16s ease,border-color .16s ease}
.sidebar-foot button:hover{background:#ffffff12;border-color:#ffffff50}
.main{min-height:100dvh;background:#f4f7f9}
.topbar{z-index:20;min-height:72px;padding:12px clamp(16px,3.5vw,48px);background:#ffffffed;border-bottom:1px solid #dce6ed;box-shadow:0 5px 20px -20px #102e44;backdrop-filter:blur(16px)}
.top-identity strong{font-family:'Barlow','DM Sans',sans-serif;font-size:1.02rem;font-weight:750;letter-spacing:-.025em}
.top-actions .icon-btn{position:relative;border-radius:12px;transition:transform .16s ease,background .16s ease}
.top-actions .icon-btn:hover{transform:translateY(-1px);background:var(--role-soft,#edf4fa)}
.content{width:100%;max-width:1380px;margin-inline:auto;padding:clamp(22px,2.5vw,34px) clamp(18px,3vw,42px) 64px}
.page-head{align-items:center;margin-bottom:25px}
.page-head h1{font-size:clamp(1.65rem,2.3vw,2.25rem);line-height:1.1;letter-spacing:-.045em;text-wrap:balance}
.page-head p{max-width:65ch;line-height:1.48}
.panel,.metric{border-color:#dce6ed;border-radius:16px;box-shadow:none}
.panel{padding:clamp(16px,2vw,23px)}
.panel:hover{border-color:#cfdae3}
.metric{position:relative;overflow:hidden;padding:18px;background:#fff}
.metric b{font-variant-numeric:tabular-nums;color:var(--role-accent,var(--blue));font-size:clamp(1.65rem,2.2vw,2.05rem)}
.row{border-color:#e0e8ee;border-radius:13px;transition:border-color .16s ease,background .16s ease,transform .16s ease}
.row:hover{border-color:#c7d6e0}
.btn{min-height:43px;border-radius:10px;padding-inline:16px;background:var(--role-accent,var(--blue));transition:transform .16s ease,background .16s ease,box-shadow .16s ease}
.btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 7px 15px -11px var(--role-accent,var(--blue))}
.btn:active:not(:disabled){transform:translateY(0) scale(.985)}
.btn.secondary{background:var(--role-soft,#eaf2ff);color:var(--role-accent,var(--blue))}
.btn.ghost{box-shadow:none}
.field,select,textarea,.field-label input[type=file]{min-width:0;max-width:100%}
.planning-form .planning-date{grid-column:1/-1;min-width:0}
.time-picker{min-width:0;margin:0;padding:0;border:0}
.time-picker legend{margin-bottom:7px;padding:0;color:var(--muted);font-size:.88rem;font-weight:700}
.time-picker-controls{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:end;gap:8px}
.time-picker-controls label{display:grid;min-width:0;gap:6px;color:var(--muted);font-size:.76rem;font-weight:700}
.time-picker-controls label select{width:100%;min-width:0;min-height:48px;padding:10px 12px;font-size:1rem;font-variant-numeric:tabular-nums;color:var(--text)}
.time-picker-controls>span{align-self:end;padding-bottom:12px;font-size:1.15rem;font-weight:800;color:var(--muted)}
.profile-legal{margin-top:16px}
.profile-legal h2{margin-bottom:14px}
.profile-links{display:flex;flex-wrap:wrap;gap:10px}
.profile-links .btn{min-width:0;white-space:normal;text-align:center}
.legal-copy{display:grid;gap:10px;line-height:1.65}
.legal-copy h2{margin-top:14px;color:var(--ink);font-size:1.05rem}
.legal-copy h2:first-child{margin-top:0}
.legal-copy p{max-width:78ch;color:var(--muted);overflow-wrap:anywhere}
.privacy-draft{margin:0 0 15px;line-height:1.5}
.info-hero{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:18px;padding:clamp(20px,4vw,34px);background:linear-gradient(125deg,#fff 45%,var(--role-soft,#eaf2ff))}
.info-symbol{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:var(--role-soft,#eaf2ff);color:var(--role-accent,var(--blue))}
.info-symbol svg{width:24px;height:24px}
.info-hero h2,.about-hero h2{margin:0 0 9px;font-size:clamp(1.15rem,2vw,1.55rem)}
.info-hero p,.about-hero p,.about-features p{max-width:66ch;color:var(--muted);line-height:1.6}
.info-hero .btn{margin-top:18px}
.info-footnote{margin-top:14px;line-height:1.5}
.about-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,.6fr);align-items:center;gap:18px;overflow:hidden;background:linear-gradient(120deg,#fff 50%,#eaf2ff)}
.about-copy{position:relative;z-index:1}
.about-copy .eyebrow{display:inline-block;margin-bottom:11px;color:var(--role-accent,var(--blue));font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.about-hero h2{max-width:19ch;font-size:clamp(1.55rem,3vw,2.35rem);line-height:1.12;letter-spacing:-.045em}
.about-hero img{display:block;width:100%;max-height:220px;object-fit:contain}
.about-features{margin-top:15px}
.about-features .panel{display:grid;align-content:start;gap:12px}
.about-features h2{margin:0;font-size:1.05rem}
.faq-list{padding-inline:clamp(16px,3vw,28px)}
.faq-list details{padding:17px 0}
.faq-list summary{min-height:30px;display:flex;align-items:center}
.app-shell.drawer-open .sidebar{z-index:52}
body.dark .main{background:#091b29}
body.dark .content{color:var(--text)}
body.dark .panel,body.dark .metric{background:linear-gradient(145deg,#10293b,#0e2536);border-color:#294458}
body.dark .metric b{color:#91c1ff}
body.dark .legal-copy h2{color:#f1f6fb}
body.dark .info-hero,body.dark .about-hero{background:linear-gradient(125deg,#10293b,#102e43)}
body.dark .sidebar-info{border-color:#ffffff1c}
body.dark .sidebar-info h2{color:#99afbf}
@media(min-width:761px) and (max-width:1100px){.app-shell:not(.collapsed){grid-template-columns:232px minmax(0,1fr)}.content{padding-inline:clamp(18px,2.5vw,30px)}.grid.cols4{grid-template-columns:repeat(2,minmax(0,1fr))}.split{grid-template-columns:1fr}.app-shell:not(.collapsed) .sidebar-info .nav-btn{padding-inline:11px}}
@media(max-width:760px){
 html,body,#app{min-height:100%;width:100%;overflow-x:clip}
 .app-shell,.app-shell.collapsed{display:block;min-height:100dvh}
 .sidebar{position:fixed;inset:0 auto 0 0;width:min(86vw,330px);height:100dvh;min-height:0;padding:18px 13px max(16px,env(safe-area-inset-bottom));gap:15px;transform:translateX(-105%);transition:transform .24s cubic-bezier(.2,.8,.2,1);z-index:52;overflow-y:auto;overscroll-behavior:contain;box-shadow:20px 0 50px -35px #071a2a}
 .app-shell.drawer-open .sidebar{transform:translateX(0)}
 .sidebar-brand{position:sticky;top:-18px;min-height:52px;margin:-18px -13px 0;padding:10px 13px}
 .app-shell.collapsed .sidebar-brand{justify-content:space-between}
 .app-shell.collapsed .sidebar-brand .brand span,.app-shell.collapsed .sidebar-info h2,.app-shell.collapsed .nav-btn span:last-child,.app-shell.collapsed .sidebar-foot button span{display:inline}
 .app-shell.collapsed .sidebar-brand .brand{justify-content:flex-start}
 .app-shell.collapsed .collapse-btn{position:static;width:38px;height:38px;padding:8px}
 .app-shell.collapsed .collapse-btn svg{transform:none}
 .app-shell.collapsed .nav-btn,.app-shell.collapsed .sidebar-info .nav-btn,.app-shell.collapsed .sidebar-foot button{justify-content:flex-start;padding-inline:12px}
 .app-shell.collapsed .sidebar-info .nav-btn span:last-child{display:inline}
 .sidebar-info{padding-top:12px}
 .sidebar .nav-btn{min-height:44px}
 .collapse-btn{display:none}
 .main{min-height:100dvh;width:100%;padding-bottom:calc(69px + env(safe-area-inset-bottom))}
 .topbar{min-height:64px;padding:9px 12px}
 .top-identity{gap:8px;min-width:0}
 .top-identity>div{min-width:0}
 .top-identity strong{display:block;max-width:min(52vw,250px);font-size:.94rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 .top-identity small{max-width:min(52vw,250px);font-size:.76rem}
 .top-actions{gap:5px}
 .top-actions .avatar{width:34px;height:34px;flex:none}
 .content{width:100%;padding:20px 14px calc(30px + env(safe-area-inset-bottom))}
 .page-head{align-items:flex-start;gap:12px;margin-bottom:17px}
 .page-head h1{font-size:clamp(1.48rem,6vw,1.9rem)}
 .page-head p{font-size:.9rem}
 .page-actions{justify-content:stretch}
 .page-actions>.btn{flex:1 1 145px}
 .grid.cols2,.grid.cols3,.grid.cols4{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .grid.cols2.profile-grid,.split,.form-grid{grid-template-columns:1fr}
 .planning-form .planning-date{grid-column:auto}
 .metric{padding:13px 12px;border-radius:14px}
 .metric small{font-size:.76rem;line-height:1.3}
 .metric b{font-size:1.55rem;margin:5px 0}
 .metric em{font-size:.7rem;line-height:1.3}
 .panel{padding:16px;border-radius:16px}
 .panel-head{align-items:flex-start;gap:10px;margin-bottom:13px}
 .panel-head h2{min-width:0;overflow-wrap:anywhere;font-size:1rem}
 .row{gap:9px;padding:11px;border-radius:12px}
 .row .avatar{flex:none;width:34px;height:34px}
 .row strong{white-space:normal;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;line-height:1.28}
 .row small{font-size:.78rem;overflow-wrap:anywhere}
 .row .pill{font-size:.66rem;padding:3px 7px}
 .tools{gap:8px;margin-bottom:13px}
 .tools>*{flex:1 1 145px;min-width:0}
 .tools .field{max-width:none;min-width:0}
 .tools select,.tools input{width:100%;min-width:0}
 .btn{min-height:44px;max-width:100%;white-space:normal;text-align:center;line-height:1.25;padding-inline:12px}
 .btn.sm{min-height:40px;white-space:normal}
 .form-actions{justify-content:stretch;gap:8px;margin-top:15px}
 .form-actions>.btn{flex:1 1 145px}
 .date-strip{gap:6px;padding:4px 1px 11px}
 .date-btn{min-width:47px;min-height:52px}
 .mobile-nav{left:0;right:0;bottom:0;display:flex;justify-content:space-around;gap:2px;padding:7px 5px max(7px,env(safe-area-inset-bottom));background:#ffffffed;border-top:1px solid #dce6ed;box-shadow:0 -8px 24px -22px #12334d;backdrop-filter:blur(18px)}
 .mobile-nav .nav-btn{flex:1 1 0;min-width:0;min-height:48px;gap:2px;padding:5px 2px;color:#536c80;font-size:.65rem;line-height:1.15}
 .mobile-nav .nav-btn span:last-child{display:block;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 .mobile-nav .nav-btn.active{background:var(--role-soft,#eaf2ff);color:var(--role-accent,var(--blue))}
 .mobile-nav .nav-icon{width:22px;height:22px}
 .mobile-nav .nav-icon svg{width:20px;height:20px}
 .drawer-scrim{z-index:51}
 .info-hero{grid-template-columns:1fr;gap:12px}
 .about-hero{grid-template-columns:1fr;gap:5px}
 .about-hero img{max-height:145px;object-position:center}
 .about-features{grid-template-columns:repeat(2,minmax(0,1fr))}
 .legal-copy{gap:8px}
 .legal-copy h2{font-size:1rem}
 .profile-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
 .profile-links .btn{width:100%}
 .gps-history-row .actions{padding-left:0}
 .table-wrap{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
 .table{min-width:600px}
}
@media(max-width:560px){.grid.cols2,.grid.cols3,.grid.cols4{grid-template-columns:1fr}.grid.cols3:has(>.metric){grid-template-columns:repeat(2,minmax(0,1fr))}.grid.cols3:has(>.metric)>.metric:last-child:nth-child(odd){grid-column:1/-1}.profile-links{grid-template-columns:1fr}.dialog{padding:17px 15px calc(18px + env(safe-area-inset-bottom))}.time-picker-controls{gap:6px}.time-picker-controls label select{font-size:16px}.content{padding-inline:14px}}
@media(max-width:380px){.content{padding-inline:11px}.topbar{padding-inline:9px}.top-identity strong{max-width:46vw;font-size:.88rem}.top-identity small{max-width:46vw;font-size:.7rem}.topbar .icon-btn{width:34px;height:34px}.top-actions{gap:3px}.metric{padding:11px 9px}.row{padding:10px}.mobile-nav .nav-btn{font-size:.6rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.sidebar,.nav-btn,.btn,.icon-btn,.row,.app-shell{transition:none!important}}
.drawer-close-btn{display:none}
.row{color:var(--text)}
body.dark .row{color:var(--text)}
body.dark .row strong{color:#eef7fc}
body.dark .row small{color:#a9c0cf}
.role-manager .account-directory{display:none}
@media(max-width:760px){
 .drawer-close-btn{display:grid;place-items:center;flex:none;width:40px;height:40px;padding:8px;color:#e8f3fb;background:#ffffff17;border:1px solid #ffffff30;border-radius:12px}
 .drawer-close-btn svg{width:20px;height:20px}
 body.agent-role:not(.dark) .sidebar-brand{background:#fff;border-bottom:1px solid #e1ebf2}
 body.agent-role:not(.dark) .drawer-close-btn{color:#173b5c;background:#f1f6fa;border-color:#dae6ee}
 .manager-overview.grid.cols4{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .manager-overview .metric{min-height:108px;padding:11px}
 .manager-overview .metric b{font-size:1.5rem}
 .manager-overview .metric em{font-size:.7rem}
 .tools>input[data-search]{flex:1 1 100%;width:100%;max-width:none;min-width:0;font-size:1rem}
 .registration-row{display:grid;grid-template-columns:40px minmax(0,1fr);gap:8px}
 .registration-row .row-body{grid-column:2}
 .registration-row .btn{grid-column:2;min-width:0}
}
:root{scroll-behavior:auto}
@media(max-width:760px){
 .topbar{gap:8px}
 .top-identity{flex:1 1 0}
 .top-identity>div{flex:1 1 0}
 .top-actions{flex:none}
 .page-head{display:flex;flex-wrap:wrap;align-items:start}
 .page-head>div{flex:1 1 100%}
 .page-head>.btn,.page-head>.page-actions{max-width:100%;min-width:0}
 .panel-head{flex-wrap:wrap}
 .panel-head>.btn{max-width:100%;min-width:0}
 .row:not(.registration-row){flex-wrap:wrap}
 .row:not(.registration-row)>.row-body{flex:1 1 calc(100% - 52px)}
 .row>.btn{min-width:0;overflow-wrap:anywhere}
 .tools>select,.tools>.btn{flex:1 1 min(100%,145px)}
 .content :is(h1,h2,h3,p,small,button,label){overflow-wrap:anywhere}
 .mobile-nav{padding-inline:max(5px,env(safe-area-inset-left)) max(5px,env(safe-area-inset-right))}
 .mobile-nav .nav-btn{min-height:52px;line-height:1.2}
 .toast{bottom:calc(78px + env(safe-area-inset-bottom))}
}
@media(max-width:420px){
 .top-actions .avatar{display:none}
 .top-identity strong,.top-identity small{max-width:calc(100vw - 148px)}
 .manager-overview.grid.cols4{grid-template-columns:repeat(2,minmax(0,1fr))}
 .manager-overview .metric{min-height:104px;padding:10px}
 .manager-overview .metric small{font-size:.72rem}
 .manager-overview .metric b{font-size:1.4rem}
 .manager-overview .metric em{font-size:.66rem}
 .mobile-nav .nav-btn{font-size:clamp(.57rem,2.3vw,.68rem)}
}
:root{--ease-out:cubic-bezier(.23,1,.32,1);--ease-drawer:cubic-bezier(.32,.72,0,1)}
html:has(body.page-scroll-locked){overflow:hidden}
body.page-scroll-locked{position:fixed;inset-inline:0;top:var(--scroll-lock-top,0);width:100%;overflow:hidden}
.sidebar{overflow-y:auto}
.sidebar-foot button[data-action="logout"]{color:#ffc0c6;border-color:#87404b;background:#4b2330}
body.agent-role:not(.dark) .sidebar-foot button[data-action="logout"]{color:#a22539;border-color:#e9b7bf;background:#fff1f2}
body.dark .sidebar-foot button[data-action="logout"]{color:#ffc0c6;border-color:#87404b;background:#4b2330}
.dialog-backdrop{z-index:80;overflow-y:auto;overscroll-behavior:contain;opacity:1;transition:opacity 220ms var(--ease-out)}
.toast{z-index:100}
.dialog{transform:translateY(0) scale(1);opacity:1;transition:transform 220ms var(--ease-out),opacity 220ms var(--ease-out)}
@starting-style{
 .dialog-backdrop{opacity:0}
 .dialog{transform:translateY(10px) scale(.96);opacity:0}
}
.btn:active:not(:disabled),.sidebar-foot button:active{transform:scale(.97);transition:transform 140ms var(--ease-out)}
.gps-position-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:7px;min-width:0}
.gps-position-actions .btn{min-width:0;white-space:normal;line-height:1.25}
.notification-gps-actions{display:flex;flex-wrap:wrap;gap:8px;padding:0 18px 14px}
.notification-gps-actions .notification-copy{margin:0}
.notification-gps-actions .btn{min-width:0;white-space:normal;line-height:1.25}
@media(hover:hover) and (pointer:fine){
 .sidebar-foot button[data-action="logout"]:hover{background:#65303c;border-color:#bd5e6b;color:#ffe0e3}
 body.agent-role:not(.dark) .sidebar-foot button[data-action="logout"]:hover{background:#ffe0e4;border-color:#d97b89;color:#8f1d31}
}
@media(max-width:760px){
 .sidebar{transition:transform 240ms var(--ease-drawer)}
 .drawer-scrim{display:block;opacity:0;visibility:hidden;pointer-events:none;transition:opacity 240ms var(--ease-out),visibility 0s linear 240ms}
 .app-shell.drawer-open~.drawer-scrim{display:block;opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}
 .gps-position-actions{justify-content:flex-start;width:100%}
 .gps-position-actions .btn{flex:1 1 132px}
 .notification-gps-actions{padding-inline:14px}
 .notification-gps-actions .btn{flex:1 1 138px}
}
@media(prefers-reduced-motion:reduce){
 .dialog-backdrop,.dialog,.drawer-scrim,.sidebar{transition:none!important}
 .dialog{transform:none!important}
}
.date-strip{position:relative;scrollbar-width:none;padding-bottom:5px}
.date-strip::-webkit-scrollbar{display:none}
.export-options{margin-top:16px}
body.dark .top-actions .icon-btn:hover{background:#1d4058;color:#eef7ff}
.dialog-head .icon-btn{min-width:44px;min-height:44px}
@media(max-width:760px){
 .mobile-menu-btn,.top-actions .icon-btn{min-width:44px;min-height:44px}
 .planning-site-row{display:grid!important;grid-template-columns:36px minmax(0,1fr) 18px;align-items:center;gap:10px;min-height:76px}
 .planning-site-row>.avatar{grid-column:1;grid-row:1}
 .planning-site-row>.row-body{grid-column:2;grid-row:1;min-width:0}
 .planning-site-row>.planning-site-chevron{grid-column:3;grid-row:1;justify-self:end}
 .payroll-table-wrap{overflow:visible;margin:0}
 .payroll-table{display:block;width:100%;min-width:0}
 .payroll-table thead{display:none}
 .payroll-table tbody{display:grid;gap:12px}
 .payroll-table tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
 .payroll-table td{display:grid;align-content:start;gap:4px;min-width:0!important;padding:9px 8px;border:0;white-space:normal!important;overflow-wrap:anywhere;font-size:.9rem}
 .payroll-table td::before{display:block;color:var(--muted);font-size:.7rem;font-weight:800;letter-spacing:.03em;text-transform:uppercase}
 .payroll-table td:first-child{grid-column:1/-1;border-bottom:1px solid var(--line);padding-bottom:12px}
 .payroll-table td:first-child::before{content:'Agent'}
 .payroll-table td:nth-child(2)::before{content:'Interventions'}
 .payroll-table td:nth-child(3)::before{content:'Sites'}
 .payroll-table td:nth-child(4)::before{content:'Heures validées'}
 .payroll-table td:nth-child(5)::before{content:'Taux horaire'}
 .payroll-table td:nth-child(6)::before{content:'Estimation'}
 .payroll-table td:nth-child(7){grid-column:1/-1;border-top:1px solid var(--line);padding-top:12px}
 .payroll-table td:nth-child(7)::before{display:none}
 .payroll-table td:nth-child(7)>.btn{width:100%}
 body.dark .payroll-table tr{background:#10293b}
}
.recurrence-toggle{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--surface);cursor:pointer}.recurrence-toggle input{inline-size:20px;block-size:20px;accent-color:var(--accent)}.recurrence-toggle span{display:grid;gap:3px}.recurrence-toggle small{color:var(--muted)}.recurrence-fields{margin:0;padding:16px;border:1px solid var(--line);border-radius:14px}.recurrence-fields[hidden]{display:none}.recurrence-fields legend{padding:0 7px;font-weight:750}.weekday-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;margin-bottom:14px}.weekday-grid label{cursor:pointer}.weekday-grid input{position:absolute;opacity:0;pointer-events:none}.weekday-grid span{display:grid;place-items:center;min-height:44px;border:1px solid var(--line);border-radius:12px;background:var(--surface);font-weight:700;transition:background .18s ease,border-color .18s ease,color .18s ease}.weekday-grid input:checked+span{border-color:var(--accent);background:var(--role-soft);color:var(--accent)}.weekday-grid input:focus-visible+span{outline:3px solid color-mix(in srgb,var(--accent) 35%,transparent);outline-offset:2px}.site-card>p{overflow-wrap:anywhere}
.recurrence-help{margin:0 0 12px;color:var(--muted);line-height:1.45}.recurrence-period{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-width:0}.recurrence-period>.field-label{min-width:0}.recurrence-period input{width:100%;font-size:1rem}
@media(max-width:560px){.weekday-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.recurrence-fields{padding:14px}}
@media(max-width:560px){.recurrence-period{grid-template-columns:minmax(0,1fr)}}
.support-ticket-list,.support-thread{display:grid;gap:12px;min-width:0}.support-ticket-row{width:100%;text-align:left;min-width:0}.support-ticket-row .row-body,.support-ticket-row small{min-width:0;overflow-wrap:anywhere}.support-message{padding:15px;border:1px solid var(--line);border-radius:14px;background:var(--surface);overflow-wrap:anywhere}.support-message p{margin:8px 0;white-space:pre-wrap}.support-message small{display:block;color:var(--muted);margin-top:3px}.support-media{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;margin-top:12px}.support-media img,.support-media video{display:block;width:100%;max-height:240px;object-fit:cover;border-radius:10px;background:#0a1d2d}@media(max-width:560px){.support-ticket-row{align-items:flex-start}.support-ticket-row .pill{font-size:.7rem}.support-media{grid-template-columns:repeat(2,minmax(0,1fr))}}
.support-ticket-list{gap:8px}.support-ticket-row{padding:16px 18px;gap:14px;align-items:flex-start}.support-ticket-row .row-body{display:grid;gap:5px}.support-ticket-row .row-body strong{white-space:normal;line-height:1.3;font-size:1rem;letter-spacing:-.015em}.support-ticket-row .row-body small{margin:0;white-space:normal;line-height:1.4}.support-ticket-row .row-body small:last-child{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.support-ticket-row .pill{flex:none;margin-top:3px}.support-ticket-row:hover{background:var(--soft);transform:translateY(-1px)}.support-thread{gap:14px}.support-thread .notice{line-height:1.55}.support-message{padding:17px 19px;border:0;background:var(--soft);box-shadow:inset 0 0 0 1px var(--line)}.support-message strong{color:var(--text)}.support-message p{line-height:1.58;color:var(--text)}.support-thread .form-actions{justify-content:flex-start}.support-thread .form-actions .btn{flex:0 1 auto}
body.dark .support-ticket-row:hover{background:#183a50}body.dark .support-message{background:#16374c;box-shadow:inset 0 0 0 1px #35546a}body.dark .support-message strong,body.dark .support-message p{color:#f1f7fb}
.content :is(button,a,input,select,textarea):focus-visible{outline:3px solid #2689ef;outline-offset:3px}body.dark .content :is(button,a,input,select,textarea):focus-visible{outline-color:#8bc2ff}body.dark ::selection{background:#38689a;color:#fff}*{scrollbar-width:thin;scrollbar-color:#96aebf transparent}body.dark *{scrollbar-color:#52748b transparent}
@media(max-width:760px){.support-ticket-row{display:grid;grid-template-columns:auto minmax(0,1fr);padding:14px;gap:8px 12px}.support-ticket-row .row-body{grid-column:2}.support-ticket-row .pill{grid-column:2;justify-self:start;margin:0}.support-thread .form-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr));gap:8px}.support-thread .form-actions .btn{width:100%}}
@media(max-width:420px){.support-ticket-row{padding:12px}.support-ticket-row .avatar{width:32px;height:32px}.support-ticket-row .row-body strong{font-size:.93rem}.support-ticket-row .row-body small{font-size:.76rem}.support-message{padding:14px}.support-thread .form-actions{grid-template-columns:1fr}}
.client-account-fields{display:contents}
.client-account-fields[hidden],[data-account-address][hidden]{display:none!important}

/* Nouvelle direction : console éditoriale, contrastée et dense sans empiler les cartes. */
:root{
 --navy:#10283a;
 --ink:#162e3e;
 --text:#162e3e;
 --muted:#526c79;
 --line:#d8e2e5;
 --surface:#fff;
 --soft:#edf3f3;
 --blue:#1267d8;
 --shadow:0 19px 44px -36px #24465370;
}
body:not(.dark){background:#f4f5f1;color:var(--ink)}
body:not(.dark) .main{background:#f4f5f1}
body:not(.dark) .sidebar{
 background:#fdfdfb;
 color:#395468;
 border-right:1px solid #dce5e5;
 box-shadow:10px 0 38px -37px #183a4c;
}
body:not(.dark) .sidebar-brand{
 background:#fdfdfb;
 border-color:#e1e9e8;
 min-height:70px;
 padding-top:19px;
 padding-bottom:17px;
}
body:not(.dark) .sidebar .brand{color:#102b40;font-family:'Barlow','DM Sans',sans-serif;font-size:1.12rem;letter-spacing:.035em}
body:not(.dark) .sidebar .brandmark{width:35px;height:35px}
body:not(.dark) .sidebar .nav-btn{font-weight:650;letter-spacing:-.012em}
body:not(.dark) .sidebar .nav-btn.active{
 background:#102b40;
 color:#fff;
 box-shadow:0 9px 17px -14px #102b40;
}
body:not(.dark) .sidebar .nav-btn:hover:not(.active){background:#e8f0f1;color:#102b40}
body:not(.dark) .sidebar-info{border-color:#e1e9e8}
body:not(.dark) .sidebar-info h2{color:#536c79}
body:not(.dark) .sidebar-foot{border-color:#e1e9e8}
body:not(.dark) .sidebar-foot button:not([data-action="logout"]){color:#24465a;border-color:#d8e4e5;background:#fff}
body:not(.dark) .collapse-btn{background:#eaf0f0;border-color:#d9e4e5;color:#24465a}
body:not(.dark) .drawer-close-btn{background:#eaf0f0;border-color:#d9e4e5;color:#24465a}
body:not(.dark) .topbar{
 min-height:76px;
 background:#fdfdfbf5;
 border-color:#e0e8e8;
 box-shadow:0 12px 30px -30px #17384b;
}
.top-identity strong{font-family:'Barlow','DM Sans',sans-serif;font-size:1.12rem;font-weight:700;letter-spacing:-.018em}
.top-identity small{font-size:.76rem;letter-spacing:.01em}
.content{max-width:1510px;padding-top:clamp(29px,3vw,47px)}
.page-head{align-items:end;margin-bottom:28px;gap:14px}
.page-head h1{
 font-family:'Barlow','DM Sans',sans-serif;
 font-size:clamp(2.15rem,3.25vw,3.15rem);
 font-weight:800;
 line-height:1;
 letter-spacing:-.028em;
}
.page-head p{margin-top:11px;font-size:.95rem;line-height:1.45;color:var(--muted)}
.section-title,.panel-head h2{font-family:'Barlow','DM Sans',sans-serif;font-size:1.25rem;line-height:1.17;letter-spacing:-.018em}
.panel{
 border:0;
 border-radius:15px;
 background:#fff;
 box-shadow:var(--shadow);
 padding:clamp(19px,2vw,28px);
}
.panel:hover{border-color:transparent}
.panel-head{margin-bottom:20px}
.panel-head h2{font-weight:700}
.content .row:not(.support-ticket-row){border-color:#e4ebeb;background:#fff;box-shadow:none}
.content .row:hover{background:#f7faf9;border-color:#cbd9db}
.row strong{font-weight:700;letter-spacing:-.015em}
.row small{line-height:1.45}
.btn{border-radius:10px;font-weight:700;letter-spacing:-.012em}
.btn:not(.secondary):not(.ghost):not(.danger){box-shadow:0 12px 22px -17px #1358af}
.btn.secondary{background:#e8f0f3;color:#174f79}
.btn.ghost{background:#fff}
.field,select,textarea{border-radius:10px;border-color:#cfdddf;box-shadow:0 2px 6px #23435708}
.field:focus,select:focus,textarea:focus{border-color:#3b84d9;box-shadow:0 0 0 3px #2e7bcb24}
.tools{gap:9px}
.tools .field{max-width:none}
.tools>input[data-search]{flex:2 1 280px;min-width:min(100%,230px)}
.pill{border-radius:7px;letter-spacing:.005em}
.empty{border:1px dashed #b7cbcd;background:#f8faf8;color:#526c79}
.manager-overview,
.app-shell.role-agent .content>.grid.cols3:has(>.metric){
 gap:0;
 overflow:hidden;
 border-radius:16px;
 background:#102f45;
 box-shadow:0 22px 40px -31px #0d344d9c;
}
.manager-overview .metric,
.app-shell.role-agent .content>.grid.cols3:has(>.metric)>.metric{
 min-width:0;
 min-height:150px;
 padding:24px 25px 22px;
 border:0;
 border-right:1px solid #ffffff25;
 border-radius:0;
 background:transparent;
 box-shadow:none;
}
.manager-overview .metric:last-child,
.app-shell.role-agent .content>.grid.cols3:has(>.metric)>.metric:last-child{border-right:0}
.manager-overview .metric small,
.app-shell.role-agent .content>.grid.cols3:has(>.metric)>.metric small{color:#c3d8df;font-size:.8rem;font-weight:600;letter-spacing:.01em}
.manager-overview .metric b,
.app-shell.role-agent .content>.grid.cols3:has(>.metric)>.metric b{
 margin:11px 0 6px;
 color:#fff;
 font-family:'Barlow','DM Sans',sans-serif;
 font-size:clamp(2.25rem,3vw,3.1rem);
 font-weight:800;
 line-height:1;
 letter-spacing:-.018em;
}
.manager-overview .metric em,
.app-shell.role-agent .content>.grid.cols3:has(>.metric)>.metric em{color:#a9c7d1;font-size:.75rem}
.manager-overview .metric:nth-child(4) b{color:#9ac7ff}
.map-panel{border-radius:11px}
.mobile-nav .nav-btn.active{box-shadow:none}
body.dark{--text:#eff5f5;--muted:#adc3cc;--line:#315064;--surface:#15384b;--soft:#1b4357;--shadow:0 22px 44px -34px #000b13}
body.dark .main{background:#081d2a}
body.dark .topbar{background:#102d3ef5;border-color:#315064;box-shadow:0 11px 31px -28px #000}
body.dark .panel{background:#123145;border:1px solid #2a4a5e;box-shadow:0 21px 42px -36px #000}
body.dark .panel-head h2,body.dark .section-title{color:#eff7f8}
body.dark .content .row:not(.support-ticket-row){background:#173a4d;border-color:#315468}
body.dark .content .row:hover{background:#20465a;border-color:#52738a}
body.dark .manager-overview,body.dark .app-shell.role-agent .content>.grid.cols3:has(>.metric){background:#174159;box-shadow:0 20px 36px -30px #000}
body.dark .manager-overview .metric,body.dark .app-shell.role-agent .content>.grid.cols3:has(>.metric)>.metric{background:transparent;border-right-color:#ffffff2d}
body.dark .manager-overview .metric b,body.dark .app-shell.role-agent .content>.grid.cols3:has(>.metric)>.metric b{color:#fff}
body.dark .manager-overview .metric small,body.dark .app-shell.role-agent .content>.grid.cols3:has(>.metric)>.metric small{color:#d1e3e8}
body.dark .manager-overview .metric em,body.dark .app-shell.role-agent .content>.grid.cols3:has(>.metric)>.metric em{color:#bdd3dc}
body.dark .btn.secondary{background:#214962;color:#d2eaff}
body.dark .btn.ghost{background:#16384b;color:#eff7fb;border-color:#3a6175}
body.dark .empty{background:#15384b;border-color:#426377;color:#c5d8e0}
@media(max-width:1100px){
 .manager-overview{grid-template-columns:repeat(2,minmax(0,1fr))}
 .manager-overview .metric:nth-child(2){border-right:0}
 .manager-overview .metric:nth-child(-n+2){border-bottom:1px solid #ffffff25}
}
@media(max-width:760px){
 .content{padding-top:24px}
 .page-head{margin-bottom:21px}
 .page-head h1{font-size:clamp(1.92rem,8vw,2.5rem)}
 .page-head p{margin-top:6px;font-size:.9rem}
 .top-identity strong{font-size:.96rem}
 .manager-overview.grid.cols4{grid-template-columns:repeat(2,minmax(0,1fr));gap:0}
 .manager-overview .metric,
 .app-shell.role-agent .content>.grid.cols3:has(>.metric)>.metric{min-height:118px;padding:16px 13px;border-radius:0}
 .manager-overview .metric b,
 .app-shell.role-agent .content>.grid.cols3:has(>.metric)>.metric b{font-size:2.1rem;margin:8px 0 4px}
 .manager-overview .metric small,
 .app-shell.role-agent .content>.grid.cols3:has(>.metric)>.metric small{font-size:.74rem;line-height:1.3}
 .manager-overview .metric em,
 .app-shell.role-agent .content>.grid.cols3:has(>.metric)>.metric em{font-size:.7rem;line-height:1.25}
 .app-shell.role-agent .content>.grid.cols3:has(>.metric){grid-template-columns:repeat(2,minmax(0,1fr));gap:0}
 .app-shell.role-agent .content>.grid.cols3:has(>.metric)>.metric:nth-child(2){border-right:0}
 .app-shell.role-agent .content>.grid.cols3:has(>.metric)>.metric:nth-child(-n+2){border-bottom:1px solid #ffffff25}
 .app-shell.role-agent .content>.grid.cols3:has(>.metric)>.metric:last-child{grid-column:1/-1;min-height:100px}
 body.dark .mobile-nav{background:#102d3ef5;border-color:#315064}
 body:not(.dark) .mobile-nav{background:#fdfdfbf5;border-color:#dce5e5}
}
@media(max-width:380px){
 .manager-overview .metric,
 .app-shell.role-agent .content>.grid.cols3:has(>.metric)>.metric{padding:13px 10px;min-height:110px}
 .manager-overview .metric b,
 .app-shell.role-agent .content>.grid.cols3:has(>.metric)>.metric b{font-size:1.88rem}
}

.chat-archive{margin-top:16px}
.chat-people{min-width:0;max-height:260px;overflow-y:auto;margin:0;padding:12px;border:1px solid var(--line);border-radius:12px}
.chat-people legend{padding:0 6px;font-weight:700;color:var(--text)}
.chat-people label{display:flex;align-items:center;gap:12px;min-height:43px;padding:8px 10px;border-radius:8px;cursor:pointer}
.chat-people label:hover{background:var(--soft)}
.chat-people input{width:18px;height:18px;flex:none;accent-color:var(--blue)}
.chat-people span{min-width:0;overflow-wrap:anywhere;font-weight:650}
.chat-people small{display:block;margin-top:2px;font-size:.75rem;font-weight:500;color:var(--muted)}
.support-thread>.notice.error{margin:0;color:#a83643}
body.dark .support-thread>.notice.error{color:#ffd4d9;background:#5b3038}
@media(max-width:760px){
 body:has(.app-shell:not(.role-client)) .mobile-nav .nav-btn[data-page="chat"]{display:none}
 .chat-people{max-height:220px}
 .chat-archive{margin-top:12px}
}

/* Operational workflows: readable quantities and touch-safe controls on narrow screens. */
.stock-quantity{font-family:'Barlow','DM Sans',sans-serif;font-size:clamp(1.65rem,2.5vw,2.2rem);font-weight:800;line-height:1.1;margin:16px 0 8px;overflow-wrap:anywhere}
.stock-card{min-width:0;display:flex;flex-direction:column;gap:7px}
.stock-card .form-actions{margin-top:auto;padding-top:10px}
.site-pagination{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;margin:20px 0 4px;color:var(--muted);font-weight:700}
.site-pagination .btn{min-height:42px}
.team-pending{margin-bottom:18px}
.team-pending .row,.site-card .form-actions{min-width:0;flex-wrap:wrap}
.team-pending .row-body{min-width:min(100%,180px);overflow-wrap:anywhere}
.planning-date-nav{display:flex;justify-content:flex-end;margin-bottom:12px}
.planning-date-nav label{display:grid;gap:5px;width:min(100%,230px);color:var(--muted);font-size:.78rem;font-weight:700}
.planning-date-nav input{width:100%;min-height:44px;color:var(--text);background:var(--surface)}
.page-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;min-width:0}
.page-head-actions .page-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}
.page-refresh{display:inline-flex;align-items:center;gap:7px;min-height:42px;white-space:nowrap}
.page-refresh svg{width:17px;height:17px}
.live-duration{font-variant-numeric:tabular-nums;letter-spacing:.02em}
.live-duration strong{font-family:'Barlow','DM Sans',sans-serif;font-size:1.2rem;color:inherit}
.incident-photo{display:block;width:min(100%,540px);height:auto;max-height:60dvh;object-fit:contain;margin-inline:auto}
.stock-card,.site-card{transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
@media(hover:hover){.stock-card:hover,.site-card:hover{transform:translateY(-2px);border-color:#83afcf;box-shadow:0 18px 32px -27px #143b5a8c}}
@media(max-width:760px){
 .page-head-actions{width:100%;justify-content:stretch}
 .page-head-actions .page-actions{flex:1 1 100%}
 .page-head-actions .page-actions .btn{flex:1 1 145px}
 .page-head-actions .page-refresh{width:100%;justify-content:center}
 .stock-card .form-actions .btn,.site-card .form-actions .btn{min-height:44px}
 .team-pending .row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}
 .team-pending .row .btn{grid-column:1/-1;width:100%;min-height:44px}
 .planning-date-nav{justify-content:stretch}
 .planning-date-nav label{width:100%}
}
@media(max-width:420px){
 .stock-card .form-actions,.site-card .form-actions{display:grid;grid-template-columns:1fr}
 .stock-card .form-actions .btn,.site-card .form-actions .btn{width:100%}
 .site-pagination{justify-content:space-between}
}
@media(prefers-reduced-motion:reduce){.stock-card,.site-card{transition:none}.stock-card:hover,.site-card:hover{transform:none}}

/* Fluid operational layouts: labels keep readable widths instead of breaking letter by letter. */
.content .split{grid-template-columns:repeat(auto-fit,minmax(min(100%,520px),1fr));align-items:start}
.content .split>.panel{min-width:0}
.content .map-panel{display:block;width:100%;height:clamp(280px,35vw,390px);min-height:280px;overflow:hidden;background:#dce8eb}
.content .map-panel>.maplibregl-map{width:100%;height:100%}
.content .map-panel>.map-empty{min-height:280px;display:grid;place-items:center;padding:20px;text-align:center}
.dialog .receipt-photo{width:min(100%,300px);height:auto;max-height:220px;aspect-ratio:auto;object-fit:contain;margin:16px 0}
.dialog input[readonly]{background:var(--soft);color:var(--text);cursor:default}
.agent-row{display:grid;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:7px 12px}
.agent-row>.avatar{grid-column:1;grid-row:1 / span 2}
.agent-row>.row-body{grid-column:2;grid-row:1;min-width:0}
.agent-row>.row-body strong{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:normal;word-break:normal;line-height:1.35}
.agent-row>.row-body small{white-space:normal;overflow-wrap:break-word;word-break:normal}
.agent-status{grid-column:2;justify-self:start}
.agent-actions{grid-column:2;display:flex;flex-wrap:wrap;gap:8px;min-width:0}
.agent-actions .btn{min-height:40px;white-space:normal;overflow-wrap:normal;word-break:normal}
.stock-card .panel-head{display:flex;flex-wrap:wrap;align-items:flex-start;gap:8px}
.stock-card .panel-head h2{flex:1 1 140px;min-width:0;overflow-wrap:break-word;word-break:normal}
.stock-card .panel-head .pill{flex:none;max-width:100%;white-space:normal}
.stock-card .stock-quantity{margin:10px 0 0;overflow-wrap:normal;font-variant-numeric:tabular-nums}
.stock-card>small{display:block;line-height:1.45;overflow-wrap:break-word}
.stock-pending{color:var(--role-accent,var(--blue));font-weight:700}
.dialog .form-grid>*{min-width:0}
.dialog input[type=file]{max-width:100%;min-width:0;white-space:normal;overflow:hidden}
.support-file{justify-self:start;max-width:100%;overflow-wrap:normal}
@media(max-width:700px){
 .dialog .form-grid{grid-template-columns:minmax(0,1fr)}
 .dialog .form-grid .wide{grid-column:1}
 .dialog{padding:18px 16px calc(18px + env(safe-area-inset-bottom))}
 .dialog-head h2{font-size:clamp(1.12rem,4.8vw,1.45rem);line-height:1.3;overflow-wrap:break-word;word-break:normal}
 .dialog .form-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,130px),1fr));width:100%}
 .dialog .form-actions .btn{width:100%;min-height:44px}
 .agent-actions .btn{flex:1 1 100px}
}
@media(max-width:380px){.dialog .form-actions{grid-template-columns:1fr}.agent-actions{grid-column:1/-1}.agent-row>.avatar{grid-row:1}.agent-status{grid-column:2}}
.top-actions .icon-btn{flex:0 0 44px;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;overflow:hidden;white-space:nowrap}
.top-actions .notification-button{overflow:visible}
.stock-receipts .receipt-filter{display:grid;gap:8px;width:min(100%,320px);margin:12px 0 18px}
.stock-receipts .receipt-filter select{width:100%;min-width:0}
.stock-receipts .row{flex-wrap:wrap;gap:10px}
.stock-receipts .row .pill{max-width:100%;white-space:normal;text-align:center}
.top-actions .icon-btn[aria-busy="true"] .button-spinner{flex:none;width:20px;height:20px}
.dialog .form-grid .field-label{min-width:0;overflow-wrap:normal}
.dialog .form-grid input,.dialog .form-grid select,.dialog .form-grid textarea{min-width:0;max-width:100%}
.dialog .form-grid input[type="file"]{width:100%;font-size:clamp(.85rem,1.6vw,1rem);line-height:1.4}
.dialog .form-grid input[type="file"]::file-selector-button{max-width:100%;margin-right:10px;white-space:normal}
@media(max-width:700px){.topbar .top-identity{min-width:0}.topbar .top-actions{flex:none}.dialog .form-grid input[type="file"]{font-size:.875rem}}
