:root{--ink: #192e27;--pine: #194d3e;--muted: #67736b;--paper: #f8f8f3;--line: #dce0d6;--gold: #eed69b;--red: #ac5047;font:15px/1.55 DM Sans,PingFang TC,Microsoft JhengHei,Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{border:0;cursor:pointer;color:inherit;background:none}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #be952c;outline-offset:3px}button:disabled{opacity:.48;cursor:not-allowed}button svg{flex:none}h1,h2,h3,p{margin:0}svg{vertical-align:middle}.skip{position:fixed;z-index:50;top:-60px;left:16px;background:#fff;padding:8px}.skip:focus{top:8px}.sidebar{position:fixed;inset:0 auto 0 0;width:218px;background:#122f28;color:#e6ebe3;display:flex;flex-direction:column;padding:36px 17px 24px;z-index:5;background-image:radial-gradient(ellipse at 0% 80%,#1a3c30 0,transparent 60%)}.brand{display:flex;align-items:center;text-align:left;gap:11px;padding:0 8px;color:#fffae6}.brand-mark{border:1px solid #c7aa70;outline:1px solid #8a794f;outline-offset:-5px;display:grid;place-items:center;width:41px;height:48px;border-radius:7px;color:var(--gold);font:32px/1 Georgia,serif;transform:rotate(-8deg);background:#254637;box-shadow:3px 3px #132d25,4px 4px #887d59}.brand b{font:600 23px/1.1 Georgia,serif;letter-spacing:-1.1px;display:block}.brand small{display:block;color:#beccb9;font-size:10px;letter-spacing:2px;margin-top:6px}.sidebar nav{display:grid;gap:7px;margin-top:55px}.nav-item{display:flex;align-items:center;gap:12px;padding:12px 18px;text-align:left;border-radius:7px;color:#bdccc3;letter-spacing:.5px;font-size:14px}.nav-item.active{background:#2c5144;color:#f1e4b8;font-weight:650;box-shadow:inset 3px 0 #d7b879}.nav-item:hover{background:#254638}.side-base{margin-top:auto;border-top:1px solid #ffffff20;padding:24px 10px 0;color:#9ea894;display:flex;flex-direction:column;gap:6px}.side-suits{font:16px/1 Georgia,serif;letter-spacing:6px;color:#b7b895}.side-suits i,.suit-line i{font-style:normal;color:#af8977}.side-base small{font-size:8px;letter-spacing:2.8px;font-weight:700}.workspace{margin-left:218px}.topbar{display:flex;align-items:center;justify-content:space-between;height:66px;border-bottom:1px solid var(--line);padding:0 clamp(24px,4.4vw,78px);background:#fbfbf7}.crumb,.account{display:flex;align-items:center;gap:11px}.crumb{color:#6c786e;font-size:12px}.crumb i{font-style:normal;color:#afb6ab}.crumb strong{color:#344b3d;font-weight:600}.account{background:#fff;border:1px solid var(--line);padding:6px 12px;border-radius:20px;font-size:12px;max-width:200px}.online-dot{width:7px;height:7px;border-radius:50%;background:#618c72}.page{max-width:1310px;margin:auto;padding:32px clamp(24px,4.4vw,78px) 42px}.page-intro,.section-h{display:flex;align-items:center;justify-content:space-between}.page-intro{margin-bottom:22px}.page-intro h1,.table-heading h1,.admin h1{font-size:clamp(30px,2.8vw,43px);font-weight:780;line-height:1.3;letter-spacing:-1.5px}.page-intro p,.section-h p,.muted{color:var(--muted);font-size:14px}.page-intro p{margin-top:6px}.suit-line{color:#57735e;font:18px Georgia,serif;letter-spacing:4px;display:flex;gap:7px;align-items:center}.suit-line:before{content:"";width:48px;height:1px;background:#d1d6c9;margin-right:7px}.hero{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 75% 43%,#326c51 0,#205a45,#164635 78%);border-radius:13px;min-height:286px;display:flex;align-items:center;box-shadow:0 3px 10px #183c2312;color:#fcf8e9}.hero:before,.felt:before{content:"";position:absolute;inset:0;z-index:-1;opacity:.13;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.72' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' opacity='.8' d='M0 0h160v160H0z'/%3E%3C/svg%3E")}.hero-inset,.felt:after{position:absolute;inset:9px;border:1px solid #c5d3aa48;border-radius:8px;pointer-events:none}.hero-copy{position:relative;z-index:2;padding:31px 0 33px clamp(25px,3vw,48px);width:54%}.eyebrow{font:700 10px/1.3 DM Sans,Arial,sans-serif;letter-spacing:2.4px;color:var(--gold);display:flex;align-items:center;gap:9px}.eyebrow i{height:1px;width:23px;background:#d1b573}.hero-copy h2{font-size:clamp(34px,3.2vw,50px);line-height:1.25;margin:9px 0 10px;font-weight:780;letter-spacing:-1.5px}.hero-copy p{color:#d9e4d8;font-size:14px;line-height:1.8}.hero-meta,.hero-meta span{display:flex;align-items:center}.hero-meta{gap:12px;color:#e0e7d7;margin:13px 0 19px;font-size:12px}.hero-meta span{gap:6px}.hero-meta b{height:12px;width:1px;background:#97a88c80}.gold-btn,.primary,.secondary,.danger{display:inline-flex;justify-content:center;align-items:center;gap:14px;border-radius:6px;padding:10px 17px;font-size:14px;font-weight:650;min-height:42px;transition:background .15s,transform .15s}.gold-btn{background:#f1d79b;color:#263a28;box-shadow:0 2px 5px #0002}.gold-btn:hover{background:#ffe9ad;transform:translateY(-1px)}.primary{background:#20543e;color:#fff}.primary:hover{background:#173f30}.secondary{background:#fdfdf9;border:1px solid var(--line)}.secondary:hover{background:#f0f2e9}.danger{background:#944c40;color:#fff}.hero-art{position:absolute;inset:0 0 0 48%;pointer-events:none}.orbit{position:absolute;border:1px solid #c2bc8442;border-radius:50%;width:550px;height:550px;left:7%;top:-42%;transform:rotate(-26deg) scaleX(1.2)}.o2{width:590px;height:590px;left:4%;top:-49%;border-style:dashed;opacity:.65}.o3{width:660px;height:660px;left:-2%;top:-60%;opacity:.55}.fan{position:absolute;left:49%;top:53%;width:0;height:0;transform:rotate(-6deg)}.art-card{position:absolute;width:124px;height:179px;border-radius:9px;background:#f8f4e3;box-shadow:2px 6px 9px #10251455,inset 0 0 0 1px #645f4840;color:#233f34;transform-origin:50% 85%;overflow:hidden}.art-card:before{content:"";position:absolute;inset:5px;border:1px solid #a9a28788;border-radius:6px}.art-back{left:-100px;top:-82px;transform:rotate(-30deg);background:repeating-linear-gradient(45deg,transparent 0 4px,#b29d6c66 4px 5px),repeating-linear-gradient(-45deg,#46664d 0 4px,#c1aa73 4px 5px);border:5px solid #e4d4ad}.art-back:before{border:2px double #d8c28c}.art-back span{position:absolute;top:40%;left:30%;font-size:35px;color:var(--gold)}.diamonds{left:-59px;top:-94px;transform:rotate(-6deg);color:#a64e43;background:#f3e7d4}.aces{left:-11px;top:-88px;transform:rotate(20deg)}.art-corner{position:absolute;top:9px;left:10px;text-align:center;font:700 24px/.91 Georgia,serif}.art-corner small{display:block;font:17px/.95 Georgia,serif}.art-corner.opposite{inset:auto 10px 10px auto;transform:rotate(180deg)}.art-center{position:absolute;inset:28px 18px;display:grid;place-items:center}.ace-ring{width:86px;height:105px;border:1px solid #a49665;outline:1px solid #b6a77d;outline-offset:3px;border-radius:50%;padding:4px;display:grid;place-items:center;background:repeating-conic-gradient(from 0deg,#b0a57c 0 1deg,transparent 1deg 5deg)}.ace-core{width:100%;height:100%;border-radius:50%;border:2px double #ad9e72;display:grid;place-items:center;background:#f5f0d9;color:#24503c;font:80px/.9 Georgia,serif;text-shadow:1px 1px #c4aa6e}.nine-pips{display:grid;grid-template-columns:repeat(3,1fr);gap:4px 6px}.nine-pips i{font:20px Georgia,serif}.glint{position:absolute;color:#d5c394;line-height:1;font-family:Georgia,serif}.g1{left:15%;top:26%;font-size:20px}.g2{right:11%;top:34%;font-size:36px}.g3{right:19%;bottom:16%;font-size:18px}.modes,.how{margin-top:28px}.section-h{margin-bottom:14px}.section-h h2{font-size:22px;line-height:1.4;letter-spacing:-.7px;display:flex;gap:9px;align-items:center}.section-h h2 svg{color:#486650}.section-h p{margin-top:4px;font-size:13px}.mode-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.mode-card{border:1px solid var(--line);background:#fffefa;border-radius:10px;display:flex;align-items:center;text-align:left;gap:17px;padding:21px 20px;min-height:109px;transition:border-color .18s,transform .18s}.mode-card:hover{transform:translateY(-2px);border-color:#95aa90;box-shadow:0 4px 10px #1a3f2410}.mode-icon{display:grid;place-items:center;width:52px;height:52px;flex:none;border-radius:12px;background:#e5eee3;color:#315e46}.match .mode-icon{background:#f3ead5;color:#8d6d32}.mode-text{display:flex;flex-direction:column}.mode-text small{color:#607568;font:700 9px/1.4 Arial,sans-serif;letter-spacing:1.55px}.match .mode-text small{color:#927b4f}.mode-text strong{font-size:21px;line-height:1.45;letter-spacing:-.6px}.mode-text>span{color:var(--muted);font-size:13px}.round-arrow{margin-left:auto;border:1px solid var(--line);border-radius:50%;width:30px;height:30px;display:grid;place-items:center;flex:none}.steps{display:grid;grid-template-columns:repeat(3,1fr);padding:19px 0;border-block:1px solid var(--line)}.steps>div{display:flex;gap:13px;align-items:center;padding-left:20px;border-left:1px solid var(--line)}.steps>div:first-child{padding:0;border:0}.steps small{font:italic 25px/1 Georgia,serif;color:#9a895a}.steps b,.steps em{display:block}.steps b{font-size:14px}.steps em{color:var(--muted);font-size:12px;font-style:normal;margin-top:2px}dialog{color:var(--ink);border:1px solid #ccd3c6;border-radius:15px;background:#fafaf5;width:min(490px,calc(100% - 24px));max-height:90dvh;padding:24px;box-shadow:0 25px 90px #13281940}dialog::backdrop{background:#10261dc2;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.dialog-head,.dialog-actions,.table-heading,.panel-bar{display:flex;align-items:center;justify-content:space-between;gap:12px}.dialog-head{margin-bottom:16px}.dialog-head h2{font-size:23px}.close{width:32px;height:32px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;background:#fff}.dialog-actions{margin-top:18px;justify-content:flex-end}.dialog-body .muted{margin:6px 0 12px}.rule-list>div,.rank-guide>div{display:flex;align-items:flex-start;gap:14px;border-top:1px solid var(--line);padding:14px 0}.rule-list>div>span,.rank-guide small{color:#8d7b51;font:italic 20px/1.5 Georgia,serif}.rule-list h3{font-size:16px}.rule-list p{font-size:14px;color:var(--muted);margin-top:4px}.rank-guide>div{align-items:center;padding:8px 0}.rank-guide b,.rank-guide em{display:block}.rank-guide em{font-size:11px;color:var(--muted);font-style:normal}.rank-guide code{margin-left:auto}.rank-guide code i{font:600 13px Georgia,serif}.red{color:#a6463e}.form-line{display:flex;gap:8px;margin-top:8px}.form-line input{border:1px solid #abb7a9;border-radius:6px;padding:9px 13px;width:0;flex:1;background:#fff;text-transform:uppercase}.form-line input:focus{outline:2px solid #658a70}.hr{margin:19px 0;border:0;border-top:1px solid var(--line)}.wide{width:100%}.notice{font-size:13px;color:#805b2d;background:#f5eddb;border-radius:8px;padding:12px}.google-slot{margin:14px 0}#toast{position:fixed;z-index:20;bottom:18px;left:50%;transform:translate(-50%);border-radius:8px;background:#183d30;color:#fff;padding:10px 17px;box-shadow:0 3px 15px #0002;font-size:14px;max-width:92%;pointer-events:none}#toast:empty{display:none}.error-box{margin:12px 0;color:#963e34;font-size:14px}.error-box:empty{display:none}.table-heading{margin:0 0 18px}.table-heading p{margin-top:4px}.panel-bar{padding:12px 0;border-top:1px solid var(--line)}.panel-bar>div{display:flex;align-items:center;gap:12px}.panel-bar small,.clock{font-size:11px;letter-spacing:1.4px;color:#6c7868}.clock{letter-spacing:0;font-weight:700;color:var(--pine);font-variant-numeric:tabular-nums}.felt{background:radial-gradient(ellipse at center,#2c654a,#194b37);border:5px solid #bba579;border-radius:65px;position:relative;isolation:isolate;min-height:390px;display:grid;place-items:center;padding:52px 72px;box-shadow:inset 0 0 0 2px #153f30,0 3px 9px #18271922;overflow:hidden}.felt:after{content:"";border-radius:53px;z-index:-1}.seat{display:flex;gap:6px;align-items:center;justify-content:center;font-size:12px;font-weight:600}.seat>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.felt .seat{position:absolute;background:#143e2e;color:#ecf0de;padding:4px 10px 4px 5px;border-radius:20px;max-width:125px;border:1px solid #78937a}.seat i{width:25px;height:25px;display:grid;place-items:center;border-radius:50%;background:#dce3ca;color:#36583e}.felt .my-seat{border-color:#c4aa69;color:#f2dc9a}.my-seat i{background:#efdba6}.top-seat{top:11px;left:50%;transform:translate(-50%)}.bottom-seat{bottom:10px;left:50%;transform:translate(-50%)}.left-seat{top:47%;left:10px}.right-seat{top:47%;right:10px}.board-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;width:min(100%,294px)}.card{position:relative;background:#fffbea;border:1px solid #c0bda7;border-radius:5px;min-width:0;display:flex;align-items:center;justify-content:center;gap:2px;color:#223e30;box-shadow:0 1px 3px #152c241a;aspect-ratio:1.05/1;line-height:1}.card b{font:700 23px/1 Georgia,serif}.card em{font: 18px/1 Georgia,serif}.card small{position:absolute;bottom:4px;left:5px;font:9px/1 Arial,sans-serif;opacity:.75}.card.red{color:var(--red)}.card.back{color:#eee3b6;background:repeating-linear-gradient(45deg,transparent 0 4px,#d4cf9855 4px 5px),repeating-linear-gradient(-45deg,#436b53 0 4px,#c1c19266 4px 5px),#436b53;border:2px solid #dfdbbd}.back-ornament{font:20px/1 Georgia,serif;opacity:.88}.back small{background:#2c523e;border-radius:2px;padding:1px 2px;color:#fff;opacity:1}.hand-strip,.results,.waiting,.metric-grid article,.admin table{background:#fffefa;border:1px solid var(--line);border-radius:10px}.hand-strip{display:flex;align-items:center;gap:22px;padding:13px 18px;margin-top:12px}.hand-strip p{font-size:12px;color:var(--muted)}.hand-pair,.pick-hand{display:flex;gap:7px}.hand-pair .card{width:47px;aspect-ratio:.78}.hand-strip>button,.locked{margin-left:auto}.locked{color:var(--pine);font-size:13px}.waiting{display:flex;align-items:center;flex-direction:column;text-align:center;padding:40px 18px;gap:12px}.wait-icon{width:64px;height:64px;display:grid;place-items:center;background:#e4ecdf;color:var(--pine);border-radius:16px}.room-code{font:700 28px/1.4 monospace;letter-spacing:4px}.waiting-seats{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.results{padding:16px 18px;margin-bottom:15px}.result-head,.result-row,.pick-info{display:flex;justify-content:space-between;align-items:center;gap:12px}.result-head h2{font-size:19px;color:#665b2a}.result-row{border-top:1px solid var(--line);margin-top:9px;padding-top:9px;font-size:13px}.result-row>div{display:flex;gap:4px}.result-row>b{max-width:25%;overflow-wrap:anywhere}.result-row>span{margin-right:auto}.mini{font:600 14px Georgia,serif;background:#f6f3e8;border:1px solid #dddbc8;padding:5px;border-radius:4px}.pick-info{color:#4f6d56;font-size:12px}.pick-slots{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin:10px 0}.pick-slot{display:grid;place-items:center;border:1px dashed #adb8a7;border-radius:4px;height:28px;color:#87957e;font-size:12px}.pick-slot.full{background:#e4ecd9;color:#31533b;border-style:solid}.grid-label{display:block;font-size:12px;margin:10px 0 5px}.pick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.pick-grid .card{height:clamp(36px,6.3dvh,55px);aspect-ratio:auto}.pick-grid small{font-size:12px}.pick-hand .card{width:53px;height:45px;aspect-ratio:auto}.card.picked{outline:3px solid #b78a30;outline-offset:-2px}.tick{position:absolute;right:2px;top:2px;background:#f4d580;color:#313f26;border-radius:50%;padding:2px;font-size:11px}.metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:20px 0}.metric-grid article{padding:16px}.metric-grid span,.metric-grid b{display:block}.metric-grid b{font-size:28px}.admin .section-h{margin-top:28px}.admin table{border-collapse:collapse;width:100%;margin-top:12px;font-size:14px}.admin th,.admin td{text-align:left;border-bottom:1px solid var(--line);padding:10px}@media(min-width:1500px){.hero{min-height:326px}.fan{scale:1.17}.hero-copy{padding-top:38px;padding-bottom:38px}}@media(max-width:1100px){.sidebar{width:185px;padding-inline:12px}.workspace{margin-left:185px}.page,.topbar{padding-inline:28px}.mode-card{gap:11px;padding:15px}.mode-icon{width:44px;height:46px}.round-arrow{width:25px;height:25px}.hero-copy{width:56%}.left-seat,.right-seat{max-width:80px!important}}@media(max-width:800px){.sidebar{width:70px;padding:22px 9px}.workspace{margin-left:70px}.brand{padding:0;justify-content:center}.brand>span:last-child,.nav-item span,.side-base small,.side-base{display:none}.sidebar nav{margin-top:35px}.nav-item{padding:12px;justify-content:center}.nav-item svg{width:21px;height:21px}.page,.topbar{padding-inline:22px}.mode-text strong{font-size:19px}.mode-text>span{font-size:12px}.mode-card{gap:10px}.round-arrow{border:0}.steps>div{gap:8px;padding-left:12px}.hero-art{inset-inline-start:48%}.fan{scale:.9}}@media(max-width:620px){.sidebar{width:auto;height:57px;position:relative;inset:auto;flex-direction:row;align-items:center;justify-content:space-between;padding:0 16px}.brand{gap:9px}.brand>span:last-child{display:block}.brand-mark{width:28px;height:33px;font-size:23px;border-radius:4px}.brand b{font-size:18px;letter-spacing:-.7px}.brand small{display:none}.sidebar nav{display:flex;gap:2px;margin:0}.nav-item{padding:8px}.nav-item.active{box-shadow:none}.nav-item svg{width:16px;height:16px}.workspace{margin:0}.topbar{height:44px;padding:0 16px}.crumb{font-size:11px;gap:7px}.account{font-size:11px;padding:3px 8px}.page{padding:19px 16px 26px}.page-intro{margin-bottom:15px}.page-intro h1,.table-heading h1{font-size:29px}.page-intro p{font-size:12px}.suit-line{font-size:13px;gap:2px}.suit-line:before{width:13px}.hero{min-height:245px}.hero-copy{padding:24px 0 24px 20px;width:62%}.hero-copy h2{font-size:30px}.hero-copy p{font-size:12px;line-height:1.65}.hero-copy p br{display:none}.hero-meta{gap:8px;font-size:10px;margin:11px 0 14px}.hero-meta svg{width:12px}.eyebrow{font-size:8px;letter-spacing:1.75px}.gold-btn{font-size:12px;min-height:36px;padding:7px 12px}.hero-art{inset-inline-start:53%}.fan{left:64%;top:50%;scale:.69}.g1{left:20%;top:20%}.g2{right:5%;top:15%;font-size:20px}.g3{bottom:18%}.modes,.how{margin-top:21px}.section-h{margin-bottom:11px}.section-h h2{font-size:19px}.section-h p{font-size:12px}.mode-grid{gap:9px}.mode-card{min-height:134px;padding:13px 11px;display:grid;grid-template-columns:1fr auto;gap:8px;align-content:start}.mode-icon{width:33px;height:33px;border-radius:8px}.mode-icon svg{width:20px}.mode-text{grid-row:2;grid-column:1/3}.mode-text small{font-size:7px}.mode-text strong{font-size:18px}.mode-text>span{font-size:11px}.round-arrow{grid-row:1;grid-column:2;width:19px}.steps{padding:13px 0;gap:7px}.steps>div{align-items:start;flex-direction:column;padding-left:7px;gap:5px}.steps small{font-size:18px}.steps b{font-size:13px}.steps em{font-size:10px}.felt{min-height:365px;border-radius:28px;padding:68px 21px 47px}.felt:after{border-radius:18px}.board-grid{max-width:235px;gap:5px}.felt .left-seat{top:14px;left:7px}.felt .right-seat{top:14px;right:7px}.felt .seat{font-size:10px;max-width:95px}.table-heading .secondary{padding:6px 9px;font-size:12px}.hand-strip{gap:9px;padding:9px}.hand-strip>div>b{font-size:13px}.result-row{gap:4px;flex-wrap:wrap}.mini{font-size:12px;padding:3px}.dialog-head{margin-bottom:10px}dialog{padding:17px}.metric-grid{grid-template-columns:repeat(2,1fr)}.rank-guide code i{font-size:12px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}}@media(max-width:620px){.hero-copy{width:56%}.hero-art{inset-inline-start:57%}.fan{left:48%;scale:.49}.g1{left:17%;top:19%}.g2{right:14%;top:24%}}
