@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&family=Noto+Sans+KR:wght@400;500;600;700;800;900&display=swap");:root{--bg:#07090e;--panel:#10131b;--panel-2:#151924;--line:#252b3a;--muted:#8b93a7;--text:#f5f7ff;--lime:#c7ff39;--purple:#8b5cf6;--red:#ff4967;--blue:#4ba3ff}*{box-sizing:border-box}html{background:var(--bg);color-scheme:dark}body{margin:0;color:var(--text);font-family:Inter,Noto Sans KR,sans-serif;background:radial-gradient(circle at 50% -20%,#20263d 0,transparent 38%),var(--bg);min-height:100vh}button,input,select{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a,button{color:inherit}a{text-decoration:none}p{color:var(--muted);line-height:1.7}.page-shell{min-height:100vh}.site-header{height:72px;padding:0 max(24px,calc((100vw - 1180px) / 2));justify-content:space-between;border-bottom:1px solid #202431;background:rgba(7,9,14,.84);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);position:relative;z-index:20}.brand,.site-header{display:flex;align-items:center}.brand{font-weight:900;letter-spacing:-.5px;gap:11px}.brand>span{display:grid;place-items:center;width:33px;height:33px;color:#090b0e;font-size:12px;background:var(--lime);-webkit-clip-path:polygon(18% 0,100% 0,82% 100%,0 100%);clip-path:polygon(18% 0,100% 0,82% 100%,0 100%)}.site-header nav{display:flex;gap:24px;align-items:center;color:#b7bdca;font-size:13px;font-weight:700}.locale-toggle{display:flex;padding:2px;border:1px solid #303747;background:#0b0e15;border-radius:5px}.locale-toggle button{min-width:34px;padding:6px 7px;border:0;border-radius:3px;background:transparent;color:#697185;font-size:9px;font-weight:900;cursor:pointer}.locale-toggle button.active{background:var(--lime);color:#080a0e}.status{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:11px;letter-spacing:.04em}.status i{width:7px;height:7px;border-radius:50%;background:#798094;box-shadow:0 0 0 4px #79809418}.status.connected i{background:var(--lime);box-shadow:0 0 0 4px #c7ff3920}.status.offline i{background:var(--red)}.hero{padding:105px 24px 98px;text-align:center;border-bottom:1px solid var(--line);background:linear-gradient(90deg,#ffffff05 1px,transparent 0),linear-gradient(#ffffff05 1px,transparent 0);background-size:55px 55px;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;width:520px;height:220px;border-radius:50%;background:var(--purple);filter:blur(140px);opacity:.13;left:calc(50% - 260px);top:90px;pointer-events:none}.eyebrow,.kicker{color:var(--lime);letter-spacing:.18em;font-size:11px;font-weight:800;text-transform:uppercase}.hero h1{font-size:clamp(52px,7vw,92px);letter-spacing:-.075em;line-height:.98;margin:25px 0 24px;font-weight:900;position:relative}.hero h1 em{color:var(--lime);font-style:normal;text-shadow:0 0 60px #c7ff3933}.hero>p{font-size:17px;margin-bottom:30px}.nickname{width:min(390px,100%);margin:0 auto 18px;text-align:left;display:block}.template-form label,label>span{color:#aeb5c6;font-size:12px;font-weight:700}input,select{width:100%;background:#0d1017;border:1px solid #2d3342;border-radius:5px;color:var(--text);padding:13px 14px;outline:none;transition:.2s}input:focus,select:focus{border-color:var(--lime);box-shadow:0 0 0 3px #c7ff3912}.nickname input{margin-top:7px}.hero-actions{display:flex;gap:10px}.button,.hero-actions{justify-content:center}.button{min-height:46px;border:1px solid transparent;border-radius:4px;padding:0 22px;font-size:13px;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;transition:.2s}.button:hover{transform:translateY(-2px)}.button.primary{color:#07090d;background:var(--lime);box-shadow:0 8px 30px #c7ff3918}.button.ghost{background:#141821;border-color:#303646}.button.wide{width:100%}.trust{display:flex;justify-content:center;gap:24px;color:#6d7487;margin-top:21px;font-size:11px}.trust span:first-letter{color:var(--lime)}.quick-panel{max-width:790px;margin:-46px auto 50px;padding:30px;border:1px solid #343b4e;background:#11151f;position:relative;z-index:3;box-shadow:0 24px 70px #0008}.panel-close{position:absolute;right:15px;top:12px;border:0;background:transparent;color:#7c8497;font-size:25px;cursor:pointer}.quick-panel h2{margin:8px 0 22px}.quick-panel label{font-size:12px;color:#9da5b7;font-weight:700}.quick-panel label input{margin:7px 0 18px}.inline-form{display:grid;grid-template-columns:1fr auto;grid-gap:8px;gap:8px}.inline-form input{font-size:20px;letter-spacing:.18em;text-transform:uppercase}.mode-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px;margin-bottom:20px}.mode-card{text-align:left;background:#0c0f16;border:1px solid #292f3e;padding:15px;border-radius:5px;cursor:pointer}.mode-card b{display:block;font-size:12px;margin-bottom:6px}.mode-card small{color:var(--muted);font-size:10px}.mode-card.selected{border-color:var(--lime);background:#c7ff3909;box-shadow:inset 0 0 0 1px #c7ff3922}.home-item-editor{margin-top:4px}.home-item-editor .item-row input{padding:10px}.selected-template{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 20px;padding:14px;border:1px solid #3f4a31;background:#c7ff3909;color:#c7ceba;font-size:11px}.selected-template button{border:0;background:transparent;color:var(--lime);font-weight:800;cursor:pointer}.mode-card:disabled{cursor:default}.detail-page,.form-page,.how,.section,.templates-page{max-width:1180px;margin:auto;padding:90px 24px}.section-head,.title-row{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:30px}.back-link{display:inline-block;margin-bottom:34px;color:#8e96a8;font-size:11px}.back-link:hover{color:var(--lime)}.how h2,.section-head h2{margin:8px 0 0;font-size:32px;letter-spacing:-.04em}.section-head>a{font-size:12px;color:var(--lime);font-weight:700}.library-grid,.template-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:16px;gap:16px}.library-card,.template-card{background:var(--panel);border:1px solid var(--line);overflow:hidden;transition:.25s}.library-card:hover,.template-card:hover{transform:translateY(-4px);border-color:#424a61}.template-card.active{border-color:var(--lime)}.library-art,.template-art{height:155px;background:radial-gradient(circle at 50%,#7b52da55,transparent 50%),linear-gradient(135deg,#1c2030,#0e1119);display:grid;place-items:center;font-size:50px;position:relative}.library-art>b,.template-art>span{position:absolute;right:12px;top:12px;font-size:9px;letter-spacing:.12em;color:#a4adbf;background:#07090ea8;padding:6px 8px}.template-card>div:nth-child(2){padding:20px 20px 12px}.library-card>small,.template-card small{color:var(--purple);font-weight:800;font-size:9px;letter-spacing:.13em}.template-card h3{margin:8px 0 3px}.template-card p{font-size:12px;margin:0}.template-card>button{width:calc(100% - 40px);margin:0 20px 18px;background:transparent;border:0;border-top:1px solid var(--line);padding:14px 0 0;text-align:left;color:var(--lime);font-size:11px;font-weight:800;cursor:pointer}.how{text-align:center;border-top:1px solid #1d212c}.how>div{margin-top:40px;display:grid;grid-template-columns:repeat(3,1fr)}.how article{padding:15px 40px;border-right:1px solid var(--line)}.how article:last-child{border:0}.how strong{font-size:44px;color:#252b37}.how h3{margin:-12px 0 5px}.how p{font-size:12px}footer{border-top:1px solid var(--line);padding:30px max(24px,calc((100vw - 1180px)/2));display:flex;justify-content:space-between;color:#626a7a;font-size:10px}.room-page{background:#090b11}.room-content{max-width:1380px;margin:auto;padding:22px 28px 60px}.room-top{height:44px;justify-content:space-between;color:#8f97aa;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.room-top,.room-top div{display:flex;align-items:center}.room-top div{gap:9px}.room-top b{color:var(--lime);padding-left:9px;border-left:1px solid #303644}.phase-dot{width:6px;height:6px;background:var(--lime);border-radius:50%;box-shadow:0 0 10px var(--lime)}.nav-button{border:1px solid #2a3040;background:#11151e;border-radius:4px;padding:7px 11px;color:#a5adbe;font-size:11px;cursor:pointer}.room-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;grid-gap:16px;gap:16px}.room-panel{background:var(--panel);padding:20px}.lobby-hero,.room-panel{border:1px solid var(--line)}.lobby-hero{min-height:270px;display:flex;flex-direction:column;justify-content:center;align-items:center;background:radial-gradient(circle at 50%,#272e4938,transparent 55%),linear-gradient(135deg,#10141d,#0b0e14);text-align:center}.lobby-hero h1{margin:12px 0 0;font-size:38px;letter-spacing:-.05em}.lobby-hero p{font-size:12px;margin:8px 0 22px}.room-code{display:flex;align-items:center;gap:16px;border:1px solid #363d4d;background:#080b10;padding:10px 12px 10px 18px}.room-code span{color:#747d90;font-size:9px;letter-spacing:.15em}.room-code b{color:var(--lime);font-size:22px;letter-spacing:.22em}.room-code button{background:#1b202c;border:0;color:#b9c0cf;padding:7px 10px;font-size:10px;cursor:pointer}.lock-badge{display:inline-block;margin:0 0 14px;color:var(--lime);font-size:11px;font-style:normal;letter-spacing:.08em}.lock-toggle{display:flex;align-items:center;gap:10px;margin:16px 0 8px;font-size:13px}.lock-toggle input{width:16px;height:16px;accent-color:var(--lime)}.preset-bar{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(140px,180px);grid-gap:8px;gap:8px;margin:0 0 10px}.preset-bar input,.preset-bar select{min-width:0}.preset-bar select,.preset-save{border:1px solid #303747;background:#171b25;color:#c5ccda;font-size:11px;font-weight:700;cursor:pointer;padding:0 10px}.preset-notice{display:block;margin:-4px 0 10px;color:var(--lime);font-size:11px}.history-overlay,.qr-overlay{position:fixed;inset:0;z-index:60}.history-backdrop{position:absolute;inset:0;border:0;background:#05070ccc;cursor:pointer}.history-drawer{position:absolute;top:0;right:0;width:min(400px,100%);height:100%;background:#10141d;border-left:1px solid #2c3344;padding:22px 20px;overflow:auto;box-shadow:-20px 0 60px #0008}.history-drawer .panel-title{position:relative;padding-right:36px}.history-drawer .panel-title h2{margin:0;font-size:18px;letter-spacing:-.03em}.history-close{border:0;background:transparent;color:#7c8497;font-size:24px;line-height:1;cursor:pointer}.history-drawer>p{color:var(--muted);font-size:12px;margin:8px 0 18px}.history-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:min(420px,calc(100% - 72px));padding:36px 18px;border:1px dashed #32394a;background:radial-gradient(circle at 50% 30%,#c7ff390c,transparent 58%),#121722;text-align:center}.history-empty-icon{width:64px;height:64px;display:grid;place-items:center;margin-bottom:14px;border:1px solid #3a4458;background:#171d29;font-size:28px}.history-empty h3{margin:0;color:var(--text);font-size:16px;letter-spacing:-.02em}.history-empty p{margin:8px 0 18px;max-width:240px;color:var(--muted);font-size:12px;line-height:1.6}.history-empty .button{min-height:40px;padding:0 16px;font-size:12px}.history-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:10px;gap:10px}.history-list li{display:grid;grid-template-columns:minmax(0,1fr) 42px;grid-gap:8px;gap:8px;align-items:stretch}.history-item{display:block;text-align:left;border:1px solid #2c3344;background:linear-gradient(180deg,#1a2030,#141925);padding:14px 16px;color:inherit;transition:.2s}.history-item:hover{border-color:#c7ff3966;transform:translateY(-1px);box-shadow:0 10px 24px #0005}.history-topic{display:block;font-size:15px;letter-spacing:-.02em}.history-template{display:block;margin-top:5px;color:#9aa8c0;font-size:11px}.history-time{display:block;margin-top:8px;color:#6f778a;font-size:11px}.history-pick{display:flex;flex-direction:column;gap:4px;margin-top:12px;padding-top:10px;border-top:1px solid #2a3140}.history-pick small{color:#8b93a4;font-size:10px;font-weight:800;letter-spacing:.1em}.history-pick strong{color:var(--lime);font-size:14px;font-weight:800}.history-delete{border:1px solid #2c3344;background:#171b25;color:#8b93a4;cursor:pointer;font-size:15px}.history-delete:hover{border-color:#ff496766;color:var(--red);background:#ff496714}.qr-modal{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(420px,calc(100% - 32px));padding:32px 28px 24px;text-align:center;background:linear-gradient(180deg,#171c28,#0d1118);border:1px solid #3d465a;box-shadow:0 30px 80px #0008}.qr-modal h2{margin:10px 0 8px}.qr-modal p{color:var(--muted);font-size:13px;margin:0 0 18px}.qr-frame{display:grid;place-items:center;background:#f5f7ff;padding:16px;margin-bottom:12px}.qr-modal small{display:block;color:#8b93a4;font-size:11px;word-break:break-all;margin-bottom:16px}.join-gate input[inputmode=numeric]{letter-spacing:.4em;text-align:center;font-size:22px}.settings-panel{margin-top:16px}.panel-title{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:15px;font-size:12px;font-weight:800}.panel-title b,.panel-title small{color:#697185;font-size:9px}.mode-grid.compact{margin-bottom:16px}.setting-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:12px;gap:12px;border:0;padding:0;margin:0;min-width:0}.setting-grid label{font-size:10px;color:#8b93a6;position:relative}.setting-grid strong{float:right;color:var(--lime)}.setting-grid input,.setting-grid select{margin-top:8px;padding:9px;font-size:11px}input[type=range]{accent-color:var(--lime);padding:0;height:5px;box-shadow:none}.players{display:flex;flex-direction:column}.player-list{flex:1 1}.player{display:flex;align-items:center;gap:11px;padding:10px 0}.player>i{width:35px;height:35px;display:grid;place-items:center;background:#8b5cf627;color:#b69cff;border:1px solid #8b5cf64d;font-style:normal;font-weight:800}.player>i.red{background:#ff49671a;color:#ff7990;border-color:#ff496744}.player>span{flex:1 1}.player b,.player small{display:block}.player b{font-size:12px}.player small{color:#697185;font-size:8px;margin-top:3px}.player em{color:#697185;font-size:9px;font-style:normal}.player em.online{color:var(--lime)}.players .button{margin-top:8px}.waiting{text-align:center;margin-top:20px;color:#697185;font-size:10px}.waiting span{display:block;color:var(--lime);letter-spacing:.3em;margin-top:7px;animation:blink 1.3s infinite}.draft-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;grid-gap:16px;gap:16px}.turn-banner{min-height:144px;padding:27px;border:1px solid #3d465a;background:linear-gradient(100deg,#151a25,#0d1017);display:flex;align-items:center;justify-content:space-between;position:relative;overflow:hidden}.turn-banner h1{margin:7px 0 3px;font-size:29px}.turn-banner p{margin:0;font-size:11px}.timer{display:flex;align-items:baseline;gap:5px;padding-right:16px}.timer strong{color:var(--lime);font-size:56px;letter-spacing:-.08em}.timer span{font-size:9px;color:#778095}.timer-line{position:absolute;left:0;right:0;bottom:0;height:3px;background:#252b38}.turn-banner.urgent{border-color:#ff496788}.turn-banner.urgent .timer strong{color:var(--red)}.timer-line i{display:block;height:100%;background:var(--lime);transition:width .25s linear;box-shadow:0 0 12px var(--lime)}.turn-banner.urgent .timer-line i{background:var(--red);box-shadow:0 0 12px var(--red)}.candidate-head{display:flex;align-items:center;justify-content:space-between;margin:24px 0 13px}.candidate-head h2{font-size:15px;margin:0}.candidate-head h2 em{color:var(--lime);font-style:normal}.candidate-head>span{color:#6c7487;font-size:9px;letter-spacing:.1em}.candidate-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:10px;gap:10px}.candidate{min-height:160px;padding:20px;text-align:left;border:1px solid #292f3e;background:linear-gradient(145deg,#151925,#0e1118);background-size:cover;background-position:50%;color:var(--text);display:flex;flex-direction:column;justify-content:flex-end;cursor:pointer;transition:.2s}.candidate:hover:not(:disabled){border-color:var(--lime);transform:translateY(-3px);box-shadow:0 12px 35px #0007}.candidate:disabled{cursor:default;opacity:.72}.candidate>span{font-size:31px;margin-bottom:auto}.candidate b{margin-top:18px;font-size:13px}.candidate small{color:var(--lime);font-size:9px;margin-top:7px}.draft-side{display:flex;flex-direction:column;gap:16px}.pick-row{padding:10px 0;border-bottom:1px solid #212632}.pick-row>b{font-size:11px}.pick-row>div{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}.pick-row span{background:#1b202c;padding:5px 7px;font-size:9px;color:#b6bece}.history{max-height:400px;overflow:auto}.history>div:not(.panel-title){border-left:1px solid #333a4c;padding:3px 0 14px 14px;position:relative}.history>div:not(.panel-title):before{content:"";position:absolute;width:5px;height:5px;border-radius:50%;background:var(--purple);left:-3px;top:7px}.history b,.history span{display:block;font-size:10px}.history span{color:#737c90;margin-top:4px}.result-wrap{padding:50px 0}.result-card{width:min(650px,100%);min-height:540px;margin:auto;padding:58px 55px 34px;text-align:center;background:radial-gradient(circle at 50% 38%,#b5ff3040,transparent 25%),linear-gradient(140deg,#151b22,#090c12 70%);border:1px solid #c7ff3977;box-shadow:0 0 80px #c7ff3913;display:flex;flex-direction:column;align-items:center}.result-card>p{font-size:13px;margin:9px 0 20px}.trophy{font-size:70px;color:var(--lime);text-shadow:0 0 35px #c7ff3988}.result-card>small{color:#7b8497;letter-spacing:.18em;font-weight:800;margin-top:18px}.result-card h1{font-size:42px;margin:9px 0 26px}.result-summary{width:100%;display:grid;grid-gap:8px;gap:8px;margin-bottom:20px;text-align:left}.result-summary div{padding:10px 12px;background:#111722cc;border:1px solid #293141}.result-summary b,.result-summary span{display:block;font-size:9px}.result-summary b{color:var(--lime);letter-spacing:.08em;margin-bottom:5px}.result-summary span{color:#bdc5d3;line-height:1.5}.result-stats{width:100%;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #303747;border-bottom:1px solid #303747;padding:18px 0}.result-stats span{color:#747d8f;font-size:8px;letter-spacing:.1em;border-right:1px solid #303747}.result-stats span:last-child{border:0}.result-stats b{display:block;color:white;font-size:20px;margin-bottom:4px}.result-card>em{margin-top:auto;color:#636c7e;font-size:8px;letter-spacing:.15em;font-style:normal}.result-actions{display:flex;justify-content:center;gap:9px;margin-top:22px}.detail-page h1,.form-page h1,.templates-page .title-row h1{font-size:45px;letter-spacing:-.055em;margin:8px 0}.form-page>p,.title-row p{margin:0;font-size:13px}.library-grid{grid-template-columns:repeat(3,1fr)}.library-card{padding-bottom:20px}.library-art{height:190px;font-size:32px}.library-card>em,.library-card>h2,.library-card>p,.library-card>small{margin-left:20px;margin-right:20px}.library-card>small{display:block;margin-top:19px}.library-card h2{margin-top:8px;margin-bottom:5px;font-size:18px}.library-card p{font-size:11px;margin-top:0}.library-card em{display:block;border-top:1px solid var(--line);padding-top:13px;font-size:10px;color:var(--lime);font-style:normal;font-weight:700}.art-1{background:radial-gradient(circle,#d56d4155,transparent 50%),#141822}.art-2{background:radial-gradient(circle,#357eaa55,transparent 50%),#141822}.form-page{max-width:760px}.detail-page>a,.form-page>a{color:#8e96a8;font-size:11px;display:block;margin-bottom:42px}.template-form{margin-top:34px;padding:28px;background:var(--panel);border:1px solid var(--line)}.template-form>label{display:block;margin-bottom:18px}.template-form>label input{margin-top:7px}.item-editor{margin:27px 0 22px}.item-row{display:grid;grid-template-columns:52px 1fr 38px;grid-gap:7px;gap:7px;margin-bottom:7px;align-items:stretch}.option-visual{min-height:42px;border:1px solid #303747;background:#171b25;display:flex;align-items:center;justify-content:center;overflow:hidden}.option-visual .emoji-input{width:100%;height:100%;border:0;background:transparent}.emoji-input{text-align:center;padding-left:4px;padding-right:4px}.add-row,.item-row button{border:1px solid #303747;background:#171b25;color:#8b93a4;cursor:pointer}.add-row{width:100%;padding:11px;margin-top:5px;font-size:11px}.detail-hero{border:1px solid var(--line);background:radial-gradient(circle at 20% 50%,#7652bd2b,transparent 36%),var(--panel);padding:45px;display:grid;grid-template-columns:1fr 330px;grid-gap:50px;gap:50px;align-items:center}.detail-hero h1{margin-top:10px}.detail-meta{display:flex;gap:15px;color:#6f7789;font-size:9px;letter-spacing:.1em}.detail-actions{display:flex;flex-direction:column;gap:8px}.detail-items{margin-top:50px}.detail-items .candidate-grid{grid-template-columns:repeat(5,1fr)}.candidate.static{cursor:default}.empty,.join-gate{max-width:450px;margin:13vh auto;text-align:center}.join-gate{background:var(--panel);border:1px solid var(--line);padding:40px}.join-gate h1{margin-bottom:3px}.join-gate input{margin:12px 0 9px}.loading{min-height:420px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#b7bece;gap:8px}.loading small{color:#636b7b}.spinner{width:27px;height:27px;border:2px solid #303647;border-top:2px solid var(--lime);border-radius:50%;animation:spin .8s linear infinite;margin-bottom:8px}.toast{position:fixed;left:50%;bottom:25px;transform:translateX(-50%);background:#1a1f2a;border:1px solid #3b4355;box-shadow:0 12px 45px #0009;color:#dce1ec;padding:12px 18px;font-size:11px;z-index:50}.sound-toggle{min-width:78px}.room-page .room-content{padding-bottom:96px}.reaction-bar{position:fixed;left:24px;bottom:22px;transform:none;z-index:30;display:flex;flex-wrap:wrap;gap:8px;padding:8px;max-width:min(720px,calc(100vw - 48px));background:#121722ee;border:1px solid #32394a;box-shadow:0 12px 40px #0008}.reaction-bar button{width:42px;height:42px;border:1px solid #303747;background:#171b25;font-size:20px;cursor:pointer}.reaction-bar button.chip{width:auto;padding:0 10px;font-size:12px;font-weight:800}.reaction-bar button:hover{border-color:var(--lime);transform:translateY(-2px)}.reaction-floats{position:fixed;inset:0;pointer-events:none;z-index:28;overflow:hidden}.reaction-floats span{position:absolute;bottom:70px;font-size:28px;animation:reaction-float 2s ease-out forwards}.reaction-floats span.react-chip{font-size:13px;font-weight:800;padding:6px 10px;background:#171c28ee;border:1px solid #c7ff3944;border-radius:999px;white-space:nowrap}.room-page .toast{bottom:84px}@keyframes reaction-float{0%{transform:translate3d(0,12px,0) scale(.7);opacity:0}18%{opacity:1}to{transform:translate3d(var(--drift,12px),-72vh,0) scale(1.15);opacity:0}}.tie-shell{min-height:62vh;display:grid;place-items:center;padding:24px 0 40px}.tie-modal{width:min(560px,100%);padding:42px 36px 32px;text-align:center;background:linear-gradient(180deg,#171c28,#0d1118);border:1px solid #3d465a;box-shadow:0 30px 80px #0008}.tie-modal h1{font-size:28px;letter-spacing:-.04em;margin:12px 0 10px}.tie-modal>p{margin:0 0 22px;font-size:13px}.tie-candidates{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:24px}.tie-candidates span{padding:8px 12px;background:#c7ff3910;border:1px solid #c7ff3944;font-size:12px;font-weight:700}.tie-actions{display:grid;grid-gap:9px;gap:9px}.roulette-modal{width:min(620px,100%)}.roulette-stage{position:relative;width:320px;height:320px;margin:8px auto 28px}.roulette-pointer{position:absolute;left:50%;top:-8px;z-index:2;width:0;height:0;border-left:12px solid transparent;border-right:12px solid transparent;border-top:22px solid var(--lime);transform:translateX(-50%);filter:drop-shadow(0 4px 8px #c7ff3966)}.roulette-wheel{width:100%;height:100%;border-radius:50%;border:8px solid #1f2533;box-shadow:inset 0 0 0 10px #0b0e14,0 0 50px #c7ff3918;position:relative;display:grid;place-items:center}.roulette-wheel>b{position:relative;z-index:1;width:78px;height:78px;border-radius:50%;display:grid;place-items:center;background:#090b12;border:3px solid var(--lime);color:var(--lime);font-size:11px;letter-spacing:.14em}.roulette-label{position:absolute;left:50%;top:50%;width:110px;margin-left:-55px;margin-top:-8px;font-size:11px;font-weight:800;color:#090b12;text-align:center;pointer-events:none}.confetti-layer{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:40}.confetti-layer i{position:absolute;top:-12px;border-radius:1px;animation:confetti-fall linear forwards}@keyframes confetti-fall{0%{transform:translate3d(0,-8vh,0) rotate(0deg);opacity:1}to{transform:translate3d(var(--drift,12px),105vh,0) rotate(540deg);opacity:.15}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes blink{50%{opacity:.3}}.random-draw{text-align:center;padding:28px 8px 12px}.random-draw h1{margin:10px 0 8px;font-size:34px;letter-spacing:-.04em}.random-draw>p{color:var(--muted);margin-bottom:28px}.candidate.random-hot{border-color:var(--lime);box-shadow:inset 0 0 0 1px #c7ff3922,0 0 28px #c7ff3928;transform:translateY(-2px)}@media (max-width:1100px){.library-grid,.template-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:900px){.draft-layout,.room-layout{grid-template-columns:1fr}.players{min-height:430px}.candidate-grid{grid-template-columns:repeat(3,1fr)}.detail-items .candidate-grid{grid-template-columns:repeat(4,1fr)}.detail-hero{grid-template-columns:1fr}}@media (max-width:680px){.site-header{height:62px;padding:0 16px}.site-header nav{gap:9px}.site-header nav>a{display:none}.status{font-size:0}.hero{padding:72px 18px 65px}.hero h1{font-size:48px}.hero>p br{display:none}.hero-actions,.result-actions{flex-direction:column}.trust{gap:10px;flex-wrap:wrap}.quick-panel{margin:0;padding:24px 18px}.mode-grid{grid-template-columns:1fr}.detail-page,.form-page,.how,.section,.templates-page{padding:60px 16px}.how>div,.library-grid,.template-grid{grid-template-columns:1fr}.how article{border-right:0;border-bottom:1px solid var(--line)}footer{padding:25px 16px}.room-content{padding:12px 12px 45px}.room-top>span{display:none}.lobby-hero{padding:25px 14px}.lobby-hero h1{font-size:27px}.room-code{gap:8px}.room-code b{font-size:18px}.setting-grid{grid-template-columns:1fr 1fr}.turn-banner{padding:20px}.turn-banner h1{font-size:22px}.timer strong{font-size:40px}.candidate-grid,.detail-items .candidate-grid{grid-template-columns:repeat(2,1fr)}.candidate{min-height:140px;padding:15px}.result-card{min-height:480px;padding:40px 20px 28px}.result-card h1{font-size:32px}.result-actions .button{width:100%}.tie-modal{padding:28px 18px 22px}.tie-modal h1{font-size:22px}.roulette-stage{width:260px;height:260px}.roulette-label{width:92px;margin-left:-46px;font-size:10px}.title-row{align-items:flex-start;flex-direction:column;gap:20px}.detail-page h1,.form-page h1,.templates-page .title-row h1{font-size:36px}.template-form{padding:20px 14px}.item-row{grid-template-columns:48px 1fr 38px}.preset-bar{grid-template-columns:1fr}.preset-bar select,.preset-save{height:38px}.detail-hero{padding:27px 20px}}