:root{--ink:#253b34;--muted:#7d8071;--paper:#f4f1e7;--line:#dcdaca;--wine:#86483e;--gold:#a78c55;--white:#fffef8;--shadow:0 12px 40px #263d3512;font-family:"Microsoft YaHei","PingFang SC",sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{outline-offset:4px}button{cursor:pointer}a{color:inherit;text-decoration:none}button{border:1px solid var(--line);background:transparent;color:var(--ink);padding:10px 15px;border-radius:5px;transition:.15s}button:hover{background:#e8e9dc}button:disabled{cursor:default;opacity:.42}button.primary{background:var(--ink);border-color:var(--ink);color:var(--white)}button.primary:hover{background:#38564a}button.wine{background:var(--wine);color:#fff;border-color:var(--wine)}button.small{font-size:12px;padding:7px 10px}input,select{border:1px solid #cccdbd;background:var(--white);padding:11px 12px;border-radius:4px;max-width:100%;color:var(--ink)}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,"Songti SC",SimSun,serif;font-weight:500}h1{font-size:clamp(44px,5.2vw,76px);line-height:1.2;letter-spacing:3px}h2{font-size:32px}h3{font-size:16px}.topbar{height:88px;padding:0 4.5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:13px;font-family:Georgia,SimSun,serif;font-size:21px;letter-spacing:2px}.brand small{display:block;font-family:Georgia,serif;font-size:9px;letter-spacing:2px;color:var(--muted);margin-top:6px}.crest{font-size:34px;color:var(--wine)}nav{display:flex;gap:20px;align-items:center;font-size:13px}nav button{border:0;padding:9px 0}nav a{border-left:1px solid var(--line);padding-left:20px}.eyebrow{font-size:10px;letter-spacing:2.8px;color:var(--muted);font-weight:600}.hero{display:grid;grid-template-columns:1fr 1fr;max-width:1400px;margin:auto;padding:65px 5% 46px;gap:7%;align-items:center}.hero h1{margin:24px 0}.hero h1 em{display:block;font-style:normal;color:var(--wine)}.hero-copy>p{color:#6a776b;font-size:15px;line-height:2.1;max-width:440px}.hero-image{position:relative}.hero-image img{width:100%;display:block;aspect-ratio:1.13;object-fit:cover;object-position:center 65%;border-radius:50% 50% 3px 3px;box-shadow:var(--shadow)}.hero-image:before{content:"";position:absolute;inset:-11px;border:1px solid #b6b9a3;border-radius:50% 50% 3px 3px;pointer-events:none}.image-note{font-family:Georgia,serif;font-size:13px;font-style:italic;text-align:center;color:var(--muted);margin-top:22px}.facts{display:flex;gap:25px;margin:25px 0 30px;font-size:12px;color:#687869}.facts b{display:block;color:var(--ink);font:22px Georgia,serif;margin-bottom:6px}.hero-actions{display:flex;gap:10px;flex-wrap:wrap}.welcome-bottom{max-width:1260px;margin:0 auto;padding:28px 3% 45px;border-top:1px solid var(--line);display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:35px}.welcome-bottom p{font-size:12px;line-height:1.9;color:var(--muted)}.welcome-bottom h3{font-family:Georgia,SimSun,serif;font-size:20px;font-weight:400;margin-bottom:12px}.setup-card{max-width:660px;margin:45px auto;padding:38px;background:var(--white);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.setup-card h2{margin:15px 0}.field{display:grid;gap:7px;margin:18px 0;font-size:13px}.name-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.name-fields input{width:100%}.button-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:22px}.hint{font-size:12px;color:var(--muted);line-height:1.9}.table-shell{padding:20px 3% 40px;max-width:1800px;margin:auto}.table-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}.phase-track{display:flex;gap:6px;align-items:center}.phase-track span{font:16px Georgia,serif;width:34px;height:34px;border:1px solid var(--line);display:grid;place-items:center;border-radius:50%;color:var(--muted)}.phase-track span.current{background:var(--ink);color:#fff}.phase-track b{font-size:12px;margin-left:8px}.table-meta{text-align:right;font-size:12px;color:var(--muted)}.players{display:grid;grid-template-columns:repeat(var(--count),1fr);gap:10px;margin-bottom:20px}.player-card{border:1px solid var(--line);border-top:3px solid var(--pcolor);background:#fffdf8;padding:13px 15px;border-radius:5px;text-align:left;display:flex;justify-content:space-between;align-items:center}.player-card.active{box-shadow:0 0 0 1px var(--pcolor)}.player-card b{font-size:13px}.player-card small{display:block;margin-top:7px;font-size:10px;color:var(--muted)}.score{font:29px Georgia,serif}.score small{font-size:9px;text-align:right}.play-layout{display:grid;grid-template-columns:minmax(320px,1.05fr) minmax(350px,1.15fr) minmax(260px,.8fr);gap:18px;align-items:start}.panel{background:#fcfbf4;border:1px solid var(--line);border-radius:7px;padding:18px}.panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.panel-head h3{margin:0;font:21px Georgia,SimSun,serif}.panel-head small{font-size:10px;color:var(--muted)}.depots{display:grid;grid-template-columns:1fr 1fr;gap:10px}.depot{border:1px solid #dddccc;border-radius:5px;min-height:125px;padding:10px;background:#f2f0e6}.depot h4{margin:0 0 7px;display:flex;justify-content:space-between;font-size:11px;color:#6f7869}.die-mini{color:var(--ink);font-size:19px;line-height:1}.tiles{display:flex;gap:4px;flex-wrap:wrap;align-items:center}.tile{position:relative;width:52px;height:48px;clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%);background:var(--tile,#b2b86d);border:0;padding:0;display:grid;place-items:center;font-size:10px;line-height:1.2;text-align:center;color:#253b34}.tile img{width:100%;height:100%;object-fit:fill;position:absolute;inset:0;z-index:0}.tile .tile-label{background:#fffcebbb;position:absolute;bottom:2px;left:9%;right:9%;font-size:8px;padding:1px}.tile.selected{filter:drop-shadow(0 0 3px #a86428);outline:none}.tile:hover{filter:brightness(1.1)}.depot-goods{font-size:10px;color:#7f7964;margin-top:8px}.black-market{margin-top:14px;background:#e5e4d9;padding:12px;border-radius:5px}.black-market h4{font-size:11px;margin:0 0 9px}.board-panel{position:relative;overflow:hidden;background:radial-gradient(ellipse at center,#ecebd6,#e4e5d4)}.board-wrap{width:100%;aspect-ratio:1.07;position:relative;margin:10px auto}.hex{position:absolute;width:12%;height:14%;transform:translate(-50%,-50%);clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%);border:0;background:var(--tile);display:flex;align-items:center;justify-content:center;padding:0;color:#2d4036;box-shadow:inset 0 0 10px #ffffff36;font-family:Georgia,serif;font-size:20px}.hex.empty{opacity:.65}.hex.valid{opacity:1;filter:drop-shadow(0 0 3px #ca9447);background:linear-gradient(#ffffff55,#ffffff55),var(--tile);cursor:pointer}.hex img{width:100%;height:100%;object-fit:fill}.hex .board-number{position:absolute;background:#fffde6d9;bottom:6%;font-size:11px;min-width:14px;border-radius:50%}.hex:disabled{opacity:1}.board-legend{display:flex;gap:11px;flex-wrap:wrap;font-size:9px;color:#747a67;margin-top:6px}.board-legend i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--tile);margin-right:3px}.resources{display:flex;justify-content:space-around;border-top:1px solid #d4d5c3;margin:5px 0 15px;padding-top:14px;font-size:11px}.resources b{font:23px Georgia,serif;display:block;text-align:center;margin-bottom:3px}.storage{padding-top:13px;border-top:1px solid var(--line)}.storage h4{font-size:11px;margin:0 0 10px}.storage .tile{width:65px;height:57px}.empty-slot{border:1px dashed #bfc3ad;border-radius:5px;width:62px;height:54px;display:grid;place-items:center;color:#b4b8a3;font-size:22px}.goods-list{display:flex;gap:6px;flex-wrap:wrap;font-size:10px;margin-top:15px}.goods-chip{background:#e6e1cf;border:1px solid #d2c9af;padding:5px 7px;border-radius:4px}.dice-row{display:flex;gap:10px;margin:15px 0}.die{width:50px;height:50px;background:#fffff8;box-shadow:2px 3px 0 #d1cebc;border:1px solid #c9c6b2;font:34px Georgia,serif;padding:0}.die.used{opacity:.25;box-shadow:none}.die.selected{outline:2px solid var(--wine);outline-offset:3px}.active-note{font-size:13px;line-height:1.7;margin-bottom:7px}.action-tabs{display:flex;gap:4px;flex-wrap:wrap;margin:14px 0}.action-tabs button{padding:7px 8px;font-size:11px;background:#efeee4}.action-tabs button.selected{background:var(--ink);color:#fff}.action-list{display:flex;flex-direction:column;gap:5px;max-height:340px;overflow:auto;padding:2px}.action-list button{text-align:left;font-size:11px;line-height:1.6;background:#fffdf6;padding:8px 10px}.action-list button:hover{background:#e8e9d8;border-color:#98a58d}.action-list .cost{font-size:9px;color:var(--wine);float:right}.end-turn{width:100%;margin-top:15px}.log{margin-top:18px;font-size:11px;color:#6e7a6b;line-height:1.9;max-height:140px;overflow:auto;border-top:1px solid var(--line);padding-top:10px}.toolbar{display:flex;gap:8px;margin:20px 0}.knowledge{font-size:11px;line-height:1.8;margin-top:12px}.knowledge details{padding:5px 0}.knowledge summary{cursor:pointer;color:var(--wine)}.result-banner{padding:26px;background:var(--ink);color:#fff;border-radius:7px;margin-bottom:20px}.result-banner h2{margin:0 0 8px}.result-banner p{margin:0;font-size:13px}.room-code{font:40px Georgia,serif;letter-spacing:6px;padding:20px 0}.waiting-list{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.waiting-list span{padding:9px 15px;background:#eeeee2;border-radius:5px;font-size:13px}dialog{max-width:850px;width:calc(100% - 35px);border:1px solid #c4c8b6;border-radius:9px;padding:32px;background:#f9f7ee;color:var(--ink);box-shadow:0 30px 100px #17292055;max-height:88vh}dialog::backdrop{background:#1f332cb3;backdrop-filter:blur(5px)}dialog h2{margin:15px 0 20px}dialog p{font-size:13px;line-height:1.95;color:#657366}.dialog-head{display:flex;justify-content:space-between;align-items:center}.dialog-head button{border:0;padding:2px 8px}.guide-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px 25px;margin:25px 0}.guide-grid article{border-top:1px solid var(--line);padding-top:15px}.guide-grid p{font-size:12px;margin:8px 0}.sources{display:flex;gap:20px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:15px;font-size:11px}.sources a{text-decoration:underline}#gallery{max-width:1100px}#gallery-search{width:100%;margin-bottom:20px}#gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:12px}#gallery-grid button{padding:8px;display:flex;flex-direction:column;font-size:10px;gap:8px;background:#eae8da;align-items:center;justify-content:center}#gallery-grid img{width:100%;height:115px;object-fit:contain}#inspect{text-align:center;max-width:1200px}#inspect-img{max-width:100%;max-height:70vh;object-fit:contain}.inspect-close{position:absolute;right:10px;top:10px;background:#f8f5e7}#toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);background:#263d35;color:#fff;padding:14px 24px;box-shadow:var(--shadow);border-radius:5px;font-size:13px;z-index:30;max-width:90%;text-align:center}.loading{padding:100px;text-align:center;color:var(--muted)}[hidden]{display:none!important}@media(min-width:1500px){.tile{width:62px;height:54px}.depot{min-height:140px}}@media(max-width:1150px){.play-layout{grid-template-columns:1fr 1.1fr}.action-panel{grid-column:1/-1;display:grid;grid-template-columns:1fr 2fr;gap:15px}.action-panel .log{grid-column:1/-1}.action-list{max-height:220px}.hero{gap:5%;padding-top:45px}}@media(max-width:720px){.topbar{height:72px;padding:0 5%}.brand{font-size:17px}.brand small{font-size:7px;letter-spacing:1px}.crest{font-size:27px}nav{gap:12px;font-size:11px}nav a{display:none}.hero{grid-template-columns:1fr;padding:32px 7% 30px;gap:30px}.hero-copy{order:1}.hero-image{max-width:420px;margin:10px auto;width:90%}.hero-image img{aspect-ratio:1.7;border-radius:180px 180px 3px 3px}.hero-image:before{border-radius:180px 180px 3px 3px}.image-note{display:none}h1{font-size:43px;letter-spacing:1px;margin:15px 0!important}.hero-copy>p{font-size:13px}.facts{margin:19px 0;gap:30px}.facts b{font-size:19px}.welcome-bottom{grid-template-columns:1fr;gap:10px;margin:0 7%;padding:25px 0}.setup-card{margin:25px 5%;padding:25px}.play-layout{grid-template-columns:1fr}.action-panel{grid-column:auto;display:block}.market-panel{order:2}.board-panel{order:1}.action-panel{order:0}.players{grid-template-columns:repeat(2,1fr)}.player-card{padding:9px}.player-card b{font-size:11px}.score{font-size:24px}.table-shell{padding:15px 4%}.phase-track span{height:26px;width:26px;font-size:13px}.phase-track{gap:3px}.phase-track b{font-size:10px}.table-meta{font-size:10px}.action-list{max-height:180px}.dice-row{margin:10px 0}.die{height:40px;width:40px;font-size:28px}.panel{padding:15px}.guide-grid{grid-template-columns:1fr;gap:8px}dialog{padding:22px}dialog h2{font-size:27px}.toolbar{flex-wrap:wrap}}
:root{--board-highlight:#f9dc8b}
.board-heading-actions{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
.board-heading-actions .small{font-size:10px;padding:6px 8px;white-space:nowrap}
.board-panel{background:#e9e7da}
.board-wrap.board-original{aspect-ratio:auto;margin:10px auto 15px;isolation:isolate}
.board-art{display:block;width:100%;height:auto;pointer-events:none;user-select:none;border-radius:5px;filter:drop-shadow(0 3px 5px #17291f20)}
.board-original .hex{background:transparent;box-shadow:none;border:0;clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);opacity:1;overflow:hidden;z-index:1;transition:filter .15s}
.board-original .hex.empty,.board-original .hex.empty:hover,.board-original .hex:disabled,.board-original .hex.filled{background:transparent;box-shadow:none;opacity:1}
.board-original .hex.valid{background:transparent;filter:drop-shadow(0 0 2px #d5a93d88)}
.board-original .hex.valid:hover,.board-original .hex.valid:focus-visible{background:#fff2b522;filter:drop-shadow(0 0 4px #f9dc8b)}
.board-original .hex img{width:100%;height:100%;object-fit:fill;display:block;pointer-events:none}
.hex-target{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.hex-target polygon{fill:#ffe79d18;stroke:var(--board-highlight);stroke-width:4}
.placed-name{font-size:clamp(8px,1vw,11px);background:#fbf4d6cc;padding:3px;color:var(--ink)}
#board-detail{max-width:1250px;padding:20px 28px}
#board-detail .dialog-head h2{font-size:22px;margin:0 0 5px}
#board-detail-content{max-width:1050px;margin:auto}
#board-detail .board-wrap{margin:5px auto}
#board-detail .hint{text-align:center;margin:12px 0 0}
@media(min-width:1151px){.play-layout{grid-template-columns:minmax(290px,.95fr) minmax(390px,1.5fr) minmax(250px,.85fr)}}
@media(max-width:720px){.board-heading-actions small{display:none}#board-detail{width:calc(100% - 16px);padding:15px 8px}#board-detail .dialog-head{padding:0 8px}#board-detail .dialog-head h2{font-size:18px}.board-panel{padding:12px}.board-heading-actions .small{padding:6px}}
@media(max-width:720px){#board-detail-content{overflow:auto;max-height:70vh}#board-detail-content .board-original{width:760px;max-width:none}}
