:root{font-family:"Microsoft YaHei","PingFang SC",sans-serif;color:#15241f;background:#f3f6f5;line-height:1.5;--green:#087f5b;--border:#d8e2de;--muted:#6b7f78}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,textarea{font:inherit;letter-spacing:0}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.topbar{height:64px;background:#fff;border-bottom:1px solid var(--border);display:flex;align-items:center}.nav{width:min(1180px,calc(100% - 40px));margin:auto;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;gap:11px;align-items:center;font-weight:700}.logo{width:36px;height:36px;border-radius:6px;background:var(--green);color:white;display:grid;place-items:center}.nav a{color:#526a62;text-decoration:none;font-size:14px}.shell{width:min(1180px,calc(100% - 40px));margin:0 auto;padding:54px 0;display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start}.eyebrow{display:inline-flex;align-items:center;padding:7px 11px;border:1px solid #b8d3c9;background:#eaf5f1;color:#176149;font-size:14px;font-weight:600}h1{font-size:40px;line-height:1.2;margin:22px 0 14px}h2{margin:0}.intro{color:#597169;line-height:1.8;max-width:520px}.compact{font-size:13px;margin:8px 0 14px}.steps{margin-top:72px;padding:0;list-style:none}.steps li{padding:16px 0;border-top:1px solid #d4dfdb;display:flex;gap:12px;align-items:center;font-weight:600}.num{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#dceae5;color:#166247}.panel{background:#fff;border:1px solid var(--border);box-shadow:0 18px 60px rgba(26,62,49,.08);padding:30px}.claim-panel{min-height:430px;display:grid;align-items:center;padding:48px}.claim-panel #claimView{text-align:center}.claim-icon{width:64px;height:64px;border-radius:8px;margin:0 auto 22px;background:#e1f1eb;color:var(--green);display:grid;place-items:center;font-size:22px;font-weight:800}.claim-panel .intro{margin:9px auto 24px}.inventory-line{display:flex;align-items:center;justify-content:center;gap:9px;padding:14px;background:#f4f8f6;border:1px solid var(--border);font-size:14px}.inventory-dot{width:9px;height:9px;border-radius:50%;background:#18a56f}.inventory-line.empty-stock .inventory-dot{background:#c48b22}.done-mark{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;margin:0 auto 18px;background:#dff2ea;color:var(--green);font-size:28px;font-weight:700}.panel-head{display:flex;justify-content:space-between;border-bottom:1px solid #e4ebe8;padding-bottom:22px;margin-bottom:25px}.panel-head p{margin:4px 0 0;color:var(--muted);font-size:14px}.full{grid-column:1/-1}label{display:block;font-size:14px;font-weight:600;margin-bottom:7px}input,textarea{width:100%;border:1px solid #cad8d2;border-radius:5px;padding:12px 13px;background:#fff;outline:none}input:focus,textarea:focus{border-color:#53a98a;box-shadow:0 0 0 3px #dcefe8}.btn{border:0;border-radius:5px;background:var(--green);color:#fff;padding:12px 18px;font-weight:600}.btn:hover:not(:disabled){background:#076b4e}.btn.secondary{background:white;color:#294b40;border:1px solid #cbd8d3}.btn.secondary:hover:not(:disabled){background:#f5f8f7}.btn.full{width:100%;margin-top:18px}.hint{font-size:12px;color:#71857e;text-align:center}.error{padding:11px 13px;background:#fff2f0;border:1px solid #ecc6c2;color:#a13a32;font-size:14px}.claim-panel .error{margin-top:16px;text-align:left}.empty{padding:70px 20px;text-align:center;color:var(--muted)}.codebox{background:#f5f8f7;border:1px solid var(--border);padding:16px;margin:20px 0;display:grid;gap:8px}.hidden{display:none!important}.admin-shell{width:min(1400px,calc(100% - 40px));margin:auto;padding:28px 0}.toolbar,.row{display:flex;align-items:center;justify-content:space-between;gap:12px}.admin-title{font-size:28px;margin:4px 0}.toolbar-actions{display:flex;gap:10px}.inventory-banner{background:#e7f4ef;border:1px solid #b8d8cc;padding:16px 18px;display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:20px}.inventory-banner.warning{background:#fff6df;border-color:#e9c96e}.inventory-banner p{margin:3px 0 0;color:#597169;font-size:13px}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:18px 0}.card{background:#fff;border:1px solid var(--border);padding:20px}.metric{border-top:3px solid #91ada3}.metric.available-metric{border-top-color:#1a9b6e}.metric.attention{border-top-color:#d59a2d}.card .value{font-size:31px;font-weight:700;margin-top:6px}.card small{color:var(--muted)}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px}.table-wrap{background:#fff;border:1px solid var(--border);overflow:auto}.tabs{display:flex;border-bottom:1px solid var(--border);padding:0 18px}.tab{border:0;background:transparent;padding:16px 14px;color:#687c75;white-space:nowrap}.tab.active{color:#14231e;border-bottom:2px solid var(--green);font-weight:700}table{width:100%;border-collapse:collapse;font-size:14px}th,td{text-align:left;padding:13px 18px;border-bottom:1px solid #e4ebe8;white-space:nowrap}th{color:#687b74;font-weight:600}.badge{display:inline-block;border:1px solid #acd6c5;background:#eaf7f1;color:#146247;padding:3px 8px;border-radius:20px;font-size:12px}.badge.warn{border-color:#eccd86;background:#fff8e7;color:#8b6113}.action-cell{display:flex;gap:6px}.table-action{padding:7px 10px}.side{display:grid;gap:16px;align-content:start}.side-title{font-size:17px}.field-gap{margin-top:12px}.modal{position:fixed;inset:0;background:#0006;display:grid;place-items:center;padding:20px}.modal-card{width:min(520px,100%);background:white;padding:24px;border-radius:7px}.modal-card textarea{min-height:180px;margin:14px 0}.login{min-height:calc(100vh - 64px);display:grid;place-items:center;padding:20px}.login .panel{width:min(420px,100%)}@media(max-width:850px){.shell{grid-template-columns:1fr;gap:28px;padding-top:28px}.steps{margin-top:30px}.cards{grid-template-columns:1fr 1fr}.workspace{grid-template-columns:1fr}.full{grid-column:auto}h1{font-size:32px}.claim-panel{padding:32px}.side{grid-template-columns:repeat(3,1fr)}}@media(max-width:620px){.toolbar{align-items:flex-start;flex-direction:column}.toolbar-actions{width:100%}.toolbar-actions .btn{flex:1}.inventory-banner{align-items:flex-start}.cards{grid-template-columns:1fr 1fr}.side{grid-template-columns:1fr}.panel{padding:22px}.claim-panel{min-height:360px}.shell,.admin-shell,.nav{width:min(100% - 24px,1180px)}.tabs{overflow-x:auto;padding:0 8px}th,td{padding:12px}.nav a{font-size:12px}}
