/* Shared workspace design. Business states, table widths and workflows stay intact. */
:root{--ui-brand:#174d3e;--ui-brand-dark:#143d33;--ui-soft:#edf5ef;--ui-canvas:#f3f6f3;--ui-border:#dce5df;--ui-ink:#253b32;--ui-muted:#5e7066;--lte-sidebar-width:232px;--lte-app-header-height:58px;--bs-body-color:var(--ui-ink);--bs-border-color:var(--ui-border);--bs-primary:#245bd6;--bs-primary-rgb:36,91,214}
body{color:var(--ui-ink);font-size:13px;line-height:1.6;-webkit-font-smoothing:antialiased}
.app-main{min-width:0;background:var(--ui-canvas)}
.app-main>.app-content{padding:14px 8px 24px}
.app-content>.container-fluid{padding:0 10px}
.app-content{--admin-space:10px;color:var(--ui-ink);font-size:13px;line-height:1.6}
.app-content .text-muted,.app-content .text-secondary{color:var(--ui-muted)!important}

/* Navigation: group spacing and a clear selected page, without divider lines. */
.app-sidebar{background:var(--ui-brand-dark)!important;box-shadow:none!important}
.sidebar-brand{height:58px;border-bottom:1px solid #ffffff12;padding:10px 12px}
.brand-link{gap:10px}
.brand-link .brand-text{color:#f4f8f3;font-size:14px;font-weight:700!important;letter-spacing:-.3px}
.sidebar-wrapper{padding:4px 10px 16px;scrollbar-color:#607e6f transparent}
.workspace-label{color:#a6c2b0;padding:17px 10px 12px;font-size:10px;letter-spacing:1.3px}
.sidebar-menu .nav-link{color:#c4d7ca;border-radius:7px;transition:background-color .12s,color .12s}
.sidebar-menu .nav-link:hover{background:#ffffff0d;color:#fff}
.sidebar-menu>.nav-item+.nav-item{border:0;margin-top:12px;padding-top:0}
.sidebar-menu>.nav-item>.nav-link{padding:10px 9px;font-size:13px;font-weight:700}
.sidebar-menu>.nav-item>.nav-link.active{background:#ffffff0b!important;color:#ecf5e9!important;box-shadow:none!important}
.sidebar-menu>.nav-item>.nav-treeview{border:0;margin:3px 0 5px 5px;padding:0 0 0 3px}
.sidebar-menu .nav-treeview .nav-link{padding:8px 9px;margin:2px 0;font-size:13px;color:#bdcec3}
.sidebar-menu .nav-treeview .nav-link.active{background:#e0efdf!important;color:#174d3e!important;box-shadow:none!important;font-weight:700}
.sidebar-menu .nav-treeview .nav-link.active .nav-icon{color:#236044!important}
.sidebar-menu [data-menu-tone]{--menu-tone:#a5cbb5}
.sidebar-menu [data-menu-tone="orange"]{--menu-tone:#d8c59d}
.sidebar-menu [data-menu-tone="purple"]{--menu-tone:#c3bedb}
.sidebar-menu [data-menu-tone="blue"]{--menu-tone:#afcbdc}
.sidebar-menu .nav-treeview .menu-icon{width:16px;height:16px}
.sidebar-menu .nav-link:focus-visible{outline:2px solid #cfe8c2;outline-offset:2px}
.app-header{min-height:58px;border-bottom:1px solid var(--ui-border);background:#fff!important;padding:6px 10px}
.header-page-title{color:var(--ui-ink);font-size:18px;font-weight:750;letter-spacing:-.4px}
.header-menu-button{width:34px;height:34px;display:grid;place-items:center;padding:0!important;background:#f3f6f3;border:1px solid var(--ui-border);border-radius:8px;color:var(--ui-brand)}
.header-menu-button svg{width:18px;height:18px}
.account-summary{display:flex;align-items:center;gap:9px}
.account-avatar{display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:var(--ui-soft);color:var(--ui-brand)}
.account-avatar svg{width:18px;height:18px}
.account-summary .user-name{font-size:13px;font-weight:600;color:var(--ui-ink)}
.account-role{font-size:11px;color:#52695c;background:#eef3ed;border:1px solid #dce6db;border-radius:5px;padding:3px 6px;font-weight:600}
.app-header .btn-outline-secondary{border-color:var(--ui-border);color:#52685a;background:#fff;font-size:12px;border-radius:7px}
.app-footer{border-top:1px solid var(--ui-border);font-size:11px;color:var(--ui-muted);padding:9px 18px}

/* Cards, company selectors and search panels. */
body .app-content .card{border:1px solid var(--ui-border);border-radius:10px;box-shadow:0 2px 4px #18382a03;margin-bottom:10px;background:#fff}
body .app-content .card-header{padding:11px 14px!important;line-height:1.5;background:#f8faf7;border-color:var(--ui-border)}
body .app-content .card-header:first-child{border-radius:9px 9px 0 0}
body .app-content .card-header strong,body .app-content .card-header h2,body .app-content .card-header h3{font-size:14px!important;font-weight:700;line-height:1.5;color:var(--ui-ink);margin-bottom:0}
body .app-content .card-body{padding:14px!important}
body .app-content .card-footer{padding:10px 14px!important;display:flex;flex-wrap:wrap;align-items:center;gap:8px;background:#fff;border-color:var(--ui-border);border-radius:0 0 9px 9px}
.app-content .card-footer.text-end{justify-content:flex-end}
body .app-content .company-picker-card>.card-body{display:flex;align-items:center;flex-wrap:wrap;gap:10px}
.app-content .company-picker-card label,.app-content .company-picker-card strong{color:var(--ui-brand);font-size:13px;font-weight:700;margin:0;white-space:nowrap}
body .app-content .company-picker-card .form-select{width:300px!important;max-width:100%!important;flex:none}
.app-content .company-picker-row{display:flex;align-items:center;flex-wrap:wrap;gap:10px}
body .app-content .cp-settings .company-picker-card>.card-body{display:block}
body .app-content .inventory-search-card,body .app-content .work-search-card,body .app-content .inventory-filters{background:#f0f5f0;border-color:#d9e5da}
body .app-content .inventory-search-card .inventory-filters,body .app-content .work-search-card .inventory-filters{background:transparent}
.app-content .sales-workspace{gap:10px}
.app-content .work-grid{grid-template-columns:minmax(0,1fr);gap:10px}
.app-content .work-grid>*{min-width:0}
.app-content .sales-mall-table{min-width:700px}
.app-content .integration-company-table{min-width:850px}
.app-content .sales-list-toolbar,.app-content .inventory-list-header{padding:11px 14px!important;gap:8px}
.app-content .sales-list-toolbar>strong{font-size:14px}
.app-content .inventory-list-actions{gap:6px}

/* Controls: consistent compact size and the existing action color meanings. */
body .app-content .form-control,body .app-content .form-select{font-size:13px!important;line-height:1.5!important;min-height:35px!important;border-color:#bccdc0;border-radius:7px;color:var(--ui-ink);background-color:#fff;box-shadow:none}
body .app-content input.form-control,body .app-content select.form-select{height:35px!important}
.app-content .form-control:focus,.app-content .form-select:focus{border-color:#699f82!important;box-shadow:0 0 0 3px #24724c12!important}
.app-content .form-control:disabled,.app-content .form-select:disabled{background-color:#f0f3ef!important;color:#68796c!important;opacity:1}
body .app-content textarea.form-control{min-height:88px!important;resize:vertical}
.app-content label,.app-content .form-label{color:var(--ui-muted);font-size:12px;line-height:1.5;margin-bottom:5px}
.app-content input::placeholder,.app-content textarea::placeholder{color:#6e7e73;opacity:1}
.app-content .input-group-text{border-color:#bccdc0;background:#f1f5ef;color:#526a59;border-radius:7px}
.app-content .input-group>.form-control:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}
.app-content .input-group>.form-control:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}
.app-content input[type=checkbox],.app-content input[type=radio]{accent-color:var(--ui-brand);vertical-align:middle;cursor:pointer}
.app-content input[type=checkbox]:not(.form-check-input),.app-content input[type=radio]:not(.form-check-input){width:18px;height:18px}
.app-content input[type=checkbox]+label,.app-content input[type=radio]+label{display:inline;vertical-align:middle;margin-left:6px;cursor:pointer}
.app-content .required-mark{color:#c52836;font-weight:800}
body .app-content .btn{min-height:34px;font-size:13px!important;line-height:1.5!important;border-radius:7px;padding:6px 11px;box-shadow:none}
body .app-content .table .btn{min-height:30px;padding:4px 9px}
.app-content .btn:disabled,.app-content .btn.disabled{opacity:.48;cursor:not-allowed}
.app-content .btn[data-action-tone="add"],.app-content .btn[data-action-tone="save"]{--action-color:#245bd6;--action-hover:#1c49b4}
.app-content .btn-primary{--bs-btn-bg:#245bd6;--bs-btn-border-color:#245bd6;--bs-btn-hover-bg:#1c49b4;--bs-btn-hover-border-color:#1c49b4}
.app-content .btn[data-action-tone="edit"]{--bs-btn-bg:#a84c08;--bs-btn-border-color:#a84c08;--bs-btn-hover-bg:#853b06;--bs-btn-hover-border-color:#853b06}
.app-content .btn[data-action-tone="delete"]{--action-color:#bc293a;--action-hover:#9d1f2d}
.app-content .btn-outline-secondary,.app-content .btn[data-action-tone="search"],.app-content .btn[data-action-tone="photo"],.app-content .btn[data-action-tone="cancel"]{--bs-btn-color:#4d6557;--bs-btn-bg:#fff;--bs-btn-border-color:#c6d3c9;--bs-btn-hover-color:#244a35;--bs-btn-hover-bg:#edf4ed;--bs-btn-hover-border-color:#92b09b}
.app-content .alert{border-radius:8px;padding:11px 14px;line-height:1.6;font-size:13px}

/* Step tabs: current selection is distinct from ordinary action buttons. */
body .app-content .order-step,body .app-content .seller-status-tab,body .app-content .order-tab,body .app-content .online-tabs>a,body .app-content .inquiry-tabs>a{display:inline-flex;align-items:center;justify-content:center;min-height:35px;padding:7px 11px;border:1px solid #cddbd0;border-radius:7px;background:#fff!important;color:#4e6456!important;font-size:13px!important;line-height:1.5;font-weight:600;box-shadow:none;text-decoration:none}
body .app-content .order-step:hover,body .app-content .seller-status-tab:hover,body .app-content .order-tab:hover,body .app-content .online-tabs>a:hover,body .app-content .inquiry-tabs>a:hover{background:#edf5ec!important;border-color:#99b99f}
body .app-content .order-step.is-active,body .app-content .seller-status-tab.is-selected,body .app-content .order-tab.active,body .app-content .online-tabs>a.active,body .app-content .inquiry-tabs>a.active{color:#fff!important;background:var(--ui-brand)!important;border-color:var(--ui-brand)!important;font-weight:700;box-shadow:0 2px 3px #174d3e12!important}
body .app-content .mall-product-tools .seller-status-tab.is-selected{background:#e4f0e0!important;color:#245334!important;border-color:#a4bfa2!important;box-shadow:none!important}
body .app-content .order-steps,body .app-content .online-tabs,body .app-content .local-tabs,body .app-content .mall-product-tools{background:#f5f8f3;gap:6px;border-color:var(--ui-border)}
.app-content .part-selection-count{color:var(--ui-brand);font-weight:600;font-size:12px}

/* Data tables retain per-page column widths and scrolling. */
.app-content .table{--bs-table-color:var(--ui-ink);--bs-table-border-color:#e8ede8;--bs-table-hover-bg:#f1f6f1;margin-bottom:0}
body .app-content .table th{text-align:center!important;vertical-align:middle!important;background:#f2f6f1!important;color:#4d6356;font-size:13px!important;font-weight:600;line-height:1.5;padding:11px 10px;border-bottom:1px solid #d9e4da}
body .app-content .table td{vertical-align:middle!important;line-height:1.65!important;font-size:13px;padding:10px;border-color:#e7ede7}
body .app-content .table tbody tr:has(input[type=checkbox]:checked)>td{background-color:#edf6ed}
.app-content .table a:not(.btn):not(.marketplace-status):not([data-order-progress]):not(.order-status-badge){color:#226049;text-decoration-color:#b2caba;text-underline-offset:3px}
.app-content .table a:not(.btn):hover{text-decoration-color:currentColor}
.app-content .table-responsive{max-width:100%;overscroll-behavior-x:contain;scrollbar-color:#aebfaf #edf2ec}
.app-content .table input[type=checkbox]{width:18px!important;height:18px!important;margin:0;vertical-align:middle}
.app-content .money-cell,.app-content input[data-money],.app-content .metric-value{font-variant-numeric:tabular-nums}
.app-content .money-cell{white-space:nowrap}
.app-content .order-status-badge,.app-content .inquiry-status{border-radius:6px;font-size:12px;line-height:1.5;padding:5px 8px}
.app-content .product-detail-value,.app-content .online-detail-field strong{color:var(--ui-ink);line-height:1.65!important;font-size:14px!important}
.app-content .product-detail-memo{line-height:1.8;background:#f7f9f5;color:#3e5445}

/* Settings and category editors. */
body .app-content details.card>summary{padding:14px 16px;font-size:14px;font-weight:650;line-height:1.5;color:var(--ui-ink);cursor:pointer;background:#fff;border-radius:9px}
body .app-content details.card[open]>summary{background:#f6f9f3;border-bottom:1px solid var(--ui-border);border-radius:9px 9px 0 0}
body .app-content .smartstore-settings .card>.card-header{background:#fff}
body .app-content .smartstore-settings .card.is-open>.card-header{background:#f6f9f3}
body .app-content .smartstore-settings .card:not(.is-open)>.card-header{border-bottom:0;border-radius:9px}
body .app-content .smartstore-settings .card-toggle{padding:3px 1px;min-height:26px;font-size:14px;color:var(--ui-ink)}
body .app-content .smartstore-settings .card-arrow{color:#557863;background:#edf4e9;border-radius:6px;width:24px;height:24px;display:inline-grid;place-items:center}
body .app-content .simulation-choice,body .app-content .simulation-toggle{display:flex;align-items:center;gap:10px;min-height:48px;padding:0 12px;border:1px solid #cadbc8;background:#f1f6ed;border-radius:8px}
body .app-content .simulation-choice input[type=checkbox],body .app-content .simulation-toggle input[type=checkbox]{width:20px;height:20px;flex:0 0 20px;margin:0}
body .app-content .simulation-choice label,body .app-content .simulation-toggle label{display:block!important;margin:0;padding:12px 0;font-size:13px;line-height:1.6;color:#35523d}
.app-content .cat-row{border-color:#dce6dc;border-radius:7px;padding:5px 7px}
.app-content .cat-row.selected{background:#e9f3e7;border-color:#80a58b;color:#204d35}
.app-content .cat-row .cat-label{font-size:13px}
.app-content .cat-detail,.app-content .cat-help{font-size:12px;color:var(--ui-muted)}
.app-content .cat-root-drop{background:#f6f9f3;border-color:#afc7ae;color:#4e7057}
.search-select-popup{border-color:#adc5b2;border-radius:9px;box-shadow:0 10px 32px #17382520}
.search-select-popup .form-control{min-height:35px;border-color:#bdcec0;border-radius:6px}
.search-select-options button{font-size:13px;border-radius:5px;padding:8px 10px}
.search-select-options button:hover,.search-select-options button.active{background:#f0f6ed}
.search-select-options button[aria-selected=true]{background:#e5f0e0;color:#214f34}

/* Dashboard. */
.welcome-banner{background:var(--ui-brand);border-radius:12px;padding:22px 24px;margin-bottom:14px}
.welcome-banner h2{font-size:22px;font-weight:700;letter-spacing:-.5px;margin-bottom:7px}
.welcome-banner p{color:#cbded0;font-size:13px;line-height:1.75}
.welcome-date{background:#ffffff09;color:#e3efdb;border-color:#ffffff2a;border-radius:7px;font-size:12px;padding:8px 11px}
.metric-card,.module-card{border-color:var(--ui-border);border-radius:10px;box-shadow:none}
.metric-card{padding:17px 18px}
.metric-card .metric-label{color:#58705e;font-size:13px}
.metric-card .metric-value{color:#214b35;font-size:27px;letter-spacing:-.6px;margin:4px 0}
.metric-card .metric-note{color:#667b69;font-size:12px;line-height:1.65}
.section-heading{font-size:16px;color:var(--ui-ink);margin:22px 0 12px}
.module-card .module-head{padding:14px 16px;border-color:#e4ebe1}
.module-symbol{background:#edf4e8;color:var(--ui-brand);width:32px;height:32px;border-radius:8px}
.module-head h3{font-size:14px}
.module-links{padding:8px}
.module-links a{font-size:13px;padding:8px;color:#4b6553}
.module-links a:hover{background:#eff5ea;color:#204f34}
.app-content .module-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin:0}
.app-content .module-grid>.col-12{width:auto;padding:0;margin:0}

/* Login shares the public homepage and app identity. */
.login-page{background:var(--ui-canvas)}
.login-shell{grid-template-columns:1fr 1fr}
.login-intro{background:var(--ui-brand-dark);color:#fff;padding:46px 10%;gap:50px}
.login-brand{font-size:21px;letter-spacing:-.5px}
.login-eyebrow{color:#bfd8b5;letter-spacing:2px}
.login-intro h1{font-size:clamp(28px,3.2vw,43px);font-weight:700;line-height:1.4;letter-spacing:-1.3px;margin:24px 0}
.login-intro p{color:#c1d4c5;font-size:15px;line-height:1.9}
.login-tags span{color:#d6e4d0;border-color:#6c907444;padding:8px 12px;border-radius:7px;font-size:12px}
.login-intro small{color:#b0c6b2;font-size:12px}
.login-panel{padding:40px}
.login-card{max-width:420px;background:#fff;border:1px solid var(--ui-border);border-radius:16px;padding:34px;box-shadow:0 12px 45px #244b2b06}
.login-card .page-eyebrow{font-size:10px;letter-spacing:1.7px;color:#6a8267}
.login-card h2{font-size:27px;letter-spacing:-.7px;color:var(--ui-ink);margin:10px 0}
.login-card .text-secondary{color:var(--ui-muted)!important;font-size:14px}
.login-card .form-label{font-size:13px;color:#4c6553;margin-bottom:7px}
.login-card .form-control{border:1px solid #bdcdbf;background:#fff;border-radius:8px;padding:12px;font-size:14px;min-height:46px}
.login-card .form-control:focus{border-color:#659774;box-shadow:0 0 0 3px #3f754b13}
.login-card .btn-primary{background:var(--ui-brand);border-color:var(--ui-brand);border-radius:8px;font-size:14px;padding:12px}
.login-card .btn-primary:hover{background:#103d2f;border-color:#103d2f}
.login-help{font-size:12px;line-height:1.8;color:#6b7f6c;margin:20px 0 0}
.login-home{color:#496d50;font-size:12px;display:inline-block;margin-top:16px;text-underline-offset:3px}
.app-content :is(a,button,input,select,textarea,summary):focus-visible{outline:2px solid #43805b;outline-offset:2px}
.app-content .table-responsive:focus-visible{outline:2px solid #43805b;outline-offset:-2px}
@media(max-width:991px){.app-header{padding-left:2px;padding-right:2px}}
@media(max-width:767px){
 .app-main>.app-content{padding:10px 0 16px}.app-content>.container-fluid{padding:0 10px}
 body .app-content .card-body{padding:12px!important}body .app-content .card-header{padding:10px 12px!important;flex-wrap:wrap;gap:8px}
 .header-page-title{font-size:16px;min-width:0}.account-avatar,.account-summary .user-name{display:none}.account-summary{gap:5px}.account-role{font-size:10px;padding:3px 5px}.app-header .header-account{gap:7px!important}
 .app-content .card-header .d-flex,.app-content .sales-list-toolbar{flex-wrap:wrap}.app-content .table-responsive{overflow-x:auto}
 body .app-content .company-picker-card .form-select{max-width:100%!important;width:100%!important}.app-content .product-detail-field{min-width:0}
 .welcome-banner{padding:18px;align-items:flex-start;flex-direction:column}.welcome-banner h2{font-size:20px}
 .login-shell{grid-template-columns:1fr}.login-intro{padding:22px;gap:22px}.login-brand{font-size:18px}.login-intro .brand-logo{width:35px;height:35px}.login-panel{padding:28px 20px}.login-card{padding:25px}.login-card h2{font-size:25px}
}
@media(max-width:600px){.app-content .in-fields,.app-content .out-fields,.app-content .loss-fields{grid-template-columns:minmax(0,1fr)}}
@media(prefers-reduced-motion:reduce){.sidebar-menu .nav-link{transition:none}}
@media print{.app-main{background:white}body .app-content .card{box-shadow:none}}
