:root{--brand:#156082;--brand-d:#0f4660;--line:#d8dee3;--out-bg:#eef2f5;--ink:#1d2733;--muted:#5b6b78;--accent:#c0392b;--ok:#1e7e34;--sel:#e7f1f7}*{box-sizing:border-box}body{margin:0;font-family:Meiryo UI,Yu Gothic UI,Hiragino Kaku Gothic ProN,sans-serif;color:var(--ink);background:#f4f6f8;font-size:13px;line-height:1.5}header.app{background:var(--brand);color:#fff;padding:9px 18px;gap:14px}header.app,header.app .logo{display:flex;align-items:center}header.app .logo{width:28px;height:28px;border-radius:50%;background:#fff;color:var(--brand);justify-content:center;font-weight:700;font-size:11px}header.app h1{font-size:16px;margin:0;font-weight:700;letter-spacing:.5px}header.app .tag{font-size:11px;background:rgba(255,255,255,.18);padding:2px 8px;border-radius:10px}nav.tabs{background:var(--brand-d);display:flex;gap:2px;padding:0 12px}nav.tabs button{background:transparent;color:#cfe0e8;padding:8px 16px;cursor:pointer;font-size:13px;border:none;border-bottom:3px solid transparent}nav.tabs button.active{color:#fff;font-weight:700;border-bottom-color:#fff}main{max-width:1240px;margin:0 auto;padding:14px}.panel{background:#fff;border:1px solid var(--line);border-radius:6px;margin-bottom:12px}.panel>.ph{background:#f0f4f7;border-bottom:1px solid var(--line);padding:7px 12px;font-weight:700;display:flex;align-items:center;justify-content:space-between;border-radius:6px 6px 0 0}.panel>.pb{padding:11px}.ph .dot{color:var(--brand);margin-right:6px}label.fld{display:inline-flex;flex-direction:column;font-size:11px;color:var(--muted);margin:0 9px 7px 0}input,select,textarea{font-family:inherit;font-size:13px;padding:4px 6px;border:1px solid #b9c4cc;border-radius:4px;background:#fff;color:var(--ink)}input[inputmode=decimal],input[type=number]{text-align:right}input:focus,select:focus,textarea:focus{outline:2px solid #8fc0db;border-color:var(--brand)}.out{background:var(--out-bg);border:none;border-radius:4px;padding:3px 6px;text-align:right;color:#2b3a45;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;display:inline-block;min-width:54px}table{border-collapse:collapse;width:100%}td,th{border:1px solid var(--line);padding:4px 6px;text-align:left;vertical-align:middle}td.num,th.num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}table.costtbl{table-layout:fixed}table.costtbl input,table.costtbl select{width:100%}table.costtbl .out{display:block;width:100%;min-width:0}table.costtbl td,table.costtbl th{padding:3px 5px}.actcol{width:36px;text-align:center}.actcol button{width:100%;padding:2px 0}.btn{background:var(--brand);color:#fff;border:none;border-radius:4px;padding:5px 11px;cursor:pointer;font-size:12px}.btn:hover{background:var(--brand-d)}.btn.sm{padding:2px 8px;font-size:11px}.btn.ghost{background:#fff;color:var(--brand);border:1px solid var(--brand)}.btn.danger{background:#fff;color:var(--accent);border:1px solid #e3b4ae}.btn.danger:hover{background:#fbecea}.btn:disabled{opacity:.5;cursor:not-allowed}.chip{background:#fff;border:1px solid var(--brand);color:var(--brand);border-radius:14px;padding:4px 12px;cursor:pointer;font-size:12px;margin-right:4px}.chip.active{background:var(--brand);color:#fff;font-weight:700}.caselist{max-height:340px;overflow:auto;border:1px solid var(--line);border-radius:4px;margin-bottom:8px}.curcase{background:#eaf3f8;border:1px solid #b9d4e3;border-radius:5px;padding:8px 12px;margin-bottom:10px}.curcase .cdate{color:var(--muted);font-size:11px}.stepper{display:flex;align-items:center;flex-wrap:wrap;gap:3px;margin:8px 0 12px}.stepper .step{padding:6px 13px;border-radius:16px;background:#fff;border:1px solid var(--line);color:var(--muted);cursor:pointer;font-size:12px}.stepper .step.active{background:var(--brand);color:#fff;border-color:var(--brand);font-weight:700}.stepper .step.done{border-color:var(--brand);color:var(--brand);background:#f0f7fb}.stepper .steparrow{color:#b9c4cc}.wiznav{display:flex;align-items:center;justify-content:space-between;margin-top:12px;padding-top:10px;border-top:1px solid var(--line)}.wizhint{color:var(--muted);font-size:12px;font-weight:700}.row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:4px}.part{border:1px solid #cdd8df;border-radius:6px;margin-bottom:11px}.part>.pth{background:#e8eef2;padding:5px 10px;font-weight:700;display:flex;justify-content:space-between;align-items:center}.part>.ptb{padding:9px}.sub{margin-bottom:9px}.sub>.sh{font-size:12px;font-weight:700;color:var(--brand-d);margin:2px 0 4px;border-left:3px solid var(--brand);padding-left:6px;display:flex;justify-content:space-between;align-items:center}.hint{font-size:11px;color:var(--muted)}.neg{color:var(--accent)}.pos{color:var(--ok)}.lotrow{display:flex;gap:12px;align-items:flex-end;padding:6px 10px;border:1px solid var(--line);border-radius:5px;margin-bottom:5px;cursor:pointer}.lotrow.sel{background:var(--sel);border-color:var(--brand)}.lotpick{font-weight:700;min-width:130px;align-self:center}.pricecard{border:1px solid #cdd8df;border-radius:6px;padding:10px;min-width:0}.resultsgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}@media(max-width:980px){.resultsgrid{grid-template-columns:repeat(2,1fr)}}.pricecard h4{margin:0 0 6px;font-size:13px;color:var(--brand-d)}.sh2{font-size:11px;font-weight:700;color:var(--muted);border-bottom:1px solid var(--line);margin:6px 0 3px}.kv{display:flex;justify-content:space-between;padding:2px 0;border-bottom:1px dotted #e1e7eb}.kv.big{font-size:14px;font-weight:700;border-bottom:2px solid var(--brand);padding-top:4px}.reco{background:#fff7e6;border:1px solid #f0d399;border-radius:4px;padding:5px 7px;margin:5px 0}.small{width:74px}.mid{width:120px}.wide{width:180px}.note{background:#fffdf5;border:1px solid #ece2c0;border-radius:5px;padding:8px 12px;font-size:12px;color:#6b5b2e;margin-bottom:12px}.breadcrumb{font-size:11px;color:var(--muted);margin-bottom:6px}.breadcrumb b{color:var(--brand-d)}a{color:inherit}.quote-sheet{max-width:760px;margin:0 auto;color:#222;background:#fff;padding:8px}.quote-sheet table.meta{border-collapse:separate;border-spacing:0 3px}.quote-sheet table.meta th{text-align:left;padding:4px 22px 4px 4px;color:#555;font-weight:400;white-space:nowrap;vertical-align:top}.quote-sheet table.meta td{padding:4px 8px;min-width:9em}.quote-sheet table.sheet td,.quote-sheet table.sheet th{border:1px solid #999;padding:6px 8px;font-size:13px}.quote-sheet table.sheet thead th{background:#f0f4f7}.quote-sheet .sheet-note{margin-top:16px;border:1px solid #999;border-radius:2px;box-sizing:border-box;width:100%}.quote-sheet .sheet-note-label{font-weight:700;font-size:12px;padding:3px 8px;border-bottom:1px solid #999;background:#f7f7f7}.quote-sheet .sheet-note-body{min-height:32mm;padding:6px 8px;white-space:pre-wrap;font-size:13px}@page{size:A4;margin-top:30mm;margin-left:22mm;margin-right:22mm;margin-bottom:22mm}@media print{.panel,.panel>.pb,.quote-sheet,body,html,main{background:#fff!important}.no-print,.note,.panel>.ph,.stepper,.wiznav,header.app{display:none!important}.panel,.panel>.pb{border:none;margin:0;padding:0}.quote-sheet{max-width:160mm;margin-inline:auto;padding:0}.quote-sheet .sheet-note,.quote-sheet table.sheet tr{page-break-inside:avoid;break-inside:avoid}}