/* Base */
body{font-family:"Segoe UI",sans-serif;background:#f5f8fa;color:#222;margin:0}
header{background:#004aad;color:#fff;padding:36px 0;text-align:center}
header h1{font-size:1.6rem;margin-bottom:6px}
header p{opacity:.95;font-size:0.95rem}
.container{max-width:920px;margin:18px auto;padding:0 16px}
.card{background:#fff;border-radius:10px;padding:18px;box-shadow:0 8px 22px rgba(0,0,0,.06);margin-bottom:16px}
label{font-weight:600;margin-top:10px;display:block}
input[type=number], input[type=text], select{width:100%;padding:10px;margin-top:6px;border-radius:6px;border:1px solid #d6dce9}
.row{display:flex;gap:10px;margin-top:10px}
.primary-btn{background:#004aad;color:#fff;border:none;padding:10px 14px;border-radius:8px;cursor:pointer}
.primary-btn.small{padding:8px 10px}
.secondary-btn{background:#e9f0ff;border:1px solid #cfe0fb;color:#003a8c;padding:10px 12px;border-radius:8px;cursor:pointer}
.mini-btn{background:#f6f8fb;border:1px solid #e0e6f0;color:#333;padding:8px 10px;border-radius:8px;cursor:pointer;margin-right:6px}
.small-help{font-size:0.9rem;color:#555;margin-top:6px}
.result{margin-top:14px;padding:14px;background:#eef6ff;border-left:5px solid #004aad;border-radius:6px}
.result p{margin:6px 0}
.result .total{font-size:1.1rem;color:#003a8c;font-weight:700}
.muted{color:#666;font-size:0.95rem}
.debug{margin-top:12px;padding:8px;background:#fff6e6;border-left:4px solid #ffb703;border-radius:6px;color:#333;font-size:0.95rem}

/* slab rows in slabRateBlock */
.slab-row{display:flex;gap:12px;align-items:center;margin-top:8px}
.slab-row label{flex:1;min-width:150px}
.slab-row input{flex:1;max-width:160px}

/* modal */
.modal{position:fixed;inset:0;background:rgba(0,0,0,0.45);display:flex;align-items:center;justify-content:center;z-index:200}
.modal-content{background:#fff;padding:18px;border-radius:8px;max-width:520px;width:90%;box-shadow:0 12px 36px rgba(0,0,0,0.25)}
.modal-content h4{margin-top:0}
