/* Shared utility additions for inner pages (kept small and optional). */
.page-hero{
  padding:22px 0 0;
}
.breadcrumbs{
  display:flex;gap:8px;align-items:center;flex-wrap:wrap;
  font-weight:650;color:var(--muted);
}
.breadcrumbs a{color:var(--brand);font-weight:750}
.page-grid{
  display:grid;grid-template-columns:1.2fr .8fr;gap:16px;align-items:start;
}
.page-grid--single{grid-template-columns:1fr}
.content-card{
  background:#fff;border:1px solid var(--line);border-radius:var(--radius2);
  box-shadow:var(--shadow);padding:16px;
}
.content-card h2{margin-top:0}
.aside-card{
  background:#fff;border:1px solid var(--line);border-radius:var(--radius2);
  box-shadow:var(--shadow);padding:16px;
}
.badge{
  display:inline-flex;align-items:center;gap:8px;
  padding:8px 10px;border-radius:999px;border:1px solid var(--line);background:#fff;
  color:var(--muted);font-weight:750
}
.field{
  display:grid;gap:6px;margin:12px 0;
}
.field label{font-weight:750}
.field input{
  border:1px solid var(--line);border-radius:14px;padding:12px 12px;
  font-size:16px;background:#fff;
}
.result{
  margin-top:10px;padding:12px;border-radius:16px;border:1px dashed rgba(11,74,122,.35);
  background:rgba(214,240,255,.35);
}
.disclosure{
  margin-top:12px;
  border:1px solid var(--line);
  border-radius:16px;
  background:#fff;
  overflow:hidden;
}
.disclosure summary{
  list-style:none;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:12px 12px;
  cursor:pointer;
  user-select:none;
  font-weight:800;
}
.disclosure summary::-webkit-details-marker{display:none}
.plus{
  width:28px;height:28px;border-radius:10px;
  border:1px solid var(--line);
  background:linear-gradient(180deg, rgba(246,249,252,.9), #fff);
  display:grid;place-items:center;
  color:var(--brand);
  flex:0 0 auto;
}
.plus:before{
  content:"+";
  font-size:18px;
  line-height:1;
  font-weight:900;
}
.disclosure[open] .plus:before{content:"–"}
.disclosure .inner{padding:12px;border-top:1px solid var(--line)}
.table-wrap{overflow:auto;border-radius:14px;border:1px solid var(--line)}
table{border-collapse:collapse;width:100%;min-width:540px;background:#fff}
th,td{padding:10px 10px;border-bottom:1px solid var(--line);text-align:right;white-space:nowrap}
th{text-align:right;background:rgba(246,249,252,.8);font-size:13px}
td:first-child, th:first-child{text-align:left}
.row-hi{
  background:rgba(214,240,255,.45);
}
.row-hi td{font-weight:800}
.table-note{margin:10px 0 0;color:var(--muted);font-size:13px}
.calc-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:14px}
.calc{
  grid-column:span 12;
  background:#fff;border:1px solid var(--line);border-radius:var(--radius2);
  box-shadow:var(--shadow);padding:16px
}
.calc h2{margin-top:0}
.calc .row{display:grid;grid-template-columns:repeat(12,1fr);gap:10px}
.calc .row .field{grid-column:span 6;margin:0}
.calc .row .field.full{grid-column:span 12}
@media (max-width: 720px){
  .calc .row .field{grid-column:span 12}
}
.tiny{font-size:13px}
.callout{
  background:linear-gradient(180deg, rgba(214,240,255,.55), rgba(246,249,252,.7));
  border:1px solid rgba(230,237,245,.95);
  border-radius:var(--radius2);
  padding:16px;
}
.callout p{margin:6px 0 0;color:var(--muted)}
@media (max-width: 980px){
  .page-grid{grid-template-columns:1fr}
}
