*,*:before,*:after{box-sizing:border-box}:root{--draw-slot-height: min(32vh, 20rem);--text-body: #141414;--text-muted: #5a5a5a;--text-strong: #0a0a0a;--text-on-light-muted: #6a6a6a}html{font-size:clamp(16px,.45vw + 14px,20px);height:100%}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.5;color:var(--text-body);height:100%;overflow:hidden}#root{height:100%;min-height:100dvh;max-height:100dvh;display:flex;flex-direction:column;overflow:hidden}.app-header{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.65rem 1rem;border-bottom:1px solid #c8c8c8;background:#fafafa}.app-title{margin:0;font-size:clamp(1.15rem,1.6vw + .85rem,1.65rem);font-weight:650;letter-spacing:.02em;color:var(--text-strong);min-width:0}.app-reset-btn{flex-shrink:0;padding:.4rem .75rem;font:inherit;font-size:clamp(.88rem,.9vw + .8rem,1rem);font-weight:550;cursor:pointer;border:1px solid #8a8a8a;border-radius:.25rem;background:#fff;color:var(--text-body)}.app-reset-btn:hover{background:#f0f0f0}.app-main{flex:1 1 0;display:flex;flex-direction:column;gap:1rem;padding:1rem;min-height:0;overflow:hidden}@media(min-width:64rem){.app-main{padding:1.1rem 1.35rem;gap:1.1rem}}.app-stage{flex:1 1 0;display:grid;grid-template-columns:minmax(13rem,22vw) minmax(0,1fr);grid-template-rows:1fr;gap:1rem;min-height:0;overflow:hidden;align-items:stretch}@media(min-width:80rem){:root{--draw-slot-height: min(38vh, 26rem)}}@media(max-width:48rem){:root{--draw-slot-height: min(34vh, 17.5rem)}.app-stage{grid-template-columns:1fr;grid-template-rows:auto auto;align-items:stretch;overflow:auto}.teams{height:auto;max-height:min(42vh,14rem);overflow:hidden}.draw{height:var(--draw-slot-height);max-height:var(--draw-slot-height)}}.teams,.draw,.actions{border:1px solid #d4d4d4;border-radius:6px;background:#fff;padding:.65rem .75rem}.teams{min-height:0;height:100%;display:flex;flex-direction:column;overflow:hidden}.draw{min-height:0;height:100%;width:100%;display:flex;flex-direction:column;flex-shrink:0;overflow:hidden}.draw-surface{flex:1 1 0;display:grid;grid-template-columns:1fr;min-height:0;border-radius:4px;background:#ececec;overflow:hidden}.draw-surface--split{gap:.6rem;container-type:inline-size;container-name:draw-surface}.draw-media,.draw-result{min-width:0;min-height:0;border-radius:4px;overflow:hidden}.draw-media{background:#e8e8e8;display:flex;box-sizing:border-box;aspect-ratio:var(--draw-media-aspect-w, 4) / var(--draw-media-aspect-h, 3)}.draw-result{background:#f5f5f5;display:flex}@media(min-width:62rem){.draw-surface--split{grid-template-columns:auto minmax(0,1fr);align-items:stretch}.draw-media{height:100%;width:auto;max-width:100cqi;justify-self:start;align-self:stretch}}@media(max-width:61.99rem){.draw-media{width:100%;height:auto;max-width:100%;max-height:min(42vh,18rem);align-self:center}}.draw-cover{flex:1 1 0;min-height:0;display:flex;align-items:center;justify-content:center;background:#e8e8e8;overflow:hidden}.draw-cover-img{box-sizing:border-box;width:100%;height:100%;object-fit:contain;object-position:center;display:block}.draw-result .draw-placeholder{font-size:clamp(1.1rem,1.1vw + .95rem,1.45rem)}.teams-list{flex:1 1 0;min-height:0;margin:0;padding:.2rem .35rem .25rem;list-style:none;overflow:auto}.team-row{padding:.78rem .5rem;border-radius:4px}.team-row+.team-row{border-top:1px solid #eaeaea}.team-row--active{background:#dceeff;box-shadow:inset 0 0 0 2px #4a9ad9}.team-row--selectable{cursor:pointer}.team-row--selectable:hover{background:#eef6fc}.team-row--selectable.team-row--active:hover{background:#d0e8fb}.team-row--selectable:focus-visible{outline:none;box-shadow:inset 0 0 0 2px #2a7fbf}.team-row--selectable.team-row--active:focus-visible{box-shadow:inset 0 0 0 2px #1f6bab}.team-row--completed{cursor:default;opacity:.92}.team-row-inner{display:flex;flex-wrap:wrap;gap:.35rem .65rem;align-items:baseline;justify-content:space-between}.team-name{flex:1 1 9rem;min-width:0;font-size:clamp(.95rem,.65vw + .88rem,1.12rem);font-weight:600;line-height:1.35;color:var(--text-strong);word-break:break-word}.team-assignment{flex:1 1 11rem;min-width:0;font-size:clamp(.9rem,.55vw + .85rem,1.05rem);font-weight:650;line-height:1.35;color:var(--text-strong);text-align:right;word-break:break-word}.team-assignment--empty{font-weight:500;color:var(--text-on-light-muted)}.draw-placeholder{flex:1;display:flex;align-items:center;justify-content:center;min-height:0;color:var(--text-muted);font-size:clamp(1.55rem,3.2vw + 1rem,2.45rem);line-height:1.25;font-weight:500}.draw-infinity-wrap{flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;overflow:hidden}.draw-infinity{font-size:clamp(3rem,5vw + 1.75rem,6rem);font-weight:700;line-height:1;color:#15406f;text-shadow:0 0 .55rem rgba(21,64,111,.28);animation:mt-infinity-breathe .9s ease-in-out infinite;transform-origin:center center}@keyframes mt-infinity-breathe{0%,to{opacity:.95;transform:scale(1) rotate(0);text-shadow:0 0 .35rem rgba(21,64,111,.22)}50%{opacity:.55;transform:scale(1.07) rotate(-2deg);text-shadow:0 0 .9rem rgba(21,64,111,.38)}}@media(prefers-reduced-motion:reduce){.draw-infinity{animation:none;opacity:1}}.draw-decision{flex:1;display:flex;align-items:center;justify-content:center;min-height:0;padding:1rem 1.1rem;text-align:center;background:#f5f5f5}.draw-decision-task{font-size:clamp(1.4rem,2.9vw + 1rem,2.65rem);font-weight:700;line-height:1.2;letter-spacing:.01em;color:var(--text-strong);max-width:42rem;text-wrap:balance}.draw-finished{flex:1;display:flex;align-items:center;justify-content:center;min-height:0;padding:1.1rem 1.25rem;text-align:center;font-size:clamp(1.15rem,1.6vw + .95rem,1.6rem);font-weight:650;line-height:1.35;color:#145214;text-wrap:balance;max-width:40rem;margin-inline:auto}.actions{flex-shrink:0}.actions-bar{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.actions-bar--drawing{pointer-events:none;user-select:none}.action-btn{min-height:2.75rem;padding:.55rem 1rem;font:inherit;font-size:clamp(1rem,.9vw + .92rem,1.12rem);font-weight:600;cursor:pointer;border-radius:5px;border:1px solid #6a6a6a;background:#efefef;color:var(--text-strong)}.action-btn:hover{background:#ebebeb}.action-btn:disabled{opacity:.45;cursor:not-allowed}.action-btn:disabled:hover{background:#f5f5f5}
