:root{font-family:DM Sans,system-ui,sans-serif;color:#292a30;background:#f7f5ef}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible{outline:3px solid #5c7097;outline-offset:3px}button:disabled{opacity:.45;cursor:not-allowed}.app{min-height:100vh;background:radial-gradient(circle at 82% 0%,#e8e5dc 0,transparent 35%),#f7f5ef}header{height:76px;display:flex;justify-content:space-between;align-items:center;padding:0 clamp(18px,4vw,60px);border-bottom:1px solid #dedbd2;background:#fbfaf6dd;position:relative;z-index:5}.brand{border:0;background:none;font-family:Playfair Display,serif;font-weight:700;font-size:21px;letter-spacing:.1em;color:#353647}.brand:first-letter{color:#936f9e}nav{display:flex;gap:12px}nav button,.back-link,.muted{border:0;background:transparent;color:var(--muted);padding:10px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.22em;color:#8a6d74}.landing{max-width:1200px;margin:auto;min-height:calc(100vh - 76px);padding:clamp(50px,9vw,130px) 5%;position:relative;overflow:hidden}.landing h1{font-family:Playfair Display,serif;font-size:clamp(48px,6vw,88px);line-height:1.07;letter-spacing:-.04em;margin:18px 0 22px}.landing h1 em{font-style:normal;color:#936f9e}.landing p{font-size:18px;color:#747377;max-width:450px;line-height:1.6}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;max-width:580px;margin-top:35px}.hero-actions button,.actions button,.primary,.choices button,.rule-controls button{border:1px solid #d7d4cc;background:var(--surface);color:var(--text);border-radius:12px;padding:13px 19px;font-weight:700;box-shadow:0 5px 18px #27231c0b}.primary{background:#343347!important;color:#fff!important;border-color:#343347!important}.primary:hover{background:#65597a!important}.hero-cards{position:absolute;right:8%;top:22%;display:flex;transform:rotate(-8deg);filter:drop-shadow(0 25px 32px #3332)}.hero-cards .card:nth-child(2){transform:translateY(-32px) rotate(8deg);margin-left:-35px}.hero-cards .card:nth-child(3){transform:translateY(12px) rotate(16deg);margin-left:-35px}.panel{width:min(95%,500px);margin:55px auto;background:var(--surface);border-radius:22px;padding:35px;box-shadow:0 20px 60px #25241c13}.panel h1,.game-head h1{font-family:Playfair Display,serif;font-size:38px;margin:12px 0 28px}.panel label{display:block;margin:20px 0;font-size:14px;font-weight:700}.panel input:not([type=checkbox]){display:block;width:100%;margin-top:8px;padding:14px;border:1px solid #d8d6d0;border-radius:10px;background:var(--paper)}.field-title{font-size:14px;font-weight:700}.choices{display:flex;gap:8px;margin-top:8px}.choices button{flex:1;padding:14px 8px}.choices button.active{border-color:#796e9d;background:#eeeaf5}.choices small{display:block;font-size:10px}.check{display:flex!important;align-items:center;gap:10px}.check input{width:17px;height:17px}.full{width:100%;margin-top:12px}.lobby .seats{display:grid;gap:8px;margin:25px 0}.seat{display:flex;align-items:center;gap:14px;background:var(--paper);border-radius:11px;padding:12px}.seat span:nth-child(2){flex:1;font-weight:700}.seat small,.player-name small{display:block;font-size:11px;color:#8b8990}.seat b{font-size:12px;color:#61866d}.avatar{width:36px;height:36px;display:inline-grid;place-items:center;border-radius:50%;background:#dbd6df;color:#5c5368;font-weight:700}.toast{position:fixed;z-index:20;right:25px;top:86px;padding:14px 18px;background:#a84d4d;color:#fff;border-radius:10px}.toast button{border:0;background:none;color:#fff;margin-left:15px}.game-screen{max-width:1540px;margin:auto;padding:25px clamp(12px,3vw,45px)}.game-head{display:flex;justify-content:space-between;align-items:center;gap:20px}.game-head h1{margin:6px 0 18px;font-size:32px}.scoreboard{display:flex;gap:8px}.scoreboard>div{background:var(--surface);border-radius:12px;min-width:90px;padding:8px 13px;box-shadow:0 5px 18px #2927160a}.scoreboard small{font-size:10px;display:block;color:#8a8990}.scoreboard strong{font-size:23px}.scoreboard strong span{font-size:12px;color:#9b9aa0}.table{border-radius:30px;min-height:740px;background:radial-gradient(ellipse at center,#fff 5%,#f3f1ea 90%);box-shadow:inset 0 0 0 1px #e7e4db,0 25px 50px #625b4c14;padding:20px;position:relative}.opponents{display:flex;justify-content:space-around;gap:12px;min-height:210px}.player{border-radius:20px;background:#ffffffa8;padding:12px;box-shadow:0 6px 25px #39362d0a}.opponent{width:min(32%,400px)}.players-2 .opponent{width:min(480px,100%)}.turn{box-shadow:0 0 0 2px #9d8cba,0 8px 30px #796b9b22}.player-name{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700}.player-name>span:nth-child(2){flex:1}.player-name>b{font-size:11px;color:#7d7c83}.backs,.played{display:flex;overflow:hidden;min-height:55px;align-items:center}.backs{margin:8px 0}.backs .card+.card{margin-left:-35px}.lanes{display:flex;gap:10px}.lanes>div{flex:1;min-width:0}.lanes small{font-size:10px;color:#99949b;text-transform:uppercase;letter-spacing:.1em}.played .card+.card{margin-left:-19px}.center{display:flex;justify-content:center;align-items:center;gap:5vw;min-height:250px;padding:20px}.active-area{text-align:center}.active-area>.card,.active-area>.empty-card{margin:10px auto}.active-area p{color:#8a8790;font-size:13px}.empty-card{width:90px;height:130px;border:2px dashed #d6d1c7;border-radius:10px;display:grid;place-items:center;color:#aaa}.river{max-width:610px}.river-row{display:flex;flex-wrap:wrap;gap:5px;margin-top:15px}.river-pile{border:1px solid transparent;background:transparent;position:relative;padding:0;transition:transform .2s}.river-pile.legal:hover{transform:translateY(-5px);border-color:#8a75a9;border-radius:9px}.pile-number{position:absolute;z-index:2;left:2px;top:0;font-size:10px;background:var(--surface);border-radius:4px;padding:2px}.pile-under{position:absolute;bottom:-5px;right:-3px;background:#77718b;color:#fff;font-size:11px;border-radius:3px;padding:2px}.empty-pile{display:block;width:60px;height:86px;border:1px dashed #bbb;border-radius:5px}.aside-info{display:flex;align-items:center;gap:10px;font-size:13px}.self{max-width:1050px;margin:0 auto;background:var(--surface)}.self .lanes{margin:12px 0}.self .played{min-height:65px}.hand{display:flex;gap:6px;overflow-x:auto;padding:12px 5px 18px;scrollbar-color:#c8c1cf transparent}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;border-top:1px solid #efede9;padding-top:12px}.actions>span{flex:1;color:#8a8790;font-size:13px}.actions button{padding:10px 15px}.notice{position:absolute;top:45%;left:50%;transform:translate(-50%,-50%);background:#fef7e3;padding:18px;border-radius:12px;box-shadow:0 10px 30px #3322;z-index:4}.card{--ink: #557;flex:none;position:relative;display:flex;flex-direction:column;justify-content:space-between;width:90px;height:130px;padding:7px;border:1px solid #e2ded4;border-radius:9px;background:#fbfaf5;color:var(--ink);box-shadow:0 3px 9px #302a2320;overflow:hidden;transition:box-shadow .2s}.card.small{width:59px;height:84px;padding:4px;border-radius:6px}.card.selected{outline:3px solid #9b85b8;outline-offset:2px;transform:translateY(-6px)}.card-top,.card-foot{display:flex;justify-content:space-between;align-items:center;z-index:2;font-size:15px}.card-foot,.card.small .card-top{font-size:10px}.card.small .card-foot{font-size:7px}.card strong{z-index:2;font-family:Playfair Display,serif;font-size:67px;line-height:.8;text-shadow:1px 2px white}.card.small strong{font-size:41px}.paint{position:absolute;inset:25% -20% 14% 2%;transform:rotate(-11deg);background:var(--ink);opacity:.22;border-radius:59% 38% 60% 37%;filter:blur(1px)}.paint i{position:absolute;background:var(--ink);border-radius:50%;opacity:.6}.paint i:nth-child(1){width:12px;height:12px;left:10%;top:-15%}.paint i:nth-child(2){width:6px;height:6px;right:10%;bottom:-15%}.paint i:nth-child(3){width:4px;height:4px;left:25%;bottom:-10%}.card.back{display:grid;place-items:center;background:repeating-linear-gradient(45deg,#86809c 0 3px,#767189 3px 6px);color:#fff;font-size:24px;border:4px solid #fbfaf6}.overlay,.modal{position:fixed;inset:0;background:#25222bb5;z-index:10;display:grid;place-items:center;padding:15px}.result{width:min(92vw,460px);background:var(--surface);border-radius:22px;padding:30px;text-align:center;box-shadow:0 20px 80px #0003}.result h2{font-family:Playfair Display,serif;font-size:30px}.result .card{margin:15px auto}.result>strong{display:block;font-size:26px}.result p{color:#777}.master{margin:10px;color:#956d2b;font-weight:700;letter-spacing:.1em}.modal .panel{margin:0}.rule-graphic{min-height:180px;border-radius:18px;background:#f4f0e9;padding:25px;display:flex;align-items:center;gap:22px}.rule-graphic span{font-family:Playfair Display,serif;color:#8b6d9d;font-size:65px}.rule-graphic p{line-height:1.5}.rule-controls{display:flex;justify-content:space-between;align-items:center;margin-top:20px}.hint{color:#888;font-size:13px}.reduced *{animation:none!important;transition:none!important;scroll-behavior:auto!important}@media(max-width:900px){.hero-cards{opacity:.3;right:-6%;top:40%}.landing h1,.landing p,.hero-actions{position:relative;z-index:1}.table{padding:10px}.opponents{min-height:190px}.opponent{padding:8px}.opponent .lanes{display:none}.center{min-height:210px;gap:16px}.river-row{max-width:265px}.river .card.small{width:55px;height:78px}}@media(max-width:600px){header{height:60px;padding:0 12px}.brand{font-size:15px}nav button{font-size:12px;padding:6px}.landing{padding-top:75px}.landing h1{font-size:50px}.hero-cards{display:none}.game-screen{padding:12px 5px}.game-head{padding:0 10px}.game-head h1{font-size:22px}.scoreboard>div{min-width:63px;padding:5px}.scoreboard strong{font-size:18px}.table{border-radius:18px}.opponents{gap:4px;min-height:140px}.opponent{width:33%;overflow:hidden}.players-2 .opponent{width:100%}.opponent .backs{min-height:42px}.opponent .card.small{width:40px;height:57px}.opponent .card.small strong{font-size:25px}.opponent .backs .card+.card{margin-left:-26px}.player-name{font-size:11px}.player-name .avatar{width:25px;height:25px}.player-name>b{font-size:9px}.center{flex-direction:column;min-height:300px;padding:10px}.active-area .card{width:60px;height:85px}.active-area .card strong{font-size:42px}.river-row{max-width:100%;justify-content:center}.river .card.small{width:40px;height:57px}.river .card.small strong{font-size:25px}.river .card.small .card-top{font-size:8px}.river .card.small .card-foot{display:none}.self .card{width:70px;height:100px}.self .card strong{font-size:48px}.self .lanes{display:none}.actions>span{flex-basis:100%}.panel{padding:22px;margin:22px auto}}.official-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.38;pointer-events:none}.paint:after{content:"";position:absolute;left:5%;right:8%;bottom:4%;height:48%;background:var(--ink);clip-path:polygon(0 100%,14% 60%,27% 82%,47% 22%,64% 75%,79% 42%,100% 100%)}.card[data-color=brown] .paint:after,.card[data-color=purple] .paint:after{clip-path:polygon(0 100%,0 55%,15% 55%,15% 25%,30% 25%,30% 55%,45% 55%,45% 8%,62% 8%,62% 55%,78% 55%,78% 30%,92% 30%,92% 55%,100% 55%,100% 100%)}.card[data-color=green] .paint:after,.card[data-color=turquoise] .paint:after{clip-path:polygon(0 100%,0 70%,18% 62%,33% 72%,45% 45%,66% 55%,82% 25%,100% 45%,100% 100%)}.card[data-color=red] .paint:after{clip-path:polygon(0 100%,14% 60%,30% 81%,47% 18%,60% 55%,72% 30%,100% 100%)}.card[data-color=black] .paint:after{clip-path:polygon(0 100%,0 40%,9% 40%,9% 68%,18% 68%,18% 23%,27% 23%,27% 60%,39% 60%,39% 14%,50% 14%,50% 70%,63% 70%,63% 28%,72% 28%,72% 50%,83% 50%,83% 35%,100% 35%,100% 100%)}:root{--paper: #f3f0e8;--surface: #fffdf7;--text: #302c3d;--muted: #706b7b;--line: #d9d3c9;--accent: #634264;--soft: #e8e0e9;color:var(--text);background:var(--paper);font-family:Trebuchet MS,system-ui,sans-serif}:root[data-theme=dark]{--paper: #191822;--surface: #262331;--text: #eee8df;--muted: #bbb2c5;--line: #494153;--accent: #bfa4cf;--soft: #393044;color-scheme:dark}body{color:var(--text)}button{color:inherit}.app{background:radial-gradient(ellipse at 90% 15%,#97779518,transparent 50%),var(--paper)}header{background:var(--paper);border-color:var(--line);max-width:1440px;margin:auto;height:88px}.brand{color:var(--text);display:flex;align-items:center;gap:12px;font-family:Georgia,serif;font-size:26px;letter-spacing:.12em}.brand-mark{display:grid;place-items:center;background:#644366;color:#fffdf7;width:36px;height:44px;border-radius:4px 12px;font-style:italic}nav button{color:var(--muted);font-size:13px}nav button:hover,.back-link:hover{color:var(--accent)}.eyebrow{color:var(--accent);font-size:10px;letter-spacing:.16em}h1,h2{font-family:Georgia,serif;font-weight:400}.landing{max-width:1160px;padding:0 32px;min-height:auto;overflow:visible}.hero{position:relative;display:grid;grid-template-columns:1.3fr 1fr;align-items:center;min-height:340px;padding:38px 0 28px}.landing h1{font-family:Georgia,serif;font-size:clamp(36px,4.5vw,62px);line-height:1.08;margin:18px 0;font-weight:400;letter-spacing:-.045em}.landing h1 em{color:var(--accent);font-style:italic}.landing p{font-size:14px;color:var(--muted);line-height:1.7}.hero .back-link{padding-left:0;font-size:12px;text-decoration:underline;text-underline-offset:5px}.hero-cards{position:relative;inset:auto;justify-content:center;transform:rotate(-12deg);opacity:1;filter:drop-shadow(0 18px 15px #2d18392b)}.hero-cards .card{width:125px;height:180px;border-radius:9px}.hero-cards .card strong{font-size:88px}.hero-cards .card:nth-child(2){margin-left:-20px}.hero-cards .card:nth-child(3){margin-left:-20px}.home-grid{display:grid;grid-template-columns:1fr 1.22fr;gap:24px}.home-grid h2{font-size:31px;margin:18px 0 10px;letter-spacing:-.04em}.public-table,.play-options{padding:30px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.public-table{background:linear-gradient(150deg,#745075,#40354f);color:#fff9ee;position:relative;overflow:hidden}.public-table .eyebrow,.public-table p{color:#e3d5e4}.public-table small{display:block;font-size:11px;text-align:center;margin-top:14px;color:#e3d5e4}.public-table .primary{background:#f4ecd9!important;color:#40334a!important;border-color:#f4ecd9!important}.table-orbit{display:flex;justify-content:center;align-items:center;gap:25px;margin:20px auto;height:80px}.table-orbit span{border:1px dashed #cab2ce;border-radius:50%;width:49px;height:49px;display:grid;place-items:center;font-size:12px}.table-orbit b{border:1px solid #b297b4;padding:22px 18px;border-radius:50%;font:italic 19px Georgia,serif;letter-spacing:.1em}.public-table .availability{text-align:center;font-size:12px}.mode-card{display:flex;align-items:center;gap:18px;width:100%;text-align:left;padding:19px 0;border:none;border-top:1px solid var(--line);background:transparent;color:var(--text)}.mode-card:first-of-type{margin-top:23px}.mode-card>span:nth-child(2){flex:1}.mode-card strong{display:block;font-size:17px;margin-bottom:6px}.mode-card small{color:var(--muted);font-size:12px;line-height:1.5;display:block}.mode-icon{display:grid;place-items:center;width:45px;height:50px;flex:none;font-size:27px;border-radius:6px 14px;background:var(--soft);color:var(--accent)}.mode-card:hover:not(:disabled) .mode-icon{transform:rotate(-8deg)}footer{display:flex;justify-content:space-between;align-items:center;padding:24px 0;font-size:11px;color:var(--muted)}footer button{font-size:12px}.primary{background:#634264!important;border-color:#634264!important}.panel{border:1px solid var(--line);border-radius:16px;background:var(--surface)}.panel h1,.game-head h1,.result h2{font-family:Georgia,serif}.panel input:not([type=checkbox]){color:var(--text);border-color:var(--line)}.panel p{line-height:1.65}.check input{accent-color:#84618f}.choices button{background:var(--surface);border-color:var(--line);color:var(--text)}.choices button.active{background:var(--soft);border-color:var(--accent)}.hint,.actions>span,.active-area p,.player-name>b,.lanes small,.scoreboard small{color:var(--muted)}.resume-banner{display:flex;justify-content:space-between;align-items:center;gap:15px;background:var(--soft);padding:18px 24px;border-radius:12px;margin-bottom:20px}.table{background:radial-gradient(ellipse at center,var(--surface),var(--paper));box-shadow:inset 0 0 0 1px var(--line)}.player{background:var(--surface)}.actions{border-color:var(--line)}.card{background:#faf8ef;border:1px solid #e6e1d6;padding:7px;color:var(--ink)}.card .paint{inset:20% 0;transform:none;border-radius:0;opacity:1;filter:none;background:linear-gradient(150deg,color-mix(in srgb,var(--ink),white 30%),var(--ink) 65%,color-mix(in srgb,var(--ink),black 35%));clip-path:polygon(0 0,8% 4%,12% 0,20% 6%,28% 2%,34% 7%,42% 1%,50% 4%,58% 0,65% 7%,72% 2%,80% 6%,90% 0,100% 4%,100% 100%,90% 96%,83% 100%,76% 94%,68% 98%,60% 93%,50% 100%,43% 96%,36% 100%,25% 94%,17% 99%,9% 94%,0 100%)}.paint:before{content:"";position:absolute;inset:12% 0 0;background:#fff3;clip-path:polygon(0 100%,0 55%,17% 55%,17% 30%,28% 30%,28% 10%,42% 10%,42% 40%,65% 40%,65% 0,78% 0,78% 55%,100% 55%,100% 100%)}.paint:after{left:0;right:0;bottom:0;height:68%;background:#15192a55}.card strong{color:#fffdf4;text-shadow:2px 3px 0 #2225;font-family:Georgia,serif;font-weight:400;align-self:center;line-height:1}.card-top{font-size:13px}.card.back{background:repeating-linear-gradient(0deg,#443e54 0 12px,#6a597a 12px 24px,#a38ca9 24px 36px,#dcd1de 36px 48px);color:#fff;text-shadow:0 2px 2px #30243c}.card.back:after{content:"DUKE";position:absolute;top:35%;left:0;right:0;padding:5px 0;background:#f8f4eb;color:#55415c;font:700 14px Georgia,serif;letter-spacing:.07em;text-align:center;text-shadow:none}.official-art{opacity:1}.card:has(.official-art)>:not(.official-art){visibility:hidden}.modal{z-index:30;overflow:auto;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal .panel{max-height:calc(100dvh - 30px);overflow:auto}.book-shell{width:min(880px,100%);margin:auto}.book-heading{display:flex;align-items:center;justify-content:space-between;padding:8px 0}.book-heading .eyebrow,.book-heading button{color:#f3ecdf}.book{display:grid;grid-template-columns:1fr 1fr;background:var(--surface);border-radius:6px 15px 15px 6px;box-shadow:0 6px 0 var(--line),0 12px 0 var(--surface),0 20px 70px #0005;animation:page-in .25s ease}.book-page{position:relative;padding:36px;min-height:390px}.book-page:first-child{background:linear-gradient(90deg,transparent 92%,#34233e12);border-right:1px solid var(--line)}.chapter-number{font:italic 50px Georgia,serif;color:var(--accent);opacity:.65}.book h1{font-size:34px;margin:20px 0;line-height:1.1}.book p{line-height:1.7;color:var(--muted);font-size:14px}.book-note{font:italic 14px Georgia,serif;color:var(--accent);margin:22px 0 30px}.folio{font-size:8px;letter-spacing:.13em;position:absolute;bottom:22px}.example{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.lesson-card{border:9px solid #fff9ec;background:linear-gradient(145deg,#5f9cae,#244b64);border-radius:9px;width:106px;height:148px;color:#fff;font:60px Georgia,serif;box-shadow:0 8px 20px #211a2833;transform:rotate(6deg);transition:transform .3s}.lesson-card.red{background:linear-gradient(145deg,#c98283,#8e3851)}.choices .lesson-card{font:21px Georgia,serif;color:#fff;background:#39687f}.choices .lesson-card.red{background:#9b4058}.lesson-card.flipped{transform:rotate(-6deg)}.lesson-feedback{min-height:64px}.book-shell .rule-controls{margin:30px 0 10px;color:#fff}.book-shell .rule-controls button{background:var(--surface);color:var(--text);border-color:var(--line)}@keyframes page-in{0%{opacity:.4;transform:translate(8px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}@media(max-width:700px){header{height:72px;padding:0 16px}.brand{font-size:19px;gap:6px}.brand-mark{width:26px;height:34px}nav{gap:2px}nav button{font-size:11px;padding:6px}.landing{padding:0 18px}.hero{min-height:0;padding:35px 0 24px;grid-template-columns:1fr}.landing h1{font-size:44px}.hero-cards{display:flex;margin:42px 0 18px}.hero-cards .card{width:95px;height:139px}.hero-cards .card strong{font-size:67px}.home-grid{grid-template-columns:1fr;gap:16px}.public-table,.play-options{padding:25px}footer{flex-wrap:wrap;gap:6px}.resume-banner{flex-direction:column;align-items:stretch}.book{grid-template-columns:1fr}.book-page{min-height:auto;padding:22px}.book-page:first-child{border-right:none;border-bottom:1px solid var(--line)}.chapter-number{font-size:26px}.book h1{font-size:28px;margin:10px 0}.folio,.book-note{display:none}.example{padding:20px}.example>p{margin:8px 0}.lesson-card{width:76px;height:103px;font-size:42px}.lesson-feedback{min-height:35px}.book-shell .rule-controls button{padding:12px;font-size:12px}}:root{--accent: #7951b0;--soft: #ece3fb}:root[data-theme=dark]{--accent: #c9a6ff;--soft: #3b2c52}.brand,.landing h1,.home-grid h2,.panel h1,.game-head h1,.result h2,.book h1{font-family:ui-rounded,Arial Rounded MT Bold,Trebuchet MS,Verdana,sans-serif;font-weight:900;letter-spacing:-.045em}.brand{letter-spacing:-.035em;font-size:29px}.brand-mark{font-family:inherit;font-style:normal;border-radius:12px;background:#8055b7;box-shadow:0 4px #4e326f;transform:rotate(-7deg)}.landing h1{font-size:clamp(36px,4.7vw,60px);line-height:1.12}.landing h1 em{font-style:normal;color:var(--accent)}.home-grid h2{font-size:28px;line-height:1.18}.eyebrow{letter-spacing:.09em;font-weight:800}nav{gap:8px;align-items:center}nav .nav-tool{display:inline-flex;gap:8px;align-items:center;justify-content:center;min-height:42px;min-width:42px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--text);padding:10px 13px;font-weight:700;box-shadow:0 3px 0 var(--line)}nav .nav-tool:hover{background:var(--soft);transform:translateY(-1px)}nav .icon-only{color:var(--accent);padding:10px}nav .leave-tool{color:#b84265}.nav-tool svg{flex:none}.primary{background:#8055b7!important;border-color:#8055b7!important;box-shadow:0 4px #50346f;border-radius:14px}.primary:hover{background:#9268c9!important}.primary:active:not(:disabled),.mode-card:active:not(:disabled),nav .nav-tool:active{transform:translateY(2px);box-shadow:none}.public-table,.play-options,.panel{border:2px solid var(--line);border-radius:25px;box-shadow:0 5px 0 var(--line)}.public-table{background:radial-gradient(circle at 100% 0,#a685d2 0,transparent 52%),linear-gradient(145deg,#805bb2,#594277);border-color:#765593;box-shadow:0 5px #4d366a}.public-table .primary{box-shadow:0 4px #c4b38f}.mode-card{padding:15px;margin-top:12px;border:2px solid var(--line);border-radius:18px;background:var(--paper);gap:14px;box-shadow:0 3px 0 var(--line);transition:transform .15s,background .15s}.mode-card:first-of-type{margin-top:22px}.mode-card:hover:not(:disabled){background:var(--soft);transform:translateY(-2px)}.mode-icon{border-radius:15px;background:#e5d7ff;color:#7350a1;transform:rotate(-5deg)}.mode-card:nth-of-type(2) .mode-icon{color:#3f8476;background:#d2ede2;transform:rotate(5deg)}.mode-card:nth-of-type(3) .mode-icon{color:#a06f38;background:#f4e4c2}.mode-card strong{font-size:17px}.table-orbit b{font:900 18px ui-rounded,Trebuchet MS,sans-serif;border:2px solid #d9c6ef;border-radius:24px;transform:rotate(-7deg);background:#ffffff12}.table-orbit span{border-width:2px;background:#ffffff12}.settings-panel{position:relative}.settings-heading{display:flex;align-items:center;gap:16px;margin:22px 0}.settings-heading h1{font-size:30px;margin:4px 0 0}.settings-symbol{display:inline-grid;place-items:center;width:56px;height:56px;background:var(--soft);color:var(--accent);border-radius:18px;transform:rotate(-6deg)}.settings-symbol svg{width:29px;height:29px}.close-settings{display:block;margin-left:auto;border-radius:12px;background:var(--paper)}.settings-panel .choices button{display:flex;align-items:center;justify-content:center;gap:9px;border:2px solid var(--line);border-radius:14px}.settings-panel .choices button.active{border-color:var(--accent)}.settings-panel .check{background:var(--paper);border:1px solid var(--line);border-radius:15px;padding:16px;margin:12px 0;font-size:14px}.settings-panel .check svg{color:var(--accent);order:-2}.settings-panel .check span{order:-1;flex:1}.settings-panel .check input{appearance:none;width:44px;height:26px;border-radius:20px;border:2px solid var(--line);background:var(--line);margin:0;position:relative;flex:none;cursor:pointer;transition:background .2s}.settings-panel .check input:after{content:"";position:absolute;width:18px;height:18px;left:2px;top:2px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0003;transition:transform .2s}.settings-panel .check input:checked{background:#8055b7;border-color:#8055b7}.settings-panel .check input:checked:after{transform:translate(18px)}.settings-panel .hint{font-size:12px}.leave-modal{z-index:40}.leave-modal .panel{max-width:460px}.leave-modal h1{font-size:30px}.book-note{font-family:inherit;font-style:normal}.book h1{font-size:30px}@media(max-width:700px){header{gap:12px}.brand{font-size:23px}nav{gap:7px}nav .nav-tool{padding:8px;min-width:36px;min-height:36px;border-radius:12px}nav .nav-tool span{display:none}nav .nav-tool svg{width:19px;height:19px}.landing h1{font-size:39px}.home-grid h2{font-size:26px}.mode-card{padding:13px;gap:12px}.mode-icon{width:38px;height:44px}.settings-heading h1{font-size:28px}.book h1{font-size:25px}}
