:root{--bg: #f4f3eb;--ink: #14392e;--green: #18674e;--lime: #dcf887;--gold: #f4d27a}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,sans-serif}button,select{font:inherit}button{cursor:pointer;border:0;border-radius:13px;padding:14px 20px;font-weight:700;transition:transform .15s,background .15s}.button-link{display:inline-block;border-radius:13px;padding:14px 20px;font-weight:700;text-decoration:none}button:hover:not(:disabled){transform:translateY(-2px)}button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid #b0700f;outline-offset:4px}button:disabled{cursor:default;opacity:.5}header{max-width:1120px;margin:auto;padding:25px 24px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #d9dfd3}.brand{display:flex;gap:12px;font-size:27px;font-weight:900;color:inherit;text-decoration:none}.brand small{display:block;font-size:9px;letter-spacing:2px;margin-top:4px}main{max-width:1120px;margin:auto;padding:28px 24px}.topline,.section-heading,.section-label{display:flex;justify-content:space-between;align-items:center;gap:12px}.topline{font-size:13px}.badge{display:inline-block;border-radius:30px;background:#e3e8d8;padding:8px 13px;font-weight:700}.intro{margin:30px 0}.intro h1{font-size:clamp(38px,6vw,64px);line-height:1.02;letter-spacing:-2px;margin:0}.intro em{font-style:normal;color:#388568}.intro p{color:#607468;line-height:1.7}nav{display:flex;gap:8px;margin-bottom:23px;border-bottom:1px solid #d5dccc;padding-bottom:16px}nav button{background:transparent;color:#617164}nav .active{background:var(--ink);color:#fff}.game-layout{display:grid;grid-template-columns:1.65fr 1fr;gap:22px}.exercise{background:#fff;border:1px solid #e2e6d9;border-radius:24px;padding:30px;text-align:center;min-height:438px}.section-label{font-size:13px;font-weight:700;color:#667769}.exercise h2{font-size:23px;margin:35px 0 12px}#equation{font-size:clamp(45px,7vw,70px);font-weight:800;letter-spacing:3px;color:var(--ink);margin:15px 0 28px}#choices{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}#choices button{font-size:30px;background:#f1f4eb;color:var(--ink);border:2px solid #e1e7d8;padding:18px 5px}#choices button:hover{border-color:var(--green)}#feedback{min-height:44px;margin-top:20px;font-weight:700;color:#35734e;line-height:1.6}.quiet{background:transparent;color:var(--ink)}.reward{background:var(--ink);color:#fff;border-radius:24px;padding:26px;text-align:center}.reward .section-label{color:#d4e8bd}.pack-art{width:148px;height:191px;margin:24px auto;background:linear-gradient(135deg,#e0f89a,#a1d661);clip-path:polygon(0 0,100% 0,100% 86%,50% 100%,0 86%);color:#173d30;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;transform:rotate(-7deg);box-shadow:0 10px 25px #0003}.pack-art strong{font-size:46px}.pack-art span{font-size:11px;letter-spacing:2px;font-weight:900}.pack-art small{font-size:10px}.reward h2{font-size:22px;margin:12px 0}.reward p{color:#d2dfcd;font-size:14px}.primary{background:var(--lime);color:#163c2c;width:100%;margin-top:14px}progress{width:100%;height:9px;accent-color:var(--lime)}.encourage{padding:24px;text-align:center;color:#667565;font-size:13px}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:16px;padding:15px 0}.player{border:1px solid #d7bb62;border-radius:18px 18px 35px 35px;background:linear-gradient(135deg,#fff3be,#e5c35c);padding:15px 8px;text-align:center;color:#47391b;position:relative;min-height:181px}.player.legend{background:linear-gradient(135deg,#f8e6a2,#d5a746,#fff4c6);border:2px solid #b99135}.player .shirt{display:grid;place-items:center;background:#204c3a;color:#f4d27a;clip-path:polygon(25% 0,38% 9%,62% 9%,75% 0,100% 24%,83% 43%,76% 34%,76% 100%,24% 100%,24% 34%,17% 43%,0 24%);width:75px;height:77px;margin:10px auto;font-size:27px;font-weight:700}.player strong{display:block;font-size:18px;margin:8px 0}.player small{display:block}.player.locked{background:#e7e9df;border:1px dashed #bbc4b4;color:#7d8878;display:flex;flex-direction:column;justify-content:center}.pitch{background:repeating-linear-gradient(0deg,var(--pitch-a,#216949) 0 75px,var(--pitch-b,#28734f) 75px 150px);border:9px solid var(--pitch-edge,#17442f);border-radius:24px;min-height:540px;padding:28px 10px;position:relative;display:flex;flex-direction:column;justify-content:space-around;gap:26px}.pitch:before{content:"";position:absolute;top:15px;right:15px;bottom:15px;left:15px;border:2px solid #ffffff50;border-radius:6px;pointer-events:none}.pitch-row{display:flex;justify-content:space-around;gap:5px;z-index:1}.slot{width:100px;min-height:90px;padding:10px 3px;background:#ffffff18;color:#fff;border:1px dashed #d4e9c7;font-size:13px}.slot b{display:block;font-size:27px;margin-bottom:6px}.slot small{display:block;margin-top:6px;color:#d9e9bc}dialog{border:0;border-radius:24px;padding:28px;width:min(580px,92vw);max-height:90vh;box-sizing:border-box;max-height:calc(100dvh - 24px);overflow-y:auto;overscroll-behavior:contain;box-shadow:0 30px 100px #0005;color:var(--ink);background:var(--bg)}dialog::backdrop{background:#071e19d9;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.reveal-content{text-align:center}#revealed .player{max-width:230px;margin:25px auto;min-height:275px;animation:reveal .7s ease-out}#revealed .shirt{width:110px;height:120px}#revealed .player strong{font-size:28px}@keyframes reveal{0%{transform:scale(.4) rotateY(100deg);opacity:0}to{transform:scale(1);opacity:1}}label{display:block;margin:18px 0;font-weight:700}select{display:block;width:100%;padding:12px;margin-top:8px;border:1px solid #bbc7b6;border-radius:8px;background:#fff;color:var(--ink)}footer{font-size:11px;color:#71806f;text-align:center;padding:25px 0}#error{background:#ffe1d2;padding:14px;border-radius:12px}#hintbox{background:#f2f5e9;border-radius:12px;padding:15px;margin-top:10px;line-height:1.8}.balls{font-size:21px;word-break:break-word}.crossed{opacity:.35;text-decoration:line-through}@media (max-width:650px){header{padding:18px}.brand{font-size:22px}main{padding:22px 16px}.intro{margin:25px 0}.game-layout{grid-template-columns:1fr}.exercise{padding:24px 17px;min-height:380px}.reward{padding:22px}.pack-art{width:113px;height:140px;margin:18px auto}.pack-art strong{font-size:32px}nav{gap:2px}nav button{flex:1;padding:13px 4px;font-size:13px}#choices{gap:8px}.cards{grid-template-columns:repeat(2,1fr)}.slot{width:76px;font-size:11px}.pitch{min-height:500px}.topline{font-size:11px}}@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.portrait{display:block;width:100%;height:160px;object-fit:cover;object-position:center 20%;border-radius:12px;margin:12px auto;background:#d9d8c9}.player{overflow:hidden}#revealed .portrait{height:255px;max-width:205px}#revealed .player{max-width:270px}.team-photo{display:block;width:48px;height:48px;object-fit:cover;object-position:center 20%;border-radius:50%;margin:0 auto 6px}.hint-timer{font-size:12px;color:#687465;margin:8px 0}.orange-groups{display:flex;gap:14px;align-items:center;justify-content:center;flex-wrap:wrap}.orange-group{display:flex;flex-wrap:wrap;gap:7px;justify-content:center;padding:10px;border:2px dashed #dbb566;border-radius:13px;max-width:260px}.orange{display:inline-block;position:relative;font-size:30px;line-height:1.4}.orange.removed{animation:take-orange .45s forwards}.orange.removed:after{content:"╳";position:absolute;top:0;right:0;bottom:0;left:0;color:#713e26;font-weight:900;opacity:.9}.together .orange-group{border-color:transparent;background:#e7efd6}.hint-step{background:#f8d999;color:#513b14;margin:14px 0 4px}#hintbox p{margin:8px 0}footer a{color:inherit}@keyframes take-orange{to{opacity:.28;transform:translateY(7px) scale(.85)}}@media (prefers-reduced-motion:reduce){.orange.removed{opacity:.28;transform:translateY(7px) scale(.85)}}.slot .shirt{display:grid;place-items:center;width:42px;height:46px;margin:0 auto 6px;background:var(--shirt-bg,#dcf887);color:var(--shirt-ink,#14392e);text-shadow:0 0 3px #fff8;border-radius:8px;font-size:23px}.finish-note{font-size:13px;color:#607468}nav{flex-wrap:wrap}.match-board{background:var(--board,#173e30);color:#fff;border-radius:20px;padding:20px 26px;margin-bottom:22px}.match-board h2{margin:0;font-size:23px}#matchscore{font-size:32px;font-weight:900}.match-field{height:95px;border:2px solid #ffffff80;border-radius:8px;position:relative;background:repeating-linear-gradient(90deg,var(--pitch-a,#26724c) 0 60px,var(--pitch-b,#2b7d54) 60px 120px);overflow:hidden;direction:ltr}.match-field span{position:absolute;left:var(--ball-progress,10%);top:30px;font-size:32px;transition:left .4s}.match-field b{position:absolute;right:8px;top:25px;font-size:40px}.pass-animation span{animation:pass-ball .85s ease-in-out}.goal-animation span{animation:goal-ball .85s ease-out}.goal-animation{box-shadow:0 0 0 4px #e5d26b}#matchevent{min-height:24px;line-height:1.5}.word-equation{font-size:40px!important;margin:8px!important}#questionprompt{line-height:1.6}#matchstar .player{max-width:190px;margin:auto}#matchresult{text-align:center}.achievement{border:1px dashed #a7b8a0;background:#e9ede2;border-radius:16px;padding:20px;text-align:center}.achievement.earned{background:#fff0b7;border:2px solid #c7a646}.achievement>span{font-size:36px}.achievement h3{font-size:17px}.achievement p{font-size:14px;line-height:1.5}.club-controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px}#learningstats table{border-collapse:collapse;width:100%;font-size:13px}#learningstats th,#learningstats td{padding:10px;border:1px solid #d3dbc9;text-align:center;min-width:65px}#settings{width:min(850px,94vw)}.trophy-total{font-size:23px;grid-column:1/-1}.pitch:after{content:var(--decor, none);position:absolute;top:3px;left:0;right:0;text-align:center;font-size:18px;letter-spacing:6px;pointer-events:none}@keyframes pass-ball{0%{transform:translate(0) rotate(0)}to{transform:translate(60px) rotate(180deg)}}@keyframes goal-ball{to{left:85%;transform:rotate(360deg)}}@media (max-width:650px){.match-board{padding:18px}.match-board h2{font-size:19px}nav button{min-width:22%;font-size:12px}#questionprompt{font-size:21px}}@media (prefers-reduced-motion:reduce){.match-field span{animation:none!important;transition:none!important}}@media (max-width:650px){header{padding:16px}main{padding:16px}.intro{margin:14px 0}.intro h1{font-size:30px;line-height:1.1;letter-spacing:-1px}.intro h1 br{display:none}.intro p{font-size:12px;margin:8px 0}.topline{font-size:10px;gap:8px}nav{margin-bottom:16px;padding-bottom:12px}.match-board{padding:14px;margin-bottom:16px}.match-board h2{font-size:17px}#matchscore{font-size:26px}.match-board p{font-size:13px;margin:10px 0}.match-field{height:62px}.match-field span{top:14px;font-size:26px}.match-field b{top:10px;font-size:32px}.exercise{padding:18px 15px}.exercise h2{margin-top:18px}#equation{margin:12px 0 18px}}input[type=url]{display:block;width:100%;padding:12px;margin-top:8px;border:1px solid #bbc7b6;border-radius:8px;font:inherit}.video-prize{display:block;text-decoration:none;padding:16px;border-radius:12px}.number-hint{font-weight:700;font-size:20px;line-height:1.8;overflow-wrap:anywhere}.portrait-frame{display:block;height:160px;margin:12px auto;border-radius:12px;overflow:hidden;position:relative;background:#d9d8c9}.portrait-frame .portrait{height:100%;margin:0;border-radius:0}.team-portrait-frame{display:block;width:48px;height:48px;border-radius:50%;overflow:hidden;position:relative;margin:0 auto 6px}.team-portrait-frame .team-photo{height:100%;width:100%;margin:0;border-radius:0}#revealed .portrait-frame{height:255px;max-width:205px}#revealed .portrait-frame .portrait{height:100%;max-width:none}.portrait-frame img[src$="/rooney.jpg"],.team-portrait-frame img[src$="/rooney.jpg"]{transform:scale(2.7);transform-origin:89% 44%}.portrait-frame img[src$="/r9.jpg"],.team-portrait-frame img[src$="/r9.jpg"]{object-position:75% 20%}.portrait-frame img[src$="/yashin.jpg"],.team-portrait-frame img[src$="/yashin.jpg"]{transform:scale(2.2);transform-origin:60% 24%}.portrait-frame img[src$="/cannavaro.jpg"],.team-portrait-frame img[src$="/cannavaro.jpg"]{transform:scale(1.4);transform-origin:52% 20%}.portrait-frame img[src$="/valverde.jpg"],.team-portrait-frame img[src$="/valverde.jpg"]{object-position:50% 10%}.portrait-frame img[src$="/henry.jpg"],.portrait-frame img[src$="/iniesta.jpg"],.portrait-frame img[src$="/maldini.jpg"],.portrait-frame img[src$="/casillas.jpg"],.portrait-frame img[src$="/etoo.jpg"],.portrait-frame img[src$="/benzema.jpg"],.portrait-frame img[src$="/zidane.jpg"]{object-position:center top}.question-line{display:flex;align-items:center;justify-content:center;gap:8px}.speak{font-size:24px;padding:6px 12px;margin-top:23px}#hintbox .speak{float:left;margin:0}.bench-area{margin-top:18px;background:#5b3a1e;border-radius:20px;padding:16px;color:#f5e6cc;text-align:center}.bench-area h3{margin:0 0 4px}.bench-area p{margin:0 0 12px;font-size:14px}.bench{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.bench-seat{background:#ffffff1c;border-color:#e9cfa4}.pick{position:relative}.pick-badge{position:absolute;top:-8px;right:8px;z-index:1;background:var(--ink);color:#fff;border-radius:20px;padding:3px 10px;font-size:12px}.header-buttons{display:flex;gap:4px}#matchresult,.celebration{position:relative;overflow:hidden}.fireworks{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.celebration{text-align:center;background:radial-gradient(circle at 50% 35%,#1f5a45,#0b241d 70%);color:#fff}.celebration.locked{background:var(--bg);color:var(--ink)}.celebration-content{position:relative;z-index:1}.achievement-icon{font-size:96px;line-height:1.2;margin:12px 0 0}.celebration.locked .achievement-icon{filter:grayscale(1);opacity:.45}.spin-in{animation:spin-in .9s cubic-bezier(.2,1.4,.4,1)}@keyframes spin-in{0%{transform:scale(.1) rotate(-540deg);opacity:0}to{transform:scale(1) rotate(0);opacity:1}}#achievementprogress progress{height:16px}#achievementremaining{font-weight:700;font-size:20px}.achievement[role=button],.player.tappable{cursor:pointer;transition:transform .15s}.achievement[role=button]:hover,.player.tappable:hover{transform:translateY(-3px)}.card-view .player{max-width:260px;margin:10px auto 20px;min-height:300px;animation:flip-in .8s ease-out}.card-view .player strong{font-size:28px}@keyframes flip-in{0%{transform:perspective(700px) rotateY(180deg) scale(.6);opacity:0}to{transform:perspective(700px) rotateY(0) scale(1);opacity:1}}.celebration .quiet{color:#fff}#choices button.right{background:#d8f5c8;border-color:#3f9a4f;color:#1d5a2a;opacity:1}#choices button.chosen{border-color:#c96b4b;text-decoration:line-through;opacity:.8}.explain{margin-top:16px;padding:18px;border-radius:16px;background:#fff7e6;border:2px solid #f0c977;text-align:center;line-height:1.7}.explain-opening{font-size:20px;font-weight:800;margin:0 0 6px}.explain-solved{font-size:38px;font-weight:900;color:#1d5a2a;margin:4px 0 10px}.explain-again{font-weight:700;color:#35734e}.explain-again:empty{display:none}.explain-tip{font-size:14px;color:#6b5a36}.explain-actions{display:flex;gap:8px;align-items:center}.explain-actions .primary{flex:1;margin-top:0}.video-dialog{width:min(900px,96vw);padding:14px;background:#0b241d}.video-dialog{--video-room: 170px}.video-actions{display:flex;gap:12px;margin-top:12px}.video-actions button{flex:1;margin:0}.video-dialog video{display:block;width:100%;max-height:75vh;max-height:calc(100dvh - var(--video-room));border-radius:12px;background:#000}.code-dialog form{display:grid;gap:12px;min-width:min(320px,80vw)}.code-dialog label{display:grid;gap:8px;font-weight:700}.code-dialog input{font:inherit;font-size:1.8rem;letter-spacing:.4em;text-align:center;padding:10px;border:2px solid var(--green);border-radius:12px}.code-dialog [role=alert]{margin:0;color:#a3261b;font-weight:700}.match-field .ball-svg{display:block}.reward-kind h3{margin:22px 0 8px}.reward-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:10px}.reward-tile{display:grid;justify-items:center;gap:4px;padding:10px 6px;background:#fff;color:var(--ink);border:2px solid #d5dccc;font-size:13px}.reward-tile b{font-size:13px;line-height:1.3}.reward-tile.equipped{border-color:var(--green);box-shadow:0 0 0 3px var(--lime)}.reward-tile.locked{opacity:.55;filter:grayscale(.7)}.reward-tile:disabled{cursor:default}.reward-status{color:#4b6354;font-weight:700}.reward-preview{display:grid;place-items:center;width:64px;height:52px;font-size:22px}.stadium-preview{position:relative;border-radius:8px;border:4px solid var(--pitch-edge);border-top:10px solid var(--board);background:repeating-linear-gradient(90deg,var(--pitch-a) 0 10px,var(--pitch-b) 10px 20px)}.stadium-decor{font-size:11px;letter-spacing:1px;white-space:nowrap;overflow:hidden;max-width:100%}.kit-preview{width:46px;height:50px;font-weight:900;font-size:15px;text-shadow:0 0 3px #fff8;clip-path:polygon(25% 0,75% 0,100% 18%,86% 34%,86% 100%,14% 100%,14% 34%,0 18%)}.celebration-preview{font-size:20px;letter-spacing:2px}.trophy-cabinet{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:8px;padding:12px;border-radius:18px;background:linear-gradient(#5b3a1e,#3f2814)}.trophy-shelf{display:grid;justify-items:center;gap:4px;padding:8px 4px 6px;border-bottom:6px solid #2a1a0c;color:#f3e7cf;text-align:center;font-size:12px}.trophy-shelf:not(.won){opacity:.5}.trophy-shelf.won small{font-weight:800;color:#ffe9a8}.result-unlock{display:grid;gap:10px;margin:12px 0}.unlock-item{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:16px;background:#fff7d6;color:var(--ink);font-weight:800}.unlock-item p{flex:1;margin:0}.celebration-layer{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:50;overflow:hidden}.celebration-layer.active{animation:celebration-flash .6s ease-out}@media (prefers-reduced-motion: reduce){.celebration-layer.active{animation:none}}@keyframes celebration-flash{0%{box-shadow:inset 0 0 80px 20px var(--flash, #e5d26b)}to{box-shadow:inset 0 0 0 0 transparent}}.celebration-piece{position:absolute;left:var(--x);font-size:38px;animation-delay:var(--delay);animation-duration:1.4s;animation-fill-mode:both;animation-timing-function:ease-out}.motion-rain{top:-10%;animation-name:piece-rain}.motion-rise{bottom:-10%;animation-name:piece-rise}.motion-burst{top:45%;left:50%;animation-name:piece-burst}.motion-spiral{top:45%;left:50%;animation-name:piece-spiral}@keyframes piece-rain{to{transform:translateY(115vh) rotate(200deg)}}@keyframes piece-rise{to{transform:translateY(-115vh) scale(1.3);opacity:.2}}@keyframes piece-burst{0%{transform:rotate(var(--spread)) translate(0) scale(.4)}to{transform:rotate(var(--spread)) translate(46vw) scale(1.3);opacity:0}}@keyframes piece-spiral{0%{transform:rotate(var(--spread)) translate(0) rotate(0)}to{transform:rotate(calc(var(--spread) + 300deg)) translate(34vw) rotate(-300deg);opacity:0}}.celebration-banner{position:absolute;top:30%;left:50%;transform:translate(-50%);margin:0;padding:14px 24px;border-radius:20px;background:var(--flash, #e5d26b);color:#14392e;font-size:30px;font-weight:900}.video-title{margin:0;color:#fff;font-weight:800}.video-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.video-close{flex:none;min-width:48px;min-height:48px;border-radius:50%;border:2px solid #ffffff60;background:transparent;color:#fff;font-size:22px;font-weight:900}.video-frame{display:block;width:100%;width:min(100%,calc((100dvh - var(--video-room, 170px)) * 16 / 9));margin-inline:auto;aspect-ratio:16 / 9;border:0;border-radius:12px;background:#000}.video-dialog [hidden]{display:none}.video-dialog .video-pause{color:#fff;border:2px solid #ffffff60}.my-player{margin-bottom:24px;text-align:center}.avatar-stage{height:min(62vh,420px);border-radius:22px;overflow:hidden;cursor:grab;touch-action:pan-y;box-shadow:inset 0 0 0 3px #fff2}.avatar-stage:active{cursor:grabbing}.my-player-kit{margin:10px 0 0;font-weight:800}.avatar-flat{display:flex;align-items:center;justify-content:center;gap:18px;width:100%;min-height:200px;border-radius:22px;background:linear-gradient(var(--board, #102d27),#0b1f1a)}.avatar-flat-shirt{width:110px;height:120px;font-size:40px}.trophy-shelf.won{cursor:pointer}.trophy-shelf.lifted svg{animation:trophy-lift 1.4s ease-out;filter:drop-shadow(0 0 10px #ffe9a8)}@keyframes trophy-lift{0%{transform:translateY(0) rotate(0)}30%{transform:translateY(-16px) rotate(-6deg) scale(1.12)}60%{transform:translateY(-16px) rotate(6deg) scale(1.12)}to{transform:translateY(0) rotate(0)}}@media (prefers-reduced-motion: reduce){.trophy-shelf.lifted svg{animation:none}}.page{max-width:620px;margin:auto;padding:24px 16px 104px}.page section{margin:24px 0;padding:20px;border:1px solid #829a8a;border-radius:16px}.page form,.page label{display:grid;gap:10px;margin:16px 0}.page input,.page select{width:100%;padding:12px;box-sizing:border-box}.page button{margin:4px}.page fieldset{border:1px solid #829a8a}.page .hint{font-size:.9rem;opacity:.85}#invitations p{overflow-wrap:anywhere}[hidden]{display:none!important}.home-choices{display:grid;gap:16px;margin:32px 0;padding:0;border:0}.home-choices a,.home-choices button{display:block;margin:0;padding:28px 16px;border-radius:20px;font-size:1.6rem;font-weight:800;text-align:center;text-decoration:none}.home-choices .quiet{border:2px solid var(--green);background:transparent;color:var(--ink)}.table-scroll{overflow-x:auto}.video-row{border-top:1px solid #d3dbc9;padding:8px 0}.video-row video{display:block;width:100%;max-height:50vh;margin:6px 0}#video-progress{width:100%}#status{position:fixed;inset:auto 12px 12px;z-index:10;max-width:596px;margin:0 auto;padding:14px 18px;border-radius:14px;box-shadow:0 6px 20px #0000002e;background:var(--ink);color:#fff;font-weight:700;white-space:pre-line;overflow-wrap:anywhere}#status:empty{display:none}#status[data-kind=ok]{background:var(--green)}#status[data-kind=error]{background:#a3261b}#status[data-kind=busy]:before{content:"⏳ "}#status[data-kind=ok]:before{content:"✓ "}#status[data-kind=error]:before{content:"⚠️ "}#status.flash{animation:status-flash .5s ease-out}@keyframes status-flash{0%{transform:translateY(8px);opacity:.4}}@media (prefers-reduced-motion: reduce){#status.flash{animation:none}}.page button[aria-busy=true]{opacity:.6;cursor:progress}
