:root{
  --st-bg:#f5f6f8;
  --st-dark:#252A2E;
  --st-dark-2:#15191d;
  --st-card:#ffffff;
  --st-border:rgba(37,42,46,.10);
  --st-muted:rgba(37,42,46,.62);
  --st-soft:rgba(37,42,46,.05);
  --st-accent:#2d6cdf;
}
*{box-sizing:border-box}
body{
  min-height:100vh;
  background:
    radial-gradient(900px 560px at 8% -10%, rgba(45,108,223,.12), transparent 60%),
    radial-gradient(760px 520px at 92% 0%, rgba(37,42,46,.10), transparent 58%),
    var(--st-bg);
  color:var(--st-dark);
  font-feature-settings:"tnum";
}
.st-topbar{
  position:sticky;top:0;z-index:1030;
  background:linear-gradient(135deg,var(--st-dark-2),var(--st-dark));
  color:#fff;
  border-bottom:1px solid rgba(255,255,255,.08);
  box-shadow:0 12px 32px rgba(10,12,16,.18);
}
.st-brand{display:flex;align-items:center;gap:.75rem;color:#fff}
.st-brand:hover{color:#fff}
.st-brand small{color:rgba(255,255,255,.64);font-size:.76rem;letter-spacing:.04em;text-transform:uppercase}
.st-mark{
  width:40px;height:40px;border-radius:14px;background:#fff;color:var(--st-dark);
  display:inline-flex;align-items:center;justify-content:center;font-weight:900;letter-spacing:-.04em;
}
.st-nav .nav-link{color:rgba(255,255,255,.72);border-radius:14px;padding:.55rem .8rem}
.st-nav .nav-link:hover{color:#fff;background:rgba(255,255,255,.08)}
.st-nav .nav-link.active{color:#fff;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.13)}
.st-chip{display:inline-flex;align-items:center;gap:.45rem;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.08);color:rgba(255,255,255,.84);border-radius:999px;padding:.38rem .65rem;font-size:.88rem}
.st-content{padding-top:1.25rem;padding-bottom:1.25rem;max-width:1440px}
.st-card{background:var(--st-card);border:1px solid var(--st-border);border-radius:22px;box-shadow:0 16px 42px rgba(24,31,42,.07)}
.st-card-header{padding:1.1rem 1.25rem;border-bottom:1px solid var(--st-border);background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(255,255,255,.82));border-top-left-radius:22px;border-top-right-radius:22px}
.st-card-body{padding:1.25rem}
.st-page-title{font-weight:800;letter-spacing:-.03em}
.st-subtitle{color:var(--st-muted)}
.st-metric{padding:1.15rem;border-radius:20px;background:linear-gradient(180deg,#fff,rgba(255,255,255,.76));border:1px solid var(--st-border)}
.st-metric .value{font-size:1.9rem;font-weight:850;letter-spacing:-.04em}
.st-metric .label{color:var(--st-muted);font-size:.9rem}
.form-label{font-weight:650;color:rgba(37,42,46,.82)}
.form-control,.form-select{border-radius:14px;border-color:rgba(37,42,46,.14);padding:.7rem .85rem}
.form-control:focus,.form-select:focus{box-shadow:0 0 0 .25rem rgba(45,108,223,.12);border-color:rgba(45,108,223,.55)}
.btn{border-radius:14px;font-weight:650}
.btn-dark{background:var(--st-dark);border-color:var(--st-dark)}
.table{vertical-align:middle}
.table > :not(caption) > * > *{padding:.85rem .75rem}
.st-segment{position:relative;border:1px solid var(--st-border);border-radius:20px;padding:1rem;background:#fff}
.st-segment + .st-segment{margin-top:1rem}
.st-calc-box{position:sticky;top:92px}
.st-calc-value{font-size:1.65rem;font-weight:850;letter-spacing:-.04em}
.st-muted{color:var(--st-muted)}
.st-print-actions{position:sticky;top:0;z-index:100;background:#fff;border-bottom:1px solid #e5e7eb;padding:.75rem 0}
@media (max-width: 767px){
  .st-card-body{padding:1rem}
  .st-page-title{font-size:1.65rem}
  .st-calc-box{position:static}
}
@media print{
  body{background:#fff!important;color:#000!important}
  .no-print,.st-topbar,footer{display:none!important}
  .st-content{padding:0!important;max-width:none!important}
  .st-card{box-shadow:none!important;border:0!important;border-radius:0!important}
}
