/* Rezvan Rail v4.4.0 — prototype-faithful production UI
   Source: Figma Rezvan Rail v4.2 continuation + original design system.
   Critical rule: never change TV/yard renderer geometry from this layer. */
:root{
  --rr44-bg:#f3f6fa;--rr44-bg-elevated:#fff;--rr44-surface:#fff;--rr44-surface-2:#f7f9fc;--rr44-surface-3:#edf2f8;
  --rr44-text:#172033;--rr44-text-2:#344056;--rr44-muted:#68758a;--rr44-faint:#8c98aa;
  --rr44-accent:#8a1538;--rr44-accent-2:#b52250;--rr44-accent-3:#e04b75;
  --rr44-success:#25b66c;--rr44-warning:#e3a62f;--rr44-danger:#df5562;--rr44-info:#3b91dc;
  --rr44-border:#e3e9f1;--rr44-shadow:0 14px 42px rgba(23,32,51,.08);--rr44-shadow-soft:0 8px 24px rgba(23,32,51,.06);
  --rr44-radius:20px;--rr44-radius-sm:14px;--rr44-mobile-gutter:16px;--rr44-tap:44px;
  --rr44-appbar:72px;--rr44-bottomnav:72px;
}
html[data-theme="dark"],body.dark{
  --rr44-bg:#090d14;--rr44-bg-elevated:#0f151f;--rr44-surface:#121925;--rr44-surface-2:#182231;--rr44-surface-3:#202c3d;
  --rr44-text:#f5f7fb;--rr44-text-2:#d7deea;--rr44-muted:#93a0b4;--rr44-faint:#68758a;--rr44-border:#202c3d;
  --rr44-shadow:0 20px 52px rgba(0,0,0,.3);--rr44-shadow-soft:0 10px 28px rgba(0,0,0,.2);
}
html,body{max-width:100%;}
body:not(.tv-page){overflow-x:clip;background:var(--rr44-bg);color:var(--rr44-text);}
*,*::before,*::after{box-sizing:border-box;}
.layout,.main,main,section,article,form,fieldset,.panel,.card,.form-group,.actions,.toolbar,.panel-head,.directory-head,.table-wrap,.responsive-table-shell{min-width:0;max-width:100%;}
img,svg,canvas,video{max-width:100%;}
input,select,textarea,button{max-width:100%;min-width:0;}

/* Real application canvas */
body:not(.tv-page) .layout{width:100%;max-width:none;margin:0;padding:0;}
body:not(.tv-page) .main{width:min(100% - 48px,1480px);margin-inline:auto;padding:28px 0 64px;}
body:not(.tv-page) .panel,
body:not(.tv-page) .card,
body:not(.tv-page) .trader-directory-shell,
body:not(.tv-page) .trader-directory-command,
body:not(.tv-page) .trader-dossier-hero,
body:not(.tv-page) .trader-operational-band,
body:not(.tv-page) .trader-history-band,
body:not(.tv-page) .masterdata-command,
body:not(.tv-page) .permission-command-band,
body:not(.tv-page) .rail-command-hero{
  border:1px solid var(--rr44-border)!important;background:var(--rr44-surface)!important;border-radius:22px!important;box-shadow:var(--rr44-shadow-soft);color:var(--rr44-text);
}
body:not(.tv-page) .panel{padding:22px;}
body:not(.tv-page) .panel-head{gap:16px;margin-bottom:20px;align-items:flex-start;}
body:not(.tv-page) .panel-head h2,body:not(.tv-page) .panel-head h3,body:not(.tv-page) .panel-head h4{color:var(--rr44-text);letter-spacing:-.25px;}
body:not(.tv-page) .panel-head small,body:not(.tv-page) .panel-head p{color:var(--rr44-muted);line-height:1.9;}

