:root{--ink:#202a27;--muted:#748079;--paper:#f7f5ef;--line:#dfe2d9;--red:#b9574e;--green:#6a9b82;--gold:#c59d54;--shadow:0 14px 35px #18231d14}*{box-sizing:border-box}html{background:#1d2823}body{margin:0;color:var(--ink);font-family:Arial,Noto Sans KR,sans-serif;background:radial-gradient(circle at 20% 0%,#38473d,#18211e 70%);min-width:320px}button,input,select{font:inherit}button{border:0;cursor:pointer}button:focus-visible,[tabindex]:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #c59d5488;outline-offset:2px}main{max-width:1500px;margin:auto;min-height:100vh;background:var(--paper);padding:30px clamp(18px,5vw,72px) 300px}header{display:flex;align-items:center;gap:24px;border-bottom:1px solid var(--line);padding-bottom:18px}.brand{min-width:180px}.eyebrow,.section-kicker,.caption,small,kbd,.level{font:10px DM Mono,monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}h1{font:700 24px DM Mono,monospace;letter-spacing:.3em;margin:4px 0 0}h2{font:clamp(20px,2vw,30px);margin:3px 0;font-family:"Noto Serif KR",Georgia,serif}.turn{margin-left:auto;display:flex;align-items:center;gap:8px;font:13px DM Mono,monospace;white-space:nowrap}.turn small{display:block;font-size:9px;letter-spacing:0;text-transform:none}.turn.my-turn{color:var(--red);font-weight:700}.pulse{width:9px;height:9px;border-radius:50%;background:var(--green);box-shadow:0 0 0 5px #6a9b8222}.header-actions{display:flex;align-items:center;gap:9px}.connection{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:11px}.connection i{width:7px;height:7px;border-radius:50%;background:var(--muted)}.connection.online i{background:var(--green);box-shadow:0 0 0 4px #6a9b8222}.player-count,.menu-button{min-height:44px;padding:0 12px;border:1px solid var(--line);background:transparent;color:var(--ink);border-radius:4px}.menu-button{background:var(--ink);color:#fff;border-color:var(--ink);padding:0 16px}.board{padding-top:38px}.board-head{display:flex;align-items:end;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding-bottom:12px}.caption{font-size:10px;letter-spacing:0;text-transform:none}.nobles{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;padding:18px 0 28px}.noble{display:flex;align-items:center;gap:9px;min-width:0;padding:13px;background:#eee9dc;border:1px solid #e3d9be;border-radius:6px}.seal{font-size:27px;color:var(--gold)}.noble strong,.noble small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.noble strong{font:14px "Noto Serif KR",Georgia,serif}.noble small{margin-top:5px;letter-spacing:0}.noble b{margin-left:auto;color:var(--gold);font:20px Georgia,serif}.noble b small{font-size:9px;margin:0}.row{display:grid;grid-template-columns:86px minmax(0,1fr);gap:20px;padding:10px 0}.row-label{padding-top:8px}.row-label span{display:block;color:var(--ink)}.row-label small{display:block;margin-top:7px;letter-spacing:0;text-transform:none}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.card{position:relative;min-height:190px;padding:14px;border-radius:6px;border-top:5px solid var(--green);box-shadow:var(--shadow);cursor:pointer;transition:transform .18s,box-shadow .18s}.card:hover{transform:translateY(-4px);box-shadow:0 18px 35px #18231d25}.card.tier-2{border-top-color:#6481a8}.card.tier-3{border-top-color:var(--red)}.card.white{background:#fffdf7}.card.blue{background:#e9f2f5}.card.green{background:#e7f2e9}.card.red{background:#fae9e7}.card.black{background:#e3eae7}.card-top{display:flex;justify-content:space-between}.points{font:27px Georgia,serif}.gem{text-align:center;margin:15px 0 2px;font-size:45px}.white .gem{color:#b5a27d}.blue .gem{color:#668ba9}.green .gem{color:#679a80}.red .gem{color:#b9574e}.black .gem{color:#303c38}.card-bonus{text-align:center;font-size:11px;color:var(--muted)}.cost{display:flex;flex-wrap:wrap;gap:5px;margin-top:12px}.mini{display:inline-flex;align-items:center;gap:3px;padding:4px 6px;border:1px solid #26363122;border-radius:4px;font:11px DM Mono,monospace;font-weight:700;background:#fff9}.mini.white{color:#705b3b;background:#f3ead7}.mini.blue{color:#315d7c;background:#d0e3ee}.mini.green{color:#2f7350;background:#cde7d5}.mini.red{color:#8e3832;background:#f2d0cd}.mini.black{color:#172420;background:#c8d5d0}.mini.gold{color:#8b6522;background:#f2e0ae}.free{color:var(--muted);font-size:10px}.card-actions{position:absolute;bottom:12px;left:12px;right:12px;display:flex;gap:6px}.card-actions button,.modal-card>button{min-height:40px;flex:1;padding:8px 10px;border-radius:4px;background:var(--ink);color:#fff;font-size:11px}.card-actions .quiet,.modal-card .quiet{background:transparent;color:var(--ink);border:1px solid var(--line)}.card-actions button:disabled{opacity:.35;cursor:not-allowed}.player-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:36px;margin-top:42px}.collection,.players{border-top:1px solid var(--line);padding-top:18px}.collection-summary{display:flex;align-items:center;gap:20px;padding:18px 0 12px}.summary-title,.owned-heading{font-weight:700;font-size:13px}.bonus-list{display:flex;gap:12px;flex-wrap:wrap}.bonus-item{text-align:center;min-width:42px}.gem-chip{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;margin:auto;color:#fff;font-size:18px}.gem-chip.white{background:#c8b993;color:#5d5141}.gem-chip.blue{background:#6689a7}.gem-chip.green{background:#689a80}.gem-chip.red{background:#ba5b53}.gem-chip.black{background:#303c38}.bonus-item b,.bonus-item small{display:block}.bonus-item b{margin-top:4px;font:17px Georgia,serif}.bonus-item small{font-size:9px;letter-spacing:0}.owned-heading{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:12px 0}.owned-heading small{letter-spacing:0;text-transform:none}.owned{display:flex;gap:12px;flex-wrap:wrap;padding:16px 0}.owned .card{width:130px;min-height:155px}.owned .gem{font-size:35px;margin:10px 0}.reserved-area{margin-top:8px;padding:13px;background:#f0ede4;border:1px dashed #d6cdb8;border-radius:5px}.reserved-title{display:flex;justify-content:space-between;margin-bottom:9px;font-weight:700;font-size:12px}.reserved-cards{padding:0}.reserved-cards .card{min-height:130px;width:110px}.empty{color:var(--muted);font-size:12px;padding:16px}.players .board-head{align-items:end}.player{display:flex;align-items:center;gap:10px;padding:13px 0;border-bottom:1px solid var(--line);opacity:.55}.player.active{opacity:1;background:linear-gradient(90deg,#b9574e0d,transparent);border-left:3px solid var(--red);padding-left:9px}.player.self{opacity:1}.avatar{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#d8e0d9;font:14px Georgia,serif}.player.active .avatar{background:var(--red);color:#fff}.player-info{min-width:0;flex:1}.player-info strong,.player-info small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.player-info strong{font-size:12px}.player-info small{margin-top:4px;letter-spacing:0;text-transform:none}.bar{height:3px;margin-top:8px;background:#dfe4df}.bar span{display:block;height:100%;background:var(--red)}.score{font:24px Georgia,serif}.score small{font-size:9px;margin-left:3px}.action-dock{margin-top:44px}.supply{padding:20px 0;border-top:1px solid var(--line)}.tokens{display:flex;gap:12px;padding:18px 0;flex-wrap:wrap}.token{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:1px;width:76px;height:76px;border-radius:50%;color:#fff;box-shadow:inset 0 0 0 4px #fff4,0 5px 12px #18231d1a;transition:transform .15s}.token:hover{transform:translateY(-3px)}.token.selected{transform:translateY(-7px);outline:3px solid var(--ink)}.token span{font-size:23px}.token b{font:18px Georgia,serif}.token small{font-size:8px;color:inherit;letter-spacing:0;text-transform:none}.token.white{background:#d4c9b0;color:#5d5141}.token.blue{background:#6689a7}.token.green{background:#689a80}.token.red{background:#ba5b53}.token.black{background:#303c38}.token.gold{background:#c29d55}.actionbar{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:12px}.actionbar button{min-height:44px;padding:0 16px;background:var(--ink);color:#fff;border-radius:4px}.actionbar button:disabled{opacity:.35}.actionbar kbd{margin-left:12px;color:#aab1ac}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;display:grid;place-items:center;padding:20px;background:#18231dcc}.modal-card{position:relative;width:min(440px,100%);max-height:calc(100dvh - 40px);overflow:auto;padding:36px;background:var(--paper);box-shadow:0 25px 70px #0005;text-align:center}.modal-card h2{font-size:clamp(30px,7vw,48px);margin:12px 0}.modal-card p{color:var(--muted);line-height:1.6}.new-game-actions{display:flex;gap:8px;margin-top:22px}.modal-close{position:absolute;right:12px;top:10px;width:40px;height:40px;background:transparent;color:var(--muted);font-size:28px}.detail-gem{font-size:56px;margin-bottom:4px}.detail-gem.white{color:#b5a27d}.detail-gem.blue{color:#668ba9}.detail-gem.green{color:#679a80}.detail-gem.red{color:#b9574e}.detail-gem.black{color:#303c38}.detail-bonus{font-weight:700}.detail-cost{display:flex;align-items:center;justify-content:center;gap:7px;flex-wrap:wrap;margin-top:18px}.detail-cost strong{margin-right:5px}.ranking{text-align:left;margin:22px 0}.ranking div{padding:10px;border-bottom:1px solid var(--line)}.ranking b{float:right}@media(max-width:1000px){main{padding-left:24px;padding-right:24px}.nobles{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.noble{padding:9px}.noble strong{font-size:11px}.noble small{font-size:8px}.cards{gap:8px}.card{min-height:165px}.player-layout{grid-template-columns:1fr}.players{border-top:1px solid var(--line)}.action-dock{margin-top:30px}}@media(max-width:600px){main{padding:14px 12px 30px}header{position:sticky;top:0;z-index:10;gap:8px;padding:8px 0;background:var(--paper)}.brand{min-width:0}.eyebrow{font-size:8px}h1{font-size:17px}.turn{font-size:10px;gap:5px}.turn small,.connection{display:none}.header-actions{margin-left:auto;gap:5px}.player-count,.menu-button{min-height:42px;padding:0 8px;font-size:10px}.board{padding-top:24px}.board-head{align-items:center;gap:8px}.board-head .caption{font-size:8px;text-align:right}.nobles{grid-template-columns:repeat(5,minmax(0,1fr));padding:12px 0 22px;gap:4px}.noble{justify-content:center;padding:8px 2px}.noble>div:nth-child(2),.noble>b{display:none}.seal{font-size:22px}.row{display:block;padding:7px 0}.row-label{display:flex;align-items:center;gap:8px;padding:0 0 6px}.row-label small{margin:0;font-size:9px}.cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.card{min-height:152px;padding:10px;border-top-width:4px}.points{font-size:22px}.gem{font-size:34px;margin:12px 0 2px}.card-bonus{font-size:9px}.cost{gap:3px;margin-top:8px}.mini{padding:3px 4px;font-size:9px}.card-actions{left:7px;right:7px;bottom:7px}.card-actions button{min-height:38px;padding:5px 2px;font-size:10px}.player-layout{gap:26px;margin-top:25px}.collection-summary{display:block;padding:14px 0}.summary-title{margin-bottom:10px}.owned-heading{font-size:12px}.owned-heading small{font-size:9px}.owned .card{width:calc(50% - 6px);min-height:145px}.reserved-cards .card{width:calc(50% - 6px)}.player{padding:11px 0}.action-dock{margin-top:24px}.supply{padding:14px 0}.tokens{gap:8px;padding:14px 0}.token{width:calc((100vw - 64px)/6);min-width:44px;height:58px}.token span{font-size:17px}.token b{font-size:14px}.token small{font-size:7px}.actionbar{align-items:stretch;flex-direction:column;gap:8px}.actionbar button{width:100%}.action-message{font-size:11px}.new-game-actions{flex-direction:column}.modal-card{padding:28px 20px}.detail-cost{justify-content:flex-start}.online-panel{max-height:calc(100dvh - 20px);overflow:auto}}body.online-only{min-height:100vh;background:radial-gradient(circle at 50% 0%,#3b4d40,#18211e 70%)}body.online-only main{display:none}.online-panel{position:fixed;z-index:20;right:24px;bottom:24px;width:min(410px,calc(100vw - 32px));padding:26px;background:#202a27;color:#f6f6f1;border:1px solid #ffffff16;border-radius:8px;box-shadow:0 25px 70px #0008}.online-head{display:flex;justify-content:space-between;gap:16px}.online-kicker{font:9px DM Mono,monospace;letter-spacing:.14em;color:var(--gold)}.online-panel h3{margin:8px 0;font:26px "Noto Serif KR",Georgia,serif;color:#fff}.online-status{min-height:38px;margin:0 0 16px;color:#b9c1bb;font-size:12px;line-height:1.6}.online-form,.online-actions{display:flex;gap:8px}.online-form{margin-bottom:8px}.online-panel input,.online-panel select{min-width:0;flex:1;padding:12px;background:#f6f6f1;color:var(--ink);border:0;border-radius:4px}.online-panel select{flex:0 0 100px}.online-actions button,.start-online{min-height:44px;padding:0 14px;background:var(--gold);color:var(--ink);border-radius:4px;font-weight:700}.online-actions input{text-transform:uppercase;font-family:DM Mono,monospace}.online-roster{display:grid;gap:5px;margin-top:18px;color:#d9dfd9;font-size:12px}.online-roster span{color:#aab6ad;font-size:11px}.start-online{width:100%;margin-top:18px}.room-link{margin-top:16px;padding-top:14px;border-top:1px solid #ffffff20;color:#aab6ad;font-size:11px}.room-link code{display:block;margin-top:7px;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.room-link button{margin-left:6px;padding:5px 8px;background:transparent;color:var(--gold);border:1px solid var(--gold);border-radius:3px}.online-tools{display:flex;gap:5px}.online-tools button{width:32px;height:32px;background:#ffffff12;color:#fff;border-radius:4px;font-size:18px}.online-panel.minimized{width:200px;padding:12px 14px}.online-panel.minimized>*:not(.online-head){display:none}.online-panel.minimized h3{font-size:14px;margin:0}.online-panel.closed{display:none}#reopenOnline{position:fixed;right:20px;bottom:20px;z-index:21;min-height:44px;padding:0 14px;background:var(--ink);color:#fff;border:1px solid var(--gold);border-radius:4px}@media(max-width:600px){.online-panel{right:10px;bottom:10px;padding:20px}.online-form,.online-actions{display:grid;grid-template-columns:1fr 1fr}.online-form input,.online-form select,.online-actions input{grid-column:1/-1;width:100%}.online-actions input{grid-row:1}.online-actions button{width:100%}}@media(min-width:901px){main{height:100dvh;min-height:0;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) 330px;grid-template-rows:auto minmax(0,1fr) auto;column-gap:34px;padding:22px clamp(24px,4vw,64px) 16px}main>header{grid-column:1/-1;grid-row:1}.board{grid-column:1;grid-row:2;min-height:0;overflow:hidden;padding-top:20px}.nobles{padding:12px 0 16px;gap:7px}.noble{padding:9px;gap:6px}.noble strong{font-size:11px}.noble small{font-size:8px}.row{min-height:0;flex:1;padding:5px 0}.cards{height:100%;grid-template-rows:minmax(0,1fr)}.card{min-height:0;height:100%;padding:10px}.gem{margin:10px 0 2px;font-size:35px}.card-bonus{font-size:10px}.cost{margin-top:8px}.card-actions{position:static;margin-top:auto;padding-top:8px}.player-layout{grid-column:2;grid-row:2;display:flex;flex-direction:column;min-height:0;overflow:hidden;gap:16px;margin:20px 0 0}.my-collection,.players{min-height:0;overflow:hidden;margin:0;padding-top:12px}.my-collection{flex:1}.my-collection .collection-summary{padding:10px 0}.my-collection .owned-heading{padding:8px 0}.my-collection .owned{max-height:170px;overflow:hidden;gap:7px;padding:8px 0}.my-collection .owned .card{width:calc(33.33% - 5px);min-height:112px;padding:7px}.my-collection .owned .card .gem{font-size:25px;margin:5px 0}.my-collection .owned .card .card-bonus{font-size:8px}.my-collection .owned .card .mini{font-size:8px;padding:2px}.reserved-area{padding:8px;margin-top:4px}.reserved-cards{max-height:100px!important}.reserved-cards .card{min-height:75px!important;width:calc(33.33% - 5px)!important}.reserved-cards .card .card-bonus,.reserved-cards .card .card-actions{display:none}.players{flex:1}.players .board-head h2,.my-collection .board-head h2{font-size:20px}.players .player{padding:7px 0}.players .player-info small{font-size:9px}.action-dock{grid-column:2;grid-row:3;margin:0}.supply{padding:10px 0 0}.supply .board-head{padding-bottom:7px}.supply .board-head h2{font-size:18px}.tokens{gap:6px;padding:9px 0}.token{width:43px;height:43px}.token span{font-size:15px}.token b{font-size:12px}.token small{font-size:7px}.actionbar{display:block}.actionbar button{width:100%;min-height:38px;margin-top:6px}.action-message{display:block;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}body.game-started .online-panel{display:none}#openOnline{position:fixed;right:20px;bottom:20px;z-index:21;min-height:44px;padding:0 14px;background:var(--ink);color:#fff;border:1px solid var(--gold);border-radius:4px}.player-resource-row{display:flex;align-items:center;gap:8px;margin-top:5px;min-width:0;overflow:hidden}.player-cards,.player-tokens{display:flex;align-items:center;gap:2px;min-width:0}.player-cards{padding-right:6px;border-right:1px solid var(--line)}.player-card{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;font-size:11px;background:#dce5df}.player-card.white{background:#e5d8bd;color:#705b3b}.player-card.blue{background:#c3d9e7;color:#315d7c}.player-card.green{background:#c3e0ca;color:#2f7350}.player-card.red{background:#efc4c0;color:#8e3832}.player-card.black{background:#bdcec7;color:#172420}.player-token{font:8px DM Mono,monospace;white-space:nowrap;color:var(--muted)}.player-token.white{color:#8c734c}.player-token.blue{color:#315d7c}.player-token.green{color:#2f7350}.player-token.red{color:#8e3832}.player-token.black{color:#172420}.no-cards{font-size:8px;color:var(--muted);white-space:nowrap}@media(min-width:901px){.board{display:flex;flex-direction:column}.board>.row{flex:1;min-height:0}.board>.row .cards{min-height:0}.board>.row .card{min-height:0}.action-dock .tokens{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.action-dock .token{width:100%;height:46px;border-radius:22px}.action-dock .token small{font-size:7px}.my-collection .reserved-area{display:block;min-height:58px}.players .player-resource-row{margin-top:4px}.players .player-token{font-size:7px}.players .player-card{width:16px;height:16px;font-size:9px}}@media(max-width:600px){.player-resource-row{gap:5px}.player-token{font-size:7px}.player-card{width:16px;height:16px;font-size:9px}.action-dock .tokens{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.action-dock .token{width:100%;border-radius:10px;height:54px}.my-collection .reserved-area{display:block}.board{min-height:0}}.card{overflow:hidden}.card .cost{position:absolute;left:10px;right:10px;bottom:58px;margin:0;min-height:22px;align-content:flex-start}.card .card-actions{position:absolute;left:10px;right:10px;bottom:10px;margin:0;padding:0}.my-collection .card .card-actions{position:absolute}.summary-title{white-space:nowrap}.reserved-area{display:block}.reserved-title{white-space:nowrap}.board-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:12px;padding:12px 14px;border:1px solid var(--line);border-radius:5px;background:#f0ede4}.board-footer>div:first-child{display:grid;gap:3px;white-space:nowrap}.board-footer strong{font-size:12px}.log-items{display:flex;gap:18px;min-width:0;color:var(--muted);font-size:10px}.log-items span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(min-width:901px){.board-footer{margin-top:8px}.board>.row .card{height:100%;min-height:0}.board>.row .card-actions{bottom:9px}.board>.row .cost{bottom:54px}.my-collection,.my-collection .owned{overflow:visible}.my-collection .owned-heading{white-space:nowrap}.my-collection .reserved-area{margin-top:7px}.my-collection .reserved-cards{display:flex;flex-wrap:nowrap;overflow:visible}.my-collection .reserved-cards .card{flex:0 0 70px}.my-collection .reserved-cards .card .cost,.my-collection .reserved-cards .card .card-actions{display:none}.players{overflow:visible}.action-dock .tokens{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:600px){.board-footer{display:block;margin-top:10px;padding:10px}.log-items{display:block;margin-top:7px}.log-items span{display:block;margin-top:3px}.card .cost{bottom:55px}.card .card-actions{bottom:8px}.my-collection .owned{overflow:visible}.my-collection .reserved-area{margin-top:10px}}@media(min-width:901px){.board-footer{margin-top:auto}.board>.row .card{display:flex;flex-direction:column;justify-content:flex-start;overflow:hidden}.board>.row .card .gem{font-size:27px;margin:5px 0 0}.board>.row .card .card-bonus{font-size:8px}.board>.row .card .cost{bottom:53px;left:8px;right:8px;gap:2px}.board>.row .card .mini{font-size:9px;padding:2px 3px}.board>.row .card .card-actions{left:8px;right:8px;bottom:7px;gap:4px}.board>.row .card .card-actions button{min-height:38px;padding:5px 3px;font-size:10px}.player-layout{overflow:hidden}.my-collection{flex:0 0 245px;min-height:0;overflow:hidden!important}.my-collection .collection-summary{display:flex;align-items:center;gap:8px;padding:8px 0}.my-collection .summary-title{font-size:11px;flex:0 0 auto}.my-collection .bonus-list{flex-wrap:nowrap;gap:5px;min-width:0}.my-collection .bonus-item{min-width:30px}.my-collection .gem-chip{width:25px;height:25px;font-size:13px}.my-collection .bonus-item b{font-size:12px;margin-top:2px}.my-collection .bonus-item small{font-size:7px;white-space:nowrap}.my-collection .owned-heading{padding:7px 0;font-size:11px}.my-collection .owned-heading small{font-size:8px}.my-collection>.owned{display:flex;flex-wrap:nowrap;max-height:72px;overflow:hidden!important;padding:5px 0;gap:5px}.my-collection>.owned .card{flex:0 0 48px;width:48px;min-height:62px;height:62px;padding:4px}.my-collection>.owned .card .card-top,.my-collection>.owned .card .card-bonus,.my-collection>.owned .card .cost{display:none}.my-collection>.owned .card .gem{font-size:22px;margin:auto}.my-collection .reserved-area{display:block;min-height:65px;margin-top:5px;padding:7px;overflow:hidden}.my-collection .reserved-title{margin-bottom:5px;font-size:10px}.my-collection .reserved-cards{display:flex;flex-wrap:nowrap;max-height:43px!important;overflow:hidden!important;gap:4px}.my-collection .reserved-cards .card{flex:0 0 42px!important;width:42px!important;min-height:40px!important;height:40px!important;padding:3px}.my-collection .reserved-cards .card .card-top,.my-collection .reserved-cards .card .card-bonus,.my-collection .reserved-cards .card .cost,.my-collection .reserved-cards .card .card-actions{display:none}.my-collection .reserved-cards .card .gem{font-size:18px;margin:auto}.players{flex:1;min-height:0;overflow:hidden!important}.players .player-resource-row{max-width:100%}.players .player{min-height:0}.players .player-info,.players .player-resource-row{overflow:hidden}.players .player-tokens{overflow:hidden;white-space:nowrap}.action-dock .tokens{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:600px){html,body{height:100%;overflow:hidden}main{height:100dvh;min-height:0;overflow:hidden;display:flex;flex-direction:column;padding:8px 10px 166px}.board{display:flex;flex-direction:column;min-height:0;flex:1;overflow:hidden;padding-top:12px}.board-head h2{font-size:19px}.nobles{flex:0 0 auto;padding:8px 0 10px}.row{display:grid;grid-template-columns:46px minmax(0,1fr);flex:1;min-height:0;padding:3px 0}.row-label{display:block;padding-top:5px}.cards{display:flex;min-width:0;height:100%;overflow-x:auto;overflow-y:hidden;gap:7px;scroll-snap-type:x proximity}.cards .card{flex:0 0 calc(50% - 4px);width:auto;height:100%;min-height:0;scroll-snap-align:start}.board>.row .card{padding:7px}.board>.row .card .gem{font-size:25px;margin:6px 0 0}.board>.row .card .card-bonus{font-size:8px}.board>.row .card .cost{left:6px;right:6px;bottom:45px}.board>.row .card .mini{font-size:7px;padding:2px}.board>.row .card .card-actions{left:6px;right:6px;bottom:5px;gap:3px}.board>.row .card .card-actions button{min-height:32px;padding:3px 1px;font-size:8px}.board-footer{display:none}.player-layout{position:fixed;left:0;right:0;bottom:76px;height:90px;z-index:12;display:grid;grid-template-columns:1fr 1fr;gap:0;margin:0;padding:7px 10px;background:var(--paper);border-top:1px solid var(--line);box-shadow:0 -8px 20px #18231d14;overflow:hidden}.my-collection,.players{min-width:0;overflow:hidden!important;margin:0;padding:0;border:0}.my-collection .board-head,.players .board-head{padding-bottom:3px}.my-collection .board-head h2,.players .board-head h2{font-size:14px}.my-collection .caption,.players .caption{display:none}.my-collection .collection-summary{display:flex;gap:4px;padding:4px 0}.my-collection .summary-title{font-size:9px}.my-collection .bonus-list{gap:2px}.my-collection .bonus-item{min-width:22px}.my-collection .gem-chip{width:20px;height:20px;font-size:10px}.my-collection .bonus-item b{font-size:10px}.my-collection .bonus-item small,.my-collection .owned-heading{display:none}.my-collection>.owned{display:none}.my-collection .reserved-area{display:flex;align-items:center;gap:5px;min-height:22px;margin:0;padding:3px;background:#f0ede4}.my-collection .reserved-title{margin:0;font-size:8px}.my-collection .reserved-cards{padding:0;max-height:22px!important}.my-collection .reserved-cards .card{width:22px!important;height:22px!important;min-height:22px!important}.my-collection .reserved-cards .card .gem{font-size:13px}.players .player{padding:3px 0;gap:4px}.players .player-info small{font-size:7px}.players .player-resource-row{display:none}.players .avatar{width:22px;height:22px;font-size:9px}.players .score{font-size:14px}.action-dock{position:fixed;left:0;right:0;bottom:0;height:76px;z-index:13;margin:0;padding:7px 10px;background:var(--paper);border-top:1px solid var(--line);box-shadow:0 -8px 20px #18231d14}.action-dock .supply{padding:0;border:0}.action-dock .board-head{padding:0}.action-dock .board-head h2{font-size:13px}.action-dock .tokens{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;padding:4px 0}.action-dock .token{width:100%;height:35px;border-radius:8px}.action-dock .token span{font-size:12px}.action-dock .token b{font-size:10px}.action-dock .token small{display:none}.action-dock .actionbar{position:absolute;right:10px;bottom:7px;width:112px}.action-dock .action-message{display:none}.action-dock .actionbar button{min-height:28px;padding:3px;font-size:8px}.action-dock kbd{display:none}}@media(max-width:380px){main{padding-bottom:156px}.player-layout{bottom:70px;height:86px}.action-dock{height:70px}.board>.row .card .gem{font-size:20px}.board>.row .card .cost{bottom:40px}.board>.row .card .card-actions button{min-height:28px;font-size:7px}.action-dock .actionbar button{min-height:25px}}
