:root{
  --bg:#f5f7fa;--card:#fff;--text:#172033;--muted:#687386;--border:#dfe4ec;
  --accent:#183b66;--accent2:#e9f0f8;--danger:#b42318;
}
*{box-sizing:border-box} body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.app{width:min(980px,calc(100% - 28px));margin:28px auto 50px}
header{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:22px}
.eyebrow{font-size:12px;font-weight:800;letter-spacing:.14em;color:var(--accent)}
h1{font-size:30px;line-height:1.1;margin:5px 0 4px} h2{margin:0 0 18px;font-size:20px} header p{margin:0;color:var(--muted)}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.card{background:var(--card);border:1px solid var(--border);border-radius:18px;padding:22px}
label,legend{display:block;font-size:14px;font-weight:700;margin-bottom:15px}
select,input{display:block;width:100%;margin-top:7px;border:1px solid var(--border);border-radius:11px;background:#fff;padding:13px 14px;font:inherit;color:var(--text)}
select:focus,input:focus{outline:3px solid var(--accent2);border-color:var(--accent)}
fieldset{border:0;padding:0;margin:0 0 5px}.choice{display:inline-flex;align-items:center;gap:8px;margin:0 12px 10px 0;font-weight:500}.choice input{width:auto;margin:0}
button{min-height:44px;border-radius:11px;padding:10px 15px;font:inherit;font-weight:700;cursor:pointer}
.primary{width:100%;border:0;background:var(--accent);color:#fff}.secondary{border:1px solid var(--border);background:#fff;color:var(--text)}
.result-card{display:flex;flex-direction:column}.muted{color:var(--muted);font-size:13px}.total{font-size:38px;font-weight:850;margin:8px 0 25px;word-break:break-word}
.details{border-top:1px solid var(--border);padding-top:17px}.details div{display:flex;justify-content:space-between;gap:15px;padding:7px 0}.details span{color:var(--muted)}.formula{margin-top:auto;background:var(--bg);border:1px solid var(--border);border-radius:12px;padding:13px;color:var(--muted);font-size:14px}
.error{min-height:20px;color:var(--danger);font-size:13px;margin-top:10px}.hidden{display:none}.admin{margin-top:18px}.admin-head{display:flex;justify-content:space-between;gap:15px;align-items:flex-start}.rate-form{display:grid;grid-template-columns:1.3fr .8fr .8fr auto;gap:9px;margin:18px 0 10px}.rate-form input{margin:0}.rate-form .primary{width:auto}
.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:620px}th,td{text-align:left;padding:12px;border-bottom:1px solid var(--border);font-size:14px}th{color:var(--muted)}
.message{min-height:20px;color:var(--muted);font-size:13px;margin-bottom:8px}footer{text-align:center;color:var(--muted);font-size:12px;margin-top:18px}
@media(max-width:720px){.grid{grid-template-columns:1fr}header{align-items:flex-start;flex-direction:column}header .secondary{width:100%}.rate-form{grid-template-columns:1fr}.rate-form .primary{width:100%}.admin-head{flex-direction:column}.admin-head button{width:100%}.total{font-size:32px}}
