*{box-sizing:border-box}body{margin:0;font:15px/1.45 Arial,Helvetica,sans-serif;color:#1f2937;background:#f3f4f6}
header{background:#fff;border-bottom:3px solid #d0202a;display:flex;align-items:center;gap:18px;padding:10px 24px}
header img{height:44px}header h1{font-size:19px;margin:0;color:#2d3a4a}header .sp{flex:1}
nav{display:flex;gap:4px;padding:0 24px;background:#fff;border-bottom:1px solid #e5e7eb}
nav button{border:0;background:none;padding:12px 16px;font-size:15px;cursor:pointer;color:#4b5563;border-bottom:3px solid transparent}
nav button.on{color:#d0202a;border-bottom-color:#d0202a;font-weight:bold}
main{max-width:1100px;margin:22px auto;padding:0 18px}
.card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:20px 22px;margin-bottom:18px}
.card h2{margin:0 0 14px;font-size:17px;color:#2d3a4a}
label{display:block;font-size:13px;color:#4b5563;margin-bottom:10px}
input,select,textarea{display:block;width:100%;margin-top:3px;padding:8px 10px;border:1px solid #cbd5e1;border-radius:6px;font:inherit;color:#111;background:#fff}
input:focus,select:focus,textarea:focus{outline:2px solid #fca5a5;border-color:#d0202a}
input[readonly]{background:#f9fafb;color:#6b7280}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0 16px}
.g2{display:grid;grid-template-columns:1fr 1fr;gap:18px}@media(max-width:800px){.g2{grid-template-columns:1fr}}
button{font:inherit;cursor:pointer;border-radius:6px;border:1px solid #cbd5e1;background:#fff;padding:8px 14px}
button.primary{background:#d0202a;border-color:#d0202a;color:#fff;font-weight:bold}button.primary:hover{background:#b0141d}
button:disabled{opacity:.5;cursor:wait}button.small{padding:4px 9px;font-size:13px}button.link{border:0;background:none;color:#d0202a;padding:0;text-decoration:underline}
table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:7px 8px;border-bottom:1px solid #eef0f3;vertical-align:middle}
th{font-size:12px;text-transform:uppercase;letter-spacing:.03em;color:#6b7280;font-weight:normal}
td.r,th.r{text-align:right}td input{margin:0}
.sum td{border:0;padding:4px 8px}.sum .total td{font-weight:bold;font-size:17px;border-top:2px solid #1f2937}
.muted{color:#6b7280}.error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca;border-radius:6px;padding:10px 12px}
.ok{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0;border-radius:6px;padding:12px 14px}
.warn{background:#fffbeb;color:#92400e;border:1px solid #fde68a;border-radius:6px;padding:10px 12px}
.addr{white-space:pre-line;background:#f9fafb;border-radius:6px;padding:10px 12px;font-size:14px}
.badge{display:inline-block;font-size:12px;padding:2px 8px;border-radius:99px;background:#e5e7eb}.badge.g{background:#dcfce7;color:#166534}.badge.r{background:#fee2e2;color:#991b1b}
.actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:14px}
.login{display:flex;justify-content:center;align-items:center;min-height:100vh}.loginbox{width:360px}.loginbox h1{margin:10px 0 2px;font-size:22px}
.hint{font-size:13px;color:#6b7280;margin:-4px 0 10px}
.tabs-c>section{display:none}.tabs-c>section.on{display:block}
