.standup-landing{width:min(1240px,90%);margin:0 auto;padding:78px 0 110px;display:grid;grid-template-columns:minmax(0,1fr) minmax(390px,.72fr);gap:8%;align-items:center}
.standup-hero .eyebrow{display:flex;align-items:center;gap:12px;color:#607760}
.standup-hero h1{font:600 clamp(55px,5.6vw,84px)/1.02 var(--display);letter-spacing:-.065em;margin:25px 0 28px}
.standup-hero h1 em{font-style:normal;color:var(--accent)}
.standup-hero>p{max-width:620px;color:#626a60;font-size:19px;line-height:1.66;margin:0}
.standup-badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:35px}
.standup-badges span{border:1px solid #d8ded6;border-radius:999px;padding:9px 13px;color:#566759;font-size:12px;font-weight:700}
.standup-create{width:100%}
.standup-create textarea{display:block;width:100%;min-height:160px;margin-top:9px;padding:15px 16px;background:#fafaf8;border:1px solid #d8d8d0;border-radius:7px;color:var(--ink);resize:vertical;font:15px/1.55 var(--font)}
.standup-create textarea:focus{outline:none;border-color:#82947f;box-shadow:0 0 0 1px #dce6da}
.standup-create textarea::placeholder{color:#a7aaa2}
.standup-create select{display:block;width:100%;margin-top:9px;padding:13px 14px;background:#fafaf8;border:1px solid #d8d8d0;border-radius:7px;color:var(--ink);font:14px var(--font)}
.standup-create select:focus{outline:none;border-color:#82947f;box-shadow:0 0 0 1px #dce6da}
.standup-create form>small{display:block;color:#8c9388;font-size:12px;line-height:1.5;margin-top:9px}
.standup-explain{width:min(1240px,90%);margin:0 auto;padding:60px 0 100px;border-top:1px solid var(--line)}
.standup-explain h2{font:600 clamp(31px,3vw,44px)/1.15 var(--display);letter-spacing:-1.8px;margin:16px 0 34px}
.standup-explain-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px}
.standup-explain-grid p{border-top:2px solid #d7dfd3;padding-top:17px;color:#626a60;font-size:16px;line-height:1.64;margin:0}
.standup-explain-grid strong{display:block;color:var(--ink);font-size:18px;margin-bottom:5px}
#standup-toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,18px);opacity:0;pointer-events:none;z-index:30;background:#283229;color:#fff;padding:12px 18px;border-radius:8px;font-size:14px;box-shadow:0 12px 30px #18231a30;transition:opacity .18s,transform .18s;max-width:min(90vw,500px);text-align:center}
#standup-toast.show{opacity:1;transform:translate(-50%,0)}

.standup-room-shell{height:100dvh;min-height:0;overflow:hidden}
.standup-room-shell .topbar{height:72px;flex:none;padding:0 30px;background:#fff}
.standup-room-shell .brand{font-size:19px}
.standup-room-shell .brand-mark{width:32px;height:32px}
.standup-room-head{display:flex;align-items:center;gap:18px}
.standup-room-head .room-code{font-size:12px}
.standup-room-head button{border:1px solid #cfd9cc;border-radius:8px;background:#fff;padding:11px 15px;color:#435548;font-weight:700;font-size:13px}
.standup-room-head button:hover{background:#f5f7f3}
.standup-workspace{flex:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,24%);min-height:0;overflow:hidden}
.standup-stage{min-width:0;min-height:0;padding:25px 4%;display:flex;align-items:center;justify-content:center;background:#fff}
.standup-stage-content{width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(245px,330px);align-items:center;gap:clamp(24px,3vw,62px)}
.standup-stage-heading{width:100%;text-align:left}
.standup-stage-heading .eyebrow{color:#748574}
.standup-stage-heading h1{font:600 clamp(32px,3vw,45px)/1.12 var(--display);letter-spacing:-.045em;margin:14px 0 10px;overflow-wrap:anywhere}
.standup-stage-heading p{font-size:15px;color:#788178;line-height:1.55;margin:0}
.wheel-wrap{position:relative;width:min(700px,max(360px,calc(100vh - 250px)),100%);aspect-ratio:1;margin:0 auto;filter:drop-shadow(0 13px 21px #26322620)}
.standup-controls{min-width:0}
.standup-action{margin-top:58px}
.standup-action h2{font:600 25px/1.2 var(--display);letter-spacing:-.03em;margin:0 0 8px}
.standup-action>p{font-size:14px;color:#778275;line-height:1.5;margin:0}
.wheel-face{display:block;width:100%;height:100%;border:7px solid #fff;border-radius:50%;box-shadow:0 0 0 2px #d5ddd2;background:#f5f4ec;transform:rotate(0deg);will-change:transform}
.wheel-pointer{position:absolute;z-index:3;top:-12px;left:50%;width:40px;height:48px;transform:translateX(-50%);background:#c96442;clip-path:polygon(0 0,100% 0,50% 100%);filter:drop-shadow(0 4px 1px #8a442d)}
.wheel-hub{position:absolute;z-index:2;top:50%;left:50%;width:68px;height:68px;transform:translate(-50%,-50%);border:7px solid #fff;border-radius:50%;background:#fff;box-shadow:0 2px 10px #25302535;display:grid;place-items:center}
.wheel-hub img{width:42px;height:42px;border-radius:9px}
.wheel-wrap.empty .wheel-hub,.wheel-wrap.single .wheel-hub{display:none}
.wheel-single-name[hidden]{display:none}
.wheel-single-name{position:absolute;z-index:2;top:50%;left:50%;width:85%;transform:translate(-50%,-50%);text-align:center;color:#26342a;font:700 clamp(34px,4vw,62px)/1.12 var(--display);letter-spacing:-.04em;overflow-wrap:anywhere;pointer-events:none}
.spin-button{width:100%;justify-content:center;font-size:17px;margin-top:25px}
.spin-button:disabled{opacity:.7}
.standup-sidebar{min-height:0;overflow-y:auto;overscroll-behavior:contain;background:#f5f6f1;border-left:1px solid var(--line);display:flex;flex-direction:column;scrollbar-width:thin}
.standup-panel{padding:26px 28px;border-bottom:1px solid #dde3d9}
.standup-panel h2{font:600 21px var(--display);letter-spacing:-.7px;margin:0 0 16px}
.standup-result{background:#edf1e8;padding-top:31px;padding-bottom:31px}
.standup-result .eyebrow{color:#6d806e}
.standup-result h2{font:600 30px/1.12 var(--display);letter-spacing:-1px;margin:11px 0 8px;overflow-wrap:anywhere}
.standup-result p{font-size:13px;line-height:1.5;color:#6e796e;margin:0}
.standup-mode{background:#fffdf8}
.standup-mode label{display:block;color:#26342a;font:600 21px var(--display);letter-spacing:-.7px;margin:0 0 12px}
.standup-mode select{width:100%;padding:11px 12px;background:#fff;border:1px solid #d4ddd1;border-radius:7px;color:#344137;font:14px var(--font)}
.standup-mode select:focus{outline:none;border-color:#82947f;box-shadow:0 0 0 1px #dce6da}
.standup-mode p{font-size:12px;color:#798477;line-height:1.5;margin:10px 0 0}
.standup-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.standup-list li{min-width:0;display:flex;align-items:center;gap:9px;background:#fff;border:1px solid #e2e7de;border-radius:8px;padding:8px 10px;font-size:14px}
.standup-person-dot{width:10px;height:10px;flex:none;border-radius:50%;background:#77a77b}
.standup-list li.used .standup-person-dot{background:#c7cec3}
.standup-list li.absent{opacity:.55}
.standup-list li.absent .standup-person-dot{background:#9da79c}
.standup-person-name{flex:1;min-width:0;padding:2px 0;border:0;background:none;color:var(--ink);text-align:left;overflow-wrap:anywhere;font-size:14px}
.standup-person-name:hover{text-decoration:underline;text-underline-offset:2px}
.standup-person-name:focus-visible{outline:2px solid #82947f;outline-offset:2px;border-radius:2px}
.standup-person-name small{font-size:11px;color:#748574;font-weight:700}
.standup-person-status{font-size:11px;color:#899387;white-space:nowrap}
.standup-remove{width:24px;height:24px;flex:none;border:0;background:transparent;color:#8b9688;font-size:20px;line-height:1;border-radius:5px}
.standup-remove:hover{color:#a24e34;background:#fff1eb}
.standup-add{display:flex;gap:7px;margin-top:14px}
.standup-add input{min-width:0;flex:1;border:1px solid #d4ddd1;background:#fff;border-radius:7px;padding:11px 12px;font-size:13px;outline:none}
.standup-add input:focus{border-color:#82947f;box-shadow:0 0 0 1px #dce6da}
.standup-add button{border:1px solid #3c5140;border-radius:7px;background:#3c5140;color:#fff;padding:10px 13px;font-size:13px;font-weight:700}
.standup-panel-note{color:#8c9589;font-size:11px;line-height:1.5;margin:10px 0 0}
.standup-history{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.standup-history li{display:flex;justify-content:space-between;gap:10px;color:#4d5a4e;font-size:13px}
.standup-history time{color:#919a8e;font-size:11px;white-space:nowrap}
.standup-history-empty{color:#8c9589;font-size:13px;margin:0}
.standup-reset{margin:21px 28px 28px;background:none;border:0;padding:0;text-align:left;color:#768473;font-size:12px;text-decoration:underline;text-underline-offset:3px}
.standup-reset:hover{color:#a24e34}
.standup-room-footer{min-height:53px;flex:none}
.winner-overlay[hidden]{display:none}
.winner-overlay{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:20px;background:#17271cb8;backdrop-filter:blur(7px)}
.winner-dialog{position:relative;isolation:isolate;width:min(540px,100%);padding:40px 36px 38px;overflow:hidden;background:#fffdf8;border:1px solid #f7f5ec;border-radius:22px;box-shadow:0 32px 90px #0c1b114d;text-align:center}
.winner-dialog:before{content:"";position:absolute;z-index:-1;left:50%;top:-160px;width:430px;height:330px;transform:translateX(-50%);background:radial-gradient(ellipse,#e9f0e2 0%,transparent 70%)}
.winner-mark{display:block;width:52px;height:52px;margin:0 auto 21px;border-radius:12px}
.winner-dialog .eyebrow{color:#708572;letter-spacing:.11em}
.winner-dialog h2{font:600 27px/1.2 var(--display);letter-spacing:-.7px;margin:14px 0 3px;color:#66786a}
.winner-dialog strong{display:block;color:#26342a;font:700 clamp(44px,7vw,76px)/1.08 var(--display);letter-spacing:-.055em;overflow-wrap:anywhere}
.winner-dialog p{color:#71806f;font-size:15px;margin:13px 0 29px}
.winner-dialog .primary{margin:auto;min-width:180px;justify-content:center}
.winner-confetti{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.winner-confetti i{position:absolute;left:50%;top:42%;width:9px;height:17px;border-radius:2px;opacity:0;transform:translate(-50%,-50%)}
.winner-overlay.celebrate .winner-confetti i{animation:confetti-burst 1.35s cubic-bezier(.18,.65,.28,1) var(--delay) both}
@keyframes confetti-burst{0%{opacity:0;transform:translate(-50%,-50%) scale(.3) rotate(0)}12%{opacity:1}80%{opacity:1}100%{opacity:0;transform:translate(calc(-50% + var(--x)),calc(-50% + var(--y) + 20px)) rotate(var(--turn))}}

@media(max-width:1050px){
  .standup-landing{gap:5%;grid-template-columns:minmax(0,1fr) minmax(350px,.9fr)}
  .standup-hero h1{font-size:60px}
  .standup-workspace{grid-template-columns:minmax(0,1fr) 300px}
  .standup-panel{padding:23px 20px}
  .standup-stage-content{grid-template-columns:minmax(0,1fr) minmax(210px,270px);gap:22px}
  .standup-stage-heading h1{font-size:34px}
}
@media(max-width:760px){
  .standup-landing{width:auto;padding:52px 20px 75px;display:flex;flex-direction:column;align-items:stretch;gap:43px}
  .standup-hero h1{font-size:clamp(45px,11vw,65px);margin:22px 0}
  .standup-hero>p{font-size:17px}
  .standup-badges{margin-top:25px}
  .standup-create{padding:25px}
  .standup-explain{width:auto;margin:0 20px;padding:45px 0 65px}
  .standup-explain-grid{grid-template-columns:1fr;gap:23px}
  .standup-room-shell .topbar{padding:0 16px;height:66px}
  .standup-room-shell .brand{font-size:18px}
  .standup-room-head{gap:0}
  .standup-room-head .room-code{display:none}
  .standup-room-head button{font-size:12px;padding:9px 11px}
  .standup-room-shell{height:auto;min-height:100dvh;overflow:visible}
  .standup-workspace{display:flex;flex-direction:column;min-height:0;overflow:visible}
  .standup-stage{height:auto;min-height:0;padding:35px 20px 43px}
  .standup-stage-content{display:flex;flex-direction:column;gap:28px}
  .standup-controls{order:-1;width:min(420px,100%)}
  .standup-action{margin-top:25px}
  .standup-stage-heading h1{font-size:32px}
  .wheel-wrap{width:min(420px,100%);margin:0 auto}
  .wheel-pointer{width:32px;height:40px;top:-10px}
  .wheel-hub{width:59px;height:59px}
  .wheel-hub img{width:36px;height:36px}
  .standup-sidebar{overflow:visible;border-left:0;border-top:1px solid var(--line)}
  .standup-panel{padding:25px 20px}
  .standup-reset{margin:20px}
  .winner-dialog{padding:32px 23px}
}
@media(prefers-reduced-motion:reduce){
  .wheel-face{will-change:auto}
  .winner-overlay.celebrate .winner-confetti i{animation:none}
}
