
:root{
  --bg:#0b1016;
  --panel:#111922;
  --line:#2a3543;
  --ally:#4ea1ff;
  --enemy:#ff5a64;
  --gold:#d9b45a;
  --text:#eef5ff;
  --muted:#9cabbc;
}
*{box-sizing:border-box}
html,body{
  margin:0;width:100%;height:100%;overflow:hidden;
  background:#070b10;color:var(--text);
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  touch-action:none;user-select:none;
}
body{
  display:flex;
  align-items:center;
  justify-content:center;
  padding:10px;
}
#app{
  width:min(100vw - 20px, 430px);
  height:min(100vh - 20px, 920px);
  aspect-ratio:9 / 19;
  max-height:calc(100vh - 20px);
  display:flex;
  flex-direction:column;
  background:var(--bg);
  border:1px solid #283341;
  border-radius:24px;
  overflow:hidden;
  box-shadow:0 24px 70px rgba(0,0,0,.45);
}
#hud{
  height:46px;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:8px;
  padding:5px 8px;
  background:linear-gradient(#111820,#0d131a);
  border-bottom:1px solid #26313f;
  z-index:3;
}
.castleBox{display:flex;flex-direction:column;gap:5px;min-width:0}
.castleBox.enemy{align-items:flex-end}
.row{display:flex;justify-content:space-between;width:100%;font-size:11px;color:var(--muted)}
.bar{width:100%;height:12px;border-radius:999px;overflow:hidden;background:#222d39;border:1px solid #364453}
.fill{height:100%;transition:width .15s linear}
#allyFill{background:linear-gradient(90deg,#2d7ed9,#72c7ff)}
#enemyFill{background:linear-gradient(90deg,#ff807b,#df3547)}
#timer{
  padding:4px 10px;
  font-weight:900;
  font-size:16px;
  border-radius:999px;
  background:#080d13;
  border:1px solid #2a3747;
  min-width:52px;
  text-align:center;
}
#battleWrap{
  position:relative;
  flex:1;
  min-height:0;
  overflow:hidden;
  width:100%;
  margin:0;
  background:#172119;
}
canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
#message{
  position:absolute;
  left:50%;
  top:52%;
  transform:translate(-50%,-50%);
  padding:7px 10px;
  border-radius:999px;
  background:rgba(6,10,14,.72);
  border:1px solid rgba(255,255,255,.11);
  font-size:11px;
  color:#dbe7f3;
  pointer-events:none;
  z-index:2;
  white-space:nowrap;
  max-width:92%;
  overflow:hidden;
  text-overflow:ellipsis;
}
#result{
  position:absolute;inset:0;display:none;place-items:center;
  background:rgba(3,6,10,.74);z-index:6
}
#resultCard{
  width:min(84%,340px);padding:26px;text-align:center;border-radius:18px;
  background:#111923;border:1px solid #344458;box-shadow:0 25px 60px rgba(0,0,0,.42)
}
#resultTitle{font-size:32px;font-weight:900;margin-bottom:8px}
#resultSub{font-size:13px;color:var(--muted);margin-bottom:18px}
button{
  appearance:none;border:0;border-radius:11px;padding:11px 18px;
  background:#e9f1fa;color:#09111a;font-weight:900;font-size:14px
}
#bottom{display:none}
.help{font-size:11px;line-height:1.5;color:var(--muted)}
.legend{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.pill{
  font-size:10px;padding:5px 7px;border-radius:999px;
  background:#16202a;border:1px solid #2c3a4a;white-space:nowrap
}
.dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:4px}

@media (max-height:760px){
  #app{height:calc(100vh - 10px);width:auto;max-width:100vw}
  #hud{height:42px}
}
@media (max-width:460px){
  body{padding:0}
  #app{
    width:100vw;
    height:100vh;
    max-height:100vh;
    border-radius:0;
    border:0;
  }
}


html,body{touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;overscroll-behavior:none}

