:root{--ink:#142b2d;--ink2:#203739;--lime:#d5f477;--mint:#42d9c4;--coral:#ed8b6d;--paper:#fafbf5;--line:rgba(255,255,255,.2);font-family:Arial,Helvetica,sans-serif;color:var(--paper);font-synthesis:none}
*{box-sizing:border-box}body{margin:0;overflow:hidden;background:#8ca6ad}button,select,input{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid var(--lime);outline-offset:4px}button{touch-action:manipulation}button,select{-webkit-tap-highlight-color:transparent}button:disabled{cursor:wait;opacity:.6}[hidden]{display:none!important}#app{position:relative;width:100%;height:100dvh;min-height:450px;isolation:isolate;overflow:hidden}#court{display:block;width:100%;height:100%;outline:none;cursor:crosshair}#app.is-menu #court{cursor:default}.vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(12,29,32,.22),transparent 23%,transparent 78%,rgba(13,33,38,.7));transition:background .5s}.is-menu .vignette{background:linear-gradient(90deg,rgba(10,28,31,.96) 0%,rgba(10,28,31,.88) 27%,rgba(10,28,31,.38) 48%,transparent 74%),linear-gradient(180deg,rgba(12,29,32,.18),transparent 20%,transparent 80%,rgba(13,33,38,.65))}
.topbar{position:absolute;top:0;left:0;width:100%;height:100px;padding:30px 44px;display:flex;align-items:center;justify-content:space-between;pointer-events:none;z-index:3}.topbar>*{pointer-events:auto}.brand{display:flex;gap:13px;align-items:center;color:inherit;text-decoration:none;font-weight:800;letter-spacing:.13em;font-size:21px;line-height:1}.brand-mark{width:40px;height:40px;background:var(--lime);border-radius:11px;display:grid;place-items:center;flex-shrink:0;overflow:hidden}.brand-icon{display:block;width:100%;height:100%;object-fit:contain}.brand-sub{display:block;margin-top:6px;font-size:8px;letter-spacing:.3em;font-weight:400;opacity:.8}.court-label{position:absolute;left:50%;transform:translateX(-50%);font-size:10px;font-weight:600;letter-spacing:.2em;display:flex;align-items:center;gap:12px;white-space:nowrap;text-shadow:0 1px 9px #192c2d}.live-dot{display:inline-block;flex-shrink:0;width:6px;height:6px;background:var(--lime);border-radius:50%}.divider{opacity:.45;margin:0 5px}.top-actions{display:flex;gap:8px}.icon-button{width:38px;height:38px;border:1px solid rgba(255,255,255,.3);background:rgba(22,45,47,.4);backdrop-filter:blur(10px);border-radius:50%;color:white;display:grid;place-items:center;transition:background .2s}.icon-button:hover{background:var(--ink)}.icon-button svg{width:17px;height:17px}.icon-button span{font-size:19px}.icon-button.muted .sound-waves{opacity:.15}.pause-button{display:none}.is-playing .pause-button{display:grid}
.menu-panel{position:absolute;z-index:2;left:7%;top:50%;transform:translateY(-45%);width:365px;transition:opacity .2s,transform .35s}.is-playing .menu-panel{opacity:0;pointer-events:none;transform:translate(-30px,-45%)}.eyebrow{font-size:10px;letter-spacing:.21em;font-weight:700;display:flex;gap:10px;align-items:center;color:var(--lime)}.small-line{width:24px;height:1px;background:var(--lime)}h1{font-size:clamp(62px,6.3vw,94px);font-weight:500;line-height:1.03;letter-spacing:-.055em;margin:24px 0 21px}h1 em{font-family:Georgia,'Times New Roman',serif;font-weight:400;color:var(--lime)}.menu-intro{font-size:16px;line-height:1.65;color:rgba(255,255,255,.73);margin:0 0 29px;letter-spacing:.01em}.mode-switch{display:flex;border:1px solid rgba(255,255,255,.22);border-radius:10px;padding:4px;gap:4px;background:rgba(10,28,31,.23)}.mode-option{width:50%;text-align:left;border:0;background:none;color:rgba(255,255,255,.6);padding:14px 12px;border-radius:7px;transition:.2s}.mode-option.active{background:rgba(255,255,255,.13);color:white;box-shadow:0 1px 4px rgba(0,0,0,.08)}.mode-title{display:block;font-size:12px;font-weight:600;white-space:nowrap}.mode-desc{display:block;font-size:9px;margin-top:6px;opacity:.66;white-space:nowrap}.menu-settings{display:flex;align-items:center;gap:8px;font-size:11px;margin:18px 1px 22px;color:rgba(255,255,255,.75)}select{color:white;font-size:11px;background:rgba(255,255,255,.1);border:0;border-radius:5px;padding:7px 5px;max-width:120px}select option{background:var(--ink);color:white}.settings-separator{height:16px;width:1px;background:rgba(255,255,255,.2);margin:0 4px}.check-label{display:flex;align-items:center;gap:6px;cursor:pointer;white-space:nowrap}.check-label input{accent-color:var(--lime);width:12px;height:12px;margin:0}.play-button{width:100%;display:flex;align-items:center;justify-content:space-between;background:var(--lime);color:var(--ink);border:0;border-radius:9px;padding:19px 21px;font-weight:700;font-size:14px;transition:transform .15s,background .15s;box-shadow:0 8px 25px rgba(6,24,27,.13)}.play-button:hover{background:#e2ff96;transform:translateY(-2px)}.button-arrow{font-size:24px;line-height:14px}.menu-input{display:flex;gap:8px;align-items:center;justify-content:center;font-size:10px;color:rgba(255,255,255,.56);margin:19px 0 18px}.keyboard-mini{font-size:14px}.input-dot{opacity:.5;margin:0 2px}.text-button{color:rgba(255,255,255,.68);background:none;border:0;font-size:11px;padding:5px 0;text-decoration:none;letter-spacing:.01em}.text-button:hover{color:var(--lime)}.text-button span{margin-left:7px}.menu-panel>.text-button{display:block;margin:0 auto}
.bottom-bar{position:absolute;bottom:0;left:0;right:0;padding:22px 40px;display:flex;justify-content:space-between;align-items:center;z-index:3;gap:18px;pointer-events:none}.build-label{font-size:8px;letter-spacing:.16em;display:flex;align-items:center;gap:8px;white-space:nowrap}.version{display:inline-block;padding:4px 5px;border:1px solid rgba(255,255,255,.25);border-radius:4px;font-size:8px;opacity:.6;margin-left:4px}.connection-badge{font-size:8px;letter-spacing:.13em;opacity:.7;white-space:nowrap}.control-strip{display:none;align-items:center;gap:14px;padding:13px 17px;border-radius:11px;background:rgba(15,35,40,.83);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.15);pointer-events:auto}.is-playing .control-strip{display:flex}.is-playing .build-label{display:none}.is-playing .bottom-bar{justify-content:center}.is-playing .connection-badge{position:absolute;right:30px;bottom:8px;font-size:7px}.control-pair,.shot-key{display:flex;align-items:center;gap:7px;white-space:nowrap;font-size:10px;color:rgba(255,255,255,.78)}kbd{font:10px Arial,Helvetica,sans-serif;display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:24px;padding:0 6px;border:1px solid rgba(255,255,255,.24);background:rgba(255,255,255,.06);border-radius:5px;color:inherit;line-height:1}.strip-divider{height:22px;width:1px;background:rgba(255,255,255,.2);margin:0 2px}.shot-key{border:0;background:transparent;padding:2px 0}.shot-key:hover,.shot-key.active{color:var(--lime)}.shot-key.active kbd{border-color:var(--lime);background:rgba(213,244,119,.12)}
.game-hud{position:absolute;inset:0;pointer-events:none;z-index:2;opacity:0;transition:opacity .25s}.is-playing .game-hud{opacity:1}.scoreboard{position:absolute;left:38px;top:114px;width:270px;border:1px solid rgba(255,255,255,.3);background:rgba(18,42,46,.87);backdrop-filter:blur(16px);border-radius:12px;padding:15px 17px 10px;box-shadow:0 9px 25px rgba(20,40,48,.12)}.score-heading{font-size:7px;letter-spacing:.13em;opacity:.6;display:flex;justify-content:space-between;margin-bottom:12px}.score-points-heading{margin-left:17px}.score-row{display:flex;align-items:center;gap:9px;padding:9px 0;font-size:11px}.team-mark{width:3px;height:21px;background:var(--mint);border-radius:2px}.opponents .team-mark{background:var(--coral)}.team-name{flex:1;letter-spacing:.02em;font-weight:600}.team-name small{font-weight:400;font-size:9px;opacity:.6;margin-left:5px}.score-row .games{font-size:15px;margin-right:13px;font-weight:500}.score-row strong{font-size:22px;width:25px;text-align:center;font-weight:500;letter-spacing:-.05em}.score-bottom{border-top:1px solid rgba(255,255,255,.12);padding-top:10px;margin-top:7px;display:flex;align-items:center;gap:7px;font-size:8px;color:rgba(255,255,255,.6)}.score-bottom .live-dot{width:4px;height:4px}.score-bottom #rallyCount{margin-left:auto;white-space:nowrap}.feedback-card{position:absolute;left:38px;top:298px;display:flex;align-items:center;gap:11px;padding:12px 16px;min-width:236px;border-radius:9px;background:rgba(18,42,46,.8);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.15);opacity:0;transform:translateY(-6px);transition:opacity .2s,transform .2s}.feedback-card.visible{opacity:1;transform:translateY(0)}.feedback-dot{width:7px;height:7px;border-radius:50%;background:var(--mint);box-shadow:0 0 0 4px rgba(66,217,196,.12)}.feedback-card.warning .feedback-dot{background:#f1c06a;box-shadow:0 0 0 4px rgba(241,192,106,.12)}.feedback-card.error .feedback-dot{background:var(--coral);box-shadow:0 0 0 4px rgba(237,139,109,.12)}.feedback-card strong{display:block;font-size:12px;font-weight:500}.feedback-card div>span{display:block;font-size:9px;opacity:.65;margin-top:5px}.aim-hint{position:absolute;right:38px;top:116px;display:flex;align-items:center;gap:11px;padding:13px 16px;background:rgba(18,42,46,.6);backdrop-filter:blur(10px);border-radius:10px;border:1px solid rgba(255,255,255,.18)}.target-icon{font-size:27px;font-weight:300;color:var(--lime)}.aim-hint strong{font-size:10px;font-weight:500;display:block}.aim-hint div>span{font-size:8px;opacity:.7;display:block;margin-top:4px}.contact-status{position:absolute;bottom:108px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:8px;font-size:9px;letter-spacing:.12em;background:rgba(18,42,46,.78);backdrop-filter:blur(10px);padding:10px 17px;border-radius:25px;border:1px solid rgba(255,255,255,.15);transition:.15s;white-space:nowrap}.contact-status>span{width:5px;height:5px;background:rgba(255,255,255,.5);border-radius:50%}.contact-status.ready{color:var(--lime);border-color:rgba(213,244,119,.5)}.contact-status.ready>span{background:var(--lime);box-shadow:0 0 0 4px rgba(213,244,119,.1)}.rally-banner{position:absolute;top:38%;left:50%;transform:translate(-50%,-50%);text-align:center;opacity:0;transition:opacity .2s;background:rgba(17,40,43,.88);backdrop-filter:blur(15px);padding:22px 48px;border:1px solid rgba(255,255,255,.22);border-radius:15px;min-width:260px}.rally-banner.visible{opacity:1}.rally-banner>span{display:block;font-size:9px;letter-spacing:.2em;color:var(--lime)}.rally-banner strong{display:block;font-size:30px;letter-spacing:-.03em;font-weight:500;margin:11px 0}.rally-banner #bannerSubtitle{font-size:10px;letter-spacing:.02em;color:rgba(255,255,255,.7)}
.modal-backdrop{position:absolute;inset:0;z-index:10;background:rgba(8,25,29,.5);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;padding:20px}.dialog{background:#142c2e;border:1px solid rgba(255,255,255,.2);border-radius:19px;padding:37px;box-shadow:0 24px 100px rgba(0,0,0,.25);width:430px;max-height:calc(100dvh - 40px);overflow:auto;position:relative}.dialog h2{font-size:43px;letter-spacing:-.055em;font-weight:500;margin:18px 0 13px}.dialog p{font-size:12px;line-height:1.65;color:rgba(255,255,255,.65);margin:0 0 25px}.pause-dialog>.text-button{display:block;margin:18px auto 0}.secondary-button{display:block;width:100%;padding:14px 18px;border:1px solid rgba(255,255,255,.22);border-radius:8px;color:white;background:rgba(255,255,255,.04);font-size:12px;margin-top:12px}.secondary-button:hover{background:rgba(255,255,255,.1)}.help-dialog{width:535px;padding:33px}.help-dialog h2{font-size:32px}.close-button{position:absolute;top:16px;right:19px;border:0;background:none;color:rgba(255,255,255,.7);font-size:28px;line-height:1;padding:2px 5px}.help-tabs{display:flex;border-bottom:1px solid rgba(255,255,255,.17);margin:0 0 10px}.help-tabs button{background:transparent;border:0;color:rgba(255,255,255,.6);font-size:11px;padding:12px 0;margin-right:25px;border-bottom:2px solid transparent}.help-tabs button[aria-selected=true]{border-color:var(--lime);color:var(--lime)}.command-row{display:flex;align-items:center;justify-content:space-between;padding:8px 0;font-size:11px;border-bottom:1px solid rgba(255,255,255,.06)}.command-row>span:last-child{color:var(--lime);font-size:10px}.help-note{padding:15px 0;font-size:11px;line-height:1.65;color:rgba(255,255,255,.66)}.help-note strong{color:white;display:block;margin-bottom:4px;font-size:11px;font-weight:500}.help-shortcuts{display:flex;justify-content:space-between;font-size:9px;color:rgba(255,255,255,.68);gap:8px}.help-shortcuts kbd{margin-right:4px;font-size:9px;height:20px;min-width:18px}.sensitivity-setting{margin-top:20px;display:flex;align-items:center;gap:20px;justify-content:space-between;font-size:10px;color:rgba(255,255,255,.7)}input[type=range]{accent-color:var(--lime);width:130px}.toast{position:absolute;bottom:140px;left:50%;transform:translateX(-50%);padding:12px 18px;border-radius:8px;background:var(--ink);color:white;font-size:11px;z-index:20;opacity:0;transition:opacity .2s;pointer-events:none;max-width:80%;text-align:center}.toast.visible{opacity:1}.loading{position:absolute;inset:0;background:#142b2d;z-index:50;display:flex;flex-direction:column;gap:20px;align-items:center;justify-content:center;font-size:12px;letter-spacing:.04em;transition:opacity .3s}.loading-spinner{width:30px;height:30px;border:2px solid rgba(255,255,255,.2);border-top-color:var(--lime);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-screen{position:absolute;inset:0;background:var(--ink);z-index:60;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px;text-align:center}.error-screen h2{font-size:28px}.error-screen p{max-width:480px;line-height:1.7;font-size:13px;opacity:.7}.error-screen button{width:220px}.small-screen-note{display:none;position:absolute;left:20px;right:20px;bottom:66px;font-size:10px;line-height:1.5;color:rgba(255,255,255,.7);background:rgba(18,42,46,.85);padding:12px;border-radius:8px;z-index:4}
@media(min-height:900px){.menu-panel{transform:translateY(-46%)}.menu-intro{margin-bottom:35px}.mode-option{padding-top:17px;padding-bottom:17px}}
@media(max-width:1100px){.topbar{padding:24px 28px;height:90px}.menu-panel{left:5%;width:330px}h1{font-size:76px}.menu-intro{font-size:14px}.control-strip{gap:10px;padding:12px}.control-pair,.shot-key{font-size:9px}.bottom-bar{padding:20px 26px}.scoreboard{left:27px;top:104px;width:251px}.feedback-card{left:27px;top:287px}.aim-hint{right:27px;top:104px}.mode-option{padding:12px 9px}.mode-desc{font-size:8px}.build-label,.connection-badge{font-size:7px}}
@media(max-height:740px) and (min-width:760px){.topbar{height:78px;padding-top:20px;padding-bottom:20px}.menu-panel{width:330px;transform:translateY(-43%)}h1{font-size:65px;margin:15px 0}.menu-intro{margin-bottom:20px;font-size:13px}.mode-option{padding:12px 9px}.menu-settings{margin:13px 1px 16px}.play-button{padding:16px 19px}.menu-input{margin:14px 0 12px}.scoreboard{top:90px}.feedback-card{top:273px}.aim-hint{top:90px}.bottom-bar{padding-top:17px;padding-bottom:17px}.dialog{padding:25px}.help-dialog{width:510px}.dialog h2{margin-top:12px}.help-dialog p{margin-bottom:12px}.command-row{padding:6px 0}.help-note{padding:12px 0}.sensitivity-setting{margin-top:14px}}
@media(max-width:760px){.topbar{padding:20px;height:80px}.brand{font-size:16px;gap:9px}.brand-mark{width:33px;height:33px}.brand-sub{font-size:7px}.court-label{display:none}.top-actions{gap:5px}.icon-button{width:32px;height:32px}.menu-panel{left:26px;right:26px;width:auto;max-width:350px;top:48%;transform:translateY(-44%)}h1{font-size:70px}.menu-intro{font-size:13px}.is-menu .vignette{background:linear-gradient(90deg,rgba(10,28,31,.92),rgba(10,28,31,.6) 65%,rgba(10,28,31,.2))}.bottom-bar{padding:18px 20px}.connection-badge{font-size:6px}.scoreboard{left:16px;top:88px;width:215px;padding:12px}.score-heading{font-size:6px}.team-name small{display:none}.score-row{font-size:9px}.score-row strong{font-size:19px}.score-bottom{font-size:7px}.aim-hint{display:none}.feedback-card{left:16px;top:252px;min-width:210px;padding:10px}.control-strip{max-width:96vw;flex-wrap:wrap;justify-content:center;gap:9px;padding:10px 12px}.control-pair{display:none}.strip-divider{display:none}.shot-key{font-size:9px}.control-strip kbd{height:21px;font-size:8px}.contact-status{bottom:112px;font-size:8px}.dialog{padding:24px;width:min(100%,480px)}.help-dialog h2{font-size:27px}.help-shortcuts{font-size:8px}.small-screen-note{display:block}.is-playing .small-screen-note{display:none}.is-menu .build-label{font-size:6px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* Atelier et lecture du contact, version 02. */
.menu-panel{max-height:calc(100dvh - 178px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(213,244,119,.45) transparent;padding:4px 8px 8px 0}
.is-training .menu-panel h1{font-size:clamp(50px,5.1vw,74px);margin:16px 0 14px}
.is-training .menu-intro{margin-bottom:20px}
.practice-settings{margin-top:12px;padding:13px 12px 10px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.12);border-radius:9px}
.practice-selectors{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:10px}
.practice-selectors label{display:flex;flex-direction:column;gap:7px;font-size:9px;letter-spacing:.03em;color:rgba(255,255,255,.62)}
.practice-selectors select{width:100%;max-width:none;font-size:10px;padding:8px 6px;min-width:0}
.practice-settings p{font-size:10px;line-height:1.5;color:rgba(255,255,255,.62);margin:10px 0 0;min-height:30px}
.is-training .score-row{display:none}
.practice-numbers{display:grid;grid-template-columns:.85fr 1fr 1.15fr;gap:5px;margin:18px 0 16px}
.practice-numbers>div{display:flex;flex-direction:column;gap:6px;text-align:center}
.practice-numbers strong{font-size:23px;font-weight:500;color:var(--paper);letter-spacing:-.05em}
.practice-numbers span{font-size:7px;color:rgba(255,255,255,.6)}
.practice-current{display:flex;justify-content:space-between;font-size:8px;gap:10px;color:var(--lime)}
.practice-current span:last-child{color:rgba(255,255,255,.5);font-size:7px;white-space:nowrap}
.feedback-card{align-items:flex-start;max-width:285px}
.feedback-dot{margin-top:4px;flex-shrink:0}
.feedback-body{min-width:0;flex:1}
.feedback-card .contact-metrics{margin-top:12px;border-top:1px solid rgba(255,255,255,.12);padding-top:9px;display:grid;gap:6px}
.contact-metric{display:grid;grid-template-columns:56px minmax(55px,1fr) 30px;align-items:center;gap:8px;font-size:8px}
.contact-metric>span{color:rgba(255,255,255,.7)}
.contact-metric b{font-size:8px;font-weight:400;text-align:right;letter-spacing:0;font-variant-numeric:tabular-nums}
.metric-track{height:3px;background:rgba(255,255,255,.12);border-radius:3px;overflow:hidden}
.metric-track i{display:block;height:100%;background:var(--mint);width:0;border-radius:3px;transition:width .15s}
.practice-coach{position:absolute;right:38px;top:185px;width:220px;padding:15px 16px 13px;background:rgba(18,42,46,.79);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.16);border-radius:10px}
.practice-coach .eyebrow{font-size:7px;letter-spacing:.16em;color:rgba(255,255,255,.5);margin-bottom:9px}
.practice-coach>strong{font-size:12px;font-weight:500}
.practice-coach p{font-size:10px;line-height:1.6;color:rgba(255,255,255,.68);margin:9px 0 12px}
.marker-legend{display:flex;align-items:center;gap:5px;font-size:7px;color:rgba(255,255,255,.56);white-space:nowrap}
.marker-legend i{width:9px;height:9px;border:1px dashed #e9f7a5;border-radius:50%}
.marker-legend b{color:var(--mint);font-size:13px;font-weight:400;margin-left:4px}
.contact-status{display:block;width:310px;max-width:calc(100vw - 40px);padding:12px 17px;border-radius:12px;letter-spacing:.06em}
.contact-heading{display:flex;align-items:center;justify-content:center;gap:8px;min-height:16px}
.contact-heading>span{width:5px;height:5px;border-radius:50%;background:rgba(255,255,255,.45);flex-shrink:0}
.contact-heading strong{font-size:9px;line-height:1.4;font-weight:500;letter-spacing:.05em}
.contact-heading kbd{height:20px;font-size:8px;margin-left:2px}
.contact-status.ready .contact-heading>span{background:var(--lime);box-shadow:0 0 0 4px rgba(213,244,119,.1)}
.coach-detail{display:block;font-size:8px;line-height:1.45;letter-spacing:.02em;margin-top:7px;color:rgba(255,255,255,.64);text-align:center;white-space:normal}
.contact-status>.coach-detail,.contact-status.ready>.coach-detail{width:auto;height:auto;background:none;border-radius:0;box-shadow:none}
.timing-guide{margin-top:10px}
.timing-labels{display:flex;justify-content:space-between;color:rgba(255,255,255,.44);font-size:7px;letter-spacing:.02em;margin-bottom:6px}
.timing-labels span:nth-child(2){color:var(--lime)}
.timing-track{position:relative;height:5px;background:rgba(255,255,255,.14);border-radius:4px}
.timing-track>i{position:absolute;left:37%;width:26%;height:100%;background:rgba(213,244,119,.78);border-radius:3px}
.timing-track>b{position:absolute;top:-3px;height:11px;width:3px;background:white;border-radius:3px;transform:translateX(-50%);box-shadow:0 0 5px rgba(255,255,255,.35)}
.shot-key.available kbd{border-color:rgba(213,244,119,.6);box-shadow:0 0 0 1px rgba(213,244,119,.08)}
.pause-assist{font-size:10px;line-height:1.5;white-space:normal;color:rgba(255,255,255,.68);margin:-3px 0 23px}
.pause-assist input{flex-shrink:0;width:13px;height:13px;margin-right:3px}
.coaching-note{border-top:1px solid rgba(255,255,255,.13);padding-top:12px;margin-bottom:2px;font-size:10px}
.help-dialog{width:535px}
.toast{bottom:208px;max-width:min(520px,85vw)}
.is-menu .toast{bottom:105px}
@media(max-width:1100px){.practice-coach{right:27px;top:173px;width:208px}.feedback-card{max-width:251px}.control-strip{gap:9px}.shot-key{gap:5px}.shot-key kbd{font-size:9px;padding:0 5px}}
@media(max-height:740px) and (min-width:760px){.menu-panel{max-height:calc(100dvh - 160px)}.is-training .menu-panel h1{font-size:50px;margin:10px 0}.is-training .menu-intro{font-size:12px;margin-bottom:14px}.is-training .menu-intro br{display:none}.practice-coach{top:156px}.practice-settings{padding:10px;margin-top:10px}.is-training .menu-input{margin:12px 0 9px}.is-training .menu-settings{margin:12px 1px}.contact-status{bottom:100px}.help-dialog .coaching-note{font-size:9px}.feedback-card{max-width:260px}}
@media(max-width:760px){.menu-panel{max-height:calc(100dvh - 165px)}.is-training .menu-panel h1{font-size:54px}.practice-coach{display:none}.feedback-card{max-width:230px}.contact-status{bottom:106px;width:290px;padding:10px 13px}.contact-heading strong{font-size:8px}.practice-numbers strong{font-size:20px}.practice-numbers span{font-size:6px}.practice-current{font-size:7px}.practice-current span:last-child{font-size:6px}.contact-metric{grid-template-columns:50px minmax(45px,1fr) 27px;gap:6px}.shot-key kbd{font-size:8px}.toast{bottom:215px}.coaching-note{font-size:9px}}

/* Puissance du smash : une commande de jeu, visible même sans les aides. */
.shot-charge{position:absolute;left:50%;bottom:108px;transform:translateX(-50%);width:310px;max-width:calc(100vw - 40px);padding:14px 17px 12px;background:rgba(18,42,46,.94);border:1px solid rgba(213,244,119,.4);border-radius:12px;backdrop-filter:blur(10px);box-shadow:0 6px 24px rgba(0,0,0,.14)}
.charge-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:8px;letter-spacing:.1em}
.charge-heading strong{font-weight:500;color:rgba(255,255,255,.8)}
.charge-heading b{font-size:12px;letter-spacing:0;font-weight:500;color:var(--lime);font-variant-numeric:tabular-nums}
.charge-meter{height:7px;border-radius:5px;background:rgba(255,255,255,.13);margin:10px 0 12px;overflow:hidden}
.charge-meter i{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--mint),var(--lime));border-radius:5px}
.charge-timing{display:block;font-size:9px;line-height:1.4;font-weight:500;color:rgba(255,255,255,.75);letter-spacing:.035em}
.charge-release{display:inline-block;font-size:9px;margin-top:7px;border:1px solid rgba(255,255,255,.2);border-radius:5px;padding:5px 7px;color:var(--paper)}
.charge-precision{display:block;margin-top:8px;font-size:9px;line-height:1.5;color:var(--mint)}
.charge-precision.reduced{color:#f1c06a}
.shot-charge p{font-size:8px;line-height:1.5;color:rgba(255,255,255,.5);margin:7px 0 0}
.shot-charge.ready{border-color:var(--lime)}
.shot-charge.ready .charge-timing{color:var(--lime)}
.shot-key.charging{color:var(--lime)}
.shot-key.charging kbd{border-color:var(--lime);background:rgba(213,244,119,.2)}
.smash-note{border-top:1px solid rgba(255,255,255,.13);font-size:10px;padding-top:12px}
#powerBar{background:var(--lime)}
.practice-current{flex-wrap:wrap;row-gap:5px}
@media(max-height:740px) and (min-width:760px){.shot-charge{bottom:100px;padding:11px 15px}.smash-note{font-size:9px}}
@media(max-width:760px){.shot-charge{bottom:106px;width:290px;padding:11px 13px}.smash-note{font-size:9px}}

/* Version 04 — équipement et choix explicite des coups. */
.equipment-button{display:flex;align-items:center;justify-content:space-between;gap:15px;width:100%;margin:-5px 0 13px;padding:12px 14px;text-align:left;color:var(--paper);border:1px solid rgba(213,244,119,.28);border-radius:9px;background:rgba(213,244,119,.055)}
.equipment-button:hover{background:rgba(213,244,119,.12);border-color:var(--lime)}
.equipment-button strong{display:block;font-size:11px;font-weight:500}.equipment-button small{display:block;font-size:9px;color:rgba(255,255,255,.56);margin-top:5px}.equipment-button>span:last-child{color:var(--lime);font-size:24px;font-weight:300}
.wardrobe-dialog,.catalog-dialog{width:min(920px,calc(100vw - 40px));padding:28px 30px}.wardrobe-dialog h2,.catalog-dialog h2{font-size:34px;margin:15px 0 10px}.wardrobe-dialog>p,.catalog-dialog>p{max-width:700px;margin-bottom:18px;font-size:12px}
.wardrobe-tabs{display:flex;gap:20px;border-bottom:1px solid rgba(255,255,255,.16);margin:0 0 18px}.wardrobe-tabs button{font-size:12px;border:0;border-bottom:2px solid transparent;padding:11px 0;background:none;color:rgba(255,255,255,.6)}.wardrobe-tabs button[aria-selected=true]{color:var(--lime);border-bottom-color:var(--lime)}
.player-configs{display:grid;grid-template-columns:1fr 1fr;gap:16px}.player-config{border:1px solid rgba(255,255,255,.14);border-radius:12px;padding:18px;background:rgba(255,255,255,.025)}.player-config-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:19px}.player-config-heading h3{margin:0;font-size:17px;font-weight:500;letter-spacing:-.02em}.player-config-heading>span{font-size:8px;letter-spacing:.06em;color:var(--mint);border:1px solid rgba(66,217,196,.25);border-radius:20px;padding:5px 8px}
.player-fields{display:grid;grid-template-columns:1fr 1fr;gap:13px 12px}.player-fields label{min-width:0;display:flex;flex-direction:column;gap:7px;font-size:9px;color:rgba(255,255,255,.6)}.player-fields select{width:100%;max-width:none;padding:9px 8px;font-size:12px;border:1px solid rgba(255,255,255,.09)}
.racket-profile{display:flex;gap:15px;align-items:center;border-top:1px solid rgba(255,255,255,.12);padding:18px 0 10px;margin-top:18px}.racket-profile strong{font-size:12px;color:var(--lime);font-weight:500}.racket-profile p{font-size:10px;line-height:1.5;margin:7px 0 0;color:rgba(255,255,255,.55)}.racket-shape{display:block;position:relative;width:34px;height:40px;flex-shrink:0;background:radial-gradient(circle,rgba(20,43,45,.9) 1px,transparent 2px) 0 0/7px 7px,var(--mint);border:2px solid rgba(255,255,255,.8);border-radius:50%;margin:0 4px 8px}.racket-shape:after{content:'';position:absolute;left:12px;bottom:-12px;width:7px;height:13px;border-radius:0 0 3px 3px;background:var(--paper)}.racket-shape.teardrop{height:44px;border-radius:50% 50% 43% 43%;background-color:var(--lime)}.racket-shape.diamond{height:42px;border-radius:15% 15% 35% 35%;transform:rotate(-6deg);background-color:var(--coral)}
.profile-stats{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}.profile-stats span{font-size:8px;padding:5px 7px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.06);border-radius:4px;color:rgba(255,255,255,.65)}.pair-insight{font-size:11px;line-height:1.6;color:var(--mint);margin:15px 0 9px}.dialog .settings-caption{font-size:9px;line-height:1.6;color:rgba(255,255,255,.46);margin:12px 0 15px}.wardrobe-dialog>.play-button,.catalog-dialog>.play-button{margin-top:17px;padding:16px 19px}
.catalog-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:22px;align-items:stretch}.shot-catalog{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;align-content:start}.catalog-shot{min-height:74px;text-align:left;background:rgba(255,255,255,.035);color:white;border:1px solid rgba(255,255,255,.14);border-radius:8px;padding:12px 10px;transition:.15s}.catalog-shot:hover{background:rgba(255,255,255,.075)}.catalog-shot[aria-pressed=true]{background:rgba(213,244,119,.11);border-color:var(--lime)}.catalog-shot small{display:block;font-size:7px;text-transform:uppercase;letter-spacing:.09em;color:rgba(255,255,255,.42);margin-bottom:9px}.catalog-shot strong{display:block;font-size:12px;font-weight:500;line-height:1.35}.catalog-shot[aria-pressed=true] strong{color:var(--lime)}
.shot-detail{border:1px solid rgba(255,255,255,.1);border-radius:10px;background:rgba(0,0,0,.11);padding:18px 20px}.shot-detail .eyebrow{font-size:8px}.shot-detail h3{font-size:24px;font-weight:500;letter-spacing:-.04em;margin:13px 0 18px}.shot-detail-row{margin:0 0 13px}.shot-detail-row strong{font-size:9px;letter-spacing:.04em;color:var(--mint);font-weight:500}.shot-detail-row p{font-size:11px;line-height:1.5;margin:5px 0 0;color:rgba(255,255,255,.72)}.shot-detail .shot-tip{font-size:10px;line-height:1.55;margin:17px 0 0;padding-top:14px;border-top:1px solid rgba(255,255,255,.12);color:var(--lime)}
.loadout-tag{margin-top:11px;border-top:1px solid rgba(255,255,255,.08);padding-top:9px;display:flex;flex-direction:column;gap:9px;color:rgba(255,255,255,.56);font-size:8px}.energy-wrap{display:flex;align-items:center;gap:7px;font-size:7px}.energy-wrap>i{height:3px;background:rgba(255,255,255,.12);width:68px;border-radius:3px;overflow:hidden}.energy-wrap b{display:block;background:var(--mint);height:100%;width:100%}.energy-wrap small{font-size:7px;font-variant-numeric:tabular-nums}.feedback-card{top:350px}.control-strip{gap:10px;max-width:calc(100vw - 40px);flex-wrap:wrap;justify-content:center}.selector-key{display:flex;align-items:center;gap:5px;white-space:nowrap;font-size:9px;padding:3px 0;color:rgba(255,255,255,.62);background:none;border:0}.selector-key:hover{color:var(--lime)}.selector-key kbd{height:22px;font-size:9px}.chosen-technique{color:var(--mint)}.chosen-technique kbd{border-color:rgba(66,217,196,.4)}.shot-key.available{color:var(--lime)}
@media(max-width:1100px){.feedback-card{top:340px}.control-strip{gap:8px;padding:10px 12px}.control-pair{font-size:8px}.shot-key{gap:4px}.shot-key kbd{padding:0 4px}.selector-key{font-size:8px}.control-strip .strip-divider{margin:0}.wardrobe-dialog,.catalog-dialog{width:850px}}
@media(max-height:740px) and (min-width:760px){.feedback-card{top:325px}.wardrobe-dialog,.catalog-dialog{padding:24px}.wardrobe-dialog h2,.catalog-dialog h2{font-size:29px}.player-config{padding:14px}.catalog-shot{min-height:65px}.shot-detail{padding:15px}.equipment-button{padding:9px 12px;margin-bottom:11px}}
@media(max-width:760px){.player-configs,.catalog-layout{grid-template-columns:1fr}.wardrobe-dialog,.catalog-dialog{width:100%;padding:22px}.wardrobe-dialog h2,.catalog-dialog h2{font-size:27px}.shot-catalog{grid-template-columns:repeat(3,minmax(0,1fr))}.catalog-shot{min-height:65px}.catalog-shot strong{font-size:11px}.catalog-shot small{font-size:6px}.feedback-card{top:310px}.loadout-tag{font-size:7px}.control-strip{gap:7px}.selector-key{font-size:8px}.is-playing .bottom-bar{padding-bottom:18px}.contact-status,.shot-charge{bottom:135px}.toast{bottom:235px}}
.menu-pad-hint{font-size:8px;line-height:1.5;text-align:center;color:var(--mint);margin:0 0 12px}
.racket-shape.diamond{background:none;border:0;transform:none}.racket-shape.diamond:before{content:'';position:absolute;inset:0;background:radial-gradient(circle,rgba(20,43,45,.9) 1px,transparent 2px) 0 0/7px 7px,var(--coral);clip-path:polygon(50% 0,100% 25%,90% 72%,50% 100%,10% 72%,0 25%)}

/* Charge and contact timing stay in separate, simultaneously readable areas. */
.practice-format{font-size:8px;line-height:1.5;letter-spacing:.04em;color:var(--mint);margin-bottom:11px}
.shot-charge{left:auto;right:38px;bottom:118px;transform:none;width:232px;max-width:calc(100vw - 32px);padding:13px 15px 12px}
.shot-charge .charge-heading{font-size:7px;gap:7px}
.shot-charge .charge-timing{font-size:8px;line-height:1.5}
.shot-charge .charge-release{font-size:8px}
.is-charging .toast{opacity:0}
@media(max-width:1100px){.shot-charge{right:27px;width:220px}}
@media(max-width:900px){.shot-charge{bottom:254px;right:24px;width:210px;padding:11px 13px}.shot-charge p{display:none}.charge-meter{margin:8px 0}.charge-release{margin-top:5px}.contact-status{bottom:135px}}
@media(max-height:640px) and (min-width:901px){.shot-charge{bottom:100px;width:210px}.is-charging .practice-coach{visibility:hidden}}
@media(max-width:760px){.shot-charge{bottom:254px;right:16px}.shot-charge .charge-timing{font-size:8px}.contact-status{bottom:135px}}
@media(max-width:520px){.shot-charge{right:16px;bottom:auto;top:88px;width:calc(100vw - 231px);min-width:132px;padding:10px}.is-charging .scoreboard{width:195px}.shot-charge .charge-heading{flex-wrap:wrap;gap:5px}.shot-charge .charge-release{font-size:7px;padding:4px}.shot-charge .charge-timing{font-size:7px}}

/* Version 05 — all strokes share a charge and slice is an explicit modifier. */
.effect-toggle{border-left:1px solid rgba(255,255,255,.2);padding-left:10px}
.effect-toggle.active{color:var(--mint)}
.effect-toggle.active kbd{border-color:var(--mint);background:rgba(66,217,196,.16)}
.effect-note{border-top:1px solid rgba(255,255,255,.13);font-size:10px}
.control-strip{gap:9px}.control-strip kbd{font-size:9px}
.shot-charge .charge-heading strong{line-height:1.5}
@media(max-width:1100px){.control-strip{gap:7px}.control-strip kbd{font-size:8px}.control-pair{display:none}}

/* Training stance guides and unified effect command, version 06. */
.training-shot-select{display:flex;flex-direction:column;gap:6px;margin-top:11px;font-size:9px;color:rgba(255,255,255,.72)}
.training-shot-select select{pointer-events:auto;max-width:none;width:100%;min-width:0;padding:8px;font-size:10px}
.training-shot-select small{font-size:8px;line-height:1.45;color:rgba(255,255,255,.48)}
.practice-coach .training-shot-select{border-top:1px solid rgba(255,255,255,.12);padding-top:11px}
.practice-coach .practice-placement{font-size:10px;color:var(--mint);line-height:1.5;margin:10px 0 5px}
.practice-contact-height{display:block;font-size:8px;color:rgba(255,255,255,.56);line-height:1.5;margin-bottom:10px}
.stance-legend{margin-top:8px}.stance-legend i{background:rgba(66,217,196,.2);border:2px solid var(--mint);width:12px;height:8px;border-radius:50%}
@media(max-height:740px) and (min-width:761px){.practice-coach #practiceCoachText{display:none}.practice-coach .practice-placement{font-size:9px}.practice-coach .training-shot-select{margin-top:8px;padding-top:8px}.practice-settings p{display:none}.is-training .menu-panel h1{font-size:44px}}
@media(max-width:760px){.is-training.is-playing .practice-coach{display:block;top:auto;bottom:254px;right:16px;width:190px;padding:10px 12px}.practice-coach>.eyebrow,.practice-coach>#practiceCoachTitle,.practice-coach>#practiceCoachText,.practice-coach>.marker-legend{display:none}.practice-coach .training-shot-select{margin:0;padding:0;border:0}.practice-coach .practice-placement{font-size:9px}.practice-contact-height{margin:0;font-size:7px}.is-charging .practice-coach{visibility:hidden}}
.net-target-button{pointer-events:auto;display:flex;align-items:center;gap:7px;grid-column:1 / -1;color:var(--mint);background:rgba(66,217,196,.06);border:1px solid rgba(66,217,196,.35);border-radius:6px;padding:7px;font-size:8px;text-align:left}.net-target-button.active{color:var(--lime);border-color:var(--lime)}.net-target-button kbd{height:19px;font-size:8px}.aim-hint:has(.net-target-button:not([hidden])){display:grid;grid-template-columns:auto 1fr}.aim-hint:has(.net-target-button:not([hidden]))~.practice-coach{top:229px}
@media(max-width:760px){.aim-hint:has(.net-target-button:not([hidden])){display:flex;top:88px;right:16px;padding:8px;width:145px}.aim-hint:has(.net-target-button:not([hidden]))>.target-icon,.aim-hint:has(.net-target-button:not([hidden]))>div{display:none}.aim-hint:has(.net-target-button:not([hidden]))~.practice-coach{top:auto}.net-target-button{font-size:8px;padding:5px}}

/* Version 07 — commandes fixes et score en jeux / sets. */
.scoreboard{width:306px}.score-column-labels{display:grid;grid-template-columns:27px 31px 31px;gap:5px;text-align:center;white-space:nowrap}.score-row{gap:7px}.score-row .sets{width:27px;flex-shrink:0;text-align:center;font-size:15px;color:rgba(255,255,255,.65)}.score-row .games{width:31px;flex-shrink:0;text-align:center;margin:0;font-size:16px}.score-row strong{width:31px;flex-shrink:0}.team-name{position:relative}.team-name small{display:block;margin:3px 0 0}.server-dot{display:inline-block;width:5px;height:5px;margin-left:6px;background:var(--lime);border-radius:50%;vertical-align:middle}.set-history{border-top:1px solid rgba(255,255,255,.1);padding-top:8px;font-size:8px;color:rgba(255,255,255,.66);font-variant-numeric:tabular-nums;line-height:1.5}.service-info{margin-top:9px;padding:7px 8px;background:rgba(255,255,255,.05);border-radius:5px;font-size:8px;line-height:1.4;color:rgba(255,255,255,.75)}.service-info.ready{color:var(--lime);background:rgba(213,244,119,.08)}.feedback-card{top:405px}.is-training .scoreboard{width:270px}.is-training .feedback-card{top:350px}.sprint-pair,.combo-hint{display:flex;align-items:center;gap:5px;white-space:nowrap;font-size:9px;color:rgba(255,255,255,.67)}.combo-hint kbd{color:var(--mint)}.control-strip{gap:8px}.net-target-button{touch-action:none}
@media(max-width:1100px){.scoreboard{width:289px}.feedback-card{top:395px}.is-training .scoreboard{width:251px}.is-training .feedback-card{top:340px}.control-strip{gap:7px}.combo-hint{font-size:8px}}
@media(max-width:760px){.scoreboard{width:244px}.score-column-labels{grid-template-columns:24px 24px 25px;gap:3px}.score-row{gap:4px}.score-row .sets,.score-row .games{width:24px;font-size:13px}.score-row strong{width:25px}.score-row .team-name{font-size:8px}.team-name small{display:none}.score-heading{letter-spacing:.04em}.service-info{font-size:7px}.feedback-card{top:362px}.is-training .scoreboard{width:215px}.is-training .feedback-card{top:310px}.sprint-pair,.combo-hint{font-size:8px}.is-charging:not(.is-training) .scoreboard{width:244px}}
@media(max-width:520px){.is-charging:not(.is-training) .shot-charge{top:385px;right:16px;min-width:132px;width:150px}.is-charging:not(.is-training) .feedback-card{max-width:calc(100vw - 194px);min-width:140px}.control-strip{gap:7px}.control-strip .combo-hint{display:none}}

/* Readable precision feedback: the aim remains an intention, not a guarantee. */
.aim-hint .aim-precision{display:block;margin-top:5px;font-size:8px;color:var(--mint);line-height:1.5}.aim-hint .aim-precision.reduced{color:#f1c06a}.aim-hint .aim-precision.fragile{color:var(--coral)}
/* Match effort and difficult recovery feedback. */
.energy-wrap #energyState{margin-left:auto;min-width:34px;text-align:right;color:var(--mint)}
.energy-wrap.low b{background:#f1c06a}.energy-wrap.low #energyState{color:#f1c06a}
.energy-wrap.exhausted b{background:var(--coral)}.energy-wrap.exhausted #energyState{color:var(--coral)}
.energy-wrap.sprinting:not(.low) #energyState{color:var(--lime)}
.contact-status.compromised,.shot-charge.compromised{border-color:rgba(241,192,106,.65);color:#f1c06a}
.shot-charge.compromised .charge-timing{color:#f1c06a}
.contact-mode-setting{margin:0 0 17px;padding:11px 12px;border:1px solid rgba(213,244,119,.24);border-radius:8px;background:rgba(18,42,46,.36)}
.contact-mode-setting label{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:10px;color:rgba(255,255,255,.75)}
.contact-mode-setting select{max-width:none;min-width:0;width:70%;font-size:10px;padding:8px 6px}
.contact-mode-setting small{display:block;margin-top:7px;font-size:9px;line-height:1.5;color:rgba(255,255,255,.62)}
.pause-contact-mode{margin-bottom:19px}.contact-mode-tag{font-size:7px;letter-spacing:.07em;margin-top:10px;color:var(--mint)}
.auto-contact-copy{display:none}.auto-contact .auto-contact-copy{display:initial}.auto-contact div.auto-contact-copy{display:block}.auto-contact .manual-contact-copy{display:none}
.shot-charge.prepared{border-color:rgba(66,217,196,.6)}.shot-charge.prepared .charge-release{color:var(--mint);border-color:rgba(66,217,196,.25)}
.cancel-prepared-button{pointer-events:auto;display:flex;align-items:center;gap:6px;width:100%;margin-top:9px;padding:6px 7px;border:1px solid rgba(255,255,255,.2);border-radius:5px;background:rgba(255,255,255,.04);color:rgba(255,255,255,.75);font-size:8px;text-align:left}
.cancel-prepared-button:hover{background:rgba(255,255,255,.1);color:white}.cancel-prepared-button kbd{height:18px;min-width:20px;font-size:8px}
@media(max-height:740px){.contact-mode-setting{padding:8px 10px;margin-bottom:11px}.contact-mode-setting small{font-size:8px;margin-top:5px}}
.mode-switch{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.mode-option{width:auto;padding:12px 8px}.mode-title{font-size:11px;white-space:normal;line-height:1.35}.mode-desc{font-size:8px;white-space:normal;line-height:1.4}.court-dimensions{font-size:9px;line-height:1.5;color:rgba(255,255,255,.65);margin:10px 1px 0}.single-player-config{grid-template-columns:minmax(0,1fr);max-width:510px;margin-inline:auto}.is-singles .wardrobe-dialog{max-width:630px}
.audio-settings{margin:0 0 20px;padding:13px 15px;border:1px solid rgba(255,255,255,.16);border-radius:9px;background:rgba(255,255,255,.025);text-align:left}.audio-setting-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:11px}.audio-setting-heading strong{font-weight:500}.audio-toggle,.audio-test{font-size:10px;color:var(--mint);border:1px solid rgba(66,217,196,.3);background:rgba(66,217,196,.05);border-radius:5px;padding:6px 9px}.audio-toggle[aria-pressed="false"]{color:rgba(255,255,255,.65);border-color:rgba(255,255,255,.2);background:transparent}.audio-volume{display:flex;align-items:center;gap:10px;margin:12px 0 9px;font-size:10px;color:rgba(255,255,255,.7)}.audio-volume input{flex:1;min-width:80px;accent-color:var(--mint)}.audio-volume output{min-width:36px;text-align:right;font-variant-numeric:tabular-nums}.audio-settings>small{display:block;font-size:8px;color:rgba(255,255,255,.5);line-height:1.5;margin-top:8px}.audio-test{font-size:9px;color:rgba(255,255,255,.8);border-color:rgba(255,255,255,.22);background:transparent}.audio-test:disabled{opacity:.35;cursor:default}.help-dialog .audio-settings{margin-top:18px}
.rally-banner{top:111px;transform:translateX(-50%);padding:15px 30px;max-width:430px;min-width:240px}.rally-banner strong{font-size:24px;margin:8px 0}.rally-banner[data-kind="game"]{border-color:rgba(66,217,196,.65);box-shadow:0 0 32px rgba(66,217,196,.12)}.rally-banner[data-kind="set"]{border-color:rgba(206,243,109,.75);background:linear-gradient(120deg,rgba(17,40,43,.94),rgba(48,69,40,.94))}.rally-banner[data-kind="match"]{border-color:var(--lime);box-shadow:0 0 48px rgba(206,243,109,.15);padding:22px 38px}.rally-banner[data-kind="match"] strong{font-size:34px;color:var(--lime)}.rally-banner.opponent-wins{border-color:rgba(237,139,109,.6)}.rally-banner.opponent-wins>span,.rally-banner.opponent-wins[data-kind="match"] strong{color:var(--coral)}
@media(max-width:900px){.rally-banner{top:100px;left:auto;right:22px;transform:none;max-width:240px;min-width:0;padding:13px 18px}.rally-banner strong{font-size:21px}.rally-banner[data-kind="match"]{padding:16px 20px}.rally-banner[data-kind="match"] strong{font-size:27px}}
@media(max-width:600px){.rally-banner{top:auto;bottom:180px;left:50%;right:auto;transform:translateX(-50%);width:min(300px,90vw)}.mode-option{padding-inline:6px}.mode-title{font-size:10px}.mode-desc{font-size:8px}.audio-settings{padding:11px;margin-bottom:15px}}
/* Multiplayer keeps the established court controls and a compact connection status. */
.multiplayer-entry{width:100%;margin-top:10px;border-color:rgba(209,238,123,.45);color:var(--lime,#d1ee7b)}
.network-status{position:absolute;top:77px;left:50%;transform:translateX(-50%);max-width:min(80vw,560px);text-align:center;padding:7px 15px;border:1px solid rgba(111,233,214,.3);border-radius:20px;background:rgba(25,57,51,.88);color:#c5f9de;font-size:10px;letter-spacing:.06em;pointer-events:none}
.network-status.waiting{color:#f8d199;border-color:rgba(248,209,153,.5)}
.network-status[hidden]{display:none}
.is-network #pauseNetworkHint{font-size:12px;color:#9cbaac}
@media(max-width:700px){.network-status{top:68px;font-size:9px;max-width:80vw}.is-network .rally-banner{top:108px}}

/* Home v27: configure and launch one match together; club navigation stays separate. */
#app.is-menu{min-height:0}
.is-menu .court-label{display:none}
#menuPanel{top:112px;bottom:60px;left:6%;right:auto;width:440px;max-width:calc(100vw - 48px);max-height:none;min-height:0;padding:0 10px 6px 0;transform:none;display:flex;flex-direction:column;gap:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:rgba(213,244,119,.5) transparent;scroll-padding-block:12px;overscroll-behavior:contain}
.is-playing #menuPanel{transform:translateX(-25px)}
.is-playing .home-club{display:none}
#menuPanel .menu-welcome{flex:none}
#menuPanel h1{font-size:clamp(52px,5.4vw,74px);line-height:1.02;margin:12px 0 13px}
#menuPanel .menu-intro{font-size:13px;line-height:1.6;margin:0 0 22px;color:rgba(255,255,255,.7)}
.home-club{position:fixed;top:22px;right:194px;width:350px;display:grid;grid-template-columns:.85fr 1.15fr;gap:9px;z-index:4}
.home-club .club-shortcut{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:5px;min-width:0;min-height:57px;padding:10px 14px;border:1px solid rgba(255,255,255,.2);border-radius:10px;background:rgba(17,43,44,.84);backdrop-filter:blur(12px);color:var(--paper);font-size:12px;font-weight:600;text-align:left;transition:background .2s,border-color .2s}
.home-club .club-shortcut:hover{background:#244345;border-color:rgba(213,244,119,.7)}
.home-club .club-shortcut>small{font-size:9px;line-height:1.4;color:#b4c6be}
.home-club .shop-entry-balance{padding-left:28px;font-size:9px}
.home-club .shop-entry-balance strong{font-size:10px}
.home-club .wardrobe-entry>small{padding-left:28px}
#menuPanel .quick-play{flex:none;border:1px solid rgba(213,244,119,.24);border-radius:14px;background:rgba(17,42,43,.9);box-shadow:0 12px 32px rgba(4,24,26,.16);overflow:hidden}
.quick-play-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 18px 15px}
.home-kicker{display:block;font-size:8px;font-weight:600;letter-spacing:.15em;color:#a0b8aa}
.quick-play-heading h2{font-size:20px;letter-spacing:-.035em;font-weight:500;margin:7px 0 0}
.quick-play-badge{font-size:9px;color:#c5d2b6;white-space:nowrap;border:1px solid rgba(213,244,119,.16);border-radius:20px;padding:6px 9px;background:rgba(213,244,119,.04)}
#menuPanel .menu-scroll{max-height:min(350px,calc(100dvh - 410px));min-height:132px;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:rgba(213,244,119,.62) rgba(255,255,255,.04);scrollbar-gutter:stable;padding:0 12px 0 18px;scroll-padding-block:12px}
#menuPanel .menu-scroll:focus-visible{outline:2px solid rgba(213,244,119,.75);outline-offset:-2px;border-radius:5px}
#menuPanel .mode-switch{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;padding:4px;background:rgba(4,23,26,.3);border-color:rgba(255,255,255,.16)}
#menuPanel .mode-option{min-width:0;width:auto;padding:12px 7px}
#menuPanel .mode-option.active{background:#d5f477;color:var(--ink);box-shadow:none}
#menuPanel .mode-option:hover:not(.active){background:rgba(255,255,255,.07);color:white}
#menuPanel .mode-title{font-size:11px;line-height:1.4;white-space:normal}
#menuPanel .mode-desc{font-size:8px;line-height:1.4;white-space:normal;opacity:.75;margin-top:4px}
#menuPanel .court-dimensions{font-size:9px;color:#a4b7ad;line-height:1.5;margin:10px 1px 0}
#menuPanel .menu-settings{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:11px;margin:14px 1px 13px}
#menuPanel .menu-settings select{max-width:148px;min-height:32px;padding:7px 9px;border:1px solid rgba(255,255,255,.14)}
#menuPanel .practice-settings{margin-top:0;margin-bottom:8px}
#menuPanel .contact-mode-setting{padding:11px 12px;margin-bottom:12px}
.quick-play-launch{padding:14px 18px 18px;border-top:1px solid rgba(255,255,255,.09);background:rgba(213,244,119,.025)}
#menuPanel .quick-play .play-button{min-height:52px;padding:16px 18px;font-size:13px}
#menuPanel .menu-launch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:12px 0 0;flex:none}
#menuPanel .home-destinations>button{display:flex;align-items:center;gap:9px;min-width:0;min-height:84px;margin:0;padding:14px 12px;border-radius:11px;text-align:left;grid-column:auto}
#menuPanel .home-destinations .career-entry{border:1px solid rgba(232,187,124,.36);background:linear-gradient(115deg,rgba(94,72,43,.64),rgba(47,54,42,.9));color:#f2dbb4}
#menuPanel .home-destinations .career-entry .currency-icon-gold{width:24px;height:24px;color:#e0b176}
#menuPanel .home-destinations .multiplayer-entry{border:1px solid rgba(255,255,255,.22);background:rgba(23,47,48,.88);color:#f2f7ee}
#menuPanel .home-destinations .multiplayer-entry:hover{background:rgba(45,72,68,.96)}
#menuPanel .home-destinations>button>span{display:flex;flex:1;min-width:0;flex-direction:column;gap:6px}
#menuPanel .home-destinations strong{font-size:12px;line-height:1.3}
#menuPanel .home-destinations small{font-size:9px;line-height:1.5;font-weight:400;color:inherit;opacity:.72}
#menuPanel .home-destinations b{font-size:17px;font-weight:400;align-self:flex-start;opacity:.8}
.friends-icon{width:24px;height:24px;flex:none;color:#a5c8b7}
#menuPanel .menu-assistance{flex:none;padding:10px 0 2px;text-align:center}
#menuPanel .menu-input{margin:5px 0;flex-wrap:wrap;font-size:9px;gap:7px}
#menuPanel .menu-pad-hint{font-size:9px;line-height:1.6;margin:9px 0}
#menuPanel #menuHelp{display:inline-flex;gap:8px;align-items:center;margin:0 auto;padding:8px 0;font-size:10px}
#menuPanel .small-screen-note{position:static;left:auto;right:auto;bottom:auto;margin:8px 0 0;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);padding:9px;font-size:9px;line-height:1.5;text-align:left}
@media(max-width:1100px){#menuPanel{left:4%;width:420px;top:100px;bottom:48px}.home-club{right:170px;top:19px;width:330px}}
@media(max-height:800px){#menuPanel{top:96px;bottom:42px}#menuPanel h1{font-size:46px;letter-spacing:-.055em;margin:9px 0 10px}#menuPanel h1 br{display:none}#menuPanel .menu-intro{font-size:12px;margin-bottom:16px}.quick-play-heading{padding-block:14px 12px}.quick-play-heading h2{font-size:18px}.quick-play-launch{padding-top:12px;padding-bottom:14px}#menuPanel .quick-play .play-button{min-height:48px;padding-block:13px}#menuPanel .home-destinations>button{min-height:77px;padding-block:11px}}
@media(max-width:760px){.home-club{top:76px;left:20px;right:20px;width:auto;max-width:420px;grid-template-columns:1fr 1.15fr}.home-club .club-shortcut{min-height:54px;padding:8px 12px;font-size:11px}#menuPanel{left:20px;right:20px;top:151px;bottom:40px;width:auto;max-width:430px;padding-right:6px}#menuPanel h1{font-size:43px;margin:8px 0 10px}#menuPanel h1 br{display:none}#menuPanel .menu-intro{font-size:11px;margin-bottom:15px}#menuPanel .menu-scroll{max-height:min(290px,calc(100dvh - 450px));min-height:132px;padding-left:14px;padding-right:8px}#menuPanel .mode-title{font-size:10px}#menuPanel .mode-option{padding:10px 6px}#menuPanel .menu-settings{font-size:10px;gap:6px}.quick-play-heading{padding-inline:14px}.quick-play-launch{padding-inline:14px}#menuPanel .home-destinations>button{gap:7px;padding-inline:10px}#menuPanel .home-destinations strong{font-size:11px}#menuPanel .home-destinations small{font-size:8px}#menuPanel .home-destinations b{display:none}.is-menu .bottom-bar{padding:12px 20px}.is-menu .bottom-bar .connection-badge{font-size:6px}}
@media(max-width:380px){#menuPanel,.home-club{left:14px;right:14px;max-width:calc(100vw - 28px)}#menuPanel h1{font-size:38px}#menuPanel .menu-settings .settings-separator{display:none}#menuPanel .menu-settings select{max-width:128px}#menuPanel .quick-play-badge{font-size:8px;padding:5px 7px}#menuPanel .home-destinations>button>svg{width:20px;height:20px}}
@media(max-height:560px) and (min-width:761px){.is-menu .topbar{height:65px;padding-block:12px}#menuPanel{top:76px;bottom:30px;width:420px}#menuPanel .eyebrow,#menuPanel .menu-intro{display:none}#menuPanel h1{font-size:34px;margin:0 0 12px}.home-club{top:10px}#menuPanel .menu-scroll{max-height:144px;min-height:126px}.quick-play-heading{padding-block:10px}.quick-play-heading .home-kicker{display:none}.quick-play-heading h2{margin:0}.quick-play-launch{padding-block:10px}.is-menu .bottom-bar{padding-block:6px}}

/* Version 19 — collection visible et aperçu fidèle au personnage en jeu. */
.wardrobe-dialog{display:flex;flex-direction:column;padding:0;max-height:calc(100dvh - 40px);overflow:hidden}
.wardrobe-header{position:relative;flex:none;padding:24px 28px 0}
.wardrobe-header .eyebrow{font-size:8px;padding-right:24px}.wardrobe-header h2{margin:13px 36px 10px 0}.wardrobe-header>p{font-size:11px;line-height:1.6;color:rgba(255,255,255,.65);margin:0 40px 7px 0;max-width:660px}
.wardrobe-header .wardrobe-tabs{margin:0 0 15px}.wardrobe-scroll{min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(213,244,119,.4) transparent;padding:0 28px 20px}
.wardrobe-scroll .player-configs{align-items:start}.wardrobe-scroll .player-config{min-width:0;padding:15px}.wardrobe-scroll .player-config-heading{margin-bottom:12px}
.wardrobe-preview{margin:0 0 15px;border-radius:8px;background:#e6ebe1;position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) 102px;align-items:center;color:var(--ink)}
.wardrobe-avatar-preview{display:block;width:100%;height:230px;min-width:0}.wardrobe-racket-preview{align-self:stretch;border-left:1px solid rgba(20,43,45,.12);padding:13px 9px 9px;display:flex;flex-direction:column;justify-content:center;align-items:center;background:rgba(255,255,255,.3)}
.wardrobe-racket-preview svg{display:block;width:84px;height:154px;overflow:visible}.wardrobe-racket-preview>span{text-align:center;font-size:9px;line-height:1.45;font-weight:600;margin-top:8px;max-width:100%;overflow-wrap:anywhere}
.wardrobe-preview figcaption{grid-column:1/-1;display:flex;flex-direction:column;gap:4px;padding:10px 12px;background:rgba(20,43,45,.07);border-top:1px solid rgba(20,43,45,.1)}.wardrobe-preview figcaption strong{font-size:12px;font-weight:600}.wardrobe-preview figcaption>span{font-size:10px;line-height:1.45;opacity:.75}
.wardrobe-appearance-fields{grid-template-columns:minmax(0,1fr);gap:10px}.wardrobe-appearance-fields label{gap:5px}.wardrobe-appearance-fields select{font-size:11px;padding:9px 10px}.wardrobe-scroll .racket-profile{margin-top:12px;padding:12px 0 3px}.wardrobe-scroll .racket-profile p{margin-top:5px}
.wardrobe-gameplay{border-top:1px solid rgba(255,255,255,.1);margin-top:12px;padding-top:12px}.wardrobe-gameplay summary{font-size:10px;color:var(--mint);cursor:pointer;line-height:1.5}.wardrobe-gameplay summary:focus-visible{outline:2px solid var(--lime);outline-offset:5px}.wardrobe-gameplay .player-fields{margin:15px 0}.wardrobe-gameplay .profile-stats{gap:4px}.wardrobe-gameplay .profile-stats span{line-height:1.4}
.wardrobe-collection-note{font-size:10px;line-height:1.6;color:rgba(255,255,255,.55);margin:15px 0 10px}
.wardrobe-footer{flex:none;padding:13px 28px 20px;border-top:1px solid rgba(255,255,255,.12);background:var(--ink)}.wardrobe-footer>span{display:block;font-size:9px;line-height:1.4;color:rgba(255,255,255,.55);margin-bottom:9px}.wardrobe-footer .play-button{padding:14px 18px;font-size:12px}
@media(max-height:740px){.wardrobe-header{padding-top:18px}.wardrobe-header h2{font-size:27px;margin-top:10px}.wardrobe-header>p{font-size:10px}.wardrobe-header .wardrobe-tabs{margin-bottom:11px}.wardrobe-header .wardrobe-tabs button{padding:9px 0}.wardrobe-footer{padding-block:10px 14px}.wardrobe-footer>span{display:none}.wardrobe-avatar-preview{height:215px}}
@media(max-width:760px){.wardrobe-dialog{width:100%;max-height:calc(100dvh - 24px);padding:0}.wardrobe-header{padding-inline:18px}.wardrobe-header>p{margin-right:0}.wardrobe-scroll{padding-inline:14px}.wardrobe-footer{padding-inline:18px}.wardrobe-preview{grid-template-columns:minmax(0,1fr) 100px}.wardrobe-avatar-preview{height:230px}.wardrobe-header h2{font-size:26px}.wardrobe-header .wardrobe-tabs{gap:22px}}

/* Shared currency imagery stays readable at every wallet/price size. */
.currency-icon{display:inline-block;flex:none;width:24px;height:24px;object-fit:contain;vertical-align:middle}.currency-icon-vibos{transform:scale(1.35)}.currency-price-inline{display:inline-flex;align-items:center;gap:5px}.currency-price-inline .currency-icon{width:21px;height:21px}.toast .currency-icon{width:19px;height:19px;margin:0 2px;vertical-align:-5px}
.home-club .shop-entry-balance{font-size:8px;letter-spacing:0;padding-left:28px}.home-club .shop-entry-balance strong{font-size:10px}#shopBtn .shop-entry-mark .currency-icon{width:20px;height:20px}

/* Portable progression: explicit preview and confirmation before replacement. */
#menuPanel .menu-assistance .text-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;margin-inline:9px}#menuPanel .menu-assistance .save-entry{color:#c9d8be}
.save-dialog{position:fixed;inset:0;margin:auto;padding:0;width:min(610px,calc(100vw - 30px));max-height:calc(100dvh - 30px);min-height:0;border:1px solid #526b60;border-radius:17px;background:#142b2d;color:#edf2e6;box-shadow:0 25px 100px #0008;overflow:hidden;font:inherit}.save-dialog:not([open]){display:none}.save-dialog[open]{display:flex;flex-direction:column}.save-dialog::backdrop{background:#06191bd9;backdrop-filter:blur(9px)}.save-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:26px 28px 20px;border-bottom:1px solid #3a544c}.save-eyebrow{margin:0 0 9px;font-size:8px;letter-spacing:.15em;color:#d5ebaa}.save-header h2{font:35px Georgia,serif;letter-spacing:-.03em;margin:0}.save-close{width:34px;height:34px;flex:none;border:1px solid #71816e88;border-radius:50%;background:transparent;color:#e6edde;font-size:25px}.save-body{padding:23px 28px;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}.save-body>p{font-size:12px;line-height:1.6;color:#b8c9bd;margin:0 0 18px}.save-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.save-actions button{display:flex;flex-direction:column;align-items:flex-start;gap:7px;padding:16px;border:1px solid #68805d;border-radius:9px;background:#d5f4770c;color:#e2edc7;text-align:left;line-height:1.5}.save-actions strong{font-size:12px}.save-actions span{font-size:10px;color:#abbfae}.save-actions button:hover{border-color:#d5f477;background:#d5f47719}.save-body .save-details{font-size:10px;margin:16px 0 22px;color:#9db6aa}.save-preview{padding:18px;margin-top:20px;border:1px solid #658664;border-radius:9px;background:#31524440}.save-preview h3{margin:0 0 8px;font-size:13px;font-weight:600;color:#e0efc5}.save-preview>strong{display:block;font-size:17px;margin:13px 0;color:#f2f6e9}.save-preview p{font-size:10px;line-height:1.6;margin:6px 0;color:#b2c6b9}.save-balances{display:flex;gap:18px;flex-wrap:wrap;margin:10px 0 13px}.save-balances>span{display:flex;align-items:center;gap:5px;font-size:10px;color:#dbe5c8}.save-balances b{font-size:14px;color:#f0f4df}.save-balances .currency-icon{width:27px;height:27px}.save-confirmation{margin:18px 0}.save-confirmation label{display:flex;align-items:flex-start;gap:10px;font-size:11px;line-height:1.65;color:#d4decb}.save-confirmation input{flex:none;margin-top:3px;accent-color:#d5f477}.save-primary{width:100%;margin-top:15px;padding:13px 18px;border:1px solid #d5f477;border-radius:7px;background:#d5f477;color:#19362d;font-size:12px;font-weight:600}.save-primary:disabled{background:#53654577;border-color:#637454;color:#a7b39b;cursor:not-allowed}.save-body .save-status{padding:12px 14px;margin:18px 0 0;border-radius:7px;background:#42654345;color:#e3f5c9;font-size:11px}.save-body .save-error{padding:12px 14px;margin:18px 0 0;border:1px solid #9e705888;border-radius:7px;background:#70473655;color:#ffe1ca;font-size:11px}.save-restore{margin-top:22px;background:none;border:0;border-bottom:1px solid #acb48d77;padding:0 0 3px;color:#c9cfaf;font-size:10px}.save-footer{flex:none;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:16px 28px;border-top:1px solid #3a544c;background:#11272a}.save-footer span{font-size:9px;line-height:1.5;color:#a8beaf}.save-footer button{flex:none;padding:9px 14px;border:1px solid #8da178;border-radius:6px;background:#d5f47710;color:#e8f0d6;font-size:11px}.save-dialog button:focus-visible,.save-dialog input:focus-visible{outline:2px solid #d5f477;outline-offset:4px}.save-dialog [hidden]{display:none!important}
@media(max-width:520px){.save-header{padding:21px 19px 17px}.save-header h2{font-size:30px}.save-body{padding:20px 18px}.save-actions{grid-template-columns:1fr;gap:9px}.save-actions button{padding:13px 14px;gap:3px}.save-body>p{font-size:11px}.save-footer{padding:13px 18px}.save-preview{padding:14px}.save-balances{gap:10px}.save-confirmation label{font-size:10px}.save-footer span{font-size:8px}}

/* PadelUp: compact icon-only currency balances on the home shortcut. */
.home-club .home-wallets{display:flex;align-items:center;flex-wrap:wrap;gap:6px 14px;padding-left:28px}
.home-wallet{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}
.home-wallet .currency-icon{display:block;width:22px;height:22px;object-fit:contain}
#shopBtn .shop-entry-mark{color:var(--lime)}
#shopBtn .shop-entry-mark svg{display:block;width:20px;height:20px}

/* Public guides stay inside the scrollable home panel. */
.padelup-about{font-size:12px;line-height:1.5;color:var(--muted,#b8c8c5);margin:12px 0 6px}.padelup-guides{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:12px;line-height:1.6}.padelup-guides a{color:inherit;text-underline-offset:3px}.padelup-guides a:hover{color:#d9ef85}

/* Public guides stay visible outside the scrollable game menu. */
.site-discovery{position:absolute;top:32px;left:260px;display:flex;gap:8px;z-index:5;font-size:11px}.site-discovery-menu{position:relative}.site-discovery-menu summary{display:flex;align-items:center;gap:12px;list-style:none;cursor:pointer;padding:11px 13px;border:1px solid #ffffff30;border-radius:8px;background:#142e2ee8;color:#f5f4e9;font-weight:600;white-space:nowrap}.site-discovery-menu summary::-webkit-details-marker{display:none}.site-discovery-menu summary:focus-visible,.discovery-links a:focus-visible{outline:2px solid #d5f477;outline-offset:3px}.site-discovery-menu[open] summary{border-color:#d5f47780}.discovery-links{position:absolute;top:calc(100% + 8px);left:0;min-width:205px;padding:9px;background:#163332;border:1px solid #ffffff30;border-radius:9px;box-shadow:0 16px 40px #0005}.discovery-links a{display:block;padding:9px 12px;color:#f5f4e9;text-decoration:none;border-radius:5px}.discovery-links a:hover{background:#ffffff0e;color:#d5f477}.discovery-label{display:block;padding:6px 12px;font-size:9px;color:#a9beb5}.is-playing .site-discovery{display:none}
@media(max-width:1100px){.site-discovery{top:88px;left:4%}#menuPanel{top:143px}}
@media(max-width:760px){.site-discovery{top:140px;left:20px}#menuPanel{top:194px}.site-discovery-menu summary{padding:9px 12px}.discovery-links{min-width:180px}}
@media(max-height:560px) and (min-width:761px){.site-discovery{top:74px;left:auto;right:30px}#menuPanel{top:76px}}
.site-discovery-menu:last-child .discovery-links{left:auto;right:0}
