:root{--teal:#1d4ed8;--teal-soft:#dbeafe;--ink:#1d2433;--muted:#57606a;--line:#d8dee6}
body{background:#f6f8fe}
main{max-width:760px}
.lead{font-size:1.02rem}
.badges{display:flex;flex-wrap:wrap;gap:6px;margin:.4rem 0 1rem}
.badge{display:inline-block;background:var(--teal-soft);color:#1e3a8a;border:1px solid #93c5fd;border-radius:999px;padding:1px 10px;font-size:.8rem;font-weight:600}
.badge.best{background:#fef08a;border-color:#facc15;color:#713f12;margin-left:4px}
.notice{background:#fff7ed;border:1px solid #fed7aa;border-radius:8px;padding:8px 12px;font-size:.9rem}
.card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px;margin:14px 0;box-shadow:0 1px 2px rgba(16,24,40,.04)}
.card h2{margin:0 0 10px;font-size:1.12rem}
.card label,.tool-card label{display:block;font-weight:600;margin-top:12px;font-size:.94rem}
.card label.inline{display:inline;margin:0;font-weight:500}
.card input[type=text],.card select,.tool-card input[type=text],.tool-card select{width:100%;min-height:46px;padding:9px 12px;font:inherit;border:1px solid #c6cfda;border-radius:9px;background:#fff;box-sizing:border-box}
.card input[type=checkbox]{width:20px;height:20px;vertical-align:-4px;accent-color:var(--teal)}
.card button.primary,.tool-card button{min-height:46px;padding:9px 16px;font:inherit;font-weight:700;border-radius:9px;border:1px solid var(--teal);background:var(--teal);color:#fff;margin-top:14px;cursor:pointer}
.card button:hover,.tool-card button:hover{filter:brightness(1.08)}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #f59e0b;outline-offset:2px}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 0}
.chip{min-height:40px;padding:4px 14px;border-radius:999px;border:1px solid #93c5fd;background:#eff6ff;color:#1e3a8a;font:inherit;font-weight:600;cursor:pointer}
.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.check-row{margin:10px 0 0}
.hint{font-weight:400;color:var(--muted);font-size:.83rem}
.small{font-size:.86rem;color:var(--muted)}
.error{color:#b91c1c;min-height:1.2em;margin:8px 0 0;font-size:.9rem}
.warn{background:#fff7ed;border:1px solid #fdba74;color:#7c2d12;border-radius:8px;padding:8px 12px;font-size:.9rem;margin:10px 0 0}
.summary{font-size:1.2rem;font-weight:800;margin:.2em 0 .8em;color:#111827}
#results td.price,#m-body td.total{font-weight:800;white-space:nowrap}
#results tr.blocked,#s-body tr.blocked,#m-body tr.blocked{background:#fef2f2}
#results tr.unknown,#s-body tr.unknown,#m-body tr.unknown{background:#f8fafc;color:#475569}
#results tr.ok .price{color:#0f5132}
#results tr.blocked .price,#results tr.unknown .price{color:#6b7280;font-weight:700}
#results .tag{display:inline-block;margin-left:6px;font-size:.72rem;color:#64748b;border:1px solid #cbd5e1;border-radius:4px;padding:0 5px;font-weight:500}
#results th{text-align:left}
#results .reason,#results .how{display:block;font-weight:400;font-size:.84rem;margin-top:3px}
#results .reason{color:#7c2d12}
#results tr.unknown .reason{color:#475569}
#results .how{color:var(--muted)}
#results td.price{vertical-align:top;text-align:right}
.tool-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px;margin:16px 0}
.tool-card h2{margin-top:0}
.tool-out{margin-top:14px}
.big{font-size:1.7rem;font-weight:800;overflow-wrap:anywhere}
.tool-err{color:#b91c1c;min-height:1.2em;margin:6px 0 0}
table{background:#fff}
thead th{background:#dbeafe}
.tool-card thead th,.tool-card tbody th{text-align:left}
@media(max-width:420px){
  .two{grid-template-columns:1fr}
  .card{padding:13px}
  #results .price{font-size:.95rem}
}

.tw #results{min-width:0;table-layout:auto}
#results th{overflow-wrap:anywhere}
#results td.price{white-space:nowrap;width:1%;padding-left:6px;padding-right:8px}

fieldset.week{border:1px solid var(--line);border-radius:10px;margin:14px 0 0;padding:8px 12px 12px}
fieldset.week legend{font-weight:600;font-size:.94rem;padding:0 6px}
.dayrow{display:grid;grid-template-columns:28px 1fr 1fr 1fr;gap:6px;align-items:center;margin-top:6px}
.dayrow .dn{font-weight:700;text-align:center}
.dayrow input{min-width:0;width:100%;min-height:44px;padding:6px 8px;font:inherit;border:1px solid #c6cfda;border-radius:8px;box-sizing:border-box}
.cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.rc{border:1px solid var(--line);border-radius:10px;padding:10px;background:#f8fafc}
.rc .rl{margin:0;font-weight:700;color:var(--muted);font-size:.85rem}
.rc .big{margin:.15em 0;font-size:1.35rem}
.holiday-note{background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;padding:8px 12px;font-size:.92rem}
.warns{padding-left:18px;color:#7c2d12;font-size:.88rem}
@media(max-width:560px){.cards3{grid-template-columns:1fr}}
