:root{--bg:#f6f7f9;--surface:#fff;--text:#1a1d23;--text-muted:#667085;--border:#e3e6ea;--primary:#1f5e3a;--primary-dark:#163f27;--primary-contrast:#fff;--danger:#b3261e;--warning:#8a5a00;--radius:10px;--max-width:880px}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;-webkit-text-size-adjust:100%}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}.container{max-width:var(--max-width);margin:0 auto;padding:16px}.topbar{background:var(--surface);border-bottom:1px solid var(--border);position:-webkit-sticky;position:sticky;top:0;z-index:10}.topbar-inner{max-width:var(--max-width);margin:0 auto;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.brand{font-weight:700;font-size:18px;color:var(--text)}.brand span{color:var(--primary)}.topnav{display:flex;gap:14px;align-items:center;flex-wrap:wrap;font-size:14px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px;margin-bottom:14px}h1{font-size:22px;margin:0 0 6px}h2{font-size:18px;margin:0 0 10px}h3{font-size:15px;margin:0 0 8px}.muted,p.muted{color:var(--text-muted);font-size:13px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--primary);background:var(--primary);color:var(--primary-contrast);padding:10px 16px;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;text-align:center}.btn:hover{background:var(--primary-dark);text-decoration:none}.btn.secondary{background:var(--surface);color:var(--primary)}.btn.secondary:hover{background:#eef2ef}.btn.danger{background:var(--danger);border-color:var(--danger)}.btn.danger:hover{background:#8f1f19}.btn.small{padding:6px 10px;font-size:13px}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}label{display:block;font-size:13px;font-weight:600;margin-bottom:4px;margin-top:12px}input[type=email],input[type=number],input[type=password],input[type=tel],input[type=text],input[type=url],select,textarea{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:8px;font-size:15px;background:var(--surface);color:var(--text)}input[type=file]{width:100%;font-size:13px;margin-top:2px}textarea{resize:vertical;min-height:60px}form .field{margin-bottom:4px}.badge{display:inline-block;padding:3px 9px;border-radius:999px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.02em;white-space:nowrap}.badge-gray{background:#eceef1;color:#444}.badge-blue{background:#e3edfb;color:#1c4fa1}.badge-yellow{background:#fdf1d8;color:#8a5a00}.badge-green{background:#e2f4e8;color:#1a7a3a}.badge-red{background:#fbe3e1;color:#b3261e}.badge-purple{background:#ede3fb;color:#5a26b3}.error-box{background:#fbe3e1;color:#7a1a14;border:1px solid #f0b8b3;border-radius:8px}.error-box,.info-box{padding:10px 12px;font-size:14px;margin-bottom:12px}.info-box{background:#e3edfb;color:#143a70;border:1px solid #b8d1f0;border-radius:8px}table{border-collapse:collapse;width:100%;font-size:14px}td,th{text-align:left;padding:8px 6px;border-bottom:1px solid var(--border);vertical-align:top}th{font-size:12px;text-transform:uppercase;color:var(--text-muted);font-weight:700}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.order-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid var(--border);flex-wrap:wrap}.order-row:last-child{border-bottom:none}.progress-bar-track{background:#eceef1;border-radius:999px;height:10px;overflow:hidden}.progress-bar-fill{background:var(--primary);height:100%}.grid-2{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}@media (max-width:480px){.grid-2{grid-template-columns:1fr}.topbar-inner{padding:10px 12px}.container{padding:12px}}.line-card{border:1px solid var(--border);border-radius:var(--radius);padding:12px;margin-bottom:12px}.line-card-header{align-items:center;margin-bottom:6px}.kv,.line-card-header{display:flex;justify-content:space-between}.kv{font-size:14px;padding:4px 0}.kv .k{color:var(--text-muted)}.center{text-align:center}.stack{display:flex;flex-direction:column;gap:10px}.spread{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}hr.sep{border:none;border-top:1px solid var(--border);margin:14px 0}