/* Inputs faithfully follow Figma surfaces */
body:not(.tv-page) input:not([type=checkbox]):not([type=radio]),
body:not(.tv-page) select,
body:not(.tv-page) textarea{
  width:100%;background:var(--rr44-surface-2)!important;color:var(--rr44-text)!important;border:1px solid var(--rr44-border)!important;border-radius:13px!important;min-height:46px;padding:10px 13px;box-shadow:none!important;outline:none;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;
}
body:not(.tv-page) textarea{min-height:92px;resize:vertical;}
body:not(.tv-page) input::placeholder,body:not(.tv-page) textarea::placeholder{color:var(--rr44-faint)!important;opacity:1;}
body:not(.tv-page) input:focus,body:not(.tv-page) select:focus,body:not(.tv-page) textarea:focus{border-color:color-mix(in srgb,var(--rr44-accent-2) 70%,var(--rr44-border))!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--rr44-accent-2) 14%,transparent)!important;background:var(--rr44-bg-elevated)!important;}
body:not(.tv-page) label{color:var(--rr44-text-2);font-weight:650;}
body:not(.tv-page) .field-hint,body:not(.tv-page) .input-hint,body:not(.tv-page) .form-note small{color:var(--rr44-muted)!important;}

.btn{min-height:42px;border-radius:13px!important;font-weight:750;transition:transform .15s ease,box-shadow .15s ease,background .15s ease,border-color .15s ease;}
.btn:hover{transform:translateY(-1px)}
.btn.primary{background:linear-gradient(135deg,var(--rr44-accent),#a51542)!important;border-color:transparent!important;color:white!important;box-shadow:0 8px 20px rgba(138,21,56,.18);}
.btn.ghost{background:var(--rr44-surface-2)!important;border-color:var(--rr44-border)!important;color:var(--rr44-text)!important;}
.btn.green{background:color-mix(in srgb,var(--rr44-success) 14%,var(--rr44-surface))!important;border-color:color-mix(in srgb,var(--rr44-success) 35%,var(--rr44-border))!important;color:var(--rr44-success)!important;}

/* Desktop nav — cleaner but stays rich */
.department-navbar{background:var(--rr44-bg-elevated)!important;border-bottom:1px solid var(--rr44-border)!important;box-shadow:0 8px 24px rgba(23,32,51,.04);}
.navbar-primary{min-height:68px;padding:8px clamp(20px,3vw,46px)!important;}
.navbar-secondary{min-height:74px;padding:10px clamp(20px,3vw,46px)!important;background:var(--rr44-bg)!important;border-top:1px solid var(--rr44-border)!important;}
.navbar-brand img{filter:none;}
.navbar-link,.navbar-group-button,.navbar-icon-button{border-radius:12px!important;}
.page-title h1{font-size:19px!important;letter-spacing:-.35px;color:var(--rr44-text)!important}.page-title p{color:var(--rr44-muted)!important;}
.global-search-shell{min-width:0;}
.global-search-trigger{display:none;}

/* Prototype page archetypes */
.page-archetype-queue .tabbar,.page-archetype-workflow .tabbar{background:var(--rr44-surface)!important;border:1px solid var(--rr44-border);padding:6px;border-radius:16px;box-shadow:var(--rr44-shadow-soft);}
.tabbar .tab{border-radius:11px!important;min-height:40px;color:var(--rr44-muted);font-weight:700;}
.tabbar .tab.active{background:var(--rr44-accent)!important;color:#fff!important;box-shadow:0 6px 16px rgba(138,21,56,.18);}

/* Loading — turn old wide form into a workflow surface */
.loading-page-v42 .main>.tabbar{position:sticky;top:8px;z-index:30;margin-bottom:18px;}
.loading-page-v42 .panel:not(.hidden){animation:rr44-enter .24s ease both;}
.loading-page-v42 .panel-head h3{font-size:18px;margin-bottom:6px;}
.loading-page-v42 form{background:transparent;}
.loading-page-v42 .form-grid.three-cols{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important;align-items:start;}
.loading-page-v42 .contractor-picker{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;grid-column:1/-1;background:var(--rr44-surface-2);border:1px solid var(--rr44-border);border-radius:17px;padding:14px;width:100%;min-width:0;}
.loading-page-v42 .contractor-picker::before{content:'پیمانکار و ابزار';grid-column:1/-1;font-size:12px;font-weight:800;color:var(--rr44-text);}
.loading-page-v42 .actions{border-top:1px solid var(--rr44-border);padding-top:16px;margin-top:18px;}

/* Directory/list pages: scale to real data instead of repetitive cards */
.access-user-list,.trader-directory-list{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;}
.access-user-row,.trader-directory-row,.contractor-directory-item,.referral-item,.log-card{
  background:var(--rr44-surface)!important;border:1px solid var(--rr44-border)!important;border-radius:17px!important;box-shadow:none!important;
}
.access-user-row:hover,.trader-directory-row:hover,.contractor-directory-item:hover,.log-card:hover{border-color:color-mix(in srgb,var(--rr44-accent-2) 28%,var(--rr44-border))!important;box-shadow:var(--rr44-shadow-soft)!important;}

/* Permission center — Figma information architecture */
.permission-modal-form{height:auto;min-height:0;}
.permission-user-hero{background:var(--rr44-surface-2)!important;border:1px solid var(--rr44-border)!important;border-radius:18px!important;padding:14px!important;}
.permission-center{min-width:0;}
.permission-toolbar{position:sticky;top:0;z-index:3;background:var(--rr44-surface);padding:8px 0 12px;}
.permission-layout{display:grid!important;grid-template-columns:160px minmax(0,1fr) 250px!important;gap:14px!important;max-height:none!important;min-height:0;}
.permission-groups,.permission-matrix,.access-preview{min-width:0;}
.permission-matrix{overflow:visible!important;max-height:none!important;}
.permission-domain{background:var(--rr44-surface-2)!important;border:1px solid var(--rr44-border)!important;border-radius:17px!important;margin-bottom:12px!important;overflow:hidden;scroll-margin-top:80px;}
.permission-row{background:var(--rr44-surface)!important;border-top:1px solid var(--rr44-border)!important;gap:16px!important;}
.permission-state{flex-wrap:wrap;}
.perm-state{min-height:34px;border-radius:11px!important;}
.permission-mobile-summary{display:none;}
.permission-editor-back{display:none;}
.preview-safety{display:grid!important;gap:3px!important;}
.preview-safety b,.preview-safety span{display:block;}

/* Modals: scroll body, never lock content below fold */
.modal-backdrop{padding:clamp(10px,2vw,24px)!important;overscroll-behavior:contain;}
.modal-backdrop .modal{width:min(620px,calc(100vw - 24px))!important;max-height:min(92dvh,900px)!important;display:grid!important;grid-template-rows:auto minmax(0,1fr)!important;overflow:hidden!important;border-radius:22px!important;background:var(--rr44-surface)!important;border:1px solid var(--rr44-border)!important;box-shadow:0 26px 80px rgba(0,0,0,.28)!important;}
.modal-backdrop .modal.wide{width:min(1180px,calc(100vw - 32px))!important;}
.modal-head{position:relative!important;z-index:5;background:var(--rr44-surface)!important;border-bottom:1px solid var(--rr44-border)!important;padding:16px 18px!important;min-height:64px;}
.modal-head h3{font-size:17px!important;color:var(--rr44-text)!important;}
.modal-content-scroll,#genericBody{min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;padding:18px!important;overscroll-behavior:contain;scrollbar-gutter:stable;}
#genericBody>.permission-modal-form{padding-bottom:80px;}
.modal-actions.sticky{position:sticky!important;bottom:-18px!important;z-index:9;background:linear-gradient(to top,var(--rr44-surface) 78%,transparent)!important;padding:16px 0 4px!important;margin-top:18px!important;}

/* Tables may scroll within their own shell, never the entire page */
.table-wrap,.responsive-table-shell{width:100%;max-width:100%;overflow-x:auto!important;overflow-y:visible;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain;border-radius:14px;}
.responsive-table-shell>table,.table-wrap>table{width:max(100%,680px);margin:0;}
.responsive-table-shell::-webkit-scrollbar,.table-wrap::-webkit-scrollbar{height:7px}.responsive-table-shell::-webkit-scrollbar-thumb,.table-wrap::-webkit-scrollbar-thumb{background:var(--rr44-border);border-radius:999px;}

/* Log timeline prototype */
.logs-page-v44 .log-overview{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:18px;align-items:start;}
.logs-page-v44 .auth-log-panel{position:sticky;top:18px;}
.log-card{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;padding:14px 16px!important;gap:18px!important;}
.log-card .log-actor{display:flex;align-items:center;gap:10px;margin-bottom:8px}.log-actor-avatar{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;background:var(--rr44-surface-3);font-weight:900;color:var(--rr44-accent-2)}
.log-actor-copy{display:grid}.log-actor-copy small{color:var(--rr44-muted)}
.auth-log-list{display:grid;gap:9px}.auth-log-item{display:grid;grid-template-columns:42px minmax(0,1fr);gap:10px;padding:12px;border:1px solid var(--rr44-border);border-radius:15px;background:var(--rr44-surface-2)}.auth-log-item .state{width:42px;height:42px;border-radius:13px;display:grid;place-items:center}.auth-log-item.login .state{background:color-mix(in srgb,var(--rr44-success) 13%,var(--rr44-surface));color:var(--rr44-success)}.auth-log-item.failed .state{background:color-mix(in srgb,var(--rr44-danger) 12%,var(--rr44-surface));color:var(--rr44-danger)}.auth-log-item.logout .state{background:var(--rr44-surface-3);color:var(--rr44-muted)}.auth-log-item b{color:var(--rr44-text)}.auth-log-item small{display:block;color:var(--rr44-muted);line-height:1.7}

/* Customs — step workflow like Figma */
.customs-page-v42 .wagon-customs-stepbar,.customs-page-v42 .customs-steps,.customs-page-v42 .customs-stepper{background:transparent!important;gap:10px!important;}
.customs-page-v42 .customs-step,.customs-page-v42 [data-customs-step]{border:1px solid var(--rr44-border)!important;background:var(--rr44-surface)!important;border-radius:16px!important;box-shadow:none!important;}
.customs-page-v42 .wagon-customs-stage,.customs-page-v42 .customs-stage-card{background:var(--rr44-surface)!important;border:1px solid var(--rr44-border)!important;border-radius:20px!important;}

/* Dossiers */
.trader-dossier-hero{padding:18px!important;display:grid!important;grid-template-columns:minmax(260px,1.2fr) repeat(3,minmax(130px,.35fr))!important;gap:12px!important;}
.trader-dossier-kpi,.trader-metric-strip>*,.trader-history-metrics>*{background:var(--rr44-surface-2)!important;border:1px solid var(--rr44-border)!important;border-radius:16px!important;}
.rail-command-hero{padding:20px!important;}
.rail-stage-board>*{border-radius:16px!important;border:1px solid var(--rr44-border)!important;background:var(--rr44-surface-2)!important;}

/* Contractor dependency */
.contractor-picker select,.contractors-page-v42 select{border-radius:12px!important;}
.contractors-page-v42 .masterdata-command{position:relative;overflow:hidden;padding:20px!important;}
.contractors-page-v42 .masterdata-command::after{content:'نوع خدمت  ←  پیمانکار مجاز  ←  ابزار ثبت‌شده';display:block;margin-top:10px;padding:12px 14px;border-radius:14px;background:var(--rr44-surface-2);color:var(--rr44-muted);font-size:11px;font-weight:750;}


.mobile-header-action{display:none;position:relative;border:0;background:transparent;color:var(--rr44-text);}
.mobile-header-action .nav-icon{margin:0;}
.mobile-header-action .navbar-alert-count{position:absolute;inset:2px 2px auto auto;min-width:17px;height:17px;padding:0 4px;border-radius:9px;display:grid;place-items:center;background:var(--rr44-danger);color:#fff;font-size:9px;font-weight:850;line-height:1;}
.mobile-header-action .navbar-alert-count[hidden]{display:none!important;}

/* Mobile — this is intentionally a structural redesign */
@media (max-width:900px){
  html,body{width:100%;max-width:100%;overflow-x:clip!important;}
  body:not(.tv-page){background:var(--rr44-bg)!important;padding:0!important;}
  body:not(.tv-page) .layout{width:100%!important;max-width:100%!important;margin:0!important;padding:0!important;}
  body:not(.tv-page) .main{width:100%!important;max-width:100%!important;margin:0!important;padding:18px var(--rr44-mobile-gutter) calc(var(--rr44-bottomnav) + 34px + env(safe-area-inset-bottom))!important;overflow:visible!important;}
  .department-navbar{height:var(--rr44-appbar)!important;min-height:var(--rr44-appbar)!important;position:sticky!important;top:0;z-index:1000;border:0!important;box-shadow:none!important;}
  .navbar-primary{display:none!important;}
  .navbar-secondary{height:var(--rr44-appbar)!important;min-height:var(--rr44-appbar)!important;padding:0 16px!important;background:var(--rr44-bg-elevated)!important;border:0!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;}
  .navbar-secondary .page-title{order:2;flex:1;min-width:0;display:block!important;text-align:right!important;}
  .navbar-secondary .page-icon{display:none!important;}
  .navbar-secondary .page-title h1{font-size:17px!important;line-height:1.65!important;margin:0!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--rr44-text)!important;}
  .navbar-secondary .page-title p{font-size:10px!important;margin:0!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--rr44-muted)!important;}
  .navbar-secondary .toolbar{order:1;display:flex!important;align-items:center!important;gap:8px!important;flex:0 0 auto;}
  .navbar-secondary .toolbar>:not(.global-search-shell):not(.mobile-header-action){display:none!important;}
  .mobile-header-action{display:grid!important;place-items:center;width:44px!important;height:44px!important;min-width:44px!important;border-radius:14px!important;background:var(--rr44-surface-3)!important;color:var(--rr44-text)!important;}
  .global-search-shell{width:44px!important;height:44px!important;min-width:44px!important;position:static!important;}
  .global-search-trigger{display:grid!important;place-items:center;width:44px!important;height:44px!important;border:0!important;border-radius:14px!important;background:var(--rr44-surface-3)!important;color:var(--rr44-text)!important;}
  .global-search-trigger .nav-icon{margin:0!important;}
  .global-search{position:fixed!important;z-index:2005!important;inset:var(--rr44-appbar) 0 auto 0!important;width:100%!important;max-width:none!important;min-width:0!important;border:0!important;border-radius:0 0 22px 22px!important;padding:14px 16px!important;background:var(--rr44-bg-elevated)!important;box-shadow:0 18px 50px rgba(0,0,0,.2)!important;display:none!important;grid-template-columns:32px minmax(0,1fr) 42px!important;gap:8px!important;}
  .global-search-shell.open .global-search{display:grid!important;animation:rr44-sheet .24s ease both;}
  .global-search input{width:100%!important;}
  .global-search-submit{display:none!important;}
  .global-search-close{display:grid!important;place-items:center!important;}
  .mobile-bottom-nav{position:fixed!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;left:0!important;right:0!important;bottom:0!important;width:100%!important;height:calc(var(--rr44-bottomnav) + env(safe-area-inset-bottom))!important;padding:6px 6px calc(6px + env(safe-area-inset-bottom))!important;background:var(--rr44-bg-elevated)!important;border-top:1px solid var(--rr44-border)!important;box-shadow:0 -10px 32px rgba(23,32,51,.08)!important;z-index:1100!important;}
  .mobile-bottom-nav>a,.mobile-bottom-nav>button{min-width:0!important;min-height:58px!important;padding:4px 2px!important;border:0!important;background:transparent!important;color:var(--rr44-muted)!important;display:grid!important;grid-template-rows:28px 18px!important;align-items:center!important;justify-items:center!important;border-radius:13px!important;font-size:10px!important;font-weight:650!important;}
  .mobile-bottom-nav .nav-icon{width:22px!important;height:22px!important;margin:0!important;}
  .mobile-bottom-nav>a.active{color:var(--rr44-accent-2)!important;font-weight:850!important;}
  .mobile-bottom-nav>a.active span:last-child{color:var(--rr44-text)!important;}
  .mobile-command-sheet{position:fixed;z-index:2100;inset:0;background:rgba(9,13,20,.55);display:none;align-items:flex-end;padding:12px;backdrop-filter:blur(8px)}.mobile-command-sheet.show{display:flex}.mobile-command-sheet-inner{width:100%;max-height:82dvh;overflow:auto;background:var(--rr44-bg-elevated);border:1px solid var(--rr44-border);border-radius:24px 24px 18px 18px;padding:10px 14px 18px;box-shadow:0 -24px 70px rgba(0,0,0,.28);animation:rr44-sheet .24s ease both}.mobile-command-handle{width:44px;height:4px;border-radius:99px;background:var(--rr44-border);margin:2px auto 14px}.mobile-command-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.mobile-command-head h3{margin:0;color:var(--rr44-text);font-size:16px}.mobile-command-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.mobile-command-grid a,.mobile-command-grid button{min-height:64px;border:1px solid var(--rr44-border);background:var(--rr44-surface-2);color:var(--rr44-text);border-radius:16px;padding:10px;display:flex;align-items:center;gap:9px;text-align:right;font-weight:750}.mobile-command-grid .nav-icon{margin:0;flex:0 0 auto}.mobile-command-account{display:grid;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--rr44-border)}

  body:not(.tv-page) .panel,body:not(.tv-page) .card,body:not(.tv-page) .trader-directory-shell,body:not(.tv-page) .trader-directory-command,body:not(.tv-page) .trader-dossier-hero,body:not(.tv-page) .trader-operational-band,body:not(.tv-page) .trader-history-band,body:not(.tv-page) .masterdata-command,body:not(.tv-page) .permission-command-band,body:not(.tv-page) .rail-command-hero{border-radius:20px!important;padding:16px!important;box-shadow:none!important;}
  .main>section,.main>.tabbar,.main>.two,.main>.grid{margin-bottom:14px!important;}
  .panel-head{display:flex!important;align-items:flex-start!important;gap:8px!important;margin-bottom:16px!important;}
  .panel-head h3{font-size:15px!important;}.panel-head small{font-size:10px!important;}
  .grid,.grid.cards,.two,.three,.four,.form-grid,.form-grid.three-cols,.form-grid.four-cols,.command-layout-main,.command-kpi-grid,.contractor-layout,.trader-dossier-hero,.trader-operational-band,.trader-history-band,.rail-command-kpis,.rail-command-layout,.rail-flow-command,.logs-page-v44 .log-overview{grid-template-columns:minmax(0,1fr)!important;display:grid!important;gap:12px!important;width:100%!important;}
  .form-group,.form-group.full,.checkline.full{grid-column:1!important;width:100%!important;max-width:100%!important;}
  .loading-page-v42 .form-grid.three-cols{grid-template-columns:minmax(0,1fr)!important;gap:12px!important;}
  .loading-page-v42 .contractor-picker{grid-template-columns:minmax(0,1fr)!important;grid-column:1!important;padding:12px!important;gap:10px!important;}
  .loading-page-v42 .actions{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:8px!important;width:100%!important;}
  .loading-page-v42 .actions .btn{width:100%!important;}
  .loading-page-v42 .main>.tabbar{position:relative;top:auto;display:flex!important;overflow-x:auto!important;overflow-y:hidden;gap:6px;width:100%;max-width:100%;padding:5px;scrollbar-width:none;overscroll-behavior-inline:contain;}
  .loading-page-v42 .main>.tabbar::-webkit-scrollbar{display:none}.loading-page-v42 .tabbar .tab{flex:0 0 auto;white-space:nowrap;padding-inline:14px;}
  .loading-page-v42 .two{display:grid!important;grid-template-columns:1fr!important;}

  /* Any table can be wide only inside its own shell */
  table{max-width:none!important;}
  .table-wrap,.responsive-table-shell{width:100%!important;max-width:100%!important;overflow-x:auto!important;}
  .table-wrap>table,.responsive-table-shell>table{min-width:680px!important;width:max(100%,680px)!important;}
  .no-hscroll>table{min-width:0!important;width:100%!important;}

  /* Permission prototype mobile summary */
  .modal-backdrop{padding:0!important;align-items:flex-end!important;}
  .modal-backdrop .modal,.modal-backdrop .modal.wide{width:100%!important;max-width:100%!important;max-height:94dvh!important;border-radius:24px 24px 0 0!important;border-inline:0!important;border-bottom:0!important;}
  #genericBody{padding:14px 16px calc(18px + env(safe-area-inset-bottom))!important;}
  .permission-modal-form{padding:0!important;}
  .permission-user-hero{display:grid!important;grid-template-columns:44px minmax(0,1fr)!important;gap:10px!important;align-items:center!important;}
  .permission-user-hero>.switch-line{grid-column:1/-1!important;}
  .access-identity-fields{grid-template-columns:1fr!important;display:grid!important;gap:10px!important;}
  .permission-toolbar,.permission-layout,.permission-advanced{display:none!important;}
  .permission-mobile-summary{display:block!important;margin-top:14px;}
  .permission-mobile-copy h3{font-size:17px;margin:0 0 4px;color:var(--rr44-text)}.permission-mobile-copy p{font-size:10px;line-height:1.9;color:var(--rr44-muted);margin:0 0 14px}.permission-mobile-user{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:14px;background:var(--rr44-surface-2);border:1px solid var(--rr44-border);border-radius:18px;margin-bottom:16px}.permission-mobile-user b{display:block;color:var(--rr44-text)}.permission-mobile-user small{display:block;color:var(--rr44-muted);margin-top:3px}.permission-mobile-domains{display:grid;gap:10px}.permission-mobile-domain{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;min-height:66px;background:var(--rr44-surface);border:1px solid var(--rr44-border);border-radius:16px}.permission-mobile-domain b{display:block;color:var(--rr44-text);font-size:12px}.permission-mobile-domain small{color:var(--rr44-muted);font-size:9px}.permission-mobile-state{min-width:92px;min-height:28px;border-radius:99px;display:grid;place-items:center;font-size:10px;font-weight:800}.permission-mobile-state.allow{background:#e8f7ef;color:var(--rr44-success)}.permission-mobile-state.custom{background:#fbeaf0;color:var(--rr44-accent-2)}.permission-mobile-state.deny{background:#fdecef;color:var(--rr44-danger)}.permission-mobile-state.inherit{background:var(--rr44-surface-3);color:var(--rr44-muted)}.permission-mobile-cta{width:100%;height:48px;margin-top:14px;border:0;border-radius:16px;background:var(--rr44-accent);color:white;font-weight:850}.permission-center.mobile-editing .permission-mobile-summary{display:none!important}.permission-center.mobile-editing .permission-toolbar{display:flex!important;position:sticky;top:0}.permission-center.mobile-editing .permission-layout{display:block!important}.permission-center.mobile-editing .permission-groups,.permission-center.mobile-editing .access-preview{display:none!important}.permission-center.mobile-editing .permission-matrix{display:block!important}.permission-center.mobile-editing .permission-advanced{display:block!important}.permission-center.mobile-editing .permission-editor-back{display:flex!important;position:sticky;top:0;z-index:5;width:100%;margin-bottom:10px;align-items:center;justify-content:center;min-height:42px;border:1px solid var(--rr44-border);border-radius:13px;background:var(--rr44-surface-2);color:var(--rr44-text);font-weight:750}.permission-domain-head{display:block!important}.domain-actions{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;margin-top:8px}.permission-row{display:grid!important;grid-template-columns:1fr!important;padding:12px!important}.permission-state{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:5px!important}.permission-copy code{max-width:100%;overflow-wrap:anywhere;}
  .modal-actions.sticky{bottom:-14px!important;display:grid!important;grid-template-columns:1fr 1.2fr!important;gap:8px!important;}

  /* Customs Figma mobile hierarchy */
  .customs-page-v42 .main{padding-top:18px!important;}
  .customs-page-v42 .hs-lookup-box,.customs-page-v42 .kotaj-master-panel{border-radius:20px!important;}
  .customs-page-v42 .form-grid.four-cols,.customs-page-v42 .form-grid{grid-template-columns:1fr!important;}
  .customs-page-v42 .customs-steps,.customs-page-v42 .customs-stepper,.customs-page-v42 .wagon-customs-stepbar{display:grid!important;grid-template-columns:repeat(4,minmax(74px,1fr))!important;gap:8px!important;overflow-x:auto!important;max-width:100%;padding-bottom:2px;}
  .customs-page-v42 .customs-step,.customs-page-v42 [data-customs-step]{min-width:74px!important;min-height:70px!important;padding:8px 4px!important;}

  /* Dossiers become vertical cards exactly like Figma */
  .trader-dossier-hero{grid-template-columns:repeat(3,minmax(0,1fr))!important;}.trader-dossier-identity{grid-column:1/-1!important;min-height:104px;}.trader-dossier-kpi{min-width:0!important;text-align:center;padding:10px!important;}.trader-dossier-kpi b{font-size:20px!important;}
  .trader-metric-strip,.trader-history-metrics{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;}
  .trader-directory-row{grid-template-columns:1fr auto!important;gap:8px!important;padding:12px!important;}
  .rail-command-v43 .rail-command-hero{min-height:110px!important;}.rail-stage-board{display:grid!important;grid-template-columns:1fr!important;gap:9px!important}.rail-stage-board>*{min-height:55px!important;padding:10px 14px!important;}

  /* Logs */
  .logs-page-v44 .auth-log-panel{position:static}.log-filter-bar{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important}.log-filter-bar .btn{grid-column:1/-1}.log-card{grid-template-columns:1fr!important}.log-card>time{justify-self:start;color:var(--rr44-muted)}
}

@media (max-width:520px){
  body:not(.tv-page) .main{padding-inline:16px!important;}
  .log-filter-bar{grid-template-columns:1fr!important}.log-filter-bar .btn{grid-column:auto}.trader-dossier-hero{grid-template-columns:repeat(3,minmax(0,1fr))!important;padding:14px!important}.trader-metric-strip,.trader-history-metrics{grid-template-columns:1fr!important;}
  .actions:not(.panel-actions):not(.navbar-quick){display:grid!important;grid-template-columns:1fr!important;gap:8px!important}.actions .btn{width:100%!important;}
  .mobile-command-grid{grid-template-columns:1fr 1fr;}
}

@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;}}
@keyframes rr44-enter{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@keyframes rr44-sheet{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}

/* CRITICAL TV SAFETY: no width/grid/position overrides for TV board internals. */
.tv-page,.tv-page .layout,.tv-page .tv-board-mode,.tv-page .yard-line-board{max-width:none;}
@media (max-width:900px){.mobile-command-account button{width:100%;min-height:46px;border:1px solid var(--rr44-border);border-radius:14px;background:var(--rr44-surface-2);color:var(--rr44-text);display:flex;align-items:center;gap:10px;padding:9px 12px;font-weight:750}.mobile-command-account .nav-icon{margin:0}.mobile-sheet-open,.modal-open{overflow:hidden!important}}
.modal-backdrop .modal>.modal-head+form,.modal-backdrop .modal>.modal-head+.search-results,.modal-backdrop .modal>.modal-head+.modal-body,.modal-backdrop .modal>.modal-head+section{min-height:0;overflow:auto;padding:18px;overscroll-behavior:contain}
@media(max-width:900px){.modal-backdrop .modal>.modal-head+form,.modal-backdrop .modal>.modal-head+.search-results,.modal-backdrop .modal>.modal-head+.modal-body,.modal-backdrop .modal>.modal-head+section{padding:14px 16px calc(18px + env(safe-area-inset-bottom))}}
.mobile-context-actions{display:none}
@media(max-width:900px){.mobile-context-actions{display:flex;gap:8px;align-items:center;overflow-x:auto;max-width:100%;padding-bottom:2px;margin-bottom:12px;scrollbar-width:none}.mobile-context-actions:empty{display:none}.mobile-context-actions::-webkit-scrollbar{display:none}.mobile-context-actions .btn{flex:0 0 auto;min-height:42px}}
@media(max-width:900px){
 .filter-bar,.filter-bar.refined,.directory-tools,.hs-search-row{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;width:100%!important;max-width:100%!important;align-items:stretch!important}
 .filter-bar>* ,.directory-tools>*,.hs-search-row>*{min-width:0!important;width:100%!important;max-width:100%!important}
 .search-inline{grid-column:1/-1;width:100%!important;min-width:0!important}.search-inline input{min-width:0!important;width:100%!important}
 .status-flow,.pipeline-board,.rail-pipeline,.reporting-steps,.dossier-nav,.trader-metric-strip,.customs-group-list,.checklist-grid{max-width:100%!important;overflow-x:auto!important;overscroll-behavior-inline:contain;scrollbar-width:thin}
 .command-kpi-grid,.grid.cards{grid-template-columns:repeat(2,minmax(0,1fr))!important}.command-kpi-grid>* ,.grid.cards>*{min-width:0!important}
 .card{min-height:102px!important;padding:14px!important}.card b{font-size:24px!important}.card .icon{width:44px!important;height:44px!important;border-radius:14px!important}
 .panel-actions,.directory-head{flex-wrap:wrap!important}.directory-head{align-items:stretch!important}.directory-head>div{min-width:0!important;max-width:100%}
 .rail-commercial-page .toolbar,.rail-intake-page .toolbar{width:100%!important;max-width:100%!important;overflow-x:auto!important}
}
@media(max-width:520px){.filter-bar,.filter-bar.refined,.directory-tools,.hs-search-row{grid-template-columns:1fr!important}.command-kpi-grid,.grid.cards{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
