/* ── AI TRENERIS — "SPORTISKS" dizains ──
     Tumss charcoal pamats, elektriski zala akcents, oranzs/sarkans intensitatei.
     Display fonts: Bahnschrift (nak lidzi ar Windows), fallback Arial Narrow. */
  :root, [data-tema="tumsais"] {
    --bg:#15171b; --card:#1c1f24; --elev:#24272d; --fg:#f5f6f8; --muted:#9aa0aa;
    --line:#2e3239; --lime:#b4f625; --lime-fg:#16210a; --orange:#e8843c; --red:#e5533f;
    --up:#86e05a; --down:#e5533f; --ena:none;
    --vo2:#e04a35; --easy:#4d9fe3; --long:#b566e3; --recover:#3fd9a4; --taper:#38bede;
  }
  /* Gaisais stils. Paleti uzgenereja Higgsfield (nano_banana_pro) - no ta maketa
     nakusi #f7f7f4 fons, #6a8a2b oliv-laims, #333 teksts, #f08c4a un #e35d5b akcenti.
     Divas apzinatas atkapes no maketa, abas lasamibas del (parbaudits ar kontrasta
     rekinu): oranžais/sarkanais teksta variants ir patumsinats, un akcents pogam ir
     #5f7d1f, nevis #6a8a2b - ar to baltais teksts uz pogas sasniedz 4.8:1, kamer
     ar maketa toni bija tikai 4.0:1. */
  [data-tema="gaisais"] {
    --bg:#f7f7f4; --card:#ffffff; --elev:#eeeee8; --fg:#303234; --muted:#6f7478;
    --line:#e0e0d8; --lime:#5f7d1f; --lime-fg:#ffffff; --orange:#c9741f; --red:#c8443f;
    --up:#4a7c1e; --down:#c8443f; --ena:0 1px 3px rgba(20,22,26,.09);
    --vo2:#c8443f; --easy:#2b6fae; --long:#7a45a8; --recover:#1c8a68; --taper:#1f7f96;
  }
  /* Tumsais, bet mierigaks - bez neona, zilgani peleks */
  [data-tema="nakts"] {
    --bg:#0f1420; --card:#161d2c; --elev:#1e2739; --fg:#e8ecf4; --muted:#8b95a8;
    --line:#28324a; --lime:#5eead4; --lime-fg:#04211c; --orange:#f0a868; --red:#ef7d7d;
    --up:#6ee7a8; --down:#ef7d7d; --ena:none;
    --vo2:#ef7d7d; --easy:#7dabf5; --long:#c4a2f5; --recover:#5eead4; --taper:#67c8e0;
  }
  /* Augsts kontrasts - lielaks teksts, biezakas linijas */
  [data-tema="kontrasts"] {
    --bg:#000000; --card:#121212; --elev:#1e1e1e; --fg:#ffffff; --muted:#c8c8c8;
    --line:#4a4a4a; --lime:#d4ff3f; --lime-fg:#000000; --orange:#ffab52; --red:#ff6b52;
    --up:#7cff5a; --down:#ff6b52; --ena:none;
    --vo2:#ff6b52; --easy:#66b8ff; --long:#d9a0ff; --recover:#5affc8; --taper:#5ad9ff;
  }
  * { box-sizing: border-box; margin: 0; padding: 0; }
  body { font-family: "Segoe UI", system-ui, sans-serif; background: var(--bg);
         color: var(--fg); padding: 22px; -webkit-font-smoothing: antialiased; }
  ::selection { background: var(--lime); color: var(--lime-fg); }
  ::-webkit-scrollbar { width: 10px; height: 10px; }
  ::-webkit-scrollbar-track { background: var(--bg); }
  ::-webkit-scrollbar-thumb { background: var(--line); border-radius: 6px; }
  .disp { font-family: "Bahnschrift","Arial Narrow","Segoe UI",sans-serif;
          text-transform: uppercase; font-weight: 700; letter-spacing: .02em; }
  h1 { font-family: "Bahnschrift","Arial Narrow","Segoe UI",sans-serif;
       text-transform: uppercase; font-size: 23px; font-weight: 700; letter-spacing: .03em; }
  .eyebrow { font-family: "Bahnschrift","Arial Narrow","Segoe UI",sans-serif;
             text-transform: uppercase; letter-spacing: .17em; font-weight: 600;
             font-size: 11px; color: var(--muted); }
  .muted { color: var(--muted); font-size: 13px; }
  .card { background: var(--card); border: 1px solid var(--line); border-radius: 12px;
          padding: 16px; margin-bottom: 14px; }
  .btn { background: var(--lime); color: var(--lime-fg); border: none; border-radius: 8px;
         padding: 10px 17px; font-size: 13px; cursor: pointer; font-weight: 600;
         font-family: "Bahnschrift","Arial Narrow","Segoe UI",sans-serif;
         text-transform: uppercase; letter-spacing: .06em; transition: filter .15s; }
  .btn:hover { filter: brightness(1.12); }
  .btn.ghost { background: transparent; color: var(--fg); border: 1px solid var(--line); }
  .btn.ghost:hover { background: var(--elev); filter: none; }
  .btn:disabled { opacity: .35; cursor: default; filter: none; }
  .inp { width: 100%; border: 1px solid var(--line); border-radius: 8px; padding: 9px 11px;
         font-size: 14px; margin-top: 5px; background: var(--elev); color: var(--fg); }
  .inp:focus { outline: none; border-color: var(--lime); }
  select.inp option { background: var(--elev); color: var(--fg); }
  label { font-size: 12px; font-weight: 600; display: block; margin-top: 12px;
          color: var(--muted); text-transform: uppercase; letter-spacing: .08em; }
  .row { display: flex; gap: 10px; flex-wrap: wrap; }
  .cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(104px,1fr)); gap: 10px; }
  .kart { background: var(--card); border: 1px solid var(--line); border-radius: 10px; padding: 12px 13px; }
  .kart .l { font-size: 10px; color: var(--muted); text-transform: uppercase;
             letter-spacing: .12em; font-weight: 600;
             font-family: "Bahnschrift","Arial Narrow","Segoe UI",sans-serif; }
  .kart .v { font-size: 27px; font-weight: 700; margin-top: 4px; line-height: 1;
             font-family: "Bahnschrift","Arial Narrow","Segoe UI",sans-serif;
             font-variant-numeric: tabular-nums; }
  .wrow { display: flex; align-items: center; gap: 11px; padding: 10px 4px; border-bottom: 1px solid var(--line); }
  .wrow:last-child { border-bottom: none; }
  .dot { width: 9px; height: 9px; border-radius: 2px; flex: none; }
  .badge { display: inline-flex; align-items: center; gap: 5px; font-size: 10px; padding: 4px 11px;
           border-radius: 99px; text-transform: uppercase; letter-spacing: .1em; font-weight: 600;
           font-family: "Bahnschrift","Arial Narrow","Segoe UI",sans-serif; }
  .badge.svaigs { color: var(--lime); background: rgba(180,246,37,.12); border: 1px solid rgba(180,246,37,.35); }
  .badge.vecs { color: var(--orange); background: rgba(232,132,60,.12); border: 1px solid rgba(232,132,60,.35); }
  .block-h { font-size: 11px; font-weight: 700; margin: 12px 0 5px; text-transform: uppercase;
             letter-spacing: .13em; font-family: "Bahnschrift","Arial Narrow","Segoe UI",sans-serif; }
  .block-h.g { color: var(--up); } .block-h.o { color: var(--red); } .block-h.b { color: var(--easy); }
  pre.an { white-space: pre-wrap; font-family: inherit; font-size: 13px; line-height: 1.55; }
  #chat-log { max-height: 240px; overflow-y: auto; }
  .msg { padding: 9px 12px; border-radius: 10px; margin-bottom: 8px; font-size: 13px; line-height: 1.55; }
  .msg.u { background: var(--elev); margin-left: 30px; border: 1px solid var(--line); }
  .msg.a { background: var(--card); margin-right: 30px; border: 1px solid var(--line);
           border-left: 2px solid var(--lime); }
  /* !important tapec, ka .aizsegs (display:flex) ir definets zemak un ar tadu
     pasu specifiskumu - bez ta modalu pārklajums palika redzams uz visiem laikiem
     un aizsedza visu programmu. */
  .hidden { display: none !important; }
  .spin { color: var(--muted); font-size: 13px; }
  .hero { background: var(--card); border: 1px solid var(--line); border-radius: 14px;
          padding: 18px 20px; margin-bottom: 16px; display: flex; align-items: center; gap: 16px;
          box-shadow: var(--ena);
          background-image: radial-gradient(120% 140% at 8% 0%, rgba(180,246,37,.10), transparent 60%),
                            radial-gradient(90% 120% at 100% 10%, rgba(232,132,60,.09), transparent 62%); }
  .card { box-shadow: var(--ena); }

  /* ── Metriku baloniņi (2. punkts) ── */
  .balloni { display: grid; grid-template-columns: repeat(auto-fit, minmax(178px,1fr)); gap: 11px; }
  .balons { background: var(--card); border: 1px solid var(--line); border-radius: 14px;
            padding: 13px 14px 9px; box-shadow: var(--ena); }
  .balons .augsa { display: flex; align-items: baseline; gap: 6px; margin-bottom: 2px; }
  .balons .nos { font-size: 10px; color: var(--muted); text-transform: uppercase;
                 letter-spacing: .11em; font-weight: 600; flex: 1;
                 font-family: "Bahnschrift","Arial Narrow","Segoe UI",sans-serif; }
  .balons .vert { font-size: 25px; font-weight: 700; line-height: 1.05;
                  font-family: "Bahnschrift","Arial Narrow","Segoe UI",sans-serif;
                  font-variant-numeric: tabular-nums; }
  .balons .mervien { font-size: 11px; color: var(--muted); font-weight: 600; }
  .balons .delta { font-size: 11px; font-weight: 700; padding: 2px 6px; border-radius: 99px; }
  .balons svg { display: block; width: 100%; height: auto; margin-top: 4px; }
  .balons .kajas { display: flex; justify-content: space-between; font-size: 9px;
                   color: var(--muted); letter-spacing: .04em; margin-top: 1px; }

  /* ── Tabulas (aktivitates, salidzinajums) ── */
  table.t { width: 100%; border-collapse: collapse; font-size: 12.5px; }
  table.t th { text-align: left; font-size: 9.5px; color: var(--muted); font-weight: 600;
               text-transform: uppercase; letter-spacing: .11em; padding: 0 8px 7px 0;
               border-bottom: 1px solid var(--line);
               font-family: "Bahnschrift","Arial Narrow","Segoe UI",sans-serif; }
  table.t td { padding: 8px 8px 8px 0; border-bottom: 1px solid var(--line);
               vertical-align: middle; }
  table.t tr:last-child td { border-bottom: none; }
  table.t td.sk { text-align: right; font-variant-numeric: tabular-nums;
                  white-space: nowrap; font-weight: 600; }

  .divi { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; align-items: start; }
  @media (max-width: 720px) { .divi { grid-template-columns: 1fr; } }

  /* ── Modalis (iestatijumi, telefons) ── */
  .aizsegs { position: fixed; inset: 0; background: rgba(0,0,0,.55); z-index: 40;
             display: flex; align-items: flex-start; justify-content: center; padding: 40px 16px;
             overflow-y: auto; }
  .modalis { background: var(--card); border: 1px solid var(--line); border-radius: 14px;
             padding: 20px; max-width: 560px; width: 100%; box-shadow: 0 18px 50px rgba(0,0,0,.35); }
  .temas { display: grid; grid-template-columns: repeat(auto-fit,minmax(120px,1fr)); gap: 10px; }
  .tema-k { border: 2px solid var(--line); border-radius: 11px; padding: 10px; cursor: pointer;
            background: var(--elev); text-align: left; }
  .tema-k.akt { border-color: var(--lime); }
  .tema-k .paraugs { display: flex; gap: 3px; margin-bottom: 7px; }
  .tema-k .paraugs i { width: 15px; height: 15px; border-radius: 4px; display: block; }
  .tema-k .v { font-size: 12px; font-weight: 600; color: var(--fg); }
  .tema-k .a { font-size: 10px; color: var(--muted); line-height: 1.35; margin-top: 2px; }

  /* ── Failu nomesanas zona (1. punkts) ── */
  .nomest { border: 1.5px dashed var(--line); border-radius: 12px; padding: 14px;
            text-align: center; transition: border-color .15s, background .15s; }
  .nomest.parvelk { border-color: var(--lime); background: rgba(180,246,37,.07); }
  .fails-r { display: flex; align-items: center; gap: 9px; padding: 7px 0;
             border-bottom: 1px solid var(--line); font-size: 12.5px; }
  .fails-r:last-child { border-bottom: none; }
  .x-poga { background: none; border: none; color: var(--muted); cursor: pointer;
            font-size: 15px; padding: 0 4px; line-height: 1; }
  .x-poga:hover { color: var(--red); }

  /* ── Sarunas formatejums (8. punkts) ── */
  .msg ul, .msg ol { margin: 7px 0 7px 20px; padding: 0; }
  .msg li { margin-bottom: 5px; line-height: 1.55; padding-left: 2px; }
  .msg li::marker { color: var(--lime); font-weight: 700; }
  .msg p { margin-bottom: 8px; }
  .msg p.vh { font-weight: 700; margin: 10px 0 4px; }
  .msg p:last-child, .msg ul:last-child, .msg ol:last-child { margin-bottom: 0; }
  .msg strong { color: var(--lime); font-weight: 700; }
  .msg.u strong { color: inherit; }
  /* Detalu balons virs kalendara rutis */
  .rute { position: relative; cursor: pointer; }
  /* Sonedelas rinda grafika - lai atverot uzreiz redz, kura nedela ir tagad */
  .ned-rinda { padding: 9px 0; border-bottom: 1px solid var(--line); }
  .ned-rinda.sonedel { border-bottom-color: transparent;
                       border: 1px solid color-mix(in srgb, var(--up) 45%, transparent);
                       border-left: 4px solid var(--up); border-radius: 10px;
                       padding: 10px 12px; margin: 6px 0;
                       background: color-mix(in srgb, var(--up) 11%, transparent);
                       box-shadow: 0 0 0 3px color-mix(in srgb, var(--up) 10%, transparent); }
  .ned-tags { font-size: 9.5px; font-weight: 800; letter-spacing: .6px;
              background: var(--up); color: var(--bg); border-radius: 5px;
              padding: 2px 6px; text-transform: uppercase; flex: none; }
  /* Balons dzivo BODY gala ar position:fixed - ta to neapgriez ne kartes mala,
     ne ritinamais konteiners, un tas vienmer ir virs parejā satura. */
  .balons-det { position: fixed; z-index: 60; width: 240px; text-align: left;
                background: var(--elev); border: 1px solid var(--lime); border-radius: 10px;
                padding: 10px 11px; box-shadow: 0 12px 32px rgba(0,0,0,.45);
                font-size: 11.5px; line-height: 1.5; color: var(--fg);
                pointer-events: none; }
  .balons-det::after { content: ""; position: absolute; top: 100%;
                       left: var(--bulta, 50%); margin-left: -6px;
                       border: 6px solid transparent; border-top-color: var(--lime); }
  .balons-det.apaksa::after { top: auto; bottom: 100%;
                              border-top-color: transparent; border-bottom-color: var(--lime); }
  .balons-det .b-nos { font-weight: 700; margin-bottom: 5px; font-size: 12.5px; }
  .balons-det .b-r { display: flex; gap: 7px; padding: 2px 0; }
  .balons-det .b-r span:first-child { color: var(--muted); min-width: 74px; }

  /* Sirdsritma zonu josla */
  .zona-r { display: flex; align-items: center; gap: 9px; padding: 6px 0;
            border-bottom: 1px solid var(--line); font-size: 12px; }
  .zona-r:last-child { border-bottom: none; }
  .zona-josla { flex: 1; height: 9px; border-radius: 99px; background: var(--elev);
                overflow: hidden; }
  .zona-josla i { display: block; height: 100%; }

  /* Griezas, kamer treneris doma / lasa dokumentu (1. punkts) */
  .ripa { display: inline-block; width: 13px; height: 13px; vertical-align: -2px;
          border: 2px solid var(--line); border-top-color: var(--lime);
          border-radius: 50%; animation: griez .8s linear infinite; margin-right: 7px; }
  @keyframes griez { to { transform: rotate(360deg); } }
  .darbojas { display: flex; align-items: center; gap: 2px; color: var(--muted);
              font-size: 12.5px; }
.apl-poga { cursor:pointer; color:var(--lime); font-weight:700; user-select:none; }
  .apl-poga:hover { text-decoration:underline; }
  .apl-rinda td { background:var(--elev); }
