:root{color-scheme:dark;--page:#140f0d;--surface:#241b18;--frame:#503b2d;--gold:#eac58c;--accent:#dba96a;--muted:#bfada0;--glow:rgba(239,172,85,.2);--card-white:#f9f3e7;--card-ratio:1.425;--card-step:clamp(18px,3.25vw,32px);font-family:Georgia,'Times New Roman',serif}
*{box-sizing:border-box}html{min-height:100%;background:#100d0d}body{margin:0;min-width:310px;background:radial-gradient(ellipse at 45% -20%,rgba(186,104,45,.2),transparent 50%),var(--page);color:#f8ede1}button,select,input{font:inherit}button{cursor:pointer}button:disabled{opacity:.4;cursor:default}button:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid #91fff2;outline-offset:3px}.site-shell{max-width:1450px;margin:auto;padding:0 24px}.site-header{height:94px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid rgba(245,218,171,.19)}.brand{display:flex;align-items:center;gap:12px}.brand-emblem{display:grid;place-items:center;width:43px;height:43px;border:2px solid #cd9c5c;border-radius:50%;color:#f3d19e;font-size:30px;background:radial-gradient(circle,#4b3027,#24160f)}.brand-title{font-size:clamp(18px,2.3vw,27px);letter-spacing:3px;color:#fbebd4;white-space:nowrap}.brand-title strong{color:#e2af72;font-weight:normal}.brand-overline{font:9px/1.6 Arial,sans-serif;letter-spacing:2.4px;color:#b6a18c}.header-actions{display:flex;gap:12px;align-items:center}.build-tag{font:10px Arial,sans-serif;letter-spacing:1.4px;color:#cbb7a0;border:1px solid #63513d;border-radius:99px;padding:9px 11px}.icon-button{border:1px solid #806340;background:#35271f;color:#f7d9aa;width:38px;height:38px;border-radius:50%;font-size:20px}.world-hero{height:234px;position:relative;overflow:hidden;background:#241913;border-bottom:3px solid #8c6138}.hero-art{position:absolute;inset:0;background-image:url('assets/rome.svg');background-position:center;background-size:cover;opacity:.98;transition:background-image .15s}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(16,13,14,.92) 0%,rgba(19,14,15,.60) 39%,transparent 75%),linear-gradient(0deg,rgba(16,10,10,.35),transparent 65%)}.hero-content{position:absolute;left:48px;top:40px;max-width:550px}.eyebrow{color:var(--gold);font:11px Arial,sans-serif;letter-spacing:3px}.hero-content h1{font-size:clamp(34px,5.2vw,62px);font-weight:normal;margin:10px 0 10px;text-shadow:0 4px 15px #14100f}.hero-content p{font-size:16px;color:#e5cda9;margin:0;font-style:italic}.hero-theme-marker{position:absolute;right:30px;bottom:20px;font-size:50px;color:rgba(246,210,157,.55);letter-spacing:7px}.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 326px;gap:24px;margin-top:24px}.game-column{min-width:0}.game-toolbar{padding:17px 20px;background:linear-gradient(110deg,#2b221e,#1e1b1b);border:1px solid #5a4838;border-bottom:none;border-radius:10px 10px 0 0}.game-toolbar-top,.game-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.game-toolbar-top{margin-bottom:14px}.game-name{font:600 14px Arial,sans-serif;letter-spacing:2.7px;white-space:nowrap}.mini-sun{color:var(--accent);font-size:21px}.rule-tag{font:9px Arial,sans-serif;color:#c7ae8e;border:1px solid #67513c;padding:5px 8px;letter-spacing:1px;margin-left:6px}.theme-picker{font:11px Arial,sans-serif;color:#baa990;display:flex;gap:9px;align-items:center}.theme-picker select{background:#392a24;color:#f0d7b3;border:1px solid #735b41;border-radius:4px;padding:6px 10px;max-width:165px;font:12px Arial,sans-serif}.game-actions{justify-content:flex-start;flex-wrap:wrap}.action{border:1px solid #755b40;background:linear-gradient(#49372d,#322823);color:#f3dfc6;padding:9px 13px;border-radius:4px;min-height:37px;font:600 11px Arial,sans-serif;letter-spacing:.6px;white-space:nowrap}.action span{font-size:17px;vertical-align:-2px;margin-right:5px}.action.primary{background:linear-gradient(#f2d49b,#d0a161);color:#332217;border-color:#e9c58f}.action:hover:not(:disabled){filter:brightness(1.15)}.status-strip{background:#181615;border-left:1px solid #514035;border-right:1px solid #514035;display:flex;align-items:center;gap:28px;padding:14px 22px}.status-strip span:not(.status-save){display:flex;gap:4px;flex-direction:column}.status-strip small{font:9px Arial,sans-serif;letter-spacing:1.5px;color:#9a8b80}.status-strip strong{font:17px Arial,sans-serif;color:#f8e5c7}.status-save{margin-left:auto;font:10px Arial,sans-serif;color:#b7cfba}.game-board{position:relative;overflow:hidden;background:linear-gradient(145deg,rgba(100,63,39,.22),transparent 55%),repeating-linear-gradient(45deg,rgba(255,255,255,.012) 0 2px,transparent 2px 8px),radial-gradient(circle at 50% 60%,#3d2922,#231b19 82%);border:1px solid #6b4d33;border-top:2px solid #765a3e;padding:26px 25px 42px;min-height:595px;touch-action:pan-y}.board-patina{pointer-events:none;position:absolute;inset:10px;border:1px solid rgba(244,188,103,.12);border-radius:3px}.board-top,.board-tableau{position:relative;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:clamp(5px,1vw,12px)}.pile{position:relative;min-width:0}.top-pile{aspect-ratio:1 / var(--card-ratio);border:1.5px dashed rgba(231,192,139,.40);border-radius:7px;background:rgba(14,10,9,.18)}.top-pile::before{content:'✧';position:absolute;inset:0;display:grid;place-items:center;color:rgba(230,191,127,.22);font-size:clamp(16px,4vw,32px)}.top-pile[data-pile="foundation"]::before{content:'A';font-style:italic;font-size:clamp(22px,3.4vw,39px)}.top-pile[data-pile="stock"]:has(.card)::before{content:''}.top-pile[data-pile="stock"]{cursor:pointer}.top-pile[data-pile="stock"]:not(:has(.card))::before{content:'↶'}.board-top-space{min-width:0}.board-divider{display:flex;gap:16px;align-items:center;margin:28px 0 17px;color:rgba(237,191,126,.50);font:10px Arial,sans-serif;letter-spacing:3px}.board-divider:before,.board-divider:after{content:'';height:1px;background:rgba(237,191,126,.16);flex:1}.board-tableau{min-height:315px}.tableau-pile{min-height:290px;border-top:1.5px dashed rgba(237,191,126,.35);border-radius:6px}.tableau-pile:empty::after{content:'K';display:grid;place-items:center;position:absolute;top:0;width:100%;aspect-ratio:1 / var(--card-ratio);color:rgba(232,199,138,.24);font-size:clamp(21px,3.4vw,38px);font-style:italic;border:1.5px dashed rgba(237,191,126,.35);border-radius:6px}.card{width:100%;aspect-ratio:1 / var(--card-ratio);border-radius:6px;display:block;position:absolute;top:0;left:0;padding:0;border:1px solid #b6a38d;touch-action:none;user-select:none;-webkit-user-select:none;color:#282321;background:linear-gradient(130deg,#fffaf1,#e9dfd0);box-shadow:0 2px 6px rgba(0,0,0,.43);overflow:hidden;text-align:left;cursor:pointer}.card.face-down{background:var(--card-back);border:3px solid #e6c697;box-shadow:inset 0 0 0 2px #2e241e,0 2px 8px #0007;pointer-events:none}.card.face-down:after{content:var(--back-symbol);position:absolute;inset:12%;border:1px solid rgba(250,216,155,.65);display:grid;place-items:center;font-size:clamp(14px,3vw,33px);color:#e6c796;background:radial-gradient(circle,rgba(248,201,135,.19),transparent 67%)}.card.up-red{color:#b33636}.card.up-black{color:#1d2730}.card .corner{position:absolute;top:5%;left:7%;display:flex;align-items:center;flex-direction:column;font:bold clamp(12px,2.2vw,23px)/1 Arial,sans-serif;gap:3px}.card .corner .suit{font-size:1.08em}.card .card-middle{position:absolute;inset:18% 5% 12%;display:grid;place-items:center;font-size:clamp(23px,5vw,57px);opacity:.88}.card .card-middle.face-art{font-size:clamp(19px,4vw,49px);color:var(--court-color);border:1px solid rgba(137,105,59,.30);inset:27% 16% 20%;background:linear-gradient(145deg,rgba(203,170,97,.19),transparent);border-radius:50% 50% 12% 12%}.card .corner-bottom{position:absolute;right:7%;bottom:5%;transform:rotate(180deg);display:flex;align-items:center;flex-direction:column;font:bold clamp(12px,2.2vw,23px)/1 Arial,sans-serif}.card.selected{outline:3px solid #ffe48e;outline-offset:0;filter:brightness(1.12);z-index:180!important;box-shadow:0 0 0 4px #efbd6980,0 3px 14px #000}.pile.drop-target{outline:3px solid #91ddd1;outline-offset:4px}.card.hint-card{outline:3px solid #a8f6ea;outline-offset:1px}.card.drag-shadow{opacity:.33}.drag-ghost{position:fixed;z-index:999;pointer-events:none;width:var(--ghost-width);filter:drop-shadow(0 8px 14px #0009);opacity:.92}.drag-ghost .card{position:absolute}.game-footer{background:#191514;border:1px solid #534035;border-top:none;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px 19px;color:#d4c1ab;border-radius:0 0 10px 10px}.game-footer p{margin:0;font:12px/1.45 Arial,sans-serif}.deal-number{font:10px Arial,sans-serif;white-space:nowrap;color:#8e8479}.world-sidebar{background:linear-gradient(160deg,#231b1a,#1b1817);padding:21px;border:1px solid #524038;border-radius:10px;height:fit-content}.sidebar-heading{display:flex;justify-content:space-between;align-items:center;color:#f4d2a4;font:12px Arial,sans-serif;letter-spacing:2px}.sidebar-heading small{color:#928275;font-size:10px}.sidebar-intro{font:12px/1.6 Arial,sans-serif;color:#b6a79c;margin:13px 0 18px}.world-list{display:grid;gap:10px}.world-option{position:relative;text-align:left;width:100%;min-height:80px;border:1px solid #59473b;border-radius:6px;overflow:hidden;background:#211c1a;display:flex;align-items:center;gap:14px;color:#faf2e6;padding:0 10px 0 0}.world-option.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),inset 0 0 25px var(--glow)}.world-option .world-thumb{align-self:stretch;width:84px;flex-shrink:0;background-size:cover;background-position:center}.world-option .world-text{min-width:0}.world-option strong{display:block;font-size:14px;font-weight:normal;margin-bottom:7px}.world-option small{display:block;font:10px/1.4 Arial,sans-serif;color:#b9ab9b}.world-option .world-check{position:absolute;right:8px;top:8px;color:var(--accent);font-size:13px}.sidebar-notice{border-top:1px solid #4a3e36;margin-top:24px;padding-top:19px;display:flex;gap:12px}.notice-star{font-size:24px;color:var(--accent)}.sidebar-notice strong{font:13px Arial,sans-serif}.sidebar-notice p{font:11px/1.6 Arial,sans-serif;color:#aea096;margin:6px 0}.ad-controls{margin-top:18px;padding-top:15px;border-top:1px solid #4a3e36;color:#c4b0a0;font:11px/1.5 Arial,sans-serif}.ad-controls label{display:flex;align-items:center;gap:7px;cursor:pointer}.ad-controls input{accent-color:var(--accent)}.ad-controls small{display:block;margin-top:6px;color:#97897e}.mobile-ad{margin-top:15px;border:1px solid #766349;border-radius:7px;background:#30251f;overflow:hidden}.ad-label{font:9px Arial,sans-serif;color:#ac9b89;letter-spacing:1.5px;text-align:center;padding:7px;border-bottom:1px solid #554131}.ad-content{display:flex;gap:12px;align-items:center;padding:12px 16px}.ad-symbol{color:var(--accent);font-size:24px}.ad-content div{min-width:0;flex:1}.ad-content strong{font:13px Arial,sans-serif;display:block}.ad-content small{font:11px Arial,sans-serif;color:#b7a797;display:block;margin-top:3px}.ad-content button{border:1px solid #8f7559;border-radius:4px;padding:8px 10px;color:#ecd5b9;background:#47372d;font:11px Arial,sans-serif}.site-footer{padding:38px 0;color:#84776c;text-align:center;font:10px Arial,sans-serif;letter-spacing:1.5px}.site-footer span{margin:0 9px}.modal{border:1px solid #c69c62;border-radius:10px;background:#241b19;color:#f9e8d1;max-width:min(90vw,480px);padding:30px;box-shadow:0 20px 80px #000a}.modal::backdrop{background:rgba(0,0,0,.75)}.modal h2{margin:0 0 13px;font-weight:normal;font-size:30px}.modal p{font:14px/1.65 Arial,sans-serif;color:#d7c4ad}.modal-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end;margin-top:24px}.victory{text-align:center}.victory-ornament{font-size:55px;color:#ecd090}.victory-stats{font-weight:bold!important;color:#ebd29e!important}
body[data-theme=alien]{--page:#07161d;--surface:#102932;--frame:#305d68;--gold:#b2f7ed;--accent:#66d4ca;--muted:#8cbec6;--glow:rgba(100,226,215,.18);--card-back:linear-gradient(135deg,#154c5e,#10273d);--back-symbol:'✧';--court-color:#207c86}body[data-theme=alien] .game-board{background:radial-gradient(circle at 35% 25%,#1d4b56,#102b36 55%,#091b27 100%)}body[data-theme=alien] .site-header{border-bottom-color:#32525b}body[data-theme=alien] .game-toolbar,body[data-theme=alien] .world-sidebar{background:linear-gradient(145deg,#17313b,#0c1f29);border-color:#39616a}body[data-theme=alien] .game-footer,body[data-theme=alien] .status-strip{background:#10242c;border-color:#32535a}body[data-theme=alien] .action{background:linear-gradient(#225665,#183845);border-color:#4c9da4;color:#c6f6f1}body[data-theme=alien] .action.primary{background:linear-gradient(#b7f0e9,#65bdbb);color:#09313a}body[data-theme=alien] .brand-emblem{background:#12414b;border-color:#62c5c2}body[data-theme=alien] .theme-picker select{background:#143a43;border-color:#3c8b91}body[data-theme=alien] .ad-controls{border-top-color:#345760}body[data-theme=alien] .mobile-ad{background:#153743;border-color:#427d80}body[data-theme=alien] .ad-content button{background:#215967;border-color:#5eaeb0}
body[data-theme=rome]{--card-back:repeating-linear-gradient(45deg,#6f2922,#6f2922 9px,#883b28 9px,#883b28 18px);--back-symbol:'❦';--court-color:#9d6a36}
body[data-theme=mongol]{--page:#1d1912;--accent:#d6ae77;--gold:#ead0a7;--card-back:linear-gradient(45deg,#5c3925,#81603a);--back-symbol:'◇';--court-color:#86602e}
body[data-theme=china]{--page:#191111;--accent:#c8be85;--gold:#efe0b1;--card-back:linear-gradient(45deg,#792e31,#a94d41);--back-symbol:'✿';--court-color:#a14b37}
body[data-theme=block]{--page:#111a15;--accent:#b6ce79;--gold:#d4edb1;--card-back:repeating-linear-gradient(90deg,#375a49 0 12px,#4d8062 12px 24px);--back-symbol:'▣';--court-color:#638d4e}
@media(max-width:1080px){.content-layout{grid-template-columns:minmax(0,1fr) 268px;gap:14px}.world-sidebar{padding:14px}.site-shell{padding:0 16px}.game-board{padding:20px 16px 35px;min-height:520px}.board-tableau{min-height:285px}.tableau-pile{min-height:255px}}
@media(max-width:770px){.site-header{height:75px}.content-layout{grid-template-columns:1fr}.world-sidebar{display:block}.world-list{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-content{left:26px;top:42px}.world-hero{height:196px}.site-shell{padding:0 12px}.game-board{min-height:510px}.build-tag{display:none}.game-toolbar{padding:14px}.status-strip{padding:13px}.game-footer{padding:12px}}
@media(max-width:480px){.site-shell{padding:0 6px}.site-header{padding:0 9px;height:67px}.brand-emblem{width:32px;height:32px;font-size:22px}.brand-title{font-size:17px;letter-spacing:1.6px}.brand-overline{font-size:7px;letter-spacing:1.4px}.world-hero{height:147px}.hero-content{left:19px;top:25px}.hero-content h1{font-size:32px;margin:6px 0}.hero-content p{font-size:12px}.eyebrow{font-size:8px;letter-spacing:2px}.hero-theme-marker{font-size:28px;right:14px;bottom:8px}.content-layout{margin-top:8px}.game-toolbar-top{margin-bottom:12px}.game-name{font-size:12px;letter-spacing:1.3px}.rule-tag{font-size:8px;margin-left:1px}.theme-picker{font-size:0}.theme-picker select{font-size:11px;max-width:123px;padding:6px 3px}.game-actions{gap:5px}.action{padding:8px 9px;font-size:10px;flex:1}.action span{margin-right:2px;font-size:15px}.status-strip{gap:17px;padding:11px 14px}.status-strip strong{font-size:14px}.status-save{font-size:9px;max-width:90px;text-align:right}.game-board{padding:14px 8px 25px;min-height:438px}.board-top,.board-tableau{gap:5px}.board-divider{margin:22px 0 13px;font-size:8px}.board-tableau{min-height:230px}.tableau-pile{min-height:218px}.card{border-radius:4px}.card.face-down{border-width:2px}.card.face-down:after{font-size:14px}.card .corner,.card .corner-bottom{font-size:clamp(11px,3vw,15px)}.card .card-middle{font-size:clamp(18px,6vw,30px)}.card .card-middle.face-art{font-size:clamp(19px,6vw,30px)}.game-footer p{font-size:11px}.deal-number{font-size:8px}.world-list{gap:7px}.world-option{min-height:67px}.world-option .world-thumb{width:51px}.world-option strong{font-size:12px}.world-option small{font-size:9px}.site-footer{font-size:8px;line-height:2}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
