/* =========================================================
   AdamY Avg Cost Calculator (C44 - FULL FILE)
   Path: /wp-content/uploads/allinipo/assets/css/adamy-avgcalc.css
   Scope: .adamy-avgcalc only

   Fixes in C44:
   - Placeholder "sticking to border" fixed:
     previous .row > * { padding:0 } removed; no longer wipes input padding
   - Bootstrap .row negative margins/gutters neutralized safely
   - Buttons: no forced full-width long bars
   - HR: remove theme decorative double-line/diamond
   - Keep style aligned to aii-opcost: title 24px #82BCF4, input r=8, card r=10, btn r=3 15px 400
   ========================================================= */

   .adamy-avgcalc{
    --adamy-title-gap: 12px;
    --ac-primary: var(--ds_primary_color, var(--bs-primary, #0d6efd));
    --ac-primary-hover: var(--ds_primary_hover_color, #0b5ed7);
  
    --ac-text: var(--bs-body-color, #333);
    --ac-bg: var(--bs-body-bg, #fff);
    --ac-border: var(--bs-border-color, #e5e7eb);
    --ac-muted: var(--bs-secondary-color, #6c757d);
    --ac-surface: var(--bs-tertiary-bg, #f8f9fa);
  
    --ac-title: #82BCF4;
  
    width: 100%;
    margin: 0 auto;
    font-family: inherit;
    color: var(--ac-text);
  }
  
  .adamy-avgcalc *,
  .adamy-avgcalc *::before,
  .adamy-avgcalc *::after{
    box-sizing: border-box;
  }
  
    /* Top H1 titlebar (no divider) */
  .adamy-avgcalc .adamy-titlebar{
    margin: 0 0 var(--adamy-title-gap);
    width: 100%;
  }

  .adamy-avgcalc .adamy-title{
    margin: 0;
    color: var(--ac-primary);
    font-weight: 900;
    letter-spacing: .2px;
    font-size: clamp(20px, 0.8vw + 16px, 24px);
  }

  /* "How to use" link next to H1 (match other calculators) */
  .adamy-avgcalc .adamy-howto{
    font-size: 14px;
    font-weight: 500;
    color: rgba(var(--bs-body-color-rgb, 33,37,41), .65);
    text-decoration: none;
    white-space: nowrap;
  }
  .adamy-avgcalc .adamy-howto:hover{
    color: var(--ds_primary_color, var(--bs-primary, #0d6efd));
    text-decoration: underline;
  }
  html.dark .adamy-avgcalc .adamy-howto,
  html[data-bs-theme="dark"] .adamy-avgcalc .adamy-howto{
    color: rgba(222,226,230,.72);
  }

/* Title */
  .adamy-avgcalc h2{
    margin: 0 0 var(--adamy-title-gap) !important;
    font-size: clamp(17px, 0.5vw + 14px, 20px);
    font-weight: 700;
    color: var(--ac-primary);
    letter-spacing: 0.2px;
  }
  /* If the H2 carries Bootstrap spacing utilities, override them for consistent rhythm */
  .adamy-avgcalc h2.mt-1,
  .adamy-avgcalc h2.mt-2,
  .adamy-avgcalc h2.mt-3,
  .adamy-avgcalc h2.mt-4,
  .adamy-avgcalc h2.mt-5{
    margin-top: 0 !important;
  }
  /* After the first grid section, add a small, controlled gap before the next H2 */
  .adamy-avgcalc #gridA + h2{
    margin-top: var(--adamy-title-gap) !important;
  }
/* Cards */
  .adamy-avgcalc .card{
    border: 1px solid var(--ac-border);
    border-radius: 10px; /* 16 -> 10 */
    background: var(--ac-surface);
    padding: 14px;
    box-shadow: none;
  }
  
  /* Layout grids */
  .adamy-avgcalc #gridA,
  .adamy-avgcalc #gridB3{
    display: grid;
    grid-template-columns: 1fr;
    gap: 16px;
  }
  
  @media (min-width: 992px){
    .adamy-avgcalc #gridA,
    .adamy-avgcalc #gridB3{
      grid-template-columns: repeat(3, 1fr);
      align-items: stretch;
    }
  
    /* make bottom button stick to bottom in the add/backsolve cards */
    .adamy-avgcalc #gridB3 .card{
      display: flex;
      flex-direction: column;
      height: 100%;
    }
    .adamy-avgcalc .push-bottom{
      margin-top: auto;
    }
  }
  
  /* =========================================================
     Rows: stack label above control (prevents tiny inputs)
     - also neutralize Bootstrap .row negative margins/gutters
     IMPORTANT: do NOT wipe padding of inputs here.
     ========================================================= */
  .adamy-avgcalc .row{
    margin: 0 0 10px !important;
    padding: 0 !important;
  
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 6px;
    align-items: start;
  
    /* kill bootstrap gutters/negative margin effects inside the component */
    --bs-gutter-x: 0;
    --bs-gutter-y: 0;
  }
  
  /* Only reset wrappers/labels; do NOT touch input/select padding */
  .adamy-avgcalc .row > label{
    margin: 0 !important;
    padding: 0 !important;
    min-width: 0;
  }
  
  .adamy-avgcalc .row > .grid-1-120{
    margin: 0 !important;
    padding: 0 !important;
    min-width: 0;
  }
  
  /* For direct inputs/selects: keep padding; only reset margin/min-width */
  .adamy-avgcalc .row > input,
  .adamy-avgcalc .row > select{
    margin: 0 !important;
    min-width: 0;
    /* Safety: if any theme rule wipes padding, force it back */
    padding: 10px 12px !important;
  }
  
  /* Labels */
  .adamy-avgcalc label{
    font-weight: 600;
    line-height: 1.2;
    color: rgba(var(--bs-body-color-rgb, 33,37,41), .80);
  }
  
  /* Inputs/selects (12 -> 8) */
  .adamy-avgcalc input,
  .adamy-avgcalc select{
    width: 100%;
    min-height: 44px;
    padding: 10px 12px;
    border-radius: 8px; /* 12 -> 8 */
    border: 1px solid var(--ac-border);
    background: var(--ac-surface);
    color: var(--ac-text);
    outline: none;
    min-width: 0;
  }
  
  .adamy-avgcalc input::placeholder{
    color: rgba(108,117,125,.75);
    opacity: 1;
    font-weight: 400;
  }
  
  .adamy-avgcalc input:focus,
  .adamy-avgcalc select:focus{
    border-color: var(--ac-primary);
    box-shadow: 0 0 0 .2rem rgba(var(--bs-primary-rgb, 13,110,253), 0.18);
  }
  
  /* Input + currency select */
  .adamy-avgcalc .grid-1-120{
    display: grid;
    grid-template-columns: 1fr 120px;
    gap: 12px;
    align-items: center;
  }
  
  .adamy-avgcalc .grid-1-120 > *{
    min-width: 0;
  }
  
  /* KPI lines */
  .adamy-avgcalc .kline{
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    padding: 8px 0;
  }
  
  .adamy-avgcalc .kline + .kline{
    border-top: 1px dashed var(--ac-border);
  }
  
  .adamy-avgcalc .kline span{
    color: var(--ac-muted);
  }
  
  .adamy-avgcalc .kline strong{
    font-weight: 700;
    color: rgba(var(--bs-body-color-rgb, 33,37,41), .88);
  }
  
  .adamy-avgcalc .unit{
    margin-left: 6px;
    font-weight: 600;
    color: inherit;
  }
  
  /* Backsolve output (plain text) */
  .adamy-avgcalc #adBacksolveOut{
    color: var(--ac-text);
    line-height: 1.6;
    white-space: normal;
    word-break: break-word;
    overflow-wrap: anywhere;
  }
  
  /* =========================================================
     HR: remove theme decorative double-line/diamond
     Keep a clean single divider
     ========================================================= */
  .adamy-avgcalc hr{
    border: 0 !important;
    height: 0 !important;
    background: none !important;
    margin: 8px 0 !important;
    border-top: 1px solid var(--ac-border) !important;
  }
  
  
  /* Buttons: align with other calculators (compact, not full-width) */
  .adamy-avgcalc .btn{
    border-radius: 3px !important;
    font-size: 15px;
    font-weight: 400;
    padding: 10px 14px;
    line-height: 1.2;
  }
.adamy-avgcalc hr::before,
  .adamy-avgcalc hr::after{
    content: none !important;
    display: none !important;
  }
  
  /* Responsive tweaks */
  @media (max-width: 680px){
    .adamy-avgcalc #gridA,
    .adamy-avgcalc #gridB3{
      gap: 12px;
    }
  }
  
  /* Dark mode compatibility */
  html.dark .adamy-avgcalc,
  html[data-bs-theme="dark"] .adamy-avgcalc{
    --ac-bg: var(--bs-body-bg, #212529);
    --ac-text: var(--bs-body-color, #dee2e6);
    --ac-border: var(--bs-border-color, rgba(255,255,255,.15));
    --ac-muted: var(--bs-secondary-color, rgba(222,226,230,.75));
    --ac-surface: var(--bs-secondary-bg, #343a40);
  }
  
  html.dark .adamy-avgcalc label,
  html[data-bs-theme="dark"] .adamy-avgcalc label{
    color: rgba(222,226,230,.85);
  }
  
  html.dark .adamy-avgcalc input::placeholder,
  html[data-bs-theme="dark"] .adamy-avgcalc input::placeholder{
    color: rgba(222,226,230,.55);
  }
  