*{box-sizing:border-box}
body{margin:0;font-family:"Hiragino Sans","Yu Gothic UI","Yu Gothic","Meiryo",sans-serif;color:#1c2430;background:#f6f7f9}
body.embed{background:transparent}
.top{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 20px;background:#fff;border-bottom:1px solid #e3e6ea}
.stg{font-size:12px;background:#fff3cd;color:#7a5b00;padding:2px 8px;border-radius:10px}
button{font:inherit;padding:8px 14px;border-radius:8px;border:1px solid #1273d3;background:#1273d3;color:#fff;cursor:pointer}
button.ghost{background:#fff;color:#1c2430;border-color:#cfd5dc}
.actions{display:flex;gap:8px;flex-wrap:wrap}
.wrap{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:20px;padding:20px;max-width:1400px;margin:0 auto}
@media (max-width:960px){.wrap{grid-template-columns:1fr}}
.panel{background:#fff;border:1px solid #e3e6ea;border-radius:12px;padding:12px 16px;align-self:start}
.tabs{display:flex;gap:4px;border-bottom:1px solid #e3e6ea;margin-bottom:12px;flex-wrap:wrap}
.tabs button{background:none;border:none;color:#5b6572;border-bottom:2px solid transparent;border-radius:0;padding:8px 8px}
.tabs button.on{color:#1c2430;border-bottom-color:#1c2430;font-weight:bold}
.fine{font-size:12px;color:#6b7480;margin:10px 4px}
.grp{border:1px solid #eceff2;border-radius:10px;padding:8px 10px;margin-bottom:8px}
.grp h4{margin:0 0 6px;font-size:14px;display:flex;justify-content:space-between;gap:6px}
.tag{font-size:11px;padding:1px 6px;border-radius:8px;background:#e8f1fb;color:#1273d3;font-weight:normal;white-space:nowrap}
.tag.link{background:#fdecea;color:#b3261e}.tag.note,.tag.phone,.tag.sign{background:#fff3cd;color:#7a5b00}
.tl{display:grid;grid-template-columns:auto 1fr 90px;gap:6px;align-items:center;font-size:13px;margin:3px 0}
.tl input[type=number]{width:90px;padding:4px;border:1px solid #cfd5dc;border-radius:6px;text-align:right}
.tl small{display:block;color:#6b7480;font-size:11px}
label.f{display:block;font-size:13px;margin:10px 0 4px;color:#3c4550}
input[type=text],select,textarea{width:100%;padding:7px;border:1px solid #cfd5dc;border-radius:8px;font:inherit}
.colors{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.colors input[type=color]{width:100%;height:34px;border:1px solid #cfd5dc;border-radius:8px;padding:2px;background:#fff}
.preset{display:block;width:100%;text-align:left;background:#fff;color:#1c2430;border:1px solid #cfd5dc;margin:6px 0}
.preset.on{border-color:#1c2430;background:#eef1f4}
.srcTbl{width:100%;border-collapse:collapse;font-size:12px}
.srcTbl td,.srcTbl th{border-bottom:1px solid #eceff2;padding:5px 4px;vertical-align:top;text-align:left}
.srcTbl a{color:#1273d3;word-break:break-all}
dialog{border:none;border-radius:12px;max-width:640px;width:92%}
.dlgbtns{display:flex;gap:8px;justify-content:flex-end;margin-top:10px}
.addrow{display:grid;grid-template-columns:1fr 1fr 90px auto;gap:6px;margin-top:6px}
.addrow input{padding:5px;border:1px solid #cfd5dc;border-radius:6px;font:inherit;min-width:0}
/* 比較図 */
.ch{border-radius:18px;padding:22px;font-family:var(--font)}
.ch.minimal{border-radius:0;padding:8px 0}
.ch h2{margin:0 0 14px;font-size:22px}
.ch .hd,.ch .row{display:grid;grid-template-columns:1.2fr 1.6fr 0.8fr 0.9fr;align-items:center;gap:10px}
.ch .hd{font-weight:bold;font-size:15px;padding:0 16px 8px}
.ch .row{border-radius:12px;padding:12px 16px;margin-bottom:8px;font-size:14px}
.ch.minimal .row{border-radius:0;margin:0;border-bottom:1px solid var(--line)}
.ch .cat{font-weight:bold}
.ch .names span{display:inline-block;padding:3px 10px;border-radius:14px;margin:2px 4px 2px 0;font-size:13px;border:1px solid var(--line)}
.ch.minimal .names span{border:none;padding:0 8px 0 0}
.ch .yen{text-align:right;font-weight:bold;font-variant-numeric:tabular-nums}
.ch .badge{justify-self:end;color:#fff;padding:6px 12px;border-radius:16px;font-size:13px;font-weight:bold;white-space:nowrap}
.ch .badge.link{opacity:.72}
.ch .tot{display:grid;grid-template-columns:1.2fr 1.6fr 0.8fr 0.9fr;gap:10px;align-items:center;color:#fff;border-radius:12px;padding:14px 16px;margin-top:6px;font-weight:bold}
.ch .tot .yen{font-size:18px}
.ch .save{margin-top:12px;text-align:center;font-size:20px;font-weight:bold}
.ch .save b{font-size:28px}
.ch .foot{margin-top:8px;font-size:11px;opacity:.75}
@media (max-width:640px){.ch .hd{display:none}
.ch .row{grid-template-columns:1fr auto;grid-template-areas:"cat yen" "names badge"}
.ch .row .cat{grid-area:cat}.ch .row .yen{grid-area:yen}.ch .row .names{grid-area:names}.ch .row .badge{grid-area:badge}
.ch .tot{grid-template-columns:1fr 1fr;grid-template-areas:"lb lb" "a b"}
.ch .tot>div:nth-child(1){grid-area:lb}.ch .tot>div:nth-child(2){display:none}.ch .tot>div:nth-child(3){grid-area:a;text-align:left}.ch .tot>div:nth-child(4){grid-area:b}}
