/* ===== Base ===== */
*{box-sizing:border-box}
:root{
  --bg:#f5f8ff;
  --card:#ffffff;
  --text:#111;
  --muted:#556;
  --brand:#0A5CC8;
  --brand-weak:#e8f1ff;
  --shadow:0 8px 24px rgba(0,0,0,.06);
  --radius:14px
}
html,body{margin:0;padding:0}
body{
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  line-height:1.55;
  color:var(--text);
  background:var(--bg)
}
.container{max-width:980px;margin:16px auto;padding:0 16px}

/* ===== Card ===== */
.card{
  background:var(--card);
  border:1px solid #e6eefb;
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  padding:22px 22px 26px
}
.lead{color:#333;margin-top:6px}

/* ===== Nav (Centered & Equal) ===== */
.site-header{
  position:sticky;top:0;z-index:1000;
  background:var(--brand);
  box-shadow:0 2px 10px rgba(0,0,0,.06)
}
.nav .menu{
  max-width:980px;margin:0 auto;
  padding:14px 16px;
  display:flex;justify-content:space-evenly;align-items:center;gap:0
}
.nav a{
  color:#fff;text-decoration:none;font-weight:600;line-height:1;
  padding:10px 14px;border-radius:8px;transition:background .2s ease,transform .1s ease
}
.nav a:hover{background:rgba(255,255,255,.12);transform:translateY(-1px)}

/* ===== Form & Layout ===== */
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.sm-grid-1{grid-template-columns:1fr}
.full{grid-column:1 / -1}
.inline{display:flex;gap:8px}

label{display:block;font-weight:600;margin:6px 0 4px}
label input,label select,textarea{
  width:100%;padding:12px;border:1px solid #dfe6f6;border-radius:10px;background:#f7faff;
  font:inherit
}
textarea{resize:vertical;min-height:140px}

.btn{
  display:inline-block;border:0;border-radius:10px;padding:12px 18px;cursor:pointer;
  color:#fff;background:var(--brand);transition:.2s
}
.btn:hover{transform:translateY(-1px);box-shadow:0 8px 16px rgba(10,92,200,.18)}

.note{color:#6b7280;margin-top:10px}

.result{margin-top:18px}
.result.hide,.hide{display:none}

.kpi{
  background:var(--brand-weak);
  border:1px solid #e0eaff;border-radius:12px;padding:14px 12px
}
.kpi span{color:#334155;font-size:12px}
.kpi strong{display:block;font-size:20px;margin-top:4px}

.panel{
  border:1px solid #e6eefb;border-radius:12px;padding:12px;background:#fff
}

/* ===== Footer ===== */
.footer{margin:24px 0 32px}
.footer-inner{max-width:980px;margin:0 auto;padding:0 16px}
.footer a{color:var(--brand);text-decoration:none}
.footer a:hover{text-decoration:underline}

/* ===== Responsive ===== */
@media (max-width: 820px){
  .grid-2{grid-template-columns:1fr}
}
@media (max-width: 640px){
  .container{margin-top:12px}
  .nav .menu{max-width:560px;padding:12px 10px}
  .nav a{flex:1;text-align:center;padding:12px 8px}
}