:root{
  --bg:#f6f6f2;--panel:#fff;--panel-2:#f9faf7;--ink:#171d1b;--muted:#6e7773;--line:#e4e7e1;
  --nav:#171c1a;--nav-2:#222927;--primary:#0f6b4c;--primary-2:#17805c;--primary-soft:#e9f4ee;
  --gold:#d0a13a;--gold-soft:#fff7e5;--danger:#cf3f54;--danger-soft:#fff0f2;--warning:#d88314;--warning-soft:#fff5e7;
  --success:#148056;--success-soft:#e8f5ed;--info:#326da8;--info-soft:#eef5fb;
  --shadow:0 18px 45px rgba(26,34,30,.06);--shadow-sm:0 5px 18px rgba(26,34,30,.055);
  --radius:15px;--radius-sm:10px;--sidebar:246px;--font:"Inter","Segoe UI Variable","Segoe UI",Roboto,Arial,sans-serif;
}
*{box-sizing:border-box}html{font-size:14px}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.hidden{display:none!important}.muted{color:var(--muted)}.text-right{text-align:right}.text-center{text-align:center}.nowrap{white-space:nowrap}.w-full{width:100%}
.shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);background:linear-gradient(180deg,var(--nav) 0%,#08243a 68%,#09372f 100%);color:#d8e4ec;z-index:50;overflow-y:auto;overflow-x:hidden;border-right:1px solid rgba(255,255,255,.06);scrollbar-width:thin}.sidebar::-webkit-scrollbar{width:5px}.sidebar::-webkit-scrollbar-thumb{background:rgba(255,255,255,.18);border-radius:8px}.sidebar-head{height:78px;padding:15px 17px;display:flex;align-items:center;gap:12px;border-bottom:1px solid rgba(255,255,255,.08);position:sticky;top:0;background:rgba(7,28,47,.95);backdrop-filter:blur(12px);z-index:2}.brand-mark{width:43px;height:43px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(145deg,#16a394,#b88a16);box-shadow:0 10px 24px rgba(0,0,0,.22);color:#fff}.brand-mark svg{width:23px;height:23px}.brand-copy strong{display:block;color:#fff;font-size:16px;letter-spacing:-.01em}.brand-copy span{display:block;color:#92a9b8;font-size:10px;letter-spacing:.12em;text-transform:uppercase;margin-top:1px}.sidebar-user{margin:14px 14px 5px;padding:12px;border:1px solid rgba(255,255,255,.08);border-radius:13px;background:rgba(255,255,255,.045);display:flex;align-items:center;gap:10px}.avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#f7d77b,#c28c16);color:#372804;font-weight:800;flex:none}.sidebar-user strong{display:block;color:#fff;font-size:13px}.sidebar-user span{display:block;color:#9bb0bd;font-size:11px;max-width:155px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu{padding:6px 11px 22px}.menu-label{display:block;margin:17px 10px 6px;color:#7f98aa;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.15em}.menu a{min-height:42px;display:flex;align-items:center;gap:11px;padding:9px 11px;border-radius:10px;color:#ccdae3;font-size:13px;font-weight:600;margin:2px 0;transition:.16s}.menu a svg{width:18px;height:18px;stroke-width:1.8;color:#8fabbc;flex:none}.menu a:hover{background:rgba(255,255,255,.07);color:#fff}.menu a.active{background:linear-gradient(100deg,rgba(21,151,141,.32),rgba(201,155,34,.17));box-shadow:inset 3px 0 0 #d6ab38;color:#fff}.menu a.active svg{color:#f1c64b}.menu-count{margin-left:auto;min-width:22px;height:19px;border-radius:10px;padding:0 6px;display:grid;place-items:center;background:rgba(255,255,255,.1);font-size:10px}
.main{margin-left:var(--sidebar);min-height:100vh}.topbar{height:68px;padding:0 24px;background:rgba(255,255,255,.9);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);display:flex;align-items:center;gap:14px;position:sticky;top:0;z-index:40}.icon-btn{width:38px;height:38px;border:1px solid var(--line);border-radius:10px;background:var(--panel);display:grid;place-items:center;color:var(--ink)}.icon-btn svg{width:19px;height:19px}.mobile-menu{display:none}.top-title strong{display:block;font-size:13px}.top-title span{display:block;color:var(--muted);font-size:10px;margin-top:1px}.top-actions{margin-left:auto;display:flex;align-items:center;gap:8px}.user-chip{height:40px;padding:0 10px 0 4px;border:1px solid var(--line);border-radius:12px;background:var(--panel);display:flex;align-items:center;gap:8px}.user-chip .avatar{width:31px;height:31px;font-size:11px}.user-chip strong{font-size:12px;display:block;max-width:120px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-chip span{font-size:9px;color:var(--muted);display:block}.page{padding:24px;max-width:1920px;margin:0 auto}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.page-head h1{margin:0;color:#102231;font-size:26px;line-height:1.2;letter-spacing:-.025em;font-weight:760}.page-head p{margin:5px 0 0;color:var(--muted);font-size:12px}.page-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.breadcrumb{display:flex;gap:6px;color:var(--muted);font-size:10px;margin-bottom:6px}.breadcrumb a:hover{color:var(--primary)}
.btn{min-height:38px;border:1px solid transparent;border-radius:10px;padding:8px 14px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:12px;font-weight:750;line-height:1.2;transition:.15s;white-space:nowrap}.btn svg{width:16px;height:16px}.btn.primary{color:#fff;background:linear-gradient(135deg,var(--primary),var(--primary-2));box-shadow:0 7px 18px rgba(15,118,110,.2)}.btn.primary:hover{filter:brightness(.96);transform:translateY(-1px)}.btn.gold{color:#2f2306;background:linear-gradient(135deg,#e7c45c,#c9971e)}.btn.secondary{color:#145b55;background:var(--primary-soft);border-color:#cceae5}.btn.ghost{color:#43515e;background:var(--panel);border-color:var(--line)}.btn.danger{color:#b4233d;background:var(--danger-soft);border-color:#ffd7de}.btn.success{color:#0c6b47;background:var(--success-soft);border-color:#c9ead9}.btn.sm{min-height:31px;padding:6px 9px;font-size:10px;border-radius:8px}.btn.icon-only{width:33px;padding:0}.btn.full{width:100%}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none!important}.pill{border:1px solid var(--line);background:var(--panel);border-radius:10px;padding:8px 11px;font-size:11px;font-weight:700;color:#475666}
.alert{border:1px solid;border-radius:12px;padding:11px 14px;margin-bottom:15px;font-size:12px;font-weight:600}.alert.success{background:var(--success-soft);border-color:#ccebdd;color:#0d6b48}.alert.danger{background:var(--danger-soft);border-color:#ffd5dc;color:#a8273c}.alert.warning{background:var(--warning-soft);border-color:#ffe0ba;color:#9b5a0d}.alert.info{background:var(--info-soft);border-color:#cfe3fb;color:#255d95}.error-list{margin:0;padding-left:19px}
.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:15px}.kpi-grid.five{grid-template-columns:repeat(5,minmax(0,1fr))}.kpi-grid.six{grid-template-columns:repeat(6,minmax(0,1fr))}.kpi{min-height:108px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:16px;display:flex;gap:13px;align-items:flex-start;position:relative;overflow:hidden}.kpi:after{content:"";position:absolute;width:84px;height:84px;border-radius:50%;right:-31px;bottom:-38px;background:var(--primary-soft)}.kpi-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:var(--primary-soft);color:var(--primary);flex:none}.kpi-icon svg{width:21px;height:21px}.kpi.gold .kpi-icon,.kpi.gold:after{background:var(--gold-soft);color:var(--gold)}.kpi.blue .kpi-icon,.kpi.blue:after{background:var(--info-soft);color:var(--info)}.kpi.orange .kpi-icon,.kpi.orange:after{background:var(--warning-soft);color:var(--warning)}.kpi.red .kpi-icon,.kpi.red:after{background:var(--danger-soft);color:var(--danger)}.kpi.green .kpi-icon,.kpi.green:after{background:var(--success-soft);color:var(--success)}.kpi-copy{position:relative;z-index:1;min-width:0}.kpi-label{display:block;color:var(--muted);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.kpi strong{display:block;font-size:20px;line-height:1.15;margin-top:7px;letter-spacing:-.02em}.kpi small{display:block;color:var(--muted);font-size:10px;margin-top:5px}.trend-up{color:var(--success)!important}.trend-down{color:var(--danger)!important}
.grid{display:grid;gap:15px}.grid.two{grid-template-columns:minmax(0,2fr) minmax(300px,1fr)}.grid.equal{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:16px;margin-bottom:15px}.card.flush{padding:0}.card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}.card-head h2,.card-head h3,.card h3{margin:0;font-size:14px;letter-spacing:-.01em}.card-head p{margin:2px 0 0;color:var(--muted);font-size:10px}.section-title{color:var(--primary);font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:800;margin:0 0 12px}.card-divider{height:1px;background:var(--line);margin:15px -16px}.mini-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.mini-stat{padding:11px;border-radius:11px;background:var(--panel-2);border:1px solid var(--line)}.mini-stat span{display:block;color:var(--muted);font-size:9px;text-transform:uppercase;font-weight:700}.mini-stat strong{display:block;margin-top:4px;font-size:15px}.empty{padding:35px!important;text-align:center;color:var(--muted)}
.responsive-table{overflow:auto;border-radius:12px}.table{width:100%;border-collapse:separate;border-spacing:0}.table th{background:#f7f9f8;color:#657380;font-size:9px;text-transform:uppercase;letter-spacing:.055em;font-weight:800;text-align:left;white-space:nowrap}.table th,.table td{padding:10px 11px;border-bottom:1px solid var(--line);vertical-align:middle}.table td{font-size:11px}.table tbody tr:hover{background:#fbfcfb}.table tbody tr:last-child td{border-bottom:0}.table .amount{text-align:right;font-variant-numeric:tabular-nums;font-weight:700}.table-title{font-weight:700;color:#20303d}.table-sub{color:var(--muted);font-size:9px;margin-top:2px}.table-actions{display:flex;gap:5px;justify-content:flex-end}.thumb{width:38px;height:38px;border-radius:10px;object-fit:cover;background:#f0f3f2;border:1px solid var(--line)}
.badge{display:inline-flex;align-items:center;gap:5px;min-height:22px;border-radius:999px;padding:3px 8px;font-size:9px;font-weight:800;text-transform:capitalize;white-space:nowrap;background:#eef2f4;color:#50616e}.badge.available,.badge.active,.badge.paid,.badge.completed,.badge.ready,.badge.posted{background:var(--success-soft);color:#0f704b}.badge.partial,.badge.in_progress,.badge.assigned,.badge.pending,.badge.received,.badge.high{background:var(--warning-soft);color:#a15d0b}.badge.unpaid,.badge.cancelled,.badge.void,.badge.inactive,.badge.out_of_stock,.badge.urgent{background:var(--danger-soft);color:#b12d45}.badge.draft,.badge.low,.badge.discontinued{background:#eef2f4;color:#50616e}.badge.info,.badge.normal{background:var(--info-soft);color:#2e649b}.dot{width:6px;height:6px;border-radius:50%;background:currentColor}
.filters{display:flex;align-items:end;gap:9px;flex-wrap:wrap;margin-bottom:12px}.filters .field{min-width:145px}.filters .field.search{min-width:250px;flex:1}.form-card{padding:17px}.form-grid{display:grid;gap:12px}.form-grid.one{grid-template-columns:1fr}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.form-grid.five{grid-template-columns:repeat(5,minmax(0,1fr))}.span-2{grid-column:span 2}.span-3{grid-column:span 3}.span-4{grid-column:span 4}.span-5{grid-column:span 5}.field,label.field,.form-card label{display:flex;flex-direction:column;gap:5px;min-width:0;color:#4b5b68;font-size:10px;font-weight:750}.field > span,.form-card label > span{display:flex;align-items:center;gap:4px}.required:after{content:"*";color:var(--danger)}input,select,textarea{width:100%;min-height:39px;border:1px solid #d8e1dd;border-radius:10px;background:#fbfcfb;color:var(--ink);padding:8px 10px;font-size:12px;outline:none;transition:.15s}textarea{min-height:90px;resize:vertical}input:focus,select:focus,textarea:focus{border-color:#55aaa2;box-shadow:0 0 0 3px rgba(20,151,141,.11);background:#fff}input[readonly],input:disabled,select:disabled,textarea:disabled{background:#f0f3f2;color:#73808a;cursor:not-allowed}.input-group{display:flex}.input-group input{border-radius:10px 0 0 10px}.input-suffix{min-width:42px;border:1px solid #d8e1dd;border-left:0;border-radius:0 10px 10px 0;background:#f1f5f3;display:grid;place-items:center;color:#6a7883;font-size:11px;font-weight:700}.check-line{flex-direction:row!important;align-items:center!important;gap:8px!important;min-height:39px}.check-line input{width:17px;height:17px;min-height:auto}.help{font-size:9px;color:var(--muted);font-weight:500}.form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.repeat-row{display:grid;gap:8px;align-items:end;padding:10px;border:1px solid var(--line);border-radius:11px;background:#fcfdfc;margin-bottom:8px}.repeat-row.metal-purchase{grid-template-columns:2fr 1fr 1fr 1fr auto}.repeat-row.melting-input{grid-template-columns:2fr 1fr auto}.repeat-row.additive{grid-template-columns:2fr 1fr 1fr 1fr auto}.repeat-row.sale-item{grid-template-columns:100px 2fr 1.2fr 1fr 1fr 1fr auto}.calculated{background:#eef8f5!important;color:#0c695f!important;font-weight:800}.summary-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden}.summary-strip > div{background:var(--panel);padding:11px 12px}.summary-strip span{display:block;color:var(--muted);font-size:9px;text-transform:uppercase;font-weight:700}.summary-strip strong{display:block;margin-top:4px;font-size:14px}.summary-strip .highlight{background:var(--primary-soft);color:#0b665e}
.chart-wrap{height:250px;position:relative}.chart-wrap canvas{width:100%;height:100%}.donut{width:170px;height:170px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--primary) 0 var(--p1,40%),#32a86a var(--p1,40%) var(--p2,70%),var(--gold) var(--p2,70%) var(--p3,90%),#dfe7e4 var(--p3,90%) 100%);position:relative;margin:auto}.donut:after{content:"";position:absolute;width:104px;height:104px;border-radius:50%;background:var(--panel)}.donut-center{position:relative;z-index:1;text-align:center}.donut-center strong{display:block;font-size:20px}.donut-center span{font-size:9px;color:var(--muted)}.legend{display:grid;gap:7px}.legend-row{display:flex;align-items:center;gap:7px;font-size:10px}.legend-swatch{width:8px;height:8px;border-radius:3px;background:var(--primary)}.progress{height:7px;border-radius:999px;background:#e9eeec;overflow:hidden}.progress span{height:100%;display:block;border-radius:inherit;background:linear-gradient(90deg,var(--primary),var(--primary-2))}
.stage-track{display:flex;align-items:flex-start;overflow:auto;padding:4px 0 8px}.stage{min-width:115px;text-align:center;position:relative;padding:0 8px}.stage:not(:last-child):after{content:"";position:absolute;height:2px;background:#dfe6e3;left:60%;right:-40%;top:16px}.stage.done:not(:last-child):after{background:var(--success)}.stage-circle{width:34px;height:34px;border-radius:50%;border:2px solid #dce4e1;background:#fff;color:#75828b;display:grid;place-items:center;margin:0 auto 7px;font-size:10px;font-weight:800;position:relative;z-index:1}.stage.done .stage-circle{background:var(--success);border-color:var(--success);color:#fff}.stage.current .stage-circle{background:var(--gold-soft);border-color:var(--gold);color:#8f6609}.stage strong{display:block;font-size:9px}.stage small{display:block;color:var(--muted);font-size:8px;margin-top:2px}.timeline{display:grid;gap:0}.timeline-item{display:grid;grid-template-columns:17px 1fr;gap:9px;position:relative;padding-bottom:13px}.timeline-item:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--primary);margin-top:5px;position:relative;z-index:1}.timeline-item:not(:last-child):after{content:"";position:absolute;width:1px;background:var(--line);left:3px;top:13px;bottom:0}.timeline-item strong{font-size:10px}.timeline-item p{margin:2px 0 0;color:var(--muted);font-size:9px}
.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:14px;overflow:auto}.tab{border:0;background:transparent;padding:9px 12px;color:var(--muted);font-size:11px;font-weight:700;border-bottom:2px solid transparent;white-space:nowrap}.tab.active{color:var(--primary);border-bottom-color:var(--primary)}.settings-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:15px}.settings-nav{position:sticky;top:84px;align-self:start}.settings-nav a{display:flex;gap:8px;align-items:center;padding:9px 10px;border-radius:9px;font-size:11px;color:#52616d;margin-bottom:3px}.settings-nav a:hover,.settings-nav a.active{background:var(--primary-soft);color:var(--primary);font-weight:700}.settings-nav svg{width:15px;height:15px}.image-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.job-image{aspect-ratio:4/3;border-radius:11px;overflow:hidden;background:#edf1ef;border:1px solid var(--line)}.job-image img{width:100%;height:100%;object-fit:cover}
.pagination{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 0 0;color:var(--muted);font-size:10px}.pagination-links{display:flex;gap:4px}.page-link{min-width:30px;height:30px;border:1px solid var(--line);border-radius:8px;background:var(--panel);display:grid;place-items:center;color:#53616c}.page-link.active{background:var(--primary);border-color:var(--primary);color:#fff}.page-link.disabled{opacity:.45}.login-body{min-height:100vh;background:radial-gradient(circle at 8% 5%,#164e48 0,#0a2739 34%,#061523 72%);display:grid;place-items:center;padding:20px}.login-shell{width:min(950px,100%);min-height:560px;background:rgba(255,255,255,.97);border-radius:24px;overflow:hidden;display:grid;grid-template-columns:1.05fr .95fr;box-shadow:0 35px 90px rgba(0,0,0,.33)}.login-art{position:relative;padding:46px;background:linear-gradient(145deg,#08283a,#0c5a51);color:#fff;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.login-art:before,.login-art:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.12)}.login-art:before{width:310px;height:310px;right:-120px;top:-80px}.login-art:after{width:230px;height:230px;left:-100px;bottom:-80px}.login-art .brand-line{display:flex;gap:11px;align-items:center;position:relative;z-index:1}.login-art h2{font-size:33px;line-height:1.15;letter-spacing:-.03em;margin:0 0 12px;position:relative;z-index:1}.login-art p{color:#bad3d1;max-width:390px;font-size:12px;position:relative;z-index:1}.login-features{display:grid;grid-template-columns:1fr 1fr;gap:9px;position:relative;z-index:1}.login-feature{padding:10px;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:rgba(255,255,255,.05);font-size:10px}.login-panel{padding:50px;display:flex;flex-direction:column;justify-content:center}.login-panel h1{font-size:27px;margin:0 0 5px;letter-spacing:-.025em}.login-panel > p{font-size:11px;color:var(--muted);margin:0 0 25px}.login-panel form{display:grid;gap:14px}.login-foot{text-align:center;color:var(--muted);font-size:9px;margin-top:22px}
body.dark{--bg:#09131d;--panel:#0e1c28;--panel-2:#112330;--ink:#e8f0f4;--muted:#8da0ac;--line:#20313d;--shadow:0 12px 34px rgba(0,0,0,.18);--shadow-sm:0 4px 14px rgba(0,0,0,.18)}body.dark .topbar{background:rgba(14,28,40,.9)}body.dark .page-head h1{color:#edf5f7}body.dark .table th{background:#10212e}body.dark .table tbody tr:hover{background:#112330}body.dark input,body.dark select,body.dark textarea{background:#10212e;border-color:#2a3d49;color:#e8f0f4}body.dark .stage-circle{background:#0e1c28}body.dark .login-shell{background:#0e1c28}
@media(max-width:1450px){.kpi-grid.six{grid-template-columns:repeat(3,1fr)}.kpi-grid.five{grid-template-columns:repeat(3,1fr)}.form-grid.five{grid-template-columns:repeat(3,1fr)}.span-5{grid-column:span 3}.repeat-row.sale-item{grid-template-columns:90px 1.7fr 1fr 1fr 1fr auto}.repeat-row.sale-item .optional-col{display:none}}
@media(max-width:1100px){.kpi-grid{grid-template-columns:repeat(2,1fr)}.grid.two,.grid.equal,.grid.three,.grid.four{grid-template-columns:1fr}.form-grid.four,.form-grid.three{grid-template-columns:repeat(2,1fr)}.span-3,.span-4{grid-column:span 2}.settings-layout{grid-template-columns:1fr}.settings-nav{position:static;display:flex;overflow:auto;padding:8px}.settings-nav a{white-space:nowrap;margin:0}.repeat-row.sale-item{grid-template-columns:1fr 1.5fr 1fr 1fr auto}.repeat-row.sale-item .optional-col-2{display:none}.summary-strip{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){:root{--sidebar:250px}.sidebar{transform:translateX(-100%);transition:transform .2s}.sidebar.open{transform:translateX(0);box-shadow:20px 0 50px rgba(0,0,0,.26)}.main{margin-left:0}.mobile-menu{display:grid}.page{padding:15px}.topbar{padding:0 14px;height:62px}.top-title span,.user-chip span{display:none}.page-head{flex-direction:column}.page-actions{width:100%}.page-actions .btn{flex:1}.kpi-grid,.kpi-grid.five,.kpi-grid.six{grid-template-columns:repeat(2,1fr)}.form-grid.two,.form-grid.three,.form-grid.four,.form-grid.five{grid-template-columns:1fr}.span-2,.span-3,.span-4,.span-5{grid-column:span 1}.repeat-row,.repeat-row.metal-purchase,.repeat-row.melting-input,.repeat-row.additive,.repeat-row.sale-item{grid-template-columns:1fr 1fr}.repeat-row .remove-cell{grid-column:span 2}.filters{align-items:stretch}.filters .field,.filters .field.search{min-width:100%;width:100%}.login-shell{grid-template-columns:1fr;max-width:480px;min-height:auto}.login-art{display:none}.login-panel{padding:35px 27px}.image-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){html{font-size:13px}.kpi-grid,.kpi-grid.five,.kpi-grid.six{grid-template-columns:1fr}.kpi{min-height:96px}.page-head h1{font-size:23px}.top-actions .theme-text,.user-chip strong{display:none}.user-chip{padding-right:4px}.summary-strip{grid-template-columns:1fr}.repeat-row,.repeat-row.metal-purchase,.repeat-row.melting-input,.repeat-row.additive,.repeat-row.sale-item{grid-template-columns:1fr}.repeat-row .remove-cell{grid-column:span 1}.form-actions{flex-direction:column-reverse}.form-actions .btn{width:100%}.mini-grid{grid-template-columns:1fr}.image-grid{grid-template-columns:1fr 1fr}}
@media print{.sidebar,.topbar,.page-actions,.no-print,.btn,.filters{display:none!important}.main{margin:0}.page{padding:0}.card,.kpi{box-shadow:none;border-color:#ccc}.page-head{margin-bottom:10px}body{background:#fff;color:#000}}
/* Advanced jewellery ERP components */
.success-text{color:var(--success)!important}.danger-text{color:var(--danger)!important}.warning-text{color:var(--warning)!important}
.user-cell{display:flex;align-items:center;gap:9px}.user-cell .avatar{width:31px;height:31px}.user-cell small{display:block;color:var(--muted);font-size:9px}
.role-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.role-option{display:flex;gap:10px;align-items:flex-start;padding:13px;border:1px solid var(--line);border-radius:12px;background:var(--panel-2);cursor:pointer}.role-option input{margin-top:3px}.role-option strong,.role-option small{display:block}.role-option small{font-size:10px;color:var(--muted);margin-top:2px}
.permission-groups{display:grid;gap:13px}.permission-group{border:1px solid var(--line);border-radius:13px;overflow:hidden}.permission-group-head{display:flex;justify-content:space-between;padding:11px 13px;background:var(--panel-2);border-bottom:1px solid var(--line);font-size:11px}.permission-group-head span{color:var(--muted)}.permission-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}.permission-grid .check-line{border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:0;margin:0}.permission-grid small{display:block;font-size:9px;color:var(--muted)}
.summary-list{display:grid;gap:0}.summary-list>div{display:flex;align-items:center;justify-content:space-between;padding:11px 2px;border-bottom:1px solid var(--line)}.summary-list .highlight{background:var(--primary-soft);padding:12px;border-radius:9px;border:0;margin-top:5px}
.audit-json{max-width:480px;max-height:260px;overflow:auto;white-space:pre-wrap;background:var(--nav);color:#d8e4ec;padding:12px;border-radius:9px;font-size:9px}.table details summary{cursor:pointer;color:var(--primary);font-weight:700}
.thumb.placeholder{display:grid;place-items:center;background:var(--gold-soft);color:var(--gold)}.thumb.placeholder svg{width:20px;height:20px}.compact-stage .stage{min-width:95px}.compact-stage{overflow-x:auto;padding-bottom:8px}
.otp-input{text-align:center;font-size:28px!important;letter-spacing:.45em;font-weight:800}.compact-login{max-width:850px;min-height:500px}.mobile-brand{display:none;margin-bottom:25px}.login-panel .btn.w-full{width:100%}
.inline-icon{width:14px!important;height:14px!important;vertical-align:-2px}.margin-top-14{margin-top:14px}.margin-top-20{margin-top:20px}.two-columns{grid-template-columns:1fr 1fr!important}.kpi-compact-title{font-size:16px!important}
@media(max-width:1100px){.role-grid,.permission-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.role-grid,.permission-grid{grid-template-columns:1fr}.mobile-brand{display:flex}}
.repeat-row.gem-purchase{grid-template-columns:1.2fr 1fr 1fr 1fr .9fr .7fr 1fr 1fr 1fr auto}
@media(max-width:1450px){.repeat-row.gem-purchase{grid-template-columns:repeat(5,minmax(0,1fr))}.repeat-row.gem-purchase .remove-cell{align-self:end}}
@media(max-width:1100px){.repeat-row.gem-purchase{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:820px){.repeat-row.gem-purchase{grid-template-columns:repeat(2,minmax(0,1fr))}.repeat-row.gem-purchase .remove-cell{grid-column:span 2}}
@media(max-width:520px){.repeat-row.gem-purchase{grid-template-columns:1fr}.repeat-row.gem-purchase .remove-cell{grid-column:span 1}}

/* Fortart Jewellers premium enterprise theme */
.sidebar{background:linear-gradient(180deg,#171c1a 0%,#1b211f 70%,#151a18 100%);border-right:1px solid rgba(208,161,58,.12)}
.sidebar-head{height:76px;background:rgba(23,28,26,.96);border-bottom-color:rgba(208,161,58,.13)}
.brand-mark{background:rgba(208,161,58,.08);border:1px solid rgba(208,161,58,.55);color:#e3b94f;box-shadow:none}
.brand-copy strong{font-family:Georgia,"Times New Roman",serif;color:#e9c46b;font-size:16px;letter-spacing:.035em}.brand-copy span{color:#c8cbc5;font-size:9px;letter-spacing:.18em}
.sidebar-user{background:rgba(255,255,255,.025);border-color:rgba(255,255,255,.07)}
.sidebar-user .avatar,.user-chip .avatar{background:linear-gradient(145deg,#f1d486,#b98928);color:#2c230d}
.menu{padding-bottom:8px}.menu-label{color:#7d8883}.menu a{color:#d3d8d5;font-weight:560}.menu a svg{color:#d5aa42}.menu a:hover{background:rgba(255,255,255,.055)}.menu a.active{background:linear-gradient(95deg,rgba(15,107,76,.72),rgba(15,107,76,.4));box-shadow:inset 3px 0 0 #dfb64c}.menu a.active svg{color:#f0c65f}
.sidebar-promo{margin:10px 14px 20px;padding:16px;border-radius:14px;border:1px solid rgba(208,161,58,.22);background:linear-gradient(145deg,rgba(208,161,58,.09),rgba(15,107,76,.08));display:grid;gap:5px;color:#fff}.sidebar-promo-icon{width:39px;height:39px;border-radius:50%;display:grid;place-items:center;background:rgba(208,161,58,.12);color:#e2b64b}.sidebar-promo-icon svg{width:22px;height:22px}.sidebar-promo strong{font-family:Georgia,"Times New Roman",serif;color:#e8c66e;font-size:13px}.sidebar-promo span{font-size:9px;line-height:1.5;color:#aeb8b2}
.topbar{height:72px;padding:0 22px;background:rgba(255,255,253,.94);box-shadow:0 1px 0 rgba(23,29,27,.02)}
.top-search{width:min(390px,34vw);height:40px;display:flex;align-items:center;gap:9px;border:1px solid var(--line);background:#fff;border-radius:10px;padding:0 12px;color:#6f7974}.top-search svg{width:16px;height:16px}.top-search input{width:100%;border:0;outline:0;background:transparent;color:var(--ink);font-size:11px}.top-search input::placeholder{color:#9ba29e}
.date-chip{margin-left:auto;height:40px;display:flex;align-items:center;gap:9px;padding:0 12px;border:1px solid var(--line);background:#fff;border-radius:10px}.date-chip svg{width:16px;height:16px;color:var(--primary)}.date-chip strong,.date-chip span{display:block}.date-chip strong{font-size:11px}.date-chip span{font-size:9px;color:var(--muted)}
.top-actions{margin-left:8px}.quick-menu{position:relative}.quick-menu summary{list-style:none;height:40px;display:flex;align-items:center;gap:7px;padding:0 13px;border:1px solid #d9e5dd;border-radius:10px;background:#f2f8f4;color:#135d45;font-size:11px;font-weight:750;cursor:pointer}.quick-menu summary::-webkit-details-marker{display:none}.quick-menu summary svg{width:15px;height:15px}.quick-menu-popover{position:absolute;right:0;top:47px;min-width:190px;padding:7px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 20px 50px rgba(20,30,25,.14);z-index:90}.quick-menu-popover a{display:flex;align-items:center;gap:9px;padding:10px;border-radius:8px;font-size:11px;font-weight:650}.quick-menu-popover a:hover{background:var(--primary-soft);color:var(--primary)}.quick-menu-popover svg{width:16px;height:16px;color:var(--gold)}
.top-notification{position:relative}.top-notification>span{position:absolute;right:6px;top:5px;width:7px;height:7px;border:2px solid #fff;border-radius:50%;background:#d48b16}
.user-chip{border:0;background:transparent;padding-right:5px}.icon-btn{background:#fff}.page{padding:22px 24px 28px}.page-head h1{font-size:25px;color:#171d1b}.page-head p{font-size:11px}.btn.primary{background:linear-gradient(135deg,#0d6748,#147a57);box-shadow:0 8px 20px rgba(15,107,76,.19)}
.card,.kpi{border-color:#e6e8e3;box-shadow:var(--shadow-sm)}.kpi{padding:15px;min-height:104px}.kpi:after{opacity:.5}.kpi.silver .kpi-icon,.kpi.silver:after{background:#f0f2f1;color:#737d79}.kpi-label{font-size:9px;letter-spacing:.04em}.kpi strong{font-size:18px;margin-top:6px}.kpi small{font-size:9px}.card-head h3{font-size:13px}.card-head p{font-size:9px}.card-link{color:var(--primary);font-size:10px;font-weight:750}.table td small{display:block;color:var(--muted);font-size:8px;margin-top:2px}.table tfoot th{border-top:1px solid var(--line);padding:11px 10px;background:#fbfcfa;font-size:9px;text-transform:uppercase;letter-spacing:.05em}
.dashboard-eight{grid-template-columns:repeat(8,minmax(135px,1fr));gap:11px}.dashboard-eight .kpi{min-height:112px;display:block}.dashboard-eight .kpi-icon{width:36px;height:36px;border-radius:11px}.dashboard-eight .kpi-icon svg{width:19px;height:19px}.dashboard-eight .kpi-copy{margin-top:9px}.dashboard-grid{display:grid;gap:14px}.dashboard-grid-primary{grid-template-columns:minmax(0,1.35fr) minmax(300px,.9fr) minmax(300px,.85fr);margin-bottom:14px}.dashboard-grid-secondary{grid-template-columns:repeat(5,minmax(0,1fr))}.dashboard-card{margin-bottom:0;min-width:0}.dashboard-summary-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:8px}.dashboard-summary-row>div{padding:9px 10px;background:var(--panel-2);border:1px solid var(--line);border-radius:9px}.dashboard-summary-row span,.profit-metrics span,.efficiency-stats span{display:block;color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.045em}.dashboard-summary-row strong,.profit-metrics strong{display:block;font-size:13px;margin-top:3px}.dashboard-chart{height:235px}.compact-table .table th,.compact-table .table td{padding:9px 8px}.compact-table .amount{text-align:right}.progress-list{display:grid;gap:13px}.progress-row{display:grid;gap:6px}.progress-meta{display:flex;align-items:center;justify-content:space-between;font-size:10px}.progress-meta strong{font-size:9px;color:var(--muted)}.progress-track{height:6px;background:#edf0ec;border-radius:99px;overflow:hidden}.progress-track span{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#0f6b4c,#38a176);min-width:3px}.activity-list,.alert-list,.ranking-list{display:grid}.activity-row,.alert-row,.ranking-row{min-height:50px;display:flex;align-items:center;gap:9px;border-bottom:1px solid var(--line);padding:7px 0}.activity-row:last-child,.alert-row:last-child,.ranking-row:last-child{border-bottom:0}.activity-dot{width:7px;height:7px;border-radius:50%;background:var(--primary);box-shadow:0 0 0 4px var(--primary-soft);flex:none}.activity-row strong,.alert-row strong,.ranking-row strong{display:block;font-size:9px}.activity-row small,.alert-row small,.ranking-row small{display:block;font-size:8px;color:var(--muted);margin-top:2px}.alert-row{justify-content:space-between}.rank{width:23px;height:23px;border-radius:8px;background:var(--gold-soft);color:#9c7217;display:grid;place-items:center;font-size:9px;font-weight:800;flex:none}.ranking-row>div{min-width:0;flex:1}.ranking-row>b{font-size:9px;white-space:nowrap}.compact-empty{padding:24px 5px!important;font-size:9px}.efficiency-wrap{display:grid;grid-template-columns:112px 1fr;gap:13px;align-items:center}.efficiency-donut{width:108px;height:108px;border-radius:50%;background:conic-gradient(var(--primary) calc(var(--value)*1%),#e7ece8 0);display:grid;place-items:center;position:relative}.efficiency-donut:after{content:"";position:absolute;width:76px;height:76px;border-radius:50%;background:var(--panel)}.efficiency-donut>div{position:relative;z-index:1;text-align:center}.efficiency-donut strong,.efficiency-donut span{display:block}.efficiency-donut strong{font-size:19px}.efficiency-donut span{font-size:8px;color:var(--muted)}.efficiency-stats{display:grid;gap:8px}.efficiency-stats>div{display:flex;justify-content:space-between;gap:8px;border-bottom:1px dashed var(--line);padding-bottom:6px}.efficiency-stats strong{font-size:10px}.profit-metrics{display:grid;gap:9px}.profit-metrics>div{padding:10px;border-radius:9px;background:var(--panel-2);border:1px solid var(--line)}.profit-metrics .profit-net{background:var(--primary-soft);border-color:#d2e9dc}.profit-net strong{color:var(--primary)}
body.dark .top-search,body.dark .date-chip,body.dark .quick-menu summary,body.dark .quick-menu-popover{background:#0e1c28;border-color:#263a34}body.dark .quick-menu-popover{box-shadow:0 20px 50px rgba(0,0,0,.35)}body.dark .efficiency-donut:after{background:var(--panel)}body.dark .table tfoot th{background:#10212e}
@media(max-width:1700px){.dashboard-eight{grid-template-columns:repeat(4,minmax(0,1fr))}.dashboard-grid-secondary{grid-template-columns:repeat(3,minmax(0,1fr))}.profit-card{grid-column:span 1}}
@media(max-width:1280px){.dashboard-grid-primary{grid-template-columns:1fr 1fr}.sales-card{grid-column:span 2}.dashboard-grid-secondary{grid-template-columns:repeat(2,minmax(0,1fr))}.top-search{width:300px}}
@media(max-width:900px){.top-search,.date-chip,.quick-menu{display:none}.dashboard-grid-primary,.dashboard-grid-secondary{grid-template-columns:1fr}.sales-card{grid-column:auto}.dashboard-eight{grid-template-columns:repeat(2,minmax(0,1fr))}.sidebar-promo{display:none}}
@media(max-width:520px){.dashboard-eight{grid-template-columns:1fr}.dashboard-summary-row{grid-template-columns:1fr}.dashboard-chart{height:210px}.efficiency-wrap{grid-template-columns:100px 1fr}.efficiency-donut{width:96px;height:96px}.efficiency-donut:after{width:67px;height:67px}}

/* Fortart Enterprise extensions */
.brand-logo{width:46px;height:46px;border-radius:13px;object-fit:contain;background:#fff;padding:4px;box-shadow:0 8px 22px rgba(0,0,0,.2)}
.text-danger{color:var(--danger)!important}.grow{flex:1 1 260px}.span-3{grid-column:span 3}.span-2{grid-column:span 2}.form-grid.five{grid-template-columns:repeat(5,minmax(0,1fr))}
.notice{padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--panel-2);color:#4d5a55;margin-top:12px;font-size:12px}.notice.success{background:var(--success-soft);border-color:#caead9;color:#126c4b}.notice.warning{background:var(--warning-soft);border-color:#f5d5a9;color:#985b12}.danger-zone{border-color:#f0bdc5;background:linear-gradient(180deg,#fff,#fff8f9)}
.sub-card{border:1px solid var(--line);background:var(--panel-2);border-radius:14px;padding:15px}.sub-card h3{margin:0 0 12px}.sticky-card{position:sticky;top:84px}.row-actions,.table-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px}.table td small,.directory-item small,.detail-grid span{display:block;color:var(--muted);font-size:10px;margin-top:2px}.badge.muted{background:#f0f2f0;color:#59635f;border-color:#dfe3df}.badge.gold{background:var(--gold-soft);color:#896411;border-color:#ecd58f}.badge.warning{background:var(--warning-soft);color:#9c5b0c;border-color:#f7d9af}.badge.danger{background:var(--danger-soft);color:#a72c40;border-color:#f4c4cc}
.detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.detail-grid>div{padding:12px;border:1px solid var(--line);border-radius:11px;background:var(--panel-2)}.detail-grid strong{display:block;margin-top:4px;font-size:12px;word-break:break-word}
.directory-list{display:grid;gap:9px}.directory-item{border:1px solid var(--line);border-radius:11px;background:#fff;overflow:hidden}.directory-item>summary{list-style:none;cursor:pointer;padding:11px 12px;display:flex;align-items:center;justify-content:space-between;gap:10px}.directory-item>summary::-webkit-details-marker{display:none}.directory-item[open]>summary{border-bottom:1px solid var(--line);background:var(--panel-2)}.directory-item form{padding:13px}
.access-mode-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:15px}.radio-card{border:1px solid var(--line);border-radius:13px;padding:14px;background:var(--panel-2);display:flex;align-items:flex-start;gap:10px;cursor:pointer;transition:.15s}.radio-card:hover{border-color:#badccf}.radio-card:has(input:checked){border-color:var(--primary);background:var(--primary-soft);box-shadow:0 0 0 3px rgba(15,107,76,.08)}.radio-card input{margin-top:3px;accent-color:var(--primary)}.radio-card strong,.radio-card small{display:block}.radio-card small{color:var(--muted);font-size:10px;margin-top:3px}
.permission-editor{transition:.2s}.permission-editor.is-disabled{opacity:.55;filter:grayscale(.2)}.permission-editor.is-disabled:after{content:"Choose Custom User Permissions above to activate this matrix.";display:block;padding:13px;margin-top:12px;text-align:center;border-radius:11px;background:#f5f6f4;color:var(--muted);font-size:11px;font-weight:700}.permission-editor.is-disabled input[type=checkbox]{pointer-events:none}.permission-search{height:36px;min-width:210px;border:1px solid var(--line);border-radius:9px;padding:0 11px;background:#fff}.permission-groups{display:grid;gap:12px}.permission-group{border:1px solid var(--line);border-radius:13px;overflow:hidden;background:#fff}.permission-group-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 13px;background:#f6f8f6;border-bottom:1px solid var(--line)}.permission-group-head>div>strong,.permission-group-head>div>span{display:block}.permission-group-head>div>span{color:var(--muted);font-size:9px;margin-top:2px}.permission-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}.permission-option{padding:10px 12px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);margin:0!important}.permission-option:nth-child(3n){border-right:0}.check-line.compact{min-height:auto}.check-line.compact span{font-size:10px}
.password-input{position:relative}.password-input input{padding-right:46px!important;width:100%}.password-toggle{position:absolute;right:5px;top:50%;transform:translateY(-50%);width:34px;height:34px;border:0;border-radius:8px;background:transparent;display:grid;place-items:center;color:var(--muted)}.password-toggle:hover{background:var(--panel-2);color:var(--primary)}.password-toggle svg{width:18px;height:18px}

/* Product 360 */
.product-hero,.customer-hero,.invoice-hero{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,.8fr);gap:16px;align-items:stretch}.product-hero-main,.customer-hero-main{display:flex;align-items:center;gap:16px}.product-hero-image{width:150px;height:150px;border-radius:18px;overflow:hidden;background:linear-gradient(145deg,#eef2ee,#fff8e7);display:grid;place-items:center;border:1px solid var(--line);flex:none}.product-hero-image img{width:100%;height:100%;object-fit:cover}.product-hero-image svg{width:54px;height:54px;color:var(--gold)}.product-price-panel,.invoice-total{border-radius:16px;padding:18px;background:linear-gradient(145deg,#122823,#0f5e46);color:#fff;display:flex;flex-direction:column;justify-content:center}.product-price-panel span,.invoice-total span{color:#bcd4ca;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.product-price-panel strong,.invoice-total strong{font-size:26px;margin:7px 0}.identity-line{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-top:9px}.image-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.image-card{position:relative;border:1px solid var(--line);border-radius:12px;overflow:hidden;aspect-ratio:1;background:#f3f4f2}.image-card img{width:100%;height:100%;object-fit:cover}.image-card .badge{position:absolute;top:7px;left:7px}.timeline{position:relative;padding-left:18px}.timeline:before{content:"";position:absolute;left:5px;top:6px;bottom:6px;width:2px;background:var(--line)}.timeline-item{position:relative;padding:0 0 16px 15px}.timeline-item:before{content:"";position:absolute;left:-17px;top:5px;width:10px;height:10px;border-radius:50%;background:var(--primary);border:2px solid #fff;box-shadow:0 0 0 2px #b8dccc}.timeline-item strong,.timeline-item span,.timeline-item small{display:block}.timeline-item span{color:var(--muted);font-size:11px}.timeline-item small{font-size:9px;color:#8b9590}.genealogy-tree{display:grid;gap:10px}.genealogy-node{border:1px solid var(--line);border-radius:12px;padding:12px;background:var(--panel-2)}.genealogy-node a{color:var(--primary);font-weight:750}.workflow-line{display:flex;align-items:center;overflow:auto;padding:5px 0 12px}.workflow-line span{min-width:max-content;padding:8px 11px;border-radius:10px;background:var(--panel-2);border:1px solid var(--line);font-size:10px;font-weight:700}.workflow-line i{display:block;width:24px;height:1px;background:var(--line);flex:none}

/* Customer CRM */
.customer-avatar{width:88px;height:88px;border-radius:20px;display:grid;place-items:center;background:linear-gradient(145deg,var(--primary-soft),var(--gold-soft));font-size:28px;font-weight:800;color:var(--primary);flex:none}.customer-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.customer-values>div{padding:10px;border-radius:11px;background:var(--panel-2);border:1px solid var(--line)}.customer-values span,.customer-values strong{display:block}.customer-values span{font-size:9px;color:var(--muted);text-transform:uppercase}.consent-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.consent-status{padding:10px;border:1px solid var(--line);border-radius:10px;display:flex;justify-content:space-between;align-items:center;font-size:11px}

/* Currency, recipes, platform */
.currency-grid,.recipe-grid,.module-grid,.ai-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.currency-card,.recipe-card,.module-card,.ai-card{border:1px solid var(--line);border-radius:15px;background:#fff;padding:15px;box-shadow:var(--shadow-sm)}.currency-card-head,.recipe-card-head,.module-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.currency-code{width:44px;height:44px;border-radius:12px;background:var(--primary-soft);display:grid;place-items:center;font-weight:850;color:var(--primary)}.rate-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:12px 0}.rate-strip>div{padding:8px;border-radius:9px;background:var(--panel-2);text-align:center}.rate-strip span,.rate-strip strong{display:block}.rate-strip span{font-size:8px;color:var(--muted);text-transform:uppercase}.component-bars{display:grid;gap:7px;margin-top:12px}.component-bar{display:grid;grid-template-columns:110px 1fr 50px;align-items:center;gap:8px;font-size:10px}.component-bar-track{height:7px;border-radius:10px;background:#edf0ed;overflow:hidden}.component-bar-track i{display:block;height:100%;background:linear-gradient(90deg,var(--primary),var(--gold));border-radius:10px}.module-card.is-disabled,.ai-card.is-disabled{opacity:.65;background:#f6f7f5}.module-dependencies{font-size:9px;color:var(--muted);margin-top:8px}.workflow-vertical{display:grid;gap:0}.workflow-vertical>div{position:relative;padding:10px 10px 10px 36px;border-left:2px solid var(--line);margin-left:11px}.workflow-vertical>div:before{content:attr(data-step);position:absolute;left:-13px;top:9px;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:var(--primary);color:#fff;font-size:9px;font-weight:800}

/* Login */
.clean-login{min-height:100vh;display:grid;grid-template-columns:minmax(380px,1.05fr) minmax(420px,.95fr);background:#f6f7f4}.login-brand-panel{position:relative;overflow:hidden;padding:56px;display:flex;flex-direction:column;justify-content:space-between;background:radial-gradient(circle at 15% 20%,rgba(215,176,72,.24),transparent 30%),linear-gradient(145deg,#102722,#082e26 50%,#10212b);color:#fff}.login-brand-panel:after{content:"";position:absolute;width:380px;height:380px;border:1px solid rgba(255,255,255,.08);border-radius:50%;right:-150px;bottom:-120px;box-shadow:0 0 0 70px rgba(255,255,255,.025),0 0 0 140px rgba(255,255,255,.018)}.login-brand-lockup{display:flex;align-items:center;gap:14px;position:relative;z-index:1}.login-brand-lockup .brand-mark{width:56px;height:56px}.login-brand-lockup strong{display:block;font-size:25px;letter-spacing:-.025em}.login-brand-lockup span{display:block;color:#b7ccc4;margin-top:2px}.login-brand-message{max-width:540px;position:relative;z-index:1}.login-brand-message h1{font-size:42px;line-height:1.08;margin:0 0 14px;letter-spacing:-.04em}.login-brand-message p{color:#bfd0ca;max-width:480px;font-size:14px}.login-clock{display:flex;align-items:center;gap:12px;position:relative;z-index:1;color:#d9e7e1}.login-clock strong{font-size:18px;display:block}.login-clock span{font-size:11px;color:#9eb7ad}.login-form-panel{display:grid;place-items:center;padding:36px}.login-card{width:min(100%,470px);background:#fff;border:1px solid var(--line);border-radius:22px;padding:30px;box-shadow:0 30px 80px rgba(26,40,34,.11)}.login-card h2{font-size:26px;margin:0}.login-card>p{color:var(--muted);margin:6px 0 22px}.auth-mini-card{display:flex;align-items:center;gap:10px;padding:11px;border-radius:11px;background:var(--primary-soft);color:#155d45;font-size:11px;margin-top:14px}.auth-mini-card svg{width:18px;height:18px}.login-footer{text-align:center;color:var(--muted);font-size:10px;margin-top:17px}

/* External production */
.assignment-list{display:grid;gap:9px}.assignment-card{border:1px solid var(--line);border-radius:11px;padding:11px;background:var(--panel-2)}.movement-product{display:flex;align-items:center;gap:10px}.metric-box{padding:13px;border-radius:12px;background:var(--panel-2);border:1px solid var(--line)}.metric-box span,.metric-box strong{display:block}.metric-box span{font-size:9px;color:var(--muted);text-transform:uppercase}.metric-box strong{font-size:18px;margin-top:3px}

@media(max-width:1280px){.currency-grid,.recipe-grid,.module-grid,.ai-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.permission-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.permission-option:nth-child(3n){border-right:1px solid var(--line)}.permission-option:nth-child(2n){border-right:0}.form-grid.five{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.clean-login{grid-template-columns:1fr}.login-brand-panel{min-height:290px;padding:32px}.login-brand-message h1{font-size:32px}.login-form-panel{padding:22px}.product-hero,.customer-hero,.invoice-hero{grid-template-columns:1fr}.sticky-card{position:static}.detail-grid,.customer-values{grid-template-columns:repeat(2,minmax(0,1fr))}.access-mode-grid{grid-template-columns:1fr}}
@media(max-width:700px){.currency-grid,.recipe-grid,.module-grid,.ai-grid,.permission-grid,.detail-grid,.customer-values,.consent-grid{grid-template-columns:1fr}.permission-option,.permission-option:nth-child(3n),.permission-option:nth-child(2n){border-right:0}.product-hero-main,.customer-hero-main{align-items:flex-start}.product-hero-image{width:105px;height:105px}.image-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.login-brand-panel{display:none}.login-form-panel{min-height:100vh;padding:16px}.login-card{padding:23px}.span-2,.span-3{grid-column:auto}.form-grid.five{grid-template-columns:1fr}}
@media print{.sidebar,.topbar,.page-actions,.filter-bar,.form-actions,.no-print,.sticky-card form{display:none!important}.main{margin:0}.page{padding:0}.card{box-shadow:none;break-inside:avoid}.badge{border:1px solid #999!important;color:#000!important;background:#fff!important}}

/* Managed dropdowns and master-data administration */
.managed-select-wrap{display:grid;grid-template-columns:minmax(0,1fr) 38px 38px;gap:6px;align-items:stretch}.managed-select-wrap>select{min-width:0}.managed-select-add,.managed-select-manage{width:38px;min-height:38px;border:1px solid #c9e5da;border-radius:9px;background:var(--primary-soft);color:var(--primary);display:grid;place-items:center;transition:.15s}.managed-select-manage{border-color:var(--line);background:var(--panel-2);color:#52615d}.managed-select-add:hover,.managed-select-manage:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}.managed-select-add svg,.managed-select-manage svg{width:17px;height:17px}.master-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.master-card{min-height:78px;border:1px solid var(--line);border-radius:12px;background:linear-gradient(135deg,#fff,#f8fbf9);display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px;transition:.16s}.master-card:hover{border-color:#b7d9cc;transform:translateY(-1px);box-shadow:var(--shadow-sm)}.master-card strong{display:block;font-size:13px}.master-card span{display:block;color:var(--muted);font-size:10px;margin-top:5px}.master-card svg{width:20px;height:20px;color:var(--primary)}
.modal-backdrop{position:fixed;inset:0;z-index:150;background:rgba(6,20,24,.58);backdrop-filter:blur(4px);display:grid;place-items:center;padding:22px}.modal-card{width:min(760px,100%);max-height:calc(100vh - 44px);overflow:auto;background:var(--panel);border:1px solid rgba(255,255,255,.3);border-radius:18px;box-shadow:0 30px 90px rgba(0,0,0,.28);padding:18px}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding-bottom:13px;margin-bottom:15px}.modal-head h3{margin:2px 0 0;font-size:19px}.eyebrow{display:block;color:var(--primary);font-size:9px;font-weight:850;letter-spacing:.14em}.modal-card .form-actions{position:sticky;bottom:-18px;background:var(--panel);border-top:1px solid var(--line);padding-top:14px;margin-top:16px}.modal-card [data-master-modal-error]{white-space:pre-wrap}.is-loading{opacity:.65;pointer-events:none}.table-actions form{display:inline-flex}.help-note{padding:10px 12px;border:1px solid #d6e8e0;background:#f1f8f5;border-radius:10px;color:#426056;font-size:11px}
@media(max-width:1100px){.master-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.managed-select-wrap{grid-template-columns:minmax(0,1fr) 38px}.managed-select-manage{display:none}.master-grid{grid-template-columns:1fr}.modal-backdrop{padding:10px}.modal-card{max-height:calc(100vh - 20px);padding:14px}}

/* Mixed and multiple payment editor */
.payment-splits{border:1px solid var(--line);border-radius:14px;background:var(--panel);padding:15px}.payment-row{border:1px solid var(--line);border-radius:12px;background:#fbfcfa;padding:12px;margin-bottom:10px}.payment-row-main{display:grid;grid-template-columns:minmax(170px,1.25fr) minmax(135px,.8fr) minmax(130px,.7fr) minmax(130px,.7fr) minmax(130px,.7fr) 40px;gap:9px;align-items:end}.payment-row-main .field{margin:0}.payment-remove{margin-bottom:1px;color:var(--danger);background:var(--danger-soft)}.payment-details{margin-top:10px;border-top:1px dashed var(--line);padding-top:8px}.payment-details summary{cursor:pointer;color:#53635d;font-size:10px;font-weight:750}.payment-details[open] summary{margin-bottom:10px}.payment-row-preview{display:flex;justify-content:flex-end;gap:24px;color:var(--muted);font-size:10px;margin-top:8px}.payment-row-preview strong{color:var(--ink);margin-left:4px}.payment-summary-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line);border-radius:11px;overflow:hidden;margin-top:12px}.payment-summary-strip>div{padding:11px;border-right:1px solid var(--line)}.payment-summary-strip>div:last-child{border-right:0}.payment-summary-strip span{display:block;color:var(--muted);font-size:9px;text-transform:uppercase}.payment-summary-strip strong{display:block;margin-top:4px;font-size:14px}.payment-summary-strip .highlight{background:var(--primary-soft)}
@media(max-width:1250px){.payment-row-main{grid-template-columns:repeat(3,minmax(0,1fr))}.payment-remove{align-self:end}}@media(max-width:760px){.payment-row-main{grid-template-columns:1fr 1fr}.payment-summary-strip{grid-template-columns:1fr 1fr}.payment-summary-strip>div:nth-child(2){border-right:0}.payment-summary-strip>div:nth-child(-n+2){border-bottom:1px solid var(--line)}}@media(max-width:520px){.payment-row-main{grid-template-columns:1fr}.payment-summary-strip{grid-template-columns:1fr}.payment-summary-strip>div{border-right:0;border-bottom:1px solid var(--line)}}
.inline-details{position:relative}.inline-details>summary{list-style:none;cursor:pointer}.inline-details>summary::-webkit-details-marker{display:none}.inline-popover{position:absolute;right:0;top:calc(100% + 8px);z-index:40;width:min(340px,85vw);padding:14px;background:var(--panel);border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 50px rgba(0,0,0,.18)}.inline-popover .field{margin-bottom:9px}.btn.full{width:100%;justify-content:center}
.inline-entity-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.inline-entity-actions a,.inline-entity-actions button{border:1px solid #c9e5da;border-radius:8px;background:var(--primary-soft);color:var(--primary);padding:6px 9px;font:inherit;font-size:10px;font-weight:750;display:inline-flex;align-items:center;gap:5px;cursor:pointer}.inline-entity-actions svg{width:13px;height:13px}.inline-entity-actions a:hover,.inline-entity-actions button:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}

/* FORTART SALES PRODUCT NAME SELECTOR FIX V16 START */
/* Keep the complete product name, SKU/barcode selector visible in Sales & POS. */
.repeat-row.sale-item{
    grid-template-columns:
        minmax(320px,2.45fr)
        minmax(90px,.72fr)
        minmax(135px,1fr)
        minmax(170px,1.25fr)
        minmax(125px,.95fr)
        minmax(115px,.85fr)
        auto!important;
}
.repeat-row.sale-item > :first-child,
.repeat-row.sale-item > :first-child .field,
.repeat-row.sale-item > :first-child label,
.repeat-row.sale-item > :first-child > div{
    min-width:0!important;
    width:100%;
}
.repeat-row.sale-item > :first-child select,
.repeat-row.sale-item > :first-child input,
.repeat-row.sale-item [data-product-select]{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.repeat-row.sale-item > :first-child .select2-container,
.repeat-row.sale-item > :first-child .choices,
.repeat-row.sale-item > :first-child .ts-wrapper,
.repeat-row.sale-item > :first-child .tom-select,
.repeat-row.sale-item > :first-child [class*="select"]{
    min-width:0;
    max-width:none;
}
@media(max-width:1450px){
    .repeat-row.sale-item{
        grid-template-columns:
            minmax(300px,2.4fr)
            minmax(90px,.72fr)
            minmax(130px,1fr)
            minmax(160px,1.2fr)
            minmax(120px,.95fr)
            auto!important;
    }
    .repeat-row.sale-item .optional-col{display:none!important;}
}
@media(max-width:1100px){
    .repeat-row.sale-item{
        grid-template-columns:minmax(260px,1.8fr) minmax(90px,.7fr) minmax(130px,1fr) minmax(120px,.9fr) auto!important;
    }
    .repeat-row.sale-item .optional-col-2{display:none!important;}
}
@media(max-width:820px){
    .repeat-row.sale-item{grid-template-columns:1fr 1fr!important;}
    .repeat-row.sale-item > :first-child{grid-column:1/-1;}
    .repeat-row.sale-item .remove-cell{grid-column:span 2;}
}
@media(max-width:520px){
    .repeat-row.sale-item{grid-template-columns:1fr!important;}
    .repeat-row.sale-item > :first-child,
    .repeat-row.sale-item .remove-cell{grid-column:1;}
}
/* FORTART SALES PRODUCT NAME SELECTOR FIX V16 END */

/* FORTART_METAL_PURCHASE_FOUR_FIELDS_V29 START */
/* Real Blade-grid patch: Supplier | Receiving Location | Purchase Date | Supplier Invoice */
.fortart-metal-purchase-details-grid-v29 {
    display: grid !important;
    grid-template-columns:
        minmax(235px, 1.30fr)
        minmax(235px, 1.30fr)
        minmax(155px, .72fr)
        minmax(190px, .95fr) !important;
    gap: 12px !important;
    align-items: end !important;
}

.fortart-metal-purchase-details-grid-v29 > * {
    min-width: 0 !important;
}

.fortart-metal-purchase-details-grid-v29 > :has([name="supplier_id"]),
.fortart-metal-purchase-details-grid-v29 > :has([name="location_id"]),
.fortart-metal-purchase-details-grid-v29 > :has([name="purchase_date"]),
.fortart-metal-purchase-details-grid-v29 > :has([name="invoice_reference"]) {
    grid-column: auto !important;
}

.fortart-metal-purchase-details-grid-v29 > :has([name="charges"]),
.fortart-metal-purchase-details-grid-v29 > :has(input[type="file"]) {
    grid-column: span 2 !important;
}

.fortart-metal-purchase-details-grid-v29 > :has([name="notes"]) {
    grid-column: 1 / -1 !important;
}

.fortart-metal-purchase-details-grid-v29 .managed-select-wrap,
.fortart-metal-purchase-details-grid-v29 select,
.fortart-metal-purchase-details-grid-v29 input,
.fortart-metal-purchase-details-grid-v29 textarea {
    min-width: 0 !important;
    max-width: 100% !important;
}

@media (max-width: 1050px) {
    .fortart-metal-purchase-details-grid-v29 {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .fortart-metal-purchase-details-grid-v29 > :has([name="charges"]),
    .fortart-metal-purchase-details-grid-v29 > :has(input[type="file"]) {
        grid-column: auto !important;
    }
}

@media (max-width: 700px) {
    .fortart-metal-purchase-details-grid-v29 {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    .fortart-metal-purchase-details-grid-v29 > * {
        grid-column: auto !important;
    }
}
/* FORTART_METAL_PURCHASE_FOUR_FIELDS_V29 END */
