:root{--navy:#142338;--navy2:#1b304a;--ink:#202d3f;--muted:#738196;--line:#e4e9ef;--soft:#f5f7fa;--bg:#f6f8fb;--orange:#ed8b37;--orange2:#fff4e9;--blue:#2d72c7;--green:#17845b;--red:#c64d4d;--shadow:0 14px 40px rgba(25,42,65,.08)}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:'Segoe UI',Arial,sans-serif;color:var(--ink);background:var(--bg)}button,input,select,textarea{font:inherit}button{cursor:pointer}.hidden{display:none!important}.muted{color:var(--muted)}.small{font-size:12px}
.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 18% 18%,#253d5b 0,#172b43 38%,#101b2b 100%)}.login-card{width:min(420px,100%);background:#fff;border-radius:20px;padding:38px 40px 28px;box-shadow:0 24px 70px rgba(0,0,0,.22)}.brand{display:flex;align-items:center;gap:11px;color:#fff}.brand b{font:800 13px Manrope,sans-serif;letter-spacing:1.5px;display:block}.brand small{font-size:9px;letter-spacing:1.4px;color:#9fb1c5;display:block;margin-top:3px}.brand-mark{width:34px;height:34px;border-radius:10px;background:var(--orange);display:grid;place-items:center;color:#182b42;font:800 20px Manrope,sans-serif}.brand-login{color:var(--ink);margin-bottom:34px}.brand-login small{color:#8a97a7}.login-card h1{font:800 28px Manrope;margin:0 0 7px;letter-spacing:-.7px}.login-card>p{font-size:13px;margin:0 0 28px}.stack{display:flex;flex-direction:column;gap:16px}.stack label,.settings-form label{font-size:12px;font-weight:700;color:#45546a;display:flex;flex-direction:column;gap:7px}input,select,textarea{width:100%;border:1px solid #dce3eb;border-radius:7px;padding:10px 11px;outline:none;background:#fff;color:var(--ink);font-size:13px;transition:border .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{border-color:#7aa8d9;box-shadow:0 0 0 3px rgba(45,114,199,.1)}input::placeholder,textarea::placeholder{color:#a9b3c0}.login-card input{padding:13px}.login-foot{border-top:1px solid var(--line);margin-top:26px;padding-top:18px;text-align:center;color:#9aa5b3;font-size:11px}
.app-shell{min-height:100vh;display:flex}.sidebar{width:238px;min-width:238px;background:var(--navy);padding:25px 16px 18px;display:flex;flex-direction:column;color:#fff;min-height:100vh}.sidebar .brand{padding:0 9px 36px}.workspace-label{font-size:9px;font-weight:700;letter-spacing:1.5px;color:#7e91a9;padding:0 12px 12px}.sidebar nav{display:flex;flex-direction:column;gap:5px}.nav-link{border:0;background:transparent;color:#aab7c8;border-radius:8px;text-align:left;display:flex;align-items:center;gap:12px;padding:12px;font-size:13px;font-weight:600}.nav-link:hover{background:#203852;color:#fff}.nav-link.active{background:#294563;color:#fff;box-shadow:inset 3px 0 var(--orange)}.nav-icon{font-size:18px;width:18px;text-align:center}.sidebar-bottom{margin-top:auto;display:flex;align-items:center;gap:9px;padding:14px 10px 4px;color:#8093a9;font-size:10px;border-top:1px solid rgba(255,255,255,.1)}.online-dot{height:7px;width:7px;border-radius:50%;background:#51c998;box-shadow:0 0 0 3px rgba(81,201,152,.12)}.main-area{flex:1;min-width:0}.topbar{height:82px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 38px}.eyebrow{font-size:9px;letter-spacing:1.6px;font-weight:800;color:#a0aaba;margin-bottom:4px}.topbar h2{font:800 20px Manrope;margin:0;letter-spacing:-.4px}.top-user{display:flex;align-items:center;gap:10px}.avatar{width:34px;height:34px;border-radius:50%;background:#e9f1fa;color:#326ca9;display:grid;place-items:center;font-weight:800;font-size:12px}.avatar.large{width:48px;height:48px;font-size:16px}.user-meta{display:flex;flex-direction:column;min-width:100px}.user-meta b{font-size:12px}.user-meta span{font-size:10px;color:var(--muted);margin-top:2px}.icon-btn{border:0;background:transparent;width:34px;height:34px;display:grid;place-items:center;color:#78869a;font-size:22px;border-radius:8px}.icon-btn:hover{background:var(--soft);color:var(--ink)}.page{padding:29px 38px 50px;max-width:1600px;margin:0 auto}.page-intro{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.page-intro h3{font:800 19px Manrope;margin:0 0 5px;letter-spacing:-.4px}.page-intro p{margin:0;color:var(--muted);font-size:12px}.btn{border:1px solid transparent;border-radius:7px;padding:10px 14px;font-size:12px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:all .15s;white-space:nowrap}.btn.primary{background:var(--navy);color:#fff}.btn.primary:hover{background:#25415f;transform:translateY(-1px)}.btn.primary span{font-size:17px;line-height:10px}.btn.subtle{background:#fff;border-color:#dfe5ec;color:#56667b}.btn.subtle:hover{background:#f4f7fa}.btn.dashed{background:#fff;border:1px dashed #c5d0dc;color:#426b94}.btn.dashed:hover{border-color:#6e9bc7;background:#f6faff}.btn.full{width:100%;padding:13px}.stat-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-bottom:21px}.stat-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:15px 17px}.stat-card span{display:block;font-size:9px;font-weight:800;letter-spacing:1px;color:#8d9aab}.stat-card strong{font:800 23px Manrope;display:block;margin-top:5px}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}.search-wrap{width:min(390px,100%);position:relative}.search-wrap span{position:absolute;left:12px;top:7px;font-size:21px;color:#91a0b2}.search-wrap input{padding:10px 12px 10px 36px;background:#fff}.toolbar-right{display:flex;align-items:center;gap:14px}.sort-note{font-size:10px;color:#8996a7}.table-wrap{background:#fff;border:1px solid var(--line);border-radius:10px;overflow:auto;box-shadow:0 4px 16px rgba(28,47,71,.025)}.orders-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;min-width:1050px}.orders-table th{background:#f8fafc;text-align:left;padding:13px 12px;color:#8793a3;font-size:9px;letter-spacing:.8px;font-weight:800;border-bottom:1px solid var(--line);white-space:nowrap}.orders-table td{padding:13px 12px;border-bottom:1px solid #edf0f4;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:0}.orders-table tr:last-child td{border-bottom:0}.orders-table tbody tr:hover{background:#fbfcfe}.cell-primary{font-weight:700;color:#26374d}.cell-muted{color:#8491a2}.group-link{border:0;background:transparent;padding:0;color:#2d6eac;font-weight:800;font-size:11px}.group-link:hover{text-decoration:underline}.status-pill,.priority-pill{display:inline-block;border-radius:20px;padding:5px 8px;font-size:9px;font-weight:800;white-space:nowrap}.status-place-order{background:#fff1df;color:#ad6b20}.status-in-production{background:#eaf3ff;color:#316fae}.status-on-hold{background:#fff0f0;color:#bb4c4c}.status-shipped{background:#e7f7ef;color:#16815a}.priority-very-urgent{background:#ffe9e8;color:#bd3c3c}.priority-rush{background:#fff1df;color:#a9681d}.priority-stock{background:#edf1f5;color:#65768b}.action-cell{overflow:visible!important}.table-action{border:1px solid #e1e6ed;background:#fff;border-radius:6px;padding:6px 8px;font-size:10px;font-weight:700;color:#52647a;margin-right:4px}.table-action:hover{background:#f3f7fb}.table-action.done{color:#137c56;border-color:#b8dfce}.empty-cell{text-align:center!important;color:#929eae;padding:45px!important}.table-foot{display:flex;justify-content:space-between;color:#99a4b2;font-size:10px;padding:11px 2px}
/* order-entry cards */
.item-cards{display:flex;flex-direction:column;gap:15px}.item-card{background:#fff;border:1px solid var(--line);border-radius:11px;box-shadow:0 4px 15px rgba(27,45,68,.035);overflow:hidden}.item-card-head{padding:14px 18px;border-bottom:1px solid #edf0f4;display:flex;justify-content:space-between;align-items:center}.item-card-title{display:flex;align-items:center;gap:10px}.item-index{width:26px;height:26px;border-radius:7px;background:#fff1e4;color:#bd742e;display:grid;place-items:center;font:800 11px Manrope}.item-card-title b{font:800 12px Manrope}.item-card-title small{display:block;color:#98a4b3;font-size:10px;margin-top:2px}.item-card-body{padding:17px 18px 19px}.form-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:13px}.field{min-width:0;display:flex;flex-direction:column;gap:6px}.field label{font-size:10px;font-weight:800;color:#526176;letter-spacing:.15px}.field .hint{font-weight:400;color:#9aa5b3;margin-left:3px}.field input,.field select,.field textarea{padding:9px 10px;font-size:12px;height:36px}.field textarea{height:auto;min-height:58px;resize:vertical}.span-1{grid-column:span 1}.span-2{grid-column:span 2}.span-3{grid-column:span 3}.span-4{grid-column:span 4}.span-5{grid-column:span 5}.span-6{grid-column:span 6}.span-7{grid-column:span 7}.span-8{grid-column:span 8}.span-12{grid-column:span 12}.catalog-preview{height:88px;border:1px dashed #d6dee8;border-radius:7px;background:#f8fafc;display:grid;place-items:center;color:#9ba8b6;font-size:10px;overflow:hidden}.catalog-preview img{width:100%;height:100%;object-fit:contain;background:#fff}.entry-divider{grid-column:span 12;display:flex;align-items:center;gap:10px;margin:1px 0 -3px;color:#8795a6;font-size:9px;font-weight:800;letter-spacing:1px}.entry-divider:after{content:'';height:1px;background:#edf0f4;flex:1}.optional-spec{margin-top:15px;border:1px solid #e8edf2;border-radius:8px;overflow:hidden}.optional-spec summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;background:#f8fafc;padding:11px 13px;font-size:10px;font-weight:800;color:#586a80}.optional-spec summary::-webkit-details-marker{display:none}.optional-spec summary:after{content:'＋';font-size:15px;color:#8a9aad}.optional-spec[open] summary:after{content:'−'}.optional-spec-body{padding:14px 13px 16px}.form-bottom-grid{margin-top:16px}.file-picker{border:1px dashed #cbd6e2;border-radius:7px;padding:11px;background:#fafbfd}.file-picker input{height:auto;border:0;padding:0;background:transparent}.file-list{font-size:10px;color:#78889b;margin-top:5px}.card-tools{display:flex;align-items:center;gap:7px}.text-button{border:0;background:none;color:#73839a;font-size:10px;font-weight:700;padding:5px}.text-button:hover{color:#c45555}.add-row{display:flex;align-items:center;gap:12px;margin:15px 0 18px}.submit-bar{background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);padding:14px 18px;display:flex;align-items:center;justify-content:space-between}.submit-bar b{display:block;font-size:12px}.submit-bar small{display:block;color:#96a1af;font-size:10px;margin-top:4px}.submit-buttons{display:flex;gap:8px}.form-actions-top{display:flex;gap:8px}
/* dialogs and details */
.modal-backdrop{position:fixed;inset:0;background:rgba(12,24,39,.55);z-index:20;display:flex;align-items:center;justify-content:center;padding:22px;backdrop-filter:blur(3px)}.modal{width:min(100%,570px);max-height:90vh;background:#fff;border-radius:13px;box-shadow:0 25px 80px rgba(0,0,0,.25);display:flex;flex-direction:column;overflow:hidden}.large-modal{width:min(1080px,100%)}.password-modal{width:min(460px,100%)}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;padding:20px 23px 15px;border-bottom:1px solid var(--line)}.modal-head h3{font:800 17px Manrope;margin:0 0 4px}.modal-head p{margin:0}.modal-body{padding:18px 23px;overflow:auto}.modal-foot{padding:13px 23px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:8px}.detail-item{border:1px solid var(--line);border-radius:9px;margin-bottom:13px;overflow:hidden}.detail-head{padding:11px 14px;background:#f8fafc;display:flex;justify-content:space-between;align-items:center}.detail-head b{font-size:11px}.detail-grid{padding:14px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.detail-field span{display:block;color:#94a0af;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;margin-bottom:5px}.detail-field b{font-size:11px;overflow-wrap:anywhere}.detail-wide{grid-column:span 2}.detail-note{white-space:normal;overflow-wrap:anywhere;font-weight:500!important;line-height:1.5}.detail-attachments a{display:block;font-size:11px;color:#2c70b5;margin-top:4px}.modal-form-card{padding:0;border:0;box-shadow:none}.modal-form-card .item-card-body{padding:0}.modal-form-card .item-card-head{display:none}.modal-form-card .optional-spec{margin-top:12px}.inline-edit-actions{display:flex;gap:7px;justify-content:flex-end;margin-top:14px}.settings-card{max-width:700px;background:#fff;border:1px solid var(--line);border-radius:11px;padding:23px;box-shadow:0 4px 15px rgba(27,45,68,.035)}.settings-heading{display:flex;align-items:center;gap:13px;padding-bottom:20px;border-bottom:1px solid var(--line)}.settings-heading h3{font:800 15px Manrope;margin:0 0 3px}.settings-heading p{font-size:11px;margin:0}.settings-form{max-width:420px;padding-top:22px;display:flex;flex-direction:column;gap:12px}.settings-form h4{font:800 12px Manrope;margin:0 0 2px}.settings-form button{align-self:flex-start}.note-card{max-width:700px;margin-top:15px;border:1px solid #e9edf2;border-radius:9px;padding:16px 19px;background:#fbfcfd}.note-card b{font-size:11px}.note-card p{font-size:11px;color:#7d8b9c;line-height:1.6;margin:7px 0 0}.toast{position:fixed;top:18px;right:20px;z-index:40;background:#1e334b;color:#fff;border-radius:8px;padding:11px 15px;font-size:12px;box-shadow:var(--shadow);opacity:0;transform:translateY(-8px);pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:translateY(0)}.toast.error{background:#9e3939}.status-select{border:1px solid #dce3eb;border-radius:20px;padding:5px 9px;font-size:10px;font-weight:800;background:white;max-width:130px}.status-select.status-place-order{background:#fff1df;color:#ad6b20}.status-select.status-in-production{background:#eaf3ff;color:#316fae}.status-select.status-on-hold{background:#fff0f0;color:#bb4c4c}.status-select.status-shipped{background:#e7f7ef;color:#16815a}.factory-note{white-space:normal!important;overflow-wrap:anywhere;line-height:1.5;min-width:130px}.factory-table{table-layout:auto;min-width:1320px}.factory-table td{white-space:normal;max-width:none;vertical-align:top}.order-sheet-meta{display:flex;gap:18px;flex-wrap:wrap;font-size:10px;color:#7d8b9c;margin-top:7px}.badge-count{background:#f1f4f8;color:#728197;border-radius:20px;padding:4px 7px;font-size:9px;font-weight:800}
@media(max-width:1100px){.sidebar{width:205px;min-width:205px}.page{padding:25px 24px}.topbar{padding:0 24px}.span-1{grid-column:span 2}.span-5{grid-column:span 6}.span-7{grid-column:span 6}.detail-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.app-shell{display:block}.sidebar{min-height:0;width:100%;padding:12px 14px;display:block}.sidebar .brand{padding:0 4px 12px}.workspace-label,.sidebar-bottom{display:none}.sidebar nav{flex-direction:row}.nav-link{flex:1;justify-content:center;padding:9px 6px;font-size:11px}.main-area{width:100%}.topbar{height:70px;padding:0 15px}.page{padding:21px 14px 36px}.page-intro{align-items:flex-start;gap:10px}.page-intro .btn{font-size:10px;padding:9px}.stat-strip{gap:7px}.stat-card{padding:11px}.stat-card span{font-size:8px}.stat-card strong{font-size:19px}.toolbar{align-items:stretch;flex-direction:column}.toolbar-right{justify-content:space-between}.sort-note{font-size:9px}.form-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.span-1,.span-2,.span-3,.span-4,.span-5,.span-6{grid-column:span 3}.span-7,.span-8,.span-12{grid-column:span 6}.catalog-preview{height:80px}.item-card-body{padding:13px}.item-card-head{padding:12px 13px}.submit-bar{align-items:flex-start;gap:12px;flex-direction:column}.submit-buttons{width:100%}.submit-buttons .btn{flex:1}.modal-backdrop{padding:8px}.modal{max-height:96vh}.modal-head,.modal-body,.modal-foot{padding-left:14px;padding-right:14px}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:11px;gap:10px}.detail-wide{grid-column:span 2}.top-user .user-meta{display:none}.login-card{padding:30px 25px}.form-actions-top{display:none}}
.unit-input{display:flex;align-items:stretch;position:relative}.unit-input input{border-radius:7px 0 0 7px;flex:1;min-width:0}.unit-input>span{height:36px;min-width:30px;padding:0 8px;display:grid;place-items:center;border:1px solid #dce3eb;border-left:0;border-radius:0 7px 7px 0;background:#f5f7fa;color:#7d8b9d;font-size:11px;font-weight:700}.field textarea{line-height:1.45;min-height:55px}

.qty-control{height:36px;display:flex;border:1px solid #dce3eb;border-radius:7px;overflow:hidden;background:#fff}.qty-control button{width:29px;flex:0 0 29px;border:0;background:#f4f7fa;color:#61748a;font-size:15px;font-weight:700}.qty-control button:hover{background:#e8eff6}.qty-control input{height:34px;border:0!important;border-radius:0!important;box-shadow:none!important;text-align:center;padding:5px 2px;min-width:0}.qty-control input::-webkit-inner-spin-button,.qty-control input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.qty-control input{-moz-appearance:textfield}

/* Shared multi-user editing and pessimistic-lock feedback */
.group-lock-banner{margin:0 0 13px;padding:10px 13px;border:1px solid #f0d6a8;border-radius:8px;background:#fff8eb;color:#8a5a17;font-size:11px;line-height:1.5}
.group-lock-banner.mine{border-color:#b8dfce;background:#effaf4;color:#16714f}
.lock-cell{margin-top:5px;color:#9a671d!important;font-weight:700}
.table-action:disabled,.status-select:disabled{opacity:.42;cursor:not-allowed;filter:grayscale(.25)}
.table-action:disabled:hover,.status-select:disabled:hover{background:#fff}

/* Visual order-entry refresh: warmer grouping, strong cues, and a large square item image. */
.item-cards{gap:18px}
.item-card{border:1px solid #e7d9c7;border-radius:12px;box-shadow:0 5px 18px rgba(82,58,31,.06)}
.item-card-head{background:linear-gradient(100deg,#fff1df 0%,#fff8ee 58%,#f4f8fd 100%);border-bottom:1px solid #f0dfca;padding:13px 18px}
.item-index{width:34px;height:34px;border-radius:9px;background:#e58b33;color:#fff;font:800 12px 'Segoe UI',Arial,sans-serif;box-shadow:0 2px 6px rgba(201,119,37,.2)}
.item-card-title b{font-size:13px;color:#473a2d}
.item-card-title small{font-size:10px;color:#9a805f}
.item-card-body{padding:18px}
.primary-entry-layout{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:19px;align-items:stretch}
.primary-fields{min-width:0}
.primary-fields .form-grid{gap:12px}
.primary-fields .field label,.optional-spec .field label,.notes-entry-grid .field label{color:#53647a;font-size:10px}
.primary-fields input,.primary-fields select,.optional-spec input,.optional-spec select,.notes-entry-grid input,.notes-entry-grid textarea{height:39px;border-color:#d8e1eb;border-radius:7px}
.primary-fields input:focus,.primary-fields select:focus,.optional-spec input:focus,.optional-spec select:focus{border-color:#e1a04c;box-shadow:0 0 0 3px rgba(225,160,76,.13)}
.preview-side{background:#f4f8fd;border:1px solid #dce7f2;border-radius:11px;padding:12px;display:flex;flex-direction:column;align-items:stretch;min-width:0}
.preview-title{display:flex;align-items:center;justify-content:space-between;color:#426a91;font-size:9px;font-weight:900;letter-spacing:1px;margin:1px 2px 9px}
.preview-title small{font-size:9px;color:#8fa2b6;letter-spacing:0;font-weight:600;text-transform:none}
.catalog-preview{width:100%;height:auto;aspect-ratio:1/1;min-height:0;max-height:none;border:1px solid #d7e1eb;border-radius:9px;background:#fff;display:grid;place-items:center;color:#98a7b7;font-size:11px;overflow:hidden}
.catalog-preview img{width:100%;height:100%;object-fit:contain;padding:5px}
.preview-placeholder{display:flex;flex-direction:column;align-items:center;gap:7px;color:#93a4b7}
.preview-placeholder b{width:56px;height:56px;display:grid;place-items:center;border-radius:50%;background:#fff5e8;color:#d58b3d;font-size:30px;font-weight:400}
.preview-placeholder span{font-size:12px;font-weight:800;color:#71859b}
.preview-placeholder small{font-size:10px;color:#a4b1bf}
.preview-caption{text-align:center;font-size:9px;color:#92a1b1;margin:8px 0 0;line-height:1.35}
.entry-divider.colored-divider{color:#b27731;margin-top:4px}
.entry-divider.colored-divider:after{background:#f2e3d2}
.color-spec{border:1px solid #e5d7c6;border-radius:9px;background:#fffdfa;margin-top:18px}
.color-spec summary{background:linear-gradient(90deg,#fff2e1,#fffaf3);padding:12px 14px;gap:10px;color:#76552c}
.color-spec summary>span:nth-child(2){display:flex;flex-direction:column;gap:3px;flex:1}
.color-spec summary b{font-size:10px;letter-spacing:.65px}
.color-spec summary small{font-size:10px;color:#a18b70;font-weight:500;letter-spacing:0}
.spec-summary-icon{width:28px;height:28px;border-radius:8px;background:#f4dfc3;color:#bb762d;display:grid;place-items:center;font-size:17px}
.spec-toggle{font-size:17px;color:#b77a39}
.color-spec[open] .spec-toggle{transform:rotate(45deg)}
.optional-spec-body{padding:15px;background:#fffdfa}
.gem-help{font-size:10px;color:#9b8a73;padding-top:8px}
.field select:disabled,.field input:disabled,.unit-input input:disabled{background:#f1f3f6;color:#a7b0bc;cursor:not-allowed;opacity:.75}
.color-file-picker{background:#fbfcff;border-color:#bfcfe0}
.color-file-picker input{height:auto;border:0}
.notes-entry-grid{align-items:end;margin-top:18px;padding-top:15px;border-top:1px solid #edf0f4}
.notes-entry-grid .field:last-child{background:#fff8ec;border:1px solid #efdfc8;border-radius:8px;padding:9px}
.notes-entry-grid .field:last-child input{border-color:#e6cda8;text-align:center;font-weight:900;letter-spacing:2px;text-transform:uppercase}
.remove-item-btn{color:#b95648}.clear-item-btn{color:#9a6a2f}
.clear-item-btn:hover{background:#fff0dc;border-radius:6px}.remove-item-btn:hover{background:#fff0ee;border-radius:6px}

/* Compact, color-coded order group list. Each order item is its own single-line row. */
.orders-list{display:flex;flex-direction:column;gap:13px;min-width:0}
.list-empty{min-height:145px;border:1px dashed #d6dee8;border-radius:11px;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:#91a0b1;font-size:12px;text-align:center;padding:24px}
.list-empty b{font-size:14px;color:#52657b}.list-empty span{font-size:11px}.error-text{color:#b94b4b}
.order-column-head,.order-item-row{display:grid;align-items:center;gap:0}
.vendor-layout,.customer-layout{grid-template-columns:minmax(105px,1.04fr) 62px minmax(168px,1.7fr) minmax(94px,.95fr) minmax(78px,.78fr) minmax(82px,.82fr) 55px minmax(82px,.85fr) 78px minmax(104px,1.05fr) minmax(125px,1.28fr)}
.factory-layout{grid-template-columns:minmax(105px,1.04fr) 62px minmax(185px,1.75fr) minmax(98px,.98fr) minmax(78px,.78fr) minmax(82px,.82fr) 55px 78px minmax(125px,1.25fr) minmax(95px,.95fr)}
.order-column-head{min-width:1250px;padding:9px 12px;background:#eaf0f7;border:1px solid #dce4ee;border-radius:8px;color:#6d7d92;font-size:9px;font-weight:900;letter-spacing:.65px;text-transform:uppercase}
.order-column-head.factory-layout{min-width:1110px}
.order-group-card{background:#fff;border:1px solid #e0e6ed;border-radius:11px;overflow:hidden;box-shadow:0 4px 13px rgba(28,47,71,.035)}
.order-group-head{min-height:43px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 12px;background:#f6f8fb;border-bottom:1px solid #e8edf3}
.order-group-head.vendor-ffd{background:linear-gradient(90deg,#fff2e4,#fffaf5)}
.order-group-head.vendor-xs{background:linear-gradient(90deg,#eaf5ff,#f8fbff)}
.order-group-head.vendor-cvd{background:linear-gradient(90deg,#f3edff,#fcfaff)}
.group-ident{display:flex;align-items:center;gap:9px;min-width:210px}
.group-mark{height:27px;width:27px;border-radius:7px;background:#fff;border:1px solid #e7d5bf;color:#c17b33;display:grid;place-items:center;font-size:14px}
.vendor-xs .group-mark{color:#347dbb;border-color:#c9dff1}.vendor-cvd .group-mark{color:#8461b9;border-color:#ddd0ef}
.group-ident>div{display:flex;flex-direction:column;gap:2px;min-width:0}
.group-ident .group-link{font-size:11px;text-align:left}
.group-ident small{font-size:9px;color:#8b98a9}
.group-head-meta{display:flex;align-items:center;gap:12px;color:#8492a3;font-size:9px;white-space:nowrap;min-width:0}
.group-due b{color:#465b73;font-size:10px;margin-left:3px}
.group-progress{padding:4px 7px;border-radius:20px;background:#edf4ef;color:#438061;font-weight:800}
.group-lock-chip{color:#9a681e;background:#fff4dd;border-radius:20px;padding:4px 7px;font-weight:800}
.group-head-actions{display:flex;align-items:center;gap:5px;white-space:nowrap}
.mini-action{border:1px solid #dce3eb;border-radius:6px;background:#fff;color:#53657b;padding:5px 7px;font-size:9px;font-weight:800;white-space:nowrap;line-height:1.2}
.mini-action:hover{background:#edf4fb;border-color:#bdd0e2;color:#315f8a}
.mini-action.edit{color:#2f6ea9;border-color:#ccdeee}.mini-action.delete{color:#a84f4c;border-color:#ecd0ce}.mini-action.done{color:#167b55;border-color:#bddfcf;background:#f5fcf8}
.mini-action:disabled{opacity:.4;cursor:not-allowed}
.group-item-rows{min-width:1250px}
.order-group-card.factory-layout .group-item-rows{min-width:1110px}
.order-item-wrap+.order-item-wrap{border-top:1px solid #edf0f4}
.order-item-row{min-height:76px;padding:8px 12px;background:#fff}
.order-item-wrap:nth-child(odd) .order-item-row{background:#fff}
.order-item-wrap:nth-child(even) .order-item-row{background:#fcfdff}
.item-cell{min-width:0;padding:0 7px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.catalog-cell{display:flex;flex-direction:column;gap:4px}
.catalog-cell small{font-size:8px;color:#9aa6b4;font-weight:900;letter-spacing:.7px}
.catalog-cell b{font-size:10px;color:#2d4057;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.list-image{width:54px;height:54px;border-radius:7px;border:1px solid #e3e8ee;background:#f8fafc;display:grid;place-items:center;overflow:hidden}
.list-image img{width:100%;height:100%;object-fit:contain;background:#fff}
.image-placeholder{font-size:23px;color:#c2ccd7}
.specs-cell{overflow:hidden}
.spec-chip-list{display:flex;align-items:center;gap:4px;overflow:hidden;white-space:nowrap;min-width:0}
.spec-chip-list>span,.spec-chip-list>b{display:inline-flex;align-items:center;background:#f0f3f7;color:#627187;border-radius:4px;padding:4px 5px;font-size:8px;font-weight:800;white-space:nowrap;flex:0 0 auto}
.spec-chip-list .spec-qty{background:#fff0df;color:#b66d23}.spec-chip-list .spec-gold{background:#fff5d8;color:#9b792c}
.gold-w{background:#f2f6fb!important;color:#718199!important}
.gold-yw{background:linear-gradient(90deg,#fde68a 0%,#fde68a 50%,#eef2f6 50%,#eef2f6 100%)!important;color:#7a5a12!important;border:1px solid #e6c96a!important}
.gold-r{background:#ffe9e6!important;color:#bb5b53!important}
.gold-b{background:#1f2937!important;color:#f8fafc!important;border:1px solid #111827!important}
.row-priority{margin-top:4px;min-height:14px}.row-priority .priority-pill{padding:2px 5px;font-size:8px}
.client-cell{display:flex;flex-direction:column;align-items:flex-start;gap:3px}
.client-cell>b{font-size:10px;color:#34475e;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.alias-chip{display:inline-block;border-radius:10px;background:#f3efff;color:#7758a7;padding:2px 6px;font-size:8px;font-weight:900}
.client-sub{font-size:8px;color:#a5afbb}
.gem-cell{display:flex;align-items:center;justify-content:flex-start}
.gem-token{width:100%;display:grid;grid-template-columns:17px 1fr;align-items:center;column-gap:4px;border-radius:6px;padding:5px 4px;background:#f5f7fa;color:#607086;min-width:0}
.gem-token>b{grid-row:span 3;font-size:16px;text-align:center;color:#8a9caf}
.gem-token>span{font-size:8px;font-weight:900;overflow:hidden;text-overflow:ellipsis}
.gem-token>small{font-size:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gem-token>.gem-color-label{font-weight:800;opacity:.9}
.gem-em{background:#e9f6ee;color:#258251}.gem-em>b{color:#299b5b}.gem-sa{background:#eaf2ff;color:#356bab}.gem-sa>b{color:#548ce0}.gem-ru{background:#fff0f0;color:#b0444d}.gem-ru>b{color:#cf535b}.gem-dia{background:#fff7df;color:#94732c}.gem-dia>b{color:#c9a544}.gem-tuq{background:#e9f7f7;color:#327f83}.gem-tuq>b{color:#48a5ab}
.gem-empty{color:#b5bfca;font-size:13px}
.date-cell b,.due-cell b{font-size:9px;color:#65758a}
.factory-tag{display:inline-block;min-width:31px;text-align:center;padding:4px 6px;border-radius:5px;font-size:9px;font-weight:900;background:#edf2f7;color:#65778d}
.fac-gn{background:#e9f5ed;color:#38845a}.fac-ab{background:#eaf3ff;color:#3976b7}.fac-dr{background:#fff0e4;color:#b56c2c}.fac-oth{background:#f0edf7;color:#786597}
.pic-cell{text-align:center}.pic-chip{display:inline-grid;place-items:center;min-width:28px;height:23px;padding:0 5px;border-radius:6px;background:#eaf0f7;color:#435d79;font-size:9px;letter-spacing:.5px}
.note-flags{display:flex;justify-content:center;gap:3px;margin-top:4px}.note-flag{display:inline-flex;justify-content:center;align-items:center;min-width:19px;height:15px;padding:0 3px;border-radius:4px;font-size:7px;font-weight:900}.note-flag.cn{background:#fff1dc;color:#a86c22}.note-flag.fd{background:#e8f1ff;color:#3f70ad}.note-flag.empty{background:#f2f4f6;color:#a6b0bd}
.status-cell{display:flex;flex-direction:column;align-items:flex-start;gap:3px}.status-cell .status-pill{font-size:8px;padding:4px 6px}.status-cell .status-select{max-width:120px;font-size:8px;padding:5px 7px}
.action-cell{display:flex;align-items:center;gap:4px;overflow:visible!important;white-space:normal}
.factory-notes-line{display:flex;gap:16px;padding:6px 16px 8px 14px;background:#fffaf2;border-top:1px dashed #eee1d2;color:#6c7989;font-size:10px;line-height:1.45;white-space:normal;overflow-wrap:anywhere}
.factory-notes-line>span{flex:1;min-width:0}.factory-notes-line b{font-size:8px;color:#a36d2b;margin-right:4px}
.order-item-wrap:hover .order-item-row{background:#f8fbff}

@media(max-width:1050px){.primary-entry-layout{grid-template-columns:minmax(0,1fr) 205px}.vendor-layout,.customer-layout{grid-template-columns:minmax(100px,1fr) 58px minmax(150px,1.5fr) minmax(85px,.85fr) 72px 78px 50px 78px 70px 100px 120px}.factory-layout{grid-template-columns:minmax(100px,1fr) 58px minmax(165px,1.6fr) minmax(85px,.85fr) 72px 78px 50px 70px 120px 95px}}
@media(max-width:760px){.primary-entry-layout{grid-template-columns:1fr}.preview-side{max-width:270px;margin:0 auto;width:100%;grid-row:1}.primary-fields .form-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.primary-fields .span-5{grid-column:span 4}.primary-fields .span-3,.primary-fields .span-2{grid-column:span 3}.primary-fields .span-12{grid-column:span 6}.notes-entry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.notes-entry-grid .span-5{grid-column:span 1}.notes-entry-grid .span-2{grid-column:span 2}.item-card-body{padding:13px}.item-card-head{padding:12px 13px}.order-group-head{align-items:flex-start;flex-wrap:wrap}.group-head-meta{order:3;width:100%;padding-left:36px}.group-head-actions{margin-left:auto}.order-column-head{display:none}.group-item-rows,.order-group-card.factory-layout .group-item-rows{min-width:1100px}.factory-notes-line{flex-direction:column;gap:5px}}
#ordersList{overflow-x:auto;overflow-y:visible;padding-bottom:3px}
#ordersList.vendor-layout,#ordersList.customer-layout{scrollbar-color:#b9c9d9 #eef2f6;scrollbar-width:thin}
#ordersList.factory-layout{scrollbar-color:#b9c9d9 #eef2f6;scrollbar-width:thin}
.order-group-card{min-width:1250px}
.order-group-card.factory-layout{min-width:1110px}
.order-column-head.factory-layout{min-width:1110px}
.order-column-head.vendor-layout,.order-column-head.customer-layout{min-width:1250px}
@media(max-width:760px){.order-group-card{min-width:1250px}.order-group-card.factory-layout{min-width:1110px}.order-column-head{display:grid!important}}

/* Larger catalog photo in factory group detail view */
.factory-detail-image{display:flex;justify-content:center;align-items:center;padding:16px 14px 4px;background:#fff}
.factory-detail-image img{display:block;width:min(100%,240px);height:240px;object-fit:contain;border:1px solid var(--line);border-radius:10px;background:#fff;padding:6px}
@media(max-width:600px){.factory-detail-image img{width:190px;height:190px}}

/* XS and factory queues include a dedicated second-gem column. */
.xs-layout{grid-template-columns:minmax(105px,1.02fr) 62px minmax(168px,1.65fr) minmax(94px,.92fr) minmax(78px,.76fr) minmax(82px,.8fr) minmax(82px,.8fr) 55px minmax(82px,.82fr) 78px minmax(104px,1.02fr) minmax(125px,1.22fr)}
.order-column-head.factory-layout.xs-layout{min-width:1190px}
.order-group-card.factory-layout.xs-layout .group-item-rows{min-width:1190px}
.order-column-head.vendor-layout.xs-layout,.order-group-card.vendor-layout.xs-layout .group-item-rows{min-width:1330px}
.gem2-cell{display:flex;align-items:center;justify-content:center;min-width:0}
.lab-spec{font-weight:800;color:#6846a5;background:#f1eaff;border-radius:6px;padding:3px 6px}
@media(max-width:1050px){.xs-layout{grid-template-columns:minmax(100px,1fr) 58px minmax(165px,1.6fr) minmax(85px,.85fr) 72px 78px 78px 50px 78px 70px 100px 120px}}
@media(max-width:760px){.order-group-card.factory-layout.xs-layout .group-item-rows{min-width:1190px}.order-column-head.vendor-layout.xs-layout,.order-group-card.vendor-layout.xs-layout .group-item-rows{min-width:1330px}}

/* Factory queues omit the due-date column, so their XS-capable grid has 11 tracks. */
.factory-layout.xs-layout{grid-template-columns:minmax(105px,1.02fr) 62px minmax(168px,1.65fr) minmax(94px,.92fr) minmax(78px,.76fr) minmax(82px,.8fr) minmax(82px,.8fr) 55px minmax(104px,1.02fr) 78px minmax(125px,1.22fr)}
.order-column-head.factory-layout.xs-layout,.order-group-card.factory-layout.xs-layout .group-item-rows{min-width:1190px}
@media(max-width:1050px){.factory-layout.xs-layout{grid-template-columns:minmax(100px,1fr) 58px minmax(165px,1.6fr) minmax(85px,.85fr) 72px 78px 78px 50px 100px 70px 120px}}
