:root{
  --ink:#0f172a;--muted:#64748b;--line:#e2e8f0;--line-soft:#f1f5f9;--paper:#ffffff;--canvas:#f8fafc;
  --navy:#0f172a;--navy-2:#1e293b;--blue:#1d4ed8;--blue-soft:#eff6ff;--orange:#ea580c;--orange-soft:#fff7ed;
  --green:#15803d;--green-soft:#f0fdf4;--red:#b91c1c;--red-soft:#fef2f2;--amber:#d97706;--amber-soft:#fffbeb;
  --shadow-sm:0 1px 2px rgba(15,23,42,.05);--shadow-md:0 12px 30px rgba(15,23,42,.08);--shadow-lg:0 24px 70px rgba(15,23,42,.18)
}
*{scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent}
body{font-family:Kanit,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--canvas);color:var(--ink)}
button,input,select,textarea{font-family:inherit}.min-w-0{min-width:0}.block{display:block}.hidden{display:none}.w-full{width:100%}

/* Production shell */
.stock-layout{min-height:100vh;display:grid;grid-template-columns:300px minmax(0,1fr);background:var(--canvas)}
.stock-sidebar{position:sticky;top:0;height:100vh;overflow:auto;background:var(--paper);border-right:1px solid var(--line);padding:18px;z-index:45}
.stock-main{min-width:0;display:flex;flex-direction:column;min-height:100vh}
.stock-topbar{height:78px;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 28px;position:sticky;top:0;z-index:35;backdrop-filter:blur(12px)}
.stock-page-shell{padding:28px;max-width:1600px;width:100%;margin:0 auto}.stock-page-card{background:var(--paper);border:1px solid var(--line);border-radius:26px;box-shadow:var(--shadow-sm);padding:28px;min-height:calc(100vh - 140px)}
.stock-breadcrumb{font-size:12px;font-weight:700;color:var(--muted);letter-spacing:.02em}.stock-page-title{font-size:28px;line-height:1.1;font-weight:800;margin:4px 0 0;color:var(--ink)}
.stock-topbar-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.stock-mobile-button{display:none}.stock-overlay{display:none}

/* Brand and navigation */
.stock-brand{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--line);border-radius:22px;background:var(--paper);box-shadow:var(--shadow-sm)}
.stock-brand-mark{width:46px;height:46px;border-radius:16px;background:var(--navy);color:#fff;display:grid;place-items:center;font-weight:900;font-size:20px;box-shadow:var(--shadow-sm)}.stock-brand-mark.large{width:56px;height:56px;border-radius:20px;font-size:24px}
.stock-brand-title{font-weight:900;font-size:18px;letter-spacing:-.02em;color:var(--ink);line-height:1}.stock-brand-subtitle{font-size:12px;font-weight:600;color:var(--muted);margin-top:4px}
.stock-scope-card{margin-top:14px;border:1px solid var(--line);border-radius:20px;padding:14px;background:#f8fafc}.status-dot{width:9px;height:9px;border-radius:999px;display:inline-block}.status-dot-green{background:#16a34a}.status-dot-orange{background:#ea580c}.status-dot-red{background:#dc2626}
.stock-nav{margin-top:18px}.stock-nav-group{margin-bottom:18px}.stock-nav-group-title{font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:#94a3b8;margin:0 0 8px 12px}.stock-nav-link{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:16px;font-weight:700;color:#475569;transition:background .15s ease,color .15s ease,border .15s ease;border:1px solid transparent}.stock-nav-link:hover{background:#f8fafc;border-color:var(--line);color:var(--ink)}.stock-nav-active{background:var(--blue-soft);border-color:#bfdbfe;color:var(--blue)}.stock-nav-icon{width:30px;height:30px;border-radius:12px;display:grid;place-items:center;background:#f1f5f9;color:#334155;font-weight:900;font-size:12px;flex:0 0 auto}.stock-nav-active .stock-nav-icon{background:#dbeafe;color:var(--blue)}.stock-nav-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.stock-user-chip{display:flex;align-items:center;gap:10px;border:1px solid var(--line);background:var(--paper);border-radius:18px;padding:8px 12px;box-shadow:var(--shadow-sm)}.stock-avatar{width:36px;height:36px;border-radius:14px;background:var(--blue-soft);color:var(--blue);display:grid;place-items:center;font-weight:900}
.icon-button{width:42px;height:42px;border:1px solid var(--line);background:var(--paper);border-radius:15px;display:grid;place-items:center;color:#334155;box-shadow:var(--shadow-sm);transition:background .15s ease,border .15s ease}.icon-button:hover{background:#f8fafc;border-color:#cbd5e1}
/* Core responsive rule: the mobile menu button must be hidden on desktop, even when it also has .icon-button. */
.icon-button.stock-mobile-button{display:none}


/* Auth */
.auth-layout{min-height:100vh;display:grid;grid-template-columns:1.08fr .92fr;background:var(--canvas)}.auth-panel{padding:48px}.auth-panel-info{background:var(--paper);border-right:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between}.auth-brand-row{display:flex;align-items:center;gap:12px}.auth-copy{max-width:620px}.auth-copy h1{font-size:46px;line-height:1.05;margin:18px 0 0;font-weight:900;letter-spacing:-.04em}.auth-copy p{font-size:18px;line-height:1.7;color:#475569;margin:18px 0 0}.phase-badge{display:inline-flex;align-items:center;border-radius:999px;background:var(--orange-soft);color:var(--orange);border:1px solid #fed7aa;padding:7px 12px;font-size:12px;font-weight:900}.auth-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:26px}.auth-feature-card{border:1px solid var(--line);border-radius:20px;padding:16px;background:#f8fafc}.auth-feature-card strong{display:block;font-size:18px}.auth-feature-card span{font-size:13px;color:var(--muted)}.auth-footer-note{font-size:13px;color:var(--muted);font-weight:700}.auth-panel-form{display:flex;align-items:center;justify-content:center}.login-card{width:100%;max-width:460px;background:var(--paper);border:1px solid var(--line);border-radius:30px;box-shadow:var(--shadow-md);padding:34px}.login-hint{border:1px solid var(--line);background:#f8fafc;border-radius:18px;padding:12px 14px;color:#64748b;font-size:14px}

/* Core components */
.card,.soft-card,.panel,.summary-box,.kpi,.module-card{background:var(--paper);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow-sm)}.card{padding:0}.soft-card,.panel,.summary-box,.kpi,.module-card{padding:20px}.panel.accent{background:var(--paper)}.section-title{font-size:18px;font-weight:900;color:var(--ink)}.subtext,.muted{color:var(--muted)}
.button,.btn,.btn-core{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:14px;padding:10px 16px;font-size:14px;font-weight:800;border:1px solid transparent;transition:background .15s ease,border .15s ease,color .15s ease,box-shadow .15s ease;white-space:nowrap}.button-primary,.btn.primary,.btn-primary{background:var(--blue);border-color:var(--blue);color:#fff}.button-primary:hover,.btn.primary:hover,.btn-primary:hover{background:#1e40af}.button-secondary,.btn.ghost,.btn-secondary,.btn{background:#fff;border-color:#cbd5e1;color:#334155}.button-secondary:hover,.btn.ghost:hover,.btn-secondary:hover,.btn:hover{background:#f8fafc}.button-danger,.btn.danger,.btn-danger{background:#dc2626;border-color:#dc2626;color:#fff}.button-danger:hover,.btn.danger:hover,.btn-danger:hover{background:#b91c1c}.button-warning,.btn.warn,.btn-warning{background:var(--orange);border-color:var(--orange);color:#fff}.button-success,.btn.success,.btn-success{background:#16a34a;border-color:#16a34a;color:#fff}.button-sm,.btn.small,.btn-sm{padding:7px 10px;border-radius:12px;font-size:12px}.btn.full{width:100%}
.field label,.form-label{display:block;margin-bottom:7px;font-weight:800;color:#334155;font-size:14px}.field small{display:block;color:#64748b;margin-top:5px}.input,.select,.form-control,textarea{width:100%;border:1px solid #cbd5e1;border-radius:16px;background:#fff;padding:12px 14px;color:#0f172a;outline:none;font-weight:500}.input:focus,.select:focus,.form-control:focus,textarea:focus{border-color:#93c5fd;box-shadow:0 0 0 4px #dbeafe}.form-grid{display:grid;grid-template-columns:repeat(1,minmax(0,1fr));gap:16px}.form-grid.two{grid-template-columns:repeat(1,minmax(0,1fr))}.form-grid .full{grid-column:1/-1}.form-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:24px}
.toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:22px}.toolbar .filters{display:flex;gap:10px;flex-wrap:wrap}.action-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.table-wrap,.table-container{overflow:auto;border:1px solid var(--line);border-radius:22px;background:var(--paper)}.table-wrap table,.data-table{min-width:100%;border-collapse:collapse}.table-wrap th,.data-table th{background:#f8fafc;color:#64748b;font-size:12px;text-transform:uppercase;letter-spacing:.04em;text-align:left;padding:13px 16px;border-bottom:1px solid var(--line)}.table-wrap td,.data-table td{padding:14px 16px;border-bottom:1px solid #f1f5f9;vertical-align:middle}.table-wrap tr:hover td,.data-table tr:hover td{background:#f8fafc}.empty,.empty-state{text-align:center;color:#64748b;padding:46px 16px}.tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.tab{display:inline-flex;border-radius:999px;border:1px solid var(--line);background:#fff;padding:8px 14px;font-weight:800;color:#475569}.tab.active{background:var(--blue-soft);border-color:#bfdbfe;color:var(--blue)}
.badge,.badge-soft,.pill{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:900}.badge-soft,.pill,.badge-gray{background:#f1f5f9;color:#475569}.badge-blue{background:#dbeafe;color:#1d4ed8}.badge-green{background:#dcfce7;color:#15803d}.badge-orange{background:#ffedd5;color:#c2410c}.badge-red{background:#fee2e2;color:#b91c1c}.badge-purple{background:#f3e8ff;color:#7e22ce}.badge-cyan{background:#cffafe;color:#0e7490}.badge-dark{background:#1e293b;color:#fff}
.notice,.alert-core{border-radius:18px;border:1px solid var(--line);padding:14px 16px;background:#fff;margin-bottom:16px;font-weight:700}.notice.success,.alert-success{background:var(--green-soft);border-color:#bbf7d0;color:#166534}.notice.danger,.alert-error{background:var(--red-soft);border-color:#fecaca;color:#991b1b}.alert-warning{background:var(--amber-soft);border-color:#fde68a;color:#92400e}.alert-info{background:var(--blue-soft);border-color:#bfdbfe;color:#1e40af}
.detail-grid{display:grid;grid-template-columns:1fr;gap:16px}.info-list{display:grid;gap:10px}.info-row{display:flex;justify-content:space-between;gap:16px;border-bottom:1px dashed var(--line);padding-bottom:10px}.info-row span{color:#64748b}.info-row strong{text-align:right}.placeholder-panel,.error-box{text-align:center;padding:64px 16px}.module-grid,.summary-row,.split-grid,.kpi-grid{display:grid;grid-template-columns:repeat(1,minmax(0,1fr));gap:16px}.kpi span,.summary-box span{color:#64748b;font-weight:700}.kpi strong,.summary-box strong{display:block;font-size:28px;color:var(--blue)}.kpi.warn strong{color:var(--orange)}.perm-table th{font-size:11px}.perm-check{text-align:center}.perm-check input{width:18px;height:18px}

/* Toast / Alert / Confirm core */
.toast-container{position:fixed;left:50%;right:auto;top:12px;transform:translateX(-50%);z-index:10050;display:grid;gap:10px;width:min(440px,calc(100vw - 24px));max-width:440px;pointer-events:none}.toast-container .toast-item{pointer-events:auto}.toast-item{background:#fff;border:1px solid var(--line);border-left:5px solid var(--blue);border-radius:20px;box-shadow:var(--shadow-lg);padding:15px;display:flex;gap:12px;align-items:flex-start;transform:translateY(0);transition:opacity .18s ease,transform .18s ease}.toast-body{flex:1;min-width:0}.toast-title{font-weight:800;color:#0f172a}.toast-message{margin-top:4px;font-size:13px;line-height:1.45;color:#475569}.toast-success{border-left-color:#16a34a}.toast-error{border-left-color:#dc2626}.toast-warning{border-left-color:#ea580c}.toast-info{border-left-color:#2563eb}.modal-lock{overflow:hidden}.confirm-backdrop{position:fixed;inset:0;background:rgba(15,23,42,.66);z-index:1300;display:grid;place-items:center;padding:18px}.confirm-card{width:min(470px,100%);background:#fff;border-radius:28px;border:1px solid var(--line);box-shadow:var(--shadow-lg);padding:22px}.confirm-icon{width:50px;height:50px;border-radius:18px;background:var(--blue-soft);color:var(--blue);display:grid;place-items:center;font-weight:900;flex:0 0 auto}.confirm-icon.success{background:var(--green-soft);color:var(--green)}.confirm-icon.error{background:var(--red-soft);color:var(--red)}.confirm-icon.warning{background:var(--orange-soft);color:var(--orange)}
.confirm-card-row{display:flex;gap:16px;align-items:flex-start}.confirm-card-copy{flex:1;min-width:0}.confirm-card-title{margin:0;font-size:1.25rem;font-weight:800;color:#0f172a}.confirm-card-message{margin:8px 0 0;font-size:13px;line-height:1.55;color:#64748b}.confirm-card-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:24px}

/* Responsive */
@media(min-width:768px){.form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-grid{grid-template-columns:1.2fr .8fr}.module-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.summary-row{grid-template-columns:repeat(4,minmax(0,1fr))}.split-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1024px){.kpi-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}
@media(max-width:1100px){.stock-layout{grid-template-columns:1fr}.stock-sidebar{position:fixed;left:0;top:0;height:100vh;width:300px;transform:translateX(-105%);transition:transform .2s ease;box-shadow:var(--shadow-lg)}body.sidebar-open .stock-sidebar{transform:translateX(0)}.stock-overlay{display:none;position:fixed;inset:0;background:rgba(15,23,42,.55);z-index:40}body.sidebar-open .stock-overlay{display:block}.icon-button.stock-mobile-button{display:grid}.stock-topbar{padding:0 18px}.stock-page-shell{padding:18px}.stock-page-card{padding:20px;border-radius:22px}.stock-topbar-actions .button-secondary{display:none}.auth-layout{grid-template-columns:1fr}.auth-panel-info{display:none}.auth-panel{padding:24px}.auth-panel-form{min-height:100vh}.login-card{padding:26px}}
@media(max-width:640px){.stock-topbar{height:auto;min-height:74px;padding:14px}.stock-page-title{font-size:23px}.stock-user-chip{display:none}.toolbar{align-items:stretch}.toolbar .filters,.toolbar form,.action-row{width:100%}.toolbar .filters>*{width:100%}.toast-container{left:50%;right:auto;top:10px;bottom:auto;transform:translateX(-50%);width:calc(100vw - 20px);max-width:440px}.auth-copy h1{font-size:34px}.login-card{border-radius:24px}.table-wrap th,.table-wrap td,.data-table th,.data-table td{padding:12px}.auth-feature-grid{grid-template-columns:1fr}}


/* Core Enhancement: Select/Table integration */
select.select, select.form-control{min-height:44px;border:1px solid var(--line);border-radius:16px;background:#fff;color:var(--ink);font-weight:700;padding:0 12px;box-shadow:var(--shadow-sm);width:100%}
.core-table-shell table{width:100%}
.core-table-shell .table-wrap,.core-table-shell .table-container{overflow:visible}
.brand-favicon-preview{width:64px;height:64px;border-radius:18px;border:1px solid var(--line);background:#fff;display:grid;place-items:center;box-shadow:var(--shadow-sm)}

/* Phase 2.8 Core UX Production Polish */
.filter-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:end;padding:14px;border:1px solid var(--line);border-radius:20px;background:#f8fafc;margin:14px 0}.filter-bar>*{min-width:180px}.filter-bar .button{min-width:auto}.field-error{margin-top:6px;color:#b91c1c;font-size:12px;font-weight:800}.is-invalid,.input.is-invalid,.select.is-invalid,.form-control.is-invalid{border-color:#fecaca!important;background:#fff7f7}.is-invalid:focus{box-shadow:0 0 0 4px #fee2e2!important}.empty-state-pro{border:1px dashed #cbd5e1;border-radius:24px;background:#f8fafc;padding:34px;text-align:center}.empty-state-pro h3{font-size:18px;font-weight:900;margin:10px 0 0;color:#0f172a}.empty-state-pro p{margin:8px auto 0;max-width:560px;color:#64748b}.empty-state-icon{width:54px;height:54px;border-radius:18px;background:#fff;border:1px solid var(--line);display:grid;place-items:center;margin:0 auto;color:#64748b;font-size:22px;font-weight:900}.skeleton-stack{display:grid;gap:12px}.skeleton-line{height:18px;border-radius:999px;background:#e2e8f0;position:relative;overflow:hidden}.skeleton-line:nth-child(2n){width:80%}.skeleton-line:nth-child(3n){width:58%}.skeleton-line:after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.65),transparent);animation:skeleton-shimmer 1.4s infinite}@keyframes skeleton-shimmer{100%{transform:translateX(100%)}}
.action-dropdown{position:relative;display:inline-flex}.action-dropdown-menu{display:none;position:absolute;right:0;top:calc(100% + 8px);min-width:210px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-lg);padding:8px;z-index:55}.action-dropdown.open .action-dropdown-menu{display:block}.action-dropdown-item{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:12px;color:#334155;font-weight:800;text-decoration:none}.action-dropdown-item:hover{background:#f8fafc}.action-dropdown-item.danger{color:#b91c1c}.permission-grid{display:flex;flex-wrap:wrap;gap:8px}.ux-check-list{display:grid;gap:10px}.ux-check-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:16px;background:#fff}.drawer-panel{position:fixed;right:0;top:0;height:100dvh;height:100vh;width:min(460px,100%);background:#fff;box-shadow:var(--shadow-lg);z-index:1300;transform:translateX(100%);transition:transform .2s ease;border-left:1px solid var(--line);padding:22px}.drawer-panel.open{transform:translateX(0)}.stepper{display:flex;gap:8px;flex-wrap:wrap}.stepper-item{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:999px;padding:8px 12px;background:#fff;font-size:13px;font-weight:900;color:#64748b}.stepper-item.active{border-color:#bfdbfe;background:#eff6ff;color:#1d4ed8}.stepper-number{width:22px;height:22px;border-radius:999px;background:#f1f5f9;display:grid;place-items:center;font-size:12px}.stepper-item.active .stepper-number{background:#1d4ed8;color:#fff}.export-button{border-color:#bbf7d0!important;color:#166534!important;background:#f0fdf4!important}.export-button:hover{background:#dcfce7!important}
@media(max-width:1100px){.filter-bar{display:grid;grid-template-columns:1fr}.filter-bar>*{min-width:0!important;width:100%!important}.action-dropdown,.action-dropdown .button{width:100%}.action-dropdown-menu{position:fixed;left:12px;right:12px;width:auto;min-width:0;z-index:700}.permission-search-wrap,.receipt-select-search,.numbering-policy-search,.core-table-search-wrap{min-width:0!important;width:100%!important;max-width:100%!important}.stock-entry-table td:has(.js-material-pick){min-width:220px}.drawer-panel{width:100%!important;max-width:100%!important;padding:calc(16px + env(safe-area-inset-top,0px)) 16px calc(16px + env(safe-area-inset-bottom,0px))!important;z-index:1300!important}.core-table-pagination,.material-pagination,.language-pagination{display:flex!important;flex-wrap:wrap!important;gap:8px!important;justify-content:center!important}}@media(max-width:640px){.filter-bar{display:grid}.filter-bar>*{min-width:0;width:100%}.action-dropdown,.action-dropdown .button{width:100%}.action-dropdown-menu{left:0;right:auto;width:100%}}
/* Phase 3.1 PR/PO form resilience */
.stock-entry-table{width:max-content;min-width:100%;table-layout:auto}.stock-entry-table th,.stock-entry-table td{white-space:nowrap}.stock-entry-table td input,.stock-entry-table td textarea{white-space:normal}.stock-entry-table .core-select-value{max-width:520px}.table-wrap:has(.stock-entry-table){overflow:auto;overflow-y:visible;padding-bottom:8px}.alert-core.alert-error{border-color:#fecaca;background:#fef2f2;color:#991b1b}

/* Phase 3.2 Material autofill preview in PR/PO item tables */
.material-autofill-meta{
  margin-top:8px;
  max-width:520px;
  white-space:normal;
  color:#475569;
  font-size:12px;
  font-weight:700;
  line-height:1.45;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:14px;
  padding:8px 10px;
}
.stock-entry-table td:first-child{vertical-align:top}
.stock-entry-table td .input,
.stock-entry-table td .select{min-width:120px}
.stock-entry-table td:has(.js-material-pick){min-width:360px}
@media(max-width:640px){.stock-entry-table td:has(.js-material-pick){min-width:300px}.material-autofill-meta{max-width:300px}}

/* Phase 3.5 v2 Dashboard production polish */
.dashboard-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px;border:1px solid var(--line);border-radius:28px;background:#fff;box-shadow:var(--shadow-sm);margin-bottom:18px}
.dashboard-eyebrow{display:inline-flex;align-items:center;border:1px solid #bfdbfe;background:#eff6ff;color:#1d4ed8;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:900;margin-bottom:10px}
.dashboard-hero h1{margin:0;font-size:30px;line-height:1.15;font-weight:900;color:#0f172a}.dashboard-hero p{margin:8px 0 0;color:#64748b;font-weight:700}.dashboard-hero-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}
.dashboard-kpi-grid{display:grid;grid-template-columns:repeat(1,minmax(0,1fr));gap:14px}.dashboard-kpi-card{position:relative;display:block;background:#fff;border:1px solid var(--line);border-radius:24px;padding:18px 18px 17px;text-decoration:none;box-shadow:var(--shadow-sm);overflow:hidden;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.dashboard-kpi-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);border-color:#cbd5e1}.dashboard-kpi-card:after{content:"";position:absolute;left:0;top:0;width:5px;height:100%;background:#2563eb}.dashboard-kpi-orange:after{background:#ea580c}.dashboard-kpi-green:after{background:#16a34a}.dashboard-kpi-icon{width:44px;height:44px;border-radius:16px;display:grid;place-items:center;background:#eff6ff;color:#1d4ed8;font-weight:900;margin-bottom:12px}.dashboard-kpi-orange .dashboard-kpi-icon{background:#fff7ed;color:#c2410c}.dashboard-kpi-green .dashboard-kpi-icon{background:#f0fdf4;color:#15803d}.dashboard-kpi-label{display:block;color:#64748b;font-size:13px;font-weight:900}.dashboard-kpi-card strong{display:block;margin-top:6px;font-size:32px;line-height:1;color:#0f172a}.dashboard-kpi-card small{display:block;margin-top:9px;color:#64748b;font-weight:700}
.dashboard-mini-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}.dashboard-mini-card{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--line);border-radius:20px;background:#fff;padding:14px 16px;text-decoration:none;box-shadow:var(--shadow-sm)}.dashboard-mini-card span{font-size:13px;font-weight:900;color:#64748b}.dashboard-mini-card strong{font-size:24px;color:#0f172a}.dashboard-mini-card:hover{border-color:#bfdbfe;background:#f8fafc}
.dashboard-value-grid{display:grid;grid-template-columns:1fr;gap:14px;margin-top:14px}.dashboard-value-card{border:1px solid var(--line);border-radius:24px;background:#fff;padding:20px;box-shadow:var(--shadow-sm);text-decoration:none;color:inherit}.dashboard-value-card span{display:block;color:#64748b;font-weight:900;font-size:13px}.dashboard-value-card strong{display:block;margin-top:7px;font-size:28px;line-height:1.1;color:#0f172a}.dashboard-value-card small{display:block;margin-top:8px;color:#64748b;font-weight:700}.dashboard-value-link:hover{border-color:#bfdbfe;background:#f8fafc}
.dashboard-main-grid{display:grid;grid-template-columns:1fr;gap:16px;margin-top:16px}.dashboard-panel{background:#fff;border:1px solid var(--line);border-radius:26px;padding:20px;box-shadow:var(--shadow-sm);min-width:0}.dashboard-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:16px}.dashboard-panel-head h2{margin:0;font-size:18px;font-weight:900;color:#0f172a}.dashboard-panel-head p{margin:4px 0 0;color:#64748b;font-weight:700;font-size:13px}.dashboard-task-grid{display:grid;grid-template-columns:1fr;gap:12px}.dashboard-task-card{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #bfdbfe;background:#eff6ff;color:#1d4ed8;border-radius:20px;padding:16px;text-decoration:none}.dashboard-task-card span{font-weight:900}.dashboard-task-card strong{font-size:26px;line-height:1}.dashboard-task-orange{border-color:#fed7aa;background:#fff7ed;color:#c2410c}.dashboard-task-green{border-color:#bbf7d0;background:#f0fdf4;color:#15803d}.dashboard-task-red{border-color:#fecaca;background:#fef2f2;color:#b91c1c}.dashboard-task-card:hover{filter:brightness(.985);box-shadow:var(--shadow-sm)}
.dashboard-action-list{display:grid;gap:10px}.dashboard-action-item{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:18px;padding:12px;text-decoration:none;background:#fff}.dashboard-action-item:hover{background:#f8fafc;border-color:#bfdbfe}.dashboard-action-item>span{width:42px;height:42px;border-radius:15px;background:#eff6ff;color:#1d4ed8;display:grid;place-items:center;font-size:12px;font-weight:900;flex:0 0 auto}.dashboard-action-item strong{font-size:14px;color:#0f172a}.dashboard-action-item small{display:block;margin-top:2px;color:#64748b;font-size:12px;font-weight:700}
.dashboard-status-list{display:grid;gap:10px}.dashboard-status-item{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--line);border-radius:16px;padding:12px;text-decoration:none;background:#fff}.dashboard-status-item:hover{background:#f8fafc}.dashboard-status-item span:last-child{font-size:20px;font-weight:900;color:#0f172a}
.dashboard-bars{display:grid;gap:12px}.dashboard-bar-row{display:grid;grid-template-columns:75px 1fr auto;gap:12px;align-items:center}.dashboard-bar-month,.dashboard-bar-count{font-size:12px;font-weight:900;color:#64748b}.dashboard-bar-track{position:relative;height:18px;border-radius:999px;background:#f1f5f9;overflow:hidden}.dashboard-bar-track i,.dashboard-bar-track b{position:absolute;top:0;height:100%;min-width:4px}.dashboard-bar-track i{left:0;background:#2563eb}.dashboard-bar-track b{right:0;background:#ea580c}.dashboard-chart-legend{display:flex;gap:14px;margin-top:14px;color:#64748b;font-size:12px;font-weight:900}.dashboard-chart-legend span{display:inline-flex;align-items:center;gap:6px}.dashboard-chart-legend i{width:10px;height:10px;border-radius:999px;display:inline-block}.legend-pr{background:#2563eb}.legend-po{background:#ea580c}
.dashboard-list-table{display:grid;gap:8px}.dashboard-list-row{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:16px;padding:12px;text-decoration:none;background:#fff;color:inherit}.dashboard-list-row:hover{background:#f8fafc}.dashboard-list-row strong{font-size:13px;color:#0f172a}.dashboard-list-row small{display:block;margin-top:2px;color:#64748b;font-weight:700}.dashboard-list-row>span{font-size:13px;font-weight:900;color:#475569}.dashboard-full-panel{margin-top:16px}.dashboard-activity-list{display:grid;gap:10px}.dashboard-activity-item{display:grid;grid-template-columns:auto 1fr auto auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:16px;padding:12px;background:#fff}.dashboard-activity-dot{width:10px;height:10px;border-radius:999px;background:#2563eb}.dashboard-activity-item strong{font-size:13px;color:#0f172a}.dashboard-activity-item small{display:inline;margin-left:6px;color:#64748b}.dashboard-activity-item span:not(.dashboard-activity-dot),.dashboard-activity-item time{font-size:12px;color:#64748b;font-weight:800}.field-hint{display:block;margin-top:6px;color:#64748b;font-size:12px;font-weight:700;line-height:1.45}
@media(min-width:768px){.dashboard-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-mini-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.dashboard-value-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-task-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-equal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1280px){.dashboard-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.dashboard-main-grid{grid-template-columns:2fr 1fr}.dashboard-equal-grid{grid-template-columns:1fr 1fr}.dashboard-panel-wide{grid-column:auto}}
@media(max-width:780px){.dashboard-hero{display:grid}.dashboard-hero h1{font-size:25px}.dashboard-hero-actions{justify-content:flex-start}.dashboard-bar-row{grid-template-columns:1fr}.dashboard-list-row{grid-template-columns:1fr}.dashboard-activity-item{grid-template-columns:auto 1fr}.dashboard-activity-item span:not(.dashboard-activity-dot),.dashboard-activity-item time{grid-column:2}.dashboard-panel-head{display:grid}.dashboard-panel-head .btn{justify-self:start}}
/* Phase 3.6 PR/PO production completion */
.file-list{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}.file-list li{display:flex;align-items:center;justify-content:space-between;gap:.75rem;border:1px solid var(--stock-border,#e5e7eb);border-radius:14px;padding:.65rem .8rem;background:#fff}.file-list a{font-weight:600;color:#0f172a;text-decoration:none}.file-list a:hover{text-decoration:underline}.file-list span{font-size:.75rem;color:#64748b}.hover-card{transition:transform .16s ease,box-shadow .16s ease}.hover-card:hover{transform:translateY(-1px);box-shadow:0 12px 24px rgba(15,23,42,.08)}

/* Phase 3.7 notification and document hardening */
.stock-notification{position:relative;display:inline-flex}.stock-notification-button{position:relative}.stock-notification-badge{position:absolute;top:-5px;right:-5px;min-width:18px;height:18px;border-radius:999px;background:#dc2626;color:#fff;font-size:11px;line-height:18px;text-align:center;font-weight:700}.stock-notification-panel{display:none;position:absolute;right:0;top:calc(100% + 10px);width:min(360px,calc(100vw - 24px));background:#fff;border:1px solid #e2e8f0;border-radius:18px;box-shadow:0 18px 60px rgba(15,23,42,.18);z-index:90;overflow:hidden}.stock-notification.open .stock-notification-panel{display:block}.stock-notification-head{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border-bottom:1px solid #e2e8f0}.stock-notification-head a{font-size:12px;font-weight:700;color:#1d4ed8}.stock-notification-item{padding:12px 16px;border-bottom:1px solid #f1f5f9}.stock-notification-item:hover{background:#f8fafc}.stock-notification-empty{padding:20px;text-align:center;color:#64748b;font-size:14px}.document-section-muted{opacity:.78}.file-list-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.file-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #eef2f7}.file-list li:last-child{border-bottom:0}.permission-strip{display:flex;gap:8px;flex-wrap:wrap}.permission-chip{font-size:11px;border:1px solid #dbeafe;background:#eff6ff;color:#1d4ed8;border-radius:999px;padding:4px 9px;font-weight:700}

/* Phase 3.8 compact document lines / partial PR-to-PO support */
.document-lines-wrap {
    overflow: visible;
}
.stock-entry-table-compact th,
.stock-entry-table-compact td {
    padding: 0.55rem 0.5rem;
    vertical-align: top;
}
.stock-entry-table-compact .input,
.stock-entry-table-compact .select,
.stock-entry-table-compact .core-select-trigger {
    min-height: 2.35rem;
    font-size: 0.875rem;
}
.stock-entry-table-compact .line-note {
    margin-top: 0.25rem;
    font-size: 0.72rem;
    line-height: 1.25;
    color: #64748b;
    white-space: nowrap;
}
.stock-entry-table-compact .material-autofill-meta {
    font-size: 0.72rem;
    line-height: 1.25;
}
@media (max-width: 900px) {
    .stock-entry-table-compact .line-note {
        white-space: normal;
    }
}

/* Phase 3.9 Core UX tightening: compact forms/lists without losing readability */
.stock-page-shell{padding:20px}.stock-page-card{padding:22px;border-radius:22px}.stock-topbar{height:68px;padding:0 22px}.stock-page-title{font-size:24px}.stock-breadcrumb{font-size:11px}.section-title{font-size:16px}.soft-card,.panel,.summary-box,.kpi,.module-card{padding:16px;border-radius:18px}.form-grid{gap:12px}.form-grid.two{gap:12px}.grid.gap-4{gap:12px}.mb-5{margin-bottom:1rem}.mb-4{margin-bottom:.875rem}.form-label,.field label{font-size:13px;margin-bottom:5px}.input,.select,.form-control,textarea{border-radius:13px;padding:9px 11px;font-size:13px;min-height:40px}.input-compact,.select-compact{min-height:38px;padding:8px 10px;font-size:13px}.button,.btn,.btn-core{border-radius:12px;padding:8px 12px;font-size:13px}.button-sm,.btn.small,.btn-sm{padding:6px 9px;border-radius:10px;font-size:12px}.filter-bar{gap:8px;padding:10px;border-radius:18px}.filter-bar-compact .input,.filter-bar-compact .select{max-width:280px}.table-wrap,.table-container{border-radius:18px}.table-wrap th,.data-table th{padding:10px 12px;font-size:11px}.table-wrap td,.data-table td{padding:10px 12px;font-size:13px}.stock-entry-table th{padding:9px 10px}.stock-entry-table td{padding:8px 10px}.stock-entry-table .input,.stock-entry-table .select,.stock-entry-table textarea{font-size:12.5px;min-height:36px;padding:7px 9px;border-radius:11px}.stock-entry-table textarea{min-height:36px}.action-row{gap:6px}.core-table-toolbar{gap:8px;padding:10px}.core-table-search{min-height:36px}.core-select-display{min-height:36px;border-radius:11px;font-size:13px}.material-meta{font-size:11px;line-height:1.35;margin-top:4px}.line-table small,.table-wrap small{font-size:11px;color:#64748b}.cancelled-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:18px 0 10px;padding:12px 14px;border:1px dashed #cbd5e1;border-radius:16px;background:#f8fafc}.cancelled-table-wrap{opacity:.92;background:#fff}.row-cancelled td{background:#f8fafc;color:#64748b}.row-cancelled td:first-child{border-left:4px solid #334155}.row-cancelled:hover td{background:#f1f5f9!important}@media (max-width:1100px){.stock-page-shell{padding:14px}.stock-page-card{padding:16px;border-radius:18px}.stock-topbar{height:auto;min-height:64px;padding:10px 14px}.stock-page-title{font-size:20px}.filter-bar-compact .input,.filter-bar-compact .select{max-width:100%;width:100%}.filter-bar{align-items:stretch}.filter-bar>*{width:100%}.stock-entry-table{min-width:980px}}

/* Phase 3.9.1: simplified attachment UI + smaller buttons */
.button,.btn,.btn-core{padding:6px 10px;border-radius:10px;font-size:12.5px;gap:6px;line-height:1.25}
.button-sm,.btn.small,.btn-sm{padding:5px 8px;border-radius:9px;font-size:11.5px;line-height:1.2}
.button-xs,.btn-xs{padding:4px 7px;border-radius:8px;font-size:11px;line-height:1.1;font-weight:800}
.action-row{gap:5px}.action-row .button{min-height:30px}
.attachment-empty{padding:12px 14px;border-radius:12px;font-size:12px}
.attachment-list-simple{list-style:none;margin:0 0 1rem 0;padding:0;border:1px solid #e2e8f0;border-radius:12px;background:#fff;overflow:hidden}
.attachment-list-simple li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border-bottom:1px solid #eef2f7}
.attachment-list-simple li:last-child{border-bottom:0}
.attachment-name{min-width:0;display:flex;flex-direction:column;gap:2px}
.attachment-name span{font-size:12.5px;font-weight:800;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:260px}
.attachment-name small{font-size:10.5px;color:#64748b}
.attachment-actions{display:flex;align-items:center;gap:5px;flex-shrink:0}
.attachment-actions .inline-form{display:inline-flex;margin:0}
.file-list{border:0;background:transparent}.file-list li{padding:7px 0}.file-list-actions{gap:5px}
@media(max-width:640px){.attachment-list-simple li{align-items:flex-start;flex-direction:column}.attachment-actions{width:100%;justify-content:flex-start}.attachment-name span{max-width:100%}.action-row .button{width:auto}}

/* Phase 3.9.2: compact production file upload UI */
.stock-upload-card{
    border:1px solid #dbe4ef;
    background:#fff;
    border-radius:16px;
    padding:12px;
    box-shadow:0 1px 2px rgba(15,23,42,.04);
}
.stock-upload-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
    margin-bottom:9px;
}
.stock-upload-help{
    margin:0;
    color:#64748b;
    font-size:12px;
    line-height:1.45;
    font-weight:600;
}
.stock-upload-count{
    flex:0 0 auto;
    display:inline-flex;
    align-items:center;
    min-height:24px;
    padding:4px 8px;
    border-radius:999px;
    background:#f8fafc;
    border:1px solid #e2e8f0;
    color:#475569;
    font-size:11px;
    font-weight:900;
}
.stock-file-input-native{
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    padding:0!important;
    margin:-1px!important;
    overflow:hidden!important;
    clip:rect(0,0,0,0)!important;
    white-space:nowrap!important;
    border:0!important;
}
.stock-upload-dropzone{
    width:100%;
    min-height:48px;
    display:grid;
    grid-template-columns:auto 1fr auto;
    align-items:center;
    gap:10px;
    border:1px dashed #bfd0e5;
    background:#f8fafc;
    border-radius:13px;
    padding:9px 11px;
    color:#0f172a;
    text-align:left;
    cursor:pointer;
    transition:background .15s ease,border-color .15s ease,box-shadow .15s ease;
}
.stock-upload-dropzone:hover,
.stock-upload-card.is-dragover .stock-upload-dropzone{
    background:#eff6ff;
    border-color:#60a5fa;
    box-shadow:0 0 0 3px rgba(37,99,235,.08);
}
.stock-upload-icon{
    width:30px;
    height:30px;
    display:grid;
    place-items:center;
    border-radius:10px;
    background:#fff;
    border:1px solid #e2e8f0;
    font-size:15px;
}
.stock-upload-main{
    min-width:0;
    color:#0f172a;
    font-size:13px;
    font-weight:900;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}
.stock-upload-sub{
    color:#64748b;
    font-size:11px;
    font-weight:800;
    white-space:nowrap;
}
.stock-upload-list{
    margin-top:9px;
    display:grid;
    gap:6px;
}
.stock-upload-file{
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:center;
    gap:9px;
    border:1px solid #e2e8f0;
    background:#fff;
    border-radius:12px;
    padding:7px 8px;
}
.stock-upload-file-icon{
    width:28px;
    height:28px;
    border-radius:9px;
    background:#eef2ff;
    color:#1d4ed8;
    display:grid;
    place-items:center;
    font-size:12px;
    font-weight:900;
}
.stock-upload-file-meta{
    min-width:0;
    display:grid;
    gap:1px;
}
.stock-upload-file-name{
    min-width:0;
    color:#0f172a;
    font-size:12.5px;
    font-weight:900;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}
.stock-upload-file-size{
    color:#64748b;
    font-size:10.5px;
    font-weight:700;
}
.stock-upload-remove{
    border:1px solid #fecaca;
    background:#fff;
    color:#b91c1c;
    border-radius:9px;
    padding:4px 7px;
    font-size:11px;
    font-weight:900;
    cursor:pointer;
}
.stock-upload-remove:hover{
    background:#fef2f2;
}
@media(max-width:640px){
    .stock-upload-head{display:grid;gap:6px}
    .stock-upload-count{justify-self:start}
    .stock-upload-dropzone{grid-template-columns:auto 1fr;gap:8px}
    .stock-upload-sub{grid-column:2;white-space:normal;line-height:1.25}
}

/* Phase 3.9.6 attachment preview modal */
body.stock-modal-open{overflow:hidden;}
.stock-attachment-modal{
    position:fixed;
    inset:0;
    z-index:1200;
    display:none;
    align-items:center;
    justify-content:center;
    padding:20px;
}
.stock-attachment-modal.is-open{display:flex;}
.stock-attachment-modal-backdrop{
    position:absolute;
    inset:0;
    background:rgba(15,23,42,.58);
}
.stock-attachment-modal-panel{
    position:relative;
    z-index:1;
    width:min(1080px, calc(100vw - 28px));
    height:min(760px, calc(100vh - 28px));
    display:grid;
    grid-template-rows:auto 1fr;
    background:#fff;
    border:1px solid #e2e8f0;
    border-radius:18px;
    box-shadow:0 24px 70px rgba(15,23,42,.28);
    overflow:hidden;
}
.stock-attachment-modal-header{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    padding:12px 14px;
    border-bottom:1px solid #e2e8f0;
    background:#fff;
}
.stock-attachment-modal-kicker{
    color:#64748b;
    font-size:11px;
    font-weight:900;
    letter-spacing:.04em;
    text-transform:uppercase;
}
.stock-attachment-modal-title{
    margin:1px 0 0;
    color:#0f172a;
    font-size:15px;
    line-height:1.25;
    font-weight:900;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    max-width:min(700px, 62vw);
}
.stock-attachment-modal-actions{
    display:flex;
    align-items:center;
    gap:8px;
    flex:0 0 auto;
}
.stock-attachment-modal-close{
    width:32px;
    height:32px;
    font-size:18px;
    line-height:1;
}
.stock-attachment-modal-body{
    min-height:0;
    background:#f8fafc;
    display:grid;
    place-items:center;
    overflow:hidden;
}
.stock-preview-loading{
    color:#64748b;
    font-size:13px;
    font-weight:800;
}
.stock-preview-stage{
    width:100%;
    height:100%;
    display:grid;
    place-items:center;
    padding:14px;
    overflow:auto;
}
.stock-preview-stage-image img{
    display:block;
    max-width:100%;
    max-height:100%;
    object-fit:contain;
    border-radius:12px;
    background:#fff;
    border:1px solid #e2e8f0;
    box-shadow:0 10px 28px rgba(15,23,42,.10);
}
.stock-preview-frame{
    width:100%;
    height:100%;
    border:0;
    background:#fff;
}
.attachment-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;}
@media(max-width:640px){
    .stock-attachment-modal{
        padding:max(8px, env(safe-area-inset-top,0px)) 8px max(8px, env(safe-area-inset-bottom,0px));
        align-items:stretch;
        box-sizing:border-box;
    }
    .stock-attachment-modal-panel{
        width:100%;
        max-width:100%;
        height:min(92dvh, calc(100dvh - 16px));
        max-height:min(92dvh, calc(100dvh - 16px));
        border-radius:16px;
        display:flex;
        flex-direction:column;
        overflow:hidden;
        box-sizing:border-box;
    }
    .stock-attachment-modal-header{
        padding:10px 12px;
        align-items:flex-start;
        gap:8px;
        flex-wrap:wrap;
    }
    .stock-attachment-modal-header > .min-w-0{
        flex:1 1 0;
        min-width:0;
    }
    .stock-attachment-modal-title{
        max-width:100%;
        white-space:normal;
        overflow:visible;
        text-overflow:unset;
        font-size:14px;
        word-break:break-word;
    }
    .stock-attachment-modal-actions{gap:6px;flex:0 0 auto}
    .stock-attachment-modal-body{
        flex:1 1 auto;
        min-height:0;
        max-height:none;
        display:flex;
        align-items:center;
        justify-content:center;
        overflow:auto;
    }
    .stock-preview-stage{
        width:100%;
        height:100%;
        padding:10px;
        display:flex;
        align-items:center;
        justify-content:center;
        box-sizing:border-box;
    }
    .stock-preview-stage-image img{
        max-width:100%;
        max-height:100%;
        object-fit:contain;
    }
}

/* Phase 3.9.7: edit-form existing attachment list */
.existing-attachments-card{
  border:1px solid #e2e8f0;
  border-radius:14px;
  background:#fff;
  padding:12px;
}
.existing-attachments-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:10px;
}
.attachment-list-edit{margin-bottom:0;}
.attachment-list-edit li{padding:7px 9px;}
.attachment-list-edit .button-xs{min-height:26px;padding:4px 8px;font-size:12px;}
@media(max-width:640px){
  .existing-attachments-head{flex-direction:column;align-items:flex-start;}
}

.debug-inline {
    display: inline-flex;
    align-items: center;
    gap: .25rem;
    margin-left: .35rem;
    padding: .08rem .4rem;
    border-radius: 999px;
    border: 1px solid #cbd5e1;
    background: #f8fafc;
    color: #64748b;
    font-size: .72rem;
    font-weight: 600;
}
.debug-inline code {
    color: #475569;
    font-size: .72rem;
}

/* Phase 3.9.10 - Settings toggle UI */
.settings-shell{display:grid;gap:14px;margin-bottom:72px}
.settings-section{background:#fff;border:1px solid #dbe5f2;border-radius:18px;box-shadow:0 8px 22px rgba(15,23,42,.05);overflow:hidden}
.settings-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid #edf2f7;background:#fbfdff;box-sizing:border-box}
.settings-section-head > div{display:grid;gap:2px;min-width:0;flex:1 1 auto}
.settings-section-head h2{display:block;font-size:15px;font-weight:700;color:#0f172a;margin:0;line-height:1.3}
.settings-section-head p{display:block;font-size:12px;color:#64748b;margin:0;line-height:1.4}
.settings-count{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;align-self:center;min-width:64px;height:28px;padding:0 12px;border-radius:999px;background:#eff6ff;color:#1d4ed8;font-size:12px;font-weight:700;border:1px solid #bfdbfe;line-height:1;white-space:nowrap;position:static}
.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-top:0}
.settings-field{display:grid;gap:8px;padding:14px 16px;border-right:1px solid #edf2f7;border-bottom:1px solid #edf2f7;min-height:108px;background:#fff}
.settings-field:nth-child(2n){border-right:0}
.settings-field-main{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.settings-field-main label{font-size:13px;font-weight:700;color:#1f2937;line-height:1.35}
.settings-field-main code{font-size:11px;color:#64748b;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:8px;padding:3px 6px;white-space:nowrap}
.settings-field small{display:block;font-size:11px;color:#64748b;line-height:1.45}
.settings-input{height:38px;font-size:13px;border-radius:12px}
.settings-field.is-toggle{grid-template-columns:1fr auto;align-items:center;min-height:86px}
.settings-field.is-toggle .settings-field-main{display:block;min-width:0}
.settings-toggle-row{display:flex;align-items:center;justify-content:flex-end}
.stock-toggle{display:inline-flex;align-items:center;gap:9px;cursor:pointer;user-select:none;white-space:nowrap}
.stock-toggle input{position:absolute;opacity:0;pointer-events:none}
.stock-toggle-track{width:46px;height:26px;border-radius:999px;background:#e2e8f0;border:1px solid #cbd5e1;display:inline-flex;align-items:center;padding:2px;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease}
.stock-toggle-track span{width:20px;height:20px;border-radius:999px;background:#fff;box-shadow:0 2px 6px rgba(15,23,42,.18);transition:transform .15s ease}
.stock-toggle input:checked + .stock-toggle-track{background:#1d4ed8;border-color:#1d4ed8;box-shadow:0 0 0 3px rgba(29,78,216,.12)}
.stock-toggle input:checked + .stock-toggle-track span{transform:translateX(20px)}
.stock-toggle-text{font-size:12px;font-weight:700;color:#64748b;min-width:58px}
.stock-toggle-text::after{content:attr(data-off)}
.stock-toggle input:checked ~ .stock-toggle-text{color:#1d4ed8}
.stock-toggle input:checked ~ .stock-toggle-text::after{content:attr(data-on)}
.settings-sticky-actions{position:sticky;bottom:0;display:flex;justify-content:flex-end;padding:12px 0;background:#fff;z-index:20}
.debug-inline{display:inline-block;margin-left:6px;color:#94a3b8}
@media (max-width: 900px){.settings-grid{grid-template-columns:1fr}.settings-field,.settings-field:nth-child(2n){border-right:0}.settings-field.is-toggle{grid-template-columns:1fr}.settings-toggle-row{justify-content:flex-start}.settings-section-head{align-items:flex-start}.settings-count{margin-top:2px}}


/* Phase 3.9.13 - Settings save button visibility fix */
.settings-action-bar{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:12px 14px;
    margin:0 0 20px;
    border:1px solid #dbe5f2;
    border-radius:16px;
    background:#fff;
    box-shadow:0 8px 22px rgba(15,23,42,.05);
    position:static;
}
.settings-action-bar strong{
    display:block;
    font-size:14px;
    font-weight:800;
    color:#0f172a;
    line-height:1.25;
}
.settings-action-bar span{
    display:block;
    margin-top:2px;
    font-size:12px;
    color:#64748b;
}
.settings-save-btn{
    min-height:34px;
    padding:7px 13px!important;
    border-radius:11px!important;
    font-size:12px!important;
    font-weight:800!important;
    white-space:nowrap;
}
.settings-sticky-actions{
    position:sticky;
    bottom:0;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:10px 12px;
    margin-top:12px;
    border:1px solid #dbe5f2;
    border-radius:16px;
    background:#fff!important;
    box-shadow:0 -8px 22px rgba(15,23,42,.08);
    z-index:40;
}
.settings-sticky-actions span{
    color:#64748b;
    font-size:12px;
    font-weight:700;
}
@media (max-width: 700px){
    .settings-action-bar,.settings-sticky-actions{
        align-items:stretch;
        flex-direction:column;
    }
    .settings-save-btn{
        width:100%;
    }
}
.perm-module-row{background:#eef6ff!important;color:#1d4ed8!important;font-weight:800}.debug-panel{border:1px dashed #cbd5e1;background:#f8fafc;border-radius:14px;padding:12px;color:#475569;font-size:12px}.po-source-note{font-size:11px;line-height:1.35;color:#64748b;margin-top:4px}.po-source-note strong{color:#334155}.po-source-note.is-edit{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:6px}.readiness-badge{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:800;border:1px solid #dbeafe;background:#eff6ff;color:#1d4ed8}.readiness-badge.is-blocked{border-color:#fee2e2;background:#fef2f2;color:#b91c1c}

/* Phase 3.10.1 ? Debug mode indicator in sidebar */
.stock-system-state {
    margin-top: 14px;
    border-radius: 18px;
    padding: 13px 14px;
    border: 1px solid var(--line);
    background: #f8fafc;
    box-shadow: var(--shadow-sm);
}
.stock-system-state-top {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .02em;
}
.stock-system-state-dot {
    width: 10px;
    height: 10px;
    border-radius: 999px;
    display: inline-block;
    flex: 0 0 auto;
}
.stock-system-state-title {
    margin-top: 7px;
    font-size: 14px;
    font-weight: 900;
    color: #0f172a;
    line-height: 1.25;
}
.stock-system-state-text {
    margin-top: 3px;
    font-size: 12px;
    font-weight: 700;
    color: #64748b;
    line-height: 1.35;
}
.stock-system-state.is-normal {
    border-color: #bbf7d0;
    background: #f0fdf4;
}
.stock-system-state.is-normal .stock-system-state-dot {
    background: #16a34a;
    box-shadow: 0 0 0 4px rgba(22, 163, 74, .12);
}
.stock-system-state.is-normal .stock-system-state-label {
    color: #15803d;
}
.stock-system-state.is-debug {
    border-color: #fecaca;
    background: #fef2f2;
    box-shadow: 0 12px 30px rgba(185, 28, 28, .10);
}
.stock-system-state.is-debug .stock-system-state-dot {
    background: #dc2626;
    box-shadow: 0 0 0 4px rgba(220, 38, 38, .16);
    animation: debugPulse 1.15s ease-in-out infinite;
}
.stock-system-state.is-debug .stock-system-state-label {
    color: #b91c1c;
}
.stock-system-debug-note {
    margin-top: 10px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 8px 10px;
    border-radius: 12px;
    background: #fff;
    border: 1px solid #fecaca;
    font-size: 11px;
    font-weight: 900;
    color: #991b1b;
}
.stock-system-debug-note strong {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 34px;
    height: 22px;
    border-radius: 999px;
    background: #dc2626;
    color: #fff;
    font-size: 11px;
}
@keyframes debugPulse {
    0%, 100% { transform: scale(1); opacity: 1; }
    50% { transform: scale(1.25); opacity: .72; }
}


/* Phase 3.10.2: system-wide UI rhythm and readability gate */
:root{
  --ui-radius-card:18px;
  --ui-radius-control:12px;
  --ui-gap-xs:6px;
  --ui-gap-sm:10px;
  --ui-gap-md:14px;
  --ui-gap-lg:20px;
  --ui-font-xs:11px;
  --ui-font-sm:12px;
  --ui-font-base:13px;
  --ui-font-md:14px;
  --ui-font-lg:18px;
  --ui-font-xl:24px;
}
.stock-page-shell{padding:22px 24px;max-width:1680px}.stock-page-card{border-radius:22px;padding:22px;min-height:calc(100vh - 124px)}
.stock-topbar{height:66px;padding:0 22px}.stock-breadcrumb{font-size:11px;line-height:1.2;font-weight:800;color:#64748b;letter-spacing:0}.stock-page-title{font-size:24px;line-height:1.18;font-weight:900;letter-spacing:-.02em;margin:2px 0 0}.stock-topbar-actions{gap:8px}
.page-section-header,.toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin:0 0 18px}.page-section-titleblock{min-width:0}.page-section-actions{padding-top:2px}.section-title{font-size:18px;line-height:1.35;font-weight:900;letter-spacing:-.01em}.section-subtitle{font-size:13px;line-height:1.5;color:#64748b;margin:3px 0 0}.subtext,.muted{font-size:13px;line-height:1.5}
.filter-bar{display:grid;grid-template-columns:minmax(240px,340px) minmax(180px,1fr) minmax(180px,1fr) auto auto auto;align-items:center;gap:10px;padding:12px;border-radius:18px;border:1px solid #dbe4ef;background:#f8fafc;margin-bottom:18px}.filter-bar .filter-keyword{max-width:340px}.filter-bar label{min-height:38px;margin:0}.input,.select,.form-control,textarea{min-height:38px;border-radius:12px;padding:8px 11px;font-size:13px;line-height:1.35}.core-select-display{min-height:38px}.button,.btn,.btn-core{min-height:34px;padding:7px 11px;border-radius:10px;font-size:12.5px;line-height:1.2}.button-sm,.btn.small,.btn-sm{min-height:30px;padding:5px 8px;border-radius:9px;font-size:11.5px}.icon-button{width:38px;height:38px;border-radius:13px}.stock-avatar{width:34px;height:34px;border-radius:12px}
.table-wrap,.table-container{border-radius:18px;border-color:#dbe4ef}.table-wrap table,.data-table{font-size:13px}.table-wrap th,.data-table th{padding:10px 12px;font-size:11px;line-height:1.35;color:#64748b;background:#f8fafc;white-space:nowrap;text-transform:none;letter-spacing:0;font-weight:900}.table-wrap td,.data-table td{padding:11px 12px;font-size:13px;line-height:1.45}.table-wrap small,.data-table small{font-size:11px;line-height:1.35;color:#64748b}.table-wrap strong,.data-table strong{font-weight:900;color:#0f172a}.data-table tbody tr:last-child td,.table-wrap tbody tr:last-child td{border-bottom:0}.core-table-toolbar{padding:10px 0 12px;gap:10px}.core-table-search{max-width:100%;min-height:38px;border-radius:12px}.doc-cell,.stack-cell{display:grid;gap:3px;min-width:0}.doc-cell strong,.stack-cell span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.status-stack{display:flex;flex-wrap:wrap;align-items:center;gap:5px;max-width:220px}.status-stack br{display:none}.badge,.badge-soft,.pill{padding:4px 8px;font-size:11px;line-height:1.1;min-height:22px}.debug-inline{display:inline-flex;align-items:center;border:1px dashed #fca5a5;background:#fff1f2;color:#b91c1c;border-radius:999px;padding:3px 7px;font-size:10.5px;font-weight:900;line-height:1.1}.action-row{display:flex;gap:5px;align-items:center;flex-wrap:nowrap}.action-row .button{white-space:nowrap}.cancelled-section-head{margin:16px 0 10px;padding:10px 12px;border-radius:14px}.empty-state-pro{padding:28px 14px}.empty-state-pro h3{font-size:16px;margin:8px 0 2px}.empty-state-pro p{font-size:12px;margin:0;color:#64748b}
.stock-sidebar{padding:14px;width:300px}.stock-brand{padding:12px;border-radius:20px}.stock-brand-mark{width:42px;height:42px;border-radius:14px}.stock-brand-title{font-size:17px}.stock-brand-subtitle{font-size:11.5px}.stock-system-state{margin-top:12px;padding:12px;border-radius:17px}.stock-nav{margin-top:16px}.stock-nav-group{margin-bottom:16px}.stock-nav-group-title{font-size:10.5px;margin-left:10px}.stock-nav-link{min-height:42px;padding:8px 10px;border-radius:14px;font-size:13.5px}.stock-nav-icon{width:28px;height:28px;border-radius:11px;font-size:11px}.stock-user-chip{padding:6px 9px;border-radius:15px}.stock-notification-panel{border-radius:16px}.stock-notification-item{padding:10px 12px}
/* Normal users should see one concise document status. Technical/secondary raw states stay behind debug UI. */
body:not(.debug-ui-enabled) .debug-inline{display:none!important}
@media (max-width:1100px){.stock-page-shell{padding:14px}.stock-page-card{padding:16px;border-radius:18px}.stock-topbar{min-height:62px;padding:10px 14px}.stock-page-title{font-size:20px}.page-section-header,.toolbar{gap:10px;flex-direction:column}.page-section-actions,.action-row{width:100%;flex-wrap:wrap}.filter-bar{display:grid;grid-template-columns:1fr;gap:8px}.filter-bar .filter-keyword{max-width:100%;width:100%}.table-wrap td,.data-table td{padding:10px}.status-stack{max-width:none}.stock-sidebar{width:286px}}


/* Phase 3.10.3 ? UI Consistency & Control System Polish */
:root{
  --control-h:38px;
  --control-radius:12px;
  --control-font:13px;
  --row-pad-y:11px;
  --row-pad-x:12px;
}
.stock-layout{grid-template-columns:300px minmax(0,1fr)}
.stock-main{background:linear-gradient(180deg,#f8fafc 0%,#f1f5f9 100%)}
.stock-page-card{box-shadow:0 10px 34px rgba(15,23,42,.055)}
.page-section-header{padding-bottom:14px;border-bottom:1px solid #eef2f7}
.page-section-titleblock{display:grid;gap:2px}.section-title{font-size:20px}.section-subtitle{max-width:780px}
.button,.btn,.btn-core,.input,.select,.form-control,textarea,.core-select-display{min-height:var(--control-h);font-size:var(--control-font);border-radius:var(--control-radius)}
.button,.btn,.btn-core{font-weight:900}.button-primary,.btn.primary,.btn-primary{box-shadow:0 8px 18px rgba(29,78,216,.16)}
.filter-bar{grid-template-columns:minmax(280px,1.15fr) minmax(170px,.72fr) minmax(170px,.72fr) auto auto auto;gap:9px;align-items:center;background:#f8fafc;border-color:#dbe4ef;box-shadow:inset 0 1px 0 rgba(255,255,255,.7)}
.filter-bar .button{min-width:78px}.filter-bar label{font-size:12.5px;border-color:#dbe4ef!important;color:#475569!important}
.table-wrap,.table-container{box-shadow:0 1px 0 rgba(15,23,42,.03)}
.table-wrap th,.data-table th{height:42px;padding:10px var(--row-pad-x);font-size:11.5px;color:#475569;background:#f8fafc;border-bottom:1px solid #dbe4ef}
.table-wrap td,.data-table td{padding:var(--row-pad-y) var(--row-pad-x);border-bottom:1px solid #eef2f7;color:#334155}
.table-wrap tr:hover td,.data-table tr:hover td{background:#fbfdff}.table-wrap td:last-child,.data-table td:last-child{white-space:nowrap}.table-wrap .action-row,.data-table .action-row{justify-content:flex-start}
.doc-cell strong,.stack-cell span{font-size:13px}.stack-cell small,.doc-cell small{color:#64748b}.status-stack{gap:6px;align-items:center}.badge,.badge-soft,.pill,.status-pill{font-weight:900;letter-spacing:0}
.action-row{gap:6px}.page-section-actions{display:flex;justify-content:flex-end;align-items:center}.page-section-actions .button{min-width:92px}
.stock-notification-item .font-bold,.stock-notification-item strong{font-size:13px}.stock-notification-head strong{font-size:14px}.stock-user-chip .text-sm{font-size:12.5px}.stock-user-chip .text-xs{font-size:11px}
.settings-action-bar,.settings-section,.settings-sticky-actions{border-color:#dbe4ef;border-radius:18px}.settings-action-bar{position:static;top:auto;z-index:auto;background:#fff;margin-bottom:20px}
.settings-section-head h2{font-size:16px;font-weight:900}.settings-section-head p,.settings-field small{font-size:12px}.settings-field-main label{font-size:13.5px;font-weight:900;color:#0f172a}.settings-field{min-height:112px}.settings-field.is-toggle{min-height:88px}.settings-input{height:var(--control-h)}
.stock-toggle-track{width:48px;height:28px}.stock-toggle-track span{width:22px;height:22px}.stock-toggle input:checked + .stock-toggle-track span{transform:translateX(20px)}
.empty-state,.empty-state-pro{border-radius:18px}.debug-panel,.debug-inline{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace}
body:not(.debug-ui-enabled) .permission-chip:has(+ .permission-chip),body:not(.debug-ui-enabled) .debug-panel{display:none!important}
.cancelled-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #e2e8f0;background:#f8fafc}.row-cancelled td{background:#fafafa;color:#64748b}.row-cancelled .doc-cell strong{text-decoration:line-through;color:#64748b}
@media (max-width:1100px){
  .stock-layout{grid-template-columns:1fr}.stock-sidebar{position:fixed;left:0;top:0;transform:translateX(-105%);transition:transform .18s ease;width:min(300px,calc(100vw - 44px));box-shadow:var(--shadow-lg)}
  body.sidebar-open .stock-sidebar,.stock-sidebar.is-open{transform:translateX(0)}.stock-overlay{position:fixed;inset:0;background:rgba(15,23,42,.42);z-index:40}.stock-overlay.is-open{display:block}.icon-button.stock-mobile-button{display:grid}
  .stock-topbar{height:auto}.stock-topbar-actions{margin-left:auto}.stock-user-chip{display:none}.stock-page-shell{padding:12px}.stock-page-card{padding:14px}.filter-bar{grid-template-columns:1fr}.filter-bar .button,.page-section-actions .button{width:auto;min-width:84px}.action-row{flex-wrap:wrap}.table-wrap{border-radius:15px}.settings-action-bar{top:0}
}
@media (max-width:640px){
  .stock-page-title{font-size:18px}.section-title{font-size:18px}.stock-breadcrumb{display:none}.stock-topbar{align-items:flex-start}.stock-topbar-actions{gap:6px}.stock-notification-panel{right:-48px}.page-section-actions{width:100%;justify-content:flex-start}.page-section-actions .button{flex:1 1 auto}.button,.btn,.btn-core{white-space:normal}.table-wrap table,.data-table{min-width:760px}.settings-sticky-actions{position:static}.settings-field{padding:13px}.settings-field-main{display:grid;gap:6px}.settings-field-main code{justify-self:start;white-space:normal}
}


.doc-history-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:20px}
.doc-history-grid.is-single{grid-template-columns:1fr}
.doc-history-card{background:var(--paper);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow-sm);padding:18px}
.doc-history-head{margin-bottom:10px}
.doc-history-legend{display:flex;align-items:center;gap:8px;justify-content:flex-end}
.doc-history-timeline{display:grid;gap:14px}
.doc-history-item{display:grid;grid-template-columns:22px minmax(0,1fr);gap:12px;align-items:flex-start}
.doc-history-rail{display:flex;flex-direction:column;align-items:center;min-height:100%}
.doc-history-dot{width:14px;height:14px;border-radius:999px;display:block;border:3px solid rgba(255,255,255,.92);box-shadow:0 0 0 1px rgba(148,163,184,.28)}
.doc-history-dot.badge-gray{background:#94a3b8}
.doc-history-dot.badge-blue{background:#2563eb}
.doc-history-dot.badge-green{background:#16a34a}
.doc-history-dot.badge-orange{background:#ea580c}
.doc-history-dot.badge-red{background:#dc2626}
.doc-history-dot.badge-purple{background:#9333ea}
.doc-history-dot.badge-cyan{background:#0891b2}
.doc-history-dot.badge-dark{background:#334155}
.doc-history-line{width:2px;flex:1;background:linear-gradient(180deg,#cbd5e1 0%,rgba(203,213,225,.15) 100%);margin-top:6px;border-radius:999px}
.doc-history-body{min-width:0;background:#fff;border:1px solid #e2e8f0;border-radius:18px;padding:14px 15px;display:grid;gap:6px}
.doc-history-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.doc-history-badges{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-width:0}
.doc-history-transition{display:inline-flex;align-items:center;gap:4px;border-radius:999px;padding:4px 9px;background:#f8fafc;border:1px solid #e2e8f0;color:#475569;font-size:11px;font-weight:800;line-height:1.15}
.doc-history-time{font-size:12px;font-weight:800;color:#475569;white-space:nowrap}
.doc-history-title{margin:0;color:#0f172a;font-size:15px;line-height:1.35;font-weight:900}
.doc-history-meta{font-size:12px;font-weight:700;color:#475569}
.doc-history-desc{margin:0;font-size:13px;line-height:1.6;color:#334155}
.doc-history-debug{display:flex;flex-wrap:wrap;gap:8px;font-size:11px;line-height:1.45;color:#b91c1c;background:#fff1f2;border:1px dashed #fda4af;border-radius:12px;padding:8px 10px}
@media (max-width:1100px){.doc-history-grid{grid-template-columns:1fr}.doc-history-card{padding:16px}}
@media (max-width:720px){.doc-history-item{grid-template-columns:18px minmax(0,1fr);gap:10px}.doc-history-body{padding:12px 12px}.doc-history-top{flex-direction:column;align-items:flex-start}.doc-history-time{white-space:normal}.doc-history-legend{justify-content:flex-start}.doc-history-grid{gap:14px}}

/* Phase 3.10.5 ? PR/PO detail readability + document QR */
.document-detail-hero{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:18px;align-items:stretch}
.document-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.document-summary-card{min-height:92px;display:flex;flex-direction:column;justify-content:center;gap:4px}
.document-summary-card .summary-label{font-size:12px;font-weight:900;color:#64748b;letter-spacing:.01em}
.document-summary-card strong{font-size:15px;line-height:1.45;color:#0f172a;word-break:break-word}
.doc-qr-card{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:14px;align-items:center;background:linear-gradient(135deg,#ffffff 0%,#f8fafc 100%);border:1px solid #dbe4ef;border-radius:22px;box-shadow:var(--shadow-sm);padding:16px;min-height:204px}
.doc-qr-eyebrow{font-size:11px;font-weight:950;letter-spacing:.08em;text-transform:uppercase;color:#2563eb;margin-bottom:4px}
.doc-qr-info h3{margin:0;color:#0f172a;font-size:17px;line-height:1.3;font-weight:950}
.doc-qr-info p{margin:6px 0 0;color:#475569;font-size:12.5px;line-height:1.6}
.doc-qr-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}
.doc-qr-visual{display:grid;justify-items:center;gap:7px;align-self:center}
.doc-qr-visual img{width:132px;height:132px;object-fit:contain;border:1px solid #e2e8f0;border-radius:16px;background:#fff;padding:6px;box-shadow:0 8px 22px rgba(15,23,42,.08)}
.doc-qr-visual small{font-size:11px;font-weight:800;color:#64748b;text-align:center}
.doc-qr-debug{margin-top:10px;padding:8px 10px;border:1px dashed #fca5a5;border-radius:12px;background:#fff1f2;color:#b91c1c;font-size:11px;line-height:1.5;word-break:break-all}
.doc-action-panel{padding:12px;border:1px solid #e2e8f0;border-radius:18px;background:#f8fafc;box-shadow:0 8px 20px rgba(15,23,42,.04);justify-content:flex-start;flex-wrap:wrap}
.document-readiness-panel{padding:12px 14px;border:1px solid #dbe4ef;border-radius:18px;background:#fff;display:flex;align-items:center;gap:10px}
.document-section-card{background:var(--paper);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow-sm);padding:16px;min-width:0}
.document-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}
.document-section-head h3{margin:0}
.document-section-head p{margin:3px 0 0;color:#64748b;font-size:12.5px;line-height:1.55}
.document-section-card .table-wrap{margin-bottom:0!important}
.document-section-card .attachment-list-simple{margin:0;padding:0;list-style:none;display:grid;gap:10px}
.document-section-card .attachment-list-simple li{border:1px solid #e2e8f0;border-radius:16px;padding:11px 12px;background:#fff;display:grid;gap:10px}
.document-section-card .attachment-name{display:grid;gap:3px;min-width:0}
.document-section-card .attachment-name span{font-size:13px;font-weight:900;color:#0f172a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.document-section-card .attachment-name small{font-size:11px;color:#64748b}
.document-section-card .attachment-actions{display:flex;flex-wrap:wrap;gap:6px}
.badge-info{background:#dbeafe;color:#1d4ed8}
@media (max-width:1200px){.document-detail-hero{grid-template-columns:1fr}.doc-qr-card{grid-template-columns:minmax(0,1fr) 160px}.document-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:720px){.document-summary-grid{grid-template-columns:1fr}.doc-qr-card{grid-template-columns:1fr}.doc-qr-visual{order:-1}.doc-qr-visual img{width:156px;height:156px}.document-section-head{display:block}.doc-action-panel .button,.doc-action-panel form,.doc-action-panel form .button{width:100%}.doc-action-panel form{display:block}.document-readiness-panel{align-items:flex-start}}


.material-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 18px}
.material-summary-card{border:1px solid #dbe4ef;background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);border-radius:18px;padding:16px 16px 14px;box-shadow:0 1px 0 rgba(15,23,42,.03)}
.material-summary-card.is-warning{background:linear-gradient(180deg,#fffaf2 0%,#fff7ed 100%);border-color:#fed7aa}
.material-summary-label{font-size:12px;line-height:1.4;color:#64748b;font-weight:800}
.material-summary-value{font-size:28px;line-height:1.1;font-weight:900;color:#0f172a;margin:6px 0 4px}
.material-summary-sub{font-size:12px;line-height:1.45;color:#64748b}
.material-list-card{padding:16px;border-radius:20px}
.material-list-head{margin-bottom:10px}
.material-list-meta{display:flex;align-items:center;gap:8px}
.material-data-table tbody tr.row-low-stock td:first-child{border-left:4px solid #f59e0b}
.material-data-table tbody tr.row-stock-out td:first-child{border-left:4px solid #dc2626}
.material-cell-main,.material-cell-stack{display:grid;gap:3px;min-width:0}
.material-cell-main strong{font-size:14px;line-height:1.35;color:#0f172a}
.material-cell-main span,.material-cell-stack span{font-size:13px;line-height:1.45;color:#0f172a}
.material-cell-main small,.material-cell-stack small{font-size:11px;line-height:1.35;color:#64748b}
.material-stock-cell{display:grid;gap:2px}
.material-stock-qty{font-size:20px;line-height:1.2;font-weight:900;color:#0f172a}
.material-stock-qty small{font-size:12px;font-weight:700;color:#64748b}
.material-stock-sub{font-size:11px;line-height:1.35;color:#64748b}
.material-status-cluster{display:flex;flex-wrap:wrap;gap:6px;align-items:center;max-width:220px}
.material-action-row{justify-content:flex-start}
.material-action-row .button{min-width:58px}
@media (max-width:1100px){.material-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:720px){.material-summary-grid{grid-template-columns:1fr}.material-summary-value{font-size:24px}.material-list-card{padding:14px}.material-status-cluster{max-width:none}}


.material-form-pro{display:grid;gap:18px}
.material-form-hero,.material-detail-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;border:1px solid #dbe4ef;background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);border-radius:22px;padding:18px;box-shadow:0 1px 0 rgba(15,23,42,.03)}
.material-form-eyebrow,.material-detail-eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:#2563eb;margin-bottom:4px}
.material-form-hero h3,.material-detail-hero h2{margin:0;color:#0f172a;font-size:24px;line-height:1.25;font-weight:900}.material-form-hero p,.material-detail-hero p{margin:6px 0 0;color:#64748b;line-height:1.55}
.material-form-quick-status,.material-detail-tags{display:flex;flex-wrap:wrap;gap:6px;align-items:center;justify-content:flex-end}.material-form-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:18px;align-items:start}.material-form-main,.material-form-side{display:grid;gap:18px}.material-form-section,.material-detail-card{border:1px solid #dbe4ef;background:#fff;border-radius:20px;padding:18px;box-shadow:0 1px 0 rgba(15,23,42,.03)}
.material-form-section-head,.material-detail-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.material-form-section-head.compact,.material-detail-section-head{margin-bottom:12px}.material-form-section-head h3,.material-detail-section-head h3{margin:0;color:#0f172a;font-size:17px;line-height:1.3;font-weight:900}.material-form-section-head p,.material-detail-section-head p{margin:3px 0 0;color:#64748b;font-size:12.5px;line-height:1.45}.side-field-list{display:grid;gap:12px}.sticky-card{position:sticky;top:92px}.readonly-input{background:#f8fafc!important;color:#475569}.material-form-actions{position:sticky;bottom:14px;z-index:20;display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;border:1px solid #dbe4ef;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border-radius:18px;padding:12px;box-shadow:0 12px 32px rgba(15,23,42,.08)}
.material-flag-grid{display:grid;grid-template-columns:1fr;gap:8px}.material-flag{display:flex;align-items:center;gap:8px;border:1px solid #e2e8f0;border-radius:14px;padding:9px 10px;background:#f8fafc;font-size:12.5px;font-weight:800;color:#334155}.material-flag input{width:16px;height:16px;accent-color:#2563eb}.material-detail-titleblock{min-width:0}.material-detail-kpi{min-width:240px;text-align:right;border:1px solid #dbe4ef;background:#fff;border-radius:18px;padding:14px}.material-detail-kpi span{display:block;color:#64748b;font-size:12px;font-weight:900}.material-detail-kpi strong{display:block;color:#0f172a;font-size:30px;line-height:1.15;font-weight:900;margin:4px 0}.material-detail-kpi strong small{font-size:13px;color:#64748b}.material-detail-kpi em{display:block;font-style:normal;color:#64748b;font-size:12px;font-weight:800}.material-detail-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:18px}.material-detail-card.is-main{grid-row:auto}.material-info-list{display:grid;gap:0;border:1px solid #eef2f7;border-radius:16px;overflow:hidden}.material-info-row{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:11px 12px;border-bottom:1px solid #eef2f7;background:#fff}.material-info-row:nth-child(2n){background:#f8fafc}.material-info-row:last-child{border-bottom:0}.material-info-row span{color:#64748b;font-size:12px;font-weight:800}.material-info-row strong{color:#0f172a;font-size:13px;text-align:right;word-break:break-word}.material-stock-display{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.material-stock-display>div{border:1px solid #e2e8f0;border-radius:16px;padding:12px;background:#f8fafc}.material-stock-display span{display:block;color:#64748b;font-size:12px;font-weight:800}.material-stock-display strong{display:block;color:#0f172a;font-size:22px;font-weight:900;margin-top:3px}.material-flag-readonly{display:flex;flex-wrap:wrap;gap:8px}.material-flag-readonly span{display:inline-flex;border-radius:999px;padding:6px 10px;background:#f1f5f9;color:#64748b;font-size:12px;font-weight:900}.material-flag-readonly span.is-on{background:#dcfce7;color:#15803d}.material-note-box{border:1px dashed #cbd5e1;background:#f8fafc;border-radius:16px;padding:14px}.material-note-box strong{display:block;margin-bottom:4px}.material-note-box p{margin:0;color:#475569}.material-danger-zone{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid #fecaca;background:#fff7f7;border-radius:20px;padding:16px;margin-top:18px}.material-danger-zone strong{color:#991b1b}.material-danger-zone p{margin:4px 0 0;color:#7f1d1d;font-size:13px}
@media (max-width:1180px){.material-form-layout,.material-detail-grid{grid-template-columns:1fr}.sticky-card{position:static}.material-detail-kpi{text-align:left;min-width:0}.material-form-hero,.material-detail-hero{flex-direction:column}.material-form-quick-status,.material-detail-tags{justify-content:flex-start}}
@media (max-width:720px){.material-form-section,.material-detail-card,.material-form-hero,.material-detail-hero{padding:14px;border-radius:18px}.material-form-hero h3,.material-detail-hero h2{font-size:20px}.material-stock-display{grid-template-columns:1fr}.material-form-actions{position:static;justify-content:stretch}.material-form-actions .button{flex:1 1 auto}.material-info-row{display:grid;gap:4px}.material-info-row strong{text-align:left}.material-danger-zone{display:grid}}


.material-qr-card{border-style:solid}
.material-qr-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:18px;align-items:start}
.material-qr-visual{display:grid;justify-items:center;text-align:center;gap:7px;padding:16px;border:1px dashed #cbd5e1;border-radius:18px;background:#f8fafc}
.material-qr-visual img{width:200px;height:200px;border:1px solid #dbe4ef;border-radius:16px;background:#fff;padding:10px}
.material-qr-visual strong{font-size:14px;color:#0f172a;line-height:1.35}
.material-qr-visual small{font-size:12px;color:#64748b}
.material-qr-info{min-width:0}
@media (max-width:900px){.material-qr-layout{grid-template-columns:1fr}.material-qr-visual img{width:180px;height:180px}}


/* Phase 3.10.7 hotfix: reduce duplicated headings and remove sticky overlap on material form */
.material-form-hero.compact-hero{padding:16px 18px}
.material-form-hero.compact-hero h3{font-size:22px}
.material-form-hero.compact-hero p{max-width:920px}
.material-side-panel{position:static}
.sticky-card{position:static}
.material-form-side{align-self:start}
.material-form-actions{position:static;bottom:auto;z-index:auto}
@media (min-width:1181px){.material-form-layout{align-items:start}.material-form-side{position:relative;top:auto}}


/* System-wide heading dedupe: layout topbar owns the main page title. */
.page-intro-strip{margin-top:-4px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #e2e8f0}
.page-intro-strip .page-section-titleblock-empty{display:block;min-height:1px;flex:1 1 auto}
.page-intro-strip .section-subtitle{margin:0;color:#64748b;font-weight:700}
.page-intro-strip .section-title:empty{display:none}
.page-context-card{padding:16px 18px;border-radius:18px}
.dashboard-hero h1{font-size:26px;line-height:1.25}
.material-form-hero,.material-detail-hero,.document-detail-hero{margin-top:0}
.material-form-hero.compact-hero{box-shadow:none;background:#fff}
@media (max-width:720px){.page-intro-strip{margin-bottom:12px}.page-intro-strip .page-section-actions{width:100%;justify-content:flex-start}.page-intro-strip .page-section-actions .button,.page-intro-strip .page-section-actions .btn{flex:1 1 auto}}


/* Phase 3.10.x Cleanup Gate: system-wide page rhythm safeguards */
.page-intro-strip{border:1px solid #dbe4ef;background:#f8fafc;border-radius:18px;padding:12px 14px;margin:0 0 16px}
.page-intro-strip .section-subtitle{margin:0;color:#64748b;font-size:13px;line-height:1.55;font-weight:700}
.record-context-strip{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid #dbe4ef;background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);border-radius:18px;padding:12px 14px;margin:0 0 16px}
.record-context-strip>div:first-child{display:grid;gap:2px;min-width:0}.record-context-strip strong{font-size:16px;line-height:1.35;color:#0f172a;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.record-context-strip small{color:#64748b;font-size:12px;line-height:1.45}.record-context-kicker{font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;color:#2563eb;font-weight:900}
/* Only the main layout topbar/sidebar may be sticky by default. Page cards and action panels must not overlap content. */
.sticky-card,.material-form-actions,.settings-sticky-actions{position:static!important;top:auto!important;bottom:auto!important;z-index:auto!important;backdrop-filter:none!important}
.material-form-hero.compact-hero{display:none!important}.material-form-section-head .badge{flex:0 0 auto}.toolbar.page-intro-strip{align-items:center}.toolbar.page-intro-strip .page-section-titleblock{min-width:0}
body:not(.debug-ui-enabled) .debug-panel,body:not(.debug-ui-enabled) .debug-inline,body:not(.debug-ui-enabled) .permission-strip{display:none!important}
@media(max-width:720px){.record-context-strip{align-items:flex-start;flex-direction:column}.record-context-strip strong{white-space:normal}.toolbar.page-intro-strip{align-items:stretch}}


.reversal-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,420px);gap:14px;align-items:start;border:1px solid #fecaca;background:#fff7f7;border-radius:20px;padding:16px}.reversal-panel.is-completed{border-color:#cbd5e1;background:#f8fafc}.reversal-panel-copy strong{display:block;color:#991b1b;font-size:15px;font-weight:900}.reversal-panel.is-completed .reversal-panel-copy strong{color:#334155}.reversal-panel-copy p{margin:5px 0 0;color:#7f1d1d;font-size:13px;line-height:1.55}.reversal-panel.is-completed .reversal-panel-copy p{color:#64748b}.reversal-form{display:grid;gap:8px}.reversal-form textarea{min-height:68px}.button-danger{background:#dc2626;border-color:#dc2626;color:#fff}.button-danger:hover{background:#b91c1c;border-color:#b91c1c}@media (max-width:900px){.reversal-panel{grid-template-columns:1fr}.reversal-form .button{width:100%}}


.reversal-panel.is-disabled{border-style:dashed;background:#f8fafc;color:#475569}
.reversal-panel.is-disabled .reversal-panel-copy strong{color:#334155}
.reversal-panel.is-completed small{display:block;margin-top:6px;color:#64748b;font-weight:800}
.print-reversal-alert{border:2px solid #991b1b;background:#fff1f2;color:#7f1d1d;border-radius:12px;padding:10px 12px;margin:12px 0;display:grid;gap:3px}
.print-reversal-alert strong{font-size:15px}.print-reversal-alert span,.print-reversal-alert small{font-size:12px}

/* System-wide timeline history standardization */
.system-timeline-card{background:var(--paper);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow-sm);padding:18px;margin-top:14px}
.system-timeline-card.is-compact{border:0;box-shadow:none;padding:0;margin-top:0;background:transparent}
.system-timeline-head{margin-bottom:12px}
.system-timeline-legend{display:flex;align-items:center;gap:8px;justify-content:flex-end}
.system-timeline-list{display:grid;gap:14px}
.system-timeline-card.is-compact .system-timeline-list{gap:10px}
.system-timeline-item{display:grid;grid-template-columns:22px minmax(0,1fr);gap:12px;align-items:flex-start}
.system-timeline-rail{display:flex;flex-direction:column;align-items:center;min-height:100%}
.system-timeline-dot{width:14px;height:14px;border-radius:999px;display:block;border:3px solid rgba(255,255,255,.94);box-shadow:0 0 0 1px rgba(148,163,184,.28)}
.system-timeline-dot.badge-gray{background:#94a3b8}.system-timeline-dot.badge-blue{background:#2563eb}.system-timeline-dot.badge-green{background:#16a34a}.system-timeline-dot.badge-orange{background:#ea580c}.system-timeline-dot.badge-red{background:#dc2626}.system-timeline-dot.badge-purple{background:#9333ea}.system-timeline-dot.badge-cyan{background:#0891b2}.system-timeline-dot.badge-dark{background:#334155}
.system-timeline-line{width:2px;flex:1;background:linear-gradient(180deg,#cbd5e1 0%,rgba(203,213,225,.18) 100%);margin-top:6px;border-radius:999px}
.system-timeline-body{min-width:0;background:#fff;border:1px solid #e2e8f0;border-radius:18px;padding:14px 15px;display:grid;gap:6px}
.system-timeline-card.is-compact .system-timeline-body{padding:12px 13px;border-radius:16px;background:#fff}
.system-timeline-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.system-timeline-badges{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-width:0}
.system-timeline-meta-pill{display:inline-flex;align-items:center;gap:4px;border-radius:999px;padding:4px 9px;background:#f8fafc;border:1px solid #e2e8f0;color:#475569;font-size:11px;font-weight:800;line-height:1.15}
.system-timeline-time{font-size:12px;font-weight:800;color:#475569;white-space:nowrap}
.system-timeline-title{margin:0;color:#0f172a;font-size:15px;line-height:1.35;font-weight:900;text-decoration:none}.system-timeline-title:hover{color:#1d4ed8}
.system-timeline-actor{font-size:12px;font-weight:700;color:#475569}
.system-timeline-desc{margin:0;font-size:13px;line-height:1.6;color:#334155}
.system-timeline-debug{display:flex;flex-wrap:wrap;gap:8px;font-size:11px;line-height:1.45;color:#b91c1c;background:#fff1f2;border:1px dashed #fda4af;border-radius:12px;padding:8px 10px}
.audit-page-intro{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px}
@media (max-width:720px){.system-timeline-card{padding:14px;border-radius:18px}.system-timeline-item{grid-template-columns:18px minmax(0,1fr);gap:10px}.system-timeline-body{padding:12px}.system-timeline-top{flex-direction:column;align-items:flex-start}.system-timeline-time{white-space:normal}.system-timeline-legend{justify-content:flex-start}.audit-page-intro{align-items:flex-start;flex-direction:column}}

/* Master Data rebuild */
.master-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:18px;align-items:start}
.master-sidebar{border:1px solid #dbe4ef;background:#fff;border-radius:22px;padding:14px;box-shadow:0 1px 0 rgba(15,23,42,.03);display:grid;gap:14px}
.master-group-title{font-size:12px;font-weight:900;color:#64748b;margin:2px 0 8px;padding:0 4px}
.master-group-list{display:grid;gap:6px}
.master-type-link{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid #e2e8f0;background:#f8fafc;border-radius:14px;padding:10px 11px;text-decoration:none;color:#334155;font-size:13px;font-weight:850;transition:.15s ease}
.master-type-link:hover{border-color:#bfdbfe;background:#eff6ff;color:#1d4ed8}
.master-type-link.is-active{background:#1d4ed8;border-color:#1d4ed8;color:#fff;box-shadow:0 10px 24px rgba(29,78,216,.18)}
.master-type-link strong{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:24px;border-radius:999px;background:rgba(255,255,255,.8);color:#334155;font-size:12px;font-weight:900}
.master-type-link.is-active strong{background:rgba(255,255,255,.2);color:#fff}
.master-content{display:grid;gap:16px;min-width:0}
.master-hero-card{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid #dbe4ef;background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);border-radius:22px;padding:18px;box-shadow:0 1px 0 rgba(15,23,42,.03)}
.master-eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:#2563eb;margin-bottom:4px}
.master-hero-card h2{font-size:24px;line-height:1.25;margin:0;color:#0f172a;font-weight:900}.master-hero-card p{margin:5px 0 0;color:#64748b;line-height:1.55}
.master-count-card{min-width:120px;border:1px solid #dbe4ef;background:#fff;border-radius:18px;padding:13px;text-align:center}.master-count-card span{display:block;font-size:11px;font-weight:900;color:#64748b}.master-count-card strong{display:block;font-size:28px;line-height:1.15;color:#0f172a;font-weight:900;margin-top:2px}
.master-table-card{padding:16px;border-radius:20px}.master-table-head{margin-bottom:10px}.master-data-table td{vertical-align:top}.master-data-table .doc-cell{min-width:220px}.master-form-shell{display:grid;gap:16px}.master-toggle{justify-content:flex-start;gap:10px;border:1px solid #e2e8f0;border-radius:14px;padding:8px 10px;background:#f8fafc}.master-toggle strong{font-size:13px;color:#334155}
@media(max-width:1100px){.master-layout{grid-template-columns:1fr}.master-sidebar{position:relative}.master-group-list{grid-template-columns:repeat(2,minmax(0,1fr))}.master-hero-card{align-items:flex-start}}
@media(max-width:720px){.master-group-list{grid-template-columns:1fr}.master-hero-card{display:grid}.master-count-card{text-align:left}.master-data-table{min-width:820px}}


/* Phase 4.0 receipt form layout refresh */
.receipt-form-pro{display:grid;gap:18px}
.receipt-form-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 18px}
.receipt-form-summary-card{border:1px solid #dbe4ef;background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);border-radius:18px;padding:16px;box-shadow:0 1px 0 rgba(15,23,42,.03);display:grid;gap:5px}
.receipt-form-summary-card.is-accent{background:linear-gradient(180deg,#eff6ff 0%,#f8fbff 100%)}
.receipt-form-summary-card.is-warning{background:linear-gradient(180deg,#fffaf2 0%,#fff7ed 100%);border-color:#fed7aa}
.receipt-form-summary-label{font-size:12px;line-height:1.4;color:#64748b;font-weight:800}
.receipt-form-summary-value{font-size:27px;line-height:1.15;font-weight:900;color:#0f172a;word-break:break-word}
.receipt-form-summary-value.is-text{font-size:18px;line-height:1.35}
.receipt-form-summary-sub{font-size:12px;line-height:1.5;color:#64748b}
.receipt-form-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px;align-items:start}
.receipt-form-main,.receipt-form-side{display:grid;gap:18px}
.receipt-form-card,.receipt-form-side-card{padding:16px}
.receipt-form-head-grid .field-span-2{grid-column:span 2}
.receipt-line-list{display:grid;gap:14px}
.receipt-line-card{border:1px solid #e2e8f0;background:#fff;border-radius:18px;padding:14px;display:grid;gap:14px}
.receipt-line-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;border-bottom:1px solid #eef2f7;padding-bottom:12px}
.receipt-line-titleblock{display:grid;gap:3px;min-width:0}
.receipt-line-code{font-size:11px;line-height:1.35;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:#2563eb}
.receipt-line-titleblock h4{margin:0;font-size:16px;line-height:1.35;color:#0f172a;font-weight:900}
.receipt-line-titleblock p{margin:0;color:#64748b;font-size:12.5px;line-height:1.55}
.receipt-line-status{display:grid;grid-template-columns:repeat(3,minmax(110px,1fr));gap:10px;flex:0 0 auto}
.receipt-qty-chip{border:1px solid #e2e8f0;border-radius:16px;padding:10px 12px;background:#f8fafc;display:grid;gap:2px;text-align:right;min-width:0}
.receipt-qty-chip.is-remaining{background:#eff6ff;border-color:#bfdbfe}
.receipt-qty-chip span{font-size:11px;font-weight:800;color:#64748b}
.receipt-qty-chip strong{font-size:20px;line-height:1.15;font-weight:900;color:#0f172a}
.receipt-qty-chip small{font-size:11px;color:#64748b}
.receipt-line-body{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.receipt-line-body .field-span-2{grid-column:span 2}
.receipt-side-kpi{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:12px}
.receipt-side-kpi>div{border:1px solid #e2e8f0;border-radius:16px;background:#f8fafc;padding:12px}
.receipt-side-kpi span{display:block;font-size:11px;font-weight:800;color:#64748b}
.receipt-side-kpi strong{display:block;font-size:22px;line-height:1.15;font-weight:900;color:#0f172a;margin-top:4px}
.receipt-side-checklist{margin:0;padding-left:18px;display:grid;gap:8px;color:#334155;font-size:13px;line-height:1.6}
@media (max-width:1180px){.receipt-form-layout{grid-template-columns:1fr}.receipt-form-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:880px){.receipt-line-head{display:grid}.receipt-line-status{grid-template-columns:repeat(3,minmax(0,1fr))}.receipt-line-body{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:720px){.receipt-form-summary-grid{grid-template-columns:1fr}.receipt-line-status{grid-template-columns:1fr}.receipt-line-body{grid-template-columns:1fr}.receipt-line-body .field-span-2,.receipt-form-head-grid .field-span-2{grid-column:auto}.receipt-form-card,.receipt-form-side-card{padding:14px}.receipt-form-summary-value{font-size:24px}.receipt-side-kpi{grid-template-columns:1fr}}


/* Phase 4 receipt partial receive clarity */
.receipt-po-pick-card{padding:14px}
.receipt-status-pair{display:grid;gap:7px;min-width:0}
.receipt-status-pair.is-compact{min-width:220px}
.receipt-status-pair-row{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.receipt-status-pair-row small{font-size:11px;line-height:1.35;font-weight:800;color:#64748b}
.receipt-history-overview{padding:16px}
.receipt-history-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}
.receipt-history-card{border:1px solid #e2e8f0;border-radius:16px;background:#fff;padding:12px;display:grid;gap:8px}
.receipt-history-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.receipt-history-top strong{display:block;font-size:14px;line-height:1.35;color:#0f172a}
.receipt-history-top small{display:block;margin-top:2px;font-size:11px;line-height:1.5;color:#64748b}
.receipt-history-metrics{display:flex;flex-wrap:wrap;gap:8px 12px;font-size:12px;line-height:1.45;color:#334155}
.receipt-history-metrics strong{font-weight:900;color:#0f172a}
.receipt-history-note{font-size:12px;line-height:1.5;color:#b45309;background:#fff7ed;border:1px dashed #fdba74;border-radius:12px;padding:8px 10px}
@media (max-width:720px){.receipt-status-pair.is-compact{min-width:0}.receipt-status-pair-row{align-items:flex-start;justify-content:flex-start;display:grid;gap:4px}.receipt-history-list{grid-template-columns:1fr}}


/* Receipt select PO layout refresh */
.receipt-select-legend{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.receipt-select-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 18px}
.receipt-select-summary-card{border:1px solid #dbe4ef;background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);border-radius:18px;padding:16px;display:grid;gap:5px}
.receipt-select-summary-card.is-accent{background:linear-gradient(180deg,#eff6ff 0%,#f8fbff 100%)}
.receipt-select-summary-card.is-warning{background:linear-gradient(180deg,#fffaf2 0%,#fff7ed 100%);border-color:#fed7aa}
.receipt-select-summary-label{font-size:12px;line-height:1.4;color:#64748b;font-weight:800}
.receipt-select-summary-value{font-size:28px;line-height:1.1;font-weight:900;color:#0f172a}
.receipt-select-summary-sub{font-size:12px;line-height:1.45;color:#64748b}
.receipt-select-card-grid-wrap{padding:16px}
.receipt-select-head{margin-bottom:12px}
.receipt-select-head-actions{display:flex;align-items:center;gap:10px}
.receipt-select-search{min-width:320px}
.receipt-select-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:14px}
.receipt-select-card{border:1px solid #dbe4ef;background:linear-gradient(180deg,#fff 0%,#fbfdff 100%);border-radius:20px;padding:16px;display:grid;gap:14px;box-shadow:0 1px 0 rgba(15,23,42,.03)}
.receipt-select-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.receipt-select-titleblock{display:grid;gap:3px;min-width:0}
.receipt-select-code{font-size:12px;line-height:1.35;font-weight:900;color:#2563eb}
.receipt-select-titleblock h4{margin:0;font-size:20px;line-height:1.3;font-weight:900;color:#0f172a}
.receipt-select-titleblock p{margin:0;font-size:12px;line-height:1.45;color:#64748b}
.receipt-select-metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.receipt-select-metric{border:1px solid #e2e8f0;border-radius:16px;background:#f8fafc;padding:12px;display:grid;gap:3px}
.receipt-select-metric.is-remaining{background:#eff6ff;border-color:#bfdbfe}
.receipt-select-metric span{font-size:11px;font-weight:800;color:#64748b}
.receipt-select-metric strong{font-size:26px;line-height:1.1;font-weight:900;color:#0f172a}
.receipt-select-metric small{font-size:11px;line-height:1.45;color:#64748b}
.receipt-select-status-wrap{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.receipt-select-status-block{border:1px dashed #dbe4ef;border-radius:16px;padding:12px;background:#fff}
.receipt-select-status-block small{display:block;font-size:11px;line-height:1.35;font-weight:800;color:#64748b;margin-bottom:8px}
.receipt-select-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:2px}
.receipt-select-helper-text{font-size:12px;line-height:1.55;color:#64748b;max-width:60%}
@media (max-width:1180px){.receipt-select-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:840px){.receipt-select-search{min-width:0;width:100%}.receipt-select-card-top,.receipt-select-footer{display:grid}.receipt-select-status-wrap,.receipt-select-metric-grid{grid-template-columns:1fr 1fr}.receipt-select-helper-text{max-width:none}}
@media (max-width:720px){.receipt-select-summary-grid{grid-template-columns:1fr}.receipt-select-card-grid{grid-template-columns:1fr}.receipt-select-status-wrap,.receipt-select-metric-grid{grid-template-columns:1fr}.receipt-select-card{padding:14px}.receipt-select-summary-value{font-size:24px}.receipt-select-legend{justify-content:flex-start}}


/* Master Data images */
.master-image-thumb{width:54px;height:54px;border-radius:16px;border:1px solid #dbe4ef;background:#f8fafc;display:grid;place-items:center;overflow:hidden;color:#2563eb;font-size:20px;font-weight:900}
.master-image-thumb img{width:100%;height:100%;object-fit:cover;display:block}.master-image-thumb.is-empty{background:linear-gradient(135deg,#eff6ff,#f8fafc)}
.master-image-form-card{display:grid;grid-template-columns:112px minmax(0,1fr);gap:16px;align-items:center;border:1px solid #dbe4ef;background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);border-radius:18px;padding:14px;margin-bottom:16px}
.master-image-preview{width:112px;height:112px;border-radius:22px;border:1px solid #cbd5e1;background:#fff;display:grid;place-items:center;overflow:hidden;color:#2563eb;font-size:40px;font-weight:900}.master-image-preview img{width:100%;height:100%;object-fit:cover;display:block}.master-image-preview.is-empty{background:linear-gradient(135deg,#eff6ff,#f8fafc)}
.master-image-input{display:grid;gap:7px}.master-image-input label{font-weight:900;color:#0f172a}.master-image-input small{color:#64748b;font-size:12px;line-height:1.45}.master-remove-image{display:inline-flex!important;align-items:center;gap:8px;font-size:12.5px;color:#b91c1c;font-weight:800}.master-remove-image input{width:16px;height:16px;accent-color:#dc2626}
.master-data-table th:first-child,.master-data-table td:first-child{width:76px}
@media(max-width:720px){.master-image-form-card{grid-template-columns:1fr}.master-image-preview{width:96px;height:96px}.master-image-thumb{width:46px;height:46px;border-radius:14px}}


/* Master approval flow signature pad */
.master-signature-card{border:1px solid #dbe4ef;background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);border-radius:18px;padding:16px;margin-bottom:16px}
.master-signature-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}
.master-signature-head h4{margin:0;font-size:17px;line-height:1.3;font-weight:900;color:#0f172a}.master-signature-head p{margin:3px 0 0;color:#64748b;font-size:12.5px;line-height:1.55}
.master-signature-grid{display:grid;grid-template-columns:320px minmax(0,1fr);gap:16px;align-items:start}
.master-signature-upload,.master-signature-draw{display:grid;gap:8px}.master-signature-upload label,.master-signature-draw label{font-size:13px;font-weight:900;color:#334155}
.master-signature-upload small{color:#64748b;font-size:12px;line-height:1.5}.signature-pad-wrap{position:relative;border:1px dashed #94a3b8;background:#fff;border-radius:16px;overflow:hidden;min-height:180px}
.signature-pad-canvas{display:block;width:100%;height:180px;touch-action:none;background:linear-gradient(180deg,#fff 0%,#f8fafc 100%)}.signature-pad-placeholder{position:absolute;inset:0;display:grid;place-items:center;color:#94a3b8;font-weight:900;pointer-events:none}
.signature-pad-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.signature-pad-actions span{font-size:12px;color:#64748b;font-weight:700}
.master-signature-preview-row{display:flex;align-items:center;gap:10px;border:1px solid #e2e8f0;background:#fff;border-radius:14px;padding:10px}.master-signature-preview-row img{width:120px;height:52px;object-fit:contain;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px}.master-signature-preview-row label{font-size:12px;font-weight:800;color:#475569}
.master-signature-thumb{width:96px;height:42px;border:1px solid #e2e8f0;border-radius:10px;background:#fff;display:grid;place-items:center;overflow:hidden}.master-signature-thumb img{width:100%;height:100%;object-fit:contain}.master-signature-thumb.is-empty{background:#f8fafc;color:#94a3b8;font-size:11px;font-weight:900}
@media(max-width:900px){.master-signature-grid{grid-template-columns:1fr}.master-signature-head{display:grid}.master-signature-preview-row{align-items:flex-start;display:grid}.master-signature-preview-row img{width:160px;height:70px}}

/* Phase 4.1.5 ? Permission matrix UX refresh */
.permission-matrix-form{display:grid;gap:16px}
.permission-matrix-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;border:1px solid #dbe4ef;background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);border-radius:22px;padding:18px;box-shadow:0 1px 0 rgba(15,23,42,.03)}
.permission-matrix-eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:#2563eb;margin-bottom:4px}.permission-matrix-hero h3{margin:0;font-size:22px;line-height:1.25;color:#0f172a;font-weight:900}.permission-matrix-hero p{margin:6px 0 0;color:#64748b;line-height:1.55}.permission-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.permission-summary-card{border:1px solid #dbe4ef;background:#fff;border-radius:18px;padding:14px;display:grid;gap:4px}.permission-summary-card.is-accent{background:#eff6ff;border-color:#bfdbfe}.permission-summary-card span{font-size:12px;font-weight:800;color:#64748b}.permission-summary-card strong{font-size:26px;line-height:1.1;font-weight:900;color:#0f172a}.permission-summary-card small{font-size:12px;color:#64748b;line-height:1.45}.permission-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px}.permission-search-wrap{min-width:360px;max-width:520px;flex:1}.permission-bulk-actions{display:flex;flex-wrap:wrap;gap:8px}.permission-role-legend{padding:14px}.permission-role-legend-title{font-size:12px;font-weight:900;color:#64748b;margin-bottom:10px}.permission-role-chip-list{display:flex;flex-wrap:wrap;gap:10px}.permission-role-chip{border:1px solid #dbe4ef;background:#fff;border-radius:16px;padding:10px 12px;text-align:left;cursor:pointer;display:grid;gap:2px;min-width:150px}.permission-role-chip:hover{background:#f8fafc}.permission-role-chip strong{font-size:13px;color:#0f172a}.permission-role-chip small,.permission-role-chip span{font-size:11px;color:#64748b;line-height:1.35}.permission-module-list{display:grid;gap:14px}.permission-module-card{border:1px solid #dbe4ef;border-radius:20px;background:#fff;overflow:hidden;box-shadow:0 1px 0 rgba(15,23,42,.03)}.permission-module-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:14px 16px;background:#f8fafc;border-bottom:1px solid #e2e8f0}.permission-module-title{border:0;background:transparent;padding:0;display:flex;gap:10px;align-items:flex-start;text-align:left;cursor:pointer}.permission-module-caret{font-size:16px;line-height:1.35;color:#64748b}.permission-module-title strong{font-size:16px;line-height:1.35;color:#0f172a}.permission-module-title small{display:block;font-size:12px;line-height:1.45;color:#64748b;margin-top:2px}.permission-module-actions{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.permission-module-body{display:grid}.permission-module-card.is-collapsed .permission-module-body{display:none}.permission-module-card.is-collapsed .permission-module-caret{transform:rotate(-90deg)}.permission-grid{display:grid;grid-template-columns:minmax(240px,1.25fr) repeat(var(--role-count),minmax(96px,1fr));align-items:center}.permission-grid-head{background:#fff;border-bottom:1px solid #e2e8f0}.permission-grid-title,.permission-grid-role{padding:10px 12px;font-size:11px;font-weight:900;color:#64748b}.permission-grid-role{text-align:center}.permission-grid-row{border-bottom:1px solid #eef2f7}.permission-grid-row:last-child{border-bottom:0}.permission-grid-row:hover{background:#fbfdff}.permission-name-cell{padding:11px 12px;display:grid;gap:3px}.permission-name-cell strong{font-size:13px;line-height:1.35;color:#0f172a}.permission-name-cell small{font-size:11px;color:#64748b}.permission-check-cell{min-height:48px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-left:1px solid #eef2f7}.permission-check-cell input{position:absolute;opacity:0;pointer-events:none}.permission-switch{width:34px;height:24px;border-radius:9px;border:1px solid #cbd5e1;background:#fff;display:inline-flex;align-items:center;justify-content:center}.permission-switch:before{content:'';width:14px;height:14px;border-radius:5px;background:#cbd5e1;display:block}.permission-check-cell input:checked + .permission-switch{border-color:#2563eb;background:#2563eb;box-shadow:0 6px 16px rgba(37,99,235,.18)}.permission-check-cell input:checked + .permission-switch:before{background:#fff;clip-path:polygon(14% 48%,38% 72%,86% 20%,100% 34%,39% 96%,0 59%)}.permission-sticky-save{position:static;display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid #dbe4ef;background:#fff;border-radius:18px;padding:14px 16px}.permission-sticky-save strong{display:block;color:#0f172a}.permission-sticky-save small{display:block;color:#64748b;font-size:12px;margin-top:2px}@media(max-width:1100px){.permission-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.permission-matrix-hero,.permission-toolbar,.permission-module-head,.permission-sticky-save{display:grid}.permission-search-wrap{min-width:0;max-width:none;width:100%}.permission-grid{min-width:820px}.permission-module-body{overflow:auto}}@media(max-width:720px){.permission-summary-grid{grid-template-columns:1fr}.permission-matrix-hero{padding:14px;border-radius:18px}.permission-role-chip{min-width:100%;}.permission-sticky-save .button{width:100%}}


/* Numbering management UI refresh */
.numbering-header-badges{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.numbering-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 18px}
.numbering-kpi-card{border:1px solid #dbe4ef;background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);border-radius:18px;padding:16px;display:grid;gap:6px}
.numbering-kpi-card.is-accent{background:linear-gradient(180deg,#eff6ff 0%,#f8fbff 100%)}
.numbering-kpi-card.is-soft-warning{background:linear-gradient(180deg,#fffaf2 0%,#fff7ed 100%);border-color:#fed7aa}
.numbering-kpi-label{font-size:12px;line-height:1.4;font-weight:800;color:#64748b}
.numbering-kpi-value{font-size:30px;line-height:1.1;font-weight:900;color:#0f172a}
.numbering-kpi-sub{font-size:12px;line-height:1.45;color:#64748b}
.numbering-helper-grid-v2{display:grid;grid-template-columns:1.1fr .9fr;gap:18px;margin-bottom:18px}
.numbering-helper-card{padding:16px}
.numbering-token-grid-v2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.numbering-token-card{border:1px solid #e2e8f0;border-radius:16px;background:#fff;padding:12px;display:grid;gap:8px}
.numbering-token-card code{display:inline-flex;align-self:start;padding:6px 8px;border-radius:10px;background:#eff6ff;color:#1d4ed8;font-size:13px;font-weight:800}
.numbering-token-card p{margin:0;font-size:12px;line-height:1.55;color:#475569}
.numbering-example-stack{display:grid;gap:12px}
.numbering-example-card{border:1px solid #e2e8f0;border-radius:16px;background:#fff;padding:12px;display:grid;gap:6px}
.numbering-example-card strong{font-size:15px;line-height:1.35;color:#0f172a}
.numbering-example-card span{font-size:12px;line-height:1.55;color:#475569}
.numbering-policy-shell,.numbering-reset-shell{padding:16px}
.numbering-policy-shell-head{margin-bottom:12px}
.numbering-policy-toolbar{display:flex;align-items:center;gap:10px}
.numbering-policy-search{min-width:340px}
.numbering-policy-list{display:grid;gap:16px}
.numbering-policy-card-v2{border:1px solid #dbe4ef;border-radius:22px;background:linear-gradient(180deg,#fff 0%,#fbfdff 100%);padding:18px;display:grid;gap:16px;box-shadow:0 1px 0 rgba(15,23,42,.03)}
.numbering-policy-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:14px;border-bottom:1px solid #eef2f7}
.numbering-policy-identity{display:flex;align-items:flex-start;gap:14px;min-width:0}
.numbering-policy-code-badge{display:inline-flex;align-items:center;justify-content:center;min-width:64px;height:42px;padding:0 14px;border-radius:14px;background:#0f172a;color:#fff;font-size:15px;font-weight:900;letter-spacing:.03em}
.numbering-policy-titles{display:grid;gap:4px;min-width:0}
.numbering-policy-titles h4{margin:0;font-size:21px;line-height:1.25;font-weight:900;color:#0f172a}
.numbering-policy-titles p{margin:0;font-size:12.5px;line-height:1.55;color:#64748b}
.numbering-policy-top-right{display:grid;gap:10px;justify-items:end;flex:0 0 auto}
.numbering-policy-preview{border:1px solid #bfdbfe;background:#eff6ff;border-radius:16px;padding:12px 14px;display:grid;gap:4px;min-width:220px}
.numbering-policy-preview span{font-size:11px;line-height:1.35;font-weight:800;color:#1e40af}
.numbering-policy-preview strong{font-size:22px;line-height:1.2;font-weight:900;color:#0f172a;word-break:break-word}
.numbering-policy-mini-meta{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.numbering-quick-meta-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.numbering-quick-meta{border:1px dashed #dbe4ef;border-radius:16px;background:#fff;padding:12px;display:grid;gap:4px}
.numbering-quick-meta span{font-size:11px;line-height:1.35;font-weight:800;color:#64748b}
.numbering-quick-meta strong{font-size:14px;line-height:1.5;font-weight:900;color:#0f172a;word-break:break-word}
.numbering-form-grid-v2{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.numbering-form-grid-v2 .field-span-2{grid-column:span 2}
.numbering-reset-form{display:grid;grid-template-columns:1.3fr 1fr auto;gap:14px;align-items:end}
.numbering-reset-actions{display:flex;align-items:flex-end}
.numbering-reset-actions .button{width:100%}
@media (max-width:1200px){.numbering-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.numbering-helper-grid-v2{grid-template-columns:1fr}.numbering-form-grid-v2{grid-template-columns:repeat(2,minmax(0,1fr))}.numbering-policy-search{min-width:0;width:100%}}
@media (max-width:900px){.numbering-policy-card-top{display:grid}.numbering-policy-top-right{justify-items:start}.numbering-quick-meta-grid{grid-template-columns:1fr}.numbering-reset-form{grid-template-columns:1fr}.numbering-reset-actions{display:block}.numbering-policy-toolbar{width:100%}}
@media (max-width:720px){.numbering-kpi-grid,.numbering-token-grid-v2,.numbering-form-grid-v2{grid-template-columns:1fr}.numbering-form-grid-v2 .field-span-2{grid-column:auto}.numbering-policy-card-v2,.numbering-helper-card,.numbering-policy-shell,.numbering-reset-shell{padding:14px}.numbering-kpi-value{font-size:26px}.numbering-header-badges{justify-content:flex-start}}


/* System-wide form label and required-field standard */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.form-required-mark{display:inline-flex;align-items:center;justify-content:center;margin-left:4px;color:#dc2626;font-weight:950;line-height:1}
label.form-label-required{font-weight:850;color:#0f172a}
.field>label,.settings-field-label,.filter-field>label{display:inline-flex;align-items:center;gap:2px;min-height:20px}
.auto-form-label + .input,.auto-form-label + .select,.auto-form-label + textarea{margin-top:0}
.required-note-card{display:flex;align-items:flex-start;gap:10px;border:1px solid #fecaca;background:#fff7f7;color:#7f1d1d;border-radius:16px;padding:10px 12px;font-size:12.5px;line-height:1.55;margin-bottom:14px}
.required-note-card strong{color:#991b1b}


/* System-wide view-level form label standard */
.required-mark{color:#dc2626;font-weight:950;margin-left:3px}
.form-label .required-mark{vertical-align:baseline}
.field label.form-label,.field>label{display:inline-flex;align-items:center;gap:3px}

/* Phase 4.2.1 ? PDPA consent modal */
.pdpa-consent-root{position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center;padding:24px}
.pdpa-consent-root.is-open{display:flex}
.pdpa-consent-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.72);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.pdpa-consent-card{position:relative;width:min(92vw,430px);border:1px solid rgba(148,163,184,.14);border-radius:28px;background:linear-gradient(155deg,#181854 0%,#1b1d6a 48%,#0d3654 100%);box-shadow:0 30px 95px rgba(2,6,23,.44);color:#f8fafc;overflow:hidden}
.pdpa-consent-card:before{content:'';position:absolute;right:-80px;top:-72px;width:190px;height:190px;border-radius:999px;background:radial-gradient(circle,rgba(245,158,11,.24),transparent 68%);pointer-events:none}
.pdpa-consent-card:after{content:'';position:absolute;left:-85px;bottom:-92px;width:220px;height:220px;border-radius:999px;background:radial-gradient(circle,rgba(59,130,246,.17),transparent 68%);pointer-events:none}
.pdpa-consent-mode{position:relative;z-index:1;padding:26px;display:grid;gap:14px}
.pdpa-consent-mode[hidden]{display:none!important}
.pdpa-consent-mode-summary{text-align:center;justify-items:center;min-height:420px;align-content:center}
.pdpa-consent-summary-top{display:grid;justify-items:center;gap:10px}
.pdpa-consent-avatar-wrap{padding:4px;border-radius:999px;background:linear-gradient(180deg,rgba(245,158,11,.28),rgba(255,255,255,.04));box-shadow:0 14px 34px rgba(0,0,0,.22)}
.pdpa-consent-avatar{width:84px;height:84px;border-radius:999px;display:grid;place-items:center;font-size:38px;background:radial-gradient(circle at 35% 30%,#ffe7b3,#d97706 60%,#5b2b04 100%);border:4px solid rgba(255,255,255,.1)}
.pdpa-consent-badge{display:inline-flex;align-items:center;justify-content:center;min-height:24px;padding:4px 10px;border-radius:999px;background:rgba(245,158,11,.14);border:1px solid rgba(245,158,11,.42);color:#f8b84b;font-size:11px;line-height:1.35;font-weight:900}
.pdpa-consent-org{font-size:12px;line-height:1.45;color:#dbe6f5;font-weight:700}
.pdpa-consent-product{font-size:30px;line-height:1.1;font-weight:900;color:#f59e0b;letter-spacing:-.02em}
.pdpa-consent-card h2{margin:0;font-size:18px;line-height:1.45;font-weight:900;color:#fff;text-wrap:balance;max-width:17em}
.pdpa-consent-card p{margin:0;max-width:28em;font-size:12px;line-height:1.78;color:#cbd5e1}
.pdpa-consent-mini-status{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:14px;color:#dbe6f5;font-size:11px;font-weight:800}
.pdpa-consent-mini-status span{display:inline-flex;align-items:center;gap:6px}
.pdpa-consent-mini-status i{width:7px;height:7px;border-radius:999px;display:inline-block}
.pdpa-consent-mini-status .is-green{background:#22c55e}.pdpa-consent-mini-status .is-blue{background:#60a5fa}.pdpa-consent-mini-status .is-amber{background:#f59e0b}
.pdpa-consent-actions,.pdpa-settings-actions{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;width:100%}
.pdpa-btn{border:0;border-radius:12px;min-height:40px;padding:0 14px;font-size:12px;font-weight:900;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,background .16s ease,border-color .16s ease,color .16s ease;color:#f8fafc}
.pdpa-btn:hover{transform:translateY(-1px)}
.pdpa-btn-primary{background:#f59e0b;color:#0f172a;box-shadow:0 10px 26px rgba(245,158,11,.24)}
.pdpa-btn-primary:hover{background:#fbbf24}
.pdpa-btn-secondary{background:rgba(255,255,255,.08);border:1px solid rgba(203,213,225,.18);color:#f8fafc}
.pdpa-btn-secondary:hover{background:rgba(255,255,255,.12)}
.pdpa-btn-ghost{background:rgba(15,23,42,.22);border:1px solid rgba(148,163,184,.14);color:#cbd5e1}
.pdpa-btn-ghost:hover{border-color:rgba(148,163,184,.24);color:#fff}
.pdpa-consent-mode-settings{text-align:left;min-height:420px}
.pdpa-settings-head{display:flex;align-items:flex-start;gap:12px;padding-bottom:12px;border-bottom:1px solid rgba(148,163,184,.14)}
.pdpa-settings-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:12px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);font-size:18px;flex:0 0 auto}
.pdpa-settings-head h2{font-size:18px;line-height:1.35;margin:6px 0 0;color:#fff}
.pdpa-option-list{display:grid;gap:0;margin-top:4px}
.pdpa-option-row{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;border-bottom:1px solid rgba(148,163,184,.12);cursor:pointer}
.pdpa-option-row:last-child{border-bottom:0}
.pdpa-option-row.is-locked{cursor:not-allowed;opacity:.96}
.pdpa-option-main{display:grid;gap:4px;min-width:0}
.pdpa-option-title{display:inline-flex;align-items:center;gap:7px;font-size:13px;line-height:1.45;font-weight:900;color:#f8fafc}
.pdpa-option-title i{font-style:normal}
.pdpa-option-row small{font-size:11px;line-height:1.55;color:#94a3b8}
.pdpa-switch-input{position:absolute;opacity:0;pointer-events:none}
.pdpa-switch{width:42px;height:24px;border-radius:999px;background:rgba(100,116,139,.45);border:1px solid rgba(148,163,184,.22);display:inline-flex;align-items:center;padding:2px;flex:0 0 auto;transition:background .18s ease,border-color .18s ease}
.pdpa-switch span{width:18px;height:18px;border-radius:999px;background:#f8fafc;box-shadow:0 4px 12px rgba(0,0,0,.2);transition:transform .18s ease}
.pdpa-switch-input:checked + .pdpa-switch,.pdpa-switch.is-on{background:#f59e0b;border-color:#fbbf24}
.pdpa-switch-input:checked + .pdpa-switch span,.pdpa-switch.is-on span{transform:translateX(18px)}
.pdpa-settings-actions{justify-content:flex-end;padding-top:8px;margin-top:auto}
.pdpa-privacy-link{display:none!important}
.pdpa-privacy-link.is-visible{display:none!important}
body.stock-modal-open{overflow:hidden}
@media(max-width:640px){.pdpa-consent-root{padding:16px}.pdpa-consent-card{width:100%;border-radius:24px}.pdpa-consent-mode,.pdpa-consent-mode-summary,.pdpa-consent-mode-settings{min-height:auto;padding:22px}.pdpa-consent-product{font-size:26px}.pdpa-consent-actions,.pdpa-settings-actions{display:grid;grid-template-columns:1fr}.pdpa-btn{width:100%}}

.pdpa-consent-root.is-settings .pdpa-consent-mode-summary{display:none!important}
.pdpa-consent-root.is-settings .pdpa-consent-mode-settings{display:grid!important}


/* Phase 4.2.2 ? Receipt partial receive workflow */
.receipt-live-kpi{background:#eff6ff!important;border-color:#bfdbfe!important}
.receipt-line-progress{min-width:180px;display:grid;gap:6px}
.receipt-line-progress-top{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px;color:#64748b}
.receipt-line-state{display:inline-flex;align-items:center;min-height:24px;padding:4px 9px;border-radius:999px;font-size:11px;font-weight:900;border:1px solid #e2e8f0;background:#f8fafc;color:#475569;white-space:nowrap}
.receipt-line-state.is-open{background:#f8fafc;color:#475569;border-color:#e2e8f0}
.receipt-line-state.is-partial{background:#fff7ed;color:#c2410c;border-color:#fed7aa}
.receipt-line-state.is-complete{background:#dcfce7;color:#15803d;border-color:#bbf7d0}
.receipt-progress-track{height:7px;width:100%;border-radius:999px;background:#e2e8f0;overflow:hidden}
.receipt-progress-track span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#f59e0b,#16a34a)}
.po-line-receive-status{display:grid;gap:5px;min-width:150px}
.po-line-receive-status small{font-size:11px;color:#64748b;font-weight:800}
@media(max-width:900px){.receipt-line-progress{min-width:0;width:100%}.receipt-line-status{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))}.receipt-line-progress{grid-column:1/-1}}


/* Phase 4.2.4 ? PO/Receipt dashboard sync */
.dashboard-status-subhead{margin:16px 0 8px;font-size:12px;font-weight:900;color:#64748b;text-transform:uppercase;letter-spacing:.06em}
.dashboard-receipt-row strong small{display:block;margin-top:2px;color:#64748b;font-size:11px;font-weight:700}
.dashboard-po-receive-row{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(180px,1.4fr) auto;gap:12px;align-items:center;border:1px solid #e2e8f0;border-radius:16px;padding:12px;background:#fff;text-decoration:none;color:#0f172a;transition:background .15s ease,border-color .15s ease,transform .15s ease}
.dashboard-po-receive-row:hover{background:#f8fafc;border-color:#bfdbfe;transform:translateY(-1px)}
.dashboard-po-receive-row strong{display:block;font-size:13px;color:#0f172a}
.dashboard-po-receive-row small{display:block;margin-top:2px;font-size:11px;color:#64748b;font-weight:700}
.dashboard-receive-progress{display:grid;gap:5px}
.dashboard-receive-progress span{font-size:11px;color:#64748b;font-weight:800}
.dashboard-receive-progress .receipt-progress-track{height:7px;background:#e2e8f0;border-radius:999px;overflow:hidden}
.dashboard-receive-progress .receipt-progress-track i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#f59e0b,#16a34a)}
@media(max-width:900px){.dashboard-po-receive-row{grid-template-columns:1fr}.dashboard-po-receive-row .badge{justify-self:start}}


/* Phase 4.2.5 ? PO receipt history UI */
.po-receipt-history-panel{overflow:hidden}
.po-receive-overview{display:grid;grid-template-columns:1.4fr 1fr;gap:14px;margin-bottom:16px}
.po-receive-total-card{border:1px solid #dbeafe;background:linear-gradient(180deg,#eff6ff 0%,#fff 100%);border-radius:20px;padding:16px;display:grid;gap:12px}
.po-receive-total-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.po-receive-total-head span{font-size:12px;font-weight:900;color:#1d4ed8}
.po-receive-total-head strong{font-size:28px;line-height:1;font-weight:950;color:#0f172a}
.po-receive-track{height:10px}
.po-receive-total-meta{display:flex;flex-wrap:wrap;gap:10px;color:#64748b;font-size:12px;font-weight:800}
.po-receive-total-meta strong{color:#0f172a}
.po-receive-mini-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.po-receive-mini-grid>div{border:1px solid #e2e8f0;background:#fff;border-radius:16px;padding:12px;display:grid;gap:4px}
.po-receive-mini-grid span{font-size:11px;color:#64748b;font-weight:900}
.po-receive-mini-grid strong{font-size:18px;color:#0f172a;font-weight:950}
.po-receipt-history-list{display:grid;gap:12px}
.po-receipt-history-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:start;border:1px solid #e2e8f0;background:#fff;border-radius:20px;padding:14px;box-shadow:0 1px 2px rgba(15,23,42,.04)}
.po-receipt-history-card.is-reversed{background:#f8fafc;border-style:dashed;opacity:.92}
.po-receipt-history-main{display:flex;align-items:flex-start;gap:12px;min-width:0}
.po-receipt-history-icon{width:42px;height:42px;border-radius:15px;background:#eff6ff;color:#1d4ed8;display:grid;place-items:center;font-size:12px;font-weight:950;flex:0 0 auto}
.po-receipt-history-card.is-reversed .po-receipt-history-icon{background:#fff7ed;color:#c2410c}
.po-receipt-history-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.po-receipt-history-title strong{font-size:15px;color:#0f172a}
.po-receipt-history-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:5px;color:#64748b;font-size:11px;font-weight:800}
.po-receipt-history-codes{display:inline-flex;margin-top:8px;border-radius:999px;background:#f1f5f9;color:#475569;font-size:11px;font-weight:800;padding:5px 9px;max-width:100%}
.po-receipt-history-note,.po-receipt-history-reason{margin-top:8px;border-radius:12px;padding:8px 10px;font-size:12px;line-height:1.55}
.po-receipt-history-note{background:#f8fafc;color:#475569;border:1px solid #e2e8f0}
.po-receipt-history-reason{background:#fff7ed;color:#9a3412;border:1px solid #fed7aa}
.po-receipt-history-numbers{display:grid;grid-template-columns:repeat(3,minmax(90px,1fr)) auto;gap:8px;align-items:center}
.po-receipt-history-numbers>div{border:1px solid #e2e8f0;border-radius:14px;padding:9px 10px;background:#fff;display:grid;gap:2px}
.po-receipt-history-numbers span{font-size:10px;font-weight:900;color:#64748b}
.po-receipt-history-numbers strong{font-size:13px;color:#0f172a;font-weight:950}
.receipt-po-impact{display:grid;gap:5px;min-width:150px}
.receipt-po-impact span,.receipt-po-impact small{font-size:11px;color:#64748b;font-weight:800}
@media(max-width:1100px){.po-receive-overview{grid-template-columns:1fr}.po-receipt-history-card{grid-template-columns:1fr}.po-receipt-history-numbers{grid-template-columns:repeat(3,minmax(0,1fr))}.po-receipt-history-numbers .button{grid-column:1/-1;justify-self:start}}
@media(max-width:640px){.po-receive-mini-grid,.po-receipt-history-numbers{grid-template-columns:1fr}.po-receive-total-meta{display:grid}.po-receipt-history-main{display:grid}.po-receipt-history-icon{width:38px;height:38px}}


/* Phase 4.3.1 ? Stock Movement Ledger UI */
.movement-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.movement-kpi{border:1px solid #e2e8f0;border-radius:18px;background:#fff;padding:14px;display:grid;gap:4px;box-shadow:0 1px 2px rgba(15,23,42,.04)}
.movement-kpi span,.movement-detail-card span{font-size:11px;font-weight:900;color:#64748b;text-transform:uppercase;letter-spacing:.04em}
.movement-kpi strong{font-size:20px;line-height:1.2;color:#0f172a;font-weight:950}
.movement-detail-hero{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.movement-detail-card{border:1px solid #dbeafe;border-radius:20px;background:linear-gradient(180deg,#eff6ff 0%,#fff 100%);padding:16px;display:grid;gap:6px}
.movement-detail-card strong{font-size:16px;line-height:1.35;color:#0f172a;font-weight:950;word-break:break-word}
.filter-checkbox{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:850;color:#334155;min-height:40px}
.filter-checkbox input{width:16px;height:16px}
@media(max-width:1100px){.movement-kpi-grid,.movement-detail-hero{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.movement-kpi-grid,.movement-detail-hero{grid-template-columns:1fr}}


/* Phase 4.3.2 ? Stock Adjustment Workflow */
.stock-adjustment-lines{display:grid;gap:12px}
.stock-adjustment-line{display:grid;grid-template-columns:1.5fr 1.1fr .8fr .8fr .8fr .8fr 1.4fr;gap:12px;align-items:end;border:1px solid #e2e8f0;border-radius:20px;background:#fff;padding:14px;box-shadow:0 1px 2px rgba(15,23,42,.04)}
.stock-adjustment-line .field-span-2{grid-column:span 1}
.stock-adjustment-form [data-diff-qty]{font-weight:900}
@media(max-width:1200px){.stock-adjustment-line{grid-template-columns:repeat(2,minmax(0,1fr))}.stock-adjustment-line .field-span-2{grid-column:1/-1}}
@media(max-width:640px){.stock-adjustment-line{grid-template-columns:1fr}}


/* Phase 4.3.2 ? Stock Card totals */
.stock-card-total-row th{background:#f8fafc!important;border-top:2px solid #cbd5e1!important;font-weight:950!important;color:#0f172a!important}


/* Phase 4.3.2 ? Stock Card UX clarity */
.stock-card-explain{border:1px solid #dbeafe;background:linear-gradient(180deg,#eff6ff 0%,#ffffff 100%);border-radius:20px;padding:16px 18px;display:grid;gap:14px}
.stock-card-explain-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.stock-card-explain-head strong{font-size:15px;color:#0f172a}
.stock-card-explain-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.stock-card-explain-grid>div{background:#fff;border:1px solid #dbeafe;border-radius:16px;padding:12px;display:grid;gap:5px}
.stock-card-explain-grid span{font-size:12px;font-weight:950;color:#1d4ed8}
.stock-card-explain-grid p{margin:0;font-size:12px;line-height:1.55;color:#475569}
.stock-card-explain-note{border-radius:14px;background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;padding:10px 12px;font-size:12px;line-height:1.6;font-weight:700}
.stock-card-total-row th{vertical-align:top}
@media(max-width:1100px){.stock-card-explain-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.stock-card-explain-grid{grid-template-columns:1fr}.stock-card-explain-head{align-items:flex-start;flex-direction:column}}


/* Phase 4.3.2 ? Adjustment delete button fix */
.stock-adjustment-line{
    grid-template-columns:1.35fr 1fr .72fr .72fr .72fr .72fr 1.2fr auto!important;
    align-items:start!important;
}
.stock-adjustment-row-action{
    align-self:end!important;
    min-width:78px!important;
}
.stock-adjustment-delete-btn{
    width:100%!important;
    min-height:44px!important;
    color:#b91c1c!important;
    border-color:#fecaca!important;
    background:#fff!important;
}
.stock-adjustment-delete-btn:hover{
    background:#fef2f2!important;
}
.stock-adjustment-remark-field{
    min-width:180px!important;
}
@media(max-width:1200px){
    .stock-adjustment-line{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
    .stock-adjustment-row-action{
        grid-column:1/-1!important;
    }
    .stock-adjustment-delete-btn{
        width:auto!important;
    }
}
@media(max-width:640px){
    .stock-adjustment-line{
        grid-template-columns:1fr!important;
    }
    .stock-adjustment-delete-btn{
        width:100%!important;
    }
}


/* Phase 4.3.2 ? Core form required asterisk color */
.text-red-500,
.text-orange-500,
.text-orange-600,
.required-marker,
.required-asterisk,
.form-required,
label .required,
label .required-marker,
label .required-asterisk,
.field label .text-red-500,
.field label .text-orange-500,
.field label .text-orange-600,
.form-label .text-red-500,
.form-label .text-orange-500,
.form-label .text-orange-600{
    color:#ea580c !important; /* orange-red */
    font-weight:900 !important;
}


/* Phase 4.3.2 ? Required asterisk real color fix */
.form-required-mark,
label .form-required-mark,
.field label .form-required-mark,
.form-label .form-required-mark,
.form-label-required .form-required-mark{
    color:#dc2626 !important; /* red */
    font-weight:900 !important;
}


/* Phase 4.3.4 ? Issue request foundation */
.issue-lines{display:grid;gap:12px}
.issue-line{display:grid;grid-template-columns:1.45fr 1fr .75fr .75fr .75fr 1.05fr auto;gap:12px;align-items:start;border:1px solid #e2e8f0;border-radius:20px;background:#fff;padding:14px;box-shadow:0 1px 2px rgba(15,23,42,.04)}
.issue-line .field label{display:block;margin-bottom:6px;font-size:13px;font-weight:900;color:#0f172a}
.issue-line .input,.issue-line .select{min-height:44px}
.issue-row-action{align-self:end;min-width:74px}
.issue-delete-btn{width:100%;min-height:44px;color:#b91c1c!important;border-color:#fecaca!important;background:#fff!important}
.issue-delete-btn:hover{background:#fef2f2!important}
.issue-material-field{min-width:240px}
.issue-remark-field{min-width:170px}
@media(max-width:1200px){.issue-line{grid-template-columns:repeat(2,minmax(0,1fr))}.issue-material-field,.issue-remark-field,.issue-row-action{grid-column:1/-1}.issue-delete-btn{width:auto}}
@media(max-width:640px){.issue-line{grid-template-columns:1fr}.issue-delete-btn{width:100%}}


/* Phase 4.3.5 ? Issue workflow */
.issue-workflow-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:12px}.issue-workflow-strip span{display:flex;align-items:center;justify-content:center;min-height:36px;border:1px solid #dbeafe;background:#f8fafc;color:#64748b;border-radius:999px;font-size:12px;font-weight:900}.issue-workflow-strip span.is-active{background:#0f5f8c;color:#fff;border-color:#0f5f8c;box-shadow:0 8px 18px rgba(15,95,140,.18)}.issue-workflow-strip span.is-muted{opacity:.45}.issue-cancel-form{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.issue-cancel-form .input{min-width:260px;min-height:42px}@media(max-width:900px){.issue-workflow-strip{grid-template-columns:1fr}.issue-cancel-form,.issue-cancel-form .input{width:100%}}


/* Phase 4.3.5 ? Issue show UI refine */
.issue-show-hero{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:18px;align-items:stretch;border:1px solid #dbeafe;border-radius:26px;background:linear-gradient(135deg,#eff6ff 0%,#ffffff 55%,#f8fafc 100%);padding:22px;box-shadow:0 12px 34px rgba(15,23,42,.08)}
.issue-show-hero-main{display:grid;gap:8px}
.issue-show-eyebrow{display:inline-flex;width:max-content;border-radius:999px;background:#dbeafe;color:#1d4ed8;padding:5px 10px;font-size:12px;font-weight:900}
.issue-show-hero h2{font-size:30px;line-height:1.1;margin:0;color:#0f172a;letter-spacing:-.03em}
.issue-show-hero p{margin:0;color:#475569;line-height:1.65}
.issue-show-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
.issue-show-tags span{border:1px solid #cbd5e1;background:#fff;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:800;color:#334155}
.issue-show-hero-side{border:1px solid #dbeafe;border-radius:22px;background:#fff;padding:18px;display:grid;align-content:center;gap:6px;text-align:right}
.issue-show-side-label{font-size:12px;font-weight:900;color:#64748b}
.issue-show-hero-side strong{font-size:26px;color:#0f172a;line-height:1}
.issue-show-hero-side span{font-size:12px;color:#475569;font-weight:800}
.issue-workflow-card{overflow:hidden}
.issue-stepper{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;position:relative}
.issue-step{border:1px solid #e2e8f0;border-radius:18px;background:#f8fafc;padding:12px;display:flex;gap:10px;align-items:flex-start;min-height:78px}
.issue-step-dot{width:30px;height:30px;border-radius:11px;display:grid;place-items:center;flex:0 0 auto;background:#e2e8f0;color:#475569;font-weight:950}
.issue-step strong{display:block;color:#0f172a;font-size:13px}
.issue-step span{display:block;color:#64748b;font-size:12px;margin-top:3px;line-height:1.35}
.issue-step.is-done{background:#f0fdf4;border-color:#bbf7d0}
.issue-step.is-done .issue-step-dot{background:#16a34a;color:#fff}
.issue-step.is-active{background:#eff6ff;border-color:#93c5fd;box-shadow:0 8px 20px rgba(37,99,235,.12)}
.issue-step.is-active .issue-step-dot{background:#2563eb;color:#fff}
.issue-step.is-muted{opacity:.55}
.issue-action-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;border:1px solid #e2e8f0;border-radius:20px;background:#f8fafc;padding:14px}
.issue-action-panel strong{display:block;color:#0f172a;font-size:14px}
.issue-action-panel span{display:block;color:#64748b;font-size:12px;margin-top:4px}
.issue-action-buttons{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;align-items:center}
.issue-action-buttons form{margin:0}
.issue-cancel-form{display:flex;gap:8px;align-items:center}
.issue-cancel-form .input{min-height:40px;min-width:220px}
.issue-post-button{background:#14532d!important;border-color:#14532d!important}
.issue-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.issue-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.issue-info-grid>div{border:1px solid #e2e8f0;background:#f8fafc;border-radius:16px;padding:12px}
.issue-info-grid span{display:block;color:#64748b;font-size:12px;font-weight:800;margin-bottom:5px}
.issue-info-grid strong{display:block;color:#0f172a;line-height:1.5}
.issue-note-box{display:grid;gap:7px}
.issue-note-box strong{color:#0f172a;font-size:13px}
.issue-note-box p{margin:0 0 10px;color:#475569;line-height:1.65;border:1px solid #e2e8f0;background:#f8fafc;border-radius:16px;padding:12px;min-height:46px}
.issue-items-wrap{border-radius:18px}
.issue-items-table td{vertical-align:middle}
.issue-items-table td small{color:#64748b}
@media(max-width:1100px){.issue-show-hero{grid-template-columns:1fr}.issue-show-hero-side{text-align:left}.issue-stepper{grid-template-columns:1fr 1fr}.issue-action-panel{grid-template-columns:1fr}.issue-action-buttons{justify-content:flex-start}.issue-detail-grid{grid-template-columns:1fr}}
@media(max-width:640px){.issue-show-hero{padding:16px;border-radius:20px}.issue-show-hero h2{font-size:24px}.issue-stepper{grid-template-columns:1fr}.issue-info-grid{grid-template-columns:1fr}.issue-cancel-form{flex-direction:column;align-items:stretch}.issue-cancel-form .input{min-width:0}.issue-action-buttons,.issue-action-buttons form,.issue-action-buttons .button{width:100%}}


/* Phase 4.3.5 ? Issue prepare allow shortage */
.issue-line-shortage td{
    background:#fff7ed!important;
}
.issue-shortage-text{
    color:#c2410c!important;
    font-weight:900!important;
}


/* Phase 4.3.5 ? Issue action panel UX polish */
.issue-action-panel-pro{grid-template-columns:minmax(280px,.78fr) minmax(420px,1.22fr)!important;align-items:stretch!important;padding:16px!important;border-radius:24px!important;background:linear-gradient(135deg,#f8fafc 0%,#eff6ff 100%)!important;border-color:#dbeafe!important}
.issue-action-copy{display:flex;align-items:center;gap:12px;min-width:0}.issue-action-icon{width:44px;height:44px;flex:0 0 auto;display:grid;place-items:center;border-radius:16px;background:#dbeafe;color:#1d4ed8;font-size:20px;box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}
.issue-action-workspace{display:grid;gap:10px;justify-items:end}.issue-primary-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;align-items:center}.issue-primary-actions form{margin:0}.issue-action-main{min-width:118px;min-height:46px;padding-left:18px!important;padding-right:18px!important;box-shadow:0 10px 22px rgba(37,99,235,.18)}
.issue-cancel-box{width:min(520px,100%);border:1px solid #fee2e2;background:#fff;border-radius:18px;overflow:hidden}.issue-cancel-box summary{cursor:pointer;list-style:none;padding:11px 14px;color:#b91c1c;font-weight:900;font-size:13px;display:flex;align-items:center;justify-content:space-between}.issue-cancel-box summary::-webkit-details-marker{display:none}.issue-cancel-box summary::after{content:attr(data-i18n-closed);color:#64748b;font-size:11px;font-weight:800}.issue-cancel-box[open] summary{border-bottom:1px solid #fee2e2;background:#fff7f7}.issue-cancel-box[open] summary::after{content:attr(data-i18n-open)}.issue-cancel-box .issue-cancel-form{display:grid!important;gap:8px!important;padding:12px!important}.issue-cancel-box .issue-cancel-form label{font-size:12px;font-weight:900;color:#0f172a}.issue-cancel-control{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}.issue-cancel-control .input{min-height:44px;min-width:0!important}.issue-cancel-button{min-height:44px;color:#b91c1c!important;border-color:#fecaca!important;background:#fff!important}.issue-cancel-button:hover{background:#fef2f2!important}
@media(max-width:1100px){.issue-action-panel-pro{grid-template-columns:1fr!important}.issue-action-workspace{justify-items:stretch}.issue-primary-actions{justify-content:flex-start}.issue-cancel-box{width:100%}}
@media(max-width:640px){.issue-action-copy{align-items:flex-start}.issue-primary-actions,.issue-primary-actions form,.issue-action-main{width:100%}.issue-cancel-control{grid-template-columns:1fr}.issue-cancel-button{width:100%}}


/* Phase 4.3.12 ? Material detail image resize fix
   I18N-safe CSS note */
.material-detail-hero.material-detail-hero-with-image{
    display:grid!important;
    grid-template-columns:minmax(220px,360px) minmax(0,1fr) minmax(190px,230px)!important;
    align-items:stretch!important;
    gap:18px!important;
    padding:18px!important;
}
.material-detail-hero-with-image .material-detail-cover{
    width:100%!important;
    min-width:0!important;
    height:clamp(220px,28vw,340px)!important;
    max-height:340px!important;
    border:1px solid #dbe4ef!important;
    border-radius:24px!important;
    background:#ffffff!important;
    overflow:hidden!important;
    display:grid!important;
    place-items:center!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.75);
}
.material-detail-hero-with-image .material-detail-cover img{
    width:100%!important;
    height:100%!important;
    max-width:100%!important;
    max-height:100%!important;
    object-fit:contain!important;
    object-position:center!important;
    padding:14px!important;
    background:#ffffff!important;
    display:block!important;
}
.material-detail-hero-with-image .material-detail-cover.is-empty{
    background:#f8fafc!important;
    color:#64748b!important;
    font-weight:900;
}
.material-detail-hero-with-image .material-detail-titleblock{
    align-self:center!important;
    min-width:0!important;
}
.material-detail-hero-with-image .material-detail-kpi{
    align-self:stretch!important;
    min-width:0!important;
    display:grid!important;
    align-content:center!important;
}

/* I18N-safe CSS note */
.material-gallery-layout{
    display:grid;
    grid-template-columns:minmax(240px,360px) minmax(0,1fr)!important;
    gap:18px!important;
    align-items:start!important;
}
.material-gallery-featured-thumb{
    height:clamp(220px,26vw,320px)!important;
    max-height:320px!important;
    background:#ffffff!important;
    display:grid!important;
    place-items:center!important;
    overflow:hidden!important;
}
.material-gallery-featured-thumb img{
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
    object-position:center!important;
    padding:12px!important;
    background:#ffffff!important;
}
.material-gallery-grid{
    display:grid!important;
    grid-template-columns:repeat(auto-fill,minmax(150px,1fr))!important;
    gap:14px!important;
}
.material-gallery-item{
    height:150px!important;
    border-radius:18px!important;
    background:#fff!important;
    overflow:hidden!important;
}
.material-gallery-item img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center!important;
}

/* I18N-safe CSS note */
@media(max-width:1180px){
    .material-detail-hero.material-detail-hero-with-image{
        grid-template-columns:minmax(220px,320px) minmax(0,1fr)!important;
    }
    .material-detail-hero-with-image .material-detail-kpi{
        grid-column:1 / -1!important;
        text-align:left!important;
    }
    .material-gallery-layout{
        grid-template-columns:1fr!important;
    }
}

/* I18N-safe CSS note */
@media(max-width:760px){
    .material-detail-hero.material-detail-hero-with-image{
        grid-template-columns:1fr!important;
        padding:14px!important;
    }
    .material-detail-hero-with-image .material-detail-cover{
        height:260px!important;
        max-height:260px!important;
        border-radius:20px!important;
    }
    .material-gallery-featured-thumb{
        height:240px!important;
        max-height:240px!important;
    }
    .material-gallery-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
    .material-gallery-item{
        height:132px!important;
    }
}
@media(max-width:480px){
    .material-gallery-grid{
        grid-template-columns:1fr!important;
    }
    .material-gallery-item{
        height:190px!important;
    }
}


/* Phase 4.3.9 ? Material form full overhaul */
.material-form-overhaul{display:grid;gap:22px}
.material-form-hero{display:grid;grid-template-columns:170px minmax(0,1fr) 260px;gap:18px;align-items:stretch;border:1px solid #dbeafe;border-radius:30px;background:linear-gradient(135deg,#eff6ff 0%,#ffffff 54%,#f8fafc 100%);padding:20px;box-shadow:0 16px 38px rgba(15,23,42,.08)}
.material-form-hero-cover{border:1px solid #bfdbfe;border-radius:24px;background:#fff;min-height:150px;overflow:hidden;display:grid;place-items:center}
.material-form-hero-cover img{width:100%;height:100%;object-fit:cover;display:block}
.material-form-hero-cover.is-empty div{display:grid;gap:6px;justify-items:center;color:#64748b;text-align:center}
.material-form-hero-cover.is-empty span{font-size:34px}
.material-form-hero-cover.is-empty strong{font-size:12px}
.material-form-hero-copy{display:grid;align-content:center;gap:8px;min-width:0}
.material-form-kicker{display:inline-flex;width:max-content;border-radius:999px;background:#dbeafe;color:#1d4ed8;padding:6px 11px;font-size:12px;font-weight:950}
.material-form-hero h2{font-size:30px;line-height:1.1;margin:0;color:#0f172a;letter-spacing:-.03em}
.material-form-hero p{margin:0;color:#475569;line-height:1.65}
.material-form-hero-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
.material-form-hero-tags span{border:1px solid #cbd5e1;background:#fff;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:850;color:#334155}
.material-form-save-card{border:1px solid #dbeafe;border-radius:24px;background:#fff;display:grid;align-content:center;gap:9px;padding:16px;box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}
.material-form-save-card strong{font-size:16px;color:#0f172a}
.material-form-save-card span{font-size:12px;color:#64748b;line-height:1.5}
.material-form-save-card .button{width:100%}
.material-form-stepbar{position:sticky;top:10px;z-index:10;display:flex;gap:8px;overflow:auto;border:1px solid #e2e8f0;border-radius:22px;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);padding:8px;box-shadow:0 10px 24px rgba(15,23,42,.06)}
.material-form-stepbar a{flex:0 0 auto;text-decoration:none;border:1px solid transparent;border-radius:999px;padding:9px 13px;color:#334155;font-size:12px;font-weight:950}
.material-form-stepbar a:hover{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}
.material-form-layout-overhaul{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:22px;align-items:start}
.material-form-main{display:grid;gap:18px}
.material-form-section-pro{border-radius:26px;border:1px solid #e2e8f0;background:#fff;box-shadow:0 10px 28px rgba(15,23,42,.055);padding:20px}
.material-form-section-pro .material-form-section-head{padding:0;margin-bottom:16px;border:0}
.material-form-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.material-form-section-head h3{margin:3px 0 4px;font-size:19px;color:#0f172a;letter-spacing:-.01em}
.material-form-section-head p{margin:0;color:#64748b;line-height:1.55}
.material-section-kicker{display:block;color:#2563eb;font-size:11px;font-weight:950;text-transform:uppercase;letter-spacing:.06em}
.material-form-callout{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:center;border:1px solid #dbeafe;border-radius:18px;background:#eff6ff;padding:12px 14px;margin-bottom:16px}
.material-form-callout strong{color:#1e3a8a;font-size:13px}
.material-form-callout span{color:#475569;font-size:13px;line-height:1.55}
.material-form-grid-strong{grid-template-columns:repeat(4,minmax(0,1fr))}
.material-form-grid-strong .full{grid-column:1/-1}
.material-form-overhaul .input,.material-form-overhaul .select,.material-form-overhaul textarea{min-height:46px;border-radius:15px}
.material-form-overhaul .input-strong{font-size:16px;font-weight:850}
.material-form-overhaul .field label{font-size:13px;font-weight:950;color:#1f2937}
.material-form-mini-kpi{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:16px}
.material-form-mini-kpi div{border:1px solid #e2e8f0;border-radius:18px;background:#f8fafc;padding:12px}
.material-form-mini-kpi span,.material-live-summary span{display:block;color:#64748b;font-size:12px;font-weight:850;margin-bottom:4px}
.material-form-mini-kpi strong,.material-live-summary strong{display:block;color:#0f172a;font-size:17px;line-height:1.2}
.material-form-side-overhaul{position:sticky;top:84px;display:grid;gap:16px}
.material-side-panel{border-radius:24px;border:1px solid #e2e8f0;background:#fff;padding:16px;box-shadow:0 10px 24px rgba(15,23,42,.055)}
.material-side-save{border-color:#bfdbfe;background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%)}
.material-live-summary{display:grid;gap:8px;margin:10px 0 14px}
.material-live-summary div{border:1px solid #e2e8f0;border-radius:16px;background:#f8fafc;padding:10px}
.side-field-list{display:grid;gap:12px}
.material-flag-grid-pro{display:grid;grid-template-columns:1fr;gap:8px}
.material-flag-grid-pro .material-flag{border:1px solid #e2e8f0;border-radius:15px;background:#f8fafc;padding:10px 12px}
.material-form-actions-sticky{position:sticky;bottom:12px;z-index:9;border:1px solid #dbeafe;border-radius:22px;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);box-shadow:0 16px 34px rgba(15,23,42,.12);padding:12px;display:flex;justify-content:flex-end;gap:10px}
.material-image-form-intro{display:grid;grid-template-columns:56px minmax(0,1fr);gap:14px;align-items:center;border:1px solid #dbeafe;border-radius:22px;background:linear-gradient(135deg,#f8fbff 0%,#eef6ff 100%);padding:16px;margin-bottom:16px}
.material-image-form-intro-icon{width:56px;height:56px;border-radius:18px;display:grid;place-items:center;background:#dbeafe;color:#1d4ed8;font-size:28px}
.material-image-form-intro-copy strong{display:block;color:#0f172a;font-size:14px;margin-bottom:4px}
.material-image-form-intro-copy p{margin:0;color:#475569;line-height:1.6}
.material-image-manage-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(215px,1fr));gap:16px;margin-bottom:16px}
.material-image-manage-card{border:1px solid #e2e8f0;border-radius:22px;background:#fff;padding:0;overflow:hidden;display:grid;box-shadow:0 10px 26px rgba(15,23,42,.06)}
.material-image-manage-card.is-cover{border-color:#93c5fd;box-shadow:0 12px 30px rgba(37,99,235,.14)}
.material-image-manage-thumb{position:relative;height:180px;background:#f8fafc;display:grid;place-items:center;overflow:hidden}
.material-image-manage-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.material-image-badge{position:absolute;left:12px;top:12px;padding:6px 10px;border-radius:999px;background:rgba(15,23,42,.82);color:#fff;font-size:11px;font-weight:950}
.material-image-card-body{display:grid;gap:12px;padding:14px}
.material-image-card-title strong{display:block;color:#0f172a;font-size:13px}
.material-image-card-title small{display:block;margin-top:4px;color:#64748b}
.material-image-action-list{display:grid;gap:8px}
.material-image-choice{display:flex;align-items:center;gap:9px;padding:10px 12px;border:1px solid #e2e8f0;border-radius:14px;background:#fff;font-size:12px;font-weight:900;color:#334155}
.material-image-choice.is-primary{background:#f8fbff}
.material-image-choice.is-danger{background:#fff8f8;color:#b91c1c;border-color:#fecaca}
.material-image-empty-pro{display:grid;justify-items:center;gap:8px;text-align:center;border:1px dashed #cbd5e1;border-radius:22px;background:#f8fafc;color:#64748b;padding:24px;margin-bottom:16px}
.material-image-empty-icon{width:56px;height:56px;border-radius:18px;display:grid;place-items:center;background:#e2e8f0;color:#475569;font-size:28px}
.material-image-empty-pro strong{color:#0f172a}
.material-image-empty-pro p{margin:0;max-width:560px;line-height:1.65}
.material-image-upload-box-pro{display:grid;grid-template-columns:minmax(0,.9fr) minmax(280px,1.1fr);gap:16px;align-items:center;border:1px solid #bfdbfe;border-radius:22px;background:linear-gradient(135deg,#eff6ff 0%,#f8fbff 100%);padding:16px 18px}
.material-image-upload-copy label{display:block;font-weight:950;color:#0f172a;margin-bottom:4px}
.material-image-upload-copy p{margin:0;color:#475569;line-height:1.6}
.material-image-upload-control{display:grid;gap:8px}
.material-image-upload-control .input{background:#fff;border-color:#bfdbfe}
.material-image-new-preview{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px;margin-top:14px}
.material-image-new-preview-card{border:1px solid #e2e8f0;border-radius:16px;background:#fff;padding:8px;display:grid;gap:7px;overflow:hidden}
.material-image-new-preview-card img{width:100%;height:94px;object-fit:cover;border-radius:12px}
.material-image-new-preview-card span{font-size:11px;color:#475569;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:1180px){.material-form-layout-overhaul{grid-template-columns:1fr}.material-form-side-overhaul{position:static}.material-form-hero{grid-template-columns:150px minmax(0,1fr)}.material-form-save-card{grid-column:1/-1}.material-form-grid-strong{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.material-form-hero{grid-template-columns:1fr}.material-form-hero-cover{height:220px}.material-form-stepbar{top:0;border-radius:18px}.material-form-grid-strong,.form-grid{grid-template-columns:1fr!important}.material-form-mini-kpi,.material-image-upload-box-pro{grid-template-columns:1fr}.material-form-actions-sticky{flex-direction:column}.material-form-actions-sticky .button{width:100%}}
@media(max-width:520px){.material-form-section-pro{padding:16px;border-radius:22px}.material-image-manage-grid,.material-image-new-preview{grid-template-columns:1fr}.material-form-hero h2{font-size:24px}}


/* Phase 4.3.7.1 ? Material reference image UI polish */
.material-image-form-intro{display:grid;grid-template-columns:56px minmax(0,1fr);gap:14px;align-items:center;border:1px solid #dbeafe;border-radius:22px;background:linear-gradient(135deg,#f8fbff 0%,#eef6ff 100%);padding:16px;margin-bottom:16px}
.material-image-form-intro-icon{width:56px;height:56px;border-radius:18px;display:grid;place-items:center;background:#dbeafe;color:#1d4ed8;font-size:28px;box-shadow:inset 0 1px 0 rgba(255,255,255,.85)}
.material-image-form-intro-copy strong{display:block;color:#0f172a;font-size:14px;margin-bottom:4px}
.material-image-form-intro-copy p{margin:0;color:#475569;line-height:1.6}
.material-image-manage-grid{grid-template-columns:repeat(auto-fill,minmax(215px,1fr));gap:16px}
.material-image-manage-card{padding:0;overflow:hidden;border-radius:22px;box-shadow:0 10px 26px rgba(15,23,42,.06);transition:transform .18s ease, box-shadow .18s ease,border-color .18s ease}
.material-image-manage-card:hover{transform:translateY(-2px);box-shadow:0 16px 32px rgba(15,23,42,.1);border-color:#bfdbfe}
.material-image-manage-card.is-cover{border-color:#93c5fd;box-shadow:0 12px 30px rgba(37,99,235,.14)}
.material-image-manage-thumb{position:relative;height:180px;border:0;border-bottom:1px solid #e2e8f0;border-radius:0;background:linear-gradient(180deg,#f8fafc 0%,#eff6ff 100%)}
.material-image-manage-thumb img{transition:transform .2s ease}
.material-image-manage-card:hover .material-image-manage-thumb img{transform:scale(1.03)}
.material-image-badge{position:absolute;left:12px;top:12px;padding:6px 10px;border-radius:999px;background:rgba(15,23,42,.82);color:#fff;font-size:11px;font-weight:900;letter-spacing:.01em}
.material-image-card-body{display:grid;gap:12px;padding:14px}
.material-image-card-title strong{display:block;color:#0f172a;font-size:13px;line-height:1.4}
.material-image-card-title small{display:block;margin-top:4px;color:#64748b;line-height:1.5}
.material-image-action-list{display:grid;gap:8px}
.material-image-choice{display:flex;align-items:center;gap:9px;padding:10px 12px;border:1px solid #e2e8f0;border-radius:14px;background:#fff;font-size:12px;font-weight:900;color:#334155}
.material-image-choice.is-primary{background:#f8fbff}
.material-image-choice.is-danger{background:#fff8f8;color:#b91c1c;border-color:#fecaca}
.material-image-choice input{margin:0}
.material-image-empty-pro{display:grid;justify-items:center;gap:8px;text-align:center;padding:24px}
.material-image-empty-icon{width:56px;height:56px;border-radius:18px;display:grid;place-items:center;background:#e2e8f0;color:#475569;font-size:28px}
.material-image-empty-pro strong{color:#0f172a;font-size:15px}
.material-image-empty-pro p{margin:0;max-width:560px;color:#64748b;line-height:1.65}
.material-image-upload-box-pro{display:grid;grid-template-columns:minmax(0,.9fr) minmax(280px,1.1fr);gap:16px;align-items:center;padding:16px 18px;border-style:solid;background:linear-gradient(135deg,#eff6ff 0%,#f8fbff 100%)}
.material-image-upload-copy label{display:block;font-weight:900;color:#0f172a;margin-bottom:4px}
.material-image-upload-copy p{margin:0;color:#475569;line-height:1.6}
.material-image-upload-control{display:grid;gap:8px}
.material-image-upload-control .input{background:#fff;border-color:#bfdbfe;min-height:48px}
.material-image-upload-control small{color:#64748b;line-height:1.55}
.material-gallery-layout{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(0,1.1fr);gap:18px;align-items:start}
.material-gallery-featured{border:1px solid #dbeafe;border-radius:24px;overflow:hidden;background:linear-gradient(180deg,#f8fbff 0%,#ffffff 100%);box-shadow:0 12px 26px rgba(15,23,42,.06)}
.material-gallery-featured-thumb{position:relative;height:260px;background:#f8fafc;display:grid;place-items:center}
.material-gallery-featured-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.material-gallery-featured-thumb.is-empty span{color:#64748b;font-size:13px;font-weight:900}
.material-gallery-featured-badge{position:absolute;left:14px;top:14px;padding:7px 11px;border-radius:999px;background:#2563eb;color:#fff;font-size:11px;font-weight:900}
.material-gallery-featured-copy{padding:14px 16px}
.material-gallery-featured-copy strong{display:block;font-size:15px;color:#0f172a;margin-bottom:6px}
.material-gallery-featured-copy p{margin:0;color:#475569;line-height:1.65}
.material-gallery-grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:16px}
.material-gallery-item{height:170px;border-radius:20px;box-shadow:0 8px 22px rgba(15,23,42,.06);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.material-gallery-item:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(15,23,42,.12);border-color:#bfdbfe}
.material-gallery-item::after{content:'';position:absolute;inset:auto 0 0 0;height:64px;background:linear-gradient(180deg,rgba(15,23,42,0) 0%,rgba(15,23,42,.72) 100%)}
.material-gallery-item img{position:absolute;inset:0}
.material-gallery-item span,.material-gallery-item small{position:absolute;z-index:2}
.material-gallery-item span{left:10px;bottom:28px;background:rgba(15,23,42,.8)}
.material-gallery-item small{left:10px;bottom:10px;color:#e2e8f0;font-size:11px;font-weight:800}
.material-list-thumb{border-radius:16px;box-shadow:inset 0 1px 0 rgba(255,255,255,.7)}
@media(max-width:1100px){.material-image-upload-box-pro,.material-gallery-layout{grid-template-columns:1fr}}
@media(max-width:900px){.material-detail-hero-with-image{grid-template-columns:1fr}.material-detail-cover{height:210px}.material-gallery-featured-thumb{height:220px}.material-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.material-image-form-intro{grid-template-columns:1fr;justify-items:start}.material-image-manage-grid,.material-gallery-grid{grid-template-columns:1fr}.material-image-upload-box-pro{padding:14px}.material-gallery-item,.material-gallery-featured-thumb{height:220px}}


/* Phase 4.3.13 ? Material show image redesign */
.material-detail-hero.material-show-image-hero{
    display:grid!important;
    grid-template-columns:minmax(220px,320px) minmax(0,1fr) minmax(190px,230px)!important;
    align-items:stretch!important;
    gap:18px!important;
    padding:18px!important;
    border-radius:26px!important;
}
.material-show-image-panel{
    display:grid;
    gap:10px;
    align-content:start;
    min-width:0;
}
.material-show-main-image{
    position:relative;
    height:260px!important;
    max-height:260px!important;
    border:1px solid #dbe4ef;
    border-radius:24px;
    background:#fff;
    overflow:hidden;
    display:grid;
    place-items:center;
    text-decoration:none;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.75);
}
.material-show-main-image img{
    width:100%;
    height:100%;
    object-fit:contain!important;
    object-position:center;
    padding:14px;
    background:#fff;
    display:block;
}
.material-show-image-pill{
    position:absolute;
    left:12px;
    top:12px;
    padding:6px 10px;
    border-radius:999px;
    background:rgba(15,23,42,.82);
    color:#fff;
    font-size:11px;
    font-weight:950;
}
.material-show-empty-image{
    display:grid;
    justify-items:center;
    gap:5px;
    color:#64748b;
    text-align:center;
}
.material-show-empty-image span{font-size:34px}
.material-show-empty-image strong{color:#0f172a;font-size:13px}
.material-show-empty-image small{font-size:11px}
.material-show-thumb-strip{
    display:flex;
    gap:8px;
    align-items:center;
    overflow:auto;
    padding-bottom:2px;
}
.material-show-thumb{
    width:46px;
    height:46px;
    flex:0 0 46px;
    border:2px solid #e2e8f0;
    border-radius:14px;
    background:#fff;
    overflow:hidden;
    display:block;
}
.material-show-thumb.is-active{
    border-color:#2563eb;
    box-shadow:0 0 0 3px rgba(37,99,235,.12);
}
.material-show-thumb img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}
.material-show-thumb-more{
    flex:0 0 auto;
    min-width:46px;
    height:46px;
    border-radius:14px;
    display:grid;
    place-items:center;
    background:#eff6ff;
    color:#1d4ed8;
    font-weight:950;
    font-size:12px;
}
.material-show-titleblock{
    align-self:center!important;
    min-width:0;
}
.material-show-image-meta{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    align-items:center;
    margin-top:12px;
}
.material-show-image-meta span,
.material-show-image-meta a{
    display:inline-flex;
    align-items:center;
    border:1px solid #dbe4ef;
    border-radius:999px;
    padding:6px 10px;
    background:#fff;
    color:#334155;
    font-size:12px;
    font-weight:850;
    text-decoration:none;
}
.material-show-image-meta a{
    color:#1d4ed8;
    border-color:#bfdbfe;
    background:#eff6ff;
}
.material-show-kpi{
    align-self:stretch!important;
    display:grid!important;
    align-content:center!important;
    min-width:0!important;
}
.material-show-gallery-card{
    overflow:hidden;
}
.material-show-gallery-grid{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(180px,1fr));
    gap:14px;
}
.material-show-gallery-card-item{
    display:grid;
    grid-template-rows:150px auto;
    border:1px solid #e2e8f0;
    border-radius:20px;
    overflow:hidden;
    text-decoration:none;
    background:#fff;
    color:inherit;
    box-shadow:0 8px 20px rgba(15,23,42,.055);
    transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.material-show-gallery-card-item:hover{
    transform:translateY(-2px);
    border-color:#bfdbfe;
    box-shadow:0 14px 28px rgba(15,23,42,.1);
}
.material-show-gallery-card-item.is-cover{
    border-color:#93c5fd;
    box-shadow:0 10px 24px rgba(37,99,235,.12);
}
.material-show-gallery-thumb{
    position:relative;
    background:#f8fafc;
    display:grid;
    place-items:center;
    overflow:hidden;
}
.material-show-gallery-thumb img{
    width:100%;
    height:100%;
    object-fit:contain;
    padding:10px;
    background:#fff;
    display:block;
}
.material-show-gallery-thumb span{
    position:absolute;
    left:10px;
    top:10px;
    padding:5px 9px;
    border-radius:999px;
    background:rgba(15,23,42,.82);
    color:#fff;
    font-size:11px;
    font-weight:900;
}
.material-show-gallery-info{
    display:grid;
    gap:4px;
    padding:11px 12px;
}
.material-show-gallery-info strong{
    color:#0f172a;
    font-size:13px;
    line-height:1.35;
}
.material-show-gallery-info small{
    color:#64748b;
    line-height:1.45;
}
.material-show-empty-gallery{
    margin:0!important;
}
@media(max-width:1180px){
    .material-detail-hero.material-show-image-hero{
        grid-template-columns:minmax(220px,300px) minmax(0,1fr)!important;
    }
    .material-show-kpi{
        grid-column:1 / -1!important;
        text-align:left!important;
    }
}
@media(max-width:760px){
    .material-detail-hero.material-show-image-hero{
        grid-template-columns:1fr!important;
        padding:14px!important;
    }
    .material-show-main-image{
        height:240px!important;
        max-height:240px!important;
        border-radius:20px;
    }
    .material-show-gallery-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
    .material-show-gallery-card-item{
        grid-template-rows:130px auto;
    }
}
@media(max-width:480px){
    .material-show-gallery-grid{
        grid-template-columns:1fr;
    }
    .material-show-gallery-card-item{
        grid-template-rows:180px auto;
    }
}


/* Phase 4.3.14 ? Standard bilingual menu labels */
.stock-nav-label{
    min-width:0;
    display:grid;
    gap:1px;
    line-height:1.22;
}
.stock-nav-label-th{
    display:block;
    font-size:13px;
    font-weight:900;
    color:inherit;
    white-space:normal;
}
.stock-nav-label-en{
    display:block;
    font-size:10.5px;
    font-weight:750;
    color:#94a3b8;
    letter-spacing:.01em;
    white-space:normal;
}
.stock-nav-active .stock-nav-label-en{
    color:rgba(255,255,255,.76);
}
.stock-nav-group-title{
    font-size:11px;
    font-weight:950;
    letter-spacing:.055em;
    text-transform:uppercase;
    color:#64748b;
}
.stock-nav-link{
    align-items:center;
}


/* Phase 4.3.15 ? Main Theme Polish
   Professional WMS theme: calmer navy/blue, softer surfaces, clearer hierarchy */
:root{
  --ink:#0b1728;
  --muted:#607086;
  --line:#dbe5f0;
  --line-soft:#edf3f8;
  --paper:#ffffff;
  --canvas:#f4f8fb;

  --brand-900:#06243a;
  --brand-800:#0b3b5f;
  --brand-700:#0e5d89;
  --brand-600:#0d7fa8;
  --brand-500:#13a5c7;
  --brand-soft:#e8f6fb;
  --brand-soft-2:#f2fbfd;

  --navy:#06243a;
  --navy-2:#0b3b5f;
  --blue:#0e5d89;
  --blue-soft:#e8f6fb;
  --orange:#e2742b;
  --orange-soft:#fff4ec;
  --green:#16815a;
  --green-soft:#edfdf6;
  --red:#bd2b2b;
  --red-soft:#fff1f1;
  --amber:#c88618;
  --amber-soft:#fff8e8;

  --radius-sm:12px;
  --radius-md:18px;
  --radius-lg:24px;
  --radius-xl:30px;

  --shadow-sm:0 1px 2px rgba(6,36,58,.05);
  --shadow-md:0 14px 34px rgba(6,36,58,.09);
  --shadow-lg:0 24px 70px rgba(6,36,58,.18);
  --focus-ring:0 0 0 4px rgba(13,127,168,.16);
}

html{background:var(--canvas)}
body{
  background:
    radial-gradient(circle at 18% 0%, rgba(13,127,168,.09) 0, rgba(13,127,168,0) 34%),
    radial-gradient(circle at 100% 12%, rgba(14,93,137,.08) 0, rgba(14,93,137,0) 30%),
    linear-gradient(180deg,#f8fbfd 0%,#f4f8fb 46%,#eef5f8 100%);
  color:var(--ink);
}

/* Shell */
.stock-layout{
  grid-template-columns:310px minmax(0,1fr);
  background:transparent;
}
.stock-main{
  background:transparent;
}
.stock-sidebar{
  background:
    linear-gradient(180deg,rgba(255,255,255,.96) 0%,rgba(247,251,253,.94) 100%);
  border-right:1px solid rgba(219,229,240,.9);
  box-shadow:10px 0 34px rgba(6,36,58,.045);
}
.stock-topbar{
  height:76px;
  background:rgba(255,255,255,.82);
  border-bottom:1px solid rgba(219,229,240,.86);
  backdrop-filter:blur(18px);
  box-shadow:0 12px 28px rgba(6,36,58,.045);
}
.stock-page-shell{
  padding:30px;
}
.stock-page-card{
  background:rgba(255,255,255,.9);
  border:1px solid rgba(219,229,240,.95);
  border-radius:32px;
  box-shadow:0 18px 48px rgba(6,36,58,.075);
  padding:30px;
}
.stock-breadcrumb{
  color:#6b7c90;
  font-weight:850;
}
.stock-page-title{
  color:var(--brand-900);
  letter-spacing:-.035em;
  font-size:30px;
}

/* Brand */
.stock-brand{
  border:1px solid rgba(191,222,233,.75);
  border-radius:26px;
  background:
    linear-gradient(135deg,#ffffff 0%,#f2fbfd 100%);
  box-shadow:0 10px 28px rgba(6,36,58,.065);
}
.stock-brand-mark{
  background:linear-gradient(135deg,var(--brand-900) 0%,var(--brand-700) 58%,var(--brand-500) 100%);
  color:#fff;
  box-shadow:0 12px 24px rgba(14,93,137,.24);
}
.stock-brand-title{
  color:var(--brand-900);
  letter-spacing:-.035em;
}
.stock-brand-subtitle{
  color:#6b7c90;
}

/* System state card */
.stock-scope-card,
.stock-system-state{
  border:1px solid rgba(191,222,233,.7)!important;
  background:
    linear-gradient(135deg,#ffffff 0%,#f2fbfd 100%)!important;
  border-radius:24px!important;
  box-shadow:0 10px 24px rgba(6,36,58,.055);
}
.stock-system-state.is-debug{
  border-color:#fed7aa!important;
  background:linear-gradient(135deg,#fff7ed 0%,#ffffff 100%)!important;
}
.stock-system-state-title{
  color:var(--brand-900)!important;
  font-weight:950!important;
}
.stock-system-state-text{
  color:#66768a!important;
}

/* Navigation */
.stock-nav-group-title{
  color:#6b7c90;
  font-size:10.5px;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
  margin-left:10px;
}
.stock-nav-link{
  min-height:48px;
  border-radius:18px;
  color:#405269;
  font-weight:850;
  border:1px solid transparent;
  padding:10px 11px;
}
.stock-nav-link:hover{
  background:#ffffff;
  border-color:#dbe5f0;
  color:var(--brand-900);
  box-shadow:0 8px 18px rgba(6,36,58,.055);
}
.stock-nav-active{
  background:linear-gradient(135deg,var(--brand-800) 0%,var(--brand-600) 100%)!important;
  border-color:transparent!important;
  color:#ffffff!important;
  box-shadow:0 12px 26px rgba(13,127,168,.24);
}
.stock-nav-icon{
  border-radius:14px;
  background:#eef5f8;
  color:var(--brand-700);
}
.stock-nav-active .stock-nav-icon{
  background:rgba(255,255,255,.18)!important;
  color:#ffffff!important;
}
.stock-nav-label-th{
  color:inherit;
  font-weight:950;
}
.stock-nav-label-en{
  color:#8392a5;
  font-weight:800;
}
.stock-nav-active .stock-nav-label-en{
  color:rgba(255,255,255,.72)!important;
}

/* Topbar controls */
.stock-user-chip,
.icon-button{
  border-color:#dbe5f0;
  background:rgba(255,255,255,.9);
  box-shadow:0 8px 18px rgba(6,36,58,.055);
}
.stock-avatar{
  background:linear-gradient(135deg,var(--brand-soft) 0%,#d6f0f7 100%);
  color:var(--brand-800);
}
.icon-button:hover{
  background:#f2fbfd;
  border-color:#bfe3ee;
  color:var(--brand-800);
}

/* Cards and panels */
.card,
.stat-card,
.kpi,
.summary-box,
.document-section-card,
.material-detail-card,
.material-form-section,
.table-card,
.core-card,
.panel,
.modal-card{
  border-color:#dbe5f0!important;
  border-radius:24px!important;
  background:rgba(255,255,255,.94)!important;
  box-shadow:0 10px 28px rgba(6,36,58,.055)!important;
}
.section-title,
.card-title,
.document-section-head h3,
.material-detail-section-head h3,
.material-form-section-head h3{
  color:var(--brand-900)!important;
  letter-spacing:-.01em;
}
.document-section-head p,
.material-detail-section-head p,
.material-form-section-head p{
  color:#66768a!important;
}

/* Buttons */
.button,
.btn{
  border-radius:14px!important;
  font-weight:900!important;
  transition:transform .14s ease, box-shadow .14s ease, background .14s ease, border-color .14s ease;
}
.button:hover,
.btn:hover{
  transform:translateY(-1px);
}
.button-primary,
.btn-primary{
  background:linear-gradient(135deg,var(--brand-800) 0%,var(--brand-600) 100%)!important;
  border-color:transparent!important;
  color:#fff!important;
  box-shadow:0 12px 24px rgba(13,127,168,.22)!important;
}
.button-primary:hover,
.btn-primary:hover{
  box-shadow:0 16px 30px rgba(13,127,168,.30)!important;
}
.button-secondary,
.btn-secondary{
  background:#ffffff!important;
  border-color:#d3e0eb!important;
  color:#33475f!important;
}
.button-secondary:hover,
.btn-secondary:hover{
  background:#f2fbfd!important;
  border-color:#bfe3ee!important;
  color:var(--brand-800)!important;
}
.button-danger,
.btn-danger{
  background:linear-gradient(135deg,#b91c1c 0%,#ef4444 100%)!important;
  border-color:transparent!important;
  color:#fff!important;
}

/* Forms */
.input,
.select,
textarea,
input[type="text"],
input[type="number"],
input[type="date"],
input[type="email"],
input[type="password"],
select{
  border-color:#d3e0eb!important;
  background:#ffffff!important;
  border-radius:15px!important;
  color:var(--ink)!important;
}
.input:focus,
.select:focus,
textarea:focus,
input:focus,
select:focus{
  outline:none!important;
  border-color:var(--brand-500)!important;
  box-shadow:var(--focus-ring)!important;
}
.field label,
.form-label{
  color:#24364b!important;
  font-weight:950!important;
}
.field-hint,
.help-text,
small{
  color:#6b7c90;
}
.readonly-input,
input[readonly]{
  background:#f4f8fb!important;
  color:#607086!important;
}

/* Badges and status */
.badge-blue{
  background:#dff4fb!important;
  color:#0b5f7a!important;
}
.badge-green{
  background:#e3f9ee!important;
  color:#11754d!important;
}
.badge-orange{
  background:#fff0df!important;
  color:#b85a14!important;
}
.badge-red{
  background:#ffe7e7!important;
  color:#a31d1d!important;
}
.badge-purple{
  background:#f2e8ff!important;
  color:#6e32a8!important;
}
.badge-gray,
.badge-soft,
.pill{
  background:#edf3f8!important;
  color:#53657a!important;
}

/* Tables */
.table-wrap,
.core-table-wrapper{
  border-radius:22px!important;
  border-color:#dbe5f0!important;
  overflow:hidden;
}
table[data-core-table],
.table,
.data-table{
  background:#fff;
}
table[data-core-table] thead th,
.table thead th,
.data-table thead th,
.core-table thead th{
  background:linear-gradient(180deg,#f4f9fb 0%,#edf5f8 100%)!important;
  color:#263a50!important;
  border-bottom:1px solid #dbe5f0!important;
  font-weight:950!important;
}
table[data-core-table] tbody tr:hover td,
.table tbody tr:hover td,
.core-table tbody tr:hover td{
  background:#f5fbfd!important;
}
table[data-core-table] td,
.table td,
.core-table td{
  border-color:#edf3f8!important;
}

/* Notices */
.notice,
.alert-core,
.alert,
.toast-item{
  border-radius:20px!important;
  box-shadow:0 10px 26px rgba(6,36,58,.06);
}
.notice.success,
.alert-success{
  background:#edfdf6!important;
  border-color:#bdebd8!important;
  color:#0f6f4b!important;
}
.notice.danger,
.alert-error{
  background:#fff1f1!important;
  border-color:#ffcaca!important;
  color:#9f1f1f!important;
}
.alert-info{
  background:#e8f6fb!important;
  border-color:#bfe3ee!important;
  color:#0b5f7a!important;
}

/* Hero / feature panels */
.material-detail-hero,
.material-form-hero,
.issue-show-hero,
.movement-detail-hero,
.dashboard-hero{
  border-color:#cfe3ed!important;
  background:
    radial-gradient(circle at 0% 0%, rgba(19,165,199,.13) 0, rgba(19,165,199,0) 35%),
    linear-gradient(135deg,#ffffff 0%,#f1fbfd 100%)!important;
  box-shadow:0 16px 38px rgba(6,36,58,.075)!important;
}
.material-detail-eyebrow,
.material-form-kicker,
.issue-show-eyebrow{
  color:var(--brand-700)!important;
  background:#e4f6fb!important;
}

/* Image panels */
.material-show-main-image,
.material-gallery-featured,
.material-image-manage-card,
.material-show-gallery-card-item{
  border-color:#dbe5f0!important;
  box-shadow:0 10px 24px rgba(6,36,58,.055)!important;
}
.material-show-image-pill,
.material-image-badge,
.material-gallery-featured-badge{
  background:linear-gradient(135deg,var(--brand-800) 0%,var(--brand-600) 100%)!important;
}

/* Modal / confirm */
.swal2-popup,
.core-modal,
.modal{
  border-radius:28px!important;
  box-shadow:0 24px 70px rgba(6,36,58,.22)!important;
}

/* Scrollbar */
*{
  scrollbar-color:#b8ccd9 transparent;
}
::-webkit-scrollbar{
  width:10px;
  height:10px;
}
::-webkit-scrollbar-thumb{
  background:#bfd0dc;
  border-radius:999px;
  border:2px solid transparent;
  background-clip:content-box;
}
::-webkit-scrollbar-thumb:hover{
  background:#91aabe;
  border:2px solid transparent;
  background-clip:content-box;
}

/* Mobile polish */
@media(max-width:900px){
  .stock-page-shell{
    padding:18px;
  }
  .stock-page-card{
    border-radius:24px;
    padding:20px;
  }
  .stock-topbar{
    padding:0 16px;
  }
}



/* Phase 4.3.16 Reference Campaign Theme — scoped off when html.theme-engine is present */
:root{
  --ink:#06152f;--muted:#5e6f88;--line:#bdd8f5;--line-soft:#e5f1ff;--paper:#fff;--canvas:#edf6ff;
  --brand-950:#03112b;--brand-900:#061b3a;--brand-850:#082b5d;--brand-800:#0a3c83;--brand-700:#0758b8;--brand-600:#0876d8;--brand-500:#1698ff;--brand-400:#38bdf8;
  --brand-soft:#e8f4ff;--brand-soft-2:#f4faff;
  --accent:#ff9900;--accent-2:#ffbf3f;--accent-dark:#d96f00;--accent-soft:#fff4df;
  --navy:#061b3a;--navy-2:#082b5d;--blue:#0758b8;--blue-soft:#e8f4ff;--orange:#ff9900;--orange-soft:#fff4df;
  --green:#16a34a;--green-soft:#e9fbef;--red:#dc2626;--red-soft:#fff0f0;--amber:#ff9900;--amber-soft:#fff7e7;
  --shadow-sm:0 2px 8px rgba(3,17,43,.08);--shadow-md:0 14px 34px rgba(3,17,43,.14);--shadow-lg:0 28px 80px rgba(3,17,43,.28);
  --focus-ring:0 0 0 4px rgba(22,152,255,.20);
}
html:not(.theme-engine){
  background:var(--brand-950);
  body{
    background:
      radial-gradient(circle at 7% 5%,rgba(22,152,255,.25) 0,rgba(22,152,255,0) 26%),
      radial-gradient(circle at 98% 0%,rgba(255,153,0,.18) 0,rgba(255,153,0,0) 22%),
      linear-gradient(180deg,#061b3a 0%,#0a3c83 86px,#edf6ff 87px,#f6fbff 100%)!important;
    color:var(--ink);
  }
  .stock-layout{grid-template-columns:318px minmax(0,1fr)!important;background:transparent!important}
  .stock-sidebar{
    background:radial-gradient(circle at 18% 0%,rgba(56,189,248,.22) 0,rgba(56,189,248,0) 32%),linear-gradient(180deg,#061b3a 0%,#082b5d 48%,#061b3a 100%)!important;
    border-right:1px solid rgba(93,159,255,.34)!important;box-shadow:18px 0 50px rgba(3,17,43,.30)!important;
  }
  .stock-main{background:transparent!important}
  .stock-topbar{
    height:82px!important;background:linear-gradient(90deg,rgba(6,27,58,.98) 0%,rgba(10,60,131,.96) 62%,rgba(6,27,58,.98) 100%)!important;
    border-bottom:1px solid rgba(255,255,255,.14)!important;color:#fff!important;box-shadow:0 12px 34px rgba(3,17,43,.28)!important;
  }
  .stock-topbar .stock-breadcrumb,.stock-topbar .stock-page-title{color:#fff!important}
  .stock-breadcrumb{color:#c7ddff!important;font-weight:900!important}
  .stock-page-title{color:#fff!important;text-shadow:0 2px 10px rgba(0,0,0,.20)}
  .stock-page-shell{padding:30px!important}
  .stock-page-card{
    border:2px solid rgba(7,88,184,.18)!important;border-radius:30px!important;
    background:linear-gradient(180deg,rgba(255,255,255,.98) 0%,rgba(246,251,255,.96) 100%)!important;
    box-shadow:0 24px 70px rgba(3,17,43,.14),inset 0 1px 0 rgba(255,255,255,.95)!important;
  }
  .stock-brand{
    border:1px solid rgba(255,255,255,.20)!important;border-radius:26px!important;
    background:linear-gradient(135deg,rgba(255,255,255,.16) 0%,rgba(22,152,255,.10) 100%)!important;
    box-shadow:0 18px 40px rgba(0,0,0,.20)!important;
  }
  .stock-brand-mark{
    background:linear-gradient(135deg,#ff9900 0%,#ffbf3f 42%,#1698ff 43%,#0758b8 100%)!important;
    color:#fff!important;text-shadow:0 2px 4px rgba(0,0,0,.35);box-shadow:0 12px 26px rgba(255,153,0,.30)!important;
  }
  .stock-brand-title{color:#fff!important;letter-spacing:-.035em!important;text-shadow:0 2px 10px rgba(0,0,0,.28)}
  .stock-brand-subtitle{color:#b8d6ff!important;font-weight:800!important}
  .stock-scope-card,.stock-system-state{
    border:1px solid rgba(93,159,255,.28)!important;background:linear-gradient(135deg,rgba(255,255,255,.12) 0%,rgba(22,152,255,.12) 100%)!important;
    color:#fff!important;border-radius:24px!important;box-shadow:0 14px 34px rgba(0,0,0,.18)!important;
  }
  .stock-system-state-title{color:#fff!important}.stock-system-state-text{color:#b8d6ff!important}.stock-system-state-label{color:#e7f1ff!important}
  .stock-system-state.is-debug{border-color:rgba(255,153,0,.55)!important;background:linear-gradient(135deg,rgba(255,153,0,.18),rgba(255,255,255,.10))!important}
  .stock-nav-group-title{color:#8dbdff!important;font-size:10.5px!important;letter-spacing:.095em!important;font-weight:950!important;text-transform:uppercase!important;margin:0 0 8px 12px!important}
  .stock-nav-link{min-height:52px!important;border-radius:18px!important;color:#d7e8ff!important;border:1px solid transparent!important;background:transparent!important;font-weight:850!important;padding:10px 11px!important}
  .stock-nav-link:hover{background:rgba(255,255,255,.10)!important;border-color:rgba(141,189,255,.25)!important;color:#fff!important;box-shadow:0 12px 24px rgba(0,0,0,.16)!important}
  .stock-nav-active{
    background:linear-gradient(135deg,#ff9900 0%,#ffb02e 52%,#ff8a00 100%)!important;border-color:rgba(255,255,255,.22)!important;color:#061b3a!important;
    box-shadow:0 14px 32px rgba(255,153,0,.34)!important;
  }
  .stock-nav-icon{width:32px!important;height:32px!important;border-radius:13px!important;background:rgba(255,255,255,.12)!important;color:#c7ddff!important}
  .stock-nav-active .stock-nav-icon{background:rgba(6,27,58,.14)!important;color:#061b3a!important}
  .stock-nav-label-th{color:inherit!important;font-weight:950!important}.stock-nav-label-en{color:#8dbdff!important;font-weight:800!important}.stock-nav-active .stock-nav-label-en{color:rgba(6,27,58,.72)!important}
  .stock-user-chip,.icon-button{border:1px solid rgba(255,255,255,.24)!important;background:rgba(255,255,255,.10)!important;color:#fff!important;box-shadow:0 10px 24px rgba(0,0,0,.18)!important}
  .stock-user-chip *{color:#fff!important}.stock-avatar{background:#fff!important;color:#0758b8!important;box-shadow:0 0 0 4px rgba(255,255,255,.12)}
  .icon-button:hover{background:rgba(255,153,0,.22)!important;border-color:rgba(255,153,0,.44)!important}
  .card,.stat-card,.kpi,.summary-box,.document-section-card,.material-detail-card,.material-form-section,.table-card,.core-card,.panel,.modal-card,.stock-card-explain,.issue-show-card,.issue-action-panel,.movement-detail-card{
    border:2px solid rgba(7,88,184,.13)!important;border-radius:24px!important;background:#fff!important;box-shadow:0 16px 34px rgba(3,17,43,.09),inset 0 1px 0 rgba(255,255,255,.95)!important;
  }
  .section-title,.card-title,.document-section-head h3,.material-detail-section-head h3,.material-form-section-head h3,h1,h2,h3{color:#061b3a!important;letter-spacing:-.02em}
  .document-section-head p,.material-detail-section-head p,.material-form-section-head p,p.help,.text-muted{color:#5e6f88!important}
  .dashboard-hero,.material-detail-hero,.material-form-hero,.issue-show-hero,.movement-detail-hero,.stock-card-explain{
    border:2px solid rgba(22,152,255,.24)!important;
    background:radial-gradient(circle at 96% 0%,rgba(255,153,0,.18) 0,rgba(255,153,0,0) 32%),linear-gradient(135deg,#fff 0%,#eaf6ff 100%)!important;
    box-shadow:0 18px 46px rgba(3,17,43,.12)!important;
  }
  .material-detail-eyebrow,.material-form-kicker,.issue-show-eyebrow{background:linear-gradient(135deg,#0758b8,#1698ff)!important;color:#fff!important;border-radius:999px!important;padding:6px 12px!important;width:max-content}
  .kpi strong,.summary-box strong,.stat-card strong{color:#0758b8!important}
  .button,.btn{border-radius:16px!important;font-weight:950!important;letter-spacing:-.01em;transition:transform .14s ease,box-shadow .14s ease,filter .14s ease!important}
  .button:hover,.btn:hover{transform:translateY(-1px)}
  .button-primary,.btn-primary{
    background:linear-gradient(135deg,#ffbf3f 0%,#ff9900 48%,#ff7a00 100%)!important;border-color:#ff9900!important;color:#061b3a!important;box-shadow:0 14px 26px rgba(255,153,0,.32)!important;
  }
  .button-primary:hover,.btn-primary:hover{filter:saturate(1.08) brightness(1.02);box-shadow:0 18px 34px rgba(255,153,0,.42)!important}
  .button-secondary,.btn-secondary{background:#fff!important;border-color:#b7d6f8!important;color:#0758b8!important}
  .button-secondary:hover,.btn-secondary:hover{background:#e8f4ff!important;border-color:#1698ff!important}
  .button-danger,.btn-danger{background:linear-gradient(135deg,#ef4444,#b91c1c)!important;border-color:#dc2626!important;color:#fff!important}
  .input,.select,textarea,input[type="text"],input[type="number"],input[type="date"],input[type="email"],input[type="password"],select{
    border:1.5px solid #b7d6f8!important;background:#fff!important;border-radius:16px!important;color:#06152f!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.9)!important;
  }
  .input:focus,.select:focus,textarea:focus,input:focus,select:focus{outline:none!important;border-color:#1698ff!important;box-shadow:0 0 0 4px rgba(22,152,255,.18)!important}
  .field label,.form-label{color:#061b3a!important;font-weight:950!important}.form-required-mark,.required,.text-danger{color:#ff7a00!important}
  .table-wrap,.core-table-wrapper{border:2px solid rgba(7,88,184,.14)!important;border-radius:22px!important;overflow:hidden!important;background:#fff!important}
  table[data-core-table] thead th,.table thead th,.data-table thead th,.core-table thead th,thead th{
    background:linear-gradient(180deg,#082b5d 0%,#061b3a 100%)!important;color:#fff!important;border-bottom:0!important;font-weight:950!important;
  }
  table[data-core-table] td,.table td,.core-table td,tbody td{border-color:#e5f1ff!important}
  table[data-core-table] tbody tr:hover td,.table tbody tr:hover td,.core-table tbody tr:hover td{background:#f0f8ff!important}
  .badge,.badge-soft,.pill{border-radius:999px!important;font-weight:950!important}.badge-blue{background:#dbeeff!important;color:#0758b8!important}.badge-green{background:#dffbea!important;color:#128143!important}
  .badge-orange{background:#fff0d2!important;color:#c86600!important}.badge-red{background:#ffe3e3!important;color:#b91c1c!important}.badge-purple{background:#efe7ff!important;color:#6d28d9!important}
  .badge-gray,.badge-soft,.pill{background:#edf5ff!important;color:#40516b!important}
  .notice,.alert-core,.alert,.toast-item{border-radius:20px!important;border-width:1.5px!important;box-shadow:0 12px 28px rgba(3,17,43,.10)!important}
  .notice.success,.alert-success{background:#e9fbef!important;border-color:#a7e8bc!important;color:#0f6f35!important}
  .notice.danger,.alert-error{background:#fff0f0!important;border-color:#ffc3c3!important;color:#a31616!important}
  .alert-info,.notice.info{background:#e8f4ff!important;border-color:#b7d6f8!important;color:#0758b8!important}.alert-warning{background:#fff4df!important;border-color:#ffd18a!important;color:#b85a00!important}
  .material-show-main-image,.material-gallery-featured,.material-image-manage-card,.material-show-gallery-card-item{border:2px solid rgba(7,88,184,.15)!important;background:#fff!important;box-shadow:0 16px 34px rgba(3,17,43,.10)!important}
  .material-show-image-pill,.material-image-badge,.material-gallery-featured-badge{background:linear-gradient(135deg,#ffbf3f 0%,#ff9900 100%)!important;color:#061b3a!important}
  .swal2-popup,.core-modal,.modal{border-radius:28px!important;border:1px solid rgba(22,152,255,.18)!important;box-shadow:0 30px 90px rgba(3,17,43,.34)!important}
  *{scrollbar-color:#6da8e8 transparent}
  ::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#6da8e8;border-radius:999px;border:2px solid transparent;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background:#1698ff;border:2px solid transparent;background-clip:content-box}
  @media(max-width:900px){
    body{background:linear-gradient(180deg,#061b3a 0%,#0a3c83 76px,#edf6ff 77px,#f6fbff 100%)!important}
    .stock-page-shell{padding:18px!important}.stock-page-card{border-radius:24px!important;padding:18px!important}.stock-topbar{padding:0 14px!important}
  }



}

/* Phase 4.3.17 ? Materials index image thumbnail + modal preview */
.material-data-table .material-image-col{
    width:86px;
    min-width:86px;
    text-align:center;
}
.material-list-thumb-button{
    width:64px;
    height:64px;
    border:2px solid rgba(7,88,184,.16);
    border-radius:18px;
    background:#fff;
    padding:0;
    overflow:hidden;
    display:inline-grid;
    place-items:center;
    position:relative;
    cursor:pointer;
    box-shadow:0 8px 18px rgba(3,17,43,.08);
    transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
.material-list-thumb-button:hover{
    transform:translateY(-2px);
    border-color:#1698ff;
    box-shadow:0 14px 26px rgba(3,17,43,.14);
}
.material-list-thumb-button img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
    display:block;
}
.material-list-thumb-button span{
    position:absolute;
    inset:auto 5px 5px 5px;
    border-radius:999px;
    background:linear-gradient(135deg,#ffbf3f 0%,#ff9900 100%);
    color:#061b3a;
    font-size:10px;
    line-height:1;
    font-weight:950;
    padding:4px 5px;
    opacity:0;
    transform:translateY(4px);
    transition:opacity .15s ease, transform .15s ease;
}
.material-list-thumb-button:hover span{
    opacity:1;
    transform:translateY(0);
}
.material-list-thumb-empty{
    width:64px;
    height:64px;
    border:1.5px dashed #b7d6f8;
    border-radius:18px;
    display:inline-grid;
    place-items:center;
    background:linear-gradient(180deg,#f4faff 0%,#ffffff 100%);
    color:#8aa2bd;
    font-size:24px;
}
.material-data-table td.material-image-col{
    padding-left:12px!important;
    padding-right:10px!important;
}
.stock-preview-stage-image img{
    max-width:100%;
    max-height:76vh;
    object-fit:contain;
    border-radius:18px;
    background:#fff;
}
@media(max-width:900px){
    .material-data-table .material-image-col{
        width:74px;
        min-width:74px;
    }
    .material-list-thumb-button,
    .material-list-thumb-empty{
        width:54px;
        height:54px;
        border-radius:15px;
    }
}


/* Phase 4.3.17.2 ? Material show image modal + modal theme clarity */
.material-show-main-image,
.material-show-thumb,
.material-show-gallery-card-item,
.material-show-open-image{
    cursor:pointer;
    font-family:inherit;
}
button.material-show-main-image,
button.material-show-thumb,
button.material-show-gallery-card-item{
    border:0;
    padding:0;
    text-align:inherit;
}
.material-show-main-image:hover{
    transform:translateY(-2px);
    box-shadow:0 18px 42px rgba(3,17,43,.18)!important;
}
.material-show-main-image:hover .material-show-image-pill{
    background:linear-gradient(135deg,#ffbf3f 0%,#ff9900 100%)!important;
    color:#061b3a!important;
}
.material-show-open-image{
    display:inline-flex;
    align-items:center;
    border:1.5px solid #ffb84d;
    border-radius:999px;
    padding:6px 12px;
    background:linear-gradient(135deg,#ffbf3f 0%,#ff9900 100%);
    color:#061b3a;
    font-size:12px;
    font-weight:950;
    box-shadow:0 8px 18px rgba(255,153,0,.22);
}
.material-show-open-image:hover{
    filter:saturate(1.08) brightness(1.02);
    transform:translateY(-1px);
}
button.material-show-gallery-card-item{
    width:100%;
}
.material-show-gallery-card-item:focus-visible,
.material-show-main-image:focus-visible,
.material-show-thumb:focus-visible,
.material-show-open-image:focus-visible{
    outline:none;
    box-shadow:0 0 0 4px rgba(255,153,0,.26), 0 14px 30px rgba(3,17,43,.14)!important;
}

/* Attachment/modal theme: clearer blue-orange actions */
.stock-attachment-modal-panel{
    border:2px solid rgba(22,152,255,.28)!important;
    border-radius:30px!important;
    background:#ffffff!important;
    box-shadow:0 34px 100px rgba(3,17,43,.42)!important;
}
.stock-attachment-modal-header{
    background:
        radial-gradient(circle at 100% 0%,rgba(255,153,0,.22) 0,rgba(255,153,0,0) 32%),
        linear-gradient(135deg,#061b3a 0%,#0a3c83 100%)!important;
    color:#fff!important;
    border-bottom:1px solid rgba(255,255,255,.14)!important;
}
.stock-attachment-modal-kicker{
    display:inline-flex!important;
    width:max-content!important;
    padding:5px 10px!important;
    border-radius:999px!important;
    background:rgba(255,153,0,.18)!important;
    color:#ffcf73!important;
    font-size:11px!important;
    font-weight:950!important;
    letter-spacing:.02em!important;
}
.stock-attachment-modal-title{
    color:#fff!important;
    text-shadow:0 2px 10px rgba(0,0,0,.28)!important;
}
.stock-attachment-modal-actions .button,
.stock-attachment-modal-actions .button-secondary,
.stock-attachment-modal-actions [data-attachment-preview-download]{
    background:linear-gradient(135deg,#ffbf3f 0%,#ff9900 100%)!important;
    border-color:#ff9900!important;
    color:#061b3a!important;
    font-weight:950!important;
    box-shadow:0 10px 22px rgba(255,153,0,.28)!important;
}
.stock-attachment-modal-close{
    background:#ffffff!important;
    border-color:rgba(255,255,255,.72)!important;
    color:#061b3a!important;
    font-weight:950!important;
    box-shadow:0 10px 22px rgba(3,17,43,.20)!important;
}
.stock-attachment-modal-close:hover{
    background:#fff4df!important;
    border-color:#ffbf3f!important;
}
.stock-attachment-modal-body{
    background:
        radial-gradient(circle at 0% 0%,rgba(22,152,255,.10) 0,rgba(22,152,255,0) 30%),
        #f6fbff!important;
}
.stock-preview-stage-image{
    background:#ffffff!important;
    border:1.5px solid #bdd8f5!important;
    border-radius:24px!important;
    box-shadow:0 14px 34px rgba(3,17,43,.10)!important;
    padding:14px!important;
}
.stock-preview-stage-image img{
    max-width:100%!important;
    max-height:76vh!important;
    object-fit:contain!important;
    border-radius:18px!important;
    background:#fff!important;
}


/* Phase 4.3.18 ? Master Data org/location compact layout */
.master-layout.is-org-location-compact{
    grid-template-columns:220px minmax(0,1fr)!important;
    gap:14px!important;
}
.master-layout.is-org-location-compact .master-sidebar{
    padding:10px!important;
    border-radius:20px!important;
}
.master-layout.is-org-location-compact .master-group{
    gap:8px!important;
}
.master-layout.is-org-location-compact .master-group-title{
    font-size:10.5px!important;
    margin:0 0 5px!important;
    padding:0 3px!important;
    letter-spacing:.04em!important;
}
.master-layout.is-org-location-compact .master-group-list{
    gap:5px!important;
}
.master-layout.is-org-location-compact .master-type-link{
    min-height:38px!important;
    padding:7px 8px!important;
    border-radius:12px!important;
    gap:6px!important;
    font-size:12px!important;
    line-height:1.25!important;
}
.master-layout.is-org-location-compact .master-type-link span{
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
}
.master-layout.is-org-location-compact .master-type-link strong{
    min-width:24px!important;
    height:21px!important;
    font-size:11px!important;
    padding:0 7px!important;
}
.master-layout.is-org-location-compact .master-content{
    gap:12px!important;
}
.master-layout.is-org-location-compact .master-hero-card{
    padding:13px 15px!important;
    border-radius:20px!important;
}
.master-layout.is-org-location-compact .master-hero-card h2{
    font-size:21px!important;
}
.master-layout.is-org-location-compact .master-hero-card p{
    font-size:12.5px!important;
    line-height:1.45!important;
}
.master-layout.is-org-location-compact .master-count-card{
    min-width:96px!important;
    padding:10px!important;
    border-radius:15px!important;
}
.master-layout.is-org-location-compact .master-count-card strong{
    font-size:23px!important;
}
.master-table-card.is-wide-master-table{
    padding:12px!important;
}
.master-table-card.is-wide-master-table .master-table-head{
    margin-bottom:8px!important;
}
.master-table-card.is-wide-master-table .page-section-titleblock h3{
    font-size:17px!important;
}
.master-table-card.is-wide-master-table .page-section-titleblock p{
    font-size:12px!important;
}
.master-table-card.is-wide-master-table .table-wrap{
    overflow-x:auto!important;
}
.master-table-card.is-wide-master-table .master-data-table{
    table-layout:auto!important;
    min-width:1040px!important;
}
.master-table-card.is-wide-master-table .master-data-table th,
.master-table-card.is-wide-master-table .master-data-table td{
    padding:9px 10px!important;
    font-size:12.5px!important;
}
.master-table-card.is-wide-master-table .master-data-table .doc-cell{
    min-width:180px!important;
    max-width:260px!important;
}
.master-table-card.is-wide-master-table .master-data-table .doc-cell strong{
    font-size:12.5px!important;
    line-height:1.35!important;
}
.master-table-card.is-wide-master-table .master-data-table .doc-cell small{
    font-size:12px!important;
    line-height:1.35!important;
}
.master-table-card.is-wide-master-table .master-image-thumb{
    width:44px!important;
    height:44px!important;
    border-radius:13px!important;
}
.master-table-card.is-wide-master-table .master-extra-cell{
    max-width:210px!important;
}
.master-table-card.is-wide-master-table .master-extra-cell span{
    display:-webkit-box!important;
    -webkit-line-clamp:2!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
    line-height:1.42!important;
}
.master-table-card.is-wide-master-table .master-extra-description,
.master-table-card.is-wide-master-table .master-extra-address{
    max-width:260px!important;
}
.master-table-card.is-wide-master-table .action-row{
    gap:6px!important;
    flex-wrap:nowrap!important;
}
.master-table-card.is-wide-master-table .action-row .button{
    min-height:32px!important;
    padding:0 10px!important;
    font-size:12px!important;
}
@media(max-width:1280px){
    .master-layout.is-org-location-compact{
        grid-template-columns:190px minmax(0,1fr)!important;
    }
    .master-layout.is-org-location-compact .master-type-link{
        font-size:11.5px!important;
        padding:7px!important;
    }
}
@media(max-width:1100px){
    .master-layout.is-org-location-compact{
        grid-template-columns:1fr!important;
    }
    .master-layout.is-org-location-compact .master-sidebar{
        position:relative!important;
    }
    .master-layout.is-org-location-compact .master-group-list{
        grid-template-columns:repeat(3,minmax(0,1fr))!important;
    }
}
@media(max-width:720px){
    .master-layout.is-org-location-compact .master-group-list{
        grid-template-columns:1fr!important;
    }
    .master-table-card.is-wide-master-table .master-data-table{
        min-width:980px!important;
    }
}


/* Phase 4.3.18.1 ? Master Data layout real fix
   I18N-safe CSS note */
.master-layout.is-master-compact-layout,
.master-layout{
    grid-template-columns:230px minmax(0,1fr)!important;
    gap:14px!important;
    align-items:start!important;
    width:100%!important;
    min-width:0!important;
}
.master-layout.is-master-compact-layout .master-sidebar,
.master-sidebar{
    width:230px!important;
    max-width:230px!important;
    min-width:0!important;
    padding:10px!important;
    border-radius:20px!important;
}
.master-content{
    min-width:0!important;
    width:100%!important;
    overflow:hidden!important;
}
.master-group{
    gap:8px!important;
}
.master-group-title{
    font-size:10.5px!important;
    margin:0 0 5px!important;
    padding:0 3px!important;
    letter-spacing:.04em!important;
    line-height:1.25!important;
}
.master-group-list{
    gap:5px!important;
}
.master-type-link{
    min-height:38px!important;
    padding:7px 8px!important;
    border-radius:12px!important;
    gap:6px!important;
    font-size:12px!important;
    line-height:1.25!important;
}
.master-type-link span{
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
}
.master-type-link strong{
    min-width:24px!important;
    height:21px!important;
    font-size:11px!important;
    padding:0 7px!important;
}
.master-hero-card{
    padding:13px 15px!important;
    border-radius:20px!important;
}
.master-hero-card h2{
    font-size:21px!important;
}
.master-hero-card p{
    font-size:12.5px!important;
    line-height:1.45!important;
}
.master-count-card{
    min-width:96px!important;
    padding:10px!important;
    border-radius:15px!important;
}
.master-count-card strong{
    font-size:23px!important;
}
.master-content .filter-bar{
    display:grid!important;
    grid-template-columns:minmax(220px,1fr) 150px 150px!important;
    gap:10px!important;
    padding:12px!important;
}
.master-table-card.is-wide-master-table,
.master-table-card{
    padding:12px!important;
    border-radius:22px!important;
    min-width:0!important;
    width:100%!important;
    overflow:hidden!important;
}
.master-table-card .master-table-head{
    margin-bottom:8px!important;
}
.master-table-card .page-section-titleblock h3{
    font-size:18px!important;
}
.master-table-card .page-section-titleblock p{
    font-size:12px!important;
}
.master-table-card .table-wrap{
    width:100%!important;
    max-width:100%!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    border-radius:20px!important;
    -webkit-overflow-scrolling:touch!important;
}
.master-table-card .table-wrap::after{
    content:attr(data-i18n-after);
    display:block;
    padding:8px 10px;
    color:#64748b;
    font-size:11px;
    font-weight:850;
    background:#f8fbff;
    border-top:1px solid #e5f1ff;
}
.master-data-table{
    table-layout:auto!important;
    min-width:1120px!important;
    width:max-content!important;
}
.master-data-table th,
.master-data-table td{
    padding:9px 10px!important;
    font-size:12.5px!important;
    line-height:1.42!important;
    vertical-align:middle!important;
    white-space:normal!important;
}
.master-data-table th{
    white-space:nowrap!important;
}
.master-data-table .master-col-image,
.master-data-table .master-col-signature{
    width:72px!important;
    min-width:72px!important;
    max-width:72px!important;
    text-align:center!important;
}
.master-data-table .master-col-main{
    width:220px!important;
    min-width:220px!important;
    max-width:260px!important;
}
.master-data-table .master-col-actions{
    width:170px!important;
    min-width:170px!important;
    max-width:190px!important;
    text-align:right!important;
    position:sticky!important;
    right:0!important;
    z-index:2!important;
    background:linear-gradient(90deg,rgba(255,255,255,.86) 0%,#ffffff 22%)!important;
    box-shadow:-10px 0 20px rgba(3,17,43,.06)!important;
}
.master-data-table thead .master-col-actions{
    background:linear-gradient(180deg,#082b5d 0%,#061b3a 100%)!important;
    box-shadow:none!important;
}
.master-data-table .doc-cell{
    min-width:0!important;
    max-width:240px!important;
}
.master-data-table .doc-cell strong,
.master-data-table .doc-cell small{
    display:block!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
}
.master-data-table .doc-cell strong{
    font-size:12.5px!important;
    line-height:1.35!important;
    white-space:nowrap!important;
}
.master-data-table .doc-cell small{
    font-size:12px!important;
    line-height:1.35!important;
    display:-webkit-box!important;
    -webkit-line-clamp:2!important;
    -webkit-box-orient:vertical!important;
}
.master-image-thumb,
.master-signature-thumb{
    width:44px!important;
    height:44px!important;
    border-radius:13px!important;
    margin:auto!important;
}
.master-extra-cell{
    max-width:190px!important;
}
.master-extra-cell span{
    display:-webkit-box!important;
    -webkit-line-clamp:2!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
    line-height:1.42!important;
    word-break:break-word!important;
}
.master-extra-description,
.master-extra-address{
    max-width:240px!important;
}
.master-col-actions .action-row,
.master-data-table .action-row{
    gap:6px!important;
    flex-wrap:nowrap!important;
    justify-content:flex-end!important;
    min-width:0!important;
}
.master-col-actions .action-row .button,
.master-data-table .action-row .button{
    min-height:32px!important;
    padding:0 10px!important;
    font-size:12px!important;
    white-space:nowrap!important;
}
.master-col-actions form{
    margin:0!important;
}
@media(max-width:1320px){
    .master-layout.is-master-compact-layout,
    .master-layout{
        grid-template-columns:205px minmax(0,1fr)!important;
    }
    .master-layout.is-master-compact-layout .master-sidebar,
    .master-sidebar{
        width:205px!important;
        max-width:205px!important;
    }
    .master-type-link{
        font-size:11.5px!important;
        padding:7px!important;
    }
    .master-data-table{
        min-width:1080px!important;
    }
}
@media(max-width:1100px){
    .master-layout.is-master-compact-layout,
    .master-layout{
        grid-template-columns:1fr!important;
    }
    .master-layout.is-master-compact-layout .master-sidebar,
    .master-sidebar{
        width:100%!important;
        max-width:100%!important;
        position:relative!important;
    }
    .master-group-list{
        grid-template-columns:repeat(3,minmax(0,1fr))!important;
    }
}
@media(max-width:720px){
    .master-group-list{
        grid-template-columns:1fr!important;
    }
    .master-content .filter-bar{
        grid-template-columns:1fr!important;
    }
    .master-data-table{
        min-width:980px!important;
    }
}


/* Phase 4.3.19 ? Master Data batch delete + drag sort */
.master-batch-toolbar{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:12px;
    border:1.5px solid #b7d6f8;
    border-radius:18px;
    background:linear-gradient(135deg,#ffffff 0%,#eef7ff 100%);
    padding:10px 12px;
    margin:0 0 12px;
    box-shadow:0 10px 22px rgba(3,17,43,.06);
}
.master-batch-summary{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:8px;
    color:#40516b;
    font-weight:850;
}
.master-batch-summary strong{
    display:inline-grid;
    place-items:center;
    min-width:34px;
    height:28px;
    border-radius:999px;
    background:linear-gradient(135deg,#0758b8,#1698ff);
    color:#fff;
    font-weight:950;
}
.master-batch-summary em{
    font-style:normal;
    color:#64748b;
    font-size:12px;
}
.master-batch-actions{
    display:flex;
    gap:8px;
    flex-wrap:wrap;
}
.master-batch-actions .button:disabled{
    opacity:.45;
    cursor:not-allowed;
    transform:none!important;
    box-shadow:none!important;
}
.master-data-table .master-col-select{
    width:48px!important;
    min-width:48px!important;
    max-width:48px!important;
    text-align:center!important;
}
.master-data-table .master-col-select input[type="checkbox"]{
    width:18px;
    height:18px;
    accent-color:#ff9900;
    cursor:pointer;
}
.master-data-table .master-col-drag{
    width:74px!important;
    min-width:74px!important;
    max-width:74px!important;
    text-align:center!important;
}
.master-drag-handle{
    width:34px;
    height:34px;
    border:1.5px solid #b7d6f8;
    border-radius:12px;
    background:#ffffff;
    color:#0758b8;
    display:inline-grid;
    place-items:center;
    cursor:grab;
    font-weight:950;
    box-shadow:0 6px 14px rgba(3,17,43,.08);
}
.master-drag-handle:active{
    cursor:grabbing;
}
.master-col-drag small{
    display:block;
    margin-top:3px;
    color:#64748b;
    font-size:10.5px;
    font-weight:850;
}
.master-data-table tr.is-selected td{
    background:#fff8e8!important;
}
.master-data-table tr.is-dragging{
    opacity:.58;
}
.master-data-table tr.is-drag-over td{
    box-shadow:inset 0 2px 0 #ff9900;
}
.master-data-table[data-master-sortable="1"] tbody tr{
    cursor:grab;
}
.master-data-table[data-master-sortable="1"] tbody tr:active{
    cursor:grabbing;
}
@media(max-width:720px){
    .master-batch-toolbar{
        align-items:stretch;
        flex-direction:column;
    }
    .master-batch-actions .button{
        width:100%;
    }
}

.master-data-table tr.is-highlighted td{
    background:#eef7ff!important;
    box-shadow:inset 0 0 0 1px rgba(23,95,230,.08);
}
.master-batch-actions .button-warning{
    background:linear-gradient(135deg,#ffb023 0%,#ff8a00 100%);
    color:#fff;
    border-color:#ff9c12;
    box-shadow:0 10px 22px rgba(255,138,0,.18);
}


/* Phase 4.3.21 ? Material show QR top clean layout */
.material-detail-hero.material-show-qr-hero{
    grid-template-columns:minmax(210px,280px) minmax(0,1fr) minmax(220px,250px)!important;
    gap:18px!important;
    align-items:stretch!important;
}
.material-show-qr-hero .material-show-main-image{
    height:220px!important;
    max-height:220px!important;
}
.material-show-code-line{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:8px;
    margin:8px 0 10px;
}
.material-show-code-line strong{
    display:inline-flex;
    align-items:center;
    border-radius:999px;
    background:linear-gradient(135deg,#061b3a 0%,#0758b8 100%);
    color:#fff;
    padding:7px 12px;
    font-size:13px;
    font-weight:950;
    letter-spacing:.01em;
}
.material-show-code-line span{
    display:inline-flex;
    align-items:center;
    border:1px solid #b7d6f8;
    border-radius:999px;
    background:#fff;
    color:#0758b8;
    padding:6px 10px;
    font-size:12px;
    font-weight:900;
}
.material-show-short-desc{
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
    margin-bottom:10px!important;
}
.material-detail-tags-compact{
    gap:6px!important;
    margin-bottom:12px!important;
}
.material-detail-tags-compact .badge{
    font-size:11.5px!important;
    padding:5px 9px!important;
}
.material-show-stock-strip{
    display:grid;
    grid-template-columns:1.2fr 1fr 1fr;
    gap:8px;
    margin-top:12px;
}
.material-show-stock-strip div{
    border:1px solid #dbeafe;
    border-radius:16px;
    background:linear-gradient(180deg,#fff 0%,#f5fbff 100%);
    padding:10px 11px;
}
.material-show-stock-strip span{
    display:block;
    color:#64748b;
    font-size:11px;
    font-weight:850;
    margin-bottom:3px;
}
.material-show-stock-strip strong{
    display:block;
    color:#061b3a;
    font-size:16px;
    line-height:1.15;
}
.material-show-top-qr-card{
    border:2px solid rgba(255,153,0,.42);
    border-radius:24px;
    background:
        radial-gradient(circle at 100% 0%,rgba(255,191,63,.28) 0,rgba(255,191,63,0) 35%),
        linear-gradient(180deg,#ffffff 0%,#fff8ec 100%);
    box-shadow:0 18px 38px rgba(255,153,0,.18), inset 0 1px 0 rgba(255,255,255,.95);
    padding:14px;
    display:grid;
    justify-items:center;
    align-content:start;
    gap:10px;
}
.material-show-top-qr-head{
    width:100%;
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:8px;
}
.material-show-top-qr-head span{
    display:inline-flex;
    border-radius:999px;
    background:linear-gradient(135deg,#ffbf3f,#ff9900);
    color:#061b3a;
    padding:5px 9px;
    font-size:10.5px;
    font-weight:950;
}
.material-show-top-qr-head strong{
    color:#061b3a;
    font-size:13px;
    font-weight:950;
    text-align:right;
}
.material-show-top-qr-card img{
    width:176px;
    height:176px;
    object-fit:contain;
    border:1px solid #fed7aa;
    border-radius:18px;
    background:#fff;
    padding:8px;
    box-shadow:0 10px 22px rgba(3,17,43,.08);
}
.material-show-top-qr-code{
    max-width:100%;
    color:#0758b8;
    font-size:11px;
    font-weight:950;
    line-height:1.25;
    text-align:center;
    word-break:break-all;
}
.material-show-top-qr-actions{
    width:100%;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
}
.material-show-top-qr-actions .button{
    justify-content:center;
    padding-left:8px!important;
    padding-right:8px!important;
}
.material-more-detail{
    padding:0!important;
    overflow:hidden;
}
.material-more-detail summary{
    list-style:none;
    cursor:pointer;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:12px;
    padding:16px 18px;
    background:linear-gradient(135deg,#ffffff 0%,#f4faff 100%);
    color:#061b3a;
    font-weight:950;
}
.material-more-detail summary::-webkit-details-marker{
    display:none;
}
.material-more-detail summary::after{
    content:attr(data-i18n-closed);
    border-radius:999px;
    background:#edf5ff;
    color:#0758b8;
    padding:5px 10px;
    font-size:12px;
    font-weight:950;
}
.material-more-detail[open] summary::after{
    content:attr(data-i18n-open);
    background:#fff4df;
    color:#c86600;
}
.material-more-detail summary small{
    display:block;
    margin-top:3px;
    color:#64748b;
    font-size:12px;
    font-weight:800;
}
.material-more-detail-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:16px;
    padding:16px 18px 18px;
    border-top:1px solid #e5f1ff;
}
.material-more-detail-grid h3{
    margin:0 0 10px;
    font-size:16px;
}
@media(max-width:1180px){
    .material-detail-hero.material-show-qr-hero{
        grid-template-columns:minmax(210px,280px) minmax(0,1fr)!important;
    }
    .material-show-top-qr-card{
        grid-column:1 / -1;
        grid-template-columns:auto minmax(0,1fr) auto;
        align-items:center;
        justify-items:start;
    }
    .material-show-top-qr-card img{
        width:132px;
        height:132px;
    }
    .material-show-top-qr-actions{
        width:auto;
        min-width:180px;
    }
}
@media(max-width:760px){
    .material-detail-hero.material-show-qr-hero{
        grid-template-columns:1fr!important;
    }
    .material-show-stock-strip,
    .material-more-detail-grid{
        grid-template-columns:1fr;
    }
    .material-show-top-qr-card{
        grid-template-columns:1fr;
        justify-items:center;
    }
    .material-show-top-qr-head{
        align-items:center;
    }
    .material-show-top-qr-card img{
        width:170px;
        height:170px;
    }
}


/* Phase 4.3.22 ? Material current month movement modal */
.material-action-row{
    flex-wrap:wrap;
}
.material-month-modal{
    position:fixed;
    inset:0;
    z-index:1300;
    display:none;
    align-items:center;
    justify-content:center;
    padding:20px;
}
.material-month-modal.is-open{
    display:flex;
}
.material-month-modal-backdrop{
    position:absolute;
    inset:0;
    background:rgba(3,17,43,.70);
    backdrop-filter:blur(7px);
}
.material-month-modal-panel{
    position:relative;
    width:min(1180px,100%);
    max-height:92vh;
    display:flex;
    flex-direction:column;
    overflow:hidden;
    border-radius:26px;
    background:#ffffff;
    border:2px solid rgba(22,152,255,.28);
    box-shadow:0 34px 100px rgba(3,17,43,.42);
}
.material-month-modal-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:14px;
    padding:16px 18px;
    background:linear-gradient(135deg,#6d5dfc 0%,#7c5cf2 60%,#0a3c83 100%);
    color:#fff;
}
.material-month-modal-kicker{
    font-size:13px;
    font-weight:950;
    color:#fff;
    opacity:.95;
}
.material-month-modal-header h2{
    color:#fff!important;
    margin:6px 0 0;
    font-size:21px;
    line-height:1.2;
}
.material-month-modal-close{
    width:34px;
    height:34px;
    border-radius:14px;
    border:1px solid rgba(255,255,255,.45);
    background:rgba(255,255,255,.14);
    color:#fff;
    font-size:21px;
    font-weight:950;
    cursor:pointer;
}
.material-month-modal-close:hover{
    background:rgba(255,255,255,.24);
}
.material-month-modal-body{
    padding:16px 18px;
    overflow:auto;
    background:#f8fbff;
}
.material-month-info{
    display:grid;
    grid-template-columns:1fr 1.4fr .7fr 1fr;
    gap:12px;
    padding:15px;
    border:1px solid #e5f1ff;
    border-radius:18px;
    background:#fff;
    box-shadow:0 10px 24px rgba(3,17,43,.05);
}
.material-month-info div{
    display:grid;
    gap:5px;
}
.material-month-info span{
    color:#475569;
    font-size:12px;
    font-weight:900;
}
.material-month-info strong{
    color:#0b2a5b;
    font-size:14px;
    line-height:1.35;
}
.material-month-kpis{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px;
    margin:16px 0;
}
.material-month-kpis>div{
    border-radius:18px;
    padding:18px;
    display:grid;
    justify-items:center;
    gap:7px;
    min-height:132px;
    box-shadow:0 10px 22px rgba(3,17,43,.08);
    border:1px solid rgba(255,255,255,.85);
}
.material-month-kpis span{
    font-size:13px;
    font-weight:950;
    color:#64748b;
}
.material-month-kpis strong{
    font-size:42px;
    line-height:1;
    font-weight:950;
}
.material-month-kpis em{
    font-style:normal;
    color:#64748b;
    font-weight:850;
}
.material-month-kpis .is-opening{background:#e9fbef}
.material-month-kpis .is-opening strong{color:#22c55e}
.material-month-kpis .is-in{background:#e0f2fe}
.material-month-kpis .is-in strong{color:#ff5a00}
.material-month-kpis .is-out{background:#fff1f1}
.material-month-kpis .is-out strong{color:#dc2626}
.material-month-kpis .is-ending{background:#fff8ec}
.material-month-kpis .is-ending strong{color:#ffb020}
.material-month-table-wrap{
    overflow:auto;
    border:1px solid #d7e3f4;
    border-radius:18px;
    background:#fff;
}
.material-month-table{
    width:max-content;
    min-width:1260px;
    border-collapse:collapse;
    font-size:12.5px;
}
.material-month-table th,
.material-month-table td{
    border:1px solid #d7e3f4;
    padding:7px 8px;
    white-space:nowrap;
    vertical-align:middle;
}
.material-month-table thead th{
    background:#f8fbff!important;
    color:#0b2a5b!important;
    font-weight:950;
    text-align:center;
}
.material-month-table thead .group-row th{
    background:#ffffff!important;
}
.material-month-table thead tr:nth-child(2) th{
    background:#2f63d8!important;
    color:#fff!important;
}
.material-month-table td.num{
    text-align:right;
    font-variant-numeric:tabular-nums;
}
.material-month-table td.in{
    color:#0a7a39;
    font-weight:850;
}
.material-month-table td.out{
    color:#c2410c;
    font-weight:850;
}
.material-month-table td.balance{
    color:#0b2a5b;
    font-weight:900;
}
.material-month-table td.desc{
    min-width:180px;
    max-width:320px;
    white-space:normal;
}
.material-month-table tr.is-opening td,
.material-month-table tr.is-closing td{
    background:#fbfdff;
    font-weight:850;
}
.material-month-doc{
    color:#175fe6;
    font-weight:950;
}
.material-month-date-note{
    margin-top:10px;
    color:#475569;
    text-align:right;
    font-size:12px;
    font-weight:850;
}
.material-month-modal-footer{
    display:flex;
    justify-content:flex-end;
    gap:10px;
    padding:14px 18px;
    border-top:1px solid #e5f1ff;
    background:#fff;
}
.material-month-empty{
    text-align:center!important;
    color:#64748b;
    padding:18px!important;
}
@media(max-width:980px){
    .material-month-info,
    .material-month-kpis{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}
@media(max-width:640px){
    .material-month-modal{
        padding:8px;
    }
    .material-month-modal-panel{
        max-height:96vh;
        border-radius:20px;
    }
    .material-month-info,
    .material-month-kpis{
        grid-template-columns:1fr;
    }
    .material-month-kpis>div{
        min-height:100px;
    }
}


/* Phase 4.3.22.1 ? Current movement reserved qty + theme polish */
.material-month-modal-panel{
    border:2px solid rgba(255,153,0,.30)!important;
    background:#ffffff!important;
}
.material-month-modal-header{
    background:
        radial-gradient(circle at 92% 0%,rgba(255,153,0,.26) 0,rgba(255,153,0,0) 34%),
        linear-gradient(135deg,#061b3a 0%,#0758b8 62%,#0a3c83 100%)!important;
}
.material-month-modal-kicker{
    display:inline-flex;
    width:max-content;
    border-radius:999px;
    padding:6px 11px;
    background:rgba(255,153,0,.20);
    color:#ffd88a!important;
    letter-spacing:.015em;
}
.material-month-modal-body{
    background:
        radial-gradient(circle at 0% 0%,rgba(22,152,255,.10) 0,rgba(22,152,255,0) 34%),
        linear-gradient(180deg,#f7fbff 0%,#eef7ff 100%)!important;
}
.material-month-info{
    border:1.5px solid #b7d6f8!important;
    background:linear-gradient(135deg,#ffffff 0%,#f4faff 100%)!important;
}
.material-month-info span{
    color:#0758b8!important;
}
.material-month-info strong{
    color:#061b3a!important;
}
.material-month-kpis-reserved{
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
    gap:12px!important;
}
.material-month-kpis-reserved>div{
    min-height:118px!important;
    border:1.5px solid rgba(255,255,255,.9)!important;
}
.material-month-kpis-reserved strong{
    font-size:34px!important;
}
.material-month-kpis .is-available{
    background:linear-gradient(180deg,#e9fbef 0%,#ffffff 100%)!important;
}
.material-month-kpis .is-available strong{
    color:#16a34a!important;
}
.material-month-kpis .is-reserved{
    background:linear-gradient(180deg,#fff4df 0%,#ffffff 100%)!important;
}
.material-month-kpis .is-reserved strong{
    color:#ff9900!important;
}
.material-month-kpis .is-ending{
    background:
        radial-gradient(circle at 100% 0%,rgba(255,153,0,.18) 0,rgba(255,153,0,0) 40%),
        linear-gradient(180deg,#e8f4ff 0%,#ffffff 100%)!important;
    border-color:#b7d6f8!important;
}
.material-month-kpis .is-ending strong{
    color:#0758b8!important;
}
.material-month-formula{
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:center;
    gap:10px;
    margin:-4px 0 16px;
    padding:12px 14px;
    border:1.5px solid #ffcf73;
    border-radius:18px;
    background:
        radial-gradient(circle at 100% 0%,rgba(255,153,0,.20) 0,rgba(255,153,0,0) 32%),
        linear-gradient(135deg,#fff8ec 0%,#ffffff 100%);
    box-shadow:0 10px 22px rgba(255,153,0,.10);
}
.material-month-formula span{
    display:inline-flex;
    border-radius:999px;
    padding:6px 10px;
    background:linear-gradient(135deg,#ffbf3f 0%,#ff9900 100%);
    color:#061b3a;
    font-size:12px;
    font-weight:950;
    white-space:nowrap;
}
.material-month-formula strong{
    color:#061b3a;
    font-size:14px;
    font-weight:950;
}
.material-month-formula em{
    color:#0758b8;
    font-style:normal;
    font-weight:950;
    text-align:right;
    white-space:nowrap;
}
.material-month-table-wrap{
    border:1.5px solid #b7d6f8!important;
    box-shadow:0 12px 28px rgba(3,17,43,.08)!important;
}
.material-month-table thead .group-row th{
    background:#ffffff!important;
    color:#061b3a!important;
}
.material-month-table thead tr:nth-child(2) th{
    background:linear-gradient(180deg,#0758b8 0%,#061b3a 100%)!important;
    color:#fff!important;
}
.material-month-modal-footer{
    background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%)!important;
}
.material-month-modal-footer .button-primary{
    background:linear-gradient(135deg,#ffbf3f 0%,#ff9900 100%)!important;
    border-color:#ff9900!important;
    color:#061b3a!important;
}
@media(max-width:1180px){
    .material-month-kpis-reserved{
        grid-template-columns:repeat(3,minmax(0,1fr))!important;
    }
}
@media(max-width:760px){
    .material-month-kpis-reserved{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
    .material-month-formula{
        grid-template-columns:1fr;
    }
    .material-month-formula em{
        text-align:left;
        white-space:normal;
    }
}
@media(max-width:520px){
    .material-month-kpis-reserved{
        grid-template-columns:1fr!important;
    }
}


/* Phase 4.3.22.2 ? Current movement table header polish */
.material-month-table-wrap{
    max-height:54vh;
    overflow:auto!important;
    border-radius:20px!important;
    background:#ffffff!important;
}
.material-month-table{
    border-collapse:separate!important;
    border-spacing:0!important;
}
.material-month-table th,
.material-month-table td{
    border-right:1px solid #d7e3f4!important;
    border-bottom:1px solid #d7e3f4!important;
    border-top:0!important;
    border-left:0!important;
}
.material-month-table thead.material-month-table-head th{
    position:sticky;
    z-index:4;
    vertical-align:middle;
    text-align:center;
    letter-spacing:.01em;
    box-shadow:inset 0 -1px 0 rgba(255,255,255,.16);
}
.material-month-table thead .group-row th{
    top:0;
    height:46px;
    padding:8px 10px!important;
    color:#ffffff!important;
    font-size:13px!important;
    font-weight:950!important;
    white-space:nowrap!important;
}
.material-month-table thead .sub-row th{
    top:46px;
    height:38px;
    padding:7px 9px!important;
    color:#ffffff!important;
    font-size:11.5px!important;
    font-weight:900!important;
    white-space:nowrap!important;
}
.material-month-table thead .group-row th span{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:26px;
    border-radius:999px;
    padding:5px 11px;
    background:rgba(255,255,255,.14);
    border:1px solid rgba(255,255,255,.20);
}
.material-month-table thead .doc-date,
.material-month-table thead .doc-no,
.material-month-table thead .desc-head{
    background:linear-gradient(180deg,#061b3a 0%,#082b5d 100%)!important;
}
.material-month-table thead .group-opening,
.material-month-table thead .opening{
    background:linear-gradient(180deg,#0f8b4c 0%,#08613a 100%)!important;
}
.material-month-table thead .group-in,
.material-month-table thead .in{
    background:linear-gradient(180deg,#0284c7 0%,#075985 100%)!important;
}
.material-month-table thead .group-out,
.material-month-table thead .out{
    background:linear-gradient(180deg,#f97316 0%,#c2410c 100%)!important;
}
.material-month-table thead .group-balance,
.material-month-table thead .balance{
    background:linear-gradient(180deg,#ffb020 0%,#d97706 100%)!important;
    color:#061b3a!important;
}
.material-month-table thead .group-balance span,
.material-month-table thead .balance{
    color:#061b3a!important;
}
.material-month-table thead .group-balance span{
    background:rgba(255,255,255,.38)!important;
    border-color:rgba(255,255,255,.45)!important;
}
.material-month-table thead .sticky-col{
    z-index:6!important;
}
.material-month-table tbody td{
    background:#ffffff;
}
.material-month-table tbody tr:hover td{
    background:#f4faff!important;
}
.material-month-table tbody tr.is-opening td{
    background:#f0fdf4!important;
}
.material-month-table tbody tr.is-closing td{
    background:#fff8ec!important;
}
.material-month-table tbody tr.is-opening:hover td,
.material-month-table tbody tr.is-closing:hover td{
    filter:brightness(.99);
}
.material-month-table tbody td:nth-child(1),
.material-month-table tbody td:nth-child(2){
    background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);
    font-weight:850;
}
.material-month-table .desc{
    color:#334155;
    line-height:1.45;
}
.material-month-table td.num{
    font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
    font-size:12px;
}
.material-month-table thead th:first-child{
    border-top-left-radius:16px;
}
.material-month-table thead th:last-child{
    border-top-right-radius:16px;
}
.material-month-table-wrap::before{
    content:attr(data-i18n-title);
    display:block;
    position:sticky;
    top:0;
    z-index:7;
    padding:9px 12px;
    background:linear-gradient(135deg,#ffffff 0%,#eef7ff 100%);
    color:#0b2a5b;
    border-bottom:1px solid #d7e3f4;
    font-size:12px;
    font-weight:950;
}
.material-month-table-wrap .material-month-table thead .group-row th{
    top:33px;
}
.material-month-table-wrap .material-month-table thead .sub-row th{
    top:79px;
}
@media(max-width:760px){
    .material-month-table-wrap{
        max-height:58vh;
    }
    .material-month-table-wrap::before{
        font-size:11px;
    }
    .material-month-table thead .group-row th{
        height:42px;
        font-size:12px!important;
    }
    .material-month-table thead .sub-row th{
        top:75px;
        height:36px;
        font-size:11px!important;
    }
}


/* Phase 4.3.22.3 ? Current movement table header redesign
   I18N-safe CSS note */
.material-month-table-wrap{
    position:relative!important;
    max-height:56vh!important;
    border:2px solid #b7d6f8!important;
    border-radius:20px!important;
    overflow:auto!important;
    background:#ffffff!important;
}
.material-month-table-wrap::before{
    content:attr(data-i18n-title);
    display:flex!important;
    align-items:center;
    gap:8px;
    position:sticky;
    top:0;
    z-index:20;
    height:38px;
    padding:0 14px!important;
    background:linear-gradient(135deg,#061b3a 0%,#0758b8 72%,#ff9900 100%)!important;
    color:#fff!important;
    border-bottom:1px solid rgba(255,255,255,.20)!important;
    font-size:13px!important;
    font-weight:950!important;
    letter-spacing:.01em;
}
.material-month-table-wrap::after{
    content:attr(data-i18n-after);
    display:block;
    position:sticky;
    left:0;
    bottom:0;
    z-index:8;
    padding:8px 12px;
    background:#f8fbff;
    border-top:1px solid #d7e3f4;
    color:#64748b;
    font-size:11.5px;
    font-weight:850;
}
.material-month-table{
    border-collapse:separate!important;
    border-spacing:0!important;
    min-width:1380px!important;
    width:max-content!important;
}
.material-month-table th,
.material-month-table td{
    border-right:1px solid #d7e3f4!important;
    border-bottom:1px solid #d7e3f4!important;
    border-top:0!important;
    border-left:0!important;
}
.material-month-table thead.material-month-table-head-v2 th{
    position:sticky!important;
    vertical-align:middle!important;
    text-align:center!important;
    white-space:nowrap!important;
    padding:0!important;
    border-color:rgba(255,255,255,.22)!important;
    box-shadow:none!important;
}
.material-month-table-head-v2 .group-row th{
    top:38px!important;
    height:42px!important;
    z-index:15!important;
}
.material-month-table-head-v2 .sub-row th{
    top:80px!important;
    height:34px!important;
    z-index:14!important;
    font-size:11.5px!important;
    font-weight:950!important;
    padding:0 8px!important;
}
.material-month-table-head-v2 .meta-head{
    top:38px!important;
    height:76px!important;
    min-width:112px!important;
    z-index:16!important;
    background:linear-gradient(180deg,#0b2a5b 0%,#061b3a 100%)!important;
    color:#fff!important;
}
.material-month-table-head-v2 .doc-date{
    min-width:112px!important;
}
.material-month-table-head-v2 .doc-no{
    min-width:150px!important;
}
.material-month-table-head-v2 .desc-head{
    min-width:180px!important;
}
.material-month-table-head-v2 .meta-head span,
.material-month-table-head-v2 .meta-head small{
    display:block!important;
    line-height:1.15!important;
}
.material-month-table-head-v2 .meta-head span{
    color:#fff!important;
    font-size:13px!important;
    font-weight:950!important;
}
.material-month-table-head-v2 .meta-head small{
    margin-top:4px;
    color:#bfdcff!important;
    font-size:10.5px!important;
    font-weight:850!important;
}
.material-month-table-head-v2 .group-head{
    min-width:285px!important;
    color:#fff!important;
}
.material-month-table-head-v2 .group-head span{
    display:inline-grid!important;
    place-items:center!important;
    width:24px!important;
    height:24px!important;
    margin-right:8px!important;
    border-radius:999px!important;
    background:rgba(255,255,255,.22)!important;
    border:1px solid rgba(255,255,255,.25)!important;
    color:#fff!important;
    font-size:10px!important;
    font-weight:950!important;
}
.material-month-table-head-v2 .group-head strong{
    color:#fff!important;
    font-size:14px!important;
    font-weight:950!important;
    letter-spacing:.01em!important;
}
.material-month-table-head-v2 .sub-row th{
    color:#fff!important;
}
.material-month-table-head-v2 .group-opening,
.material-month-table-head-v2 .opening{
    background:linear-gradient(180deg,#16a34a 0%,#087337 100%)!important;
}
.material-month-table-head-v2 .group-in,
.material-month-table-head-v2 .in{
    background:linear-gradient(180deg,#0ea5e9 0%,#0369a1 100%)!important;
}
.material-month-table-head-v2 .group-out,
.material-month-table-head-v2 .out{
    background:linear-gradient(180deg,#f97316 0%,#c2410c 100%)!important;
}
.material-month-table-head-v2 .group-balance,
.material-month-table-head-v2 .balance{
    background:linear-gradient(180deg,#ffbf3f 0%,#ff9900 100%)!important;
    color:#061b3a!important;
}
.material-month-table-head-v2 .group-balance strong,
.material-month-table-head-v2 .group-balance span,
.material-month-table-head-v2 .balance{
    color:#061b3a!important;
}
.material-month-table-head-v2 .group-balance span{
    background:rgba(255,255,255,.45)!important;
    border-color:rgba(6,27,58,.12)!important;
}
.material-month-table tbody td{
    background:#fff!important;
    padding:7px 8px!important;
    font-size:12.5px!important;
}
.material-month-table tbody tr:hover td{
    background:#f4faff!important;
}
.material-month-table tbody tr.is-opening td{
    background:#ecfdf5!important;
}
.material-month-table tbody tr.is-closing td{
    background:#fff8ec!important;
}
.material-month-table tbody td:nth-child(1),
.material-month-table tbody td:nth-child(2){
    background:#fbfdff!important;
    color:#0b2a5b;
    font-weight:850;
}
.material-month-table .desc{
    min-width:180px!important;
    max-width:280px!important;
    white-space:normal!important;
    line-height:1.42!important;
}
.material-month-table td.num{
    min-width:88px!important;
    text-align:right!important;
    font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace!important;
    font-size:12px!important;
}
.material-month-table td.in{
    color:#087337!important;
    font-weight:850;
}
.material-month-table td.out{
    color:#c2410c!important;
    font-weight:850;
}
.material-month-table td.balance{
    color:#0758b8!important;
    font-weight:950;
}
.material-month-doc{
    color:#175fe6!important;
    font-weight:950!important;
}
@media(max-width:760px){
    .material-month-table-wrap::before{
        height:34px;
        font-size:12px!important;
    }
    .material-month-table-head-v2 .group-row th{
        top:34px!important;
        height:40px!important;
    }
    .material-month-table-head-v2 .sub-row th{
        top:74px!important;
        height:32px!important;
        font-size:10.8px!important;
    }
    .material-month-table-head-v2 .meta-head{
        top:34px!important;
        height:72px!important;
    }
}


/* Phase 4.3.22.4 ? Current movement stable table header fix
   I18N-safe CSS note */
.material-month-table-wrap{
    position:relative!important;
    max-height:56vh!important;
    overflow:auto!important;
    border:2px solid #b7d6f8!important;
    border-radius:20px!important;
    background:#ffffff!important;
}
.material-month-table-wrap::before{
    content:attr(data-i18n-title)!important;
    display:block!important;
    position:static!important;
    height:auto!important;
    padding:11px 14px!important;
    background:linear-gradient(135deg,#061b3a 0%,#0758b8 72%,#ff9900 100%)!important;
    color:#fff!important;
    border-bottom:1px solid rgba(255,255,255,.20)!important;
    font-size:13px!important;
    font-weight:950!important;
    letter-spacing:.01em!important;
}
.material-month-table-wrap::after{
    content:attr(data-i18n-after)!important;
    display:block!important;
    position:sticky!important;
    left:0!important;
    bottom:0!important;
    z-index:8!important;
    padding:8px 12px!important;
    background:#f8fbff!important;
    border-top:1px solid #d7e3f4!important;
    color:#64748b!important;
    font-size:11.5px!important;
    font-weight:850!important;
}
.material-month-table{
    border-collapse:separate!important;
    border-spacing:0!important;
    min-width:1380px!important;
    width:max-content!important;
}
.material-month-table thead.material-month-head-stable th{
    position:static!important;
    top:auto!important;
    z-index:auto!important;
    height:auto!important;
    min-height:0!important;
    padding:0!important;
    vertical-align:middle!important;
    text-align:center!important;
    white-space:nowrap!important;
    border-right:1px solid rgba(255,255,255,.22)!important;
    border-bottom:1px solid rgba(255,255,255,.22)!important;
    box-shadow:none!important;
}
.material-month-head-stable .group-row th{
    height:42px!important;
}
.material-month-head-stable .sub-row th{
    height:34px!important;
    padding:0 8px!important;
    color:#fff!important;
    font-size:11.5px!important;
    font-weight:950!important;
}
.material-month-head-stable .meta-head{
    min-width:116px!important;
    width:116px!important;
    background:linear-gradient(180deg,#0b2a5b 0%,#061b3a 100%)!important;
    color:#fff!important;
    padding:0 10px!important;
}
.material-month-head-stable .desc-head{
    min-width:190px!important;
    width:190px!important;
}
.material-month-head-stable .meta-head span{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:28px!important;
    border-radius:999px!important;
    padding:5px 10px!important;
    background:rgba(255,255,255,.12)!important;
    border:1px solid rgba(255,255,255,.20)!important;
    color:#fff!important;
    font-size:12.5px!important;
    font-weight:950!important;
}
.material-month-head-stable .group-head{
    min-width:285px!important;
    color:#fff!important;
}
.material-month-head-stable .group-head span{
    display:inline-grid!important;
    place-items:center!important;
    width:24px!important;
    height:24px!important;
    margin-right:8px!important;
    border-radius:999px!important;
    background:rgba(255,255,255,.22)!important;
    border:1px solid rgba(255,255,255,.25)!important;
    color:#fff!important;
    font-size:10px!important;
    font-weight:950!important;
}
.material-month-head-stable .group-head strong{
    color:#fff!important;
    font-size:14px!important;
    font-weight:950!important;
}
.material-month-head-stable .group-opening,
.material-month-head-stable .opening{
    background:linear-gradient(180deg,#16a34a 0%,#087337 100%)!important;
}
.material-month-head-stable .group-in,
.material-month-head-stable .in{
    background:linear-gradient(180deg,#0ea5e9 0%,#0369a1 100%)!important;
}
.material-month-head-stable .group-out,
.material-month-head-stable .out{
    background:linear-gradient(180deg,#f97316 0%,#c2410c 100%)!important;
}
.material-month-head-stable .group-balance,
.material-month-head-stable .balance{
    background:linear-gradient(180deg,#ffbf3f 0%,#ff9900 100%)!important;
    color:#061b3a!important;
}
.material-month-head-stable .group-balance strong,
.material-month-head-stable .group-balance span,
.material-month-head-stable .balance{
    color:#061b3a!important;
}
.material-month-head-stable .group-balance span{
    background:rgba(255,255,255,.48)!important;
    border-color:rgba(6,27,58,.12)!important;
}
.material-month-table tbody td{
    background:#fff!important;
    padding:7px 8px!important;
    font-size:12.5px!important;
    border-right:1px solid #d7e3f4!important;
    border-bottom:1px solid #d7e3f4!important;
}
.material-month-table tbody tr:hover td{
    background:#f4faff!important;
}
.material-month-table tbody tr.is-opening td{
    background:#ecfdf5!important;
}
.material-month-table tbody tr.is-closing td{
    background:#fff8ec!important;
}
.material-month-table td.num{
    min-width:88px!important;
    text-align:right!important;
    font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace!important;
    font-size:12px!important;
}
.material-month-table .desc{
    min-width:190px!important;
    max-width:280px!important;
    white-space:normal!important;
    line-height:1.42!important;
}
.material-month-table td.in{
    color:#087337!important;
    font-weight:850!important;
}
.material-month-table td.out{
    color:#c2410c!important;
    font-weight:850!important;
}
.material-month-table td.balance{
    color:#0758b8!important;
    font-weight:950!important;
}


/* Phase 4.3.22.5 ? Current movement header color/full-width fix */
.material-month-table thead.material-month-head-clean th{
    padding:0!important;
    border-right:1px solid rgba(255,255,255,.18)!important;
    border-bottom:1px solid rgba(255,255,255,.18)!important;
    text-align:center!important;
    vertical-align:middle!important;
    white-space:nowrap!important;
}
.material-month-head-clean .group-row th{
    height:46px!important;
}
.material-month-head-clean .sub-row th{
    height:36px!important;
    font-size:11.5px!important;
    font-weight:900!important;
    color:#fff!important;
    padding:0 8px!important;
}
.material-month-head-clean .meta-head{
    min-width:120px!important;
    background:linear-gradient(180deg,#0b2a5b 0%,#061b3a 100%)!important;
}
.material-month-head-clean .desc-head{
    min-width:190px!important;
}
.material-month-head-clean .head-meta,
.material-month-head-clean .head-group{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    width:100%!important;
    height:100%!important;
    padding:0 10px!important;
    box-sizing:border-box!important;
}
.material-month-head-clean .head-meta{
    color:#fff!important;
    font-size:12.5px!important;
    font-weight:950!important;
}
.material-month-head-clean .group-head{
    min-width:288px!important;
}
.material-month-head-clean .head-group strong{
    color:inherit!important;
    font-size:14px!important;
    font-weight:950!important;
    line-height:1!important;
}
.material-month-head-clean .head-group span{
    display:inline-grid!important;
    place-items:center!important;
    width:24px!important;
    height:24px!important;
    border-radius:999px!important;
    font-size:10px!important;
    font-weight:950!important;
    background:rgba(255,255,255,.22)!important;
    border:1px solid rgba(255,255,255,.26)!important;
    color:inherit!important;
    flex:0 0 24px!important;
}
.material-month-head-clean .group-opening,
.material-month-head-clean .opening{
    background:linear-gradient(180deg,#16a34a 0%,#087337 100%)!important;
    color:#fff!important;
}
.material-month-head-clean .group-in,
.material-month-head-clean .in{
    background:linear-gradient(180deg,#0ea5e9 0%,#0369a1 100%)!important;
    color:#fff!important;
}
.material-month-head-clean .group-out,
.material-month-head-clean .out{
    background:linear-gradient(180deg,#f97316 0%,#c2410c 100%)!important;
    color:#fff!important;
}
.material-month-head-clean .group-balance,
.material-month-head-clean .balance{
    background:linear-gradient(180deg,#ffbf3f 0%,#ff9900 100%)!important;
    color:#061b3a!important;
}
.material-month-head-clean .group-balance .head-group span{
    background:rgba(255,255,255,.50)!important;
    border-color:rgba(6,27,58,.14)!important;
}
.material-month-head-clean .group-balance .head-group strong,
.material-month-head-clean .group-balance .head-group span,
.material-month-head-clean .balance{
    color:#061b3a!important;
}
.material-month-table-wrap::before{
    content:attr(data-i18n-title)!important;
}


/* Phase 4.3.22.6 ? Current movement no-merge flat header
   I18N-safe CSS note */
.material-month-table-wrap{
    position:relative!important;
    overflow:auto!important;
    max-height:56vh!important;
    border:2px solid #b7d6f8!important;
    border-radius:20px!important;
    background:#ffffff!important;
}
.material-month-table-wrap::before{
    content:attr(data-i18n-title)!important;
    display:block!important;
    position:static!important;
    padding:11px 14px!important;
    background:linear-gradient(135deg,#061b3a 0%,#0758b8 72%,#ff9900 100%)!important;
    color:#fff!important;
    font-size:13px!important;
    font-weight:950!important;
    letter-spacing:.01em!important;
}
.material-month-table-wrap::after{
    content:attr(data-i18n-after)!important;
    display:block!important;
    position:sticky!important;
    left:0!important;
    bottom:0!important;
    z-index:8!important;
    padding:8px 12px!important;
    background:#f8fbff!important;
    border-top:1px solid #d7e3f4!important;
    color:#64748b!important;
    font-size:11.5px!important;
    font-weight:850!important;
}
.material-month-table-legend{
    display:flex!important;
    gap:8px!important;
    flex-wrap:wrap!important;
    align-items:center!important;
    padding:10px 12px!important;
    background:#f8fbff!important;
    border-bottom:1px solid #d7e3f4!important;
}
.material-month-table-legend span{
    display:inline-flex!important;
    align-items:center!important;
    min-height:26px!important;
    border-radius:999px!important;
    padding:6px 10px!important;
    font-size:11.5px!important;
    font-weight:950!important;
    line-height:1!important;
}
.material-month-table-legend .legend-opening{
    background:#dcfce7!important;
    color:#087337!important;
}
.material-month-table-legend .legend-in{
    background:#dff3ff!important;
    color:#0369a1!important;
}
.material-month-table-legend .legend-out{
    background:#ffedd5!important;
    color:#c2410c!important;
}
.material-month-table-legend .legend-balance{
    background:#fff4cc!important;
    color:#92400e!important;
}
.material-month-table{
    border-collapse:separate!important;
    border-spacing:0!important;
    min-width:1360px!important;
    width:max-content!important;
}
.material-month-table thead.material-month-head-flat th{
    position:static!important;
    top:auto!important;
    z-index:auto!important;
    height:46px!important;
    min-height:46px!important;
    padding:7px 9px!important;
    text-align:center!important;
    vertical-align:middle!important;
    white-space:nowrap!important;
    border-right:1px solid rgba(255,255,255,.20)!important;
    border-bottom:1px solid rgba(255,255,255,.20)!important;
    font-size:12px!important;
    font-weight:950!important;
    line-height:1.15!important;
    color:#fff!important;
}
.material-month-table thead.material-month-head-flat th small{
    display:block!important;
    margin-top:3px!important;
    font-size:10.5px!important;
    font-weight:850!important;
    color:inherit!important;
    opacity:.92!important;
}
.material-month-table thead.material-month-head-flat th.meta{
    min-width:120px!important;
    background:linear-gradient(180deg,#0b2a5b 0%,#061b3a 100%)!important;
    color:#fff!important;
}
.material-month-table thead.material-month-head-flat th.desc-head{
    min-width:190px!important;
}
.material-month-table thead.material-month-head-flat th.opening{
    min-width:92px!important;
    background:linear-gradient(180deg,#16a34a 0%,#087337 100%)!important;
    color:#fff!important;
}
.material-month-table thead.material-month-head-flat th.in{
    min-width:92px!important;
    background:linear-gradient(180deg,#0ea5e9 0%,#0369a1 100%)!important;
    color:#fff!important;
}
.material-month-table thead.material-month-head-flat th.out{
    min-width:92px!important;
    background:linear-gradient(180deg,#f97316 0%,#c2410c 100%)!important;
    color:#fff!important;
}
.material-month-table thead.material-month-head-flat th.balance{
    min-width:92px!important;
    background:linear-gradient(180deg,#ffbf3f 0%,#ff9900 100%)!important;
    color:#061b3a!important;
}
.material-month-table tbody td{
    background:#fff!important;
    padding:7px 8px!important;
    font-size:12.5px!important;
    border-right:1px solid #d7e3f4!important;
    border-bottom:1px solid #d7e3f4!important;
}
.material-month-table tbody tr:hover td{
    background:#f4faff!important;
}
.material-month-table tbody tr.is-opening td{
    background:#ecfdf5!important;
}
.material-month-table tbody tr.is-closing td{
    background:#fff8ec!important;
}
.material-month-table td.num{
    min-width:88px!important;
    text-align:right!important;
    font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace!important;
    font-size:12px!important;
}
.material-month-table .desc{
    min-width:190px!important;
    max-width:280px!important;
    white-space:normal!important;
    line-height:1.42!important;
}
.material-month-table td.in{
    color:#087337!important;
    font-weight:850!important;
}
.material-month-table td.out{
    color:#c2410c!important;
    font-weight:850!important;
}
.material-month-table td.balance{
    color:#0758b8!important;
    font-weight:950!important;
}


/* Phase 4.3.22.7 ? Current movement continuous header color
   I18N-safe CSS note */
.material-month-table{
    border-collapse:collapse!important;
    border-spacing:0!important;
}
.material-month-table thead.material-month-head-flat th{
    border-right:0!important;
    border-left:0!important;
    border-top:0!important;
    border-bottom:1px solid rgba(255,255,255,.28)!important;
    background-image:none!important;
    box-shadow:inset 0 -1px 0 rgba(0,0,0,.10)!important;
}
.material-month-table thead.material-month-head-flat th.meta{
    background:#061b3a!important;
    color:#fff!important;
}
.material-month-table thead.material-month-head-flat th.opening{
    background:#0f8f45!important;
    color:#fff!important;
}
.material-month-table thead.material-month-head-flat th.in{
    background:#087fbd!important;
    color:#fff!important;
}
.material-month-table thead.material-month-head-flat th.out{
    background:#df5d12!important;
    color:#fff!important;
}
.material-month-table thead.material-month-head-flat th.balance{
    background:#ff9900!important;
    color:#061b3a!important;
}

/* I18N-safe CSS note */
.material-month-table thead.material-month-head-flat th:nth-child(3),
.material-month-table thead.material-month-head-flat th:nth-child(6),
.material-month-table thead.material-month-head-flat th:nth-child(9),
.material-month-table thead.material-month-head-flat th:nth-child(12),
.material-month-table thead.material-month-head-flat th:nth-child(13){
    border-left:4px solid #ffffff!important;
}
.material-month-table thead.material-month-head-flat th:nth-child(2),
.material-month-table thead.material-month-head-flat th:nth-child(5),
.material-month-table thead.material-month-head-flat th:nth-child(8),
.material-month-table thead.material-month-head-flat th:nth-child(11),
.material-month-table thead.material-month-head-flat th:nth-child(15){
    border-right:0!important;
}

/* I18N-safe CSS note */
.material-month-table thead.material-month-head-flat th small{
    color:inherit!important;
    opacity:1!important;
    font-weight:850!important;
}
.material-month-table thead.material-month-head-flat th.balance small{
    color:#3b2600!important;
}
.material-month-table thead.material-month-head-flat th.balance{
    text-shadow:none!important;
}

/* I18N-safe CSS note */
.material-month-table tbody td{
    border-right:1px solid #d7e3f4!important;
    border-bottom:1px solid #d7e3f4!important;
}
.material-month-table tbody td:nth-child(3),
.material-month-table tbody td:nth-child(6),
.material-month-table tbody td:nth-child(9),
.material-month-table tbody td:nth-child(12),
.material-month-table tbody td:nth-child(13){
    border-left:2px solid #c8d9ee!important;
}

/* I18N-safe CSS note */
.material-month-table-legend .legend-opening{
    background:#0f8f45!important;
    color:#fff!important;
}
.material-month-table-legend .legend-in{
    background:#087fbd!important;
    color:#fff!important;
}
.material-month-table-legend .legend-out{
    background:#df5d12!important;
    color:#fff!important;
}
.material-month-table-legend .legend-balance{
    background:#ff9900!important;
    color:#061b3a!important;
}


/* Phase 4.3.22.8 ? Current movement scroll content width fix
   I18N-safe CSS note */
.material-month-table-wrap{
    --material-month-scroll-width: 1520px;
    overflow:auto!important;
    background:#ffffff!important;
}
.material-month-table-wrap::before{
    box-sizing:border-box!important;
    width:var(--material-month-scroll-width)!important;
    min-width:var(--material-month-scroll-width)!important;
    max-width:none!important;
    margin:0!important;
}
.material-month-table-legend{
    box-sizing:border-box!important;
    width:var(--material-month-scroll-width)!important;
    min-width:var(--material-month-scroll-width)!important;
    max-width:none!important;
    margin:0!important;
    background:#f8fbff!important;
}
.material-month-table{
    width:var(--material-month-scroll-width)!important;
    min-width:var(--material-month-scroll-width)!important;
    max-width:none!important;
    table-layout:fixed!important;
}
.material-month-table thead.material-month-head-flat th.meta{
    width:120px!important;
}
.material-month-table thead.material-month-head-flat th.desc-head{
    width:220px!important;
}
.material-month-table thead.material-month-head-flat th.opening,
.material-month-table thead.material-month-head-flat th.in,
.material-month-table thead.material-month-head-flat th.out,
.material-month-table thead.material-month-head-flat th.balance{
    width:92px!important;
}
.material-month-table tbody td{
    box-sizing:border-box!important;
}
.material-month-table tbody td:nth-child(1){
    width:120px!important;
}
.material-month-table tbody td:nth-child(2){
    width:120px!important;
}
.material-month-table tbody td.desc,
.material-month-table tbody td:nth-child(12){
    width:220px!important;
    min-width:220px!important;
    max-width:220px!important;
}
.material-month-table td.num{
    width:92px!important;
    min-width:92px!important;
    max-width:92px!important;
}
.material-month-table tbody td:nth-child(15){
    border-right:0!important;
}

/* I18N-safe CSS note */
.material-month-table-wrap > *{
    flex-shrink:0!important;
}

@media(max-width:900px){
    .material-month-table-wrap{
        --material-month-scroll-width: 1460px;
    }
}


/* Phase 4.3.22.9 ? Current movement full modal width
   I18N-safe CSS note */
.material-month-table-wrap{
    --material-month-scroll-width: max(100%, 1520px)!important;
    width:100%!important;
    max-width:100%!important;
    background:#ffffff!important;
}
.material-month-table-wrap::before,
.material-month-table-legend,
.material-month-table{
    width:var(--material-month-scroll-width)!important;
    min-width:var(--material-month-scroll-width)!important;
    max-width:none!important;
}
.material-month-table{
    table-layout:fixed!important;
}
.material-month-table-wrap::before{
    display:block!important;
}
.material-month-table-legend{
    display:flex!important;
}
.material-month-modal-body{
    overflow:auto!important;
}
.material-month-table-wrap{
    box-sizing:border-box!important;
}

/* I18N-safe CSS note */
.material-month-table-wrap,
.material-month-table-wrap::before,
.material-month-table-legend{
    background-clip:border-box!important;
}
@media(min-width:1500px){
    .material-month-table-wrap{
        --material-month-scroll-width: 100%!important;
    }
}


/* Phase 4.3.22.10 ? Current movement header width equals material-month-table
   I18N-safe CSS note */
.material-month-table-wrap{
    --material-month-table-width: 140%!important;
    --material-month-scroll-width: var(--material-month-table-width)!important;
    overflow-x:auto!important;
    overflow-y:auto!important;
}
.material-month-table{
    width:var(--material-month-table-width)!important;
    min-width:var(--material-month-table-width)!important;
    max-width:var(--material-month-table-width)!important;
    table-layout:fixed!important;
}
.material-month-table-wrap::before,
.material-month-table-legend{
    width:var(--material-month-table-width)!important;
    min-width:var(--material-month-table-width)!important;
    max-width:var(--material-month-table-width)!important;
    box-sizing:border-box!important;
}

/* I18N-safe CSS note */
@media(min-width:1500px){
    .material-month-table-wrap{
        --material-month-scroll-width: var(--material-month-table-width)!important;
    }
}

/* I18N-safe CSS note */
.material-month-table-wrap::before{
    margin:0!important;
}
.material-month-table-legend{
    margin:0!important;
}


/* Phase 4.3.22.12 ? Current movement larger modal */
.material-month-modal{
    padding:10px!important;
}
.material-month-modal-panel{
    width:min(1580px,98vw)!important;
    max-width:98vw!important;
    max-height:96vh!important;
    border-radius:28px!important;
}
.material-month-modal-header{
    padding:18px 22px!important;
}
.material-month-modal-body{
    padding:18px 22px!important;
}
.material-month-modal-footer{
    padding:14px 22px!important;
}
.material-month-table-wrap{
    max-height:60vh!important;
}
.material-month-table{
    min-width:140%!important;
}
@media(min-width:1600px){
    .material-month-modal-panel{
        width:min(1760px,98vw)!important;
    }
}
@media(max-width:900px){
    .material-month-modal{
        padding:6px!important;
    }
    .material-month-modal-panel{
        width:99vw!important;
        max-width:99vw!important;
        max-height:98vh!important;
        border-radius:20px!important;
    }
    .material-month-modal-body{
        padding:12px!important;
    }
}


/* Phase 4.3.22.13 ? Current movement fit table to modal
   I18N-safe CSS note */
.material-month-table-wrap{
    --material-month-table-width: 100%!important;
    --material-month-scroll-width: 100%!important;
    width:100%!important;
    max-width:100%!important;
    overflow-x:auto!important; /* I18N-safe CSS note */
    overflow-y:auto!important;
}
.material-month-table-wrap::before,
.material-month-table-legend,
.material-month-table{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
}
.material-month-table.material-month-table-fit{
    table-layout:fixed!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
}
.material-month-table-fit .col-date{width:6.5%}
.material-month-table-fit .col-doc{width:8.5%}
.material-month-table-fit .col-num{width:5.6%}
.material-month-table-fit .col-price{width:5.7%}
.material-month-table-fit .col-money{width:5.9%}
.material-month-table-fit .col-desc{width:10.2%}

.material-month-table-legend-fit{
    padding:8px 10px!important;
    gap:6px!important;
}
.material-month-table-legend-fit span{
    min-height:22px!important;
    padding:5px 8px!important;
    font-size:10.8px!important;
}
.material-month-table thead.material-month-head-fit th{
    height:42px!important;
    min-height:42px!important;
    padding:5px 4px!important;
    font-size:10.7px!important;
    line-height:1.08!important;
    white-space:normal!important;
    word-break:keep-all!important;
}
.material-month-table thead.material-month-head-fit th small{
    margin-top:2px!important;
    font-size:9.4px!important;
    line-height:1.05!important;
}
.material-month-table thead.material-month-head-fit th.meta{
    min-width:0!important;
}
.material-month-table thead.material-month-head-fit th.desc-head{
    min-width:0!important;
}
.material-month-table thead.material-month-head-fit th.opening,
.material-month-table thead.material-month-head-fit th.in,
.material-month-table thead.material-month-head-fit th.out,
.material-month-table thead.material-month-head-fit th.balance{
    min-width:0!important;
}
.material-month-table-fit tbody td{
    padding:5px 4px!important;
    font-size:10.8px!important;
    line-height:1.25!important;
    white-space:normal!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
}
.material-month-table-fit td.num{
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    font-size:10.3px!important;
    letter-spacing:-.02em!important;
    white-space:nowrap!important;
}
.material-month-table-fit td.desc,
.material-month-table-fit tbody td:nth-child(12){
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    white-space:normal!important;
    display:table-cell!important;
}
.material-month-table-fit td:nth-child(2){
    word-break:break-word!important;
}
.material-month-table-fit .material-month-doc{
    display:inline-block!important;
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    vertical-align:bottom!important;
}

/* I18N-safe CSS note */
@media(max-width:1180px){
    .material-month-table.material-month-table-fit{
        min-width:1180px!important;
        max-width:none!important;
    }
    .material-month-table-wrap::before,
    .material-month-table-legend{
        min-width:1180px!important;
        max-width:none!important;
    }
}


/* Phase 4.3.23 ? Dashboard Sync for QR Labels / Material Media / Current Movement */
.dashboard-sync-grid{
    margin-top:18px;
}
.dashboard-sync-panel{
    overflow:hidden;
}
.dashboard-readiness-stack,
.dashboard-qr-readiness-list{
    display:grid;
    gap:12px;
}
.dashboard-readiness-row,
.dashboard-qr-readiness-item{
    display:grid;
    grid-template-columns:minmax(180px,1fr) minmax(120px,220px) 58px;
    gap:12px;
    align-items:center;
    padding:12px;
    border:1px solid #dbeafe;
    border-radius:18px;
    background:linear-gradient(135deg,#ffffff 0%,#f4faff 100%);
    text-decoration:none;
    color:inherit;
}
.dashboard-readiness-row strong,
.dashboard-qr-readiness-item strong{
    display:block;
    color:#061b3a;
    font-weight:950;
}
.dashboard-readiness-row span,
.dashboard-qr-readiness-item span{
    display:block;
    margin-top:3px;
    color:#64748b;
    font-size:12px;
    font-weight:800;
}
.dashboard-readiness-row em,
.dashboard-qr-readiness-item em{
    font-style:normal;
    color:#0758b8;
    font-weight:950;
    text-align:right;
}
.dashboard-readiness-bar{
    height:11px;
    border-radius:999px;
    background:#e5f1ff;
    overflow:hidden;
    box-shadow:inset 0 1px 2px rgba(3,17,43,.08);
}
.dashboard-readiness-bar i{
    display:block;
    height:100%;
    border-radius:inherit;
    background:linear-gradient(90deg,#0758b8 0%,#1698ff 62%,#ff9900 100%);
}
.dashboard-sync-kpi-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
    margin-top:14px;
}
.dashboard-sync-kpi-grid div{
    border:1px solid #dbeafe;
    border-radius:18px;
    background:#fff;
    padding:13px;
}
.dashboard-sync-kpi-grid span{
    display:block;
    color:#64748b;
    font-size:12px;
    font-weight:900;
}
.dashboard-sync-kpi-grid strong{
    display:block;
    margin-top:5px;
    color:#0758b8;
    font-size:20px;
    font-weight:950;
}
.dashboard-movement-focus{
    margin-top:18px;
}
.dashboard-movement-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px;
}
.dashboard-movement-card{
    display:grid;
    gap:10px;
    text-decoration:none;
    color:inherit;
    border:1px solid #dbeafe;
    border-radius:20px;
    background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);
    padding:14px;
    box-shadow:0 10px 22px rgba(3,17,43,.06);
}
.dashboard-movement-card:hover{
    border-color:#1698ff;
    box-shadow:0 14px 28px rgba(3,17,43,.10);
}
.dashboard-movement-card strong{
    color:#061b3a;
    font-weight:950;
    line-height:1.3;
}
.dashboard-movement-card small{
    display:block;
    margin-top:4px;
    color:#64748b;
    font-weight:800;
}
.dashboard-movement-values{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:6px;
}
.dashboard-movement-values span{
    border-radius:12px;
    background:#edf5ff;
    color:#334155;
    padding:7px 8px;
    font-size:11px;
    font-weight:900;
}
.dashboard-movement-values b{
    display:block;
    color:#0758b8;
    font-size:13px;
}
.dashboard-movement-card em{
    font-style:normal;
    color:#ff9900;
    font-size:12px;
    font-weight:950;
}
@media(max-width:1180px){
    .dashboard-movement-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .dashboard-sync-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
    .dashboard-readiness-row,
    .dashboard-qr-readiness-item{grid-template-columns:1fr}
    .dashboard-readiness-row em,
    .dashboard-qr-readiness-item em{text-align:left}
    .dashboard-movement-grid{grid-template-columns:1fr}
    .dashboard-sync-kpi-grid{grid-template-columns:1fr}
}


/* Phase 4.3.24 ? Material Current Month Movement Print */
.print-movement-page{
    color:#0f172a;
}
.print-movement-head{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:18px;
    border-bottom:3px solid #0b2a5b;
    padding-bottom:12px;
    margin-bottom:14px;
}
.print-eyebrow{
    display:inline-flex;
    border-radius:999px;
    background:#eef7ff;
    color:#0758b8;
    padding:5px 10px;
    font-size:10px;
    font-weight:950;
    letter-spacing:.04em;
    text-transform:uppercase;
}
.print-movement-head h1{
    margin:8px 0 4px;
    font-size:22px;
    line-height:1.15;
    color:#061b3a;
}
.print-movement-head p{
    margin:0;
    color:#64748b;
    font-size:12px;
    font-weight:850;
}
.print-movement-docmeta{
    border:1px solid #d7e3f4;
    border-radius:14px;
    padding:9px 12px;
    min-width:150px;
    text-align:right;
}
.print-movement-docmeta span,
.print-movement-material span,
.print-movement-kpis span{
    display:block;
    color:#64748b;
    font-size:10px;
    font-weight:900;
}
.print-movement-docmeta strong{
    display:block;
    margin-top:4px;
    color:#061b3a;
    font-size:13px;
}
.print-movement-material{
    display:grid;
    grid-template-columns:1fr 2fr .7fr 1.4fr;
    gap:8px;
    margin-bottom:10px;
}
.print-movement-material div,
.print-movement-kpis div{
    border:1px solid #d7e3f4;
    border-radius:12px;
    background:#fff;
    padding:8px 9px;
}
.print-movement-material strong{
    display:block;
    margin-top:3px;
    color:#061b3a;
    font-size:12px;
    line-height:1.25;
}
.print-movement-kpis{
    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:7px;
    margin-bottom:8px;
}
.print-movement-kpis strong{
    display:block;
    margin-top:3px;
    color:#0758b8;
    font-size:18px;
    line-height:1;
}
.print-movement-kpis em{
    display:block;
    margin-top:3px;
    color:#64748b;
    font-size:10px;
    font-style:normal;
}
.print-movement-formula{
    border:1px solid #ffcf73;
    border-radius:12px;
    background:#fff8ec;
    color:#061b3a;
    padding:7px 10px;
    margin-bottom:10px;
    font-size:12px;
    font-weight:950;
}
.print-movement-table{
    width:100%;
    border-collapse:collapse;
    table-layout:fixed;
    font-size:9.2px;
}
.print-movement-table th{
    background:#061b3a;
    color:#fff;
    border:1px solid #d7e3f4;
    padding:5px 3px;
    text-align:center;
    line-height:1.12;
}
.print-movement-table th:nth-child(n+3):nth-child(-n+5){background:#0f8f45}
.print-movement-table th:nth-child(n+6):nth-child(-n+8){background:#087fbd}
.print-movement-table th:nth-child(n+9):nth-child(-n+11){background:#df5d12}
.print-movement-table th:nth-child(n+13):nth-child(-n+15){background:#ff9900;color:#061b3a}
.print-movement-table td{
    border:1px solid #d7e3f4;
    padding:4px 3px;
    vertical-align:top;
    word-break:break-word;
}
.print-movement-table td.num{
    text-align:right;
    font-variant-numeric:tabular-nums;
    white-space:nowrap;
}
.print-movement-table tr.opening td,
.print-movement-table tr.closing td{
    background:#f8fbff;
    font-weight:900;
}
.print-movement-table .empty-cell{
    text-align:center;
    padding:18px;
    color:#64748b;
}
@media print{
    @page{size:A4 landscape;margin:7mm}
    .print-movement-page{break-inside:auto}
    .print-movement-head{margin-bottom:10px}
    .print-movement-material{grid-template-columns:1fr 2fr .7fr 1.4fr}
    .print-movement-kpis{grid-template-columns:repeat(6,1fr)}
}
.material-month-modal-footer [data-material-month-print]{
    border-color:#b7d6f8!important;
    background:#eef7ff!important;
    color:#0758b8!important;
    font-weight:950!important;
}
.material-month-modal-footer [data-material-month-print]:hover{
    background:#dbeafe!important;
}


/* Phase 4.3.24.2 ? Official Material Movement Print Report */
.official-report-page{--official-navy:#061b3a;--official-blue:#0758b8;--official-line:#cbdff5;--official-orange:#ff9900;--official-muted:#64748b;color:#0f172a;font-size:11px}
.official-report-header{display:flex;justify-content:space-between;align-items:stretch;gap:18px;padding:0 0 12px;margin-bottom:12px;border-bottom:4px solid var(--official-navy)}
.official-report-brand{display:flex;gap:12px;align-items:center;min-width:0}
.official-report-logo{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(135deg,var(--official-navy),var(--official-blue));color:#fff;font-size:18px;font-weight:950;box-shadow:0 8px 18px rgba(6,27,58,.18)}
.official-report-system{display:inline-flex;border-radius:999px;padding:4px 9px;background:#eef7ff;color:var(--official-blue);font-size:9px;font-weight:950;text-transform:uppercase;letter-spacing:.05em}
.official-report-brand h1{margin:6px 0 2px;font-size:24px;line-height:1.05;color:var(--official-navy);font-weight:950}
.official-report-brand p{margin:0;color:var(--official-muted);font-size:11px;font-weight:850}
.official-report-meta{display:grid;grid-template-columns:1fr;gap:5px;width:250px}
.official-report-meta div{display:flex;justify-content:space-between;gap:10px;border:1px solid var(--official-line);border-radius:11px;padding:6px 8px;background:#fff}
.official-report-meta span,.official-info-grid span,.official-summary-strip span{color:var(--official-muted);font-size:9px;font-weight:900}
.official-report-meta strong{color:var(--official-navy);font-size:10px;font-weight:950;text-align:right}
.official-report-titleband{display:grid;grid-template-columns:1fr 300px;gap:10px;align-items:stretch;margin-bottom:10px}
.official-report-titleband>div{border-radius:14px;padding:10px 12px;background:linear-gradient(135deg,var(--official-navy),var(--official-blue));color:#fff}
.official-report-titleband .official-report-status{background:linear-gradient(135deg,#fff8ec,#fff);border:1px solid #ffcf73;color:var(--official-navy)}
.official-report-titleband span{display:block;font-size:9px;font-weight:950;opacity:.82}
.official-report-titleband strong{display:block;margin-top:4px;font-size:15px;line-height:1.25;font-weight:950}
.official-info-grid{display:grid;grid-template-columns:1fr 2fr .7fr .85fr;gap:7px;margin-bottom:8px}
.official-info-grid div{border:1px solid var(--official-line);border-radius:12px;background:#fff;padding:7px 8px}
.official-info-grid strong{display:block;margin-top:3px;color:var(--official-navy);font-size:10.5px;line-height:1.25;font-weight:950}
.official-kpi-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:7px;margin-bottom:8px}
.official-kpi-grid div{border:1px solid var(--official-line);border-top-width:4px;border-radius:12px;background:#fff;padding:8px;min-height:66px}
.official-kpi-grid span{display:block;color:var(--official-muted);font-size:9px;font-weight:950}
.official-kpi-grid strong{display:block;margin-top:5px;color:var(--official-blue);font-size:20px;line-height:1;font-weight:950}
.official-kpi-grid em{display:block;margin-top:4px;color:var(--official-muted);font-size:9px;font-style:normal;font-weight:850}
.official-kpi-grid .tone-opening{border-top-color:#0f8f45}.official-kpi-grid .tone-available{border-top-color:#16a34a}.official-kpi-grid .tone-reserved{border-top-color:#ff9900}.official-kpi-grid .tone-ending{border-top-color:#0758b8}.official-kpi-grid .tone-in{border-top-color:#087fbd}.official-kpi-grid .tone-out{border-top-color:#df5d12}
.official-summary-strip{display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:7px;margin-bottom:10px}
.official-summary-strip div{border:1px solid #ffcf73;border-radius:12px;padding:7px 9px;background:#fff8ec}
.official-summary-strip strong{display:block;margin-top:3px;color:var(--official-navy);font-size:11px;font-weight:950}
.official-table-section{border:1px solid var(--official-line);border-radius:14px;overflow:hidden;margin-top:6px}
.official-section-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-end;padding:8px 10px;background:linear-gradient(135deg,#f8fbff,#eef7ff);border-bottom:1px solid var(--official-line)}
.official-section-head h2{margin:0;color:var(--official-navy);font-size:13px;font-weight:950}
.official-section-head p{margin:0;color:var(--official-muted);font-size:9.5px;font-weight:800}
.official-movement-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:8.6px}
.official-movement-table th{color:#fff;border:1px solid rgba(255,255,255,.22);padding:5px 2px;text-align:center;line-height:1.12;font-weight:950}
.official-movement-table th small{display:block;margin-top:2px;font-size:7.8px;color:inherit}
.official-movement-table th.meta,.official-movement-table th.desc{background:#061b3a}.official-movement-table th.opening{background:#0f8f45}.official-movement-table th.in{background:#087fbd}.official-movement-table th.out{background:#df5d12}.official-movement-table th.balance{background:#ff9900;color:#061b3a}
.official-movement-table td{border:1px solid #d7e3f4;padding:3.5px 2.5px;vertical-align:top;word-break:break-word;line-height:1.18}
.official-movement-table td.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.official-movement-table .in-cell{color:#087337;font-weight:850}.official-movement-table .out-cell{color:#c2410c;font-weight:850}.official-movement-table .balance-cell{color:#0758b8;font-weight:900}
.official-movement-table tr.opening td,.official-movement-table tr.closing td{background:#f8fbff;font-weight:950}
.official-movement-table tbody tr:nth-child(even):not(.opening):not(.closing) td{background:#fbfdff}
.official-movement-table .empty-cell{text-align:center;padding:18px;color:var(--official-muted)}
.official-report-note{display:flex;gap:10px;margin-top:10px;border:1px dashed var(--official-line);border-radius:12px;padding:8px 10px;background:#f8fbff}
.official-report-note strong{color:var(--official-navy);font-size:10px;font-weight:950}
.official-report-note span{color:#475569;font-size:9.5px;font-weight:800;line-height:1.45}
.official-signature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:16px}
.official-signature-grid div{min-height:62px;border-bottom:1.5px solid #0f172a;text-align:center;padding-top:8px}
.official-signature-grid span{display:block;color:var(--official-navy);font-size:10px;font-weight:950}
.official-signature-grid strong{display:block;min-height:26px}
.official-signature-grid em{display:block;color:var(--official-muted);font-size:9px;font-style:normal;font-weight:850}
.official-report-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding-top:7px;border-top:1px solid var(--official-line);color:var(--official-muted);font-size:9px;font-weight:850}
@media print{@page{size:A4 landscape;margin:7mm 7mm 8mm}.official-report-page{font-size:10px;print-color-adjust:exact;-webkit-print-color-adjust:exact}.official-report-header,.official-report-titleband,.official-info-grid,.official-kpi-grid,.official-summary-strip,.official-table-section,.official-report-note,.official-signature-grid,.official-report-footer{break-inside:avoid}.official-movement-table thead{display:table-header-group}.official-movement-table tr{page-break-inside:avoid}}


/* Phase 4.3.27 ? Mobile Responsive Dashboard Fix
   I18N-safe CSS note */
@media (max-width:1100px){
    html,
    body{
        width:100%!important;
        max-width:100%!important;
        overflow-x:hidden!important;
    }

    .stock-layout{
        display:block!important;
        grid-template-columns:1fr!important;
        width:100%!important;
        max-width:100%!important;
        min-height:100vh!important;
    }

    .stock-sidebar{
        position:fixed!important;
        top:0!important;
        left:0!important;
        bottom:0!important;
        width:min(320px,86vw)!important;
        max-width:86vw!important;
        height:100dvh!important;
        z-index:80!important;
        transform:translateX(-105%)!important;
        transition:transform .2s ease!important;
        box-shadow:0 24px 80px rgba(15,23,42,.28)!important;
        border-right:1px solid #dbe4ef!important;
        padding:14px!important;
        overscroll-behavior:contain!important;
    }

    body.sidebar-open{
        overflow:hidden!important;
    }

    body.sidebar-open .stock-sidebar,
    .stock-sidebar.is-open{
        transform:translateX(0)!important;
    }

    .stock-overlay{
        position:fixed!important;
        inset:0!important;
        z-index:70!important;
        background:rgba(15,23,42,.45)!important;
        backdrop-filter:blur(2px)!important;
        display:none!important;
    }

    body.sidebar-open .stock-overlay,
    .stock-overlay.is-open{
        display:block!important;
    }

    .stock-main{
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
        overflow-x:hidden!important;
    }

    .stock-topbar{
        position:sticky!important;
        top:0!important;
        z-index:60!important;
        width:100%!important;
        min-height:64px!important;
        height:auto!important;
        padding:10px 12px!important;
        gap:10px!important;
        align-items:center!important;
        background:linear-gradient(135deg,#061b3a 0%,#0b4d8e 100%)!important;
        color:#fff!important;
        box-shadow:0 10px 28px rgba(6,27,58,.20)!important;
        border-bottom:0!important;
    }

    .stock-topbar .stock-breadcrumb{
        display:none!important;
    }

    .stock-topbar .stock-page-title{
        color:#fff!important;
        font-size:20px!important;
        line-height:1.15!important;
        margin:0!important;
        max-width:52vw!important;
        white-space:nowrap!important;
        overflow:hidden!important;
        text-overflow:ellipsis!important;
    }

    .icon-button.stock-mobile-button{
        display:grid!important;
        width:38px!important;
        height:38px!important;
        border-radius:14px!important;
        background:rgba(255,255,255,.12)!important;
        border-color:rgba(255,255,255,.24)!important;
        color:#fff!important;
        box-shadow:none!important;
        flex:0 0 auto!important;
    }

    .stock-topbar-actions{
        margin-left:auto!important;
        gap:7px!important;
        flex-shrink:0!important;
    }

    .stock-topbar-actions form{
        display:none!important;
    }

    .stock-notification-button,
    .stock-topbar .icon-button{
        width:38px!important;
        height:38px!important;
        border-radius:14px!important;
        background:rgba(255,255,255,.12)!important;
        border-color:rgba(255,255,255,.24)!important;
        color:#fff!important;
        box-shadow:none!important;
    }

    .stock-user-chip{
        display:none!important;
    }

    .stock-notification-panel{
        right:0!important;
        top:calc(100% + 8px)!important;
        width:min(340px,calc(100vw - 24px))!important;
        max-width:calc(100vw - 24px)!important;
        color:#0f172a!important;
    }

    .stock-page-shell{
        width:100%!important;
        max-width:100%!important;
        padding:10px!important;
        margin:0!important;
        overflow-x:hidden!important;
    }

    .stock-page-card{
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
        min-height:calc(100dvh - 84px)!important;
        padding:12px!important;
        border-radius:20px!important;
        overflow:hidden!important;
    }

    .dashboard-hero{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:12px!important;
        padding:14px!important;
        border-radius:20px!important;
        margin-bottom:12px!important;
    }

    .dashboard-eyebrow{
        font-size:10.5px!important;
        padding:5px 9px!important;
        margin-bottom:7px!important;
    }

    .dashboard-hero h1{
        font-size:22px!important;
        line-height:1.2!important;
    }

    .dashboard-hero p{
        font-size:12px!important;
        line-height:1.5!important;
        margin-top:5px!important;
    }

    .dashboard-hero-actions{
        justify-content:flex-start!important;
        gap:8px!important;
    }

    .dashboard-hero-actions .btn,
    .dashboard-hero-actions .button{
        flex:1 1 140px!important;
        min-width:0!important;
        justify-content:center!important;
    }

    .dashboard-kpi-grid,
    .dashboard-mini-grid,
    .dashboard-value-grid,
    .dashboard-main-grid,
    .dashboard-sync-grid,
    .dashboard-equal-grid,
    .dashboard-movement-grid,
    .dashboard-sync-kpi-grid{
        grid-template-columns:1fr!important;
        gap:10px!important;
        width:100%!important;
        min-width:0!important;
    }

    .dashboard-kpi-card,
    .dashboard-mini-card,
    .dashboard-value-card,
    .dashboard-panel,
    .dashboard-movement-card{
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
        border-radius:18px!important;
        padding:13px!important;
    }

    .dashboard-kpi-card strong{
        font-size:26px!important;
    }

    .dashboard-mini-card strong{
        font-size:20px!important;
    }

    .dashboard-value-card strong{
        font-size:23px!important;
    }

    .dashboard-panel-head{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:8px!important;
        margin-bottom:12px!important;
    }

    .dashboard-panel-head h2{
        font-size:16px!important;
        line-height:1.25!important;
        overflow-wrap:anywhere!important;
    }

    .dashboard-panel-head p{
        font-size:12px!important;
        line-height:1.45!important;
    }

    .dashboard-panel-head .btn,
    .dashboard-panel-head .button{
        justify-self:start!important;
        min-height:34px!important;
        padding:7px 10px!important;
        font-size:12px!important;
    }

    .dashboard-readiness-stack,
    .dashboard-qr-readiness-list{
        gap:9px!important;
    }

    .dashboard-readiness-row,
    .dashboard-qr-readiness-item{
        grid-template-columns:1fr!important;
        gap:8px!important;
        padding:11px!important;
        border-radius:16px!important;
    }

    .dashboard-readiness-row strong,
    .dashboard-qr-readiness-item strong{
        font-size:13px!important;
        line-height:1.35!important;
        overflow-wrap:anywhere!important;
    }

    .dashboard-readiness-row span,
    .dashboard-qr-readiness-item span{
        font-size:11px!important;
        line-height:1.35!important;
    }

    .dashboard-readiness-row em,
    .dashboard-qr-readiness-item em{
        text-align:left!important;
        font-size:12px!important;
    }

    .dashboard-readiness-bar{
        width:100%!important;
        height:10px!important;
    }

    .dashboard-sync-kpi-grid div{
        border-radius:15px!important;
        padding:10px!important;
    }

    .dashboard-movement-values{
        grid-template-columns:1fr 1fr!important;
    }

    .dashboard-list-row,
    .dashboard-activity-item{
        grid-template-columns:1fr!important;
        gap:6px!important;
    }

    .dashboard-bar-row{
        grid-template-columns:1fr!important;
        gap:6px!important;
    }

    .dashboard-full-panel{
        margin-top:10px!important;
    }

    .toast-container{
        left:12px!important;
        right:12px!important;
        top:calc(var(--stock-topbar-offset, 56px) + 8px + env(safe-area-inset-top, 0px))!important;
        bottom:auto!important;
        transform:none!important;
        width:auto!important;
        max-width:none!important;
    }
}

@media (max-width:480px){
    .stock-topbar{
        padding:9px 10px!important;
    }

    .stock-topbar .stock-page-title{
        font-size:18px!important;
        max-width:46vw!important;
    }

    .stock-page-shell{
        padding:8px!important;
    }

    .stock-page-card{
        padding:10px!important;
        border-radius:18px!important;
    }

    .dashboard-movement-values{
        grid-template-columns:1fr!important;
    }

    .dashboard-hero-actions .btn,
    .dashboard-hero-actions .button,
    .page-section-actions .button,
    .page-section-actions .btn{
        width:100%!important;
        flex:1 1 100%!important;
    }

    .stock-sidebar{
        width:min(300px,88vw)!important;
        max-width:88vw!important;
    }
}


/* Phase 4.3.28 ? System-wide Mobile Responsive Fix
   I18N-safe CSS note */
@media (max-width:1100px){
    /* Base containment — scoped so fixed/portal UI is not crushed */
    .admin-content-inner,
    .admin-content-inner *,
    .stock-page-shell,
    .stock-page-shell *,
    .stock-page-card,
    .stock-page-card *,
    .page-section,
    .page-section *,
    .content-card,
    .panel,
    .card,
    .form-card,
    .detail-card,
    .table-card{
        max-width:100%;
    }

    .toast-container,
    .toast-container *,
    .toast-item,
    .core-select-dropdown,
    .core-select-dropdown *,
    .admin-header-panel-notify,
    .admin-header-panel-lang,
    .admin-header-panel-user,
    .confirm-backdrop,
    .confirm-card,
    .drawer-panel,
    .material-month-modal,
    .material-month-modal-panel,
    .pdpa-consent-modal,
    .admin-header,
    .admin-header *,
    .admin-sidebar,
    .admin-sidebar *,
    .admin-overlay,
    .back-to-top,
    .stock-back-to-top{
        max-width:none;
    }

    img, svg, video, canvas, iframe{
        max-width:100%;
        height:auto;
    }

    .stock-page-card > *,
    .stock-page-shell > *,
    .page-section,
    .page-section-body,
    .page-section-content,
    .content-card,
    .panel,
    .card,
    .form-card,
    .detail-card,
    .table-card{
        min-width:0!important;
        max-width:100%!important;
    }

    /* Page rhythm */
    .page-section-header,
    .page-intro-strip,
    .record-context-strip,
    .toolbar,
    .filter-bar,
    .action-row,
    .form-actions,
    .material-form-actions,
    .settings-sticky-actions,
    .settings-action-bar,
    .document-section-head,
    .material-list-head,
    .modal-footer,
    .stock-modal-footer{
        display:flex!important;
        flex-wrap:wrap!important;
        align-items:flex-start!important;
        gap:10px!important;
        width:100%!important;
    }

    .page-section-header,
    .document-section-head,
    .material-list-head{
        flex-direction:column!important;
    }

    .page-section-titleblock,
    .page-section-titleblock-empty,
    .record-context-strip > div:first-child,
    .document-section-head > div,
    .material-list-head > div,
    .toolbar > div{
        min-width:0!important;
        max-width:100%!important;
    }

    .section-title,
    .page-section-title,
    .stock-page-title,
    .record-context-strip strong,
    .material-detail-hero h2,
    .material-form-hero h3,
    .document-detail-hero h2,
    .document-title,
    .modal-title{
        overflow-wrap:anywhere!important;
        word-break:break-word!important;
    }

    .section-subtitle,
    .page-section-subtitle,
    .record-context-strip small,
    .document-detail-hero p,
    .material-detail-hero p,
    .material-form-hero p{
        overflow-wrap:anywhere!important;
    }

    /* Buttons and actions */
    .button,
    .btn,
    .btn-core,
    .icon-button,
    button,
    input[type="submit"],
    input[type="button"]{
        max-width:100%!important;
    }

    .page-section-actions,
    .document-action-row,
    .material-form-actions,
    .action-row,
    .toolbar-actions,
    .form-actions,
    .settings-sticky-actions{
        width:100%!important;
        justify-content:flex-start!important;
    }

    .page-section-actions .button,
    .page-section-actions .btn,
    .document-action-row .button,
    .document-action-row .btn,
    .material-form-actions .button,
    .form-actions .button,
    .action-row .button,
    .toolbar-actions .button,
    .settings-sticky-actions .button{
        flex:1 1 150px!important;
        min-width:0!important;
        justify-content:center!important;
        white-space:normal!important;
    }

    /* Forms */
    .form-grid,
    .form-row,
    .form-layout,
    .settings-grid,
    .settings-section-grid,
    .material-form-layout,
    .material-detail-grid,
    .document-detail-hero,
    .document-summary-grid,
    .approval-grid,
    .master-data-layout,
    .master-layout,
    .two-column-grid,
    .three-column-grid,
    .grid-2,
    .grid-3,
    .grid-4{
        grid-template-columns:1fr!important;
        width:100%!important;
        min-width:0!important;
    }

    .form-field,
    .field,
    .settings-field,
    .material-form-section,
    .material-detail-card,
    .document-summary-card,
    .document-card,
    .master-card,
    .master-data-card,
    .page-context-card{
        min-width:0!important;
        max-width:100%!important;
        border-radius:18px!important;
    }

    label,
    .form-label,
    .field-label{
        line-height:1.35!important;
        overflow-wrap:anywhere!important;
    }

    input,
    select,
    textarea,
    .input,
    .select,
    .form-control,
    .core-select,
    .core-select-display,
    .select2-container{
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
    }

    textarea{
        min-height:92px!important;
    }

    .input-group,
    .field-group,
    .control-group{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:8px!important;
        width:100%!important;
    }

    /* Tables: keep data readable using horizontal scroll inside card only */
    .table-wrap,
    .core-table-wrap,
    .data-table-wrap,
    .responsive-table,
    .material-month-table-wrap,
    .table-responsive{
        width:100%!important;
        max-width:100%!important;
        overflow-x:auto!important;
        overflow-y:visible!important;
        -webkit-overflow-scrolling:touch!important;
        border-radius:16px!important;
    }

    table,
    .data-table,
    .core-table{
        max-width:none!important;
    }

    .table-wrap table,
    .data-table,
    .core-table{
        min-width:0;
        width:100%;
    }

    body.stock-admin-v2 .table-wrap:has(.stock-entry-table) > table,
    body.stock-admin-v2 .stock-entry-table{
        min-width:max-content;
        width:max-content;
    }

    .table-wrap th,
    .table-wrap td,
    .data-table th,
    .data-table td,
    .core-table th,
    .core-table td{
        white-space:normal;
        vertical-align:top;
    }

    .table-toolbar,
    .core-table-toolbar,
    .datatable-toolbar{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:10px!important;
        width:100%!important;
    }

    .table-toolbar input,
    .core-table-toolbar input,
    .datatable-toolbar input{
        width:100%!important;
    }

    /* Detail / document pages */
    .document-detail-hero,
    .material-form-hero,
    .material-detail-hero{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:12px!important;
        padding:14px!important;
        border-radius:18px!important;
    }

    .document-summary-grid,
    .document-meta-grid,
    .material-stock-display,
    .material-summary-grid,
    .material-image-grid,
    .material-reference-grid,
    .receipt-summary-grid,
    .issue-summary-grid,
    .pr-summary-grid,
    .po-summary-grid{
        grid-template-columns:1fr!important;
        gap:10px!important;
    }

    .doc-qr-card,
    .material-qr-layout{
        grid-template-columns:1fr!important;
        text-align:left!important;
    }

    .doc-qr-visual,
    .material-qr-visual{
        order:-1;
        justify-items:center!important;
    }

    .doc-qr-visual img,
    .material-qr-visual img{
        width:150px!important;
        height:150px!important;
    }

    .status-stack,
    .status-cluster,
    .material-status-cluster,
    .document-status-cluster,
    .badge-row{
        max-width:100%!important;
        flex-wrap:wrap!important;
        justify-content:flex-start!important;
    }

    /* Master data pages */
    .master-data-layout,
    .master-data-shell,
    .master-shell{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:12px!important;
    }

    .master-data-sidebar,
    .master-sidebar,
    .side-nav,
    .settings-sidebar{
        position:static!important;
        width:100%!important;
        max-width:100%!important;
        height:auto!important;
        overflow:visible!important;
    }

    .master-data-sidebar nav,
    .master-sidebar nav,
    .side-nav nav{
        display:flex!important;
        overflow-x:auto!important;
        gap:8px!important;
        padding-bottom:4px!important;
        -webkit-overflow-scrolling:touch!important;
    }

    .master-data-sidebar a,
    .master-sidebar a,
    .side-nav a{
        flex:0 0 auto!important;
        white-space:nowrap!important;
    }

    /* Modals */
    .modal,
    .stock-modal,
    .confirm-card,
    .material-month-modal-panel{
        width:calc(100vw - 20px)!important;
        max-width:calc(100vw - 20px)!important;
        max-height:calc(100dvh - 20px)!important;
        border-radius:20px!important;
    }

    .stock-attachment-modal-panel{
        width:calc(100% - 0px)!important;
        max-width:100%!important;
        height:min(92dvh, calc(100dvh - 16px))!important;
        max-height:min(92dvh, calc(100dvh - 16px))!important;
        border-radius:16px!important;
    }

    .modal-body,
    .stock-modal-body,
    .material-month-modal-body{
        max-height:calc(100dvh - 150px)!important;
        overflow:auto!important;
        -webkit-overflow-scrolling:touch!important;
    }

    .stock-attachment-modal-body{
        max-height:none!important;
        overflow:auto!important;
        -webkit-overflow-scrolling:touch!important;
    }

    .confirm-card{
        padding:18px!important;
    }

    /* Print preview pages should not inherit app mobile layout */
    .landscape-print-page,
    .landscape-print-content,
    .print-page,
    .print-shell{
        max-width:none!important;
    }
}

@media (max-width:640px){
    .stock-brand{
        padding:10px!important;
        border-radius:18px!important;
    }

    .stock-brand-mark{
        width:40px!important;
        height:40px!important;
        border-radius:14px!important;
    }

    .stock-brand-title{
        font-size:16px!important;
    }

    .stock-brand-subtitle{
        font-size:11px!important;
    }

    .stock-scope-card{
        padding:11px!important;
        border-radius:16px!important;
    }

    .stock-nav-link{
        padding:10px!important;
        border-radius:14px!important;
    }

    .stock-nav-icon{
        width:28px!important;
        height:28px!important;
        border-radius:10px!important;
    }

    .section-title,
    .page-section-title{
        font-size:18px!important;
    }

    .section-subtitle,
    .page-section-subtitle{
        font-size:12px!important;
    }

    .page-intro-strip,
    .record-context-strip,
    .page-context-card,
    .content-card,
    .panel,
    .card,
    .form-card,
    .detail-card,
    .table-card{
        padding:12px!important;
        border-radius:16px!important;
    }

    .button,
    .btn,
    .btn-core{
        min-height:38px!important;
        font-size:13px!important;
        padding:8px 11px!important;
    }

    .table-wrap table,
    .data-table,
    .core-table{
        min-width:680px;
    }

    .stock-notification-panel{
        position:fixed!important;
        right:8px!important;
        left:8px!important;
        top:62px!important;
        width:auto!important;
        max-width:none!important;
    }

    .toast-item{
        border-radius:16px!important;
        padding:12px!important;
    }
}

@media (max-width:420px){
    .stock-topbar .stock-page-title{
        max-width:42vw!important;
        font-size:17px!important;
    }

    .stock-page-card{
        padding:8px!important;
    }

    .page-section-actions .button,
    .page-section-actions .btn,
    .document-action-row .button,
    .material-form-actions .button,
    .form-actions .button,
    .action-row .button,
    .toolbar-actions .button{
        flex-basis:100%!important;
        width:100%!important;
    }

    .table-wrap table,
    .data-table,
    .core-table{
        min-width:0;
        width:100%;
    }

    body.stock-admin-v2 .table-wrap:has(.stock-entry-table) > table,
    body.stock-admin-v2 .stock-entry-table{
        min-width:max-content;
        width:max-content;
    }
}


/* Phase 4.3.29 ? Materials Mobile Card Table
   I18N-safe CSS note — activate for all mobile/tablet shell widths */
@media (max-width:1100px){
    .material-list-card{
        padding:10px!important;
        border-radius:18px!important;
        overflow:hidden!important;
    }

    .material-list-card .table-wrap{
        overflow:visible!important;
        border:0!important;
        border-radius:0!important;
        background:transparent!important;
        box-shadow:none!important;
    }

    .material-data-table,
    .material-data-table thead,
    .material-data-table tbody,
    .material-data-table tr,
    .material-data-table th,
    .material-data-table td{
        display:block!important;
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
    }

    .material-data-table{
        min-width:0!important;
        border:0!important;
        border-collapse:separate!important;
        border-spacing:0!important;
        background:transparent!important;
    }

    .material-data-table thead{
        display:none!important;
    }

    .material-data-table tbody{
        display:grid!important;
        gap:12px!important;
    }

    .material-data-table tbody tr{
        position:relative!important;
        display:grid!important;
        grid-template-columns:74px minmax(0,1fr)!important;
        grid-template-areas:
            "image main"
            "image type"
            "asset asset"
            "stock stock"
            "place place"
            "status status"
            "actions actions"!important;
        gap:8px 10px!important;
        padding:12px!important;
        border:1px solid #dbeafe!important;
        border-radius:20px!important;
        background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%)!important;
        box-shadow:0 10px 24px rgba(15,23,42,.07)!important;
        overflow:hidden!important;
    }

    .material-data-table tbody tr.row-low-stock{
        border-color:#fed7aa!important;
        background:linear-gradient(180deg,#fffaf2 0%,#fff7ed 100%)!important;
    }

    .material-data-table tbody tr.row-stock-out{
        border-color:#fecaca!important;
        background:linear-gradient(180deg,#fff7f7 0%,#fef2f2 100%)!important;
    }

    .material-data-table td{
        border:0!important;
        padding:0!important;
        background:transparent!important;
        min-width:0!important;
    }

    .material-data-table td:nth-child(1){grid-area:image}
    .material-data-table td:nth-child(2){grid-area:main}
    .material-data-table td:nth-child(3){grid-area:type}
    .material-data-table td:nth-child(4){grid-area:asset}
    .material-data-table td:nth-child(5){grid-area:stock}
    .material-data-table td:nth-child(6){grid-area:place}
    .material-data-table td:nth-child(7){grid-area:status}
    .material-data-table td:nth-child(8){grid-area:actions}

    .material-data-table .material-image-col{
        width:74px!important;
        min-width:74px!important;
    }

    .material-list-thumb-button,
    .material-list-thumb-empty{
        width:64px!important;
        height:64px!important;
        border-radius:16px!important;
        padding:4px!important;
        box-shadow:0 8px 18px rgba(15,23,42,.08)!important;
    }

    .material-list-thumb-button img{
        width:100%!important;
        height:100%!important;
        object-fit:cover!important;
        border-radius:13px!important;
    }

    .material-list-thumb-button span{
        display:none!important;
    }

    .material-list-thumb-empty span{
        font-size:24px!important;
    }

    .material-cell-main{
        display:grid!important;
        gap:3px!important;
        min-width:0!important;
    }

    .material-cell-main strong{
        display:block!important;
        color:#061b3a!important;
        font-size:15px!important;
        line-height:1.15!important;
        font-weight:950!important;
        overflow-wrap:anywhere!important;
    }

    .material-cell-main span{
        display:block!important;
        color:#0f172a!important;
        font-size:14px!important;
        line-height:1.35!important;
        font-weight:850!important;
        overflow-wrap:anywhere!important;
    }

    .material-cell-main small{
        display:block!important;
        color:#64748b!important;
        font-size:11px!important;
        line-height:1.35!important;
        font-weight:750!important;
        overflow-wrap:anywhere!important;
    }

    .material-cell-stack{
        display:grid!important;
        gap:4px!important;
        min-width:0!important;
    }

    .material-cell-stack span,
    .material-cell-stack small{
        overflow-wrap:anywhere!important;
        word-break:break-word!important;
    }

    .material-data-table td:nth-child(3) .material-cell-stack{
        display:flex!important;
        align-items:center!important;
        flex-wrap:wrap!important;
        gap:5px!important;
    }

    .material-data-table td:nth-child(4),
    .material-data-table td:nth-child(5),
    .material-data-table td:nth-child(6){
        border:1px solid #e2e8f0!important;
        border-radius:15px!important;
        background:#fff!important;
        padding:9px 10px!important;
    }

    .material-data-table td:nth-child(4)::before,
    .material-data-table td:nth-child(5)::before,
    .material-data-table td:nth-child(6)::before,
    .material-data-table td:nth-child(7)::before{
        display:block!important;
        margin-bottom:5px!important;
        color:#64748b!important;
        font-size:10px!important;
        line-height:1.2!important;
        font-weight:950!important;
        letter-spacing:.02em!important;
    }

    .material-data-table td:nth-child(4)::before{content:attr(data-label)}
    .material-data-table td:nth-child(5)::before{content:attr(data-label)}
    .material-data-table td:nth-child(6)::before{content:attr(data-label)}
    .material-data-table td:nth-child(7)::before{content:attr(data-label)}

    .material-stock-cell{
        display:flex!important;
        align-items:flex-end!important;
        justify-content:space-between!important;
        gap:10px!important;
    }

    .material-stock-qty{
        color:#0758b8!important;
        font-size:18px!important;
        line-height:1!important;
        font-weight:950!important;
        white-space:nowrap!important;
    }

    .material-stock-qty small{
        color:#64748b!important;
        font-size:11px!important;
        font-weight:800!important;
    }

    .material-stock-sub{
        color:#64748b!important;
        font-size:11px!important;
        line-height:1.25!important;
        font-weight:850!important;
        text-align:right!important;
    }

    .material-status-cluster{
        display:flex!important;
        flex-wrap:wrap!important;
        justify-content:flex-start!important;
        gap:5px!important;
        max-width:100%!important;
    }

    .material-status-cluster .badge,
    .material-cell-stack .badge{
        max-width:100%!important;
        white-space:normal!important;
        line-height:1.2!important;
        padding:5px 8px!important;
        border-radius:999px!important;
    }

    .material-action-row{
        display:grid!important;
        grid-template-columns:1fr 1fr!important;
        gap:8px!important;
        width:100%!important;
        margin-top:2px!important;
    }

    .material-action-row .button,
    .material-action-row .btn{
        width:100%!important;
        min-height:38px!important;
        justify-content:center!important;
        border-radius:13px!important;
        padding:8px 10px!important;
        font-size:12px!important;
        white-space:normal!important;
    }

    .material-action-row .button:first-child{
        grid-column:auto!important;
    }

    .material-action-row .js-material-month-movement{
        grid-column:auto!important;
    }

    .material-action-row a[href*="/edit"]{
        grid-column:1 / -1!important;
    }

    .material-list-meta{
        width:100%!important;
        justify-content:flex-start!important;
    }

    .material-list-head .section-subtitle{
        font-size:12px!important;
        line-height:1.45!important;
    }

    .material-summary-grid{
        gap:10px!important;
        margin-bottom:12px!important;
    }

    .material-summary-card{
        padding:12px!important;
        border-radius:16px!important;
    }

    .material-summary-value{
        font-size:24px!important;
    }
}

@media (max-width:420px){
    .material-data-table tbody tr{
        grid-template-columns:62px minmax(0,1fr)!important;
        gap:7px 9px!important;
        padding:10px!important;
        border-radius:18px!important;
    }

    .material-data-table .material-image-col{
        width:62px!important;
        min-width:62px!important;
    }

    .material-list-thumb-button,
    .material-list-thumb-empty{
        width:56px!important;
        height:56px!important;
        border-radius:14px!important;
    }

    .material-cell-main strong{
        font-size:14px!important;
    }

    .material-cell-main span{
        font-size:13px!important;
    }

    .material-action-row{
        grid-template-columns:1fr!important;
    }

    .material-action-row a[href*="/edit"]{
        grid-column:auto!important;
    }
}


/* Phase 4.3.30 ? Mobile Privacy Badge Position Fix
   I18N-safe CSS note */
@media (max-width:1100px){
    .privacy-floating,
    .privacy-badge,
    .privacy-chip,
    .pdpa-floating,
    .pdpa-badge,
    .cookie-floating,
    .cookie-badge,
    .privacy-button,
    [class*="privacy"][class*="float"],
    [class*="pdpa"][class*="float"],
    [class*="cookie"][class*="float"]{
        position:fixed!important;
        left:10px!important;
        right:auto!important;
        bottom:10px!important;
        top:auto!important;
        z-index:55!important;
        max-width:calc(100vw - 20px)!important;
        transform:none!important;
    }

    .privacy-floating,
    .privacy-badge,
    .privacy-chip,
    .pdpa-floating,
    .pdpa-badge,
    .cookie-floating,
    .cookie-badge{
        min-height:34px!important;
        border-radius:999px!important;
        padding:7px 11px!important;
        font-size:11px!important;
        line-height:1.2!important;
        box-shadow:0 10px 26px rgba(15,23,42,.18)!important;
        opacity:.96!important;
    }

/* I18N-safe CSS note */
    .stock-page-card{
        padding-bottom:58px!important;
    }

    body.stock-modal-open .privacy-floating,
    body.stock-modal-open .privacy-badge,
    body.stock-modal-open .privacy-chip,
    body.stock-modal-open .pdpa-floating,
    body.stock-modal-open .pdpa-badge,
    body.stock-modal-open .cookie-floating,
    body.stock-modal-open .cookie-badge,
    body.stock-modal-open [class*="privacy"][class*="float"],
    body.stock-modal-open [class*="pdpa"][class*="float"],
    body.stock-modal-open [class*="cookie"][class*="float"],
    body.sidebar-open .privacy-floating,
    body.sidebar-open .privacy-badge,
    body.sidebar-open .privacy-chip,
    body.sidebar-open .pdpa-floating,
    body.sidebar-open .pdpa-badge,
    body.sidebar-open .cookie-floating,
    body.sidebar-open .cookie-badge,
    body.sidebar-open [class*="privacy"][class*="float"],
    body.sidebar-open [class*="pdpa"][class*="float"],
    body.sidebar-open [class*="cookie"][class*="float"]{
        display:none!important;
    }
}

@media (max-width:480px){
    .privacy-floating,
    .privacy-badge,
    .privacy-chip,
    .pdpa-floating,
    .pdpa-badge,
    .cookie-floating,
    .cookie-badge,
    [class*="privacy"][class*="float"],
    [class*="pdpa"][class*="float"],
    [class*="cookie"][class*="float"]{
        left:8px!important;
        bottom:8px!important;
        max-width:calc(100vw - 16px)!important;
        padding:6px 10px!important;
        font-size:10.5px!important;
    }

    .stock-page-card{
        padding-bottom:54px!important;
    }
}


/* Phase 4.3.32 — floating privacy chip retired; reopen via footer only */
.pdpa-privacy-link,
.pdpa-privacy-link.is-visible,
body.stock-admin-v2 .pdpa-privacy-link,
body.stock-admin-v2 .pdpa-privacy-link.is-visible{
    display:none!important;
    visibility:hidden!important;
    pointer-events:none!important;
}

/* Do not show floating privacy button while user is working with overlays/actions */
body.sidebar-open .pdpa-privacy-link,
body.stock-modal-open .pdpa-privacy-link,
body:has(.stock-attachment-modal.is-open) .pdpa-privacy-link,
body:has(.material-month-modal.is-open) .pdpa-privacy-link,
body:has(.pdpa-consent-root.is-open) .pdpa-privacy-link{
    display:none!important;
}


/* Phase 4.3.33 ? Modern Login UX/UI Redesign
   I18N-safe CSS note */
.auth-layout-pro{
    min-height:100vh!important;
    display:grid!important;
    grid-template-columns:minmax(0,1.15fr) minmax(420px,.85fr)!important;
    background:
        radial-gradient(circle at 12% 10%,rgba(29,78,216,.10),transparent 28%),
        linear-gradient(90deg,#ffffff 0%,#ffffff 55%,#eaf5ff 55%,#eef7ff 100%)!important;
    overflow:hidden!important;
}

.auth-pro-hero{
    position:relative;
    min-height:100vh;
    padding:42px clamp(30px,5vw,72px);
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    gap:34px;
    background:
        radial-gradient(circle at 16% 14%,rgba(245,158,11,.12),transparent 20%),
        radial-gradient(circle at 82% 28%,rgba(7,88,184,.10),transparent 24%),
        #ffffff;
    border-right:1px solid #dbe6f3;
}

.auth-pro-hero::before{
    content:"";
    position:absolute;
    inset:auto 6% 18% auto;
    width:320px;
    height:320px;
    border-radius:999px;
    background:radial-gradient(circle,rgba(7,88,184,.08),transparent 70%);
    pointer-events:none;
}

.auth-pro-brand{
    position:relative;
    z-index:1;
    display:flex;
    align-items:center;
    gap:12px;
}

.app-logo{
    display:block;
    height:auto;
    max-width:100%;
    background:transparent;
}

.app-logo.auth-pro-brand-logo,
.auth-pro-brand-logo{
    width:min(230px,70vw);
    max-width:250px;
    border-radius:12px;
    background:transparent;
    box-shadow:none;
}

.app-logo.auth-pro-form-logo,
.auth-pro-form-logo{
    width:48px;
    height:48px;
    border-radius:12px;
    object-fit:contain;
    background:transparent;
    flex:0 0 auto;
    box-shadow:none;
}

.auth-pro-brand-mark{
    background:linear-gradient(135deg,#f59e0b 0%,#0b74d1 72%)!important;
    box-shadow:0 12px 30px rgba(7,88,184,.18)!important;
}

.auth-pro-brand-title{
    color:#0b172a;
    font-size:18px;
    line-height:1;
    font-weight:950;
    letter-spacing:-.02em;
}

.auth-pro-brand-subtitle{
    color:#64748b;
    font-size:12px;
    line-height:1.2;
    font-weight:800;
    margin-top:4px;
}

.auth-pro-copy{
    position:relative;
    z-index:1;
    max-width:690px;
}

.auth-pro-eyebrow{
    display:inline-flex;
    align-items:center;
    min-height:28px;
    border-radius:999px;
    padding:5px 12px;
    background:#fff7ed;
    color:#ea580c;
    border:1px solid #fed7aa;
    font-size:12px;
    line-height:1.2;
    font-weight:950;
    box-shadow:0 8px 20px rgba(245,158,11,.10);
}

.auth-pro-copy h1{
    margin:18px 0 0;
    color:#061b3a;
    font-size:clamp(34px,4vw,58px);
    line-height:1.03;
    letter-spacing:-.055em;
    font-weight:950;
    text-wrap:balance;
}

.auth-pro-copy p{
    max-width:620px;
    margin:18px 0 0;
    color:#334155;
    font-size:clamp(15px,1.25vw,18px);
    line-height:1.8;
    font-weight:750;
}

.auth-pro-feature-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
    margin-top:28px;
    max-width:640px;
}

.auth-pro-feature-card{
    position:relative;
    overflow:hidden;
    border:1px solid #dbe6f3;
    border-radius:22px;
    background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);
    padding:16px;
    min-height:104px;
    box-shadow:0 10px 28px rgba(15,23,42,.055);
}

.auth-pro-feature-card::after{
    content:"";
    position:absolute;
    right:-36px;
    bottom:-44px;
    width:110px;
    height:110px;
    border-radius:999px;
    background:rgba(7,88,184,.065);
}

.auth-pro-feature-icon{
    display:inline-grid;
    place-items:center;
    width:34px;
    height:34px;
    border-radius:13px;
    background:#dbeafe;
    color:#0758b8;
    font-size:11px;
    font-weight:950;
    margin-bottom:9px;
}

.auth-pro-feature-card strong{
    display:block;
    color:#0b172a;
    font-size:15px;
    line-height:1.2;
    font-weight:950;
}

.auth-pro-feature-card small{
    display:block;
    margin-top:5px;
    color:#64748b;
    font-size:12px;
    line-height:1.35;
    font-weight:750;
}

.auth-pro-footer{
    position:relative;
    z-index:1;
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    color:#64748b;
    font-size:11px;
    line-height:1.3;
    font-weight:850;
}

.auth-pro-footer span{
    display:inline-flex;
    align-items:center;
    min-height:24px;
    border-radius:999px;
    padding:4px 9px;
    background:#f8fafc;
    border:1px solid #e2e8f0;
}

.auth-pro-form-zone{
    position:relative;
    min-height:100vh;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:42px clamp(24px,4vw,64px)!important;
    background:
        radial-gradient(circle at 90% 10%,rgba(7,88,184,.12),transparent 28%),
        radial-gradient(circle at 10% 88%,rgba(245,158,11,.10),transparent 22%),
        #eef7ff!important;
}

.auth-pro-form-zone::before{
    content:"";
    position:absolute;
    inset:24px;
    border-radius:34px;
    border:1px solid rgba(191,219,254,.55);
    pointer-events:none;
}

.login-card-pro{
    position:relative;
    z-index:1;
    width:min(100%,470px)!important;
    max-width:470px!important;
    border:1px solid rgba(191,219,254,.95)!important;
    border-radius:30px!important;
    background:rgba(255,255,255,.92)!important;
    box-shadow:0 30px 90px rgba(15,23,42,.16)!important;
    padding:32px!important;
    backdrop-filter:blur(18px);
}

.login-card-pro::before{
    content:"";
    position:absolute;
    inset:0;
    border-radius:inherit;
    background:linear-gradient(135deg,rgba(255,255,255,.72),rgba(255,255,255,0));
    pointer-events:none;
}

.login-card-pro-head{
    position:relative;
    z-index:1;
    display:flex;
    align-items:center;
    gap:14px;
    margin-bottom:24px;
}

.auth-pro-form-mark{
    flex:0 0 auto;
    width:58px!important;
    height:58px!important;
    border-radius:20px!important;
    background:linear-gradient(135deg,#f59e0b 0%,#0b74d1 72%)!important;
    box-shadow:0 14px 32px rgba(7,88,184,.20)!important;
}

.login-card-kicker{
    display:inline-flex;
    margin-bottom:5px;
    color:#0758b8;
    background:#eef7ff;
    border:1px solid #bfdbfe;
    min-height:22px;
    border-radius:999px;
    padding:3px 8px;
    font-size:10px;
    line-height:1.2;
    font-weight:950;
    letter-spacing:.06em;
    text-transform:uppercase;
}

.login-card-pro h2{
    margin:0!important;
    color:#061b3a!important;
    font-size:30px!important;
    line-height:1.08!important;
    font-weight:950!important;
    letter-spacing:-.035em!important;
}

.login-card-pro p{
    margin:7px 0 0!important;
    color:#64748b!important;
    font-size:13px!important;
    line-height:1.55!important;
    font-weight:750!important;
}

.login-card-pro-fields{
    position:relative;
    z-index:1;
    display:grid;
    gap:15px;
}

.auth-pro-field label{
    color:#0b172a!important;
    font-size:13px!important;
    font-weight:900!important;
    margin-bottom:7px!important;
}

.auth-pro-input-wrap{
    position:relative;
}

.auth-pro-input-icon{
    position:absolute;
    left:13px;
    top:50%;
    transform:translateY(-50%);
    display:grid;
    place-items:center;
    width:24px;
    height:24px;
    color:#64748b;
    font-size:14px;
    line-height:1;
    pointer-events:none;
    z-index:1;
}

.auth-pro-input-wrap .input{
    min-height:46px!important;
    border-radius:16px!important;
    border-color:#bfdbfe!important;
    background:#ffffff!important;
    padding-left:46px!important;
    font-size:14px!important;
    font-weight:800!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.75)!important;
}

.auth-pro-input-wrap .input:focus{
    border-color:#0758b8!important;
    box-shadow:0 0 0 4px rgba(7,88,184,.14)!important;
}

.auth-pro-submit{
    min-height:48px!important;
    border-radius:16px!important;
    background:linear-gradient(135deg,#f59e0b 0%,#ff7a00 100%)!important;
    border-color:#fb923c!important;
    color:#111827!important;
    font-size:14px!important;
    font-weight:950!important;
    box-shadow:0 14px 30px rgba(245,158,11,.24)!important;
}

.auth-pro-submit:hover{
    background:linear-gradient(135deg,#ffb020 0%,#ff7a00 100%)!important;
}

.auth-pro-login-hint{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:10px!important;
    border-radius:16px!important;
    border-color:#bfdbfe!important;
    background:#f8fbff!important;
    color:#64748b!important;
    padding:11px 13px!important;
    font-size:12px!important;
    line-height:1.35!important;
}

.auth-pro-login-hint strong{
    color:#0b172a!important;
    white-space:nowrap!important;
}

/* Login page should not be visually disturbed by PDPA floating button */
.auth-layout-pro ~ .pdpa-privacy-link,
body:has(.auth-layout-pro) .pdpa-privacy-link{
    opacity:.38!important;
    transform:scale(.86)!important;
}

@media (max-width:1100px){
    .auth-layout-pro{
        grid-template-columns:1fr!important;
        background:#eef7ff!important;
        overflow:auto!important;
    }

    .auth-pro-hero{
        min-height:auto!important;
        padding:26px 18px 18px!important;
        border-right:0!important;
        border-bottom:1px solid #dbe6f3!important;
        gap:22px!important;
    }

    .auth-pro-brand{
        justify-content:flex-start!important;
    }

    .auth-pro-copy h1{
        font-size:32px!important;
        max-width:720px!important;
    }

    .auth-pro-copy p{
        font-size:14px!important;
        line-height:1.7!important;
    }

    .auth-pro-feature-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:10px!important;
        margin-top:18px!important;
    }

    .auth-pro-feature-card{
        min-height:auto!important;
        padding:13px!important;
        border-radius:18px!important;
    }

    .auth-pro-form-zone{
        min-height:auto!important;
        padding:24px 14px 34px!important;
    }

    .auth-pro-form-zone::before{
        display:none!important;
    }

    .login-card-pro{
        max-width:520px!important;
        padding:24px!important;
        border-radius:26px!important;
    }
}

@media (max-width:640px){
    .auth-pro-hero{
        padding:20px 14px 14px!important;
    }

    .auth-pro-brand-mark{
        width:42px!important;
        height:42px!important;
        border-radius:15px!important;
        font-size:18px!important;
    }

    .auth-pro-brand-title{
        font-size:15px!important;
    }

    .auth-pro-brand-subtitle{
        font-size:10.5px!important;
    }

    .auth-pro-copy h1{
        font-size:27px!important;
        line-height:1.08!important;
        margin-top:13px!important;
    }

    .auth-pro-copy p{
        margin-top:12px!important;
        font-size:13px!important;
    }

    .auth-pro-feature-grid{
        grid-template-columns:1fr!important;
    }

    .auth-pro-feature-card{
        display:grid!important;
        grid-template-columns:38px minmax(0,1fr)!important;
        column-gap:10px!important;
        align-items:center!important;
    }

    .auth-pro-feature-icon{
        grid-row:span 2!important;
        margin-bottom:0!important;
    }

    .auth-pro-footer{
        display:none!important;
    }

    .auth-pro-form-zone{
        padding:16px 10px 26px!important;
    }

    .login-card-pro{
        padding:18px!important;
        border-radius:22px!important;
    }

    .login-card-pro-head{
        gap:11px!important;
        margin-bottom:18px!important;
    }

    .auth-pro-form-mark,
    .auth-pro-form-logo,
    .app-logo.auth-pro-form-logo{
        width:48px!important;
        height:48px!important;
        border-radius:17px!important;
    }

    .login-card-pro h2{
        font-size:24px!important;
    }

    .login-card-pro p{
        font-size:12px!important;
    }

    .auth-pro-input-wrap .input{
        min-height:44px!important;
        font-size:16px!important;
    }

    .auth-pro-login-hint{
        display:grid!important;
        justify-content:start!important;
    }

    body:has(.auth-layout-pro) .pdpa-privacy-link{
        display:none!important;
    }
}


/* Phase 4.3.34 ? Login Background Theme Enhancement
   I18N-safe CSS note */
.auth-layout-pro{
    position:relative!important;
    isolation:isolate!important;
    background:
        linear-gradient(90deg,rgba(255,255,255,.94) 0%,rgba(255,255,255,.90) 54%,rgba(234,245,255,.94) 54%,rgba(238,247,255,.96) 100%),
        radial-gradient(circle at 8% 12%,rgba(245,158,11,.18),transparent 22%),
        radial-gradient(circle at 62% 18%,rgba(7,88,184,.16),transparent 30%),
        linear-gradient(135deg,#f8fbff 0%,#eaf5ff 100%)!important;
}

.auth-layout-pro::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:-2;
    pointer-events:none;
    background-image:
        linear-gradient(rgba(7,88,184,.055) 1px,transparent 1px),
        linear-gradient(90deg,rgba(7,88,184,.055) 1px,transparent 1px);
    background-size:42px 42px;
    mask-image:linear-gradient(90deg,rgba(0,0,0,.20),rgba(0,0,0,.07) 48%,rgba(0,0,0,.18));
}

.auth-layout-pro::after{
    content:"";
    position:absolute;
    inset:0;
    z-index:-1;
    pointer-events:none;
    background:
        radial-gradient(circle at 18% 76%,rgba(7,88,184,.10),transparent 24%),
        radial-gradient(circle at 88% 78%,rgba(245,158,11,.12),transparent 22%);
}

.auth-pro-hero{
    background:
        linear-gradient(135deg,rgba(255,255,255,.88) 0%,rgba(255,255,255,.78) 52%,rgba(248,251,255,.86) 100%),
        radial-gradient(circle at 18% 18%,rgba(245,158,11,.18),transparent 22%),
        radial-gradient(circle at 82% 34%,rgba(7,88,184,.13),transparent 24%),
        linear-gradient(180deg,#ffffff 0%,#f8fbff 100%)!important;
}

.auth-pro-hero::after{
    content:"";
    position:absolute;
    right:clamp(18px,5vw,70px);
    top:clamp(90px,13vh,170px);
    width:min(42vw,520px);
    height:min(42vw,520px);
    max-width:520px;
    max-height:520px;
    min-width:260px;
    min-height:260px;
    border-radius:38px;
    opacity:.12;
    pointer-events:none;
    background:
        linear-gradient(135deg,rgba(6,27,58,.0),rgba(7,88,184,.38)),
        repeating-linear-gradient(0deg,transparent 0 28px,rgba(6,27,58,.35) 28px 30px),
        repeating-linear-gradient(90deg,transparent 0 42px,rgba(6,27,58,.28) 42px 44px);
    transform:rotate(-8deg);
    filter:blur(.1px);
}

.auth-pro-copy,
.auth-pro-brand,
.auth-pro-footer{
    position:relative!important;
    z-index:2!important;
}

.auth-pro-feature-card{
    background:
        linear-gradient(180deg,rgba(255,255,255,.92) 0%,rgba(248,251,255,.90) 100%)!important;
    backdrop-filter:blur(10px);
}

.auth-pro-form-zone{
    background:
        radial-gradient(circle at 82% 16%,rgba(7,88,184,.16),transparent 28%),
        radial-gradient(circle at 18% 86%,rgba(245,158,11,.16),transparent 24%),
        linear-gradient(135deg,#eaf5ff 0%,#f6fbff 50%,#eaf5ff 100%)!important;
}

.auth-pro-form-zone::after{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background-image:
        linear-gradient(135deg,rgba(7,88,184,.06) 25%,transparent 25%),
        linear-gradient(225deg,rgba(7,88,184,.05) 25%,transparent 25%);
    background-size:46px 46px;
    opacity:.55;
}

.login-card-pro{
    background:
        linear-gradient(180deg,rgba(255,255,255,.94) 0%,rgba(255,255,255,.88) 100%)!important;
    box-shadow:
        0 34px 95px rgba(6,27,58,.18),
        0 0 0 1px rgba(255,255,255,.65) inset!important;
}

.login-card-pro::after{
    content:"";
    position:absolute;
    inset:12px;
    z-index:0;
    border-radius:24px;
    border:1px solid rgba(191,219,254,.42);
    pointer-events:none;
}

.login-card-pro-head,
.login-card-pro-fields,
.login-card-pro .alert,
.login-card-pro [role="alert"]{
    position:relative!important;
    z-index:1!important;
}

@media (max-width:1100px){
    .auth-layout-pro{
        background:
            radial-gradient(circle at 18% 8%,rgba(245,158,11,.14),transparent 24%),
            radial-gradient(circle at 78% 22%,rgba(7,88,184,.14),transparent 30%),
            linear-gradient(180deg,#ffffff 0%,#eef7ff 100%)!important;
    }

    .auth-layout-pro::before{
        background-size:34px 34px;
        opacity:.75;
    }

    .auth-pro-hero::after{
        right:-80px;
        top:60px;
        width:300px;
        height:300px;
        min-width:0;
        min-height:0;
        opacity:.08;
    }

    .auth-pro-form-zone{
        background:
            linear-gradient(180deg,rgba(238,247,255,.96),rgba(248,251,255,.98))!important;
    }
}

@media (max-width:640px){
    .auth-layout-pro::before{
        background-size:28px 28px;
        opacity:.50;
    }

    .auth-pro-hero{
        background:
            linear-gradient(180deg,rgba(255,255,255,.96),rgba(248,251,255,.92)),
            radial-gradient(circle at 10% 10%,rgba(245,158,11,.14),transparent 24%)!important;
    }

    .auth-pro-hero::after{
        display:none;
    }

    .auth-pro-form-zone{
        background:
            radial-gradient(circle at 88% 0%,rgba(7,88,184,.12),transparent 24%),
            linear-gradient(180deg,#f8fbff 0%,#eef7ff 100%)!important;
    }

    .auth-pro-form-zone::after{
        opacity:.25;
    }
}


/* Phase 4.3.35 ? Master Data Mobile Card Table Fix
   Fix /master-data for compact master types:
   categories, subcategories, units, brands, models, currencies, approval-flows */
@media (max-width:760px){
    .master-layout-type-categories .master-table-card,
    .master-layout-type-subcategories .master-table-card,
    .master-layout-type-units .master-table-card,
    .master-layout-type-brands .master-table-card,
    .master-layout-type-models .master-table-card,
    .master-layout-type-currencies .master-table-card,
    .master-layout-type-approval-flows .master-table-card{
        padding:12px!important;
        border-radius:20px!important;
        overflow:hidden!important;
    }

    .master-layout-type-categories .master-table-card .table-wrap,
    .master-layout-type-subcategories .master-table-card .table-wrap,
    .master-layout-type-units .master-table-card .table-wrap,
    .master-layout-type-brands .master-table-card .table-wrap,
    .master-layout-type-models .master-table-card .table-wrap,
    .master-layout-type-currencies .master-table-card .table-wrap,
    .master-layout-type-approval-flows .master-table-card .table-wrap{
        overflow:visible!important;
        border:0!important;
        border-radius:0!important;
        background:transparent!important;
        box-shadow:none!important;
    }

    .master-layout-type-categories .master-data-table,
    .master-layout-type-categories .master-data-table thead,
    .master-layout-type-categories .master-data-table tbody,
    .master-layout-type-categories .master-data-table tr,
    .master-layout-type-categories .master-data-table th,
    .master-layout-type-categories .master-data-table td,
    .master-layout-type-subcategories .master-data-table,
    .master-layout-type-subcategories .master-data-table thead,
    .master-layout-type-subcategories .master-data-table tbody,
    .master-layout-type-subcategories .master-data-table tr,
    .master-layout-type-subcategories .master-data-table th,
    .master-layout-type-subcategories .master-data-table td,
    .master-layout-type-units .master-data-table,
    .master-layout-type-units .master-data-table thead,
    .master-layout-type-units .master-data-table tbody,
    .master-layout-type-units .master-data-table tr,
    .master-layout-type-units .master-data-table th,
    .master-layout-type-units .master-data-table td,
    .master-layout-type-brands .master-data-table,
    .master-layout-type-brands .master-data-table thead,
    .master-layout-type-brands .master-data-table tbody,
    .master-layout-type-brands .master-data-table tr,
    .master-layout-type-brands .master-data-table th,
    .master-layout-type-brands .master-data-table td,
    .master-layout-type-models .master-data-table,
    .master-layout-type-models .master-data-table thead,
    .master-layout-type-models .master-data-table tbody,
    .master-layout-type-models .master-data-table tr,
    .master-layout-type-models .master-data-table th,
    .master-layout-type-models .master-data-table td,
    .master-layout-type-currencies .master-data-table,
    .master-layout-type-currencies .master-data-table thead,
    .master-layout-type-currencies .master-data-table tbody,
    .master-layout-type-currencies .master-data-table tr,
    .master-layout-type-currencies .master-data-table th,
    .master-layout-type-currencies .master-data-table td,
    .master-layout-type-approval-flows .master-data-table,
    .master-layout-type-approval-flows .master-data-table thead,
    .master-layout-type-approval-flows .master-data-table tbody,
    .master-layout-type-approval-flows .master-data-table tr,
    .master-layout-type-approval-flows .master-data-table th,
    .master-layout-type-approval-flows .master-data-table td{
        display:block!important;
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
    }

    .master-layout-type-categories .master-data-table,
    .master-layout-type-subcategories .master-data-table,
    .master-layout-type-units .master-data-table,
    .master-layout-type-brands .master-data-table,
    .master-layout-type-models .master-data-table,
    .master-layout-type-currencies .master-data-table,
    .master-layout-type-approval-flows .master-data-table{
        border:0!important;
        border-collapse:separate!important;
        border-spacing:0!important;
        background:transparent!important;
    }

    .master-layout-type-categories .master-data-table thead,
    .master-layout-type-subcategories .master-data-table thead,
    .master-layout-type-units .master-data-table thead,
    .master-layout-type-brands .master-data-table thead,
    .master-layout-type-models .master-data-table thead,
    .master-layout-type-currencies .master-data-table thead,
    .master-layout-type-approval-flows .master-data-table thead{
        display:none!important;
    }

    .master-layout-type-categories .master-data-table tbody,
    .master-layout-type-subcategories .master-data-table tbody,
    .master-layout-type-units .master-data-table tbody,
    .master-layout-type-brands .master-data-table tbody,
    .master-layout-type-models .master-data-table tbody,
    .master-layout-type-currencies .master-data-table tbody,
    .master-layout-type-approval-flows .master-data-table tbody{
        display:grid!important;
        gap:12px!important;
    }

    .master-layout-type-categories .master-data-table tbody tr,
    .master-layout-type-subcategories .master-data-table tbody tr,
    .master-layout-type-units .master-data-table tbody tr,
    .master-layout-type-brands .master-data-table tbody tr,
    .master-layout-type-models .master-data-table tbody tr,
    .master-layout-type-currencies .master-data-table tbody tr,
    .master-layout-type-approval-flows .master-data-table tbody tr{
        display:grid!important;
        grid-template-columns:auto minmax(0,1fr)!important;
        grid-template-areas:
            "select main"
            "drag main"
            "image main"
            "extra extra"
            "actions actions"!important;
        gap:8px 10px!important;
        padding:12px!important;
        border:1px solid #dbeafe!important;
        border-radius:20px!important;
        background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%)!important;
        box-shadow:0 10px 24px rgba(15,23,42,.065)!important;
        overflow:hidden!important;
    }

    .master-layout-type-categories .master-data-table tbody tr.is-highlighted,
    .master-layout-type-subcategories .master-data-table tbody tr.is-highlighted,
    .master-layout-type-units .master-data-table tbody tr.is-highlighted,
    .master-layout-type-brands .master-data-table tbody tr.is-highlighted,
    .master-layout-type-models .master-data-table tbody tr.is-highlighted,
    .master-layout-type-currencies .master-data-table tbody tr.is-highlighted,
    .master-layout-type-approval-flows .master-data-table tbody tr.is-highlighted{
        border-color:#f59e0b!important;
        box-shadow:0 10px 26px rgba(245,158,11,.16)!important;
    }

    .master-layout-type-categories .master-data-table td,
    .master-layout-type-subcategories .master-data-table td,
    .master-layout-type-units .master-data-table td,
    .master-layout-type-brands .master-data-table td,
    .master-layout-type-models .master-data-table td,
    .master-layout-type-currencies .master-data-table td,
    .master-layout-type-approval-flows .master-data-table td{
        border:0!important;
        padding:0!important;
        background:transparent!important;
        min-width:0!important;
    }

    .master-data-table .master-col-select{grid-area:select}
    .master-data-table .master-col-drag{grid-area:drag}
    .master-data-table .master-col-image,
    .master-data-table .master-col-signature{grid-area:image}
    .master-data-table .master-col-main{grid-area:main}
    .master-data-table .master-extra-cell{grid-area:extra}
    .master-data-table .master-col-actions{grid-area:actions}

    .master-layout-type-categories .master-col-select,
    .master-layout-type-subcategories .master-col-select,
    .master-layout-type-units .master-col-select,
    .master-layout-type-brands .master-col-select,
    .master-layout-type-models .master-col-select,
    .master-layout-type-currencies .master-col-select,
    .master-layout-type-approval-flows .master-col-select{
        align-self:start!important;
        padding-top:3px!important;
    }

    .master-layout-type-categories .master-col-select input,
    .master-layout-type-subcategories .master-col-select input,
    .master-layout-type-units .master-col-select input,
    .master-layout-type-brands .master-col-select input,
    .master-layout-type-models .master-col-select input,
    .master-layout-type-currencies .master-col-select input,
    .master-layout-type-approval-flows .master-col-select input{
        width:20px!important;
        height:20px!important;
        accent-color:#0758b8!important;
    }

    .master-layout-type-categories .master-col-drag,
    .master-layout-type-subcategories .master-col-drag,
    .master-layout-type-units .master-col-drag,
    .master-layout-type-brands .master-col-drag,
    .master-layout-type-models .master-col-drag,
    .master-layout-type-currencies .master-col-drag,
    .master-layout-type-approval-flows .master-col-drag{
        display:flex!important;
        align-items:center!important;
        gap:5px!important;
    }

    .master-layout-type-categories .master-drag-handle,
    .master-layout-type-subcategories .master-drag-handle,
    .master-layout-type-units .master-drag-handle,
    .master-layout-type-brands .master-drag-handle,
    .master-layout-type-models .master-drag-handle,
    .master-layout-type-currencies .master-drag-handle,
    .master-layout-type-approval-flows .master-drag-handle{
        width:30px!important;
        height:30px!important;
        border-radius:12px!important;
    }

    .master-layout-type-categories .master-image-thumb,
    .master-layout-type-subcategories .master-image-thumb,
    .master-layout-type-units .master-image-thumb,
    .master-layout-type-brands .master-image-thumb,
    .master-layout-type-models .master-image-thumb,
    .master-layout-type-currencies .master-image-thumb,
    .master-layout-type-approval-flows .master-image-thumb{
        width:54px!important;
        height:54px!important;
        border-radius:16px!important;
    }

    .master-layout-type-categories .master-signature-thumb,
    .master-layout-type-subcategories .master-signature-thumb,
    .master-layout-type-units .master-signature-thumb,
    .master-layout-type-brands .master-signature-thumb,
    .master-layout-type-models .master-signature-thumb,
    .master-layout-type-currencies .master-signature-thumb,
    .master-layout-type-approval-flows .master-signature-thumb{
        width:100%!important;
        min-height:56px!important;
        border-radius:14px!important;
    }

    .master-layout-type-categories .master-col-main .doc-cell,
    .master-layout-type-subcategories .master-col-main .doc-cell,
    .master-layout-type-units .master-col-main .doc-cell,
    .master-layout-type-brands .master-col-main .doc-cell,
    .master-layout-type-models .master-col-main .doc-cell,
    .master-layout-type-currencies .master-col-main .doc-cell,
    .master-layout-type-approval-flows .master-col-main .doc-cell{
        display:grid!important;
        gap:4px!important;
        min-width:0!important;
    }

    .master-layout-type-categories .master-col-main strong,
    .master-layout-type-subcategories .master-col-main strong,
    .master-layout-type-units .master-col-main strong,
    .master-layout-type-brands .master-col-main strong,
    .master-layout-type-models .master-col-main strong,
    .master-layout-type-currencies .master-col-main strong,
    .master-layout-type-approval-flows .master-col-main strong{
        display:block!important;
        color:#061b3a!important;
        font-size:15px!important;
        line-height:1.2!important;
        font-weight:950!important;
        overflow-wrap:anywhere!important;
    }

    .master-layout-type-categories .master-col-main small,
    .master-layout-type-subcategories .master-col-main small,
    .master-layout-type-units .master-col-main small,
    .master-layout-type-brands .master-col-main small,
    .master-layout-type-models .master-col-main small,
    .master-layout-type-currencies .master-col-main small,
    .master-layout-type-approval-flows .master-col-main small{
        display:block!important;
        color:#334155!important;
        font-size:13px!important;
        line-height:1.35!important;
        font-weight:800!important;
        overflow-wrap:anywhere!important;
    }

    .master-layout-type-categories .master-extra-cell,
    .master-layout-type-subcategories .master-extra-cell,
    .master-layout-type-units .master-extra-cell,
    .master-layout-type-brands .master-extra-cell,
    .master-layout-type-models .master-extra-cell,
    .master-layout-type-currencies .master-extra-cell,
    .master-layout-type-approval-flows .master-extra-cell{
        display:grid!important;
        grid-template-columns:96px minmax(0,1fr)!important;
        align-items:start!important;
        gap:8px!important;
        border:1px solid #e2e8f0!important;
        border-radius:14px!important;
        background:#fff!important;
        padding:8px 10px!important;
        color:#0f172a!important;
        font-size:12px!important;
        line-height:1.35!important;
    }

    .master-layout-type-categories .master-extra-cell::before,
    .master-layout-type-subcategories .master-extra-cell::before,
    .master-layout-type-units .master-extra-cell::before,
    .master-layout-type-brands .master-extra-cell::before,
    .master-layout-type-models .master-extra-cell::before,
    .master-layout-type-currencies .master-extra-cell::before,
    .master-layout-type-approval-flows .master-extra-cell::before{
        content:attr(data-label);
        color:#64748b!important;
        font-size:10px!important;
        line-height:1.25!important;
        font-weight:950!important;
    }

    .master-layout-type-categories .master-extra-cell span,
    .master-layout-type-subcategories .master-extra-cell span,
    .master-layout-type-units .master-extra-cell span,
    .master-layout-type-brands .master-extra-cell span,
    .master-layout-type-models .master-extra-cell span,
    .master-layout-type-currencies .master-extra-cell span,
    .master-layout-type-approval-flows .master-extra-cell span{
        min-width:0!important;
        overflow-wrap:anywhere!important;
        font-weight:850!important;
    }

    .master-layout-type-categories .master-col-actions,
    .master-layout-type-subcategories .master-col-actions,
    .master-layout-type-units .master-col-actions,
    .master-layout-type-brands .master-col-actions,
    .master-layout-type-models .master-col-actions,
    .master-layout-type-currencies .master-col-actions,
    .master-layout-type-approval-flows .master-col-actions{
        border-top:1px dashed #dbeafe!important;
        padding-top:9px!important;
    }

    .master-layout-type-categories .master-col-actions .action-row,
    .master-layout-type-subcategories .master-col-actions .action-row,
    .master-layout-type-units .master-col-actions .action-row,
    .master-layout-type-brands .master-col-actions .action-row,
    .master-layout-type-models .master-col-actions .action-row,
    .master-layout-type-currencies .master-col-actions .action-row,
    .master-layout-type-approval-flows .master-col-actions .action-row{
        display:grid!important;
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:7px!important;
        width:100%!important;
    }

    .master-layout-type-categories .master-col-actions form,
    .master-layout-type-subcategories .master-col-actions form,
    .master-layout-type-units .master-col-actions form,
    .master-layout-type-brands .master-col-actions form,
    .master-layout-type-models .master-col-actions form,
    .master-layout-type-currencies .master-col-actions form,
    .master-layout-type-approval-flows .master-col-actions form{
        display:contents!important;
    }

    .master-layout-type-categories .master-col-actions .button,
    .master-layout-type-subcategories .master-col-actions .button,
    .master-layout-type-units .master-col-actions .button,
    .master-layout-type-brands .master-col-actions .button,
    .master-layout-type-models .master-col-actions .button,
    .master-layout-type-currencies .master-col-actions .button,
    .master-layout-type-approval-flows .master-col-actions .button{
        width:100%!important;
        min-height:36px!important;
        justify-content:center!important;
        border-radius:12px!important;
        padding:7px 10px!important;
        font-size:12px!important;
    }

    .master-layout-type-categories .master-batch-toolbar,
    .master-layout-type-subcategories .master-batch-toolbar,
    .master-layout-type-units .master-batch-toolbar,
    .master-layout-type-brands .master-batch-toolbar,
    .master-layout-type-models .master-batch-toolbar,
    .master-layout-type-currencies .master-batch-toolbar,
    .master-layout-type-approval-flows .master-batch-toolbar{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:10px!important;
        padding:10px!important;
        border-radius:16px!important;
    }

    .master-layout-type-categories .master-batch-actions,
    .master-layout-type-subcategories .master-batch-actions,
    .master-layout-type-units .master-batch-actions,
    .master-layout-type-brands .master-batch-actions,
    .master-layout-type-models .master-batch-actions,
    .master-layout-type-currencies .master-batch-actions,
    .master-layout-type-approval-flows .master-batch-actions{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:8px!important;
        width:100%!important;
    }

    .master-layout-type-categories .master-batch-actions .button,
    .master-layout-type-subcategories .master-batch-actions .button,
    .master-layout-type-units .master-batch-actions .button,
    .master-layout-type-brands .master-batch-actions .button,
    .master-layout-type-models .master-batch-actions .button,
    .master-layout-type-currencies .master-batch-actions .button,
    .master-layout-type-approval-flows .master-batch-actions .button{
        width:100%!important;
    }
}

@media (max-width:420px){
    .master-layout-type-categories .master-data-table tbody tr,
    .master-layout-type-subcategories .master-data-table tbody tr,
    .master-layout-type-units .master-data-table tbody tr,
    .master-layout-type-brands .master-data-table tbody tr,
    .master-layout-type-models .master-data-table tbody tr,
    .master-layout-type-currencies .master-data-table tbody tr,
    .master-layout-type-approval-flows .master-data-table tbody tr{
        grid-template-columns:1fr!important;
        grid-template-areas:
            "select"
            "drag"
            "image"
            "main"
            "extra"
            "actions"!important;
        padding:10px!important;
        border-radius:18px!important;
    }

    .master-layout-type-categories .master-extra-cell,
    .master-layout-type-subcategories .master-extra-cell,
    .master-layout-type-units .master-extra-cell,
    .master-layout-type-brands .master-extra-cell,
    .master-layout-type-models .master-extra-cell,
    .master-layout-type-currencies .master-extra-cell,
    .master-layout-type-approval-flows .master-extra-cell{
        grid-template-columns:1fr!important;
        gap:3px!important;
    }

    .master-layout-type-categories .master-col-actions .action-row,
    .master-layout-type-subcategories .master-col-actions .action-row,
    .master-layout-type-units .master-col-actions .action-row,
    .master-layout-type-brands .master-col-actions .action-row,
    .master-layout-type-models .master-col-actions .action-row,
    .master-layout-type-currencies .master-col-actions .action-row,
    .master-layout-type-approval-flows .master-col-actions .action-row{
        grid-template-columns:1fr!important;
    }
}


/* Phase 4.3.36 ? Master Data Full Width Table Fix
   I18N-safe CSS note */
.master-layout-type-categories .master-table-card,
.master-layout-type-subcategories .master-table-card,
.master-layout-type-units .master-table-card,
.master-layout-type-brands .master-table-card,
.master-layout-type-models .master-table-card,
.master-layout-type-currencies .master-table-card,
.master-layout-type-approval-flows .master-table-card{
    width:100%!important;
    max-width:100%!important;
    overflow:hidden!important;
}

.master-layout-type-categories .master-table-card .table-wrap,
.master-layout-type-subcategories .master-table-card .table-wrap,
.master-layout-type-units .master-table-card .table-wrap,
.master-layout-type-brands .master-table-card .table-wrap,
.master-layout-type-models .master-table-card .table-wrap,
.master-layout-type-currencies .master-table-card .table-wrap,
.master-layout-type-approval-flows .master-table-card .table-wrap{
    width:100%!important;
    max-width:100%!important;
    overflow-x:auto!important;
}

.master-layout-type-categories .master-data-table,
.master-layout-type-subcategories .master-data-table,
.master-layout-type-units .master-data-table,
.master-layout-type-brands .master-data-table,
.master-layout-type-models .master-data-table,
.master-layout-type-currencies .master-data-table,
.master-layout-type-approval-flows .master-data-table{
    width:100%!important;
    min-width:100%!important;
    max-width:none!important;
}

/* Desktop/tablet: compact master tables should stretch to the card width */
@media (min-width:761px){
    .master-layout-type-categories .master-data-table,
    .master-layout-type-subcategories .master-data-table,
    .master-layout-type-units .master-data-table,
    .master-layout-type-brands .master-data-table,
    .master-layout-type-models .master-data-table,
    .master-layout-type-currencies .master-data-table,
    .master-layout-type-approval-flows .master-data-table{
        table-layout:fixed!important;
    }

    .master-layout-type-categories .master-col-select,
    .master-layout-type-subcategories .master-col-select,
    .master-layout-type-units .master-col-select,
    .master-layout-type-brands .master-col-select,
    .master-layout-type-models .master-col-select,
    .master-layout-type-currencies .master-col-select,
    .master-layout-type-approval-flows .master-col-select{
        width:48px!important;
        min-width:48px!important;
        max-width:48px!important;
        text-align:center!important;
    }

    .master-layout-type-categories .master-col-drag,
    .master-layout-type-subcategories .master-col-drag,
    .master-layout-type-units .master-col-drag,
    .master-layout-type-brands .master-col-drag,
    .master-layout-type-models .master-col-drag,
    .master-layout-type-currencies .master-col-drag,
    .master-layout-type-approval-flows .master-col-drag{
        width:76px!important;
        min-width:76px!important;
        max-width:76px!important;
        text-align:center!important;
    }

    .master-layout-type-categories .master-col-image,
    .master-layout-type-subcategories .master-col-image,
    .master-layout-type-units .master-col-image,
    .master-layout-type-brands .master-col-image,
    .master-layout-type-models .master-col-image,
    .master-layout-type-currencies .master-col-image,
    .master-layout-type-approval-flows .master-col-image{
        width:72px!important;
        min-width:72px!important;
        max-width:72px!important;
        text-align:center!important;
    }

    .master-layout-type-categories .master-col-signature,
    .master-layout-type-subcategories .master-col-signature,
    .master-layout-type-units .master-col-signature,
    .master-layout-type-brands .master-col-signature,
    .master-layout-type-models .master-col-signature,
    .master-layout-type-currencies .master-col-signature,
    .master-layout-type-approval-flows .master-col-signature{
        width:130px!important;
        min-width:130px!important;
        max-width:130px!important;
    }

    .master-layout-type-categories .master-col-main,
    .master-layout-type-subcategories .master-col-main,
    .master-layout-type-units .master-col-main,
    .master-layout-type-brands .master-col-main,
    .master-layout-type-models .master-col-main,
    .master-layout-type-currencies .master-col-main,
    .master-layout-type-approval-flows .master-col-main{
        width:220px!important;
        min-width:180px!important;
    }

    .master-layout-type-categories .master-col-actions,
    .master-layout-type-subcategories .master-col-actions,
    .master-layout-type-units .master-col-actions,
    .master-layout-type-brands .master-col-actions,
    .master-layout-type-models .master-col-actions,
    .master-layout-type-currencies .master-col-actions,
    .master-layout-type-approval-flows .master-col-actions{
        width:210px!important;
        min-width:190px!important;
        max-width:230px!important;
    }

    .master-layout-type-categories .master-extra-cell,
    .master-layout-type-subcategories .master-extra-cell,
    .master-layout-type-units .master-extra-cell,
    .master-layout-type-brands .master-extra-cell,
    .master-layout-type-models .master-extra-cell,
    .master-layout-type-currencies .master-extra-cell,
    .master-layout-type-approval-flows .master-extra-cell{
        width:auto!important;
        min-width:0!important;
    }

    .master-layout-type-categories .master-extra-cell span,
    .master-layout-type-subcategories .master-extra-cell span,
    .master-layout-type-units .master-extra-cell span,
    .master-layout-type-brands .master-extra-cell span,
    .master-layout-type-models .master-extra-cell span,
    .master-layout-type-currencies .master-extra-cell span,
    .master-layout-type-approval-flows .master-extra-cell span,
    .master-layout-type-categories .master-col-main .doc-cell,
    .master-layout-type-subcategories .master-col-main .doc-cell,
    .master-layout-type-units .master-col-main .doc-cell,
    .master-layout-type-brands .master-col-main .doc-cell,
    .master-layout-type-models .master-col-main .doc-cell,
    .master-layout-type-currencies .master-col-main .doc-cell,
    .master-layout-type-approval-flows .master-col-main .doc-cell{
        min-width:0!important;
        max-width:100%!important;
        overflow-wrap:anywhere!important;
    }

    .master-layout-type-categories .master-col-actions .action-row,
    .master-layout-type-subcategories .master-col-actions .action-row,
    .master-layout-type-units .master-col-actions .action-row,
    .master-layout-type-brands .master-col-actions .action-row,
    .master-layout-type-models .master-col-actions .action-row,
    .master-layout-type-currencies .master-col-actions .action-row,
    .master-layout-type-approval-flows .master-col-actions .action-row{
        justify-content:flex-end!important;
        flex-wrap:nowrap!important;
        gap:7px!important;
    }

    .master-layout-type-categories .master-col-actions .button,
    .master-layout-type-subcategories .master-col-actions .button,
    .master-layout-type-units .master-col-actions .button,
    .master-layout-type-brands .master-col-actions .button,
    .master-layout-type-models .master-col-actions .button,
    .master-layout-type-currencies .master-col-actions .button,
    .master-layout-type-approval-flows .master-col-actions .button{
        padding-left:11px!important;
        padding-right:11px!important;
        white-space:nowrap!important;
    }
}

/* Keep the mobile card conversion from phase 4.3.35 */
@media (max-width:760px){
    .master-layout-type-categories .master-data-table,
    .master-layout-type-subcategories .master-data-table,
    .master-layout-type-units .master-data-table,
    .master-layout-type-brands .master-data-table,
    .master-layout-type-models .master-data-table,
    .master-layout-type-currencies .master-data-table,
    .master-layout-type-approval-flows .master-data-table{
        width:100%!important;
        min-width:0!important;
    }
}


/* Phase 4.3.38 ? Toast Close + Master Sort Order UX Fix */
.toast-item{
    position:relative!important;
    padding-right:12px!important;
}
.toast-close-button{
    width:36px!important;
    height:36px!important;
    min-width:36px!important;
    min-height:36px!important;
    flex:0 0 36px!important;
    display:inline-grid!important;
    place-items:center!important;
    border:1px solid #cbd5e1!important;
    border-radius:14px!important;
    background:linear-gradient(180deg,#ffffff 0%,#f1f5f9 100%)!important;
    color:#0f172a!important;
    font-size:22px!important;
    font-weight:950!important;
    line-height:1!important;
    cursor:pointer!important;
    box-shadow:0 8px 18px rgba(15,23,42,.12)!important;
    opacity:1!important;
}
.toast-close-button span{
    display:block!important;
    transform:translateY(-1px)!important;
}
.toast-close-button:hover,
.toast-close-button:focus-visible{
    border-color:#0758b8!important;
    background:#eef7ff!important;
    color:#0758b8!important;
    outline:none!important;
    box-shadow:0 0 0 4px rgba(7,88,184,.15),0 8px 18px rgba(15,23,42,.14)!important;
}
.toast-success .toast-close-button{
    border-color:#bbf7d0!important;
}
.toast-error .toast-close-button{
    border-color:#fecaca!important;
}
.toast-warning .toast-close-button{
    border-color:#fed7aa!important;
}

.master-sort-controls{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:4px!important;
    min-width:0!important;
}
.master-sort-step,
.master-drag-handle{
    touch-action:manipulation!important;
}
.master-sort-step{
    width:28px!important;
    height:28px!important;
    min-width:28px!important;
    border:1px solid #bfdbfe!important;
    border-radius:10px!important;
    display:inline-grid!important;
    place-items:center!important;
    background:#eef7ff!important;
    color:#0758b8!important;
    font-size:13px!important;
    font-weight:950!important;
    line-height:1!important;
    cursor:pointer!important;
}
.master-sort-step:hover,
.master-sort-step:focus-visible{
    background:#0758b8!important;
    color:#fff!important;
    outline:none!important;
    box-shadow:0 0 0 4px rgba(7,88,184,.14)!important;
}
.master-data-table tr.is-dragging td{
    background:#fff7ed!important;
}
.master-data-table tr.is-drag-over td{
    box-shadow:inset 0 3px 0 #ff9900!important;
}
.master-batch-summary em{
    color:#0b4d8e!important;
}

@media(max-width:640px){
    .toast-container{
        left:12px!important;
        right:12px!important;
        top:calc(var(--stock-topbar-offset, 56px) + 8px + env(safe-area-inset-top, 0px))!important;
        bottom:auto!important;
        transform:none!important;
        max-width:none!important;
        width:auto!important;
    }
    .toast-item{
        border-radius:18px!important;
        padding:12px!important;
        gap:10px!important;
    }
    .toast-close-button{
        width:34px!important;
        height:34px!important;
        min-width:34px!important;
        min-height:34px!important;
        border-radius:13px!important;
        font-size:20px!important;
    }
    .master-sort-controls{
        justify-content:flex-start!important;
    }
    .master-sort-step,
    .master-drag-handle{
        width:34px!important;
        height:34px!important;
        min-width:34px!important;
        border-radius:12px!important;
    }
}


/* Phase 4.3.39 ? Master Data Sort Column Table UI Fix
   I18N-safe CSS note */
.master-data-table .master-col-drag{
    width:132px!important;
    min-width:132px!important;
    max-width:132px!important;
    text-align:center!important;
    vertical-align:middle!important;
}

.master-sort-cell{
    display:grid!important;
    justify-items:center!important;
    align-items:center!important;
    gap:5px!important;
    min-width:112px!important;
    max-width:118px!important;
    margin:0 auto!important;
}

.master-sort-controls{
    display:grid!important;
    grid-template-columns:30px 34px 30px!important;
    gap:5px!important;
    align-items:center!important;
    justify-content:center!important;
    width:104px!important;
    max-width:104px!important;
    padding:3px!important;
    border:1px solid #dbeafe!important;
    border-radius:14px!important;
    background:linear-gradient(180deg,#ffffff 0%,#f5fbff 100%)!important;
    box-shadow:0 6px 14px rgba(3,17,43,.055)!important;
}

.master-sort-step,
.master-drag-handle{
    margin:0!important;
    padding:0!important;
    display:grid!important;
    place-items:center!important;
    flex:0 0 auto!important;
    line-height:1!important;
}

.master-sort-step{
    width:30px!important;
    height:30px!important;
    min-width:30px!important;
    max-width:30px!important;
    border:1px solid #bfdbfe!important;
    border-radius:11px!important;
    background:#eef7ff!important;
    color:#0758b8!important;
    font-size:13px!important;
    font-weight:950!important;
}

.master-drag-handle{
    width:34px!important;
    height:30px!important;
    min-width:34px!important;
    max-width:34px!important;
    border:1.5px solid #93c5fd!important;
    border-radius:11px!important;
    background:#ffffff!important;
    color:#0758b8!important;
    font-size:14px!important;
    font-weight:950!important;
}

.master-sort-number,
.master-col-drag small[data-master-sort-number]{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:42px!important;
    height:20px!important;
    margin:0!important;
    padding:0 8px!important;
    border-radius:999px!important;
    background:#f1f5f9!important;
    color:#64748b!important;
    font-size:10.5px!important;
    line-height:1!important;
    font-weight:950!important;
}

.master-data-table th.master-col-drag{
    text-align:center!important;
}

.master-data-table td.master-col-main{
    min-width:210px!important;
}

.master-data-table .doc-cell strong,
.master-data-table .doc-cell small{
    overflow-wrap:anywhere!important;
}

@media (min-width:761px){
    .master-layout-type-categories .master-col-drag,
    .master-layout-type-subcategories .master-col-drag,
    .master-layout-type-units .master-col-drag,
    .master-layout-type-brands .master-col-drag,
    .master-layout-type-models .master-col-drag,
    .master-layout-type-currencies .master-col-drag,
    .master-layout-type-approval-flows .master-col-drag,
    .master-layout-type-org-units .master-col-drag,
    .master-layout-type-locations .master-col-drag,
    .master-layout-type-suppliers .master-col-drag{
        width:132px!important;
        min-width:132px!important;
        max-width:132px!important;
    }
}

@media (max-width:760px){
    .master-data-table .master-col-drag{
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
        text-align:left!important;
    }

    .master-sort-cell{
        justify-items:start!important;
        max-width:100%!important;
        min-width:0!important;
        margin:0!important;
    }

    .master-sort-controls{
        width:120px!important;
        max-width:120px!important;
        grid-template-columns:34px 36px 34px!important;
    }

    .master-sort-step{
        width:34px!important;
        height:34px!important;
        min-width:34px!important;
        max-width:34px!important;
    }

    .master-drag-handle{
        width:36px!important;
        height:34px!important;
        min-width:36px!important;
        max-width:36px!important;
    }
}


/* Phase 4.3.40 ? PR/PO Item Form Responsive Table Fix
   I18N-safe CSS note */
.document-lines-wrap,
form .table-wrap:has([data-pr-items-table]),
form .table-wrap:has([data-po-items-table]){
    width:100%!important;
    max-width:100%!important;
    overflow-x:auto!important;
    overflow-y:visible!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior-x:contain!important;
    border-radius:22px!important;
    border:1px solid #dbeafe!important;
    background:#fff!important;
    box-shadow:0 10px 26px rgba(15,23,42,.055)!important;
}

[data-pr-items-table],
[data-po-items-table]{
    width:100%!important;
    max-width:none!important;
    table-layout:fixed!important;
    border-collapse:separate!important;
    border-spacing:0!important;
}

[data-pr-items-table]{min-width:1240px!important;}
[data-po-items-table]{min-width:1380px!important;}

[data-pr-items-table] th,
[data-po-items-table] th{
    white-space:nowrap!important;
    vertical-align:middle!important;
}

[data-pr-items-table] td,
[data-po-items-table] td{
    vertical-align:top!important;
}

[data-pr-items-table] th:nth-child(1),
[data-pr-items-table] td:nth-child(1),
[data-po-items-table] th:nth-child(1),
[data-po-items-table] td:nth-child(1){
    width:56px!important;
    min-width:56px!important;
    text-align:center!important;
}

[data-pr-items-table] th:nth-child(2),
[data-pr-items-table] td:nth-child(2),
[data-po-items-table] th:nth-child(2),
[data-po-items-table] td:nth-child(2){width:390px!important;}

[data-pr-items-table] th:nth-child(3),
[data-pr-items-table] td:nth-child(3),
[data-po-items-table] th:nth-child(3),
[data-po-items-table] td:nth-child(3){width:210px!important;}

[data-pr-items-table] th:nth-child(4),
[data-pr-items-table] td:nth-child(4),
[data-po-items-table] th:nth-child(4),
[data-po-items-table] td:nth-child(4){width:170px!important;}

[data-pr-items-table] th:nth-child(5),
[data-pr-items-table] td:nth-child(5),
[data-po-items-table] th:nth-child(5),
[data-po-items-table] td:nth-child(5){width:140px!important;}

[data-pr-items-table] th:nth-child(6),
[data-pr-items-table] td:nth-child(6),
[data-po-items-table] th:nth-child(6),
[data-po-items-table] td:nth-child(6){width:145px!important;}

[data-pr-items-table] th:nth-child(7),
[data-pr-items-table] td:nth-child(7){width:230px!important;}

[data-pr-items-table] th:nth-child(8),
[data-pr-items-table] td:nth-child(8),
[data-po-items-table] th:nth-child(9),
[data-po-items-table] td:nth-child(9){
    width:92px!important;
    text-align:center!important;
}

[data-po-items-table] th:nth-child(7),
[data-po-items-table] td:nth-child(7){width:132px!important;}

[data-po-items-table] th:nth-child(8),
[data-po-items-table] td:nth-child(8){width:96px!important;}

[data-pr-items-table] .input,
[data-pr-items-table] .select,
[data-po-items-table] .input,
[data-po-items-table] .select{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
}

[data-pr-items-table] .core-select,
[data-pr-items-table] .core-select-display,
[data-po-items-table] .core-select,
[data-po-items-table] .core-select-display{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
}

[data-pr-items-table] .material-autofill-meta,
[data-po-items-table] .material-autofill-meta,
[data-po-items-table] .po-source-note{
    max-width:100%!important;
    overflow-wrap:anywhere!important;
    white-space:normal!important;
    line-height:1.35!important;
}

[data-pr-items-table] td:last-child .button,
[data-po-items-table] td:last-child .button{
    width:100%!important;
    justify-content:center!important;
}

@media (max-width:1100px){
    form .table-wrap:has([data-pr-items-table]),
    form .table-wrap:has([data-po-items-table]),
    .document-lines-wrap{
        overflow:visible!important;
        border:0!important;
        background:transparent!important;
        box-shadow:none!important;
        border-radius:0!important;
        width:100%!important;
        max-width:100%!important;
    }

    [data-pr-items-table],
    [data-po-items-table],
    [data-pr-items-table] thead,
    [data-po-items-table] thead,
    [data-pr-items-table] tbody,
    [data-po-items-table] tbody,
    [data-pr-items-table] tr,
    [data-po-items-table] tr,
    [data-pr-items-table] th,
    [data-po-items-table] th,
    [data-pr-items-table] td,
    [data-po-items-table] td{
        display:block!important;
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
    }

    /* Kill desktop fixed column widths that keep fields tiny on cards */
    [data-pr-items-table] th:nth-child(n),
    [data-pr-items-table] td:nth-child(n),
    [data-po-items-table] th:nth-child(n),
    [data-po-items-table] td:nth-child(n){
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
    }

    [data-pr-items-table],
    [data-po-items-table]{
        min-width:0!important;
        width:100%!important;
        max-width:100%!important;
        border:0!important;
        background:transparent!important;
        table-layout:auto!important;
    }

    [data-pr-items-table] thead,
    [data-po-items-table] thead{display:none!important;}

    [data-pr-items-table] tbody,
    [data-po-items-table] tbody{
        display:grid!important;
        gap:12px!important;
        width:100%!important;
    }

    [data-pr-items-table] tr,
    [data-po-items-table] tr{
        position:relative!important;
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:10px!important;
        padding:14px!important;
        border:1px solid #dbeafe!important;
        border-radius:20px!important;
        background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%)!important;
        box-shadow:0 10px 24px rgba(15,23,42,.065)!important;
        overflow:visible!important;
        width:100%!important;
        max-width:100%!important;
        box-sizing:border-box!important;
    }

    [data-pr-items-table] tr::before,
    [data-po-items-table] tr::before{
        content:attr(data-row-card-prefix) " " attr(data-row-card-no);
        display:flex!important;
        align-items:center!important;
        min-height:28px!important;
        width:max-content!important;
        max-width:100%!important;
        padding:5px 10px!important;
        border-radius:999px!important;
        background:#dbeafe!important;
        color:#0758b8!important;
        font-size:12px!important;
        font-weight:950!important;
    }

    [data-pr-items-table] tr:not([data-row-card-no])::before,
    [data-po-items-table] tr:not([data-row-card-no])::before{content:attr(data-row-card-fallback);}

    [data-pr-items-table] td,
    [data-po-items-table] td{
        border:0!important;
        padding:0!important;
        background:transparent!important;
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
        box-sizing:border-box!important;
    }

    [data-pr-items-table] td::before,
    [data-po-items-table] td::before{
        display:block!important;
        margin-bottom:5px!important;
        color:#475569!important;
        font-size:11px!important;
        line-height:1.2!important;
        font-weight:950!important;
        content:attr(data-label);
    }

    [data-pr-items-table] td:nth-child(1),
    [data-po-items-table] td:nth-child(1){display:none!important;}

    [data-pr-items-table] td:last-child,
    [data-po-items-table] td:last-child{padding-top:4px!important;}

    [data-pr-items-table] td:last-child::before,
    [data-po-items-table] td:last-child::before{
        content:""!important;
        display:none!important;
    }

    [data-pr-items-table] td:last-child .button,
    [data-po-items-table] td:last-child .button{
        width:100%!important;
        min-height:40px!important;
        justify-content:center!important;
    }

    [data-pr-items-table] .input,
    [data-pr-items-table] .select,
    [data-pr-items-table] .core-select,
    [data-pr-items-table] .core-select-display,
    [data-pr-items-table] .core-select-control,
    [data-po-items-table] .input,
    [data-po-items-table] .select,
    [data-po-items-table] .core-select,
    [data-po-items-table] .core-select-display,
    [data-po-items-table] .core-select-control{
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
        min-height:42px!important;
        font-size:16px!important;
        border-radius:14px!important;
        box-sizing:border-box!important;
    }

    [data-pr-items-table] .form-label.sr-only,
    [data-po-items-table] .form-label.sr-only{
        position:static!important;
        width:auto!important;
        height:auto!important;
        margin:0 0 5px!important;
        padding:0!important;
        overflow:visible!important;
        clip:auto!important;
        white-space:normal!important;
        border:0!important;
        font-size:11px!important;
        font-weight:950!important;
        color:#475569!important;
    }

    /* Prefer CSS ::before label; hide duplicate visible sr-only when data-label exists */
    [data-pr-items-table] td[data-label] > .form-label.sr-only,
    [data-po-items-table] td[data-label] > .form-label.sr-only{
        display:none!important;
    }

    [data-pr-items-table] .material-autofill-meta,
    [data-po-items-table] .material-autofill-meta,
    [data-po-items-table] .po-source-note{
        margin-top:7px!important;
        padding:8px 10px!important;
        border:1px solid #e2e8f0!important;
        border-radius:12px!important;
        background:#fff!important;
        font-size:11.5px!important;
        max-width:100%!important;
    }
}

@media (max-width:520px){
    [data-pr-items-table] tr,
    [data-po-items-table] tr{
        padding:12px!important;
        border-radius:18px!important;
    }
}


/* Phase 4.3.41 ? PR Low Stock Picker */
.pr-low-stock-panel{
    border:1px solid #bfdbfe;
    border-radius:22px;
    background:
        radial-gradient(circle at 0% 0%,rgba(245,158,11,.12),transparent 28%),
        linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);
    box-shadow:0 12px 30px rgba(15,23,42,.06);
    padding:14px;
}
.pr-low-stock-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:14px;
    margin-bottom:12px;
}
.pr-low-stock-kicker{
    display:inline-flex;
    align-items:center;
    min-height:24px;
    border-radius:999px;
    padding:4px 9px;
    background:#fff7ed;
    border:1px solid #fed7aa;
    color:#c2410c;
    font-size:10.5px;
    line-height:1.2;
    font-weight:950;
    text-transform:uppercase;
    letter-spacing:.04em;
}
.pr-low-stock-head h3{
    margin:7px 0 0;
    color:#061b3a;
    font-size:18px;
    line-height:1.2;
    font-weight:950;
}
.pr-low-stock-head p{
    margin:5px 0 0;
    color:#64748b;
    font-size:12.5px;
    line-height:1.55;
    font-weight:750;
}
.pr-low-stock-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:8px;
    flex-wrap:wrap;
}
.pr-low-stock-count{
    display:inline-flex;
    align-items:center;
    min-height:30px;
    border-radius:999px;
    padding:5px 10px;
    background:#eef7ff;
    border:1px solid #bfdbfe;
    color:#0758b8;
    font-size:12px;
    font-weight:950;
    white-space:nowrap;
}
.pr-low-stock-list{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
    gap:10px;
    max-height:320px;
    overflow:auto;
    padding-right:4px;
}
.pr-low-stock-card{
    display:grid;
    gap:10px;
    border:1px solid #dbeafe;
    border-radius:18px;
    background:#fff;
    padding:12px;
    box-shadow:0 6px 18px rgba(15,23,42,.045);
}
.pr-low-stock-card.pr-low-stock-modal-card,
.pr-low-stock-card.pr-ls-pick-card{
    display:flex;
    flex-direction:column;
    align-items:stretch;
}
.pr-low-stock-card-main strong{
    display:block;
    color:#061b3a;
    font-size:14px;
    line-height:1.25;
    font-weight:950;
    overflow-wrap:anywhere;
}
.pr-low-stock-card-main span{
    display:block;
    margin-top:4px;
    color:#64748b;
    font-size:11.5px;
    line-height:1.4;
    font-weight:750;
    overflow-wrap:anywhere;
}
.pr-low-stock-stats{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:7px;
}
.pr-low-stock-stats span{
    min-width:0;
    border:1px solid #e2e8f0;
    border-radius:14px;
    background:#f8fafc;
    padding:7px 8px;
}
.pr-low-stock-stats small{
    display:block;
    color:#64748b;
    font-size:10px;
    line-height:1.15;
    font-weight:900;
}
.pr-low-stock-stats b{
    display:block;
    margin-top:3px;
    color:#0f172a;
    font-size:12px;
    line-height:1.2;
    font-weight:950;
    overflow-wrap:anywhere;
}
.pr-low-stock-card-actions{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:8px;
}
.pr-low-stock-status{
    display:inline-flex;
    align-items:center;
    min-height:26px;
    border-radius:999px;
    padding:5px 9px;
    background:#fff7ed;
    border:1px solid #fed7aa;
    color:#c2410c;
    font-size:11px;
    line-height:1.2;
    font-weight:950;
}
.pr-low-stock-empty{
    border:1px dashed #bfdbfe;
    border-radius:16px;
    background:#fff;
    padding:14px;
    color:#64748b;
    font-size:13px;
    font-weight:800;
    text-align:center;
}
[data-pr-items-table] tr.is-low-stock-added td{
    background:#ecfdf5!important;
    transition:background .3s ease;
}

@media(max-width:760px){
    .pr-low-stock-head{
        display:grid;
    }
    .pr-low-stock-actions{
        justify-content:stretch;
    }
    .pr-low-stock-actions .button,
    .pr-low-stock-count{
        width:100%;
        justify-content:center;
    }
    .pr-low-stock-list{
        grid-template-columns:1fr;
        max-height:none;
        overflow:visible;
        padding-right:0;
    }
    .pr-low-stock-stats{
        grid-template-columns:1fr;
    }
    .pr-low-stock-card-actions{
        display:grid;
        grid-template-columns:1fr;
    }
    .pr-low-stock-card-actions .button{
        width:100%;
    }
}


/* Phase 4.3.42 ? PR Low Stock Picker Modal */
.pr-low-stock-summary .pr-low-stock-head{
    margin-bottom:0;
}
.pr-low-stock-summary-strip{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    margin-top:12px;
}
.pr-low-stock-summary-strip span,
.pr-low-stock-summary-strip strong{
    display:inline-flex;
    align-items:center;
    min-height:28px;
    max-width:320px;
    padding:5px 10px;
    border-radius:999px;
    background:#eef7ff;
    border:1px solid #bfdbfe;
    color:#0758b8;
    font-size:11.5px;
    line-height:1.25;
    font-weight:900;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}
.pr-low-stock-summary-strip strong{
    background:#fff7ed;
    color:#c2410c;
    border-color:#fed7aa;
}
.pr-low-stock-modal{
    position:fixed;
    inset:0;
    z-index:1300;
    display:none;
    align-items:center;
    justify-content:center;
    padding:18px;
}
.pr-low-stock-modal.is-open{
    display:flex;
}
.pr-low-stock-modal-backdrop{
    position:absolute;
    inset:0;
    background:rgba(15,23,42,.58);
    backdrop-filter:blur(4px);
}
.pr-low-stock-modal-panel{
    position:relative;
    z-index:1;
    width:min(1180px,calc(100vw - 28px));
    max-height:min(850px,calc(100vh - 28px));
    display:grid;
    grid-template-rows:auto auto minmax(0,1fr) auto;
    overflow:hidden;
    border:1px solid #bfdbfe;
    border-radius:26px;
    background:#f8fbff;
    box-shadow:0 30px 90px rgba(15,23,42,.30);
}
.pr-low-stock-modal-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:16px;
    padding:18px 20px;
    border-bottom:1px solid rgba(255,255,255,.12);
    background:linear-gradient(135deg,#061b3a 0%,#0b3a6e 55%,#0758b8 100%);
    color:#fff;
}
.pr-low-stock-modal-head .pr-low-stock-kicker{
    background:rgba(255,255,255,.16);
    color:#f8fafc;
    border-color:rgba(255,255,255,.28);
}
.pr-low-stock-modal-head h3{
    margin:8px 0 0;
    color:#fff;
    font-size:22px;
    line-height:1.15;
    font-weight:800;
}
.pr-low-stock-modal-head p{
    margin:6px 0 0;
    color:#e2e8f0;
    font-size:13px;
    line-height:1.5;
    font-weight:600;
}
.pr-low-stock-modal-close{
    width:40px;
    height:40px;
    min-width:40px;
    border:1px solid rgba(255,255,255,.32);
    border-radius:16px;
    display:grid;
    place-items:center;
    background:rgba(255,255,255,.14);
    color:#fff;
    font-size:24px;
    line-height:1;
    font-weight:950;
    cursor:pointer;
}
.pr-low-stock-modal-close:hover,
.pr-low-stock-modal-close:focus-visible{
    outline:none;
    background:#fff;
    color:#07315d;
}
.pr-low-stock-modal-toolbar{
    display:grid;
    grid-template-columns:minmax(220px,1fr) auto auto;
    gap:10px;
    padding:14px 16px;
    border-bottom:1px solid #dbeafe;
    background:#fff;
}
.pr-low-stock-modal-list{
    min-height:0;
    overflow:auto;
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(360px,1fr));
    align-content:start;
    gap:12px;
    padding:16px;
}
.pr-low-stock-modal-card{
    position:relative;
    grid-template-columns:auto minmax(0,1fr);
    align-items:start;
}
.pr-low-stock-modal-card.is-hidden{
    display:none!important;
}
.pr-low-stock-check{
    display:inline-grid;
    place-items:center;
    width:24px;
    height:24px;
    margin-top:2px;
    cursor:pointer;
}
@media (min-width:1101px){
    .pr-low-stock-check{
        grid-row:span 3;
    }
}
.pr-low-stock-check input{
    position:absolute;
    opacity:0;
    pointer-events:none;
}
.pr-low-stock-check span{
    position:relative;
    width:22px;
    height:22px;
    border-radius:8px;
    border:2px solid #93c5fd;
    background:#fff;
    box-shadow:inset 0 0 0 3px #fff;
}
.pr-low-stock-check input:checked + span{
    background:#0758b8;
    border-color:#0758b8;
}
.pr-low-stock-check input:checked + span::after{
    content:"";
    position:absolute;
    left:6px;
    top:2px;
    width:6px;
    height:11px;
    border:solid #fff;
    border-width:0 2.5px 2.5px 0;
    transform:rotate(45deg);
    display:block;
}
.pr-low-stock-modal-card .pr-low-stock-card-main,
.pr-low-stock-modal-card .pr-low-stock-stats,
.pr-low-stock-modal-card .pr-low-stock-card-actions{
    min-width:0;
}
.pr-low-stock-qty{
    width:100%;
    min-height:34px;
    margin-top:5px;
    border-radius:11px;
    font-size:12px;
    font-weight:900;
}
.pr-low-stock-modal-foot{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:14px 16px;
    border-top:1px solid #dbeafe;
    background:#fff;
}
.pr-low-stock-selected-summary{
    color:#475569;
    font-size:13px;
    font-weight:900;
}
.pr-low-stock-selected-summary span{
    color:#0758b8;
    font-size:18px;
    font-weight:950;
}
.pr-low-stock-modal-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:8px;
}

@media(max-width:760px){
    .pr-low-stock-modal{
        padding:8px;
        align-items:stretch;
    }
    .pr-low-stock-modal-panel{
        width:100%;
        max-height:calc(100vh - 16px);
        border-radius:20px;
    }
    .pr-low-stock-modal-head{
        padding:14px;
    }
    .pr-low-stock-modal-head h3{
        font-size:18px;
    }
    .pr-low-stock-modal-toolbar{
        grid-template-columns:1fr;
        padding:12px;
    }
    .pr-low-stock-modal-list{
        grid-template-columns:1fr;
        padding:12px;
    }
    .pr-low-stock-modal-card{
        display:flex!important;
        flex-direction:column!important;
        grid-template-columns:none!important;
    }
    .pr-low-stock-modal-foot{
        display:grid;
        grid-template-columns:1fr;
        padding:12px;
    }
    .pr-low-stock-modal-actions{
        display:grid;
        grid-template-columns:1fr;
        width:100%;
    }
    .pr-low-stock-modal-actions .button{
        width:100%;
    }
}


/* Phase 4.3.43 ? Settings Currency From Master Data */
.settings-currency-select{
    font-weight:850;
}
.settings-master-source-note{
    display:inline-flex!important;
    align-items:center;
    width:max-content;
    max-width:100%;
    margin-top:2px;
    padding:4px 8px;
    border-radius:999px;
    border:1px solid #bfdbfe;
    background:#eef7ff;
    color:#0758b8!important;
    font-size:10.5px!important;
    line-height:1.2!important;
    font-weight:900!important;
}
@media(max-width:700px){
    .settings-master-source-note{
        width:100%;
        justify-content:center;
        border-radius:12px;
        white-space:normal;
        text-align:center;
    }
}


/* Phase 4.3.44 ? Settings Currency Select Visibility Fix
   (campaign / non theme-engine only — theme-engine uses token colors) */
html:not(.theme-engine) .stock-settings-form .settings-field:has(.settings-currency-select){
    position:relative!important;
    z-index:12!important;
    overflow:visible!important;
}

html:not(.theme-engine) .stock-settings-form .settings-section:has(.settings-currency-select),
html:not(.theme-engine) .stock-settings-form .settings-grid:has(.settings-currency-select){
    overflow:visible!important;
}

html:not(.theme-engine) .stock-settings-form .settings-currency-select,
html:not(.theme-engine) .stock-settings-form .settings-field:has(.settings-currency-select) .core-select,
html:not(.theme-engine) .stock-settings-form .settings-field:has(.settings-currency-select) .core-select-display,
html:not(.theme-engine) .stock-settings-form .settings-field:has(.settings-currency-select) .core-select-control{
    width:100%!important;
    min-height:40px!important;
    color:#0f172a!important;
    background:#ffffff!important;
    border-color:#bfdbfe!important;
    font-weight:850!important;
}

html:not(.theme-engine) .stock-settings-form .settings-field:has(.settings-currency-select) .core-select-options,
html:not(.theme-engine) .stock-settings-form .settings-field:has(.settings-currency-select) .core-select-menu,
html:not(.theme-engine) .core-select-options[data-core-select-portal],
html:not(.theme-engine) .core-select-menu[data-core-select-portal]{
    z-index:2200!important;
    color:#0f172a!important;
    background:#ffffff!important;
    border-color:#bfdbfe!important;
    box-shadow:0 18px 46px rgba(15,23,42,.22)!important;
}

html:not(.theme-engine) .stock-settings-form .settings-field:has(.settings-currency-select) .core-select-option,
html:not(.theme-engine) .core-select-options[data-core-select-portal] .core-select-option,
html:not(.theme-engine) .core-select-menu[data-core-select-portal] .core-select-option{
    color:#0f172a!important;
    background:#ffffff!important;
}

html:not(.theme-engine) .stock-settings-form .settings-field:has(.settings-currency-select) .core-select-option:hover,
html:not(.theme-engine) .stock-settings-form .settings-field:has(.settings-currency-select) .core-select-option.is-active,
html:not(.theme-engine) .core-select-options[data-core-select-portal] .core-select-option:hover,
html:not(.theme-engine) .core-select-options[data-core-select-portal] .core-select-option.is-active,
html:not(.theme-engine) .core-select-menu[data-core-select-portal] .core-select-option:hover,
html:not(.theme-engine) .core-select-menu[data-core-select-portal] .core-select-option.is-active{
    color:#07315d!important;
    background:#eef7ff!important;
}

.stock-settings-form .settings-field:has(.settings-currency-select){
    position:relative!important;
    z-index:12!important;
    overflow:visible!important;
}

.stock-settings-form .settings-section:has(.settings-currency-select),
.stock-settings-form .settings-grid:has(.settings-currency-select){
    overflow:visible!important;
}

.stock-settings-form .settings-field:has(.settings-currency-select) .settings-master-source-note{
    position:relative!important;
    z-index:1!important;
}

/* While any core select opens, keep it above settings save bars */
.core-select.is-open,
.core-select.is-focused,
.core-select.open{
    z-index:2200!important;
}

@media(max-width:700px){
    .stock-settings-form .settings-field:has(.settings-currency-select){
        z-index:20!important;
    }
}


/* Phase 4.3.46 ? PR Edit Existing Attachment Delete Fix */
.pr-delete-attachment-form{
    display:none!important;
}
.existing-attachments-card .attachment-actions .button-danger{
    background:#dc2626!important;
    border-color:#dc2626!important;
    color:#fff!important;
}
.existing-attachments-card .attachment-actions .button-danger:hover,
.existing-attachments-card .attachment-actions .button-danger:focus-visible{
    background:#b91c1c!important;
    border-color:#b91c1c!important;
    color:#fff!important;
}


/* Phase 4.3.47 ? PR Attachment Delete Confirm Guard */
.existing-attachments-card .pr-delete-attachment-button{
    position:relative;
}
.existing-attachments-card .pr-delete-attachment-button::before{
    content:"!";
    width:16px;
    height:16px;
    display:inline-grid;
    place-items:center;
    border-radius:999px;
    background:rgba(255,255,255,.22);
    color:#fff;
    font-size:10px;
    font-weight:950;
    line-height:1;
}


/* Phase 4.3.49 ? Login Content Hero Enhancement */
.auth-pro-copy{
    max-width:760px!important;
}

.auth-pro-value-strip{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-top:20px;
    max-width:760px;
}

.auth-pro-value-strip span{
    display:inline-flex;
    align-items:center;
    gap:7px;
    min-height:32px;
    padding:6px 11px;
    border-radius:999px;
    border:1px solid #dbeafe;
    background:rgba(255,255,255,.78);
    color:#475569;
    font-size:12px;
    line-height:1.25;
    font-weight:850;
    box-shadow:0 8px 20px rgba(15,23,42,.045);
}

.auth-pro-value-strip b{
    color:#0758b8;
    font-weight:950;
}

.auth-pro-workflow{
    position:relative;
    z-index:1;
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
    max-width:760px;
    margin-top:24px;
    padding:12px;
    border:1px solid #dbeafe;
    border-radius:24px;
    background:linear-gradient(180deg,rgba(255,255,255,.82),rgba(248,251,255,.92));
    box-shadow:0 14px 34px rgba(15,23,42,.06);
}

.auth-pro-workflow div{
    position:relative;
    min-width:0;
    padding:12px;
    border-radius:18px;
    background:#fff;
    border:1px solid #e2e8f0;
}

.auth-pro-workflow div:not(:last-child)::after{
    content:"?";
    position:absolute;
    right:-13px;
    top:50%;
    transform:translateY(-50%);
    z-index:2;
    display:grid;
    place-items:center;
    width:22px;
    height:22px;
    border-radius:999px;
    background:#0758b8;
    color:#fff;
    font-size:12px;
    font-weight:950;
    box-shadow:0 8px 18px rgba(7,88,184,.18);
}

.auth-pro-workflow span{
    display:inline-grid;
    place-items:center;
    width:30px;
    height:24px;
    border-radius:999px;
    background:#fff7ed;
    color:#c2410c;
    font-size:10.5px;
    font-weight:950;
}

.auth-pro-workflow strong{
    display:block;
    margin-top:8px;
    color:#061b3a;
    font-size:14px;
    line-height:1.2;
    font-weight:950;
}

.auth-pro-workflow small{
    display:block;
    margin-top:4px;
    color:#64748b;
    font-size:11px;
    line-height:1.35;
    font-weight:750;
}

.auth-pro-insight-card{
    position:relative;
    z-index:1;
    display:grid;
    grid-template-columns:minmax(0,1.1fr) minmax(240px,.9fr);
    gap:16px;
    max-width:760px;
    margin-top:18px;
    padding:16px;
    border-radius:26px;
    border:1px solid #dbeafe;
    background:
        radial-gradient(circle at 100% 0%,rgba(245,158,11,.13),transparent 28%),
        linear-gradient(135deg,#ffffff 0%,#f8fbff 100%);
    box-shadow:0 18px 42px rgba(15,23,42,.075);
}

.auth-pro-insight-card > div span{
    display:inline-flex;
    align-items:center;
    min-height:24px;
    padding:4px 9px;
    border-radius:999px;
    background:#eef7ff;
    border:1px solid #bfdbfe;
    color:#0758b8;
    font-size:10.5px;
    line-height:1.2;
    font-weight:950;
    text-transform:uppercase;
    letter-spacing:.05em;
}

.auth-pro-insight-card > div strong{
    display:block;
    margin-top:9px;
    color:#061b3a;
    font-size:18px;
    line-height:1.25;
    font-weight:950;
}

.auth-pro-insight-card > div small{
    display:block;
    margin-top:6px;
    color:#64748b;
    font-size:12.5px;
    line-height:1.55;
    font-weight:750;
}

.auth-pro-insight-card ul{
    list-style:none;
    margin:0;
    padding:0;
    display:grid;
    gap:8px;
}

.auth-pro-insight-card li{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    min-width:0;
    padding:9px 10px;
    border-radius:16px;
    border:1px solid #e2e8f0;
    background:rgba(255,255,255,.78);
}

.auth-pro-insight-card li b{
    display:inline-grid;
    place-items:center;
    min-width:54px;
    min-height:28px;
    border-radius:999px;
    background:#061b3a;
    color:#fff;
    font-size:11px;
    font-weight:950;
}

.auth-pro-insight-card li span{
    min-width:0;
    color:#475569;
    font-size:12px;
    line-height:1.3;
    font-weight:850;
    text-align:right;
}

.auth-pro-security-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
    margin-top:2px;
}

.auth-pro-security-row span{
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:34px;
    padding:6px 8px;
    border-radius:14px;
    border:1px solid #dbeafe;
    background:#ffffff;
    color:#475569;
    font-size:11.5px;
    line-height:1.25;
    font-weight:900;
    text-align:center;
}

@media (max-width:1100px){
    .auth-pro-workflow{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        margin-top:18px!important;
    }

    .auth-pro-workflow div:not(:last-child)::after{
        display:none!important;
    }

    .auth-pro-insight-card{
        grid-template-columns:1fr!important;
    }
}

@media (max-width:640px){
    .auth-pro-value-strip{
        display:grid!important;
        grid-template-columns:1fr!important;
        margin-top:14px!important;
    }

    .auth-pro-value-strip span{
        width:100%!important;
        justify-content:flex-start!important;
        border-radius:16px!important;
    }

    .auth-pro-workflow{
        grid-template-columns:1fr!important;
        padding:10px!important;
        border-radius:20px!important;
    }

    .auth-pro-workflow div{
        display:grid!important;
        grid-template-columns:40px minmax(0,1fr)!important;
        align-items:center!important;
        column-gap:10px!important;
        padding:10px!important;
    }

    .auth-pro-workflow span{
        grid-row:span 2!important;
        margin:0!important;
    }

    .auth-pro-workflow strong{
        margin-top:0!important;
    }

    .auth-pro-insight-card{
        padding:12px!important;
        border-radius:20px!important;
    }

    .auth-pro-insight-card li{
        display:grid!important;
        grid-template-columns:56px minmax(0,1fr)!important;
    }

    .auth-pro-security-row{
        grid-template-columns:1fr!important;
    }
}


/* Phase 4.3.50 ? Google Login OAuth Button */
.auth-pro-divider{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:24px;
    color:#64748b;
    font-size:12px;
    font-weight:900;
}
.auth-pro-divider::before{
    content:"";
    position:absolute;
    left:0;
    right:0;
    top:50%;
    height:1px;
    background:#dbeafe;
}
.auth-pro-divider span{
    position:relative;
    z-index:1;
    padding:0 10px;
    background:rgba(255,255,255,.92);
}
.auth-pro-google-button{
    min-height:46px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    border:1px solid #cbd5e1;
    border-radius:16px;
    background:#ffffff;
    color:#334155;
    text-decoration:none;
    font-size:14px;
    line-height:1.2;
    font-weight:900;
    box-shadow:0 10px 22px rgba(15,23,42,.055);
    transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
.auth-pro-google-button:hover,
.auth-pro-google-button:focus-visible{
    color:#0f172a;
    border-color:#93c5fd;
    box-shadow:0 14px 28px rgba(15,23,42,.10);
    transform:translateY(-1px);
    outline:none;
}
.auth-pro-google-mark{
    width:25px;
    height:25px;
    min-width:25px;
    display:grid;
    place-items:center;
    border-radius:999px;
    background:
        conic-gradient(from 0deg,#4285f4 0 25%,#34a853 0 50%,#fbbc05 0 75%,#ea4335 0 100%);
    color:#fff;
    font-size:14px;
    font-weight:950;
    box-shadow:inset 0 0 0 3px rgba(255,255,255,.72);
}
@media(max-width:640px){
    .auth-pro-google-button{
        min-height:44px;
        font-size:13px;
    }
}


/* Phase 4.3.51 ? Core Multilanguage */
.stock-language-switcher{
    position:relative;
    z-index:50;
}
.stock-language-button{
    min-width:54px;
    height:42px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:6px;
    border:1px solid var(--line);
    border-radius:15px;
    background:var(--paper);
    color:#334155;
    box-shadow:var(--shadow-sm);
    cursor:pointer;
    font-weight:950;
}
.stock-language-flag{
    width:20px;
    height:14px;
    border-radius:3px;
    overflow:hidden;
    box-shadow:0 0 0 1px rgba(15,23,42,.08);
    flex:0 0 auto;
    object-fit:cover;
    display:block;
}
.stock-language-code{
    font-size:11px;
    letter-spacing:.04em;
}
.stock-language-menu{
    position:absolute;
    right:0;
    top:calc(100% + 10px);
    min-width:178px;
    display:none;
    padding:8px;
    border:1px solid #dbeafe;
    border-radius:18px;
    background:#fff;
    box-shadow:0 22px 55px rgba(15,23,42,.18);
    max-height:min(70vh,560px);
    overflow-y:auto;
}
.stock-language-switcher.is-open .stock-language-menu{
    display:grid;
    gap:4px;
}
.stock-language-option{
    display:flex;
    align-items:center;
    gap:10px;
    min-height:42px;
    padding:8px 10px;
    border-radius:13px;
    color:#475569;
    text-decoration:none;
    font-size:13px;
    font-weight:850;
}
.stock-language-option:hover{
    background:#eef7ff;
    color:#0758b8;
}
.stock-language-option.is-active{
    background:var(--admin-accent, #ff9900)!important;
    background-image:none!important;
    border:1px solid var(--admin-accent, #ff9900)!important;
    color:var(--admin-accent-contrast, #061b3a)!important;
    box-shadow:none!important;
}
.auth-language-switcher{
    position:relative;
    z-index:1;
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-top:10px;
}
.auth-language-switcher a{
    display:inline-flex;
    align-items:center;
    gap:7px;
    min-height:30px;
    padding:5px 10px;
    border-radius:999px;
    border:1px solid #e2e8f0;
    background:#fff;
    color:#475569;
    text-decoration:none;
    font-size:11px;
    font-weight:900;
}
.auth-language-switcher a.is-active{
    background:#fff7ed;
    border-color:#fed7aa;
    color:#c2410c;
}
.auth-language-flag{
    width:18px;
    height:13px;
    border-radius:3px;
    object-fit:cover;
    box-shadow:0 0 0 1px rgba(15,23,42,.08);
    flex:0 0 auto;
}
.language-locale-flag{
    width:22px;
    height:16px;
    border-radius:4px;
    object-fit:cover;
    box-shadow:0 0 0 1px rgba(15,23,42,.08);
    flex:0 0 auto;
}
@media(max-width:760px){
    .stock-language-code{display:none}
    .stock-language-button{min-width:42px;width:42px}
    .stock-language-menu{right:-56px}
}


/* Phase 4.3.52 ? Language Import Manager */
.settings-action-buttons{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:10px;
    flex-wrap:wrap;
}
.language-import-cta{
    text-decoration:none!important;
}
.language-import-page{
    display:grid;
    gap:18px;
}
.language-import-hero,
.language-import-card,
.language-import-guide{
    border:1px solid #dbeafe;
    border-radius:24px;
    background:#fff;
    box-shadow:0 12px 30px rgba(15,23,42,.06);
}
.language-import-hero{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    padding:18px;
    background:
        radial-gradient(circle at 100% 0%,rgba(245,158,11,.12),transparent 32%),
        linear-gradient(135deg,#ffffff 0%,#f8fbff 100%);
}
.language-import-kicker{
    display:inline-flex;
    align-items:center;
    min-height:26px;
    border-radius:999px;
    padding:5px 10px;
    background:#eef7ff;
    border:1px solid #bfdbfe;
    color:#0758b8;
    font-size:11px;
    font-weight:950;
    text-transform:uppercase;
    letter-spacing:.04em;
}
.language-import-hero h2{
    margin:8px 0 0;
    color:#061b3a;
    font-size:28px;
    line-height:1.12;
    font-weight:950;
}
.language-import-hero p,
.language-import-card p{
    margin:6px 0 0;
    color:#64748b;
    font-size:13px;
    line-height:1.55;
    font-weight:750;
}
.language-import-grid{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(300px,.7fr);
    gap:16px;
}
.language-import-card{
    padding:18px;
}
.language-import-card h3,
.language-import-guide h3{
    margin:0;
    color:#061b3a;
    font-size:18px;
    font-weight:950;
}
.language-import-option{
    margin:14px 0;
}
.language-locale-list{
    display:grid;
    gap:10px;
    margin-top:14px;
}
.language-locale-item{
    display:flex;
    align-items:center;
    gap:10px;
    padding:10px;
    border:1px solid #e2e8f0;
    border-radius:16px;
    background:#f8fafc;
}
.language-locale-flag{
    width:38px;
    height:38px;
    display:grid;
    place-items:center;
    border-radius:14px;
    background:#fff;
    border:1px solid #dbeafe;
    font-size:20px;
}
.language-locale-item strong{
    display:block;
    color:#061b3a;
    font-size:14px;
    font-weight:950;
}
.language-locale-item small{
    display:block;
    color:#64748b;
    font-size:12px;
    font-weight:800;
}
.language-import-guide{
    padding:18px;
}
.language-guide-cols{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
    margin-top:12px;
}
.language-guide-cols strong{
    display:block;
    margin-bottom:7px;
    color:#334155;
    font-size:13px;
    font-weight:950;
}
.language-guide-cols pre{
    margin:0;
    min-height:120px;
    overflow:auto;
    padding:12px;
    border-radius:16px;
    border:1px solid #e2e8f0;
    background:#0f172a;
    color:#e2e8f0;
    font-size:12px;
    line-height:1.45;
}
@media(max-width:900px){
    .language-import-hero,
    .language-import-grid,
    .language-guide-cols{
        grid-template-columns:1fr;
        display:grid;
    }
    .language-import-hero .button{
        width:100%;
    }
    .settings-action-buttons{
        justify-content:stretch;
    }
    .settings-action-buttons .btn{
        width:100%;
        text-align:center;
    }
}


/* Phase 4.3.54 ? Language Display Toggle Manager */
.language-manager-card{
    min-width:0;
}
.language-manager-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
    margin-bottom:12px;
}
.language-manager-head p{
    margin:6px 0 0;
    color:#64748b;
    font-size:12px;
    line-height:1.45;
    font-weight:750;
}
.language-manager-count{
    display:inline-flex;
    align-items:center;
    min-height:30px;
    padding:5px 10px;
    border-radius:999px;
    background:#eef7ff;
    border:1px solid #bfdbfe;
    color:#0758b8;
    font-size:12px;
    font-weight:950;
    white-space:nowrap;
}
.language-toggle-list{
    max-height:520px;
    overflow:auto;
    padding-right:4px;
}
.language-toggle-item{
    display:grid!important;
    grid-template-columns:34px minmax(0,1fr) auto auto;
    align-items:center;
    gap:10px;
}
.language-toggle-item.is-inactive{
    opacity:.68;
    background:#f8fafc;
}
.language-toggle-main{
    min-width:0;
}
.language-toggle-main strong,
.language-toggle-main small{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.language-toggle-state{
    display:flex;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:5px;
}
.language-state-pill{
    display:inline-flex;
    align-items:center;
    min-height:24px;
    padding:4px 8px;
    border-radius:999px;
    font-size:10.5px;
    line-height:1.1;
    font-weight:950;
    white-space:nowrap;
}
.language-state-pill.on{
    background:#dcfce7;
    color:#15803d;
    border:1px solid #bbf7d0;
}
.language-state-pill.off{
    background:#f1f5f9;
    color:#64748b;
    border:1px solid #e2e8f0;
}
.language-state-pill.default{
    background:#fff7ed;
    color:#c2410c;
    border:1px solid #fed7aa;
}
.language-toggle-form{
    margin:0;
}
.language-toggle-form .button,
.language-toggle-item > .button[disabled]{
    min-width:96px;
    justify-content:center;
}
@media(max-width:760px){
    .language-toggle-item{
        grid-template-columns:34px minmax(0,1fr)!important;
    }
    .language-toggle-state,
    .language-toggle-form,
    .language-toggle-item > .button[disabled]{
        grid-column:1 / -1;
        justify-content:stretch;
        width:100%;
    }
    .language-toggle-state .language-state-pill,
    .language-toggle-form .button,
    .language-toggle-item > .button[disabled]{
        width:100%;
        justify-content:center;
    }
}


/* Phase 4.3.55 ? Language JSON/CSV Editor */
.language-editor-panel{
    border:1px solid #dbeafe;
    border-radius:24px;
    background:#fff;
    box-shadow:0 12px 30px rgba(15,23,42,.06);
    padding:18px;
}
.language-editor-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:16px;
    margin-bottom:14px;
}
.language-editor-head h3{
    margin:8px 0 0;
    color:#061b3a;
    font-size:20px;
    line-height:1.2;
    font-weight:950;
}
.language-editor-head p{
    margin:6px 0 0;
    color:#64748b;
    font-size:13px;
    line-height:1.55;
    font-weight:750;
}
.language-editor-actions,
.language-editor-toolbar-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:8px;
    flex-wrap:wrap;
}
.language-editor-toolbar{
    display:grid;
    grid-template-columns:minmax(180px,.25fr) minmax(220px,.35fr) auto;
    align-items:end;
    gap:12px;
    margin-bottom:12px;
}
.language-editor-textarea{
    width:100%;
    min-height:340px;
    resize:vertical;
    font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;
    font-size:13px;
    line-height:1.55;
    white-space:pre;
    overflow:auto;
    color:#0f172a;
}
@media(max-width:900px){
    .language-editor-head,
    .language-editor-toolbar{
        display:grid;
        grid-template-columns:1fr;
    }
    .language-editor-actions,
    .language-editor-toolbar-actions{
        justify-content:stretch;
    }
    .language-editor-actions .button,
    .language-editor-toolbar-actions .button{
        width:100%;
    }
}


/* Phase 4.3.58 ? Language Full Workbench */
.language-workbench-hero{
    align-items:flex-start;
}
.language-workbench-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:8px;
    flex-wrap:wrap;
}
.language-kpi-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
}
.language-kpi-card{
    border:1px solid #dbeafe;
    border-radius:20px;
    background:#fff;
    padding:14px;
    box-shadow:0 10px 26px rgba(15,23,42,.055);
}
.language-kpi-card span{
    display:block;
    color:#64748b;
    font-size:11px;
    font-weight:950;
    text-transform:uppercase;
    letter-spacing:.05em;
}
.language-kpi-card strong{
    display:block;
    margin-top:5px;
    color:#061b3a;
    font-size:28px;
    line-height:1;
    font-weight:950;
}
.language-kpi-card small{
    display:block;
    margin-top:5px;
    color:#64748b;
    font-size:12px;
    font-weight:800;
}
.language-workbench-tabs{
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    padding:8px;
    border:1px solid #dbeafe;
    border-radius:20px;
    background:#fff;
    box-shadow:0 10px 26px rgba(15,23,42,.045);
}
.language-workbench-tabs button{
    min-height:38px;
    border:1px solid transparent;
    border-radius:14px;
    background:#f8fafc;
    color:#475569;
    padding:8px 12px;
    font-size:12px;
    font-weight:950;
    cursor:pointer;
}
.language-workbench-tabs button.is-active{
    background:#0758b8;
    border-color:#0758b8;
    color:#fff;
}
.language-tab-panel{
    display:none;
}
.language-tab-panel.is-active{
    display:block;
}
.language-matrix-card{
    border:1px solid #dbeafe;
    border-radius:24px;
    background:#fff;
    box-shadow:0 12px 30px rgba(15,23,42,.06);
    padding:18px;
}
.language-mini-check{
    display:inline-flex;
    align-items:center;
    gap:7px;
    min-height:34px;
    padding:6px 10px;
    border:1px solid #e2e8f0;
    border-radius:999px;
    background:#f8fafc;
    color:#475569;
    font-size:12px;
    font-weight:900;
}
.language-matrix-toolbar{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    margin:12px 0;
}
.language-matrix-toolbar .input{
    max-width:520px;
}
.language-new-key-box{
    display:grid;
    grid-template-columns:minmax(240px,.35fr) minmax(0,1fr);
    gap:12px;
    margin:12px 0;
    padding:12px;
    border:1px solid #e2e8f0;
    border-radius:18px;
    background:#f8fafc;
}
.language-new-key-values{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
    gap:8px;
}
.language-matrix-wrap{
    width:100%;
    max-height:68vh;
    overflow:auto;
    border:1px solid #dbeafe;
    border-radius:18px;
    background:#fff;
}
.language-matrix-table{
    min-width:calc(260px + (220px * 8));
    width:100%;
    border-collapse:separate;
    border-spacing:0;
    table-layout:fixed;
}
.language-matrix-table th,
.language-matrix-table td{
    border-bottom:1px solid #e2e8f0;
    border-right:1px solid #e2e8f0;
    padding:8px;
    vertical-align:top;
    background:#fff;
}
.language-matrix-table thead th{
    position:sticky;
    top:0;
    z-index:3;
    background:#061b3a;
    color:#fff;
    font-size:12px;
    font-weight:950;
}
.language-key-col,
.language-key-cell{
    position:sticky;
    left:0;
    z-index:2;
    width:260px;
}
.language-matrix-table thead .language-key-col{
    z-index:4;
}
.language-key-cell{
    background:#f8fbff!important;
}
.language-key-cell code{
    display:block;
    white-space:normal;
    overflow-wrap:anywhere;
    color:#0758b8;
    font-size:12px;
    font-weight:950;
}
.language-th-locale{
    display:flex;
    align-items:center;
    gap:6px;
    white-space:nowrap;
}
.language-action-col,
.language-action-cell{
    width:100px;
}
.language-matrix-input{
    width:100%;
    min-height:56px;
    resize:vertical;
    border:1px solid #cbd5e1;
    border-radius:12px;
    padding:8px 9px;
    background:#fff;
    color:#0f172a;
    font-size:12px;
    line-height:1.4;
}
.language-matrix-input:focus{
    outline:2px solid rgba(7,88,184,.16);
    border-color:#0758b8;
}
.language-empty-cell{
    padding:20px!important;
    text-align:center;
    color:#64748b;
    font-weight:900;
}
.language-locale-edit{
    align-items:stretch!important;
}
.language-locale-edit-grid{
    flex:1;
    min-width:0;
    display:grid;
    grid-template-columns:90px repeat(5,minmax(120px,1fr));
    gap:8px;
}
.language-locale-edit-actions{
    display:grid;
    gap:8px;
    min-width:150px;
}
@media(max-width:1000px){
    .language-kpi-grid,
    .language-new-key-box{
        grid-template-columns:1fr;
    }
    .language-workbench-actions,
    .language-editor-actions{
        justify-content:stretch;
    }
    .language-workbench-actions .button,
    .language-editor-actions .button{
        width:100%;
    }
    .language-locale-edit-grid{
        grid-template-columns:1fr 1fr;
    }
}
@media(max-width:640px){
    .language-kpi-grid,
    .language-locale-edit-grid{
        grid-template-columns:1fr;
    }
    .language-matrix-toolbar{
        display:grid;
    }
    .language-matrix-toolbar .input{
        max-width:none;
    }
}


/* Phase 4.3.59 ? Language Workbench UI/UX Polish */
.language-workbench{
    --lang-primary:#0758b8;
    --lang-primary-2:#063a5a;
    --lang-accent:#f97316;
    --lang-soft:#eef7ff;
    --lang-ink:#061b3a;
    --lang-muted:#64748b;
    --lang-line:#dbeafe;
    gap:18px;
}

.language-workbench .notice{
    border-radius:18px;
}

.language-workbench-hero{
    position:relative;
    overflow:hidden;
    min-height:172px;
    padding:24px!important;
    border:1px solid rgba(191,219,254,.95)!important;
    background:
        radial-gradient(circle at 100% 0%,rgba(249,115,22,.20),transparent 30%),
        radial-gradient(circle at 5% 15%,rgba(7,88,184,.16),transparent 35%),
        linear-gradient(135deg,#ffffff 0%,#f5fbff 52%,#fff7ed 100%)!important;
    box-shadow:0 22px 70px rgba(6,26,61,.10)!important;
}

.language-workbench-hero::before{
    content:"";
    position:absolute;
    inset:auto -80px -120px auto;
    width:280px;
    height:280px;
    border-radius:999px;
    background:linear-gradient(135deg,rgba(7,88,184,.12),rgba(249,115,22,.18));
    filter:blur(4px);
    pointer-events:none;
}

.language-workbench-hero h2{
    margin:10px 0 0!important;
    max-width:680px;
    color:var(--lang-ink)!important;
    font-size:clamp(28px,3.2vw,42px)!important;
    line-height:1.05!important;
    letter-spacing:-.035em;
    font-weight:950!important;
}

.language-workbench-hero p{
    max-width:760px;
    margin-top:10px!important;
    color:#475569!important;
    font-size:14.5px!important;
    line-height:1.75!important;
    font-weight:760!important;
}

.language-hero-chip-row{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:8px;
    margin-top:16px;
}

.language-hero-chip-row span{
    display:inline-flex;
    align-items:center;
    min-height:30px;
    padding:5px 11px;
    border:1px solid rgba(191,219,254,.95);
    border-radius:999px;
    background:rgba(255,255,255,.78);
    color:#0758b8;
    font-size:11.5px;
    line-height:1.2;
    font-weight:950;
    box-shadow:0 8px 18px rgba(15,23,42,.04);
}

.language-hero-visual{
    position:relative;
    z-index:1;
    display:grid;
    grid-template-columns:repeat(3,44px);
    align-items:center;
    justify-content:center;
    gap:8px;
    min-width:188px;
    padding:16px;
    border:1px solid rgba(219,234,254,.95);
    border-radius:28px;
    background:rgba(255,255,255,.76);
    box-shadow:0 18px 45px rgba(15,23,42,.08);
    backdrop-filter:blur(10px);
}

.language-hero-orb{
    width:44px;
    height:44px;
    display:grid;
    place-items:center;
    border-radius:16px;
    background:#f8fafc;
    border:1px solid #dbeafe;
    color:#0758b8;
    font-size:12px;
    font-weight:950;
    box-shadow:0 12px 24px rgba(7,88,184,.08);
}

.language-hero-orb.primary{
    background:linear-gradient(135deg,#063a5a,#0758b8);
    color:#fff;
}

.language-hero-lines{
    grid-column:1/-1;
    display:grid;
    gap:6px;
    margin-top:6px;
}

.language-hero-lines span{
    height:7px;
    border-radius:999px;
    background:linear-gradient(90deg,#dbeafe,#fed7aa);
}

.language-hero-lines span:nth-child(2){width:78%}
.language-hero-lines span:nth-child(3){width:55%}

.language-workbench-actions .button,
.language-editor-actions .button,
.language-editor-toolbar-actions .button{
    border-radius:14px!important;
    min-height:40px;
    font-weight:950!important;
}

.language-kpi-grid{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
}

.language-kpi-card{
    position:relative;
    overflow:hidden;
    border-radius:24px!important;
    padding:18px!important;
    border:1px solid rgba(219,234,254,.95)!important;
    background:
        radial-gradient(circle at 100% 0%,rgba(7,88,184,.08),transparent 32%),
        #fff!important;
    transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}

.language-kpi-card::after{
    content:"";
    position:absolute;
    right:-28px;
    bottom:-32px;
    width:96px;
    height:96px;
    border-radius:999px;
    background:rgba(7,88,184,.055);
}

.language-kpi-card:hover{
    transform:translateY(-2px);
    border-color:#bfdbfe!important;
    box-shadow:0 18px 48px rgba(15,23,42,.09)!important;
}

.language-kpi-card.accent{
    background:
        radial-gradient(circle at 100% 0%,rgba(249,115,22,.12),transparent 34%),
        #fff!important;
}

.language-kpi-card.accent strong{
    color:#ea580c!important;
}

.language-workbench-tabs{
    position:sticky;
    top:88px;
    z-index:20;
    border-radius:24px!important;
    padding:9px!important;
    background:rgba(255,255,255,.92)!important;
    backdrop-filter:blur(12px);
    box-shadow:0 16px 42px rgba(15,23,42,.08)!important;
}

.language-workbench-tabs button{
    min-height:42px!important;
    border-radius:16px!important;
    background:#f8fafc!important;
    color:#475569!important;
    box-shadow:none;
    transition:all .15s ease;
}

.language-workbench-tabs button:hover{
    transform:translateY(-1px);
    background:#eef7ff!important;
    color:#0758b8!important;
}

.language-workbench-tabs button.is-active{
    background:linear-gradient(135deg,#063a5a,#0758b8)!important;
    color:#fff!important;
    box-shadow:0 12px 25px rgba(7,88,184,.24);
}

.language-pro-card,
.language-editor-panel,
.language-import-card,
.language-import-guide{
    border-radius:28px!important;
    border:1px solid rgba(219,234,254,.95)!important;
    box-shadow:0 16px 45px rgba(15,23,42,.07)!important;
}

.language-editor-head{
    align-items:flex-start!important;
    padding-bottom:14px;
    margin-bottom:16px!important;
    border-bottom:1px solid #eef2ff;
}

.language-editor-head h3{
    font-size:22px!important;
    letter-spacing:-.015em;
}

.language-editor-head p{
    max-width:720px;
}

.language-sticky-actions{
    position:sticky;
    top:150px;
    z-index:10;
    padding:8px;
    border:1px solid #e2e8f0;
    border-radius:18px;
    background:rgba(255,255,255,.92);
    box-shadow:0 12px 30px rgba(15,23,42,.08);
    backdrop-filter:blur(12px);
}

.language-search-box{
    flex:1;
    max-width:620px;
}

.language-search-box .input{
    max-width:none!important;
    min-height:44px;
    border-radius:16px!important;
    border-color:#bfdbfe!important;
    background:#fff!important;
    box-shadow:0 8px 18px rgba(15,23,42,.04);
}

.language-search-box small{
    display:block;
    margin-top:5px;
    color:#64748b;
    font-size:11.5px;
    font-weight:800;
}

.language-new-key-box{
    border-radius:22px!important;
    border-color:#dbeafe!important;
    background:
        linear-gradient(135deg,#f8fbff 0%,#fff 100%)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.8);
}

.language-new-key-box .field label,
.language-locale-edit-grid .field label,
.language-editor-toolbar .field label{
    color:#334155;
    font-size:11.5px;
    font-weight:950;
}

.language-matrix-wrap{
    border-radius:22px!important;
    border-color:#bfdbfe!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.8);
}

.language-matrix-table thead th{
    background:linear-gradient(135deg,#061a3d,#0758b8)!important;
    border-right-color:rgba(255,255,255,.16)!important;
    border-bottom-color:#93c5fd!important;
    letter-spacing:.02em;
}

.language-matrix-table th,
.language-matrix-table td{
    border-right-color:#eef2ff!important;
    border-bottom-color:#eef2ff!important;
}

.language-matrix-table tbody tr:hover td{
    background:#f8fbff!important;
}

.language-key-cell{
    box-shadow:10px 0 18px rgba(15,23,42,.035);
}

.language-key-cell code{
    display:inline-flex!important;
    padding:6px 8px;
    border-radius:10px;
    background:#eef7ff;
}

.language-matrix-input{
    min-height:62px!important;
    border-radius:14px!important;
    border-color:#dbeafe!important;
    background:#fff!important;
    transition:border-color .15s ease, box-shadow .15s ease, background .15s ease;
}

.language-matrix-input:hover{
    border-color:#93c5fd!important;
}

.language-matrix-input:focus{
    background:#fbfdff!important;
    box-shadow:0 0 0 4px rgba(7,88,184,.10)!important;
}

.language-action-cell .button-danger{
    border-radius:12px!important;
}

.language-locale-edit{
    border-radius:22px!important;
    background:#fff!important;
    border-color:#e2e8f0!important;
    box-shadow:0 10px 25px rgba(15,23,42,.04);
    transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}

.language-locale-edit:hover{
    transform:translateY(-1px);
    border-color:#bfdbfe!important;
    box-shadow:0 16px 36px rgba(15,23,42,.075);
}

.language-locale-edit.is-inactive{
    background:#f8fafc!important;
    opacity:.82;
}

.language-locale-flag{
    width:34px!important;
    height:24px!important;
    border-radius:7px!important;
}

.language-state-pill{
    border-radius:999px!important;
    font-weight:950!important;
}

.language-state-pill.on{
    background:#ecfdf5!important;
    color:#047857!important;
    border:1px solid #bbf7d0;
}

.language-state-pill.off{
    background:#f1f5f9!important;
    color:#64748b!important;
    border:1px solid #e2e8f0;
}

.language-state-pill.default{
    background:#fff7ed!important;
    color:#c2410c!important;
    border:1px solid #fed7aa;
}

.language-editor-textarea{
    border-radius:18px!important;
    border-color:#bfdbfe!important;
    background:
        linear-gradient(#ffffff,#ffffff) padding-box,
        linear-gradient(135deg,#bfdbfe,#fed7aa) border-box!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.85),0 12px 26px rgba(15,23,42,.045);
}

.language-guide-cols pre{
    border-radius:18px!important;
    background:linear-gradient(135deg,#061a3d,#0f172a)!important;
}

@media(max-width:1180px){
    .language-kpi-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
    .language-hero-visual{
        display:none;
    }
    .language-workbench-hero{
        display:grid!important;
        grid-template-columns:1fr!important;
    }
}

@media(max-width:900px){
    .language-workbench-tabs{
        top:72px;
        overflow:auto;
        flex-wrap:nowrap!important;
        -webkit-overflow-scrolling:touch;
    }
    .language-workbench-tabs button{
        white-space:nowrap;
        flex:0 0 auto;
    }
    .language-sticky-actions{
        position:static;
    }
}

@media(max-width:640px){
    .language-workbench-hero{
        padding:18px!important;
        border-radius:22px!important;
    }
    .language-hero-chip-row{
        display:grid;
        grid-template-columns:1fr 1fr;
    }
    .language-hero-chip-row span{
        justify-content:center;
        border-radius:14px;
        text-align:center;
    }
    .language-kpi-grid{
        grid-template-columns:1fr!important;
    }
    .language-kpi-card strong{
        font-size:24px!important;
    }
    .language-pro-card,
    .language-editor-panel,
    .language-import-card,
    .language-import-guide{
        border-radius:22px!important;
        padding:14px!important;
    }
    .language-matrix-card{
        padding:14px!important;
    }
    .language-matrix-wrap{
        max-height:72vh!important;
    }
    .language-key-col,
    .language-key-cell{
        width:190px!important;
    }
    .language-matrix-table{
        min-width:1100px!important;
    }
    .language-matrix-input{
        min-height:54px!important;
    }
}


/* Phase 4.3.61 ? Language Workbench Width / Overflow UI Fix
   I18N-safe CSS note */
.language-workbench{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow-x:hidden!important;
    box-sizing:border-box!important;
}

.language-workbench *,
.language-workbench *::before,
.language-workbench *::after{
    box-sizing:border-box!important;
}

.language-workbench-hero{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:18px!important;
    padding:22px!important;
    overflow:hidden!important;
}

.language-workbench-hero > div:first-child{
    min-width:0!important;
    max-width:100%!important;
}

.language-workbench-hero h2,
.language-workbench-hero p{
    max-width:760px!important;
    overflow-wrap:anywhere!important;
}

.language-workbench-actions{
    grid-column:1 / -1!important;
    width:100%!important;
    max-width:100%!important;
    justify-content:flex-start!important;
    min-width:0!important;
}

.language-workbench-actions .button{
    flex:0 1 auto!important;
    max-width:100%!important;
    white-space:normal!important;
}

.language-hero-visual{
    width:188px!important;
    min-width:188px!important;
    max-width:188px!important;
}

.language-kpi-grid{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:12px!important;
    overflow:hidden!important;
}

.language-kpi-card{
    min-width:0!important;
    width:100%!important;
    max-width:100%!important;
}

.language-kpi-card small,
.language-kpi-card span{
    overflow-wrap:anywhere!important;
}

.language-workbench-tabs{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    flex-wrap:nowrap!important;
    scrollbar-width:thin;
    -webkit-overflow-scrolling:touch;
}

.language-workbench-tabs button{
    flex:0 0 auto!important;
    white-space:nowrap!important;
}

.language-tab-panel,
.language-pro-card,
.language-matrix-card,
.language-editor-panel,
.language-import-card,
.language-import-guide,
.language-manager-card{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:hidden!important;
}

.language-editor-head{
    min-width:0!important;
}

.language-editor-head > div:first-child{
    min-width:0!important;
}

.language-editor-actions,
.language-editor-toolbar-actions{
    min-width:0!important;
}

.language-matrix-toolbar{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
}

.language-search-box{
    min-width:0!important;
    max-width:620px!important;
}

.language-search-box .input{
    width:100%!important;
}

.language-new-key-box{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    grid-template-columns:minmax(220px,.32fr) minmax(0,1fr)!important;
}

.language-new-key-values{
    min-width:0!important;
    width:100%!important;
    grid-template-columns:repeat(5,minmax(130px,1fr))!important;
    overflow-x:auto!important;
    padding-bottom:2px!important;
}

.language-new-key-values .field{
    min-width:130px!important;
}

.language-matrix-wrap{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:auto!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior:contain!important;
}

.language-matrix-table{
    width:max-content!important;
    min-width:1040px!important;
    max-width:none!important;
    table-layout:fixed!important;
}

.language-matrix-table th,
.language-matrix-table td{
    width:190px!important;
    min-width:190px!important;
    max-width:190px!important;
}

.language-matrix-table .language-key-col,
.language-matrix-table .language-key-cell{
    width:240px!important;
    min-width:240px!important;
    max-width:240px!important;
}

.language-matrix-table .language-action-col,
.language-matrix-table .language-action-cell{
    width:104px!important;
    min-width:104px!important;
    max-width:104px!important;
}

.language-matrix-input{
    width:100%!important;
    max-width:100%!important;
}

.language-locale-list,
.language-toggle-list{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
}

.language-locale-edit{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr) auto auto!important;
    align-items:center!important;
    gap:12px!important;
}

.language-locale-edit-grid{
    min-width:0!important;
    grid-template-columns:90px repeat(5,minmax(105px,1fr))!important;
}

.language-locale-edit-grid .field{
    min-width:0!important;
}

.language-locale-edit-grid .input,
.language-locale-edit-grid .select{
    width:100%!important;
    min-width:0!important;
}

.language-toggle-state,
.language-locale-edit-actions{
    min-width:0!important;
}

.language-editor-toolbar{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    grid-template-columns:minmax(160px,.22fr) minmax(200px,.34fr) minmax(220px,auto)!important;
}

.language-editor-textarea{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
}

.language-guide-cols{
    min-width:0!important;
    width:100%!important;
}

.language-guide-cols pre{
    max-width:100%!important;
    overflow:auto!important;
}

@media(max-width:1280px){
    .language-workbench-hero{
        grid-template-columns:minmax(0,1fr)!important;
    }

    .language-hero-visual{
        display:none!important;
    }

    .language-kpi-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }

    .language-new-key-box{
        grid-template-columns:1fr!important;
    }

    .language-new-key-values{
        grid-template-columns:repeat(5,minmax(150px,1fr))!important;
    }

    .language-locale-edit{
        grid-template-columns:auto minmax(0,1fr)!important;
    }

    .language-toggle-state,
    .language-locale-edit-actions{
        grid-column:2!important;
    }

    .language-locale-edit-grid{
        grid-template-columns:repeat(3,minmax(0,1fr))!important;
    }
}

@media(max-width:900px){
    .language-workbench-hero{
        padding:18px!important;
    }

    .language-workbench-hero h2{
        font-size:clamp(24px,7vw,32px)!important;
    }

    .language-hero-chip-row{
        grid-template-columns:1fr 1fr!important;
        display:grid!important;
    }

    .language-kpi-grid{
        grid-template-columns:1fr 1fr!important;
    }

    .language-editor-head{
        display:grid!important;
        grid-template-columns:1fr!important;
    }

    .language-editor-actions{
        justify-content:stretch!important;
    }

    .language-editor-actions .button{
        width:100%!important;
    }

    .language-matrix-toolbar{
        display:grid!important;
        grid-template-columns:1fr!important;
    }

    .language-search-box{
        max-width:none!important;
    }

    .language-locale-edit{
        grid-template-columns:1fr!important;
    }

    .language-locale-edit > .language-locale-flag{
        margin-bottom:2px!important;
    }

    .language-toggle-state,
    .language-locale-edit-actions{
        grid-column:auto!important;
    }

    .language-locale-edit-grid{
        grid-template-columns:1fr 1fr!important;
    }

    .language-editor-toolbar{
        grid-template-columns:1fr!important;
    }
}

@media(max-width:640px){
    .language-workbench{
        gap:14px!important;
    }

    .language-workbench-hero{
        padding:14px!important;
        border-radius:20px!important;
    }

    .language-hero-chip-row{
        grid-template-columns:1fr!important;
    }

    .language-kpi-grid{
        grid-template-columns:1fr!important;
    }

    .language-workbench-tabs{
        border-radius:18px!important;
        padding:7px!important;
    }

    .language-workbench-tabs button{
        min-height:38px!important;
        padding:7px 10px!important;
        font-size:11.5px!important;
    }

    .language-pro-card,
    .language-matrix-card,
    .language-editor-panel,
    .language-import-card,
    .language-import-guide{
        padding:12px!important;
        border-radius:20px!important;
    }

    .language-new-key-values{
        display:grid!important;
        grid-template-columns:1fr!important;
        overflow:visible!important;
    }

    .language-new-key-values .field{
        min-width:0!important;
    }

    .language-locale-edit-grid{
        grid-template-columns:1fr!important;
    }

    .language-matrix-table{
        min-width:940px!important;
    }

    .language-matrix-table th,
    .language-matrix-table td{
        width:165px!important;
        min-width:165px!important;
        max-width:165px!important;
    }

    .language-matrix-table .language-key-col,
    .language-matrix-table .language-key-cell{
        width:190px!important;
        min-width:190px!important;
        max-width:190px!important;
    }

    .language-matrix-table .language-action-col,
    .language-matrix-table .language-action-cell{
        width:90px!important;
        min-width:90px!important;
        max-width:90px!important;
    }
}


/* Phase 4.3.62 ? Language Translation Card Editor UX Fix
   I18N-safe CSS note */
.language-card-editor{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:visible!important;
}

.language-key-card{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    border:1px solid #dbeafe!important;
    border-radius:22px!important;
    background:
        radial-gradient(circle at 100% 0%,rgba(7,88,184,.055),transparent 26%),
        #fff!important;
    box-shadow:0 12px 28px rgba(15,23,42,.055)!important;
    padding:14px!important;
    transition:border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}

.language-key-card:hover{
    border-color:#bfdbfe!important;
    box-shadow:0 18px 42px rgba(15,23,42,.08)!important;
    transform:translateY(-1px);
}

.language-key-card-head{
    display:flex!important;
    align-items:flex-start!important;
    justify-content:space-between!important;
    gap:12px!important;
    width:100%!important;
    min-width:0!important;
    padding-bottom:12px!important;
    margin-bottom:12px!important;
    border-bottom:1px solid #eef2ff!important;
}

.language-key-title{
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr)!important;
    align-items:center!important;
    gap:8px!important;
    min-width:0!important;
}

.language-key-title code{
    display:block!important;
    min-width:0!important;
    max-width:100%!important;
    padding:7px 10px!important;
    border-radius:12px!important;
    background:#eef7ff!important;
    color:#0758b8!important;
    font-size:13px!important;
    font-weight:950!important;
    line-height:1.35!important;
    overflow-wrap:anywhere!important;
    word-break:break-word!important;
}

.language-key-badge{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:38px!important;
    min-height:28px!important;
    border-radius:999px!important;
    background:linear-gradient(135deg,#063a5a,#0758b8)!important;
    color:#fff!important;
    font-size:10px!important;
    font-weight:950!important;
    letter-spacing:.06em!important;
}

.language-key-meta{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:8px!important;
    flex:0 0 auto!important;
}

.language-missing-pill,
.language-complete-pill{
    display:inline-flex!important;
    align-items:center!important;
    min-height:30px!important;
    padding:5px 10px!important;
    border-radius:999px!important;
    font-size:11.5px!important;
    line-height:1.2!important;
    font-weight:950!important;
    white-space:nowrap!important;
}

.language-missing-pill{
    background:#fff7ed!important;
    border:1px solid #fed7aa!important;
    color:#c2410c!important;
}

.language-complete-pill{
    background:#ecfdf5!important;
    border:1px solid #bbf7d0!important;
    color:#047857!important;
}

.language-key-fields{
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:10px!important;
    width:100%!important;
    min-width:0!important;
}

.language-translation-field{
    display:grid!important;
    gap:7px!important;
    min-width:0!important;
    padding:10px!important;
    border:1px solid #e2e8f0!important;
    border-radius:18px!important;
    background:#f8fafc!important;
}

.language-translation-field.is-missing{
    background:#fff7ed!important;
    border-color:#fed7aa!important;
}

.language-field-label{
    display:flex!important;
    align-items:center!important;
    gap:7px!important;
    min-width:0!important;
    color:#334155!important;
}

.language-field-label .language-locale-flag{
    width:24px!important;
    height:17px!important;
    border-radius:5px!important;
    flex:0 0 auto!important;
}

.language-field-label strong{
    color:#061b3a!important;
    font-size:12px!important;
    font-weight:950!important;
}

.language-field-label small{
    min-width:0!important;
    color:#64748b!important;
    font-size:11px!important;
    font-weight:800!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
}

.language-key-fields .language-matrix-input{
    min-height:86px!important;
    width:100%!important;
    max-width:100%!important;
    resize:vertical!important;
    border-radius:14px!important;
    border-color:#cbd5e1!important;
    background:#fff!important;
    font-size:12.5px!important;
    line-height:1.45!important;
}

.language-key-fields .language-matrix-input:focus{
    border-color:#0758b8!important;
    box-shadow:0 0 0 4px rgba(7,88,184,.11)!important;
}

.language-empty-card{
    display:grid!important;
    place-items:center!important;
    min-height:140px!important;
    border:1px dashed #bfdbfe!important;
    border-radius:22px!important;
    background:#f8fbff!important;
    color:#64748b!important;
    font-weight:950!important;
}

@media(max-width:1400px){
    .language-key-fields{
        grid-template-columns:repeat(3,minmax(0,1fr))!important;
    }
}

@media(max-width:980px){
    .language-key-card-head{
        display:grid!important;
        grid-template-columns:1fr!important;
    }

    .language-key-meta{
        justify-content:flex-start!important;
        flex-wrap:wrap!important;
    }

    .language-key-fields{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
}

@media(max-width:640px){
    .language-key-card{
        padding:12px!important;
        border-radius:18px!important;
    }

    .language-key-title{
        grid-template-columns:1fr!important;
    }

    .language-key-badge{
        width:max-content!important;
    }

    .language-key-meta{
        display:grid!important;
        grid-template-columns:1fr!important;
    }

    .language-key-meta .button{
        width:100%!important;
    }

    .language-key-fields{
        grid-template-columns:1fr!important;
    }

    .language-key-fields .language-matrix-input{
        min-height:74px!important;
    }
}

/* Phase 4.3.63 ? Language Card Editor Pro UX */
.language-card-toolbar{
    align-items:start!important;
    gap:14px!important;
    padding:12px!important;
    border:1px solid #dbeafe!important;
    border-radius:22px!important;
    background:linear-gradient(135deg,#ffffff 0%,#f8fbff 100%)!important;
    box-shadow:0 10px 24px rgba(15,23,42,.045)!important;
}
.language-toolbar-controls{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:8px!important;
    flex-wrap:wrap!important;
    min-width:0!important;
}
.language-namespace-filter{
    min-width:190px!important;
    width:auto!important;
    min-height:40px!important;
    border-radius:14px!important;
    font-weight:900!important;
}
.language-missing-filter{
    min-height:40px!important;
    background:#fff!important;
    border-color:#bfdbfe!important;
}
.language-smart-new-key{
    position:relative!important;
    overflow:hidden!important;
    border-radius:24px!important;
    border:1px solid #bfdbfe!important;
    background:
        radial-gradient(circle at 100% 0%,rgba(249,115,22,.12),transparent 28%),
        linear-gradient(135deg,#ffffff 0%,#f8fbff 100%)!important;
    box-shadow:0 12px 30px rgba(15,23,42,.05)!important;
}
.language-smart-new-key::before{
    content:"NEW KEY";
    position:absolute;
    right:12px;
    top:10px;
    padding:4px 8px;
    border-radius:999px;
    background:#fff7ed;
    color:#c2410c;
    border:1px solid #fed7aa;
    font-size:10px;
    font-weight:950;
    letter-spacing:.05em;
}
.language-card-editor{
    max-height:none!important;
}
.language-key-card{
    position:relative!important;
    isolation:isolate!important;
    border-radius:26px!important;
    padding:16px!important;
    background:
        linear-gradient(135deg,rgba(255,255,255,.98),rgba(248,251,255,.98)) padding-box,
        linear-gradient(135deg,rgba(191,219,254,.85),rgba(254,215,170,.55)) border-box!important;
    border:1px solid transparent!important;
}
.language-key-card::before{
    content:"";
    position:absolute;
    inset:0 auto 0 0;
    width:5px;
    border-radius:26px 0 0 26px;
    background:linear-gradient(180deg,#0758b8,#f97316);
    opacity:.9;
}
.language-key-card.is-collapsed .language-key-fields{
    display:none!important;
}
.language-key-card.is-collapsed{
    padding-bottom:12px!important;
}
.language-key-card-head{
    margin-left:4px!important;
}
.language-key-title{
    grid-template-columns:auto minmax(0,1fr)!important;
}
.language-key-badge{
    min-width:58px!important;
    padding-inline:10px!important;
    background:linear-gradient(135deg,#061a3d,#0758b8)!important;
    box-shadow:0 10px 18px rgba(7,88,184,.18)!important;
}
.language-key-title code{
    background:#fff!important;
    border:1px solid #dbeafe!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.8)!important;
}
.language-key-meta{
    align-items:center!important;
}
.language-card-toggle{
    min-width:62px!important;
}
.language-key-fields{
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    align-items:stretch!important;
}
.language-translation-field{
    position:relative!important;
    border-radius:20px!important;
    background:rgba(255,255,255,.86)!important;
    border-color:#dbeafe!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.8)!important;
    transition:transform .15s ease, border-color .15s ease, box-shadow .15s ease;
}
.language-translation-field:hover{
    transform:translateY(-1px);
    border-color:#93c5fd!important;
    box-shadow:0 12px 22px rgba(15,23,42,.06)!important;
}
.language-translation-field.is-missing{
    border-color:#fed7aa!important;
    background:linear-gradient(135deg,#fff7ed 0%,#ffffff 100%)!important;
}
.language-translation-field.is-missing::after{
    content:attr(data-i18n-label);
    position:absolute;
    top:8px;
    right:8px;
    padding:2px 7px;
    border-radius:999px;
    background:#ffedd5;
    color:#c2410c;
    font-size:10px;
    font-weight:950;
}
.language-field-label{
    padding-right:52px!important;
}
.language-field-label strong{
    min-width:24px!important;
}
.language-key-fields .language-matrix-input{
    min-height:96px!important;
    border:1px solid #dbeafe!important;
    background:#ffffff!important;
    font-weight:750!important;
}
.language-key-fields .language-matrix-input::placeholder{
    color:#94a3b8!important;
    font-weight:800!important;
}
.language-bottom-savebar{
    position:sticky!important;
    bottom:14px!important;
    z-index:15!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    margin-top:16px!important;
    padding:12px 14px!important;
    border:1px solid #bfdbfe!important;
    border-radius:22px!important;
    background:rgba(255,255,255,.92)!important;
    box-shadow:0 18px 45px rgba(15,23,42,.16)!important;
    backdrop-filter:blur(14px)!important;
}
.language-bottom-savebar strong{
    display:block!important;
    color:#061b3a!important;
    font-size:14px!important;
    font-weight:950!important;
}
.language-bottom-savebar small{
    display:block!important;
    margin-top:2px!important;
    color:#64748b!important;
    font-size:12px!important;
    font-weight:800!important;
}
@media(max-width:1400px){
    .language-key-fields{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
}
@media(max-width:980px){
    .language-card-toolbar{display:grid!important;grid-template-columns:1fr!important;}
    .language-toolbar-controls{justify-content:stretch!important;}
    .language-toolbar-controls > *{flex:1 1 180px!important;}
    .language-namespace-filter{width:100%!important;}
    .language-key-fields{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
    .language-bottom-savebar{position:static!important;display:grid!important;grid-template-columns:1fr!important;}
    .language-bottom-savebar .button{width:100%!important;}
}
@media(max-width:640px){
    .language-key-fields{grid-template-columns:1fr!important;}
    .language-key-card{border-radius:20px!important;padding:12px!important;}
    .language-key-card::before{border-radius:20px 0 0 20px!important;}
    .language-toolbar-controls{display:grid!important;grid-template-columns:1fr!important;}
    .language-toolbar-controls > *{width:100%!important;}
    .language-key-title{grid-template-columns:1fr!important;}
    .language-key-badge{width:max-content!important;}
}


/* Phase 4.3.64 ? Roles & Permission UX/UI Pro Polish */
.permission-matrix-form{
    --role-primary:#0758b8;
    --role-primary-deep:#063a5a;
    --role-accent:#f97316;
    --role-ink:#061b3a;
    --role-muted:#64748b;
    --role-line:#dbeafe;
    --role-soft:#eef7ff;
    gap:18px!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:hidden!important;
}

.permission-matrix-form *,
.permission-matrix-form *::before,
.permission-matrix-form *::after{
    box-sizing:border-box!important;
}

.roles-pro-hero{
    position:relative!important;
    overflow:hidden!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto auto!important;
    align-items:center!important;
    gap:18px!important;
    padding:24px!important;
    border:1px solid rgba(191,219,254,.95)!important;
    border-radius:30px!important;
    background:
        radial-gradient(circle at 94% 10%,rgba(249,115,22,.18),transparent 29%),
        radial-gradient(circle at 5% 15%,rgba(7,88,184,.16),transparent 34%),
        linear-gradient(135deg,#ffffff 0%,#f5fbff 54%,#fff7ed 100%)!important;
    box-shadow:0 22px 70px rgba(6,26,61,.10)!important;
}

.roles-pro-hero::before{
    content:"";
    position:absolute;
    right:-100px;
    bottom:-140px;
    width:340px;
    height:340px;
    border-radius:999px;
    background:linear-gradient(135deg,rgba(7,88,184,.12),rgba(249,115,22,.16));
    pointer-events:none;
}

.roles-pro-hero-copy{
    position:relative;
    z-index:1;
    min-width:0!important;
}

.roles-pro-hero .permission-matrix-eyebrow{
    display:inline-flex!important;
    align-items:center!important;
    min-height:28px!important;
    padding:5px 11px!important;
    border:1px solid #bfdbfe!important;
    border-radius:999px!important;
    background:#eef7ff!important;
    color:#0758b8!important;
    font-size:11px!important;
    font-weight:950!important;
    letter-spacing:.06em!important;
}

.roles-pro-hero h3{
    margin:11px 0 0!important;
    max-width:720px!important;
    color:var(--role-ink)!important;
    font-size:clamp(28px,3vw,42px)!important;
    line-height:1.06!important;
    letter-spacing:-.035em!important;
    font-weight:950!important;
}

.roles-pro-hero p{
    max-width:760px!important;
    margin-top:10px!important;
    color:#475569!important;
    font-size:14.5px!important;
    line-height:1.75!important;
    font-weight:760!important;
}

.roles-pro-hero-chips{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:8px;
    margin-top:16px;
}

.roles-pro-hero-chips span{
    display:inline-flex;
    align-items:center;
    min-height:30px;
    padding:5px 11px;
    border:1px solid rgba(191,219,254,.95);
    border-radius:999px;
    background:rgba(255,255,255,.78);
    color:#0758b8;
    font-size:11.5px;
    line-height:1.2;
    font-weight:950;
    box-shadow:0 8px 18px rgba(15,23,42,.04);
}

.roles-pro-hero-visual{
    position:relative;
    z-index:1;
    display:grid;
    grid-template-columns:repeat(2,56px);
    gap:9px;
    padding:14px;
    border:1px solid rgba(219,234,254,.95);
    border-radius:26px;
    background:rgba(255,255,255,.76);
    box-shadow:0 18px 45px rgba(15,23,42,.08);
    backdrop-filter:blur(10px);
}

.roles-pro-node{
    width:56px;
    height:48px;
    display:grid;
    place-items:center;
    border:1px solid #dbeafe;
    border-radius:18px;
    background:#f8fafc;
    color:#0758b8;
    font-size:12px;
    font-weight:950;
}

.roles-pro-node.main{
    background:linear-gradient(135deg,#063a5a,#0758b8);
    color:#fff;
    box-shadow:0 14px 26px rgba(7,88,184,.20);
}

.roles-pro-actions{
    position:relative;
    z-index:2;
    align-self:start;
}

.roles-pro-actions .button{
    min-height:44px!important;
    border-radius:16px!important;
    box-shadow:0 16px 30px rgba(7,88,184,.20);
}

.permission-summary-grid{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:14px!important;
}

.permission-summary-card{
    position:relative!important;
    overflow:hidden!important;
    border:1px solid rgba(219,234,254,.95)!important;
    border-radius:24px!important;
    padding:18px!important;
    background:
        radial-gradient(circle at 100% 0%,rgba(7,88,184,.08),transparent 32%),
        #fff!important;
    box-shadow:0 12px 30px rgba(15,23,42,.055)!important;
    transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}

.permission-summary-card:hover{
    transform:translateY(-2px);
    border-color:#bfdbfe!important;
    box-shadow:0 18px 48px rgba(15,23,42,.09)!important;
}

.permission-summary-card::after{
    content:"";
    position:absolute;
    right:-26px;
    bottom:-30px;
    width:92px;
    height:92px;
    border-radius:999px;
    background:rgba(7,88,184,.055);
}

.permission-summary-card.is-accent{
    background:
        radial-gradient(circle at 100% 0%,rgba(249,115,22,.15),transparent 34%),
        #fff!important;
    border-color:#fed7aa!important;
}

.permission-summary-card span{
    text-transform:uppercase;
    letter-spacing:.05em;
    font-size:11px!important;
    font-weight:950!important;
}

.permission-summary-card strong{
    color:var(--role-ink)!important;
    font-size:30px!important;
    letter-spacing:-.02em;
}

.permission-summary-card.is-accent strong{
    color:#ea580c!important;
}

.permission-toolbar,
.permission-role-legend{
    border:1px solid rgba(219,234,254,.95)!important;
    border-radius:24px!important;
    background:#fff!important;
    box-shadow:0 12px 30px rgba(15,23,42,.055)!important;
}

.permission-toolbar{
    position:sticky;
    top:88px;
    z-index:20;
    backdrop-filter:blur(12px);
    background:rgba(255,255,255,.92)!important;
}

.permission-search-wrap{
    min-width:0!important;
    max-width:680px!important;
}

.permission-search-wrap .input{
    min-height:46px!important;
    border-radius:16px!important;
    border-color:#bfdbfe!important;
    box-shadow:0 8px 18px rgba(15,23,42,.04);
}

.permission-bulk-actions .button,
.permission-module-actions .button{
    border-radius:14px!important;
    min-height:36px!important;
    font-weight:950!important;
}

.permission-role-legend-title{
    display:flex;
    align-items:center;
    gap:8px;
    margin-bottom:12px!important;
    color:#334155!important;
    font-size:13px!important;
    letter-spacing:.02em;
}

.permission-role-legend-title::before{
    content:"";
    width:10px;
    height:10px;
    border-radius:999px;
    background:#0758b8;
    box-shadow:0 0 0 5px rgba(7,88,184,.10);
}

.permission-role-chip-list{
    display:grid!important;
    grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important;
    gap:10px!important;
}

.roles-pro-role-chip{
    position:relative;
    overflow:hidden;
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:10px!important;
    min-width:0!important;
    min-height:74px!important;
    border-radius:20px!important;
    border-color:#dbeafe!important;
    background:
        radial-gradient(circle at 100% 0%,rgba(7,88,184,.08),transparent 30%),
        #fff!important;
    box-shadow:0 8px 20px rgba(15,23,42,.045);
    transition:transform .15s ease, border-color .15s ease, box-shadow .15s ease;
}

.roles-pro-role-chip:hover{
    transform:translateY(-1px);
    border-color:#93c5fd!important;
    box-shadow:0 16px 34px rgba(15,23,42,.08);
}

.roles-pro-role-avatar{
    width:42px;
    height:42px;
    display:grid;
    place-items:center;
    border-radius:16px;
    background:linear-gradient(135deg,#063a5a,#0758b8);
    color:#fff;
    font-size:16px;
    font-weight:950;
    box-shadow:0 12px 22px rgba(7,88,184,.18);
}

.roles-pro-role-text{
    display:grid;
    gap:2px;
    min-width:0;
}

.roles-pro-role-text strong{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    font-size:14px!important;
    font-weight:950!important;
}

.roles-pro-role-text em{
    color:#0758b8;
    font-size:11.5px;
    font-style:normal;
    font-weight:900;
}

.roles-pro-role-action{
    display:inline-flex;
    align-items:center;
    min-height:28px;
    padding:4px 8px;
    border-radius:999px;
    background:#eef7ff;
    color:#0758b8!important;
    font-size:11px!important;
    font-weight:950!important;
    white-space:nowrap;
}

.permission-module-list{
    gap:16px!important;
}

.permission-module-card{
    border-radius:26px!important;
    border:1px solid rgba(219,234,254,.95)!important;
    box-shadow:0 12px 32px rgba(15,23,42,.06)!important;
    overflow:hidden!important;
    transition:border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}

.permission-module-card:hover{
    border-color:#bfdbfe!important;
    box-shadow:0 18px 45px rgba(15,23,42,.085)!important;
}

.permission-module-head{
    padding:16px!important;
    align-items:center!important;
    background:
        linear-gradient(135deg,#f8fbff 0%,#ffffff 100%)!important;
    border-bottom:1px solid #e2e8f0!important;
}

.roles-pro-module-title{
    min-width:0!important;
    align-items:center!important;
}

.roles-pro-module-icon{
    width:42px;
    height:42px;
    display:grid;
    place-items:center;
    border-radius:16px;
    background:#eef7ff;
    border:1px solid #bfdbfe;
    color:#0758b8;
    font-size:12px;
    font-weight:950;
    flex:0 0 auto;
}

.permission-module-title strong{
    color:var(--role-ink)!important;
    font-size:17px!important;
    font-weight:950!important;
}

.permission-module-title small{
    color:#64748b!important;
    font-weight:780!important;
}

.permission-module-caret{
    width:26px;
    height:26px;
    display:grid;
    place-items:center;
    border-radius:10px;
    background:#f1f5f9;
    color:#475569!important;
    transition:transform .15s ease, background .15s ease;
}

.permission-module-card.is-collapsed .permission-module-caret{
    transform:rotate(-90deg)!important;
}

.permission-module-body{
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch!important;
}

.permission-grid{
    grid-template-columns:minmax(280px,1.15fr) repeat(var(--role-count),minmax(120px,1fr))!important;
    min-width:max(860px,100%)!important;
}

.permission-grid-head{
    position:sticky;
    top:0;
    z-index:5;
    background:linear-gradient(135deg,#061a3d,#0758b8)!important;
}

.permission-grid-title,
.permission-grid-role{
    color:#fff!important;
    padding:12px 14px!important;
    letter-spacing:.03em;
}

.permission-grid-row{
    transition:background .12s ease;
}

.permission-grid-row:nth-child(odd){
    background:#ffffff;
}

.permission-grid-row:nth-child(even){
    background:#fbfdff;
}

.permission-grid-row:hover{
    background:#eef7ff!important;
}

.permission-name-cell{
    padding:13px 14px!important;
    min-width:0;
}

.permission-name-cell strong{
    color:var(--role-ink)!important;
    font-size:13.5px!important;
    font-weight:900!important;
}

.permission-name-cell code{
    display:inline-flex;
    max-width:100%;
    overflow-wrap:anywhere;
    padding:3px 7px;
    border-radius:8px;
    background:#eef7ff;
    color:#0758b8;
    font-weight:850;
}

.permission-check-cell{
    min-height:54px!important;
    border-left:1px solid #eaf1fb!important;
}

.permission-switch{
    width:42px!important;
    height:28px!important;
    border-radius:999px!important;
    background:#f8fafc!important;
    transition:background .15s ease,border-color .15s ease,box-shadow .15s ease;
}

.permission-switch::before{
    width:18px!important;
    height:18px!important;
    border-radius:999px!important;
    transform:translateX(-5px);
    transition:transform .16s ease, background .15s ease, clip-path .15s ease;
}

.permission-check-cell input:checked + .permission-switch{
    border-color:#0758b8!important;
    background:linear-gradient(135deg,#063a5a,#0758b8)!important;
    box-shadow:0 8px 18px rgba(7,88,184,.22)!important;
}

.permission-check-cell input:checked + .permission-switch::before{
    transform:translateX(6px);
}

.permission-sticky-save{
    position:sticky!important;
    bottom:16px!important;
    z-index:25!important;
    border-radius:24px!important;
    border:1px solid rgba(191,219,254,.95)!important;
    background:rgba(255,255,255,.94)!important;
    backdrop-filter:blur(14px);
    box-shadow:0 22px 55px rgba(15,23,42,.14)!important;
    padding:16px 18px!important;
}

.permission-sticky-save strong{
    color:var(--role-ink)!important;
    font-size:15px;
    font-weight:950;
}

.permission-sticky-save .button{
    min-height:42px!important;
    border-radius:16px!important;
    box-shadow:0 14px 24px rgba(7,88,184,.18);
}

@media(max-width:1180px){
    .roles-pro-hero{
        grid-template-columns:minmax(0,1fr) auto!important;
    }

    .roles-pro-hero-visual{
        display:none!important;
    }

    .permission-summary-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }

    .permission-toolbar,
    .permission-module-head{
        display:grid!important;
        grid-template-columns:1fr!important;
    }

    .permission-search-wrap{
        max-width:none!important;
        width:100%!important;
    }

    .permission-bulk-actions,
    .permission-module-actions{
        justify-content:flex-start!important;
    }
}

@media(max-width:760px){
    .roles-pro-hero{
        grid-template-columns:1fr!important;
        padding:18px!important;
        border-radius:22px!important;
    }

    .roles-pro-hero h3{
        font-size:clamp(24px,7vw,32px)!important;
    }

    .roles-pro-hero-chips{
        display:grid!important;
        grid-template-columns:1fr 1fr!important;
    }

    .roles-pro-hero-chips span{
        justify-content:center;
        text-align:center;
        border-radius:14px!important;
    }

    .roles-pro-actions .button{
        width:100%!important;
    }

    .permission-summary-grid{
        grid-template-columns:1fr!important;
    }

    .permission-toolbar{
        position:static!important;
    }

    .permission-bulk-actions .button{
        flex:1 1 100%!important;
    }

    .permission-role-chip-list{
        grid-template-columns:1fr!important;
    }

    .roles-pro-role-chip{
        grid-template-columns:auto minmax(0,1fr)!important;
    }

    .roles-pro-role-action{
        grid-column:1 / -1;
        justify-content:center;
    }

    .permission-module-head{
        padding:14px!important;
    }

    .permission-module-actions .button{
        flex:1 1 100%!important;
    }

    .permission-grid{
        grid-template-columns:minmax(220px,1.15fr) repeat(var(--role-count),minmax(96px,1fr))!important;
        min-width:760px!important;
    }

    .permission-sticky-save{
        position:static!important;
        display:grid!important;
    }

    .permission-sticky-save .button{
        width:100%!important;
    }
}


/* Phase 4.3.65 ? Roles Display Review & Compact UX Fix
   I18N-safe CSS note */
.permission-matrix-form{
    gap:14px!important;
    overflow:visible!important;
}

.roles-pro-hero{
    min-height:auto!important;
    padding:18px 20px!important;
    border-radius:24px!important;
    grid-template-columns:minmax(0,1fr) auto auto!important;
}

.roles-pro-hero .permission-matrix-eyebrow{
    min-height:24px!important;
    padding:4px 9px!important;
    font-size:10px!important;
    letter-spacing:.05em!important;
}

.roles-pro-hero h3{
    margin-top:8px!important;
    font-size:clamp(24px,2.15vw,32px)!important;
    line-height:1.12!important;
    letter-spacing:-.025em!important;
    max-width:680px!important;
}

.roles-pro-hero p{
    margin-top:7px!important;
    max-width:720px!important;
    font-size:13px!important;
    line-height:1.62!important;
    font-weight:700!important;
}

.roles-pro-hero-chips{
    gap:6px!important;
    margin-top:11px!important;
}

.roles-pro-hero-chips span{
    min-height:26px!important;
    padding:4px 9px!important;
    font-size:10.5px!important;
}

.roles-pro-hero-visual{
    grid-template-columns:repeat(2,46px)!important;
    gap:7px!important;
    padding:10px!important;
    border-radius:20px!important;
}

.roles-pro-node{
    width:46px!important;
    height:38px!important;
    border-radius:14px!important;
    font-size:10.5px!important;
}

.roles-pro-actions .button{
    min-height:38px!important;
    padding:8px 13px!important;
    border-radius:14px!important;
    font-size:13px!important;
}

.permission-summary-grid{
    gap:10px!important;
}

.permission-summary-card{
    border-radius:20px!important;
    padding:13px 14px!important;
    min-height:92px!important;
}

.permission-summary-card span{
    font-size:10px!important;
}

.permission-summary-card strong{
    font-size:24px!important;
}

.permission-summary-card small{
    font-size:11.5px!important;
    line-height:1.38!important;
}

.permission-toolbar{
    top:78px!important;
    padding:11px 12px!important;
    border-radius:20px!important;
    gap:10px!important;
}

.permission-search-wrap .input{
    min-height:40px!important;
    border-radius:14px!important;
    font-size:13px!important;
}

.permission-bulk-actions{
    gap:6px!important;
}

.permission-bulk-actions .button,
.permission-module-actions .button{
    min-height:32px!important;
    padding:7px 10px!important;
    border-radius:12px!important;
    font-size:12px!important;
    line-height:1.25!important;
}

.permission-role-legend{
    padding:12px!important;
    border-radius:20px!important;
}

.permission-role-legend-title{
    margin-bottom:9px!important;
    font-size:12px!important;
}

.permission-role-chip-list{
    grid-template-columns:repeat(auto-fit,minmax(190px,1fr))!important;
    gap:8px!important;
}

.roles-pro-role-chip{
    min-height:62px!important;
    padding:9px 10px!important;
    border-radius:17px!important;
    gap:8px!important;
}

.roles-pro-role-avatar{
    width:34px!important;
    height:34px!important;
    border-radius:13px!important;
    font-size:13px!important;
}

.roles-pro-role-text strong{
    font-size:12.8px!important;
    line-height:1.28!important;
}

.roles-pro-role-text small,
.roles-pro-role-text em{
    font-size:10.5px!important;
    line-height:1.25!important;
}

.roles-pro-role-action{
    min-height:24px!important;
    padding:3px 7px!important;
    font-size:10px!important;
}

.permission-module-list{
    gap:12px!important;
}

.permission-module-card{
    border-radius:21px!important;
}

.permission-module-head{
    padding:12px 13px!important;
    gap:10px!important;
}

.roles-pro-module-title{
    gap:8px!important;
}

.roles-pro-module-icon{
    width:34px!important;
    height:34px!important;
    border-radius:13px!important;
    font-size:10.5px!important;
}

.permission-module-caret{
    width:23px!important;
    height:23px!important;
    border-radius:9px!important;
    font-size:13px!important;
}

.permission-module-title strong{
    font-size:14.5px!important;
    line-height:1.28!important;
}

.permission-module-title small{
    font-size:11px!important;
    line-height:1.35!important;
}

.permission-module-actions{
    gap:5px!important;
}

.permission-grid{
    grid-template-columns:minmax(260px,1.2fr) repeat(var(--role-count),minmax(104px,1fr))!important;
    min-width:max(760px,100%)!important;
}

.permission-grid-title,
.permission-grid-role{
    padding:9px 10px!important;
    font-size:10.5px!important;
    line-height:1.25!important;
}

.permission-grid-role{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:normal!important;
    word-break:break-word!important;
    text-align:center!important;
}

.permission-name-cell{
    padding:10px 11px!important;
    gap:2px!important;
}

.permission-name-cell strong{
    font-size:12.5px!important;
    line-height:1.32!important;
}

.permission-name-cell small{
    font-size:10.5px!important;
    line-height:1.25!important;
}

.permission-name-cell code{
    padding:2px 6px!important;
    font-size:10.5px!important;
    line-height:1.25!important;
}

.permission-check-cell{
    min-height:46px!important;
}

.permission-switch{
    width:36px!important;
    height:24px!important;
}

.permission-switch::before{
    width:16px!important;
    height:16px!important;
    transform:translateX(-4px)!important;
}

.permission-check-cell input:checked + .permission-switch::before{
    transform:translateX(5px)!important;
}

.permission-sticky-save{
    bottom:12px!important;
    border-radius:20px!important;
    padding:12px 14px!important;
}

.permission-sticky-save strong{
    font-size:13.5px!important;
}

.permission-sticky-save small{
    font-size:11.2px!important;
}

.permission-sticky-save .button{
    min-height:38px!important;
    padding:8px 13px!important;
    font-size:13px!important;
    border-radius:14px!important;
}

/* Prevent translated long labels from breaking the roles page */
.permission-matrix-form .button,
.permission-matrix-form button,
.permission-matrix-form .permission-role-chip,
.permission-matrix-form .permission-module-title{
    max-width:100%!important;
}

.permission-matrix-form .button{
    white-space:normal!important;
    text-align:center!important;
}

.permission-module-body{
    max-width:100%!important;
}

@media(max-width:1180px){
    .roles-pro-hero{
        grid-template-columns:minmax(0,1fr) auto!important;
    }

    .roles-pro-hero-visual{
        display:none!important;
    }

    .permission-toolbar{
        position:static!important;
    }

    .permission-summary-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
}

@media(max-width:760px){
    .roles-pro-hero{
        padding:14px!important;
        border-radius:20px!important;
    }

    .roles-pro-hero h3{
        font-size:23px!important;
    }

    .roles-pro-hero p{
        font-size:12.5px!important;
    }

    .roles-pro-hero-chips{
        grid-template-columns:1fr 1fr!important;
    }

    .permission-summary-grid{
        grid-template-columns:1fr 1fr!important;
    }

    .permission-summary-card{
        min-height:84px!important;
        padding:11px!important;
    }

    .permission-summary-card strong{
        font-size:21px!important;
    }

    .permission-role-chip-list{
        grid-template-columns:1fr!important;
    }

    .roles-pro-role-chip{
        grid-template-columns:auto minmax(0,1fr)!important;
    }

    .roles-pro-role-action{
        grid-column:auto!important;
        font-size:0!important;
        width:28px!important;
        height:28px!important;
        padding:0!important;
        border-radius:999px!important;
    }

    .roles-pro-role-action::before{
        content:"?";
        font-size:12px;
    }

    .permission-module-head{
        padding:11px!important;
    }

    .permission-grid{
        grid-template-columns:minmax(210px,1.2fr) repeat(var(--role-count),minmax(82px,1fr))!important;
        min-width:680px!important;
    }

    .permission-grid-title,
    .permission-grid-role{
        padding:8px!important;
        font-size:10px!important;
    }

    .permission-check-cell{
        min-height:42px!important;
    }

    .permission-sticky-save{
        position:static!important;
    }
}

@media(max-width:520px){
    .roles-pro-hero-chips,
    .permission-summary-grid{
        grid-template-columns:1fr!important;
    }

    .permission-bulk-actions .button,
    .permission-module-actions .button{
        flex:1 1 100%!important;
    }

    .permission-grid{
        min-width:620px!important;
    }
}


/* Phase 4.3.67 ? Roles Recover Clean Layout
   I18N-safe CSS note */
.permission-matrix-form{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow-x:hidden!important;
}

.permission-matrix-form > *{
    max-width:100%!important;
    min-width:0!important;
}

.roles-pro-hero{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:14px!important;
    padding:16px 18px!important;
    border-radius:22px!important;
}

.roles-pro-hero-visual{
    display:none!important;
}

.roles-pro-hero h3{
    font-size:clamp(22px,2vw,30px)!important;
    line-height:1.12!important;
    margin-top:8px!important;
}

.roles-pro-hero p{
    max-width:760px!important;
    font-size:13px!important;
    line-height:1.55!important;
}

.roles-pro-hero-chips{
    gap:6px!important;
    margin-top:10px!important;
}

.roles-pro-hero-chips span{
    min-height:25px!important;
    padding:4px 9px!important;
    font-size:10.5px!important;
}

.permission-summary-grid{
    width:100%!important;
    max-width:100%!important;
    display:grid!important;
    grid-template-columns:repeat(auto-fit,minmax(170px,1fr))!important;
    gap:10px!important;
}

.permission-summary-card{
    min-width:0!important;
    padding:12px 14px!important;
    border-radius:18px!important;
}

.permission-summary-card strong{
    font-size:23px!important;
}

.permission-summary-card span{
    font-size:10px!important;
}

.permission-summary-card small{
    font-size:11px!important;
    line-height:1.35!important;
}

.permission-toolbar,
.permission-role-legend,
.permission-module-card,
.permission-sticky-save{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
}

.permission-toolbar{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:10px!important;
    padding:10px 12px!important;
    border-radius:18px!important;
}

.permission-search-wrap{
    flex:1 1 380px!important;
    min-width:220px!important;
    max-width:620px!important;
}

.permission-search-wrap .input{
    min-height:38px!important;
    font-size:13px!important;
    border-radius:13px!important;
}

.permission-bulk-actions{
    flex:0 1 auto!important;
    display:flex!important;
    flex-wrap:wrap!important;
    justify-content:flex-end!important;
    gap:6px!important;
}

.permission-bulk-actions .button,
.permission-module-actions .button{
    min-height:31px!important;
    padding:6px 9px!important;
    border-radius:11px!important;
    font-size:11.5px!important;
}

.permission-role-legend{
    padding:11px!important;
    border-radius:18px!important;
}

.permission-role-chip-list{
    display:grid!important;
    grid-template-columns:repeat(auto-fit,minmax(180px,1fr))!important;
    gap:8px!important;
}

.roles-pro-role-chip{
    min-width:0!important;
    min-height:58px!important;
    padding:8px 10px!important;
    border-radius:16px!important;
}

.roles-pro-role-avatar{
    width:32px!important;
    height:32px!important;
    border-radius:12px!important;
    font-size:12.5px!important;
}

.roles-pro-role-text strong{
    font-size:12.5px!important;
    line-height:1.25!important;
}

.roles-pro-role-text small,
.roles-pro-role-text em{
    font-size:10.2px!important;
    line-height:1.2!important;
}

.roles-pro-role-action{
    min-height:23px!important;
    padding:3px 7px!important;
    font-size:10px!important;
}

.permission-module-list{
    display:grid!important;
    gap:12px!important;
    width:100%!important;
    max-width:100%!important;
}

.permission-module-card{
    overflow:hidden!important;
    border-radius:20px!important;
}

.permission-module-head{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:10px!important;
    width:100%!important;
    max-width:100%!important;
    padding:11px 12px!important;
}

.permission-module-title{
    min-width:0!important;
    flex:1 1 auto!important;
}

.permission-module-title strong{
    font-size:14px!important;
    line-height:1.25!important;
}

.permission-module-title small{
    font-size:10.5px!important;
    line-height:1.25!important;
}

.roles-pro-module-icon{
    width:32px!important;
    height:32px!important;
    border-radius:12px!important;
    font-size:10px!important;
}

.permission-module-actions{
    flex:0 0 auto!important;
    display:flex!important;
    flex-wrap:wrap!important;
    justify-content:flex-end!important;
    gap:5px!important;
}

/* Matrix: keep existing grid structure, only confine overflow to module body. */
.permission-module-body{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow-x:auto!important;
    overflow-y:visible!important;
    -webkit-overflow-scrolling:touch!important;
    background:#fff!important;
}

.permission-grid{
    width:100%!important;
    min-width:760px!important;
    max-width:none!important;
    grid-template-columns:minmax(240px,1.25fr) repeat(var(--role-count),minmax(96px,1fr))!important;
    background:#fff!important;
}

.permission-grid-head{
    background:linear-gradient(135deg,#061a3d,#0758b8)!important;
}

.permission-grid-title,
.permission-grid-role{
    background:transparent!important;
    color:#fff!important;
    min-height:38px!important;
    padding:8px 10px!important;
    font-size:10.5px!important;
    line-height:1.25!important;
    display:flex!important;
    align-items:center!important;
}

.permission-grid-title{
    justify-content:flex-start!important;
}

.permission-grid-role{
    justify-content:center!important;
    text-align:center!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    word-break:break-word!important;
}

.permission-name-cell{
    padding:9px 10px!important;
    min-width:0!important;
}

.permission-name-cell strong{
    font-size:12px!important;
    line-height:1.28!important;
}

.permission-name-cell small,
.permission-name-cell code{
    font-size:10.2px!important;
    line-height:1.25!important;
}

.permission-check-cell{
    min-height:40px!important;
}

.permission-switch{
    width:34px!important;
    height:22px!important;
}

.permission-switch::before{
    width:14px!important;
    height:14px!important;
    transform:translateX(-4px)!important;
}

.permission-check-cell input:checked + .permission-switch::before{
    transform:translateX(5px)!important;
}

.permission-sticky-save{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:10px!important;
    padding:11px 13px!important;
    border-radius:18px!important;
}

.permission-sticky-save strong{
    font-size:13px!important;
}

.permission-sticky-save small{
    font-size:11px!important;
}

.permission-sticky-save .button{
    min-height:36px!important;
    padding:7px 12px!important;
    font-size:12.5px!important;
    border-radius:13px!important;
}

@media(max-width:1100px){
    .roles-pro-hero{
        grid-template-columns:1fr!important;
    }

    .permission-toolbar{
        display:grid!important;
        grid-template-columns:1fr!important;
    }

    .permission-search-wrap{
        max-width:none!important;
        min-width:0!important;
        width:100%!important;
    }

    .permission-bulk-actions,
    .permission-module-actions{
        justify-content:flex-start!important;
    }

    .permission-module-head{
        display:grid!important;
        grid-template-columns:1fr!important;
    }

    .permission-grid{
        min-width:700px!important;
        grid-template-columns:minmax(220px,1.25fr) repeat(var(--role-count),minmax(86px,1fr))!important;
    }
}

@media(max-width:760px){
    .roles-pro-hero{
        padding:13px!important;
        border-radius:18px!important;
    }

    .roles-pro-hero h3{
        font-size:22px!important;
    }

    .roles-pro-hero-chips{
        display:grid!important;
        grid-template-columns:1fr 1fr!important;
    }

    .permission-summary-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }

    .permission-role-chip-list{
        grid-template-columns:1fr!important;
    }

    .permission-grid{
        min-width:620px!important;
        grid-template-columns:minmax(190px,1.25fr) repeat(var(--role-count),minmax(76px,1fr))!important;
    }

    .permission-grid-title,
    .permission-grid-role{
        font-size:9.8px!important;
        min-height:35px!important;
        padding:7px!important;
    }

    .permission-name-cell{
        padding:8px!important;
    }

    .permission-check-cell{
        min-height:38px!important;
    }

    .permission-sticky-save{
        position:static!important;
        display:grid!important;
        grid-template-columns:1fr!important;
    }

    .permission-sticky-save .button{
        width:100%!important;
    }
}

@media(max-width:520px){
    .roles-pro-hero-chips,
    .permission-summary-grid{
        grid-template-columns:1fr!important;
    }

    .permission-bulk-actions .button,
    .permission-module-actions .button{
        flex:1 1 100%!important;
    }
}


/* Phase 4.3.70 ? Roles No Page Overflow Fix
   I18N-safe CSS note */
html,
body{
    max-width:100%;
    overflow-x:hidden;
}

.app-shell,
.app-main,
.app-content,
.main-content,
.page-content,
.content-wrapper{
    max-width:100%!important;
    min-width:0!important;
}

.permission-matrix-form{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow-x:hidden!important;
}

.permission-matrix-form > *{
    max-width:100%!important;
    min-width:0!important;
}

.permission-module-list,
.permission-module-card,
.permission-module-body{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
}

.permission-module-card{
    overflow:hidden!important;
}

.permission-module-body{
    display:block!important;
    overflow:hidden!important;
    background:#fff!important;
}

/* I18N-safe CSS note */
.permission-grid-scroll{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior-x:contain!important;
    scrollbar-width:thin;
    background:#fff!important;
}

/* I18N-safe CSS note */
.permission-grid-scroll > .permission-grid{
    --permission-name-col:250px;
    --permission-role-col:104px;
    display:grid!important;
    grid-template-columns:var(--permission-name-col) repeat(var(--role-count), var(--permission-role-col))!important;
    width:calc(var(--permission-name-col) + (var(--role-count) * var(--permission-role-col)))!important;
    min-width:100%!important;
    max-width:none!important;
    align-items:stretch!important;
    gap:0!important;
}

.permission-grid-scroll > .permission-grid-head{
    background:#063a5a!important;
    border-bottom:0!important;
}

.permission-grid-scroll > .permission-grid-head > .permission-grid-title,
.permission-grid-scroll > .permission-grid-head > .permission-grid-role{
    min-height:42px!important;
    height:100%!important;
    display:flex!important;
    align-items:center!important;
    padding:8px 10px!important;
    background:linear-gradient(135deg,#06214f 0%,#0a3a85 54%,#0b4ea8 100%)!important;
    color:#fff!important;
    border-right:1px solid rgba(255,255,255,.10)!important;
    box-shadow:none!important;
    font-size:10.5px!important;
    line-height:1.22!important;
    font-weight:850!important;
    text-align:center!important;
    white-space:normal!important;
    word-break:break-word!important;
}

.permission-grid-scroll > .permission-grid-head > .permission-grid-title{
    justify-content:flex-start!important;
    text-align:left!important;
    font-weight:950!important;
}

.permission-grid-scroll > .permission-grid-head > .permission-grid-role{
    justify-content:center!important;
}

.permission-grid-scroll > .permission-grid-row{
    border-bottom:1px solid #eef2f7!important;
    background:#fff!important;
}

.permission-grid-scroll > .permission-grid-row:nth-child(odd){
    background:#fff!important;
}

.permission-grid-scroll > .permission-grid-row:nth-child(even){
    background:#fbfdff!important;
}

.permission-grid-scroll > .permission-grid-row:hover > *{
    background:#eef7ff!important;
}

.permission-grid-scroll .permission-name-cell,
.permission-grid-scroll .permission-check-cell{
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    border-bottom:0!important;
}

.permission-grid-scroll .permission-name-cell{
    position:static!important;
    display:grid!important;
    align-content:center!important;
    padding:9px 10px!important;
    border-right:1px solid #e6eef8!important;
    background:inherit!important;
}

.permission-grid-scroll .permission-check-cell{
    min-height:40px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    border-left:0!important;
    border-right:1px solid #eef2f7!important;
    background:inherit!important;
}

.permission-grid-scroll .permission-name-cell strong{
    font-size:12px!important;
    line-height:1.28!important;
}

.permission-grid-scroll .permission-name-cell small,
.permission-grid-scroll .permission-name-cell code{
    font-size:10.2px!important;
    line-height:1.25!important;
}

.permission-grid-scroll .permission-switch{
    width:34px!important;
    height:22px!important;
}

.permission-grid-scroll .permission-switch::before{
    width:14px!important;
    height:14px!important;
}

/* I18N-safe CSS note */
.permission-module-actions,
.permission-bulk-actions,
.permission-role-chip-list{
    max-width:100%!important;
    min-width:0!important;
    overflow:hidden!important;
}

.permission-module-actions{
    display:flex!important;
    flex-wrap:wrap!important;
    justify-content:flex-end!important;
}

.permission-module-actions .button{
    flex:0 1 auto!important;
    max-width:180px!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
}

/* I18N-safe CSS note */
.roles-pro-hero,
.permission-summary-grid,
.permission-toolbar,
.permission-role-legend,
.permission-sticky-save{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
}

.roles-pro-hero{
    grid-template-columns:minmax(0,1fr) auto!important;
}

.roles-pro-hero-visual{
    display:none!important;
}

.permission-summary-grid{
    grid-template-columns:repeat(auto-fit,minmax(170px,1fr))!important;
}

@media(max-width:1180px){
    .permission-grid-scroll > .permission-grid{
        --permission-name-col:220px;
        --permission-role-col:92px;
    }

    .permission-module-actions{
        justify-content:flex-start!important;
    }

    .permission-module-actions .button{
        max-width:160px!important;
    }

    .roles-pro-hero{
        grid-template-columns:1fr!important;
    }
}

@media(max-width:760px){
    .permission-grid-scroll > .permission-grid{
        --permission-name-col:190px;
        --permission-role-col:78px;
    }

    .permission-grid-scroll > .permission-grid-head > .permission-grid-title,
    .permission-grid-scroll > .permission-grid-head > .permission-grid-role{
        min-height:38px!important;
        padding:7px 8px!important;
        font-size:9.8px!important;
    }

    .permission-module-actions .button{
        flex:1 1 calc(50% - 6px)!important;
        max-width:none!important;
    }

    .permission-summary-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
}

@media(max-width:520px){
    .permission-summary-grid{
        grid-template-columns:1fr!important;
    }

    .permission-module-actions .button{
        flex:1 1 100%!important;
    }
}

/* Phase 4.3.71 ? Roles Permission Card Layout Fix
   I18N-safe CSS note */
.permission-module-body.permission-card-body{
    display:block!important;
    overflow:visible!important;
    background:#fff!important;
}
.permission-card-list{
    display:grid!important;
    gap:10px!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    padding:12px!important;
}
.permission-card-row{
    display:grid!important;
    grid-template-columns:minmax(220px,.38fr) minmax(0,1fr)!important;
    gap:12px!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    padding:12px!important;
    border:1px solid #e2e8f0!important;
    border-radius:18px!important;
    background:#fff!important;
    box-shadow:0 6px 18px rgba(15,23,42,.035)!important;
}
.permission-card-row:hover{
    border-color:#bfdbfe!important;
    background:#f8fbff!important;
}
.permission-card-info{
    min-width:0!important;
    display:grid!important;
    align-content:start!important;
    gap:6px!important;
}
.permission-card-title-row{
    display:flex!important;
    align-items:flex-start!important;
    justify-content:space-between!important;
    gap:8px!important;
    min-width:0!important;
}
.permission-card-title-row strong{
    min-width:0!important;
    color:#061b3a!important;
    font-size:13px!important;
    line-height:1.35!important;
    font-weight:900!important;
    overflow-wrap:anywhere!important;
}
.permission-card-info code{
    width:max-content!important;
    max-width:100%!important;
    padding:3px 7px!important;
    border-radius:8px!important;
    background:#eef7ff!important;
    color:#0758b8!important;
    font-size:10.5px!important;
    font-weight:850!important;
    overflow-wrap:anywhere!important;
    white-space:normal!important;
}
.permission-card-count{
    flex:0 0 auto!important;
    display:inline-flex!important;
    min-height:24px!important;
    align-items:center!important;
    padding:3px 8px!important;
    border:1px solid #bfdbfe!important;
    border-radius:999px!important;
    background:#eef7ff!important;
    color:#0758b8!important;
    font-size:10.5px!important;
    font-weight:900!important;
    white-space:nowrap!important;
}
.permission-card-roles{
    min-width:0!important;
    display:grid!important;
    grid-template-columns:repeat(auto-fit,minmax(132px,1fr))!important;
    gap:8px!important;
    align-content:start!important;
}
.permission-role-toggle{
    min-width:0!important;
    cursor:pointer!important;
}
.permission-role-toggle input{
    position:absolute!important;
    opacity:0!important;
    pointer-events:none!important;
}
.permission-role-toggle-ui{
    display:flex!important;
    align-items:center!important;
    gap:7px!important;
    min-height:36px!important;
    width:100%!important;
    max-width:100%!important;
    padding:7px 9px!important;
    border:1px solid #dbe4ef!important;
    border-radius:14px!important;
    background:#f8fafc!important;
    color:#475569!important;
    transition:background .15s ease,border-color .15s ease,box-shadow .15s ease,color .15s ease!important;
}
.permission-role-toggle-dot{
    width:18px!important;
    height:18px!important;
    border-radius:999px!important;
    border:1px solid #cbd5e1!important;
    background:#e2e8f0!important;
    flex:0 0 auto!important;
    display:grid!important;
    place-items:center!important;
}
.permission-role-toggle-name{
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    font-size:11.5px!important;
    line-height:1.2!important;
    font-weight:850!important;
}
.permission-role-toggle input:checked + .permission-role-toggle-ui{
    border-color:#0758b8!important;
    background:#eef7ff!important;
    color:#0758b8!important;
    box-shadow:0 8px 18px rgba(7,88,184,.08)!important;
}
.permission-role-toggle input:checked + .permission-role-toggle-ui .permission-role-toggle-dot{
    border-color:#0758b8!important;
    background:#0758b8!important;
}
.permission-role-toggle input:checked + .permission-role-toggle-ui .permission-role-toggle-dot::before{
    content:"\2713"!important;
    color:#fff!important;
    font-size:12px!important;
    font-weight:950!important;
    line-height:1!important;
}
.permission-grid-scroll,
.permission-grid,
.permission-grid-head,
.permission-grid-row{
    max-width:100%!important;
}
@media(max-width:1180px){
    .permission-card-row{
        grid-template-columns:1fr!important;
    }
}
@media(max-width:760px){
    .permission-card-list{
        padding:10px!important;
    }
    .permission-card-row{
        padding:10px!important;
        border-radius:16px!important;
    }
    .permission-card-title-row{
        display:grid!important;
        grid-template-columns:1fr!important;
    }
    .permission-card-count{
        width:max-content!important;
    }
    .permission-card-roles{
        grid-template-columns:1fr!important;
    }
}


/* Phase 4.3.72 ? Sidebar Full Content Height Fix
   I18N-safe CSS note */
@media (min-width: 1025px){
    .stock-layout{
        align-items:stretch!important;
        min-height:100vh!important;
/* I18N-safe CSS note */
        background:
            linear-gradient(90deg,
                #061b3a 0,
                #0b2f63 300px,
                var(--canvas) 300px,
                var(--canvas) 100%)!important;
    }

    .stock-sidebar{
        position:relative!important;
        top:auto!important;
        align-self:stretch!important;
        height:auto!important;
        min-height:100vh!important;
        max-height:none!important;
        overflow:visible!important;
        background:linear-gradient(180deg,#061b3a 0%,#08265a 48%,#061b3a 100%)!important;
        color:#fff!important;
        box-shadow:14px 0 34px rgba(6,27,58,.10)!important;
    }

    .stock-nav{
        overflow:visible!important;
        max-height:none!important;
    }

    .stock-main{
        min-width:0!important;
        width:100%!important;
        max-width:100%!important;
    }

    .stock-page-shell{
        min-width:0!important;
        max-width:1600px!important;
    }
}

/* I18N-safe CSS note */
@media (max-width: 1024px){
    .stock-layout{
        background:var(--canvas)!important;
    }

    .stock-sidebar{
        height:100vh!important;
        max-height:100vh!important;
        overflow:auto!important;
    }
}


/* Phase 4.3.73 ? Roles Simplified UX
   I18N-safe CSS note */
.permission-matrix-form{
    --roles-simple-line:#dbeafe;
    --roles-simple-soft:#f8fbff;
}

.roles-simple-tools{
    align-items:center!important;
    gap:8px!important;
}

.roles-focus-control{
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    min-height:36px!important;
    padding:5px 8px!important;
    border:1px solid #dbeafe!important;
    border-radius:14px!important;
    background:#fff!important;
    color:#334155!important;
    font-size:11.5px!important;
    font-weight:900!important;
}

.roles-focus-control .select{
    min-width:180px!important;
    height:32px!important;
    padding:5px 28px 5px 10px!important;
    border-radius:11px!important;
    font-size:12px!important;
    font-weight:850!important;
}

.roles-compact-check{
    display:inline-flex!important;
    align-items:center!important;
    gap:7px!important;
    min-height:36px!important;
    padding:6px 10px!important;
    border:1px solid #dbeafe!important;
    border-radius:14px!important;
    background:#fff!important;
    color:#334155!important;
    font-size:11.5px!important;
    font-weight:900!important;
    white-space:nowrap!important;
}

.roles-compact-check input{
    width:16px!important;
    height:16px!important;
    accent-color:#0758b8!important;
}

.roles-legend-drawer{
    padding:0!important;
    overflow:hidden!important;
}

.roles-legend-drawer summary{
    list-style:none!important;
    cursor:pointer!important;
    padding:12px 14px!important;
    margin:0!important;
    border-bottom:1px solid transparent!important;
}

.roles-legend-drawer summary::-webkit-details-marker{
    display:none!important;
}

.roles-legend-drawer[open] summary{
    border-bottom-color:#e2e8f0!important;
}

.roles-legend-drawer summary::after{
    content:attr(data-i18n-toggle)!important;
    margin-left:auto!important;
    color:#0758b8!important;
    font-size:11px!important;
    font-weight:900!important;
}

.roles-legend-drawer .permission-role-chip-list{
    padding:12px!important;
}

.permission-module-card.is-collapsed .permission-card-body{
    display:none!important;
}

.permission-module-card.is-collapsed .permission-module-actions-drawer{
    display:none!important;
}

.permission-module-head{
    align-items:flex-start!important;
}

.permission-module-actions-drawer{
    flex:0 1 auto!important;
    min-width:0!important;
    max-width:100%!important;
}

.permission-module-actions-drawer summary{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:32px!important;
    padding:6px 10px!important;
    border:1px solid #bfdbfe!important;
    border-radius:12px!important;
    background:#fff!important;
    color:#0758b8!important;
    font-size:11.5px!important;
    font-weight:950!important;
    cursor:pointer!important;
    list-style:none!important;
}

.permission-module-actions-drawer summary::-webkit-details-marker{
    display:none!important;
}

.permission-module-actions-drawer[open] summary{
    background:#eef7ff!important;
}

.permission-module-actions-drawer .permission-module-actions{
    margin-top:8px!important;
    padding:8px!important;
    border:1px solid #e2e8f0!important;
    border-radius:14px!important;
    background:#fff!important;
    max-height:180px!important;
    overflow:auto!important;
    box-shadow:0 12px 30px rgba(15,23,42,.08)!important;
}

.permission-module-actions-drawer .permission-module-actions .button{
    min-height:28px!important;
    padding:5px 8px!important;
    max-width:150px!important;
    font-size:10.5px!important;
}

.permission-card-list{
    gap:8px!important;
    padding:10px!important;
}

.permission-card-row{
    grid-template-columns:minmax(220px,.34fr) minmax(0,1fr)!important;
    gap:10px!important;
    padding:10px!important;
    border-radius:16px!important;
}

.permission-card-title-row strong{
    font-size:12.5px!important;
}

.permission-card-count{
    min-height:22px!important;
    padding:2px 7px!important;
    font-size:10px!important;
}

.permission-card-roles{
    grid-template-columns:repeat(auto-fit,minmax(116px,1fr))!important;
    gap:6px!important;
}

.permission-role-toggle-ui{
    min-height:32px!important;
    padding:6px 7px!important;
    border-radius:12px!important;
}

.permission-role-toggle-dot{
    width:16px!important;
    height:16px!important;
}

.permission-role-toggle-name{
    font-size:10.8px!important;
}

.permission-role-toggle.is-focused-role .permission-role-toggle-ui{
    border-color:#0758b8!important;
    box-shadow:0 0 0 3px rgba(7,88,184,.08)!important;
}

.permission-sticky-save{
    padding:10px 12px!important;
}

@media(max-width:1100px){
    .roles-simple-tools{
        justify-content:flex-start!important;
    }
    .roles-focus-control,
    .roles-compact-check{
        width:100%!important;
        justify-content:space-between!important;
    }
    .roles-focus-control .select{
        flex:1!important;
        min-width:0!important;
    }
    .permission-module-head{
        display:grid!important;
        grid-template-columns:1fr!important;
    }
    .permission-module-actions-drawer{
        width:100%!important;
    }
}

@media(max-width:760px){
    .permission-card-row{
        grid-template-columns:1fr!important;
    }
    .permission-card-roles{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
}

@media(max-width:520px){
    .permission-card-roles{
        grid-template-columns:1fr!important;
    }
}


/* Phase 4.3.74 ? Roles Selector UI Polish
   I18N-safe CSS note */
.roles-selector-panel{
    border-radius:20px!important;
    border:1px solid #dbeafe!important;
    background:#fff!important;
    box-shadow:0 10px 26px rgba(15,23,42,.045)!important;
    overflow:hidden!important;
}

.roles-selector-panel .permission-role-legend-title{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    min-height:48px!important;
    padding:11px 14px!important;
    margin:0!important;
    color:#061b3a!important;
    font-size:13px!important;
    font-weight:950!important;
    background:linear-gradient(135deg,#f8fbff 0%,#ffffff 100%)!important;
    border-bottom:1px solid #eaf1fb!important;
}

.roles-selector-panel .permission-role-legend-title::before{
    content:""!important;
    width:10px!important;
    height:10px!important;
    border-radius:999px!important;
    background:#0758b8!important;
    box-shadow:0 0 0 5px rgba(7,88,184,.10)!important;
    flex:0 0 auto!important;
}

.roles-selector-panel .permission-role-legend-title span{
    display:inline-flex!important;
    align-items:center!important;
    gap:8px!important;
    min-width:0!important;
}

.roles-selector-panel .permission-role-legend-title small{
    min-width:0!important;
    color:#64748b!important;
    font-size:11.5px!important;
    font-weight:800!important;
    line-height:1.35!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
}

.roles-selector-panel .permission-role-legend-title::after{
    content:attr(data-i18n-toggle)!important;
    margin-left:0!important;
    color:#0758b8!important;
    font-size:11px!important;
    font-weight:950!important;
    white-space:nowrap!important;
}

.roles-selector-panel[open] .permission-role-legend-title{
    border-bottom-color:#dbeafe!important;
}

.roles-selector-grid{
    display:grid!important;
    grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important;
    gap:8px!important;
    padding:10px!important;
    background:#fbfdff!important;
}

.roles-selector-chip{
    display:grid!important;
    grid-template-columns:34px minmax(0,1fr) 28px!important;
    align-items:center!important;
    gap:8px!important;
    min-height:58px!important;
    padding:9px 10px!important;
    border-radius:16px!important;
    border:1px solid #dbeafe!important;
    background:#fff!important;
    box-shadow:none!important;
    transition:border-color .15s ease, background .15s ease, transform .15s ease!important;
}

.roles-selector-chip:hover{
    transform:translateY(-1px)!important;
    border-color:#93c5fd!important;
    background:#f8fbff!important;
    box-shadow:0 10px 24px rgba(15,23,42,.06)!important;
}

.roles-selector-chip .roles-pro-role-avatar{
    width:34px!important;
    height:34px!important;
    border-radius:13px!important;
    font-size:12px!important;
    background:linear-gradient(135deg,#063a5a,#0758b8)!important;
    box-shadow:0 8px 16px rgba(7,88,184,.16)!important;
}

.roles-selector-chip .roles-pro-role-text{
    display:grid!important;
    gap:2px!important;
    min-width:0!important;
}

.roles-selector-chip .roles-pro-role-text strong{
    max-width:100%!important;
    color:#061b3a!important;
    font-size:12.5px!important;
    line-height:1.2!important;
    font-weight:950!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
}

.roles-selector-chip .roles-pro-role-text small{
    color:#64748b!important;
    font-size:10px!important;
    line-height:1.15!important;
    font-weight:750!important;
}

.roles-selector-chip .roles-pro-role-text em{
    color:#0758b8!important;
    font-size:10.5px!important;
    line-height:1.15!important;
    font-style:normal!important;
    font-weight:900!important;
}

.roles-selector-progress{
    width:100%!important;
    height:5px!important;
    border-radius:999px!important;
    background:#eaf1fb!important;
    overflow:hidden!important;
    margin-top:2px!important;
}

.roles-selector-progress span{
    display:block!important;
    height:100%!important;
    border-radius:999px!important;
    background:linear-gradient(90deg,#0758b8,#f97316)!important;
}

.roles-selector-chip .roles-pro-role-action{
    width:28px!important;
    height:28px!important;
    min-height:28px!important;
    padding:0!important;
    display:grid!important;
    place-items:center!important;
    border-radius:999px!important;
    background:#eef7ff!important;
    color:#0758b8!important;
    font-size:12px!important;
    font-weight:950!important;
}

.roles-selector-chip:hover .roles-pro-role-action{
    background:#0758b8!important;
    color:#fff!important;
}

@media(max-width:760px){
    .roles-selector-panel .permission-role-legend-title{
        display:grid!important;
        grid-template-columns:auto minmax(0,1fr) auto!important;
    }

    .roles-selector-panel .permission-role-legend-title small{
        grid-column:2 / 3!important;
        white-space:normal!important;
    }

    .roles-selector-grid{
        grid-template-columns:1fr!important;
    }
}


/* Phase 4.3.75 ? Roles Remove Confusing Role Focus Filter */
.roles-simple-tools{
    justify-content:flex-end!important;
}

.roles-compact-check{
    min-height:34px!important;
    border-radius:999px!important;
    padding:6px 12px!important;
}

@media(max-width:1100px){
    .roles-simple-tools{
        justify-content:flex-start!important;
    }

    .roles-compact-check{
        width:auto!important;
        justify-content:flex-start!important;
    }
}

@media(max-width:640px){
    .roles-compact-check,
    .roles-simple-tools .button{
        width:100%!important;
    }
}


/* Phase 4.3.76 ? Roles Selector Contrast & Readability Fix
   I18N-safe CSS note */
.roles-selector-panel{
    border-color:#c7ddff!important;
    background:#ffffff!important;
    box-shadow:0 12px 30px rgba(15,23,42,.055)!important;
}

.roles-selector-panel .permission-role-legend-title{
    min-height:50px!important;
    background:#ffffff!important;
    color:#061b3a!important;
    border-bottom:1px solid #d9e8ff!important;
}

.roles-selector-panel .permission-role-legend-title::before{
    background:#0b5cad!important;
    box-shadow:0 0 0 5px rgba(11,92,173,.12)!important;
}

.roles-selector-panel .permission-role-legend-title small{
    color:#334155!important;
    font-weight:850!important;
}

.roles-selector-grid{
    background:#f7fbff!important;
    gap:10px!important;
    padding:12px!important;
}

.roles-selector-chip{
    min-height:64px!important;
    padding:10px 12px!important;
    border:1px solid #bcd7ff!important;
    background:#ffffff!important;
    box-shadow:0 8px 18px rgba(15,23,42,.035)!important;
}

.roles-selector-chip:hover{
    border-color:#0758b8!important;
    background:#ffffff!important;
    box-shadow:0 14px 30px rgba(7,88,184,.12)!important;
}

.roles-selector-chip .roles-pro-role-avatar{
    background:#0758b8!important;
    color:#ffffff!important;
    box-shadow:none!important;
}

.roles-selector-chip .roles-pro-role-text strong{
    color:#03152f!important;
    font-size:13px!important;
    font-weight:950!important;
}

.roles-selector-chip .roles-pro-role-text em{
    color:#003f88!important;
    font-size:11px!important;
    font-weight:950!important;
}

/* I18N-safe CSS note */
.roles-selector-progress{
    height:6px!important;
    margin-top:4px!important;
    background:#d9e6f7!important;
    border-radius:999px!important;
}

.roles-selector-progress span{
    background:linear-gradient(90deg,#0758b8 0%,#0f6fd4 70%,#f59e0b 100%)!important;
    min-width:4px!important;
}

.roles-selector-chip .roles-pro-role-action{
    background:#e7f0ff!important;
    border:1px solid #bcd7ff!important;
    color:#0758b8!important;
}

.roles-selector-chip:hover .roles-pro-role-action{
    background:#0758b8!important;
    border-color:#0758b8!important;
    color:#ffffff!important;
}

.roles-selector-chip .roles-pro-role-action::after{
    content:attr(data-i18n-label)!important;
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    padding:0!important;
    margin:-1px!important;
    overflow:hidden!important;
    clip:rect(0,0,0,0)!important;
    white-space:nowrap!important;
    border:0!important;
}

/* I18N-safe CSS note */
.roles-selector-chip:has(.roles-selector-progress span[style*="100%"]){
    border-color:#93c5fd!important;
}

@media(max-width:760px){
    .roles-selector-grid{
        padding:10px!important;
    }

    .roles-selector-chip{
        min-height:60px!important;
    }
}


/* Phase 4.3.82 ? PDPA Modal Contrast Fix
   I18N-safe CSS note */
.pdpa-consent-card{
    background:
        radial-gradient(circle at 16% 8%, rgba(255,255,255,.12), transparent 24%),
        linear-gradient(145deg,#132064 0%,#172a72 48%,#0d4a6a 100%)!important;
    color:#ffffff!important;
    border:1px solid rgba(191,219,254,.24)!important;
    box-shadow:0 28px 80px rgba(2,6,23,.48)!important;
}

.pdpa-consent-card h2,
.pdpa-consent-card .pdpa-consent-mode h2,
.pdpa-settings-head h2{
    color:#ffffff!important;
    text-shadow:0 1px 2px rgba(0,0,0,.20)!important;
}

.pdpa-consent-card p,
.pdpa-option-main small,
.pdpa-consent-summary-top p,
.pdpa-consent-org{
    color:#dbeafe!important;
}

.pdpa-consent-badge{
    color:#ffffff!important;
    background:rgba(245,158,11,.18)!important;
    border:1px solid rgba(245,158,11,.65)!important;
    box-shadow:0 8px 18px rgba(0,0,0,.18)!important;
}

.pdpa-settings-head{
    border-bottom:1px solid rgba(255,255,255,.14)!important;
}

.pdpa-settings-icon{
    background:rgba(255,255,255,.12)!important;
    color:#ffffff!important;
    border:1px solid rgba(255,255,255,.20)!important;
}

.pdpa-option-list{
    gap:12px!important;
}

.pdpa-option-row{
    background:rgba(255,255,255,.055)!important;
    border:1px solid rgba(191,219,254,.18)!important;
    border-radius:18px!important;
    box-shadow:none!important;
}

.pdpa-option-row:hover{
    background:rgba(255,255,255,.09)!important;
    border-color:rgba(191,219,254,.34)!important;
}

.pdpa-option-title{
    color:#ffffff!important;
    font-weight:950!important;
}

.pdpa-option-title i{
    filter:drop-shadow(0 1px 2px rgba(0,0,0,.25))!important;
}

.pdpa-switch{
    background:rgba(219,234,254,.20)!important;
    border:1px solid rgba(219,234,254,.35)!important;
}

.pdpa-switch-input:checked + .pdpa-switch,
.pdpa-switch.is-on{
    background:linear-gradient(135deg,#f59e0b,#f97316)!important;
    border-color:rgba(255,255,255,.38)!important;
}

.pdpa-btn{
    font-weight:950!important;
}

.pdpa-btn-secondary{
    color:#ffffff!important;
    background:rgba(255,255,255,.10)!important;
    border:1px solid rgba(219,234,254,.28)!important;
}

.pdpa-btn-secondary:hover{
    background:rgba(255,255,255,.16)!important;
    border-color:rgba(219,234,254,.44)!important;
}

.pdpa-btn-primary{
    color:#111827!important;
    background:linear-gradient(135deg,#fbbf24,#f59e0b)!important;
    border:1px solid rgba(251,191,36,.88)!important;
}

.pdpa-btn-ghost{
    color:#ffffff!important;
    background:rgba(255,255,255,.08)!important;
    border:1px solid rgba(255,255,255,.18)!important;
}

.pdpa-consent-mini-status span{
    color:#eff6ff!important;
    background:rgba(255,255,255,.07)!important;
    border:1px solid rgba(191,219,254,.18)!important;
}

.pdpa-privacy-link{
    color:#ffffff!important;
    background:#1f2937!important;
    border:1px solid rgba(255,255,255,.16)!important;
}

.pdpa-privacy-link .pdpa-privacy-text{
    color:#ffffff!important;
}

/* I18N-safe CSS note */
@media(max-width:640px){
    .pdpa-consent-card{
        background:linear-gradient(145deg,#132064 0%,#16266e 54%,#0d4968 100%)!important;
    }

    .pdpa-option-row{
        padding:12px!important;
    }
}


/* Phase 4.3.84 ? Login Simplify
   I18N-safe CSS note */
.auth-pro-copy{
    gap:18px;
}

.auth-pro-footer{
    margin-top:18px;
}

@media(max-width:900px){
    .auth-pro-copy{
        gap:14px;
    }
}


/* Phase 4.3.85 ? Login Brand Mark Gradient Fix
   I18N-safe CSS note */
.auth-pro-page .stock-brand-mark,
.auth-pro-shell .stock-brand-mark,
.auth-pro-brand .stock-brand-mark,
.login-page .stock-brand-mark,
.stock-brand-mark{
    background: linear-gradient(135deg, #ff9900 0%, #ffbf3f 42%, #1698ff 43%, #0758b8 100%) !important;
    color: #fff !important;
    text-shadow: 0 2px 4px rgba(0, 0, 0, .35);
    box-shadow: 0 12px 26px rgba(255, 153, 0, .30) !important;
}


/* Phase 4.3.86 ? Login Hero Typography Spacing Fix
   I18N-safe CSS note */
.auth-pro-copy h1,
.auth-pro-hero h1,
.auth-pro-left h1{
    max-width: 860px !important;
    font-size: clamp(42px, 4.35vw, 72px) !important;
    line-height: 1.08 !important;
    letter-spacing: -0.035em !important;
    word-spacing: 0.03em !important;
    margin: 18px 0 18px !important;
    text-wrap: balance;
}

.auth-pro-copy > p,
.auth-pro-hero > p,
.auth-pro-left > p{
    max-width: 760px !important;
    font-size: clamp(16px, 1.18vw, 20px) !important;
    line-height: 1.75 !important;
    letter-spacing: -0.005em !important;
    margin-top: 0 !important;
}

.auth-pro-eyebrow{
    margin-bottom: 14px !important;
}

.auth-pro-value-strip{
    margin-top: 24px !important;
}

@media(max-width:1280px){
    .auth-pro-copy h1,
    .auth-pro-hero h1,
    .auth-pro-left h1{
        font-size: clamp(38px, 5vw, 58px) !important;
        line-height: 1.12 !important;
        max-width: 740px !important;
    }

    .auth-pro-copy > p,
    .auth-pro-hero > p,
    .auth-pro-left > p{
        max-width: 700px !important;
        line-height: 1.72 !important;
    }
}

@media(max-width:900px){
    .auth-pro-copy h1,
    .auth-pro-hero h1,
    .auth-pro-left h1{
        font-size: clamp(34px, 8vw, 48px) !important;
        line-height: 1.16 !important;
        letter-spacing: -0.025em !important;
        margin: 14px 0 16px !important;
    }

    .auth-pro-copy > p,
    .auth-pro-hero > p,
    .auth-pro-left > p{
        font-size: 15.5px !important;
        line-height: 1.72 !important;
    }
}

@media(max-width:520px){
    .auth-pro-copy h1,
    .auth-pro-hero h1,
    .auth-pro-left h1{
        font-size: clamp(30px, 10.2vw, 40px) !important;
        line-height: 1.18 !important;
        letter-spacing: -0.018em !important;
    }

    .auth-pro-copy > p,
    .auth-pro-hero > p,
    .auth-pro-left > p{
        font-size: 14.5px !important;
        line-height: 1.7 !important;
    }
}

/* Phase 4.3.101 ? Language Workbench Performance UX */
.language-performance-banner{
    display:flex!important;
    align-items:center!important;
    gap:12px!important;
    margin:0 0 14px!important;
    padding:12px 14px!important;
    border:1px solid #bfdbfe!important;
    border-radius:20px!important;
    background:linear-gradient(135deg,#eff6ff 0%,#fff7ed 100%)!important;
    box-shadow:0 12px 28px rgba(15,23,42,.05)!important;
}
.language-performance-banner > span{
    flex:0 0 auto!important;
    padding:6px 10px!important;
    border-radius:999px!important;
    background:linear-gradient(135deg,#0758b8,#1698ff)!important;
    color:#fff!important;
    font-size:11px!important;
    font-weight:950!important;
    letter-spacing:.04em!important;
    text-transform:uppercase!important;
}
.language-performance-banner strong{
    display:block!important;
    color:#061b3a!important;
    font-size:14px!important;
    font-weight:950!important;
}
.language-performance-banner small{
    display:block!important;
    margin-top:2px!important;
    color:#475569!important;
    font-size:12px!important;
    font-weight:800!important;
    line-height:1.45!important;
}
.language-server-filter{
    display:grid!important;
    gap:10px!important;
    min-width:0!important;
}
.language-server-filter-grid{
    display:grid!important;
    grid-template-columns:minmax(260px,1.5fr) minmax(190px,.8fr) minmax(150px,.6fr) auto!important;
    gap:10px!important;
    align-items:end!important;
}
.language-server-filter .field{
    margin:0!important;
}
.language-server-filter-actions{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:8px!important;
}
.language-pagination{
    display:grid!important;
    gap:10px!important;
    margin:12px 0!important;
    padding:12px!important;
    border:1px solid #dbeafe!important;
    border-radius:16px!important;
    background:#fff!important;
}
.language-pagination-nav{
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
}
.language-pagination-pages{
    display:inline-flex!important;
    flex-wrap:wrap!important;
    align-items:center!important;
    justify-content:center!important;
    gap:4px!important;
}
.language-pagination-page{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:34px!important;
    height:34px!important;
    padding:0 8px!important;
    border:1px solid #dbe3ef!important;
    border-radius:10px!important;
    background:#fff!important;
    color:#334155!important;
    font-size:13px!important;
    font-weight:850!important;
    text-decoration:none!important;
}
.language-pagination-page:hover{
    border-color:#93c5fd!important;
    background:#eff6ff!important;
}
.language-pagination-page.is-active{
    border-color:#2563eb!important;
    background:#2563eb!important;
    color:#fff!important;
}
.language-pagination-ellipsis{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:24px!important;
    color:#64748b!important;
    font-weight:850!important;
}
.language-pagination-meta{
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:center!important;
    justify-content:center!important;
    gap:10px 14px!important;
    color:#475569!important;
    font-size:12.5px!important;
    font-weight:750!important;
}
.language-page-jump{
    display:inline-flex!important;
    align-items:center!important;
    gap:6px!important;
}
.language-page-jump .input{
    width:72px!important;
    min-height:34px!important;
    padding:4px 8px!important;
    text-align:center!important;
}
.language-pagination .is-disabled{
    opacity:.45!important;
    pointer-events:none!important;
}
@media(max-width:1180px){
    .language-server-filter-grid{
        grid-template-columns:1fr 1fr!important;
    }
}
@media(max-width:720px){
    .language-performance-banner,
    .language-pagination{
        align-items:stretch!important;
    }
    .language-pagination-nav,
    .language-pagination-meta,
    .language-page-jump{
        width:100%!important;
        justify-content:stretch!important;
    }
    .language-server-filter-grid{
        grid-template-columns:1fr!important;
    }
    .language-server-filter-actions .button,
    .language-pagination .button,
    .language-page-jump .button{
        width:auto!important;
        flex:1 1 auto!important;
    }
    .language-page-jump .input{
        flex:1 1 80px!important;
        width:auto!important;
    }
}

/* Phase 4.3.102 ? PR low-stock material image preview */
@media (min-width:1101px){
    .pr-low-stock-modal-card{
        grid-template-columns:auto 88px minmax(0,1fr);
    }
    .pr-low-stock-thumb-area{
        grid-row:span 3;
        min-width:0;
    }
}
.pr-low-stock-thumb-area{
    min-width:0;
}
.pr-low-stock-thumb,
.pr-low-stock-thumb.is-empty{
    width:78px;
    height:78px;
    border:1px solid #bfdbfe;
    border-radius:18px;
    display:grid;
    place-items:center;
    position:relative;
    overflow:hidden;
    background:linear-gradient(135deg,#eff6ff 0%,#ffffff 100%);
    color:#64748b;
    font-size:10px;
    line-height:1.15;
    font-weight:950;
    text-align:center;
}
.pr-low-stock-thumb{
    padding:0;
    cursor:pointer;
    box-shadow:0 10px 22px rgba(15,23,42,.08);
}
.pr-low-stock-thumb img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}
.pr-low-stock-thumb span{
    position:absolute;
    left:6px;
    right:6px;
    bottom:6px;
    min-height:20px;
    border-radius:999px;
    display:grid;
    place-items:center;
    padding:3px 6px;
    background:linear-gradient(135deg,#ffbf3f 0%,#ff9900 100%);
    color:#061b3a;
    font-size:9.5px;
    font-weight:950;
    box-shadow:0 8px 18px rgba(255,153,0,.24);
}
.pr-low-stock-thumb:hover,
.pr-low-stock-thumb:focus-visible{
    outline:none;
    transform:translateY(-1px);
    border-color:#ff9900;
    box-shadow:0 0 0 4px rgba(255,153,0,.18),0 14px 28px rgba(15,23,42,.14);
}
.pr-low-stock-thumb.is-empty{
    border-style:dashed;
    box-shadow:none;
}
.pr-low-stock-thumb.is-empty::before{
    content:"IMG";
    display:grid;
    place-items:center;
    width:34px;
    height:34px;
    border-radius:14px;
    background:#e0f2fe;
    color:#0758b8;
    font-size:11px;
    font-weight:950;
}
.pr-low-stock-thumb.is-empty span{
    margin-top:4px;
    padding:0 6px;
}
.stock-attachment-modal{
    z-index:1500;
}

@media(min-width:1101px) and (max-width:1280px){
    .pr-low-stock-modal-card{
        grid-template-columns:30px 76px minmax(0,1fr);
    }
    .pr-low-stock-thumb,
    .pr-low-stock-thumb.is-empty{
        width:70px;
        height:70px;
        border-radius:16px;
    }
}

@media(max-width:1100px){
    .pr-low-stock-modal-card{
        display:flex!important;
        flex-direction:column!important;
        grid-template-columns:none!important;
    }
    .pr-low-stock-thumb-area{
        width:100%;
    }
    .pr-low-stock-thumb,
    .pr-low-stock-thumb.is-empty{
        width:100%;
        height:150px;
    }
}


/* Phase 4.3.104 ? PR low-stock picker readability polish */
.pr-low-stock-modal-panel{
    width:min(1360px,calc(100vw - 32px))!important;
    max-height:min(900px,calc(100vh - 32px))!important;
    background:#f4f8ff!important;
}
.pr-low-stock-modal-toolbar{
    grid-template-columns:minmax(320px,1fr) auto auto!important;
    align-items:center!important;
    padding:16px 20px!important;
    gap:12px!important;
}
.pr-low-stock-modal-toolbar .input{
    min-height:46px!important;
    border-radius:16px!important;
    font-size:14px!important;
    font-weight:800!important;
}
.pr-low-stock-modal-list{
    gap:14px!important;
    padding:18px 20px!important;
    background:#f4f8ff!important;
}
.pr-low-stock-modal-card{
    gap:14px 16px!important;
    align-items:stretch!important;
    padding:16px!important;
    border-radius:22px!important;
    border-color:#c7ddff!important;
    background:linear-gradient(180deg,#ffffff 0%,#f9fbff 100%)!important;
    box-shadow:0 12px 30px rgba(15,23,42,.07)!important;
    color:#0f2747!important;
}
.pr-low-stock-modal-card:has(.pr-low-stock-check input:checked){
    border-color:#ff9900!important;
    box-shadow:0 0 0 4px rgba(255,153,0,.14),0 18px 40px rgba(15,23,42,.10)!important;
}
.pr-low-stock-modal-card .pr-low-stock-card-main strong{
    font-size:16px!important;
    line-height:1.35!important;
    letter-spacing:-.01em!important;
}
.pr-low-stock-modal-card .pr-low-stock-card-main span{
    margin-top:8px!important;
    font-size:12.5px!important;
    line-height:1.6!important;
    color:#475569!important;
}
.pr-low-stock-modal-card .pr-low-stock-stats span{
    padding:10px 12px!important;
    border-radius:16px!important;
    background:#fff!important;
    border-color:#dbeafe!important;
}
.pr-low-stock-modal-card .pr-low-stock-stats small{
    font-size:10.5px!important;
    letter-spacing:.02em!important;
    text-transform:uppercase!important;
}
.pr-low-stock-modal-card .pr-low-stock-stats b{
    font-size:14px!important;
    line-height:1.25!important;
}
.pr-low-stock-modal-card .pr-low-stock-qty{
    min-height:42px!important;
    font-size:14px!important;
    border-radius:14px!important;
}
.pr-low-stock-modal-card .pr-low-stock-card-actions .button{
    min-height:38px!important;
    padding-inline:14px!important;
}
.pr-low-stock-modal-card .pr-low-stock-status{
    min-height:30px!important;
    padding-inline:11px!important;
}
.pr-low-stock-selected-summary{
    min-height:36px!important;
    display:inline-flex!important;
    align-items:center!important;
    padding:8px 12px!important;
    border-radius:999px!important;
    background:#eef7ff!important;
    border:1px solid #bfdbfe!important;
    color:#0758b8!important;
}

/* Desktop / large tablet only — multi-column card tracks */
@media (min-width:1101px){
    .pr-low-stock-modal-list{
        grid-template-columns:1fr!important;
    }
    .pr-low-stock-modal-card{
        display:grid!important;
        grid-template-columns:34px 124px minmax(260px,1fr) minmax(250px,330px)!important;
        grid-template-rows:auto auto!important;
    }
    .pr-low-stock-modal-card .pr-low-stock-check{
        grid-column:1!important;
        grid-row:1 / span 2!important;
        align-self:start!important;
        margin-top:8px!important;
    }
    .pr-low-stock-modal-card .pr-low-stock-thumb-area{
        grid-column:2!important;
        grid-row:1 / span 2!important;
        align-self:stretch!important;
    }
    .pr-low-stock-modal-card .pr-low-stock-thumb,
    .pr-low-stock-modal-card .pr-low-stock-thumb.is-empty{
        width:116px!important;
        height:116px!important;
        border-radius:20px!important;
    }
    .pr-low-stock-modal-card .pr-low-stock-card-main{
        grid-column:3!important;
        grid-row:1!important;
        align-self:start!important;
        padding-top:2px!important;
    }
    .pr-low-stock-modal-card .pr-low-stock-stats{
        grid-column:4!important;
        grid-row:1 / span 2!important;
        grid-template-columns:1fr!important;
        align-content:start!important;
        gap:9px!important;
    }
    .pr-low-stock-modal-card .pr-low-stock-card-actions{
        grid-column:3!important;
        grid-row:2!important;
        align-self:end!important;
        justify-content:flex-start!important;
        flex-wrap:wrap!important;
        gap:10px!important;
        padding-top:4px!important;
    }
}
@media (min-width:1101px) and (max-width:1120px){
    .pr-low-stock-modal-card{
        grid-template-columns:34px 110px minmax(0,1fr)!important;
        grid-template-rows:auto auto auto!important;
    }
    .pr-low-stock-modal-card .pr-low-stock-stats{
        grid-column:3!important;
        grid-row:2!important;
        grid-template-columns:repeat(3,minmax(0,1fr))!important;
    }
    .pr-low-stock-modal-card .pr-low-stock-card-actions{
        grid-column:3!important;
        grid-row:3!important;
    }
    .pr-low-stock-modal-card .pr-low-stock-thumb,
    .pr-low-stock-modal-card .pr-low-stock-thumb.is-empty{
        width:104px!important;
        height:104px!important;
    }
}
@media(max-width:760px){
    .pr-low-stock-modal-panel{
        width:100%!important;
        max-height:calc(100vh - 16px)!important;
    }
    .pr-low-stock-modal-toolbar{
        grid-template-columns:1fr!important;
        padding:12px!important;
    }
    .pr-low-stock-modal-list{
        padding:12px!important;
    }
}

/* Phase 4.3.105 — PR low-stock picker readability (desktop tracks gated) */
.pr-low-stock-modal-head{
    background:linear-gradient(135deg,#063a5a 0%,#0a5c8a 45%,#0d7fa8 100%)!important;
    color:#fff!important;
}
.pr-low-stock-modal-head h3{
    color:#fff!important;
    text-shadow:0 2px 5px rgba(0,0,0,.28)!important;
}
.pr-low-stock-modal-head p{
    color:rgba(255,255,255,.92)!important;
}
.pr-low-stock-modal-head .pr-low-stock-kicker{
    color:#fff!important;
    background:rgba(255,255,255,.18)!important;
    border-color:rgba(255,255,255,.30)!important;
}
.pr-low-stock-modal-toolbar{
    background:#ffffff!important;
    border-bottom:1px solid #d7e7ff!important;
}
.pr-low-stock-modal-list{
    align-items:stretch!important;
    background:#f4f8ff!important;
}
.pr-low-stock-modal-card{
    gap:12px 14px!important;
    color:#0f2747!important;
}
.pr-low-stock-modal-card .pr-low-stock-thumb,
.pr-low-stock-modal-card .pr-low-stock-thumb.is-empty{
    background:#f8fbff!important;
}
.pr-low-stock-modal-card .pr-low-stock-card-main strong{
    display:block!important;
    color:#08213f!important;
    font-size:16.5px!important;
    font-weight:900!important;
    line-height:1.35!important;
}
.pr-low-stock-modal-card .pr-low-stock-card-main span{
    display:block!important;
    color:#334155!important;
    font-size:12.75px!important;
    font-weight:750!important;
    line-height:1.65!important;
    word-break:break-word!important;
}
.pr-low-stock-modal-card .pr-low-stock-stats span{
    background:#fff!important;
    border:1px solid #d5e5ff!important;
    color:#0f2747!important;
    box-shadow:0 8px 18px rgba(15,23,42,.045)!important;
}
.pr-low-stock-modal-card .pr-low-stock-stats small{
    color:#49627f!important;
    font-weight:900!important;
}
.pr-low-stock-modal-card .pr-low-stock-stats b{
    color:#061b3a!important;
    font-weight:950!important;
}
.pr-low-stock-modal-card .pr-low-stock-status{
    color:#8a3a00!important;
    background:#fff7ed!important;
    border:1px solid rgba(255,153,0,.32)!important;
    font-weight:950!important;
}
.pr-low-stock-modal-card .button.button-secondary{
    color:#0758b8!important;
    background:#fff!important;
    border-color:#a9cffc!important;
    font-weight:950!important;
}
.pr-low-stock-modal-card .button.button-secondary:hover,
.pr-low-stock-modal-card .button.button-secondary:focus-visible{
    background:#eef7ff!important;
    border-color:#1698ff!important;
}

/* Desktop / wide only — 2-col list + multi-track cards */
@media (min-width:1101px){
    .pr-low-stock-modal-list{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
    .pr-low-stock-modal-card{
        display:grid!important;
        grid-template-columns:32px 112px minmax(0,1fr)!important;
        grid-template-rows:auto auto auto!important;
        min-height:246px!important;
    }
    .pr-low-stock-modal-card .pr-low-stock-check{
        grid-column:1!important;
        grid-row:1 / span 3!important;
    }
    .pr-low-stock-modal-card .pr-low-stock-thumb-area{
        grid-column:2!important;
        grid-row:1 / span 2!important;
    }
    .pr-low-stock-modal-card .pr-low-stock-thumb,
    .pr-low-stock-modal-card .pr-low-stock-thumb.is-empty{
        width:112px!important;
        height:112px!important;
    }
    .pr-low-stock-modal-card .pr-low-stock-card-main{
        grid-column:3!important;
        grid-row:1!important;
        min-width:0!important;
    }
    .pr-low-stock-modal-card .pr-low-stock-stats{
        grid-column:3!important;
        grid-row:2!important;
        display:grid!important;
        grid-template-columns:repeat(3,minmax(0,1fr))!important;
        gap:8px!important;
    }
    .pr-low-stock-modal-card .pr-low-stock-card-actions{
        grid-column:2 / -1!important;
        grid-row:3!important;
        align-self:end!important;
        justify-content:space-between!important;
        gap:10px!important;
    }
}
@media (min-width:1101px) and (max-width:1280px){
    .pr-low-stock-modal-list{
        grid-template-columns:1fr!important;
    }
    .pr-low-stock-modal-card{
        grid-template-columns:34px 110px minmax(0,1fr)!important;
        min-height:0!important;
    }
}

/* Phone / small tablet — single column flex stack (no grid-column:3) */
@media(max-width:1100px){
    .pr-low-stock-modal{
        padding:max(8px, env(safe-area-inset-top, 0px)) 8px max(8px, env(safe-area-inset-bottom, 0px))!important;
        align-items:stretch!important;
    }
    .pr-low-stock-modal-panel{
        width:100%!important;
        max-width:100%!important;
        max-height:calc(100dvh - 16px)!important;
        border-radius:18px!important;
    }
    .pr-low-stock-modal-head{
        flex-wrap:wrap!important;
        gap:10px!important;
        padding:14px 14px 12px!important;
    }
    .pr-low-stock-modal-head h3{
        font-size:18px!important;
        line-height:1.25!important;
    }
    .pr-low-stock-modal-head p{
        font-size:12.5px!important;
    }
    .pr-low-stock-modal-toolbar{
        grid-template-columns:1fr!important;
        gap:8px!important;
        padding:12px!important;
    }
    .pr-low-stock-modal-toolbar .input,
    .pr-low-stock-modal-toolbar .button{
        width:100%!important;
        min-width:0!important;
    }
    .pr-low-stock-modal-list{
        display:grid!important;
        grid-template-columns:1fr!important;
        padding:12px!important;
        gap:12px!important;
    }
    .pr-low-stock-modal-card{
        display:flex!important;
        flex-direction:column!important;
        align-items:stretch!important;
        gap:12px!important;
        padding:14px!important;
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
        min-height:0!important;
        height:auto!important;
        box-sizing:border-box!important;
        overflow:visible!important;
        grid-template-columns:none!important;
        grid-template-rows:none!important;
    }
    .pr-low-stock-modal-card > *{
        grid-column:auto!important;
        grid-row:auto!important;
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
        box-sizing:border-box!important;
    }
    .pr-low-stock-modal-card .pr-low-stock-check{
        width:auto!important;
        align-self:flex-start!important;
        margin:0!important;
    }
    .pr-low-stock-modal-card .pr-low-stock-thumb,
    .pr-low-stock-modal-card .pr-low-stock-thumb.is-empty{
        width:100%!important;
        max-width:100%!important;
        height:150px!important;
        min-height:150px!important;
        border-radius:16px!important;
    }
    .pr-low-stock-modal-card .pr-low-stock-card-main,
    .pr-low-stock-modal-card .pr-low-stock-stats,
    .pr-low-stock-modal-card .pr-low-stock-card-actions{
        visibility:visible!important;
        opacity:1!important;
        height:auto!important;
    }
    .pr-low-stock-modal-card .pr-low-stock-card-main strong,
    .pr-low-stock-modal-card .pr-low-stock-card-main span{
        display:block!important;
        white-space:normal!important;
        overflow-wrap:anywhere!important;
    }
    .pr-low-stock-modal-card .pr-low-stock-stats{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:8px!important;
    }
    .pr-low-stock-modal-card .pr-low-stock-card-actions{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:8px!important;
    }
    .pr-low-stock-modal-card .pr-low-stock-card-actions .button,
    .pr-low-stock-modal-card .pr-low-stock-status{
        width:100%!important;
        justify-content:center!important;
        white-space:normal!important;
    }
    .pr-low-stock-modal-foot{
        display:grid!important;
        gap:10px!important;
        padding:12px!important;
        padding-bottom:calc(12px + env(safe-area-inset-bottom, 0px))!important;
    }
    .pr-low-stock-modal-actions{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:8px!important;
        width:100%!important;
    }
    .pr-low-stock-modal-actions .button{
        width:100%!important;
        justify-content:center!important;
    }
    .pr-low-stock-selected-summary{
        width:100%!important;
        max-width:100%!important;
        justify-content:center!important;
        border-radius:14px!important;
        white-space:normal!important;
    }
    .pr-low-stock-head{
        display:grid!important;
        gap:10px!important;
    }
    .pr-low-stock-actions{
        display:grid!important;
        grid-template-columns:1fr!important;
        width:100%!important;
    }
    .pr-low-stock-actions .button,
    .pr-low-stock-count{
        width:100%!important;
        justify-content:center!important;
    }
    .pr-low-stock-summary-strip span,
    .pr-low-stock-summary-strip strong{
        max-width:100%!important;
        white-space:normal!important;
        overflow-wrap:anywhere!important;
    }
}

/* Phase 4.3.107 ? Full-width page card on large screens
   I18N-safe CSS note */
@media (min-width:1025px){
    .stock-main{
        min-width:0!important;
        width:100%!important;
        max-width:none!important;
    }

    .stock-page-shell{
        width:100%!important;
        max-width:none!important;
        margin:0!important;
        box-sizing:border-box!important;
    }

    .stock-page-card{
        width:100%!important;
        max-width:none!important;
        box-sizing:border-box!important;
    }
}

/* Phase 4.3.108 ? Wide workspace follow-up after full-width page card
   I18N-safe CSS note: visual layout only, no generated text. */
@media (min-width:1600px){
    .stock-page-shell{
        padding:30px 34px!important;
    }

    .dashboard-mini-grid{
        grid-template-columns:repeat(5,minmax(0,1fr))!important;
    }

    .dashboard-task-grid{
        grid-template-columns:repeat(3,minmax(0,1fr))!important;
    }

    .dashboard-movement-grid{
        grid-template-columns:repeat(5,minmax(0,1fr))!important;
    }

    .dashboard-sync-kpi-grid{
        grid-template-columns:repeat(4,minmax(0,1fr))!important;
    }

    .dashboard-main-grid:not(.dashboard-equal-grid):not(.dashboard-sync-grid){
        grid-template-columns:minmax(0,1.55fr) minmax(380px,.85fr)!important;
    }

    .dashboard-panel-wide{
        grid-column:auto!important;
    }

    .filter-bar{
        grid-template-columns:minmax(300px,420px) repeat(3,minmax(190px,1fr)) auto auto!important;
    }

    .filter-bar .filter-keyword{
        max-width:420px!important;
    }

    .table-wrap,
    .table-container,
    .core-table-wrapper{
        width:100%!important;
        max-width:none!important;
    }
}

@media (min-width:1920px){
    .stock-page-shell{
        padding:32px 40px!important;
    }

    .stock-page-card{
        padding:32px!important;
    }

    .dashboard-kpi-grid{
        grid-template-columns:repeat(4,minmax(0,1fr))!important;
    }

    .dashboard-mini-grid{
        grid-template-columns:repeat(6,minmax(0,1fr))!important;
    }

    .dashboard-value-grid{
        grid-template-columns:repeat(4,minmax(0,1fr))!important;
    }

    .dashboard-main-grid:not(.dashboard-equal-grid):not(.dashboard-sync-grid){
        grid-template-columns:minmax(0,1.7fr) minmax(420px,.8fr)!important;
    }

    .dashboard-equal-grid,
    .dashboard-sync-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }

    .dashboard-movement-grid{
        grid-template-columns:repeat(6,minmax(0,1fr))!important;
    }

    .dashboard-list-row{
        grid-template-columns:minmax(0,1fr) minmax(150px,auto) auto!important;
    }

    .dashboard-po-receive-row{
        grid-template-columns:minmax(0,1.2fr) minmax(260px,1.4fr) auto!important;
    }
}

@media (min-width:2200px){
    .stock-page-shell{
        padding-left:48px!important;
        padding-right:48px!important;
    }

    .dashboard-mini-grid{
        grid-template-columns:repeat(7,minmax(0,1fr))!important;
    }

    .dashboard-movement-grid{
        grid-template-columns:repeat(7,minmax(0,1fr))!important;
    }

    .dashboard-task-grid{
        grid-template-columns:repeat(4,minmax(0,1fr))!important;
    }
}

/* Phase 4.3.111 ? Master Data org-units/locations full-width parity
   I18N-safe CSS note: visual layout only, no generated text. */
.master-layout-type-org-units .master-table-card,
.master-layout-type-locations .master-table-card{
    width:100%!important;
    max-width:100%!important;
    overflow:hidden!important;
}

.master-layout-type-org-units .master-table-card .table-wrap,
.master-layout-type-locations .master-table-card .table-wrap{
    width:100%!important;
    max-width:100%!important;
    overflow-x:auto!important;
}

.master-layout-type-org-units .master-data-table,
.master-layout-type-locations .master-data-table{
    width:100%!important;
    min-width:100%!important;
    max-width:none!important;
}

@media (min-width:761px){
    .master-layout-type-org-units .master-data-table,
    .master-layout-type-locations .master-data-table{
        table-layout:fixed!important;
    }

    .master-layout-type-org-units .master-col-select,
    .master-layout-type-locations .master-col-select{
        width:48px!important;
        min-width:48px!important;
        max-width:48px!important;
        text-align:center!important;
    }

    .master-layout-type-org-units .master-col-drag,
    .master-layout-type-locations .master-col-drag{
        width:76px!important;
        min-width:76px!important;
        max-width:76px!important;
        text-align:center!important;
    }

    .master-layout-type-org-units .master-col-image,
    .master-layout-type-locations .master-col-image{
        width:72px!important;
        min-width:72px!important;
        max-width:72px!important;
        text-align:center!important;
    }

    .master-layout-type-org-units .master-col-main,
    .master-layout-type-locations .master-col-main{
        width:240px!important;
        min-width:190px!important;
        max-width:280px!important;
    }

    .master-layout-type-org-units .master-col-actions,
    .master-layout-type-locations .master-col-actions{
        width:210px!important;
        min-width:190px!important;
        max-width:230px!important;
    }

    .master-layout-type-org-units .master-extra-cell,
    .master-layout-type-locations .master-extra-cell{
        width:auto!important;
        min-width:0!important;
        max-width:none!important;
    }

    .master-layout-type-org-units .master-extra-cell span,
    .master-layout-type-locations .master-extra-cell span,
    .master-layout-type-org-units .master-col-main .doc-cell,
    .master-layout-type-locations .master-col-main .doc-cell{
        min-width:0!important;
        max-width:100%!important;
        overflow-wrap:anywhere!important;
    }

    .master-layout-type-org-units .master-col-actions .action-row,
    .master-layout-type-locations .master-col-actions .action-row{
        justify-content:flex-end!important;
        flex-wrap:nowrap!important;
        gap:7px!important;
    }

    .master-layout-type-org-units .master-col-actions .button,
    .master-layout-type-locations .master-col-actions .button{
        padding-left:11px!important;
        padding-right:11px!important;
        white-space:nowrap!important;
    }
}

@media (max-width:760px){
    .master-layout-type-org-units .master-table-card,
    .master-layout-type-locations .master-table-card{
        padding:12px!important;
        border-radius:20px!important;
        overflow:hidden!important;
    }

    .master-layout-type-org-units .master-table-card .table-wrap,
    .master-layout-type-locations .master-table-card .table-wrap{
        overflow:visible!important;
        border:0!important;
        border-radius:0!important;
        background:transparent!important;
        box-shadow:none!important;
    }

    .master-layout-type-org-units .master-data-table,
    .master-layout-type-org-units .master-data-table thead,
    .master-layout-type-org-units .master-data-table tbody,
    .master-layout-type-org-units .master-data-table tr,
    .master-layout-type-org-units .master-data-table th,
    .master-layout-type-org-units .master-data-table td,
    .master-layout-type-locations .master-data-table,
    .master-layout-type-locations .master-data-table thead,
    .master-layout-type-locations .master-data-table tbody,
    .master-layout-type-locations .master-data-table tr,
    .master-layout-type-locations .master-data-table th,
    .master-layout-type-locations .master-data-table td{
        display:block!important;
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
    }

    .master-layout-type-org-units .master-data-table,
    .master-layout-type-locations .master-data-table{
        border:0!important;
        border-collapse:separate!important;
        border-spacing:0!important;
        background:transparent!important;
        min-width:0!important;
    }

    .master-layout-type-org-units .master-data-table thead,
    .master-layout-type-locations .master-data-table thead{
        display:none!important;
    }

    .master-layout-type-org-units .master-data-table tbody,
    .master-layout-type-locations .master-data-table tbody{
        display:grid!important;
        gap:12px!important;
    }

    .master-layout-type-org-units .master-data-table tbody tr,
    .master-layout-type-locations .master-data-table tbody tr{
        display:grid!important;
        grid-template-columns:auto minmax(0,1fr)!important;
        grid-template-areas:
            "select main"
            "drag main"
            "image main"!important;
        gap:8px 10px!important;
        padding:12px!important;
        border:1px solid #dbeafe!important;
        border-radius:20px!important;
        background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%)!important;
        box-shadow:0 10px 24px rgba(15,23,42,.065)!important;
        overflow:hidden!important;
    }

    .master-layout-type-org-units .master-data-table tbody tr.is-highlighted,
    .master-layout-type-locations .master-data-table tbody tr.is-highlighted{
        border-color:#f59e0b!important;
        box-shadow:0 10px 26px rgba(245,158,11,.16)!important;
    }

    .master-layout-type-org-units .master-data-table td,
    .master-layout-type-locations .master-data-table td{
        border:0!important;
        padding:0!important;
        background:transparent!important;
        min-width:0!important;
        position:static!important;
        box-shadow:none!important;
    }

    .master-layout-type-org-units .master-extra-cell,
    .master-layout-type-locations .master-extra-cell{
        grid-area:auto!important;
        grid-column:1 / -1!important;
        display:grid!important;
        grid-template-columns:96px minmax(0,1fr)!important;
        align-items:start!important;
        gap:8px!important;
        border:1px solid #e2e8f0!important;
        border-radius:14px!important;
        background:#fff!important;
        padding:8px 10px!important;
        color:#0f172a!important;
        font-size:12px!important;
        line-height:1.35!important;
        max-width:none!important;
    }

    .master-layout-type-org-units .master-extra-cell::before,
    .master-layout-type-locations .master-extra-cell::before{
        content:attr(data-label);
        color:#64748b!important;
        font-size:10px!important;
        line-height:1.25!important;
        font-weight:950!important;
    }

    .master-layout-type-org-units .master-extra-cell span,
    .master-layout-type-locations .master-extra-cell span{
        min-width:0!important;
        overflow-wrap:anywhere!important;
        font-weight:850!important;
    }

    .master-layout-type-org-units .master-col-actions,
    .master-layout-type-locations .master-col-actions{
        grid-area:auto!important;
        grid-column:1 / -1!important;
        border-top:1px dashed #dbeafe!important;
        padding-top:9px!important;
    }

    .master-layout-type-org-units .master-col-actions .action-row,
    .master-layout-type-locations .master-col-actions .action-row{
        display:grid!important;
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:7px!important;
        width:100%!important;
        justify-content:stretch!important;
    }

    .master-layout-type-org-units .master-col-actions form,
    .master-layout-type-locations .master-col-actions form{
        display:contents!important;
    }

    .master-layout-type-org-units .master-col-actions .button,
    .master-layout-type-locations .master-col-actions .button{
        width:100%!important;
        min-height:36px!important;
        justify-content:center!important;
        border-radius:12px!important;
        padding:7px 10px!important;
        font-size:12px!important;
    }

    .master-layout-type-org-units .master-batch-toolbar,
    .master-layout-type-locations .master-batch-toolbar{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:10px!important;
        padding:10px!important;
        border-radius:16px!important;
    }

    .master-layout-type-org-units .master-batch-actions,
    .master-layout-type-locations .master-batch-actions{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:8px!important;
        width:100%!important;
    }

    .master-layout-type-org-units .master-batch-actions .button,
    .master-layout-type-locations .master-batch-actions .button{
        width:100%!important;
    }
}

@media (max-width:420px){
    .master-layout-type-org-units .master-data-table tbody tr,
    .master-layout-type-locations .master-data-table tbody tr{
        grid-template-columns:1fr!important;
        grid-template-areas:
            "select"
            "drag"
            "image"
            "main"!important;
        padding:10px!important;
        border-radius:18px!important;
    }

    .master-layout-type-org-units .master-extra-cell,
    .master-layout-type-locations .master-extra-cell{
        grid-template-columns:1fr!important;
        gap:3px!important;
    }

    .master-layout-type-org-units .master-col-actions .action-row,
    .master-layout-type-locations .master-col-actions .action-row{
        grid-template-columns:1fr!important;
    }
}

/* Phase 4.3.113 ? Master Data top tabs and mobile polish
   I18N-safe CSS note: visual layout only; generated content uses existing attributes only. */
.master-layout.is-tabbed-master-layout,
.master-layout.is-tabbed-master-layout.is-master-compact-layout{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:14px!important;
    width:100%!important;
    min-width:0!important;
}

.master-layout.is-tabbed-master-layout .master-type-tabs,
.master-layout.is-tabbed-master-layout .master-sidebar{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    padding:12px!important;
    border:1px solid #dbe7f6!important;
    border-radius:22px!important;
    background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%)!important;
    box-shadow:0 12px 28px rgba(15,23,42,.055)!important;
    overflow:hidden!important;
}

.master-layout.is-tabbed-master-layout .master-type-tabs{
    display:grid!important;
    grid-template-columns:repeat(auto-fit,minmax(230px,1fr))!important;
    gap:10px!important;
    align-items:start!important;
}

.master-layout.is-tabbed-master-layout .master-group{
    display:grid!important;
    gap:7px!important;
    min-width:0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
}

.master-layout.is-tabbed-master-layout .master-group-title{
    margin:0!important;
    padding:0 4px!important;
    color:#64748b!important;
    font-size:10.5px!important;
    line-height:1.25!important;
    font-weight:950!important;
    letter-spacing:.045em!important;
    text-transform:uppercase!important;
    white-space:nowrap!important;
}

.master-layout.is-tabbed-master-layout .master-group-list{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:7px!important;
    min-width:0!important;
}

.master-layout.is-tabbed-master-layout .master-type-link{
    flex:1 1 160px!important;
    min-width:145px!important;
    max-width:none!important;
    min-height:42px!important;
    padding:9px 10px!important;
    border-radius:14px!important;
    border-color:#dbe7f6!important;
    background:#ffffff!important;
    color:#334155!important;
    box-shadow:0 6px 14px rgba(15,23,42,.035)!important;
    touch-action:manipulation!important;
}

.master-layout.is-tabbed-master-layout .master-type-link:hover,
.master-layout.is-tabbed-master-layout .master-type-link:focus-visible{
    border-color:#93c5fd!important;
    background:#eef7ff!important;
    color:#0758b8!important;
    outline:none!important;
    box-shadow:0 0 0 4px rgba(7,88,184,.10),0 8px 18px rgba(15,23,42,.055)!important;
}

.master-layout.is-tabbed-master-layout .master-type-link.is-active{
    background:#0758b8!important;
    border-color:#0758b8!important;
    color:#ffffff!important;
    box-shadow:0 10px 22px rgba(7,88,184,.20)!important;
}

.master-layout.is-tabbed-master-layout .master-type-link span{
    font-size:12.5px!important;
    font-weight:900!important;
    line-height:1.25!important;
}

.master-layout.is-tabbed-master-layout .master-type-link strong{
    min-width:28px!important;
    height:24px!important;
    padding:0 8px!important;
    border-radius:999px!important;
    background:#eef2ff!important;
    color:#0f3f88!important;
    font-size:11px!important;
    font-weight:950!important;
}

.master-layout.is-tabbed-master-layout .master-type-link.is-active strong{
    background:rgba(255,255,255,.18)!important;
    color:#ffffff!important;
}

.master-layout.is-tabbed-master-layout .master-content{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:visible!important;
}

.master-layout.is-tabbed-master-layout .master-content .filter-bar{
    grid-template-columns:minmax(260px,1fr) auto auto!important;
    align-items:center!important;
    width:100%!important;
    margin-bottom:14px!important;
}

.master-layout.is-tabbed-master-layout .master-content .filter-bar .input,
.master-layout.is-tabbed-master-layout .master-content .filter-bar .button{
    min-height:40px!important;
}

@media (min-width:1440px){
    .master-layout.is-tabbed-master-layout .master-type-tabs{
        grid-template-columns:repeat(auto-fit,minmax(260px,1fr))!important;
    }

    .master-layout.is-tabbed-master-layout .master-type-link{
        flex-basis:180px!important;
    }
}

@media (max-width:900px){
    .master-layout.is-tabbed-master-layout .master-type-tabs{
        grid-template-columns:1fr!important;
        gap:12px!important;
    }

    .master-layout.is-tabbed-master-layout .master-group-list{
        flex-wrap:nowrap!important;
        overflow-x:auto!important;
        overflow-y:hidden!important;
        -webkit-overflow-scrolling:touch!important;
        overscroll-behavior-x:contain!important;
        padding:1px 2px 7px!important;
        scroll-snap-type:x proximity!important;
    }

    .master-layout.is-tabbed-master-layout .master-type-link{
        flex:0 0 auto!important;
        min-width:154px!important;
        max-width:220px!important;
        scroll-snap-align:start!important;
    }
}

@media (max-width:760px){
    .master-layout.is-tabbed-master-layout,
    .master-layout.is-tabbed-master-layout.is-master-compact-layout{
        gap:12px!important;
    }

    .master-layout.is-tabbed-master-layout .master-type-tabs,
    .master-layout.is-tabbed-master-layout .master-sidebar{
        padding:10px!important;
        border-radius:18px!important;
        margin:0!important;
    }

    .master-layout.is-tabbed-master-layout .master-group{
        gap:6px!important;
    }

    .master-layout.is-tabbed-master-layout .master-group-title{
        font-size:10px!important;
        padding-left:2px!important;
    }

    .master-layout.is-tabbed-master-layout .master-type-link{
        min-width:148px!important;
        min-height:42px!important;
        padding:8px 9px!important;
        border-radius:13px!important;
    }

    .master-layout.is-tabbed-master-layout .master-type-link span{
        font-size:12px!important;
    }

    .master-layout.is-tabbed-master-layout .master-type-link strong{
        min-width:26px!important;
        height:22px!important;
        font-size:10.5px!important;
    }

    .master-layout.is-tabbed-master-layout .master-hero-card{
        display:grid!important;
        grid-template-columns:minmax(0,1fr)!important;
        gap:10px!important;
        padding:12px!important;
        border-radius:18px!important;
    }

    .master-layout.is-tabbed-master-layout .master-count-card{
        width:100%!important;
        min-width:0!important;
        display:flex!important;
        align-items:center!important;
        justify-content:space-between!important;
        text-align:left!important;
    }

    .master-layout.is-tabbed-master-layout .master-content .filter-bar{
        grid-template-columns:1fr!important;
        gap:8px!important;
        padding:10px!important;
        border-radius:16px!important;
    }

    .master-layout.is-tabbed-master-layout .master-content .filter-bar .button{
        width:100%!important;
        justify-content:center!important;
    }

    .master-layout.is-tabbed-master-layout .master-table-card{
        padding:10px!important;
        border-radius:18px!important;
    }

    .master-layout.is-tabbed-master-layout .master-table-head,
    .master-layout.is-tabbed-master-layout .page-section-header.master-table-head{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:8px!important;
        align-items:start!important;
    }

    .master-layout.is-tabbed-master-layout .master-table-card .page-section-titleblock h3{
        font-size:16px!important;
        line-height:1.25!important;
    }

    .master-layout.is-tabbed-master-layout .master-table-card .page-section-titleblock p{
        font-size:12px!important;
        line-height:1.4!important;
    }
}

@media (max-width:420px){
    .master-layout.is-tabbed-master-layout .master-type-link{
        min-width:138px!important;
        max-width:180px!important;
    }

    .master-layout.is-tabbed-master-layout .master-content .filter-bar{
        padding:9px!important;
    }
}


/* Phase 4.3.114 ? Master Data Responsive Table/Card Foundation
   I18N-safe CSS note: mobile labels are rendered from data-label attributes. */
.master-layout.is-tabbed-master-layout .master-table-card{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:hidden!important;
}

.master-layout.is-tabbed-master-layout .master-table-card .table-wrap{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow-x:auto!important;
    overflow-y:visible!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior-x:contain!important;
    border-radius:18px!important;
}

.master-layout.is-tabbed-master-layout .master-data-table{
    width:100%!important;
    min-width:100%!important;
    max-width:none!important;
    table-layout:auto!important;
    border-collapse:separate!important;
    border-spacing:0!important;
}

.master-layout.is-tabbed-master-layout .master-data-table th,
.master-layout.is-tabbed-master-layout .master-data-table td{
    min-width:0!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
}

.master-layout.is-tabbed-master-layout .master-data-table .master-col-main .doc-cell,
.master-layout.is-tabbed-master-layout .master-data-table .master-extra-cell span{
    max-width:100%!important;
    min-width:0!important;
    overflow-wrap:anywhere!important;
}

.master-layout.is-tabbed-master-layout .master-data-table .master-col-main .doc-cell strong,
.master-layout.is-tabbed-master-layout .master-data-table .master-col-main .doc-cell small,
.master-layout.is-tabbed-master-layout .master-data-table .master-extra-cell span{
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
    -webkit-line-clamp:unset!important;
}

@media (min-width:761px){
    .master-layout.is-tabbed-master-layout .master-data-table{
        table-layout:fixed!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table .master-col-select{
        width:52px!important;
        min-width:52px!important;
        max-width:52px!important;
        text-align:center!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table .master-col-drag{
        width:132px!important;
        min-width:132px!important;
        max-width:132px!important;
        text-align:center!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table .master-col-image{
        width:78px!important;
        min-width:78px!important;
        max-width:78px!important;
        text-align:center!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table .master-col-signature{
        width:138px!important;
        min-width:138px!important;
        max-width:138px!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table .master-col-main{
        width:clamp(210px,24vw,340px)!important;
        min-width:190px!important;
        max-width:360px!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table .master-col-actions{
        width:220px!important;
        min-width:200px!important;
        max-width:240px!important;
        position:sticky!important;
        right:0!important;
        z-index:2!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table thead .master-col-actions{
        z-index:3!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table .master-extra-cell{
        width:auto!important;
        min-width:0!important;
        max-width:none!important;
    }
}

@media (max-width:760px){
    .master-layout.is-tabbed-master-layout .master-table-card{
        padding:10px!important;
        border-radius:18px!important;
        overflow:hidden!important;
    }

    .master-layout.is-tabbed-master-layout .master-table-card .table-wrap{
        overflow:visible!important;
        border:0!important;
        border-radius:0!important;
        background:transparent!important;
        box-shadow:none!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table,
    .master-layout.is-tabbed-master-layout .master-data-table thead,
    .master-layout.is-tabbed-master-layout .master-data-table tbody,
    .master-layout.is-tabbed-master-layout .master-data-table tr,
    .master-layout.is-tabbed-master-layout .master-data-table th,
    .master-layout.is-tabbed-master-layout .master-data-table td{
        display:block!important;
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table{
        border:0!important;
        background:transparent!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table thead{
        display:none!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table tbody{
        display:grid!important;
        gap:12px!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table tbody tr{
        display:grid!important;
        grid-template-columns:minmax(0,1fr)!important;
        gap:9px!important;
        padding:12px!important;
        border:1px solid #dbe7f6!important;
        border-radius:18px!important;
        background:#ffffff!important;
        box-shadow:0 8px 20px rgba(15,23,42,.06)!important;
        overflow:hidden!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table tbody tr.is-highlighted{
        border-color:#f59e0b!important;
        box-shadow:0 10px 24px rgba(245,158,11,.16)!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table td{
        border:0!important;
        padding:0!important;
        background:transparent!important;
        position:static!important;
        right:auto!important;
        box-shadow:none!important;
        grid-area:auto!important;
        text-align:left!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table td::before{
        content:attr(data-label);
        display:block!important;
        margin:0 0 5px!important;
        color:#64748b!important;
        font-size:10.5px!important;
        line-height:1.2!important;
        font-weight:950!important;
        letter-spacing:.02em!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table td:not([data-label])::before,
    .master-layout.is-tabbed-master-layout .master-data-table .master-empty-cell::before{
        display:none!important;
        content:""!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table .master-col-main{
        order:1!important;
        padding:0 0 2px!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table .master-col-main::before{
        display:none!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table .master-col-main .doc-cell{
        display:grid!important;
        gap:4px!important;
        padding:0 0 4px!important;
        border-bottom:1px solid #e2e8f0!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table .master-col-main strong{
        color:#061b3a!important;
        font-size:15.5px!important;
        line-height:1.25!important;
        font-weight:950!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table .master-col-main small{
        color:#334155!important;
        font-size:13px!important;
        line-height:1.4!important;
        font-weight:800!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table .master-col-image,
    .master-layout.is-tabbed-master-layout .master-data-table .master-col-signature{
        order:2!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table .master-image-thumb{
        width:58px!important;
        height:58px!important;
        margin:0!important;
        border-radius:15px!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table .master-signature-thumb{
        width:100%!important;
        min-height:58px!important;
        margin:0!important;
        border-radius:14px!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table .master-extra-cell{
        order:3!important;
        display:grid!important;
        grid-template-columns:minmax(92px,.35fr) minmax(0,1fr)!important;
        gap:8px!important;
        align-items:start!important;
        padding:8px 10px!important;
        border:1px solid #e2e8f0!important;
        border-radius:13px!important;
        background:#f8fafc!important;
        color:#0f172a!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table .master-extra-cell::before{
        margin:0!important;
        color:#64748b!important;
        font-size:10.5px!important;
        line-height:1.35!important;
        font-weight:950!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table .master-extra-cell span{
        display:block!important;
        color:#0f172a!important;
        font-size:12.5px!important;
        line-height:1.4!important;
        font-weight:750!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table .master-col-actions{
        order:4!important;
        padding-top:2px!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table .master-col-actions::before{
        display:none!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table .master-col-actions .action-row{
        display:grid!important;
        grid-template-columns:repeat(auto-fit,minmax(92px,1fr))!important;
        gap:8px!important;
        width:100%!important;
        justify-content:stretch!important;
        flex-wrap:unset!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table .master-col-actions .action-row form,
    .master-layout.is-tabbed-master-layout .master-data-table .master-col-actions .action-row .button{
        width:100%!important;
        min-width:0!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table .master-col-actions .action-row .button{
        min-height:38px!important;
        justify-content:center!important;
        border-radius:12px!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table .master-col-select{
        order:5!important;
        display:flex!important;
        align-items:center!important;
        justify-content:flex-start!important;
        gap:8px!important;
        min-height:34px!important;
        padding:7px 10px!important;
        border:1px dashed #cbd5e1!important;
        border-radius:12px!important;
        background:#f8fafc!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table .master-col-select::before{
        margin:0!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table .master-col-select input{
        width:20px!important;
        height:20px!important;
        margin:0!important;
        accent-color:#0758b8!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table .master-col-drag{
        order:6!important;
        padding:7px 10px!important;
        border:1px dashed #bfdbfe!important;
        border-radius:12px!important;
        background:#f8fbff!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table .master-col-drag::before{
        margin-bottom:6px!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table .master-sort-cell{
        justify-items:start!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table .master-empty-row{
        display:block!important;
        padding:0!important;
        border:0!important;
        background:transparent!important;
        box-shadow:none!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table .master-empty-cell{
        display:block!important;
        padding:0!important;
    }

    .master-layout.is-tabbed-master-layout .master-batch-toolbar{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:10px!important;
        padding:10px!important;
        border-radius:16px!important;
    }

    .master-layout.is-tabbed-master-layout .master-batch-actions{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:8px!important;
        width:100%!important;
    }

    .master-layout.is-tabbed-master-layout .master-batch-actions .button{
        width:100%!important;
        justify-content:center!important;
    }
}

@media (max-width:420px){
    .master-layout.is-tabbed-master-layout .master-data-table tbody tr{
        padding:10px!important;
        gap:8px!important;
        border-radius:16px!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table .master-extra-cell{
        grid-template-columns:1fr!important;
        gap:4px!important;
    }

    .master-layout.is-tabbed-master-layout .master-data-table .master-col-actions .action-row{
        grid-template-columns:1fr!important;
    }
}

.master-layout.is-tabbed-master-layout [data-master-responsive-card="1"]{
    box-sizing:border-box!important;
}

/* Phase 4.3.115 ? Approval Flow Approvers Layout Polish */
.approval-approver-page{
    display:grid;
    gap:18px;
    width:100%;
    max-width:100%;
    min-width:0;
}

.approval-flow-overview-card,
.approval-approver-form-card{
    width:100%;
    max-width:100%;
    min-width:0;
}

.approval-flow-overview-card{
    display:grid;
    gap:14px;
}

.approval-flow-overview-head{
    align-items:flex-start;
    margin-bottom:0;
}

.approval-flow-summary-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
}

.approval-flow-summary-item{
    display:grid;
    gap:4px;
    padding:12px 14px;
    border:1px solid #e2e8f0;
    border-radius:16px;
    background:#f8fafc;
    min-width:0;
}

.approval-flow-summary-item span{
    color:#64748b;
    font-size:11.5px;
    line-height:1.3;
    font-weight:900;
}

.approval-flow-summary-item strong{
    color:#0f172a;
    font-size:14px;
    line-height:1.35;
    font-weight:950;
    overflow-wrap:anywhere;
}

.approval-flow-principle-box{
    display:grid;
    grid-template-columns:auto minmax(0,1fr);
    gap:8px;
    align-items:flex-start;
    padding:12px 14px;
    border:1px solid #bfdbfe;
    border-radius:16px;
    background:#eff6ff;
    color:#1e3a8a;
    font-size:13px;
    line-height:1.55;
}

.approval-flow-principle-box strong{
    color:#1d4ed8;
    font-weight:950;
    white-space:nowrap;
}

.approval-flow-principle-box span{
    min-width:0;
    overflow-wrap:anywhere;
}

.approval-approver-form-card{
    display:grid;
    gap:14px;
}

.approval-approver-form-head{
    margin-bottom:0;
}

.approval-add-row-button{
    min-height:38px;
}

.approval-scope-table-wrap{
    width:100%;
    max-width:100%;
    overflow-x:auto;
    overflow-y:visible;
    border:1px solid #dbe5f0;
    border-radius:18px;
    background:#fff;
    -webkit-overflow-scrolling:touch;
}

.approval-scope-table{
    width:100%;
    min-width:1160px;
    table-layout:fixed;
    border-collapse:separate;
    border-spacing:0;
}

.approval-scope-table th,
.approval-scope-table td{
    vertical-align:top;
}

.approval-scope-table thead th{
    position:sticky;
    top:0;
    z-index:2;
    background:#f8fafc;
    color:#334155;
    font-size:12px;
    font-weight:950;
}

.approval-scope-table td{
    background:#fff;
}

.approval-scope-table td:nth-child(1),
.approval-scope-table td:nth-child(6){
    text-align:left;
}

.approval-scope-table .input,
.approval-scope-table .select{
    width:100%;
    max-width:100%;
    min-width:0;
}

.approval-scope-table .select{
    min-height:40px;
}

.approval-scope-table select[multiple]{
    min-height:106px;
    line-height:1.4;
}

.approval-level-input,
.approval-sort-input{
    max-width:86px!important;
}

.approval-all-toggle{
    width:100%;
    min-height:40px;
    justify-content:flex-start;
    gap:9px;
    padding:8px 10px;
    border:1px solid #e2e8f0;
    border-radius:13px;
    background:#f8fafc;
}

.approval-all-toggle strong{
    color:#334155;
    font-size:12px;
    font-weight:900;
}

.approval-remove-row-button{
    width:100%;
    justify-content:center;
}

.approval-approver-form-card .material-form-actions{
    margin-top:0;
    padding-top:2px;
}

@media (min-width:1400px){
    .approval-scope-table{
        min-width:100%;
    }
}

@media (max-width:1100px){
    .approval-flow-summary-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .approval-scope-table{
        min-width:1080px;
    }
}

@media (max-width:760px){
    .approval-approver-page{
        gap:14px;
    }

    .approval-flow-overview-card,
    .approval-approver-form-card{
        padding:13px!important;
        border-radius:18px!important;
    }

    .approval-flow-overview-head,
    .approval-approver-form-head{
        display:grid;
        gap:10px;
    }

    .approval-flow-overview-head .badge{
        justify-self:start;
    }

    .approval-flow-summary-grid{
        grid-template-columns:1fr;
        gap:9px;
    }

    .approval-flow-summary-item{
        padding:10px 12px;
        border-radius:14px;
    }

    .approval-flow-principle-box{
        grid-template-columns:1fr;
        gap:3px;
        padding:11px 12px;
        border-radius:14px;
    }

    .approval-add-row-button,
    .approval-approver-form-card .material-form-actions .button{
        width:100%;
        justify-content:center;
    }

    .approval-approver-form-card .material-form-actions{
        display:grid!important;
        grid-template-columns:1fr;
        gap:8px;
    }

    .approval-scope-table-wrap{
        overflow:visible!important;
        border:0!important;
        border-radius:0!important;
        background:transparent!important;
        box-shadow:none!important;
    }

    .approval-scope-table,
    .approval-scope-table thead,
    .approval-scope-table tbody,
    .approval-scope-table tr,
    .approval-scope-table th,
    .approval-scope-table td{
        display:block!important;
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
    }

    .approval-scope-table{
        border:0!important;
        background:transparent!important;
    }

    .approval-scope-table thead{
        display:none!important;
    }

    .approval-scope-table tbody{
        display:grid!important;
        gap:12px!important;
    }

    .approval-scope-table tbody tr{
        display:grid!important;
        gap:10px!important;
        padding:12px!important;
        border:1px solid #dbe7f6!important;
        border-radius:18px!important;
        background:#fff!important;
        box-shadow:0 8px 20px rgba(15,23,42,.06)!important;
        overflow:hidden!important;
    }

    .approval-scope-table td{
        display:grid!important;
        grid-template-columns:minmax(94px,.34fr) minmax(0,1fr)!important;
        gap:8px!important;
        align-items:start!important;
        padding:8px 10px!important;
        border:1px solid #e2e8f0!important;
        border-radius:13px!important;
        background:#f8fafc!important;
        text-align:left!important;
    }

    .approval-scope-table td::before{
        content:attr(data-label);
        color:#64748b;
        font-size:10.5px;
        line-height:1.35;
        font-weight:950;
        letter-spacing:.02em;
    }

    .approval-scope-table td:nth-child(2),
    .approval-scope-table td:nth-child(5){
        grid-template-columns:1fr!important;
    }

    .approval-scope-table td:nth-child(2)::before,
    .approval-scope-table td:nth-child(5)::before{
        margin-bottom:0;
    }

    .approval-scope-table .input,
    .approval-scope-table .select,
    .approval-scope-table select[multiple]{
        min-width:0!important;
        width:100%!important;
        max-width:100%!important;
    }

    .approval-level-input,
    .approval-sort-input{
        max-width:100%!important;
    }

    .approval-all-toggle{
        padding:0;
        border:0;
        background:transparent;
        min-height:30px;
    }

    .approval-scope-table small.text-muted{
        display:block;
        margin-top:5px;
        font-size:11.5px;
        line-height:1.35;
    }

    .approval-scope-table td:last-child{
        grid-template-columns:1fr!important;
        padding:0!important;
        border:0!important;
        background:transparent!important;
    }

    .approval-scope-table td:last-child::before{
        display:none!important;
    }

    .approval-remove-row-button{
        min-height:38px;
        border-radius:12px!important;
    }
}

@media (max-width:420px){
    .approval-flow-overview-card,
    .approval-approver-form-card{
        padding:11px!important;
    }

    .approval-scope-table tbody tr{
        padding:10px!important;
        border-radius:16px!important;
    }

    .approval-scope-table td{
        grid-template-columns:1fr!important;
        gap:5px!important;
    }
}

/* Phase 4.3.116 ? Approval Scope Table Wrap Polish */
.approval-scope-table-wrap{
    position:relative;
    border:1px solid #d6e0ec;
    border-radius:20px;
    background:#ffffff;
    box-shadow:0 1px 2px rgba(15,23,42,.04), 0 12px 28px rgba(15,23,42,.055);
    isolation:isolate;
    scrollbar-gutter:stable both-edges;
    overscroll-behavior-x:contain;
}

.approval-scope-table-wrap:focus-within{
    border-color:#93c5fd;
    box-shadow:0 0 0 3px rgba(37,99,235,.12), 0 12px 28px rgba(15,23,42,.055);
}

.approval-scope-table-wrap::-webkit-scrollbar{
    height:10px;
}

.approval-scope-table-wrap::-webkit-scrollbar-track{
    background:#f1f5f9;
    border-radius:999px;
}

.approval-scope-table-wrap::-webkit-scrollbar-thumb{
    background:#cbd5e1;
    border:2px solid #f1f5f9;
    border-radius:999px;
}

.approval-scope-table-wrap::-webkit-scrollbar-thumb:hover{
    background:#94a3b8;
}

.approval-scope-table{
    border-collapse:separate;
    border-spacing:0;
    font-size:13px;
}

.approval-scope-table thead th{
    padding:13px 12px;
    border-bottom:1px solid #dbe5f0;
    background:#f8fafc;
    color:#334155;
    letter-spacing:.01em;
    white-space:nowrap;
}

.approval-scope-table thead th:first-child{
    border-top-left-radius:18px;
}

.approval-scope-table thead th:last-child{
    border-top-right-radius:18px;
}

.approval-scope-table tbody td{
    padding:12px;
    border-bottom:1px solid #edf2f7;
    color:#0f172a;
}

.approval-scope-table tbody tr:last-child td{
    border-bottom:0;
}

.approval-scope-table tbody tr:hover td{
    background:#fbfdff;
}

.approval-scope-table td:nth-child(1),
.approval-scope-table td:nth-child(6),
.approval-scope-table td:nth-child(7){
    background:#fcfdff;
}

.approval-scope-table .input,
.approval-scope-table .select{
    border-color:#d8e2ee;
    background:#fff;
    box-shadow:0 1px 0 rgba(15,23,42,.03);
}

.approval-scope-table .input:focus,
.approval-scope-table .select:focus{
    border-color:#3b82f6;
    box-shadow:0 0 0 3px rgba(59,130,246,.13);
}

.approval-scope-table select[multiple]{
    padding:8px;
    resize:vertical;
}

.approval-scope-table select[multiple] option{
    padding:6px 8px;
    border-radius:8px;
    white-space:normal;
}

.approval-all-toggle{
    border-color:#d8e2ee;
    background:#f8fafc;
    transition:border-color .16s ease, background .16s ease;
}

.approval-all-toggle:has(input:checked){
    border-color:#93c5fd;
    background:#eff6ff;
}

.approval-remove-row-button{
    min-height:38px;
    box-shadow:none;
}

@media (min-width:1400px){
    .approval-scope-table-wrap{
        overflow-x:visible;
    }

    .approval-scope-table{
        min-width:100%;
    }
}

@media (max-width:760px){
    .approval-scope-table-wrap{
        border:0!important;
        background:transparent!important;
        box-shadow:none!important;
        scrollbar-gutter:auto!important;
    }

    .approval-scope-table tbody{
        gap:14px!important;
    }

    .approval-scope-table tbody tr{
        position:relative;
        gap:9px!important;
        padding:12px!important;
        border:1px solid #d9e5f2!important;
        border-radius:20px!important;
        background:#fff!important;
        box-shadow:0 1px 2px rgba(15,23,42,.06), 0 10px 22px rgba(15,23,42,.055)!important;
    }

    .approval-scope-table tbody tr::before{
        content:"";
        position:absolute;
        inset:0 auto 0 0;
        width:4px;
        border-radius:20px 0 0 20px;
        background:#2563eb;
        opacity:.82;
    }

    .approval-scope-table td{
        grid-template-columns:minmax(96px,.34fr) minmax(0,1fr)!important;
        padding:9px 10px!important;
        border:1px solid #e4ebf3!important;
        border-radius:14px!important;
        background:#f8fafc!important;
    }

    .approval-scope-table td::before{
        color:#475569!important;
        font-size:10.8px!important;
        letter-spacing:.025em!important;
    }

    .approval-scope-table td:nth-child(2),
    .approval-scope-table td:nth-child(5){
        background:#fff!important;
        border-color:#dbe5f0!important;
    }

    .approval-scope-table td:nth-child(2)::before,
    .approval-scope-table td:nth-child(5)::before{
        padding-bottom:2px;
        border-bottom:1px solid #eef2f7;
    }

    .approval-scope-table .input,
    .approval-scope-table .select,
    .approval-scope-table select[multiple]{
        min-height:42px!important;
        border-radius:12px!important;
    }

    .approval-scope-table select[multiple]{
        min-height:132px!important;
    }

    .approval-all-toggle{
        min-height:36px!important;
        padding:7px 0!important;
    }

    .approval-remove-row-button{
        min-height:42px!important;
    }
}

@media (max-width:420px){
    .approval-scope-table td{
        padding:9px!important;
        border-radius:13px!important;
    }

    .approval-scope-table select[multiple]{
        min-height:148px!important;
    }
}

/* Phase 4.3.117 ? Approval Scope Table Full Wrap Fill
   Keep the approval approver table visually locked to its own wrapper.
   This intentionally overrides the generic .master-data-table max-content rule. */
.approval-scope-table-wrap > .master-data-table.approval-scope-table{
    width:100%!important;
    min-width:1080px!important;
    max-width:none!important;
    table-layout:fixed!important;
}

.approval-scope-table-wrap > .master-data-table.approval-scope-table thead,
.approval-scope-table-wrap > .master-data-table.approval-scope-table tbody,
.approval-scope-table-wrap > .master-data-table.approval-scope-table tr{
    width:100%!important;
}

.approval-scope-table-wrap > .master-data-table.approval-scope-table th,
.approval-scope-table-wrap > .master-data-table.approval-scope-table td{
    min-width:0!important;
    max-width:none!important;
    box-sizing:border-box!important;
}

.approval-scope-table-wrap > .master-data-table.approval-scope-table th:nth-child(1),
.approval-scope-table-wrap > .master-data-table.approval-scope-table td:nth-child(1){
    width:8%!important;
}

.approval-scope-table-wrap > .master-data-table.approval-scope-table th:nth-child(2),
.approval-scope-table-wrap > .master-data-table.approval-scope-table td:nth-child(2){
    width:24%!important;
}

.approval-scope-table-wrap > .master-data-table.approval-scope-table th:nth-child(3),
.approval-scope-table-wrap > .master-data-table.approval-scope-table td:nth-child(3){
    width:16%!important;
}

.approval-scope-table-wrap > .master-data-table.approval-scope-table th:nth-child(4),
.approval-scope-table-wrap > .master-data-table.approval-scope-table td:nth-child(4){
    width:12%!important;
}

.approval-scope-table-wrap > .master-data-table.approval-scope-table th:nth-child(5),
.approval-scope-table-wrap > .master-data-table.approval-scope-table td:nth-child(5){
    width:26%!important;
}

.approval-scope-table-wrap > .master-data-table.approval-scope-table th:nth-child(6),
.approval-scope-table-wrap > .master-data-table.approval-scope-table td:nth-child(6){
    width:8%!important;
}

.approval-scope-table-wrap > .master-data-table.approval-scope-table th:nth-child(7),
.approval-scope-table-wrap > .master-data-table.approval-scope-table td:nth-child(7){
    width:6%!important;
}

@media (min-width:1280px){
    .approval-scope-table-wrap{
        overflow-x:visible!important;
    }

    .approval-scope-table-wrap > .master-data-table.approval-scope-table{
        min-width:100%!important;
    }
}

@media (min-width:761px) and (max-width:1279px){
    .approval-scope-table-wrap{
        overflow-x:auto!important;
    }

    .approval-scope-table-wrap > .master-data-table.approval-scope-table{
        min-width:1080px!important;
    }
}

@media (max-width:760px){
    .approval-scope-table-wrap > .master-data-table.approval-scope-table,
    .approval-scope-table-wrap > .master-data-table.approval-scope-table thead,
    .approval-scope-table-wrap > .master-data-table.approval-scope-table tbody,
    .approval-scope-table-wrap > .master-data-table.approval-scope-table tr,
    .approval-scope-table-wrap > .master-data-table.approval-scope-table th,
    .approval-scope-table-wrap > .master-data-table.approval-scope-table td{
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
        table-layout:auto!important;
    }
}

/* Phase 4.3.118 ? Stock Card Balance Snapshot Fallback */
.badge.badge-amber,
.badge-amber{
  background:#fffbeb!important;
  border:1px solid #fcd34d!important;
  color:#92400e!important;
}
.stock-card-snapshot-note{
  background:#fffbeb!important;
  border-color:#fcd34d!important;
  color:#92400e!important;
}
.stock-card-opening-pill{
  display:inline-flex;
  align-items:center;
  max-width:100%;
  border:1px solid #fcd34d;
  background:#fffbeb;
  color:#92400e;
  border-radius:999px;
  padding:3px 9px;
  font-size:12px;
  font-weight:900;
  line-height:1.25;
  overflow-wrap:anywhere;
}
.stock-card-snapshot-row td{
  background:#fffdf5;
}
.stock-card-snapshot-row:hover td{
  background:#fffbeb;
}
.stock-card-table{
  width:100%!important;
}
.stock-card-table th,
.stock-card-table td{
  vertical-align:top;
}
@media(max-width:760px){
  .stock-card-table thead,
  .stock-card-table tfoot{
    display:none;
  }
  .stock-card-table,
  .stock-card-table tbody,
  .stock-card-table tr,
  .stock-card-table td{
    display:block;
    width:100%!important;
  }
  .stock-card-table tbody{
    display:grid;
    gap:12px;
  }
  .stock-card-table tr{
    border:1px solid #e2e8f0;
    border-radius:16px;
    background:#fff;
    padding:12px;
    box-shadow:0 8px 18px rgba(15,23,42,.05);
  }
  .stock-card-table tr.stock-card-snapshot-row{
    border-color:#fcd34d;
    background:#fffdf5;
  }
  .stock-card-table td{
    border:0!important;
    padding:9px 0!important;
    display:grid;
    grid-template-columns:minmax(112px,42%) minmax(0,1fr);
    gap:10px;
    align-items:start;
  }
  .stock-card-table td+td{
    border-top:1px solid #f1f5f9!important;
  }
  .stock-card-table td::before{
    content:attr(data-label);
    color:#64748b;
    font-size:12px;
    font-weight:900;
    line-height:1.4;
  }
  .stock-card-table .stock-card-empty-row{
    padding:0;
    border:0;
    box-shadow:none;
    background:transparent;
  }
  .stock-card-table .stock-card-empty-row td{
    display:block;
    padding:0!important;
  }
  .stock-card-table .stock-card-empty-row td::before{
    content:none;
  }
}

/* Phase 4.3.119 ? Stock Balance Reservation Sources */
.stock-balance-kpi-grid{
  grid-template-columns:repeat(5,minmax(0,1fr));
}
.stock-balance-table-wrap{
  overflow:auto;
  border-radius:18px;
  border:1px solid #e2e8f0;
  background:#fff;
}
.stock-balance-table{
  width:100%;
  min-width:1120px;
  border-collapse:separate;
  border-spacing:0;
}
.stock-balance-table th,
.stock-balance-table td{
  vertical-align:top;
}
.stock-balance-table th:nth-child(5),
.stock-balance-table td:nth-child(5){
  min-width:250px;
}
.reservation-source-cell{
  display:grid;
  gap:7px;
  min-width:0;
}
.reservation-source-cell>strong{
  font-size:14px;
  color:#0f172a;
}
.reservation-source-cell>small{
  color:#64748b;
  font-size:12px;
  font-weight:750;
}
.reservation-source-cell.has-reservation>strong{
  color:#b45309;
}
.reservation-source-details{
  border:1px solid #fde68a;
  border-radius:14px;
  background:#fffbeb;
  overflow:hidden;
}
.reservation-source-details summary{
  cursor:pointer;
  list-style:none;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:9px 11px;
  font-size:12px;
  font-weight:900;
  color:#92400e;
}
.reservation-source-details summary::-webkit-details-marker{display:none}
.reservation-source-details summary::after{
  content:'?';
  font-size:11px;
  color:#b45309;
  transition:transform .18s ease;
}
.reservation-source-details[open] summary::after{transform:rotate(180deg)}
.reservation-source-details summary span{
  min-width:26px;
  height:22px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#fff7ed;
  border:1px solid #fed7aa;
  color:#9a3412;
  font-size:11px;
}
.reservation-source-list{
  display:grid;
  gap:8px;
  padding:0 10px 10px;
}
.reservation-source-total,
.reservation-source-note,
.reservation-source-warning{
  border-radius:12px;
  padding:8px 10px;
  font-size:12px;
  line-height:1.5;
  font-weight:750;
}
.reservation-source-total{
  background:#fff;
  border:1px solid #fde68a;
  color:#78350f;
}
.reservation-source-warning{
  background:#fff7ed;
  border:1px dashed #fdba74;
  color:#9a3412;
}
.reservation-source-note{
  background:#eff6ff;
  border:1px solid #bfdbfe;
  color:#1d4ed8;
}
.reservation-source-item{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  padding:10px;
  border:1px solid #fde68a;
  border-radius:13px;
  background:#fff;
}
.reservation-source-item>div{
  display:grid;
  gap:3px;
  min-width:0;
}
.reservation-source-item strong{
  font-size:13px;
  color:#0f172a;
}
.reservation-source-item span,
.reservation-source-item small{
  font-size:11px;
  line-height:1.45;
  color:#64748b;
  overflow-wrap:anywhere;
}
@media(max-width:1200px){
  .stock-balance-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media(max-width:760px){
  .stock-balance-kpi-grid{grid-template-columns:1fr 1fr;}
  .stock-balance-table-wrap{
    border:0;
    background:transparent;
    overflow:visible;
  }
  .stock-balance-table,
  .stock-balance-table tbody,
  .stock-balance-table tr,
  .stock-balance-table td{
    display:block;
    width:100%;
    min-width:0;
  }
  .stock-balance-table thead{display:none;}
  .stock-balance-table tbody{
    display:grid;
    gap:14px;
  }
  .stock-balance-table tr{
    border:1px solid #e2e8f0;
    border-radius:18px;
    background:#fff;
    box-shadow:0 12px 26px rgba(15,23,42,.06);
    overflow:hidden;
  }
  .stock-balance-table td{
    display:grid;
    grid-template-columns:120px minmax(0,1fr);
    gap:12px;
    padding:11px 14px;
    border:0!important;
    border-bottom:1px solid #f1f5f9!important;
    text-align:left!important;
  }
  .stock-balance-table td:last-child{border-bottom:0!important;}
  .stock-balance-table td::before{
    content:attr(data-label);
    font-size:11px;
    font-weight:900;
    color:#64748b;
    text-transform:none;
  }
  .stock-balance-table .stock-balance-empty-row,
  .stock-balance-table .stock-balance-empty-row td{
    display:block;
  }
  .stock-balance-table .stock-balance-empty-row td::before{display:none;}
  .reservation-source-details summary{
    align-items:flex-start;
  }
  .reservation-source-item{
    grid-template-columns:1fr;
  }
  .reservation-source-item .button{
    width:100%;
    justify-content:center;
  }
}
@media(max-width:520px){
  .stock-balance-kpi-grid{grid-template-columns:1fr;}
  .stock-balance-table td{
    grid-template-columns:1fr;
    gap:5px;
  }
}

/* Phase 4.3.121 ? Stock Adjustment Suggestion Pickers */
.stock-adjustment-suggest-field{
    display:grid!important;
    gap:8px!important;
    align-content:start!important;
}
.stock-adjustment-suggest-list{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:6px!important;
    margin-top:2px!important;
}
.stock-adjustment-suggest-chip{
    appearance:none!important;
    border:1px solid #dbe3ef!important;
    background:#f8fafc!important;
    color:#334155!important;
    min-height:32px!important;
    border-radius:999px!important;
    padding:6px 10px!important;
    font-size:12px!important;
    font-weight:800!important;
    line-height:1.25!important;
    cursor:pointer!important;
    transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease!important;
}
.stock-adjustment-suggest-chip:hover,
.stock-adjustment-suggest-chip:focus-visible{
    background:#eef6ff!important;
    border-color:#9cc7f5!important;
    color:#075985!important;
    box-shadow:0 0 0 3px rgba(14,116,144,.10)!important;
    outline:none!important;
}
.stock-adjustment-suggest-chip.is-active{
    background:#e0f2fe!important;
    border-color:#38bdf8!important;
    color:#075985!important;
}
@media(max-width:640px){
    .stock-adjustment-suggest-list{
        display:grid!important;
        grid-template-columns:1fr!important;
    }
    .stock-adjustment-suggest-chip{
        width:100%!important;
        justify-content:flex-start!important;
        text-align:left!important;
        border-radius:12px!important;
        padding:9px 11px!important;
    }
}

/* Phase 4.3.122 ? Stock Adjustment Item Remark Suggestions */
.stock-adjustment-line .stock-adjustment-remark-field.stock-adjustment-suggest-field{
    align-content:start!important;
}
.stock-adjustment-item-suggest-list{
    gap:5px!important;
}
.stock-adjustment-item-suggest-chip{
    font-size:11.5px!important;
    min-height:30px!important;
    padding:5px 9px!important;
}
@media(min-width:1025px){
    .stock-adjustment-line .stock-adjustment-remark-field .stock-adjustment-suggest-list{
        max-width:100%!important;
    }
}
@media(max-width:640px){
    .stock-adjustment-line .stock-adjustment-remark-field.stock-adjustment-suggest-field{
        gap:7px!important;
    }
    .stock-adjustment-item-suggest-chip{
        min-height:36px!important;
        font-size:12px!important;
    }
}

/* Phase 4.3.123 ? Stock Adjustment location-aware current quantity */
.stock-adjustment-line{
    grid-template-columns:minmax(220px,1.35fr) minmax(210px,1.05fr) minmax(120px,.72fr) minmax(130px,.78fr) minmax(120px,.72fr) minmax(120px,.72fr) minmax(120px,.72fr) minmax(230px,1.18fr) auto!important;
    align-items:start!important;
}
.stock-adjustment-location-field .field-hint{
    display:block!important;
    margin-top:6px!important;
    color:#64748b!important;
    font-size:11.5px!important;
    line-height:1.45!important;
    font-weight:750!important;
}
.stock-adjustment-line [data-current-total-qty],
.stock-adjustment-line [data-current-qty],
.stock-adjustment-line [data-diff-qty]{
    font-variant-numeric:tabular-nums!important;
    text-align:right!important;
}
.stock-adjustment-line [data-current-total-qty]{
    background:#f8fafc!important;
    border-color:#dbe3ef!important;
    color:#0f172a!important;
    font-weight:850!important;
}
.stock-adjustment-line [data-current-qty]{
    background:#f0fdfa!important;
    border-color:#99f6e4!important;
    color:#115e59!important;
    font-weight:900!important;
}
.stock-adjustment-line [data-adjustment-location] option{
    font-size:13px!important;
}
@media(max-width:1500px){
    .stock-adjustment-line{
        grid-template-columns:repeat(3,minmax(0,1fr))!important;
    }
    .stock-adjustment-remark-field,
    .stock-adjustment-row-action{
        grid-column:auto!important;
    }
}
@media(max-width:980px){
    .stock-adjustment-line{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
    .stock-adjustment-remark-field{
        grid-column:1/-1!important;
    }
    .stock-adjustment-row-action{
        grid-column:1/-1!important;
    }
}
@media(max-width:640px){
    .stock-adjustment-line{
        grid-template-columns:1fr!important;
        padding:12px!important;
        border-radius:16px!important;
    }
    .stock-adjustment-location-field .field-hint{
        font-size:12px!important;
    }
    .stock-adjustment-line [data-current-total-qty],
    .stock-adjustment-line [data-current-qty],
    .stock-adjustment-line [data-diff-qty]{
        text-align:left!important;
    }
}

/* Phase 4.3.124 ? Stock Adjustment workbench production polish */
.stock-adjustment-overview{
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:12px!important;
    margin-bottom:18px!important;
}
.stock-adjustment-overview-card{
    display:grid!important;
    gap:5px!important;
    min-height:118px!important;
    padding:16px!important;
    border:1px solid #dbe3ef!important;
    border-radius:18px!important;
    background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%)!important;
    box-shadow:0 1px 2px rgba(15,23,42,.045)!important;
}
.stock-adjustment-overview-card span{
    color:#64748b!important;
    font-size:11px!important;
    font-weight:950!important;
    letter-spacing:.045em!important;
    text-transform:uppercase!important;
}
.stock-adjustment-overview-card strong{
    color:#0f172a!important;
    font-size:22px!important;
    line-height:1.2!important;
    font-weight:950!important;
    font-variant-numeric:tabular-nums!important;
}
.stock-adjustment-overview-card small{
    color:#64748b!important;
    font-size:12px!important;
    line-height:1.45!important;
    font-weight:700!important;
}
.stock-adjustment-overview-card.is-in{
    border-color:#bbf7d0!important;
    background:linear-gradient(180deg,#f0fdf4 0%,#ffffff 100%)!important;
}
.stock-adjustment-overview-card.is-in strong{color:#15803d!important;}
.stock-adjustment-overview-card.is-out{
    border-color:#fecaca!important;
    background:linear-gradient(180deg,#fef2f2 0%,#ffffff 100%)!important;
}
.stock-adjustment-overview-card.is-out strong{color:#b91c1c!important;}
.stock-adjustment-overview-card.is-value{
    border-color:#bfdbfe!important;
    background:linear-gradient(180deg,#eff6ff 0%,#ffffff 100%)!important;
}
.stock-adjustment-overview-card.is-value strong{color:#1d4ed8!important;}
.stock-adjustment-filter-card{
    position:relative!important;
    z-index:40!important;
    overflow:visible!important;
}
.stock-adjustment-list-card,
.stock-adjustment-detail-card{
    position:relative!important;
    z-index:1!important;
    overflow:hidden!important;
}
.stock-adjustment-filter-card .document-section-head,
.stock-adjustment-filter-card .stock-adjustment-active-filters,
.stock-adjustment-filter-card .stock-adjustment-filter-bar,
.stock-adjustment-filter-card .filter-field,
.stock-adjustment-filter-card .stock-adjustment-filter-period{
    position:relative!important;
    overflow:visible!important;
}
.stock-adjustment-filter-card .core-select,
.stock-adjustment-filter-card .core-select-control{
    width:100%!important;
    max-width:100%!important;
}
.stock-adjustment-filter-card .core-select.open,
.stock-adjustment-filter-card .core-select.is-open,
.stock-adjustment-filter-card .core-select.is-focused{
    z-index:2601!important;
}
.core-select-dropdown[data-portal="1"].open{
    z-index:2600!important;
}
.stock-adjustment-filter-card + .stock-adjustment-list-card{
    margin-top:14px!important;
}
.stock-adjustment-filter-bar{
    display:grid!important;
    grid-template-columns:minmax(240px,1.3fr) repeat(4,minmax(150px,.75fr)) minmax(240px,1fr) minmax(220px,1fr) auto!important;
    gap:12px!important;
    align-items:end!important;
    margin-bottom:0!important;
}
.stock-adjustment-filter-bar .filter-field{
    min-width:0!important;
}
.stock-adjustment-filter-bar .filter-actions,
.stock-adjustment-filter-actions{
    min-width:180px!important;
    justify-content:flex-end!important;
    align-items:end!important;
}
.stock-adjustment-table-wrap,
.stock-adjustment-detail-wrap{
    border:1px solid #dbe3ef!important;
    border-radius:18px!important;
    background:#fff!important;
    overflow:auto!important;
}
.stock-adjustments-table,
.stock-adjustment-detail-table{
    width:100%!important;
    min-width:1120px!important;
    border-collapse:separate!important;
    border-spacing:0!important;
}
.stock-adjustments-table th,
.stock-adjustment-detail-table th{
    background:#f8fafc!important;
    color:#475569!important;
    border-bottom:1px solid #dbe3ef!important;
    font-size:11.5px!important;
    font-weight:950!important;
    letter-spacing:.03em!important;
    text-transform:uppercase!important;
    white-space:nowrap!important;
}
.stock-adjustments-table td,
.stock-adjustment-detail-table td{
    vertical-align:top!important;
    border-bottom:1px solid #edf2f7!important;
}
.stock-adjustments-table tbody tr:hover,
.stock-adjustment-detail-table tbody tr:hover{
    background:#f8fafc!important;
}
.stock-adjustment-doc-cell,
.stock-adjustment-reason-cell{
    display:grid!important;
    gap:4px!important;
}
.stock-adjustment-doc-cell strong,
.stock-adjustment-reason-cell strong{
    color:#0f172a!important;
    font-weight:950!important;
    line-height:1.3!important;
}
.stock-adjustment-doc-cell small,
.stock-adjustment-reason-cell small,
.stock-adjustment-reason-cell span{
    color:#64748b!important;
    font-size:12px!important;
    line-height:1.45!important;
    font-weight:700!important;
}
.stock-adjustment-qty{
    font-weight:950!important;
    font-variant-numeric:tabular-nums!important;
    text-align:right!important;
    white-space:nowrap!important;
}
.stock-adjustment-qty-in{color:#15803d!important;}
.stock-adjustment-qty-out{color:#b91c1c!important;}
.stock-adjustment-empty-row td{
    padding:0!important;
}
@media(min-width:1800px){
    .stock-adjustment-filter-bar{
        grid-template-columns:minmax(300px,1.4fr) repeat(4,minmax(170px,.72fr)) minmax(300px,1fr) minmax(260px,1fr) auto!important;
    }
    .stock-adjustments-table,
    .stock-adjustment-detail-table{
        min-width:0!important;
        table-layout:fixed!important;
    }
    .stock-adjustments-table th:nth-child(1){width:13%!important;}
    .stock-adjustments-table th:nth-child(2){width:8%!important;}
    .stock-adjustments-table th:nth-child(3){width:22%!important;}
    .stock-adjustments-table th:nth-child(4){width:8%!important;}
    .stock-adjustments-table th:nth-child(5){width:6%!important;}
    .stock-adjustments-table th:nth-child(6),
    .stock-adjustments-table th:nth-child(7),
    .stock-adjustments-table th:nth-child(8){width:8%!important;}
    .stock-adjustments-table th:nth-child(9){width:10%!important;}
    .stock-adjustments-table th:nth-child(10){width:8%!important;}
    .stock-adjustments-table th:nth-child(11){width:7%!important;}
}
@media(max-width:1500px){
    .stock-adjustment-overview{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
    .stock-adjustment-filter-bar{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
    .stock-adjustment-filter-actions{grid-column:1/-1!important;justify-content:flex-start!important;}
}
@media(max-width:900px){
    .stock-adjustment-overview{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
    .stock-adjustment-filter-bar{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
    .stock-adjustment-filter-bar .filter-field-wide{grid-column:1/-1!important;}
    .stock-adjustment-filter-actions .button{min-height:42px!important;}
}
@media(max-width:720px){
    .stock-adjustment-overview{grid-template-columns:1fr!important;gap:10px!important;}
    .stock-adjustment-overview-card{min-height:0!important;padding:14px!important;}
    .stock-adjustment-filter-bar{grid-template-columns:1fr!important;}
    .stock-adjustment-filter-actions{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:8px!important;
        min-width:0!important;
    }
    .stock-adjustment-filter-actions .button{width:100%!important;justify-content:center!important;}
    .stock-adjustment-table-wrap,
    .stock-adjustment-detail-wrap{
        border:0!important;
        border-radius:0!important;
        overflow:visible!important;
        background:transparent!important;
    }
    .stock-adjustments-table,
    .stock-adjustment-detail-table,
    .stock-adjustments-table thead,
    .stock-adjustment-detail-table thead,
    .stock-adjustments-table tbody,
    .stock-adjustment-detail-table tbody,
    .stock-adjustments-table tr,
    .stock-adjustment-detail-table tr,
    .stock-adjustments-table th,
    .stock-adjustment-detail-table th,
    .stock-adjustments-table td,
    .stock-adjustment-detail-table td{
        display:block!important;
        width:100%!important;
        min-width:0!important;
    }
    .stock-adjustments-table thead,
    .stock-adjustment-detail-table thead{display:none!important;}
    .stock-adjustments-table tbody,
    .stock-adjustment-detail-table tbody{display:grid!important;gap:12px!important;}
    .stock-adjustments-table tr,
    .stock-adjustment-detail-table tr{
        border:1px solid #dbe3ef!important;
        border-radius:16px!important;
        background:#fff!important;
        padding:12px!important;
        box-shadow:0 1px 2px rgba(15,23,42,.045)!important;
    }
    .stock-adjustments-table tr.stock-adjustment-empty-row,
    .stock-adjustment-detail-table tr.stock-adjustment-empty-row{
        padding:0!important;
        border:0!important;
        box-shadow:none!important;
        background:transparent!important;
    }
    .stock-adjustments-table td,
    .stock-adjustment-detail-table td{
        display:grid!important;
        grid-template-columns:minmax(112px,.42fr) minmax(0,1fr)!important;
        gap:10px!important;
        align-items:start!important;
        padding:9px 0!important;
        border-bottom:1px solid #edf2f7!important;
        text-align:left!important;
        white-space:normal!important;
    }
    .stock-adjustments-table td:last-child,
    .stock-adjustment-detail-table td:last-child{border-bottom:0!important;}
    .stock-adjustments-table td::before,
    .stock-adjustment-detail-table td::before{
        content:attr(data-label)!important;
        color:#64748b!important;
        font-size:11px!important;
        font-weight:950!important;
        letter-spacing:.035em!important;
        text-transform:uppercase!important;
    }
    .stock-adjustments-table td .button,
    .stock-adjustment-detail-table td .button{width:100%!important;justify-content:center!important;}
    .stock-adjustment-qty{text-align:left!important;}
}
@media(max-width:480px){
    .stock-adjustments-table td,
    .stock-adjustment-detail-table td{grid-template-columns:1fr!important;gap:4px!important;}
}

/* Phase 4.3.125 ? stock adjustment location hygiene */
.stock-adjustment-locationless-alert{
  display:flex;
  flex-wrap:wrap;
  gap:6px 10px;
  align-items:center;
  border-left:4px solid #f59e0b;
}
.stock-adjustment-locationless-alert strong{
  color:#92400e;
}
.stock-adjustment-locationless-alert span{
  color:#78350f;
}
@media (max-width: 640px){
  .stock-adjustment-locationless-alert{
    align-items:flex-start;
    flex-direction:column;
  }
}

/* Phase 4.3.127 ? Language Workbench Production Layout Polish */
.language-workbench{
    --lang-primary:#0758b8;
    --lang-primary-deep:#063a5a;
    --lang-accent:#f59e0b;
    --lang-bg:#f7fafc;
    --lang-card:#ffffff;
    --lang-soft:#f1f6fb;
    --lang-line:#d9e4ef;
    --lang-line-strong:#c7d8ea;
    --lang-ink:#0f2742;
    --lang-muted:#5f6f82;
    display:grid!important;
    gap:16px!important;
}

.language-workbench .notice{
    margin-bottom:0!important;
    border-radius:12px!important;
}

.language-workbench-hero{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:18px!important;
    align-items:start!important;
    min-height:auto!important;
    padding:20px!important;
    border:1px solid var(--lang-line)!important;
    border-radius:18px!important;
    background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%)!important;
    box-shadow:0 10px 26px rgba(15,39,66,.06)!important;
}

.language-workbench-hero::before,
.language-workbench-hero .language-hero-visual{
    display:none!important;
}

.language-workbench-hero h2{
    margin:8px 0 0!important;
    color:var(--lang-ink)!important;
    font-size:clamp(24px,2.2vw,34px)!important;
    line-height:1.18!important;
    letter-spacing:-.02em!important;
    font-weight:900!important;
}

.language-workbench-hero p{
    max-width:840px!important;
    margin-top:8px!important;
    color:var(--lang-muted)!important;
    font-size:14px!important;
    line-height:1.65!important;
    font-weight:650!important;
}

.language-import-kicker{
    display:inline-flex!important;
    align-items:center!important;
    min-height:26px!important;
    padding:4px 10px!important;
    border:1px solid #dbeafe!important;
    border-radius:999px!important;
    background:#eff6ff!important;
    color:#0758b8!important;
    font-size:11px!important;
    font-weight:900!important;
    letter-spacing:.04em!important;
}

.language-hero-chip-row{
    gap:7px!important;
    margin-top:14px!important;
}

.language-hero-chip-row span{
    min-height:28px!important;
    padding:5px 9px!important;
    border:1px solid var(--lang-line)!important;
    border-radius:999px!important;
    background:#ffffff!important;
    color:#334155!important;
    box-shadow:none!important;
    font-size:11px!important;
    font-weight:800!important;
}

.language-workbench-actions{
    grid-column:auto!important;
    align-self:start!important;
    justify-content:flex-end!important;
    display:flex!important;
    gap:8px!important;
    flex-wrap:wrap!important;
    min-width:280px!important;
}

.language-workbench-actions .button,
.language-editor-actions .button,
.language-editor-toolbar-actions .button{
    min-height:38px!important;
    border-radius:10px!important;
    font-weight:850!important;
    box-shadow:none!important;
}

.language-kpi-grid{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:12px!important;
}

.language-kpi-card{
    min-height:112px!important;
    padding:16px!important;
    border:1px solid var(--lang-line)!important;
    border-radius:16px!important;
    background:#ffffff!important;
    box-shadow:0 6px 18px rgba(15,39,66,.04)!important;
}

.language-kpi-card::after,
.language-kpi-card:hover{
    transform:none!important;
}

.language-kpi-card span{
    color:#64748b!important;
    font-size:12px!important;
    font-weight:850!important;
}

.language-kpi-card strong{
    color:var(--lang-ink)!important;
    font-size:28px!important;
    letter-spacing:-.03em!important;
}

.language-kpi-card small{
    color:#64748b!important;
    font-size:12px!important;
    line-height:1.45!important;
    font-weight:650!important;
}

.language-kpi-card.accent strong{
    color:#0758b8!important;
}

.language-workbench-tabs{
    position:sticky!important;
    top:74px!important;
    z-index:22!important;
    display:flex!important;
    gap:6px!important;
    padding:7px!important;
    border:1px solid var(--lang-line)!important;
    border-radius:14px!important;
    background:rgba(255,255,255,.96)!important;
    box-shadow:0 8px 22px rgba(15,39,66,.08)!important;
    backdrop-filter:blur(10px)!important;
}

.language-workbench-tabs button{
    min-height:38px!important;
    padding:8px 13px!important;
    border-radius:10px!important;
    border:1px solid transparent!important;
    background:transparent!important;
    color:#475569!important;
    font-size:12.5px!important;
    font-weight:850!important;
    box-shadow:none!important;
}

.language-workbench-tabs button:hover{
    transform:none!important;
    background:#f1f5f9!important;
    color:#0758b8!important;
}

.language-workbench-tabs button.is-active{
    background:#0758b8!important;
    color:#ffffff!important;
    border-color:#0758b8!important;
    box-shadow:none!important;
}

.language-workbench-statusbar{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:10px!important;
    padding:10px!important;
    border:1px solid var(--lang-line)!important;
    border-radius:16px!important;
    background:#ffffff!important;
    box-shadow:0 6px 18px rgba(15,39,66,.04)!important;
}

.language-status-item{
    display:grid!important;
    gap:3px!important;
    min-width:0!important;
    padding:12px!important;
    border:1px solid #e5edf6!important;
    border-radius:12px!important;
    background:#f8fafc!important;
}

.language-status-item span{
    color:#64748b!important;
    font-size:11.5px!important;
    font-weight:850!important;
}

.language-status-item strong{
    color:var(--lang-ink)!important;
    font-size:20px!important;
    line-height:1.1!important;
    font-weight:950!important;
}

.language-status-item small{
    color:#64748b!important;
    font-size:11.5px!important;
    line-height:1.35!important;
    font-weight:650!important;
}

.language-status-item.is-warning{
    border-color:#fed7aa!important;
    background:#fff7ed!important;
}

.language-status-item.is-warning strong{
    color:#c2410c!important;
}

.language-status-item.is-ok{
    border-color:#bbf7d0!important;
    background:#ecfdf5!important;
}

.language-status-item.is-ok strong{
    color:#047857!important;
}

.language-pro-card,
.language-editor-panel,
.language-import-card,
.language-import-guide,
.language-manager-card{
    padding:18px!important;
    border:1px solid var(--lang-line)!important;
    border-radius:16px!important;
    background:#ffffff!important;
    box-shadow:0 8px 22px rgba(15,39,66,.05)!important;
}

.language-editor-head{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:14px!important;
    align-items:start!important;
    padding-bottom:14px!important;
    margin-bottom:14px!important;
    border-bottom:1px solid #e8eef6!important;
}

.language-editor-head h3{
    margin:8px 0 0!important;
    color:var(--lang-ink)!important;
    font-size:20px!important;
    font-weight:900!important;
    line-height:1.25!important;
}

.language-editor-head p{
    max-width:820px!important;
    color:#64748b!important;
    font-size:13px!important;
    line-height:1.55!important;
    font-weight:650!important;
}

.language-sticky-actions{
    position:static!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:8px!important;
    padding:8px!important;
    border:1px solid #e2e8f0!important;
    border-radius:12px!important;
    background:#f8fafc!important;
    box-shadow:none!important;
}

.language-performance-banner{
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr)!important;
    align-items:center!important;
    gap:10px!important;
    padding:12px!important;
    border:1px solid #dbeafe!important;
    border-radius:12px!important;
    background:#f8fbff!important;
}

.language-performance-banner span{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:28px!important;
    padding:4px 9px!important;
    border-radius:999px!important;
    background:#eff6ff!important;
    color:#0758b8!important;
    font-size:11px!important;
    font-weight:900!important;
}

.language-performance-banner strong{
    color:var(--lang-ink)!important;
    font-size:13px!important;
    font-weight:900!important;
}

.language-performance-banner small{
    color:#64748b!important;
    font-size:12px!important;
    font-weight:650!important;
}

.language-card-toolbar{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:12px!important;
    padding:12px!important;
    border:1px solid #e2e8f0!important;
    border-radius:14px!important;
    background:#f8fafc!important;
    box-shadow:none!important;
}

.language-ai-bar{
    display:grid;
    grid-template-columns:minmax(0,1.2fr) minmax(280px,.9fr);
    gap:12px;
    align-items:center;
    margin:0 0 14px;
    padding:14px;
    border:1px solid #dbeafe;
    border-radius:14px;
    background:linear-gradient(135deg,#eff6ff 0%,#f8fbff 100%);
}
.language-ai-bar-copy{
    display:grid;
    gap:4px;
    min-width:0;
}
.language-ai-bar-copy strong{
    color:#0f2742;
    font-size:14px;
    font-weight:900;
}
.language-ai-bar-copy small{
    color:#5f6f82;
    font-size:12px;
    line-height:1.45;
    font-weight:650;
}
.language-ai-bar-controls{
    display:flex;
    align-items:end;
    justify-content:flex-end;
    gap:10px;
    flex-wrap:wrap;
}
.language-ai-bar-controls .field{
    margin:0;
    min-width:160px;
}
.language-ai-bar.is-busy{
    opacity:.72;
    pointer-events:none;
}
.language-field-label{
    flex-wrap:wrap;
}
.language-ai-field-btn{
    margin-left:auto;
}
@media(max-width:900px){
    .language-ai-bar{
        grid-template-columns:1fr;
    }
    .language-ai-bar-controls{
        justify-content:stretch;
    }
    .language-ai-bar-controls .button,
    .language-ai-bar-controls .field{
        width:100%;
    }
}

.language-server-filter-grid{
    display:grid!important;
    grid-template-columns:minmax(220px,1.45fr) minmax(180px,.8fr) minmax(150px,.55fr) auto!important;
    gap:10px!important;
    align-items:end!important;
}

.language-server-filter-actions,
.language-toolbar-controls{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:8px!important;
    flex-wrap:wrap!important;
}

.language-search-box{
    max-width:none!important;
}

.language-search-box .input,
.language-search-box .select,
.language-namespace-filter,
.language-locale-edit-grid .input,
.language-locale-edit-grid .select,
.language-editor-toolbar .input,
.language-editor-toolbar .select,
.language-editor-textarea{
    border-radius:10px!important;
    border-color:#ccd8e5!important;
    background:#ffffff!important;
    box-shadow:none!important;
}

.language-mini-check{
    border-radius:10px!important;
    background:#ffffff!important;
    border:1px solid #e2e8f0!important;
    font-weight:750!important;
}

.language-smart-new-key{
    padding:14px!important;
    border:1px solid #dbeafe!important;
    border-radius:14px!important;
    background:#f8fbff!important;
    box-shadow:none!important;
}

.language-smart-new-key::before{
    display:none!important;
}

.language-new-key-box{
    display:grid!important;
    grid-template-columns:minmax(260px,.32fr) minmax(0,1fr)!important;
    gap:12px!important;
}

.language-new-key-values{
    display:grid!important;
    grid-template-columns:repeat(5,minmax(120px,1fr))!important;
    gap:10px!important;
    overflow:visible!important;
}

.language-card-editor{
    gap:10px!important;
}

.language-key-card{
    padding:14px!important;
    border:1px solid #dbeafe!important;
    border-radius:16px!important;
    background:#ffffff!important;
    box-shadow:0 6px 18px rgba(15,39,66,.04)!important;
    transform:none!important;
}

.language-key-card::before{
    width:4px!important;
    border-radius:16px 0 0 16px!important;
    background:#0758b8!important;
}

.language-key-card:hover{
    transform:none!important;
    border-color:#bfdbfe!important;
    box-shadow:0 10px 24px rgba(15,39,66,.07)!important;
}

.language-key-card-head{
    align-items:center!important;
    padding-bottom:10px!important;
    margin:0 0 12px 4px!important;
    border-bottom:1px solid #eef2f7!important;
}

.language-key-title{
    grid-template-columns:auto minmax(0,1fr)!important;
}

.language-key-badge{
    min-width:52px!important;
    min-height:26px!important;
    padding:4px 9px!important;
    border-radius:999px!important;
    background:#eff6ff!important;
    color:#0758b8!important;
    box-shadow:none!important;
}

.language-key-title code{
    padding:6px 9px!important;
    border:1px solid #dbeafe!important;
    border-radius:9px!important;
    background:#ffffff!important;
    color:#0f2742!important;
    font-size:12.5px!important;
}

.language-missing-pill,
.language-complete-pill{
    min-height:26px!important;
    padding:4px 9px!important;
    font-size:11px!important;
}

.language-key-fields{
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:8px!important;
}

.language-translation-field{
    gap:7px!important;
    padding:10px!important;
    border:1px solid #e2e8f0!important;
    border-radius:12px!important;
    background:#f8fafc!important;
    box-shadow:none!important;
    transform:none!important;
}

.language-translation-field:hover{
    transform:none!important;
    border-color:#bfdbfe!important;
    box-shadow:none!important;
}

.language-translation-field.is-missing{
    border-color:#fed7aa!important;
    background:#fffaf5!important;
}

.language-key-fields .language-matrix-input{
    min-height:88px!important;
    border-radius:10px!important;
    border-color:#cbd5e1!important;
    font-size:12.5px!important;
    font-weight:650!important;
}

.language-key-fields .language-matrix-input:focus,
.language-editor-textarea:focus,
.language-workbench .input:focus,
.language-workbench .select:focus{
    border-color:#0758b8!important;
    box-shadow:0 0 0 3px rgba(7,88,184,.12)!important;
}

.language-bottom-savebar{
    bottom:12px!important;
    padding:12px!important;
    border:1px solid #c7d8ea!important;
    border-radius:14px!important;
    background:rgba(255,255,255,.96)!important;
    box-shadow:0 10px 28px rgba(15,39,66,.14)!important;
}

.language-locale-list,
.language-toggle-list{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
}

.language-locale-edit{
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr) auto!important;
    gap:12px!important;
    align-items:center!important;
    padding:12px!important;
    border:1px solid #e2e8f0!important;
    border-radius:14px!important;
    background:#ffffff!important;
    box-shadow:none!important;
    transform:none!important;
}

.language-locale-edit:hover{
    transform:none!important;
    border-color:#bfdbfe!important;
    box-shadow:0 8px 18px rgba(15,39,66,.05)!important;
}

.language-locale-edit-grid{
    display:grid!important;
    grid-template-columns:88px repeat(5,minmax(0,1fr))!important;
    gap:8px!important;
}

.language-toggle-state{
    display:flex!important;
    justify-content:flex-end!important;
    gap:6px!important;
    flex-wrap:wrap!important;
}

.language-locale-edit-actions{
    grid-column:2 / -1!important;
    display:flex!important;
    justify-content:flex-end!important;
    align-items:center!important;
    gap:8px!important;
    padding-top:2px!important;
}

.language-editor-toolbar{
    display:grid!important;
    grid-template-columns:minmax(170px,.3fr) minmax(220px,.4fr) auto!important;
    gap:10px!important;
    align-items:end!important;
    padding:12px!important;
    border:1px solid #e2e8f0!important;
    border-radius:14px!important;
    background:#f8fafc!important;
}

.language-import-card .field,
.language-editor-form .field{
    min-width:0!important;
}

.language-guide-cols{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:12px!important;
}

.language-guide-cols > div{
    min-width:0!important;
    padding:12px!important;
    border:1px solid #e2e8f0!important;
    border-radius:12px!important;
    background:#f8fafc!important;
}

.language-guide-cols pre{
    border-radius:10px!important;
    background:#0f172a!important;
    color:#e2e8f0!important;
}

@media(min-width:1600px){
    .language-key-fields{
        grid-template-columns:repeat(5,minmax(0,1fr))!important;
    }

    .language-workbench-hero{
        grid-template-columns:minmax(0,1fr) minmax(320px,auto)!important;
    }
}

@media(max-width:1280px){
    .language-workbench-hero{
        grid-template-columns:1fr!important;
    }

    .language-workbench-actions{
        grid-column:auto!important;
        justify-content:flex-start!important;
        min-width:0!important;
    }

    .language-kpi-grid,
    .language-workbench-statusbar{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }

    .language-card-toolbar,
    .language-editor-head{
        grid-template-columns:1fr!important;
    }

    .language-server-filter-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }

    .language-new-key-box{
        grid-template-columns:1fr!important;
    }

    .language-key-fields{
        grid-template-columns:repeat(3,minmax(0,1fr))!important;
    }

    .language-locale-edit{
        grid-template-columns:auto minmax(0,1fr)!important;
    }

    .language-toggle-state,
    .language-locale-edit-actions{
        grid-column:2!important;
        justify-content:flex-start!important;
    }

    .language-locale-edit-grid{
        grid-template-columns:repeat(3,minmax(0,1fr))!important;
    }
}

@media(max-width:900px){
    .language-workbench{
        gap:12px!important;
    }

    .language-workbench-tabs{
        top:64px!important;
        overflow-x:auto!important;
        flex-wrap:nowrap!important;
        scrollbar-width:thin!important;
    }

    .language-workbench-tabs button{
        flex:0 0 auto!important;
        white-space:nowrap!important;
    }

    .language-workbench-actions,
    .language-editor-actions,
    .language-server-filter-actions,
    .language-toolbar-controls{
        justify-content:stretch!important;
    }

    .language-workbench-actions .button,
    .language-editor-actions .button,
    .language-server-filter-actions .button,
    .language-toolbar-controls .button{
        flex:1 1 160px!important;
    }

    .language-server-filter-grid,
    .language-editor-toolbar{
        grid-template-columns:1fr!important;
    }

    .language-key-fields,
    .language-guide-cols{
        grid-template-columns:1fr!important;
    }

    .language-key-card-head{
        display:grid!important;
        grid-template-columns:1fr!important;
        align-items:start!important;
    }

    .language-key-meta{
        justify-content:flex-start!important;
        flex-wrap:wrap!important;
    }
}

@media(max-width:640px){
    .language-workbench-hero,
    .language-pro-card,
    .language-editor-panel,
    .language-import-card,
    .language-import-guide,
    .language-manager-card{
        padding:12px!important;
        border-radius:14px!important;
    }

    .language-workbench-hero h2{
        font-size:24px!important;
    }

    .language-hero-chip-row{
        display:flex!important;
        overflow-x:auto!important;
        flex-wrap:nowrap!important;
        padding-bottom:2px!important;
    }

    .language-hero-chip-row span{
        flex:0 0 auto!important;
        white-space:nowrap!important;
    }

    .language-kpi-grid,
    .language-workbench-statusbar{
        grid-template-columns:1fr!important;
    }

    .language-kpi-card{
        min-height:auto!important;
    }

    .language-card-toolbar,
    .language-smart-new-key,
    .language-performance-banner{
        padding:10px!important;
        border-radius:12px!important;
    }

    .language-new-key-values{
        grid-template-columns:1fr!important;
    }

    .language-key-meta{
        display:grid!important;
        grid-template-columns:1fr!important;
    }

    .language-key-meta .button,
    .language-bottom-savebar .button{
        width:100%!important;
    }

    .language-bottom-savebar{
        position:static!important;
        display:grid!important;
        grid-template-columns:1fr!important;
    }

    .language-locale-edit{
        grid-template-columns:1fr!important;
    }

    .language-locale-edit > .language-locale-flag{
        width:38px!important;
        height:27px!important;
    }

    .language-locale-edit-grid{
        grid-template-columns:1fr!important;
    }

    .language-toggle-state,
    .language-locale-edit-actions{
        grid-column:auto!important;
    }

    .language-locale-edit-actions{
        display:grid!important;
        grid-template-columns:1fr!important;
    }

    .language-locale-edit-actions .button{
        width:100%!important;
    }
}

/* Phase 4.3.128 ? Language lists viewport fill + Dashboard material image count QA */
.language-locale-list.language-toggle-list,
.language-workbench .language-locale-list.language-toggle-list{
    width:100%!important;
    min-height:clamp(420px, calc(100dvh - 360px), 780px)!important;
    max-height:clamp(560px, calc(100dvh - 260px), 980px)!important;
    overflow:auto!important;
    align-content:start!important;
    padding-right:6px!important;
    scrollbar-width:thin!important;
}

.language-locale-list.language-toggle-list > .language-locale-edit,
.language-workbench .language-locale-list.language-toggle-list > .language-locale-edit{
    width:100%!important;
}

@media(min-width:1600px){
    .language-locale-list.language-toggle-list,
    .language-workbench .language-locale-list.language-toggle-list{
        min-height:clamp(520px, calc(100dvh - 340px), 920px)!important;
        max-height:clamp(700px, calc(100dvh - 240px), 1120px)!important;
    }
}

@media(max-width:900px){
    .language-locale-list.language-toggle-list,
    .language-workbench .language-locale-list.language-toggle-list{
        min-height:0!important;
        max-height:none!important;
        overflow:visible!important;
        padding-right:0!important;
    }
}

/* Phase 4.3.130 ? Stock Count complete workflow */
.stock-count-kpi-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
    gap:14px;
    margin:0 0 18px;
}
.stock-count-kpi{
    background:#fff;
    border:1px solid var(--border,#e5e7eb);
    border-radius:16px;
    padding:16px;
    box-shadow:0 10px 24px rgba(15,23,42,.06);
    display:grid;
    gap:6px;
    min-height:116px;
}
.stock-count-kpi span{font-size:.84rem;color:var(--muted,#64748b);font-weight:700;letter-spacing:.01em;}
.stock-count-kpi strong{font-size:1.65rem;line-height:1.15;color:#0f172a;}
.stock-count-kpi small{color:#64748b;line-height:1.35;}
.stock-count-kpi.is-open{border-color:#bfdbfe;background:linear-gradient(180deg,#fff,#eff6ff);}
.stock-count-kpi.is-pending{border-color:#fed7aa;background:linear-gradient(180deg,#fff,#fff7ed);}
.stock-count-kpi.is-variance{border-color:#fecaca;background:linear-gradient(180deg,#fff,#fef2f2);}
.stock-count-filter-bar{grid-template-columns:2fr repeat(4,minmax(150px,1fr)) auto;align-items:end;}
.stock-count-table-wrap,.stock-count-items-wrap{width:100%;overflow:auto;border:1px solid #e5e7eb;border-radius:16px;background:#fff;}
.stock-count-table,.stock-count-items-table{width:100%;border-collapse:collapse;table-layout:fixed;}
.stock-count-table th,.stock-count-table td,.stock-count-items-table th,.stock-count-items-table td{padding:13px 14px;border-bottom:1px solid #edf2f7;vertical-align:top;}
.stock-count-table th,.stock-count-items-table th{background:#f8fafc;color:#475569;font-size:.82rem;text-transform:none;letter-spacing:.01em;}
.stock-count-table tbody tr:hover,.stock-count-items-table tbody tr:hover{background:#f8fafc;}
.stock-count-progress{display:grid;gap:7px;min-width:130px;}
.stock-count-progress span{font-size:.82rem;color:#64748b;}
.stock-count-progress i{display:block;height:8px;background:#e2e8f0;border-radius:999px;overflow:hidden;}
.stock-count-progress em{display:block;height:100%;background:#2563eb;border-radius:inherit;}
.stock-count-progress.is-hero{max-width:520px;margin-top:12px;}
.stock-count-document-hero{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,.9fr);gap:16px;align-items:stretch;margin-bottom:18px;}
.stock-count-document-main,.stock-count-document-meta{background:#fff;border:1px solid #e5e7eb;border-radius:18px;box-shadow:0 12px 28px rgba(15,23,42,.06);padding:18px;}
.stock-count-document-main h2{margin:10px 0 6px;font-size:1.35rem;color:#0f172a;}
.stock-count-document-main p{margin:0;color:#64748b;}
.stock-count-document-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
.stock-count-document-meta div{background:#f8fafc;border:1px solid #eef2f7;border-radius:14px;padding:12px;display:grid;gap:4px;}
.stock-count-document-meta span{font-size:.78rem;color:#64748b;font-weight:700;}
.stock-count-document-meta strong{font-size:.95rem;color:#0f172a;}
.stock-count-create-grid [hidden]{display:none!important;}
.stock-count-process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;}
.stock-count-process-grid div{border:1px solid #e5e7eb;border-radius:16px;background:#f8fafc;padding:14px;display:grid;gap:6px;}
.stock-count-process-grid strong{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#0f5f8f;color:#fff;}
.stock-count-process-grid span{font-weight:800;color:#0f172a;}
.stock-count-process-grid small{color:#64748b;line-height:1.35;}
.stock-count-items-table .select,.stock-count-items-table .input{min-width:0;width:100%;}
.stock-count-actual-location{margin-top:8px;}
.stock-count-action-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.stock-count-action-grid form{border:1px solid #e5e7eb;border-radius:16px;background:#f8fafc;padding:16px;display:grid;gap:10px;}
.stock-count-action-grid .button{justify-self:start;}
@media(min-width:1800px){.stock-count-filter-bar{grid-template-columns:2.2fr repeat(4,minmax(170px,1fr)) auto;}.stock-count-kpi-grid{grid-template-columns:repeat(5,1fr);}}
@media(max-width:1100px){.stock-count-filter-bar{grid-template-columns:repeat(2,minmax(0,1fr));}.stock-count-document-hero{grid-template-columns:1fr;}.stock-count-document-meta{grid-template-columns:repeat(3,1fr);}.stock-count-process-grid{grid-template-columns:repeat(2,1fr);}.stock-count-action-grid{grid-template-columns:1fr;}}
@media(max-width:760px){
    .stock-count-filter-bar{grid-template-columns:1fr!important;}
    .stock-count-document-meta{grid-template-columns:1fr;}
    .stock-count-process-grid{grid-template-columns:1fr;}
    .stock-count-table-wrap,.stock-count-items-wrap{border:0;background:transparent;overflow:visible;}
    .stock-count-table,.stock-count-table thead,.stock-count-table tbody,.stock-count-table tr,.stock-count-table th,.stock-count-table td,
    .stock-count-items-table,.stock-count-items-table thead,.stock-count-items-table tbody,.stock-count-items-table tr,.stock-count-items-table th,.stock-count-items-table td{display:block;width:100%;}
    .stock-count-table thead,.stock-count-items-table thead{display:none;}
    .stock-count-table tr,.stock-count-items-table tr{background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 10px 20px rgba(15,23,42,.05);padding:12px;margin:0 0 12px;}
    .stock-count-table td,.stock-count-items-table td{border:0;padding:10px 0;display:grid;grid-template-columns:minmax(110px,38%) 1fr;gap:10px;align-items:start;}
    .stock-count-table td::before,.stock-count-items-table td::before{content:attr(data-label);font-size:.78rem;font-weight:800;color:#64748b;}
    .stock-count-table td.text-right,.stock-count-items-table td.text-right{text-align:left;}
    .stock-count-table td .button,.stock-count-items-table td .button{width:100%;justify-content:center;}
    .stock-count-empty-row td{display:block!important;}
    .stock-count-empty-row td::before{display:none!important;}
}

/* Phase 4.3.134 ? Materials list source-of-truth and pagination polish */
.material-stock-truth-notice{display:flex;align-items:flex-start;gap:10px;margin:0 0 14px}.material-stock-truth-notice strong{display:block;color:#92400e}.material-stock-truth-notice span{display:block;color:#78350f;line-height:1.5}.material-stock-source,.material-stock-warning{display:inline-flex;align-items:center;width:max-content;max-width:100%;border-radius:999px;padding:4px 8px;font-size:10.5px;line-height:1.15;font-weight:850}.material-stock-source.is-balance{background:#e0f2fe;color:#075985}.material-stock-source.is-master{background:#f1f5f9;color:#475569}.material-stock-warning{background:#fff7ed;color:#c2410c;border:1px solid #fed7aa}.material-pagination{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:14px 0 0}.material-pagination span{font-size:13px;font-weight:850;color:#475569}.material-pagination .is-disabled{pointer-events:none;opacity:.55}.material-data-table .material-empty-row td{border-left:0!important}.material-data-table .material-stock-cell{align-items:flex-start}
@media (max-width:640px){.material-stock-truth-notice{display:grid;gap:4px;padding:11px 12px}.material-pagination{justify-content:stretch;display:grid;grid-template-columns:1fr;gap:8px}.material-pagination .button{width:100%;justify-content:center}.material-pagination span{text-align:center}.material-stock-cell{display:grid!important;align-items:start!important;justify-content:stretch!important}.material-stock-source,.material-stock-warning{width:fit-content;text-align:left}.material-data-table .material-empty-row{display:block!important}.material-data-table .material-empty-row td{display:block!important;padding:0!important}.material-data-table td:nth-child(1)::before,.material-data-table td:nth-child(2)::before,.material-data-table td:nth-child(3)::before,.material-data-table td:nth-child(8)::before{display:none!important}}


/* Phase 4.3.137 - Core floating back-to-top button */
.stock-back-to-top{
    position:fixed;
    right:22px;
    bottom:78px;
    z-index:64;
    display:inline-grid;
    place-items:center;
    width:44px;
    height:44px;
    min-width:44px;
    min-height:44px;
    max-width:44px;
    margin:0;
    padding:0;
    border:1px solid rgba(203,213,225,.96);
    border-radius:14px;
    background:rgba(255,255,255,.94);
    color:#0f172a;
    box-shadow:0 14px 34px rgba(15,23,42,.16);
    backdrop-filter:blur(12px);
    cursor:pointer;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(12px) scale(.98);
    transition:opacity .18s ease,visibility .18s ease,transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease,color .18s ease;
    box-sizing:border-box;
}
.stock-back-to-top.is-visible{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translateY(0) scale(1);
}
.stock-back-to-top:hover{
    border-color:#93c5fd;
    background:#fff;
    box-shadow:0 18px 42px rgba(15,23,42,.20);
    transform:translateY(-2px) scale(1);
}
.stock-back-to-top:hover .stock-back-to-top-icon{
    transform:translateY(-1px);
}
.stock-back-to-top:focus-visible{
    outline:0;
    border-color:#2563eb;
    box-shadow:0 0 0 4px rgba(37,99,235,.18),0 18px 42px rgba(15,23,42,.20);
}
.stock-back-to-top-icon{
    width:18px;
    height:18px;
    display:block;
    overflow:visible;
    transition:transform .18s ease;
}
body.modal-lock .stock-back-to-top,
body.stock-modal-open .stock-back-to-top,
body.sidebar-open .stock-back-to-top{
    opacity:0;
    visibility:hidden;
    pointer-events:none;
}
@media(max-width:720px){
    .stock-back-to-top{
        right:14px;
        bottom:76px;
    }
}
@media print{
    .stock-back-to-top{display:none!important;}
}

/* Phase 4.3.138 ? Maintenance workbench */
.maintenance-overview{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:14px;
    margin:0 0 18px;
}
.maintenance-kpi-card{
    border:1px solid var(--border-color,#e2e8f0);
    border-radius:16px;
    background:var(--surface,#fff);
    padding:16px;
    min-height:118px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    box-shadow:0 10px 24px rgba(15,23,42,.05);
}
.maintenance-kpi-card span{
    color:var(--muted-color,#64748b);
    font-size:.86rem;
    font-weight:700;
}
.maintenance-kpi-card strong{
    font-size:1.55rem;
    line-height:1.15;
    color:var(--text-color,#0f172a);
}
.maintenance-kpi-card small{
    color:var(--muted-color,#64748b);
}
.maintenance-kpi-card.is-open{border-color:rgba(234,179,8,.35);background:linear-gradient(180deg,rgba(254,252,232,.9),#fff)}
.maintenance-kpi-card.is-complete{border-color:rgba(34,197,94,.32);background:linear-gradient(180deg,rgba(240,253,244,.9),#fff)}
.maintenance-kpi-card.is-cancelled{border-color:rgba(239,68,68,.25);background:linear-gradient(180deg,rgba(254,242,242,.9),#fff)}
.maintenance-kpi-card.is-cost{border-color:rgba(14,165,233,.28);background:linear-gradient(180deg,rgba(240,249,255,.9),#fff)}
.maintenance-filter-card,.maintenance-list-card,.maintenance-form-card,.maintenance-action-card{
    margin-bottom:18px;
}
.maintenance-filter-bar{
    align-items:end;
}
.maintenance-table-wrap{
    width:100%;
    overflow:auto;
}
.maintenance-table{
    width:100%;
    min-width:980px;
    border-collapse:separate;
    border-spacing:0;
}
.maintenance-table td,.maintenance-table th{
    vertical-align:top;
}
.maintenance-form-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
}
.form-group-span-2{
    grid-column:1/-1;
}
.maintenance-detail-grid{
    display:grid;
    grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
    gap:18px;
    margin-bottom:18px;
}
.maintenance-detail-list{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    margin:0;
}
.maintenance-detail-list div{
    border:1px solid var(--border-color,#e2e8f0);
    border-radius:12px;
    padding:12px;
    background:var(--muted-surface,#f8fafc);
}
.maintenance-detail-list dt{
    font-size:.78rem;
    color:var(--muted-color,#64748b);
    font-weight:700;
    margin-bottom:4px;
}
.maintenance-detail-list dd{
    margin:0;
    color:var(--text-color,#0f172a);
}
.maintenance-note-block{
    border:1px solid var(--border-color,#e2e8f0);
    border-radius:14px;
    padding:14px;
    background:var(--muted-surface,#f8fafc);
    margin-bottom:14px;
}
.maintenance-note-block h4{
    margin:0 0 8px;
    font-size:.95rem;
}
.maintenance-note-block p{
    margin:0;
    color:var(--text-color,#0f172a);
    line-height:1.65;
}
.suggestion-chip-row{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-top:10px;
}
.suggestion-chip{
    border:1px solid var(--border-color,#e2e8f0);
    border-radius:999px;
    background:var(--surface,#fff);
    color:var(--text-color,#0f172a);
    padding:7px 10px;
    font-size:.82rem;
    font-weight:700;
    cursor:pointer;
}
.suggestion-chip:hover,.suggestion-chip:focus-visible{
    border-color:var(--primary-color,#2563eb);
    color:var(--primary-color,#2563eb);
    outline:none;
}
@media (max-width:1280px){
    .maintenance-overview{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media (max-width:920px){
    .maintenance-overview{grid-template-columns:repeat(2,minmax(0,1fr));}
    .maintenance-detail-grid{grid-template-columns:1fr;}
    .maintenance-detail-list{grid-template-columns:1fr;}
    .maintenance-form-grid{grid-template-columns:1fr;}
}
@media (max-width:760px){
    .maintenance-overview{grid-template-columns:1fr;}
    .maintenance-table{min-width:0;border-spacing:0 12px;}
    .maintenance-table thead{display:none;}
    .maintenance-table tbody,.maintenance-table tr,.maintenance-table td{display:block;width:100%;}
    .maintenance-table tr{
        border:1px solid var(--border-color,#e2e8f0);
        border-radius:16px;
        padding:12px;
        background:var(--surface,#fff);
        box-shadow:0 10px 22px rgba(15,23,42,.05);
        margin-bottom:12px;
    }
    .maintenance-table td{
        border:0!important;
        padding:8px 0!important;
        display:grid;
        grid-template-columns:120px minmax(0,1fr);
        gap:10px;
        align-items:start;
    }
    .maintenance-table td::before{
        content:attr(data-label);
        color:var(--muted-color,#64748b);
        font-weight:700;
        font-size:.78rem;
    }
    .maintenance-empty-row td{
        display:block;
    }
    .maintenance-empty-row td::before{display:none;}
    .suggestion-chip-row{display:grid;grid-template-columns:1fr;}
}

/* Phase 4.3.139 ? Disposal workflow */
.disposal-workbench-card,
.disposal-filter-card,
.disposal-list-card,
.disposal-form-card,
.disposal-detail-card,
.disposal-note-card,
.disposal-balance-card,
.disposal-action-card {
  position: relative;
}

.disposal-kpi-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.disposal-filter-grid {
  align-items: end;
}

.disposal-table-wrap,
.disposal-balance-table-wrap {
  width: 100%;
  overflow-x: auto;
}

.disposal-table,
.disposal-balance-table {
  width: 100%;
  min-width: 960px;
  border-collapse: collapse;
}

.disposal-table th,
.disposal-table td,
.disposal-balance-table th,
.disposal-balance-table td {
  vertical-align: top;
}

.disposal-detail-grid {
  align-items: stretch;
}

.disposal-form-note {
  margin-top: 18px;
}

.disposal-action-card .inline-action-form,
.disposal-action-card .disposal-complete-form,
.disposal-action-card .disposal-cancel-form {
  border: 1px solid var(--border-color, #e2e8f0);
  border-radius: 14px;
  padding: 16px;
  background: var(--surface-muted, #f8fafc);
  margin-top: 14px;
}

.disposal-cancel-form {
  border-color: rgba(220, 38, 38, .22) !important;
}

@media (max-width: 1024px) {
  .disposal-kpi-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  .disposal-kpi-grid {
    grid-template-columns: 1fr;
  }

  .disposal-table,
  .disposal-balance-table {
    min-width: 0;
  }

  .disposal-table thead,
  .disposal-balance-table thead {
    display: none;
  }

  .disposal-table tbody,
  .disposal-table tr,
  .disposal-table td,
  .disposal-balance-table tbody,
  .disposal-balance-table tr,
  .disposal-balance-table td {
    display: block;
    width: 100%;
  }

  .disposal-table tr,
  .disposal-balance-table tr {
    border: 1px solid var(--border-color, #e2e8f0);
    border-radius: 14px;
    margin: 0 0 12px;
    padding: 12px;
    background: var(--surface-color, #fff);
  }

  .disposal-table td,
  .disposal-balance-table td {
    border: 0 !important;
    padding: 8px 0 !important;
  }

  .disposal-table td::before,
  .disposal-balance-table td::before {
    content: attr(data-label);
    display: block;
    margin-bottom: 4px;
    color: var(--text-muted, #64748b);
    font-size: 12px;
    font-weight: 700;
  }

  .disposal-empty-row td::before {
    display: none;
  }

  .disposal-action-card .inline-action-form,
  .disposal-action-card .disposal-complete-form,
  .disposal-action-card .disposal-cancel-form {
    padding: 12px;
  }
}

/* Phase 4.3.141 ? Disposal UI production polish */
.disposal-workbench-card,
.disposal-filter-card,
.disposal-list-card,
.disposal-form-card,
.disposal-detail-card,
.disposal-note-card,
.disposal-balance-card,
.disposal-action-card,
.disposal-status-panel {
  border: 1px solid var(--border-color, #e2e8f0);
  box-shadow: 0 10px 24px rgba(15, 23, 42, .045);
}

.disposal-workbench-card .document-section-head,
.disposal-filter-card .document-section-head,
.disposal-list-card .document-section-head,
.disposal-form-card .document-section-head,
.disposal-detail-card .document-section-head,
.disposal-note-card .document-section-head,
.disposal-balance-card .document-section-head,
.disposal-action-card .document-section-head {
  gap: 16px;
  align-items: flex-start;
}

.disposal-kpi-grid {
  gap: 14px;
}

.disposal-kpi-grid .metric-card.compact {
  min-height: 98px;
  border: 1px solid var(--border-color, #e2e8f0);
  background: linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(248, 250, 252, .92));
}

.disposal-flow-strip,
.disposal-request-guide,
.disposal-status-tracker {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: 18px;
}

.disposal-flow-step,
.disposal-request-guide > div,
.disposal-status-step {
  position: relative;
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 54px;
  padding: 12px 14px;
  border: 1px solid var(--border-color, #e2e8f0);
  border-radius: 14px;
  background: var(--surface-color, #fff);
}

.disposal-flow-dot,
.disposal-request-guide span,
.disposal-status-step span {
  display: inline-grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: 999px;
  background: #eef2ff;
  color: #3730a3;
  font-weight: 800;
  font-size: .84rem;
  flex: 0 0 auto;
}

.disposal-flow-label,
.disposal-request-guide strong,
.disposal-status-step strong {
  min-width: 0;
  font-size: .91rem;
  color: var(--text-color, #0f172a);
}

.disposal-toolbar-head,
.disposal-status-panel-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 16px;
}

.disposal-toolbar-head p,
.disposal-status-panel-head p {
  margin: 4px 0 0;
  color: var(--muted-color, #64748b);
}

.disposal-filter-grid {
  grid-template-columns: minmax(260px, 2fr) repeat(2, minmax(160px, 1fr));
  gap: 14px;
  padding: 0;
}

.disposal-filter-grid .filter-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  justify-content: flex-end;
}

.disposal-table-wrap,
.disposal-balance-table-wrap {
  border: 1px solid var(--border-color, #e2e8f0);
  border-radius: 16px;
  background: var(--surface-color, #fff);
  overflow: auto;
}

.disposal-table,
.disposal-balance-table {
  min-width: 1080px;
}

.disposal-table thead th,
.disposal-balance-table thead th {
  background: #f8fafc;
  border-bottom: 1px solid var(--border-color, #e2e8f0);
  color: #334155;
  font-size: .78rem;
  letter-spacing: .01em;
  white-space: nowrap;
}

.disposal-table tbody tr {
  transition: background-color .16s ease;
}

.disposal-table tbody tr:hover {
  background: rgba(248, 250, 252, .9);
}

.disposal-doc-cell,
.disposal-material-cell,
.disposal-status-cell {
  display: grid;
  gap: 4px;
}

.disposal-doc-cell small,
.disposal-material-cell small,
.disposal-material-cell span,
.disposal-reason-cell {
  color: var(--muted-color, #64748b);
}

.disposal-reason-cell {
  max-width: 360px;
  line-height: 1.55;
}

.disposal-method-pill {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  min-height: 30px;
  padding: 5px 10px;
  border: 1px solid var(--border-color, #e2e8f0);
  border-radius: 999px;
  background: #f8fafc;
  color: #334155;
  font-weight: 700;
  font-size: .82rem;
}

.disposal-progress-mini {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin-top: 2px;
}

.disposal-progress-mini i {
  width: 18px;
  height: 4px;
  border-radius: 999px;
  background: #e2e8f0;
}

.disposal-progress-mini[data-progress="1"] i:nth-child(-n+1),
.disposal-progress-mini[data-progress="2"] i:nth-child(-n+2),
.disposal-progress-mini[data-progress="3"] i:nth-child(-n+3) {
  background: #2563eb;
}

.disposal-progress-mini[data-progress="0"] i {
  background: #fca5a5;
}

.disposal-status-panel {
  margin-bottom: 18px;
}

.disposal-status-step.is-done span {
  background: #dcfce7;
  color: #166534;
}

.disposal-status-step.is-active {
  border-color: rgba(37, 99, 235, .32);
  background: #eff6ff;
}

.disposal-status-step.is-active span {
  background: #2563eb;
  color: #fff;
}

.disposal-status-step.is-muted {
  opacity: .55;
}

.disposal-status-step.is-cancelled {
  border-color: rgba(220, 38, 38, .32);
  background: #fef2f2;
}

.disposal-status-step.is-cancelled span {
  background: #dc2626;
  color: #fff;
}

.disposal-detail-grid {
  grid-template-columns: minmax(0, 1.3fr) minmax(340px, .7fr);
  gap: 18px;
}

.disposal-detail-list div {
  border-bottom: 1px solid var(--border-color, #e2e8f0);
  padding: 10px 0;
}

.disposal-detail-list div:last-child {
  border-bottom: 0;
}

.disposal-note-card .maintenance-note-block {
  border: 1px solid var(--border-color, #e2e8f0);
  border-radius: 14px;
  padding: 14px;
  background: #f8fafc;
}

.disposal-action-card .inline-action-form,
.disposal-action-card .disposal-complete-form,
.disposal-action-card .disposal-cancel-form {
  border-radius: 16px;
  background: #fff;
}

.disposal-action-card .disposal-complete-form {
  border-color: rgba(37, 99, 235, .24);
}

.disposal-form-card .disposal-request-guide {
  margin: 0 0 18px;
}

.disposal-form .maintenance-form-grid {
  gap: 16px;
}

.disposal-form .form-group {
  min-width: 0;
}

.disposal-form .suggestion-chip-row {
  margin-top: 10px;
}

@media (min-width: 1440px) {
  .disposal-filter-grid {
    grid-template-columns: minmax(320px, 2fr) repeat(4, minmax(150px, 1fr)) auto;
  }
  .disposal-table,
  .disposal-balance-table {
    min-width: 0;
    table-layout: fixed;
  }
  .disposal-table th:nth-child(1),
  .disposal-table td:nth-child(1) { width: 13%; }
  .disposal-table th:nth-child(2),
  .disposal-table td:nth-child(2) { width: 21%; }
  .disposal-table th:nth-child(3),
  .disposal-table td:nth-child(3) { width: 24%; }
  .disposal-table th:nth-child(4),
  .disposal-table td:nth-child(4) { width: 12%; }
  .disposal-table th:nth-child(5),
  .disposal-table td:nth-child(5) { width: 10%; }
  .disposal-table th:nth-child(6),
  .disposal-table td:nth-child(6) { width: 10%; }
  .disposal-table th:nth-child(7),
  .disposal-table td:nth-child(7) { width: 7%; }
  .disposal-table th:nth-child(8),
  .disposal-table td:nth-child(8) { width: 3%; }
}

@media (max-width: 1024px) {
  .disposal-filter-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .disposal-detail-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .disposal-toolbar-head,
  .disposal-status-panel-head,
  .disposal-workbench-card .document-section-head,
  .disposal-list-card .document-section-head,
  .disposal-form-card .document-section-head,
  .disposal-detail-card .document-section-head,
  .disposal-note-card .document-section-head,
  .disposal-balance-card .document-section-head,
  .disposal-action-card .document-section-head {
    display: grid;
    grid-template-columns: 1fr;
  }
  .disposal-filter-grid,
  .disposal-flow-strip,
  .disposal-request-guide,
  .disposal-status-tracker {
    grid-template-columns: 1fr;
  }
  .disposal-filter-grid .filter-span-2,
  .disposal-filter-grid .filter-actions {
    grid-column: auto;
  }
  .disposal-filter-grid .filter-actions {
    display: grid;
    grid-template-columns: 1fr;
  }
  .disposal-table-wrap,
  .disposal-balance-table-wrap {
    border: 0;
    background: transparent;
    overflow: visible;
  }
  .disposal-table tr,
  .disposal-balance-table tr {
    box-shadow: 0 8px 18px rgba(15, 23, 42, .045);
  }
  .disposal-table td,
  .disposal-balance-table td {
    display: grid !important;
    grid-template-columns: minmax(112px, 34%) minmax(0, 1fr);
    gap: 10px;
    align-items: start;
  }
  .disposal-table td::before,
  .disposal-balance-table td::before {
    margin-bottom: 0;
  }
  .disposal-empty-row td {
    display: block !important;
  }
  .disposal-status-cell,
  .disposal-doc-cell,
  .disposal-material-cell {
    justify-items: start;
  }
  .disposal-reason-cell {
    max-width: none;
  }
  .disposal-method-pill {
    white-space: normal;
    border-radius: 12px;
  }
}

/* Phase 4.3.142 ? Disposal modern layout refresh */
.disposal-modern-shell {
  display: grid;
  gap: 18px;
}

.disposal-modern-shell .document-section-card {
  border-color: rgba(148, 163, 184, .34);
  border-radius: 20px;
  box-shadow: 0 14px 34px rgba(15, 23, 42, .055);
}

.disposal-modern-hero {
  overflow: hidden;
  background:
    radial-gradient(circle at top right, rgba(37, 99, 235, .10), transparent 34%),
    linear-gradient(180deg, rgba(255, 255, 255, 1), rgba(248, 250, 252, .94));
}

.disposal-modern-hero > .document-section-head {
  padding-bottom: 14px;
  border-bottom: 1px solid rgba(148, 163, 184, .22);
}

.disposal-modern-hero .section-title,
.disposal-modern-filter .section-title,
.disposal-modern-list .section-title,
.disposal-modern-form .section-title,
.disposal-modern-status-panel .section-title,
.disposal-modern-actions .section-title {
  letter-spacing: -.01em;
}

.disposal-modern-kpis,
.disposal-modern-hero .disposal-kpi-grid {
  margin-top: 18px;
}

.disposal-modern-hero .metric-card.compact {
  position: relative;
  overflow: hidden;
  min-height: 112px;
  padding: 18px;
  border-radius: 18px;
  background: rgba(255, 255, 255, .92);
}

.disposal-modern-hero .metric-card.compact::after {
  content: '';
  position: absolute;
  inset: auto 16px 14px 16px;
  height: 3px;
  border-radius: 999px;
  background: rgba(37, 99, 235, .18);
}

.disposal-modern-hero .metric-card.compact strong {
  font-size: clamp(1.35rem, 1.1rem + .9vw, 2rem);
}

.disposal-modern-hero .metric-card.compact span {
  color: var(--muted-color, #64748b);
  font-weight: 700;
}

.disposal-modern-hero .disposal-flow-strip {
  padding: 14px;
  border: 1px solid rgba(148, 163, 184, .24);
  border-radius: 18px;
  background: rgba(255, 255, 255, .72);
}

.disposal-modern-hero .disposal-flow-step,
.disposal-modern-form .disposal-request-guide > div,
.disposal-modern-status-panel .disposal-status-step {
  border-radius: 16px;
  box-shadow: none;
}

.disposal-modern-filter {
  background: #fff;
}

.disposal-modern-filter .disposal-toolbar-head {
  align-items: center;
  padding-bottom: 14px;
  border-bottom: 1px solid rgba(148, 163, 184, .20);
}

.disposal-modern-filter .filter-grid {
  padding-top: 2px;
}

.disposal-modern-filter .input,
.disposal-modern-filter .select,
.disposal-modern-form .input,
.disposal-modern-form .select,
.disposal-modern-form .textarea,
.disposal-modern-actions .input,
.disposal-modern-actions .textarea {
  min-height: 42px;
  border-radius: 12px;
}

.disposal-modern-list .document-section-head {
  align-items: center;
}

.disposal-modern-list .disposal-table-wrap,
.disposal-modern-balance .disposal-balance-table-wrap {
  border-radius: 18px;
  border-color: rgba(148, 163, 184, .28);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .70);
}

.disposal-modern-list .disposal-table thead th,
.disposal-modern-balance .disposal-balance-table thead th {
  position: sticky;
  top: 0;
  z-index: 1;
  padding-top: 13px;
  padding-bottom: 13px;
  background: #f1f5f9;
  color: #334155;
  text-transform: none;
}

.disposal-modern-list .disposal-table tbody td,
.disposal-modern-balance .disposal-balance-table tbody td {
  padding-top: 14px;
  padding-bottom: 14px;
}

.disposal-modern-list .disposal-table tbody tr:not(:last-child) td,
.disposal-modern-balance .disposal-balance-table tbody tr:not(:last-child) td {
  border-bottom: 1px solid rgba(226, 232, 240, .85);
}

.disposal-modern-list .disposal-status-row {
  background: #fff;
}

.disposal-modern-list .disposal-status-row:hover {
  background: #f8fafc;
}

.disposal-modern-list .button-xs,
.disposal-modern-actions .button {
  border-radius: 11px;
}

.disposal-modern-create {
  grid-template-columns: minmax(0, 1fr);
}

.disposal-modern-form {
  max-width: 1120px;
  width: 100%;
}

.disposal-modern-form > .document-section-head {
  padding-bottom: 14px;
  border-bottom: 1px solid rgba(148, 163, 184, .20);
}

.disposal-modern-form .disposal-request-guide {
  margin-top: 18px;
  margin-bottom: 20px;
  padding: 14px;
  border: 1px solid rgba(148, 163, 184, .22);
  border-radius: 18px;
  background: #f8fafc;
}

.disposal-modern-form .disposal-form-grid {
  padding-top: 4px;
}

.disposal-modern-form .form-actions,
.disposal-modern-actions .form-actions {
  padding-top: 14px;
  border-top: 1px solid rgba(148, 163, 184, .22);
}

.disposal-modern-show {
  grid-template-columns: minmax(0, 1fr);
}

.disposal-modern-status-panel {
  background:
    radial-gradient(circle at top right, rgba(37, 99, 235, .08), transparent 32%),
    #fff;
}

.disposal-modern-status-panel .disposal-status-tracker {
  padding: 14px;
  border: 1px solid rgba(148, 163, 184, .22);
  border-radius: 18px;
  background: rgba(248, 250, 252, .84);
}

.disposal-modern-detail-grid {
  align-items: start;
}

.disposal-modern-detail-grid .disposal-detail-card,
.disposal-modern-detail-grid .disposal-note-card,
.disposal-modern-balance,
.disposal-modern-actions {
  background: #fff;
}

.disposal-modern-detail-grid .disposal-detail-list div {
  display: grid;
  grid-template-columns: minmax(150px, 30%) minmax(0, 1fr);
  gap: 12px;
}

.disposal-modern-detail-grid .disposal-detail-list dt {
  color: var(--muted-color, #64748b);
  font-weight: 800;
}

.disposal-modern-detail-grid .disposal-detail-list dd {
  min-width: 0;
  margin: 0;
}

.disposal-modern-actions {
  border-color: rgba(37, 99, 235, .20) !important;
}

.disposal-modern-actions .inline-action-form,
.disposal-modern-actions .disposal-complete-form,
.disposal-modern-actions .disposal-cancel-form {
  padding: 18px;
  border-radius: 18px;
}

.disposal-modern-actions .disposal-cancel-form {
  background: #fff7f7;
}

@media (min-width: 1280px) {
  .disposal-modern-shell {
    gap: 20px;
  }
  .disposal-modern-index {
    grid-template-columns: minmax(0, 1fr);
  }
  .disposal-modern-hero .disposal-kpi-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
  .disposal-modern-show {
    grid-template-columns: minmax(0, 1fr) minmax(340px, 380px);
    align-items: start;
  }
  .disposal-modern-show .disposal-modern-status-panel,
  .disposal-modern-show .disposal-modern-detail-grid,
  .disposal-modern-show .disposal-modern-balance {
    grid-column: 1;
  }
  .disposal-modern-show .disposal-modern-actions {
    grid-column: 2;
    grid-row: 1 / span 3;
    position: sticky;
    top: 88px;
  }
}

@media (max-width: 1024px) {
  .disposal-modern-shell .document-section-card {
    border-radius: 18px;
  }
  .disposal-modern-detail-grid .disposal-detail-list div {
    grid-template-columns: minmax(120px, 34%) minmax(0, 1fr);
  }
}

@media (max-width: 720px) {
  .disposal-modern-shell {
    gap: 14px;
  }
  .disposal-modern-shell .document-section-card {
    border-radius: 16px;
    box-shadow: 0 8px 18px rgba(15, 23, 42, .04);
  }
  .disposal-modern-hero .metric-card.compact {
    min-height: 92px;
  }
  .disposal-modern-hero .disposal-flow-strip,
  .disposal-modern-form .disposal-request-guide,
  .disposal-modern-status-panel .disposal-status-tracker {
    padding: 10px;
  }
  .disposal-modern-list .disposal-table tr,
  .disposal-modern-balance .disposal-balance-table tr {
    border-radius: 16px;
    border-color: rgba(148, 163, 184, .28);
  }
  .disposal-modern-detail-grid .disposal-detail-list div {
    grid-template-columns: 1fr;
    gap: 4px;
  }
  .disposal-modern-actions .inline-action-form,
  .disposal-modern-actions .disposal-complete-form,
  .disposal-modern-actions .disposal-cancel-form {
    padding: 14px;
  }
}

/* Phase 4.3.143 ? Disposal page UX/UI full workbench rebuild */
.disposal-command-shell {
  display: grid;
  gap: 18px;
}

.disposal-command-hero,
.disposal-command-kpis,
.disposal-pipeline-panel,
.disposal-filter-panel,
.disposal-record-panel {
  border: 1px solid rgba(148, 163, 184, .30);
  border-radius: 22px;
  background: var(--surface-color, #fff);
  box-shadow: 0 12px 28px rgba(15, 23, 42, .045);
}

.disposal-command-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 300px);
  gap: 22px;
  align-items: stretch;
  overflow: hidden;
  padding: clamp(18px, 2vw, 26px);
  background:
    linear-gradient(135deg, rgba(248, 250, 252, .96), rgba(255, 255, 255, .98)),
    var(--surface-color, #fff);
}

.disposal-command-hero::before {
  content: '';
  position: absolute;
  inset: 0 auto 0 0;
  width: 6px;
  background: linear-gradient(180deg, #2563eb, #0f766e);
}

.disposal-command-copy {
  display: grid;
  align-content: center;
  gap: 10px;
  min-width: 0;
}

.disposal-command-kicker {
  display: inline-flex;
  width: max-content;
  align-items: center;
  gap: 8px;
  min-height: 30px;
  padding: 5px 10px;
  border: 1px solid rgba(37, 99, 235, .20);
  border-radius: 999px;
  background: #eff6ff;
  color: #1d4ed8;
  font-weight: 800;
  font-size: .78rem;
}

.disposal-command-copy h2 {
  margin: 0;
  color: var(--text-color, #0f172a);
  font-size: clamp(1.45rem, 1.15rem + 1.2vw, 2.15rem);
  line-height: 1.14;
  letter-spacing: -.025em;
}

.disposal-command-copy p {
  max-width: 780px;
  margin: 0;
  color: var(--muted-color, #64748b);
  line-height: 1.7;
}

.disposal-command-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 6px;
}

.disposal-command-focus {
  display: grid;
  align-content: center;
  gap: 4px;
  min-height: 170px;
  padding: 20px;
  border: 1px solid rgba(37, 99, 235, .18);
  border-radius: 20px;
  background:
    linear-gradient(180deg, rgba(239, 246, 255, .96), rgba(255, 255, 255, .96));
}

.disposal-command-focus span,
.disposal-command-focus small,
.disposal-kpi-card span,
.disposal-record-meta span,
.disposal-record-reason span,
.disposal-record-material span,
.disposal-panel-badge,
.disposal-active-filter-box strong {
  color: var(--muted-color, #64748b);
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .01em;
}

.disposal-command-focus strong {
  color: #1d4ed8;
  font-size: clamp(2.1rem, 1.5rem + 2vw, 3.25rem);
  line-height: 1;
  letter-spacing: -.045em;
}

.disposal-command-kpis {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 1px;
  overflow: hidden;
  padding: 0;
  background: rgba(226, 232, 240, .85);
}

.disposal-kpi-card {
  position: relative;
  display: grid;
  gap: 8px;
  min-height: 112px;
  padding: 18px;
  background: #fff;
}

.disposal-kpi-card::after {
  content: '';
  position: absolute;
  left: 18px;
  right: 18px;
  bottom: 14px;
  height: 3px;
  border-radius: 999px;
  background: #e2e8f0;
}

.disposal-kpi-card.is-warning::after { background: #fed7aa; }
.disposal-kpi-card.is-info::after { background: #bfdbfe; }
.disposal-kpi-card.is-success::after { background: #bbf7d0; }
.disposal-kpi-card.is-value::after { background: #ddd6fe; }
.disposal-kpi-card.is-total::after { background: #cbd5e1; }

.disposal-kpi-card strong {
  color: var(--text-color, #0f172a);
  font-size: clamp(1.35rem, 1.1rem + .7vw, 1.9rem);
  line-height: 1.1;
  letter-spacing: -.025em;
}

.disposal-pipeline-panel,
.disposal-filter-panel,
.disposal-record-panel {
  padding: clamp(16px, 1.8vw, 22px);
}

.disposal-panel-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 16px;
}

.disposal-panel-head.compact {
  margin-bottom: 14px;
}

.disposal-panel-head h3 {
  margin: 0;
  color: var(--text-color, #0f172a);
  font-size: 1.04rem;
  letter-spacing: -.01em;
}

.disposal-panel-head p {
  margin: 4px 0 0;
  color: var(--muted-color, #64748b);
  line-height: 1.55;
}

.disposal-panel-badge {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 5px 10px;
  border: 1px solid rgba(148, 163, 184, .30);
  border-radius: 999px;
  background: #f8fafc;
}

.disposal-pipeline-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.disposal-pipeline-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  min-height: 76px;
  padding: 14px;
  border: 1px solid rgba(148, 163, 184, .30);
  border-radius: 18px;
  background: #fff;
  color: inherit;
  text-decoration: none;
  transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.disposal-pipeline-card:hover,
.disposal-pipeline-card:focus-visible {
  border-color: rgba(37, 99, 235, .35);
  box-shadow: 0 12px 24px rgba(15, 23, 42, .065);
  transform: translateY(-1px);
  outline: none;
}

.disposal-pipeline-card strong,
.disposal-pipeline-card em {
  color: var(--text-color, #0f172a);
  font-style: normal;
  font-weight: 900;
}

.disposal-pipeline-card small {
  display: block;
  margin-top: 2px;
  color: var(--muted-color, #64748b);
  line-height: 1.45;
}

.disposal-pipeline-card em {
  font-size: 1.45rem;
  letter-spacing: -.025em;
}

.disposal-pipeline-dot {
  width: 13px;
  height: 38px;
  border-radius: 999px;
  background: #cbd5e1;
}

.disposal-pipeline-card.is-warning .disposal-pipeline-dot { background: #f97316; }
.disposal-pipeline-card.is-info .disposal-pipeline-dot { background: #2563eb; }
.disposal-pipeline-card.is-success .disposal-pipeline-dot { background: #16a34a; }

.disposal-workbench-layout {
  display: grid;
  grid-template-columns: minmax(270px, 340px) minmax(0, 1fr);
  gap: 18px;
  align-items: start;
}

.disposal-filter-panel {
  position: sticky;
  top: 86px;
}

.disposal-filter-form {
  display: grid;
  gap: 13px;
}

.disposal-filter-form .input,
.disposal-filter-form .select {
  min-height: 42px;
  border-radius: 12px;
}

.disposal-date-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.disposal-filter-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  padding-top: 4px;
}

.disposal-active-filter-box {
  display: grid;
  gap: 10px;
  margin-top: 16px;
  padding: 14px;
  border: 1px dashed rgba(148, 163, 184, .45);
  border-radius: 16px;
  background: #f8fafc;
}

.disposal-active-filter-box p {
  margin: 0;
  color: var(--muted-color, #64748b);
  line-height: 1.5;
}

.disposal-filter-chip-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.disposal-filter-chip-list span {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 4px 9px;
  border: 1px solid rgba(37, 99, 235, .18);
  border-radius: 999px;
  background: #eff6ff;
  color: #1d4ed8;
  font-size: .78rem;
  font-weight: 800;
}

.disposal-record-list {
  display: grid;
  gap: 12px;
}

.disposal-record-card {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(148, 163, 184, .30);
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 10px 22px rgba(15, 23, 42, .035);
}

.disposal-record-statusbar {
  height: 4px;
  background: #e2e8f0;
}

.disposal-record-statusbar span {
  display: block;
  height: 100%;
  border-radius: 0 999px 999px 0;
  background: #2563eb;
}

.disposal-record-card.is-warning .disposal-record-statusbar span { background: #f97316; }
.disposal-record-card.is-info .disposal-record-statusbar span { background: #2563eb; }
.disposal-record-card.is-success .disposal-record-statusbar span { background: #16a34a; }
.disposal-record-card.is-danger .disposal-record-statusbar span { background: #dc2626; }

.disposal-record-main {
  display: grid;
  grid-template-columns: minmax(145px, .72fr) minmax(220px, 1.15fr) minmax(240px, 1.55fr) minmax(210px, .9fr);
  gap: 16px;
  align-items: start;
  padding: 16px;
}

.disposal-record-doc,
.disposal-record-material,
.disposal-record-reason,
.disposal-record-meta {
  min-width: 0;
}

.disposal-record-doc {
  display: grid;
  justify-items: start;
  gap: 6px;
}

.disposal-record-doc strong {
  color: var(--text-color, #0f172a);
  font-size: .98rem;
}

.disposal-record-doc small,
.disposal-record-material p,
.disposal-record-reason p {
  margin: 0;
  color: var(--muted-color, #64748b);
  line-height: 1.55;
}

.disposal-record-material h4 {
  margin: 3px 0 2px;
  color: var(--text-color, #0f172a);
  font-size: 1rem;
  line-height: 1.35;
}

.disposal-record-reason p {
  max-width: 56ch;
}

.disposal-record-meta {
  display: grid;
  gap: 10px;
}

.disposal-record-meta div {
  display: grid;
  gap: 2px;
}

.disposal-record-meta strong {
  min-width: 0;
  overflow-wrap: anywhere;
  color: var(--text-color, #0f172a);
  font-size: .91rem;
}

.disposal-record-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 12px 16px;
  border-top: 1px solid rgba(226, 232, 240, .86);
  background: #f8fafc;
}

.disposal-empty-command {
  padding: 18px;
  border: 1px dashed rgba(148, 163, 184, .45);
  border-radius: 18px;
  background: #f8fafc;
}

@media (min-width: 1800px) {
  .disposal-workbench-layout {
    grid-template-columns: minmax(300px, 380px) minmax(0, 1fr);
  }
  .disposal-record-main {
    grid-template-columns: minmax(160px, .65fr) minmax(260px, 1.05fr) minmax(360px, 1.65fr) minmax(260px, .95fr);
  }
}

@media (max-width: 1280px) {
  .disposal-command-kpis {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .disposal-record-main {
    grid-template-columns: minmax(150px, .8fr) minmax(220px, 1.2fr) minmax(0, 1fr);
  }
  .disposal-record-meta {
    grid-column: 1 / -1;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 1024px) {
  .disposal-command-hero,
  .disposal-workbench-layout {
    grid-template-columns: 1fr;
  }
  .disposal-filter-panel {
    position: static;
  }
  .disposal-pipeline-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .disposal-command-shell {
    gap: 14px;
  }
  .disposal-command-hero,
  .disposal-pipeline-panel,
  .disposal-filter-panel,
  .disposal-record-panel {
    border-radius: 16px;
    padding: 14px;
  }
  .disposal-command-focus {
    min-height: auto;
    padding: 14px;
    border-radius: 16px;
  }
  .disposal-command-actions,
  .disposal-panel-head,
  .disposal-record-footer {
    display: grid;
    grid-template-columns: 1fr;
  }
  .disposal-command-actions .button,
  .disposal-record-footer .button,
  .disposal-filter-actions .button {
    width: 100%;
  }
  .disposal-command-kpis,
  .disposal-date-grid,
  .disposal-filter-actions,
  .disposal-record-meta {
    grid-template-columns: 1fr;
  }
  .disposal-kpi-card {
    min-height: 90px;
    padding: 14px;
  }
  .disposal-pipeline-card {
    min-height: auto;
    border-radius: 16px;
  }
  .disposal-record-card {
    border-radius: 16px;
  }
  .disposal-record-main {
    grid-template-columns: 1fr;
    gap: 13px;
    padding: 14px;
  }
  .disposal-record-doc {
    grid-template-columns: 1fr auto;
    align-items: start;
  }
  .disposal-record-doc .badge {
    grid-column: 1 / -1;
  }
  .disposal-record-footer {
    justify-items: stretch;
    padding: 12px 14px;
  }
}
.disposal-record-statusbar.progress-0 span { width: 100%; }
.disposal-record-statusbar.progress-1 span { width: 33.3333%; }
.disposal-record-statusbar.progress-2 span { width: 66.6667%; }
.disposal-record-statusbar.progress-3 span { width: 100%; }

/* Phase 4.3.144 ? Disposal create form full-width layout
   I18N-safe CSS note: visual layout only, no generated text. */
.disposal-modern-create{
  width:100%;
  max-width:none;
  justify-items:stretch;
}

.disposal-modern-create > .document-section-card.disposal-form-card.disposal-modern-form{
  width:100%;
  max-width:none!important;
  justify-self:stretch;
  box-sizing:border-box;
}

.disposal-modern-form .disposal-form{
  width:100%;
  max-width:none;
}

@media (min-width:1280px){
  .disposal-modern-form .maintenance-form-grid.disposal-form-grid{
    grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);
    gap:20px 22px;
  }

  .disposal-modern-form .form-group-span-2{
    grid-column:1 / -1;
  }
}

@media (min-width:1680px){
  .disposal-modern-form .maintenance-form-grid.disposal-form-grid{
    grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr) minmax(0,.85fr);
  }

  .disposal-modern-form .form-group-span-2{
    grid-column:span 3;
  }

  .disposal-modern-form .disposal-request-guide{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media (max-width:920px){
  .disposal-modern-create > .document-section-card.disposal-form-card.disposal-modern-form{
    max-width:100%!important;
  }
}

/* Phase 4.3.145 ? Reports dashboard insight workbench */
.report-insight-shell{display:grid;gap:18px;width:100%}
.report-insight-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,420px);gap:18px;align-items:stretch;border:1px solid var(--border-color,#d8e2ef);border-radius:22px;padding:22px;background:linear-gradient(135deg,#f8fbff 0%,#ffffff 58%,#fff8ec 100%);box-shadow:0 16px 34px rgba(15,23,42,.06)}
.report-eyebrow{display:inline-flex;align-items:center;border-radius:999px;border:1px solid #cfe3ff;background:#eef7ff;color:#0758b8;font-size:12px;font-weight:900;padding:5px 10px;margin-bottom:10px}
.report-insight-hero h2{margin:0;color:#0f172a;font-size:clamp(24px,2.2vw,34px);line-height:1.12;font-weight:950;letter-spacing:-.02em}
.report-insight-hero p{margin:10px 0 0;color:#64748b;line-height:1.6;font-weight:700;max-width:760px}
.report-meta-panel{display:grid;gap:9px;align-content:start}
.report-meta-panel div{display:flex;justify-content:space-between;gap:12px;border:1px solid #dbe7f5;border-radius:14px;background:rgba(255,255,255,.82);padding:10px 12px}
.report-meta-panel span{color:#64748b;font-size:12px;font-weight:850}.report-meta-panel strong{color:#0f172a;font-size:13px;font-weight:950;text-align:right}
.report-kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.report-kpi-card{border:1px solid #dbe7f5;border-radius:18px;background:#fff;padding:14px;min-height:112px;display:flex;flex-direction:column;gap:6px;box-shadow:0 12px 26px rgba(15,23,42,.045)}
.report-kpi-card span{color:#64748b;font-size:12px;font-weight:850}.report-kpi-card strong{color:#0758b8;font-size:24px;line-height:1;font-weight:950}.report-kpi-card small{margin-top:auto;color:#94a3b8;font-size:11px;font-weight:800;line-height:1.35}
.report-kpi-card.is-warning strong{color:#c2410c}.report-kpi-card.is-info strong{color:#0f766e}
.report-quality-card,.report-dataset-card{border-radius:20px!important}.report-quality-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.report-quality-item{display:grid;gap:7px;border:1px solid #dbe7f5;border-radius:16px;background:#fff;padding:14px;text-decoration:none;color:inherit;min-height:148px;transition:border-color .16s ease,transform .16s ease,box-shadow .16s ease}
.report-quality-item:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgba(15,23,42,.07)}
.report-quality-item span{color:#0f172a;font-size:13px;font-weight:950;line-height:1.35}.report-quality-item strong{font-size:26px;line-height:1;font-weight:950;color:#16a34a}.report-quality-item small{color:#64748b;line-height:1.45;font-weight:750}.report-quality-item em{margin-top:auto;color:#64748b;font-size:12px;font-style:normal;font-weight:850}
.report-quality-item.is-warning{border-color:#fed7aa;background:#fffaf4}.report-quality-item.is-warning strong{color:#c2410c}.report-quality-item.is-pass{border-color:#bbf7d0;background:#fbfffd}
.report-section-titlebar{display:flex;justify-content:space-between;gap:16px;align-items:flex-end;margin:2px 0 2px}.report-section-titlebar h3{margin:0;color:#0f172a;font-size:22px;font-weight:950}.report-section-titlebar p{margin:5px 0 0;color:#64748b;font-weight:750}.report-section-titlebar>span{border-radius:999px;background:#eef7ff;color:#0758b8;font-size:12px;font-weight:950;padding:7px 12px;white-space:nowrap}
.report-insight-list{display:grid;gap:14px}.report-insight-card{display:grid;grid-template-columns:74px minmax(0,1fr);gap:0;border:1px solid #dbe7f5;border-radius:20px;background:#fff;overflow:hidden;box-shadow:0 12px 28px rgba(15,23,42,.055)}
.report-insight-rank{display:grid;place-items:center;background:#f8fbff;color:#0758b8;font-size:22px;font-weight:950;border-right:1px solid #dbe7f5}.report-insight-body{padding:16px;display:grid;gap:14px}.report-insight-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.report-insight-head span{display:block;color:#64748b;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.report-insight-head h4{margin:4px 0 0;color:#0f172a;font-size:18px;font-weight:950}.report-insight-head>strong{border-radius:999px;background:#f1f5f9;color:#334155;padding:7px 11px;font-size:12px;font-weight:950;line-height:1.2;text-align:right;max-width:360px}
.report-insight-card.tone-red{border-color:#fecaca}.report-insight-card.tone-red .report-insight-rank{background:#fff1f2;color:#b91c1c}.report-insight-card.tone-orange{border-color:#fed7aa}.report-insight-card.tone-orange .report-insight-rank{background:#fff7ed;color:#c2410c}.report-insight-card.tone-blue .report-insight-rank{background:#eff6ff;color:#0758b8}.report-insight-card.tone-purple .report-insight-rank{background:#f5f3ff;color:#6d28d9}.report-insight-card.tone-green .report-insight-rank{background:#f0fdf4;color:#15803d}
.report-evidence-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.report-evidence-grid div,.report-dataset-grid div{border:1px solid #e2e8f0;border-radius:14px;background:#fbfdff;padding:10px 12px}.report-evidence-grid span,.report-dataset-grid span{display:block;color:#64748b;font-size:11px;font-weight:850}.report-evidence-grid strong,.report-dataset-grid strong{display:block;margin-top:4px;color:#0f172a;font-size:18px;font-weight:950}
.report-sample-box{border:1px dashed #cbd5e1;border-radius:15px;background:#f8fafc;padding:12px}.report-sample-box>strong{display:block;color:#0f172a;font-size:13px;font-weight:950;margin-bottom:8px}.report-sample-box ul{margin:0;padding-left:18px;display:grid;gap:4px}.report-sample-box li{color:#475569;font-size:13px;line-height:1.45;font-weight:750}.report-sample-box li b{color:#0f172a}.report-sample-box li span{margin-left:8px;color:#64748b;white-space:nowrap}
.report-recommendation{display:grid;grid-template-columns:150px minmax(0,1fr);gap:12px;border-left:4px solid #ff9900;background:#fff8ec;border-radius:14px;padding:12px}.report-recommendation span{color:#92400e;font-size:12px;font-weight:950}.report-recommendation p{margin:0;color:#334155;font-weight:800;line-height:1.55}
.report-dataset-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
@media (max-width:1500px){.report-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.report-quality-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.report-dataset-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:1024px){.report-insight-hero{grid-template-columns:1fr}.report-kpi-grid,.report-quality-grid,.report-evidence-grid,.report-dataset-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-insight-head{display:grid}.report-insight-head>strong{text-align:left;max-width:none}.report-recommendation{grid-template-columns:1fr}}
@media (max-width:640px){.report-insight-hero{padding:16px;border-radius:18px}.report-kpi-grid,.report-quality-grid,.report-evidence-grid,.report-dataset-grid{grid-template-columns:1fr}.report-insight-card{grid-template-columns:1fr}.report-insight-rank{min-height:52px;border-right:0;border-bottom:1px solid #dbe7f5}.report-insight-body{padding:14px}.report-section-titlebar{display:grid}.report-section-titlebar>span{justify-self:start}.report-meta-panel div{display:grid}.report-meta-panel strong{text-align:left}.report-sample-box li span{display:block;margin-left:0;margin-top:2px}}
@media print{.report-insight-shell{gap:10px}.report-insight-hero,.report-kpi-card,.report-quality-item,.report-insight-card,.report-dataset-card,.report-quality-card{box-shadow:none!important;break-inside:avoid}.report-kpi-grid,.report-quality-grid,.report-dataset-grid{grid-template-columns:repeat(3,1fr)}.report-evidence-grid{grid-template-columns:repeat(4,1fr)}.stock-back-to-top{display:none!important}}

/* Phase 4.3.146 - Roles coverage workbench */
.roles-workbench{
    gap:18px;
}
.roles-command-hero{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:18px;
    align-items:center;
    border:1px solid #dbe4ef;
    background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);
    border-radius:22px;
    padding:20px;
    box-shadow:0 1px 0 rgba(15,23,42,.04);
}
.roles-command-eyebrow{
    color:#2563eb;
    font-size:11px;
    font-weight:900;
    letter-spacing:.09em;
    text-transform:uppercase;
    margin-bottom:6px;
}
.roles-command-hero h3{
    margin:0;
    color:#0f172a;
    font-size:24px;
    line-height:1.25;
    font-weight:900;
}
.roles-command-hero p{
    margin:8px 0 0;
    color:#64748b;
    line-height:1.6;
    max-width:860px;
}
.roles-command-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:10px;
    flex-wrap:wrap;
}
.roles-health-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px;
}
.roles-health-card{
    position:relative;
    overflow:hidden;
    border:1px solid #dbe4ef;
    background:#fff;
    border-radius:18px;
    padding:16px;
    display:grid;
    gap:5px;
    min-height:112px;
}
.roles-health-card::before{
    content:'';
    position:absolute;
    inset:0 auto 0 0;
    width:4px;
    background:#2563eb;
    opacity:.7;
}
.roles-health-card.is-warning::before{background:#f59e0b;opacity:.95}
.roles-health-card.is-ok::before{background:#16a34a;opacity:.95}
.roles-health-card span{
    color:#64748b;
    font-size:12px;
    font-weight:900;
}
.roles-health-card strong{
    color:#0f172a;
    font-size:30px;
    line-height:1;
    font-weight:900;
}
.roles-health-card small{
    color:#64748b;
    font-size:12px;
    line-height:1.45;
}
.roles-flow-board{
    display:grid;
    grid-template-columns:minmax(0,1.7fr) minmax(300px,.8fr);
    gap:14px;
    align-items:start;
}
.roles-flow-main,
.roles-test-panel{
    padding:16px;
    border-radius:20px;
}
.roles-section-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
    margin-bottom:14px;
}
.roles-section-head.compact{margin-bottom:10px}
.roles-section-head h4{
    margin:0;
    color:#0f172a;
    font-size:17px;
    font-weight:900;
}
.roles-section-head p{
    margin:4px 0 0;
    color:#64748b;
    line-height:1.55;
    font-size:13px;
}
.roles-status-pill{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:999px;
    padding:6px 10px;
    font-size:12px;
    font-weight:900;
    white-space:nowrap;
    border:1px solid #dbe4ef;
    background:#fff;
    color:#475569;
}
.roles-status-pill.is-warning{background:#fff7ed;border-color:#fed7aa;color:#9a3412}
.roles-status-pill.is-ok{background:#ecfdf5;border-color:#bbf7d0;color:#166534}
.roles-flow-grid{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:10px;
}
.roles-flow-card{
    border:1px solid #dbe4ef;
    border-radius:16px;
    background:#fff;
    padding:12px;
    display:grid;
    gap:8px;
}
.roles-flow-card strong{
    color:#0f172a;
    font-size:13px;
    line-height:1.35;
}
.roles-flow-card span{
    color:#64748b;
    font-size:12px;
    font-weight:800;
}
.roles-flow-meter,
.roles-role-progress{
    height:7px;
    border-radius:999px;
    background:#e2e8f0;
    overflow:hidden;
}
.roles-flow-meter i,
.roles-role-progress i{
    display:block;
    height:100%;
    width:0;
    background:#2563eb;
    border-radius:inherit;
}
.roles-flow-card.is-warning .roles-flow-meter i{background:#f59e0b}
.roles-flow-card.is-ok .roles-flow-meter i{background:#16a34a}
.roles-warning-panel{
    margin-top:12px;
    border:1px solid #fed7aa;
    background:#fffbeb;
    color:#92400e;
    border-radius:16px;
    padding:12px;
}
.roles-warning-panel strong{display:block;margin-bottom:6px;font-size:13px}
.roles-warning-panel ul{margin:0;padding-left:18px;display:grid;gap:4px}
.roles-warning-panel li{font-size:12px;line-height:1.45}
.roles-warning-panel code{background:rgba(251,146,60,.16);border:1px solid rgba(251,146,60,.24);border-radius:8px;padding:1px 5px}
.roles-test-credential{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    border:1px dashed #cbd5e1;
    background:#f8fafc;
    border-radius:14px;
    padding:10px 12px;
    margin-bottom:10px;
}
.roles-test-credential span{font-size:12px;font-weight:900;color:#64748b}
.roles-test-credential code{font-weight:900;color:#0f172a;background:#fff;border:1px solid #e2e8f0;border-radius:9px;padding:4px 8px}
.roles-muted{margin:0;color:#64748b;font-size:12px;line-height:1.55}
.roles-card-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px;
}
.roles-role-card{
    display:grid;
    gap:10px;
    border:1px solid #dbe4ef;
    background:#fff;
    border-radius:18px;
    padding:14px;
    box-shadow:0 1px 0 rgba(15,23,42,.03);
}
.roles-role-card.is-warning{border-color:#fed7aa;background:linear-gradient(180deg,#fff 0%,#fffaf2 100%)}
.roles-role-card.is-ok{border-color:#bbf7d0;background:linear-gradient(180deg,#fff 0%,#f5fff8 100%)}
.roles-role-card-head{
    display:flex;
    align-items:flex-start;
    gap:10px;
}
.roles-role-avatar{
    width:38px;
    height:38px;
    border-radius:14px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-weight:900;
    color:#fff;
    background:#1d4ed8;
    flex:0 0 auto;
}
.roles-role-card-head strong{
    display:block;
    color:#0f172a;
    font-size:14px;
    line-height:1.35;
}
.roles-role-card-head small{
    display:block;
    color:#64748b;
    font-size:11px;
    margin-top:2px;
}
.roles-role-card p{
    margin:0;
    color:#64748b;
    line-height:1.45;
    font-size:12px;
    min-height:34px;
}
.roles-role-metrics{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:8px;
}
.roles-role-metrics span{
    display:grid;
    gap:2px;
    border:1px solid #e2e8f0;
    border-radius:12px;
    padding:8px;
    color:#64748b;
    font-size:11px;
    font-weight:800;
    background:#fff;
}
.roles-role-metrics b{
    color:#0f172a;
    font-size:18px;
    line-height:1;
}
.roles-role-test-user{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:8px;
    border-radius:12px;
    padding:8px 10px;
    border:1px solid #e2e8f0;
    background:#f8fafc;
}
.roles-role-test-user span{
    color:#64748b;
    font-size:11px;
    font-weight:900;
}
.roles-role-test-user strong{
    color:#0f172a;
    font-size:12px;
    text-align:right;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.roles-role-test-user.is-warning{background:#fff7ed;border-color:#fed7aa}
.roles-role-test-user.is-warning strong{color:#9a3412}
.roles-role-card-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
    margin-top:4px;
}
.roles-role-card-actions .button{width:100%;justify-content:center}
.roles-role-card.is-focused{
    border-color:color-mix(in srgb, var(--admin-accent,#ff9900) 55%, #dbe4ef);
    box-shadow:0 0 0 2px color-mix(in srgb, var(--admin-accent,#ff9900) 18%, transparent);
}
.roles-workbench-toolbar{
    position:sticky;
    top:calc(var(--app-header-height, 0px) + 8px);
    z-index:10;
    display:grid;
    gap:12px;
}
.roles-focus-bar{
    display:grid;
    gap:8px;
}
.roles-focus-label{
    font-size:12px;
    font-weight:850;
    color:#64748b;
}
.roles-focus-chips{
    display:flex;
    flex-wrap:nowrap;
    gap:8px;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    padding-bottom:2px;
}
.roles-focus-chip{
    flex:0 0 auto;
    min-height:34px;
    padding:0 12px;
    border-radius:999px;
    border:1px solid #dbe4ef;
    background:#fff;
    color:#334155;
    font-size:12.5px;
    font-weight:800;
    cursor:pointer;
}
.roles-focus-chip.is-active{
    border-color:color-mix(in srgb, var(--admin-accent,#ff9900) 55%, #dbe4ef);
    background:color-mix(in srgb, var(--admin-accent,#ff9900) 14%, #fff);
    color:#9a3412;
}
.roles-filter-main{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    flex-wrap:wrap;
}
.roles-filter-meta{
    display:flex;
    flex-wrap:wrap;
    gap:8px 14px;
    align-items:center;
    font-size:12.5px;
    font-weight:750;
    color:#64748b;
}
.roles-focus-current{
    display:inline-flex;
    align-items:center;
    min-height:28px;
    padding:0 10px;
    border-radius:999px;
    background:#eff6ff;
    color:#1d4ed8;
    font-weight:850;
}
.roles-module-jump{
    display:flex;
    flex-wrap:nowrap;
    gap:8px;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
}
.roles-module-jump-chip{
    display:inline-flex;
    align-items:center;
    gap:8px;
    flex:0 0 auto;
    min-height:34px;
    padding:0 12px;
    border-radius:10px;
    border:1px solid #dbe4ef;
    background:#f8fafc;
    color:#0f172a;
    font-size:12px;
    font-weight:800;
    cursor:pointer;
}
.roles-module-jump-chip em{
    font-style:normal;
    min-width:20px;
    padding:2px 6px;
    border-radius:8px;
    background:#e2e8f0;
    font-size:11px;
}
.roles-filter-empty{
    padding:22px 16px;
    border:1px dashed #dbe4ef;
    border-radius:14px;
    text-align:center;
    color:#64748b;
    font-weight:750;
    background:#fff;
}
.roles-workbench.is-role-focus .permission-card-roles{
    grid-template-columns:minmax(0,1fr);
    max-width:320px;
}
.roles-default-page-card.is-focused{
    border-color:color-mix(in srgb, var(--admin-accent,#ff9900) 50%, #dbe4ef);
}
.roles-permission-module-list .permission-card-roles{
    align-content:start;
}
.roles-sticky-save{
    position:sticky;
    bottom:calc(10px + env(safe-area-inset-bottom,0px));
    z-index:12;
    box-shadow:0 12px 30px rgba(15,23,42,.11);
}
@media(max-width:1500px){
    .roles-flow-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
    .roles-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:1100px){
    .roles-command-hero,
    .roles-flow-board{grid-template-columns:1fr}
    .roles-command-actions{justify-content:flex-start}
    .roles-health-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .roles-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .roles-filter-main{display:grid;grid-template-columns:1fr}
    .roles-simple-tools{display:flex;flex-wrap:wrap;gap:8px}
}
@media(max-width:720px){
    .roles-command-hero{padding:15px;border-radius:18px}
    .roles-command-hero h3{font-size:20px}
    .roles-command-actions .button,
    .roles-sticky-save .button{width:100%}
    .roles-health-grid,
    .roles-flow-grid,
    .roles-card-grid{grid-template-columns:1fr}
    .roles-section-head{display:grid}
    .roles-test-credential{display:grid;justify-content:stretch}
    .roles-test-credential code{width:100%;text-align:center}
    .roles-role-card p{min-height:0}
    .roles-role-card-actions{grid-template-columns:1fr}
    .roles-sticky-save{
        position:sticky;
        bottom:calc(8px + env(safe-area-inset-bottom,0px));
    }
}


/* Phase 4.3.148 ? Role default page workbench */
.roles-default-page-panel {
    display: grid;
    gap: 18px;
}
.roles-default-page-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 14px;
}
.roles-default-page-card {
    border: 1px solid var(--border-color, #e5e7eb);
    border-radius: 16px;
    padding: 16px;
    background: var(--surface-color, #fff);
    display: grid;
    gap: 12px;
    align-content: start;
}
.roles-default-page-card.is-warning {
    border-color: rgba(245, 158, 11, .45);
    background: rgba(255, 251, 235, .72);
}
.roles-default-page-card > div:first-child {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
}
.roles-default-page-card > div:first-child small {
    display: block;
    color: var(--text-muted, #64748b);
    margin-top: 2px;
}
.roles-role-test-user.is-info {
    border-color: rgba(59, 130, 246, .24);
    background: rgba(239, 246, 255, .72);
}
@media (max-width: 760px) {
    .roles-default-page-grid {
        grid-template-columns: 1fr;
    }
    .roles-default-page-card {
        padding: 14px;
    }
}

/* Phase 4.4.004 ? Stock Adjustment index layout rebuild */
.stock-adjustment-workbench{
    display:grid;
    gap:16px;
}
.stock-adjustment-workbench .stock-adjustment-locationless-alert{
    margin-bottom:0;
}
.stock-adjustment-workbench .document-section-card{
    border-radius:16px;
}
.stock-adjustment-section-head{
    align-items:flex-start;
    gap:14px;
}
.stock-adjustment-overview{
    grid-template-columns:repeat(5,minmax(150px,1fr))!important;
    gap:10px!important;
    margin-bottom:0!important;
}
.stock-adjustment-overview-card{
    min-height:96px!important;
    padding:14px 15px!important;
    border-radius:14px!important;
    border-color:#dde7f1!important;
    background:#fff!important;
    box-shadow:none!important;
}
.stock-adjustment-overview-card span{
    color:#526274!important;
    font-size:11px!important;
    letter-spacing:.025em!important;
}
.stock-adjustment-overview-card strong{
    font-size:20px!important;
    line-height:1.15!important;
}
.stock-adjustment-overview-card small{
    color:#64748b!important;
    font-size:11.5px!important;
}
.stock-adjustment-overview-card.is-in,
.stock-adjustment-overview-card.is-out,
.stock-adjustment-overview-card.is-value{
    background:#fff!important;
}
.stock-adjustment-overview-card.is-in{border-left:4px solid #22c55e!important;}
.stock-adjustment-overview-card.is-out{border-left:4px solid #ef4444!important;}
.stock-adjustment-overview-card.is-value{border-left:4px solid #3b82f6!important;}
.stock-adjustment-active-filters{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin:0 0 14px;
    padding:10px 12px;
    border:1px solid #dbeafe;
    border-radius:12px;
    background:#f8fbff;
}
.stock-adjustment-active-filters span{
    display:inline-flex;
    align-items:center;
    max-width:100%;
    min-height:28px;
    padding:4px 10px;
    border:1px solid #bfdbfe;
    border-radius:999px;
    background:#fff;
    color:#1e3a8a;
    font-size:12px;
    font-weight:800;
    line-height:1.35;
}
.stock-adjustment-filter-card{
    padding-bottom:18px!important;
}
.stock-adjustment-filter-bar{
    grid-template-columns:minmax(260px,1.2fr) minmax(270px,1fr) minmax(160px,.65fr) minmax(160px,.65fr)!important;
    gap:14px!important;
    align-items:end!important;
}
.stock-adjustment-filter-search,
.stock-adjustment-filter-material,
.stock-adjustment-filter-location{
    min-width:0!important;
}
.stock-adjustment-filter-material,
.stock-adjustment-filter-location{
    grid-column:span 2;
}
.stock-adjustment-filter-period{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    min-width:0;
}
.stock-adjustment-filter-actions{
    grid-column:1/-1!important;
    display:flex!important;
    justify-content:flex-end!important;
    align-items:center!important;
    gap:10px!important;
    min-width:0!important;
    padding-top:2px;
}
.stock-adjustment-filter-actions .button{
    min-width:112px;
}
.stock-adjustment-list-card{
    padding-bottom:18px!important;
}
.stock-adjustment-table-wrap{
    border-radius:14px!important;
    overflow:auto!important;
}
.stock-adjustments-table{
    min-width:960px!important;
    table-layout:fixed!important;
}
.stock-adjustments-table th:nth-child(1){width:15%!important;}
.stock-adjustments-table th:nth-child(2){width:10%!important;}
.stock-adjustments-table th:nth-child(3){width:27%!important;}
.stock-adjustments-table th:nth-child(4){width:12%!important;}
.stock-adjustments-table th:nth-child(5){width:14%!important;}
.stock-adjustments-table th:nth-child(6){width:10%!important;}
.stock-adjustments-table th:nth-child(7){width:7%!important;}
.stock-adjustments-table th:nth-child(8){width:5%!important;}
.stock-adjustments-table th,
.stock-adjustments-table td{
    padding:12px 12px!important;
}
.stock-adjustments-table th{
    background:#f8fafc!important;
    color:#475569!important;
    font-size:11px!important;
}
.stock-adjustments-table td{
    color:#0f172a!important;
}
.stock-adjustment-doc-cell strong{
    font-size:13.5px!important;
}
.stock-adjustment-date,
.stock-adjustment-value{
    font-weight:850;
    font-variant-numeric:tabular-nums;
    white-space:nowrap;
}
.stock-adjustment-movement-cell,
.stock-adjustment-qty-stack{
    display:grid;
    gap:6px;
    align-content:start;
}
.stock-adjustment-movement-cell small,
.stock-adjustment-qty-stack small{
    color:#64748b;
    font-size:11.5px;
    font-weight:750;
    line-height:1.4;
}
.stock-adjustment-qty-stack small{
    display:grid;
    gap:2px;
}
.stock-adjustment-qty-stack strong.stock-adjustment-qty{
    display:block;
    text-align:left!important;
    font-size:14px;
}
.stock-adjustments-table td:last-child .button{
    width:100%;
    justify-content:center;
}
@media(min-width:1501px){
    .stock-adjustment-filter-bar{
        grid-template-columns:minmax(320px,1.35fr) minmax(300px,1fr) minmax(180px,.7fr) minmax(180px,.7fr)!important;
    }
}
@media(min-width:1800px){
    .stock-adjustments-table{
        min-width:0!important;
    }
}
@media(max-width:1280px){
    .stock-adjustment-overview{
        grid-template-columns:repeat(3,minmax(0,1fr))!important;
    }
    .stock-adjustment-filter-bar{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
    .stock-adjustment-filter-material,
    .stock-adjustment-filter-location{
        grid-column:auto!important;
    }
}
@media(max-width:860px){
    .stock-adjustment-overview{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
    .stock-adjustment-filter-bar{
        grid-template-columns:1fr!important;
    }
    .stock-adjustment-filter-period{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
    .stock-adjustment-filter-actions{
        justify-content:flex-start!important;
    }
}
@media(max-width:720px){
    .stock-adjustment-overview{
        grid-template-columns:1fr!important;
    }
    .stock-adjustment-overview-card{
        min-height:0!important;
    }
    .stock-adjustment-filter-period{
        grid-template-columns:1fr;
    }
    .stock-adjustment-filter-actions{
        display:grid!important;
        grid-template-columns:1fr!important;
    }
    .stock-adjustment-filter-actions .button{
        width:100%;
        min-width:0;
        justify-content:center;
    }
    .stock-adjustments-table{
        min-width:0!important;
    }
    .stock-adjustments-table td{
        grid-template-columns:minmax(106px,.36fr) minmax(0,1fr)!important;
        padding:9px 0!important;
    }
    .stock-adjustment-qty-stack small{
        display:flex;
        flex-wrap:wrap;
        gap:4px 10px;
    }
    .stock-adjustments-table td:last-child .button{
        width:100%!important;
    }
}
@media(max-width:480px){
    .stock-adjustment-section-head{
        display:grid!important;
    }
    .stock-adjustments-table td{
        grid-template-columns:1fr!important;
    }
}

/* Phase 4.4.009 ? Module Registry Foundation */
.modules-page{display:grid;gap:18px}.modules-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:22px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(180deg,#fff 0%,#f8fafc 100%)}.modules-hero h2{margin:10px 0 6px;font-size:24px;line-height:1.2;font-weight:950;color:#0f172a}.modules-hero p{max-width:760px;margin:0;color:#475569;font-weight:650;line-height:1.65}.modules-hero-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;min-width:0;width:100%;max-width:100%}.modules-kpi-card{padding:13px 14px;border:1px solid #e2e8f0;border-radius:14px;background:#fff}.modules-kpi-card span{display:block;font-size:12px;font-weight:850;color:#64748b}.modules-kpi-card strong{display:block;margin-top:4px;font-size:24px;line-height:1.1;font-weight:950;color:#0f172a}.modules-note{margin:0}.modules-group-stack{display:grid;gap:16px}.modules-group-card{border:1px solid var(--line);border-radius:18px;background:#fff;overflow:hidden}.modules-group-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid #e2e8f0;background:#f8fafc}.modules-group-head h3{margin:0;font-size:17px;font-weight:950;color:#0f172a}.modules-group-head p{margin:4px 0 0;color:#64748b;font-size:13px;font-weight:650}.modules-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:16px}.module-registry-card{display:flex;justify-content:space-between;gap:14px;min-height:132px;padding:16px;border:1px solid #e2e8f0;border-radius:16px;background:#fff}.module-registry-card.is-disabled{background:#f8fafc}.module-registry-card.is-locked{border-style:dashed}.module-registry-main{min-width:0;display:grid;gap:8px}.module-registry-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.module-registry-title-row h4{margin:0;font-size:16px;line-height:1.3;font-weight:950;color:#0f172a}.module-registry-main p{margin:0;color:#64748b;font-size:13px;line-height:1.55;font-weight:600}.module-registry-main code{display:inline-flex;width:max-content;max-width:100%;overflow-wrap:anywhere;padding:5px 8px;border-radius:9px;background:#f1f5f9;color:#334155;font-size:12px;font-weight:850}.module-registry-control{display:flex;align-items:flex-start;justify-content:flex-end;min-width:150px}.module-toggle{display:flex;align-items:center;gap:8px;padding:9px 11px;border:1px solid #e2e8f0;border-radius:999px;background:#f8fafc;color:#334155;font-size:13px;font-weight:850;cursor:pointer}.module-toggle input{width:16px;height:16px;accent-color:#0f766e}.module-toggle input:disabled{cursor:not-allowed}.modules-action-bar{position:sticky;bottom:0;z-index:20;display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:18px;padding:14px;border:1px solid #e2e8f0;border-radius:16px;background:rgba(255,255,255,.94);backdrop-filter:blur(10px)}.module-disabled-page{max-width:720px;margin:0 auto;text-align:center;padding:32px 18px}.module-disabled-page .error-code{font-size:54px;font-weight:950;color:#ef4444;line-height:1}.module-disabled-page h2{margin:12px 0 8px;font-size:24px;font-weight:950;color:#0f172a}.module-disabled-page p{margin:0 auto;max-width:560px;color:#475569;font-weight:650;line-height:1.7}@media(max-width:1180px){.modules-hero{display:grid}.modules-hero-kpis{min-width:0}}@media(max-width:820px){.modules-grid{grid-template-columns:1fr}.modules-hero-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.module-registry-card{display:grid}.module-registry-control{justify-content:flex-start;min-width:0}}@media(max-width:560px){.modules-hero{padding:18px}.modules-hero-kpis{grid-template-columns:1fr}.modules-group-head{display:grid}.modules-grid{padding:12px}.modules-action-bar{display:grid;position:static}.modules-action-bar .button{width:100%}.module-toggle{width:100%;justify-content:flex-start}}

/* Phase 4.4.011 Final QA Gate */
.final-qa-page {
    display: block;
}

.final-qa-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(220px, 280px);
    gap: var(--space-5, 1.25rem);
    align-items: stretch;
    padding: var(--space-5, 1.25rem);
    margin-bottom: var(--space-6, 1.5rem);
    border: 1px solid var(--border-color, #e2e8f0);
    border-radius: var(--radius-lg, 1rem);
    background: var(--surface, #fff);
}

.final-qa-hero h2 {
    margin: .65rem 0 .35rem;
    font-size: clamp(1.35rem, 2vw, 1.85rem);
    line-height: 1.25;
    color: var(--text-strong, #0f172a);
}

.final-qa-hero p {
    margin: 0;
    max-width: 70ch;
    color: var(--text-muted, #64748b);
    line-height: 1.65;
}

.final-qa-status-card {
    display: grid;
    gap: .5rem;
    align-content: center;
    justify-items: start;
    min-height: 120px;
    padding: var(--space-4, 1rem);
    border: 1px solid var(--border-color, #e2e8f0);
    border-radius: var(--radius-md, .75rem);
    background: #f8fafc;
}

.final-qa-status-card strong {
    font-size: 1.35rem;
    color: var(--text-strong, #0f172a);
}

.final-qa-status-card span:last-child {
    color: var(--text-muted, #64748b);
    font-size: .9rem;
    line-height: 1.5;
}

.final-qa-summary-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-4, 1rem);
}

.final-qa-metrics {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .75rem;
    margin: 1rem 0 0;
}

.final-qa-metrics div {
    padding: .85rem;
    border: 1px solid var(--border-color, #e2e8f0);
    border-radius: var(--radius-sm, .5rem);
    background: #f8fafc;
}

.final-qa-metrics dt {
    margin: 0 0 .25rem;
    color: var(--text-muted, #64748b);
    font-size: .82rem;
    font-weight: 700;
}

.final-qa-metrics dd {
    margin: 0;
    color: var(--text-strong, #0f172a);
    font-size: 1.05rem;
    font-weight: 800;
}

.final-qa-detail-pre {
    max-width: 420px;
    max-height: 180px;
    overflow: auto;
    white-space: pre-wrap;
    margin: 0;
    padding: .65rem;
    border: 1px solid var(--border-color, #e2e8f0);
    border-radius: var(--radius-sm, .5rem);
    background: #f8fafc;
    font-size: .76rem;
    line-height: 1.45;
}

@media (max-width: 980px) {
    .final-qa-hero,
    .final-qa-summary-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .final-qa-hero {
        padding: var(--space-4, 1rem);
    }

    .final-qa-metrics {
        grid-template-columns: 1fr;
    }

    .final-qa-detail-pre {
        max-width: 100%;
    }
}

/* Phase 4.4.015: Production UAT Smoke Test Pack */
.uat-smoke-page {
    display: block;
}

.uat-smoke-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(220px, 280px);
    gap: var(--space-5, 1.25rem);
    align-items: stretch;
    padding: var(--space-6, 1.5rem);
    border: 1px solid var(--color-border, #d8dee8);
    border-radius: var(--radius-lg, 1rem);
    background: var(--color-surface, #fff);
    margin-bottom: var(--space-6, 1.5rem);
}

.uat-smoke-hero h2 {
    margin: var(--space-3, .75rem) 0 var(--space-2, .5rem);
    font-size: clamp(1.35rem, 1.1rem + .7vw, 1.9rem);
    line-height: 1.25;
    color: var(--color-text-strong, #122033);
}

.uat-smoke-hero p {
    margin: 0;
    color: var(--color-text-muted, #64748b);
    line-height: 1.65;
    max-width: 72ch;
}

.uat-smoke-status-card {
    display: grid;
    align-content: center;
    gap: var(--space-2, .5rem);
    padding: var(--space-4, 1rem);
    border: 1px solid var(--color-border, #d8dee8);
    border-radius: var(--radius-md, .75rem);
    background: var(--color-surface-subtle, #f8fafc);
}

.uat-smoke-status-card strong {
    font-size: 1.1rem;
    color: var(--color-text-strong, #122033);
}

.uat-smoke-status-card span:last-child {
    color: var(--color-text-muted, #64748b);
    font-size: .9rem;
    line-height: 1.5;
}

.uat-smoke-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-4, 1rem);
}

.uat-smoke-chip-list {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
}

.uat-smoke-table td {
    vertical-align: top;
}

.uat-smoke-table code {
    white-space: nowrap;
}

@media (max-width: 1024px) {
    .uat-smoke-hero,
    .uat-smoke-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .uat-smoke-hero {
        padding: var(--space-4, 1rem);
    }
}


/* Phase 4.4.017: Production Go-Live Guard */
.go-live-page {
    display: block;
}
.go-live-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(220px, 280px);
    gap: 1rem;
    align-items: stretch;
    padding: 1.25rem;
    border: 1px solid var(--border-color, #e2e8f0);
    border-radius: 1rem;
    background: #fff;
    margin-bottom: 1.25rem;
}
.go-live-hero h2 {
    margin: .65rem 0 .35rem;
    font-size: clamp(1.3rem, 2vw, 1.85rem);
    line-height: 1.2;
    color: #0f172a;
}
.go-live-hero p {
    margin: 0;
    color: #475569;
    line-height: 1.65;
}
.go-live-status-card {
    display: grid;
    align-content: center;
    gap: .45rem;
    padding: 1rem;
    border: 1px solid #dbeafe;
    border-radius: .875rem;
    background: #f8fafc;
}
.go-live-status-card strong {
    font-size: 1.05rem;
    color: #0f172a;
}
.go-live-status-card span:last-child {
    color: #64748b;
    font-size: .9rem;
    line-height: 1.5;
}
.go-live-grid {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
    gap: 1rem;
}
.go-live-chip-list,
.go-live-ack-list {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
}
.go-live-ack-list {
    flex-direction: column;
}
.go-live-ack-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: .75rem;
    padding: .65rem .75rem;
    border: 1px solid #e2e8f0;
    border-radius: .75rem;
    background: #fff;
}
.go-live-evidence-list {
    margin: 0;
    padding-left: 1.15rem;
    color: #334155;
    line-height: 1.7;
}
.go-live-table td {
    vertical-align: top;
}
@media (max-width: 900px) {
    .go-live-hero,
    .go-live-grid {
        grid-template-columns: 1fr;
    }
}


/* Phase 4.4.019 Full Backup Web + Data */
.full-backup-page .backup-hero {
    border: 1px solid var(--border-color, #d8dee9);
}
.backup-create-card .checkbox-row {
    align-items: flex-start;
    gap: .65rem;
}
.backup-create-card .checkbox-row input[type="checkbox"] {
    margin-top: .22rem;
}
.backup-result-card code,
.backup-table code {
    word-break: break-all;
}
@media (max-width: 768px) {
    .full-backup-page .go-live-grid {
        grid-template-columns: 1fr;
    }
    .backup-result-card .button {
        width: 100%;
        justify-content: center;
    }
}

/* Phase 4.4.023 ? Roles module deep links */
.roles-module-head-tools{
    display:flex;
    align-items:flex-start;
    justify-content:flex-end;
    flex:1 1 auto;
    min-width:240px;
}
.roles-module-link-list{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    flex-wrap:wrap;
    gap:8px;
}
.roles-module-link{
    display:inline-grid;
    grid-template-columns:auto auto auto;
    align-items:center;
    gap:6px;
    min-height:34px;
    padding:7px 10px;
    border:1px solid #cbd5e1;
    border-radius:12px;
    background:#ffffff;
    color:#0f172a;
    text-decoration:none;
    line-height:1.2;
    box-shadow:0 1px 0 rgba(15,23,42,.03);
}
.roles-module-link:hover,
.roles-module-link:focus-visible{
    border-color:#2563eb;
    color:#1d4ed8;
    background:#f8fbff;
    outline:none;
}
.roles-module-link span{
    color:#64748b;
    font-size:10px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.04em;
}
.roles-module-link strong{
    font-size:12px;
    font-weight:900;
    white-space:nowrap;
}
.roles-module-link em{
    color:#64748b;
    font-style:normal;
    font-size:12px;
}
.roles-module-link-empty{
    display:inline-flex;
    align-items:center;
    min-height:34px;
    padding:7px 10px;
    border:1px dashed #cbd5e1;
    border-radius:12px;
    color:#64748b;
    background:#f8fafc;
    font-size:12px;
    font-weight:800;
}
@media(max-width:1100px){
    .roles-module-head-tools{
        justify-content:flex-start;
        min-width:0;
        width:100%;
    }
    .roles-module-link-list{
        justify-content:flex-start;
    }
}
@media(max-width:720px){
    .roles-module-link-list{
        width:100%;
    }
    .roles-module-link{
        width:100%;
        grid-template-columns:auto 1fr auto;
    }
    .roles-module-link strong{
        white-space:normal;
    }
    .roles-module-link-empty{
        width:100%;
    }
}

/* Phase 4.4.023.3 ? Go-Live quick remediation actions */
.go-live-action-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.go-live-action-card {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 14px;
    min-height: 158px;
    padding: 16px;
    border: 1px solid var(--border-color, #e5e7eb);
    border-radius: 12px;
    background: var(--surface-muted, #f8fafc);
}

.go-live-action-card strong {
    display: block;
    margin-bottom: 6px;
    color: var(--text-strong, #111827);
}

.go-live-code-block {
    display: block;
    max-width: 100%;
    padding: 10px 12px;
    border: 1px solid var(--border-color, #e5e7eb);
    border-radius: 8px;
    background: #fff;
    overflow-x: auto;
    white-space: nowrap;
}

.go-live-ack-action-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.go-live-ack-action {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px;
    border: 1px solid var(--border-color, #e5e7eb);
    border-radius: 10px;
    background: #fff;
}

.go-live-ack-action .subtext {
    display: block;
    margin-top: 3px;
}

@media (max-width: 1100px) {
    .go-live-ack-action-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .go-live-action-grid,
    .go-live-ack-action-grid {
        grid-template-columns: 1fr;
    }

    .go-live-ack-action {
        align-items: flex-start;
        flex-direction: column;
    }
}

/* Phase 4.3.110 - Login UX Polish (typography + layout)
   Keep campaign colors; improve readability and form focus */

@keyframes auth-polish-rise{
    from{opacity:0;transform:translateY(14px)}
    to{opacity:1;transform:translateY(0)}
}

/* Shell: center + cap width on ultra-wide screens */
.auth-polish-shell{
    min-height:100vh;
    width:100%;
    display:flex;
    align-items:stretch;
    justify-content:center;
    font-family:var(--theme-font,Sarabun,"Leelawadee UI","Segoe UI",sans-serif);
    letter-spacing:.01em;
    background:
        radial-gradient(circle at 12% 10%,rgba(255,153,0,.10),transparent 26%),
        radial-gradient(circle at 88% 18%,rgba(7,88,184,.12),transparent 28%),
        linear-gradient(135deg,#f8fbff 0%,#eaf5ff 100%);
}

.auth-polish-shell button,
.auth-polish-shell input,
.auth-polish-shell a,
.auth-polish-shell label,
.auth-polish-shell select,
.auth-polish-shell textarea{
    font-family:inherit;
}

body.auth-page-body{
    font-family:var(--theme-font,Sarabun,"Leelawadee UI","Segoe UI",sans-serif)!important;
}

.auth-layout-polish.auth-layout-pro{
    width:100%!important;
    max-width:1280px!important;
    margin:0 auto!important;
    min-height:100vh!important;
    grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)!important;
    overflow:hidden!important;
}

.auth-layout-polish .auth-pro-hero{
    justify-content:center!important;
    gap:28px!important;
    padding:48px clamp(28px,4vw,56px)!important;
    min-width:0!important;
}

.auth-layout-polish .auth-pro-brand{
    margin-bottom:8px!important;
}

.auth-layout-polish .auth-pro-brand-logo,
.auth-layout-polish .app-logo.auth-pro-brand-logo{
    width:min(230px,68vw)!important;
    max-width:250px!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
}

.auth-layout-polish .auth-pro-brand-title{
    font-size:22px!important;
    font-weight:700!important;
    letter-spacing:.02em!important;
    color:#061b3a!important;
}

.auth-layout-polish .auth-pro-brand-subtitle{
    margin-top:5px!important;
    font-size:13px!important;
    font-weight:400!important;
    color:#5e6f88!important;
    letter-spacing:.02em!important;
}

.auth-layout-polish .auth-pro-copy{
    max-width:640px!important;
}

.auth-layout-polish .auth-pro-eyebrow{
    margin-bottom:16px!important;
    font-size:12px!important;
    font-weight:600!important;
    letter-spacing:.03em!important;
    box-shadow:none!important;
}

.auth-layout-polish .auth-pro-copy h1,
.auth-layout-polish .auth-pro-hero h1{
    max-width:620px!important;
    margin:0 0 16px!important;
    font-size:clamp(30px,3.4vw,44px)!important;
    line-height:1.35!important;
    letter-spacing:.005em!important;
    font-weight:700!important;
    color:#061b3a!important;
    word-spacing:normal!important;
}

.auth-layout-polish .auth-pro-copy > p,
.auth-layout-polish .auth-pro-hero > p{
    max-width:560px!important;
    margin:0!important;
    font-size:clamp(15px,1.1vw,17px)!important;
    line-height:1.8!important;
    letter-spacing:.01em!important;
    font-weight:400!important;
    color:#5e6f88!important;
}

.auth-layout-polish .auth-pro-value-strip{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:10px 18px!important;
    margin-top:28px!important;
    max-width:560px!important;
    padding:0!important;
}

.auth-layout-polish .auth-pro-value-strip span{
    display:inline-flex!important;
    align-items:baseline!important;
    gap:6px!important;
    min-height:auto!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    color:#5e6f88!important;
    font-size:13px!important;
    line-height:1.55!important;
    font-weight:400!important;
}

.auth-layout-polish .auth-pro-value-strip b{
    color:#0758b8!important;
    font-weight:600!important;
}

.auth-layout-polish .auth-pro-value-strip span + span{
    position:relative;
    padding-left:18px!important;
}

.auth-layout-polish .auth-pro-value-strip span + span::before{
    content:"";
    position:absolute;
    left:6px;
    top:50%;
    width:4px;
    height:4px;
    border-radius:999px;
    background:#bdd8f5;
    transform:translateY(-50%);
}

.auth-layout-polish .auth-language-switcher{
    margin-top:auto!important;
    gap:8px!important;
}

.auth-layout-polish .auth-language-switcher a{
    font-weight:600!important;
    border-radius:12px!important;
    transition:background .18s ease,border-color .18s ease,transform .18s ease!important;
}

.auth-layout-polish .auth-language-switcher a:hover{
    transform:translateY(-1px);
}

.auth-layout-polish .auth-pro-form-zone{
    padding:40px clamp(20px,3.5vw,48px)!important;
    min-width:0!important;
}

.auth-layout-polish .login-card-pro{
    width:min(100%,420px)!important;
    max-width:420px!important;
    padding:36px 34px!important;
    border-radius:24px!important;
    animation:auth-polish-rise .45s ease both;
}

.auth-layout-polish .login-card-pro-head{
    align-items:flex-start!important;
    gap:16px!important;
    margin-bottom:28px!important;
}

.auth-layout-polish .auth-pro-form-mark,
.auth-layout-polish .auth-pro-form-logo,
.auth-layout-polish .app-logo.auth-pro-form-logo{
    width:48px!important;
    height:48px!important;
    object-fit:contain!important;
    background:transparent!important;
    border-radius:12px!important;
    box-shadow:none!important;
    border-radius:16px!important;
    font-size:22px!important;
}

.auth-layout-polish .login-card-pro h2{
    margin:0!important;
    font-size:26px!important;
    line-height:1.3!important;
    font-weight:700!important;
    letter-spacing:.01em!important;
    color:#061b3a!important;
}

.auth-layout-polish .login-card-pro-head p{
    margin:8px 0 0!important;
    font-size:14px!important;
    line-height:1.65!important;
    font-weight:400!important;
    color:#5e6f88!important;
}

.auth-layout-polish .login-card-pro-fields{
    gap:18px!important;
}

.auth-layout-polish .auth-pro-field label{
    margin-bottom:8px!important;
    font-size:13px!important;
    font-weight:600!important;
    color:#061b3a!important;
    letter-spacing:.01em!important;
}

.auth-layout-polish .auth-pro-input-icon{
    left:14px!important;
    width:20px!important;
    height:20px!important;
    color:#64748b!important;
    font-size:inherit!important;
}

.auth-layout-polish .auth-pro-input-icon svg{
    display:block;
    width:18px;
    height:18px;
}

.auth-layout-polish .auth-pro-input-wrap .input{
    min-height:48px!important;
    border-radius:14px!important;
    padding-left:44px!important;
    font-size:15px!important;
    font-weight:600!important;
    letter-spacing:.01em!important;
    color:#0f172a!important;
    -webkit-text-fill-color:#0f172a!important;
    caret-color:#0f172a!important;
    border:1.5px solid #cbd5e1!important;
    background:#ffffff!important;
    background-color:#ffffff!important;
    box-shadow:none!important;
    color-scheme:light!important;
    transition:border-color .18s ease,box-shadow .18s ease!important;
}

.auth-layout-polish .auth-pro-input-wrap-password .input{
    padding-right:48px!important;
}

.auth-layout-polish .auth-pro-password-toggle{
    position:absolute;
    right:8px;
    top:50%;
    transform:translateY(-50%);
    z-index:2;
    display:inline-grid;
    place-items:center;
    width:36px;
    height:36px;
    margin:0;
    padding:0;
    border:0;
    border-radius:10px;
    background:transparent;
    color:#475569;
    cursor:pointer;
    transition:background .15s ease,color .15s ease;
}

.auth-layout-polish .auth-pro-password-toggle:hover,
.auth-layout-polish .auth-pro-password-toggle:focus-visible{
    background:#eef6ff;
    color:#0758b8;
    outline:none;
}

.auth-layout-polish .auth-pro-password-toggle svg{
    display:block;
}

.auth-layout-polish .auth-pro-input-wrap .input::placeholder{
    color:#64748b!important;
    -webkit-text-fill-color:#64748b!important;
    font-weight:500!important;
    opacity:1!important;
}

.auth-layout-polish .auth-pro-input-wrap .input:focus{
    border-color:#0758b8!important;
    box-shadow:var(--focus-ring,0 0 0 4px rgba(22,152,255,.20))!important;
}

.auth-layout-polish .auth-pro-input-wrap:focus-within .auth-pro-input-icon{
    color:#0758b8!important;
}

.auth-layout-polish .auth-pro-submit{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:10px!important;
    min-height:50px!important;
    margin-top:4px!important;
    border-radius:14px!important;
    background:linear-gradient(135deg,#ffbf3f 0%,#ff9900 100%)!important;
    border-color:#ff9900!important;
    color:#061b3a!important;
    font-size:15px!important;
    font-weight:600!important;
    letter-spacing:.02em!important;
    box-shadow:0 12px 28px rgba(255,153,0,.28)!important;
    transition:transform .18s ease,box-shadow .18s ease,filter .18s ease!important;
}

.auth-layout-polish .auth-pro-submit:hover{
    background:linear-gradient(135deg,#ffc94d 0%,#ff9900 100%)!important;
    filter:brightness(1.02);
    transform:translateY(-1px);
    box-shadow:0 16px 32px rgba(255,153,0,.32)!important;
}

.auth-layout-polish .auth-pro-submit:active{
    transform:translateY(0);
}

.auth-layout-polish .auth-pro-divider{
    font-weight:600!important;
    color:#94a3b8!important;
}

.auth-layout-polish .auth-pro-google-button{
    min-height:48px!important;
    border-radius:14px!important;
    font-weight:600!important;
    gap:12px!important;
    transition:background .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease!important;
}

.auth-layout-polish .auth-pro-google-button:hover,
.auth-layout-polish .auth-pro-google-button:focus-visible{
    transform:translateY(-1px);
    border-color:#cbd5e1!important;
    background:#fff!important;
    box-shadow:0 12px 28px rgba(15,23,42,.08)!important;
}

.auth-layout-polish .auth-pro-google-mark{
    width:28px!important;
    height:28px!important;
    min-width:28px!important;
    border-radius:999px!important;
    background:#fff!important;
    border:1px solid #e2e8f0!important;
    box-shadow:0 1px 2px rgba(15,23,42,.06)!important;
    color:inherit!important;
    font-size:0!important;
    line-height:0!important;
}

.auth-layout-polish .auth-pro-google-mark svg{
    display:block;
    width:18px;
    height:18px;
}

.auth-layout-polish .auth-pro-login-hint{
    margin-top:2px!important;
    border-radius:14px!important;
    padding:12px 14px!important;
    font-size:12px!important;
    font-weight:500!important;
    line-height:1.45!important;
}

.auth-layout-polish .auth-pro-login-hint strong{
    font-weight:700!important;
    font-size:12.5px!important;
}

/* Ultra-wide: keep shell compact, do not stretch edge-to-edge */
@media (min-width:1400px){
    .auth-polish-shell{
        align-items:center!important;
        padding:36px 28px!important;
    }

    .auth-layout-polish.auth-layout-pro{
        max-width:1240px!important;
        min-height:min(860px,calc(100vh - 72px))!important;
        border-radius:28px!important;
        border:1px solid rgba(191,219,254,.85)!important;
        box-shadow:0 28px 80px rgba(15,23,42,.12)!important;
        overflow:hidden!important;
    }

    .auth-layout-polish .auth-pro-hero,
    .auth-layout-polish .auth-pro-form-zone{
        min-height:100%!important;
    }
}

@media (min-width:1800px){
    .auth-layout-polish.auth-layout-pro{
        max-width:1280px!important;
    }
}

/* Laptop / mid desktop */
@media (max-width:1280px){
    .auth-layout-polish.auth-layout-pro{
        grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)!important;
    }

    .auth-layout-polish .auth-pro-hero{
        padding:36px clamp(22px,3vw,40px)!important;
        gap:22px!important;
    }

    .auth-layout-polish .auth-pro-copy h1,
    .auth-layout-polish .auth-pro-hero h1{
        font-size:clamp(28px,3.2vw,40px)!important;
    }

    .auth-layout-polish .login-card-pro{
        width:min(100%,400px)!important;
        max-width:400px!important;
        padding:30px 26px!important;
    }
}

/* Tablet: stack columns */
@media (max-width:1100px){
    .auth-polish-shell{
        align-items:stretch!important;
        padding:0!important;
    }

    .auth-layout-polish.auth-layout-pro{
        grid-template-columns:1fr!important;
        max-width:100%!important;
        min-height:100vh!important;
        border-radius:0!important;
        border:0!important;
        box-shadow:none!important;
    }

    .auth-layout-polish .auth-pro-hero{
        order:1!important;
        min-height:auto!important;
        padding:28px 20px 18px!important;
        gap:18px!important;
        justify-content:flex-start!important;
    }

    .auth-layout-polish .auth-pro-form-zone{
        order:2!important;
        min-height:auto!important;
        padding:12px 16px 36px!important;
        align-items:flex-start!important;
    }

    .auth-layout-polish .auth-pro-copy h1,
    .auth-layout-polish .auth-pro-hero h1{
        font-size:clamp(28px,5.5vw,36px)!important;
        line-height:1.25!important;
        margin-bottom:12px!important;
    }

    .auth-layout-polish .auth-pro-copy > p{
        font-size:14.5px!important;
        line-height:1.65!important;
    }

    .auth-layout-polish .auth-pro-value-strip{
        margin-top:18px!important;
        gap:8px 14px!important;
    }

    .auth-layout-polish .auth-language-switcher{
        margin-top:10px!important;
        flex-wrap:wrap!important;
    }

    .auth-layout-polish .login-card-pro{
        width:100%!important;
        max-width:480px!important;
        margin:0 auto!important;
        padding:28px 24px!important;
        animation:auth-polish-rise .4s ease .05s both;
    }
}

/* Narrow tablet / large phone */
@media (max-width:760px){
    .auth-layout-polish .auth-pro-hero{
        padding:22px 16px 14px!important;
    }

    .auth-layout-polish .auth-pro-value-strip span + span{
        padding-left:0!important;
    }

    .auth-layout-polish .auth-pro-value-strip span + span::before{
        display:none!important;
    }

    .auth-layout-polish .auth-pro-value-strip{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:8px!important;
    }

    .auth-layout-polish .auth-language-switcher a{
        flex:1 1 auto!important;
        justify-content:center!important;
        min-height:40px!important;
    }
}

@media (max-width:640px){
    .auth-layout-polish .auth-pro-hero{
        padding:18px 14px 12px!important;
        gap:12px!important;
    }

    .auth-layout-polish .auth-pro-brand-title{
        font-size:18px!important;
    }

    .auth-layout-polish .auth-pro-copy h1,
    .auth-layout-polish .auth-pro-hero h1{
        font-size:clamp(24px,7.5vw,30px)!important;
        line-height:1.28!important;
    }

    .auth-layout-polish .auth-pro-copy > p{
        display:-webkit-box;
        -webkit-line-clamp:3;
        -webkit-box-orient:vertical;
        overflow:hidden;
        font-size:14px!important;
    }

    .auth-layout-polish .auth-pro-value-strip{
        display:none!important;
    }

    .auth-layout-polish .auth-pro-form-zone{
        padding:8px 12px 28px!important;
    }

    .auth-layout-polish .login-card-pro{
        max-width:100%!important;
        padding:22px 16px!important;
        border-radius:20px!important;
    }

    .auth-layout-polish .login-card-pro-head{
        gap:12px!important;
        margin-bottom:20px!important;
    }

    .auth-layout-polish .auth-pro-form-mark,
    .auth-layout-polish .auth-pro-form-logo,
    .auth-layout-polish .app-logo.auth-pro-form-logo{
        width:44px!important;
        height:44px!important;
        border-radius:14px!important;
    }

    .auth-layout-polish .login-card-pro h2{
        font-size:22px!important;
    }

    .auth-layout-polish .auth-pro-input-wrap .input{
        min-height:48px!important;
        font-size:16px!important;
    }

    .auth-layout-polish .auth-pro-submit,
    .auth-layout-polish .auth-pro-google-button{
        width:100%!important;
    }

    .auth-layout-polish .auth-pro-login-hint{
        display:grid!important;
        gap:4px!important;
        justify-content:start!important;
    }
}

/* Very small phones */
@media (max-width:380px){
    .auth-layout-polish .auth-pro-brand-subtitle{
        font-size:11px!important;
    }

    .auth-layout-polish .login-card-pro{
        padding:18px 14px!important;
    }

    .auth-layout-polish .auth-language-switcher a span{
        font-size:12px!important;
    }
}


/* Phase 4.3.112 - Management UX polish (shell + dashboard)
   Keep campaign navy/blue/#ff9900; use Sarabun; reduce density */

body.stock-layout-polish{
    font-family:Sarabun,"Leelawadee UI","Segoe UI",sans-serif!important;
    letter-spacing:.01em;
}

body.stock-layout-polish button,
body.stock-layout-polish input,
body.stock-layout-polish select,
body.stock-layout-polish textarea,
body.stock-layout-polish .button,
body.stock-layout-polish .btn,
body.stock-layout-polish .stock-nav-link{
    font-family:inherit!important;
}

body.stock-layout-polish .stock-layout-polish-shell{
    grid-template-columns:288px minmax(0,1fr)!important;
}

body.stock-layout-polish .stock-brand{
    padding:14px 14px!important;
    border-radius:20px!important;
    box-shadow:0 10px 28px rgba(0,0,0,.16)!important;
}

body.stock-layout-polish .stock-brand-title{
    font-size:18px!important;
    font-weight:700!important;
    letter-spacing:.02em!important;
    text-shadow:none!important;
}

body.stock-layout-polish .stock-brand-subtitle{
    margin-top:3px!important;
    font-size:12px!important;
    font-weight:400!important;
    letter-spacing:.02em!important;
    color:#b8d6ff!important;
}

body.stock-layout-polish .stock-system-state{
    padding:12px 14px!important;
    border-radius:18px!important;
    box-shadow:0 8px 22px rgba(0,0,0,.14)!important;
}

body.stock-layout-polish .stock-system-state-title{
    margin-top:6px!important;
    font-size:14px!important;
    font-weight:600!important;
    line-height:1.35!important;
}

body.stock-layout-polish .stock-system-state-label{
    font-size:11px!important;
    font-weight:600!important;
}

body.stock-layout-polish .stock-system-state-text{
    margin-top:4px!important;
    font-size:12px!important;
    font-weight:400!important;
    line-height:1.5!important;
}

body.stock-layout-polish .stock-nav-group{
    margin-bottom:14px!important;
}

body.stock-layout-polish .stock-nav-group-title{
    margin:0 0 6px 10px!important;
    font-size:11px!important;
    font-weight:600!important;
    letter-spacing:.06em!important;
}

body.stock-layout-polish .stock-nav-link{
    min-height:44px!important;
    padding:8px 10px!important;
    border-radius:14px!important;
    font-weight:500!important;
    gap:10px!important;
}

body.stock-layout-polish .stock-nav-link:hover{
    box-shadow:none!important;
}

body.stock-layout-polish .stock-nav-active{
    font-weight:600!important;
    box-shadow:0 10px 24px rgba(255,153,0,.28)!important;
}

body.stock-layout-polish .stock-nav-icon{
    width:28px!important;
    height:28px!important;
    border-radius:10px!important;
    font-size:11px!important;
    font-weight:600!important;
}

body.stock-layout-polish .stock-nav-label-th{
    font-weight:600!important;
    font-size:13.5px!important;
    line-height:1.3!important;
}

body.stock-layout-polish .stock-nav-label-en{
    font-size:11px!important;
    font-weight:400!important;
    opacity:.85!important;
    line-height:1.25!important;
}

body.stock-layout-polish .stock-topbar{
    height:72px!important;
}

body.stock-layout-polish .stock-breadcrumb{
    font-size:12px!important;
    font-weight:500!important;
    letter-spacing:.02em!important;
    color:#c7ddff!important;
}

body.stock-layout-polish .stock-page-title{
    margin-top:2px!important;
    font-size:22px!important;
    font-weight:700!important;
    letter-spacing:.01em!important;
    line-height:1.25!important;
    text-shadow:none!important;
}

body.stock-layout-polish .stock-page-shell{
    width:100%!important;
    max-width:1440px!important;
    margin:0 auto!important;
    padding:22px 22px 28px!important;
}

body.stock-layout-polish .stock-page-card{
    border-width:1px!important;
    border-radius:22px!important;
    padding:22px!important;
    box-shadow:0 16px 40px rgba(3,17,43,.10)!important;
}

body.stock-layout-polish .button,
body.stock-layout-polish .btn{
    font-weight:600!important;
    letter-spacing:.01em!important;
    border-radius:14px!important;
}

body.stock-layout-polish .field label,
body.stock-layout-polish .form-label{
    font-weight:600!important;
    letter-spacing:.01em!important;
}

body.stock-layout-polish h1,
body.stock-layout-polish h2,
body.stock-layout-polish h3,
body.stock-layout-polish .section-title,
body.stock-layout-polish .card-title{
    font-weight:700!important;
    letter-spacing:.01em!important;
    line-height:1.35!important;
}

body.stock-layout-polish table[data-core-table] thead th,
body.stock-layout-polish .table thead th,
body.stock-layout-polish .data-table thead th,
body.stock-layout-polish thead th{
    font-weight:600!important;
    letter-spacing:.02em!important;
}

body.stock-layout-polish .badge,
body.stock-layout-polish .badge-soft,
body.stock-layout-polish .pill{
    font-weight:600!important;
}

body.stock-layout-polish .card,
body.stock-layout-polish .stat-card,
body.stock-layout-polish .kpi,
body.stock-layout-polish .summary-box,
body.stock-layout-polish .panel,
body.stock-layout-polish .table-card,
body.stock-layout-polish .core-card{
    border-width:1px!important;
    border-radius:18px!important;
    box-shadow:0 10px 26px rgba(3,17,43,.07)!important;
}

/* Dashboard compact hero + metrics */
body.stock-layout-polish .dashboard-hero,
body.stock-layout-polish .dashboard-hero-compact{
    align-items:flex-end!important;
    gap:16px!important;
    margin-bottom:16px!important;
    padding:18px 20px!important;
    border-width:1px!important;
    border-radius:18px!important;
    box-shadow:0 10px 28px rgba(3,17,43,.07)!important;
}

body.stock-layout-polish .dashboard-eyebrow{
    display:inline-flex!important;
    margin-bottom:8px!important;
    padding:4px 10px!important;
    border-radius:999px!important;
    background:#fff4df!important;
    color:#c86600!important;
    font-size:11px!important;
    font-weight:600!important;
    letter-spacing:.04em!important;
}

body.stock-layout-polish .dashboard-hero h1,
body.stock-layout-polish .dashboard-hero-compact h1{
    font-size:clamp(22px,2.2vw,28px)!important;
    font-weight:700!important;
    line-height:1.35!important;
    letter-spacing:.005em!important;
}

body.stock-layout-polish .dashboard-hero p,
body.stock-layout-polish .dashboard-hero-compact p{
    max-width:640px!important;
    margin-top:6px!important;
    font-size:14px!important;
    font-weight:400!important;
    line-height:1.7!important;
    color:#5e6f88!important;
}

body.stock-layout-polish .dashboard-hero-actions{
    gap:8px!important;
}

body.stock-layout-polish .dashboard-kpi-grid{
    gap:12px!important;
}

body.stock-layout-polish .dashboard-kpi-card{
    padding:16px!important;
    border-radius:18px!important;
    border-width:1px!important;
    box-shadow:0 8px 22px rgba(3,17,43,.06)!important;
}

body.stock-layout-polish .dashboard-kpi-label{
    font-size:13px!important;
    font-weight:600!important;
}

body.stock-layout-polish .dashboard-kpi-card strong{
    font-size:28px!important;
    font-weight:700!important;
    letter-spacing:.01em!important;
}

body.stock-layout-polish .dashboard-kpi-card small{
    font-size:12px!important;
    font-weight:400!important;
    line-height:1.45!important;
}

body.stock-layout-polish .dashboard-kpi-icon{
    width:40px!important;
    height:40px!important;
    border-radius:12px!important;
    font-size:12px!important;
    font-weight:600!important;
}

body.stock-layout-polish .dashboard-mini-grid{
    gap:10px!important;
    margin-top:12px!important;
}

body.stock-layout-polish .dashboard-mini-card{
    padding:12px 14px!important;
    border-radius:14px!important;
    border-width:1px!important;
    box-shadow:none!important;
    background:#f8fbff!important;
}

body.stock-layout-polish .dashboard-mini-card span{
    font-size:12.5px!important;
    font-weight:500!important;
    line-height:1.35!important;
    color:#5e6f88!important;
}

body.stock-layout-polish .dashboard-mini-card strong{
    font-size:20px!important;
    font-weight:700!important;
    color:#061b3a!important;
}

body.stock-layout-polish .dashboard-mini-more{
    margin-top:12px!important;
    border:1px solid #dbeafe!important;
    border-radius:16px!important;
    background:#fff!important;
    overflow:hidden;
}

body.stock-layout-polish .dashboard-mini-more > summary{
    list-style:none;
    cursor:pointer;
    padding:12px 16px!important;
    font-size:13px!important;
    font-weight:600!important;
    color:#0758b8!important;
    user-select:none;
}

body.stock-layout-polish .dashboard-mini-more > summary::-webkit-details-marker{
    display:none;
}

body.stock-layout-polish .dashboard-mini-more > summary::after{
    content:"+";
    float:right;
    font-weight:700;
    color:#94a3b8;
}

body.stock-layout-polish .dashboard-mini-more[open] > summary::after{
    content:"-";
}

body.stock-layout-polish .dashboard-mini-more .dashboard-mini-grid{
    margin:0!important;
    padding:0 12px 12px!important;
}

body.stock-layout-polish .dashboard-value-card,
body.stock-layout-polish .dashboard-panel{
    border-width:1px!important;
    border-radius:18px!important;
    box-shadow:0 8px 22px rgba(3,17,43,.06)!important;
}

body.stock-layout-polish .dashboard-panel-head h2{
    font-size:17px!important;
    font-weight:700!important;
}

body.stock-layout-polish .dashboard-panel-head p{
    font-size:13px!important;
    font-weight:400!important;
    line-height:1.55!important;
}

@media (min-width:1600px){
    body.stock-layout-polish .stock-page-shell{
        max-width:1480px!important;
        padding:24px 28px 32px!important;
    }
}

@media (max-width:1100px){
    body.stock-layout-polish .stock-layout-polish-shell{
        grid-template-columns:1fr!important;
    }

    body.stock-layout-polish .stock-page-shell{
        max-width:100%!important;
        padding:16px!important;
    }

    body.stock-layout-polish .stock-page-card{
        padding:16px!important;
        border-radius:18px!important;
    }

    body.stock-layout-polish .dashboard-hero,
    body.stock-layout-polish .dashboard-hero-compact{
        display:grid!important;
        align-items:start!important;
    }
}

@media (max-width:640px){
    body.stock-layout-polish .stock-topbar{
        height:auto!important;
        min-height:64px!important;
        padding:10px 12px!important;
    }

    body.stock-layout-polish .stock-page-title{
        font-size:18px!important;
    }

    body.stock-layout-polish .stock-page-shell{
        padding:12px!important;
    }

    body.stock-layout-polish .stock-page-card{
        padding:14px!important;
        border-radius:16px!important;
    }

    body.stock-layout-polish .dashboard-hero-compact h1{
        font-size:22px!important;
    }

    body.stock-layout-polish .dashboard-hero-actions .btn,
    body.stock-layout-polish .dashboard-hero-actions .button{
        width:100%!important;
        justify-content:center!important;
    }

    body.stock-layout-polish .dashboard-mini-grid-priority{
        grid-template-columns:1fr 1fr!important;
    }
}

/* Phase 4.3.113 - Management nav structure + chrome
   Collapsible groups, correct active state, sidebar/top/footer rhythm */

body.stock-layout-polish .stock-sidebar{
    display:flex!important;
    flex-direction:column!important;
    gap:12px!important;
    padding:14px!important;
    height:100vh!important;
    overflow:hidden!important;
}

body.stock-layout-polish .stock-sidebar-head{
    flex:0 0 auto!important;
    display:grid!important;
    gap:10px!important;
}

body.stock-layout-polish .stock-nav{
    flex:1 1 auto!important;
    min-height:0!important;
    margin-top:4px!important;
    overflow:auto!important;
    padding-right:2px!important;
    display:grid!important;
    gap:6px!important;
    align-content:start!important;
}

body.stock-layout-polish .stock-sidebar-foot{
    flex:0 0 auto!important;
    margin-top:auto!important;
    padding:12px 12px!important;
    border:1px solid rgba(141,189,255,.22)!important;
    border-radius:16px!important;
    background:rgba(255,255,255,.06)!important;
}

body.stock-layout-polish .stock-sidebar-foot-title{
    color:#fff!important;
    font-size:12px!important;
    font-weight:600!important;
}

body.stock-layout-polish .stock-sidebar-foot-text{
    margin-top:3px!important;
    color:#9fc0ea!important;
    font-size:11px!important;
    font-weight:400!important;
    line-height:1.45!important;
}

body.stock-layout-polish .stock-nav-group{
    margin:0!important;
    border:1px solid transparent!important;
    border-radius:14px!important;
    background:transparent!important;
}

body.stock-layout-polish .stock-nav-group.is-active-group{
    border-color:rgba(255,153,0,.28)!important;
    background:rgba(255,153,0,.08)!important;
}

body.stock-layout-polish .stock-nav-group-title{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:8px!important;
    list-style:none!important;
    cursor:pointer!important;
    user-select:none!important;
    margin:0!important;
    padding:8px 10px!important;
    color:#9fc0ea!important;
    font-size:11px!important;
    font-weight:600!important;
    letter-spacing:.05em!important;
    text-transform:uppercase!important;
}

body.stock-layout-polish .stock-nav-group-title::-webkit-details-marker{
    display:none!important;
}

body.stock-layout-polish .stock-nav-group-caret{
    width:8px!important;
    height:8px!important;
    border-right:1.5px solid currentColor!important;
    border-bottom:1.5px solid currentColor!important;
    transform:rotate(-45deg)!important;
    transition:transform .16s ease!important;
    opacity:.8!important;
}

body.stock-layout-polish .stock-nav-group[open] > .stock-nav-group-title .stock-nav-group-caret{
    transform:rotate(45deg)!important;
}

body.stock-layout-polish .stock-nav-group-links{
    display:grid!important;
    gap:4px!important;
    padding:0 4px 8px!important;
}

body.stock-layout-polish .stock-nav-link{
    min-height:42px!important;
    padding:8px 10px!important;
    border-radius:12px!important;
}

body.stock-layout-polish .stock-nav-active{
    position:relative!important;
}

body.stock-layout-polish .stock-nav-active::before{
    content:"";
    position:absolute;
    left:0;
    top:8px;
    bottom:8px;
    width:3px;
    border-radius:999px;
    background:#061b3a;
}

body.stock-layout-polish .stock-breadcrumb{
    display:flex!important;
    align-items:center!important;
    flex-wrap:wrap!important;
    gap:6px!important;
}

body.stock-layout-polish .stock-breadcrumb-sep{
    opacity:.55!important;
}

body.stock-layout-polish .stock-main{
    display:flex!important;
    flex-direction:column!important;
    min-width:0!important;
    min-height:100vh!important;
}

body.stock-layout-polish .stock-page-shell{
    flex:1 1 auto!important;
    display:flex!important;
    flex-direction:column!important;
    gap:12px!important;
}

body.stock-layout-polish .stock-page-card{
    flex:1 1 auto!important;
}

body.stock-layout-polish .stock-app-footer{
    display:flex!important;
    align-items:center!important;
    flex-wrap:wrap!important;
    gap:6px!important;
    padding:4px 6px 2px!important;
    color:#5e6f88!important;
    font-size:12px!important;
    font-weight:500!important;
}

body.stock-layout-polish .stock-app-footer-dot{
    opacity:.5!important;
}

@media (max-width:1100px){
    body.stock-layout-polish .stock-sidebar{
        height:100vh!important;
    }

    body.stock-layout-polish .stock-app-footer{
        padding-bottom:8px!important;
    }
}

/* Phase 4.3.114 - Topbar actions polish
   Unified toolbar buttons + user dropdown menu */

body.stock-layout-polish .stock-topbar-actions{
    gap:0!important;
}

body.stock-layout-polish .stock-topbar-toolbar{
    display:inline-flex!important;
    align-items:center!important;
    gap:8px!important;
    padding:4px!important;
    border:1px solid rgba(255,255,255,.16)!important;
    border-radius:16px!important;
    background:rgba(255,255,255,.08)!important;
    backdrop-filter:blur(10px)!important;
}

body.stock-layout-polish .stock-topbar-btn{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    min-height:40px!important;
    padding:0 12px!important;
    border:1px solid rgba(255,255,255,.18)!important;
    border-radius:12px!important;
    background:rgba(255,255,255,.10)!important;
    color:#fff!important;
    box-shadow:none!important;
    cursor:pointer!important;
    font-family:inherit!important;
    font-size:12px!important;
    font-weight:600!important;
    line-height:1!important;
    transition:background .15s ease,border-color .15s ease,transform .15s ease!important;
}

body.stock-layout-polish .stock-topbar-btn:hover,
body.stock-layout-polish .stock-topbar-btn:focus-visible{
    background:rgba(255,255,255,.16)!important;
    border-color:rgba(255,191,63,.45)!important;
    outline:none!important;
}

body.stock-layout-polish .stock-notification-button{
    position:relative!important;
    width:40px!important;
    min-width:40px!important;
    padding:0!important;
}

body.stock-layout-polish .stock-language-button{
    min-width:auto!important;
    height:auto!important;
    padding:0 10px!important;
    box-shadow:none!important;
}

body.stock-layout-polish .stock-language-code{
    font-size:11px!important;
    font-weight:600!important;
    letter-spacing:.04em!important;
    color:#fff!important;
}

body.stock-layout-polish .stock-notification-badge{
    top:4px!important;
    right:4px!important;
    min-width:16px!important;
    height:16px!important;
    line-height:16px!important;
    font-size:10px!important;
    font-weight:700!important;
    border:1px solid rgba(255,255,255,.85)!important;
}

body.stock-layout-polish .stock-user-menu{
    position:relative!important;
}

body.stock-layout-polish .stock-user-menu-button{
    max-width:220px!important;
    padding:4px 10px 4px 4px!important;
}

body.stock-layout-polish .stock-user-menu-button .stock-avatar{
    width:32px!important;
    height:32px!important;
    border-radius:10px!important;
    background:#fff!important;
    color:#0758b8!important;
    font-size:13px!important;
    font-weight:700!important;
    box-shadow:none!important;
}

body.stock-layout-polish .stock-user-menu-meta{
    display:none!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    min-width:0!important;
    text-align:left!important;
}

body.stock-layout-polish .stock-user-menu-name{
    max-width:120px!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    color:#fff!important;
    font-size:12px!important;
    font-weight:600!important;
    line-height:1.25!important;
}

body.stock-layout-polish .stock-user-menu-username{
    max-width:120px!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    color:#c7ddff!important;
    font-size:10.5px!important;
    font-weight:400!important;
    line-height:1.2!important;
}

body.stock-layout-polish .stock-user-menu-caret{
    display:none!important;
    width:7px!important;
    height:7px!important;
    border-right:1.5px solid currentColor!important;
    border-bottom:1.5px solid currentColor!important;
    transform:rotate(45deg)!important;
    margin-left:2px!important;
    opacity:.75!important;
}

body.stock-layout-polish .stock-user-menu-panel{
    display:none!important;
    position:absolute!important;
    right:0!important;
    top:calc(100% + 10px)!important;
    min-width:240px!important;
    padding:10px!important;
    border:1px solid #dbeafe!important;
    border-radius:16px!important;
    background:#fff!important;
    box-shadow:0 18px 48px rgba(15,23,42,.18)!important;
    z-index:95!important;
}

body.stock-layout-polish .stock-user-menu.is-open .stock-user-menu-panel{
    display:block!important;
}

body.stock-layout-polish .stock-user-menu-head{
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
    padding:6px 6px 10px!important;
    border-bottom:1px solid #e5f1ff!important;
    margin-bottom:8px!important;
}

body.stock-layout-polish .stock-user-menu-head strong{
    display:block!important;
    color:#061b3a!important;
    font-size:13px!important;
    font-weight:600!important;
    line-height:1.3!important;
}

body.stock-layout-polish .stock-user-menu-head span{
    display:block!important;
    margin-top:2px!important;
    color:#5e6f88!important;
    font-size:11.5px!important;
    font-weight:400!important;
}

body.stock-layout-polish .stock-avatar-lg{
    width:38px!important;
    height:38px!important;
    border-radius:12px!important;
    flex:0 0 auto!important;
}

body.stock-layout-polish .stock-user-menu-logout{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    width:100%!important;
    min-height:40px!important;
    padding:0 12px!important;
    border:1px solid #fecaca!important;
    border-radius:12px!important;
    background:#fff5f5!important;
    color:#b91c1c!important;
    font-size:13px!important;
    font-weight:600!important;
    cursor:pointer!important;
}

body.stock-layout-polish .stock-user-menu-logout:hover{
    background:#fee2e2!important;
    border-color:#fca5a5!important;
}

body.stock-layout-polish .stock-language-menu,
body.stock-layout-polish .stock-notification-panel{
    border-radius:16px!important;
    box-shadow:0 18px 48px rgba(15,23,42,.18)!important;
}

@media (min-width:900px){
    body.stock-layout-polish .stock-user-menu-meta{
        display:flex!important;
    }

    body.stock-layout-polish .stock-user-menu-caret{
        display:inline-block!important;
    }
}

@media (max-width:1100px){
    body.stock-layout-polish .stock-topbar-toolbar{
        gap:6px!important;
        padding:3px!important;
        border-radius:14px!important;
    }

    body.stock-layout-polish .stock-topbar-btn{
        min-height:38px!important;
        border-radius:11px!important;
    }

    body.stock-layout-polish .stock-notification-button,
    body.stock-layout-polish .stock-language-button{
        width:38px!important;
        min-width:38px!important;
        padding:0!important;
    }

    body.stock-layout-polish .stock-language-code{
        display:none!important;
    }

    body.stock-layout-polish .stock-user-menu-button{
        width:38px!important;
        min-width:38px!important;
        max-width:38px!important;
        padding:0!important;
    }

    body.stock-layout-polish .stock-user-menu-panel{
        right:-6px!important;
    }
}

/* Phase 4.3.115 - Sidebar intro polish (brand + status) */

body.stock-layout-polish .stock-sidebar-head{
    gap:0!important;
}

body.stock-layout-polish .stock-sidebar-intro{
    display:grid!important;
    gap:14px!important;
    padding:16px!important;
    border:1px solid rgba(141,189,255,.22)!important;
    border-radius:18px!important;
    background:linear-gradient(180deg,rgba(255,255,255,.12) 0%,rgba(255,255,255,.06) 100%)!important;
    box-shadow:0 10px 24px rgba(0,0,0,.12)!important;
}

body.stock-layout-polish .stock-sidebar-intro .stock-brand{
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    gap:12px!important;
}

body.stock-layout-polish .stock-sidebar-intro .stock-brand-mark{
    width:44px!important;
    height:44px!important;
    border-radius:14px!important;
    font-size:20px!important;
    font-weight:700!important;
    box-shadow:0 8px 18px rgba(255,153,0,.22)!important;
}

body.stock-layout-polish .stock-sidebar-intro .stock-brand-title{
    font-size:19px!important;
    font-weight:700!important;
    letter-spacing:.03em!important;
    line-height:1.2!important;
    text-shadow:none!important;
}

body.stock-layout-polish .stock-sidebar-intro .stock-brand-subtitle{
    margin-top:4px!important;
    font-size:12.5px!important;
    font-weight:400!important;
    letter-spacing:.02em!important;
    line-height:1.4!important;
    color:#b8d6ff!important;
}

body.stock-layout-polish .stock-system-status{
    padding-top:12px!important;
    border-top:1px solid rgba(141,189,255,.18)!important;
}

body.stock-layout-polish .stock-system-status-row{
    display:inline-flex!important;
    align-items:center!important;
    gap:8px!important;
    min-height:24px!important;
    padding:4px 10px!important;
    border-radius:999px!important;
    background:rgba(255,255,255,.08)!important;
}

body.stock-layout-polish .stock-system-status.is-normal .stock-system-status-row{
    background:rgba(22,163,74,.14)!important;
}

body.stock-layout-polish .stock-system-status.is-debug .stock-system-status-row{
    background:rgba(220,38,38,.16)!important;
}

body.stock-layout-polish .stock-system-status .stock-system-state-dot{
    width:8px!important;
    height:8px!important;
    box-shadow:none!important;
}

body.stock-layout-polish .stock-system-status.is-normal .stock-system-state-label{
    color:#bbf7d0!important;
    font-size:11.5px!important;
    font-weight:600!important;
    letter-spacing:.02em!important;
}

body.stock-layout-polish .stock-system-status.is-debug .stock-system-state-label{
    color:#fecaca!important;
    font-size:11.5px!important;
    font-weight:600!important;
}

body.stock-layout-polish .stock-system-status-title{
    margin:10px 0 0!important;
    color:#e7f1ff!important;
    font-size:13px!important;
    font-weight:500!important;
    line-height:1.55!important;
    letter-spacing:.01em!important;
}

body.stock-layout-polish .stock-system-status-text{
    margin:6px 0 0!important;
    color:#9fc0ea!important;
    font-size:12px!important;
    font-weight:400!important;
    line-height:1.5!important;
}

body.stock-layout-polish .stock-system-status .stock-system-debug-note{
    margin-top:8px!important;
}

@media (max-width:1100px){
    body.stock-layout-polish .stock-sidebar-intro{
        padding:14px!important;
        border-radius:16px!important;
    }

    body.stock-layout-polish .stock-sidebar-intro .stock-brand-mark{
        width:40px!important;
        height:40px!important;
    }

    body.stock-layout-polish .stock-sidebar-intro .stock-brand-title{
        font-size:17px!important;
    }
}

/* Phase 4.3.116 - Layout responsive foundation
   Mobile-first guardrails for app + login shells */

html{
    -webkit-text-size-adjust:100%;
    text-size-adjust:100%;
}

body.stock-layout-polish,
body:has(.auth-polish-shell){
    overflow-x:hidden;
}

body.stock-layout-polish.sidebar-scroll-lock{
    overflow:hidden!important;
    touch-action:none;
}

body.stock-layout-polish .stock-layout-polish-shell{
    width:100%!important;
    max-width:100vw!important;
    min-width:0!important;
}

body.stock-layout-polish .stock-main{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    overflow-x:hidden!important;
}

body.stock-layout-polish .stock-topbar{
    flex-wrap:wrap!important;
    row-gap:10px!important;
    padding-left:max(12px,env(safe-area-inset-left))!important;
    padding-right:max(12px,env(safe-area-inset-right))!important;
}

body.stock-layout-polish .stock-topbar > .flex{
    flex:1 1 auto!important;
    min-width:0!important;
}

body.stock-layout-polish .stock-topbar-actions{
    flex:0 0 auto!important;
    margin-left:auto!important;
}

body.stock-layout-polish .stock-page-shell{
    width:100%!important;
    min-width:0!important;
    padding-left:max(12px,env(safe-area-inset-left))!important;
    padding-right:max(12px,env(safe-area-inset-right))!important;
    padding-bottom:max(12px,env(safe-area-inset-bottom))!important;
}

body.stock-layout-polish .stock-page-card{
    width:100%!important;
    min-width:0!important;
    overflow-x:auto!important;
}

body.stock-layout-polish .stock-app-footer{
    padding-left:max(6px,env(safe-area-inset-left))!important;
    padding-right:max(6px,env(safe-area-inset-right))!important;
}

body.stock-layout-polish .table-wrap,
body.stock-layout-polish .table-container,
body.stock-layout-polish .core-table-wrapper{
    max-width:100%!important;
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch;
}

body.stock-layout-polish .dashboard-kpi-grid{
    grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important;
}

body.stock-layout-polish .dashboard-value-grid{
    grid-template-columns:repeat(auto-fit,minmax(200px,1fr))!important;
}

/* Login shell */
.auth-polish-shell{
    width:100%!important;
    max-width:100vw!important;
    overflow-x:hidden!important;
    padding-left:env(safe-area-inset-left)!important;
    padding-right:env(safe-area-inset-right)!important;
    padding-bottom:env(safe-area-inset-bottom)!important;
}

.auth-layout-polish.auth-layout-pro{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
}

/* Tablet and below: drawer sidebar */
@media (max-width:1100px){
    body.stock-layout-polish .stock-sidebar{
        position:fixed!important;
        left:0!important;
        top:0!important;
        z-index:70!important;
        width:min(300px,calc(100vw - 48px))!important;
        max-width:300px!important;
        height:100dvh!important;
        max-height:100dvh!important;
        transform:translateX(-105%)!important;
        transition:transform .22s ease!important;
        padding-top:max(14px,env(safe-area-inset-top))!important;
        padding-bottom:max(14px,env(safe-area-inset-bottom))!important;
    }

    body.stock-layout-polish.sidebar-open .stock-sidebar{
        transform:translateX(0)!important;
    }

    body.stock-layout-polish .stock-overlay{
        display:none!important;
    }

    body.stock-layout-polish.sidebar-open .stock-overlay{
        display:block!important;
        position:fixed!important;
        inset:0!important;
        z-index:60!important;
        background:rgba(6,27,58,.55)!important;
    }

    body.stock-layout-polish .icon-button.stock-mobile-button{
        display:grid!important;
    }

    body.stock-layout-polish .stock-topbar{
        position:sticky!important;
        top:0!important;
        z-index:55!important;
        padding-top:max(10px,env(safe-area-inset-top))!important;
    }

    body.stock-layout-polish .stock-page-title{
        overflow:hidden!important;
        text-overflow:ellipsis!important;
        white-space:nowrap!important;
    }

    body.stock-layout-polish .stock-notification-panel,
    body.stock-layout-polish .stock-language-menu,
    body.stock-layout-polish .stock-user-menu-panel{
        position:fixed!important;
        left:12px!important;
        right:12px!important;
        width:auto!important;
        max-width:none!important;
        top:auto!important;
    }

    body.stock-layout-polish .stock-notification.open .stock-notification-panel{
        top:calc(var(--stock-topbar-offset,64px) + 8px)!important;
    }

    body.stock-layout-polish .stock-language-switcher.is-open .stock-language-menu,
    body.stock-layout-polish .stock-user-menu.is-open .stock-user-menu-panel{
        top:calc(var(--stock-topbar-offset,64px) + 8px)!important;
    }

    body.stock-layout-polish .dashboard-main-grid,
    body.stock-layout-polish .dashboard-equal-grid,
    body.stock-layout-polish .dashboard-sync-grid{
        grid-template-columns:1fr!important;
    }
}

/* Phone */
@media (max-width:640px){
    body.stock-layout-polish .stock-topbar{
        align-items:flex-start!important;
    }

    body.stock-layout-polish .stock-page-title{
        font-size:clamp(17px,4.8vw,20px)!important;
        max-width:100%!important;
    }

    body.stock-layout-polish .stock-breadcrumb{
        font-size:11px!important;
    }

    body.stock-layout-polish .stock-sidebar-intro .stock-system-status-title{
        font-size:12.5px!important;
    }

    body.stock-layout-polish .stock-sidebar-foot{
        display:none!important;
    }

    body.stock-layout-polish .dashboard-kpi-grid,
    body.stock-layout-polish .dashboard-mini-grid,
    body.stock-layout-polish .dashboard-mini-grid-priority,
    body.stock-layout-polish .dashboard-value-grid{
        grid-template-columns:1fr!important;
    }

    body.stock-layout-polish .dashboard-hero-actions{
        width:100%!important;
    }

    body.stock-layout-polish .stock-app-footer{
        flex-direction:column!important;
        align-items:flex-start!important;
        gap:2px!important;
    }

    body.stock-layout-polish .stock-app-footer-dot{
        display:none!important;
    }

    .auth-layout-polish .auth-pro-hero{
        order:1!important;
    }

    .auth-layout-polish .auth-pro-form-zone{
        order:2!important;
    }
}

@media (max-width:380px){
    body.stock-layout-polish .stock-topbar-toolbar{
        gap:4px!important;
    }

    body.stock-layout-polish .stock-topbar-btn{
        min-height:36px!important;
    }

    body.stock-layout-polish .stock-page-shell{
        padding:10px!important;
    }

    body.stock-layout-polish .stock-page-card{
        padding:12px!important;
    }
}

/* Phase 4.3.117 - Admin UX restart (stock-admin-v2)
   Unified shell: navy sidebar, clean topbar, responsive-first */

body.stock-admin-v2{
    --admin-sidebar-w:280px;
    --admin-navy:#061b3a;
    --admin-navy-soft:#0a2a55;
    --admin-accent:#ff9900;
    --admin-accent-soft:#fff4e5;
    --admin-blue:#2563eb;
    --admin-blue-soft:#eff6ff;
    --admin-ink:#0f172a;
    --admin-muted:#64748b;
    --admin-line:#dbe4ef;
    --admin-surface:#eef3f9;
    --admin-card:#ffffff;
    --admin-radius:16px;
    --admin-radius-lg:20px;
    --admin-shadow:0 14px 36px rgba(3,17,43,.08);
    min-height:100vh;
    min-height:100dvh;
    margin:0;
    overflow-x:hidden;
    background:var(--admin-surface)!important;
    color:var(--admin-ink)!important;
    font-family:Sarabun,"Leelawadee UI","Segoe UI",sans-serif!important;
    letter-spacing:.01em;
    -webkit-font-smoothing:antialiased;
}

body.stock-admin-v2 button,
body.stock-admin-v2 input,
body.stock-admin-v2 select,
body.stock-admin-v2 textarea,
body.stock-admin-v2 .button,
body.stock-admin-v2 .btn{
    font-family:inherit!important;
}

body.stock-admin-v2.sidebar-scroll-lock{
    overflow:hidden!important;
    overscroll-behavior:none;
    touch-action:manipulation;
}

body.stock-admin-v2.sidebar-scroll-lock .admin-sidebar,
body.stock-admin-v2.sidebar-scroll-lock .admin-nav{
    touch-action:pan-y!important;
}

/* Shell grid — desktop only */
body.stock-admin-v2 .stock-admin-shell{
    min-height:100vh;
    min-height:100dvh;
    width:100%;
    max-width:100%;
    min-width:0;
}

@media (min-width:1101px){
    html:not(.is-mobile-layout) body.stock-admin-v2:not(.is-mobile-layout) .stock-admin-shell{
        display:grid!important;
        grid-template-columns:var(--admin-sidebar-w) minmax(0,1fr)!important;
    }
}

body.stock-admin-v2 .admin-main{
    display:flex;
    flex-direction:column;
    min-width:0;
    max-width:100%;
    overflow-x:hidden;
}

/* Sidebar */
body.stock-admin-v2 .admin-sidebar{
    display:flex;
    flex-direction:column;
    min-height:100vh;
    min-height:100dvh;
    padding:14px 12px 16px;
    background:linear-gradient(180deg,var(--admin-navy) 0%,var(--admin-navy-soft) 100%)!important;
    border-right:1px solid rgba(255,255,255,.06)!important;
    box-shadow:8px 0 32px rgba(3,17,43,.18)!important;
}

body.stock-admin-v2 .admin-sidebar-head{
    flex:0 0 auto;
    margin-bottom:8px;
}

body.stock-admin-v2 .admin-sidebar-intro{
    padding:14px;
    border-radius:var(--admin-radius-lg);
    background:rgba(255,255,255,.06);
    border:1px solid rgba(255,255,255,.08);
}

body.stock-admin-v2 .admin-brand{
    display:flex;
    align-items:center;
    gap:12px;
    padding:0!important;
    background:transparent!important;
    box-shadow:none!important;
    border-radius:0!important;
}

body.stock-admin-v2 .admin-brand-mark{
    width:42px!important;
    height:42px!important;
    border-radius:14px!important;
    background:linear-gradient(135deg,var(--admin-accent),#ffb347)!important;
    color:#fff!important;
    font-weight:800!important;
    font-size:18px!important;
    display:grid!important;
    place-items:center!important;
    box-shadow:0 8px 20px rgba(255,153,0,.35)!important;
}

body.stock-admin-v2 .admin-brand-title{
    font-size:17px!important;
    font-weight:700!important;
    color:#fff!important;
    letter-spacing:.03em!important;
    text-shadow:none!important;
}

body.stock-admin-v2 .admin-brand-subtitle{
    margin-top:2px!important;
    font-size:11.5px!important;
    font-weight:400!important;
    color:#b8d6ff!important;
    letter-spacing:.02em!important;
}

body.stock-admin-v2 .admin-system-status{
    margin-top:12px;
    padding-top:12px;
    border-top:1px solid rgba(255,255,255,.08);
}

body.stock-admin-v2 .admin-system-status-row{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:4px 10px;
    border-radius:999px;
    font-size:11px;
    font-weight:600;
}

body.stock-admin-v2 .admin-system-status.is-normal .admin-system-status-row{
    background:rgba(34,197,94,.14);
    color:#86efac;
}

body.stock-admin-v2 .admin-system-status.is-debug .admin-system-status-row{
    background:rgba(251,146,60,.18);
    color:#fdba74;
}

body.stock-admin-v2 .admin-system-dot{
    width:7px;
    height:7px;
    border-radius:999px;
    background:currentColor;
    box-shadow:0 0 0 3px rgba(255,255,255,.12);
}

body.stock-admin-v2 .admin-system-title{
    margin:8px 0 0!important;
    font-size:13px!important;
    font-weight:600!important;
    color:#e2eeff!important;
    line-height:1.4!important;
}

body.stock-admin-v2 .admin-system-text{
    margin:4px 0 0!important;
    font-size:11.5px!important;
    color:#94b8e8!important;
    line-height:1.45!important;
}

/* Nav */
body.stock-admin-v2 .admin-nav{
    flex:1 1 auto;
    min-height:0;
    overflow-y:auto;
    overflow-x:hidden;
    margin-top:10px;
    padding-right:2px;
    scrollbar-width:thin;
    scrollbar-color:rgba(255,255,255,.2) transparent;
}

body.stock-admin-v2 .stock-nav-group{
    margin-bottom:6px!important;
    border-radius:14px;
    overflow:hidden;
}

body.stock-admin-v2 .stock-nav-group.is-active-group{
    background:rgba(255,255,255,.04);
}

body.stock-admin-v2 .stock-nav-group-title{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    margin:0!important;
    padding:8px 10px!important;
    list-style:none!important;
    cursor:pointer!important;
    font-size:10.5px!important;
    font-weight:700!important;
    letter-spacing:.08em!important;
    text-transform:uppercase!important;
    color:#8eb5e8!important;
    user-select:none;
}

body.stock-admin-v2 .stock-nav-group-title::-webkit-details-marker{
    display:none;
}

body.stock-admin-v2 .stock-nav-group-caret{
    width:7px;
    height:7px;
    border-right:1.5px solid #8eb5e8;
    border-bottom:1.5px solid #8eb5e8;
    transform:rotate(45deg);
    transition:transform .18s ease;
    flex:0 0 auto;
}

body.stock-admin-v2 .stock-nav-group[open] > .stock-nav-group-title .stock-nav-group-caret{
    transform:rotate(-135deg);
}

body.stock-admin-v2 .stock-nav-group-links{
    display:grid;
    gap:2px;
    padding:0 4px 6px;
}

body.stock-admin-v2 .stock-nav-link{
    min-height:42px!important;
    padding:8px 10px!important;
    border-radius:12px!important;
    font-weight:500!important;
    color:#c8ddf5!important;
    border:1px solid transparent!important;
    gap:10px!important;
    transition:background .15s ease,border-color .15s ease,color .15s ease!important;
}

body.stock-admin-v2 .stock-nav-link:hover{
    background:rgba(255,255,255,.08)!important;
    border-color:rgba(255,255,255,.08)!important;
    color:#fff!important;
    box-shadow:none!important;
}

body.stock-admin-v2 .stock-nav-active{
    background:linear-gradient(90deg,rgba(255,153,0,.22),rgba(255,153,0,.08))!important;
    border-color:rgba(255,153,0,.35)!important;
    color:#fff!important;
    font-weight:600!important;
    box-shadow:none!important;
}

body.stock-admin-v2 .stock-nav-active::before{
    content:"";
    position:absolute;
    left:0;
    top:8px;
    bottom:8px;
    width:3px;
    border-radius:999px;
    background:var(--admin-accent);
}

body.stock-admin-v2 .stock-nav-link{
    position:relative;
}

body.stock-admin-v2 .stock-nav-icon{
    width:28px!important;
    height:28px!important;
    border-radius:9px!important;
    background:rgba(255,255,255,.08)!important;
    color:#dbeafe!important;
    font-size:10px!important;
    font-weight:700!important;
}

body.stock-admin-v2 .stock-nav-active .stock-nav-icon{
    background:rgba(255,153,0,.25)!important;
    color:#fff!important;
}

body.stock-admin-v2 .stock-nav-label-th{
    font-size:13px!important;
    font-weight:600!important;
    line-height:1.3!important;
}

body.stock-admin-v2 .stock-nav-label-en{
    font-size:10.5px!important;
    font-weight:400!important;
    opacity:.8!important;
    line-height:1.2!important;
}

body.stock-admin-v2 .admin-sidebar-foot{
    flex:0 0 auto;
    margin-top:10px;
    padding:10px 12px;
    border-radius:14px;
    background:rgba(255,255,255,.04);
    border:1px solid rgba(255,255,255,.06);
}

body.stock-admin-v2 .admin-sidebar-foot-title{
    font-size:11px!important;
    font-weight:700!important;
    color:#dbeafe!important;
    letter-spacing:.04em!important;
}

body.stock-admin-v2 .admin-sidebar-foot-text{
    margin-top:3px!important;
    font-size:11px!important;
    color:#8eb5e8!important;
    line-height:1.45!important;
}

/* Topbar */
body.stock-admin-v2 .admin-topbar{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    flex-wrap:wrap!important;
    gap:10px 14px!important;
    min-height:64px!important;
    height:auto!important;
    padding:12px 20px!important;
    background:linear-gradient(90deg,var(--admin-navy) 0%,#0c3b72 100%)!important;
    border-bottom:1px solid rgba(255,255,255,.08)!important;
    box-shadow:0 8px 24px rgba(3,17,43,.12)!important;
    position:sticky;
    top:0;
    z-index:55;
}

body.stock-admin-v2 .admin-topbar-start{
    display:flex;
    align-items:center;
    gap:12px;
    flex:1 1 auto;
    min-width:0;
}

body.stock-admin-v2 .admin-menu-toggle{
    display:none!important;
}

body.stock-admin-v2 .admin-breadcrumb{
    font-size:11.5px!important;
    font-weight:500!important;
    color:#b8d6ff!important;
    letter-spacing:.02em!important;
}

body.stock-admin-v2 .admin-breadcrumb-sep{
    opacity:.55;
    margin:0 4px;
}

body.stock-admin-v2 .admin-page-title{
    margin:2px 0 0!important;
    font-size:20px!important;
    font-weight:700!important;
    color:#fff!important;
    line-height:1.25!important;
    letter-spacing:.01em!important;
    text-shadow:none!important;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

body.stock-admin-v2 .admin-topbar-actions{
    flex:0 0 auto;
    margin-left:auto!important;
}

body.stock-admin-v2 .admin-topbar-toolbar{
    display:flex!important;
    align-items:center!important;
    gap:6px!important;
    padding:4px!important;
    border-radius:999px!important;
    background:rgba(255,255,255,.08)!important;
    border:1px solid rgba(255,255,255,.1)!important;
}

body.stock-admin-v2 .stock-topbar-btn{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:6px!important;
    min-height:38px!important;
    padding:0 12px!important;
    border-radius:999px!important;
    border:1px solid transparent!important;
    background:transparent!important;
    color:#e8f2ff!important;
    font-size:13px!important;
    font-weight:600!important;
    cursor:pointer!important;
    transition:background .15s ease,border-color .15s ease!important;
}

body.stock-admin-v2 .stock-topbar-btn:hover,
body.stock-admin-v2 .stock-topbar-btn:focus-visible{
    background:rgba(255,255,255,.12)!important;
    border-color:rgba(255,255,255,.14)!important;
    outline:none!important;
}

body.stock-admin-v2 .stock-notification-button,
body.stock-admin-v2 .stock-language-button{
    width:38px!important;
    padding:0!important;
}

body.stock-admin-v2 .stock-language-code{
    font-size:11px!important;
    font-weight:700!important;
    letter-spacing:.04em!important;
}

body.stock-admin-v2 .stock-notification-badge{
    top:-2px!important;
    right:-2px!important;
    min-width:16px!important;
    height:16px!important;
    font-size:10px!important;
    line-height:16px!important;
}

body.stock-admin-v2 .stock-user-menu-button{
    padding-right:10px!important;
    max-width:220px;
}

body.stock-admin-v2 .stock-user-menu-button .stock-avatar{
    width:30px!important;
    height:30px!important;
    border-radius:999px!important;
    background:var(--admin-accent)!important;
    color:#fff!important;
    font-size:12px!important;
    font-weight:700!important;
}

body.stock-admin-v2 .stock-user-menu-meta{
    display:grid;
    gap:1px;
    min-width:0;
    text-align:left;
}

body.stock-admin-v2 .stock-user-menu-name{
    font-size:12.5px!important;
    font-weight:600!important;
    color:#fff!important;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

body.stock-admin-v2 .stock-user-menu-username{
    font-size:10.5px!important;
    color:#b8d6ff!important;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

body.stock-admin-v2 .stock-user-menu-caret{
    width:7px;
    height:7px;
    border-right:1.5px solid #b8d6ff;
    border-bottom:1.5px solid #b8d6ff;
    transform:rotate(45deg);
    margin-left:2px;
    flex:0 0 auto;
}

body.stock-admin-v2 .stock-user-menu-panel,
body.stock-admin-v2 .stock-language-menu,
body.stock-admin-v2 .stock-notification-panel{
    border-radius:16px!important;
    border:1px solid var(--admin-line)!important;
    box-shadow:0 20px 50px rgba(15,23,42,.18)!important;
    overflow:hidden!important;
}

body.stock-admin-v2 .stock-user-menu.is-open .stock-user-menu-panel{
    display:block!important;
}

body.stock-admin-v2 .stock-user-menu-head{
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
    padding:14px!important;
    border-bottom:1px solid var(--admin-line)!important;
    background:#f8fafc!important;
}

body.stock-admin-v2 .stock-user-menu-head strong{
    font-size:14px!important;
    font-weight:700!important;
    color:var(--admin-ink)!important;
}

body.stock-admin-v2 .stock-user-menu-head span{
    font-size:12px!important;
    color:var(--admin-muted)!important;
}

body.stock-admin-v2 .stock-avatar-lg{
    width:40px!important;
    height:40px!important;
    font-size:15px!important;
}

body.stock-admin-v2 .stock-user-menu-logout{
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    width:100%!important;
    padding:12px 14px!important;
    border:0!important;
    background:#fff!important;
    color:#dc2626!important;
    font-size:13px!important;
    font-weight:600!important;
    cursor:pointer!important;
}

body.stock-admin-v2 .stock-user-menu-logout:hover{
    background:#fef2f2!important;
}

/* Content area */
body.stock-admin-v2 .admin-page-shell{
    flex:1 1 auto;
    width:100%!important;
    max-width:1360px!important;
    margin:0 auto!important;
    padding:18px 18px 22px!important;
    min-width:0!important;
}

body.stock-admin-v2 .admin-page-card{
    width:100%!important;
    min-width:0!important;
    padding:20px!important;
    border-radius:var(--admin-radius-lg)!important;
    border:1px solid var(--admin-line)!important;
    background:var(--admin-card)!important;
    box-shadow:var(--admin-shadow)!important;
}

body.stock-admin-v2 .admin-app-footer{
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:center!important;
    gap:6px!important;
    margin-top:14px!important;
    padding:0 4px!important;
    font-size:11.5px!important;
    font-weight:500!important;
    color:var(--admin-muted)!important;
}

body.stock-admin-v2 .stock-app-footer-dot{
    opacity:.45;
}

/* Page typography & controls */
body.stock-admin-v2 h1,
body.stock-admin-v2 h2,
body.stock-admin-v2 h3,
body.stock-admin-v2 .section-title,
body.stock-admin-v2 .card-title{
    font-weight:700!important;
    letter-spacing:.01em!important;
    line-height:1.35!important;
    color:var(--admin-ink)!important;
}

body.stock-admin-v2 .button,
body.stock-admin-v2 .btn{
    font-weight:600!important;
    border-radius:12px!important;
    letter-spacing:.01em!important;
}

body.stock-admin-v2 .field label,
body.stock-admin-v2 .form-label{
    font-weight:600!important;
}

body.stock-admin-v2 .table-wrap,
body.stock-admin-v2 .table-container,
body.stock-admin-v2 .core-table-wrapper{
    max-width:100%!important;
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch;
    border-radius:var(--admin-radius)!important;
}

body.stock-admin-v2 thead th{
    font-weight:600!important;
    letter-spacing:.02em!important;
}

body.stock-admin-v2 .card,
body.stock-admin-v2 .stat-card,
body.stock-admin-v2 .panel,
body.stock-admin-v2 .table-card,
body.stock-admin-v2 .core-card{
    border-radius:var(--admin-radius)!important;
    border-color:var(--admin-line)!important;
}

/* Admin page patterns */
body.stock-admin-v2 .admin-page{
    display:grid;
    gap:18px;
    min-width:0;
}

body.stock-admin-v2 .admin-welcome{
    display:flex;
    flex-wrap:wrap;
    align-items:flex-start;
    justify-content:space-between;
    gap:14px 18px;
    padding:16px 18px;
    border-radius:var(--admin-radius-lg);
    background:linear-gradient(135deg,#f8fbff 0%,#eef4fc 100%);
    border:1px solid var(--admin-line);
}

body.stock-admin-v2 .admin-welcome-text{
    margin:0;
    max-width:680px;
    font-size:14.5px;
    line-height:1.65;
    color:var(--admin-muted);
    font-weight:500;
}

body.stock-admin-v2 .admin-action-row{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    align-items:center;
}

body.stock-admin-v2 .admin-section{
    min-width:0;
}

/* Dashboard restart */
body.stock-admin-v2 .dashboard-kpi-grid{
    display:grid!important;
    grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important;
    gap:14px!important;
}

body.stock-admin-v2 .dashboard-kpi-card{
    border-radius:var(--admin-radius-lg)!important;
    padding:16px 16px 15px!important;
    border:1px solid var(--admin-line)!important;
    box-shadow:0 8px 22px rgba(15,23,42,.05)!important;
    transition:transform .16s ease,box-shadow .16s ease!important;
}

body.stock-admin-v2 .dashboard-kpi-card:hover{
    transform:translateY(-2px)!important;
    box-shadow:0 16px 32px rgba(15,23,42,.10)!important;
}

body.stock-admin-v2 .dashboard-kpi-label{
    font-size:12.5px!important;
    font-weight:600!important;
    color:var(--admin-muted)!important;
}

body.stock-admin-v2 .dashboard-kpi-card strong{
    font-size:28px!important;
    font-weight:700!important;
    line-height:1.1!important;
}

body.stock-admin-v2 .dashboard-kpi-card small{
    font-size:11.5px!important;
    color:var(--admin-muted)!important;
    line-height:1.4!important;
}

body.stock-admin-v2 .dashboard-kpi-icon{
    width:40px!important;
    height:40px!important;
    border-radius:12px!important;
    font-size:11px!important;
    font-weight:700!important;
}

body.stock-admin-v2 .dashboard-mini-grid{
    display:grid!important;
    grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important;
    gap:10px!important;
}

body.stock-admin-v2 .dashboard-mini-card{
    padding:12px 14px!important;
    border-radius:14px!important;
    border:1px solid var(--admin-line)!important;
    background:#f8fafc!important;
    transition:background .15s ease,border-color .15s ease!important;
}

body.stock-admin-v2 .dashboard-mini-card:hover{
    background:#fff!important;
    border-color:#cbd5e1!important;
}

body.stock-admin-v2 .dashboard-mini-card span{
    font-size:11.5px!important;
    font-weight:600!important;
    color:var(--admin-muted)!important;
}

body.stock-admin-v2 .dashboard-mini-card strong{
    font-size:20px!important;
    font-weight:700!important;
    margin-top:4px!important;
}

body.stock-admin-v2 .dashboard-mini-more{
    border:1px dashed #cbd5e1!important;
    border-radius:14px!important;
    background:#f8fafc!important;
    overflow:hidden!important;
}

body.stock-admin-v2 .dashboard-mini-more > summary{
    padding:12px 16px!important;
    font-size:13px!important;
    font-weight:600!important;
    color:var(--admin-blue)!important;
    cursor:pointer!important;
    list-style:none!important;
}

body.stock-admin-v2 .dashboard-mini-more > summary::-webkit-details-marker{
    display:none;
}

body.stock-admin-v2 .dashboard-mini-more > summary::after{
    content:"+";
    float:right;
    font-weight:700;
}

body.stock-admin-v2 .dashboard-mini-more[open] > summary::after{
    content:"?";
}

body.stock-admin-v2 .dashboard-mini-more .dashboard-mini-grid{
    padding:0 12px 12px!important;
}

body.stock-admin-v2 .dashboard-value-grid{
    display:grid!important;
    grid-template-columns:repeat(auto-fit,minmax(200px,1fr))!important;
    gap:12px!important;
}

body.stock-admin-v2 .dashboard-value-card,
body.stock-admin-v2 .dashboard-panel{
    border-radius:var(--admin-radius-lg)!important;
    border:1px solid var(--admin-line)!important;
    background:#fff!important;
    box-shadow:0 8px 22px rgba(15,23,42,.04)!important;
}

body.stock-admin-v2 .dashboard-panel-head h2{
    font-size:16px!important;
    font-weight:700!important;
}

body.stock-admin-v2 .dashboard-panel-head p{
    font-size:12.5px!important;
    color:var(--admin-muted)!important;
    margin-top:2px!important;
}

body.stock-admin-v2 .dashboard-main-grid,
body.stock-admin-v2 .dashboard-equal-grid{
    display:grid!important;
    gap:14px!important;
}

body.stock-admin-v2 .dashboard-main-grid{
    grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)!important;
}

body.stock-admin-v2 .dashboard-equal-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
}

body.stock-admin-v2 .settings-action-bar{
    position:static!important;
    top:auto!important;
    z-index:auto!important;
    margin:0 0 20px!important;
    border-radius:var(--admin-radius)!important;
}

/* Responsive */
@media (max-width:1100px){
    body.stock-admin-v2 .stock-admin-shell{
        grid-template-columns:1fr!important;
    }

    body.stock-admin-v2 .admin-sidebar{
        position:fixed!important;
        left:0!important;
        top:0!important;
        z-index:40!important;
        width:min(300px,calc(100vw - 48px))!important;
        max-width:300px!important;
        height:100dvh!important;
        max-height:100dvh!important;
        transform:translateX(-100%)!important;
        transition:transform .22s ease,visibility 0s linear .22s!important;
        padding-top:max(14px,env(safe-area-inset-top))!important;
        padding-bottom:max(14px,env(safe-area-inset-bottom))!important;
        pointer-events:none!important;
        visibility:hidden!important;
    }

    body.stock-admin-v2.sidebar-open .admin-sidebar{
        transform:translateX(0)!important;
        z-index:1200!important;
        pointer-events:auto!important;
        visibility:visible!important;
        transition:transform .22s ease,visibility 0s linear 0s!important;
    }

    body.stock-admin-v2 .admin-overlay{
        display:none!important;
        pointer-events:none!important;
    }

    body.stock-admin-v2.sidebar-open .admin-overlay{
        display:block!important;
        position:fixed!important;
        inset:0!important;
        z-index:1100!important;
        background:rgba(6,27,58,.55)!important;
        pointer-events:auto!important;
    }

    body.stock-admin-v2 .admin-menu-toggle{
        display:grid!important;
    }

    body.stock-admin-v2 .admin-topbar{
        padding-top:max(10px,env(safe-area-inset-top))!important;
        padding-left:max(14px,env(safe-area-inset-left))!important;
        padding-right:max(14px,env(safe-area-inset-right))!important;
    }

    body.stock-admin-v2 .admin-page-shell{
        padding-left:max(14px,env(safe-area-inset-left))!important;
        padding-right:max(14px,env(safe-area-inset-right))!important;
        padding-bottom:max(14px,env(safe-area-inset-bottom))!important;
    }

    body.stock-admin-v2 .stock-notification-panel,
    body.stock-admin-v2 .stock-language-menu,
    body.stock-admin-v2 .stock-user-menu-panel{
        position:fixed!important;
        left:12px!important;
        right:12px!important;
        width:auto!important;
        max-width:none!important;
        top:auto!important;
    }

    body.stock-admin-v2 .stock-notification.open .stock-notification-panel,
    body.stock-admin-v2 .stock-language-switcher.is-open .stock-language-menu,
    body.stock-admin-v2 .stock-user-menu.is-open .stock-user-menu-panel{
        top:calc(var(--stock-topbar-offset,64px) + 8px)!important;
    }

    body.stock-admin-v2 .dashboard-main-grid,
    body.stock-admin-v2 .dashboard-equal-grid,
    body.stock-admin-v2 .dashboard-sync-grid{
        grid-template-columns:1fr!important;
    }
}

@media (max-width:640px){
    body.stock-admin-v2 .admin-page-title{
        font-size:clamp(17px,4.8vw,20px)!important;
    }

    body.stock-admin-v2 .stock-user-menu-meta,
    body.stock-admin-v2 .stock-user-menu-caret{
        display:none!important;
    }

    body.stock-admin-v2 .stock-user-menu-button{
        width:38px!important;
        padding:0!important;
    }

    body.stock-admin-v2 .admin-sidebar-foot{
        display:flex!important;
        flex-direction:column!important;
        gap:10px!important;
    }

    body.stock-admin-v2 .admin-sidebar-foot-meta{
        display:none!important;
    }

    body.stock-admin-v2 .admin-action-row{
        width:100%!important;
    }

    body.stock-admin-v2 .admin-action-row .btn,
    body.stock-admin-v2 .admin-action-row .button{
        flex:1 1 auto!important;
        justify-content:center!important;
        text-align:center!important;
    }

    body.stock-admin-v2 .dashboard-kpi-grid,
    body.stock-admin-v2 .dashboard-mini-grid,
    body.stock-admin-v2 .dashboard-mini-grid-priority,
    body.stock-admin-v2 .dashboard-value-grid{
        grid-template-columns:1fr!important;
    }

    body.stock-admin-v2 .admin-app-footer{
        flex-direction:column!important;
        align-items:flex-start!important;
    }

    body.stock-admin-v2 .stock-app-footer-dot{
        display:none!important;
    }

    body.stock-admin-v2 .admin-page-card{
        padding:14px!important;
    }
}

@media (max-width:380px){
    body.stock-admin-v2 .admin-topbar-toolbar{
        gap:4px!important;
    }

    body.stock-admin-v2 .stock-topbar-btn{
        min-height:36px!important;
    }

    body.stock-admin-v2 .stock-language-code{
        display:none!important;
    }

    body.stock-admin-v2 .admin-page-shell{
        padding:10px!important;
    }
}

/* Phase 4.3.118 - Login compact width (restore centered card, not full-bleed)
   Overrides 4.3.116 full-width login rules */

body.auth-page-body{
    overflow-x:hidden;
    background:#eef4fb!important;
}

body.auth-page-body .auth-polish-shell{
    width:100%!important;
    max-width:100vw!important;
    min-height:100vh;
    min-height:100dvh;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:28px 20px!important;
    padding-top:max(28px,env(safe-area-inset-top))!important;
    padding-bottom:max(28px,env(safe-area-inset-bottom))!important;
    padding-left:max(20px,env(safe-area-inset-left))!important;
    padding-right:max(20px,env(safe-area-inset-right))!important;
    overflow-x:hidden!important;
}

body.auth-page-body .auth-layout-polish.auth-layout-pro{
    width:100%!important;
    max-width:1060px!important;
    margin:0 auto!important;
    min-height:min(760px,calc(100dvh - 56px))!important;
    grid-template-columns:minmax(0,1fr) minmax(340px,400px)!important;
    border-radius:24px!important;
    border:1px solid rgba(191,219,254,.9)!important;
    box-shadow:0 22px 64px rgba(15,23,42,.11)!important;
    overflow:hidden!important;
}

body.auth-page-body .auth-layout-polish .auth-pro-hero{
    min-height:auto!important;
    justify-content:center!important;
    gap:22px!important;
    padding:36px 32px!important;
}

body.auth-page-body .auth-layout-polish .auth-pro-copy{
    max-width:460px!important;
}

body.auth-page-body .auth-layout-polish .auth-pro-copy h1,
body.auth-page-body .auth-layout-polish .auth-pro-hero h1{
    max-width:440px!important;
    font-size:clamp(26px,2.6vw,36px)!important;
    line-height:1.32!important;
}

body.auth-page-body .auth-layout-polish .auth-pro-copy > p,
body.auth-page-body .auth-layout-polish .auth-pro-hero > p{
    max-width:420px!important;
    font-size:15px!important;
    line-height:1.7!important;
}

body.auth-page-body .auth-layout-polish .auth-pro-value-strip{
    max-width:440px!important;
    margin-top:22px!important;
    gap:8px 14px!important;
}

body.auth-page-body .auth-layout-polish .auth-pro-form-zone{
    min-height:auto!important;
    padding:28px 24px!important;
    align-items:center!important;
}

body.auth-page-body .auth-layout-polish .auth-pro-form-zone::before{
    display:none!important;
}

body.auth-page-body .auth-layout-polish .login-card-pro{
    width:100%!important;
    max-width:360px!important;
    padding:28px 26px!important;
}

body.auth-page-body .auth-layout-polish .auth-language-switcher{
    margin-top:20px!important;
}

@media (min-width:1200px){
    body.auth-page-body .auth-layout-polish.auth-layout-pro{
        max-width:1100px!important;
    }
}

@media (max-width:1100px){
    body.auth-page-body .auth-polish-shell{
        align-items:stretch!important;
        padding:0!important;
    }

    body.auth-page-body .auth-layout-polish.auth-layout-pro{
        max-width:100%!important;
        min-height:100dvh!important;
        border-radius:0!important;
        border:0!important;
        box-shadow:none!important;
        grid-template-columns:1fr!important;
    }

    body.auth-page-body .auth-layout-polish .auth-pro-form-zone::before{
        display:block!important;
    }

    body.auth-page-body .auth-layout-polish .login-card-pro{
        max-width:440px!important;
    }
}

@media (max-width:640px){
    body.auth-page-body .auth-polish-shell{
        padding-left:env(safe-area-inset-left)!important;
        padding-right:env(safe-area-inset-right)!important;
    }
}

/* Phase 4.3.119 - Admin layout regions: left | header + content + footer */

body.stock-admin-v2 .admin-shell{
    min-height:100vh;
    min-height:100dvh;
    width:100%;
    max-width:100%;
    min-width:0;
}

/* Desktop only — never leave a sidebar grid track on mobile */
@media (min-width:1101px){
    html:not(.is-mobile-layout) body.stock-admin-v2:not(.is-mobile-layout) .admin-shell{
        display:grid!important;
        grid-template-columns:var(--admin-sidebar-w,280px) minmax(0,1fr)!important;
        grid-template-rows:minmax(0,1fr)!important;
    }
}

@media (max-width:1100px){
    body.stock-admin-v2{
        --admin-sidebar-w:0px!important;
    }
    body.stock-admin-v2 .admin-shell{
        display:block!important;
        grid-template-columns:none!important;
        width:100%!important;
        max-width:100%!important;
    }
    body.stock-admin-v2 .admin-main{
        display:block!important;
        width:100%!important;
        max-width:100%!important;
        margin:0!important;
        grid-column:auto!important;
    }
    body.stock-admin-v2 .admin-sidebar{
        position:fixed!important;
    }
}

body.stock-admin-v2 .admin-left{
    grid-column:1;
    grid-row:1;
    display:flex;
    flex-direction:column;
    min-height:100vh;
    min-height:100dvh;
    min-width:0;
    z-index:70;
}

body.stock-admin-v2 .admin-left-head{
    flex:0 0 auto;
}

body.stock-admin-v2 .admin-left-nav{
    flex:1 1 auto;
    min-height:0;
}

body.stock-admin-v2 .admin-left-foot{
    flex:0 0 auto;
    margin-top:auto;
}

body.stock-admin-v2 .admin-right{
    grid-column:2;
    grid-row:1;
    display:flex;
    flex-direction:column;
    min-width:0;
    min-height:100vh;
    min-height:100dvh;
    max-height:100dvh;
    overflow:hidden;
    background:var(--admin-surface,#eef3f9);
}

body.stock-admin-v2 .admin-header{
    flex:0 0 auto;
    width:100%;
    position:relative;
    top:auto;
    z-index:55;
}

body.stock-admin-v2 .admin-content{
    flex:1 1 auto;
    min-height:0;
    overflow-x:hidden;
    overflow-y:auto;
    -webkit-overflow-scrolling:touch;
    width:100%;
}

body.stock-admin-v2 .admin-content-inner{
    width:100%;
    max-width:1360px;
    margin:0 auto;
    padding:18px 18px 20px;
    min-width:0;
}

body.stock-admin-v2 .admin-content-card{
    width:100%;
    min-width:0;
}

body.stock-admin-v2 .admin-footer{
    position:relative;
    flex:0 0 auto;
    width:100%;
    margin-top:0!important;
    padding:0!important;
    border-top:1px solid var(--admin-line,#dbe4ef);
    background:linear-gradient(180deg, rgba(6,27,58,.035), #fff);
    box-shadow:0 -10px 28px rgba(6,27,58,.05);
}

body.stock-admin-v2 .admin-footer::before{
    content:"";
    position:absolute;
    left:0;
    right:0;
    top:0;
    height:2px;
    background:linear-gradient(90deg, #ff9900 0%, #061b3a 42%, transparent 100%);
    pointer-events:none;
}

body.stock-admin-v2 .admin-footer-inner{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:space-between;
    gap:14px 24px;
    max-width:1360px;
    margin:0 auto;
    padding:16px 18px;
    font-size:12px;
    font-weight:500;
    color:var(--admin-muted,#64748b);
    box-sizing:border-box;
}

body.stock-admin-v2 .admin-footer-brand-block{
    display:grid;
    gap:4px;
    min-width:0;
}

body.stock-admin-v2 .admin-footer-brand-row{
    display:inline-flex;
    align-items:center;
    gap:10px;
}

body.stock-admin-v2 .admin-footer-mark{
    width:8px;
    height:8px;
    border-radius:3px;
    background:#ff9900;
    box-shadow:0 0 0 3px rgba(255,153,0,.22);
    flex:0 0 auto;
}

body.stock-admin-v2 .admin-footer-brand{
    margin:0;
    font-size:13.5px;
    font-weight:800;
    color:var(--admin-ink,#0f172a);
    line-height:1.2;
}

body.stock-admin-v2 .admin-footer-copy{
    display:block;
    padding-left:18px;
    font-size:11.5px;
    font-weight:550;
    color:var(--admin-muted,#64748b);
}

body.stock-admin-v2 .admin-footer-meta{
    display:inline-flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:flex-end;
    gap:10px 14px;
    min-width:0;
}

body.stock-admin-v2 .admin-footer-crumb{
    display:inline-flex;
    flex-wrap:wrap;
    align-items:center;
    gap:6px;
    min-width:0;
    max-width:min(100%,420px);
    padding:6px 10px;
    border-radius:10px;
    background:rgba(6,27,58,.04);
    border:1px solid rgba(6,27,58,.08);
}

body.stock-admin-v2 .admin-footer-crumb-item{
    font-size:11.5px;
    font-weight:650;
    color:var(--admin-muted,#64748b);
    line-height:1.2;
}

body.stock-admin-v2 .admin-footer-crumb-item.is-current{
    color:var(--admin-ink,#0f172a);
    font-weight:750;
}

body.stock-admin-v2 .admin-footer-crumb-sep{
    width:4px;
    height:4px;
    border-radius:50%;
    background:#ff9900;
    flex:0 0 auto;
}

body.stock-admin-v2 .admin-footer-chip{
    display:none;
}

body.stock-admin-v2 .admin-footer-privacy{
    appearance:none;
    display:inline-flex;
    align-items:center;
    gap:7px;
    margin:0;
    min-height:34px;
    padding:0 12px;
    border-radius:10px;
    border:1px solid var(--admin-line,#dbe4ef);
    background:#fff;
    color:var(--admin-ink,#0f172a);
    font-size:12px;
    font-weight:750;
    line-height:1;
    cursor:pointer;
    transition:background .18s ease, border-color .18s ease, transform .18s ease;
}

body.stock-admin-v2 .admin-footer-privacy:hover,
body.stock-admin-v2 .admin-footer-privacy:focus-visible{
    background:rgba(255,153,0,.14);
    border-color:#ff9900;
    outline:none;
    transform:translateY(-1px);
}

body.stock-admin-v2 .admin-footer-sep{
    opacity:.45;
}

/* Mobile drawer */
@media (max-width:1100px){
    body.stock-admin-v2 .admin-shell{
        grid-template-columns:1fr!important;
    }

    body.stock-admin-v2 .admin-left{
        position:fixed!important;
        left:0!important;
        top:0!important;
        width:min(300px,calc(100vw - 48px))!important;
        max-width:300px!important;
        height:100dvh!important;
        max-height:100dvh!important;
        transform:translateX(-105%)!important;
        transition:transform .22s ease!important;
        padding-top:max(14px,env(safe-area-inset-top))!important;
        padding-bottom:max(14px,env(safe-area-inset-bottom))!important;
    }

    body.stock-admin-v2.sidebar-open .admin-left{
        transform:translateX(0)!important;
    }

    body.stock-admin-v2 .admin-right{
        grid-column:1;
        max-height:none;
        min-height:100dvh;
    }

    body.stock-admin-v2 .admin-header{
        position:sticky!important;
        top:0!important;
        padding-top:max(10px,env(safe-area-inset-top))!important;
    }

    body.stock-admin-v2 .admin-content-inner{
        padding-left:max(14px,env(safe-area-inset-left))!important;
        padding-right:max(14px,env(safe-area-inset-right))!important;
    }

    body.stock-admin-v2 .admin-footer-inner{
        padding-left:max(14px,env(safe-area-inset-left))!important;
        padding-right:max(14px,env(safe-area-inset-right))!important;
        padding-bottom:max(10px,env(safe-area-inset-bottom))!important;
    }
}

@media (max-width:640px){
    body.stock-admin-v2 .admin-left-foot{
        display:none!important;
    }

    body.stock-admin-v2 .admin-content-inner{
        padding:14px 12px 16px!important;
    }

    body.stock-admin-v2 .admin-content-card{
        padding:14px!important;
    }

    body.stock-admin-v2 .admin-footer-inner{
        display:grid!important;
        grid-template-columns:1fr!important;
        align-items:stretch!important;
        gap:14px!important;
        padding-top:16px!important;
        padding-bottom:calc(16px + env(safe-area-inset-bottom,0px))!important;
    }

    body.stock-admin-v2 .admin-footer-meta{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:10px!important;
        width:100%!important;
    }

    body.stock-admin-v2 .admin-footer-crumb{
        max-width:none!important;
        width:100%!important;
    }

    body.stock-admin-v2 .admin-footer-privacy{
        width:100%!important;
        justify-content:center!important;
        min-height:40px!important;
    }

    body.stock-admin-v2 .admin-footer-sep{
        display:none!important;
    }
}

/* Phase 4.3.120 - Admin visual refresh: readable, clean, pleasant */

body.stock-admin-v2{
    --admin-sidebar-w:264px;
    --admin-surface:#f3f6fb;
    --admin-surface-2:#e9eff8;
}

/* Sidebar: cleaner, less boxy */
body.stock-admin-v2 .admin-left{
    padding:12px 10px 14px!important;
    background:var(--admin-navy)!important;
    box-shadow:none!important;
    border-right:1px solid rgba(255,255,255,.08)!important;
}

body.stock-admin-v2 .admin-sidebar-intro{
    padding:12px!important;
    border-radius:14px!important;
    background:rgba(255,255,255,.05)!important;
    border:1px solid rgba(255,255,255,.07)!important;
}

body.stock-admin-v2 .admin-system-title{
    display:none!important;
}

body.stock-admin-v2 .admin-system-status{
    margin-top:10px!important;
    padding-top:0!important;
    border-top:0!important;
}

body.stock-admin-v2 .stock-nav-link{
    min-height:40px!important;
    border-radius:10px!important;
}

body.stock-admin-v2 .stock-nav-active{
    background:rgba(255,153,0,.18)!important;
    border:1px solid rgba(255,153,0,.45)!important;
    color:#fff!important;
    box-shadow:none!important;
}

body.stock-admin-v2 .stock-nav-active::before{
    background:var(--admin-accent)!important;
    width:3px!important;
}

body.stock-admin-v2 .stock-nav-active .stock-nav-icon{
    background:rgba(255,153,0,.28)!important;
    color:#fff!important;
}

body.stock-admin-v2 .admin-left-foot{
    padding:8px 10px!important;
    background:transparent!important;
    border:0!important;
    opacity:.75;
}

/* Header: white bar (easier to read) */
body.stock-admin-v2 .admin-header{
    background:#fff!important;
    border-bottom:1px solid var(--admin-line)!important;
    box-shadow:0 1px 0 rgba(15,23,42,.04)!important;
    min-height:60px!important;
    padding:10px 20px!important;
}

body.stock-admin-v2 .admin-breadcrumb{
    color:#94a3b8!important;
}

body.stock-admin-v2 .admin-breadcrumb span:last-child{
    color:#64748b!important;
}

body.stock-admin-v2 .admin-page-title{
    color:var(--admin-ink)!important;
    font-size:21px!important;
    font-weight:700!important;
}

body.stock-admin-v2 .admin-topbar-toolbar{
    background:#f8fafc!important;
    border:1px solid var(--admin-line)!important;
}

body.stock-admin-v2 .stock-topbar-btn{
    color:#334155!important;
}

body.stock-admin-v2 .stock-topbar-btn:hover,
body.stock-admin-v2 .stock-topbar-btn:focus-visible{
    background:#fff!important;
    border-color:#cbd5e1!important;
}

body.stock-admin-v2 .stock-user-menu-name{
    color:#0f172a!important;
}

body.stock-admin-v2 .stock-user-menu-username{
    color:#64748b!important;
}

body.stock-admin-v2 .stock-user-menu-caret{
    border-color:#94a3b8!important;
}

body.stock-admin-v2 .stock-user-menu-panel{
    width:min(260px,calc(100vw - 24px))!important;
    max-width:260px!important;
}

body.stock-admin-v2 .stock-notification-panel,
body.stock-admin-v2 .stock-language-menu{
    width:min(320px,calc(100vw - 24px))!important;
}

/* Content: flat dashboard, card for inner pages */
body.stock-admin-v2 .admin-right{
    background:var(--admin-surface)!important;
}

body.stock-admin-v2 .admin-content-inner{
    max-width:none!important;
    padding:16px 20px 24px!important;
}

body.stock-admin-v2 .admin-content-body{
    min-width:0;
}

body.stock-admin-v2 .admin-content-body:not(:has(.admin-dashboard)){
    background:#fff;
    border:1px solid var(--admin-line);
    border-radius:16px;
    padding:20px;
    box-shadow:0 8px 24px rgba(15,23,42,.04);
}

/* Dashboard layout */
body.stock-admin-v2 .admin-dashboard{
    display:grid;
    gap:14px;
}

body.stock-admin-v2 .dash-toolbar{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:space-between;
    gap:12px 16px;
    padding:14px 16px;
    background:#fff;
    border:1px solid var(--admin-line);
    border-radius:14px;
    box-shadow:0 4px 16px rgba(15,23,42,.04);
}

body.stock-admin-v2 .dash-toolbar-hint{
    margin:0;
    max-width:520px;
    font-size:14px;
    line-height:1.55;
    color:#64748b;
    font-weight:500;
}

body.stock-admin-v2 .dash-toolbar-actions{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}

body.stock-admin-v2 .dash-btn-primary{
    background:linear-gradient(135deg,#2563eb,#1d4ed8)!important;
    border-color:#1d4ed8!important;
    color:#fff!important;
    box-shadow:0 8px 20px rgba(37,99,235,.22)!important;
}

body.stock-admin-v2 .dash-kpi-row{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:12px!important;
}

body.stock-admin-v2 .dashboard-kpi-card{
    background:#fff!important;
    border:1px solid var(--admin-line)!important;
    border-radius:14px!important;
    padding:14px 14px 13px!important;
    box-shadow:0 4px 14px rgba(15,23,42,.04)!important;
}

body.stock-admin-v2 .dashboard-kpi-card strong{
    font-size:26px!important;
    font-weight:700!important;
    color:#0f172a!important;
    line-height:1.1!important;
}

body.stock-admin-v2 .dashboard-kpi-label{
    font-size:12px!important;
    font-weight:600!important;
    color:#64748b!important;
    line-height:1.35!important;
}

body.stock-admin-v2 .dashboard-kpi-card small{
    font-size:11px!important;
    color:#94a3b8!important;
}

body.stock-admin-v2 .dashboard-kpi-icon{
    width:36px!important;
    height:36px!important;
    border-radius:10px!important;
    font-size:10px!important;
    margin-bottom:10px!important;
}

body.stock-admin-v2 .dash-chip-row{
    display:flex!important;
    flex-wrap:nowrap!important;
    gap:8px!important;
    overflow-x:auto!important;
    padding:2px 2px 6px!important;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:thin;
}

body.stock-admin-v2 .dash-chip-row .dashboard-mini-card{
    flex:0 0 auto!important;
    min-width:148px!important;
    padding:10px 12px!important;
    border-radius:12px!important;
    background:#fff!important;
    border:1px solid var(--admin-line)!important;
    box-shadow:0 2px 8px rgba(15,23,42,.03)!important;
}

body.stock-admin-v2 .dash-chip-row .dashboard-mini-card span{
    font-size:11px!important;
    white-space:nowrap!important;
}

body.stock-admin-v2 .dash-chip-row .dashboard-mini-card strong{
    font-size:18px!important;
    margin-top:2px!important;
}

body.stock-admin-v2 .dash-value-row{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:10px!important;
}

body.stock-admin-v2 .dashboard-value-card{
    background:#fff!important;
    border:1px solid var(--admin-line)!important;
    border-radius:12px!important;
    padding:12px 14px!important;
    box-shadow:0 2px 10px rgba(15,23,42,.03)!important;
}

body.stock-admin-v2 .dashboard-value-card strong{
    font-size:20px!important;
    font-weight:700!important;
}

body.stock-admin-v2 .dashboard-value-card span{
    font-size:11.5px!important;
    font-weight:600!important;
    color:#64748b!important;
}

body.stock-admin-v2 .dash-workspace,
body.stock-admin-v2 .dash-priority-grid{
    display:grid!important;
    gap:12px!important;
}

body.stock-admin-v2 .dash-workspace{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
}

body.stock-admin-v2 .dash-priority-grid{
    grid-template-columns:minmax(0,1.35fr) minmax(0,1fr)!important;
}

body.stock-admin-v2 .dashboard-panel{
    background:#fff!important;
    border:1px solid var(--admin-line)!important;
    border-radius:14px!important;
    padding:16px!important;
    box-shadow:0 4px 16px rgba(15,23,42,.04)!important;
}

body.stock-admin-v2 .dashboard-panel-head{
    display:flex!important;
    align-items:flex-start!important;
    justify-content:space-between!important;
    gap:10px!important;
    margin-bottom:12px!important;
}

body.stock-admin-v2 .dashboard-panel-head h2{
    font-size:15px!important;
    font-weight:700!important;
    margin:0!important;
    color:#0f172a!important;
}

body.stock-admin-v2 .dashboard-panel-head p{
    font-size:12px!important;
    color:#94a3b8!important;
    margin:2px 0 0!important;
}

body.stock-admin-v2 .dashboard-readiness-bar{
    height:8px!important;
    border-radius:999px!important;
    background:#eef2f7!important;
    overflow:hidden!important;
}

body.stock-admin-v2 .dashboard-readiness-bar i{
    background:linear-gradient(90deg,#2563eb,var(--admin-accent))!important;
    border-radius:999px!important;
}

body.stock-admin-v2 .dashboard-readiness-row,
body.stock-admin-v2 .dashboard-qr-readiness-item{
    gap:10px!important;
    align-items:center!important;
}

body.stock-admin-v2 .dashboard-readiness-row strong,
body.stock-admin-v2 .dashboard-qr-readiness-item strong{
    font-size:13px!important;
}

body.stock-admin-v2 .dashboard-readiness-row span,
body.stock-admin-v2 .dashboard-qr-readiness-item span{
    font-size:11px!important;
    color:#94a3b8!important;
}

body.stock-admin-v2 .dashboard-readiness-row em,
body.stock-admin-v2 .dashboard-qr-readiness-item em{
    font-size:12px!important;
    font-weight:700!important;
    color:#2563eb!important;
    min-width:42px!important;
    text-align:right!important;
}

body.stock-admin-v2 .dashboard-mini-more,
body.stock-admin-v2 .dash-more-section{
    border:1px solid var(--admin-line)!important;
    border-radius:14px!important;
    background:#fff!important;
    overflow:hidden!important;
    box-shadow:0 4px 14px rgba(15,23,42,.04)!important;
}

body.stock-admin-v2 .dashboard-mini-more > summary,
body.stock-admin-v2 .dash-more-section > summary{
    padding:13px 16px!important;
    font-size:13.5px!important;
    font-weight:600!important;
    color:#2563eb!important;
    cursor:pointer!important;
    list-style:none!important;
    background:#f8fafc!important;
    border-bottom:1px solid transparent!important;
}

body.stock-admin-v2 .dash-more-section[open] > summary{
    border-bottom-color:var(--admin-line)!important;
}

body.stock-admin-v2 .dash-more-body{
    display:grid;
    gap:12px;
    padding:12px;
}

body.stock-admin-v2 .dashboard-task-card{
    border-radius:12px!important;
    padding:12px!important;
}

body.stock-admin-v2 .admin-footer{
    background:#fff!important;
    border-top:1px solid var(--admin-line)!important;
    box-shadow:none!important;
}

@media (max-width:1100px){
    body.stock-admin-v2 .dash-kpi-row,
    body.stock-admin-v2 .dash-value-row{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }

    body.stock-admin-v2 .dash-workspace,
    body.stock-admin-v2 .dash-priority-grid{
        grid-template-columns:1fr!important;
    }
}

@media (max-width:640px){
    body.stock-admin-v2 .admin-content-inner{
        padding:12px!important;
    }

    body.stock-admin-v2 .dash-toolbar{
        flex-direction:column!important;
        align-items:stretch!important;
    }

    body.stock-admin-v2 .dash-toolbar-actions{
        display:grid!important;
        grid-template-columns:1fr 1fr!important;
    }

    body.stock-admin-v2 .dash-toolbar-actions .dash-btn-primary{
        grid-column:1 / -1!important;
    }

    body.stock-admin-v2 .dash-kpi-row,
    body.stock-admin-v2 .dash-value-row{
        grid-template-columns:1fr!important;
    }
}

/* Phase 4.3.121 - Admin header rebuild (no legacy stock-topbar conflicts) */

body.stock-admin-v2 .admin-header{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px 16px!important;
    flex:0 0 auto!important;
    width:100%!important;
    min-height:58px!important;
    height:auto!important;
    padding:10px 20px!important;
    margin:0!important;
    position:relative!important;
    top:auto!important;
    z-index:60!important;
    background:#fff!important;
    color:#0f172a!important;
    border-bottom:1px solid #e2e8f0!important;
    box-shadow:0 1px 2px rgba(15,23,42,.04)!important;
    backdrop-filter:none!important;
}

body.stock-admin-v2 .admin-header-start{
    display:flex!important;
    align-items:center!important;
    gap:12px!important;
    flex:1 1 auto!important;
    min-width:0!important;
}

body.stock-admin-v2 .admin-header-menu{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:38px!important;
    height:38px!important;
    padding:0!important;
    border:1px solid #e2e8f0!important;
    border-radius:10px!important;
    background:#fff!important;
    color:#334155!important;
    cursor:pointer!important;
    flex:0 0 auto!important;
}

@media (min-width:1101px){
    body.stock-admin-v2 .admin-header-menu{
        display:none!important;
    }
}

body.stock-admin-v2 .admin-header-menu:hover{
    background:#f8fafc!important;
    border-color:#cbd5e1!important;
}

body.stock-admin-v2 .admin-header-titleblock{
    min-width:0!important;
    flex:1 1 auto!important;
}

body.stock-admin-v2 .admin-header-breadcrumb{
    display:flex!important;
    align-items:center!important;
    flex-wrap:wrap!important;
    gap:4px!important;
    margin:0!important;
    font-size:11px!important;
    font-weight:500!important;
    line-height:1.3!important;
    color:#94a3b8!important;
}

body.stock-admin-v2 .admin-header-breadcrumb span:last-child{
    color:#64748b!important;
}

body.stock-admin-v2 .admin-header-breadcrumb-sep{
    opacity:.55!important;
}

body.stock-admin-v2 .admin-header-title{
    margin:2px 0 0!important;
    padding:0!important;
    font-size:20px!important;
    font-weight:700!important;
    line-height:1.25!important;
    letter-spacing:.01em!important;
    color:#0f172a!important;
    text-shadow:none!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
}

body.stock-admin-v2 .admin-header-end{
    flex:0 0 auto!important;
    margin-left:auto!important;
}

body.stock-admin-v2 .admin-header-actions{
    display:flex!important;
    align-items:center!important;
    gap:6px!important;
}

body.stock-admin-v2 .admin-header-action{
    position:relative!important;
}

body.stock-admin-v2 .admin-header-icon-btn,
body.stock-admin-v2 .admin-header-user-btn{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    min-height:38px!important;
    padding:0 10px!important;
    border:1px solid #e2e8f0!important;
    border-radius:10px!important;
    background:#fff!important;
    color:#334155!important;
    font-size:13px!important;
    font-weight:600!important;
    cursor:pointer!important;
    transition:background .15s ease,border-color .15s ease!important;
    box-shadow:none!important;
}

body.stock-admin-v2 .admin-header-icon-btn{
    width:38px!important;
    padding:0!important;
}

body.stock-admin-v2 .admin-header-lang-btn{
    width:auto!important;
    padding:0 10px!important;
}

body.stock-admin-v2 .admin-header-icon-btn:hover,
body.stock-admin-v2 .admin-header-user-btn:hover,
body.stock-admin-v2 .admin-header-icon-btn:focus-visible,
body.stock-admin-v2 .admin-header-user-btn:focus-visible{
    background:#f8fafc!important;
    border-color:#cbd5e1!important;
    outline:none!important;
}

body.stock-admin-v2 .admin-header-badge{
    top:-3px!important;
    right:-3px!important;
    min-width:16px!important;
    height:16px!important;
    font-size:10px!important;
    line-height:16px!important;
}

body.stock-admin-v2 .admin-header-flag img,
body.stock-admin-v2 .admin-header-flag svg{
    width:18px!important;
    height:18px!important;
    border-radius:3px!important;
}

body.stock-admin-v2 .admin-header-lang-code{
    font-size:11px!important;
    font-weight:700!important;
    letter-spacing:.04em!important;
    color:#475569!important;
}

body.stock-admin-v2 .admin-header-user-btn{
    max-width:220px!important;
    padding-right:8px!important;
}

body.stock-admin-v2 .admin-header-avatar{
    width:30px!important;
    height:30px!important;
    border-radius:999px!important;
    display:grid!important;
    place-items:center!important;
    background:linear-gradient(135deg,#ff9900,#ffb347)!important;
    color:#fff!important;
    font-size:12px!important;
    font-weight:700!important;
    flex:0 0 auto!important;
    box-shadow:none!important;
}

body.stock-admin-v2 .admin-header-user-text{
    display:grid!important;
    gap:1px!important;
    min-width:0!important;
    text-align:left!important;
}

body.stock-admin-v2 .admin-header-user-name{
    font-size:12.5px!important;
    font-weight:600!important;
    color:#0f172a!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
}

body.stock-admin-v2 .admin-header-user-role{
    font-size:10.5px!important;
    font-weight:500!important;
    color:#94a3b8!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
}

body.stock-admin-v2 .admin-header-user-caret{
    flex:0 0 auto!important;
    color:#94a3b8!important;
}

body.stock-admin-v2 .admin-header-panel{
    display:none!important;
    position:absolute!important;
    right:0!important;
    top:calc(100% + 8px)!important;
    z-index:80!important;
    background:#fff!important;
    border:1px solid #e2e8f0!important;
    border-radius:12px!important;
    box-shadow:0 16px 40px rgba(15,23,42,.12)!important;
    overflow:hidden!important;
}

body.stock-admin-v2 .stock-notification.open .admin-header-panel-notify,
body.stock-admin-v2 .stock-language-switcher.is-open .admin-header-panel-lang,
body.stock-admin-v2 .stock-user-menu.is-open .admin-header-panel-user{
    display:block!important;
}

body.stock-admin-v2 .admin-header-panel-notify{
    width:min(340px,calc(100vw - 24px))!important;
}

body.stock-admin-v2 .admin-header-panel-lang{
    width:min(220px,calc(100vw - 24px))!important;
}

body.stock-admin-v2 .admin-header-panel-user{
    width:min(240px,calc(100vw - 24px))!important;
}

body.stock-admin-v2 .admin-header-user-head{
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
    padding:12px 14px!important;
    border-bottom:1px solid #f1f5f9!important;
    background:#f8fafc!important;
}

body.stock-admin-v2 .admin-header-user-head strong{
    display:block!important;
    font-size:13.5px!important;
    font-weight:700!important;
    color:#0f172a!important;
}

body.stock-admin-v2 .admin-header-user-head span{
    display:block!important;
    font-size:11.5px!important;
    color:#64748b!important;
}

body.stock-admin-v2 .admin-header-avatar-lg{
    width:36px!important;
    height:36px!important;
    font-size:14px!important;
}

body.stock-admin-v2 .admin-header-logout{
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    width:100%!important;
    padding:11px 14px!important;
    border:0!important;
    background:#fff!important;
    color:#dc2626!important;
    font-size:13px!important;
    font-weight:600!important;
    cursor:pointer!important;
}

body.stock-admin-v2 .admin-header-logout:hover{
    background:#fef2f2!important;
}

@media (max-width:1100px){
    body.stock-admin-v2 .admin-header{
        position:sticky!important;
        top:0!important;
        padding:10px 14px!important;
        padding-top:max(10px,env(safe-area-inset-top))!important;
    }

    body.stock-admin-v2 .admin-header-menu{
        display:inline-flex!important;
    }

    body.stock-admin-v2 .admin-header-panel-notify,
    body.stock-admin-v2 .admin-header-panel-lang,
    body.stock-admin-v2 .admin-header-panel-user{
        position:fixed!important;
        left:12px!important;
        right:12px!important;
        width:auto!important;
        top:calc(var(--stock-topbar-offset,58px) + 8px)!important;
    }
}

@media (max-width:640px){
    body.stock-admin-v2 .admin-header-breadcrumb{
        display:none!important;
    }

    body.stock-admin-v2 .admin-header-title{
        font-size:18px!important;
    }

    body.stock-admin-v2 .admin-header-user-text,
    body.stock-admin-v2 .admin-header-user-caret{
        display:none!important;
    }

    body.stock-admin-v2 .admin-header-user-btn{
        width:38px!important;
        padding:0!important;
        justify-content:center!important;
    }

    body.stock-admin-v2 .admin-header-lang-code{
        display:none!important;
    }

    body.stock-admin-v2 .admin-header-lang-btn{
        width:38px!important;
        padding:0!important;
    }
}

/* Phase 4.3.122 - Admin header dropdown + spacing fix */

body.stock-admin-v2 .admin-right{
    overflow:visible!important;
}

body.stock-admin-v2 .admin-header{
    overflow:visible!important;
    z-index:120!important;
    min-height:56px!important;
    padding:0 20px 0 16px!important;
    border-bottom:1px solid #e8edf3!important;
    box-shadow:0 1px 0 rgba(255,255,255,.8) inset!important;
}

body.stock-admin-v2 .admin-header-start{
    gap:14px!important;
}

body.stock-admin-v2 .admin-header-titleblock{
    padding-left:2px!important;
}

body.stock-admin-v2 .admin-header-breadcrumb{
    font-size:12px!important;
    color:#94a3b8!important;
}

body.stock-admin-v2 .admin-header-title{
    font-size:19px!important;
    margin-top:1px!important;
}

body.stock-admin-v2 .admin-header-actions{
    gap:8px!important;
    padding:4px!important;
    border-radius:12px!important;
    background:#f8fafc!important;
    border:1px solid #eef2f7!important;
}

body.stock-admin-v2 .admin-header-icon-btn,
body.stock-admin-v2 .admin-header-user-btn{
    border-color:transparent!important;
    background:transparent!important;
    box-shadow:none!important;
}

body.stock-admin-v2 .admin-header-icon-btn:hover,
body.stock-admin-v2 .admin-header-user-btn:hover{
    background:#fff!important;
    border-color:#e2e8f0!important;
}

body.stock-admin-v2 .admin-header-panel{
    display:none!important;
    position:fixed!important;
    z-index:200!important;
    margin:0!important;
}

body.stock-admin-v2 .stock-notification.open .admin-header-panel-notify,
body.stock-admin-v2 .stock-language-switcher.is-open .admin-header-panel-lang,
body.stock-admin-v2 .stock-user-menu.is-open .admin-header-panel-user,
body.stock-admin-v2 .stock-user-menu.is-open .stock-user-menu-panel.admin-header-panel-user{
    display:block!important;
}

body.stock-admin-v2 .admin-header-panel-notify{
    width:min(340px,calc(100vw - 24px))!important;
    right:16px!important;
    left:auto!important;
    top:calc(var(--stock-topbar-offset,56px) + 6px)!important;
}

body.stock-admin-v2 .admin-header-panel-lang{
    width:min(210px,calc(100vw - 24px))!important;
    right:16px!important;
    left:auto!important;
    top:calc(var(--stock-topbar-offset,56px) + 6px)!important;
}

body.stock-admin-v2 .admin-header-panel-user{
    width:min(200px,calc(100vw - 24px))!important;
    right:16px!important;
    left:auto!important;
    top:calc(var(--stock-topbar-offset,56px) + 6px)!important;
    padding:6px!important;
}

body.stock-admin-v2 .admin-header-logout{
    border-radius:8px!important;
    padding:10px 12px!important;
}

body.stock-admin-v2 .admin-header-logout:hover{
    background:#fef2f2!important;
}

body.stock-admin-v2 .admin-content{
    z-index:1!important;
}

@media (max-width:1100px){
    body.stock-admin-v2 .admin-header-panel-notify,
    body.stock-admin-v2 .admin-header-panel-lang,
    body.stock-admin-v2 .admin-header-panel-user{
        left:12px!important;
        right:12px!important;
        width:auto!important;
    }
}

/* Phase 4.3.129 - Admin layout complete reset (post-login shell)
   Clean shell: sidebar | header + scrollable content + footer */

body.stock-admin-v2{
    --admin-sidebar-w:252px;
    --admin-content-max:1400px;
    --admin-header-h:60px;
    --admin-navy:#071428;
    --admin-navy-2:#0c2244;
    --admin-accent:#ff9900;
    --admin-blue:#2563eb;
    --admin-blue-soft:#eff6ff;
    --admin-ink:#0f172a;
    --admin-muted:#64748b;
    --admin-line:#e2e8f0;
    --admin-surface:#f0f4f9;
    --admin-card:#ffffff;
    --admin-radius:14px;
    --admin-radius-lg:18px;
    --admin-shadow:0 1px 3px rgba(15,23,42,.06),0 8px 24px rgba(15,23,42,.04);
}

/* Shell — desktop grid is gated; mobile stays single-column block */
body.stock-admin-v2 .admin-shell{
    min-height:100vh;
    min-height:100dvh;
    width:100%;
    max-width:100%;
    min-width:0;
    background:var(--admin-surface)!important;
}

@media (min-width:1101px){
    html:not(.is-mobile-layout) body.stock-admin-v2:not(.is-mobile-layout) .admin-shell{
        display:grid!important;
        grid-template-columns:var(--admin-sidebar-w) minmax(0,1fr)!important;
    }
}

body.stock-admin-v2 .admin-main{
    display:flex;
    flex-direction:column;
    min-width:0;
    min-height:100dvh;
    max-height:100dvh;
    overflow:hidden;
    background:var(--admin-surface);
}

/* Sidebar */
body.stock-admin-v2 .admin-sidebar{
    display:flex;
    flex-direction:column;
    min-height:100dvh;
    padding:16px 12px;
    background:linear-gradient(180deg,var(--admin-navy) 0%,var(--admin-navy-2) 100%)!important;
    border-right:1px solid rgba(255,255,255,.06)!important;
    box-shadow:none!important;
    z-index:80;
}

body.stock-admin-v2 .admin-sidebar-top{
    flex:0 0 auto;
    padding:4px 6px 12px;
}

body.stock-admin-v2 .admin-brand{
    display:flex;
    align-items:center;
    gap:11px;
    padding:0!important;
    background:transparent!important;
    border:none!important;
    box-shadow:none!important;
}

body.stock-admin-v2 .admin-brand-mark{
    width:40px!important;
    height:40px!important;
    border-radius:12px!important;
    background:linear-gradient(135deg,var(--admin-accent),#ffb84d)!important;
    color:#fff!important;
    font-weight:800!important;
    font-size:17px!important;
    display:grid!important;
    place-items:center!important;
    box-shadow:0 6px 16px rgba(255,153,0,.28)!important;
}

body.stock-admin-v2 .admin-brand-title{
    font-size:16px!important;
    font-weight:700!important;
    color:#fff!important;
    letter-spacing:.04em!important;
    line-height:1.2!important;
}

body.stock-admin-v2 .admin-brand-subtitle{
    margin-top:1px!important;
    font-size:11px!important;
    font-weight:400!important;
    color:#9ec5f5!important;
    letter-spacing:.01em!important;
}

body.stock-admin-v2 .admin-system-pill{
    display:inline-flex;
    align-items:center;
    gap:7px;
    margin-top:0;
    padding:5px 11px;
    border-radius:999px;
    font-size:11px;
    font-weight:600;
    line-height:1.2;
    border:1px solid transparent;
}

body.stock-admin-v2 .admin-sidebar-top .admin-system-pill{
    display:none;
}

body.stock-admin-v2 .admin-sidebar-foot{
    display:flex;
    flex-direction:column;
    gap:10px;
    margin-top:auto;
    padding-top:12px;
    border-top:1px solid rgba(255,255,255,.08);
}

body.stock-admin-v2 .admin-sidebar-foot-meta{
    display:flex;
    align-items:center;
    gap:10px;
}

body.stock-admin-v2 .admin-sidebar-foot .admin-system-pill{
    margin:0;
    width:100%;
    justify-content:flex-start;
    box-sizing:border-box;
}

body.stock-admin-v2 .admin-system-pill.is-normal{
    background:rgba(34,197,94,.14);
    color:#86efac;
}

body.stock-admin-v2 .admin-system-pill.is-debug{
    background:rgba(251,146,60,.18);
    color:#fdba74;
}

body.stock-admin-v2 .admin-system-dot{
    width:6px;
    height:6px;
    border-radius:999px;
    background:currentColor;
    flex:0 0 auto;
}

body.stock-admin-v2 .admin-nav{
    flex:1 1 auto;
    min-height:0;
    overflow-y:auto;
    overflow-x:hidden;
    margin-top:4px;
    padding:0 2px;
    scrollbar-width:thin;
    scrollbar-color:rgba(255,255,255,.18) transparent;
}

body.stock-admin-v2 .stock-nav-group{
    margin-bottom:4px!important;
    border-radius:12px;
    overflow:hidden;
}

body.stock-admin-v2 .stock-nav-group.is-active-group{
    background:rgba(255,255,255,.04);
}

body.stock-admin-v2 .stock-nav-group-title{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    margin:0!important;
    padding:7px 10px!important;
    list-style:none!important;
    cursor:pointer!important;
    font-size:10px!important;
    font-weight:700!important;
    letter-spacing:.09em!important;
    text-transform:uppercase!important;
    color:#7daee0!important;
    user-select:none;
}

body.stock-admin-v2 .stock-nav-group-title::-webkit-details-marker{
    display:none;
}

body.stock-admin-v2 .stock-nav-group-caret{
    width:6px;
    height:6px;
    border-right:1.5px solid #7daee0;
    border-bottom:1.5px solid #7daee0;
    transform:rotate(45deg);
    transition:transform .18s ease;
    flex:0 0 auto;
}

body.stock-admin-v2 .stock-nav-group[open] > .stock-nav-group-title .stock-nav-group-caret{
    transform:rotate(-135deg);
}

body.stock-admin-v2 .stock-nav-group-links{
    display:grid;
    gap:2px;
    padding:0 4px 5px;
}

body.stock-admin-v2 .stock-nav-link{
    position:relative;
    display:flex!important;
    align-items:center!important;
    min-height:40px!important;
    padding:7px 10px!important;
    border-radius:10px!important;
    font-weight:500!important;
    color:#b8d4f5!important;
    border:1px solid transparent!important;
    gap:9px!important;
    transition:background .14s ease,color .14s ease!important;
    box-shadow:none!important;
}

body.stock-admin-v2 .stock-nav-link:hover{
    background:rgba(255,255,255,.07)!important;
    color:#fff!important;
    border-color:transparent!important;
}

body.stock-admin-v2 .stock-nav-active{
    background:rgba(37,99,235,.18)!important;
    border-color:rgba(96,165,250,.25)!important;
    color:#fff!important;
    font-weight:600!important;
}

body.stock-admin-v2 .stock-nav-active::before{
    content:"";
    position:absolute;
    left:0;
    top:7px;
    bottom:7px;
    width:3px;
    border-radius:999px;
    background:#60a5fa;
}

body.stock-admin-v2 .stock-nav-icon{
    width:26px!important;
    height:26px!important;
    border-radius:8px!important;
    background:rgba(255,255,255,.07)!important;
    color:#dbeafe!important;
    font-size:9px!important;
    font-weight:700!important;
    display:grid!important;
    place-items:center!important;
    flex:0 0 auto!important;
}

body.stock-admin-v2 .stock-nav-active .stock-nav-icon{
    background:rgba(96,165,250,.22)!important;
    color:#fff!important;
}

body.stock-admin-v2 .stock-nav-label-th{
    font-size:13px!important;
    font-weight:600!important;
    line-height:1.3!important;
}

body.stock-admin-v2 .stock-nav-label-en{
    font-size:10px!important;
    opacity:.75!important;
    line-height:1.2!important;
}

body.stock-admin-v2 .admin-sidebar-foot{
    flex:0 0 auto;
    margin-top:auto;
    padding:10px 12px;
    border-radius:12px;
    background:rgba(255,255,255,.04);
    border:1px solid rgba(255,255,255,.06);
    display:flex;
    flex-direction:column;
    gap:10px;
}

body.stock-admin-v2 .admin-sidebar-foot-title{
    font-size:10.5px!important;
    font-weight:700!important;
    color:#dbeafe!important;
    letter-spacing:.03em!important;
}

body.stock-admin-v2 .admin-sidebar-foot-text{
    font-size:10.5px!important;
    color:#7daee0!important;
    line-height:1.4!important;
}

body.stock-admin-v2 .admin-overlay{
    display:none;
}

body.stock-admin-v2 .admin-header{
    flex:0 0 auto;
    width:100%;
    background:#fff!important;
    border-bottom:1px solid var(--admin-line)!important;
    box-shadow:0 1px 0 rgba(255,255,255,.9)!important;
    position:sticky!important;
    top:0!important;
    z-index:100!important;
    overflow:visible!important;
}

body.stock-admin-v2 .admin-header-inner{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:16px 24px!important;
    width:100%!important;
    max-width:var(--admin-content-max)!important;
    margin:0 auto!important;
    padding:12px 24px!important;
    min-height:var(--admin-header-h)!important;
    box-sizing:border-box!important;
}

body.stock-admin-v2 .admin-header-start{
    display:flex!important;
    align-items:center!important;
    gap:12px!important;
    flex:1 1 auto!important;
    min-width:0!important;
    max-width:calc(100% - 280px)!important;
}

body.stock-admin-v2 .admin-header-menu{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:38px!important;
    height:38px!important;
    padding:0!important;
    border:1px solid var(--admin-line)!important;
    border-radius:10px!important;
    background:#fff!important;
    color:#334155!important;
    cursor:pointer!important;
    flex:0 0 auto!important;
}

@media (min-width:1101px){
    body.stock-admin-v2 .admin-header-menu{
        display:none!important;
    }
}

body.stock-admin-v2 .admin-header-titleblock{
    min-width:0!important;
    flex:1 1 auto!important;
}

body.stock-admin-v2 .admin-header-breadcrumb{
    display:flex!important;
    align-items:center!important;
    flex-wrap:wrap!important;
    gap:4px!important;
    margin:0!important;
    font-size:12px!important;
    font-weight:500!important;
    line-height:1.3!important;
    color:#94a3b8!important;
}

body.stock-admin-v2 .admin-header-breadcrumb span:last-child{
    color:#64748b!important;
}

body.stock-admin-v2 .admin-header-title{
    margin:3px 0 0!important;
    padding:0!important;
    font-size:21px!important;
    font-weight:700!important;
    line-height:1.25!important;
    color:var(--admin-ink)!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
}

body.stock-admin-v2 .admin-header-actions{
    display:flex!important;
    align-items:center!important;
    gap:6px!important;
    flex:0 0 auto!important;
    padding:4px!important;
    border-radius:12px!important;
    background:#f8fafc!important;
    border:1px solid #eef2f7!important;
}

body.stock-admin-v2 .admin-header-action{
    position:relative!important;
}

body.stock-admin-v2 .admin-header-icon-btn,
body.stock-admin-v2 .admin-header-user-btn{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    min-height:36px!important;
    padding:0 10px!important;
    border:1px solid transparent!important;
    border-radius:9px!important;
    background:transparent!important;
    color:#334155!important;
    font-size:13px!important;
    font-weight:600!important;
    cursor:pointer!important;
    box-shadow:none!important;
    transition:background .14s ease,border-color .14s ease!important;
}

body.stock-admin-v2 .admin-header-icon-btn{
    width:36px!important;
    padding:0!important;
}

body.stock-admin-v2 .admin-header-icon-btn:hover,
body.stock-admin-v2 .admin-header-user-btn:hover{
    background:#fff!important;
    border-color:var(--admin-line)!important;
}

body.stock-admin-v2 .admin-header-avatar{
    width:30px!important;
    height:30px!important;
    border-radius:9px!important;
    background:linear-gradient(135deg,var(--admin-accent),#ffb84d)!important;
    color:#fff!important;
    font-weight:700!important;
    font-size:13px!important;
    display:grid!important;
    place-items:center!important;
    flex:0 0 auto!important;
}

body.stock-admin-v2 .admin-header-user-text{
    display:grid!important;
    gap:1px!important;
    text-align:left!important;
    min-width:0!important;
}

body.stock-admin-v2 .admin-header-user-name{
    font-size:13px!important;
    font-weight:600!important;
    color:var(--admin-ink)!important;
    line-height:1.2!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    max-width:160px!important;
}

body.stock-admin-v2 .admin-header-user-role{
    font-size:11px!important;
    font-weight:500!important;
    color:var(--admin-muted)!important;
    line-height:1.2!important;
}

body.stock-admin-v2 .admin-header-user-caret{
    flex:0 0 auto!important;
    color:#94a3b8!important;
}

body.stock-admin-v2 .admin-header-badge{
    position:absolute!important;
    top:-2px!important;
    right:-2px!important;
    min-width:16px!important;
    height:16px!important;
    font-size:10px!important;
    line-height:16px!important;
    border-radius:999px!important;
    background:#ef4444!important;
    color:#fff!important;
    text-align:center!important;
}

body.stock-admin-v2 .admin-header-panel{
    display:none!important;
    position:fixed!important;
    z-index:200!important;
    margin:0!important;
    background:#fff!important;
    border:1px solid var(--admin-line)!important;
    border-radius:12px!important;
    box-shadow:0 16px 40px rgba(15,23,42,.12)!important;
    overflow:hidden!important;
}

body.stock-admin-v2 .stock-notification.open .admin-header-panel-notify,
body.stock-admin-v2 .stock-language-switcher.is-open .admin-header-panel-lang,
body.stock-admin-v2 .stock-user-menu.is-open .admin-header-panel-user,
body.stock-admin-v2 .stock-user-menu.is-open .stock-user-menu-panel.admin-header-panel-user{
    display:block!important;
}

body.stock-admin-v2 .admin-header-panel-notify{
    width:min(340px,calc(100vw - 24px))!important;
    right:20px!important;
    left:auto!important;
    top:calc(var(--stock-topbar-offset,60px) + 6px)!important;
}

body.stock-admin-v2 .admin-header-panel-lang{
    width:min(210px,calc(100vw - 24px))!important;
    right:20px!important;
    left:auto!important;
    top:calc(var(--stock-topbar-offset,60px) + 6px)!important;
}

body.stock-admin-v2 .admin-header-panel-user{
    width:min(200px,calc(100vw - 24px))!important;
    right:20px!important;
    left:auto!important;
    top:calc(var(--stock-topbar-offset,60px) + 6px)!important;
    padding:6px!important;
}

body.stock-admin-v2 .admin-header-logout{
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    width:100%!important;
    padding:10px 12px!important;
    border:none!important;
    border-radius:8px!important;
    background:transparent!important;
    color:#dc2626!important;
    font-size:13px!important;
    font-weight:600!important;
    cursor:pointer!important;
}

body.stock-admin-v2 .admin-header-logout:hover{
    background:#fef2f2!important;
}

body.stock-admin-v2 .admin-content{
    flex:1 1 auto;
    min-height:0;
    overflow-x:hidden;
    overflow-y:auto;
    -webkit-overflow-scrolling:touch;
    width:100%;
    z-index:1!important;
}

body.stock-admin-v2 .admin-content-inner{
    width:100%;
    max-width:var(--admin-content-max);
    margin:0 auto;
    padding:20px 24px 24px;
    min-width:0;
    box-sizing:border-box;
}

body.stock-admin-v2 .admin-content-body{
    min-width:0;
}

body.stock-admin-v2 .admin-content-body:not(:has(.admin-dashboard)){
    background:var(--admin-card);
    border:1px solid var(--admin-line);
    border-radius:var(--admin-radius-lg);
    padding:22px 24px;
    box-shadow:var(--admin-shadow);
}

body.stock-admin-v2 .admin-footer{
    flex:0 0 auto;
    width:100%;
    position:relative;
    background:linear-gradient(180deg, rgba(6,27,58,.035), #fff);
    border-top:1px solid var(--admin-line);
}

body.stock-admin-v2 .admin-footer-inner{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:space-between;
    gap:14px 24px;
    max-width:var(--admin-content-max);
    margin:0 auto;
    padding:16px 24px;
    font-size:12px;
    font-weight:500;
    color:var(--admin-muted);
}

body.stock-admin-v2 .admin-footer-sep{
    opacity:.45;
}

body.stock-admin-v2 .admin-dashboard{
    display:grid;
    gap:16px;
}

body.stock-admin-v2 .dash-toolbar{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:space-between;
    gap:14px 20px;
    padding:16px 18px;
    background:var(--admin-card);
    border:1px solid var(--admin-line);
    border-radius:var(--admin-radius-lg);
    box-shadow:var(--admin-shadow);
}

body.stock-admin-v2 .dash-toolbar-hint{
    margin:0;
    max-width:540px;
    font-size:14px;
    line-height:1.55;
    color:var(--admin-muted);
    font-weight:500;
}

body.stock-admin-v2 .dash-toolbar-actions{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}

body.stock-admin-v2 .dash-btn-primary{
    background:var(--admin-blue)!important;
    border-color:#1d4ed8!important;
    color:#fff!important;
    box-shadow:0 4px 14px rgba(37,99,235,.2)!important;
}

body.stock-admin-v2 .dash-kpi-row{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:14px!important;
}

body.stock-admin-v2 .dashboard-kpi-card{
    display:grid!important;
    gap:4px!important;
    background:var(--admin-card)!important;
    border:1px solid var(--admin-line)!important;
    border-radius:var(--admin-radius-lg)!important;
    padding:16px 16px 14px!important;
    box-shadow:var(--admin-shadow)!important;
    text-decoration:none!important;
    transition:transform .14s ease,box-shadow .14s ease!important;
}

body.stock-admin-v2 .dashboard-kpi-card:hover{
    transform:translateY(-1px);
    box-shadow:0 4px 20px rgba(15,23,42,.08)!important;
}

body.stock-admin-v2 .dashboard-kpi-blue{border-top:3px solid var(--admin-blue)!important;}
body.stock-admin-v2 .dashboard-kpi-orange{border-top:3px solid #f97316!important;}
body.stock-admin-v2 .dashboard-kpi-green{border-top:3px solid #16a34a!important;}

body.stock-admin-v2 .dashboard-kpi-icon{
    width:34px!important;
    height:34px!important;
    border-radius:10px!important;
    font-size:10px!important;
    font-weight:700!important;
    display:grid!important;
    place-items:center!important;
    margin-bottom:6px!important;
    background:var(--admin-blue-soft)!important;
    color:var(--admin-blue)!important;
}

body.stock-admin-v2 .dashboard-kpi-orange .dashboard-kpi-icon{background:#fff7ed!important;color:#ea580c!important;}
body.stock-admin-v2 .dashboard-kpi-green .dashboard-kpi-icon{background:#f0fdf4!important;color:#16a34a!important;}

body.stock-admin-v2 .dashboard-kpi-label{
    font-size:12.5px!important;
    font-weight:600!important;
    color:var(--admin-muted)!important;
    line-height:1.35!important;
}

body.stock-admin-v2 .dashboard-kpi-card strong{
    font-size:28px!important;
    font-weight:700!important;
    color:var(--admin-ink)!important;
    line-height:1.1!important;
}

body.stock-admin-v2 .dashboard-kpi-card small{
    font-size:11.5px!important;
    color:#94a3b8!important;
    line-height:1.35!important;
}

body.stock-admin-v2 .dash-chip-row{
    display:grid!important;
    grid-template-columns:repeat(auto-fill,minmax(158px,1fr))!important;
    gap:10px!important;
    overflow:visible!important;
    padding:0!important;
}

body.stock-admin-v2 .dash-chip-row .dashboard-mini-card{
    display:grid!important;
    gap:4px!important;
    padding:12px 14px!important;
    border-radius:var(--admin-radius)!important;
    background:var(--admin-card)!important;
    border:1px solid var(--admin-line)!important;
    box-shadow:var(--admin-shadow)!important;
    text-decoration:none!important;
    min-width:0!important;
}

body.stock-admin-v2 .dash-chip-row .dashboard-mini-card span{
    font-size:12px!important;
    font-weight:600!important;
    color:var(--admin-muted)!important;
    line-height:1.35!important;
    white-space:normal!important;
}

body.stock-admin-v2 .dash-chip-row .dashboard-mini-card strong{
    font-size:20px!important;
    font-weight:700!important;
    color:var(--admin-ink)!important;
    line-height:1.1!important;
}

body.stock-admin-v2 .dash-value-row{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:12px!important;
}

body.stock-admin-v2 .dashboard-value-card{
    background:var(--admin-card)!important;
    border:1px solid var(--admin-line)!important;
    border-radius:var(--admin-radius)!important;
    padding:14px 16px!important;
    box-shadow:var(--admin-shadow)!important;
}

body.stock-admin-v2 .dashboard-value-card span{
    font-size:12px!important;
    font-weight:600!important;
    color:var(--admin-muted)!important;
}

body.stock-admin-v2 .dashboard-value-card strong{
    font-size:22px!important;
    font-weight:700!important;
    color:var(--admin-ink)!important;
    margin-top:4px!important;
    display:block!important;
}

body.stock-admin-v2 .dash-workspace,
body.stock-admin-v2 .dash-priority-grid{
    display:grid!important;
    gap:14px!important;
}

body.stock-admin-v2 .dash-workspace{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
}

body.stock-admin-v2 .dash-priority-grid{
    grid-template-columns:minmax(0,1.35fr) minmax(0,1fr)!important;
}

body.stock-admin-v2 .dashboard-panel{
    background:var(--admin-card)!important;
    border:1px solid var(--admin-line)!important;
    border-radius:var(--admin-radius-lg)!important;
    padding:18px!important;
    box-shadow:var(--admin-shadow)!important;
}

body.stock-admin-v2 .dashboard-panel-head h2{
    font-size:15px!important;
    font-weight:700!important;
    color:var(--admin-ink)!important;
    margin:0!important;
}

body.stock-admin-v2 .dashboard-panel-head p{
    font-size:12.5px!important;
    color:#94a3b8!important;
    margin:3px 0 0!important;
}

body.stock-admin-v2 .dashboard-mini-more,
body.stock-admin-v2 .dash-more-section{
    border:1px solid var(--admin-line)!important;
    border-radius:var(--admin-radius-lg)!important;
    background:var(--admin-card)!important;
    overflow:hidden!important;
    box-shadow:var(--admin-shadow)!important;
}

body.stock-admin-v2 .dashboard-mini-more > summary,
body.stock-admin-v2 .dash-more-section > summary{
    padding:14px 18px!important;
    font-size:14px!important;
    font-weight:600!important;
    color:var(--admin-blue)!important;
    cursor:pointer!important;
    list-style:none!important;
    background:#f8fafc!important;
}

body.stock-admin-v2 .dash-more-body{
    display:grid;
    gap:14px;
    padding:14px;
}

@media (max-width:1100px){
    body.stock-admin-v2 .admin-shell{
        grid-template-columns:1fr!important;
    }

    body.stock-admin-v2 .admin-sidebar{
        position:fixed!important;
        left:0!important;
        top:0!important;
        width:min(280px,calc(100vw - 48px))!important;
        max-width:280px!important;
        height:100dvh!important;
        transform:translateX(-100%)!important;
        transition:transform .22s ease,visibility 0s linear .22s!important;
        padding-top:max(14px,env(safe-area-inset-top))!important;
        padding-bottom:max(14px,env(safe-area-inset-bottom))!important;
        visibility:hidden!important;
        pointer-events:none!important;
    }

    body.stock-admin-v2.sidebar-open .admin-sidebar{
        transform:translateX(0)!important;
        visibility:visible!important;
        pointer-events:auto!important;
        z-index:1200!important;
        transition:transform .22s ease,visibility 0s linear 0s!important;
    }

    body.stock-admin-v2.sidebar-open .admin-overlay{
        display:block!important;
        position:fixed!important;
        inset:0!important;
        z-index:70!important;
        background:rgba(7,20,40,.55)!important;
    }

    body.stock-admin-v2 .admin-main{
        max-height:none;
        min-height:100dvh;
    }

    body.stock-admin-v2 .admin-header-menu{
        display:inline-flex!important;
    }

    body.stock-admin-v2 .admin-header-inner{
        padding:10px 16px!important;
    }

    body.stock-admin-v2 .admin-header-start{
        max-width:none!important;
    }

    body.stock-admin-v2 .admin-content-inner{
        padding:16px!important;
    }

    body.stock-admin-v2 .admin-footer-inner{
        padding:16px 16px max(16px,env(safe-area-inset-bottom))!important;
    }

    body.stock-admin-v2 .dash-kpi-row,
    body.stock-admin-v2 .dash-value-row{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }

    body.stock-admin-v2 .dash-workspace,
    body.stock-admin-v2 .dash-priority-grid{
        grid-template-columns:1fr!important;
    }

    body.stock-admin-v2 .admin-header-panel-notify,
    body.stock-admin-v2 .admin-header-panel-lang,
    body.stock-admin-v2 .admin-header-panel-user{
        left:12px!important;
        right:12px!important;
        width:auto!important;
    }
}

@media (max-width:640px){
    body.stock-admin-v2 .admin-header-title{
        font-size:18px!important;
    }

    body.stock-admin-v2 .admin-header-user-text,
    body.stock-admin-v2 .admin-header-user-caret{
        display:none!important;
    }

    body.stock-admin-v2 .admin-header-user-btn{
        width:36px!important;
        padding:0!important;
    }

    body.stock-admin-v2 .admin-header-lang-code{
        display:none!important;
    }

    body.stock-admin-v2 .admin-sidebar-foot{
        display:flex!important;
        flex-direction:column!important;
    }

    body.stock-admin-v2 .admin-sidebar-foot-meta{
        display:none!important;
    }

    body.stock-admin-v2 .dash-toolbar{
        flex-direction:column!important;
        align-items:stretch!important;
    }

    body.stock-admin-v2 .dash-toolbar-actions{
        display:grid!important;
        grid-template-columns:1fr 1fr!important;
    }

    body.stock-admin-v2 .dash-toolbar-actions .dash-btn-primary{
        grid-column:1 / -1!important;
    }

    body.stock-admin-v2 .dash-kpi-row,
    body.stock-admin-v2 .dash-value-row,
    body.stock-admin-v2 .dash-chip-row{
        grid-template-columns:1fr!important;
    }

    body.stock-admin-v2 .admin-content-inner{
        padding:12px!important;
    }

    body.stock-admin-v2 .admin-footer-inner{
        display:grid!important;
        grid-template-columns:1fr!important;
        align-items:stretch!important;
        gap:14px!important;
    }

    body.stock-admin-v2 .admin-footer-meta{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:10px!important;
        width:100%!important;
    }

    body.stock-admin-v2 .admin-footer-privacy{
        width:100%!important;
        justify-content:center!important;
        min-height:40px!important;
    }

    body.stock-admin-v2 .admin-footer-sep{
        display:none!important;
    }
}

/* Phase 4.3.130 - Dropdown anchor + wider content */

body.stock-admin-v2{
    --admin-content-max:none;
}

/* Full-bleed header + content (no centered max-width box) */
body.stock-admin-v2 .admin-header-inner{
    max-width:none!important;
    margin:0!important;
    padding:12px 28px!important;
}

body.stock-admin-v2 .admin-header-start{
    max-width:none!important;
}

body.stock-admin-v2 .admin-content-inner{
    max-width:none!important;
    margin:0!important;
    padding:20px 28px 28px!important;
}

body.stock-admin-v2 .admin-footer-inner{
    max-width:none!important;
    margin:0!important;
    padding:10px 28px!important;
}

/* Allow dropdowns to escape header into content area */
body.stock-admin-v2 .admin-main{
    overflow:visible!important;
}

body.stock-admin-v2 .admin-header,
body.stock-admin-v2 .admin-header-inner,
body.stock-admin-v2 .admin-header-actions{
    overflow:visible!important;
}

body.stock-admin-v2 .admin-content{
    overflow-x:hidden!important;
    overflow-y:auto!important;
}

/* Anchor dropdowns under each action button */
body.stock-admin-v2 .admin-header-action{
    position:relative!important;
}

body.stock-admin-v2 .admin-header-panel,
body.stock-admin-v2 .admin-header-panel-notify,
body.stock-admin-v2 .admin-header-panel-lang,
body.stock-admin-v2 .admin-header-panel-user,
body.stock-admin-v2 .stock-user-menu-panel.admin-header-panel-user,
body.stock-admin-v2 .stock-notification-panel.admin-header-panel-notify,
body.stock-admin-v2 .stock-language-menu.admin-header-panel-lang{
    position:absolute!important;
    top:calc(100% + 8px)!important;
    right:0!important;
    left:auto!important;
    z-index:220!important;
    margin:0!important;
}

body.stock-admin-v2 .admin-header-panel-notify{
    width:min(340px,calc(100vw - 24px))!important;
}

body.stock-admin-v2 .admin-header-panel-lang{
    width:min(210px,calc(100vw - 24px))!important;
}

body.stock-admin-v2 .admin-header-panel-user{
    width:min(200px,calc(100vw - 24px))!important;
    padding:6px!important;
}

@media (max-width:1100px){
    body.stock-admin-v2 .admin-header-inner,
    body.stock-admin-v2 .admin-content-inner{
        padding-left:16px!important;
        padding-right:16px!important;
    }

    body.stock-admin-v2 .admin-footer-inner{
        padding-left:16px!important;
        padding-right:16px!important;
    }

    /* Keep panels under trigger on tablet; only full-bleed when too narrow */
    body.stock-admin-v2 .admin-header-panel-notify,
    body.stock-admin-v2 .admin-header-panel-lang,
    body.stock-admin-v2 .admin-header-panel-user{
        right:0!important;
        left:auto!important;
        width:min(320px,calc(100vw - 32px))!important;
    }
}

@media (max-width:640px){
    body.stock-admin-v2 .admin-header-inner,
    body.stock-admin-v2 .admin-content-inner{
        padding-left:12px!important;
        padding-right:12px!important;
    }

    body.stock-admin-v2 .admin-header-panel-notify,
    body.stock-admin-v2 .admin-header-panel-lang,
    body.stock-admin-v2 .admin-header-panel-user{
        position:fixed!important;
        left:12px!important;
        right:12px!important;
        width:auto!important;
        top:calc(var(--stock-topbar-offset,60px) + 6px)!important;
    }
}

/* Phase 4.3.131 - Dashboard chart/visual fit for data types */

body.stock-admin-v2 .dash-insights{
    display:grid!important;
    grid-template-columns:minmax(0,1.45fr) minmax(0,1fr)!important;
    gap:14px!important;
}

body.stock-admin-v2 .dash-trend-panel{
    min-width:0;
}

body.stock-admin-v2 .dashboard-trend-chart{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(52px,1fr));
    gap:10px;
    align-items:end;
    min-height:200px;
    padding:8px 4px 0;
    border:1px solid var(--admin-line,#e2e8f0);
    border-radius:14px;
    background:linear-gradient(180deg,#fff 0%,#f8fafc 100%);
}

body.stock-admin-v2 .dashboard-trend-col{
    display:grid;
    gap:8px;
    justify-items:center;
    min-width:0;
}

body.stock-admin-v2 .dashboard-trend-bars{
    display:flex;
    align-items:flex-end;
    justify-content:center;
    gap:6px;
    width:100%;
    height:160px;
}

body.stock-admin-v2 .dashboard-trend-bar{
    position:relative;
    flex:1 1 0;
    max-width:28px;
    min-height:4px;
    border-radius:8px 8px 4px 4px;
    display:flex;
    align-items:flex-end;
    justify-content:center;
    transition:height .2s ease;
}

body.stock-admin-v2 .dashboard-trend-bar span{
    position:absolute;
    top:-18px;
    left:50%;
    transform:translateX(-50%);
    font-size:10px;
    font-weight:700;
    color:#64748b;
    white-space:nowrap;
}

body.stock-admin-v2 .dashboard-trend-bar-pr{
    background:linear-gradient(180deg,#3b82f6 0%,#2563eb 100%);
}

body.stock-admin-v2 .dashboard-trend-bar-po{
    background:linear-gradient(180deg,#fb923c 0%,#ea580c 100%);
}

body.stock-admin-v2 .dashboard-trend-label{
    font-size:11px;
    font-weight:600;
    color:#64748b;
    text-align:center;
}

body.stock-admin-v2 .dashboard-chart-legend{
    display:flex;
    flex-wrap:wrap;
    gap:14px;
    margin-top:12px;
    color:#64748b;
    font-size:12px;
    font-weight:600;
}

body.stock-admin-v2 .dashboard-chart-legend span{
    display:inline-flex;
    align-items:center;
    gap:6px;
}

body.stock-admin-v2 .dashboard-chart-legend i{
    width:10px;
    height:10px;
    border-radius:999px;
    display:inline-block;
}

body.stock-admin-v2 .legend-pr{background:#2563eb;}
body.stock-admin-v2 .legend-po{background:#ea580c;}

body.stock-admin-v2 .dash-status-panel .dashboard-panel-head.dash-status-head-spaced{
    margin-top:18px;
    padding-top:16px;
    border-top:1px solid var(--admin-line,#e2e8f0);
}

body.stock-admin-v2 .dashboard-status-list-bars .dashboard-status-item{
    display:grid!important;
    grid-template-columns:minmax(110px,auto) minmax(0,1fr) auto!important;
    gap:10px!important;
    align-items:center!important;
}

body.stock-admin-v2 .dashboard-status-meter{
    height:8px;
    border-radius:999px;
    background:#eef2f7;
    overflow:hidden;
}

body.stock-admin-v2 .dashboard-status-meter i{
    display:block;
    height:100%;
    border-radius:inherit;
    background:linear-gradient(90deg,#2563eb,#60a5fa);
}

body.stock-admin-v2 .dashboard-status-count{
    min-width:28px;
    font-size:16px!important;
    font-weight:700!important;
    color:#0f172a!important;
    text-align:right!important;
}

@media (max-width:1100px){
    body.stock-admin-v2 .dash-insights{
        grid-template-columns:1fr!important;
    }

    body.stock-admin-v2 .dashboard-trend-bars{
        height:140px;
    }
}

@media (max-width:640px){
    body.stock-admin-v2 .dashboard-trend-chart{
        grid-template-columns:repeat(3,minmax(0,1fr));
        min-height:170px;
    }

    body.stock-admin-v2 .dashboard-trend-bars{
        height:120px;
    }

    body.stock-admin-v2 .dashboard-status-list-bars .dashboard-status-item{
        grid-template-columns:1fr auto!important;
        grid-template-rows:auto auto!important;
    }

    body.stock-admin-v2 .dashboard-status-meter{
        grid-column:1 / -1;
    }
}

/* Phase 4.3.132 - Dashboard charts: line, donut, ring, flow, task bars */

body.stock-admin-v2 .dash-visual-row{
    display:grid!important;
    grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)!important;
    gap:14px!important;
}

body.stock-admin-v2 .dash-donut-grid{
    display:grid;
    gap:14px;
    min-width:0;
}

body.stock-admin-v2 .dash-value-chart-panel{
    min-width:0;
}

body.stock-admin-v2 .dash-line-chart-wrap{
    border:1px solid var(--admin-line,#e2e8f0);
    border-radius:14px;
    background:linear-gradient(180deg,#fff 0%,#f8fafc 100%);
    padding:12px 12px 8px;
}

body.stock-admin-v2 .dash-line-chart{
    display:block;
    width:100%;
    height:160px;
}

body.stock-admin-v2 .dash-line-grid{
    stroke:#eef2f7;
    stroke-width:1;
}

body.stock-admin-v2 .dash-line{
    fill:none;
    stroke-width:2.8;
    stroke-linecap:round;
    stroke-linejoin:round;
    vector-effect:non-scaling-stroke;
}

body.stock-admin-v2 .dash-line-pr{
    stroke:#2563eb;
    filter:drop-shadow(0 2px 4px rgba(37,99,235,.18));
}

body.stock-admin-v2 .dash-line-po{
    stroke:#ea580c;
    filter:drop-shadow(0 2px 4px rgba(234,88,12,.18));
}

body.stock-admin-v2 .dash-line-label{
    fill:#94a3b8;
    font-size:10px;
    font-weight:600;
}

body.stock-admin-v2 .dash-donut-wrap{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:16px;
}

body.stock-admin-v2 .dash-donut{
    width:118px;
    height:118px;
    border-radius:50%;
    display:grid;
    place-items:center;
    flex:0 0 auto;
    box-shadow:0 8px 24px rgba(15,23,42,.08);
}

body.stock-admin-v2 .dash-donut-hole{
    width:78px;
    height:78px;
    border-radius:50%;
    background:#fff;
    display:grid;
    place-content:center;
    text-align:center;
    box-shadow:inset 0 0 0 1px #e2e8f0;
}

body.stock-admin-v2 .dash-donut-hole strong{
    font-size:18px;
    font-weight:700;
    color:#0f172a;
    line-height:1.1;
}

body.stock-admin-v2 .dash-donut-hole span{
    margin-top:2px;
    font-size:10px;
    font-weight:600;
    color:#64748b;
}

body.stock-admin-v2 .dash-donut-legend{
    list-style:none;
    margin:0;
    padding:0;
    display:grid;
    gap:8px;
    flex:1 1 180px;
    min-width:0;
}

body.stock-admin-v2 .dash-donut-legend li{
    display:grid;
    grid-template-columns:auto 1fr auto;
    gap:8px;
    align-items:center;
    font-size:12px;
    color:#475569;
}

body.stock-admin-v2 .dash-donut-legend li i{
    width:10px;
    height:10px;
    border-radius:999px;
    display:block;
}

body.stock-admin-v2 .dash-donut-legend li em{
    font-style:normal;
    font-weight:700;
    color:#0f172a;
}

body.stock-admin-v2 .dash-donut-legend-badges li{
    grid-template-columns:auto 1fr auto;
}

body.stock-admin-v2 .dash-readiness-rings{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px;
    margin-bottom:14px;
}

body.stock-admin-v2 .dash-ring{
    --ring-color:#2563eb;
    aspect-ratio:1;
    max-width:108px;
    margin:0 auto;
    width:100%;
    border-radius:50%;
    background:conic-gradient(var(--ring-color) calc(var(--pct,0) * 1%), #eef2f7 0);
    display:grid;
    place-items:center;
    box-shadow:0 6px 18px rgba(15,23,42,.06);
}

body.stock-admin-v2 .dash-ring-inner{
    width:74%;
    height:74%;
    border-radius:50%;
    background:#fff;
    display:grid;
    place-content:center;
    text-align:center;
    box-shadow:inset 0 0 0 1px #e2e8f0;
    padding:4px;
}

body.stock-admin-v2 .dash-ring-inner strong{
    font-size:15px;
    font-weight:700;
    color:#0f172a;
    line-height:1.1;
}

body.stock-admin-v2 .dash-ring-inner span{
    margin-top:2px;
    font-size:9.5px;
    font-weight:600;
    color:#64748b;
    line-height:1.25;
}

body.stock-admin-v2 .dash-ring-summary{
    --ring-color:#ea580c;
}

body.stock-admin-v2 .dash-movement-flow{
    margin-top:14px;
    padding-top:14px;
    border-top:1px solid var(--admin-line,#e2e8f0);
}

body.stock-admin-v2 .dash-movement-flow-head{
    margin-bottom:10px!important;
}

body.stock-admin-v2 .dash-movement-flow-head h2{
    font-size:14px!important;
    margin:0!important;
}

body.stock-admin-v2 .dash-movement-flow-head p{
    font-size:12px!important;
    margin:2px 0 0!important;
}

body.stock-admin-v2 .dash-flow-bars{
    display:grid;
    gap:10px;
}

body.stock-admin-v2 .dash-flow-row{
    display:grid;
    grid-template-columns:72px minmax(0,1fr) auto;
    gap:10px;
    align-items:center;
}

body.stock-admin-v2 .dash-flow-row span{
    font-size:12px;
    font-weight:600;
    color:#64748b;
}

body.stock-admin-v2 .dash-flow-row em{
    font-style:normal;
    font-size:13px;
    font-weight:700;
    color:#0f172a;
}

body.stock-admin-v2 .dash-flow-track{
    height:10px;
    border-radius:999px;
    background:#eef2f7;
    overflow:hidden;
}

body.stock-admin-v2 .dash-flow-track i{
    display:block;
    height:100%;
    border-radius:inherit;
    min-width:4px;
}

body.stock-admin-v2 .dash-flow-in{background:linear-gradient(90deg,#16a34a,#22c55e);}
body.stock-admin-v2 .dash-flow-out{background:linear-gradient(90deg,#dc2626,#f87171);}
body.stock-admin-v2 .dash-flow-reserved{background:linear-gradient(90deg,#2563eb,#60a5fa);}

body.stock-admin-v2 .dashboard-task-bars{
    display:grid;
    gap:10px;
}

body.stock-admin-v2 .dashboard-task-bar-row{
    display:grid;
    grid-template-columns:minmax(120px,1.2fr) minmax(0,1fr) auto;
    gap:10px;
    align-items:center;
    padding:10px 12px;
    border:1px solid #dbeafe;
    border-radius:12px;
    background:#f8fafc;
    text-decoration:none;
    color:inherit;
    transition:background .14s ease,border-color .14s ease;
}

body.stock-admin-v2 .dashboard-task-bar-row:hover{
    background:#fff;
    border-color:#bfdbfe;
}

body.stock-admin-v2 .dashboard-task-bar-label{
    font-size:12.5px;
    font-weight:600;
    color:#334155;
    line-height:1.35;
}

body.stock-admin-v2 .dashboard-task-bar-track{
    height:8px;
    border-radius:999px;
    background:#e2e8f0;
    overflow:hidden;
}

body.stock-admin-v2 .dashboard-task-bar-track i{
    display:block;
    height:100%;
    border-radius:inherit;
    background:linear-gradient(90deg,#2563eb,#60a5fa);
    min-width:4px;
}

body.stock-admin-v2 .dashboard-task-bar-row.dashboard-task-orange .dashboard-task-bar-track i{
    background:linear-gradient(90deg,#ea580c,#fb923c);
}

body.stock-admin-v2 .dashboard-task-bar-row.dashboard-task-green .dashboard-task-bar-track i{
    background:linear-gradient(90deg,#16a34a,#4ade80);
}

body.stock-admin-v2 .dashboard-task-bar-row.dashboard-task-red .dashboard-task-bar-track i{
    background:linear-gradient(90deg,#dc2626,#f87171);
}

body.stock-admin-v2 .dashboard-task-bar-row strong{
    font-size:18px;
    font-weight:700;
    color:#0f172a;
    min-width:28px;
    text-align:right;
}

@media (max-width:1100px){
    body.stock-admin-v2 .dash-visual-row{
        grid-template-columns:1fr!important;
    }

    body.stock-admin-v2 .dash-readiness-rings{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media (max-width:640px){
    body.stock-admin-v2 .dash-donut-wrap{
        justify-content:center;
    }

    body.stock-admin-v2 .dash-readiness-rings{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    body.stock-admin-v2 .dashboard-task-bar-row,
    body.stock-admin-v2 .dash-flow-row{
        grid-template-columns:1fr auto;
        grid-template-rows:auto auto;
    }

    body.stock-admin-v2 .dashboard-task-bar-track,
    body.stock-admin-v2 .dash-flow-track{
        grid-column:1 / -1;
    }
}

/* Phase 4.3.133 - Value trend grouped bar chart (fix distorted line chart) */

body.stock-admin-v2 .dash-value-chart-wrap{
    border:1px solid var(--admin-line,#e2e8f0);
    border-radius:14px;
    background:linear-gradient(180deg,#fff 0%,#f8fafc 100%);
    padding:12px 14px 10px;
}

body.stock-admin-v2 .dash-value-chart-scale{
    display:flex;
    justify-content:space-between;
    gap:8px;
    margin-bottom:8px;
    padding:0 2px;
    font-size:10px;
    font-weight:600;
    color:#94a3b8;
}

body.stock-admin-v2 .dash-value-trend-chart{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(72px,1fr));
    gap:10px;
    align-items:end;
    min-height:190px;
    padding:8px 4px 0;
    border-top:1px solid #eef2f7;
    background-image:linear-gradient(#f8fafc 1px,transparent 1px);
    background-size:100% 25%;
}

body.stock-admin-v2 .dash-value-trend-col{
    display:grid;
    gap:6px;
    justify-items:center;
    min-width:0;
    align-content:end;
}

body.stock-admin-v2 .dash-value-trend-bars{
    display:flex;
    align-items:flex-end;
    justify-content:center;
    gap:6px;
    width:100%;
    height:150px;
}

body.stock-admin-v2 .dash-value-trend-bar{
    position:relative;
    flex:1 1 0;
    max-width:26px;
    min-height:3px;
    border-radius:8px 8px 4px 4px;
    display:flex;
    align-items:flex-start;
    justify-content:center;
    transition:height .2s ease;
}

body.stock-admin-v2 .dash-value-trend-bar span{
    position:absolute;
    top:-16px;
    left:50%;
    transform:translateX(-50%);
    font-size:9px;
    font-weight:700;
    color:#64748b;
    white-space:nowrap;
}

body.stock-admin-v2 .dash-value-trend-bar-pr{
    background:linear-gradient(180deg,#3b82f6 0%,#2563eb 100%);
    box-shadow:0 4px 12px rgba(37,99,235,.18);
}

body.stock-admin-v2 .dash-value-trend-bar-po{
    background:linear-gradient(180deg,#fb923c 0%,#ea580c 100%);
    box-shadow:0 4px 12px rgba(234,88,12,.18);
}

body.stock-admin-v2 .dash-value-trend-label{
    font-size:11px;
    font-weight:600;
    color:#64748b;
    text-align:center;
}

body.stock-admin-v2 .dash-value-trend-hint{
    font-size:10px;
    font-weight:600;
    color:#94a3b8;
    text-align:center;
    line-height:1.35;
    max-width:100%;
    word-break:break-word;
}

@media (max-width:640px){
    body.stock-admin-v2 .dash-value-trend-chart{
        grid-template-columns:repeat(3,minmax(0,1fr));
        min-height:170px;
    }

    body.stock-admin-v2 .dash-value-trend-bars{
        height:120px;
    }

    body.stock-admin-v2 .dash-value-trend-hint{
        display:none;
    }
}

/* Phase 4.3.135 - Dashboard layout reorder: priority-first, compact finance, full-width analytics */

body.stock-admin-v2 .dash-priority-zone{
    display:grid;
    grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);
    gap:14px;
}

body.stock-admin-v2 .dash-priority-zone .dash-tasks-panel,
body.stock-admin-v2 .dash-priority-zone .dash-quick-panel{
    min-width:0;
}

body.stock-admin-v2 .dash-alert-strip{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    padding:10px 12px;
    background:#fff7ed;
    border:1px solid #fed7aa;
    border-radius:var(--admin-radius-lg);
}

body.stock-admin-v2 .dash-alert-chip{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:6px 12px;
    border-radius:999px;
    background:#fff;
    border:1px solid #fdba74;
    text-decoration:none;
    transition:transform .12s ease,box-shadow .12s ease;
}

body.stock-admin-v2 .dash-alert-chip:hover{
    transform:translateY(-1px);
    box-shadow:0 2px 8px rgba(234,88,12,.12);
}

body.stock-admin-v2 .dash-alert-chip span{
    font-size:12px;
    font-weight:600;
    color:#9a3412;
}

body.stock-admin-v2 .dash-alert-chip strong{
    font-size:14px;
    font-weight:700;
    color:#c2410c;
}

body.stock-admin-v2 .dash-finance-strip{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
    padding:12px 14px;
    background:var(--admin-card);
    border:1px solid var(--admin-line);
    border-radius:var(--admin-radius-lg);
    box-shadow:var(--admin-shadow);
}

body.stock-admin-v2 .dash-finance-item{
    display:grid;
    gap:2px;
    min-width:0;
    padding:4px 8px;
    border-right:1px solid var(--admin-line);
}

body.stock-admin-v2 .dash-finance-item:last-child{
    border-right:none;
}

body.stock-admin-v2 .dash-finance-link{
    text-decoration:none;
    border-radius:8px;
    transition:background .12s ease;
}

body.stock-admin-v2 .dash-finance-link:hover{
    background:#f8fafc;
}

body.stock-admin-v2 .dash-finance-item span{
    font-size:11.5px;
    font-weight:600;
    color:var(--admin-muted);
    line-height:1.35;
}

body.stock-admin-v2 .dash-finance-item strong{
    font-size:18px;
    font-weight:700;
    color:var(--admin-ink);
    line-height:1.2;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}

body.stock-admin-v2 .dash-finance-item small{
    font-size:10.5px;
    color:#94a3b8;
    line-height:1.3;
}

body.stock-admin-v2 .dash-analytics{
    display:grid;
    grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);
    gap:14px;
    align-items:start;
}

body.stock-admin-v2 .dash-charts-panel{
    display:grid;
    gap:0;
    min-width:0;
}

body.stock-admin-v2 .dash-chart-block{
    min-width:0;
}

body.stock-admin-v2 .dash-chart-block-spaced{
    margin-top:18px;
    padding-top:16px;
    border-top:1px solid var(--admin-line);
}

body.stock-admin-v2 .dash-action-lists{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
}

body.stock-admin-v2 .dash-more-mini-grid{
    grid-template-columns:repeat(auto-fill,minmax(140px,1fr))!important;
}

body.stock-admin-v2 .dash-more-donuts{
    grid-template-columns:repeat(auto-fit,minmax(260px,1fr))!important;
}

@media (max-width:1100px){
    body.stock-admin-v2 .dash-priority-zone,
    body.stock-admin-v2 .dash-analytics,
    body.stock-admin-v2 .dash-action-lists{
        grid-template-columns:1fr!important;
    }

    body.stock-admin-v2 .dash-finance-strip{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    body.stock-admin-v2 .dash-finance-item:nth-child(2){
        border-right:none;
    }

    body.stock-admin-v2 .dash-finance-item:nth-child(odd){
        border-right:1px solid var(--admin-line);
    }

    body.stock-admin-v2 .dash-finance-item:nth-child(even){
        border-right:none;
    }
}

@media (max-width:640px){
    body.stock-admin-v2 .dash-kpi-row{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }

    body.stock-admin-v2 .dash-finance-strip{
        grid-template-columns:1fr;
    }

    body.stock-admin-v2 .dash-finance-item{
        border-right:none!important;
        border-bottom:1px solid var(--admin-line);
        padding-bottom:8px;
    }

    body.stock-admin-v2 .dash-finance-item:last-child{
        border-bottom:none;
        padding-bottom:4px;
    }

    body.stock-admin-v2 .dash-finance-item strong{
        font-size:16px;
    }
}

/* Phase 4.3.136 - Restore main pie chart, remove shortcut clutter */

body.stock-admin-v2 .dash-visual-row{
    grid-template-columns:minmax(280px,380px) minmax(0,1fr)!important;
    align-items:stretch!important;
}

body.stock-admin-v2 .dash-donut-main .dash-donut{
    width:148px;
    height:148px;
}

body.stock-admin-v2 .dash-donut-main .dash-donut-hole strong{
    font-size:22px;
}

body.stock-admin-v2 .dash-donut-main .dash-donut-legend{
    flex:1 1 180px;
}

body.stock-admin-v2 .dash-visual-row:has(.dash-donut-main):not(:has(.dash-trend-panel)){
    grid-template-columns:minmax(0,420px)!important;
}

body.stock-admin-v2 .dash-analytics:has(.dash-status-panel):not(:has(.dash-charts-panel)){
    grid-template-columns:1fr!important;
}

@media (max-width:1100px){
    body.stock-admin-v2 .dash-visual-row{
        grid-template-columns:1fr!important;
    }
}

/* Phase 4.3.137 - Admin tables/forms unified DataTables-like UI */

body.stock-admin-v2 .filter-bar{
    background:var(--admin-card)!important;
    border:1px solid var(--admin-line)!important;
    border-radius:var(--admin-radius-lg)!important;
    box-shadow:none!important;
}

body.stock-admin-v2 .filter-bar.filter-bar-compact{
    padding:12px 12px!important;
}

body.stock-admin-v2 .filter-bar .filter-keyword{
    max-width:unset!important;
}

body.stock-admin-v2 .input,
body.stock-admin-v2 .select,
body.stock-admin-v2 .form-control,
body.stock-admin-v2 textarea{
    border:1px solid var(--admin-line)!important;
    border-radius:var(--admin-radius)!important;
    background:#fff!important;
    box-shadow:none!important;
    color:var(--admin-ink)!important;
    outline:none!important;
}

body.stock-admin-v2 .input-compact,
body.stock-admin-v2 .select-compact{
    min-height:38px!important;
    padding:8px 10px!important;
    border-radius:var(--admin-radius)!important;
}

body.stock-admin-v2 .input:focus,
body.stock-admin-v2 .select:focus,
body.stock-admin-v2 .form-control:focus,
body.stock-admin-v2 textarea:focus{
    border-color:#93c5fd!important;
    box-shadow:0 0 0 4px rgba(219,234,254,.85)!important;
}

/* CoreTable (local DataTables-like) theme for admin pages */
body.stock-admin-v2 .core-table-shell>.table-wrap,
body.stock-admin-v2 .core-table-shell>.table-container{
    overflow:auto!important;
    border:1px solid var(--admin-line)!important;
    border-radius:var(--admin-radius-lg)!important;
    background:#fff!important;
}

body.stock-admin-v2 .core-table-toolbar{
    padding:12px 14px!important;
    border:1px solid var(--admin-line)!important;
    border-radius:var(--admin-radius-lg)!important;
    background:var(--admin-card)!important;
    margin:0 0 12px!important;
    box-shadow:none!important;
}

body.stock-admin-v2 .core-table-search,
body.stock-admin-v2 .core-table-page-size{
    height:44px!important;
    border:1px solid var(--admin-line)!important;
    border-radius:14px!important;
    background:#fff!important;
    box-shadow:none!important;
    color:var(--admin-ink)!important;
}

body.stock-admin-v2 .core-table-search:focus{
    border-color:#93c5fd!important;
    box-shadow:0 0 0 4px rgba(219,234,254,.85)!important;
}

body.stock-admin-v2 .core-table-info{
    color:var(--admin-muted)!important;
}

body.stock-admin-v2 .core-table-page{
    border:1px solid var(--admin-line)!important;
    border-radius:14px!important;
    background:#fff!important;
}

body.stock-admin-v2 .core-table-page:hover{
    border-color:#bfdbfe!important;
    background:#eff6ff!important;
    color:#1d4ed8!important;
}

body.stock-admin-v2 .core-table-page.active{
    background:#0f172a!important;
    border-color:#0f172a!important;
    color:#fff!important;
}

body.stock-admin-v2 .core-sortable{
    color:inherit!important;
}

body.stock-admin-v2 .core-sortable:before{
    border-bottom-color:#94a3b8!important;
}

body.stock-admin-v2 .core-sortable:after{
    border-top-color:#94a3b8!important;
}

body.stock-admin-v2 .core-sortable.sort-asc:before{
    border-bottom-color:#2563eb!important;
}

body.stock-admin-v2 .core-sortable.sort-desc:after{
    border-top-color:#2563eb!important;
}

body.stock-admin-v2 .core-table-empty-row td{
    background:#f8fafc!important;
    border-bottom:none!important;
    color:var(--admin-muted)!important;
}

body.stock-admin-v2 .core-table-pagination{
    margin-top:12px!important;
}

/* Phase 4.3.138 - System button redesign (clear intent colors, high contrast) */

body.stock-admin-v2{
    --btn-primary-bg:#1d4ed8;
    --btn-primary-border:#1e40af;
    --btn-primary-text:#ffffff;
    --btn-secondary-bg:#ffffff;
    --btn-secondary-border:#dbe4ef;
    --btn-secondary-text:#0f172a;
    --btn-success-bg:#22c55e;
    --btn-success-border:#16a34a;
    --btn-success-text:#ffffff;
    --btn-warning-bg:#d97706;
    --btn-warning-border:#b45309;
    --btn-warning-text:#ffffff;
    --btn-danger-bg:#dc2626;
    --btn-danger-border:#b91c1c;
    --btn-danger-text:#ffffff;
    --btn-info-bg:#0ea5e9;
    --btn-info-border:#0284c7;
    --btn-info-text:#ffffff;
}

body.stock-admin-v2 .button,
body.stock-admin-v2 .btn,
body.stock-admin-v2 .btn-core{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:7px!important;
    min-height:36px!important;
    padding:8px 12px!important;
    border-width:1px!important;
    border-style:solid!important;
    border-radius:12px!important;
    font-size:12.5px!important;
    font-weight:700!important;
    line-height:1.25!important;
    letter-spacing:.01em!important;
    text-decoration:none!important;
    white-space:nowrap!important;
    transition:background-color .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease,transform .08s ease!important;
}

body.stock-admin-v2 .button:focus-visible,
body.stock-admin-v2 .btn:focus-visible,
body.stock-admin-v2 .btn-core:focus-visible{
    outline:none!important;
    box-shadow:0 0 0 3px rgba(59,130,246,.3)!important;
}

body.stock-admin-v2 .button:active,
body.stock-admin-v2 .btn:active,
body.stock-admin-v2 .btn-core:active{
    transform:translateY(1px)!important;
}

/* Secondary / neutral actions */
body.stock-admin-v2 .button-secondary,
body.stock-admin-v2 .btn-secondary,
body.stock-admin-v2 .btn.ghost,
body.stock-admin-v2 .btn.secondary,
body.stock-admin-v2 .btn:not(.primary):not(.success):not(.warning):not(.danger):not(.info){
    background:var(--btn-secondary-bg)!important;
    border-color:var(--btn-secondary-border)!important;
    color:var(--btn-secondary-text)!important;
}

body.stock-admin-v2 .button-secondary:hover,
body.stock-admin-v2 .btn-secondary:hover,
body.stock-admin-v2 .btn.ghost:hover,
body.stock-admin-v2 .btn.secondary:hover,
body.stock-admin-v2 .btn:not(.primary):not(.success):not(.warning):not(.danger):not(.info):hover{
    background:var(--btn-secondary-hover-bg,#f1f5f9)!important;
    border-color:var(--btn-secondary-hover-border,#cbd5e1)!important;
    color:var(--btn-secondary-hover-text,#020617)!important;
}

/* Primary: create/main flow */
body.stock-admin-v2 .button-primary,
body.stock-admin-v2 .btn.primary,
body.stock-admin-v2 .btn-primary{
    background:var(--btn-primary-bg)!important;
    border-color:var(--btn-primary-border)!important;
    color:var(--btn-primary-text)!important;
    box-shadow:var(--btn-primary-shadow,0 8px 18px rgba(29,78,216,.2))!important;
}

body.stock-admin-v2 .button-primary:hover,
body.stock-admin-v2 .btn.primary:hover,
body.stock-admin-v2 .btn-primary:hover{
    background:var(--btn-primary-hover)!important;
    border-color:var(--btn-primary-hover)!important;
    color:var(--btn-primary-text)!important;
}

/* Success: approve/confirm completion */
body.stock-admin-v2 .button-success,
body.stock-admin-v2 .btn.success,
body.stock-admin-v2 .btn-success{
    background:var(--btn-success-bg)!important;
    border-color:var(--btn-success-border)!important;
    color:var(--btn-success-text)!important;
    box-shadow:none!important;
}

body.stock-admin-v2 .button-success:hover,
body.stock-admin-v2 .btn.success:hover,
body.stock-admin-v2 .btn-success:hover{
    background:var(--btn-success-hover)!important;
    border-color:var(--btn-success-hover)!important;
    color:var(--btn-success-text)!important;
}

/* Warning: pending/attention actions */
body.stock-admin-v2 .button-warning,
body.stock-admin-v2 .btn.warn,
body.stock-admin-v2 .btn-warning{
    background:var(--btn-warning-bg)!important;
    border-color:var(--btn-warning-border)!important;
    color:var(--btn-warning-text)!important;
    box-shadow:none!important;
}

body.stock-admin-v2 .button-warning:hover,
body.stock-admin-v2 .btn.warn:hover,
body.stock-admin-v2 .btn-warning:hover{
    background:var(--btn-warning-hover)!important;
    border-color:var(--btn-warning-hover)!important;
    color:var(--btn-warning-text)!important;
}

/* Danger: delete/cancel/reject */
body.stock-admin-v2 .button-danger,
body.stock-admin-v2 .btn.danger,
body.stock-admin-v2 .btn-danger{
    background:var(--btn-danger-bg)!important;
    border-color:var(--btn-danger-border)!important;
    color:var(--btn-danger-text)!important;
    box-shadow:none!important;
}

body.stock-admin-v2 .button-danger:hover,
body.stock-admin-v2 .btn.danger:hover,
body.stock-admin-v2 .btn-danger:hover{
    background:var(--btn-danger-hover)!important;
    border-color:var(--btn-danger-hover)!important;
    color:var(--btn-danger-text)!important;
}

/* Info: utility/auxiliary actions */
body.stock-admin-v2 .button-info,
body.stock-admin-v2 .btn.info,
body.stock-admin-v2 .btn-info{
    background:var(--btn-info-bg)!important;
    border-color:var(--btn-info-border)!important;
    color:var(--btn-info-text)!important;
}

body.stock-admin-v2 .button-info:hover,
body.stock-admin-v2 .btn.info:hover,
body.stock-admin-v2 .btn-info:hover{
    background:var(--btn-info-hover)!important;
    border-color:var(--btn-info-hover)!important;
    color:var(--btn-info-text)!important;
}

body.stock-admin-v2 .button-sm,
body.stock-admin-v2 .btn.small,
body.stock-admin-v2 .btn-sm{
    min-height:30px!important;
    padding:5px 9px!important;
    border-radius:10px!important;
    font-size:11.5px!important;
}

body.stock-admin-v2 .button-xs,
body.stock-admin-v2 .btn-xs{
    min-height:26px!important;
    padding:4px 8px!important;
    border-radius:9px!important;
    font-size:11px!important;
}

body.stock-admin-v2 .button[disabled],
body.stock-admin-v2 .btn[disabled],
body.stock-admin-v2 .btn-core[disabled],
body.stock-admin-v2 fieldset[disabled] .button,
body.stock-admin-v2 fieldset[disabled] .btn{
    opacity:.55!important;
    cursor:not-allowed!important;
    box-shadow:none!important;
    transform:none!important;
    filter:grayscale(.1);
}

/* Phase 4.3.139 - Admin file upload controls (match button/input/textarea theme) */

body.stock-admin-v2 .stock-upload-card{
    border:1px solid var(--admin-line)!important;
    background:#fff!important;
    border-radius:var(--admin-radius-lg)!important;
    box-shadow:none!important;
}

body.stock-admin-v2 .stock-upload-head{
    margin-bottom:10px!important;
}

body.stock-admin-v2 .stock-upload-help{
    color:var(--admin-muted)!important;
}

body.stock-admin-v2 .stock-upload-count{
    background:#f8fafc!important;
    border:1px solid var(--admin-line)!important;
    color:#475569!important;
}

body.stock-admin-v2 .stock-upload-dropzone{
    border-color:rgba(37,99,235,.35)!important;
    background:#f8fafc!important;
    color:var(--admin-ink)!important;
    border-radius:14px!important;
}

body.stock-admin-v2 .stock-upload-dropzone:hover,
body.stock-admin-v2 .stock-upload-card.is-dragover .stock-upload-dropzone{
    background:#eff6ff!important;
    border-color:#60a5fa!important;
    box-shadow:0 0 0 3px rgba(37,99,235,.08)!important;
}

body.stock-admin-v2 .stock-upload-icon{
    border:1px solid var(--admin-line)!important;
    background:var(--admin-card)!important;
}

body.stock-admin-v2 .stock-upload-sub{
    color:var(--admin-muted)!important;
}

body.stock-admin-v2 .stock-upload-file{
    border:1px solid var(--admin-line)!important;
    background:#fff!important;
    border-radius:14px!important;
}

body.stock-admin-v2 .stock-upload-file-size{
    color:var(--admin-muted)!important;
}

body.stock-admin-v2 .stock-upload-remove{
    border-color:#fecaca!important;
    background:#fff!important;
    color:#b91c1c!important;
    border-radius:10px!important;
    padding:6px 10px!important;
    min-height:30px!important;
    font-weight:800!important;
}

body.stock-admin-v2 .stock-upload-remove:hover{
    background:#fef2f2!important;
}

/* Phase 4.3.140 - Materials page + month-movement modal: cohesive theme, clear semantics */

body.stock-admin-v2 .material-action-row .button{
    box-shadow:none!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-modal-panel{
    border:1px solid var(--admin-line,#dbe4ef)!important;
    border-radius:20px!important;
    box-shadow:0 28px 80px rgba(6,27,58,.28)!important;
    background:#fff!important;
    width:90%!important;
    max-width:90%!important;
}
body.stock-admin-v2 .material-month-modal-panel{
    width:90%!important;
    max-width:90%!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-modal-header{
    background:linear-gradient(135deg,#061b3a 0%,#0b3a6e 55%,#0758b8 100%)!important;
    color:#fff!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-modal-kicker{
    background:rgba(255,255,255,.14)!important;
    color:#e2e8f0!important;
    border:1px solid rgba(255,255,255,.18);
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-modal-body{
    background:#f8fafc!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-info{
    border:1px solid var(--admin-line,#dbe4ef)!important;
    background:#fff!important;
    box-shadow:none!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-info span{
    color:#64748b!important;
    font-weight:700!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-info strong{
    color:#0f172a!important;
}

/* KPI cards: semantic + readable (legacy only) */
html:not(.theme-engine) body.stock-admin-v2 .material-month-kpis>div,
html:not(.theme-engine) body.stock-admin-v2 .material-month-kpis-reserved>div{
    border:1px solid var(--admin-line,#dbe4ef)!important;
    box-shadow:none!important;
    background:#fff!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-kpis span{
    color:#475569!important;
    font-weight:700!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-kpis em{
    color:#64748b!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-kpis .is-opening{
    background:#f8fafc!important;
}
html:not(.theme-engine) body.stock-admin-v2 .material-month-kpis .is-opening strong{
    color:#334155!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-kpis .is-available{
    background:#f0fdf4!important;
    border-color:#bbf7d0!important;
}
html:not(.theme-engine) body.stock-admin-v2 .material-month-kpis .is-available strong{
    color:#166534!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-kpis .is-reserved{
    background:#fffbeb!important;
    border-color:#fde68a!important;
}
html:not(.theme-engine) body.stock-admin-v2 .material-month-kpis .is-reserved strong{
    color:#b45309!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-kpis .is-ending{
    background:#eff6ff!important;
    border-color:#bfdbfe!important;
}
html:not(.theme-engine) body.stock-admin-v2 .material-month-kpis .is-ending strong{
    color:#1e40af!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-kpis .is-in{
    background:#f0f9ff!important;
    border-color:#bae6fd!important;
}
html:not(.theme-engine) body.stock-admin-v2 .material-month-kpis .is-in strong{
    color:#0369a1!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-kpis .is-out{
    background:#fef2f2!important;
    border-color:#fecaca!important;
}
html:not(.theme-engine) body.stock-admin-v2 .material-month-kpis .is-out strong{
    color:#b91c1c!important;
}

/* Formula strip: calm theme, high contrast (legacy only) */
html:not(.theme-engine) body.stock-admin-v2 .material-month-formula{
    border:1px solid #bfdbfe!important;
    background:#eff6ff!important;
    box-shadow:none!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-formula span{
    background:#1d4ed8!important;
    color:#fff!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-formula strong{
    color:#0f172a!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-formula em{
    color:#1e40af!important;
}

/* Table chrome */
html:not(.theme-engine) body.stock-admin-v2 .material-month-table-wrap{
    border:1px solid var(--admin-line,#dbe4ef)!important;
    box-shadow:none!important;
    background:#fff!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table-wrap::before{
    background:#061b3a!important;
    color:#fff!important;
    border-bottom:1px solid rgba(255,255,255,.12)!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table-wrap::after{
    background:#f8fafc!important;
    color:#64748b!important;
    border-top:1px solid var(--admin-line,#dbe4ef)!important;
}

/* Legend: same semantics as KPI/columns (legacy only) */
html:not(.theme-engine) body.stock-admin-v2 .material-month-table-legend span,
html:not(.theme-engine) body.stock-admin-v2 .material-month-table-legend-fit span{
    border:1px solid transparent!important;
    font-weight:700!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table-legend .legend-opening,
html:not(.theme-engine) body.stock-admin-v2 .material-month-table-legend-fit .legend-opening{
    background:#f1f5f9!important;
    color:#334155!important;
    border-color:#cbd5e1!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table-legend .legend-in,
html:not(.theme-engine) body.stock-admin-v2 .material-month-table-legend-fit .legend-in{
    background:#e0f2fe!important;
    color:#075985!important;
    border-color:#7dd3fc!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table-legend .legend-out,
html:not(.theme-engine) body.stock-admin-v2 .material-month-table-legend-fit .legend-out{
    background:#fee2e2!important;
    color:#991b1b!important;
    border-color:#fca5a5!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table-legend .legend-balance,
html:not(.theme-engine) body.stock-admin-v2 .material-month-table-legend-fit .legend-balance{
    background:#dbeafe!important;
    color:#1e40af!important;
    border-color:#93c5fd!important;
}

/* Flat table headers: only when theme-engine is off (theme uses admin-shell) */
html:not(.theme-engine) body.stock-admin-v2 .material-month-table thead.material-month-head-flat th.meta,
html:not(.theme-engine) body.stock-admin-v2 .material-month-table thead.material-month-head-flat th.desc-head{
    background:#061b3a!important;
    color:#fff!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table thead.material-month-head-flat th.opening,
html:not(.theme-engine) body.stock-admin-v2 .material-month-table thead .group-opening,
html:not(.theme-engine) body.stock-admin-v2 .material-month-table thead .opening{
    background:#334155!important;
    color:#fff!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table thead.material-month-head-flat th.in,
html:not(.theme-engine) body.stock-admin-v2 .material-month-table thead .group-in,
html:not(.theme-engine) body.stock-admin-v2 .material-month-table thead .in{
    background:#0369a1!important;
    color:#fff!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table thead.material-month-head-flat th.out,
html:not(.theme-engine) body.stock-admin-v2 .material-month-table thead .group-out,
html:not(.theme-engine) body.stock-admin-v2 .material-month-table thead .out{
    background:#b91c1c!important;
    color:#fff!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table thead.material-month-head-flat th.balance,
html:not(.theme-engine) body.stock-admin-v2 .material-month-table thead .group-balance,
html:not(.theme-engine) body.stock-admin-v2 .material-month-table thead .balance{
    background:#1d4ed8!important;
    color:#fff!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table thead.material-month-head-flat th.balance small,
html:not(.theme-engine) body.stock-admin-v2 .material-month-table thead .group-balance span{
    color:#fff!important;
    background:rgba(255,255,255,.16)!important;
    border-color:rgba(255,255,255,.22)!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table td.in{
    color:#0369a1!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table td.out{
    color:#b91c1c!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table td.balance{
    color:#1e40af!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-doc{
    color:#1d4ed8!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table tbody tr.is-opening td{
    background:#f8fafc!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table tbody tr.is-closing td{
    background:#eff6ff!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-modal-footer{
    background:#fff!important;
    border-top:1px solid var(--admin-line,#dbe4ef)!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-modal-footer .button-primary{
    background:var(--btn-primary-bg,#1d4ed8)!important;
    border-color:var(--btn-primary-border,#1e40af)!important;
    color:var(--btn-primary-text,#fff)!important;
    box-shadow:var(--btn-primary-shadow,0 8px 18px rgba(29,78,216,.2))!important;
}

/* Phase 4.3.141 - PR low-stock modal: readable header + fixed checkbox mark */

body.stock-admin-v2 .pr-low-stock-modal-head{
    background:linear-gradient(135deg,#061b3a 0%,#0b3a6e 55%,#0758b8 100%)!important;
    color:#fff!important;
    border-bottom:1px solid rgba(255,255,255,.12)!important;
}

body.stock-admin-v2 .pr-low-stock-modal-head .pr-low-stock-kicker{
    background:rgba(255,255,255,.16)!important;
    color:#f8fafc!important;
    border:1px solid rgba(255,255,255,.28)!important;
    font-weight:700!important;
}

body.stock-admin-v2 .pr-low-stock-modal-head h3{
    color:#ffffff!important;
    text-shadow:none!important;
    font-weight:800!important;
    letter-spacing:.01em!important;
}

body.stock-admin-v2 .pr-low-stock-modal-head p{
    color:#e2e8f0!important;
    font-weight:600!important;
    opacity:1!important;
}

body.stock-admin-v2 .pr-low-stock-modal-close{
    background:rgba(255,255,255,.14)!important;
    border:1px solid rgba(255,255,255,.35)!important;
    color:#fff!important;
}

body.stock-admin-v2 .pr-low-stock-modal-close:hover,
body.stock-admin-v2 .pr-low-stock-modal-close:focus-visible{
    background:#fff!important;
    color:#061b3a!important;
}

/* Custom checkbox: CSS checkmark (no broken glyph) */
body.stock-admin-v2 .pr-low-stock-check span{
    position:relative!important;
    width:22px!important;
    height:22px!important;
    border-radius:7px!important;
    border:2px solid #94a3b8!important;
    background:#fff!important;
    box-shadow:none!important;
}

body.stock-admin-v2 .pr-low-stock-check input:checked + span{
    background:#1d4ed8!important;
    border-color:#1d4ed8!important;
}

body.stock-admin-v2 .pr-low-stock-check input:checked + span::after{
    content:""!important;
    position:absolute!important;
    left:6px!important;
    top:2px!important;
    width:6px!important;
    height:11px!important;
    border:solid #fff!important;
    border-width:0 2.5px 2.5px 0!important;
    transform:rotate(45deg)!important;
    display:block!important;
    font-size:0!important;
    line-height:0!important;
    font-weight:normal!important;
    place-items:unset!important;
}

body.stock-admin-v2 .pr-low-stock-modal-card:has(.pr-low-stock-check input:checked){
    border-color:#93c5fd!important;
    box-shadow:0 0 0 2px rgba(37,99,235,.18)!important;
}

body.stock-admin-v2 .pr-low-stock-modal-card .button.button-secondary{
    border-color:#93c5fd!important;
    color:#1d4ed8!important;
    background:#fff!important;
}

body.stock-admin-v2 .pr-low-stock-modal-card .button.button-secondary:hover,
body.stock-admin-v2 .pr-low-stock-modal-card .button.button-secondary:focus-visible{
    background:#eff6ff!important;
    border-color:#1d4ed8!important;
    color:#1e40af!important;
}

/* Phase 4.3.143 - Material month table panel redesign */

body.stock-admin-v2 .material-month-table-panel{
    display:grid!important;
    gap:0!important;
    border:1px solid var(--admin-line,#dbe4ef)!important;
    border-radius:16px!important;
    background:#fff!important;
    overflow:hidden!important;
    min-width:0!important;
}

body.stock-admin-v2 .material-month-table-toolbar{
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:10px 14px!important;
    padding:10px 12px!important;
    background:#f8fafc!important;
    border-bottom:1px solid var(--admin-line,#dbe4ef)!important;
}

body.stock-admin-v2 .material-month-table-title{
    font-size:13px!important;
    font-weight:800!important;
    color:#0f172a!important;
}

body.stock-admin-v2 .material-month-table-legend,
body.stock-admin-v2 .material-month-table-legend-fit{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:6px!important;
    padding:0!important;
    background:transparent!important;
    border:0!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table-legend span,
html:not(.theme-engine) body.stock-admin-v2 .material-month-table-legend-fit span{
    min-height:24px!important;
    padding:4px 9px!important;
    border-radius:999px!important;
    border:1px solid transparent!important;
    font-size:11px!important;
    font-weight:700!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table-legend .legend-opening,
html:not(.theme-engine) body.stock-admin-v2 .material-month-table-legend-fit .legend-opening{
    background:#f1f5f9!important;
    color:#334155!important;
    border-color:#cbd5e1!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table-legend .legend-in,
html:not(.theme-engine) body.stock-admin-v2 .material-month-table-legend-fit .legend-in{
    background:#e0f2fe!important;
    color:#075985!important;
    border-color:#7dd3fc!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table-legend .legend-out,
html:not(.theme-engine) body.stock-admin-v2 .material-month-table-legend-fit .legend-out{
    background:#fee2e2!important;
    color:#991b1b!important;
    border-color:#fca5a5!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table-legend .legend-balance,
html:not(.theme-engine) body.stock-admin-v2 .material-month-table-legend-fit .legend-balance{
    background:#dbeafe!important;
    color:#1e40af!important;
    border-color:#93c5fd!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table-wrap{
    position:relative!important;
    width:100%!important;
    max-width:100%!important;
    max-height:min(44vh,420px)!important;
    overflow:auto!important;
    border:0!important;
    border-radius:0!important;
    background:#fff!important;
    box-shadow:none!important;
    -webkit-overflow-scrolling:touch!important;
}
body.stock-admin-v2 .material-month-table-wrap{
    position:relative!important;
    width:100%!important;
    max-width:100%!important;
    max-height:min(44vh,420px)!important;
    overflow:auto!important;
    -webkit-overflow-scrolling:touch!important;
}

body.stock-admin-v2 .material-month-table-wrap::before,
body.stock-admin-v2 .material-month-table-wrap::after{
    content:none!important;
    display:none!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table-hint{
    padding:8px 12px!important;
    border-top:1px solid var(--admin-line,#dbe4ef)!important;
    background:#f8fafc!important;
    color:#64748b!important;
    font-size:11.5px!important;
    font-weight:600!important;
}

body.stock-admin-v2 .material-month-table,
body.stock-admin-v2 .material-month-table.material-month-table-fit{
    width:max-content!important;
    min-width:100%!important;
    max-width:none!important;
    table-layout:auto!important;
    border-collapse:separate!important;
    border-spacing:0!important;
    font-size:12px!important;
}

body.stock-admin-v2 .material-month-table thead.material-month-head-flat th,
body.stock-admin-v2 .material-month-table thead.material-month-head-fit th{
    position:sticky!important;
    top:0!important;
    z-index:3!important;
    height:auto!important;
    min-height:40px!important;
    padding:8px 10px!important;
    text-align:center!important;
    vertical-align:middle!important;
    white-space:nowrap!important;
    font-size:11px!important;
    font-weight:700!important;
    line-height:1.2!important;
    border-right:1px solid rgba(255,255,255,.18)!important;
    border-bottom:1px solid rgba(255,255,255,.18)!important;
}
html:not(.theme-engine) body.stock-admin-v2 .material-month-table thead.material-month-head-flat th,
html:not(.theme-engine) body.stock-admin-v2 .material-month-table thead.material-month-head-fit th{
    color:#fff!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table thead th small{
    display:block!important;
    margin-top:2px!important;
    font-size:10px!important;
    font-weight:600!important;
    color:rgba(255,255,255,.92)!important;
    opacity:1!important;
}
html.theme-engine body.stock-admin-v2 .material-month-table thead th small{
    display:block!important;
    margin-top:2px!important;
    font-size:10px!important;
    font-weight:600!important;
    opacity:.85!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table thead th.meta,
html:not(.theme-engine) body.stock-admin-v2 .material-month-table thead th.desc-head{
    background:#061b3a!important;
    color:#fff!important;
    min-width:110px!important;
}

body.stock-admin-v2 .material-month-table thead th.desc-head{
    min-width:160px!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table thead th.opening{
    background:#475569!important;
    color:#fff!important;
    min-width:84px!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table thead th.in{
    background:#0369a1!important;
    color:#fff!important;
    min-width:84px!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table thead th.out{
    background:#b91c1c!important;
    color:#fff!important;
    min-width:84px!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table thead th.balance{
    background:#1d4ed8!important;
    color:#fff!important;
    min-width:84px!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table tbody td{
    padding:8px 10px!important;
    border-right:1px solid #e2e8f0!important;
    border-bottom:1px solid #e2e8f0!important;
    background:#fff!important;
    color:#0f172a!important;
    font-size:12px!important;
    vertical-align:middle!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table tbody tr:nth-child(even) td{
    background:#f8fafc!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table tbody tr:hover td{
    background:#eff6ff!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table tbody tr.is-opening td{
    background:#f1f5f9!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table tbody tr.is-closing td{
    background:#eff6ff!important;
}

body.stock-admin-v2 .material-month-table td.num{
    text-align:right!important;
    font-variant-numeric:tabular-nums!important;
    white-space:nowrap!important;
    min-width:78px!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table td.in{
    color:#0c4a6e!important;
    font-weight:700!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table td.out{
    color:#991b1b!important;
    font-weight:700!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table td.balance{
    color:#1e3a8a!important;
    font-weight:800!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table td.desc{
    min-width:160px!important;
    max-width:240px!important;
    white-space:normal!important;
    color:#334155!important;
    line-height:1.4!important;
}
body.stock-admin-v2 .material-month-table td.desc{
    min-width:160px!important;
    max-width:240px!important;
    white-space:normal!important;
    line-height:1.4!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-doc{
    color:#1d4ed8!important;
    font-weight:700!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-empty{
    text-align:center!important;
    color:#64748b!important;
    padding:24px 12px!important;
    background:#f8fafc!important;
}
body.stock-admin-v2 .material-month-empty{
    text-align:center!important;
    padding:24px 12px!important;
}
body.stock-admin-v2 .material-month-doc{
    font-weight:700!important;
}

@media (max-width:760px){
    body.stock-admin-v2 .material-month-table-toolbar{
        flex-direction:column!important;
        align-items:flex-start!important;
    }

    body.stock-admin-v2 .material-month-table-wrap{
        max-height:48vh!important;
    }
}

/* Phase 4.3.142 - Materials month modal: fit in content area (no sidebar overlap) + readable type */

@media (min-width:1101px){
    body.stock-admin-v2 .material-month-modal{
        left:var(--admin-sidebar-w,252px)!important;
        right:0!important;
        width:auto!important;
        inset:0 0 0 var(--admin-sidebar-w,252px)!important;
        padding:16px 18px!important;
        z-index:65!important;
        box-sizing:border-box!important;
    }

    body.stock-admin-v2 .material-month-modal-backdrop{
        left:0!important;
        right:0!important;
        width:100%!important;
    }

    body.stock-admin-v2 .material-month-modal-panel{
        width:90%!important;
        max-width:90%!important;
        max-height:calc(100dvh - 32px)!important;
        border-radius:18px!important;
        margin:0 auto!important;
    }
}

@media (max-width:1100px){
    body.stock-admin-v2 .material-month-modal{
        inset:0!important;
        padding:10px!important;
        z-index:1300!important;
    }

    body.stock-admin-v2 .material-month-modal-panel{
        width:90%!important;
        max-width:90%!important;
        max-height:calc(100dvh - 20px)!important;
    }
}

body.stock-admin-v2 .material-month-modal-header{
    padding:12px 16px!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-modal-header h2{
    color:#ffffff!important;
    font-size:18px!important;
    font-weight:800!important;
    line-height:1.3!important;
    text-shadow:none!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-modal-kicker{
    color:#f8fafc!important;
    font-size:11px!important;
    font-weight:700!important;
}

body.stock-admin-v2 .material-month-modal-body{
    padding:14px 16px!important;
}

body.stock-admin-v2 .material-month-kpis>div,
body.stock-admin-v2 .material-month-kpis-reserved>div{
    min-height:88px!important;
    padding:12px 10px!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-kpis span{
    font-size:12px!important;
    color:#334155!important;
}

body.stock-admin-v2 .material-month-kpis strong,
body.stock-admin-v2 .material-month-kpis-reserved strong{
    font-size:22px!important;
    line-height:1.15!important;
}

body.stock-admin-v2 .material-month-kpis em{
    font-size:11px!important;
}

body.stock-admin-v2 .material-month-formula{
    padding:10px 12px!important;
    margin:0 0 12px!important;
}

body.stock-admin-v2 .material-month-formula span,
body.stock-admin-v2 .material-month-formula strong,
body.stock-admin-v2 .material-month-formula em{
    font-size:12.5px!important;
}

body.stock-admin-v2 .material-month-table-wrap{
    max-height:42vh!important;
}

body.stock-admin-v2 .material-month-table{
    min-width:1100px!important;
    font-size:12px!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table thead.material-month-head-flat th,
html:not(.theme-engine) body.stock-admin-v2 .material-month-table thead th{
    color:#ffffff!important;
    font-size:11px!important;
    font-weight:700!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table thead.material-month-head-flat th small{
    color:rgba(255,255,255,.92)!important;
    font-weight:600!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table tbody td{
    color:#0f172a!important;
    font-size:12px!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table td.in{
    color:#0c4a6e!important;
    font-weight:700!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table td.out{
    color:#991b1b!important;
    font-weight:700!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-table td.balance{
    color:#1e3a8a!important;
    font-weight:800!important;
}

html:not(.theme-engine) body.stock-admin-v2 .material-month-doc{
    color:#1d4ed8!important;
}

body.stock-admin-v2 .material-month-date-note{
    color:#475569!important;
    font-size:11.5px!important;
}

body.stock-admin-v2 .material-month-modal-footer{
    padding:10px 16px!important;
}

/* Phase 4.3.144 - Unify every .table-wrap to materials list chrome */

body.stock-admin-v2 .table-wrap,
body.stock-admin-v2 .table-container,
body.stock-admin-v2 .core-table-wrapper,
body.stock-admin-v2 .core-table-shell > .table-wrap,
body.stock-admin-v2 .core-table-shell > .table-container{
    border:1px solid var(--admin-line,#dbe4ef)!important;
    border-radius:var(--admin-radius-lg,20px)!important;
    overflow:auto!important;
    background:#fff!important;
    box-shadow:none!important;
    max-width:100%!important;
    -webkit-overflow-scrolling:touch;
}

body.stock-admin-v2 .table-wrap > table,
body.stock-admin-v2 .table-container > table,
body.stock-admin-v2 .core-table-wrapper > table,
body.stock-admin-v2 .core-table-shell table{
    width:100%!important;
    min-width:100%!important;
    border-collapse:collapse!important;
    background:#fff!important;
    font-size:13px!important;
}

body.stock-admin-v2 .table-wrap thead th,
body.stock-admin-v2 .table-container thead th,
body.stock-admin-v2 .core-table-wrapper thead th,
body.stock-admin-v2 .core-table-shell thead th,
body.stock-admin-v2 table[data-core-table] thead th,
body.stock-admin-v2 table.data-table thead th,
body.stock-admin-v2 table.core-table thead th,
body.stock-admin-v2 table.material-data-table thead th,
body.stock-admin-v2 table.master-data-table thead th{
    background:linear-gradient(180deg,#082b5d 0%,#061b3a 100%)!important;
    color:#fff!important;
    border-bottom:0!important;
    font-weight:700!important;
    font-size:12px!important;
    letter-spacing:.02em!important;
    white-space:nowrap!important;
    padding:12px 14px!important;
    height:auto!important;
    text-transform:none!important;
    text-align:left!important;
}

body.stock-admin-v2 .table-wrap tbody td,
body.stock-admin-v2 .table-container tbody td,
body.stock-admin-v2 .core-table-wrapper tbody td,
body.stock-admin-v2 .core-table-shell tbody td,
body.stock-admin-v2 table[data-core-table] tbody td,
body.stock-admin-v2 table.data-table tbody td,
body.stock-admin-v2 table.core-table tbody td,
body.stock-admin-v2 table.material-data-table tbody td,
body.stock-admin-v2 table.master-data-table tbody td{
    padding:12px 14px!important;
    border-bottom:1px solid #e5f1ff!important;
    color:#334155!important;
    vertical-align:middle!important;
    background:#fff!important;
}

body.stock-admin-v2 .table-wrap tbody tr:hover > td,
body.stock-admin-v2 .table-container tbody tr:hover > td,
body.stock-admin-v2 .core-table-wrapper tbody tr:hover > td,
body.stock-admin-v2 .core-table-shell tbody tr:hover > td,
body.stock-admin-v2 table[data-core-table] tbody tr:hover > td,
body.stock-admin-v2 table.data-table tbody tr:hover > td,
body.stock-admin-v2 table.core-table tbody tr:hover > td,
body.stock-admin-v2 table.material-data-table tbody tr:hover > td,
body.stock-admin-v2 table.master-data-table tbody tr:hover > td{
    background:#f0f8ff!important;
}

body.stock-admin-v2 .table-wrap tbody tr:last-child > td,
body.stock-admin-v2 .table-container tbody tr:last-child > td,
body.stock-admin-v2 .core-table-shell tbody tr:last-child > td{
    border-bottom:0!important;
}

/* Sort arrows readable on navy header */
body.stock-admin-v2 .core-sortable:before{
    border-bottom-color:rgba(255,255,255,.55)!important;
}
body.stock-admin-v2 .core-sortable:after{
    border-top-color:rgba(255,255,255,.55)!important;
}
body.stock-admin-v2 .core-sortable.sort-asc:before{
    border-bottom-color:#ff9900!important;
}
body.stock-admin-v2 .core-sortable.sort-desc:after{
    border-top-color:#ff9900!important;
}

/* Keep entry-table dropdowns usable */
body.stock-admin-v2 .table-wrap:has(.stock-entry-table){
    overflow:auto!important;
    overflow-y:visible!important;
}

/* Mobile: materials card-table mode still wins */
@media (max-width:640px){
    body.stock-admin-v2 .material-list-card .table-wrap{
        overflow:visible!important;
        border:0!important;
        border-radius:0!important;
        background:transparent!important;
        box-shadow:none!important;
    }
}

/* Phase 4.3.145 - Footer sits at bottom of shell, matching left sidebar column height */

@media (min-width:1101px){
    body.stock-admin-v2{
        overflow-x:hidden!important;
    }

    body.stock-admin-v2 .admin-shell{
        min-height:100dvh!important;
        height:auto!important;
        align-items:stretch!important;
    }

    /* Both columns share the same row height (taller of menu vs content) */
    body.stock-admin-v2 .admin-sidebar{
        position:relative!important;
        top:auto!important;
        align-self:stretch!important;
        min-height:100dvh!important;
        height:auto!important;
        max-height:none!important;
        overflow:visible!important;
    }

    body.stock-admin-v2 .admin-nav{
        flex:0 1 auto!important;
        min-height:auto!important;
        overflow:visible!important;
    }

    body.stock-admin-v2 .admin-sidebar-foot{
        margin-top:auto!important;
        flex:0 0 auto!important;
    }

    body.stock-admin-v2 .admin-main{
        display:flex!important;
        flex-direction:column!important;
        align-self:stretch!important;
        min-height:100dvh!important;
        max-height:none!important;
        height:auto!important;
        overflow:visible!important;
    }

    body.stock-admin-v2 .admin-content{
        flex:1 1 auto!important;
        min-height:0!important;
        overflow:visible!important;
        overflow-x:hidden!important;
    }

    /* Push footer to the bottom of the main column (= sidebar bottom) */
    body.stock-admin-v2 .admin-footer{
        margin-top:auto!important;
        flex:0 0 auto!important;
        width:100%!important;
        position:relative!important;
    }

    body.stock-admin-v2 .admin-footer-inner{
        width:100%!important;
    }
}

@media (max-width:1100px){
    /* Mobile drawer: keep internal sidebar scroll; footer at end of page flow */
    body.stock-admin-v2 .admin-main{
        min-height:100dvh!important;
        max-height:none!important;
        display:flex!important;
        flex-direction:column!important;
    }

    body.stock-admin-v2 .admin-content{
        flex:1 1 auto!important;
        overflow:visible!important;
    }

    body.stock-admin-v2 .admin-footer{
        margin-top:auto!important;
    }
}

/* Phase 4.3.146 - Active sidebar nav: keep bilingual labels readable on dark bg
   (campaign / non theme-engine only — theme-engine uses token colors) */

html:not(.theme-engine) body.stock-admin-v2 .stock-nav-label-en{
    color:#9ec5f5!important;
    opacity:1!important;
}

html:not(.theme-engine) body.stock-admin-v2 .stock-nav-link:hover .stock-nav-label-en{
    color:#dbeafe!important;
}

html:not(.theme-engine) body.stock-admin-v2 .stock-nav-active .stock-nav-label-th{
    color:#ffffff!important;
}

html:not(.theme-engine) body.stock-admin-v2 .stock-nav-active .stock-nav-label-en{
    color:#e2e8f0!important;
    opacity:1!important;
}

html:not(.theme-engine) body.stock-admin-v2 .stock-nav-active .stock-nav-label{
    color:#ffffff!important;
}

/* Phase 4.3.140 - Language Workbench UX Layout v2 */
.language-workbench-v2{
    gap:14px!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
}

.language-workbench-v2 .language-workbench-hero{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:start!important;
    justify-content:stretch!important;
    gap:16px!important;
    width:100%!important;
    max-width:100%!important;
    padding:18px 20px!important;
}

.language-workbench-v2 .language-hero-main{
    min-width:0!important;
    max-width:100%!important;
    width:auto!important;
    flex:unset!important;
}

.language-workbench-v2 .language-hero-main h2,
.language-workbench-v2 .language-hero-main p{
    max-width:70ch!important;
    overflow-wrap:break-word!important;
    word-break:normal!important;
    white-space:normal!important;
}

.language-workbench-v2 .language-hero-main h2{
    margin-top:8px!important;
    font-size:clamp(22px,2vw,30px)!important;
}

.language-workbench-v2 .language-hero-main p{
    margin-top:6px!important;
}

.language-workbench-v2 .language-workbench-actions{
    grid-column:auto!important;
    width:auto!important;
    max-width:100%!important;
    min-width:0!important;
    flex:unset!important;
    justify-content:flex-end!important;
    align-self:start!important;
}

.language-workbench-v2 .language-workbench-actions .button{
    width:auto!important;
    max-width:100%!important;
    white-space:nowrap!important;
}

.language-workbench-v2 .language-kpi-grid{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:10px!important;
}

.language-workbench-v2 .language-kpi-card{
    min-height:0!important;
    padding:14px 16px!important;
    border-radius:14px!important;
}

.language-workbench-v2 .language-kpi-card strong{
    margin-top:4px!important;
    font-size:24px!important;
}

.language-workbench-v2 .language-kpi-card.is-warning{
    border-color:#fed7aa!important;
    background:#fff7ed!important;
}

.language-workbench-v2 .language-kpi-card.is-ok{
    border-color:#bbf7d0!important;
    background:#ecfdf5!important;
}

.language-workbench-v2 .language-workbench-tabs{
    top:72px!important;
    gap:4px!important;
    padding:6px!important;
    border-radius:12px!important;
}

.language-workbench-v2 .language-workbench-tabs button{
    flex:1 1 auto;
    justify-content:center;
    min-height:40px!important;
}

.language-workbench-v2 .language-matrix-card,
.language-workbench-v2 .language-pro-card{
    padding:16px!important;
    border-radius:16px!important;
}

.language-workbench-v2 .language-matrix-head{
    margin-bottom:12px!important;
    padding-bottom:12px!important;
}

.language-workbench-v2 .language-matrix-meta{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:8px;
    margin:0 0 12px;
}

.language-workbench-v2 .language-meta-chip{
    display:inline-flex;
    align-items:center;
    gap:4px;
    min-height:28px;
    padding:4px 10px;
    border:1px solid var(--lang-line,#d9e4ef);
    border-radius:999px;
    background:#fff;
    color:#5f6f82;
    font-size:12px;
    font-weight:750;
}

.language-workbench-v2 .language-meta-chip strong{
    color:var(--lang-ink,#0f2742);
    font-weight:900;
}

.language-workbench-v2 .language-meta-chip.is-warning{
    background:#fff7ed;
    border-color:#fed7aa;
    color:#c2410c;
}

.language-workbench-v2 .language-meta-chip.is-ok{
    background:#ecfdf5;
    border-color:#bbf7d0;
    color:#047857;
}

.language-workbench-v2 .language-tool-stack{
    display:grid;
    gap:10px;
    margin:0 0 14px;
}

.language-workbench-v2 .language-tool-panel{
    display:grid;
    gap:12px;
    padding:14px!important;
    border:1px solid var(--lang-line,#d9e4ef)!important;
    border-radius:14px!important;
    background:#f8fafc!important;
    box-shadow:none!important;
}

.language-workbench-v2 .language-tool-panel-head{
    display:grid;
    gap:2px;
}

.language-workbench-v2 .language-tool-panel-head strong{
    color:var(--lang-ink,#0f2742);
    font-size:13px;
    font-weight:900;
}

.language-workbench-v2 .language-tool-panel-head small{
    color:#64748b;
    font-size:12px;
    line-height:1.45;
    font-weight:650;
}

.language-workbench-v2 .language-tool-panel-actions{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    align-items:center;
}

.language-workbench-v2 .language-server-filter-grid{
    grid-template-columns:minmax(220px,1.6fr) minmax(160px,.8fr) minmax(140px,.6fr) auto!important;
    align-items:end!important;
}

.language-workbench-v2 .language-ai-bar{
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:end!important;
    margin:0!important;
    background:linear-gradient(135deg,#eff6ff 0%,#f8fbff 100%)!important;
    border-color:#bfdbfe!important;
}

.language-workbench-v2 .language-ai-bar-controls{
    display:flex;
    flex-wrap:wrap;
    align-items:end;
    gap:10px;
}

.language-workbench-v2 .language-ai-bar-controls .field{
    margin:0;
    min-width:150px;
}

.language-workbench-v2 .language-ai-cap-note{
    display:block;
    margin-top:.35rem;
    color:var(--lang-muted, #64748b);
}

.language-workbench-v2 .language-ai-progress{    display:grid;
    gap:6px;
    margin-top:8px;
}

.language-workbench-v2 .language-ai-progress-track{
    height:8px;
    border-radius:999px;
    background:rgba(148,163,184,.28);
    overflow:hidden;
}

.language-workbench-v2 .language-ai-progress-track span{
    display:block;
    height:100%;
    width:0;
    border-radius:inherit;
    background:linear-gradient(90deg,#0758b8,#38bdf8);
    transition:width .2s ease;
}

.language-workbench-v2 .language-ai-bar.is-busy .language-ai-progress{
    opacity:1;
}

.language-workbench-v2 .language-new-key-box{
    margin:0!important;
}

.language-workbench-v2 .language-new-key-grid{
    display:grid;
    gap:12px;
}

.language-workbench-v2 .language-new-key-values{
    grid-template-columns:repeat(auto-fit,minmax(120px,1fr))!important;
    overflow:visible!important;
}

.language-workbench-v2 .language-card-editor{
    gap:12px!important;
}

.language-workbench-v2 .language-key-card{
    padding:14px!important;
    border-radius:14px!important;
}

.language-workbench-v2 .language-key-card-head{
    display:flex!important;
    flex-wrap:wrap;
    align-items:center!important;
    justify-content:space-between!important;
    gap:10px!important;
    margin:0 0 12px!important;
    padding:0 0 12px!important;
    border-bottom:1px solid #e8eef6!important;
}

.language-workbench-v2 .language-key-title{
    display:flex!important;
    flex-wrap:wrap;
    align-items:center!important;
    gap:8px!important;
    grid-template-columns:none!important;
    min-width:0;
    flex:1 1 280px;
}

.language-workbench-v2 .language-key-meta{
    display:flex!important;
    flex-wrap:wrap;
    align-items:center;
    justify-content:flex-end;
    gap:6px!important;
}

.language-workbench-v2 .language-key-fields{
    display:grid!important;
    grid-template-columns:repeat(auto-fit,minmax(180px,1fr))!important;
    gap:10px!important;
}

.language-workbench-v2 .language-translation-field{
    display:grid!important;
    gap:8px!important;
    padding:10px!important;
    border-radius:12px!important;
    min-width:0;
}

.language-workbench-v2 .language-field-label{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:8px!important;
    min-width:0;
}

.language-workbench-v2 .language-field-locale{
    display:inline-flex;
    align-items:center;
    gap:6px;
    min-width:0;
}

.language-workbench-v2 .language-ai-field-btn{
    margin-left:0!important;
    min-width:42px;
    padding-left:8px!important;
    padding-right:8px!important;
}

.language-workbench-v2 .language-ai-lock-pill{
    display:inline-flex;
    align-items:center;
    padding:2px 7px;
    border-radius:999px;
    border:1px solid #fdba74;
    background:#fff7ed;
    color:#c2410c;
    font-size:10px;
    font-weight:850;
    letter-spacing:.02em;
}

.language-workbench-v2 .language-translation-field.is-ai-locked{
    border-color:#fdba74!important;
    background:linear-gradient(180deg,#fffaf5 0%,#fff 100%)!important;
}

.language-workbench-v2 .language-matrix-input.is-ai-locked-input,
.language-workbench-v2 .language-matrix-input[data-language-ai-locked-input][readonly]{
    cursor:not-allowed;
    background:#fff7ed!important;
}

.language-workbench-v2 .language-key-fields .language-matrix-input{
    min-height:96px!important;
}

.language-workbench-v2 .language-bottom-savebar{
    position:sticky!important;
    bottom:12px!important;
    z-index:18!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    margin-top:14px!important;
}

.language-workbench-v2 .language-locale-edit{
    padding:14px!important;
    border-radius:14px!important;
}

.language-workbench-v2 .language-import-guide h3,
.language-workbench-v2 .language-import-card h3,
.language-workbench-v2 .language-editor-head h3,
.language-workbench-v2 .language-manager-head h3{
    margin:0!important;
}

@media (max-width:1100px){
    .language-workbench-v2 .language-workbench-hero{
        grid-template-columns:1fr!important;
    }
    .language-workbench-v2 .language-workbench-actions{
        width:100%!important;
        justify-content:stretch!important;
    }
    .language-workbench-v2 .language-workbench-actions .button{
        flex:1 1 auto!important;
        white-space:normal!important;
    }
    .language-workbench-v2 .language-kpi-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
    .language-workbench-v2 .language-ai-bar{
        grid-template-columns:1fr!important;
    }
    .language-workbench-v2 .language-server-filter-grid{
        grid-template-columns:1fr 1fr!important;
    }
}

@media (max-width:720px){
    .language-workbench-v2 .language-kpi-grid,
    .language-workbench-v2 .language-server-filter-grid{
        grid-template-columns:1fr!important;
    }
    .language-workbench-v2 .language-workbench-tabs{
        overflow-x:auto!important;
        flex-wrap:nowrap!important;
    }
    .language-workbench-v2 .language-workbench-tabs button{
        flex:0 0 auto;
    }
    .language-workbench-v2 .language-matrix-head{
        display:grid!important;
        grid-template-columns:1fr!important;
    }
    .language-workbench-v2 .language-sticky-actions,
    .language-workbench-v2 .language-bottom-savebar{
        display:grid!important;
        grid-template-columns:1fr!important;
    }
    .language-workbench-v2 .language-bottom-savebar .button,
    .language-workbench-v2 .language-sticky-actions .button{
        width:100%;
    }
    .language-workbench-v2 .language-key-fields{
        grid-template-columns:1fr!important;
    }
}

/* Security Monitor */
.sec-mon-status-row{display:flex;gap:14px;flex-wrap:wrap}
.sec-mon-status-card{min-width:220px;padding:16px 18px}
.sec-mon-status-card span{display:block;color:#64748b;font-size:12px;font-weight:700}
.sec-mon-status-card strong{display:block;margin-top:6px;font-size:22px;font-weight:800}
.sec-mon-status-card small{display:block;margin-top:6px;color:#64748b;font-size:12px}
.sec-mon-status-card.is-on{border-color:#86efac;background:linear-gradient(145deg,#f0fdf4,#dcfce7)}
.sec-mon-status-card.is-on strong{color:#15803d}
.sec-mon-status-card.is-off{border-color:#fdba74;background:linear-gradient(145deg,#fff7ed,#ffedd5)}
.sec-mon-status-card.is-off strong{color:#c2410c}
.sec-mon-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.8fr);gap:18px;align-items:start}
.sec-mon-toggle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.sec-mon-toggle{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--line);border-radius:14px;padding:12px 14px;background:#f8fafc;cursor:pointer}
.sec-mon-toggle.is-on{background:#eff6ff;border-color:#93c5fd}
.sec-mon-toggle input{margin-top:3px}
.sec-mon-toggle strong,.sec-mon-toggle small{display:block}
.sec-mon-toggle small{color:#64748b;margin-top:2px;font-size:12px}
.sec-mon-manual-form{display:grid;gap:12px}
.sec-mon-block-list{display:grid;gap:10px}
.sec-mon-block-row{display:flex;justify-content:space-between;gap:12px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:#fff}
.sec-mon-block-row strong,.sec-mon-block-row small{display:block}
.sec-mon-block-row small{color:#64748b;margin-top:2px;font-size:12px}
.sec-mon-sev{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:800}
.sec-mon-sev.is-critical{background:#fee2e2;color:#b91c1c}
.sec-mon-sev.is-high{background:#ffedd5;color:#c2410c}
.sec-mon-sev.is-medium{background:#fef3c7;color:#b45309}
.sec-mon-sev.is-info{background:#e0f2fe;color:#0369a1}
@media (max-width:1100px){
  .sec-mon-layout{grid-template-columns:1fr}
  .sec-mon-toggle-grid{grid-template-columns:1fr}
}
@media (max-width:720px){
  .sec-mon-block-row{flex-direction:column;align-items:stretch}
}

