:root{
    --red:#b91c1c; --red-dark:#7f1d1d; --black:#111827; --silver:#e5e7eb;
    --gray:#6b7280; --light:#f8fafc; --white:#ffffff; --green:#166534;
    --blue:#1d4ed8; --amber:#92400e; --shadow:0 10px 30px rgba(15,23,42,.10);
  }
  *{box-sizing:border-box}
  body{margin:0;background:#eef1f5;color:var(--black);font-family:Inter,Segoe UI,Arial,sans-serif}
  .app{max-width:1500px;margin:auto;padding:20px}
  .topbar{
    background:linear-gradient(135deg,#111827 0%,#374151 55%,#d1d5db 100%);
    color:white;border-radius:18px;padding:24px 28px;box-shadow:var(--shadow);
    display:flex;justify-content:space-between;gap:24px;align-items:center
  }
  .brand h1{margin:0;font-size:clamp(24px,3vw,40px);letter-spacing:-.02em}
  .brand p{margin:8px 0 0;color:#d1d5db}
  .actions{display:flex;gap:10px;flex-wrap:wrap}
  button,.button{
    border:0;border-radius:10px;padding:11px 15px;font-weight:700;cursor:pointer;
    background:white;color:#111827;box-shadow:0 2px 8px rgba(0,0,0,.12)
  }
  button.primary{background:var(--red);color:white}
  button.secondary{background:#374151;color:white}
  .tabs{display:flex;gap:8px;margin:18px 0;flex-wrap:wrap}
  .tab{background:white;color:#374151;border:1px solid #d1d5db}
  .tab.active{background:var(--black);color:white;border-color:var(--black)}
  .panel{display:none}.panel.active{display:block}
  .grid{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}
  .card{
    background:white;border-radius:16px;padding:18px;box-shadow:var(--shadow);
    border:1px solid #e5e7eb
  }
  .card h2,.card h3{margin:0 0 14px}
  .card h2{font-size:20px}.card h3{font-size:16px;color:#374151}
  .span-4{grid-column:span 4}.span-5{grid-column:span 5}.span-6{grid-column:span 6}
  .span-7{grid-column:span 7}.span-8{grid-column:span 8}.span-12{grid-column:span 12}
  .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .field{display:flex;flex-direction:column;gap:6px}
  label{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:#4b5563}
  input,select{
    width:100%;padding:11px 12px;border:1px solid #cbd5e1;border-radius:9px;
    font-size:15px;background:white;color:#111827
  }
  input.editable,select.editable{border:2px solid #93c5fd;background:#eff6ff}
  input:focus,select:focus{outline:3px solid rgba(29,78,216,.15);border-color:#2563eb}
  .hint{font-size:12px;color:#6b7280;line-height:1.45}
  .segmented{display:grid;grid-template-columns:1fr 1fr;gap:6px;background:#f3f4f6;padding:5px;border-radius:10px}
  .segmented button{box-shadow:none;background:transparent}
  .segmented button.active{background:white;color:var(--red);box-shadow:0 1px 4px rgba(0,0,0,.12)}
  .kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
  .kpi{padding:16px;border-radius:14px;background:#f8fafc;border:1px solid #e5e7eb}
  .kpi .label{font-size:12px;text-transform:uppercase;color:#6b7280;font-weight:800}
  .kpi .value{font-size:clamp(22px,2.6vw,34px);font-weight:900;margin-top:5px}
  .kpi.green{background:#f0fdf4;border-color:#bbf7d0}.kpi.red{background:#fef2f2;border-color:#fecaca}
  .kpi.blue{background:#eff6ff;border-color:#bfdbfe}.kpi.amber{background:#fffbeb;border-color:#fde68a}
  .summary-table{width:100%;border-collapse:collapse}
  .summary-table td{padding:9px 4px;border-bottom:1px solid #e5e7eb}
  .summary-table td:last-child{text-align:right;font-weight:800}
  .total-row td{font-size:17px;border-top:2px solid #111827;border-bottom:0;padding-top:13px}
  .status{
    padding:12px 14px;border-radius:10px;font-weight:700;margin-top:12px;line-height:1.4
  }
  .status.good{background:#dcfce7;color:#166534}.status.warn{background:#fef3c7;color:#92400e}
  .status.bad{background:#fee2e2;color:#991b1b}
  .preset-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
  .preset-row button{background:#f3f4f6;box-shadow:none;border:1px solid #d1d5db}
  .bar-wrap{margin-top:16px}
  .bar-label{display:flex;justify-content:space-between;font-size:13px;font-weight:700;margin-bottom:5px}
  .bar{height:14px;border-radius:8px;background:#e5e7eb;overflow:hidden}
  .bar > div{height:100%;background:linear-gradient(90deg,#b91c1c,#ef4444);width:0%;transition:width .25s}
  .scenario-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
  .scenario{border:1px solid #d1d5db;border-radius:14px;padding:15px;background:#fff}
  .scenario h3{margin-bottom:10px;color:#111827}
  .scenario .big{font-size:26px;font-weight:900;color:#b91c1c}
  .small-row{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px solid #eee;font-size:14px}
  .note{background:#fff7ed;border-left:5px solid #f59e0b;padding:13px 14px;border-radius:8px;color:#7c2d12}
  .footer{color:#6b7280;font-size:12px;margin:18px 2px}
  .print-only{display:none}
  @media(max-width:1000px){
    .span-4,.span-5,.span-6,.span-7,.span-8{grid-column:span 12}
    .kpis{grid-template-columns:repeat(2,1fr)}
    .scenario-grid{grid-template-columns:1fr}
  }
  @media(max-width:600px){
    .app{padding:10px}.topbar{padding:18px;align-items:flex-start;flex-direction:column}
    .form-grid,.kpis{grid-template-columns:1fr}
  }
  @media print{
    body{background:white}.app{max-width:none;padding:0}.actions,.tabs,.preset-row,.no-print{display:none!important}
    .panel{display:block!important}.card,.topbar{box-shadow:none;border:1px solid #bbb;break-inside:avoid}
    .topbar{border-radius:0}.grid{gap:10px}.print-only{display:block}
  }
