:root{--ink:#18251f;--deep:#101b17;--pine:#183b32;--jade:#8fc4a9;--gold:#d9b36d;--paper:#eee4ce;--muted:#a8b8ac;--red:#bc765a;font-family:'Noto Serif CJK SC','Source Han Serif SC','Noto Serif SC','Songti SC','STSong','SimSun',serif;color:var(--paper);background:var(--deep)}*{box-sizing:border-box}body{margin:0;min-width:320px;background:radial-gradient(ellipse at 52% 8%,#305344 0,transparent 44%),linear-gradient(155deg,#14261f,#0d1816 70%);min-height:100vh}button,input,select{font:inherit}button{cursor:pointer;color:inherit}.water-shell{max-width:1500px;margin:auto;padding:0 30px 24px}.water-top{height:76px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d6bd7940}.water-top a,.top-actions button,.quiet-btn,.skill-btn{color:#c3d0c4;text-decoration:none;background:transparent;border:1px solid #c3d0c42c;border-radius:9px;padding:9px 13px}.brand{text-align:center;display:grid;letter-spacing:.18em;color:#ead6a4}.brand span{font-size:18px;font-weight:700}.brand small{font:10px Arial,sans-serif;letter-spacing:.2em;color:#91aa97;margin-top:3px}.top-actions{display:flex;gap:8px}.setup-screen{display:grid;grid-template-columns:minmax(260px,.75fr) minmax(520px,1.5fr);gap:36px;padding:36px 0}.setup-hero{position:sticky;top:26px;align-self:start;padding:28px 14px}.eyebrow{font-size:11px;letter-spacing:.22em;color:var(--gold);text-transform:uppercase}.setup-hero h1{font-size:clamp(38px,5vw,64px);line-height:1.35;margin:24px 0;color:#f1e5cc}.setup-hero h1 em{font-style:normal;color:#abc9a9}.lead{max-width:410px;line-height:1.9;color:#b9c7ba}.featured{display:flex;gap:16px;align-items:center;margin:38px 0 22px;padding:17px;border:1px solid #bca26b66;border-radius:14px;background:#17241fbb}.hero-mark{font-size:34px;color:var(--gold)}.featured h2{margin:5px 0}.featured p,.featured small{margin:0;color:#aebdaf}.stamps{display:flex;gap:8px;flex-wrap:wrap}.stamps span{padding:7px 10px;border-radius:99px;background:#d7c18b16;color:#cfbd95;font-size:12px}.selection-panel{padding:24px;border:1px solid #d5c49a32;border-radius:18px;background:linear-gradient(145deg,#24372ce8,#15231eea);box-shadow:0 28px 90px #0005}.setting-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:12px}.setting-grid label{font-size:12px;color:#bbc9bc;display:grid;gap:7px}.setting-grid select,.filters input,.filters select{min-width:0;background:#101c18;color:#e8e2d2;border:1px solid #b9c69b44;border-radius:9px;padding:10px}.picker-heading{display:flex;justify-content:space-between;align-items:end;margin-top:26px}.picker-heading small{color:var(--gold)}.picker-heading h2{margin:4px 0}.filters{display:grid;grid-template-columns:1fr 150px 130px;gap:8px;margin:14px 0}.hero-picker{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;max-height:375px;overflow:auto;padding:2px 4px 8px 0}.hero-card{position:relative;text-align:left;border:1px solid #d6c99d29;border-radius:10px;background:linear-gradient(150deg,#31463a,#1a2c25);padding:10px 9px;min-height:86px;transition:.16s}.hero-card:hover,.hero-card.selected{transform:translateY(-2px);border-color:var(--gold);box-shadow:0 6px 18px #0003}.hero-card .rank{font:10px Arial,sans-serif;color:#cfb773}.hero-card strong{display:block;font-size:15px;margin:3px 0}.hero-card small{color:#a6b5a7;font-size:10px}.hero-card .hp{position:absolute;right:8px;top:8px;color:#e6b899;font-size:10px}.hero-detail{min-height:148px;padding:17px 3px 10px;display:grid;grid-template-columns:1fr 1fr;gap:16px}.hero-detail h3{margin:0 0 6px;color:#e5cc90}.hero-detail p{margin:3px 0;color:#c1cbbb;font-size:12px;line-height:1.75}.hero-detail .story{grid-column:1/-1;color:#aab8a9}.gold-btn{border:0;border-radius:10px;background:linear-gradient(120deg,#d4b36e,#a98545);color:#18211a;padding:12px 18px;font-weight:700}.selection-panel>.gold-btn{width:100%;font-size:16px}.battle-screen{padding:26px 0}.hidden{display:none!important}.battle-top{display:flex;align-items:center;justify-content:space-between}.battle-top h1{margin:3px 0}.table-meta{display:flex;gap:20px;align-items:center;color:#a8b9a9;padding:12px 0}.table-meta b{color:#ead19a}.arena{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.seat{position:relative;min-height:154px;padding:14px;border:1px solid #d7c79332;border-radius:13px;background:linear-gradient(140deg,#2a4035,#14231e);cursor:pointer}.seat.active{border-color:#e3c779;box-shadow:0 0 0 1px #d9b36d44}.seat.me{background:linear-gradient(140deg,#385445,#1c3027)}.seat.out{opacity:.4;filter:grayscale(.8)}.seat h3{margin:3px 0 5px}.seat .epithet{font-size:11px;color:#aebda9}.seat .hp{color:#e8bc8d}.seat .stats{display:flex;gap:9px;flex-wrap:wrap;margin:11px 0;color:#c6d0bb;font-size:12px}.seat .role{font-size:10px;color:#d6bf87}.seat .identity{float:right;font-size:10px;color:#e3c779}.table-call{margin:16px auto;display:flex;align-items:center;justify-content:center;gap:13px;color:#c7d3c5;text-align:left}.table-call>span{display:grid;place-items:center;border:1px solid #d7bb70;border-radius:50%;width:48px;height:48px;font-size:24px;color:var(--gold)}.table-call small{display:block;color:#8fa396;margin-top:3px}.player-zone{padding:17px;border-radius:15px;background:#1c3027;border:1px solid #d5c49a33}.player-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.player-heading>div{display:flex;align-items:center;gap:9px}.player-heading p{color:#bdcbbd;font-size:12px}.you-tag{font-size:10px;background:#d5b66e;color:#18231c;border-radius:99px;padding:4px 8px}.resource-line{display:flex;gap:14px;align-items:center;flex-wrap:wrap;color:#c1cfbe;font-size:13px}.resource-line b{color:#f0cd82}.resource-line .gold-btn{margin-left:auto}.skill-btn{border-color:#c5a960;color:#ebcf88}.hand-heading{display:flex;gap:12px;align-items:center;margin:17px 0 9px}.hand-heading small{color:#94a69a}.hand-heading span{margin-left:auto;color:#d2c38f}.hand{display:flex;gap:8px;overflow-x:auto;padding:4px 2px 10px;scrollbar-color:#879875 #1a2b23}.card{flex:0 0 135px;min-height:121px;text-align:left;border:1px solid #ceb87855;border-radius:10px;background:linear-gradient(145deg,#e8dfc7,#cfc3a2);color:#252d24;padding:10px;box-shadow:0 5px 12px #0003}.card.selected{outline:3px solid #e6ba5d;transform:translateY(-4px)}.card .kind{font-size:10px;color:#846d3a}.card strong{display:block;margin:8px 0 5px}.card small{font-size:10px;line-height:1.5}.log-panel{margin-top:15px;border:1px solid #d5c49a29;border-radius:12px;padding:12px 16px;background:#111e19}.log-panel h3{font-size:13px;color:#d8c184;margin:0}.log-panel ol{margin:7px 0 0;padding-left:20px;max-height:110px;overflow:auto;color:#aebcaa;font-size:12px;line-height:1.8}dialog{max-width:min(650px,calc(100vw - 30px));width:620px;border:1px solid #d7c38b66;border-radius:16px;background:#172720;color:var(--paper);padding:26px;box-shadow:0 30px 100px #000a}dialog::backdrop{background:#06100ddd;backdrop-filter:blur(4px)}dialog p{color:#bbc8b9;line-height:1.8}.dialog-close{float:right;border:0;background:transparent;font-size:27px}.card-catalog{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;max-height:65vh;overflow:auto}.catalog-card{border:1px solid #ccb67244;border-radius:8px;padding:10px}.catalog-card b{color:#e1c579}.catalog-card p{font-size:12px;margin:5px 0}footer{text-align:center;color:#809184;font-size:11px;padding:25px 0 5px}
@media(max-width:900px){.setup-screen{grid-template-columns:1fr;gap:8px;padding-top:14px}.setup-hero{position:static;padding:20px 6px}.setup-hero h1{font-size:42px;margin:8px 0}.lead{max-width:720px}.featured{margin:14px 0}.stamps{display:none}.hero-picker{grid-template-columns:repeat(4,minmax(0,1fr));max-height:320px}}
@media(max-width:600px){.water-shell{padding:0 12px 20px}.water-top{height:65px}.water-top>a{font-size:12px;padding:7px}.brand span{font-size:14px}.brand small{font-size:8px}.top-actions{gap:4px}.top-actions button{font-size:10px;padding:7px}.setup-hero h1{font-size:34px}.selection-panel{padding:14px}.setting-grid{grid-template-columns:1fr 1fr}.setting-grid label:first-child{grid-column:1/-1}.filters{grid-template-columns:1fr 1fr}.filters input{grid-column:1/-1}.hero-picker{grid-template-columns:repeat(3,minmax(0,1fr));max-height:290px}.hero-card{padding:8px 6px;min-height:76px}.hero-card strong{font-size:13px}.hero-detail{grid-template-columns:1fr;gap:8px}.hero-detail .story{grid-column:auto}.battle-screen{padding-top:14px}.battle-top h1{font-size:22px}.arena{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.seat{min-height:130px;padding:10px}.seat h3{font-size:15px}.seat .stats{gap:6px;font-size:10px}.table-call{justify-content:flex-start}.player-zone{padding:12px}.player-heading{align-items:flex-start;display:block}.resource-line{gap:8px}.resource-line .gold-btn{margin-left:0}.card{flex-basis:126px}.card-catalog{grid-template-columns:1fr}}
@media print{body{background:#fff;color:#111}.water-shell>*:not(#cardsDialog){display:none!important}#cardsDialog{display:block!important;position:static;border:0;width:auto;max-width:none;background:#fff;color:#111;box-shadow:none}.dialog-close,#printCards{display:none}.catalog-card{break-inside:avoid;border-color:#999}.catalog-card p{color:#333}}

.battle-tools{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;flex-wrap:wrap}
@media(max-width:540px){.battle-tools{gap:.3rem}.battle-tools .quiet-btn{padding:.55rem .6rem;font-size:.75rem}}
.locale-links{display:flex;gap:4px;flex-wrap:wrap;justify-content:center}.locale-links a{color:#c3d0c4;text-decoration:none;border:1px solid #c3d0c42c;border-radius:7px;padding:5px 7px;font:11px Arial,sans-serif}.locale-links a:hover{border-color:var(--gold);color:#ead6a4}@media(max-width:740px){.water-top{height:auto;min-height:76px;gap:8px;flex-wrap:wrap;padding:8px 0}.locale-links{order:4;width:100%;justify-content:center}.top-actions{gap:4px}.water-shell{padding-left:14px;padding-right:14px}}
