@font-face {
  font-family: 'Nexa';
  src: url('roi-kalkulator-intern/fonts/Nexa-Light.ttf') format('truetype');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Nexa';
  src: url('roi-kalkulator-intern/fonts/Nexa-Bold.otf') format('opentype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Brutal';
  src: url('roi-kalkulator-intern/fonts/BrutalType.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

:root {
  --ha-smart:        #00A7E1;
  --ha-loyal:        #8BC753;
  --ha-gradient:     linear-gradient(90deg, #00A7E1 0%, #8BC753 100%);
  --ha-ink:          #262D35;
  --ha-ink-2:        #3A424D;
  --ha-ink-3:        #6B7380;
  --ha-line:         #D5D8DD;
  --ha-surface-3:    #F5F6F7;
  --ha-surface-2:    #F3F4F6;
  --ha-surface-1:    #FAFBFC;
  --ha-white:        #FFFFFF;
  --ok:              #5BAE3C;
  --warn:            #E8A33C;
  --warn-bg:         #FBEFD5;
  --danger:          #E24848;
  --info-bg:         #D6F0FB;
  --shadow-brand:    0 10px 28px rgba(0, 167, 225, .25);
}

* { box-sizing:border-box; }
body { margin:0; font-family:'Brutal',system-ui,sans-serif; font-weight:400; color:var(--ha-ink); background:var(--ha-surface-1); -webkit-font-smoothing:antialiased; }
a { color:var(--ha-smart); text-decoration:none; }
a:hover { color:#0089b8; }
input[type=number]::-webkit-outer-spin-button, input[type=number]::-webkit-inner-spin-button { -webkit-appearance:none; margin:0; }
input[type=number] { -moz-appearance:textfield; }
input:focus { border-color:var(--ha-smart) !important; }
input[type=range]{ -webkit-appearance:none; appearance:none; height:4px; border-radius:999px; background:#E6E8EB; outline:none; }
input[type=range]::-webkit-slider-thumb{ -webkit-appearance:none; width:18px; height:18px; border-radius:50%; background:#fff; border:3px solid var(--ha-smart); cursor:pointer; box-shadow:0 1px 3px rgba(38,45,53,.2); }
input[type=range]::-moz-range-thumb{ width:16px; height:16px; border-radius:50%; background:#fff; border:3px solid var(--ha-smart); cursor:pointer; }
.print-only{ display:none; }

.input-style {
  width:100%; border:1px solid var(--ha-line); border-radius:10px; padding:11px 13px; font-family:Brutal,sans-serif; font-size:15px; color:var(--ha-ink); background:#fff; outline:none; transition:border-color .14s;
}
.input-style.error { border-color:var(--warn); background:var(--warn-bg); }

.branch-btn {
  display:flex; flex-direction:column; align-items:center; gap:7px; padding:11px 6px; border:1px solid var(--ha-line); background:#fff; border-radius:14px; color:var(--ha-ink-3); cursor:pointer; font-family:Brutal,sans-serif; transition:all .18s cubic-bezier(.22,1,.36,1);
}
.branch-btn.active {
  border:1.5px solid var(--ha-smart); background:var(--info-bg); color:var(--ha-ink);
}

.seg-btn {
  flex:1; border:1px solid var(--ha-line); background:#fff; border-radius:10px; padding:10px 6px; font-family:Brutal,sans-serif; font-size:13px; font-weight:600; color:var(--ha-ink-3); cursor:pointer; transition:all .18s cubic-bezier(.22,1,.36,1);
}
.seg-btn.active {
  border:1.5px solid var(--ha-smart); background:var(--info-bg); font-weight:700; color:var(--ha-ink);
}

@media (max-width:1080px){
  .layout-grid{ grid-template-columns:1fr !important; }
  .inputs-panel{ position:static !important; }
}
@media (max-width:760px){
  .kpi-row{ grid-template-columns:1fr !important; }
  .scenario-grid{ grid-template-columns:1fr !important; }
  .breakdown-grid{ grid-template-columns:1fr !important; }
  .costcards-grid{ grid-template-columns:repeat(2,1fr) !important; }
}
@media (max-width:480px){
  .costcards-grid{ grid-template-columns:1fr !important; }
  .branch-grid{ grid-template-columns:repeat(2,1fr) !important; }
}
@media print {
  * { -webkit-print-color-adjust: exact !important; print-color-adjust: exact !important; }
  .no-print{ display:none !important; }
  body{ background:#fff; }
  .layout-grid{ grid-template-columns:1fr !important; gap:14px !important; }
  .inputs-panel{ display:none !important; }
  .print-only{ display:block !important; }
  .kpi-row{ grid-template-columns:1.4fr 1fr 1fr !important; }
  .breakdown-grid{ grid-template-columns:1fr 1fr !important; }
  main > div, .breakdown-grid > div, .kpi-row > div{ box-shadow:none !important; break-inside:avoid; }
  @page{ margin:14mm; }
}
