:root{color-scheme:light;--ink:#182c43;--muted:#54677b;--blue:#244e85;--blue-hover:#183963;--line:#bdcad8;--soft-blue:#e1eaff;--entry:#f4f8e5;--green:#eef6c6;--paper:#fff;--page:#f5f7fa;font-family:"Microsoft YaHei","PingFang SC",system-ui,sans-serif;font-size:16px;line-height:1.6;color:var(--ink);background:var(--page)}
*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}button,input,select{border-radius:5px}button{min-height:42px;padding:8px 16px;border:1px solid transparent;transition:background .16s ease-out}button:focus-visible,a:focus-visible{outline:3px solid #718bd3;outline-offset:3px}input,select{width:100%;min-height:46px;border:1px solid #9faec0;background:white;color:var(--ink);padding:10px 12px;caret-color:var(--blue)}input::placeholder{color:#657386}input:focus,select:focus{outline:2px solid #6e88c4;outline-offset:1px}::selection{background:#d6e4ff;color:#183963}[hidden]{display:none!important}a{color:var(--blue);text-underline-offset:4px}h1,h2,p{margin:0}h1{font-size:1.75rem;font-weight:650;letter-spacing:.015em;line-height:1.4}h2{font-size:1.125rem;font-weight:650;line-height:1.5}.muted{color:var(--muted);font-size:.875rem}.topbar{height:76px;background:white;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 40px;gap:16px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink);font-weight:650;font-size:1.125rem;white-space:nowrap}.brand-divider{color:#8c9aab;margin:0 7px;font-weight:400}.account{display:flex;align-items:center;gap:18px;font-size:.875rem}.trial{padding:3px 9px;background:var(--green);border:1px solid #bdcb8d;font-size:.75rem;white-space:nowrap}.quiet{background:transparent;color:var(--blue);border-color:var(--line)}.quiet:hover,.secondary:hover{background:#e8eff8}.primary{background:var(--blue);color:white;font-weight:600;min-height:46px}.primary:hover{background:var(--blue-hover)}.secondary{background:white;color:var(--blue);border-color:var(--line)}main{max-width:1536px;margin:auto;padding:36px 40px 56px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px}.page-heading p{margin-top:8px}.workspace-grid{display:grid;grid-template-columns:320px minmax(0,1fr);gap:28px;align-items:start}.workspace-grid.buyer{grid-template-columns:1fr}.request-form{padding:24px;background:var(--entry);border:1px solid #a9b784;border-radius:6px}.request-form label,.login-form label{display:block;font-size:.875rem;font-weight:600;margin:24px 0 8px}.form-note{margin-top:5px}.name-input{display:flex;align-items:stretch;border:1px solid #9faec0;border-radius:5px;overflow:hidden;background:white}.name-input>span{display:flex;align-items:center;padding:0 10px;background:#e8edf3;border-right:1px solid #9faec0;white-space:nowrap;font-size:.875rem}.name-input input{min-width:0;border:0;border-radius:0;padding:10px}.name-input:focus-within{outline:2px solid #6e88c4;outline-offset:1px}.name-input input:focus{outline:0}.field-hint{color:var(--muted);font-size:.8125rem;margin-top:7px;line-height:1.6}.request-form .primary{width:100%;margin-top:8px}.error{color:#a62323;font-size:.875rem;line-height:1.6;min-height:0}.error:not(:empty){margin:14px 0}.list-panel{min-width:0;background:white;border:1px solid var(--line);border-radius:6px;overflow:hidden}.list-heading{padding:22px 24px 18px;display:flex;justify-content:space-between;align-items:center}.filters{display:flex;flex-wrap:wrap;gap:6px;padding:0 24px 18px}.filter{background:white;color:var(--muted);font-size:.875rem;min-height:38px;padding:6px 12px}.filter span{font-variant-numeric:tabular-nums;margin-left:5px}.filter:hover{background:#eef2f8}.filter.active{background:var(--soft-blue);color:#193d6c;font-weight:600}.table-scroll{width:100%;overflow-x:auto;scrollbar-color:#9aacbf #edf1f6}table{border-collapse:collapse;width:100%;font-size:.875rem}th{background:var(--soft-blue);font-weight:500;color:#253e61;text-align:left;white-space:nowrap;padding:13px 16px;border:1px solid var(--line)}th:first-child,td:first-child{border-left:0}th:last-child,td:last-child{border-right:0}td{padding:18px 16px;border:1px solid var(--line);vertical-align:middle;overflow-wrap:anywhere}tbody tr:hover{background:#f7f9fc}.item-cell{min-width:180px;font-weight:550}.model-cell{min-width:105px;max-width:200px}.category{white-space:nowrap;font-size:.8125rem}.status{display:inline-block;padding:4px 9px;font-size:.8125rem;white-space:nowrap;border-radius:4px}.status.pending{background:var(--green);color:#3e501e}.status.purchasing{background:#e1eaff;color:#234675}.status.arrived{background:#e4eee8;color:#2c553d}.date{font-size:.8125rem;white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--muted)}.date small{display:block;font-size:inherit}.advance{background:white;border:1px solid #87a0c3;color:#234675;white-space:nowrap;font-size:.875rem;padding:6px 12px;min-height:38px}.advance:hover{background:#e1eaff}.list-footer{padding:14px 24px;font-size:.8125rem;color:var(--muted)}.empty{text-align:center;padding:68px 24px;color:var(--muted)}.empty strong{display:block;font-weight:500;font-size:1rem;color:var(--ink);margin-bottom:7px}.empty p{font-size:.875rem}.load-error{padding:0 24px}.pagination{display:flex;align-items:center;justify-content:center;gap:20px;padding:12px;font-size:.875rem}.login-layout{display:grid;grid-template-columns:1fr 400px;align-items:center;gap:100px;max-width:1040px;min-height:650px;margin:0 auto}.intro h1{font-size:2.75rem;line-height:1.45;font-weight:600}.intro>p{margin-top:18px;color:var(--muted)}.workflow{padding:0;list-style:none;margin:44px 0 0;display:grid;gap:0}.workflow li{display:flex;align-items:center;gap:24px;padding:17px 0;border-top:1px solid var(--line)}.workflow strong{font-size:.9375rem;font-weight:550;min-width:78px}.workflow span{font-size:.875rem;color:var(--muted)}.login-form{background:white;border:1px solid var(--line);border-top:5px solid var(--blue);padding:32px}.login-form h2{font-size:1.375rem}.login-form>.muted{margin-top:7px}.login-form .primary{width:100%;margin-top:24px}.login-hint{font-size:.8125rem;color:var(--muted);margin-top:20px}.toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);background:#203f33;color:white;padding:13px 22px;border-radius:6px;max-width:90vw;box-shadow:0 6px 24px #15283b26;z-index:10}.mobile-records{display:none}
@media(max-width:1100px){main{padding:28px 24px}.topbar{padding:0 24px}.workspace-grid{grid-template-columns:285px minmax(0,1fr);gap:18px}.request-form{padding:20px}.login-layout{gap:50px}.table-scroll{display:none}.mobile-records{display:block}.record{padding:20px;border-top:1px solid var(--line)}.record-head{display:flex;align-items:start;justify-content:space-between;gap:12px}.record h3{margin:0;font-size:1rem;overflow-wrap:anywhere}.record dl{display:grid;grid-template-columns:64px minmax(0,1fr);gap:5px 14px;margin:14px 0 0;font-size:.875rem}.record dt{color:var(--muted)}.record dd{margin:0;overflow-wrap:anywhere}.record-bottom{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:16px}.record-bottom .date small{display:inline;margin-left:6px}}
@media(max-width:760px){.topbar{height:auto;min-height:68px;padding:15px 18px;flex-wrap:wrap}.brand{font-size:1rem}.brand-divider{margin:0 3px}.account{gap:10px;flex-wrap:wrap}.trial{font-size:.75rem}.account .quiet{min-height:34px;padding:4px 10px}.account:has(#account-name:empty){margin-left:auto}main{padding:26px 16px 40px}.page-heading{align-items:start;margin-bottom:22px;gap:12px}h1{font-size:1.5rem}.page-heading .secondary{white-space:nowrap;font-size:.875rem;padding:7px 10px;min-height:38px}.workspace-grid{grid-template-columns:1fr;gap:24px}.request-form{padding:22px}.request-form label{margin-top:20px}.list-heading{padding:20px 18px 14px}.filters{padding:0 12px 14px;gap:0}.filter{padding:6px 10px}.login-layout{display:flex;flex-direction:column;min-height:0;gap:30px;align-items:stretch}.intro h1{font-size:1.875rem}.intro h1 br{display:none}.intro>p{margin-top:10px;font-size:.875rem}.workflow{display:none}.login-form{padding:26px 22px}.list-footer{padding:14px 18px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

.purchase-notes{border:0;border-top:1px solid #a9b784;padding:18px 0 0;margin:28px 0 16px;min-width:0}.purchase-notes legend{font-size:1rem;font-weight:600;padding:0 10px 0 0}.purchase-notes label{margin-top:16px}textarea{display:block;width:100%;resize:vertical;min-height:92px;font:inherit;font-size:.875rem;line-height:1.6;padding:10px 12px;color:var(--ink);background:white;border:1px solid #9faec0;border-radius:5px}textarea:focus{outline:2px solid #6e88c4;outline-offset:1px}textarea::placeholder{color:#657386}.item-detail{display:inline;padding:0;border:0;min-height:0;border-radius:0;background:none;color:inherit;font:inherit;font-weight:inherit;text-align:left;overflow-wrap:anywhere}.item-detail:hover{text-decoration:underline;text-underline-offset:4px}dialog{width:min(560px,calc(100vw - 32px));max-height:85vh;overflow:auto;border:1px solid var(--line);border-radius:6px;padding:24px;color:var(--ink);background:white}dialog::backdrop{background:#142b4655}.detail-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.detail-name{margin:20px 0;font-weight:600;overflow-wrap:anywhere}#detail-content dt{font-size:.875rem;color:var(--muted);margin-top:20px}#detail-content dd{margin:6px 0 0;overflow-wrap:anywhere}.notes-text{white-space:pre-wrap}

.category-quantity{display:grid;grid-template-columns:minmax(0,1fr) 88px;gap:12px}.category-quantity>div{min-width:0}.category-quantity select{font-size:.8125rem;padding-left:8px;padding-right:2px}.category-quantity input{padding-left:10px;padding-right:6px}

.page-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.page-actions button{white-space:nowrap}@media(max-width:760px){.page-actions{flex-direction:column;align-items:stretch}.page-actions button{font-size:.8125rem;padding:7px 10px}}

.status-actions{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.rollback{font-size:.8125rem;white-space:nowrap;padding:5px 10px;min-height:34px}

.reject{color:#a62323;border-color:#d9b4b4}.reject:hover{background:#fff0ef}.status.rejected{color:#8f2929;background:#f8e5e3}#reject-form .page-actions{margin-top:18px}#reject-reason{margin-top:8px}

.status-summary{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.reason-link{color:#a62323;background:transparent;border:0;padding:4px 0;min-height:32px;font-size:.8125rem;white-space:nowrap;text-decoration:underline;text-underline-offset:3px}.reason-link:hover{color:#751919}.rejection-explanation{background:#fff3f1;border-left:3px solid #b64e48;padding:14px 16px;overflow-wrap:anywhere}
