@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800;900&family=DM+Sans:wght@400;500;600;700;800&display=swap');
:root{--blue:#163ed4;--navy:#122450;--yellow:#eafa69;--muted:#667087;--paper:#fafbf6}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--navy);font-family:'DM Sans',sans-serif}button,input,textarea{font:inherit}button,a,input,textarea{outline-offset:5px}button{cursor:pointer}button:disabled{cursor:default;opacity:.55}a{color:inherit}.topbar,main,footer{max-width:1120px;margin:auto}.topbar{height:100px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #dde1da}.brand{display:flex;gap:12px;align-items:center;font-size:15px;font-weight:800;letter-spacing:1px;text-decoration:none}.brand small{display:block;font-size:9px;color:var(--muted);letter-spacing:1.6px;margin-top:5px}.crest{display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1;background:var(--navy);color:white;width:39px;height:48px;clip-path:polygon(0 0,100% 0,100% 70%,50% 100%,0 70%);font-size:12px}.crest span{font-size:23px}.team-tag{font-size:12px;display:flex;align-items:center;gap:8px;border:1px solid #d9dfd3;border-radius:30px;padding:9px 14px}.team-tag>span{background:var(--blue);width:7px;height:7px;border-radius:50%}.intro{position:relative;padding:50px 0 35px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:800}h1,h2{font-family:'Barlow Condensed','Arial Narrow',Impact,sans-serif;letter-spacing:-.7px}h1{font-size:86px;line-height:.93;margin:17px 0 0;font-weight:800;max-width:610px}.title-number{color:var(--blue)}.dot{color:var(--blue)}.intro>p{position:absolute;left:65%;top:78px;font-size:16px;line-height:1.7}.hand-note{position:absolute;left:65%;bottom:26px;color:var(--blue);font-size:12px;transform:rotate(-4deg);font-weight:700}.hand-note span{font-size:34px;padding-left:15px}.lottery{display:grid;grid-template-columns:1.05fr 1fr;background:white;border-radius:22px;overflow:hidden;border:1px solid #e2e6df;box-shadow:0 10px 35px #182a5005}.player-stage{position:relative;background:var(--blue);min-height:495px;overflow:hidden}.pitch-markings{position:absolute;inset:25px;border:1px solid #ffffff22;border-radius:5px}.pitch-markings:after{content:'';position:absolute;width:260px;height:260px;border:1px solid #ffffff22;border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%)}.stage-tag{position:absolute;top:28px;left:30px;font-size:9px;letter-spacing:1.7px;color:white;border:1px solid #ffffff55;border-radius:30px;padding:8px 12px;z-index:2}.giant-eleven{position:absolute;font-family:'Barlow Condensed',Impact,sans-serif;font-size:400px;line-height:1;left:35px;top:40px;color:#ffffff15;font-weight:900;transform:rotate(-8deg)}.jonny-front{position:absolute;height:460px;max-width:100%;object-fit:contain;bottom:-5px;left:50%;transform:translateX(-50%);filter:drop-shadow(0 8px 20px #06175655)}.player-stage:after{content:'';position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#0c258bdd);pointer-events:none}.player-caption{position:absolute;bottom:27px;left:30px;z-index:3;color:white}.player-caption small{display:block;font-size:9px;letter-spacing:2px;color:var(--yellow)}.player-caption strong{display:block;font-family:'Barlow Condensed',Impact,sans-serif;font-size:35px;margin:4px 0}.player-caption>span{font-size:11px;color:#d6e1ff}.draw-panel{padding:35px 38px}.draw-panel>.eyebrow{color:var(--blue)}h2{font-size:35px;line-height:1.05;margin:12px 0}.draw-panel h2{font-size:43px}.draw-panel>p{color:var(--muted);font-size:13px;line-height:1.65;max-width:320px}.date-label{display:flex;align-items:center;justify-content:space-between;background:var(--paper);padding:13px 15px;border:1px solid #e3e7dd;border-radius:10px;font-size:11px;font-weight:700;margin:22px 0 12px}.date-label input{border:0;background:transparent;color:var(--navy);font-size:13px;max-width:160px;min-height:24px}.draw-button{width:100%;background:var(--yellow);border:0;border-radius:10px;padding:17px 18px;display:flex;gap:12px;align-items:center;justify-content:center;color:var(--navy);font-weight:800;font-size:16px;box-shadow:0 3px 0 #c8d550;transition:transform .15s,background .15s}.draw-button:hover:enabled{transform:translateY(-2px);background:#def34e}.draw-button>span:first-child{font-size:25px}.draw-button>span:last-child{margin-left:auto}.draw-panel .draw-hint{text-align:center;font-size:10px;max-width:none;margin:13px 0 24px}.fair-note{display:flex;gap:13px;border-top:1px solid #e4e7df;padding-top:19px}.fair-note>span{font-size:27px;color:var(--blue)}.fair-note strong{font-size:11px}.fair-note p{font-size:10px;color:var(--muted);line-height:1.7;margin:5px 0 0}.draw-status{font-size:12px;color:var(--blue);margin-bottom:10px}.draw-status:empty{display:none}.section{padding:37px 0 30px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.section-heading h2{margin:9px 0 0;font-size:31px}.section-heading .eyebrow{font-size:9px;color:var(--muted)}.text-button{background:transparent;border:0;color:var(--blue);font-size:11px;font-weight:700;padding:10px 0}.text-button span{margin-left:8px}.section-copy{font-size:12px;color:var(--muted);margin:13px 0 23px}.squad-list{display:flex;gap:9px;flex-wrap:wrap}.child{background:white;border:1px solid #dce3d8;border-radius:40px;display:flex;gap:10px;align-items:center;padding:10px 15px 10px 9px;color:var(--navy);font-size:12px;font-weight:700;transition:transform .15s}.child:hover:enabled{transform:translateY(-2px)}.child .avatar{width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:#e8edff;color:var(--blue);font-size:10px}.child .eligible-dot{width:6px;height:6px;background:var(--blue);border-radius:50%}.child.waiting .eligible-dot{background:#c3cabd}.child.absent{background:#f0f2ec;color:#93998f}.child.absent .avatar{background:#e2e6dd;color:#8a9285}.child.absent .eligible-dot{background:transparent;border:1px solid #aab2a3}.squad-meta{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);margin-top:18px;gap:15px}.legend-dot{display:inline-block;height:5px;width:5px;background:var(--blue);border-radius:50%;margin:0 4px 2px 10px}.legend-dot.waiting{background:#c3cabd}.history{border-top:1px solid #e0e5da}.count-label{font-size:10px;background:#eef1e8;border-radius:30px;padding:8px 12px}.empty-history{margin-top:22px;border:1px dashed #d4dccc;border-radius:13px;text-align:center;padding:30px;color:var(--muted);font-size:12px}.empty-history span{display:block;font-size:26px;color:var(--blue);margin-bottom:8px}.history-row{display:flex;align-items:center;gap:16px;background:white;border:1px solid #e2e6dd;border-radius:12px;margin-top:12px;padding:15px 19px}.mini-shirt{background:var(--blue);color:white;clip-path:polygon(22% 0,38% 0,50% 8%,62% 0,78% 0,100% 20%,84% 44%,76% 38%,76% 100%,24% 100%,24% 38%,16% 44%,0 20%);width:39px;height:38px;display:grid;place-items:center;font-family:'Barlow Condensed',sans-serif;font-size:23px;font-weight:800}.history-person{flex:1}.history-person strong{font-size:13px}.history-person small{display:block;margin-top:4px;color:var(--muted);font-size:10px}.status-pill{font-size:10px;color:#46714e;background:#edf5e9;border-radius:20px;padding:6px 9px}.status-pill.reserved{background:#fff8df;color:#847125}.remove-entry{border:0;background:transparent;color:var(--muted);padding:7px;font-size:16px}.storage-note{font-size:10px;color:var(--muted);text-align:center;margin:20px 0 0}.team-message{margin:10px 0 35px;display:flex;gap:20px;justify-content:center;align-items:center;background:#edf1e7;padding:25px;border-radius:14px;position:relative}.team-message>span:first-child{font-size:37px;transform:rotate(-15deg)}.team-message p{margin:0;font-size:14px;line-height:1.6}.team-message strong{font-size:18px}.message-star{position:absolute;right:60px;font-size:33px;color:var(--blue)}footer{padding:24px 0 30px;border-top:1px solid #dce2d5;display:flex;justify-content:space-between;align-items:center;font-size:11px;font-weight:700}footer small{display:block;color:var(--muted);font-size:9px;font-weight:400;margin-top:6px}dialog{border:1px solid #e0e5d8;border-radius:20px;padding:35px;color:var(--navy);width:min(480px,90vw);box-shadow:0 15px 100px #00134433}dialog::backdrop{background:#07163799;backdrop-filter:blur(4px)}dialog p,dialog label{font-size:13px;line-height:1.7}dialog h2{margin-top:10px}.close-dialog{position:absolute;right:15px;top:12px;font-size:26px;border:0;background:none;color:var(--navy)}textarea{width:100%;resize:vertical;border:1px solid #ced5c5;padding:12px;border-radius:8px;margin-top:12px;color:var(--navy)}#team-error{color:#b13636}.confirm-button{background:var(--blue);color:white;border:0;border-radius:10px;width:100%;padding:15px;font-weight:700;margin-top:10px}.winner-photo{position:absolute;inset:0;z-index:2;background:#12345b;container-type:inline-size}.winner-photo img{width:100%;height:100%;object-fit:cover;object-position:53% center}.photo-tag{position:absolute;left:20px;bottom:24px;font-size:9px;letter-spacing:1px;color:white;background:#123dcd;padding:10px;border-radius:20px}.player-stage.winner:after,.winner .player-caption{display:none}.confetti{position:absolute;inset:0;pointer-events:none;z-index:6}.confetti i{position:absolute;top:-20px;width:8px;height:13px;background:var(--yellow);animation:fall 2.2s ease-out forwards}@keyframes roll{to{transform:rotate(372deg)}}@keyframes bounce{to{transform:translate(-50%,-8px) rotate(2deg)}}@keyframes fall{to{transform:translateY(570px) rotate(660deg);opacity:0}}[hidden]{display:none!important}@media(min-width:800px){.winner-photo img{width:auto;max-width:none;position:absolute;left:53%;transform:translateX(-53%)}}@media(max-width:1180px){.topbar,main,footer{margin-left:30px;margin-right:30px}}@media(max-width:760px){.topbar{height:80px}.topbar,main,footer{margin-left:20px;margin-right:20px}.intro{padding:32px 0 27px}h1{font-size:66px}.intro>p{position:static;font-size:13px;line-height:1.5;margin-top:20px}.hand-note{display:none}.lottery{grid-template-columns:1fr}.player-stage{min-height:340px}.jonny-front{height:380px;bottom:-50px}.giant-eleven{font-size:300px;left:50px;top:10px}.player-caption strong{font-size:29px}.player-caption>span{font-size:10px}.player-caption{left:22px}.stage-tag{left:22px;top:20px}.draw-panel{padding:27px 24px}.draw-panel h2{font-size:39px}.draw-panel>p{max-width:none}.section-heading{align-items:flex-start}.section-heading h2{font-size:28px}.section-heading .eyebrow{font-size:8px;letter-spacing:1.2px}.squad-meta{flex-direction:column}.child{padding-right:12px}.history-row{padding:12px;gap:10px}.status-pill{font-size:9px}.team-message{justify-content:flex-start;padding:22px}.team-message strong{font-size:15px}.message-star{right:23px;font-size:24px}footer{align-items:flex-start;gap:12px}footer .text-button{font-size:9px;padding:0}.winner-photo img{object-fit:cover}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
/* Der Kindername deckt den Originalnamen auf dem Rücken vollständig ab. */

.winner .stage-tag,.winner .jonny-front{visibility:hidden}

.club-logo{width:49px;height:49px;object-fit:contain}.personalized-photo{display:block;width:100%;height:100%;position:absolute;inset:0}.jersey-print{fill:#f7f6ed;font-family:'Barlow Condensed','Arial Narrow',sans-serif;font-weight:800;letter-spacing:.8px}.winner-photo{container-type:normal}.ball-icon{width:25px;height:25px;flex-shrink:0}.mascot-host{position:absolute;z-index:4;right:-8px;bottom:-22px;width:148px;transition:all .45s ease}.mascot-host img{display:block;width:100%;filter:drop-shadow(0 5px 8px #071e6233)}.mascot-bubble{position:absolute;right:24px;top:-13px;padding:10px 12px;border-radius:14px 14px 2px 14px;background:var(--yellow);color:var(--navy);font-size:10px;font-weight:800;white-space:nowrap;rotate:6deg}.player-caption{max-width:70%}.player-caption>span{max-width:235px;display:block;line-height:1.6}.raffle-scene{position:absolute;inset:0;z-index:5;opacity:0;visibility:hidden;transition:opacity .25s;pointer-events:none}.rolling .raffle-scene{opacity:1;visibility:visible}.rolling .jonny-front,.rolling .player-caption,.rolling .giant-eleven,.rolling .stage-tag{opacity:0}.rolling .mascot-host{width:235px;right:auto;left:-30px;bottom:-15px;transform:rotate(-6deg);animation:mascot-cheer .7s ease-in-out infinite alternate}.rolling .mascot-bubble{display:none}.raffle-kicker{position:absolute;top:45px;left:0;right:0;text-align:center;color:var(--yellow);letter-spacing:2px;font-size:10px;font-weight:700}.raffle-drum{position:absolute;width:225px;height:225px;right:25px;top:115px;border-radius:50%;background:radial-gradient(circle at 35% 20%,#ffffff35,#ffffff0a 65%);border:3px solid #b7d7ff;box-shadow:inset 0 0 0 10px #8ec6ff18,0 15px 30px #0b239966}.raffle-drum:after{content:'';position:absolute;width:110px;height:15px;border-radius:50%;background:#091f7966;bottom:-37px;left:50%;transform:translateX(-50%)}.drum-ring{position:absolute;inset:15px;border-radius:50%;border:1px dashed #ffffff66;animation:drum-turn 3s linear infinite}.raffle-window{position:absolute;inset:40px 12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;overflow:hidden;mask-image:linear-gradient(transparent,black 22%,black 78%,transparent)}.raffle-window span{font-family:'Barlow Condensed',sans-serif;font-size:28px;font-weight:700;letter-spacing:.5px;color:#e0edff88;transform:rotate(-5deg)}.raffle-window span:last-child{transform:rotate(5deg)}.raffle-window strong{width:166px;background:var(--yellow);color:var(--navy);padding:7px 10px;border-radius:6px;text-align:center;font-family:'Barlow Condensed',sans-serif;font-size:35px;line-height:1.2;box-shadow:0 5px 0 #091e8044;transform:rotate(-3deg)}.paper{position:absolute;background:#fff4cc;width:27px;height:15px;border-radius:3px;opacity:.8}.paper-one{top:19px;left:50px;animation:ticket-tumble 1s infinite}.paper-two{bottom:20px;right:50px;animation:ticket-tumble 1.3s infinite reverse}.paper-three{top:80px;right:15px;animation:ticket-tumble .9s infinite}.raffle-caption{position:absolute;bottom:45px;right:18px;max-width:210px;color:white;text-align:center;font-size:12px;line-height:1.5}.winner .mascot-host{display:none}.winner-photo{animation:reveal-jersey .7s ease-out}.rolling.player-stage:after{opacity:0}.draw-panel .draw-status{font-size:14px;font-weight:700}@keyframes drum-turn{to{transform:rotate(360deg)}}@keyframes ticket-tumble{50%{transform:translate(6px,15px) rotate(95deg)}100%{transform:translate(0,0) rotate(180deg)}}@keyframes mascot-cheer{to{transform:rotate(1deg) translateY(-7px)}}@keyframes reveal-jersey{from{opacity:0;transform:scale(1.06)}to{opacity:1;transform:scale(1)}}@media(max-width:760px){.club-logo{width:43px;height:43px}.mascot-host{width:120px;bottom:-20px;right:-8px}.mascot-bubble{right:18px;font-size:9px;top:-11px;padding:9px}.player-caption{max-width:65%;bottom:20px}.player-caption>span{max-width:200px}.rolling .mascot-host{width:180px;left:-22px;bottom:-10px}.raffle-kicker{top:27px;font-size:9px}.raffle-drum{width:190px;height:190px;top:76px;right:14px}.raffle-window{inset:31px 9px;gap:6px}.raffle-window strong{width:145px;font-size:30px}.raffle-window span{font-size:22px}.raffle-caption{bottom:27px;right:17px;max-width:160px;font-size:10px}.raffle-drum:after{bottom:-20px}}
.mascot-host,.raffle-scene{transition:none}.player-stage{scroll-margin-top:20px}
/* Weniger Text, mehr Platz für die Auslosung. */
.topbar{height:80px}.intro{padding:28px 0 30px}.intro h1{font-size:72px;margin:0}.draw-panel{display:flex;flex-direction:column;justify-content:center}.draw-panel h2{margin-top:0}.draw-panel>p:empty{display:none}.draw-panel .draw-hint:empty{display:none}.draw-panel .draw-hint{margin:12px 0 0}.draw-panel .fair-short{font-size:11px;line-height:1.5;margin:22px 0 0;padding-top:16px;border-top:1px solid #e4e7df;max-width:none}.section-heading h2{margin-top:0}.section-copy{margin:10px 0 19px}.history{padding-bottom:32px}.player-caption strong{margin:0}.mascot-bubble{right:30px}.section{padding-top:30px}.draw-panel .date-label{margin-top:20px}@media(max-width:760px){.intro h1{font-size:60px}.intro{padding:25px 0}.draw-panel{padding:25px 24px}.draw-panel h2{font-size:36px}.draw-panel .fair-short{font-size:10px;margin-top:18px}.section-heading h2{font-size:27px}}
/* Android / iPhone: Safe Areas, echte Tippflächen und flexible Inhalte. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px)}
button,a,input{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.history-person,.section-heading>div,.draw-panel{min-width:0}
.history-person strong,.draw-panel h2{overflow-wrap:anywhere}
.history-confirm{white-space:nowrap}
@media(hover:none){.draw-button:hover:enabled{transform:none;background:var(--yellow)}.child:hover:enabled{transform:none}}
@media(max-width:760px){
  .topbar,main,footer{margin-left:16px;margin-right:16px}
  .topbar{height:66px;gap:12px}
  .brand{gap:9px;font-size:13px;letter-spacing:.8px;min-height:48px}
  .club-logo{width:41px;height:41px;flex-shrink:0}
  .team-tag{padding:8px 10px;font-size:11px;white-space:nowrap;flex-shrink:0}
  .intro{padding:20px 0 23px}
  .intro h1{font-size:clamp(44px,13.5vw,60px);line-height:.98}
  .lottery{border-radius:18px;grid-template-columns:minmax(0,1fr)}
  .player-stage{height:clamp(252px,74vw,310px);min-height:0;scroll-margin-top:12px}
  .jonny-front{height:calc(100% + 40px);bottom:-40px;left:46%}
  .giant-eleven{font-size:270px;top:0;left:20px}
  .pitch-markings{inset:18px}
  .pitch-markings:after{width:200px;height:200px}
  .player-caption{left:18px;bottom:18px;max-width:64%}
  .player-caption strong{font-size:clamp(23px,6.8vw,29px)}
  .mascot-host{width:112px;bottom:-19px;right:-7px}
  .mascot-bubble{right:22px;top:-10px;padding:8px 10px;font-size:10px}
  .rolling .mascot-host{width:clamp(145px,43vw,185px);left:-20px;bottom:-12px}
  .raffle-kicker{top:20px;font-size:10px}
  .raffle-drum{width:clamp(160px,47vw,195px);height:clamp(160px,47vw,195px);right:13px;top:62px}
  .raffle-window{inset:26px 8px;gap:5px}
  .raffle-window strong{width:82%;font-size:29px;overflow-wrap:anywhere}
  .raffle-window span{font-size:23px}
  .draw-panel{padding:22px 20px 19px;justify-content:flex-start}
  .draw-panel h2{font-size:34px;line-height:1.05;margin:0}
  .draw-panel .date-label{margin:17px 0 12px;padding:5px 12px;min-height:52px;font-size:13px;gap:8px}
  .date-label input{font-size:16px;min-height:44px;width:160px;min-width:0;max-width:65%;text-align:right;color-scheme:light}
  .draw-button,.confirm-button{min-height:54px;padding:14px 16px;font-size:16px;line-height:1.3}
  .confirm-button{margin-top:0}
  .draw-panel .draw-hint{font-size:12px;margin-top:10px;line-height:1.5}
  .draw-panel .fair-short{font-size:12px;margin-top:17px;padding-top:13px;line-height:1.5}
  .section{padding-top:25px;padding-bottom:25px}
  .section-heading{align-items:center;gap:10px}
  .section-heading h2{font-size:27px;line-height:1.1}
  .text-button{font-size:12px;min-height:48px;padding:10px 8px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
  .section-copy{font-size:12px;margin:5px 0 15px;line-height:1.5}
  .squad-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .child{min-height:52px;min-width:0;width:100%;padding:9px 10px;gap:8px;text-align:left;font-size:13px}
  .child .avatar{flex-shrink:0;width:28px;height:28px;font-size:10px}
  .child>span:nth-child(2){flex:1;min-width:0;overflow-wrap:anywhere;line-height:1.35}
  .child .eligible-dot{flex-shrink:0;width:7px;height:7px}
  .squad-meta{gap:10px;font-size:12px;line-height:1.5;margin-top:15px}
  .squad-meta .legend-dot:first-child{margin-left:0}
  .count-label{font-size:11px;white-space:nowrap;padding:8px 10px;flex-shrink:0}
  .history-row{display:grid;grid-template-columns:32px minmax(0,1fr) auto 44px;column-gap:7px;row-gap:4px;padding:12px 10px;margin-top:10px;align-items:center}
  .mini-shirt{grid-column:1;grid-row:1 / 3;width:32px;height:34px;font-size:22px}
  .history-person{grid-column:2 / 4;grid-row:1;align-self:center}
  .history-person strong{font-size:14px;line-height:1.4}
  .history-person small{font-size:12px;line-height:1.4;margin-top:2px;overflow-wrap:anywhere}
  .status-pill{grid-column:2;grid-row:2;justify-self:start;font-size:10px;padding:5px 7px;max-width:100%}
  .history-confirm{grid-column:3;grid-row:2;min-height:44px;font-size:12px;padding:8px 5px}
  .remove-entry{grid-column:4;grid-row:1 / 3;min-width:44px;min-height:48px;align-self:center;font-size:24px;border-radius:8px}
  .empty-history{font-size:13px;padding:24px 12px;line-height:1.5}
  footer{padding:10px 0 max(16px,env(safe-area-inset-bottom,0px));align-items:center;font-size:12px}
  footer .text-button{font-size:12px;padding:10px 12px;min-width:48px;min-height:48px}
  dialog{width:calc(100% - 32px);max-width:480px;padding:26px 20px 20px;border-radius:18px;max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));overflow-y:auto;overscroll-behavior:contain}
  dialog h2{font-size:32px;line-height:1.1;padding-right:24px;margin-top:4px}
  dialog p,dialog label{font-size:14px;line-height:1.6;overflow-wrap:anywhere}
  dialog a{text-underline-offset:3px}
  .close-dialog{top:5px;right:5px;width:44px;height:44px;font-size:28px;line-height:1}
  textarea{font-size:16px;line-height:1.5;min-height:150px;height:clamp(150px,32dvh,280px);max-height:45dvh;padding:12px;scroll-margin-block:20px}
  #remove-cancel{width:100%;margin-top:6px}
}
@media(max-width:350px){
  .topbar,main,footer{margin-left:12px;margin-right:12px}
  .brand{font-size:12px;gap:7px}.team-tag{font-size:10px;padding:7px 8px}
  .draw-panel{padding-left:16px;padding-right:16px}.draw-panel h2{font-size:31px}
  .section-heading h2{font-size:24px}.section-heading .text-button{font-size:11px;padding-inline:4px}
  .history-row{column-gap:5px;padding-inline:8px;grid-template-columns:28px minmax(0,1fr) auto 44px}
  .mini-shirt{width:28px}.status-pill{font-size:9px;padding-inline:5px}.history-confirm{font-size:11px;padding-inline:3px}
}
@media(max-height:500px) and (orientation:landscape) and (max-width:1000px){
  .topbar{height:58px}.intro{padding:14px 0 18px}.intro h1{font-size:44px;line-height:.95}
  .lottery{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .player-stage{height:auto;min-height:285px}.draw-panel{padding:20px;justify-content:center}.draw-panel h2{font-size:30px}
  .draw-panel .date-label{margin-top:14px}.draw-panel .fair-short{margin-top:14px;font-size:11px}
  dialog{max-height:calc(100dvh - 24px)}
}
@media(pointer:coarse){
  .text-button,.remove-entry,.close-dialog{min-height:48px;min-width:44px}
  .date-label input,textarea{font-size:16px}
  .date-label input{min-height:44px}
}
@media(max-height:500px) and (orientation:landscape) and (max-width:1000px){
  .text-button,.remove-entry,.close-dialog{min-height:48px;min-width:44px}
  .date-label{min-height:52px;padding:5px 12px;gap:8px}
  .date-label input{font-size:16px;min-height:44px;min-width:0}
  .draw-button,.confirm-button{min-height:54px;font-size:16px}
  dialog{overflow-y:auto;overscroll-behavior:contain;padding:24px;max-height:calc(100dvh - 24px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px))}
  textarea{font-size:16px;min-height:100px;height:30dvh;max-height:45dvh}
}
.date-label input::-webkit-date-and-time-value{text-align:right}
