:root{--app-gold:#f0c940;--app-green:#66bb6a;--app-red:#ef5350;--app-panel:#0d160f;--app-line:rgba(240,201,64,.18)}
body.matchday-app{min-height:100vh;background:radial-gradient(circle at 50% 0,rgba(240,201,64,.07),transparent 34%),#060a06}
.matchday-app .app-back{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;padding:14px 20px;background:rgba(6,10,6,.92);border-bottom:1px solid rgba(240,201,64,.12);backdrop-filter:blur(14px)}
.matchday-app .app-back a{color:var(--app-gold);font-weight:700;text-decoration:none}
.matchday-app .app-status{font-size:11px;color:var(--text2);letter-spacing:.08em;text-transform:uppercase}
.app-phase-nav{max-width:760px;margin:0 auto;padding:18px 20px 10px;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.app-phase-button{min-height:54px;padding:9px 10px;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:rgba(255,255,255,.025);color:var(--text2);font-family:var(--ff-b);cursor:pointer;text-align:left}
.app-phase-button span{display:block;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--text2)}
.app-phase-button strong{display:block;margin-top:3px;font-size:13px;color:var(--text)}
.app-phase-button.is-active{border-color:rgba(240,201,64,.5);background:rgba(240,201,64,.08)}
.app-phase-button.is-active span,.app-phase-button.is-active strong{color:var(--app-gold)}
.matchday-app .st-section{min-height:auto}
.matchday-app .st-container{max-width:760px;padding:16px 20px 56px}
.app-kicker{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--app-gold)}
.matchday-app .st-title{font-size:clamp(28px,5vw,42px);line-height:1.05;margin:8px 0 8px;letter-spacing:0}
.app-lead{max-width:620px;margin:0 0 28px;color:var(--text);font-size:14px;line-height:1.55}
.app-section{margin:26px 0 0;padding-top:24px;border-top:1px solid rgba(255,255,255,.07)}
.app-section-head{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:12px}
.app-section-head span{font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--app-gold)}
.app-section-head h2{margin:3px 0 0;font-family:var(--ff-d);font-size:20px;color:var(--bright);letter-spacing:0}
.app-section-head em{font-size:11px;color:var(--text2);font-style:normal;text-align:right}
.app-plan-grid,.app-role-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.app-choice{min-height:58px;padding:10px;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:rgba(255,255,255,.025);color:var(--text);font-family:var(--ff-b);cursor:pointer;text-align:left}
.app-choice strong{display:block;font-size:13px;color:var(--bright)}
.app-choice small{display:block;margin-top:3px;font-size:10px;color:var(--text2);line-height:1.3}
.app-choice.is-selected{border-color:var(--app-gold);background:rgba(240,201,64,.1)}
.app-role-grid .app-choice{min-height:64px;text-align:center}
.app-role-grid .app-choice strong{font-size:17px;color:var(--app-gold)}
.app-team-context{display:grid;gap:14px;margin-top:18px;padding:16px 0;border-top:1px solid rgba(255,255,255,.07);border-bottom:1px solid rgba(255,255,255,.07)}
.app-segment-field{min-width:0;margin:0;padding:0;border:0}
.app-segment-field legend{margin-bottom:7px;font-size:10px;font-weight:800;letter-spacing:.11em;text-transform:uppercase;color:var(--text2)}
.app-segmented{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}
.app-segmented button{min-width:0;min-height:44px;padding:8px;border:1px solid rgba(255,255,255,.09);border-radius:8px;background:rgba(255,255,255,.025);color:var(--text);font-family:var(--ff-b);font-size:12px;font-weight:700;cursor:pointer}
.app-segmented button.is-selected{border-color:var(--app-gold);background:rgba(240,201,64,.1);color:var(--app-gold)}
.app-role-card{margin-top:16px;border:1px solid rgba(102,187,106,.3);border-left:4px solid var(--app-green);border-radius:8px;background:linear-gradient(135deg,rgba(102,187,106,.09),rgba(255,255,255,.018));overflow:hidden}
.app-role-card-head{display:flex;justify-content:space-between;gap:16px;padding:18px 18px 14px;border-bottom:1px solid rgba(255,255,255,.07)}
.app-role-card-head span{display:block;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--app-green);font-weight:800}
.app-role-card-head h2{margin:4px 0 0;font-family:var(--ff-d);font-size:24px;color:var(--bright);letter-spacing:0}
.app-shirt{min-width:52px;height:52px;display:grid;place-items:center;border-radius:8px;background:#c62828;border:1px solid #ef5350;color:#fff;font-size:17px;font-weight:800}
.app-role-core{padding:16px 18px}
.app-role-core>strong{display:block;font-size:18px;line-height:1.35;color:var(--bright)}
.app-role-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:16px}
.app-role-facts span{min-width:0}
.app-role-facts small{display:block;font-size:9px;letter-spacing:.11em;text-transform:uppercase;color:var(--text2)}
.app-role-facts strong{display:block;margin-top:4px;font-size:12px;line-height:1.35;color:var(--text)}
.app-low-core{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:16px;padding-top:15px;border-top:1px solid rgba(240,201,64,.16)}
.app-low-core[hidden]{display:none}
.app-low-core small{display:block;font-size:9px;letter-spacing:.11em;text-transform:uppercase;color:var(--app-gold)}
.app-low-core strong{display:block;margin-top:4px;font-size:12px;line-height:1.4;color:var(--bright)}
.app-role-actions{display:flex;flex-wrap:wrap;gap:8px;padding:0 18px 18px}
.app-link,.app-secondary-button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:9px 14px;border-radius:8px;border:1px solid var(--app-line);background:rgba(240,201,64,.04);color:var(--app-gold);font-family:var(--ff-b);font-size:12px;font-weight:700;text-decoration:none;cursor:pointer}
.app-config{margin-top:16px;border-top:1px solid rgba(255,255,255,.07)}
.app-config summary{padding:14px 0;color:var(--text);font-size:13px;font-weight:700;cursor:pointer;list-style:none}
.app-config summary::after{content:'+';float:right;color:var(--app-gold)}
.app-config[open] summary::after{content:'−'}
.app-config-grid{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end;padding-bottom:16px}
.app-dry-run{margin-top:16px;border-top:1px solid rgba(255,255,255,.07);border-bottom:1px solid rgba(255,255,255,.07)}
.app-dry-run[hidden]{display:none}
.app-dry-run summary{display:flex;flex-direction:column;gap:2px;min-height:54px;padding:11px 28px 11px 0;position:relative;cursor:pointer;list-style:none}
.app-dry-run summary::-webkit-details-marker{display:none}
.app-dry-run summary::after{content:'+';position:absolute;right:4px;top:15px;color:var(--app-gold);font-size:19px;font-weight:800}
.app-dry-run[open] summary::after{content:'−'}
.app-dry-run summary span{font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--app-gold)}
.app-dry-run summary strong{font-size:13px;color:var(--bright)}
.app-dry-run ol{list-style:none;margin:0;padding:0 0 12px}
.app-dry-run li{display:grid;grid-template-columns:46px 1fr;gap:10px;padding:9px 0;border-top:1px solid rgba(255,255,255,.06)}
.app-dry-run li strong{color:var(--app-gold);font-size:12px}
.app-dry-run li span{color:var(--text);font-size:12px;line-height:1.4}
.app-field label{display:block;margin-bottom:5px;font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--text2)}
.app-field select{width:100%;min-height:44px;padding:8px 10px;border-radius:8px;border:1px solid rgba(255,255,255,.12);background:#0b120d;color:var(--bright);font-family:var(--ff-b)}
.app-briefing{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:20px 0 0;padding:14px 0;border-top:1px solid rgba(255,255,255,.07);border-bottom:1px solid rgba(255,255,255,.07)}
.app-briefing span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--text2)}
.app-briefing strong{display:block;margin-top:3px;color:var(--bright);font-size:14px}
.app-live-board{margin-top:24px;border:1px solid rgba(239,83,80,.28);border-top:3px solid var(--app-red);border-radius:8px;background:rgba(239,83,80,.045);padding:22px}
.app-live-label{font-size:10px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:var(--app-red)}
.app-live-board h2{margin:7px 0 18px;font-family:var(--ff-d);font-size:clamp(24px,4vw,34px);line-height:1.12;color:var(--bright);letter-spacing:0}
.app-live-list{display:grid;gap:0}
.app-live-line{display:grid;grid-template-columns:30px 110px 1fr;gap:10px;padding:13px 0;border-top:1px solid rgba(255,255,255,.07);align-items:start}
.app-live-line>span{width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:var(--app-gold);color:#101006;font-size:11px;font-weight:800}
.app-live-line small{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--text2)}
.app-live-line strong{font-size:14px;line-height:1.4;color:var(--bright)}
.app-score-switch{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-top:18px}
.app-score-switch button{min-height:44px;padding:8px;border-radius:8px;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.025);color:var(--text);font-family:var(--ff-b);cursor:pointer}
.app-score-switch button.is-selected{border-color:var(--app-gold);color:var(--app-gold);background:rgba(240,201,64,.08)}
.app-adjustment{margin-top:12px;padding:14px;border-left:3px solid var(--app-gold);background:rgba(240,201,64,.05);color:var(--text);font-size:13px;line-height:1.5}
.app-reset-card{margin-top:12px;padding:14px;border-left:3px solid var(--app-red);background:rgba(239,83,80,.06)}
.app-reset-card[hidden]{display:none}
.app-reset-card span{display:block;font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--app-red)}
.app-reset-card strong{display:block;margin-top:5px;color:var(--bright);font-size:13px;line-height:1.45}
.app-reflection{margin-top:24px}
.app-reflection-question{font-family:var(--ff-d);font-size:clamp(22px,4vw,30px);line-height:1.25;color:var(--bright);letter-spacing:0}
.app-answer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:18px}
.app-answer-grid button{min-height:52px;border-radius:8px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.025);color:var(--text);font-family:var(--ff-b);font-weight:700;cursor:pointer}
.app-answer-grid button.is-selected{border-color:var(--app-green);background:rgba(102,187,106,.1);color:var(--app-green)}
.app-note{width:100%;min-height:82px;margin-top:12px;padding:12px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:#0a110c;color:var(--bright);font:inherit;resize:vertical}
.app-next-drill{display:none;margin-top:22px;padding:18px 0;border-top:1px solid rgba(102,187,106,.28)}
.app-next-drill.is-visible{display:block}
.app-next-drill span{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--app-green);font-weight:800}
.app-next-drill h2{margin:5px 0;font-family:var(--ff-d);font-size:22px;color:var(--bright);letter-spacing:0}
.app-next-drill p{margin:0 0 12px;color:var(--text);font-size:13px;line-height:1.5}
.app-toast{position:fixed;left:50%;bottom:24px;z-index:50;transform:translate(-50%,20px);padding:10px 14px;border:1px solid rgba(102,187,106,.35);border-radius:8px;background:#0d1810;color:var(--bright);font-size:12px;opacity:0;pointer-events:none;transition:.2s}
.app-toast.is-visible{opacity:1;transform:translate(-50%,0)}
.app-optional{margin-top:20px;border-top:1px solid rgba(255,255,255,.07)}
.app-optional summary{padding:14px 0;color:var(--text2);font-size:12px;cursor:pointer}
@media(max-width:680px){
  .matchday-app .app-status{display:none}.app-phase-nav{padding:12px 14px 6px}.app-phase-button{min-height:48px;padding:7px}.app-phase-button strong{font-size:11px}
  .matchday-app .st-container{padding:14px 16px 44px}.app-plan-grid{grid-template-columns:1fr 1fr}.app-role-grid{grid-template-columns:repeat(4,1fr)}
  .app-role-card-head{padding:15px}.app-role-core{padding:14px 15px}.app-role-facts,.app-low-core{grid-template-columns:1fr;gap:10px}.app-role-actions{padding:0 15px 15px}
  .app-segmented{grid-template-columns:1fr}.app-segmented button{text-align:left}
  .app-config-grid{grid-template-columns:1fr}.app-briefing{align-items:flex-start}.app-briefing .app-link{flex-shrink:0}
  .app-live-board{padding:17px 15px}.app-live-line{grid-template-columns:28px 1fr}.app-live-line small{grid-column:2}.app-live-line strong{grid-column:2}
  .app-score-switch{grid-template-columns:1fr 1fr}.app-answer-grid{grid-template-columns:1fr}.app-section-head{align-items:start}.app-section-head em{display:none}
}
@media(max-width:380px){.app-role-grid{grid-template-columns:repeat(2,1fr)}.app-phase-button span{font-size:8px}.app-phase-button strong{font-size:10px}}
@media(prefers-reduced-motion:reduce){.app-toast{transition:none}}
