:root{color:#243330;font-synthesis:none;--green:#17785f;--green-dark:#115d49;--green-light:#eaf5ef;--border:#e7ece9;--muted:#84918b;--ink:#20342b;--blue:#4985ab;--amber:#bd8730;--shadow:0 8px 30px #173c2d07;background:#f6f8f7;font-family:Inter,Segoe UI,Microsoft YaHei,system-ui,-apple-system,sans-serif;font-size:14px;font-weight:400;line-height:1.55}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.52}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline-offset:3px;outline:3px solid #71b89e}input,select,textarea{width:100%;min-width:0;color:var(--ink);background:#fff;border:1px solid #dfe7e2;border-radius:8px;outline:0;min-height:43px;padding:11px 13px;transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{border-color:#5b9c80;box-shadow:0 0 0 3px #17785f0d}input::placeholder,textarea::placeholder{color:#a5afa9}input:disabled,select:disabled{color:#7e8982;background:#f4f6f5}select{cursor:pointer;padding-right:25px}textarea{resize:vertical;line-height:1.65}input[type=checkbox]{width:16px;height:16px;min-height:16px;accent-color:var(--green);flex-shrink:0;padding:0}h1,h2,h3,p{margin:0}button svg{flex-shrink:0}svg{vertical-align:middle;flex-shrink:0}h1,h2,h3{letter-spacing:-.03em;font-weight:650}h2{font-size:16px}h3{font-size:15px}.muted{color:var(--muted)}.small{font-size:12px}.nowrap{white-space:nowrap}.text-green{color:var(--green)}.text-blue{color:var(--blue)}.align-right{text-align:right!important}.spaced{margin-top:20px}.full-width{width:100%}.full-span{grid-column:1/-1}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.green{color:#278563;background:#eaf5ef}.blue{color:#4c84b3;background:#edf3f9}.amber{color:#bc882d;background:#fff5e6}.purple{color:#8d77b0;background:#f1effa}.button{white-space:nowrap;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:10px 17px;font-size:13px;font-weight:550;line-height:1.4;transition:background .15s,transform .1s;display:inline-flex}.button.primary{background:var(--green);color:#fff;box-shadow:0 2px 4px #17785f12}.button.primary:hover{background:var(--green-dark)}.button.secondary{color:#43564c;background:#fff;border-color:#dfe7e1}.button.secondary:hover{background:#f7faf8}.button.danger{color:#fff;background:#bb4d43}.button.danger-light{color:#b65c4a;background:#fff5f3;border-color:#f4d9d4}.button:active{transform:translateY(1px)}.icon-button{color:#809087;background:0 0;border:0;border-radius:7px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:inline-flex}.icon-button:hover{color:var(--ink);background:#f0f4f1}.text-button{color:var(--green);white-space:nowrap;background:0 0;border:0;justify-content:center;align-items:center;gap:5px;padding:5px 0;font-size:12px;font-weight:550;display:inline-flex}.text-button:hover{color:var(--green-dark)}.badge{white-space:nowrap;color:#7d8b82;background:#f1f4f2;border-radius:5px;justify-content:center;align-items:center;gap:5px;padding:4px 9px;font-size:11px;font-weight:500;line-height:1.4;display:inline-flex}.badge.green{color:#328763;background:#eaf5ee}.badge.blue{color:#4c83ad;background:#edf3fa}.badge.amber{color:#b7822f;background:#fff5e7}.app-shell{min-height:100vh}.sidebar{border-right:1px solid var(--border);z-index:40;background:#fff;flex-direction:column;width:224px;padding:30px 18px 0;display:flex;position:fixed;inset:0 auto 0 0}.brand{align-items:center;gap:11px;padding:0 10px;display:flex}.brand-symbol{background:var(--green);color:#fff;border-radius:12px;justify-content:center;align-items:center;width:43px;height:43px;display:flex;box-shadow:0 4px 10px #17785f1a}.brand>div:last-child{flex-direction:column;display:flex}.brand strong{color:#213c2f;letter-spacing:.15em;font-size:23px;line-height:1.2}.brand span{letter-spacing:.06em;color:#85938a;margin-top:4px;font-size:10px}.workspace-label{border:1px solid #e5ece7;border-radius:8px;align-items:center;gap:7px;margin:30px 8px 13px;padding:12px 10px;font-size:12px;font-weight:550;display:flex}.workspace-label>span:last-child{color:#a0aaa4;margin-left:auto;font-size:9px;font-weight:400}.workspace-dot{background:#6fa58d;border-radius:50%;width:7px;height:7px}.side-nav{flex:1;padding-bottom:20px;overflow:auto}.nav-section{letter-spacing:.08em;color:#a1aca5;padding:20px 13px 8px;font-size:10px}.nav-section:first-child{padding-top:7px}.nav-item{color:#78867d;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:12px;width:100%;margin-bottom:4px;padding:12px 13px;font-size:12px;transition:background .15s;display:flex}.nav-item:hover{color:#3e6551;background:#f6f9f7}.nav-item.active{color:var(--green);background:#eaf4ee;font-weight:600}.nav-active-dot{background:var(--green);border-radius:50%;width:5px;height:5px;margin-left:auto}.sidebar-bottom{border-top:1px solid var(--border);padding:17px 7px 20px}.system-status{color:#9aa59e;align-items:center;gap:7px;margin-bottom:19px;padding:0 1px;font-size:10px;display:flex}.system-status>span{background:#71ad8c;border-radius:50%;width:5px;height:5px}.system-status>svg{margin-left:auto}.sidebar-user{align-items:center;gap:9px;display:flex}.sidebar-user>div{flex-direction:column;flex:1;min-width:0;display:flex}.sidebar-user strong{text-overflow:ellipsis;white-space:nowrap;max-width:100px;font-size:12px;font-weight:550;overflow:hidden}.sidebar-user div>span{color:#9aa59c;margin-top:3px;font-size:9px}.avatar{color:#6a8071;background:#eff2f0;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:12px;font-weight:600;display:inline-flex}.avatar.admin{color:#397252;background:#edf5ef}.app-body{margin-left:224px}.topbar{border-bottom:1px solid var(--border);z-index:20;background:#fff;justify-content:space-between;align-items:center;height:75px;padding:0 36px;display:flex;position:relative}.breadcrumb{color:#a3aca7;align-items:center;gap:13px;font-size:11px;display:flex}.breadcrumb strong{color:#526559;font-weight:550}.topbar-right,.topbar-left{align-items:center;gap:16px;display:flex}.topbar-date{color:#8f9c93;align-items:center;gap:7px;font-size:11px;display:flex}.topbar-right>.icon-button{margin-left:10px}.topbar-divider{background:var(--border);width:1px;height:20px}.small-avatar{color:#528264;background:#ecf3ee;border-radius:50%;width:30px;height:30px;font-size:11px}.topbar-user{color:#617466;white-space:nowrap;text-overflow:ellipsis;max-width:100px;margin-left:-8px;font-size:11px;overflow:hidden}.main-content{max-width:1610px;margin:auto;padding:34px 36px 0}.page-heading{justify-content:space-between;align-items:center;gap:18px;margin-bottom:27px;display:flex}.eyebrow{letter-spacing:.15em;color:#9aa89f;margin-bottom:8px;font-size:9px;font-weight:600}.page-heading h1{color:#263c2e;letter-spacing:.02em;font-size:25px;line-height:1.4}.page-heading p{color:#8a998f;margin-top:8px;font-size:12px;line-height:1.75}.heading-actions{align-items:center;gap:10px;display:flex}.panel{border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;border-radius:11px;overflow:hidden}.panel-heading{justify-content:space-between;align-items:center;gap:12px;padding:23px 24px 18px;display:flex}.panel-heading h2{color:#354a3c;font-size:14px}.panel-heading p{color:#99a49d;margin-top:5px;font-size:10px}.app-footer{color:#a6afa9;letter-spacing:.03em;justify-content:space-between;align-items:center;padding:34px 0 23px;font-size:9px;display:flex}.app-footer>span:last-child{align-items:center;gap:5px;display:flex}.mobile-menu-button,.sidebar-close,.mobile-bottom-nav{display:none}.stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:23px;display:grid}.stat-card{border:1px solid var(--border);text-align:left;box-shadow:var(--shadow);background:#fff;border-radius:11px;min-width:0;padding:20px 21px 16px;transition:box-shadow .15s,border-color .15s}.stat-card:hover{border-color:#bfd8ca;box-shadow:0 5px 20px #234f3610}.stat-top{color:#829087;justify-content:space-between;align-items:center;font-size:11px;display:flex}.stat-icon{border-radius:9px;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.stat-value{color:#263c2e;font-variant-numeric:tabular-nums;letter-spacing:-.02em;margin:11px 0 12px;font-size:31px;font-weight:600;line-height:1.35}.stat-value small{color:#99a49e;margin-left:8px;font-size:10px;font-weight:400}.stat-caption{color:#a0aba3;border-top:1px solid #f1f4f2;justify-content:space-between;align-items:center;gap:6px;padding-top:11px;font-size:9px;display:flex}.dashboard-middle{grid-template-columns:minmax(0,1.65fr) minmax(270px,1fr);gap:23px;margin-bottom:23px;display:grid}.dashboard-bottom{grid-template-columns:minmax(0,1.65fr) minmax(270px,1fr);gap:23px;display:grid}.chart-legend{color:#8c9a90;align-items:center;gap:16px;font-size:9px;display:flex}.chart-legend span{align-items:center;gap:5px;display:flex}.chart-legend i{border-radius:2px;width:7px;height:7px;display:inline-block}.chart-legend i.in,.bar.in{background:#4e9b78}.chart-legend i.out,.bar.out{background:#bfd8cb}.bar-chart{height:214px;margin:5px 25px 19px 23px;padding:20px 0 31px 30px;position:relative}.chart-lines{position:absolute;inset:19px 0 29px}.chart-lines>div{color:#a7b1aa;align-items:center;gap:12px;font-size:9px;display:flex;position:absolute;left:0;right:0;transform:translateY(-50%)}.chart-lines>div:first-child{top:0}.chart-lines>div:nth-child(2){top:50%}.chart-lines>div:nth-child(3){top:100%}.chart-lines span{text-align:right;width:18px}.chart-lines i{border-top:1px dashed #edf1ee;flex:1}.chart-bars{justify-content:space-around;height:100%;display:flex;position:relative}.chart-day{flex-direction:column;flex:1;align-items:center;min-width:0;display:flex;position:relative}.bar-pair{justify-content:center;align-items:flex-end;gap:5px;width:100%;height:100%;display:flex}.bar{border-radius:3px 3px 0 0;width:12px;max-width:24%;min-height:2px;transition:height .4s;position:relative}.bar span{color:#57836a;padding-bottom:4px;font-size:9px;display:none;position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.chart-day:hover .bar span{display:block}.chart-date{color:#9ca79f;white-space:nowrap;padding-top:12px;font-size:9px;position:absolute;top:100%}.quick-panel .panel-heading{padding-bottom:10px}.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:0 13px 13px;display:grid}.quick-grid>button{background:0 0;border:0;border-radius:8px;flex-direction:column;align-items:center;padding:11px 5px 13px;display:flex}.quick-grid>button:hover{background:#f8faf8}.quick-icon{border-radius:11px;justify-content:center;align-items:center;width:40px;height:40px;margin-bottom:8px;display:flex}.quick-grid strong{color:#4f6355;font-size:11px;font-weight:550}.quick-grid button>span:last-child{color:#a6afa8;margin-top:3px;font-size:9px}.welcome-banner{background:linear-gradient(100deg,#eef6ef,#f7faf6);border:1px solid #dcece1;border-radius:10px;align-items:center;gap:16px;margin-bottom:23px;padding:20px 23px;display:flex}.welcome-icon{color:#5b9871}.welcome-banner>div:nth-child(2){flex:1}.welcome-banner h3{color:#426b4d;font-size:13px}.welcome-banner p{color:#8a9d8d;margin-top:5px;font-size:11px}.welcome-banner .button{min-height:35px;padding:8px 12px;font-size:11px}.alert-list{padding:0 22px 13px}.alert-list>button{text-align:left;background:0 0;border:0;border-bottom:1px solid #f0f3f0;align-items:center;gap:9px;width:100%;padding:16px 0;display:flex}.alert-list>button:last-child{border-bottom:0}.alert-list-icon{color:#c49a50;background:#fff8ec;border-radius:7px;padding:8px}.alert-list button>div{flex-direction:column;gap:4px;min-width:0;display:flex}.alert-list strong{text-overflow:ellipsis;font-size:11px;font-weight:550;overflow:hidden}.alert-list button>div>span{color:#a2aca4;font-size:9px}.alert-quantity{text-align:right;flex-shrink:0;margin-left:auto}.alert-quantity strong{color:#b88639}.toolbar{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding:20px 23px;display:flex}.toolbar-filters{align-items:center;gap:10px;display:flex}.toolbar select{color:#7c8c81;width:auto;max-width:180px;min-height:37px;padding:8px 25px 8px 11px;font-size:11px}.toolbar-count{color:#91a095;font-size:11px}.search-input{color:#a4afa7;background:#fff;border:1px solid #e3e9e5;border-radius:7px;align-items:center;gap:8px;width:320px;min-width:0;max-width:100%;padding-left:11px;display:flex}.search-input:focus-within{border-color:#81ad91;box-shadow:0 0 0 3px #17785f09}.search-input input{box-shadow:none;background:0 0;border:0;min-height:36px;padding:9px 9px 9px 0;font-size:11px}.search-input .icon-button{width:25px;height:25px;margin-right:4px}.table-scroll{overflow:auto}table{border-collapse:collapse;text-align:left;width:100%}th{color:#8b9a90;white-space:nowrap;background:#fafcfb;border-bottom:1px solid #edf1ee;padding:12px 21px;font-size:10px;font-weight:500}td{color:#718176;border-bottom:1px solid #f0f3f1;padding:18px 21px;font-size:11px;line-height:1.6}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fcfdfc}.material-name{align-items:center;gap:10px;min-width:0;display:flex}.material-glyph{color:#8ba18d;background:#f2f6f2;border:1px solid #eaf0e9;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.material-name>div{flex-direction:column;gap:4px;min-width:0;display:flex}.material-name strong{color:#435d49;overflow-wrap:anywhere;font-size:12px;font-weight:550}.material-name>div>span{color:#a0aca2;overflow-wrap:anywhere;font-size:9px}.cell-stack{flex-direction:column;gap:3px;display:flex}.cell-stack small{color:#a5afa8;font-size:9px}.location{align-items:center;gap:4px;display:inline-flex}.compact-table th{padding:10px 23px;font-size:9px}.compact-table td{white-space:nowrap;padding:14px 23px;font-size:10px}.compact-table .material-glyph{width:30px;height:30px}.compact-table .material-name strong{font-size:11px}.compact-table .material-name>div>span{font-size:8px}.pagination{border-top:1px solid var(--border);color:#9aa79c;justify-content:space-between;align-items:center;padding:15px 23px;font-size:10px;display:flex}.pagination>div{align-items:center;gap:13px;display:flex}.pagination button{color:#6d8373;background:#fff;border:1px solid #e6ece7;border-radius:5px;min-height:29px;padding:5px 9px;font-size:10px}.pagination button:disabled{color:#abb6ae;opacity:1;border-color:#edf1ee}.page-footnote{color:#9aa99d;align-items:flex-start;gap:7px;margin-top:19px;padding:0 3px;font-size:10px;display:flex}.page-footnote svg{margin-top:1px}.action-separator{color:#e0e7e1;margin:0 9px;display:inline-block}.stock-quantity{flex-direction:column;gap:3px;display:flex}.stock-quantity strong{color:#3c5e48;font-variant-numeric:tabular-nums;font-size:16px;font-weight:600}.stock-quantity small{color:#8c9e90;font-size:10px;font-weight:400}.stock-quantity>span{color:#99a79d;font-size:10px}.inventory-summary{border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;border-radius:10px;grid-template-columns:1fr 1fr 1.4fr;gap:20px;margin-bottom:22px;padding:23px 25px;display:grid}.inventory-summary>div{border-right:1px solid #edf1ee;align-items:center;gap:13px;display:flex}.inventory-summary>div:last-child{border:0}.summary-icon{border-radius:10px;justify-content:center;align-items:center;width:43px;height:43px;display:flex}.inventory-summary>div>div{flex-direction:column;gap:3px;display:flex}.inventory-summary>div>div>span{color:#8b9b90;font-size:10px}.inventory-summary strong{color:#45634d;font-size:23px;font-weight:600;line-height:1.2}.inventory-summary small{color:#a1aea4;font-size:10px;font-weight:400}.summary-note{color:#82a38b;justify-content:center}.summary-note p{color:#7f9786;font-size:11px;line-height:1.8}.summary-note span{color:#a6b3a8;font-size:10px}.filter-check{color:#8a9b8e;white-space:nowrap;cursor:pointer;align-items:center;gap:7px;font-size:11px;display:flex}.filter-check input{width:14px;height:14px;min-height:14px}.filter-check svg{color:#c29a58}.empty{text-align:center;flex-direction:column;align-items:center;padding:51px 20px 46px;display:flex}.empty-icon{color:#a3b5a3;background:#f3f7f3;border-radius:16px;justify-content:center;align-items:center;width:58px;height:58px;margin-bottom:15px;display:flex}.empty h3{color:#6c8471;letter-spacing:0;font-size:13px;font-weight:550}.empty p{color:#a5b0a6;max-width:340px;margin-top:7px;font-size:11px;line-height:1.8}.empty .button{margin-top:21px;font-size:11px}.dashboard-bottom .empty{padding:35px 20px 32px}.dashboard-bottom .empty-icon{border-radius:50%;width:48px;height:48px}.loading{color:#8aa18e;justify-content:center;align-items:center;gap:10px;padding:70px 20px;font-size:12px;display:flex}.error-state{color:#bd8a4a;flex-direction:column;justify-content:center;align-items:center;gap:15px;padding:60px 25px;font-size:12px;display:flex}.error-state p{color:#8d9d91;text-align:center;max-width:450px}.inline-error{color:#b06c53;background:#fff4f0;border:1px solid #f5ddd3;border-radius:8px;align-items:flex-start;gap:8px;margin-top:18px;padding:12px;font-size:12px;display:flex}.inline-error svg{margin-top:1px}.list-limit{color:#a38f67;background:#fffcf5;border-top:1px solid #f2ebdc;padding:12px 23px;font-size:10px}.field{flex-direction:column;gap:8px;min-width:0;font-size:12px;display:flex}.field-label{color:#596d5e;font-size:12px;font-weight:550}.required{color:#b8c9bb;font-weight:400}.field-hint{color:#9ea99e;font-size:10px;line-height:1.7}.field input,.field select,.field textarea{font-size:12px}.form-grid{grid-template-columns:1fr 1fr;gap:18px 20px;display:grid}.form-section-label{color:#8b9e8d;letter-spacing:.03em;padding-bottom:14px;font-size:11px;font-weight:600}.form-section-label.spaced{margin-top:26px}.toggle-row{cursor:pointer;background:#fafcf9;border:1px solid #e8eee8;border-radius:8px;justify-content:space-between;align-items:center;gap:15px;margin-bottom:18px;padding:14px;display:flex}.toggle-row>div{flex-direction:column;gap:5px;display:flex}.toggle-row strong{color:#5c7662;font-size:12px;font-weight:550}.toggle-row span{color:#a1ada2;font-size:10px}.switch{cursor:pointer;appearance:none!important;width:34px!important;height:20px!important;min-height:20px!important;box-shadow:none!important;background:#dce5dd!important;border:0!important;border-radius:20px!important;transition:background .15s!important;position:relative!important}.switch:checked{background:#458f66!important}.switch:before{content:"";background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .15s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0001}.switch:checked:before{transform:translate(14px)}.switch:disabled{opacity:.5}.switch:focus-visible{outline:3px solid #a1c5a9}.unit-grid{grid-template-columns:1fr 1fr 1fr;gap:15px}.conversion-banner{color:#7a9b80;background:#f0f7f1;border:1px solid #e5efe5;border-radius:8px;flex-wrap:wrap;align-items:center;gap:9px;margin-top:15px;padding:12px 14px;font-size:11px;display:flex}.conversion-banner strong{color:#467c51;font-weight:600}.conversion-banner small{color:#99ad9c;align-items:center;gap:4px;margin-left:auto;font-size:9px;display:flex}.check-row{color:#617a65;cursor:pointer;align-items:center;gap:9px;font-size:12px;display:flex}.check-row>span{flex-direction:column;gap:4px;display:flex}.check-row small{color:#a1afa3;font-size:10px}.modal{width:min(510px,100vw - 32px);max-height:90dvh;color:var(--ink);background:#fff;border:1px solid #dfe8df;border-radius:14px;padding:0;overflow:hidden;box-shadow:0 30px 100px #112b1e33}.modal.wide{width:min(650px,100vw - 32px)}.modal::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#10271d60}.modal>form{flex-direction:column;max-height:90dvh;display:flex}.modal-head{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;gap:20px;padding:24px 26px 21px;display:flex}.modal-head h2{color:#31543a;font-size:18px}.modal-head p{color:#9aa99b;margin-top:6px;font-size:11px;line-height:1.75}.modal-head .icon-button{margin:-3px -4px 0 0}.modal-body{min-height:0;padding:24px 26px;overflow:auto}.modal-footer{border-top:1px solid var(--border);background:#fcfdfb;flex-shrink:0;justify-content:flex-end;align-items:center;gap:10px;padding:18px 26px;display:flex}.modal-footer .button{min-height:38px;padding:9px 18px;font-size:12px}.toast{z-index:1000;color:#447b51;background:#fff;border:1px solid #dce9df;border-radius:9px;align-items:center;gap:10px;max-width:calc(100vw - 32px);padding:14px 22px;font-size:12px;animation:.2s ease-out toast-in;display:flex;position:fixed;top:22px;left:50%;transform:translate(-50%);box-shadow:0 8px 40px #17372120}.toast svg{color:#6e9c74}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,-10px)}to{opacity:1;transform:translate(-50%)}}.entry-layout{grid-template-columns:minmax(0,1fr) 280px;align-items:start;gap:24px;max-width:1100px;display:grid}.entry-panel .panel-heading{border-bottom:1px solid var(--border);justify-content:flex-start;gap:12px;padding-bottom:21px}.entry-heading-icon{border-radius:10px;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.entry-panel .panel-heading>.badge{margin-left:auto}.entry-form{padding:24px}.quantity-grid{grid-template-columns:1fr 150px;margin-top:22px}.selected-material{background:#fafcf9;border:1px solid #edf1e9;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin-top:13px;padding:14px;display:flex}.selected-material>div:last-child{flex-direction:column;align-items:flex-end;gap:4px;display:flex}.selected-material>div:last-child>span{color:#9aaa9a;white-space:nowrap;font-size:10px}.selected-material strong{color:#5f8364;font-weight:600}.selected-material small{color:#a6b3a7;align-items:center;gap:3px;font-size:9px;display:flex}.entry-footer{border-top:1px solid var(--border);background:#fdfefb;justify-content:space-between;align-items:center;margin:26px -24px -24px;padding:20px 24px;display:flex}.entry-footer>span{color:#a0b1a1;align-items:center;gap:5px;font-size:10px;display:flex}.guide-panel{box-shadow:none;background:#fafcf8;border-color:#e3ebe0;padding:23px}.guide-icon{color:#7e9a77;background:#eef4e8;border-radius:10px;justify-content:center;align-items:center;width:38px;height:38px;margin-bottom:14px;display:flex}.guide-panel h3{color:#5e7c58;font-size:13px}.guide-panel ol{counter-reset:step;flex-direction:column;gap:22px;margin:20px 0 0;padding:0;list-style:none;display:flex}.guide-panel li{counter-increment:step;padding-left:29px;position:relative}.guide-panel li:before{content:counter(step);color:#7d9a6f;background:#e8f0e1;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:9px;display:flex;position:absolute;top:0;left:0}.guide-panel li strong{color:#71866a;font-size:11px;font-weight:550}.guide-panel li p{color:#a0ae98;margin-top:6px;font-size:10px;line-height:1.9}.aside-tip{color:#a9b7a1;gap:10px;padding:20px 5px;display:flex}.aside-tip p{color:#a3b19b;font-size:10px;line-height:1.9}.success-notice{color:#74a164;background:#f3faf0;border:1px solid #d6e8d4;border-radius:8px;align-items:center;gap:9px;margin-top:18px;padding:13px;display:flex}.success-notice>div{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.success-notice strong{color:#608a52;font-size:12px;font-weight:550}.success-notice>div>span{color:#95ac89;overflow-wrap:anywhere;font-size:9px}.success-notice .text-button{font-size:10px}.records-toolbar{align-items:flex-start}.records-toolbar .toolbar-filters{flex-wrap:wrap;justify-content:flex-end}.date-range{align-items:center;gap:7px;display:flex}.date-range input{color:#83977e;width:128px;min-height:37px;padding:8px;font-size:10px}.date-range span{color:#a6b2a0;font-size:10px}.voided-row{background:#fbfcfb}.voided-row .material-name,.voided-row .cell-stack{opacity:.55}.detail-material{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:15px;padding-bottom:20px;display:flex}.detail-amount{text-align:center;border-bottom:1px solid var(--border);padding:24px 0 25px}.detail-amount>span{color:#9aab94;font-size:11px;display:block}.detail-amount strong{color:#4e7841;margin:9px 0 3px;font-size:32px;font-weight:600;display:block}.detail-amount small{color:#9aad91;font-size:14px;font-weight:400}.detail-amount p{color:#92a385;font-size:11px}.detail-list{margin:18px 0 0}.detail-list>div{justify-content:space-between;gap:20px;padding:8px 0;font-size:11px;line-height:1.7;display:flex}.detail-list dt{color:#9ba992;flex-shrink:0}.detail-list dd{text-align:right;color:#6d8263;overflow-wrap:anywhere;white-space:pre-wrap;margin:0}.warning-notice{color:#baa35e;background:#fffbf0;border:1px solid #f1e8c9;border-radius:7px;align-items:flex-start;gap:9px;margin:16px 0;padding:12px;font-size:11px;display:flex}.warning-notice p{color:#aa9c70;line-height:1.8}.warning-notice svg{margin-top:2px}.permission-note{color:#7d9e67;background:#f2f8ee;border:1px solid #dfebdc;border-radius:9px;align-items:center;gap:13px;margin-bottom:22px;padding:18px 20px;display:flex}.permission-note strong{color:#6a8c54;font-size:12px;font-weight:550}.permission-note p{color:#a0b38f;margin-top:5px;font-size:10px;line-height:1.8}.member-name{align-items:center;gap:10px;display:flex}.member-name>div{flex-direction:column;gap:4px;display:flex}.member-name strong{color:#627a54;font-size:11px;font-weight:550}.member-name strong small{color:#a1b092;font-size:10px;font-weight:400}.member-name div>span{color:#a8b49e;font-size:10px}.permission-yes{color:#7da064;align-items:center;gap:4px;font-size:10px;display:inline-flex}.permission-option{cursor:pointer;background:#fdfefb;border:1px solid #e6edde;border-radius:9px;align-items:center;gap:12px;margin-bottom:12px;padding:16px;display:flex}.permission-option-icon{color:#8da576;background:#f2f6eb;border-radius:8px;padding:9px}.permission-option>div{flex-direction:column;flex:1;gap:5px;display:flex}.permission-option strong{color:#6b8554;font-size:12px;font-weight:550}.permission-option div>span{color:#a2b18e;font-size:10px;line-height:1.7}.log-detail{white-space:pre-wrap;overflow-wrap:anywhere;max-width:420px}.no-permission{margin-top:40px}.boot-screen{min-height:100vh;color:var(--green);flex-direction:column;justify-content:center;align-items:center;display:flex}.boot-screen>.loading{padding:25px}.auth-page{background:#fcfdfb;grid-template-columns:minmax(360px,.9fr) minmax(480px,1.1fr);min-height:100dvh;display:grid}.auth-story{background:#eef4ed;flex-direction:column;min-height:100dvh;padding:48px 10%;display:flex;position:relative;overflow:hidden}.auth-story .brand{z-index:2;padding:0;position:relative}.auth-story .brand-symbol{background:#2f714f;border-radius:11px;width:44px;height:44px}.auth-story .brand strong{color:#31543a;font-size:26px}.auth-story .brand span{letter-spacing:.19em;color:#91a18d;font-size:8px}.auth-story-body{z-index:2;max-width:400px;margin:auto 0;padding:70px 0 90px;position:relative}.auth-kicker{letter-spacing:.14em;color:#7e9876;font-size:11px}.auth-story h1{letter-spacing:.07em;color:#355c3c;margin:19px 0 24px;font-size:clamp(38px,4vw,62px);font-weight:550;line-height:1.65}.auth-story h1>span{color:#88a47a}.auth-story-body>p{color:#93a48a;letter-spacing:.04em;font-size:12px;line-height:2.1}.auth-features{flex-direction:column;gap:19px;margin-top:44px;display:flex}.auth-features>div{color:#708c66;align-items:center;gap:12px;font-size:11px;display:flex}.auth-features svg{color:#90aa80}.auth-story-footer{z-index:2;letter-spacing:.12em;color:#a4b09c;font-size:9px;position:relative}.auth-decoration{opacity:.4;position:absolute;bottom:-190px;right:-250px;transform:rotate(-25deg)}.auth-decoration>div{background:linear-gradient(90deg,#0000,#dce9d2);border:1px solid #c5d8ba;border-radius:24px;width:430px;height:170px;margin-bottom:18px}.auth-decoration>div:nth-child(2){margin-left:-55px}.auth-main{justify-content:center;align-items:center;min-height:100dvh;padding:60px 50px 90px;display:flex;position:relative}.auth-form-wrap{width:100%;max-width:360px}.auth-form-icon{color:#80a267;background:#f4f8ef;border:1px solid #e4ebdd;border-radius:13px;justify-content:center;align-items:center;width:49px;height:49px;margin-bottom:22px;display:flex}.auth-form-wrap h2{color:#3f5d35;letter-spacing:.03em;font-size:25px;font-weight:600}.auth-description{color:#a0af94;margin-top:10px;font-size:11px;line-height:1.8}.auth-form{flex-direction:column;gap:20px;margin-top:30px;display:flex}.auth-form .field-label{color:#788e67;font-size:11px}.auth-form .field input{background:#fff;border-color:#e0e8d8;border-radius:7px;min-height:45px;font-size:12px}.auth-form .field input:focus{border-color:#93b07e}.auth-form .field-hint{color:#b0bc9f;font-size:9px}.auth-form .button{background:#3f7f40;border-radius:7px;min-height:44px;margin-top:6px;font-size:12px}.auth-form .button:hover{background:#376e38}.auth-form .inline-error{margin-top:0}.auth-note{color:#a8b89a;border-top:1px solid #eaf0e3;align-items:flex-start;gap:8px;margin-top:28px;padding-top:20px;display:flex}.auth-note span{color:#adb99f;font-size:9px;line-height:1.9}.auth-note svg{margin-top:1px}.auth-copyright{letter-spacing:.06em;color:#b1bca7;font-size:9px;position:absolute;bottom:29px}.auth-mobile-brand{display:none}@media (min-width:1600px){.sidebar{width:240px;padding-left:22px;padding-right:22px}.app-body{margin-left:240px}.main-content{padding:40px 45px 0}.topbar{padding:0 45px}.stat-card{padding:23px 25px 18px}.stat-value{font-size:36px}.panel-heading{padding:25px 27px 20px}.bar-chart{height:235px}.quick-grid{gap:11px;padding-bottom:18px}.quick-grid>button{padding:12px 5px 15px}.quick-icon{width:45px;height:45px}.stat-top{font-size:12px}.stat-caption{font-size:10px}}@media (max-width:1200px){.sidebar{width:200px;padding-left:14px;padding-right:14px}.brand{gap:9px;padding:0 7px}.brand-symbol{width:39px;height:39px}.brand strong{font-size:21px}.app-body{margin-left:200px}.main-content{padding:28px 24px 0}.topbar{padding:0 24px}.stat-grid{gap:13px}.stat-card{padding:16px 16px 14px}.stat-icon{width:32px;height:32px}.stat-value{font-size:28px}.stat-caption{font-size:8px}.stat-caption svg{display:none}.dashboard-middle,.dashboard-bottom{grid-template-columns:minmax(0,1.5fr) minmax(250px,1fr);gap:17px}.panel-heading{padding:20px 19px 15px}.bar-chart{margin-left:14px;margin-right:19px}.compact-table th,.compact-table td{padding-left:16px;padding-right:16px}.compact-table td:last-child,.compact-table th:last-child{display:none}th,td{padding-left:16px;padding-right:16px}.records-toolbar{flex-wrap:wrap}.records-toolbar .toolbar-filters{justify-content:flex-start}.entry-layout{grid-template-columns:minmax(0,1fr) 240px;gap:18px}.guide-panel,.entry-form{padding:20px}.entry-footer{margin:24px -20px -20px;padding:18px 20px}.selected-material{flex-wrap:wrap}.selected-material>div:last-child{align-items:flex-start}.toolbar{padding:18px}.toolbar .search-input{width:280px}.toolbar-filters{gap:7px}.topbar-right{gap:12px}}@media (max-width:1020px){.dashboard-middle,.dashboard-bottom{grid-template-columns:minmax(0,1fr)}.quick-panel .panel-heading{padding-bottom:0}.quick-grid{grid-template-columns:repeat(4,minmax(0,1fr));padding:12px}.quick-grid>button{padding:9px 5px 12px}.chart-legend{font-size:10px}.bar-chart{height:210px}.compact-table td:last-child,.compact-table th:last-child{display:table-cell}.topbar-date{display:none}.entry-layout{grid-template-columns:1fr}.entry-aside{display:none}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.stat-card{padding:17px 19px}.stat-top{font-size:12px}.stat-caption{font-size:10px}.stat-caption svg{display:block}.stat-value{margin:7px 0 10px;font-size:31px}.page-heading{align-items:flex-start}.page-heading .heading-actions{flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;max-width:200px}.heading-actions .button{padding:9px 12px;font-size:11px}.inventory-summary{grid-template-columns:1fr 1fr;gap:18px;padding:20px}.summary-note{display:none!important}.inventory-summary>div:nth-child(2){border:0}.auth-story{padding:40px 11%}.auth-story h1{font-size:44px}.auth-main{padding-left:40px;padding-right:40px}.auth-page{grid-template-columns:minmax(310px,.8fr) minmax(380px,1fr)}}@media (max-width:760px){:root{background:#f6f8f6;font-size:14px}.sidebar{z-index:70;width:265px;padding:25px 19px 0;transition:transform .2s;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar-close{display:flex;position:absolute;top:27px;right:11px}.sidebar .brand strong{font-size:23px}.sidebar .brand-symbol{width:42px;height:42px}.sidebar .brand span{font-size:10px}.workspace-label{margin-top:27px;padding:12px}.workspace-label>span:last-child{font-size:10px}.nav-item{padding:13px;font-size:13px}.nav-section{font-size:11px}.sidebar-bottom{padding-bottom:28px}.sidebar-user strong{font-size:13px}.sidebar-user div>span{font-size:10px}.system-status{font-size:11px}.sidebar-overlay{z-index:60;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#12281a66;position:fixed;inset:0}.app-body{margin:0}.topbar{height:63px;padding:0 17px;position:sticky;top:0;box-shadow:0 3px 15px #203b2704}.mobile-menu-button{color:#628168;margin-left:-5px;display:flex}.topbar-left{gap:11px}.breadcrumb{gap:0;font-size:13px}.breadcrumb strong{color:#4c6c4f;font-weight:550}.topbar-right{gap:11px}.topbar-right>.icon-button{margin:0}.topbar-divider,.topbar-user{display:none}.small-avatar{width:29px;height:29px}.main-content{padding:24px 17px 78px}.page-heading{flex-wrap:wrap;gap:14px;margin-bottom:22px;display:flex}.eyebrow{letter-spacing:.15em;margin-bottom:6px;font-size:9px}.page-heading h1{font-size:23px}.page-heading p{max-width:100%;margin-top:6px;font-size:11px;line-height:1.9}.page-heading .heading-actions{flex-wrap:nowrap;justify-content:flex-start;gap:8px;max-width:none}.heading-actions .button{min-height:39px;padding:9px 13px;font-size:12px}.page-heading>div:first-child{flex:1;min-width:200px}.stat-grid{gap:12px;margin-bottom:17px}.stat-card{border-radius:10px;padding:15px 15px 13px}.stat-top{font-size:11px}.stat-icon{border-radius:8px;width:30px;height:30px}.stat-icon svg{width:17px;height:17px}.stat-value{margin:6px 0 9px;font-size:29px}.stat-value small{margin-left:6px;font-size:10px}.stat-caption{letter-spacing:0;padding-top:9px;font-size:8px}.stat-caption svg{display:none}.panel{border-radius:10px;box-shadow:0 4px 15px #173c2d03}.dashboard-middle,.dashboard-bottom{gap:17px;margin-bottom:17px}.dashboard-bottom{margin-bottom:0}.panel-heading{padding:19px 17px 15px}.panel-heading h2{font-size:14px}.panel-heading p{margin-top:4px;font-size:10px}.chart-legend{gap:11px;font-size:9px}.bar-chart{height:196px;margin:6px 19px 19px 13px;padding-left:29px}.bar{width:13px}.bar-pair{gap:4px}.chart-date{font-size:9px}.quick-grid{gap:1px;padding:9px 8px 13px}.quick-icon{border-radius:10px;width:36px;height:36px;margin-bottom:7px}.quick-icon svg{width:20px;height:20px}.quick-grid strong{font-size:10px}.quick-grid button>span:last-child{letter-spacing:-.04em;white-space:nowrap;font-size:8px}.welcome-banner{flex-wrap:wrap;gap:12px;margin-bottom:17px;padding:16px}.welcome-icon{display:none}.welcome-banner h3{font-size:12px}.welcome-banner p{max-width:220px;font-size:10px}.welcome-banner .button{padding:8px 10px;font-size:10px}.compact-table th,.compact-table td{padding:12px 14px}.compact-table th:last-child,.compact-table td:last-child{display:none}.compact-table .material-glyph{width:28px;height:28px}.compact-table .material-name strong{font-size:11px}.compact-table .material-name>div>span{font-size:8px}.compact-table td{font-size:10px}.compact-table .badge{padding:3px 7px;font-size:9px}.alert-list{padding:0 17px 8px}.alert-list>button{padding:15px 0}.alert-list strong{font-size:12px}.alert-list button>div>span{font-size:10px}.app-footer{justify-content:center;padding:28px 1px 10px;font-size:9px}.app-footer>span:last-child{display:none}.mobile-bottom-nav{z-index:50;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:7px 10px calc(8px + env(safe-area-inset-bottom));background:#ffffffed;border-top:1px solid #e2eadf;justify-content:space-around;display:flex;position:fixed;inset:auto 0 0;box-shadow:0 -4px 20px #203a2704}.mobile-bottom-nav>button{color:#9aa995;background:0 0;border:0;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:4px;padding:3px;font-size:9px;display:flex}.mobile-bottom-nav>button.active{color:#3b7b3d}.mobile-bottom-nav>button.active svg{stroke-width:2.4px}.desktop-only{display:none!important}.toolbar{flex-wrap:wrap;gap:12px;padding:15px}.toolbar .search-input{flex:1;width:100%;min-width:200px;max-width:none}.search-input{border-radius:7px}.search-input input{min-height:39px;padding:10px 8px 10px 0;font-size:12px}.toolbar-filters{flex:1;justify-content:flex-start;gap:10px}.toolbar select{flex:1;max-width:none;min-height:39px;font-size:12px}.toolbar-count{font-size:11px}.responsive-table,.responsive-table tbody,.responsive-table tr,.responsive-table td{width:100%;display:block}.responsive-table thead{display:none}.responsive-table tbody{padding:0 15px}.responsive-table tr{border-bottom:1px solid #eaf0e6;padding:17px 0}.responsive-table tr:last-child{border-bottom:0}.responsive-table td{text-align:right;border:0;justify-content:space-between;align-items:center;gap:16px;min-height:29px;padding:5px 0;font-size:12px;display:flex}.responsive-table td:before{content:attr(data-label);color:#a5b39d;text-align:left;flex-shrink:0;font-size:11px;font-weight:400;line-height:1.7}.responsive-table td:first-child{text-align:left;padding:0 0 13px;display:block}.responsive-table td:first-child:before{display:none}.responsive-table .material-name{gap:10px}.responsive-table .material-glyph{border-radius:9px;width:39px;height:39px}.responsive-table .material-name strong{color:#537246;font-size:14px;line-height:1.5}.responsive-table .material-name>div>span{font-size:10px}.responsive-table .cell-stack{align-items:flex-end}.responsive-table .cell-stack small{font-size:10px}.responsive-table td.align-right{border-top:1px dashed #edf2e8;margin-top:6px;padding-top:10px}.responsive-table td.align-right:before{margin-right:auto}.responsive-table .text-button{min-height:29px;font-size:12px}.responsive-table .action-separator{margin:0 3px}.responsive-table .badge{padding:4px 8px;font-size:10px}.responsive-table .stock-quantity{align-items:flex-end}.responsive-table .stock-quantity strong{font-size:20px}.responsive-table .stock-quantity small,.responsive-table .stock-quantity>span{font-size:11px}.inventory-table td:nth-child(2){border-top:1px dashed #edf2e8;margin-top:0;padding-top:12px;padding-bottom:8px}.pagination{padding:14px 15px;font-size:10px}.pagination>div{gap:10px}.pagination button{min-height:31px;font-size:10px}.page-footnote{gap:6px;margin-top:17px;font-size:10px;line-height:1.9}.page-footnote svg{width:14px;height:14px;margin-top:3px}.inventory-summary{border-radius:10px;gap:16px;margin-bottom:17px;padding:18px}.inventory-summary>div{gap:10px}.summary-icon{border-radius:10px;width:37px;height:37px}.summary-icon svg{width:19px;height:19px}.inventory-summary>div>div>span{font-size:10px}.inventory-summary strong{font-size:25px}.inventory-summary small{font-size:10px}.filter-check{min-height:28px;font-size:11px}.empty{padding:45px 20px}.empty h3{font-size:13px}.empty p{font-size:11px}.modal,.modal.wide{border:0;border-radius:0;width:100%;max-width:100%;height:100dvh;max-height:100dvh;margin:0;position:fixed;inset:0}.modal>form{height:100dvh;max-height:100dvh}.modal-head{padding:20px 20px 18px;padding-top:calc(20px + env(safe-area-inset-top))}.modal-head h2{font-size:19px}.modal-head p{font-size:11px}.modal-head .icon-button{width:34px;height:34px}.modal-body{flex:1;padding:23px 20px}.modal-footer{padding:16px 20px calc(16px + env(safe-area-inset-bottom));gap:12px}.modal-footer .button{flex:1;min-height:44px;font-size:13px}.form-grid{grid-template-columns:1fr;gap:20px}.form-grid.unit-grid{grid-template-columns:1fr 1fr;gap:16px}.unit-grid .field:last-child{grid-column:1/-1}.form-grid.quantity-grid{grid-template-columns:minmax(0,1fr) 115px;gap:15px}.field{gap:8px}.field-label{font-size:13px}.field input,.field select,.field textarea{border-radius:8px;min-height:46px;padding:11px 12px;font-size:16px}.field textarea{min-height:90px;font-size:14px}.field-hint{font-size:11px;line-height:1.8}.required{color:#bacdaf}.toggle-row{margin-bottom:20px;padding:15px}.toggle-row strong{font-size:13px}.toggle-row span{font-size:10px;line-height:1.8}.conversion-banner{gap:7px;padding:13px;font-size:12px;line-height:1.8}.conversion-banner small{width:100%;margin:0;font-size:10px}.check-row{align-items:flex-start;font-size:13px}.check-row input{margin-top:3px}.check-row small{font-size:10px;line-height:1.8}.form-section-label{padding-bottom:15px;font-size:12px}.entry-panel .panel-heading{gap:11px;padding:18px 17px}.entry-heading-icon{width:38px;height:38px}.entry-panel .panel-heading>.badge{font-size:10px}.entry-panel .panel-heading h2{font-size:14px}.entry-panel .panel-heading p{font-size:9px}.entry-form{padding:21px 17px}.entry-form .form-grid{gap:19px}.entry-form .field input,.entry-form .field select{font-size:15px}.selected-material{gap:10px;padding:12px}.selected-material .material-glyph{width:30px;height:30px}.selected-material .material-name strong{font-size:12px}.selected-material .material-name>div>span{font-size:9px}.selected-material>div:last-child{align-items:flex-end;margin-left:auto}.selected-material>div:last-child>span{font-size:10px}.selected-material small{font-size:9px}.entry-footer{align-items:center;gap:12px;margin:24px -17px -21px;padding:18px 17px}.entry-footer>span{gap:4px;max-width:130px;font-size:9px;line-height:1.7}.entry-footer .button{flex:1;min-height:44px;padding:11px 17px;font-size:13px}.success-notice{flex-wrap:wrap;padding:12px}.success-notice strong{font-size:12px}.success-notice>div>span{font-size:10px}.success-notice .text-button{margin-left:auto;font-size:11px}.records-toolbar .toolbar-filters{grid-template-columns:1fr;gap:10px;width:100%;display:grid}.records-toolbar .toolbar-filters>select{width:100%}.date-range{justify-content:space-between;gap:8px;width:100%}.date-range input{color:#839c76;flex:1;width:calc(50% - 15px);min-width:0;min-height:40px;padding:8px;font-size:12px}.date-range span{flex-shrink:0;font-size:10px}.detail-amount strong{font-size:37px}.detail-amount>span,.detail-amount p{font-size:12px}.detail-list>div{gap:25px;padding:10px 0;font-size:12px}.detail-list dd{max-width:70%}.detail-material .material-name strong{font-size:15px}.detail-material .material-name>div>span{font-size:10px}.detail-material .badge{font-size:11px}.warning-notice{gap:8px;padding:13px;font-size:12px}.permission-note{align-items:flex-start;gap:10px;margin-bottom:17px;padding:16px}.permission-note>svg{width:19px;height:19px;margin-top:2px}.permission-note strong{font-size:12px;line-height:1.8}.permission-note p{font-size:10px;line-height:1.9}.permission-option{gap:11px;padding:15px}.permission-option strong{font-size:13px}.permission-option div>span{font-size:10px}.permission-option-icon{padding:8px}.member-name .avatar{width:39px;height:39px;font-size:14px}.member-name strong{font-size:14px}.member-name div>span{font-size:11px}.permission-yes{font-size:12px}.log-detail{overflow-wrap:anywhere;max-width:none!important}.responsive-table td.log-detail{align-items:flex-start;font-size:12px;line-height:1.9}.responsive-table td.log-detail:before{min-width:45px}.responsive-table td.nowrap:first-child{color:#9aac8f;background:#fafcf7;width:calc(100% + 30px);margin:-17px -15px 10px;padding:12px 15px;font-size:11px}.responsive-table td.nowrap:first-child:before{content:"操作时间";margin-right:12px;font-size:10px;display:inline}.list-limit{padding:13px 15px;font-size:10px}.toast{border-radius:9px;width:max-content;max-width:calc(100vw - 26px);padding:13px 16px;font-size:12px;line-height:1.7;top:76px}.auth-page{background:#fcfdf9;min-height:100dvh;display:block}.auth-story{display:none}.auth-main{flex-direction:column;justify-content:flex-start;align-items:flex-start;min-height:100dvh;padding:70px 25px 80px}.auth-mobile-brand{color:#437239;align-items:center;gap:10px;margin-bottom:50px;display:flex}.auth-mobile-brand strong{letter-spacing:.15em;font-size:25px;font-weight:600}.auth-form-wrap{width:100%;max-width:420px;margin:0 auto}.auth-form-icon{border-radius:12px;width:45px;height:45px;margin-bottom:21px}.auth-form-wrap h2{font-size:28px}.auth-description{margin-top:9px;font-size:12px}.auth-form{gap:22px;margin-top:30px}.auth-form .field-label{font-size:12px}.auth-form .field input{min-height:48px;font-size:16px}.auth-form .field-hint{font-size:10px}.auth-form .button{min-height:47px;margin-top:6px;font-size:14px}.auth-note{gap:8px;margin-top:27px;padding-top:20px}.auth-note span{font-size:10px}.auth-copyright{text-align:center;margin:54px auto 0;font-size:9px;position:static;bottom:26px;left:0;right:0}.no-permission{margin-top:22px}}@media (max-width:375px){.main-content{padding-left:13px;padding-right:13px}.topbar{padding:0 13px}.stat-card{padding:13px}.stat-top{font-size:10px}.stat-caption{font-size:7px}.stat-icon{width:27px;height:27px}.stat-value{font-size:27px}.heading-actions .button{padding:10px 11px;font-size:11px}.quick-grid strong{font-size:10px}.quick-grid button>span:last-child{font-size:7px}.compact-table th,.compact-table td{padding-left:11px;padding-right:11px}.compact-table .material-name{gap:7px}.compact-table .material-name strong{font-size:10px}.compact-table .material-name>div>span{font-size:7px}.compact-table td{font-size:9px}.welcome-banner p{max-width:175px}.page-heading h1{font-size:21px}.entry-panel .panel-heading>.badge{display:none}.auth-main{padding:45px 23px 60px}.auth-mobile-brand{margin-bottom:40px}.modal-body{padding-left:17px;padding-right:17px}.toolbar{padding-left:13px;padding-right:13px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.form-lock{border:0;min-width:0;margin:0;padding:0}.material-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:13px;display:flex}.danger-text{color:#bc8c72}.danger-text:hover{color:#ac6f50}.danger-text:disabled{color:#b1bba7;opacity:1}.deleted-material .material-name{opacity:.66}.deletion-material{border-bottom:1px solid #e7ecdf;padding-bottom:18px}.deletion-stock{background:#f9fbf5;border:1px solid #e8eddf;border-radius:8px;justify-content:space-between;align-items:center;gap:15px;margin-top:17px;padding:13px 15px;display:flex}.deletion-stock>span{color:#9cad8b;font-size:11px}.deletion-stock>strong{color:#729454;font-size:15px;font-weight:600}.deletion-reason-cell{overflow-wrap:anywhere;white-space:pre-wrap;max-width:260px}.request-status-filter{width:auto;min-width:120px}.deletion-review-actions{justify-content:flex-end;align-items:center;gap:9px;width:100%;display:flex}.deletion-review-actions>.button:first-child{margin-right:auto}.deletion-review-actions .button{min-height:38px;padding:10px 14px;font-size:11px}.deletion-requests td{vertical-align:top}.deletion-requests .material-name{min-width:125px}@media (max-width:760px){.material-actions{justify-content:flex-end;gap:18px}.responsive-table td.deletion-reason-cell{align-items:flex-start;max-width:none;line-height:1.9}.deletion-stock{padding:14px;font-size:12px}.deletion-stock>span{font-size:12px}.deletion-stock>strong{font-size:16px}.deletion-review-actions{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:10px;display:grid}.deletion-review-actions>.button:first-child{grid-area:2/1/auto/-1;margin:0}.deletion-review-actions>.button:only-child{grid-row:auto}.deletion-review-actions .button{width:100%;min-height:43px;padding:11px 10px;font-size:12px}.deletion-requests .material-name{min-width:0}.request-status-filter{min-width:120px;max-width:none!important}.deleted-material .cell-stack>small{font-size:9px}}.material-photo-editor{border-top:1px solid #eaf0e4;margin-top:24px;padding-top:20px}.optional-label{color:#b0bca3;margin-left:6px;font-size:10px;font-weight:400}.photo-editor-row{align-items:center;gap:19px;display:flex}.photo-placeholder,.photo-draft-thumbnail{background:#f8fbf4;border:1px dashed #dce6d1;border-radius:10px;flex-shrink:0;width:118px;height:118px;overflow:hidden}.photo-placeholder{color:#b0c29e;flex-direction:column;justify-content:center;align-items:center;gap:10px;display:flex}.photo-placeholder>span{color:#adbb9c;font-size:9px}.photo-draft-thumbnail{background:#f3f6ef;border-style:solid;position:relative}.photo-draft-thumbnail>img{object-fit:cover;width:100%;height:100%;display:block}.photo-expand{color:#6e9058;background:#fffef9e8;border:1px solid #dee8d5;border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;display:flex;position:absolute;bottom:7px;right:7px;box-shadow:0 2px 6px #21411216}.photo-editor-controls{flex:1;min-width:0}.photo-action-buttons{flex-wrap:wrap;gap:9px;display:flex}.photo-action-buttons>.button{min-height:36px;padding:9px 13px;font-size:11px}.photo-editor-controls>p{color:#a3b190;margin-top:10px;font-size:10px;line-height:1.9}.photo-remove.text-button{color:#bb9274;gap:4px;margin-top:5px;font-size:10px}.photo-reading{color:#87a46e;background:#f5f9ee;border-radius:7px;align-items:center;gap:7px;margin-top:13px;padding:10px 12px;font-size:11px;display:flex}.photo-inline-large{background:#f5f7f1;border:1px solid #e6ecdd;border-radius:10px;flex-direction:column;align-items:center;gap:13px;margin-top:17px;padding:14px;display:flex}.photo-inline-large>img{object-fit:contain;border-radius:5px;max-width:100%;max-height:390px;display:block}.photo-inline-large>.button{min-height:34px;padding:8px 13px;font-size:11px}.material-thumbnail{cursor:zoom-in;border-style:solid;border-radius:7px;padding:0;transition:box-shadow .15s;position:relative;overflow:hidden}.material-thumbnail:hover{box-shadow:0 0 0 2px #b0c99a}.material-thumbnail>img{object-fit:cover;width:100%;height:100%;display:block}.material-thumbnail.photo-failed{color:#c9a05e;background:#fff8e9}.photo-viewer{background:#f6f8f2;border-radius:9px;justify-content:center;align-items:center;min-height:200px;display:flex;position:relative;overflow:hidden}.photo-viewer>.loading{min-height:180px;position:absolute;inset:0}.photo-viewer>img{object-fit:contain;opacity:0;max-width:100%;max-height:65dvh;display:block}.photo-viewer>img.ready{opacity:1}.photo-viewer>.error-state{min-height:200px;padding:35px 20px}@media (max-width:760px){.material-photo-editor{margin-top:25px;padding-top:23px}.photo-editor-row{align-items:flex-start;gap:14px}.photo-placeholder,.photo-draft-thumbnail{border-radius:9px;width:96px;height:116px}.photo-placeholder{gap:9px}.photo-placeholder>span{font-size:8px}.photo-action-buttons{gap:8px}.photo-action-buttons>.button{min-height:39px;padding:9px 10px;font-size:12px}.photo-action-buttons>.button svg{width:16px;height:16px}.photo-editor-controls>p{margin-top:10px;font-size:10px;line-height:1.9}.photo-remove.text-button{min-height:28px;margin-top:7px;font-size:11px}.photo-expand{width:30px;height:30px;bottom:6px;right:6px}.photo-inline-large{gap:13px;padding:12px}.photo-inline-large>img{max-height:55dvh}.photo-inline-large>.button{min-height:40px;font-size:12px}.photo-reading{font-size:12px;line-height:1.7}.photo-viewer{min-height:240px}.photo-viewer>img{width:auto;max-height:70dvh}.material-thumbnail{border-radius:8px}.optional-label{font-size:10px}}@media (max-width:375px){.photo-editor-row{gap:12px}.photo-placeholder,.photo-draft-thumbnail{width:85px;height:116px}.photo-action-buttons{gap:7px}.photo-action-buttons>.button{padding:9px 10px;font-size:11px}.photo-action-buttons>.button svg{width:15px;height:15px}}.material-bound-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;margin-top:20px;display:grid}.readonly-binding{cursor:default;color:#7a8f6a!important;background:#f7f9f3!important;border-color:#e6ebdf!important}.material-name>div>span.material-bindings{color:#91a181;overflow-wrap:anywhere;max-width:260px;font-size:9px;line-height:1.7}.material-name>div{min-width:0}@media (max-width:760px){.material-bound-grid{grid-template-columns:minmax(0,1fr);gap:17px}.material-name>div>span.material-bindings{max-width:none;font-size:10px;line-height:1.8}.readonly-binding{min-height:46px;font-size:16px!important}}.side-nav{overscroll-behavior:contain;min-height:0}.sidebar>.brand,.workspace-label,.sidebar-bottom{flex-shrink:0}.catalog-name{min-width:0}.catalog-name>strong{overflow-wrap:anywhere;min-width:0}.supplier-note{white-space:pre-wrap;overflow-wrap:anywhere;max-width:340px}.supplier-load-error{color:#b39a70;background:#fff9ee;border:1px solid #f1e5ca;border-radius:8px;flex-direction:column;align-items:flex-start;gap:9px;padding:11px;font-size:11px;display:flex}.supplier-load-error>span{overflow-wrap:anywhere;line-height:1.8}.supplier-load-error>span>svg{vertical-align:-3px;margin-right:5px}.supplier-load-error .button{min-height:32px;padding:7px 10px;font-size:10px}.entry-form .form-grid>.warning-notice{margin:0}@media (max-width:760px){.responsive-table td.supplier-note{align-items:flex-start;max-width:none;line-height:1.9}.supplier-load-error{padding:12px;font-size:12px}.supplier-load-error .button{min-height:38px;font-size:12px}.sidebar{padding-bottom:0}.side-nav{padding-bottom:18px}}.threshold-input-grid{grid-template-columns:minmax(0,1fr) 155px;gap:16px;display:grid}.threshold-help{color:#9aab8d;align-items:flex-start;gap:7px;margin-top:11px;font-size:10px;line-height:1.8;display:flex}.threshold-help>svg{margin-top:2px}.threshold-help>div{flex-direction:column;gap:4px;min-width:0;display:flex}.threshold-help strong{color:#6d9156;font-size:11px;font-weight:550}.warning-threshold>small{color:#9cab90}@media (max-width:760px){.threshold-input-grid{grid-template-columns:minmax(0,1fr) 115px;gap:14px}.threshold-input-grid .field input,.threshold-input-grid .field select{min-height:46px;font-size:16px}.threshold-help{gap:6px;margin-top:12px;font-size:11px}.threshold-help strong{font-size:12px}}.settings-tabs{border-bottom:1px solid #e2eade;align-items:center;gap:7px;margin:0 0 19px;padding:0 3px;display:flex}.settings-tabs>button{color:#8d9d83;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:9px;margin-bottom:-1px;padding:13px 18px;font-size:12px;font-weight:500;display:flex}.settings-tabs>button.active{color:#4c7c3c;border-bottom-color:#649c4d}.settings-tabs>button>span{color:#98ad89;font-variant-numeric:tabular-nums;background:#ebf1e4;border-radius:5px;padding:1px 6px;font-size:10px}.settings-tabs>button.active>span{color:#6e9859;background:#e4efdc}.catalog-note{align-items:flex-start}.catalog-note>svg{margin-top:2px}.catalog-note p{line-height:1.9}.catalog-name{align-items:center;gap:10px;display:flex}.catalog-name>strong{color:#5a7a48;font-size:12px;font-weight:550}.prefix-chip{letter-spacing:.06em;color:#7c9968;background:#f3f7ed;border:1px solid #e7edde;border-radius:5px;padding:4px 9px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px}.catalog-form-note{color:#99ad8b;background:#f8fbf3;border:1px solid #e7efdd;border-radius:7px;flex-wrap:wrap;align-items:center;gap:7px;margin-bottom:22px;padding:11px 12px;font-size:10px;display:flex}.catalog-form-note>.text-button{margin-left:auto;padding:0;font-size:10px}.catalog-form-note+.warning-notice{margin-top:-8px}.warning-notice .text-button{width:-moz-fit-content;width:fit-content;padding-top:5px;font-size:11px;display:flex}.code-input{width:100%;position:relative}.code-input>input{color:#63854d;letter-spacing:.03em;background:#f8faf5;border-style:dashed;padding-right:40px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:13px}.code-input>input::placeholder{letter-spacing:0;font-family:Inter,Segoe UI,Microsoft YaHei,sans-serif;font-size:11px}.code-input>svg{color:#a4b596;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.code-input>svg.spin{top:calc(50% - 7px);transform:none}.code-rule{color:#99ae89;letter-spacing:.01em;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10px}.field-preview-error{color:#ba9870;font-size:10px;line-height:1.7}@media (max-width:760px){.settings-tabs{gap:0;margin-bottom:17px;padding:0}.settings-tabs>button{flex:1;justify-content:center;gap:8px;padding:13px 14px;font-size:13px}.settings-tabs>button>span{padding:1px 6px;font-size:10px}.catalog-table .catalog-name>strong{font-size:15px}.catalog-table .catalog-name>.material-glyph{width:38px;height:38px}.catalog-table .prefix-chip{padding:4px 10px;font-size:12px}.catalog-form-note{gap:6px;margin-bottom:22px;padding:12px;font-size:10px;line-height:1.9}.catalog-form-note>svg{width:14px;height:14px}.catalog-form-note>.text-button{margin-left:20px;font-size:11px}.code-input>input{min-height:46px;font-size:15px}.code-input>input::placeholder{font-size:12px}.code-rule{font-size:10px;line-height:1.8}.field-preview-error{font-size:11px}.catalog-note p,.catalog-note strong{line-height:1.9}}
