/* Shadcn Admin-inspired presentation; existing application and API retained. */
:root{--ink:#18181b;--muted:#62626b;--blue:#18181b;--blue-hover:#303036;--line:#e4e4e7;--soft-blue:#f0f0f2;--entry:#fff;--green:#f4f4f5;--paper:#fff;--page:#fff;font-family:Inter,"Microsoft YaHei","PingFang SC",system-ui,sans-serif;font-size:14px;line-height:1.55}
body{background:#fff}::selection{background:#dedee4;color:#18181b}
.topbar{height:68px;padding:0 32px;border-bottom:1px solid var(--line);background:#fff}.brand{font-size:15px;gap:10px}.brand img{background:#18181b;border-radius:8px;padding:4px}.brand-divider{color:#a1a1aa}.account{font-size:13px;gap:16px}.trial{background:#fafafa;border-color:var(--line);color:#62626b;border-radius:6px}
main{max-width:1600px;padding:36px 32px 56px}.page-heading{margin-bottom:30px;align-items:center}h1{font-size:29px;font-weight:700;letter-spacing:-.035em;line-height:1.25}h2{font-size:17px;font-weight:650}.page-heading p{margin-top:9px;font-size:14px}.muted{font-size:13px}
button,input,select,textarea{border-radius:6px}button{min-height:36px;font-size:13px;padding:7px 13px;transition:background .15s,color .15s}.primary{background:#18181b;min-height:38px;font-weight:500}.primary:hover{background:#303036}.quiet,.secondary{border-color:var(--line);color:#27272a;background:#fff}.quiet:hover,.secondary:hover{background:#f4f4f5}button:focus-visible,a:focus-visible{outline:2px solid #71717a;outline-offset:3px}
input,select{min-height:39px;font-size:13px;padding:8px 10px;border-color:#d4d4d8;caret-color:#18181b;box-shadow:0 1px 2px #18181b05}input::placeholder,textarea::placeholder{color:#71717a}input:focus,select:focus,textarea:focus{outline:2px solid #a1a1aa;outline-offset:2px}.name-input{border-color:#d4d4d8;border-radius:6px}.name-input>span{background:#fafafa;border-color:var(--line);font-size:12px;color:#52525b}.name-input input{padding:8px 10px}.name-input:focus-within{outline:2px solid #a1a1aa;outline-offset:2px}.field-hint{font-size:12px;line-height:1.65;color:#71717a}
.workspace-grid{grid-template-columns:310px minmax(0,1fr);gap:28px}.request-form{border:1px solid var(--line);background:white;border-radius:10px;padding:22px;box-shadow:0 2px 5px #18181b03}.request-form label{font-size:12px;font-weight:550;margin-top:21px}.form-note{font-size:12px;margin-top:5px}.category-quantity{grid-template-columns:minmax(0,1fr) 76px;gap:10px}.category-quantity select{font-size:12px}.purchase-notes{border-color:var(--line);margin-top:24px;padding-top:14px}.purchase-notes legend{font-size:13px;font-weight:600}.purchase-notes label{margin-top:16px}textarea{border-color:#d4d4d8;font-size:13px;min-height:88px}.request-form .primary{margin-top:12px}
.list-panel{border:1px solid var(--line);border-radius:10px;box-shadow:none}.list-heading{padding:22px 22px 18px}.list-heading .muted{font-size:12px}.filters{padding:0 22px 20px;gap:4px}.filter{min-height:33px;font-size:12px;padding:6px 11px;color:#62626b;border-radius:6px}.filter.active{background:#f0f0f2;color:#18181b;font-weight:550}.filter:hover{background:#f4f4f5}.filter span{margin-left:7px}
table{font-size:13px}th{background:#fafafa;color:#62626b;font-size:12px;font-weight:500;padding:13px 14px;border-width:1px 0}td{padding:18px 14px;border-width:0 0 1px;font-size:13px}tbody tr:hover{background:#fafafa}.item-cell{font-weight:550;min-width:175px}.model-cell{min-width:110px}.category{font-size:12px}.status{font-size:11px;padding:3px 8px;border-radius:5px;font-weight:500}.status.pending{background:#fff7e6;color:#83530e}.status.purchasing{background:#eef2ff;color:#4338a3}.status.arrived{background:#edf7f0;color:#286442}.status.rejected{background:#fff0ef;color:#a12e29}.date{font-size:12px;color:#71717a}.advance{border-color:#d4d4d8;color:#27272a;font-size:12px;min-height:34px;padding:6px 10px}.advance:hover{background:#f4f4f5}.rollback{font-size:11px;min-height:30px}.reject{color:#b42318;border-color:#f0d1ce;background:white}.reject:hover{background:#fff0ef}.status-actions{gap:7px}.reason-link{font-size:11px}.list-footer{font-size:12px;padding:16px 22px}.pagination{font-size:12px}
dialog{border-color:var(--line);border-radius:12px;padding:26px;box-shadow:0 16px 60px #18181b24}dialog::backdrop{background:#09090b65}.detail-name{font-size:15px;margin:22px 0}.rejection-explanation{background:#fff6f5;border:1px solid #f0d1ce;border-radius:6px;font-size:14px;line-height:1.8}#detail-content dt{font-size:12px}#detail-content dd{font-size:14px}#detail-content h3{font-size:14px;margin-top:24px}.toast{background:#18181b;box-shadow:0 4px 16px #18181b26;font-size:13px;border-radius:8px}.error{font-size:12px}
.login-layout{max-width:1000px;gap:100px;min-height:650px}.intro h1{font-size:42px;letter-spacing:-.04em}.intro>p{font-size:15px}.login-form{border:1px solid var(--line);border-radius:12px;box-shadow:0 4px 20px #18181b06;padding:32px}.login-form h2{font-size:23px}.login-form label{font-size:13px}.login-hint{font-size:12px}.workflow strong{font-size:14px}.workflow span{font-size:13px}.workflow li{padding:18px 0}
@media(min-width:1101px){.table-scroll{display:block}.mobile-records{display:none}}
@media(max-width:1100px){.workspace-grid{grid-template-columns:285px minmax(0,1fr);gap:20px}.record{padding:20px}.record h3{font-size:14px}.record dl{font-size:12px}.record-bottom{margin-top:18px}.login-layout{gap:45px}.record-head{gap:18px}}
@media(max-width:760px){.topbar{padding:14px 18px;height:auto;min-height:64px}.account{gap:9px;font-size:12px}.brand{font-size:14px}main{padding:26px 16px 36px}.page-heading{align-items:flex-start;gap:12px;margin-bottom:24px}h1{font-size:26px}.page-heading p{font-size:12px;max-width:230px}.page-actions button,.page-heading .secondary{font-size:12px}.workspace-grid{grid-template-columns:1fr;gap:22px}.request-form{padding:22px}.list-heading{padding:20px 18px 16px}.filters{padding:0 12px 16px;gap:3px}.filter{padding:6px 9px}.filter span{margin-left:4px}.login-layout{min-height:0;gap:32px}.intro h1{font-size:30px}.login-form{padding:26px}.category-quantity{grid-template-columns:minmax(0,1fr) 88px}.list-footer{padding:16px 18px}.status-summary{flex-shrink:0}}
#submit-panel{min-width:0}@media(max-width:760px){.workspace-grid{grid-template-columns:minmax(0,1fr)}}

/* Receipt confirmation and outbound processing inherit the existing workspace. */
.status.issued{background:#f0f0f2;color:#3f3f46}.status-summary .status{white-space:normal}.receipt-time{font-size:12px;color:var(--muted);max-width:160px;line-height:1.5}.quantity-cell{font-variant-numeric:tabular-nums;white-space:nowrap}.selection-cell{width:58px}.outbound-select{display:inline-flex;align-items:center;gap:8px;min-height:44px;cursor:pointer;font-size:12px}.outbound-select input{width:18px;height:18px;min-height:18px;padding:0;margin:0;accent-color:var(--ink);box-shadow:none}.table-scroll .select-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.outbound-toolbar{border-top:1px solid var(--line);padding:14px 22px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;background:#fafafa}.outbound-toolbar p{font-size:12px;color:var(--muted)}.outbound-actions{display:flex;flex-wrap:wrap;gap:8px}.outbound-actions button{min-height:38px}.fulfillment-summary{margin:20px 0;max-height:35vh;overflow-y:auto;overscroll-behavior:contain}.confirmation-item{padding:12px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.confirmation-item:first-child{padding-top:0}.confirmation-item strong{display:block;font-size:14px}.confirmation-item p{font-size:13px;margin-top:6px;color:var(--muted)}.confirmation-item b{color:var(--ink);font-variant-numeric:tabular-nums}.confirmation-hint{font-size:13px;line-height:1.7;color:var(--muted);margin-bottom:18px}#fulfillment-form label{display:block;font-size:13px;font-weight:550;margin:18px 0 8px}#fulfillment-form .page-actions{margin-top:22px}.fulfillment-history{padding-left:22px;font-size:13px}.fulfillment-history li{padding:8px 0;overflow-wrap:anywhere}.fulfillment-history span{display:block;color:var(--muted);margin-top:5px}.fulfillment-history p{margin-top:8px}
@media(max-width:1100px){.record-head{flex-wrap:wrap}.record-head h3{flex:1 1 160px}.record-bottom{align-items:flex-start}.record-bottom .outbound-select{display:flex;margin-top:10px}.receipt-time{max-width:none}.status-actions button{min-height:44px}.outbound-actions button{min-height:44px}}
@media(max-width:760px){.page-heading{flex-wrap:wrap}.page-heading>.page-actions{width:100%;flex-direction:row;justify-content:flex-start}.page-actions button{min-height:44px}.outbound-toolbar{padding:14px 18px}.outbound-actions{width:100%}.outbound-actions button{flex:1 1 auto}#fulfillment-form .page-actions{flex-direction:row}#fulfillment-form .page-actions button{flex:1}.record-bottom{gap:16px}.record-bottom>.status-actions{max-width:55%}.status-actions button{white-space:normal;text-align:left}}

