:root{--bg:#0b1916;--panel:#152b25;--green:#d6f475;--muted:#a3b5a9;--paper:#f2eddf;--red:#f28279;--line:#ffffff16;color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--paper);min-height:100dvh}button,input,select{font:inherit}button{cursor:pointer;border:0;color:inherit}button:disabled{cursor:default;opacity:.45}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--green);outline-offset:4px}a{color:var(--green)}.shell{max-width:1280px;margin:auto;padding:30px 40px}header{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-bottom:22px}.brand{font-weight:900;font-size:21px;letter-spacing:-1px;display:flex;align-items:center;gap:12px}.brand img{width:35px;height:35px}.pill{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--muted)}.actions{display:flex;align-items:center;gap:10px}.quiet{padding:10px 15px;background:transparent;border:1px solid var(--line);border-radius:10px;font-size:13px}.primary{background:var(--green);color:#13221c;border-radius:10px;font-weight:800;padding:15px 23px}.secondary{background:#243e32;border:1px solid #a2c58335;border-radius:10px;padding:15px 23px;font-weight:700}.danger{color:var(--red)}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:70px;padding:75px 0 60px;align-items:center}.eyebrow{text-transform:uppercase;letter-spacing:3px;font-size:11px;font-weight:700;color:var(--green)}h1{font-size:clamp(52px,6.5vw,90px);line-height:1.02;letter-spacing:-5px;margin:22px 0}h1 span{color:var(--green)}.lead{color:var(--muted);max-width:420px;line-height:1.7;font-size:16px}.tags{display:flex;gap:18px;margin-top:30px;font-size:12px;color:var(--muted)}.setup{background:var(--panel);border:1px solid var(--line);border-radius:22px;padding:30px;box-shadow:0 22px 70px #0002}.setup h2{font-size:25px;margin:5px 0 8px;letter-spacing:-.7px}.hint{font-size:13px;color:var(--muted);line-height:1.6}.tabs{display:flex;gap:4px;margin:25px 0;background:#081a14;padding:5px;border-radius:12px}.tabs button{flex:1;background:transparent;border-radius:8px;padding:11px 5px;font-size:13px;color:var(--muted)}.tabs .active{background:#2e4639;color:var(--paper)}label{display:block;color:var(--muted);font-size:12px;margin:17px 0 8px}input,select{width:100%;background:#0c2019;border:1px solid #54715b66;padding:13px;border-radius:9px;color:var(--paper)}.fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.setup .primary{width:100%;margin-top:25px}.card-art{display:flex;justify-content:center;align-items:center;padding:40px 0 0}.art-card{width:100px;height:143px;background:var(--paper);color:#152b25;border-radius:10px;box-shadow:0 10px 30px #0005;display:grid;place-items:center;font-size:68px;border:1px solid #fff}.art-card:first-child{transform:rotate(-17deg);margin-right:-20px}.art-card:nth-child(2){transform:translateY(-15px);z-index:1;color:#bd413e}.art-card:last-child{transform:rotate(17deg);margin-left:-20px}.rules-row{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding:30px 0;border-top:1px solid var(--line)}.rule-number{color:var(--green);font-family:monospace;font-size:11px}.rules-row h3{font-size:16px}.rules-row p{font-size:13px;line-height:1.7;color:var(--muted);margin-bottom:0}footer{padding:20px 0;color:var(--muted);font-size:11px;display:flex;justify-content:space-between}.match-top{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:24px 0 18px}.match-top h2{font-size:24px;letter-spacing:-.8px;margin:5px 0}.progress{display:flex;gap:6px}.progress span{border:1px solid var(--line);padding:7px 10px;border-radius:7px;color:var(--muted);font-size:12px}.progress .now{background:var(--green);color:#13221c;border-color:var(--green)}.game-layout{display:grid;grid-template-columns:minmax(0,1fr) 275px;gap:24px}.table-area{background:radial-gradient(ellipse at 50% 50%,#28513e,#18352c 65%,#122720);border:1px solid #73946a40;border-radius:28px;padding:22px;min-height:450px;position:relative;overflow:hidden}.opponents{display:flex;justify-content:center;flex-wrap:wrap;gap:10px}.seat{background:#0a1b16b0;border:1px solid #7d947033;border-radius:13px;padding:12px 14px;min-width:100px;text-align:center;transition:all .2s}.seat.turn{border-color:var(--green);box-shadow:0 0 0 2px #d6f47522}.seat.out{opacity:.4}.avatar{width:34px;height:34px;background:#344937;color:#d6f475;border-radius:50%;display:grid;place-items:center;font-weight:900;font-size:14px;margin:0 auto 7px}.seat-name{font-size:12px;font-weight:750;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lives{color:var(--red);font-size:14px;letter-spacing:2px;margin:5px 0}.stat{font-size:11px;color:var(--muted)}.center{min-height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:20px 0}.table-brand{color:#b7c9a32b;font-size:45px;font-weight:900;letter-spacing:-2px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;white-space:nowrap}.trick{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;position:relative;z-index:1;min-height:130px;align-items:center}.played{text-align:center;animation:land .25s ease-out}.played small{display:block;font-size:10px;margin-top:8px;color:var(--muted)}.card{width:75px;height:108px;position:relative;background:var(--paper);color:#16291f;border-radius:8px;box-shadow:0 5px 10px #0003;border:1px solid #fff;padding:8px;text-align:left;flex-shrink:0}.card.red{color:#bb4543}.corner{font-family:Georgia,serif;font-size:22px;font-weight:bold;line-height:1}.suit{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:40px}.card .mini{position:absolute;bottom:8px;right:8px;font-size:14px;transform:rotate(180deg)}.manilha{box-shadow:0 0 0 2px #d6f475,0 5px 10px #0003}.hand{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;padding:18px 0}.hand .card{width:85px;height:122px;transition:transform .15s}.hand .card:not(:disabled):hover{transform:translateY(-12px)}.hand .card:disabled{opacity:.75}.you{display:flex;justify-content:center;align-items:center;gap:12px}.you .avatar{margin:0}.you .lives{margin:3px 0}.control{min-height:100px;margin:18px 0;background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:20px;text-align:center}.control h3{font-size:17px;margin:0 0 8px}.prediction{display:flex;gap:9px;justify-content:center;flex-wrap:wrap;margin-top:16px}.prediction button{width:45px;height:45px;border-radius:10px;font-size:20px;font-weight:800;background:#2c4938}.prediction button:hover{background:var(--green);color:#10251a}.sidebar{background:#14261f;border:1px solid var(--line);border-radius:18px;padding:20px;align-self:start}.sidebar h3{font-size:14px;margin-top:0}.score-row{display:flex;justify-content:space-between;gap:12px;align-items:center;border-bottom:1px solid var(--line);padding:13px 0;font-size:12px}.score-row .score{font-weight:700;color:var(--green);white-space:nowrap}.score-row .out-label{color:var(--red)}.mini-rules{margin-top:22px;font-size:11px;line-height:1.8;color:var(--muted)}.mini-rules strong{color:var(--paper)}.result{padding:15px 0;position:relative;z-index:1}.result h3{font-size:26px;margin:0 0 5px;color:var(--green)}.damage-list{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:12px 0}.damage-item{background:#091b15;border:1px solid var(--line);border-radius:10px;padding:12px;font-size:12px}.damage-item strong{display:block;margin-top:5px}.history{max-height:150px;overflow:auto;font-size:11px;color:var(--muted)}.history p{margin:10px 0}.lobby{max-width:650px;margin:60px auto;text-align:center}.code{font-size:45px;font-family:monospace;letter-spacing:10px;margin:20px 0;color:var(--green)}.lobby-people{display:flex;justify-content:center;flex-wrap:wrap;gap:14px;margin:30px 0}.lobby .primary{margin:20px}.back{background:transparent;color:var(--muted)}dialog{background:#152b25;color:var(--paper);border:1px solid #66805c;border-radius:20px;max-width:600px;padding:28px;line-height:1.7;width:calc(100% - 30px)}dialog::backdrop{background:#0009}dialog h2{margin-top:0}dialog .actions{justify-content:flex-end}#toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);padding:14px 22px;border-radius:12px;background:#d6f475;color:#16291f;box-shadow:0 5px 30px #0005;font-size:13px;z-index:10;display:none;max-width:90%;text-align:center}.net{font-size:11px;color:var(--muted);text-align:center;min-height:16px}.end-banner{padding:20px;text-align:center;background:#d6f475;color:#15291d;border-radius:15px;margin-bottom:18px}.end-banner h2{margin:0 0 5px}.timer{font-variant-numeric:tabular-nums;font-size:11px;color:var(--muted)}@keyframes land{from{transform:translateY(-12px);opacity:0}to{transform:none;opacity:1}}@media(max-width:1000px){.shell{padding:22px}.hero{gap:30px;padding-top:45px}.game-layout{grid-template-columns:1fr}.sidebar{display:none}h1{letter-spacing:-3px}.table-area{min-height:400px}}@media(max-width:650px){.shell{padding:16px}header{padding-bottom:15px}.brand{font-size:18px}.brand img{width:29px;height:29px}.pill{display:none}.hero{grid-template-columns:1fr;padding:34px 0;gap:25px}h1{font-size:57px;margin:15px 0}.lead{font-size:14px}.card-art{display:none}.setup{padding:22px}.tags{gap:12px;font-size:11px;margin-top:18px}.rules-row{gap:18px;grid-template-columns:1fr}.rules-row h3{margin:7px 0}.match-top{margin:18px 0;align-items:start}.match-top h2{font-size:19px}.progress{max-width:180px;flex-wrap:wrap;justify-content:end}.progress span{padding:5px 7px;font-size:10px}.table-area{border-radius:18px;padding:13px;min-height:370px}.seat{min-width:75px;padding:8px}.avatar{width:28px;height:28px;font-size:12px}.opponents{gap:6px}.seat-name{max-width:90px;font-size:10px}.lives{font-size:12px}.stat{font-size:10px}.center{min-height:215px;padding:12px 0}.trick{gap:7px}.card{width:55px;height:79px;padding:6px}.corner{font-size:17px}.suit{font-size:30px}.card .mini{font-size:12px}.hand{gap:8px;padding-top:18px}.hand .card{width:63px;height:91px}.control{padding:17px 12px}.control h3{font-size:15px}.quiet{font-size:12px;padding:8px 11px}.code{font-size:34px}.table-brand{font-size:34px}.damage-item{font-size:10px;padding:9px}.result h3{font-size:22px}.net{font-size:10px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

.resume{margin-top:14px;width:100%}.history-title{margin-top:25px!important}

.table-area.finished .table-brand{display:none}.lobby-title{font-size:45px;letter-spacing:-2px}

.shell{padding-top:max(20px,env(safe-area-inset-top));padding-bottom:max(20px,env(safe-area-inset-bottom));padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right))}
