:root{--ink:#23364a;--paper:#fffdf4;--blue:#3776bd;--sea:#74c9cf;--gold:#f2b94b;--coral:#ed6f61;--mint:#bde7c7}*{box-sizing:border-box}body{margin:0;min-width:1100px;font-family:"Microsoft YaHei",sans-serif;color:var(--ink);background:#e5f3ef}.screen{min-height:100vh}.hidden{display:none!important}.hero{display:grid;place-items:center;background:linear-gradient(135deg,#64beca,#397ab3)}.hero-card,.result-card{width:600px;padding:58px;text-align:center;border-radius:30px;background:#fffdf4eF;box-shadow:0 20px 50px #16395d66}.hero-card p,.result-card>p{margin:0;color:#44819a;font-weight:bold}.hero-card h1{margin:8px 0;font-size:52px;letter-spacing:9px}.hero-card span{color:#627789}.buttons{margin-top:34px;display:flex;justify-content:center;gap:12px}button{border:0;border-radius:10px;padding:12px 21px;background:var(--coral);color:white;font:700 15px "Microsoft YaHei";cursor:pointer;box-shadow:0 4px 0 #b34d46}button:disabled{opacity:.5;cursor:not-allowed}.light{background:#e7f0eb;color:#315c69;box-shadow:0 4px 0 #bad0c9}.small{padding:7px 13px;font-size:12px}header{height:68px;display:flex;align-items:center;justify-content:space-between;padding:0 42px;background:#fffdf4;border-bottom:1px solid #cfdfd5}header h1{font-size:22px}.back{padding:7px 12px}.setup-grid{display:grid;grid-template-columns:1fr 420px;gap:22px;max-width:1080px;margin:38px auto}.card,.side{border-radius:18px;background:var(--paper);padding:22px;box-shadow:0 8px 22px #3d708333}.card h2,.side h2{font-size:17px;margin:0 0 15px}.characters{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.character{padding:17px;border:2px solid #d9e6df;border-radius:14px;cursor:pointer}.character.selected{border-color:var(--coral);background:#fff0df}.avatar{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;color:#fff;font-weight:bold;margin-bottom:8px}.character b,.character small{display:block}.character small{margin-top:5px;line-height:1.5;color:#657887}.map-preview{height:150px;display:grid;place-content:center;border-radius:14px;text-align:center;color:#fff;font-size:24px;font-weight:bold;background:linear-gradient(135deg,#63c8c0,#3985af)}.map-preview small{margin-top:7px;font-size:12px;font-weight:normal}.card label{display:block;margin:15px 0;font-weight:bold}.card select{float:right;padding:5px;border:1px solid #afc7bf;border-radius:5px}.card>button{width:100%;margin-top:14px}.game-head{height:58px;padding:0 25px}.game-head span{margin-left:16px;color:#d0604f;font-weight:bold}.game-head #ranking{margin-left:auto;margin-right:14px;font-size:13px}.game-layout{display:grid;grid-template-columns:225px minmax(650px,1fr) 270px;gap:15px;padding:15px;max-width:1500px;margin:auto}.side{min-height:680px}.notice{min-height:40px;border-radius:10px;padding:10px 14px;color:white;text-align:center;font-weight:bold;background:#376d89}.board{position:relative;width:700px;height:600px;margin:10px auto;border:20px solid #c4b28b;border-radius:35px;background:linear-gradient(135deg,#9ad393,#73b775);box-shadow:inset 0 0 0 5px #f6ebce}.board:before{content:"滨 海 小 镇";position:absolute;inset:180px 150px;display:grid;place-items:center;border:5px dashed #f6edcd99;border-radius:50%;font-size:32px;letter-spacing:12px;color:#ffffff99;font-weight:bold}.cell{position:absolute;width:105px;height:76px;padding:7px;border:2px solid #fff8de;border-radius:10px;background:#d9f1d7;box-shadow:inset -4px -4px #00000010;cursor:pointer;z-index:2}.cell:hover{filter:brightness(1.08)}.cell b,.cell small{display:block}.cell b{font-size:12px}.cell small{margin-top:3px;font-size:10px;color:#497168}.cell.event,.cell.start{background:#f6d46a}.cell.shop{background:#a9dce8}.cell.owned0{background:#fab7aa}.cell.owned1{background:#abc8f8}.building{position:absolute;right:7px;bottom:6px;font-size:20px}.token{position:absolute;z-index:4;width:29px;height:29px;border:3px solid white;border-radius:50%;box-shadow:0 3px 0 #0004;transition:left .45s,top .45s}.token:after{content:"";position:absolute;inset:6px;border-radius:50%;background:#fff9}.actionbar{display:flex;justify-content:center;align-items:center;gap:12px}.dice{width:45px;height:45px;display:grid;place-items:center;border-radius:9px;background:#fff;font-size:26px;font-weight:bold;box-shadow:0 3px 0 #b1c9cb}.cards-title{margin:16px 0 8px;font-weight:bold}.cards{display:flex;gap:8px}.card-item{flex:1;min-height:62px;padding:8px;border:2px solid #9ec1d8;border-radius:9px;background:#e9f5ff;font-size:12px;cursor:pointer}.card-item small{display:block;margin-top:3px;color:#52758d}.player{display:flex;gap:9px;padding:10px 0;border-bottom:1px solid #d8e3dd}.player:last-child{border:0}.player .avatar{flex:none;margin:0;width:35px;height:35px}.player b,.player small{display:block}.player small{font-size:12px;color:#5b7380}.active{color:#d45d42}.property-info p{font-size:13px;line-height:1.7;margin:5px 0}.property-info button{width:100%;padding:8px;margin-top:7px;font-size:13px}.right ol{padding-left:18px;margin:0;max-height:410px;overflow:auto;font-size:12px}.right li{margin-bottom:8px}.modal{position:fixed;inset:0;z-index:9;display:grid;place-items:center;background:#183a50a6}.modal-card{position:relative;width:420px;max-height:80vh;overflow:auto;padding:25px;border-radius:18px;background:var(--paper);box-shadow:0 14px 42px #0007}.modal-card h2{margin:0 0 12px}.modal-card p{line-height:1.7}.modal-card button{margin:5px}.modal-card .x{position:absolute;right:10px;top:8px;padding:0;background:none;color:#49606a;box-shadow:none;font-size:25px}.result{display:grid;place-items:center;background:linear-gradient(130deg,#77cbd0,#f0d275)}.result-card h1{margin:8px}.result-row{display:flex;justify-content:space-between;padding:11px;border-bottom:1px solid #dde4dc}.result-card button{margin:16px 5px 0}
