@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Outfit:wght@400;500;600;700;800;900&display=swap');
:root{font-family:'DM Sans',Arial,sans-serif;color:#e9f0e8;background:#0a2422;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(ellipse at 48% -30%,#214943 0,transparent 58%),#092321}.shell{max-width:1216px;padding:0 34px;margin:auto}.topbar{height:93px;border-bottom:1px solid #34534d;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px;font:800 17px Outfit,sans-serif;letter-spacing:.11em}.brand b{color:#d2f26c}.brand-icon{display:grid;place-items:center;width:38px;height:38px;border:1px solid #9fba9c;border-radius:11px;font-size:25px;color:#d2f26c}.top-actions{display:flex;gap:15px;align-items:center}button{font-family:inherit;cursor:pointer}.subtle,.icon-btn{color:#c6d4cb;background:none;border:0;font-weight:700}.subtle{font-size:13px}.subtle span{font-size:16px;margin-left:5px}.icon-btn{border:1px solid #42645a;border-radius:10px;width:35px;height:35px;font-size:18px}.heading{padding:34px 0 34px}.eyebrow{color:#c5e87a;letter-spacing:.18em;font-size:10px;font-weight:800;display:flex;align-items:center;gap:8px}.live-dot{height:6px;width:6px;border-radius:50%;background:#d3f36c;box-shadow:0 0 9px #d3f36c}.heading h1{font:800 clamp(40px,5.1vw,65px)/.97 Outfit,sans-serif;letter-spacing:-.045em;margin:18px 0 12px}.heading h1 em{font-style:normal;color:#d4ef83}.heading p{font-size:14px;color:#a2b8ad;margin:0}.game-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:24px}.game-panel{min-width:0}.table-top{border:1px solid #4b695d;border-radius:15px;padding:21px 25px 24px;background:radial-gradient(ellipse at 50% 42%,#225b4b,#174437 65%,#123a31 100%);box-shadow:inset 0 0 0 5px #10382f,0 18px 35px #0417155e}.table-meta{display:flex;justify-content:space-between;align-items:center}.player-info{display:flex;align-items:center;gap:11px}.avatar{width:37px;height:37px;border-radius:50%;display:grid;place-items:center;font-weight:800}.ai-avatar{background:#315d50;color:#ccef83}.you-avatar{background:#d6ed8d;color:#234238}.name{font-size:12px;font-weight:800;letter-spacing:.07em}.small{font-size:11px;color:#92b3a2;margin-top:3px}.status-tag{font-size:8px;letter-spacing:.07em;background:#365e53;border-radius:4px;padding:4px 6px;color:#c6e895;margin-left:5px;vertical-align:middle}.human-tag{background:#607047;color:#e6f5bc}.deck-status{display:flex;align-items:center;gap:7px;color:#a8c3b4;font-size:11px}.deck-status strong{color:#f2f4e4;font-size:22px;font-family:Outfit}.deck-mini{color:#d0e780;font-size:19px}.play-field{padding:23px 10px 22px;position:relative}.card-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;max-width:510px;margin:0 auto}.playing-card{position:relative;aspect-ratio:.73;max-height:158px;min-height:107px;border-radius:9px;background:#fffdf5;border:2px solid #e7e9d9;box-shadow:0 5px 0 #c5cfc2,0 9px 14px #08281d70;color:#1b322c;text-align:left;padding:8px;transition:transform .12s,box-shadow .12s;user-select:none;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;outline-offset:4px}.playing-card .corner{font:800 clamp(16px,2vw,23px)/.84 Outfit,sans-serif}.playing-card .corner small{display:block;font-size:16px;line-height:1.3}.playing-card .pip{align-self:center;font:400 clamp(35px,4.5vw,53px)/1 Georgia,serif;margin:auto}.playing-card.red{color:#d84f48}.playing-card:disabled{cursor:default}.playing-card:not(:disabled):hover{transform:translateY(-5px);box-shadow:0 9px 0 #c5cfc2,0 14px 16px #08281d70}.playing-card.selected{border-color:#e0f978;box-shadow:0 0 0 4px #d8ef6f,0 7px 20px #dbff8580;transform:translateY(-5px)}.playing-card.match-cue{animation:glow 1.3s infinite alternate}@keyframes glow{to{box-shadow:0 0 0 2px #d6ef80,0 5px 0 #c5cfc2}}.card-placeholder{min-height:107px;aspect-ratio:.73;border:1px dashed #6a937e;border-radius:9px;background:#a1d5ad12;display:flex;align-items:center;justify-content:center;color:#659681;font-size:30px}.centerline{display:flex;gap:15px;align-items:center;justify-content:center;margin:25px 0;color:#bfdbad;font-size:10px;letter-spacing:.06em;font-weight:800;text-align:center;min-height:20px}.centerline span{height:1px;background:#538371;flex:1;max-width:130px}.no-match-overlay{position:absolute;inset:0;z-index:3;background:#092a26d9;backdrop-filter:blur(5px);border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;opacity:0;visibility:hidden;transform:scale(.97);transition:opacity .22s,transform .22s,visibility .22s;pointer-events:none}.no-match-overlay.visible{opacity:1;visibility:visible;transform:scale(1)}.no-match-symbol{border:1px solid #d4ee82;border-radius:50%;width:62px;height:62px;display:grid;place-items:center;font-size:36px;color:#e2f89c;animation:turn-symbol 1.7s ease-in-out infinite}.no-match-overlay strong{font:800 clamp(24px,4vw,34px) Outfit,sans-serif;letter-spacing:.14em;color:#e7f5bf}.no-match-overlay small{font-size:10px;letter-spacing:.24em;color:#b8cfbd;font-weight:800}.loading-track{margin-top:13px;width:168px;height:4px;border-radius:4px;background:#43695d;overflow:hidden}.loading-track span{display:block;height:100%;background:#d5ef81;width:100%;transform-origin:left;animation:countdown 1.7s linear both}@keyframes countdown{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes turn-symbol{50%{transform:rotate(35deg) scale(1.1)}}.lower{margin-top:8px}.game-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:19px 0}.toolbar-note{font-size:12px;color:#a8bdb2;display:flex;align-items:center;gap:8px;line-height:1.5}.sparkle{color:#d3ec86;font-size:24px}.main-btn{background:#d7ee88;border:0;border-radius:8px;padding:15px 22px;color:#18392f;font-size:13px;font-weight:800;white-space:nowrap;box-shadow:0 4px 0 #8fa95b}.main-btn:hover{background:#e6f7aa}.main-btn:active{transform:translateY(2px);box-shadow:0 2px 0 #8fa95b}.main-btn span{margin-left:12px}.sidebar{display:flex;flex-direction:column;gap:13px}.panel-label{font-size:10px;letter-spacing:.17em;font-weight:800;color:#a4bcae;margin:0 0 3px}.setting-card,.stat-card{border:1px solid #355c50;background:#12352f;border-radius:12px;padding:19px}.setting-card label{font-size:12px;font-weight:800;display:block;margin-bottom:13px}.setting-card select{background:#20483d;border:1px solid #4e7665;border-radius:7px;color:#f0f3e4;width:100%;padding:13px 10px;outline:none;font:600 12px 'DM Sans',sans-serif}.setting-card p{font-size:11px;line-height:1.65;color:#8eaa9c;margin:12px 0 0}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;text-align:center;margin-top:20px}.stat-grid>div+div{border-left:1px solid #315b4e}.stat-grid strong{font:800 30px Outfit;display:block}.stat-grid small{font-size:9px;color:#8daf9e;letter-spacing:.13em;font-weight:800}.tip{display:flex;gap:12px;padding:16px;background:#253f31;border:1px solid #566e4b;border-radius:11px}.tip-star{color:#d8ef8e;font-size:26px}.tip b{font-size:10px;color:#d8ef8e;letter-spacing:.13em}.tip p{margin:6px 0 0;color:#b6cbb7;font-size:11px;line-height:1.6}.version{margin-top:auto;font-size:9px;color:#65897b;letter-spacing:.16em;font-weight:800}.version span{margin:0 7px}footer{display:flex;justify-content:space-between;border-top:1px solid #315247;padding:24px 0;margin-top:28px;color:#6f9987;font-size:10px;letter-spacing:.13em;font-weight:700}dialog{max-width:510px;width:calc(100% - 36px);border:1px solid #658977;border-radius:17px;background:#103a32;color:#e9f4e7;padding:25px;box-shadow:0 25px 70px #0008}dialog::backdrop{background:#041b18cb;backdrop-filter:blur(4px)}.modal-head{display:flex;justify-content:space-between;align-items:start}.modal-head h2{font:800 34px Outfit;margin:10px 0}.modal-head .icon-btn{flex-shrink:0}dialog ol{padding-left:22px;font-size:14px;line-height:1.65;color:#cfdfd3}dialog li{margin:12px 0}dialog .fine-print{color:#98b6a5;font-size:12px;line-height:1.5}dialog .main-btn{width:100%;margin-top:12px}@media(max-width:850px){.game-layout{grid-template-columns:1fr}.sidebar{display:grid;grid-template-columns:1fr 1fr}.sidebar>.panel-label,.version{display:none}.tip{grid-column:1/-1}.shell{padding:0 18px}.heading{padding-top:28px}}@media(max-width:500px){.topbar{height:75px}.brand{font-size:12px;letter-spacing:.06em}.brand-icon{width:30px;height:30px;font-size:20px}.subtle{font-size:11px}.heading h1{font-size:43px}.table-top{padding:16px 10px 20px}.play-field{padding:22px 0}.card-row{gap:7px}.playing-card{padding:5px;min-height:97px;border-radius:7px}.playing-card .corner{font-size:17px}.playing-card .corner small{font-size:13px}.playing-card .pip{font-size:35px}.table-meta{padding:0 4px}.deck-status span:last-child{display:none}.centerline{margin:22px 0;font-size:9px;gap:8px}.game-toolbar{align-items:stretch;flex-direction:column}.main-btn{width:100%}.sidebar{gap:10px}.setting-card,.stat-card{padding:13px}.stat-grid strong{font-size:24px}footer{gap:15px;flex-direction:column;font-size:9px}}@media(prefers-reduced-motion:reduce){.no-match-overlay,.playing-card{transition:none}.no-match-symbol,.loading-track span{animation:none}}