*{touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}
input,textarea,[contenteditable]{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}
::selection{background:transparent}
body{padding:0;background:#080d13}
#app{width:min(100%,480px);height:100vh;height:100svh;height:var(--app-h,100svh);max-height:none;aspect-ratio:auto;border-radius:0;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);position:relative}
#topbar{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;flex-shrink:0;border-bottom:1px solid var(--line);background:#101821}
#topbar b{display:block;font-size:18px;letter-spacing:.14em}.eyebrow{display:block;font-size:9px;color:var(--gold);letter-spacing:.14em;margin-bottom:3px}.stage-tag{font-size:10px;color:#b9c7d7;border:1px solid #344252;border-radius:5px;padding:6px}
#hud{height:56px;flex-shrink:0;padding:6px 14px;gap:14px}#timer{border-radius:6px;font-size:23px;color:#e6cb89;min-width:58px}.row{font-size:10px}.bar{height:7px}
#battleWrap{background:#101b16;min-height:130px}canvas{touch-action:none;inset:auto}
#battleHint{position:absolute;top:6px;left:50%;transform:translateX(-50%);max-width:95%;width:max-content;font-size:10px;line-height:1.4;background:#08111bdf;border:1px solid #314456;color:#d3e2f3;border-radius:5px;padding:5px 9px;pointer-events:none}
#controls{padding:8px 10px;background:#111a25;flex-shrink:0;border-top:1px solid #354152}.roster{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.unit-button{background:#1a2735;color:#eaf2fc;padding:7px 8px;border:1px solid #3a4b5d;border-radius:8px;text-align:left;min-height:64px;min-width:0}.unit-button[aria-pressed=true]{border-color:#81c4ff;box-shadow:inset 0 0 0 1px #81c4ff}.unit-button strong{display:block;font-size:12px}.unit-button small{display:block;color:#c2d0df;font-weight:500;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:4px}.mini-hp{height:3px;background:#344454;margin-top:5px;border-radius:3px;overflow:hidden}.mini-hp i{display:block;height:100%;background:#62c6aa}.toolbar{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;margin-top:7px}
button,select{font:inherit;touch-action:manipulation}button{cursor:pointer;min-height:44px;font-size:13px;padding:9px 12px;border-radius:8px;background:#e7c884;color:#19212a;font-weight:750}button:disabled{opacity:.35;cursor:default}button:focus-visible,select:focus-visible{outline:2px solid #84caff;outline-offset:2px}.secondary{background:#202e3e;color:#dce8f5;border:1px solid #3b4b5b}.toolbar button{min-height:42px;font-size:12px;padding:7px 4px}.micro{font-size:10px;line-height:1.5;color:#afbecf;margin:6px 0 0;text-align:center}
.sheet{position:absolute;inset:0;z-index:10;display:flex;flex-direction:column;background:#0b121b;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.sheet[hidden]{display:none}.sheet-head{padding:18px 18px 12px;border-bottom:1px solid #2e3b4b;flex-shrink:0}.sheet-head h1{font-size:25px;margin:6px 0;letter-spacing:.08em}.sheet-head p{margin:0;color:#b7c7d8;font-size:12px;line-height:1.7}.sheet-body{padding:14px 16px 22px;overflow-y:auto;overscroll-behavior:contain;flex:1;min-height:0;touch-action:pan-y}.sheet-foot{padding:10px 16px;border-top:1px solid #2a3849;background:#111b27;flex-shrink:0}.sheet-foot button{width:100%;font-size:15px}.sheet-foot p{margin:6px 0 0;text-align:center;font-size:10px;color:#a9bbce}
.opponent{padding:12px;border:1px solid #3d454a;border-left:3px solid #d4b56b;background:linear-gradient(120deg,#262925,#151f29);border-radius:7px;margin-bottom:14px}.opponent b{font-size:13px}.opponent p{font-size:11px;line-height:1.7;color:#c5d0dc;margin:6px 0 0}.section-title{display:flex;justify-content:space-between;align-items:center;font-size:13px;margin:16px 0 9px}.section-title span{font-weight:400;font-size:10px;color:#a6b9ca}.preset-grid{display:flex;gap:6px;overflow-x:auto;padding-bottom:3px;touch-action:pan-x}.preset-grid button{white-space:nowrap;min-height:40px;font-size:11px;padding:7px 11px;background:#1c2a3a;color:#d8e5f4;border:1px solid #3b4c5e}.preset-grid button[aria-pressed=true]{background:#dbc18b;color:#19202a;border-color:#e4cc98}.unit-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.unit-tabs button{background:#162331;color:#cbdbea;border:1px solid #33475a;padding:9px 2px;font-size:12px}.unit-tabs button[aria-selected=true]{background:#20374b;color:#a9d9ff;border-color:#70b8f2}
#unitDescription{font-size:11px;line-height:1.7;color:#aebed1;min-height:36px;margin:10px 0}.rule{display:grid;grid-template-columns:27px 1fr 38px;gap:6px;align-items:center;padding:10px 8px;border:1px solid #2d4155;background:#131f2c;border-radius:8px;margin-bottom:8px}.rule-number{color:#dfc486;font-size:18px;text-align:center}.rule-fields{min-width:0}.rule label{display:flex;align-items:center;gap:6px;font-size:10px;color:#96adbf;margin:3px 0}.rule label span{width:28px;flex-shrink:0}.rule select{background:#203044;color:#f0f5fb;border:1px solid #3c5269;border-radius:5px;min-height:44px;width:100%;font-size:13px;padding:6px 4px;min-width:0}.rule-up{padding:4px;min-height:44px;background:#26384b;color:#c9deef;font-size:18px}.rule-tip{font-size:11px;color:#b9c8d8;line-height:1.7;margin:10px 0}.history-item{display:grid;grid-template-columns:32px 1fr auto;gap:6px;border-bottom:1px solid #26384a;padding:10px 0;font-size:11px;color:#c7d6e7}.history-item b{color:#e0c68b}.history-empty{font-size:11px;color:#91a6ba;padding:10px 0}details{margin-top:14px;font-size:12px;color:#b4c5d7}summary{padding:10px 0;cursor:pointer;min-height:44px}details p{font-size:11px;line-height:1.8;margin:6px 0}#storageStatus{color:#dcbd79}
#result{position:fixed;inset:0;padding:16px;overflow-y:auto;z-index:20}#resultCard{width:min(100%,410px);max-height:calc(var(--app-h,100svh) - 32px);overflow-y:auto;padding:22px 18px;text-align:left}#resultTitle{text-align:center;font-size:30px}#resultSub{text-align:center;font-size:12px;margin-bottom:12px}#resultCard button{width:100%;margin-top:8px}#resultDetail{font-size:12px;line-height:1.7}.result-score{display:flex;align-items:center;justify-content:space-around;padding:12px 0;border-top:1px solid #2f4154;border-bottom:1px solid #2f4154}.result-score strong{font-size:25px}.result-score small{display:block;font-size:10px;color:#adbed1}.report-tip{background:#202d37;border-left:3px solid #ddc180;padding:10px;margin:12px 0}.result-log{font-size:10px;color:#b4c6d8}.result-log p{margin:3px 0}.stat-line{display:flex;justify-content:space-between;padding-top:8px;font-size:11px}.phase-label{color:#f1d79e}#pauseLayer{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none;color:#fff;background:#060c1455;font-size:22px;font-weight:800;text-shadow:0 2px 6px #000}#pauseLayer[hidden]{display:none}
.rule select{font-size:16px}.history-entry{margin:0}.history-entry summary{list-style:none;padding:0}.history-entry summary::after{content:'命令を確認 ▾';display:block;font-size:10px;color:#96b4cf;padding:0 0 6px}.history-entry button{min-height:44px;font-size:12px;margin-bottom:10px}.history-orders{font-size:11px;line-height:1.7;color:#c1d1e2}
@media(min-width:600px) and (min-height:800px){body{padding:14px}#app{height:calc(var(--app-h,100svh) - 28px);max-height:1000px;border-radius:18px}}
@media(max-height:650px){#topbar{padding:5px 10px}#topbar b{font-size:14px}.eyebrow{font-size:8px}#hud{height:47px}#controls{padding:5px 8px}.unit-button{min-height:53px;padding:5px 7px}.micro{display:none}.sheet-head{padding:10px 16px}.sheet-head h1{font-size:21px}}
@media(orientation:landscape) and (max-height:550px){#app{width:100%;max-width:900px;display:grid;grid-template-columns:1fr 250px;grid-template-rows:42px 1fr}#topbar{grid-column:2;grid-row:1}.stage-tag{display:none}#hud{grid-column:1;grid-row:1;height:42px}#battleWrap{grid-column:1;grid-row:2;height:100%}#controls{grid-column:2;grid-row:2;display:flex;flex-direction:column;justify-content:center}.roster{grid-template-columns:1fr}.unit-button{min-height:52px}.sheet-head{padding:8px 16px}.sheet-head h1{display:inline;font-size:18px}.sheet-head p{display:none}.sheet-head .eyebrow{display:inline;margin-right:12px}}

#topbar{gap:8px}#topbar>div:first-child{min-width:0}#topbar .toolbar{display:flex;gap:5px;margin:0;flex-shrink:0}#topbar .toolbar button{min-height:36px;font-size:11px;padding:5px 8px;white-space:nowrap}
#hud{gap:14px}
.morale{display:flex;align-items:center;gap:8px;font-size:11px;color:#e8cf8e;white-space:nowrap;margin-bottom:6px}.morale em{font-style:normal;color:#c8b273}.morale #moraleValue{flex-shrink:0;font-weight:800}.morale-deck{flex-shrink:0;font-size:10px;color:#a9b7c7}
.morale-bar{flex:1;min-width:0;height:7px;background:#2b3440;border-radius:4px;overflow:hidden}.morale-bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,#b88d2c,#ffd76b)}
.deck-info{font-size:11px;line-height:1.7;color:#c5d0dc;margin:0 0 4px}.deck-info b{color:#e7c884}

.roster{grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}.unit-card{display:flex;flex-direction:column;gap:3px;min-width:0}
.unit-button{padding:6px 5px;min-height:56px}.unit-button strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.unit-button small{font-size:9px}
.unit-tabs{grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}.unit-tabs button{font-size:11px;padding:8px 1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.skill{min-height:40px;width:100%;padding:3px 3px;border-radius:7px;background:#16202b;color:#8394a6;border:1px solid #2c3a49;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.2;min-width:0}
.skill b{font-size:9.5px;font-weight:800;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.skill small{font-size:10px;font-weight:800}.skill:disabled{opacity:.5}
.skill.ready{background:#3a2f12;color:#ffe7a3;border-color:#ffd76b;box-shadow:0 0 8px 1px #ffd76b88;animation:skillGlow 1.1s ease-in-out infinite alternate}.skill.active{opacity:1;background:#223a2c;color:#b8f3c9;border-color:#6fd49a}
.skill.preview{opacity:1;background:#5a4410;color:#fff4c8;border-color:#fff1b0;box-shadow:0 0 12px 3px #ffe38fcc}
@keyframes skillGlow{from{box-shadow:0 0 3px #ffd76b55}to{box-shadow:0 0 11px 2px #ffd76bcc}}
@media (prefers-reduced-motion:reduce){.skill.ready{animation:none}}
@media(max-width:360px){#topbar .toolbar button{padding:5px 6px;font-size:10px}#topbar b{font-size:14px}.skill b{font-size:8.5px}.morale-deck{display:none}}
@media(orientation:landscape) and (max-height:550px){.roster{grid-template-columns:1fr 1fr}#topbar{flex-wrap:wrap}}

#cutin{position:absolute;inset:0;z-index:7;display:grid;place-items:center;background:#03070c80;cursor:pointer}#cutin[hidden]{display:none}
.cutin-band{width:100%;padding:14px 18px 10px;display:grid;gap:3px;text-align:center;border-top:2px solid;border-bottom:2px solid;animation:cutinIn .28s ease-out}
#cutin.ally .cutin-band{background:linear-gradient(90deg,#0d2a4dee,#1c4f86ee,#0d2a4dee);border-color:#7cc4ff;--from:-100%}
#cutin.enemy .cutin-band{background:linear-gradient(90deg,#4a0f18ee,#8a2331ee,#4a0f18ee);border-color:#ff8f9b;--from:100%}
.cutin-side{font-size:10px;letter-spacing:.2em;color:#f3e2b0}.cutin-name{font-size:30px;font-weight:900;letter-spacing:.08em;color:#fff;text-shadow:0 2px 8px #000a}
.cutin-caster{font-size:13px;font-weight:800;color:#e7eef7}.cutin-text{margin:2px 0 4px;font-size:12px;line-height:1.5;color:#f1f5fa}
.cutin-timer{display:block;height:3px;background:#ffffff30;border-radius:2px;overflow:hidden}.cutin-timer i{display:block;height:100%;width:100%;background:#ffe39a}
@keyframes cutinIn{from{transform:translateX(var(--from));opacity:.2}to{transform:none;opacity:1}}
@media (prefers-reduced-motion:reduce){.cutin-band{animation:none}}
.skill.waiting{opacity:1;background:#2c2a1c;color:#e9d9a4;border-color:#b99a4d;border-style:dashed}
#topbar .eyebrow{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.team-rules{display:grid;gap:6px;padding:10px 8px;border:1px solid #4a4230;background:#1b1a14;border-radius:8px}.team-rules label{display:flex;align-items:center;gap:8px;font-size:11px;color:#e3cf98}.team-rules label span{width:34px;flex-shrink:0;font-weight:800}.team-rules select{background:#2a2718;color:#f7efd6;border:1px solid #5d5236;border-radius:5px;min-height:44px;width:100%;font-size:16px;padding:6px 4px;min-width:0}

.treasure{flex-shrink:0;min-height:36px;padding:3px 9px;border-radius:7px;background:#1b1626;color:#9c90b5;border:1px solid #3c3352;display:flex;flex-direction:column;align-items:center;line-height:1.15}.treasure b{font-size:11px}.treasure small{font-size:9px;font-weight:700}.treasure[hidden]{display:none}
.treasure.ready{background:#3b1f4d;color:#f1dcff;border-color:#c79cff;box-shadow:0 0 9px 1px #c79cff88;animation:treasureGlow 1.4s ease-in-out infinite alternate}
@keyframes treasureGlow{from{box-shadow:0 0 3px #c79cff55}to{box-shadow:0 0 12px 2px #c79cffcc}}
@media (prefers-reduced-motion:reduce){.treasure.ready{animation:none}}
.treasure-items{margin-top:6px}.treasure-items button em{font-style:normal;font-size:9px;font-weight:900;padding:1px 4px;border-radius:3px;margin-right:2px;background:#39475a;color:#dce6f2}.treasure-items .rarity-R em{background:#2f5d8a;color:#e2f0ff}.treasure-items .rarity-SR em{background:#8a6a1f;color:#fff2c4}
.treasure b{max-width:7em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.rail{position:absolute;top:44px;bottom:8px;z-index:4;display:flex;flex-direction:column;justify-content:center;gap:6px;padding:0 3px}.rail.left{left:0}.rail.right{right:0}
.rail-title{font-size:9px;color:#9fb0c2;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rail button{min-height:46px;padding:4px 2px;border-radius:8px;background:#1a2735;color:#dce8f5;border:1px solid #3a4b5d;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.2;font-size:10px}
.rail button b{font-size:10px;font-weight:800;word-break:keep-all;overflow-wrap:anywhere}.rail button small{font-size:9px;color:#b7f0c8}
.rail button.active{background:#24442e;border-color:#7fd49a;color:#e2ffe9}.rail button.warn{border-color:#8a4a4a;color:#ffd0d0}.rail button.auto{background:#141d27;color:#9fb0c2}
.rail.overlay button{background:#101a24cc}.rail.overlay button.active{background:#24442ecc}


#hud{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:12px;padding:6px 10px}
#timer{cursor:pointer;min-height:40px;min-width:62px;font:inherit;font-size:23px;font-weight:900;line-height:1}
#timer.paused{background:#3f4a3c;color:#f1e7cc}
#hud .castle-wall{height:30px!important}
#controls{padding:6px 8px 7px}#controlHint{display:none}.morale{margin-bottom:5px}
.unit-button{min-height:44px;padding:4px 5px}.unit-button small{margin-top:1px}.mini-hp{margin-top:3px}
.skill{min-height:34px;padding:2px 3px}.unit-card{gap:2px}
@media(max-width:360px){#hud{gap:6px;padding:5px 6px}}
@media(orientation:landscape) and (max-height:550px){#app{grid-template-rows:42px 1fr}#controls{grid-column:2;grid-row:1 / 3}}
.rail.narrow{padding:0 1px;gap:5px}.rail.narrow button{min-height:48px;padding:3px 1px}.rail.narrow button b{font-size:10px;line-height:1.15;width:2.1em}.rail.narrow .rail-title{font-size:8px}

#deployBar{padding:6px 10px;background:#18263a;border-top:1px solid #3b5673;flex-shrink:0}#deployBar[hidden]{display:none}#deployBar p{margin:0 0 5px;font-size:11px;color:#cfe3f7;text-align:center}#deployBar div{display:grid;grid-template-columns:1fr 2fr;gap:6px}#deployBar button{min-height:40px;font-size:13px}
@media(orientation:landscape) and (max-height:550px){#deployBar{grid-column:1;grid-row:2;align-self:end;z-index:5}}

.practice-only[hidden]{display:none}
.foot-row{display:flex;gap:8px}.foot-row button{flex:1}.foot-row #prepBack{flex:0 0 auto;width:auto;font-size:13px}.foot-row #prepBack[hidden]{display:none}
.meta{z-index:14}.meta .sheet-head{padding:14px 18px 10px}.meta .sheet-head h1{font-size:22px}
.meta-foot{display:flex;flex-wrap:wrap;gap:8px}.meta-foot[hidden]{display:none}.meta-foot button{flex:1 1 40%;width:auto;font-size:13px}
.adjutant{display:flex;gap:10px;align-items:flex-start;background:#132131;border:1px solid #2f4a63;border-radius:10px;padding:10px 12px;margin-bottom:12px}
.adjutant p{margin:0;font-size:12px;line-height:1.7;color:#d6e4f2}.adjutant p b{display:block;font-size:10px;color:#9fc6e8;letter-spacing:.08em;margin-bottom:2px}
.adjutant.inline{margin:0 0 10px}
.adjutant-face{flex:0 0 34px;height:34px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#3e6d93,#1d3348);color:#e9f4ff;font-weight:800;font-size:15px;border:1px solid #6aa2cf}
.home-stats{display:flex;gap:12px;flex-wrap:wrap;font-size:11px;color:#a9bccf;margin-bottom:12px}.home-stats b{color:#e7c884;font-size:14px}
.home-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.home-cmd{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-height:104px;text-align:left;background:#182636;color:#eaf2fc;border:1px solid #3a5169;padding:14px}
.home-cmd b{font-size:17px;letter-spacing:.06em;color:#e7c884}.home-cmd small{font-size:11px;font-weight:500;line-height:1.5;color:#b8c9da}
.army{border:1px solid #33475a;border-radius:10px;padding:12px;margin-bottom:12px;background:#111c28}.army-head{display:flex;justify-content:space-between;gap:8px;align-items:baseline}.army-head b{font-size:16px;color:#e7c884}.army-head small{font-size:10px;color:#a6b9ca}
.army p{font-size:11px;line-height:1.7;color:#c5d3e1;margin:6px 0}.army>button{width:100%;margin-top:8px}
.card-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:6px}
.card-tile{display:flex;flex-direction:column;gap:2px;text-align:left;padding:8px;border-radius:8px;border:1px solid #3a4b5d;background:#172433;color:#eaf2fc;min-height:0;font-weight:500;min-width:0}
.card-tile b{font-size:13px}.card-tile small{font-size:9px;color:#a9bbce;line-height:1.4}.card-top,.card-stats,.card-strat{font-size:9px;color:#c9d6e3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-strat{color:#e7c884}
.card-top em{font-style:normal;font-weight:800;padding:0 4px;border-radius:3px;background:#2c3a4a}.card-top em.rarity-SR{background:#a67c2e;color:#fff}.card-top em.rarity-R{background:#3d6a8f;color:#fff}
.card-tile.realm-lumina{border-left:4px solid #e8f0fa}.card-tile.realm-varga{border-left:4px solid #ff8a5c}.card-tile.realm-nox{border-left:4px solid #a58bff}
.card-tile.selected{background:#1f3a55;border-top-color:#81c4ff;border-right-color:#81c4ff;border-bottom-color:#81c4ff}.card-tile.dim{opacity:.55}
.castle-line{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;font-size:11px;color:#d6e4f2;margin-bottom:10px}.castle-line>i{height:8px;border-radius:4px;background:#27384a;overflow:hidden}.castle-line>i>i{display:block;height:100%;background:#62a8e8}
.map{display:flex;flex-direction:column;gap:8px}.map-row{display:grid;grid-template-columns:22px 1fr 1fr;gap:6px;align-items:stretch}
.map-step{font-size:12px;color:#8fa4b8;display:grid;place-items:center}.map-row.current .map-step{color:#e7c884;font-weight:800}
.map-node{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;background:#172433;color:#eaf2fc;border:1px solid #3a4b5d;padding:8px;min-height:64px;font-weight:500}
.map-node b{font-size:12px}.map-node small{font-size:10px;color:#b3c4d5;line-height:1.4}.map-node:disabled{opacity:.6}.map-row.current .map-node{border-color:#e7c884;opacity:1}
.map-node.node-elite b{color:#ff9aa6}.map-node.node-boss b{color:#ffcf6b}.map-node.chosen{border-color:#62c6aa;opacity:.9}.map-node.skipped{opacity:.3}
.lead{font-size:12px;line-height:1.8;color:#c5d3e1;margin:6px 0 10px}.story{border-left:3px solid #5b7890;padding-left:10px}.lead.story small{color:#e7c884}
.settle{display:grid;gap:4px;font-size:12px;color:#c5d3e1;border:1px solid #33475a;border-radius:8px;padding:10px;margin:8px 0}.settle b{color:#e7c884;font-size:15px}
.research{border:1px solid #33475a;border-radius:10px;padding:10px 12px;margin-bottom:10px;background:#111c28}.research.have{opacity:.7}.research-head{display:flex;justify-content:space-between;gap:8px}.research-head b{font-size:14px;color:#e7c884}.research-head small{font-size:10px;color:#a6b9ca}
.research p{font-size:11px;line-height:1.6;color:#c5d3e1;margin:4px 0}.research .research-use{color:#e3eef9}.research button{width:100%;margin-top:6px}
.gambit-slot{display:grid;grid-template-columns:1fr auto;gap:4px 8px;border-bottom:1px solid #26384a;padding:8px 0}.gambit-slot small{grid-column:1;font-size:10px;color:#a9bbce;line-height:1.5}.gambit-slot button{grid-row:1/3;grid-column:2;min-height:36px;font-size:11px}
.mock{display:grid;grid-template-columns:1fr auto;gap:4px 8px;border:1px solid #33475a;border-radius:8px;padding:10px;margin:8px 0}.mock small{font-size:10px;color:#a9bbce}.mock button{grid-row:1/3;grid-column:2}
#archivePractice{width:100%;margin:8px 0}
.story-card{font-size:11px;line-height:1.7;color:#c5d3e1}.story-card b{display:block;color:#e7c884;font-size:12px}
.talk{position:absolute;inset:0;z-index:30;display:flex;align-items:flex-end;background:#04080ca6;padding:14px}.talk[hidden]{display:none}
.talk-box{width:100%;display:grid;grid-template-columns:auto 1fr;gap:10px;background:#122031;border:1px solid #4a7194;border-radius:12px;padding:14px;margin-bottom:env(safe-area-inset-bottom)}
.talk-box b{font-size:11px;color:#9fc6e8}.talk-box p{margin:4px 0 0;font-size:13px;line-height:1.8;color:#eef5fc;min-height:48px}
.talk-actions{grid-column:1/3;display:flex;gap:8px}.talk-actions button{flex:1}.talk-actions #talkSkip{flex:0 0 auto}
#resultNext[hidden],#resultHome[hidden],#retry[hidden],#sameRetry[hidden]{display:none}
.story-card p{margin:3px 0}.bond-line{padding-left:8px;border-left:2px solid #6aa2cf}.bond-line em{display:block;font-style:normal;font-size:10px;color:#9fc6e8}.bond-line.locked{color:#6f8193;border-left-color:#33475a}

.card-info{align-items:center;z-index:31;padding:8px 8px max(8px,env(safe-area-inset-bottom))}

.info-box{width:100%;max-height:100%;box-sizing:border-box;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:minmax(0,1fr) auto;column-gap:8px;overflow:hidden;background:#122031;border:1px solid #4a7194;border-radius:12px;padding:12px 12px 10px}
#cardInfoBody{grid-column:1/-1;overflow-y:auto;min-height:0;-webkit-overflow-scrolling:touch;padding-bottom:4px}
#cardInfoAction,#cardInfoClose{margin-top:8px}#cardInfoAction[hidden]+#cardInfoClose{grid-column:1/-1}
.info-box h2{font-size:18px;margin:4px 0 6px;color:#eef5fc}.info-stats{font-size:12px;color:#c5d3e1;margin:0 0 10px}
.info-strat{border:1px solid #6b5a2e;background:#1d1a12;border-radius:8px;padding:10px;margin-bottom:10px}.info-strat b{color:#e7c884;font-size:14px}.info-strat small{display:block;font-size:10px;color:#c9b88f;margin-top:3px}.info-strat p{font-size:12px;line-height:1.7;color:#eef5fc;margin:6px 0 0}
.info-skills p{font-size:11px;line-height:1.6;color:#c5d3e1;margin:3px 0}.info-lore{font-size:11px;line-height:1.7;color:#aebed1;border-left:3px solid #5b7890;padding-left:8px;margin:10px 0}
.info-note{font-size:12px;font-weight:700;color:#8fe0a8;background:#173326;border-radius:6px;padding:6px 8px;margin:0 0 8px}
.info-box button{width:100%;margin-top:6px}
.unit-button,.skill,.card-tile,.unit-tabs button{-webkit-touch-callout:none}
.roster.dense .unit-button{min-height:46px;padding:4px 5px}.roster.dense .unit-button strong{font-size:11px}.roster.dense .skill{min-height:30px}
.rail[hidden]{display:none}
#cardInfoAction[hidden]{display:none}


#eventCut{position:absolute;inset:0;z-index:7;pointer-events:none;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr auto 1fr;animation:evFade .12s ease-out}
#eventCut[hidden]{display:none}
.ev-word{grid-column:1/3;grid-row:2;align-self:center;justify-self:center;font:900 76px/1.1 "Hiragino Mincho ProN","Yu Mincho","Noto Serif JP",serif;letter-spacing:.04em;white-space:nowrap;
  color:#ff5a2e;-webkit-text-stroke:1px #4a0a04;text-shadow:0 3px 0 #2a0503,0 0 10px #ffcf8a,0 0 24px #ff6a2a;transform:rotate(-6deg);animation:evPop .28s cubic-bezier(.2,1.6,.4,1)}
.ev-name{grid-column:1/3;grid-row:1;align-self:end;margin-bottom:10px;justify-self:center;margin-bottom:6px;font:900 17px system-ui;color:#fff;background:#140b0be0;border:1px solid #ff8f6b;border-radius:6px;padding:4px 12px;animation:evSlide .22s ease-out}
.ev-name:empty{display:none}
.ev-portrait{grid-column:1;grid-row:3;align-self:end;justify-self:start;margin:0 0 14px 12px;width:74px;height:74px;border-radius:50%;display:grid;place-items:center;
  background:radial-gradient(circle at 40% 35%,#ffe1c8,#b86a4a 70%,#5a2414);border:3px solid #fff3e3;box-shadow:0 4px 12px #000a;animation:evSlide .22s ease-out}
.ev-portrait b{font:900 30px "Hiragino Mincho ProN","Yu Mincho",serif;color:#3a1206}
#eventCut.ev-ambush .ev-word{color:#9b6cff;-webkit-text-stroke-color:#12072a;text-shadow:3px 3px 0 #07030f,0 0 14px #d4c2ff,0 0 26px #7a4cff}
#eventCut.ev-siege .ev-word,#eventCut.ev-gate .ev-word{font-size:60px}
#eventCut.ally .ev-word{color:#4aa6ff;-webkit-text-stroke-color:#06172e;text-shadow:3px 3px 0 #030b16,0 0 14px #cfe8ff,0 0 26px #3a8cff}
#eventCut.ally.ev-ambush .ev-portrait{background:radial-gradient(circle at 40% 35%,#e3f1ff,#5d8fc4 70%,#1b3654)}
#eventCut.ally .ev-name{border-color:#7fc0ff}
@keyframes evPop{0%{transform:scale(2.2) rotate(-6deg);opacity:0}100%{transform:scale(1) rotate(-6deg);opacity:1}}
@keyframes evSlide{0%{transform:translateX(-30px);opacity:0}100%{transform:none;opacity:1}}
@keyframes evFade{0%{opacity:0}100%{opacity:1}}
#eventCut.ally.ev-kill .ev-portrait{background:radial-gradient(circle at 40% 35%,#e3f1ff,#5d8fc4 70%,#1b3654)}#eventCut.ally.ev-kill .ev-portrait b{color:#0b2448}
.treasure-row{grid-template-columns:1fr}.treasure-tile small{white-space:normal}.treasure-tile .treasure-lore{color:#8fa4b8;font-style:italic;margin-top:3px}
.price-tag{float:right;font-size:11px;font-weight:700;color:#f3c969;margin-left:6px}

.castle-chart{margin:10px 0 4px}.castle-chart figcaption{font-size:11px;color:#c9d6e3;display:flex;justify-content:space-between;gap:8px}
.chart-key{display:inline-flex;align-items:center;gap:4px;color:#aebed1}.chart-key i{display:inline-block;width:10px;height:3px;border-radius:2px;margin-left:6px}
.castle-chart svg{width:100%;height:auto;display:block;touch-action:none}.castle-chart .grid{stroke:#2a3a4b;stroke-width:1}.castle-chart .axis{font-size:9px;fill:#8ea2b6}
.castle-chart .end-label{font-size:10px;font-weight:700;fill:#dce7f2}.chart-tip{font-size:10px;color:#aebed1;margin:2px 0 0}
.unit-table table{width:100%;border-collapse:collapse;font-size:11px;margin-top:8px}.unit-table caption{text-align:left;font-size:11px;font-weight:700;color:#c9d6e3}
.unit-table th{font-weight:600;color:#8ea2b6;text-align:right;padding:2px 4px}.unit-table th:first-child,.unit-table td:first-child{text-align:left}
.unit-table td{padding:3px 4px;text-align:right;border-top:1px solid #243446;font-variant-numeric:tabular-nums}.unit-table tr.mvp td{background:#2a3322}.unit-table em{font-style:normal;font-size:9px;color:#f1d79e;border:1px solid #8a7a45;border-radius:3px;padding:0 3px}


.shatter{position:fixed;z-index:70;pointer-events:none}
.holder-row{align-items:center;flex-wrap:wrap}.holder-row[hidden]{display:none}.holder-label{font-size:11px;font-weight:800;opacity:.8;margin-right:2px}
#metaBody .sort-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}#metaBody .sort-row button{white-space:nowrap;min-width:0;padding-left:4px;padding-right:4px}
.reserve-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:8px 0}.reserve-tools select{min-height:40px;font:inherit}
#metaBody .reserve-tools{grid-template-columns:repeat(2,minmax(0,1fr))}
.opponent[hidden]{display:none!important}

.map.route{position:relative;display:block;margin:6px 0 10px}
.map.route .roads{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.road{fill:none;stroke-linecap:round;vector-effect:non-scaling-stroke;stroke-width:6px;stroke:#b9a988}
.road.ahead{stroke:#c7b995}.road.open{stroke:#7c5a2e;stroke-width:8px}.road.taken{stroke:#9b3a26;stroke-width:8px}.road.faded{stroke:#d9cdb2;opacity:.55}
.route-spot{position:absolute;transform:translate(-50%,-50%);width:min(31%,118px);z-index:1}
.route-spot .map-node{width:100%;min-height:48px;align-items:center;justify-content:center;text-align:center;padding:4px 2px;gap:0}
.route-spot .map-icon{font-size:15px;line-height:1.1}.route-spot .map-node b{font-size:10px;letter-spacing:0;white-space:nowrap}
.route-spot .map-node.open{border-color:#a04c32!important;box-shadow:0 0 0 2px #a04c3266;opacity:1}
.route-spot .map-node:disabled:not(.chosen){opacity:.72}.route-spot .map-node.skipped{opacity:.35}
.route-start{position:absolute;left:50%;transform:translate(-50%,-50%);font-size:11px;padding:2px 10px;border-radius:10px;background:#5d6b5b;color:#faf0d8;z-index:1;white-space:nowrap}


.event-art{margin:0 0 12px;border:1px solid #b6a27c;background:#efe4c8;aspect-ratio:360/170;overflow:hidden;box-shadow:0 3px 10px #3a342214}
.event-art svg{display:block;width:100%;height:100%}
.event-art.painted{aspect-ratio:3/2;background:#f1e8d2}.event-art.painted img{display:block;width:100%;height:100%;object-fit:cover}
.omen-line{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 0;font:12px/1.5 system-ui}.omen{padding:2px 8px;border:1px solid}.omen.curse{color:#8d3b2a;border-color:#c79a8a;background:#f3dcd2}.omen.blessing{color:#2f5d57;border-color:#8fb0a8;background:#dcebe6}

.council-head{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.council-head .retreat-run{margin-left:auto;width:auto;min-height:0;padding:5px 10px;font-size:11px}
.home-cmd[data-home=market]{grid-column:2}
.treasure-strip{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 2px}.treasure-chip{position:relative;width:42px;height:42px;min-height:0;padding:2px;border:1px solid #a99b7c;border-radius:6px;background:#f3ead6;overflow:hidden}.treasure-chip img{display:block;width:100%;height:100%;object-fit:contain}.treasure-chip .chip-kind{font-size:18px;color:#5b5139}.treasure-chip em{position:absolute;right:1px;bottom:0;padding:0 3px;border-radius:3px;background:#f6efdcd9;font:700 9px/1.3 system-ui;font-style:normal;color:#4a4231}.treasure-chip.rarity-R{border-color:#8e9aa2}.treasure-chip.rarity-SR{border-color:#b08a3c;box-shadow:inset 0 0 0 1px #e2c67f}
#battleHint:empty{display:none}
#pauseLayer{align-content:center;gap:14px}#pauseLayer button{pointer-events:auto;font-size:15px;min-height:44px;padding:8px 20px;text-shadow:none}
.rail.narrow{padding:0}.rail.narrow button{padding:3px 0}
.treasure-tile.has-pic{display:grid;grid-template-columns:52px 1fr;column-gap:10px;align-items:start}.treasure-tile.has-pic>*:not(.treasure-pic):not(.price-tag){grid-column:2}.treasure-tile .treasure-pic{grid-column:1;grid-row:1 / span 4;width:52px;height:52px;object-fit:cover;border:1px solid #a99b7c;border-radius:6px;background:#f3ead6}

#enemyStrip{display:none}
#hud.deploying>:not(#enemyStrip){display:none}
#hud.deploying{display:block;height:auto;padding:6px 8px}
#hud.deploying #enemyStrip{display:grid;grid-template-columns:repeat(auto-fit,minmax(64px,1fr));gap:4px}
.enemy-chip{min-height:40px;padding:3px 4px;border:1px solid #a9563f;border-radius:5px;background:#f4e6d6;color:#5b2c22;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;line-height:1.25;text-align:left;min-width:0}
.enemy-chip b{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.enemy-chip small{font-size:9.5px;color:#7a4b3c;white-space:nowrap}
#battleHint[hidden]{display:none!important}

.card-tile.realm-kuni{border-left:4px solid #d9b46a}
.skill.queued{outline:2px dashed #ffe38f;outline-offset:-3px}


.roster.dense{grid-template-columns:repeat(var(--units,6),minmax(0,1fr));gap:3px}
.roster.dense .unit-button{padding:3px 2px;min-height:42px}.roster.dense .unit-button strong{font-size:9.5px;letter-spacing:-.05em}.roster.dense .unit-type{display:none}.roster.dense .unit-button small{font-size:8px}
.roster.dense .skill{font-size:9px;padding:2px 1px;min-height:30px;letter-spacing:-.03em}
@media(orientation:landscape) and (max-height:550px){.roster.dense{grid-template-columns:1fr 1fr}.roster.dense .unit-type{display:inline}.roster.dense .unit-button strong{font-size:11px;letter-spacing:0}.roster.dense .unit-button small{font-size:9px}.roster.dense .skill{font-size:inherit;letter-spacing:0}}


:root{--bg:#ede5d0;--panel:#f4edda;--line:#b4a88c;--ally:#37667d;--enemy:#a94331;--gold:#836330;--text:#302f27;--muted:#6f695a}
html,body{background:#ddd4bc;color:var(--text);font-family:'Yu Gothic','Hiragino Kaku Gothic ProN',system-ui,sans-serif}
#app{background:#eee6d0;border-color:#968c72;box-shadow:0 20px 70px #37362735}
#hud,#controls,.controls,.sheet,.sheet-head,.sheet-foot,.meta,.panel,#preparation,#deployBar,#result{background-color:#eee6d0;background-image:radial-gradient(ellipse at 10% 0,#faf5e5aa,transparent 65%),repeating-linear-gradient(94deg,#927d4810 0,#927d4800 1px,#927d4800 8px);color:#302f27;border-color:#b7ac92}
#hud{background:#eae1cb;border-bottom:2px solid #746b53}
#battleWrap{background:#d6d0b9;background-image:linear-gradient(90deg,#a5a88d20,transparent 35%,#b2a88820)}
.sheet-head{border-bottom:1px solid #9d9175}.sheet-head h1,.info-box h2{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;color:#302f27;letter-spacing:.09em;font-weight:900}
.eyebrow,#metaEyebrow{color:#9d422f;letter-spacing:.2em}.section-title{color:#443d2e}.section-title span,.micro,.deck-info,.foot-note{color:#72674f}
button{background:#b69352;color:#fff8e6;border-color:#897246;border-radius:4px;box-shadow:none}
button.secondary,.preset-grid button,.unit-tabs button,select{background:#e5dcc5;color:#484433;border:1px solid #afa186;border-radius:3px}
button:focus-visible,select:focus-visible{outline:2px solid #356c88;outline-offset:2px}
button:disabled{opacity:.5}button[aria-pressed=true],.unit-tabs button[aria-selected=true]{background:#d7e0d8;color:#254958;border-color:#4d6d76}
.sheet-head h1{font-size:26px}.meta .sheet-head{padding-top:24px}.meta .sheet-head h1{font-size:30px;letter-spacing:.15em}
.adjutant,.talk-box,.info-box{background:#f6efdc;border:1px solid #afa083;border-radius:4px;color:#37392e;box-shadow:2px 3px 0 #645b3c10}
.adjutant p,.talk-box p,.info-stats,.info-skills p,.info-strat p,.info-lore{color:#464334}.adjutant p b,.talk-box b{color:#626e65}
.adjutant-face{border-radius:3px;background:#5d6b5b;color:#faf0d8;border:1px solid #354b43;font-family:'Yu Mincho',serif}
.home-stats{color:#6e6550}.home-stats b{color:#8d4935}
.home-grid{gap:14px}.home-cmd{position:relative;overflow:hidden;background:linear-gradient(115deg,#f7f0da,#e4d8bb);border:1px solid #a99b7c;min-height:128px;border-radius:2px;box-shadow:2px 3px 0 #5b513318}
.home-cmd:after{content:'';position:absolute;right:-24px;bottom:-42px;width:104px;height:104px;border:10px solid #515d4d0a;border-radius:50%;transform:rotate(-23deg);pointer-events:none}
.home-cmd b{font-family:'Yu Mincho',serif;font-size:23px;color:#3d4234;letter-spacing:.12em}.home-cmd small{color:#766b52;font-size:11px;line-height:1.8}
.home-cmd[data-home=expedition]{background:linear-gradient(130deg,#526751,#324b43);border-color:#314638}.home-cmd[data-home=expedition] b{color:#f6e5bc}.home-cmd[data-home=expedition] small{color:#e0dac5}
.army,.research,.mock,.settle,.opponent{background:#e9dfc6;border-color:#b0a17e;color:#444032;border-radius:4px}
.army-head b,.research-head b,.settle b,.story-card b{color:#82562d}.army p,.research p,.lead,.story-card,.research .research-use,.opponent p{color:#55513f}.army-head small,.research-head small,.mock small,.gambit-slot small{color:#746b58}
.card-tile{background:#f3ecd8;color:#34362c;border-color:#b4a889;border-radius:3px}.card-tile.selected{background:#dce3d4;border-color:#6d7b64}
.card-tile small,.card-top,.card-stats{color:#6b6654}.card-strat{color:#895c26}.card-top em{background:#d6c9a9;color:#514837}.card-top em.rarity-R{background:#5c7880;color:#fff7e4}.card-top em.rarity-SR{background:#9f7534;color:#fff7df}
.card-tile.realm-lumina{border-left-color:#abb6a4}.card-tile.realm-varga{border-left-color:#af4630}.card-tile.realm-nox{border-left-color:#605570}
.map-node{background:#f3edd9;color:#363d30;border-color:#b6aa8c;border-radius:3px}.map-node small{color:#766d58}.map-step{color:#827861}.map-row.current .map-step{color:#a04c32}.map-row.current .map-node{border-color:#9a6343;box-shadow:inset 0 0 0 1px #9a63432a}.map-node.node-elite b,.map-node.node-boss b{color:#a2412d}.map-node.chosen{background:#e1e7d3;border-color:#75876d}
.castle-line{color:#655b47}.castle-line>i,.bar,.morale-bar{background:#d2c6a7;border-color:#a99d7f}.castle-line>i>i,#allyFill{background:#4d7883}#enemyFill{background:#b65d43}
#timer{color:#4d432c;background:#f1e7cc;border-color:#948265;border-radius:4px;font-family:'Yu Mincho',serif}
#timer.paused{background:#4d5844;color:#f1e7cc}#pause,#speed,#menu{background:#e0d5b9;color:#433f31;border-color:#9f9274;border-radius:4px}
#message,#battleHint{background:#ede5d0ed;color:#55513e;border-color:#b2a385;border-radius:3px}
.roster,.bottom,#bottom{background:#e6dcc3;border-color:#b3a488}.unit-card{background:transparent}.unit-button{background:#f1e9d2;color:#3d4537;border-color:#aa9d7f;border-radius:4px}.unit-button strong{color:#3a5159}.unit-button small{color:#6b6852}.unit-button[aria-pressed=true]{background:#d8e0d4;border-color:#487185;box-shadow:inset 0 0 0 1px #487185}
.mini-hp{background:#d3c9af}.mini-hp i{background:#748762}.skill{background:#e0d4b8;color:#685338;border-color:#a79672;border-radius:3px}.skill.ready{background:#efe1b8;color:#5f4120;border-color:#93703c}.skill.active{background:#d4dfc7;color:#425539}.skill small{color:inherit}
.morale,.morale em,#moraleValue{color:#77532f}.morale-deck{color:#706851}#moraleFill{background:#a48540}.treasure{background:#e3d5b4;color:#6d4c26;border-color:#9b7b43;border-radius:4px}.treasure small{color:#766044}
.rail button{background:#eee5ceeb;color:#395561;border-color:#9e9d83;border-radius:4px}.rail button.warn{color:#9a402e;border-color:#b07056}.rail button small{color:inherit}.rail button:disabled{opacity:.38}.rail .rail-title{color:#5f6251}
#pauseLayer{background:#ded3b066;color:#383f34;text-shadow:0 1px #f8efd9}
.info-strat{background:#e7d8af;border-color:#bda570}.info-strat b{color:#79501e}.info-strat small{color:#7b6a48}.info-lore,.bond-line{color:#6b644e;border-color:#a99467}.info-note{background:#dfe8d2;color:#4c663f}.price-tag{color:#8b5929}
#eventCut .ev-word,#eventCut.ally .ev-word{color:#9e3628;-webkit-text-stroke:.5px #422d22;text-shadow:2px 3px #e8dcc0}.ev-name{background:#2c362ce8;color:#f0e5c8;border-color:#716f55}.ev-portrait{background:#e0d2aa;border-color:#655c3e;box-shadow:none}
.cutin,.cutin-card,#cutin{border-color:#8e7e56}.result-score,.report-tip,.stat-line,.chart-key,.castle-chart figcaption,.chart-tip{color:#655a43}
#topbar,#resultCard,.report-tip{background:#e9dfc5;color:#473f2e;border-color:#ad9d79}.stage-tag,.phase-label,.result-log,.result-score small{color:#71634b}.sheet-head p,.sheet-foot p,.history-orders,.help,.summary-line,.rule-note{color:#6c634e}.rule{background:#e6dcc1;border-color:#ac9d7b}.rule select,.team-setting select{background:#f0e7d0;color:#424432;border-color:#aa9977}.rule-num{background:#b6a06c;color:#fff4d8}.info-box h2{color:#34392f}
.meta.ink-home .sheet-head{position:relative;padding-bottom:0}.meta.ink-home .sheet-head:before{content:'八洲';position:absolute;right:23px;top:29px;font:700 13px/1.4 'Yu Mincho',serif;writing-mode:vertical-rl;letter-spacing:.2em;color:#9c4833;border:1.5px solid #9c4833;padding:5px 4px;transform:rotate(3deg)}
#treasure.ready{background:#b39458;color:#fff5d8;border-color:#806334;box-shadow:inset 0 0 0 1px #e4cea155;animation:none}#treasure.ready small{color:#fcf0d0}.rail button.auto{background:#444d40;color:#ede5ce;border-color:#69735d}.rail button.active,.rail.overlay button.active{background:#536c52;color:#f5eedc;border-color:#8b9f72}.rail.overlay button{background:#e9e0c8ed}
@media(max-height:650px){.meta.ink-home .sheet-head:after{height:76px}.meta.ink-home .sheet-head{padding-top:12px}.meta.ink-home .sheet-head h1{font-size:26px}}
#unitDescription,.rule-tip,.history-item,.history-empty,details{color:#6c624d}.deck-info b,.rule-number,#storageStatus{color:#876031}.rule label{color:#6c674f}.rule-up{background:#d4c5a2;color:#5e5136}.gambit-slot{border-color:#b6a585}.story-card p,.treasure-tile .treasure-lore{color:#756b55}
.unit-table tr.mvp td{background:#d8c89a;color:#2a2418}.unit-table tr.mvp em{color:#7a3a1e;border-color:#7a3a1e}
.home-cmd b{white-space:nowrap}.home-cmd[data-home=expedition] b{font-size:clamp(16px,5.3vw,23px);letter-spacing:.04em}

button[aria-pressed=false]{background:#e5dcc5!important;color:#484433!important;border-color:#afa186!important}
button[aria-pressed=true],.unit-tabs button[aria-selected=true]{background:#2d5b7c!important;color:#f3f7fb!important;border-color:#1c3d56!important}
button[aria-pressed=true] *,.unit-tabs button[aria-selected=true] *{color:#eef4f9!important}
.unit-button[aria-pressed=true]{background:#2d5b7c;border-color:#1c3d56;box-shadow:inset 0 0 0 1px #1c3d56;color:#f3f7fb}
.unit-button[aria-pressed=true] strong,.unit-button[aria-pressed=true] small,.unit-button[aria-pressed=true] span{color:#eef4f9}
.card-tile.selected{background:#d4e1ea;border-color:#1f4f73;box-shadow:0 0 0 2px #1f4f73}
.opponent[hidden]{display:none!important}
#deployBar p{color:#4f4836!important}
.skill:disabled,#treasure:disabled{opacity:.72}

.card-tile.realm-kuni{border-left-color:#8f7238}

.rule-zero{opacity:.85}.rule-zero p{margin:0;font-size:12px;line-height:1.7}.enemy-gambit summary{cursor:pointer;font-size:13px}.enemy-gambit p{font-size:11px;line-height:1.75;margin:.4em 0}

.armament{margin-top:18px}.armament h2{margin:14px 0 8px}.armament .preset-row{display:flex;flex-wrap:wrap;gap:6px}.armament .preset-row button{min-height:40px;padding:6px 10px}.armament .unit-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.armament-rules{display:grid;gap:6px}

@font-face{font-family:YashimaBrush;src:url(/static/935ea3502a757f77b3b250dd8daa7444238a20176651cc117dac52c04b640e33.woff2) format('woff2');font-weight:400;font-display:swap}
:root{--brush:YashimaBrush,"HGS行書体","Yu Mincho",serif;--ink:#353b31;--seal:#99432d}
#eventCut .ev-word{font-family:var(--brush);font-weight:400;transform:rotate(-5deg) scale(1.04);-webkit-text-stroke:.4px #2d281e;letter-spacing:.01em;text-shadow:2px 3px 0 #efe5c9,4px 5px 0 #40382655}
#metaTitle,#sheetTitle,.ink-dialog h2,.ev-name,.home-cmd b{font-family:var(--brush);font-weight:400}
#sheetTitle{font-size:clamp(24px,5vw,36px);margin:12px 0 0}
.section-title,.prep-treasures h2,.prep-fold>summary{position:relative}
.prep-fold>summary::after,.prep-treasures h2::after{content:"";display:block;height:3px;background:linear-gradient(93deg,#444b37c9,#444b3755 65%,transparent);clip-path:polygon(0 22%,37% 0,67% 38%,100% 60%,66% 74%,26% 100%,0 75%);margin-top:8px}
.map-node{position:relative;isolation:isolate;overflow:visible!important}
.map-node.chosen::after{content:"";position:absolute;inset:-6px;z-index:2;pointer-events:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 100' preserveAspectRatio='none'%3E%3Cpath d='M171 12C121-2 32 4 12 35C-9 73 42 95 110 93C179 91 201 59 188 33C183 21 173 16 159 13' fill='none' stroke='%239f432e' stroke-width='5' stroke-linecap='round' opacity='.88'/%3E%3Cpath d='M166 8C95-6 24 11 10 42C-1 71 41 89 89 91M181 23C208 59 174 98 101 96' fill='none' stroke='%239f432e' stroke-width='1.8' opacity='.52'/%3E%3C/svg%3E") center/100% 100% no-repeat}
.map-node.chosen{background:#dfd4b8!important;border-color:transparent!important}.map-row.past .map-step{color:var(--seal);font-family:var(--brush);font-size:20px}
.map-row.current .map-step{background:var(--seal);color:#fff6dc;transform:rotate(-7deg);border-radius:3px}
.unit-tabs [aria-selected=true]{box-shadow:inset 0 -3px var(--seal);border-color:#1c3d56!important;background:#2d5b7c!important;color:#f3f7fb!important}
.ink-icon{display:inline-flex;width:24px;height:28px;flex:0 0 24px;vertical-align:middle;color:#655431}.ink-icon svg{width:100%;height:100%}
.reward-mark{display:inline-flex;align-items:center;gap:4px;font-size:12px;line-height:1.4;white-space:normal}
.prep-rewards{display:flex;align-items:center;flex-wrap:wrap;gap:5px 12px;margin-top:6px}.prep-rewards>small{font-size:10px;color:#6d6854}
.prep-castle{display:flex;align-items:center;gap:8px;font-size:12px;min-width:0;flex:1}.prep-castle b{font-variant-numeric:tabular-nums;font-size:13px;min-width:38px;text-align:right}
.ink-gauge{position:relative;height:10px;flex:1;background:#a49c8050;border-radius:1px;overflow:hidden;min-width:50px;transform:rotate(-.2deg)}
.ink-gauge i{height:100%;display:block;background:linear-gradient(90deg,#2e5360,#618475);clip-path:polygon(0 3%,96% 0,100% 20%,99% 76%,95% 94%,0 100%)}
#preparation .sheet-head{padding-top:14px;padding-bottom:12px}#sheetEyebrow{font-size:10px}
#preparation .sheet-body{padding-top:12px}#preparation .sheet-body>h2{display:none}
.prep-council{width:100%;min-height:44px;margin-bottom:12px!important}.opponent summary{cursor:pointer;font-size:13px;font-weight:700}.opponent{padding:10px!important;margin-bottom:10px!important}
.prep-treasures{margin:14px 0}.prep-treasures h2{font-family:var(--brush);font-size:22px;margin:0 0 8px}
#treasures button{display:inline-flex;align-items:center;min-height:44px}#treasureText{font-size:11px;margin:4px 0 0}
.prep-fold{border:0;border-top:1px solid #82765945;padding:13px 0;margin:0!important}.prep-fold>summary{font-size:19px;font-family:var(--brush);cursor:pointer;min-height:36px;list-style-position:inside}.prep-fold>summary small{float:right;font:12px/30px system-ui;color:#766a51}
.prep-fold[open]>summary{margin-bottom:12px}.prep-fold details{margin-top:14px}#teamRules{display:block}.rail-summary{font-size:12px;color:#6a624e}#openInstructions{width:100%;min-height:44px}
.unit-tabs{flex-wrap:nowrap!important;overflow:auto;max-width:100%;padding:3px 1px 9px}.unit-tabs button{flex:0 0 auto;white-space:nowrap;min-height:44px}
.rule{grid-template-columns:24px minmax(0,1fr) 36px!important}.rule-fields{min-width:0}.rule-controls{display:flex;flex-direction:column;gap:4px}.rule-controls button{min-width:34px;width:34px!important;height:38px;padding:0!important;font-size:18px}.rule select{width:100%;min-width:0;min-height:42px}
.add-order{width:100%;margin-top:8px!important;min-height:44px}.manual-notice{border-left:3px solid var(--seal);padding:12px;background:#e9ddbf;font-size:13px;line-height:1.7}
.ink-dialog{color:var(--ink);border:1px solid #8d7d56;background:#eee5cf;max-width:980px;width:calc(100% - 20px);max-height:calc(100dvh - 20px);padding:16px;box-sizing:border-box;border-radius:3px;overflow:auto;box-shadow:0 15px 70px #0007}
.ink-dialog::backdrop{background:#20271de0}.ink-dialog header{display:flex;align-items:center;justify-content:space-between;gap:8px}.ink-dialog h2{font-size:28px;margin:0}.ink-dialog header button{min-height:44px;padding:6px 16px}.instruction-tip{font-size:12px;color:#6a624e;line-height:1.6}
.instruction-body{display:grid;grid-template-columns:minmax(90px,1fr) minmax(100px,3fr) minmax(90px,1fr);gap:8px;align-items:start}.instruction-field{min-width:0;border:1px solid #8a7d5540;background:#cfc4a6}.instruction-field canvas{position:static;inset:auto;width:100%;max-width:100%;height:auto;display:block}.instruction-field>span{display:block;text-align:center;font-size:10px;line-height:1.4;padding:5px;color:#494834}
.instruction-rail{display:flex;flex-direction:column;gap:8px;min-width:0}.instruction-rail>b{font-family:var(--brush);font-size:19px;text-align:center}
.instruction-slot{background:#f6efd9;border:1px solid #9b8a64;display:grid;grid-template-columns:24px minmax(0,1fr) 24px;align-items:center;min-height:54px;border-radius:2px}.instruction-slot>span{font-size:12px;line-height:1.3;overflow-wrap:anywhere;text-align:center}
.instruction-slot button{background:transparent!important;color:#544b37!important;border:0!important;box-shadow:none!important;padding:0!important;border-radius:0;width:24px;min-height:52px;font-size:22px}.drag-handle{touch-action:none;cursor:grab;user-select:none}.instruction-slot.dragging{opacity:.6;outline:2px solid #96773e}.instruction-slot.drop-target{border-top:4px solid var(--seal)}
.add-slot{width:100%;min-height:44px;font-size:24px!important;background:#e2d5b6!important;color:#50442d!important;border:1px dashed #8b7551!important}.fixed-command{font-size:10px;color:#74694d;text-align:center;line-height:1.5}.command-picker{display:flex;flex-direction:column;gap:7px;font-size:12px}.command-picker button{min-height:44px;white-space:normal;padding:5px;font-size:12px}
.reserve-tools{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.reserve-tools input{grid-column:1/-1}.reserve-tools input,.reserve-tools select{color:var(--ink);background:#f5ecd5;border:1px solid #aaa083;border-radius:3px;padding:8px;min-width:0;width:100%;min-height:44px;font:13px system-ui}.reserve-count{font-size:12px;color:#776b51}.reserve-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px}.reserve-grid .card-tile{width:100%;min-width:0!important}.reserve-pages{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:12px 0}.reserve-pages button{min-height:44px}.council-total{font-size:14px;border-bottom:3px solid #77754c66;padding-bottom:10px}.castle-line{flex-wrap:wrap;gap:12px}.castle-line>.prep-castle{flex:1 1 190px}.castle-line>.reward-mark{flex:0 0 auto}
.rail{max-height:80%;overflow-y:auto;overscroll-behavior:contain}
@media(max-width:520px){.ink-dialog{padding:10px;width:calc(100% - 8px);max-height:calc(100dvh - 8px)}.ink-dialog h2{font-size:25px}.instruction-body{gap:4px;grid-template-columns:minmax(82px,1fr) minmax(94px,1.35fr) minmax(82px,1fr)}.instruction-slot{grid-template-columns:22px minmax(0,1fr) 22px;min-height:62px}.instruction-slot button{width:22px;min-height:60px}.instruction-slot>span{font-size:11px}.instruction-rail>b{font-size:17px}.reserve-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.rule-fields{grid-template-columns:1fr!important}.rule-controls button{height:44px}.prep-rewards{gap:3px 9px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.council-total{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.council-total .retreat-run{margin-left:auto;width:auto;min-height:0;padding:5px 12px;font-size:12px}

.ybo { position:fixed; inset:0; z-index:2147483000; overflow:hidden; background:#151410; isolation:isolate; touch-action:none; outline:none; }
.ybo-gate { position:absolute; top:0; bottom:0; left:50%; width:max(100vw,150vh); transform:translateX(-50%); perspective:1400px; background:#fff; }
.ybo-gate[hidden] { display:none; }
.ybo-leaf { position:absolute; top:0; width:50%; height:100%; overflow:hidden; background:repeating-linear-gradient(90deg,#27231e 0 12%,#131310 12% 13%); backface-visibility:hidden; will-change:transform; }
.ybo-left { left:0; transform-origin:left center; }
.ybo-right { right:0; transform-origin:right center; }
.ybo-door-image { position:absolute; top:0; width:200%; height:100%; max-width:none; object-fit:fill; }
.ybo-door-image.left { left:0; }.ybo-door-image.right { right:0; }
.ybo-white { position:absolute; inset:0; z-index:2; background:#fff; opacity:0; pointer-events:none; }
.ybo-title { position:absolute; inset:0; z-index:3; display:flex; align-items:center; justify-content:center; opacity:0; pointer-events:none; background:radial-gradient(ellipse at center,#f6efdbc7,transparent 68%); }
.ybo-title img { display:block; width:min(90vw,690px); height:auto; max-height:80vh; object-fit:contain; filter:drop-shadow(0 0 3px #fff8); }
.ybo-ink { display:block; width:min(96vw,760px); height:auto; max-height:90vh; aspect-ratio:3/2; object-fit:contain; filter:drop-shadow(0 0 2px #fff6); }
.ybo-title span { color:#161510; font:900 clamp(70px,18vw,190px)/1 'YashimaBrush','Yu Mincho',serif; letter-spacing:.08em; }
@supports(height:100dvh) { .ybo-gate { width:max(100vw,150dvh); } }
@media(prefers-reduced-motion:reduce) { .ybo-leaf { will-change:auto; }.ybo-title { transform:none!important; } }
.ybo-skip { position:absolute; right:14px; bottom:max(14px,env(safe-area-inset-bottom)); z-index:4; padding:6px 12px; border-radius:999px; background:#16140fb8; color:#efe5c9; font:600 13px/1.2 'YashimaBrush','Yu Mincho',serif; letter-spacing:.06em; pointer-events:none; }
.ybo-skip[hidden] { display:none; }


#cutin.has-art:not([hidden]){display:flex;flex-direction:column;align-items:stretch;justify-content:center}
.cutin-art{display:block;width:100%;max-height:62%;object-fit:contain;animation:cutinArtIn .32s ease-out}
.cutin-art[hidden]{display:none}
#cutin.has-art .cutin-band{margin-top:-34px;position:relative}
#cutin.enemy .cutin-art{filter:sepia(.55) saturate(1.35) hue-rotate(-12deg)}
@keyframes cutinArtIn{from{opacity:0;transform:scale(1.06)}to{opacity:1;transform:none}}

#eventCut.has-art:not([hidden]){grid-template-columns:1fr;grid-template-rows:1fr auto 1fr;background:#12100c47}
#eventCut.has-art[class] .ev-portrait{grid-column:1;grid-row:2;justify-self:center;align-self:center;margin:0;width:min(96%,460px);height:auto;aspect-ratio:3/2;border-radius:0;overflow:visible;padding:0;background:none;border:0;box-shadow:none;animation:evArtIn .26s ease-out}

#eventCut:not(.has-art) .ev-portrait{display:none}
#eventCut.has-art .ev-portrait b{display:none}
#eventCut.has-art .ev-name{grid-column:1;grid-row:1;align-self:end;margin-bottom:8px}
#eventCut .ev-word:has(.ev-ink){grid-column:1/-1;grid-row:2;justify-self:center;align-self:center;z-index:2;transform:none;animation:none;text-shadow:none;-webkit-text-stroke:0;width:min(96%,460px);line-height:0}
.ev-ink{display:block;width:100%;height:auto;aspect-ratio:5/2;filter:drop-shadow(0 0 2px #f3ead2cc)}
.ev-art{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 3px 8px #0005)}.ev-art[hidden]{display:none}
@keyframes evArtIn{from{opacity:0;transform:scale(1.08)}to{opacity:1;transform:none}}

.cutin-slide{position:absolute;top:8%;bottom:20%;width:min(92%,460px);z-index:3;display:block;pointer-events:none;animation:cutinSlideL .38s cubic-bezier(.2,.8,.2,1) both}
.cutin-slide[hidden]{display:none}
#cutin.ally .cutin-slide{left:0}#cutin.enemy .cutin-slide{right:0;animation-name:cutinSlideR}
.cutin-slide-art{position:absolute;bottom:0;height:112%;width:auto;max-width:72%;object-fit:contain;object-position:50% 100%;filter:drop-shadow(0 6px 14px #000a)}
#cutin.ally .cutin-slide-art{left:4%}#cutin.enemy .cutin-slide-art{right:4%}
.cutin-slide-info{position:absolute;bottom:6%;width:74%;padding:8px 12px 10px;color:#f6efdc;border:2px solid;box-shadow:0 4px 14px #0007}
#cutin.ally .cutin-slide-info{right:2%;background:linear-gradient(90deg,#173451f0,#244d74e6);border-color:#8fb6d8}
#cutin.enemy .cutin-slide-info{left:2%;background:linear-gradient(270deg,#5a1a12f0,#8a2c1ee6);border-color:#e0a98c}
.cutin-slide-name{display:inline-block;font:400 22px/1.2 var(--brush,serif);letter-spacing:.06em}
.cutin-slide-cost{float:right;font-size:11px;margin-top:6px;opacity:.9}
.cutin-slide-text{margin:4px 0 0;font-size:11.5px;line-height:1.55}
.cutin-slide-caster{position:absolute;bottom:calc(6% + 92px);font:400 17px/1.3 var(--brush,serif);color:#f0e5c8;background:#2c362ce8;border:1px solid #716f55;border-radius:6px;padding:4px 12px}.cutin-slide-caster:empty{display:none}#cutin.ally .cutin-slide-caster{border-color:#7fc0ff}
#cutin.ally .cutin-slide-caster{left:3%}#cutin.enemy .cutin-slide-caster{right:3%}
#cutin.has-card .cutin-art{display:none}
#cutin.has-card .cutin-name,#cutin.has-card .cutin-caster,#cutin.has-card .cutin-text{display:none!important}
#cutin.has-card:not([hidden]){display:flex;flex-direction:column;justify-content:flex-end}
@keyframes cutinSlideL{from{opacity:0;transform:translateX(-60%)}to{opacity:1;transform:none}}
@keyframes cutinSlideR{from{opacity:0;transform:translateX(60%)}to{opacity:1;transform:none}}

#eventCut .ev-card{position:absolute;top:8%;bottom:4%;width:min(60%,320px);z-index:0;opacity:.5;pointer-events:none;animation:evCardIn .3s ease-out both}
#eventCut .ev-card[hidden]{display:none}
#eventCut.ally .ev-card{left:2%}#eventCut.enemy .ev-card{right:2%;animation-name:evCardInR}

.cutin-slide-art,#eventCut .ev-card img{-webkit-mask-image:linear-gradient(#000 82%,transparent);mask-image:linear-gradient(#000 82%,transparent)}
#eventCut .ev-card img{width:100%;height:100%;object-fit:contain;object-position:50% 100%;filter:saturate(.85)}
#eventCut .ev-card span{display:none;position:absolute;top:10%;z-index:1;font:400 36px/1 var(--brush,serif);writing-mode:vertical-rl;color:#fff;-webkit-text-stroke:.6px #0008;text-shadow:0 0 8px #000,0 0 2px #000}
#eventCut.ally .ev-card span{right:4%}#eventCut.enemy .ev-card span{left:4%}
#eventCut .ev-word,#eventCut .ev-name,#eventCut .ev-portrait{position:relative;z-index:1}
@keyframes evCardIn{from{opacity:0;transform:translateX(-20%)}to{opacity:.5;transform:none}}
@keyframes evCardInR{from{opacity:0;transform:translateX(20%)}to{opacity:.5;transform:none}}

.adjutant-face{background:#e8dcc0 var(--codex-nagi-art) 53% 11%/470% auto no-repeat!important;color:transparent!important;font-size:0!important}

.talk-box{position:relative;grid-template-columns:1fr;margin-top:125px;border:0!important;border-radius:0!important;background:linear-gradient(#f7f0dcf5,#f1e7cc)!important;box-shadow:0 -10px 24px #0000002e!important}
.talk-box .adjutant-face{position:absolute;z-index:-1;left:-6px;bottom:calc(100% - 32px);width:135px;height:160px;border:0!important;border-radius:0!important;box-shadow:none!important;
  background:var(--codex-nagi-art) 50% 4%/205% auto no-repeat!important;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);pointer-events:none;animation:nagiIn .3s ease-out}
.talk-actions{grid-column:1/-1}
@keyframes nagiIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.cutin-art{animation:none}}

