/* Butter Operations 8.4.2 — full visual system. This file intentionally loads AFTER legacy styles. */
:root,[data-theme="light"]{
  --bg:#edf3fb;--surface:#ffffff;--surface-2:#f0f5fb;--surface-3:#e4edf8;
  --text:#10223c;--muted:#50647d;--line:#d2dfed;--nav:#102b50;--nav-muted:#c6d5ea;
  --accent:#1f73d5;--accent-soft:#e8f1ff;--success:#0e7646;--success-soft:#ddf7e8;
  --warning:#92540a;--warning-soft:#fff1d5;--danger:#ad3144;--danger-soft:#ffe7ea;
  --info:#175bb2;--info-soft:#e8f1ff;--shadow:0 12px 35px rgba(16,51,94,.075);
  --bo841-border:var(--line);--bo841-shadow:var(--shadow);--bo842-blue:#1b66d2;
  color-scheme:light;
}
[data-theme="dark"]{
  --bg:#091321;--surface:#17263b;--surface-2:#21344c;--surface-3:#2b4260;
  --text:#f2f7ff;--muted:#c1cee1;--line:#3b536e;--nav:#071a33;--nav-muted:#cad7ea;
  --accent:#83b8ff;--accent-soft:#1a3b64;--success:#74e0ad;--success-soft:#153e31;
  --warning:#f7c36c;--warning-soft:#4b3416;--danger:#ff99a7;--danger-soft:#4e2732;
  --info:#8dbfff;--info-soft:#213f61;--shadow:0 12px 35px rgba(0,0,0,.23);
  --bo841-border:var(--line);--bo841-shadow:var(--shadow);--bo842-blue:#84b8ff;
  color-scheme:dark;
}
html{font-size:16px;color-scheme:light;scroll-behavior:smooth}
html[data-theme="dark"]{color-scheme:dark}
body{background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:-.008em}
button,input,textarea,select{font-family:inherit}
button{touch-action:manipulation}
#appShell{grid-template-columns:268px minmax(0,1fr);background:var(--bg)}
.sidebar{background:linear-gradient(163deg,#071b37 0%,#103763 60%,#0c2449 100%);padding:22px 14px 15px;border-right:1px solid rgba(255,255,255,.13);box-shadow:9px 0 32px rgba(6,22,45,.075)}
.sidebar-head{margin-bottom:12px;padding:6px 10px 21px;border-bottom:1px solid rgba(210,227,255,.14)}
.sidebar-v5-brand img{width:47px;height:47px}
.sidebar-v5-brand strong{font-size:1.5rem}
#bo842-side-version{display:inline-flex;align-items:center;gap:6px;margin:11px 9px 10px;padding:5px 10px;border-radius:99px;background:rgba(96,165,250,.17);color:#bfdbfe;border:1px solid rgba(161,200,255,.25);font-size:.66rem;font-weight:800;letter-spacing:.075em;text-transform:uppercase}
#bo842-side-version:before{content:"";width:7px;height:7px;border-radius:50%;background:#5cf3b1;box-shadow:0 0 0 3px rgba(92,243,177,.14)}
.nav-list{display:flex;flex-direction:column;gap:4px;padding:2px 2px 18px}
.nav-list .nav-button{display:flex;align-items:center;justify-content:flex-start;gap:12px;min-height:45px;padding:10px 12px;border:1px solid transparent;border-radius:12px;color:#cbdaeb;font-size:.85rem;font-weight:690;letter-spacing:0;transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}
.nav-list .nav-button:hover{background:rgba(170,205,255,.13);transform:none;color:#fff}
.nav-list .nav-button.active{background:linear-gradient(95deg,#2f74d9,#1e5ba9);color:#fff;border-color:rgba(206,229,255,.22);box-shadow:0 5px 18px rgba(5,18,37,.2)}
.bo842-nav-icon{width:19px;height:19px;flex:0 0 19px;display:grid;place-items:center;color:#adcaef}
.bo842-nav-icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linejoin:round;stroke-linecap:round}
.nav-button.active .bo842-nav-icon{color:#fff}
.sidebar-foot{margin-top:auto;background:rgba(3,14,35,.2);border:1px solid rgba(190,215,255,.16);border-radius:15px;padding:13px}
.sidebar-user{font-size:.77rem;color:#bdd6f3;padding-bottom:13px}.sidebar-user strong{font-size:.95rem}
.sidebar-signout{background:#f4f8ff;color:#113260;border-radius:10px;min-height:45px}
.main-shell{width:100%;min-width:0;background:var(--bg)}
.topbar{background:var(--surface);backdrop-filter:none;min-height:83px;padding:15px clamp(18px,2.1vw,32px);border-bottom:1px solid var(--line);box-shadow:0 3px 14px rgba(28,55,94,.035)}
.topbar h2{font-size:1.11rem;font-weight:850;color:var(--text)}
.breadcrumb{font-size:.72rem;font-weight:700;color:var(--muted)}
.topbar-actions{gap:9px}
.topbar .icon-btn{height:41px;width:41px;border-radius:12px;border:1px solid var(--line);background:var(--surface-2);color:var(--text)}
.topbar .icon-btn:hover{background:var(--accent-soft);color:var(--info)}
#bo842-build-badge{font-size:.7rem;font-weight:850;color:var(--info);background:var(--info-soft);padding:7px 11px;border:1px solid color-mix(in srgb,var(--info) 22%,transparent);border-radius:99px;letter-spacing:.015em;white-space:nowrap}
.content{max-width:1600px;padding:26px clamp(18px,2.1vw,34px) 52px}
.page-head{position:relative;display:flex;align-items:center;flex-wrap:wrap;gap:22px;padding:27px 30px;margin:0 0 24px;background:linear-gradient(112deg,#0c2a52 0%,#174f93 72%,#236ac5 100%);color:#fff;border-radius:22px;box-shadow:0 15px 36px rgba(12,54,105,.16);overflow:hidden;min-height:129px}
.page-head:before{content:"";position:absolute;right:-30px;top:-100px;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,rgba(151,204,255,.26),transparent 67%);pointer-events:none}
.page-head:after{content:"";position:absolute;bottom:-97px;right:12%;width:250px;height:170px;transform:rotate(24deg);border:1px solid rgba(255,255,255,.1);border-radius:55%;pointer-events:none}
.page-head>div{position:relative;z-index:1}
.page-head h1{font-size:clamp(1.58rem,2.3vw,2.2rem);font-weight:840;letter-spacing:-.04em;color:#fff;margin:0}
.page-head p{margin:8px 0 0;color:#d9e9ff;font-size:.89rem;max-width:670px}
.page-head .actions{margin-left:auto;align-items:center}
.page-head .btn.primary{background:#fff;color:#133761;border:1px solid #fff}
.page-head .btn.secondary{background:rgba(255,255,255,.13);color:#fff;border:1px solid rgba(255,255,255,.32)}
.content .card,.content section.card,.modal-body .card,.content .stat-card,.content .product-card,.content .doc-card{border-radius:18px;border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);color:var(--text)}
.content .card{padding:22px}
.content .card h3,.section-heading h3{font-size:1.05rem;font-weight:830;color:var(--text);line-height:1.3}
.content .card p,.content .section-heading p{color:var(--muted)}
.stats,.grid{gap:16px}
.stats{margin:0 0 22px}
.stat-card{position:relative;min-height:145px;padding:21px 22px!important;overflow:hidden;border-top:4px solid #4286e5!important}
.stat-card:nth-child(4n+2){border-top-color:#17a77c!important}.stat-card:nth-child(4n+3){border-top-color:#edac40!important}.stat-card:nth-child(4n+4){border-top-color:#9878e4!important}
.stat-card:after{content:"";position:absolute;right:-32px;top:-35px;width:110px;height:110px;border-radius:50%;background:var(--info-soft);opacity:.7}
.stat-card:nth-child(4n+2):after{background:var(--success-soft)}.stat-card:nth-child(4n+3):after{background:var(--warning-soft)}
.stat-label,.stat-foot{position:relative;z-index:1;font-size:.8rem;color:var(--muted);font-weight:650}
.stat-value{position:relative;z-index:1;font-size:2.1rem;font-weight:850;letter-spacing:-.05em;color:var(--text);margin:8px 0 3px;font-variant-numeric:tabular-nums}
.btn,.content .btn,.modal-body .btn{font-weight:750;border-radius:11px;min-height:43px;padding:10px 16px;font-size:.87rem}
.btn.primary,.content .btn.primary,.modal-body .btn.primary{background:#1853a2;border:1px solid #1853a2;color:#fff;box-shadow:0 4px 12px rgba(15,66,131,.12)}
.btn.primary:hover,.content .btn.primary:hover{background:#216ac4;color:#fff}
.btn.secondary,.content .btn.secondary,.modal-body .btn.secondary{border:1px solid var(--line);background:var(--surface-2);color:var(--text)}
.btn.secondary:hover{border-color:var(--info);background:var(--accent-soft)}
[data-theme="dark"] .btn.primary,[data-theme="dark"] .content .btn.primary,[data-theme="dark"] .modal-body .btn.primary{background:#3c88e5;border-color:#3c88e5;color:#061627}
[data-theme="dark"] .page-head .btn.primary{background:#f7fbff;color:#102c52;border-color:#fff}
.btn.compact{min-height:37px!important;padding:7px 11px!important;font-size:.79rem!important}
.content .tabs,.content .subtabs{border-radius:14px;padding:6px;gap:5px;border:1px solid var(--line);background:var(--surface);box-shadow:0 5px 17px rgba(16,51,94,.04)}
.content .tab-button,.content .subtab{font-size:.86rem;min-height:42px;border-radius:10px;padding:10px 14px;color:var(--muted);font-weight:760}
.content .tab-button.active,.content .subtab.active{background:#1853a2;color:#fff;border-color:#1853a2;box-shadow:0 4px 10px rgba(11,65,131,.12)}
[data-theme="dark"] .content .tab-button.active,[data-theme="dark"] .content .subtab.active{background:#438ded;color:#071d33}
.section-heading{margin:24px 0 12px;align-items:center}
.section-heading h3{font-size:1.14rem}
.content .table-wrap{border-radius:16px;border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);overflow-x:auto}
.content .table-wrap table{width:100%;border-spacing:0;border-collapse:separate;background:var(--surface);min-width:660px}
.content th{background:var(--surface-2);color:var(--muted);font-size:.74rem;padding:15px 14px;font-weight:820;letter-spacing:.02em;white-space:nowrap}
.content td{padding:15px 14px;font-size:.84rem;line-height:1.5;color:var(--text);border-bottom:1px solid var(--line)}
.content tr:last-child td{border-bottom:0}
.content tbody tr:hover{background:var(--surface-2)}
.content .table-actions{gap:7px}
.content .table-actions .btn{white-space:nowrap}
input,select,textarea,.content input,.content select,.content textarea,.modal-body input,.modal-body select,.modal-body textarea{border:1.5px solid var(--line);background:var(--surface);color:var(--text);border-radius:11px;min-height:47px;padding:11px 13px;font-size:16px;box-shadow:none}
input::placeholder,textarea::placeholder{color:var(--muted);opacity:.9}
label{font-size:.86rem;font-weight:750;color:var(--text)}
input:focus,select:focus,textarea:focus,.content input:focus,.modal-body input:focus{border-color:var(--info);box-shadow:0 0 0 3px var(--info-soft);outline:0}
.status-chip{border-radius:99px;padding:6px 11px;min-height:29px;letter-spacing:.005em;font-size:.75rem;font-weight:780}
.status-chip.success{background:var(--success-soft);color:var(--success)}
.status-chip.warning{background:var(--warning-soft);color:var(--warning)}
.status-chip.info{background:var(--info-soft);color:var(--info)}
.status-chip.danger{background:var(--danger-soft);color:var(--danger)}
.status-chip.neutral{background:var(--surface-2);color:var(--text)}
.notice,.notice-banner{border-radius:15px;background:var(--surface);box-shadow:var(--shadow);border:1px solid var(--line);border-left:5px solid var(--info);padding:17px 20px}
.notice.warning{border-left-color:var(--warning)}.notice.danger{border-left-color:var(--danger)}.notice.success{border-left-color:var(--success)}
.order-card,.product-card,.doc-card,.notification-card,.board-column,.help-group{border-radius:17px!important;border-color:var(--line)!important;box-shadow:var(--shadow)}
.board-column{background:var(--surface-2)}.order-card{padding:17px!important;border-left:4px solid #3c86e1!important}
.quick-item{padding:14px 0}.quick-main strong{font-size:.89rem}.quick-main span{font-size:.78rem}
.empty-state{background:var(--surface);border:1px dashed color-mix(in srgb,var(--info) 35%,var(--line));padding:34px 20px;border-radius:16px}
.modal-backdrop{background:rgba(3,13,29,.7);backdrop-filter:blur(5px);padding:16px}
.modal{border-radius:20px;box-shadow:0 35px 90px rgba(0,0,0,.36);border-color:var(--line)}
.modal-head{padding:20px 23px;background:var(--surface-2)}.modal-head h3{font-size:1.18rem;font-weight:830}
.modal-body{padding:22px!important}.modal-body .form-grid{gap:16px 18px}
.modal-close{border-radius:12px!important;font-size:1.5rem}
.bo842-agent-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.bo842-agent-actions .btn{font-size:.77rem!important}
.bo842-profile-hero{padding:18px;background:linear-gradient(110deg,#123561,#226ac3);border-radius:16px;color:#fff;margin-bottom:18px;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.bo842-profile-hero strong{display:block;font-size:1.25rem}.bo842-profile-hero small{display:block;margin-top:4px;color:#dbebff}
.bo842-profile-hero .btn{background:#fff!important;color:#143869!important;border-color:#fff!important}
.bo842-password-card{display:grid;gap:13px;background:var(--surface-2);border:1px solid var(--line);border-radius:15px;padding:17px}
.bo842-password-card code{display:block;font-size:1.06rem;overflow-wrap:anywhere;background:var(--surface);border:1px solid var(--line);padding:13px;border-radius:11px;color:var(--text);user-select:all}
.bo842-kicker{font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:850}
.bo842-deploy-stamp{display:inline-flex;gap:8px;align-items:center;margin-top:11px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.25);border-radius:100px;color:#fff;padding:6px 11px;font-weight:780;font-size:.73rem}
.bo842-deploy-stamp:before{content:"";width:7px;height:7px;border-radius:50%;background:#5cf2a9}
.bo84-entry{border-radius:18px!important;padding:20px!important;border-left:4px solid #2b77cd!important}
.bo84-entry-actions{gap:9px}.bo84-entry-actions>.btn{flex:1 1 150px}
.bo84-order-summary{background:var(--surface);border-radius:15px}.bo84-detail-card{background:var(--surface);border-radius:15px;padding:19px!important}
.bo84-summary-grid>div{background:var(--surface-2)}
.bo84-modal-tabs{background:var(--surface-2)}.bo84-modal-tabs button.selected{background:#1b64c0;color:#fff}
#bo84-network{background:#fff0c2;color:#674400;border-bottom:2px solid #e5ac42;padding:12px 22px}
[data-theme="dark"] #bo84-network{background:#4a3415;color:#ffe1ac;border-bottom-color:#c99139}
.login-screen{background:radial-gradient(circle at 10% 20%,#ddeafe 0,transparent 37%),linear-gradient(135deg,#ecf5ff,#eef3fa 55%,#dae7fa)}
[data-theme="dark"] .login-screen{background:radial-gradient(circle at 15% 25%,#133765 0,transparent 37%),linear-gradient(135deg,#081525,#101e35,#112641)}
.login-panel{border-radius:22px;padding:34px;box-shadow:0 24px 65px rgba(11,47,89,.13)}
.login-intro{padding:30px 25px}.login-intro>p{color:var(--muted);font-size:1.05rem}
#loginForm .btn.primary{min-height:49px;font-size:1rem}
/* Component readability in Samsung dark mode and forced-dark browsers */
[data-theme="dark"] .page-head{background:linear-gradient(110deg,#123a70,#18467d 65%,#245eaa)}
[data-theme="dark"] .sidebar{background:linear-gradient(160deg,#071324,#0d2a4e)}
[data-theme="dark"] .content .card,[data-theme="dark"] .content .table-wrap,[data-theme="dark"] .content table,[data-theme="dark"] .content .stat-card{background:var(--surface);color:var(--text)}
[data-theme="dark"] .modal-head{background:var(--surface-2)}
[data-theme="dark"] .topbar{background:var(--surface)}
[data-theme="dark"] select option{color:var(--text);background:var(--surface)}
@media(max-width:1100px){.content{padding:20px}.page-head{padding:23px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){
 #appShell{grid-template-columns:minmax(0,1fr)}
 .sidebar{position:fixed;left:0;top:0;width:min(310px,90vw);transform:translateX(-110%);height:100dvh;box-shadow:20px 0 60px rgba(0,0,0,.35);border-radius:0 22px 22px 0}
 .sidebar.open{transform:translateX(0)}
 .nav-open,.sidebar-close{display:grid}
 .topbar{min-height:66px;padding:9px 14px}
 #bo842-build-badge{font-size:.62rem;padding:5px 7px}
 .top-clock{display:none}
 .content{padding:15px 14px 110px!important;overflow-x:hidden}
 .page-head{min-height:116px;border-radius:18px;padding:21px;margin-bottom:17px}
 .page-head h1{font-size:1.66rem}.page-head p{font-size:.82rem}
 .page-head .actions{margin:0;width:100%}.page-head .actions .btn{flex:1}
 .content .card{padding:17px}
 .stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
 .stat-card{padding:15px!important;min-height:130px}.stat-value{font-size:1.75rem}
 .content .tabs{gap:6px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}
 .content .tab-button{flex:0 0 auto;min-width:max-content;white-space:nowrap}
 .form-grid{grid-template-columns:minmax(0,1fr)}.form-grid .span-2{grid-column:1}
 .content .section-heading{gap:9px;align-items:stretch}.section-heading .actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}
 .board{display:flex;gap:12px;scroll-snap-type:x proximity}.board-column{min-width:min(85vw,340px);scroll-snap-align:start}
 .catalogue,.doc-grid{grid-template-columns:minmax(0,1fr)}
 #bo84-bottom-nav{display:flex!important;position:fixed;z-index:95;bottom:0;left:0;right:0;min-height:72px;padding:6px 8px calc(7px + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--line);box-shadow:0 -8px 28px rgba(10,31,65,.1);justify-content:space-around}
 #bo84-bottom-nav button{display:grid;gap:3px;place-items:center;flex:1;padding:6px 2px;min-height:53px;border-radius:12px;color:var(--muted);font-weight:750}
 #bo84-bottom-nav button.active{background:var(--accent-soft);color:var(--info)}
 #bo84-bottom-nav button span{font-size:1.3rem;line-height:1}
 #bo84-bottom-nav button small{font-size:.72rem}
 .modal-backdrop{padding:0;align-items:end}
 .modal{width:100%!important;max-width:100%!important;height:min(96dvh,100%);max-height:96dvh;border-radius:22px 22px 0 0;display:flex;flex-direction:column;overflow:hidden}
 .modal-head{padding:16px 17px;flex:0 0 auto}
 .modal-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:17px 16px 100px!important}
 .modal-body .form-grid{grid-template-columns:minmax(0,1fr)!important}
 .modal-body .form-grid>*{grid-column:1!important}
 .modal-body .form-actions{position:sticky;bottom:0;background:var(--surface);padding:12px 0 max(12px,env(safe-area-inset-bottom));border-top:1px solid var(--line);z-index:3;display:grid;grid-template-columns:1fr 1fr}
 .modal-body .form-actions .btn{width:100%;min-height:49px}
 .bo842-profile-hero{align-items:flex-start}
 .bo84-order-summary{padding:15px}
 .bo84-detail-line{gap:8px;align-items:flex-start}.bo84-detail-line b{white-space:nowrap}
 .bo84-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:650px){
 .content{padding:12px 11px 112px!important}
 .page-head{padding:19px 17px;border-radius:17px;min-height:106px}
 .page-head h1{font-size:1.5rem}
 .stats{gap:9px}.stat-card{padding:13px!important;min-height:122px}.stat-value{font-size:1.55rem}
 .topbar h2{font-size:.94rem}
 .topbar .icon-btn{width:37px;height:37px;padding:8px}
 #globalSearchBtn{display:none}
 .content .card{padding:15px}
 /* agent and staff directory become readable cards, not horizontally scrolling desktop tables */
 .bo842-card-table{background:transparent!important;border:0!important;box-shadow:none!important;overflow:visible!important}
 .bo842-card-table table{min-width:0!important;width:100%;display:block;background:transparent!important}
 .bo842-card-table thead{display:none}
 .bo842-card-table tbody{display:grid;gap:12px}
 .bo842-card-table tr{display:grid;gap:0;padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow)}
 .bo842-card-table td{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;text-align:right;padding:9px 2px!important;font-size:.85rem!important;border-bottom:1px solid var(--line)!important;min-width:0;overflow-wrap:anywhere}
 .bo842-card-table td:last-child{display:block;border-bottom:0!important}
 .bo842-card-table td:before{content:attr(data-label);font-size:.73rem;font-weight:780;color:var(--muted);text-transform:uppercase;letter-spacing:.02em;text-align:left;flex:0 0 90px}
 .bo842-card-table td:first-child{font-size:1rem!important;font-weight:850}
 .bo842-card-table td:first-child:before{content:none}
 .bo842-card-table td.table-actions:before{display:block;margin-bottom:7px}
 .bo842-card-table .table-actions{display:flex!important;flex-wrap:wrap;justify-content:stretch;gap:7px}
 .bo842-card-table .table-actions .btn{flex:1 1 105px;min-height:44px!important}
 .bo842-card-table td.table-actions:before{flex-basis:100%}
 .bo84-detail-line{flex-wrap:wrap}
 .login-screen{padding:15px}.login-intro{padding:17px 8px 0}.login-intro>p{font-size:.92rem}.login-panel{padding:22px}
}
@media print{
 .page-head,#bo84-bottom-nav,#bo842-build-badge,#bo842-side-version{display:none!important}
 .modal-body{overflow:visible;padding:0!important}
 .content .card,.content .table-wrap{box-shadow:none}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
