:root{color-scheme:light;--ink:#204841;--muted:#798c83;--gold:#bd995c;--paper:#f6f7f1}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.6 'Microsoft YaHei',sans-serif}button,select{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}button:focus-visible,a:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #bb9050;outline-offset:4px}[hidden]{display:none!important}a{color:inherit;text-decoration:none}.topbar{max-width:1360px;margin:auto;padding:25px 36px;display:flex;align-items:center;gap:22px;border-bottom:1px solid #dce3d9}.brand{font-size:21px;font-weight:bold}.brand small{font-size:9px;letter-spacing:2px;margin-left:10px}.topbar nav{margin-left:auto;display:flex;gap:25px;font-size:13px}.account-link{font-size:12px}main{max-width:1360px;margin:auto;padding:32px 36px}.heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:27px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:3px;color:var(--muted)}h1{font-size:44px;letter-spacing:3px;margin:0;line-height:1.5}h1 span{color:#af8d55}h1 i{font-style:normal;font-weight:300;margin-left:22px}h2,p{margin-top:0}.heading p:last-child{color:var(--muted);margin:5px 0 0}.quiet{border:1px solid #d3dfd5;background:transparent;border-radius:24px;color:var(--ink);padding:10px 20px}.game{border:1px solid #cfdcd2;border-radius:24px;overflow:hidden;background:#fff;box-shadow:0 18px 60px #244e3d09}.arena-heading{padding:18px 26px;display:flex;justify-content:space-between;background:#e9eee5;font-size:13px}.arena-heading small{margin-left:10px;font-size:9px;letter-spacing:2px;color:var(--muted)}#round{font-weight:bold;letter-spacing:2px}.arena{display:grid;grid-template-columns:1fr 1.1fr 1fr;gap:28px;padding:28px 40px 10px;background:radial-gradient(ellipse at 50% 90%,#d5e6db77,transparent 65%),linear-gradient(120deg,#fbfcf8,#f2f5ec 50%,#faf8f0);position:relative}.fighter{min-width:0;--hero:#258f87}.enemy{--hero:#d46b65}.fighter-title{display:flex;align-items:center;justify-content:space-between}.fighter-title>span{font-size:11px;color:var(--muted)}.fighter h2{margin:0;font-size:23px}.health{height:8px;background:#dce3d8;border-radius:10px;margin-top:10px;overflow:hidden}.health i{display:block;height:100%;background:var(--hero);width:100%;transition:width .5s}.stats{display:flex;justify-content:space-between;font-size:11px;margin-top:6px;color:var(--muted)}.portrait{height:300px;position:relative;display:grid;place-items:center;isolation:isolate}.portrait img{position:absolute;max-height:100%;height:95%;width:100%;object-fit:contain;pointer-events:none;mix-blend-mode:multiply;z-index:1;filter:drop-shadow(0 14px 10px #34534416)}.big-symbol{position:absolute;left:8px;top:25px;font:120px Georgia;color:var(--hero);opacity:.09}.orbit{position:absolute;width:88%;height:48px;border:1px solid #b4c8b888;border-radius:50%;bottom:10px;box-shadow:0 0 0 15px #c1d6c318,0 0 0 30px #c1d6c310}.fighter>p{text-align:center;font-size:11px;color:var(--muted);letter-spacing:3px}.dice-board{align-self:center;text-align:center;padding:18px 0}.dice-board>.eyebrow{letter-spacing:2px}.dice-pair{display:flex;align-items:center;justify-content:center;gap:22px;margin:22px 0}.dice-pair>div>span{font-size:11px;color:var(--muted)}.die{width:88px;height:94px;margin:10px auto 15px;display:grid;place-items:center;font:44px Georgia;color:#fff;background:linear-gradient(135deg,#548d7b,#1e5649);border:5px solid #fff;border-radius:22px;box-shadow:0 8px 0 #c8d8cc,0 13px 25px #26534522;transform:rotate(-7deg)}.enemy-die{background:linear-gradient(135deg,#d4b885,#a58757);transform:rotate(7deg);box-shadow:0 8px 0 #e4d8c2,0 13px 25px #80622b22}.dice-pair strong{font-size:12px}.versus{font:italic 18px Georgia;color:var(--gold)}#status{min-height:50px;font-size:16px;font-weight:bold;line-height:1.6}.formula{font-size:11px;color:var(--muted);min-height:35px;margin:8px 0}.primary{border:0;background:var(--ink);color:white;border-radius:30px;padding:13px 28px;box-shadow:0 5px 15px #1c45351c}.actions{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding:20px 26px 12px}.actions button{display:flex;align-items:center;gap:12px;text-align:left;border:1px solid #d5dfd5;border-radius:14px;padding:16px;background:#fafbf7;color:var(--ink);transition:transform .2s,background .2s}.actions button:not(:disabled):hover{transform:translateY(-4px);background:#eef3e8;border-color:#729986}.actions small{display:block;color:var(--muted);font-size:11px;margin-top:3px}.actions b{font-size:16px}.action-icon{font-size:30px;color:#9b854f}.actions em{margin-left:auto;font-style:normal;background:#e8eee1;border-radius:50%;min-width:27px;height:27px;text-align:center}.arena-foot{display:flex;justify-content:space-between;padding:4px 28px 18px;font-size:11px;color:var(--muted)}.below{display:grid;grid-template-columns:1.1fr 1fr;gap:30px;margin:30px 0}.section-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px;gap:10px}.section-title h2{font-size:18px;margin:0}.section-title span{font-size:10px;color:var(--muted)}.roster{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.roster button{background:#fff;border:1px solid #dce3d7;border-radius:12px;padding:8px;color:var(--ink);position:relative}.roster button[aria-pressed=true]{border:2px solid #347865;background:#edf3e7;padding:7px}.roster img{width:100%;height:85px;object-fit:cover;object-position:50% 20%;mix-blend-mode:multiply}.roster b{display:block;font-size:12px}.roster .number{position:absolute;left:8px;top:5px;font:11px Georgia;color:var(--muted)}.opponent-label{display:flex;align-items:center;gap:14px;font-size:12px;margin:15px 0}.opponent-label span{color:var(--muted);font-size:10px}select{padding:6px 24px 6px 12px;border-radius:8px;border:1px solid #d6dfd2;background:#fff;color:var(--ink)}.fact{background:#e8eee2;border-left:3px solid #a8bb95;padding:10px 13px;font-size:12px;margin-bottom:8px}.roster-panel>small{font-size:10px;color:var(--muted)}.log-panel{min-width:0}#log{list-style:none;margin:0;padding:0;height:278px;overflow:auto}#log li{padding:10px 13px;border-bottom:1px solid #e0e5dc;font-size:12px}#log li:first-child:not(.empty){background:#edf1e7;border-radius:9px}#log small{display:block;font-size:10px;color:var(--muted);margin-top:3px}.empty{color:var(--muted)}.rules{border-top:1px solid #dce3d7;padding:20px 0;font-size:13px}.rules summary{cursor:pointer}.rules div{color:var(--muted);max-width:1000px;padding-top:15px}.game-footer{max-width:1288px;margin:auto;border-top:1px solid #dce3d7;padding:20px 0 35px;display:flex;gap:20px;font-size:11px;color:var(--muted)}.game-footer span{margin-left:auto}.rolling .die{animation:tumble .18s infinite alternate}.hit{animation:hit .35s}@keyframes tumble{to{transform:rotate(15deg) translateY(-9px)}}@keyframes hit{50%{transform:translateX(8px);filter:brightness(1.2)}}@media(min-width:1500px){.portrait{height:340px}}@media(max-width:800px){.topbar{padding:18px;flex-wrap:wrap}.brand small,.arena-heading small,.mode{display:none}.topbar nav{gap:12px;font-size:11px}main{padding:22px 16px}h1{font-size:34px}.heading p:last-child{font-size:12px}.quiet{padding:8px 12px;font-size:11px}.arena{gap:12px;padding:18px 15px 5px}.portrait{height:220px}.fighter-title{display:block}.fighter h2{font-size:19px}.stats{font-size:9px}.die{width:63px;height:70px;font-size:32px}.dice-pair{gap:12px}.dice-board .eyebrow{font-size:8px;letter-spacing:1px}#status{font-size:13px}.big-symbol{font-size:70px}.actions{gap:7px;padding:14px}.actions button{padding:10px;gap:6px}.action-icon{display:none}.actions b{font-size:13px}.actions small{font-size:10px}.below{gap:20px}.game-footer{padding:18px;flex-wrap:wrap}.game-footer span{margin:0}}@media(max-width:540px){.heading{gap:10px}.arena{grid-template-columns:1fr 1fr;gap:5px 30px}.fighter{grid-row:1}.enemy{grid-column:2}.portrait{height:180px}.fighter>p{letter-spacing:1px;margin-bottom:0}.dice-board{grid-column:1/-1;padding:3px 0 14px}.dice-board>.eyebrow{display:none}.dice-pair{margin:5px 0 12px;gap:28px}.die{width:59px;height:62px;margin:3px auto 10px;font-size:30px;border-radius:15px}.dice-pair>div{min-width:90px}#status{min-height:24px}.formula{min-height:0;margin:4px 0 10px}.actions{grid-template-columns:1fr;padding:12px;gap:7px}.actions button{padding:10px 14px}.actions b{font-size:14px}.actions small{display:inline;margin-left:8px}.action-icon{display:block;font-size:22px}.arena-foot{padding:0 14px 14px;flex-direction:column;gap:4px}.below{grid-template-columns:1fr}.roster img{height:90px}.arena-heading{padding:12px 16px}.heading .eyebrow{font-size:8px}.topbar .account-link{margin-left:auto}h1{font-size:32px}.game{border-radius:18px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
/* Property battle expansion */
.campaign-track{padding:10px 26px;background:#21483f;color:#e5ead8;font-size:12px;letter-spacing:1px}.environment{padding:15px 26px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #dce3d7;background:#f1f5ec}.environment small{font-size:10px;color:#7b8971;display:block}.environment strong{display:inline-block;margin:5px 14px 0 0;font-size:14px}.environment p{font-size:12px;margin:0;color:#846a3e;background:#fff9e8;padding:8px 12px;border-radius:8px}.conditions{font-size:10px;color:#647967;background:#e7eee1;border-radius:8px;padding:7px;text-align:center;min-height:30px;margin:4px 0 9px}.command-head{display:flex;justify-content:space-between;align-items:center;padding:18px 26px 0}.command-head small{font-size:9px;letter-spacing:2px;color:#879977}.command-head h2{font-size:18px;margin:0}.command-head>span{font-size:11px;color:#7b8971}.actions{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start}.skill-card{border:1px solid #d5dfd5;border-radius:14px;background:#fafbf7;overflow:hidden}.skill-card.special{background:#f0f4e9;border-color:#b9caaa}.actions .skill-card button{width:100%;border:0;background:transparent;padding:14px 12px;min-height:110px;align-items:flex-start;border-radius:0;transform:none}.actions .skill-card button:not(:disabled):hover{background:#e4eddd;transform:none}.actions .action-icon{font-size:22px}.actions b{font-size:14px}.actions small{line-height:1.7}.skill-card .skill-state{font-size:10px;color:#88764a;padding:0 12px;margin:0 0 10px;min-height:16px}.skill-card details{padding:9px 12px;border-top:1px solid #dde5d5;font-size:11px;color:#688066}.skill-card summary{cursor:pointer;color:#38644d}.skill-card details p{margin:8px 0 0;line-height:1.9}.skill-card details strong{display:block;margin-top:8px}.discovery{display:grid;grid-template-columns:230px 1fr;gap:20px;background:#edf1e5;border:1px solid #d7dfcb;border-radius:16px;padding:22px 26px;margin-top:22px}.discovery h2{font-size:18px}.discovery p{font-size:12px;line-height:1.9;margin-bottom:10px}.discovery .eyebrow{font-size:9px}.equation{display:block;background:#fff9e9;border-radius:8px;padding:9px 13px;font-size:15px;margin:6px 0 14px;color:#78633a}#log{height:360px}#log details{font-size:11px;color:#62775c;margin-top:6px}#log summary{cursor:pointer}#log details p{margin:7px 0}.game[data-temperature="-1"] .arena{background:linear-gradient(125deg,#eff7fa,#e0edf2,#f8faf6)}.game[data-temperature="1"] .arena,.game[data-temperature="2"] .arena{background:radial-gradient(ellipse at bottom,#f3d9a555,transparent 70%),#faf8ef}.portrait{height:250px}.fighter>p{margin-bottom:0}.arena{padding-bottom:15px}.heading{margin-bottom:20px}.heading h1{font-size:38px}.rules a{text-decoration:underline}@media(max-width:900px){.actions{grid-template-columns:repeat(2,minmax(0,1fr))}.discovery{grid-template-columns:1fr;gap:0}.environment{align-items:flex-start;flex-wrap:wrap}.portrait{height:210px}}@media(max-width:540px){.portrait{height:165px}.actions{grid-template-columns:1fr 1fr;gap:8px}.actions .skill-card button{padding:12px 9px;min-height:136px;gap:5px}.actions .skill-card small{display:block;margin-left:0;font-size:10px}.actions .action-icon{display:none}.actions .skill-card b{font-size:13px}.command-head{padding:15px 14px 0;gap:10px}.command-head>span{max-width:115px;font-size:10px}.environment{padding:12px 14px}.environment p{width:100%;font-size:11px}.campaign-track{padding:10px 14px;font-size:10px}.discovery{padding:18px}.conditions{font-size:9px;line-height:1.8}.arena{gap:6px 15px}.heading .quiet{min-width:84px}.game-footer{padding:16px}.skill-card details{font-size:10px;padding:8px}.skill-card .skill-state{padding:0 8px}}
.compact-result{margin:8px 26px 0;padding:9px 13px;border-radius:8px;background:#edf2e8;font-size:12px;color:#365940}.actions .skill-card button:disabled{opacity:.68}.command-head>span{max-width:50%;text-align:right}@media(max-width:540px){.compact-result{margin:8px 14px 0;font-size:11px}.command-head>span{font-size:10px}}
