/* Modern background; oldschool UI controls */
  :root { --primary:#5fc2ff; --border:#9edbff; --ink:#0b2a3b; }
  body { background: radial-gradient(circle at 10% 10%, #eef9ff 0%, #ffffff 40%, #f8fbff 100%); font-family: Tahoma, Verdana, 'Comic Sans MS', sans-serif; color:var(--ink); }
  .wrap { max-width: 980px; margin: 20px auto; background:#fff; border:3px ridge var(--border); box-shadow: 0 0 25px rgba(0,0,0,0.10); }
  header { background: linear-gradient(180deg, #cfeeff, var(--primary)); color:#042433; padding: 14px; text-align:center; border-bottom: 4px groove #c9eeff; position: relative; }
  header h1 { margin:0; font-size: 38px; text-shadow: 1px 1px 0 #fff; letter-spacing: 0.5px; }
  header small { display:block; font-size:14px; }
  marquee { font-weight:bold; background:#e8f8ff; padding:6px; border-top:2px solid #c9eeff; border-bottom:2px solid #c9eeff; }
  .content { padding: 18px; }
  .panel { border:3px groove #a8dfff; background:#f8fdff; padding:12px; margin:14px 0; }
  .calc-table { width:100%; border-collapse: collapse; }
  .calc-table td { padding:8px; border-bottom:1px dotted #a8dfff; }
  .calc-table td.label { width:42%; font-weight:bold; }
  .btn { background: linear-gradient(#ffffff, #d9f1ff); border:3px outset var(--border); padding:8px 14px; font-weight:bold; cursor:pointer; }
  .btn:active { border:3px inset var(--border); }
  input, select { padding:6px; border:2px inset var(--border); background:#fff; }
  .results { font-size:18px; }
  .results strong { font-size: 22px; }
  .grid { display:grid; grid-template-columns: repeat(auto-fit,minmax(250px,1fr)); gap:12px; }
  .ad, .affiliate { text-align:center; padding:10px; border:2px dashed #ffd166; background:#fff8e6; }
  footer { text-align:center; font-size:12px; color:#335; padding:16px; }
  .tiny { font-size:11px; color:#566; }
  .counter { font-size:12px; color:#477; }
  .share a { text-decoration:none; }
  .blink { animation: blink 1s step-end infinite; }
  @keyframes blink { 50% { opacity: 0; } }
  .cookie { position:fixed; left:10px; right:10px; bottom:10px; background:#003049; color:#fff; padding:10px; border:3px ridge var(--border); display:none; }
  .cookie button { margin-left:8px; }
  .faq dt { font-weight:bold; }
  .faq dd { margin:0 0 12px 0; }
  .logo { max-width:100%; height:120px; margin-top:4px; filter: drop-shadow(0 2px 0 #fff) drop-shadow(0 6px 6px rgba(0,0,0,.2)); }
  .vh { position:absolute !important; height:1px; width:1px; overflow:hidden; clip:rect(1px,1px,1px,1px); white-space:nowrap; }

  /* === Ad layout tweaks === */
  .ad { text-align:center; margin:12px auto; }
  .ad-top { max-width: 970px; }
  .ad-incontent, .ad-below-results, .ad-faq-mid { max-width: 728px; }
  .rail { position: fixed; top: 110px; width: 160px; display:none; z-index: 50; }
  .rail-left { left: 10px; }
  .rail-right { right: 10px; }
  .rail-inner { position: sticky; top: 110px; }
  @media (min-width: 1280px) {
    .rail { display: block; }
    .wrap { margin-left: 190px; margin-right: 190px; }
  }
  .wallpaper { position: fixed; inset:0; background: radial-gradient(circle at 10% 10%, #e6f7ff, #ffffff); z-index: -1; }
  .anchor-ad { position: fixed; left: 0; right: 0; bottom: 0; background:#fff; border-top: 2px solid #c9eeff; padding: 6px 40px 6px 6px; box-shadow: 0 -4px 12px rgba(0,0,0,.12); z-index: 60; }
  .anchor-close { position:absolute; right:8px; top:8px; border: 2px solid #9edbff; background:#fff; padding:2px 6px; cursor:pointer; }


  @media (max-width: 767px) {
    .ad-top { display:none !important; }
  }