#root{min-height:100svh;position:relative}#root:after{content:"";pointer-events:none;z-index:50;mix-blend-mode:overlay;background:repeating-linear-gradient(#ffffff09 0 1px,#0000 1px 3px);position:fixed;inset:0}body{background:radial-gradient(60% 50% at 50% 45%, #ff2e881a, transparent 70%), var(--ink)}.screen{min-height:100svh;padding:var(--s5) var(--s3)}.screen--center{place-items:center;display:grid}.panel{width:min(560px,100%);padding:var(--s4);flex-direction:column;display:flex}.start{gap:var(--s2)}.start__back{margin-bottom:var(--s2);align-self:flex-start}.start__title{font-size:clamp(40px,9vw,64px)}.start__btn{margin-top:var(--s3);height:68px;font-size:15px}.lobby__title{margin-top:var(--s2);font-size:34px}.lobby__field{gap:var(--s2);margin-top:var(--s3);display:flex}.input{min-width:0;height:56px;padding:0 var(--s2);background:var(--ink);border:2px solid var(--line);font-family:var(--f-body);color:var(--text);caret-color:var(--cyan);text-transform:uppercase;flex:1;font-size:24px}.input::placeholder{color:#5d5873}.input:focus-visible{outline-offset:0;border-color:var(--cyan)}.lobby__add{width:96px;height:56px;padding:0;font-size:11px}.lobby .err{margin-top:var(--s2)}.roster{margin:var(--s3) 0 0;gap:var(--s1);flex-direction:column;padding:0;list-style:none;display:flex}.roster__empty{color:var(--dim);text-align:center;padding:var(--s2) 0;font-size:19px}.lobby__start{margin-top:var(--s4);height:68px;font-size:15px}.hint{font-family:var(--f-body);color:var(--dim);text-align:center;margin:var(--s2) 0 0;font-size:18px}.prow{align-items:center;gap:var(--s2);min-height:52px;padding:var(--s1) var(--s2);background:var(--bg2);border:2px solid var(--line);flex-wrap:wrap;display:flex}.avatar{width:32px;height:32px;font-family:var(--f-press);color:var(--ink);flex:none;place-items:center;font-size:12px;display:grid}.prow__name{font-family:var(--f-label);letter-spacing:.05em;text-transform:uppercase;overflow-wrap:anywhere;flex:1;font-size:15px}.prow__ord{font-family:var(--f-body);color:var(--dim);font-size:18px}.prow__x{cursor:pointer;border:2px solid var(--line);width:32px;height:32px;color:var(--dim);font-family:var(--f-press);background:0 0;place-items:center;font-size:10px;display:grid}.prow__x:hover{color:var(--pink);border-color:var(--pink)}.prow--game.is-on{border-color:var(--cyan);box-shadow:0 0 14px #00e5ff59}.prow--game.is-on .prow__name:after{content:" ◀";color:var(--cyan)}.prow__rules{gap:var(--s1);flex-wrap:wrap;flex-basis:100%;padding-left:48px;display:flex}.rtag{font-family:var(--f-body);color:var(--orange);white-space:nowrap;text-transform:uppercase;border:1px solid #ff9a3c80;padding:0 6px;font-size:16px}.game{grid-template-columns:280px 1fr;min-height:100svh;display:grid}.side{border-right:2px solid var(--line);padding:var(--s3);gap:var(--s1);background:#0d0b15;flex-direction:column;display:flex}.side__hd{margin-bottom:var(--s1);justify-content:space-between;align-items:center;display:flex}.side__kick{font-size:9px}.side__round{height:26px;font-size:10px}.side__list{gap:var(--s1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.grules{padding-top:var(--s3);border-top:2px dashed var(--line);margin-top:auto}.grules__kick{color:var(--orange);text-shadow:none;font-size:9px}.grule{margin-top:var(--s1);padding:var(--s2);border-color:#ff9a3c99}.grule__t{font-family:var(--f-label);text-transform:uppercase;font-size:13px;font-weight:400}.grule__d{margin-top:4px;font-size:17px}.grule__left{font-family:var(--f-body);color:var(--orange);margin:4px 0 0;font-size:16px}.rules-strip{display:none}.table{padding:var(--s4) var(--s3);justify-content:center;align-items:center;gap:var(--s3);flex-direction:column;display:flex}.table__turn{letter-spacing:.2em;text-align:center;font-size:13px}.table__round{display:none}.table__acts{gap:var(--s2);width:min(440px,100%);display:flex}.table__reset{flex:0 0 120px;height:64px;padding:0;font-size:9px}.table__next{flex:1;height:64px;font-size:13px}.table .err{width:min(440px,100%)}.gcard{--c:var(--pink);width:min(440px,100%);min-height:420px;padding:var(--s4) var(--s3);border:4px solid var(--c);box-shadow:0 0 0 4px var(--ink), 8px 8px 0 4px #000, 0 0 40px color-mix(in srgb, var(--c) 35%, transparent);background:#120f1d;flex-direction:column;animation:.22s ease-out deal;display:flex}.gcard--empty{--c:var(--line);text-align:center;justify-content:center}.gcard__top{justify-content:space-between;align-items:center;display:flex}.gcard__no{font-family:var(--f-body);color:var(--dim);font-size:20px}.gcard__title{margin-top:var(--s5);overflow-wrap:anywhere;font-size:clamp(30px,5vw,40px)}.gcard--empty .gcard__title{margin-top:0}.gcard__desc{color:#e2dcf2;margin-top:var(--s2);font-size:28px}.gcard__bot{padding-top:var(--s3);border-top:2px dashed var(--line);font-family:var(--f-body);color:var(--dim);justify-content:space-between;margin-top:auto;font-size:18px;display:flex}@keyframes deal{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:none}}@media (width<=760px){.screen{padding:var(--s4) var(--s2)}.panel{padding:var(--s3)}.game{grid-template-rows:auto auto 1fr;grid-template-columns:1fr}.side{border-right:0;border-bottom:2px solid var(--line);padding:var(--s2)}.side__hd,.grules,.prow__rules{display:none}.side__list{scrollbar-width:none;flex-direction:row;overflow-x:auto}.prow--game{gap:var(--s1);flex-wrap:nowrap;flex:none;min-height:40px;padding:0 10px}.prow--game .avatar{width:20px;height:20px;font-size:9px}.prow--game .prow__name{font-size:12px}.prow--game.is-on .prow__name:after{content:""}.rules-strip:not(:empty){padding:var(--s1) var(--s2);border-bottom:2px solid var(--line);flex-wrap:wrap;gap:6px;display:flex}.table{padding:var(--s3) var(--s2);justify-content:flex-start;gap:var(--s2)}.table__turn{font-size:11px}.table__round{display:inline}.gcard{min-height:340px;padding:var(--s3) var(--s2)}.gcard__title{margin-top:var(--s4)}.gcard__desc{font-size:24px}.table__reset{flex-basis:96px}}.lobby--wide{width:min(760px,100%)}.tabs{border-bottom:2px solid var(--line);margin-top:var(--s3);display:flex}.tab{font-family:var(--f-press);letter-spacing:.15em;color:var(--dim);cursor:pointer;padding:var(--s2);background:0 0;border:0;border-bottom:3px solid #0000;margin-bottom:-2px;font-size:10px}.tab:hover{color:var(--text)}.tab.is-on{color:#fff;border-bottom-color:var(--cyan);text-shadow:0 0 10px #00e5ff80}.lobby__err{margin-top:var(--s2)}.chip.is-on{color:#fff;border-color:var(--cyan)}button.chip{cursor:pointer}button.chip:hover{color:var(--text)}.deck{margin-top:var(--s3)}.deck__sum{font-family:var(--f-body);color:var(--dim);margin:0 0 var(--s2);letter-spacing:.08em;font-size:18px}.deck__bar{gap:var(--s2);display:flex}.deck__search{height:48px;font-size:20px}.deck__new{height:48px;padding:0 var(--s2);font-size:10px}.deck__filters{gap:var(--s1);margin-top:var(--s2);flex-wrap:wrap;display:flex}.deck__share{color:var(--dim);font-family:var(--f-body);letter-spacing:0;font-size:15px}.deck__list{margin:var(--s2) 0 0;padding:0 var(--s1) 0 0;gap:var(--s1);scrollbar-color:var(--line) transparent;flex-direction:column;max-height:min(52vh,520px);list-style:none;display:flex;overflow-y:auto}.drow{align-items:center;gap:var(--s2);padding:var(--s1) var(--s2);background:var(--bg2);border:2px solid var(--line);grid-template-columns:minmax(0,1fr) auto auto auto;display:grid}.drow.is-off{opacity:.45}.drow.is-off .drow__t{text-decoration:line-through}.drow__main{flex-direction:column;gap:4px;min-width:0;display:flex}.drow__head{align-items:center;gap:var(--s1);min-width:0;display:flex}.drow__head .tag{flex:none}.drow__t{font-family:var(--f-label);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.drow__d{font-family:var(--f-body);color:#a9a3bd;white-space:nowrap;text-overflow:ellipsis;font-size:17px;overflow:hidden}.drow__odds{font-family:var(--f-body);color:var(--cyan);text-align:right;min-width:48px;font-size:19px}.step{border:2px solid var(--line);align-items:center;display:flex}.step__b{width:32px;height:32px;color:var(--text);font-family:var(--f-press);cursor:pointer;background:0 0;border:0;font-size:12px}.step__b:hover:not(:disabled){color:var(--cyan)}.step__b:disabled{color:#4a4560;cursor:not-allowed}.step__n{text-align:center;min-width:32px;font-family:var(--f-body);color:#fff;font-size:20px}.drow__edit{border:2px solid var(--line);width:32px;height:32px;color:var(--dim);cursor:pointer;background:0 0;place-items:center;font-size:14px;display:grid}.drow__edit:hover{color:var(--pink);border-color:var(--pink)}.deck__reset{align-items:center;gap:var(--s1);margin-top:var(--s2);flex-wrap:wrap;display:flex}.deck__confirm{flex:240px;font-size:18px}.deck__rbtn{min-height:40px;padding:0 var(--s2);font-size:9px}.deck__danger{border-color:var(--pink);box-shadow:0 0 0 3px var(--ink), 0 0 14px #ff2e8880}.modal{z-index:60;padding:var(--s3);background:#05040ac7;place-items:center;display:grid;position:fixed;inset:0}.editor{width:min(480px,100%);max-height:100%;padding:var(--s3);gap:var(--s1);border:3px solid var(--pink);box-shadow:0 0 0 3px var(--ink), 6px 6px 0 3px #000, 0 0 24px #ff2e884d;flex-direction:column;display:flex;overflow-y:auto}.editor__h{color:var(--pink);text-shadow:none;margin-bottom:var(--s1)}.editor__lab{font-family:var(--f-label);letter-spacing:.1em;color:var(--dim);margin-top:var(--s1);justify-content:space-between;font-size:11px;display:flex}.editor .input{text-transform:none}.editor__desc{height:auto;padding:var(--s1) var(--s2);resize:vertical;line-height:1.15}.editor__count{font-family:var(--f-body);letter-spacing:0;font-size:15px}.editor__chips{gap:var(--s1);flex-wrap:wrap;display:flex}.editor__err{font-family:var(--f-body);color:var(--pink);margin:0;font-size:17px}.editor__acts{gap:var(--s1);margin-top:var(--s2);display:flex}.editor__acts .btn{min-height:48px;padding:0 var(--s2);font-size:10px}.editor__save{flex:1}.editor__del{color:var(--pink)}@media (width<=760px){.drow{gap:var(--s1);grid-template-columns:minmax(0,1fr) auto auto}.drow__odds{text-align:left;grid-area:2/1;font-size:17px}.drow__main{grid-column:1/-1}.step{grid-area:2/2}.drow__edit{grid-area:2/3}.modal{padding:0}.editor{width:100%;height:100%;box-shadow:none;border-width:0}.tab{padding:var(--s2) var(--s1);font-size:9px}}
