:root{color-scheme:dark;--bg:#102c28;--panel:#183b33;--panel2:#21483e;--ink:#f6f0df;--muted:#b4c7b8;--gold:#e2ba6d;--line:#ffffff24;--red:#e98d75;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink)}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{border:1px solid var(--line);border-radius:9px;background:#ffffff08;color:var(--ink);padding:.7rem 1rem;cursor:pointer;transition:background .15s,box-shadow .15s}button:hover{background:#ffffff16}button:disabled{opacity:.4;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--gold);outline-offset:3px}input,select{border:1px solid var(--line);border-radius:9px;background:#0d2823;color:var(--ink);padding:.85rem;width:100%;min-width:0}a{color:inherit;text-decoration:none}a:hover{color:var(--gold)}.primary{background:var(--gold);color:#18352b;font-weight:750;border-color:var(--gold)}.primary:hover{background:#f4ce85}.quiet{font-size:.83rem;line-height:1.6;color:var(--muted)}.eyebrow{font-size:.67rem;font-weight:700;letter-spacing:.23em;color:var(--gold)}.link{border:0;padding:.3rem;background:none;text-decoration:underline}.back{display:inline-block;font-size:.82rem;color:var(--muted)}[hidden]{display:none!important}.home{max-width:1120px;margin:auto;padding:36px 38px 20px}.welcome{padding:70px 0 15px;position:relative}h1,h2,h3,p{margin-top:0}h1{font:normal clamp(60px,8vw,96px)/1 Georgia,serif;letter-spacing:-.05em;margin:20px 0 25px}h1 span{display:block;font:normal 22px/1.5 Georgia,serif;letter-spacing:0;margin-top:18px}.welcome p{color:var(--muted);line-height:1.7;font-size:.95rem}.cover{display:block;width:100%;max-height:235px;object-fit:contain;object-position:center;margin:0 auto 24px;border-radius:8px}.entry{max-width:780px;margin:0 auto;padding:28px 32px;background:linear-gradient(110deg,#244c40,#173e34);border:1px solid var(--line);border-radius:16px;box-shadow:0 18px 60px #001a1533}.entry label{display:block;font-size:.78rem;font-weight:650;margin:0 0 8px}.entry #name{margin-bottom:23px}.entry-actions{display:grid;grid-template-columns:1fr 1fr;gap:32px}.entry-actions button{display:block;width:100%;margin-top:12px;text-align:left}.entry-actions button span{float:right}.entry .quiet{margin:22px 0 0}#join-code{text-transform:uppercase;letter-spacing:.13em}.home footer{font-size:.72rem;color:var(--muted);text-align:center;line-height:1.8;margin-top:35px}.table-header{height:58px;display:flex;align-items:center;gap:18px;padding:0 20px;border-bottom:1px solid var(--line);background:#10362d;z-index:8;position:relative}.brand{color:var(--gold);font:26px Georgia,serif;display:flex;gap:14px;align-items:center}.brand span{font-size:24px;color:var(--ink)}.table-header button{padding:.45rem .7rem;font-size:.8rem}.header-tools{margin-left:auto;display:flex;gap:6px}.header-tools button{min-width:35px}#round{font-size:.8rem;color:var(--gold)}#code{letter-spacing:.11em}.status-line{height:33px;display:flex;align-items:center;gap:22px;padding:0 18px;background:#1d453b;font-size:.7rem;overflow:hidden}.status-line #phase{color:var(--gold);font-weight:700;white-space:nowrap}.status-line #last-action{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.status-line #network{margin-left:auto;white-space:nowrap;color:#aad8af}.game-layout{display:flex;height:calc(100dvh - 58px - 33px - 233px);min-height:240px}.board-shell{position:relative;flex:1;min-width:0;background:radial-gradient(ellipse at center,#41604a,#193a30 65%);overflow:hidden}#viewport{width:100%;height:100%;overflow:hidden;touch-action:none;cursor:grab;position:relative}#viewport.dragging{cursor:grabbing}#stage{position:absolute;top:0;left:0;width:1320px;height:688px;transform-origin:0 0;will-change:transform;user-select:none}.board-image{position:absolute;left:510px;top:0;width:809px;height:688px;pointer-events:none;filter:drop-shadow(0 5px 15px #0005)}.market-row{position:absolute;left:10px;width:480px;height:132px;display:flex;justify-content:space-around;align-items:center;gap:8px}.market-row .card-slot{height:130px;width:85px;position:relative;flex-shrink:0}.card-slot.empty{border:1px dashed #ffffff25;border-radius:6px}.art-button{padding:0;border:0;background:none;border-radius:5px;position:relative;display:block;transition:filter .15s,box-shadow .15s}.art-button img{width:100%;height:100%;object-fit:contain;display:block;pointer-events:none}.art-button:hover{filter:brightness(1.1);background:transparent}.card-slot .art-button{width:85px;height:130px;box-shadow:0 3px 8px #0007}.eligible{box-shadow:0 0 0 3px #f2d283,0 0 16px #e8c16e99!important}.selected-board{box-shadow:0 0 0 4px #fff,0 0 22px #f7e5a4!important}.crown-badge{position:absolute;right:-4px;top:-7px;border-radius:50%;background:#edd186;color:#3b321a;padding:2px 5px;box-shadow:0 1px 5px #0008;font-size:12px;line-height:22px}.favors-row{display:flex;position:absolute;left:8px;top:12px;gap:9px;width:484px;height:115px;align-items:center}.favor-art{width:112px;height:86px}.favor-art.taken{opacity:.13;pointer-events:none}.dice-row{position:absolute;left:522px;width:184px;min-height:44px;padding:4px;display:flex;flex-wrap:wrap;gap:5px;align-content:center;justify-content:flex-start;border-radius:9px;background:#173c2544;cursor:pointer}.dice-row.active-row{box-shadow:0 0 0 3px var(--gold);background:#123b32bd}.dice-row .die{width:29px;height:29px;border-radius:6px;font-size:17px;box-shadow:0 2px 4px #0006}.row-name{position:absolute;left:522px;width:180px;color:#fff3ca;text-shadow:0 1px 3px #000;font-size:12px;font-weight:750;pointer-events:none}.die{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:9px;background:var(--die-color,#eee);color:#fff;font-weight:800;border:2px solid #ffffff55;position:relative;box-shadow:inset 0 0 0 2px #0001,0 2px 3px #0003;padding:0;flex:none}.die.gray{--die-color:#727574}.die.orange{--die-color:#d6882c}.die.purple{--die-color:#8b4e9d}.die.green{--die-color:#27966a}.die.white{--die-color:#fff9e7;color:#24473b}.die.neutral{--die-color:#b8c0b6;color:#223d32;border-style:dashed}.die .owner-dot{position:absolute;width:10px;height:10px;bottom:-5px;right:-4px;border:1px solid #1b3029;outline:1px solid #fff8;border-radius:50%;background:var(--player-color)}.die.capped::before{content:"+3";position:absolute;font-size:7px;top:-8px;right:-6px;border-radius:5px;background:#78d1a7;color:#0a3924;padding:2px}.node{position:absolute;width:16px;height:16px;padding:0;border-radius:50%;transform:translate(-50%,-50%);background:transparent;border:0;z-index:3}.node.target{background:#ffe8b3a0;box-shadow:0 0 0 2px #f8e5ad,0 0 12px #fff;animation:glow 1.5s infinite}.node.target.selected-board{background:#fff;animation:none}.monastery{width:43px;height:43px;border-radius:0;background:none}.monastery img{width:100%;height:100%;object-fit:contain;pointer-events:none}.node .visitors{position:absolute;top:-5px;left:0;display:flex;gap:1px;pointer-events:none}.mini-disc{display:inline-block;width:7px;height:7px;border:1px solid #263c31;border-radius:50%;background:var(--player-color)}.pilgrim{position:absolute;z-index:5;pointer-events:none;transform:translate(-50%,-88%);font:24px/1 Georgia,serif;text-shadow:0 1px 2px #000,0 0 3px #000;color:var(--player-color);filter:drop-shadow(0 0 2px #fff)}.pilgrim::after{content:"";width:8px;height:8px;position:absolute;left:50%;bottom:-4px;transform:translateX(-50%);background:var(--player-color);border:1px solid #182b23;border-radius:50%}.track-score{position:absolute;width:46px;height:46px;background:#efdcae;color:#383b26;border:2px solid #a68143;border-radius:5px;display:flex;align-items:center;justify-content:center;text-align:center;font-size:11px;font-weight:800;line-height:1.5;box-shadow:0 2px 3px #0006}.track-disc{position:absolute;transform:translate(-50%,-50%);width:10px;height:10px;z-index:5;border:1px solid #182d25;background:var(--player-color);border-radius:50%;box-shadow:0 1px 2px #0008}.voyage-art{position:absolute;width:123px;height:80px;padding:0;border-radius:3px;background:none}.voyage-art .visitors{position:absolute;left:9px;top:12px;display:flex;gap:2px}.voyage-art .mini-disc{width:10px;height:10px}.voyage-art small{position:absolute;top:-21px;left:3px;color:#112c21;background:#f3e6bb;font-size:9px;padding:2px 5px;border-radius:3px}.board-tools{position:absolute;bottom:12px;left:12px;display:flex;gap:4px;padding:5px;background:#10372ee8;border:1px solid var(--line);border-radius:10px;z-index:6;box-shadow:0 5px 20px #0004}.board-tools button{padding:.4rem .65rem;border:0;font-size:.72rem}.board-tools #zoom-label{font-size:.66rem;align-self:center;width:42px;text-align:center;color:var(--muted)}#map-hint{position:absolute;right:12px;top:10px;color:#e7f0da88;font-size:.62rem;pointer-events:none}#sidebar{width:278px;flex:none;overflow:auto;background:#13382e;padding:14px;border-left:1px solid var(--line);scrollbar-width:thin}.side-title{font:20px Georgia,serif;display:flex;justify-content:space-between;margin:0 0 15px}.side-title button{display:none;padding:0 8px}.player-card{padding:12px;border:1px solid var(--line);border-radius:10px;margin-bottom:9px;cursor:pointer;background:#ffffff04;border-left:3px solid var(--player-color)}.player-card.active{background:#e5bc6a14;border-color:#d3b772}.player-head{display:flex;align-items:center;gap:8px;font-size:.82rem;font-weight:750}.player-head .order{font-size:.65rem;color:var(--muted)}.player-head .vp{margin-left:auto;color:var(--gold);font-size:1rem}.player-stats{display:flex;gap:10px;font-size:.7rem;margin:9px 0;color:var(--muted)}.player-tracks{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.track-chip{font-size:.68rem;display:flex;align-items:center;justify-content:center;gap:4px;padding:4px 0;border-radius:5px;background:#ffffff08}.track-chip img{height:17px;width:17px;object-fit:contain}.player-foot{display:flex;justify-content:space-between;align-items:center;margin-top:8px;font-size:.65rem;color:var(--muted)}.player-foot .time{font-variant-numeric:tabular-nums;color:var(--ink)}.journal,.chat{margin-top:22px}.journal h2,.chat h2{font:17px Georgia,serif;color:#d9dfcc}.journal #log{font-size:.68rem;line-height:1.5;color:var(--muted);max-height:170px;overflow:auto}.journal #log p{margin-bottom:7px}#messages{max-height:140px;overflow:auto;font-size:.72rem;line-height:1.5}#messages p{margin-bottom:7px}#messages b{color:var(--gold)}#chat-form{display:flex;gap:4px}#chat-form input{padding:8px;font-size:.75rem}#chat-form button{padding:4px 9px}#hud{height:233px;background:#14382e;border-top:1px solid var(--line);padding:12px 18px 14px;position:relative;z-index:7}.hud-top{display:flex;align-items:center;gap:15px;margin-bottom:10px;min-height:23px}#prompt{font-size:.85rem;font-weight:700}#own-resources{margin-left:auto;white-space:nowrap;font-size:.78rem;color:var(--gold)}#dice-tray{display:flex;gap:7px;align-items:center;overflow:auto;min-height:0;margin:0 0 8px;scrollbar-width:thin}#dice-tray:empty{display:none}#dice-tray small{font-size:.65rem;color:var(--muted);white-space:nowrap;margin-right:5px}#dice-tray .die.selected{outline:3px solid var(--gold);outline-offset:2px}#dice-tray .die{width:32px;height:32px;font-size:17px;margin:3px 1px}.action-body{display:flex;gap:16px;height:calc(100% - 37px);min-height:0}#dice-tray:not(:empty)+.action-body{height:calc(100% - 80px)}#options{display:flex;gap:7px;flex:1;overflow:auto;align-items:stretch;padding:3px;scrollbar-width:thin}.choice-option{display:flex;align-items:center;gap:8px;text-align:left;min-width:145px;max-width:230px;padding:8px;font-size:.72rem;flex-shrink:0}.choice-option.selected{border-color:#f2d17b;background:#e7c27720;box-shadow:0 0 0 1px var(--gold)}.choice-option img{width:49px;max-height:78px;object-fit:contain;flex:none;border-radius:3px}.choice-option .option-caption{display:flex;flex-direction:column;gap:6px}.choice-option .choice-sub{font-size:.63rem;color:var(--muted);line-height:1.4}.choice-option .pair-art{display:flex;gap:2px}.choice-option .pair-art img{width:39px}.choice-option.location{min-width:125px;max-width:180px;justify-content:center}.validation{flex:none;width:230px;display:flex;flex-direction:column;justify-content:center;gap:7px;border-left:1px solid var(--line);padding-left:17px}.validation #selected-label{font-size:.7rem;color:var(--muted);max-height:35px;overflow:auto}.validation .primary{font-size:.8rem;padding:.75rem .6rem}#trade-tools{display:flex;gap:5px}#trade-tools button{font-size:.6rem;padding:4px}.lobby{max-width:940px;margin:40px auto;padding:0 24px}.lobby h1{font-size:54px;letter-spacing:-.035em}.lobby p{color:var(--muted);line-height:1.6}.lobby-list{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:28px 0}.lobby-seat{background:#1e463b;border:1px solid var(--line);border-radius:12px;min-height:100px;padding:20px;display:flex;gap:12px;align-items:center}.lobby-seat span{display:flex;flex-direction:column;gap:7px;flex:1}.lobby-seat small{font-size:.72rem;color:var(--muted)}.lobby-seat button{padding:5px 9px;font-size:.68rem}.lobby-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.lobby-actions select{width:190px}.lobby-note{font-size:.8rem;margin-top:24px}dialog{border:1px solid #a6b69a66;border-radius:16px;background:#173e32;color:var(--ink);padding:32px;max-width:min(900px,94vw);max-height:90dvh;box-shadow:0 22px 100px #0008;scrollbar-width:thin}dialog::backdrop{background:#041b17bb;backdrop-filter:blur(4px)}.dialog-close{position:sticky;float:right;top:0;margin:-16px -16px 5px 5px;z-index:4;background:#173e32;width:35px;height:35px;padding:0;font-size:23px}dialog h2{font:34px/1.2 Georgia,serif}dialog p,dialog li{font-size:.85rem;line-height:1.8;color:#d1dfcd}dialog li{margin-bottom:12px}dialog a{color:var(--gold);text-decoration:underline}.detail-card{display:flex;gap:28px;align-items:center}.detail-card>img{width:min(280px,43vw);max-height:65dvh;object-fit:contain;border-radius:7px;box-shadow:0 10px 20px #0004}.detail-card h2{margin-bottom:18px}.detail-card .eyebrow{margin-bottom:13px}.card-library{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:12px}.card-library button{padding:0;border:0;background:none}.card-library img{width:100%;display:block;border-radius:5px}.tableau-section{margin:25px 0}.tableau-section h3{font:21px Georgia,serif}.results{border-collapse:collapse;width:100%;font-size:.8rem}.results td,.results th{text-align:left;border-bottom:1px solid var(--line);padding:10px 6px}.results .winner td{color:var(--gold);font-weight:700}.results td:last-child{font-size:1rem;font-weight:750}.result-details{font-size:.68rem;color:var(--muted);margin-top:4px}.result-actions{display:flex;gap:10px;margin-top:22px}#toast{position:fixed;top:70px;left:50%;transform:translateX(-50%) translateY(-15px);z-index:50;background:#f7e3b1;color:#223d30;padding:13px 20px;border-radius:10px;box-shadow:0 5px 25px #0004;max-width:90vw;text-align:center;font-size:.82rem;opacity:0;pointer-events:none;transition:.2s}#toast.visible{opacity:1;transform:translateX(-50%) translateY(0)}body.immersive .table-header{height:44px}body.immersive .game-layout{height:calc(100dvh - 44px - 33px - 233px)}@keyframes glow{50%{box-shadow:0 0 0 4px #f2de9f88,0 0 15px #fff}}@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important}}
@media(max-width:1000px){#sidebar{position:fixed;right:0;top:58px;bottom:0;width:290px;z-index:12;box-shadow:-10px 0 30px #0005;transform:translateX(110%);transition:transform .2s}.show-sidebar #sidebar{transform:translateX(0)}.side-title button{display:block}.validation{width:205px}.game-layout{height:calc(100dvh - 324px)}body.immersive #sidebar{top:44px}}
@media(max-width:600px){.home{padding:24px 20px}.welcome{padding-top:45px}.welcome p{font-size:.85rem}.welcome h1{font-size:68px}.cover{margin-top:18px}.entry{padding:23px 18px}.entry-actions{grid-template-columns:1fr;gap:26px}.home footer{font-size:.62rem}.table-header{height:48px;padding:0 9px;gap:8px}.brand{font-size:23px;gap:6px}.brand span{display:none}.table-header button{font-size:.68rem;padding:.45rem .5rem}#round{font-size:.65rem}.header-tools{gap:3px}.header-tools button{min-width:28px}#code{font-size:.75rem;letter-spacing:.06em}.status-line{height:29px;gap:10px;padding:0 10px;font-size:.62rem}#network{display:none}#hud{height:225px;padding:9px 10px max(9px,env(safe-area-inset-bottom))}.game-layout{height:calc(100dvh - 48px - 29px - 225px);min-height:160px}.hud-top{gap:8px;margin-bottom:7px;min-height:21px}#prompt{font-size:.72rem;line-height:1.35}#own-resources{font-size:.63rem}.action-body{gap:8px;height:calc(100% - 29px)}#dice-tray:not(:empty)+.action-body{height:calc(100% - 72px)}.validation{width:128px;padding-left:8px;gap:7px}.validation #selected-label{font-size:.59rem;max-height:42px}.validation .primary{font-size:.7rem;padding:.7rem .35rem}.choice-option{font-size:.65rem;min-width:132px;max-width:185px;padding:6px;gap:7px}.choice-option img{width:40px;max-height:66px}.choice-option .choice-sub{font-size:.58rem}.choice-option.location{min-width:105px}.board-tools{bottom:7px;left:6px;gap:0;padding:3px}.board-tools button{padding:.4rem .5rem;font-size:.62rem}.board-tools #zoom-label{font-size:.55rem;width:32px}#map-hint{font-size:.53rem;right:7px;top:7px}#sidebar{top:48px;width:min(310px,90vw)}.lobby{margin-top:30px;padding:0 18px}.lobby h1{font-size:44px}.lobby-list{grid-template-columns:1fr;gap:9px;margin:22px 0}.lobby-seat{padding:14px;min-height:76px}.lobby-actions .primary{width:100%}dialog{padding:25px 20px;max-width:96vw}.detail-card{flex-direction:column;gap:20px}.detail-card>img{width:auto;max-width:80vw;max-height:47dvh}.detail-card h2{font-size:28px;margin-bottom:12px}.detail-card p{font-size:.8rem}.results{font-size:.7rem}.results td,.results th{padding:9px 4px}.result-details{font-size:.6rem}.results td:last-child{font-size:.85rem}.card-library{grid-template-columns:repeat(3,1fr);gap:9px}body.immersive .table-header{height:40px}body.immersive .game-layout{height:calc(100dvh - 40px - 29px - 225px)}body.immersive #sidebar{top:40px}}
@media(max-height:550px) and (orientation:landscape){.table-header{height:40px}.status-line{height:25px}.game-layout,body.immersive .game-layout{height:calc(100dvh - 40px - 25px - 135px);min-height:100px}#hud{height:135px;padding:6px 12px}.hud-top{margin-bottom:4px;min-height:20px}#prompt{font-size:.7rem}.action-body{height:calc(100% - 25px)}#dice-tray{position:absolute;right:245px;top:3px;max-width:36%;padding:0 4px;background:#14382e;margin:0;z-index:2}#dice-tray .die{width:24px;height:24px;font-size:13px}#dice-tray small{display:none}#dice-tray:not(:empty)+.action-body{height:calc(100% - 25px)}.choice-option img{width:32px;max-height:55px}.choice-option{font-size:.64rem;min-width:135px;max-width:190px}.validation{width:205px}.validation #selected-label{max-height:18px}.board-tools{bottom:5px}.board-tools button{padding:.3rem .5rem}#map-hint{display:none}#own-resources{margin-right:8px}.table-header .brand span{display:inline}}


.card-info{position:absolute;bottom:5px;right:4px;z-index:6;width:23px;height:23px;padding:0;border-radius:50%;background:#123c32ed;color:#ffe2a1;border:1px solid #ebd39a;font:italic 16px Georgia,serif;box-shadow:0 1px 5px #0008}
.card-info:hover{background:#e2ba6d;color:#193b2d}
#card-hint{position:fixed;z-index:40;display:flex;align-items:flex-start;gap:14px;width:360px;max-width:calc(100vw - 20px);padding:16px;background:#f6efd9;color:#223e30;border:1px solid #d1b978;border-radius:12px;box-shadow:0 10px 40px #0007;pointer-events:none}
#card-hint>img{width:83px;height:auto;border-radius:4px;box-shadow:0 3px 7px #0004}
#card-hint .eyebrow{color:#8a7344;font-size:8px;letter-spacing:.1em;margin-bottom:8px}
#card-hint b{display:block;font:20px/1.1 Georgia,serif}
#card-hint p{font-size:12px;line-height:1.6;margin:10px 0}
#card-hint small{font-size:10px;line-height:1.5;color:#6d775e;display:block}

#selection-detail{font-size:10px;padding:1px 0;text-align:left;color:var(--gold)}
