/* CIRCUITO — modalità timer separata dal runner standard */
  .circuit-focus-card{
    display:none;
    border:1px solid var(--line);
    border-radius:16px;
    padding:18px 14px;
    background:var(--surface-1);
    text-align:center;
  }
  .circuit-phase-kicker{
    font-family:'Oswald',sans-serif;
    text-transform:uppercase;
    letter-spacing:.08em;
    font-size:12px;
    font-weight:700;
    color:var(--steel);
  }
  .circuit-ex-name{
    font-family:'Oswald',sans-serif;
    text-transform:uppercase;
    font-size:28px;
    line-height:1.05;
    font-weight:700;
    color:var(--bone);
    margin:8px 0 4px;
    overflow-wrap:anywhere;
  }
  .circuit-progress{
    font-family:'JetBrains Mono',monospace;
    font-size:12px;
    color:var(--steel);
  }
  .circuit-timer{
    font-family:'JetBrains Mono',monospace;
    font-size:64px;
    line-height:1;
    font-weight:700;
    color:var(--rust);
    margin:24px 0 20px;
    font-variant-numeric:tabular-nums;
  }
  .circuit-next{
    min-height:38px;
    margin:0 auto 18px;
    max-width:420px;
    font-size:12px;
    line-height:1.4;
    color:var(--steel);
  }
  .circuit-controls{
    max-width:420px;
    margin:0 auto;
    display:grid;
    gap:10px;
  }
  .circuit-control-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
  }
  .circuit-control-row.single{ grid-template-columns:1fr; }
  .circuit-btn{
    min-height:48px;
    border-radius:12px;
    font-family:'Oswald',sans-serif;
    text-transform:uppercase;
    font-size:14px;
    font-weight:700;
    letter-spacing:.04em;
  }
  .circuit-pause-btn{
    min-height:56px;
    font-size:17px;
  }
  .circuit-setup-section{
    margin-top:16px;
    padding:14px;
    border:1px solid var(--border);
    border-radius:16px;
    background:var(--card);
  }
  .circuit-setup-section:first-of-type{ margin-top:18px; }
  .circuit-setup-section-title{
    font-family:'Oswald',sans-serif;
    font-size:12px;
    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase;
    color:var(--brass);
    margin-bottom:10px;
  }
  .circuit-setup-section .field{ margin-bottom:12px; }
  .circuit-setup-section .field:last-child{ margin-bottom:0; }
  .circuit-setup-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
  }
  .circuit-setup-grid .field{ margin-bottom:0; }
  .circuit-setup-grid input,
  #circuitNameInput,
  #circuitExercisesInput{
    font-size:16px;
  }
  .circuit-setup-grid input{
    min-height:48px;
    font-family:'JetBrains Mono',monospace;
    font-size:18px;
    font-weight:700;
    text-align:center;
  }
  .circuit-field-help{
    margin-top:5px;
    font-size:10px;
    line-height:1.25;
    color:var(--steel);
    text-align:center;
  }
  .circuit-countdown-field{ grid-column:1 / -1; }
  .circuit-countdown-field input{ max-width:none; }
  .circuit-status-pill{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:26px;
    padding:4px 10px;
    border:1px solid var(--line);
    border-radius:999px;
    font-family:'Oswald',sans-serif;
    font-size:11px;
    font-weight:700;
    text-transform:uppercase;
    color:var(--brass);
    margin-bottom:4px;
  }

  .circuit-save-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
    margin-top:6px;
  }
  .circuit-saved-wrap{
    margin-top:18px;
    padding-top:16px;
    border-top:1px solid var(--border);
  }
  .circuit-saved-head{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:10px;
    margin-bottom:10px;
  }
  .circuit-saved-list{
    display:grid;
    gap:10px;
  }
  .circuit-saved-empty{
    font-size:13px;
    color:var(--muted);
    padding:12px 0 4px;
  }
  .circuit-saved-item{
    border:1px solid var(--border);
    border-radius:14px;
    padding:12px;
    background:var(--card);
  }
  .circuit-saved-title{
    font-weight:800;
    line-height:1.25;
    margin-bottom:4px;
  }
  .circuit-saved-meta{
    font-size:12px;
    color:var(--muted);
    line-height:1.4;
    margin-bottom:10px;
  }
  .circuit-saved-actions{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:8px;
  }
  .circuit-saved-actions .btn{
    min-width:0;
    padding-left:8px;
    padding-right:8px;
  }
  @media(max-width:560px){
    #circuitSetupOverlay .panel{
      width:calc(100% - 20px);
      max-width:none;
      padding:18px 14px calc(18px + env(safe-area-inset-bottom));
      border-radius:18px;
    }
    #circuitSetupOverlay h2{
      font-size:22px;
      padding-right:38px;
      margin-bottom:4px;
    }
    #circuitSetupOverlay > .panel > .sub{
      font-size:11px;
      line-height:1.4;
      padding-right:20px;
    }
    .circuit-setup-section{
      padding:12px;
      border-radius:14px;
      margin-top:12px;
    }
    .circuit-setup-grid{ gap:8px; }
    .circuit-setup-grid label{ font-size:11px; }
    .circuit-setup-grid input{ min-height:50px; }
    #circuitExercisesInput{ min-height:116px; resize:vertical; }
    .circuit-save-actions{
      grid-template-columns:1fr;
      gap:8px;
      margin-top:14px;
    }
    .circuit-save-actions .btn{ min-height:50px; }
    #btnSaveCircuit{ order:1; }
    #btnStartCircuit{ order:2; }
    .circuit-saved-actions{ grid-template-columns:1fr 1fr; }
    .circuit-saved-actions [data-circuit-action="delete"]{ grid-column:1 / -1; }
  }
  @media(max-width:340px){
    .circuit-setup-grid{ grid-template-columns:1fr; }
    .circuit-countdown-field{ grid-column:auto; }
  }

  .circuit-complete-card{
    text-align:center;
    padding-top:8px;
  }
  .circuit-complete-check{
    width:72px;
    height:72px;
    margin:4px auto 14px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    border:2px solid var(--brass);
    font-size:34px;
    font-weight:900;
    color:var(--brass);
  }
  .circuit-complete-label{
    font-family:'Oswald',sans-serif;
    font-size:12px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.08em;
    color:var(--muted);
    margin-top:18px;
  }
  .circuit-complete-time{
    font-family:'Oswald',sans-serif;
    font-size:54px;
    line-height:1;
    font-weight:700;
    letter-spacing:.02em;
    margin:6px 0 24px;
  }

  body[data-circuit-active="true"] #circuitHeaderSection,
  body[data-circuit-active="true"] #circuitLibraryBox{
    display:none !important;
  }
  body[data-circuit-active="true"] #circuitFocusBox{ display:block !important; }

  @media (max-width:420px){
    .circuit-timer{ font-size:58px; margin:22px 0 18px; }
    .circuit-ex-name{ font-size:24px; }
    .circuit-focus-card{ padding:16px 12px; }
  }
