.af-board *,.af-board ::after,.af-board ::before{box-sizing:border-box}
.af-board{--af-bg:#0d1a14;--af-text:#a8b4ad;--af-p1:#64b5f6;--af-p2:#ef5350;--af-border:#1a2e23;--af-accent:#ffd740;--af-current:#ffffff;background:var(--af-bg);border-radius:10px;overflow:hidden;border:2px solid var(--af-border);color:var(--af-text);font-family:'Roboto Mono',ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
.af-title{text-align:center;padding:.45em .7em;font-weight:700;font-size:.85em;letter-spacing:.06em;color:var(--af-text);border-bottom:1px solid var(--af-border);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-transform:uppercase}
.af-main{display:grid;grid-template-columns:1fr 1.2fr 1fr;align-items:stretch}
.af-team{padding:.7em .6em .55em;text-align:center;border-bottom:1px solid var(--af-border)}
.af-team--p1{background:linear-gradient(180deg,rgba(0,0,0,0) 0,rgba(0,0,0,.15) 100%)}
.af-team--p2{background:linear-gradient(180deg,rgba(0,0,0,0) 0,rgba(0,0,0,.15) 100%)}
.af-team--poss{box-shadow:inset 0 -3px 0 var(--af-accent)}
.af-team__name{font-size:clamp(.7rem,2vw,1.1rem);font-weight:800;text-transform:uppercase;letter-spacing:.08em;line-height:1.1;color:var(--af-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.af-team--p1 .af-team__name{color:var(--af-p1)}
.af-team--p2 .af-team__name{color:var(--af-p2)}
.af-team__score{font-size:clamp(2.6rem,9vw,5rem);font-weight:900;line-height:1;font-variant-numeric:tabular-nums;color:var(--af-current);margin:.05em 0 .15em;letter-spacing:-.04em}
.af-team__to{display:flex;justify-content:center;gap:.3em;align-items:center;height:.85em}
.af-to-dot{display:inline-block;width:.4em;height:.4em;border-radius:50%;border:1px solid var(--af-text);background:transparent;opacity:.55}
.af-to-dot--on{background:var(--af-accent);border-color:var(--af-accent);opacity:1;box-shadow:0 0 6px rgba(255,215,64,.4)}
.af-center{padding:.55em .4em;text-align:center;border-left:2px solid var(--af-border);border-right:2px solid var(--af-border);border-bottom:1px solid var(--af-border);background:rgba(0,0,0,.18);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15em}
.af-clock{font-size:clamp(2rem,7vw,3.8rem);font-weight:900;line-height:1;font-variant-numeric:tabular-nums;color:var(--af-accent);letter-spacing:.02em}
.af-meta{display:flex;gap:.7em;align-items:baseline;justify-content:center;font-size:clamp(.7rem,2vw,1rem);font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.af-meta__quarter{color:var(--af-current);background:rgba(255,255,255,.06);padding:.05em .55em;border-radius:4px;border:1px solid var(--af-border)}
.af-meta__playclock{color:var(--af-text);font-variant-numeric:tabular-nums}
.af-strip{display:flex;align-items:center;justify-content:center;gap:.5em;padding:.5em .7em;font-size:clamp(.7rem,1.6vw,.95rem);font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:rgba(0,0,0,.25);color:var(--af-text);border-top:1px solid var(--af-border);min-height:2em;flex-wrap:wrap;text-align:center}
.af-strip__down{color:var(--af-current)}
.af-strip__sep{opacity:.45}
.af-strip__poss{color:var(--af-accent)}
.af-strip__final{color:var(--af-accent);font-size:1.1em}
.number-font-roboto-mono .af-clock,.number-font-roboto-mono .af-team__score{font-family:"Roboto Mono",monospace}
.number-font-major-mono .af-clock,.number-font-major-mono .af-team__score{font-family:"Major Mono Display",monospace}
.number-font-share-tech .af-clock,.number-font-share-tech .af-team__score{font-family:"Share Tech Mono",monospace}
.number-font-mono .af-clock,.number-font-mono .af-team__score{font-family:"JetBrains Mono",monospace}
.number-font-azeret-mono .af-clock,.number-font-azeret-mono .af-team__score{font-family:"Azeret Mono",monospace}
.number-font-segment .af-clock,.number-font-segment .af-team__score{font-family:"DSEG7 Classic",monospace}

.af-admin{display:grid;grid-template-columns:360px 1fr;grid-template-areas:"controls board";gap:1.25rem;max-width:1200px;margin:0 auto;padding:1rem;align-items:start}
.af-admin__board{position:sticky;top:1rem;grid-area:board}
.af-admin__controls{display:flex;flex-direction:column;gap:.75rem;grid-area:controls}
.af-admin__controls .ctrl-section{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:.75rem}
.af-admin__controls .ctrl-section__title{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 .5rem;display:flex;justify-content:space-between;align-items:baseline;gap:.5rem}
body.is-admin-fullscreen .sound-fx-section{display:none!important}
.af-team-pill{display:inline-block;padding:.1rem .5rem;border-radius:99px;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;border:1px solid var(--border);background:var(--input-bg);color:var(--text);cursor:pointer;transition:background-color .15s,border-color .15s,color .15s}
.af-team-pill.is-active{background:var(--brand-accent,#3773c1);color:#fff;border-color:var(--brand-accent,#3773c1)}
.af-score-row{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-bottom:.4rem}
.af-score-col{display:flex;flex-direction:column;gap:.25rem}
.af-score-col__label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);text-align:center}
.af-score-col__big{font-size:1.4rem;font-weight:900;font-variant-numeric:tabular-nums;text-align:center;padding:.15rem 0;background:var(--input-bg);border:2px solid var(--border);border-radius:6px;color:var(--text)}
.af-score-col__input{display:block;width:100%;box-sizing:border-box;font-family:inherit;-moz-appearance:textfield}
.af-score-col__input::-webkit-inner-spin-button,.af-score-col__input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.af-score-col__input:focus{outline:0;border-color:var(--brand-accent,#3773c1);box-shadow:0 0 0 2px rgba(55,115,193,.25)}

.af-admin .af-team__name,.af-admin .af-team__score,.af-admin .af-team__to .af-to-dot,
.af-admin .af-clock,.af-admin .af-meta__quarter,.af-admin .af-meta__playclock{cursor:pointer;user-select:none;transition:opacity .12s,filter .12s,text-shadow .15s,transform .08s}
.af-admin .af-team__name:hover,.af-admin .af-team__score:hover,.af-admin .af-clock:hover,.af-admin .af-meta__quarter:hover,.af-admin .af-meta__playclock:hover{opacity:.8;text-shadow:0 0 8px currentColor}
.af-admin .af-team__name:active,.af-admin .af-team__score:active,.af-admin .af-clock:active,.af-admin .af-meta__quarter:active,.af-admin .af-meta__playclock:active{transform:scale(.96)}
.af-admin .af-to-dot{cursor:pointer}
.af-admin .af-to-dot:hover{filter:drop-shadow(0 0 4px var(--af-accent))}
.af-chips{display:grid;grid-template-columns:repeat(3,1fr);gap:.3rem;margin-top:.3rem}
.af-chip{padding:.45rem .15rem;font-size:.75rem;font-weight:700;border:2px solid var(--border);border-radius:5px;background:0 0;color:var(--text);cursor:pointer;font-family:inherit;transition:background .15s,color .15s,border-color .15s}
.af-chip:hover{background:var(--btn-hover);border-color:var(--brand-accent,#3773c1)}
.af-chip:disabled{opacity:.4;cursor:default}
.af-chip__sub{display:block;font-size:.6em;font-weight:600;opacity:.7;text-transform:none;letter-spacing:0;margin-top:.15em}
.af-clock-row{display:grid;grid-template-columns:auto 1fr auto auto;gap:.4rem;align-items:center;margin-bottom:.4rem}
.af-clock-row__label{font-size:.7rem;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.05em}
.af-clock-display{font-size:1.4rem;font-weight:800;font-variant-numeric:tabular-nums;text-align:center;padding:.2rem .5rem;background:var(--input-bg);border:2px solid var(--border);border-radius:5px;color:var(--text);min-width:5rem;cursor:pointer}
.af-clock-display.is-running{color:#16b420;border-color:#16b420}
.af-down-row{display:grid;grid-template-columns:repeat(4,1fr);gap:.25rem;margin-bottom:.4rem}
.af-down-btn{padding:.45rem 0;font-size:.85rem;font-weight:700;border:2px solid var(--border);border-radius:5px;background:0 0;color:var(--text);cursor:pointer;font-family:inherit;transition:background .15s,color .15s,border-color .15s}
.af-down-btn.is-active{background:var(--brand-accent,#3773c1);color:#fff;border-color:var(--brand-accent,#3773c1)}
.af-down-btn:hover:not(.is-active){background:var(--btn-hover)}
.af-field-row{display:grid;grid-template-columns:auto 1fr auto 1fr;gap:.4rem;align-items:center;margin-bottom:.4rem}
.af-field-row label{font-size:.7rem;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.05em}
.af-field-input{background:var(--input-bg);border:2px solid var(--border);border-radius:5px;color:var(--text);font-size:.95rem;padding:.3rem .4rem;font-weight:700;font-family:inherit;text-align:center;width:100%;min-width:0;-moz-appearance:textfield}
.af-field-input::-webkit-inner-spin-button,.af-field-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.af-side-toggle{display:flex;gap:.25rem}
.af-side-btn{flex:1;padding:.25rem .35rem;font-size:.7rem;font-weight:700;border:2px solid var(--border);border-radius:5px;background:0 0;color:var(--text);cursor:pointer;font-family:inherit;text-align:center;letter-spacing:.04em}
.af-side-btn.is-active{background:var(--brand-accent,#3773c1);color:#fff;border-color:var(--brand-accent,#3773c1)}
.af-poss-row{display:flex;gap:.25rem;margin-bottom:.4rem}
.af-poss-btn{flex:1;padding:.4rem .35rem;font-size:.75rem;font-weight:700;border:2px solid var(--border);border-radius:5px;background:0 0;color:var(--text);cursor:pointer;font-family:inherit;text-align:center;letter-spacing:.04em}
.af-poss-btn.is-active{background:var(--brand-accent,#3773c1);color:#fff;border-color:var(--brand-accent,#3773c1)}
.af-to-row{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}
.af-to-col{display:flex;flex-direction:column;gap:.25rem;align-items:center}
.af-to-col__label{font-size:.65rem;font-weight:700;text-transform:uppercase;color:var(--muted)}
.af-to-col__count{font-size:1.2rem;font-weight:800;font-variant-numeric:tabular-nums}
.af-to-col__btns{display:flex;gap:.25rem}
.af-to-col__btns button{padding:.15rem .55rem;font-size:.8rem;font-weight:700;background:var(--input-bg);border:1px solid var(--border);border-radius:4px;color:var(--text);cursor:pointer}
.af-to-col__btns button:hover{background:var(--btn-hover)}
.af-row-actions{display:grid;grid-template-columns:1fr 1fr;gap:.4rem;margin-top:.4rem}
.af-home{display:grid;grid-template-columns:minmax(280px,400px) 1fr;gap:1.5rem;max-width:1100px;margin:0 auto;padding:1.5rem 1rem;align-items:start}
.af-home__form{display:flex;flex-direction:column;gap:.75rem}
.af-home__preview{position:sticky;top:3rem}
.af-live-body{margin:0;padding:0;background:#000;min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;font-family:Arial,sans-serif}
.af-live{width:96vw;max-width:1100px}
.af-live .af-board{font-size:clamp(1rem,3.5vw,1.8rem)}
.af-live-overlay{position:fixed;inset:0;background:rgba(0,0,0,.85);display:flex;align-items:center;justify-content:center;z-index:100;text-align:center;padding:2rem;font-size:1.1rem;line-height:1.6;color:#fff;font-family:Arial,sans-serif}
.af-live-overlay[hidden]{display:none}
.af-live-overlay a{color:#3773c1}
@media (max-width:768px){.af-admin{grid-template-columns:1fr;grid-template-areas:"board""controls"}
.af-admin__board{position:static}
.af-home{grid-template-columns:1fr}
.af-home__preview{position:static;order:-1}
}
