@charset "UTF-8";
:root{--ink:#26362f;--muted:#72776b;--paper:#f1eee4;--panel:#faf8f0;--line:#d8d4c6;--green:#203e34;--green-dark:#152b26;--gold:#a9854f;--gold-light:#d0b68b;--red:#9b4d40;--blue:#587f87;--shadow:0 16px 50px #15251e12;--serif:"Noto Serif SC","Source Han Serif SC","Songti SC","SimSun",serif;--sans:"Microsoft YaHei","PingFang SC",system-ui,sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:14px;line-height:1.7}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.43}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #c59a55;outline-offset:4px}button{border:0}a{color:var(--green)}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:600}button svg{width:17px;height:17px;vertical-align:-3px;flex-shrink:0}svg{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.boot{height:100vh;display:grid;place-content:center;text-align:center;gap:18px}.sigil{font:42px Georgia,serif;color:var(--gold)}.topbar{height:76px;padding:0 5%;display:flex;align-items:center;gap:30px;border-bottom:1px solid var(--line);background:#f6f3eb}.brand{display:flex;gap:12px;align-items:center;color:var(--ink);text-decoration:none;background:none;padding:0;text-align:left}.brand .emblem{width:43px;height:43px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;font:30px Georgia;color:var(--gold);position:relative}.brand .emblem:after{content:"";position:absolute;inset:4px;border:1px solid #aa89534a;border-radius:50%}.brand strong{display:block;font-family:var(--serif);font-size:19px;letter-spacing:3px;line-height:1.3}.brand small{font-size:10px;letter-spacing:4px;color:var(--muted)}.topnav{display:flex;gap:28px;margin-left:auto;height:100%;align-items:center}.nav-btn{height:100%;background:none;color:var(--muted);padding:0 2px;font-size:13px;border-bottom:2px solid transparent}.nav-btn.active{color:var(--green);border-bottom-color:var(--green)}.local-status{font-size:11px;letter-spacing:1px;border-left:1px solid var(--line);padding-left:22px;color:var(--muted);white-space:nowrap}.local-status:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:#67876c;margin-right:8px}.lobby{max-width:1460px;margin:auto;padding:34px 5% 26px}.eyebrow{font-size:11px;letter-spacing:3px;color:var(--gold);font-weight:600;display:flex;align-items:center;gap:10px}.eyebrow:before{content:"";display:inline-block;width:24px;height:1px;background:currentColor}.hero{position:relative;background:var(--green-dark);color:#f6f2e6;min-height:362px;overflow:hidden;display:flex;border:1px solid #30463d}.hero:after{content:"";pointer-events:none;position:absolute;inset:11px;border:1px solid #d2b47a2b}.hero-art{position:absolute;right:0;top:0;height:100%;width:66%;background:url('assets/web/argo.webp') center top/100% auto no-repeat;opacity:.77}.hero-art:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--green-dark) 0%,#152b2699 20%,#152b2600 65%),linear-gradient(0deg,#152b2677,transparent 50%)}.hero-copy{position:relative;z-index:1;padding:44px 48px;width:58%;max-width:660px}.hero .eyebrow{color:#cfb88b}.hero h1{font-size:43px;letter-spacing:4px;line-height:1.4;margin:19px 0 17px}.hero h1 span{color:#d3bb8e}.hero p{font-size:13px;line-height:2;color:#c3ccc2;max-width:340px}.hero-note{position:absolute;bottom:28px;right:35px;z-index:1;font-family:var(--serif);font-size:12px;letter-spacing:4px;color:#e8dfca80}.btn{border:1px solid transparent;padding:10px 19px;display:inline-flex;align-items:center;justify-content:center;gap:9px;line-height:1.6;transition:background .15s,transform .15s;font-weight:500;min-height:42px}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn-primary{background:var(--green);color:#f9f4e7;border-color:var(--green)}.btn-primary:hover:not(:disabled){background:#2e5143}.btn-gold{background:#c3a16b;color:#182e26;border-color:#d2b684}.btn-gold:hover{background:#d6b883}.btn-outline{background:transparent;border-color:#cbc7b9;color:var(--ink)}.btn-outline:hover{background:#dedbcd44}.btn-quiet{background:none;color:var(--muted);border-color:transparent}.btn-danger{color:#984c40;border-color:#bc8d80;background:#fff8f2}.hero .btn{margin-top:25px;min-width:172px}.hero .btn span{margin-left:22px}.section-head{display:flex;align-items:flex-end;justify-content:space-between;margin:30px 0 17px;gap:20px}.section-head h2{font-size:23px;letter-spacing:2px}.section-head p{font-size:12px;color:var(--muted)}.chapter-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.chapter{background:var(--panel);border:1px solid var(--line);position:relative;display:grid;grid-template-columns:112px 1fr;gap:23px;padding:23px;min-height:192px;overflow:hidden;box-shadow:0 5px 12px #2d311804}.chapter-number{position:absolute;right:15px;top:-7px;font:88px Georgia;color:#ded9c54a;line-height:1}.chapter-art{height:143px;width:112px;background:linear-gradient(0deg,#ded8c21a,#fff0),url('assets/web/boss.webp') left top/235% auto no-repeat;border:1px solid #d7cfb5;mix-blend-mode:multiply}.chapter.early .chapter-art{background-image:url('assets/web/titan-56.webp');background-size:252%;background-position:3% 0}.chapter-content{position:relative;z-index:1}.chapter-tags{display:flex;gap:10px;font-size:10px;letter-spacing:1px;color:#7f896e;margin-bottom:7px}.chapter-tags b{background:#e9ecdf;padding:1px 7px;font-weight:400;color:#496448}.chapter h3{font-size:21px;letter-spacing:2px}.chapter p{color:var(--muted);font-size:12px;margin:8px 0 13px;max-width:380px}.chapter .text-link{padding:0;color:var(--green);background:none;display:inline-flex;gap:20px;align-items:center;border-bottom:1px solid #7d917968;font-size:12px}.chapter .text-link svg{width:14px}.save-strip{margin-top:20px;border:1px solid var(--line);background:#eae9df;padding:14px 21px;display:flex;align-items:center;gap:13px;font-size:12px}.save-strip .grow{flex:1}.save-strip strong{font-weight:500}.save-strip span,.save-strip small{color:var(--muted)}.save-strip .btn{padding:5px 12px;min-height:32px;font-size:12px}.footer{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:24px;color:#8a8a7b;font-size:10px;letter-spacing:.5px}.footer button{background:none;color:inherit;text-decoration:underline;text-underline-offset:3px}.muted{color:var(--muted)}.gold{color:var(--gold)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* 战斗桌 */
.battle-topbar{height:60px;padding:0 24px;gap:18px}.battle-topbar .brand strong{font-size:16px;letter-spacing:2px}.battle-topbar .brand small{display:none}.battle-topbar .emblem{width:31px;height:31px;font-size:22px}.battle-title{padding-left:22px;border-left:1px solid var(--line);font-family:var(--serif);font-size:14px;letter-spacing:1px}.battle-title small{font-family:var(--sans);font-size:10px;letter-spacing:.5px;color:var(--muted);margin-left:12px}.toolbar{display:flex;gap:5px;margin-left:auto;align-items:center}.icon-btn{min-width:35px;height:34px;display:flex;justify-content:center;align-items:center;gap:6px;background:transparent;border:1px solid transparent;color:#687366;font-size:11px;padding:4px 8px}.icon-btn:hover{border-color:var(--line);background:#eeece2}.icon-btn svg{width:16px}.save-indicator{font-size:10px;color:#75816c;margin-right:8px}.battle-layout{display:grid;grid-template-columns:216px minmax(400px,1fr) 282px;gap:20px;max-width:1840px;margin:0 auto;padding:22px 24px 18px;align-items:start}.side-label{font-size:10px;letter-spacing:2px;color:var(--muted);display:flex;justify-content:space-between;margin-bottom:12px;align-items:center}.side-label b{font-weight:400;color:var(--gold)}.titan-list{display:flex;flex-direction:column;gap:9px}.titan-card{width:100%;padding:12px 11px;background:#f8f5eb;border:1px solid var(--line);text-align:left;position:relative;transition:border-color .15s,background .15s}.titan-card:hover:not(:disabled){border-color:var(--gold)}.titan-card.selected{border-color:var(--green);background:#e9eddf;box-shadow:inset 3px 0 var(--green)}.titan-card.done{opacity:.65}.titan-card.dead{filter:grayscale(1);opacity:.48}.titan-card:disabled{opacity:1;cursor:default}.titan-card .titan-head{display:flex;gap:10px;align-items:center}.avatar{width:41px;height:48px;flex-shrink:0;border:1px solid #b8b39f;background-size:260% auto;background-position:6% 12%;border-radius:2px;position:relative}.titan-name{font-family:var(--serif);font-size:14px;letter-spacing:1px}.titan-class{font-size:10px;color:var(--muted);letter-spacing:1px;display:flex;gap:8px}.priority{color:var(--red);font-size:10px;white-space:nowrap}.titan-stats{display:flex;justify-content:space-between;margin-top:11px;padding-top:7px;border-top:1px solid #d7d4c694;font-size:10px;color:var(--muted)}.titan-stats b{font:21px Georgia;color:var(--ink);margin-right:3px}.titan-stats .danger b{color:var(--red)}.titan-stats .rage b{color:#9c742f}.titan-stats .fate b{color:var(--blue)}.action-marks{display:flex;gap:4px;margin-top:7px;font-size:9px;letter-spacing:.5px;color:#818675}.action-marks span{padding:0 6px;border:1px solid #d9d8cd}.action-marks .spent{background:#dbdfd1;border-color:transparent;color:#939785}.condition-chips{margin-top:7px;font-size:10px;color:#9a5744;display:flex;gap:6px;flex-wrap:wrap}.pool{background:var(--green-dark);color:#d8dece;margin-top:18px;padding:15px 16px;position:relative}.pool h3{font-family:var(--sans);font-size:11px;font-weight:400;letter-spacing:2px}.pool-numbers{display:flex;margin:11px 0 5px;gap:25px}.pool-stat{font-size:10px;color:#bdc8b6}.pool-stat b{font:30px Georgia;color:#d3bb8e;margin-right:7px}.pool p{font-size:10px;color:#8f9f8d;line-height:1.7}.roundbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;height:22px}.roundbar h2{font-family:var(--sans);font-weight:500;font-size:13px;letter-spacing:1px}.phase-step{font-size:10px;color:#9b9b8d;display:flex;align-items:center;gap:9px}.phase-step .now{color:var(--green);font-weight:600}.phase-step .dot{width:4px;height:4px;background:#c8c4b4;border-radius:50%}.battlefield-wrap{position:relative;background:#282b20;padding:26px 20px 20px;border:1px solid #5d6451;box-shadow:0 8px 24px #282b241a}.battlefield-wrap:before{content:"";pointer-events:none;position:absolute;inset:6px;border:1px solid #9a855b4a}.battlefield{position:relative;display:grid;grid-template-columns:repeat(20,1fr);grid-template-rows:repeat(14,1fr);aspect-ratio:20/14;background:#5d604b;isolation:isolate;touch-action:manipulation}.battlefield:before{content:"";position:absolute;inset:0;background:url('assets/web/board.webp') center center/113.7% 122.5% no-repeat;opacity:.64;z-index:-1}.cell{background:transparent;border-right:1px solid #e7dcb51e;border-bottom:1px solid #e7dcb51e;position:relative;padding:0;min-width:0;min-height:0;border-radius:0;color:#f4e5b8;z-index:1}.cell:disabled{opacity:1;cursor:default}.cell:hover{background:#ede3b523}.cell.reachable{background:#a8bd7935;box-shadow:inset 0 0 0 1px #ccd49a44;cursor:pointer}.cell.reachable:after{content:"";position:absolute;width:4px;height:4px;border-radius:50%;background:#d7dfa3a0;left:calc(50% - 2px);top:calc(50% - 2px)}.cell.reachable:hover,.cell.route{background:#c2dcae70;box-shadow:inset 0 0 0 1px #eef2bd}.cell.pillar{background:url('assets/web/column.webp') center/cover no-repeat;box-shadow:inset 0 0 0 1px #84765f;filter:brightness(.9)}.cell.pillar:after{display:none}.board-token{position:absolute;width:calc(100% / 20);height:calc(100% / 14);z-index:3;padding:2px;transition:left .22s ease,top .22s ease;background:transparent;cursor:pointer;min-height:0}.board-token .token-face{width:100%;height:100%;display:grid;place-items:center;background:#24332c;border:2px solid var(--token-color);border-radius:50%;box-shadow:0 2px 5px #0009;font:600 clamp(11px,1.05vw,17px) var(--serif);color:#f8f2de;position:relative}.board-token.selected{z-index:5}.board-token.selected .token-face{outline:2px solid #fff1ba;outline-offset:3px;box-shadow:0 0 15px #fff2bd70}.board-token.done{filter:saturate(.4);opacity:.6}.board-token.down .token-face{transform:rotate(-25deg);border-style:dashed}.board-token.priority-token .token-face:after{content:"◆";position:absolute;font-size:8px;color:#f4c887;top:-10px;text-shadow:0 1px 3px #000}.boss-token{position:absolute;width:calc(100% / 10);height:calc(100% / 7);z-index:4;transition:left .3s,top .3s;padding:3px;background:none;cursor:pointer}.boss-token .boss-face{height:100%;width:100%;border:2px solid #c9a270;background:#302823 url('assets/web/boss.webp') 2% 15%/220% auto;border-radius:11px;box-shadow:0 4px 15px #0009;position:relative}.boss-token .boss-face:after{content:"";position:absolute;width:0;height:0;border:6px solid transparent}.boss-token.S .boss-face:after{border-top-color:#e0bb79;bottom:-13px;left:calc(50% - 6px)}.boss-token.N .boss-face:after{border-bottom-color:#e0bb79;top:-13px;left:calc(50% - 6px)}.boss-token.E .boss-face:after{border-left-color:#e0bb79;right:-13px;top:calc(50% - 6px)}.boss-token.W .boss-face:after{border-right-color:#e0bb79;left:-13px;top:calc(50% - 6px)}.axis-x{position:absolute;left:20px;right:20px;top:4px;display:grid;grid-template-columns:repeat(20,1fr);font:9px Georgia;color:#d0bd87;text-align:center}.axis-y{position:absolute;left:3px;top:26px;bottom:20px;display:grid;grid-template-rows:repeat(14,1fr);font:9px Georgia;color:#d0bd87;align-items:center;width:13px;text-align:center}.board-caption{display:flex;justify-content:space-between;gap:10px;padding:10px 1px 0;font-size:10px;color:var(--muted)}.legend{display:flex;gap:15px;align-items:center}.legend span{display:inline-flex;align-items:center;gap:5px}.legend i{width:6px;height:6px;background:#81966a;border-radius:50%;display:inline-block}.legend .stone{background:#9c917b;border-radius:0}.action-panel{background:var(--panel);border:1px solid var(--line);padding:17px 18px;margin-top:16px}.action-heading{display:flex;justify-content:space-between;align-items:center;gap:10px}.action-heading h3{font-size:17px;letter-spacing:1px}.action-heading small{font-size:10px;color:var(--muted)}.action-copy{font-size:12px;color:var(--muted);margin:7px 0 15px;line-height:1.8}.actions{display:flex;gap:8px;flex-wrap:wrap}.actions .btn{font-size:12px;padding:8px 13px;min-height:37px}.actions .btn.active{background:#e1e8d4;border-color:#7b9162}.action-detail{font-size:10px;color:#858a78;margin-top:10px;padding-top:9px;border-top:1px solid #dedbce}.weapon-select{border:1px solid var(--line);background:#f6f3e9;color:var(--ink);font-size:11px;padding:5px 8px;max-width:155px}.dice-area{margin:12px 0}.dice-row{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:7px}.die{min-width:39px;height:43px;position:relative;display:flex;align-items:center;justify-content:center;font:24px Georgia;background:#26392f;color:#f7edce;border:1px solid #69735e;box-shadow:inset 0 0 0 3px #395040;border-radius:6px;padding:5px;transition:transform .15s}.die.critical{background:#f5f1e6;color:#5b4f33;box-shadow:inset 0 0 0 3px #dfd6bd;border-color:#ae9a70}.die.power{background:#954f40;box-shadow:inset 0 0 0 3px #ae6758;border-color:#b97b62;font-size:17px;gap:3px}.die.rerolled:after{content:"↻";position:absolute;right:1px;top:-8px;font-size:12px;color:#b99a5f;background:var(--paper);border-radius:50%;height:12px;line-height:12px}.die.dice-selected{outline:2px solid #c19a58;outline-offset:3px;transform:translateY(-3px)}.dice-key{color:var(--muted);font-size:10px}.roll-total{display:inline-block;font-size:11px;color:#66745b;padding:2px 8px;background:#e9eddc}.enemy-card{background:var(--green-dark);color:#e9e6d8;overflow:hidden;border:1px solid #374b3b}.enemy-top{display:flex;justify-content:space-between;padding:15px 16px 0;font-size:10px;letter-spacing:2px;color:#adb9a0}.enemy-card h2{padding:3px 16px 10px;font-size:25px;letter-spacing:3px}.boss-portrait{height:142px;position:relative;overflow:hidden;background:#c5bfad}.boss-portrait:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#152b2680,transparent 40%,#152b2640),linear-gradient(0deg,#152b26,transparent 50%)}.boss-portrait img{position:absolute;left:0;top:-40px;width:220%;max-width:none;filter:sepia(.15)}.boss-facts{display:flex;justify-content:space-around;padding:6px 6px 13px;font-size:10px;color:#b1bca7}.boss-facts b{font:22px Georgia;color:#dfc593;display:block;text-align:center;line-height:1.4}.wounds{padding:9px 16px 14px;border-top:1px solid #4d5e434d}.wounds-head{display:flex;justify-content:space-between;font-size:10px;color:#bfc5b0;margin-bottom:7px}.wound-track{display:flex;gap:4px}.wound-track span{height:5px;background:#4d5846;flex:1}.wound-track .filled{background:#b7935c}.trait{padding:10px 15px;background:#1d342b;border-top:1px solid #4b5c414a;font-size:10px;color:#a8b39a}.trait strong{color:#c0c6ae;font-weight:500;margin-right:7px}.card-preview{margin-top:15px;padding:15px;background:var(--panel);border:1px solid var(--line)}.card-preview .card-meta{display:flex;justify-content:space-between;align-items:center;font-size:9px;color:var(--gold);letter-spacing:1px}.card-preview h3{font-size:18px;margin:5px 0 9px;letter-spacing:1px}.card-preview p{font-size:11px;color:var(--muted);line-height:1.8}.card-icon{height:84px;overflow:hidden;position:relative;margin:6px 0 11px;background:#e7e2d2;mix-blend-mode:multiply}.card-icon .atlas-cell{position:absolute;width:100%;height:140%;top:-15%;left:0;background-repeat:no-repeat;background-size:300% 200%;filter:sepia(.12)}.card-preview .card-rule{padding:7px 0;border-top:1px solid #e4dfd2;font-size:10px}.card-rule b{font-weight:500;color:#566349}.card-tabbar{display:flex;gap:12px;border-bottom:1px solid var(--line);padding-bottom:7px;margin-bottom:9px}.card-tabbar button{font-size:10px;color:var(--muted);background:none;padding:0}.card-tabbar button.active{color:var(--green);font-weight:600}.empty-card{color:var(--muted);font-size:11px;text-align:center;padding:20px 4px}.battle-log{margin-top:17px;border-top:1px solid var(--line);padding-top:12px}.log-title{display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:1px;color:var(--muted);margin-bottom:8px}.log-title button{background:none;color:var(--gold);font-size:10px}.log-items{max-height:176px;overflow-y:auto;scrollbar-width:thin;padding-right:5px}.log-item{font-size:10px;line-height:1.9;color:#737b6d;padding:5px 0 5px 12px;border-left:1px solid #d2d3c4;position:relative}.log-item:before{content:"";position:absolute;left:-3px;top:13px;width:5px;height:5px;background:#afbaa1;border-radius:50%}.log-item:first-child{color:#3d5544}.log-item.danger:before{background:#b67560}.log-item.success:before{background:#a28b4d}.log-item time{font:9px Georgia;color:#a3a58f;margin-right:5px}.battle-footnote{display:flex;justify-content:space-between;color:#9b9d8c;font-size:9px;padding:0 24px 14px}.choice-list{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}.choice-list .btn{font-size:11px;text-align:left;justify-content:flex-start;min-height:36px}.pending-badge{font-size:9px;letter-spacing:1px;padding:2px 7px;background:#eee7d5;color:#8b764d}.outcome{background:var(--green-dark);color:#eee8d5;text-align:center;padding:28px 24px;margin-top:16px;border:1px solid #b99b655c}.outcome h2{font-size:30px;letter-spacing:5px;margin:6px 0 10px}.outcome p{color:#bbc4ad;font-size:12px;margin-bottom:17px}.outcome.defeat{background:#44322c}.last-roll{border-top:1px solid var(--line);padding-top:10px;margin-top:12px}.last-roll .die{height:29px;min-width:27px;font-size:15px;border-radius:4px}.last-roll p{font-size:10px;color:var(--muted)}
/* 对话框、指南与移动端 */
dialog{color:var(--ink);background:var(--panel);border:1px solid #a7a18b;box-shadow:0 24px 90px #0b1c1570;max-width:650px;width:calc(100% - 38px);padding:0;max-height:86vh}dialog::backdrop{background:#15251fc2;backdrop-filter:blur(3px)}.modal-head{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:25px 29px 16px;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--panel);z-index:1}.modal-head h2{font-size:24px;letter-spacing:2px}.close-modal{background:none;color:var(--muted);padding:3px;line-height:1;font-size:25px}.modal-content{padding:23px 29px 27px}.modal-content p{color:#727a6b;font-size:13px;line-height:1.9;margin-bottom:13px}.modal-content strong{color:var(--ink);font-weight:500}.modal-actions{display:flex;gap:10px;justify-content:flex-end;border-top:1px solid var(--line);padding-top:18px;margin-top:18px}.guide-item{padding:14px 0;border-bottom:1px solid var(--line)}.guide-item:first-child{padding-top:0}.guide-item h3{font-size:16px;letter-spacing:1px;margin-bottom:6px}.guide-item p{margin:0;font-size:12px}.source-links{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.source-links a{font-size:11px;border:1px solid var(--line);padding:5px 9px;text-decoration:none}.brief-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}.brief-stat{background:#e9e9dc;padding:12px 15px;font-size:11px;color:#6e7867}.brief-stat strong{display:block;font:23px Georgia;color:#36513e}.form-field{margin:16px 0}.form-field label{display:block;font-size:12px;color:#65725d;margin-bottom:6px}.form-field input{border:1px solid var(--line);padding:8px 11px;background:#f6f3e7;color:var(--ink);width:100%}.form-field small{display:block;font-size:10px;color:#929581;margin-top:5px}.log-full{max-height:50vh;overflow:auto}.log-full .log-item{font-size:12px;padding:8px 0 8px 15px}.notes{border-left:2px solid var(--gold);padding:7px 12px;background:#ece8d9;font-size:11px;color:#827654}.storage-error{border:1px solid #ba8e7b;background:#f6eade;color:#87533a;padding:10px;font-size:12px}.setup-story{font-family:var(--serif);font-size:17px!important;color:#506049!important;border-left:1px solid #b9a582;padding-left:16px}.card-catalog{display:grid;grid-template-columns:1fr 1fr;gap:12px}.catalog-item{padding:12px;border:1px solid var(--line)}.catalog-item h3{font-size:15px}.catalog-item p{font-size:11px;margin:5px 0 0}.catalog-item small{font-size:10px;color:var(--gold)}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,15px);opacity:0;pointer-events:none;padding:10px 20px;background:#19362eee;color:#f3edd9;font-size:12px;box-shadow:var(--shadow);transition:opacity .18s,transform .18s;max-width:90vw;z-index:50}#toast.show{opacity:1;transform:translate(-50%,0)}.loading-engine{color:var(--red);padding:10px;font-size:12px}.battle-tools-mobile{display:none}
@media(min-width:1600px){.battle-layout{grid-template-columns:242px minmax(500px,1fr) 310px;gap:25px}.titan-card{padding:16px}.titan-name{font-size:16px}.boss-portrait{height:168px}.card-icon{height:106px}.action-panel{padding:21px}.battlefield-wrap{padding:29px 23px 23px}.axis-x{left:23px;right:23px}.axis-y{top:29px;bottom:23px}}
@media(max-width:1200px){.battle-layout{grid-template-columns:180px minmax(360px,1fr) 235px;gap:13px;padding:17px}.battle-topbar{padding:0 17px}.titan-card{padding:10px}.titan-name{font-size:12px}.avatar{width:34px;height:42px}.boss-portrait{height:117px}.enemy-card h2{font-size:21px}.card-preview{padding:12px}.battle-title small{display:none}.toolbar .button-label{display:none}.action-panel{padding:13px}.titan-stats b{font-size:19px}.titan-stats{font-size:9px}.pool{padding:13px}.pool-numbers{gap:15px}.pool-stat b{font-size:26px}.hero h1{font-size:38px}.hero-copy{padding:38px}.chapter{grid-template-columns:88px 1fr;padding:18px;gap:16px}.chapter-art{width:88px;height:143px;background-size:280%}.chapter h3{font-size:19px}.chapter p{font-size:11px}.lobby{padding-top:25px}.hero{min-height:340px}.hero-art{width:75%}.battlefield-wrap{padding:23px 16px 17px}.axis-x{left:16px;right:16px}.axis-y{top:23px;bottom:17px;left:0}.board-caption{font-size:9px}.legend{gap:8px}.trait{font-size:9px}}
@media(max-width:980px){.battle-layout{grid-template-columns:170px minmax(0,1fr)}.enemy-column{display:grid;grid-template-columns:1fr 1fr;gap:14px;grid-column:1/-1}.enemy-card{display:none}.card-preview{margin-top:0}.battle-log{margin-top:0;padding:14px;border:1px solid var(--line)}.card-icon{display:none}.log-items{max-height:210px}.battle-field-column{min-width:0}.topnav{gap:20px}.local-status{display:none}.hero h1{font-size:34px}.hero-copy{width:70%;padding:32px}.hero p{max-width:300px}.hero-art{width:90%}.chapter-grid{gap:14px}.chapter{grid-template-columns:1fr;gap:10px}.chapter-art{position:absolute;right:-16px;bottom:-10px;width:110px;height:180px;opacity:.17}.chapter p{max-width:260px}.chapter-number{right:20px}.chapter-content{max-width:88%}.battle-title{font-size:12px}.save-indicator{display:none}.board-token .token-face{font-size:12px}}
@media(max-width:660px){.topbar{height:65px;padding:0 20px;gap:10px}.brand strong{font-size:16px;letter-spacing:2px}.brand small{letter-spacing:3px;font-size:9px}.brand .emblem{width:35px;height:35px;font-size:25px}.topnav{gap:15px}.nav-btn{font-size:11px}.topnav .nav-optional{display:none}.lobby{padding:20px 18px}.hero{min-height:360px}.hero-art{width:100%;background-size:auto 190%;background-position:55% top;opacity:.55}.hero-art:after{background:linear-gradient(90deg,#152b26d9,#152b2644),linear-gradient(0deg,#152b26,transparent)}.hero-copy{padding:31px 27px;width:100%}.hero h1{font-size:34px;letter-spacing:2px}.hero p{font-size:12px;max-width:275px}.hero-note{display:none}.hero .btn{margin-top:23px}.eyebrow{font-size:10px;letter-spacing:2px}.section-head{margin-top:25px;align-items:center}.section-head h2{font-size:21px}.section-head p{font-size:10px}.chapter-grid{grid-template-columns:1fr;gap:12px}.chapter{min-height:155px;padding:20px;grid-template-columns:74px 1fr;gap:18px}.chapter-art{position:static;width:74px;height:120px;opacity:1}.chapter-content{max-width:100%}.chapter h3{font-size:19px}.chapter p{font-size:11px;max-width:100%}.chapter-tags{font-size:9px}.chapter-number{font-size:80px}.save-strip{padding:12px;gap:9px;flex-wrap:wrap}.save-strip>svg{display:none}.save-strip .grow{min-width:180px}.footer{font-size:9px;align-items:flex-start;line-height:1.8}.footer span{max-width:65%}.battle-topbar{height:56px;padding:0 12px;gap:10px}.battle-topbar .brand strong{font-size:14px}.battle-topbar .emblem{width:27px;height:27px;font-size:20px}.battle-title{display:none}.toolbar{gap:1px}.icon-btn{width:31px;min-width:31px;padding:5px}.battle-layout{display:flex;flex-direction:column;padding:14px 12px;gap:14px}.titans-column{width:100%;order:2}.battle-field-column{width:100%;order:1}.enemy-column{width:100%;order:3;display:block}.titan-list{display:grid;grid-template-columns:1fr 1fr;gap:8px}.side-label{margin-bottom:9px}.titan-card{padding:10px}.avatar{width:32px;height:36px}.titan-name{font-size:12px}.titan-stats{margin-top:8px;padding-top:5px}.titan-stats b{font-size:20px}.titan-class{font-size:9px}.action-marks{font-size:8px;margin-top:5px}.pool{margin-top:12px;padding:12px;display:flex;align-items:center;gap:18px}.pool h3{font-size:10px;max-width:60px}.pool-numbers{margin:0;gap:20px;flex-shrink:0}.pool p{font-size:9px;line-height:1.6}.pool-stat b{font-size:25px}.roundbar{margin-bottom:10px}.phase-step{font-size:9px;gap:6px}.battlefield-wrap{padding:20px 13px 12px}.axis-x{left:13px;right:13px;top:4px;font-size:7px}.axis-y{top:20px;bottom:12px;width:11px;font-size:7px}.board-token{padding:1px}.board-token .token-face{font:10px var(--serif);border-width:1px}.board-token.selected .token-face{outline-width:1px;outline-offset:2px}.boss-token{padding:1px}.boss-token .boss-face{border-width:1px;border-radius:5px}.boss-token .boss-face:after{border-width:4px}.boss-token.S .boss-face:after{bottom:-9px;left:calc(50% - 4px)}.boss-token.N .boss-face:after{top:-9px;left:calc(50% - 4px)}.boss-token.E .boss-face:after{right:-9px;top:calc(50% - 4px)}.boss-token.W .boss-face:after{left:-9px;top:calc(50% - 4px)}.cell.reachable:after{width:3px;height:3px}.board-caption{font-size:8px;padding-top:8px}.board-caption>span:last-child{display:none}.board-token.priority-token .token-face:after{font-size:6px;top:-8px}.action-panel{margin-top:12px;padding:13px}.action-heading h3{font-size:16px}.action-copy{font-size:11px;line-height:1.8;margin:6px 0 11px}.actions .btn{font-size:11px;padding:8px 11px;min-height:36px;flex-grow:1}.actions .btn:last-child{flex-grow:0}.action-detail{font-size:9px}.choice-list .btn{font-size:11px;flex:1;min-width:110px}.card-preview{margin-bottom:12px}.battle-log{padding:12px}.log-items{max-height:160px}.battle-footnote{padding:0 12px 14px;gap:15px;line-height:1.6}.battle-footnote span:last-child{max-width:50%;text-align:right}.modal-head{padding:20px}.modal-head h2{font-size:21px}.modal-content{padding:20px}.modal-content p{font-size:12px}.modal-actions .btn{font-size:12px}.card-catalog{grid-template-columns:1fr}.die{min-width:35px;height:39px;font-size:22px}.dice-row{gap:6px}.brief-grid{gap:8px}.notes{font-size:10px}.outcome h2{font-size:25px}.outcome{padding:22px 17px}.outcome .btn{font-size:12px}.battle-tools-mobile{display:block}}
.fleet-status{display:flex;gap:14px;padding:8px 15px;background:#142820;color:#a6b19a;font-size:10px;border-top:1px solid #53604433}.fleet-status span:first-child{margin-right:auto}.fleet-status b{font:14px Georgia;color:#d3bb8e}.dice-summary{margin:7px 0;font-size:12px;color:#526447;line-height:1.8}.dice-summary strong{color:var(--green);font-weight:600}.die.success{border-color:#8d9f67}.die.fail{opacity:.7}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
.save-strip>svg{width:22px;height:22px;flex:0 0 22px}.save-strip .grow{min-width:0}.save-strip>.btn{flex-shrink:0}

/* 第六日：赫尔墨斯追踪者与神浆 */
.cell.ambrosia-pool{background:radial-gradient(ellipse at center,#92c6a9 0%,#496f5d 60%,#304c40 100%);box-shadow:inset 0 0 0 1px #d0e2bb44}
.ambrosia-pool-mark{display:block;font-size:8px;color:#f2f2cc;white-space:nowrap;text-shadow:0 1px 3px #15271e;pointer-events:none}
.legend i.ambrosia-legend{background:#75a98d;border:1px solid #496f5d}.ambrosia-count{background:#d2e5c7!important;color:#32503c!important}
.ambrosia-slots{margin-top:12px;padding:10px 12px;background:#e4ebd7;border-left:2px solid #688d66;font-size:12px;overflow-wrap:anywhere}
.pursuer-panel{display:block!important}.pursuer-panel .enemy-name-row h2{font-size:21px}.pursuer-thresholds{margin:12px 0;display:grid;gap:6px}.pursuer-thresholds>div{display:flex;justify-content:space-between;gap:12px;padding:5px 0;border-bottom:1px solid var(--line)}.pursuer-thresholds dt{color:var(--muted);font-size:11px}.pursuer-thresholds dd{margin:0;font-weight:600;font-size:12px}.pursuer-fixed-cards{display:flex;flex-wrap:wrap;gap:4px}.pursuer-fixed-cards .btn{font-size:10px;padding:5px 8px}
.pursuer-flare{margin:16px 0;padding:14px;border:1px solid #a6b18f;background:#edf0df}.pursuer-flare h3{margin:7px 0 12px}.pursuer-flare .translation{font-size:12px}.pursuer-flare .translation p{margin-top:8px}
.pursuer-boss .boss-face{background:radial-gradient(ellipse at 50% 30%,#c7bb79,#5a654a 55%,#273d30);position:relative}.pursuer-boss .boss-face:before{content:'追';position:absolute;inset:0;display:grid;place-items:center;font-family:var(--serif);font-size:clamp(14px,3vw,28px);color:#f3edcc;text-shadow:0 1px 4px #162a20}
.daily-adversary .adversary-counters{display:flex;flex-wrap:wrap;gap:8px 16px;margin:8px 0;font-size:12px}.daily-adversary .adversary-counters b{display:inline-block;margin-left:5px;color:var(--green)}.daily-adversary .pursuit-scheduled{margin:9px 0;color:var(--gold)}.daily-adversary>.btn{margin-top:12px;font-size:11px;max-width:100%;white-space:normal}
@media(max-width:980px){.enemy-column .pursuer-panel{grid-column:1/-1}.pursuer-flare{margin-top:0}.pursuer-panel .boss-original{max-width:500px;margin-inline:auto}}
@media(max-width:660px){.pursuer-flare{margin-top:14px}.pursuer-thresholds{grid-template-columns:1fr 1fr 1fr;gap:12px}.pursuer-thresholds>div{display:block}.ambrosia-pool-mark{font-size:6px}.pursuer-panel .enemy-name-row h2{font-size:20px}}

/* Prepared Argo support, available from the sixteenth-day rules. */
.argo-battle-panel{padding:20px;border:1px solid var(--line,#d5cbb4);background:var(--paper,#eee6d3);border-radius:6px;margin:16px 0}.argo-battle-panel article{border-top:1px solid var(--line,#d5cbb4);padding:12px 0}.argo-battle-panel article>div:first-child{display:flex;justify-content:space-between;gap:12px}.argo-target-label{display:flex;align-items:center;gap:12px;margin:12px 0}.argo-target-label select{padding:8px;max-width:220px}.argo-battle-panel small{color:var(--muted,#716854)}.argo-preparation{margin:18px 0;padding:14px;border:1px solid var(--line,#d5cbb4)}.argo-preparation label{display:flex;align-items:center;gap:8px;padding:7px 0}.argo-preparation small{margin-left:auto}.argo-preparation input{accent-color:#826442}.argo-preparation p{font-size:13px}

.argo-support-art{max-width:240px;margin:0 0 12px}.argo-battle-panel article>.argo-support-art{display:block}.argo-preparation label{flex-wrap:wrap}.acclimation-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:16px;margin:18px 0}.acclimation-gallery h3{font-size:14px;margin:8px 0}.acclimation-gallery p{font-size:12px;line-height:1.7;color:var(--muted)}

/* Chasm fills each fissure cell and has no ordinary Labyrinth walls. */
.cell.fissure-cell{background:repeating-linear-gradient(125deg,#191e20 0 5px,#333632 6px 8px,#0f1518 9px 14px);box-shadow:inset 0 0 0 1px #9d8865,inset 0 0 7px #000;color:#dac597}.cell.fissure-cell:after{content:'裂';position:absolute;inset:0;display:grid;place-items:center;font-size:clamp(7px,.7vw,12px);opacity:.7;pointer-events:none}.board-caption .legend{flex-wrap:wrap}

/* 冒险地形保持原版板块比例；部署与已有迷宫共用可键盘操作的预览。 */
.outcrop-token{position:absolute;width:10%;height:14.285714%;padding:0;border:1px solid #dcc087;border-radius:3px;z-index:2;background:#252d2b;cursor:zoom-in;box-shadow:0 2px 9px #0008;overflow:hidden}
.outcrop-token img{width:100%;height:100%;display:block;object-fit:cover}
.outcrop-token span{position:absolute;bottom:0;left:0;right:0;background:#11231ed9;color:#f5e5bb;font-size:clamp(7px,.7vw,11px);line-height:1.5;white-space:nowrap}
.cell.outcrop-placement{background:#e6bc613b;box-shadow:inset 0 0 0 1px #d2b36c;cursor:crosshair}
.cell.outcrop-placement:focus-visible,.cell.outcrop-placement:hover{background:#e6bc6199;outline:2px solid #fff4cc;outline-offset:-2px}
.outcrop-status{margin:12px 0;padding:14px 18px;border:1px solid #856b3f66;border-radius:8px;background:#142821;color:#eee3c8}
.outcrop-status>div{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.outcrop-status p{margin:8px 0;font-size:13px;line-height:1.7}.outcrop-status span,.outcrop-status small{font-size:12px;color:#ceb886}
.outcrop-choices{max-height:240px;overflow:auto;overscroll-behavior:contain;padding:4px}
.outcrop-preview rect{fill:#e9be5755;stroke:#ffe3a2;stroke-width:.06}
