
.military-card,.military-card *{box-sizing:border-box}

.military-card{--paper:#f5edda;--ink:#313a33;--rule:#beb297;--muted:#6f695a}
.military-card{--house:#607366;--wash:#e1e7dc;position:relative;min-width:0;background:var(--paper);color:var(--ink);border:1px solid var(--rule);box-shadow:0 5px 16px #3a342219;font-family:'Yu Mincho',serif;text-align:left;overflow:hidden}
.military-card[data-realm=varga]{--house:#974633;--wash:#eee0d0}.military-card[data-realm=nox]{--house:#63596e;--wash:#e4dfe6}
.military-card::before{content:'';position:absolute;inset:0 auto 0 0;width:5px;background:var(--house);z-index:1;pointer-events:none}
.military-card[data-rarity=SR]{border-color:#a38a54;box-shadow:0 5px 16px #3a342219,inset 0 0 0 2px #b09a661f}
.military-card[data-rarity=R]::after,.military-card[data-rarity=SR]::after{content:'';position:absolute;top:0;right:0;width:38px;height:38px;background:linear-gradient(45deg,transparent 48%,#59656866 49%,#cbd1cf 64%,#eef0e9 75%,#88928e 100%);pointer-events:none}
.military-card[data-rarity=SR]::after{background:linear-gradient(45deg,transparent 48%,#9c7d414d 49%,#cfb779 66%,#8a6d39 100%)}
.card-head{display:flex;justify-content:space-between;align-items:center;padding:14px 16px 10px;gap:10px;border-bottom:1px solid #b4a88d66}
.family{display:flex;gap:6px;align-items:center;font:11px/1.5 system-ui;color:var(--house);letter-spacing:.12em}.family img{width:18px;height:18px;opacity:.8}
.rarity{font:700 11px/1.2 system-ui;letter-spacing:.09em;color:#706854;border:1px solid #a3987a;padding:4px 6px;flex:none;margin-right:5px}.military-card[data-rarity=SR] .rarity{color:#735720;border-color:#a48a51;background:#d4bd7e26}.military-card[data-rarity=R] .rarity{border:3px double #8c937d;padding:2px 4px}
.art-zone{height:184px;position:relative;background:linear-gradient(112deg,#f7efdd,var(--wash));overflow:hidden}
.watermark{position:absolute;right:-18px;top:12px;width:175px;height:175px;opacity:.065;pointer-events:none}
.art-zone svg{position:absolute;inset:0;width:100%;height:100%;color:var(--house)}
.portrait-glyph{position:absolute;right:13px;bottom:13px;font:10px/1 system-ui;letter-spacing:.13em;color:var(--house);opacity:.55}
.identity{position:relative;display:flex;justify-content:space-between;align-items:flex-end;gap:8px;padding:10px 16px 13px;background:var(--paper);border-top:1px solid #b8a58255}
.identity small{display:block;font:11px/1.5 system-ui;color:#72634d;margin-bottom:4px}.identity h3{font:29px/1.2 YashimaBrush,'Yu Mincho',serif;margin:0;letter-spacing:.06em;overflow-wrap:anywhere}
.cost{min-width:62px;border-left:1px solid #b0a083;padding-left:12px;flex:none;text-align:right}.cost span{display:block;font:10px/1.5 system-ui;color:#625b4b;letter-spacing:.04em}.cost strong{font:700 27px/1.1 system-ui;font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.specs{display:grid;grid-template-columns:1fr 1fr 1fr;margin:0 16px;border-top:2px solid var(--house);border-bottom:1px solid #aba18b;padding:9px 0 10px;gap:0;background:var(--paper)}
.specs>div{display:flex;flex-direction:column;align-items:center;border-right:1px solid #b5ab934d}.specs>div:last-child{border-right:0}.specs dt{font:11px/1.4 system-ui;color:#625d50}.specs dd{margin:0;font:750 37px/1.2 system-ui;font-variant-numeric:tabular-nums;letter-spacing:-.03em}.specs .troop dd{font-size:25px;line-height:1.77;font-family:'Yu Mincho',serif;font-weight:800}
.traits{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin:10px 16px;min-height:24px;font:11px system-ui;color:#625e50}.trait{padding:4px 6px;border:1px solid #b9b098;background:#eae2ce;border-radius:0;color:#454c3e;white-space:nowrap}.empty-trait{font-size:11px;color:#756f61}
.strategy{margin:10px 16px 0;padding:10px 0;border-top:1px solid #bdb29a}.strategy-top{display:flex;align-items:center;gap:8px;justify-content:space-between}.strategy-name{font:700 16px/1.45 'Yu Mincho',serif;overflow-wrap:anywhere}.morale{white-space:nowrap;font:11px/1.3 system-ui;color:#625a43;flex:none}.morale strong{font:700 19px system-ui;margin-left:3px;color:#383f32}.strategy-scope{font:10px system-ui;color:var(--house);margin:3px 0 8px}.effect{font:12px/1.8 system-ui;margin:0;color:#4f5148;overflow-wrap:anywhere}.registry{display:flex;justify-content:space-between;border-top:1px solid #bdb29a66;margin:8px 16px 0;padding:9px 0;font:9px system-ui;color:#7e735e;letter-spacing:.12em}
.compact{padding:11px 10px 9px;box-shadow:none;cursor:pointer;width:100%;appearance:none;font:inherit;min-height:178px}.compact .mini-top{display:flex;justify-content:space-between;gap:4px;align-items:center}.compact .family{font-size:9px;letter-spacing:0}.compact .family img{width:13px;height:13px}.compact .rarity{font-size:9px;padding:2px 3px;margin:0}.compact h3{font:700 16px/1.4 'Yu Mincho',serif;margin:6px 0;overflow-wrap:anywhere}.compact .mini-cost{font:11px system-ui;display:flex;justify-content:space-between;align-items:baseline}.compact .mini-cost strong{font:750 22px system-ui;font-variant-numeric:tabular-nums}.compact .specs{margin:7px 0 0;padding:5px 0 6px}.compact .specs dt{font-size:9px}.compact .specs dd{font-size:25px}.compact .specs .troop dd{font-size:17px;line-height:1.77}.compact .mini-bottom{font:10px/1.6 system-ui;margin-top:6px;display:flex;flex-wrap:wrap;gap:3px;justify-content:space-between;color:#55594d}.compact .mini-strategy{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;font:11px/1.5 'Yu Mincho',serif;margin-top:5px;padding-top:5px;border-top:1px solid #c5baa077}.compact:hover{background:#eae9d8}.compact:focus-visible{outline:3px solid #50694f;outline-offset:2px}.compact:active{transform:translateY(1px)}


.military-card{--pattern:var(--codex-shared-image10)}
.military-card[data-realm=varga]{--pattern:var(--codex-shared-image11)}
.military-card[data-realm=nox]{--pattern:var(--codex-shared-image12)}
.art-zone::before{content:'';position:absolute;inset:0;background-image:var(--pattern);background-size:88px;opacity:.085;mask-image:linear-gradient(110deg,#000,transparent 90%)}
.head-values{display:flex;align-items:center;gap:14px}.card-head{padding-top:10px;padding-bottom:10px}.head-values .cost{min-width:0;padding-left:10px;display:flex;align-items:center;gap:7px}.head-values .cost strong{font-size:24px}.head-values .cost span{font-size:9px}
.name-block{min-width:0;flex:1}.identity{align-items:flex-end;min-height:81px}.identity .traits{margin:0 0 2px;justify-content:flex-end;gap:4px;max-width:94px;flex:0 0 auto}.identity .trait{padding:4px 5px;font-size:10px}.identity h3{font-size:27px}.identity .empty-trait{font-size:9px}
.type-symbol{width:24px;height:34px;flex:none;color:var(--house)}.specs .troop dd{display:flex;align-items:center;justify-content:center;gap:3px;line-height:1.2;font-size:21px;min-height:44px}
.strategy{display:grid;grid-template-columns:minmax(0,1fr)82px;gap:12px;min-height:146px}.strategy-aside{border-left:1px solid #c4b99d77;padding-left:8px;text-align:center}.morale{display:block}.morale strong{font-size:24px}.range-diagram{margin:6px 0 0}.range-diagram svg{display:block;width:100%;height:auto}.range-diagram figcaption{font:9px/1.5 system-ui;color:#5b5d4f;overflow-wrap:anywhere}.range-diagram figcaption span{display:block;color:#77715f;font-size:8px}
.mini-identity{display:flex;align-items:center;justify-content:space-between;gap:4px;min-height:43px}.mini-identity h3{min-width:0;flex:1}.compact .traits{margin:0;gap:2px;justify-content:flex-end;max-width:42px;flex:none}.compact .trait{padding:1px 3px;font:10px/1.3 system-ui}.compact .empty-trait{display:none}.compact .type-symbol{width:17px;height:24px}.compact .specs .troop dd{gap:1px;font-size:17px;min-height:30px}.compact .mini-top{position:relative}.compact .mini-top::before{content:'';position:absolute;inset:-11px -10px -5px;background:var(--pattern) 0 0/70px;opacity:.045;pointer-events:none}


.art-zone::after{content:'';position:absolute;inset:0;background:var(--codex-shared-image17) right bottom/43% auto no-repeat;opacity:.7;pointer-events:none}
.cloud-study{margin:26px 0 34px;padding:18px;background:#f1e7d0;border:1px solid #bcab88}
.cloud-study .section-head{margin-bottom:12px}.cloud-study .legend{margin-bottom:0}
.cloud-art{position:relative;overflow:hidden;isolation:isolate;max-width:820px;margin:auto;background:#eee2c8;border:1px solid #b6a27c}
.cloud-art>img{display:block;width:100%;height:auto}
.cloud-art::before,.cloud-art::after{content:'';position:absolute;pointer-events:none;background:var(--codex-shared-image17) center/contain no-repeat;aspect-ratio:320/220}
.cloud-art::after{right:-1px;bottom:-1px;width:39%}
.cloud-art::before{left:-1px;top:-1px;width:27%;transform:rotate(180deg);opacity:.78}
@media(max-width:670px){.cloud-study{padding:10px}.cloud-study h2{font-size:24px}}
.military-card[data-rarity=SR] .rarity{border:3px double #a48a51;padding:2px 4px}
.military-card[data-rarity=R]{border-color:#969f97}
.military-card[data-rarity=R] .rarity{border-color:#86948e;color:#52635e;background:#cbd3cd33}
.compact[data-rarity=R]::after,.compact[data-rarity=SR]::after{width:23px;height:23px}
.compact[data-rarity=R] .rarity,.compact[data-rarity=SR] .rarity{padding:0 2px}
.military-card::before{opacity:.8;clip-path:polygon(0 0,85% 0,70% 12%,100% 26%,65% 43%,90% 57%,55% 72%,85% 89%,65% 100%,0 100%)}
.card-head,.specs,.strategy,.registry,.compact .mini-strategy{position:relative}
.card-head{border-bottom-color:transparent}
.specs{border-top-color:transparent;border-bottom-color:transparent}
.strategy,.registry,.compact .mini-strategy{border-top-color:transparent}
.card-head::after,.specs::before,.specs::after,.strategy::before,.registry::before,.compact .mini-strategy::before{content:'';position:absolute;left:0;right:0;height:7px;background:#535747;mask:url('data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20600%2018%22%20preserveAspectRatio%3D%22none%22%3E%0A%20%20%3Cdefs%3E%3Cmask%20id%3D%22dry%22%20maskUnits%3D%22userSpaceOnUse%22%20x%3D%220%22%20y%3D%220%22%20width%3D%22600%22%20height%3D%2218%22%3E%3Crect%20width%3D%22600%22%20height%3D%2218%22%20fill%3D%22white%22%2F%3E%3Cpath%20d%3D%22M28%207%2091%207M135%207%20220%208M304%208%20381%209M436%209%20479%209M521%2010%20563%2010%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%22.75%22%20opacity%3D%22.65%22%2F%3E%3C%2Fmask%3E%3C%2Fdefs%3E%0A%20%20%3Cg%20mask%3D%22url%28%23dry%29%22%3E%0A%20%20%3Cpath%20d%3D%22M3%208%2016%204%2048%205%2077%203%20116%205%20160%204%20211%206%20272%205%20318%206%20386%206%20444%208%20504%207%20549%209%20589%209%20597%2011%20554%2012%20509%2011%20463%2013%20414%2011%20354%2012%20291%2010%20246%2012%20203%2010%20150%2011%20101%209%2069%2011%2035%209%2014%2011Z%22%20fill%3D%22%23000%22%20opacity%3D%22.8%22%2F%3E%0A%20%20%3Cpath%20d%3D%22M14%2013%2096%2012%20174%2013%20249%2012%20309%2014%20376%2013%20421%2014%20502%2013%20571%2014%20534%2015%20450%2015%20368%2016%20273%2015%20194%2015%20115%2014%2062%2015Z%22%20fill%3D%22%23000%22%20opacity%3D%22.28%22%2F%3E%0A%20%20%3Cpath%20d%3D%22M7%205%2040%203%2069%204M91%203%20148%204%20191%203M338%204%20381%205%20434%204M541%207%20586%208%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%22.8%22%20opacity%3D%22.3%22%2F%3E%0A%20%20%3C%2Fg%3E%0A%3C%2Fsvg%3E%0A') center/100% 100% no-repeat;pointer-events:none}
.card-head::after{bottom:-3px;opacity:.3}
.specs::before{top:-5px;height:9px;background:var(--house);opacity:.9}
.specs::after{bottom:-3px;opacity:.35;transform:scaleX(-1)}
.strategy::before{top:-4px;height:6px;opacity:.3}
.registry::before{top:-3px;height:5px;opacity:.24;transform:scaleX(-1)}
.compact .mini-strategy::before{top:-2px;height:5px;opacity:.32}
.specs>div{position:relative;border-right-color:transparent}
.specs>div:not(:last-child)::after{content:'';position:absolute;right:0;top:3px;bottom:2px;width:2px;background:linear-gradient(#80775b11,#80775b55 30%,#80775b33 70%,transparent);clip-path:polygon(20% 0,75% 8%,55% 35%,90% 53%,60% 76%,45% 100%,0 84%,15% 60%,0 33%);pointer-events:none}


.military-card{border:0;isolation:isolate;background:#f4ead4;box-shadow:0 8px 22px #39342020}.military-card::before,.military-card::after{display:none}.military-card[data-rarity=SR]{border:0;box-shadow:0 8px 24px #6c522525}.card-head{padding:15px 20px 11px;background:#f3e8ce}.identity{padding-left:20px;padding-right:20px;background:#f7efdc}.specs{margin-left:20px;margin-right:20px;background:#f7efdc}.strategy{margin-left:20px;margin-right:20px;isolation:isolate}.registry{margin-left:20px;margin-right:20px;padding-bottom:16px}.strategy::after{content:'';position:absolute;right:0;bottom:8px;width:95px;height:95px;background:var(--house-crest) center/contain no-repeat;opacity:.035;z-index:-1;pointer-events:none}.ink-frame{position:absolute;inset:0;width:100%;height:100%;z-index:10;pointer-events:none}.art-zone{height:310px;margin:0 8px;background-color:#eae0c8}.card-portrait{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 25%;z-index:1;mask-image:linear-gradient(#000 88%,transparent)}.art-zone .watermark{z-index:2;opacity:.045}.art-zone .landscape{display:none}.art-zone::before{content:'';position:absolute;left:-5px;top:-4px;width:24%;height:32%;background:var(--codex-shared-image17) center/contain no-repeat;transform:rotate(180deg);opacity:.4;z-index:3;pointer-events:none}.art-zone::after{z-index:3;background-size:30% auto;opacity:.58}.card-head::after{height:5px;opacity:.25}.specs::before{height:6px;opacity:.68}.strategy::before{height:4px;opacity:.3}.registry::before{height:4px}.military-card[data-realm=lumina]{--house-crest:var(--codex-shared-image0)}.military-card[data-realm=varga]{--house-crest:var(--codex-shared-image1)}.military-card[data-realm=nox]{--house-crest:var(--codex-shared-image2)}.compact{background-image:var(--codex-shared-image18);background-size:100% 100%;padding:14px;min-height:182px}.compact[data-rarity=R]{background-image:var(--codex-shared-image19)}.compact[data-rarity=SR]{background-image:var(--codex-shared-image20)}.compact .specs{margin:8px 0}.compact .mini-top{padding-right:12px}.rarity{background:#f5ead0;margin-right:13px}.head-values{padding-right:9px}.effect{position:relative;z-index:1}.identity h3{font-size:28px}.strategy-name{font-size:16px}.compact:hover{background-color:#eee5ce}@media(max-width:670px){.art-zone{height:310px}.compact{padding:12px}.compact h3{font-size:16px}}

.compact .mini-bottom{display:flex;flex-wrap:nowrap;align-items:center;gap:5px;margin-top:7px;font-size:10px}.compact .mini-skill-line{display:flex;align-items:center;gap:5px;flex:1;min-width:0}.compact .mini-kind{flex:none;color:var(--house);font-size:10px}.compact .mini-strategy{display:block;min-width:0;margin:0;padding:0;border:0;font:11px/1.5 'Yu Mincho',serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.compact .mini-strategy::before{display:none}.compact .mini-morale{flex:none;white-space:nowrap}.compact{padding-top:12px;padding-bottom:11px}@media(max-width:670px){.compact{min-height:182px;padding:11px}.compact .mini-skill-line{gap:4px}}


.military-card:not(.compact){padding-bottom:9px}.military-card:not(.compact) .strategy{padding-bottom:4px}


.main-wagara{position:absolute;inset:4px;background:var(--pattern) 0 0/76px;opacity:.12;pointer-events:none;mask-image:linear-gradient(90deg,#000,transparent 13%,transparent 87%,#000);z-index:2}
.military-card:not(.compact) .card-head::before{content:'';position:absolute;inset:0;background:var(--pattern) 0 0/76px;opacity:.085;pointer-events:none;mask-image:linear-gradient(90deg,#000,transparent 80%)}
.military-card:not(.compact) .identity::before{content:'';position:absolute;inset:0;background:var(--pattern) 0 0/76px;opacity:.06;pointer-events:none;mask-image:linear-gradient(90deg,#000,transparent 75%)}
.compact .mini-strategy{font-weight:700;color:#353d33;font-size:11px}


.military-card:not(.compact) .identity::before{display:none}


.card-head{gap:10px;padding:12px 18px;min-height:64px}.card-head .family{flex:none;letter-spacing:0;font-size:10px;max-width:75px}.card-head .head-name{flex:1;min-width:0;position:relative}.head-name small{display:block;font:10px/1.5 system-ui;color:#776b52}.head-name h3{font:25px/1.25 YashimaBrush,'Yu Mincho',serif;margin:1px 0 0;overflow-wrap:anywhere}.card-head .rarity{margin-right:8px}
.specs{grid-template-columns:1.15fr .68fr .68fr .8fr 1.2fr;padding:10px 0;margin-top:10px}.specs dd{font-size:31px}.specs .troop dd{font-size:18px;line-height:1.8;gap:3px}.specs .type-symbol{width:18px;height:28px}.specs .spec-cost dd{font-size:25px;line-height:1.5}.specs .spec-traits dd{font-size:10px;display:block;width:100%;padding:2px 4px}.spec-traits .traits{margin:0;min-height:30px;gap:3px;justify-content:center;align-content:center}.spec-traits .trait{padding:2px 3px;font-size:10px}.spec-traits .empty-trait{font-size:10px}
.compact{min-height:140px}.compact .mini-top{gap:5px;min-height:38px;align-items:center;padding-right:5px}.compact .family{font-size:8px;max-width:36px;flex-wrap:wrap;gap:1px;flex:none}.compact .family img{width:11px;height:11px}.compact .mini-name{flex:1;min-width:0}.mini-name small{display:block;font:8px/1.4 system-ui;color:#776b52;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.compact .mini-name h3{margin:2px 0;font-size:14px;line-height:1.3}.compact .rarity{flex:none;margin:0;font-size:8px}.compact .specs{grid-template-columns:.95fr .6fr .6fr .75fr .9fr;margin-top:8px}.compact .specs dd{font-size:21px}.compact .specs dt{font-size:8px}.compact .specs .troop dd{font-size:13px;gap:0}.compact .specs .type-symbol{width:11px;height:21px}.compact .specs .spec-cost dd{font-size:17px;line-height:1.7}.compact .specs .spec-traits dd{padding:2px 0}.compact .spec-traits .traits{gap:2px;max-width:none;margin:0;min-height:27px;justify-content:center}.compact .spec-traits .trait{font-size:8px;padding:1px 2px}.compact .spec-traits .empty-trait{font-size:8px}.compact .mini-bottom{margin-top:6px}@media(max-width:670px){.compact{min-height:140px}.compact .mini-name h3{font-size:14px}}


.top-cost{flex:none;text-align:center;position:relative;min-width:32px}.top-cost small{display:block;font:9px/1.5 system-ui;color:#766b54}.top-cost strong{display:block;font:700 23px/1.2 system-ui;font-variant-numeric:tabular-nums}.card-head{gap:8px}.specs{grid-template-columns:1.15fr .75fr .75fr 1.2fr}.compact .specs{grid-template-columns:1fr .65fr .65fr 1fr}.compact .mini-top{gap:4px}.compact .top-cost{min-width:24px}.compact .top-cost small{font-size:7px}.compact .top-cost strong{font-size:16px}.compact .mini-top .family{max-width:28px}.compact .mini-name h3{font-size:13px}.compact .mini-name small{font-size:8px}.compact .rarity{font-size:8px}

.strategy-heading{display:flex;align-items:baseline;gap:8px;margin-bottom:7px;flex-wrap:wrap}.strategy-heading .strategy-scope{margin:0;font-size:10px;white-space:nowrap}.strategy-heading .strategy-name{margin:0}


.compact[data-realm=lumina][data-rarity=N]{background-image:var(--codex-shared-image21)}
.compact[data-realm=lumina][data-rarity=R]{background-image:var(--codex-shared-image22)}
.compact[data-realm=lumina][data-rarity=SR]{background-image:var(--codex-shared-image23)}
.compact[data-realm=varga][data-rarity=N]{background-image:var(--codex-shared-image24)}
.compact[data-realm=varga][data-rarity=R]{background-image:var(--codex-shared-image25)}
.compact[data-realm=varga][data-rarity=SR]{background-image:var(--codex-shared-image26)}
.compact[data-realm=nox][data-rarity=N]{background-image:var(--codex-shared-image27)}
.compact[data-realm=nox][data-rarity=R]{background-image:var(--codex-shared-image28)}
.compact[data-realm=nox][data-rarity=SR]{background-image:var(--codex-shared-image29)}

.range-diagram figcaption span:empty{display:none}

.strategy-heading{gap:7px}.strategy-heading .inline-morale{border-left:1px solid #a99a7b;padding-left:8px;margin-left:1px;font-size:10px}.strategy-heading .inline-morale strong{font-size:17px;margin-left:3px}.strategy-aside{padding-top:2px}


.military-card:not(.compact) .strategy{min-height:0;padding-bottom:2px;margin-bottom:0}.military-card:not(.compact){padding-bottom:8px}.strategy-aside .range-diagram{margin-top:0}.compact{min-height:0;padding-bottom:8px}


.military-card:not(.compact) .effect{min-height:7.2em}.strategy::after{display:none}.strategy-aside{position:relative;isolation:isolate}.strategy-aside::before{content:'';position:absolute;right:-12px;top:-8px;width:112px;height:112px;background:var(--category-mark) center/contain no-repeat;opacity:.13;z-index:-1;pointer-events:none}.strategy-aside .range-diagram{position:relative}


.compact{padding:10px 9px 8px}.compact .mini-top{min-height:30px;gap:5px;padding-right:4px}.compact .mini-top .family{max-width:none;display:flex;flex:none}.compact .family img{width:22px;height:22px;opacity:.9}.compact .mini-name h3{font:700 17px/1.25 'Yu Mincho',serif;margin:0;overflow-wrap:anywhere}.compact .top-cost{min-width:28px}.compact .top-cost strong{font-size:23px;line-height:1.2}.compact .specs{margin:6px 0 0;padding:5px 0;grid-template-columns:1fr .65fr .65fr 1.1fr}.compact .specs dt{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.compact .specs dd{font-size:24px;line-height:1.2}.compact .specs .troop dd{font-size:15px;min-height:27px}.compact .specs .type-symbol{width:15px;height:23px}.compact .spec-traits .traits{min-height:27px}.compact .mini-bottom{margin-top:6px;gap:4px;align-items:center}.compact .mini-kind{font-size:9px}.compact .mini-strategy{font-size:13px;font-weight:700;line-height:1.4}.compact .mini-morale{font-size:9px}.compact .mini-morale strong{font:700 18px/1.1 system-ui;color:#333c32}.compact .mini-skill-line{gap:4px}@media(max-width:670px){.compact{padding:9px 8px 8px}.compact .mini-name h3{font-size:17px}}


.strategy-aside::before{top:auto;bottom:-14px;right:-10px;width:112px;height:112px;z-index:-1}.strategy-aside .range-diagram{z-index:1}.range-diagram svg{background:#ece5d1}


.compact .mini-morale{margin-right:6px}


.military-card:not(.compact) .card-head .family{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:42px;font-size:10px;line-height:1.2}.military-card:not(.compact) .card-head .family img{width:27px;height:27px;opacity:.9}.military-card:not(.compact) .family-name{white-space:nowrap}

.deck-builder-assist{color:#4b4b3d}.dba-summary{min-height:2.8em;padding:8px 10px;background:#eee5cd;border-left:3px solid #9b8757}.dba-summary.is-preview{color:#476c6b;border-left-color:#668c88}.dba-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px}.dba-card{display:flex;flex-direction:column;gap:4px;text-align:left;min-height:78px;padding:9px;border:1px solid #b3a785;background:#f5ecd6;color:inherit;font:inherit;touch-action:pan-y}.dba-card small{font-size:11px;color:#82734e}.dba-card[aria-disabled=true]{opacity:.55}.dba-card:focus-visible{outline:2px solid #638b88;outline-offset:2px}.dba-filters{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.dba-filters button{padding:7px 10px;border:1px solid #b3a785;background:#eee5cd;color:inherit;font:inherit}.dba-filters button[aria-pressed=true]{background:#d8e2d5;border-color:#688682}.dba-pinned{border-bottom:1px solid #b3a785;padding-bottom:8px;margin-bottom:10px}.dba-pinned:empty{display:none}.dba-pinned .dba-card{width:100%;border-color:#a88c52}.dba-label{font-size:13px}@media(max-width:420px){.dba-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.battle-field-wrap{position:relative}.battle-edge-warnings{position:absolute;inset:0;pointer-events:none;overflow:hidden}.battle-edge-warning{position:absolute;max-width:150px;padding:5px 7px;background:#f4e8cde8;color:#8b4939;border-left:2px solid #a46549;font:600 11px/1.4 serif;box-shadow:0 1px 3px #46341b20}.battle-edge-warning.edge-left{left:4px;bottom:80px}.battle-edge-warning.edge-right{right:4px;top:48%}.battle-edge-warning.edge-bottom{right:4px;bottom:8px}.battle-edge-warning.edge-right~.edge-right{top:calc(48% + 40px)}.battle-edge-warning.edge-left~.edge-left{bottom:120px}.battle-edge-warning.edge-bottom~.edge-bottom{bottom:48px}.battle-roster-card{cursor:grab;position:relative;flex:1;min-width:125px;padding-top:0}.battle-roster-card>button[data-unit]{width:100%;height:100%}#cards .card-sort-handle,.card-sort-handle{position:absolute;top:0;right:4px;width:28px;min-width:0;height:20px;padding:0;flex:none;touch-action:none;cursor:grab;color:#7c7661;border:none;background:transparent;font:16px/20px serif}.sorting{opacity:.65}.order-change-note{position:absolute;left:4px;right:4px;bottom:3px;pointer-events:none;padding:3px 5px;background:#efe5c9f0;color:#53685c;font:600 11px/1.3 serif;opacity:0;transition:opacity .12s}.order-change-note.visible{opacity:1}@media(prefers-reduced-motion:reduce){.order-change-note{transition:none}}

.military-card[data-realm=kuni]{--house:#78684e;--wash:#e6dfcf}
.info-card .military-card .card-head{display:flex;align-items:center;gap:8px}
.info-card .military-card .card-head h3{margin:1px 0;font-size:25px}
.info-card .military-card .specs{display:grid;grid-template-columns:1.15fr .75fr .75fr 1.2fr}
.info-card .military-card .strategy{display:grid;grid-template-columns:minmax(0,1fr)82px;gap:12px}
.info-card .military-card .art-zone{height:320px}
.info-card .military-card .card-portrait{object-fit:contain;object-position:center bottom}
.military-card .ink-frame{pointer-events:none}
.military-card.compact .mini-strategy{margin:0;padding:0;border:0}
.deck-builder-assist .dba-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}
.deck-builder-assist .dba-entry{position:relative;min-width:0}
.deck-builder-assist .dba-card{display:block;width:100%;color:var(--ink);gap:0;min-width:0}
.dba-card .mini-bottom{padding-bottom:16px}
.dba-reason{display:block;margin:4px 0;font:11px/1.4 system-ui;color:#766347}
.dba-detail{position:absolute;right:8px;bottom:6px;min-height:24px;padding:2px 8px;font:11px/1.4 system-ui;background:#f5edda;border:1px solid #b3a785;color:#526d6b}
.dba-card[aria-disabled=true]{cursor:not-allowed}
.codex-pc-setting{display:flex;align-items:center;gap:7px;padding:8px 10px;font:12px/1.5 system-ui;color:#526b69}
.codex-pc-setting input{width:18px;height:18px;accent-color:#547f82}
#roster .battle-roster-card{min-width:0;flex:initial}
#roster .battle-roster-card .unit-button[aria-pressed=true]{outline:2px solid #547f82;outline-offset:-2px}
#roster .skill.unit-selected{box-shadow:inset 0 0 0 2px #547f82}
#roster .order-change-note{display:none}
.battle-edge-warnings{z-index:5}
.battle-edge-warnings[hidden]{display:none}

#hud.codex-castle-overlay{position:absolute;height:44px;padding:0;gap:5px;z-index:6;background:transparent;border:0;grid-template-columns:minmax(0,1fr) 52px minmax(0,1fr)}
#hud.codex-castle-overlay .castleBox{height:44px;gap:2px;justify-content:space-between;padding:3px 4px;background:#eee6d0e8;border-radius:4px}
#hud.codex-castle-overlay .row{font-size:10px;line-height:12px;gap:2px;white-space:nowrap}
#hud.codex-castle-overlay .castle-wall{height:24px!important}
#hud.codex-castle-overlay #timer{height:44px;min-height:44px;min-width:0;padding:2px;font-size:22px}
#controls>.morale{display:flex;align-items:center;flex-wrap:nowrap;gap:6px;margin:0 0 5px}
#controls #moraleValue{order:0;display:flex;flex-direction:column;align-items:center;gap:2px;width:50px;min-width:0;flex:0 0 50px}
#controls .codex-selected-face{position:relative;display:block;width:36px;height:36px;overflow:hidden;border:1px solid #a99b7c;border-radius:2px;background:#f2ead5}
#controls #moraleValue img{position:absolute;height:auto;max-width:none}
#controls .codex-selected-treasure{display:block;width:100%;font-size:9px;line-height:13px;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#controls .codex-morale-center{order:1;flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:13px;padding:0 5px 8px}
#controls .morale-bar{position:relative;flex:none;min-width:0;height:18px;margin:0;border-radius:2px;background:#c8bc9e;overflow:visible}
#controls .codex-team-commands{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px}
#controls .codex-team-commands button{min-width:0;min-height:22px;height:22px;padding:1px;font:700 9px/1.2 system-ui;color:#5b513b;background:#e6dcc1;border:1px solid #b5a57f;border-radius:2px;white-space:nowrap}
#controls .codex-team-commands button[aria-pressed=true]{color:#fff5df;background:#536c52;border-color:#78916c}
#controls #moraleFill{position:absolute;inset:0 auto 0 0;height:100%;background:#a48540}
.codex-morale-divisions{position:absolute;inset:0;display:grid;pointer-events:none}
.codex-morale-divisions>span+span{border-left:1px solid #f7efda}
.codex-morale-required{position:absolute;top:0;height:100%;width:0;color:#7d3827;pointer-events:none}
.codex-morale-required::before,.codex-morale-required::after{content:'';position:absolute;left:-5px;border-left:5px solid transparent;border-right:5px solid transparent}
.codex-morale-required::before{top:-8px;border-top:6px solid currentColor}
.codex-morale-required::after{bottom:-8px;border-bottom:6px solid currentColor}
.codex-morale-enough .codex-morale-required{color:#3f6650}
#controls #treasure.codex-treasure-icon{--relic-frame:#665c49;order:2;position:relative;display:grid;grid-template-columns:36px minmax(0,1fr);grid-template-rows:22px 14px;column-gap:3px;align-items:center;flex:0 0 118px;width:118px;height:44px;min-width:118px;min-height:44px;padding:2px;border:2px solid var(--relic-frame);border-radius:0;background-color:#eee7d4;background-image:radial-gradient(ellipse at 8% 85%,#27362d38,transparent 55%),radial-gradient(ellipse at 85% 10%,#27362d20,transparent 60%),repeating-linear-gradient(108deg,#fff8e516 0 1px,transparent 1px 4px);box-shadow:inset 0 0 0 1px #f8f0da}
#controls #treasure.codex-treasure-icon[data-rarity=R]{--relic-frame:#778c94;border-style:double;border-width:3px;padding:1px;box-shadow:inset 0 0 0 1px #d5e0df}
#controls #treasure.codex-treasure-icon[data-rarity=SR]{--relic-frame:#a47d30;border-style:double;border-width:3px;padding:1px;box-shadow:inset 0 0 0 1px #e6c97f,0 0 0 1px #dbc386}
#controls #treasure.codex-treasure-icon::after{content:attr(data-rarity);position:absolute;bottom:0;right:0;padding:0 2px;color:#fff8e6;background:var(--relic-frame);font:700 7px/9px system-ui}
#controls #treasure.codex-treasure-icon b{display:block;grid-column:2;grid-row:1;color:#51412b;font:400 20px/1.1 YashimaBrush,serif;letter-spacing:1px;max-width:none}
#controls #treasure.codex-treasure-icon small{display:block;grid-column:2;grid-row:2;color:#554b38;font:700 9px/1.2 system-ui;white-space:nowrap}
#controls #treasure.codex-treasure-icon img{display:block;grid-column:1;grid-row:1 / 3;width:36px;height:36px;object-fit:contain}
#controls #treasure.codex-treasure-icon.used{opacity:.35;filter:grayscale(1) brightness(.55)}
@media(orientation:portrait) and (max-width:600px){
  #unitRail,#teamRail{display:none!important}
  #controls{padding:5px 6px}
  #roster{gap:3px}
  #roster .unit-button{min-height:40px;padding:3px 2px}
  #roster .unit-button strong{font-size:10px}
  #roster .unit-button small{font-size:8px}
  #roster .skill{min-height:36px}
}
#codexBattleFrame{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}
#codexBattleFrame[hidden]{display:none}

.yashima-presentation.is-finale[data-winner="ally"],
.yashima-presentation.is-finale[data-winner="ally"] .presentation-scene,
#eventCut.ev-victory,#result[data-winner="ally"]{background:transparent}
.yashima-presentation.is-finale[data-winner="ally"] :is(.presentation-kind,.presentation-name,.presentation-line,.presentation-note){text-shadow:0 1px 2px #fff5df,0 0 5px #fff5df,0 0 10px #fff5df}
.yashima-presentation.is-finale[data-winner="ally"] :is(.presentation-kind,.presentation-note){display:none}
.yashima-washi.is-bust .washi-bust{aspect-ratio:1/.62}
.yashima-presentation.is-reward .presentation-close{display:block}
@media(max-width:480px){.deck-builder-assist .dba-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.deck-builder-assist .compact .mini-name h3{font-size:15px}.deck-builder-assist .compact .top-cost strong{font-size:21px}.deck-builder-assist .compact .mini-morale strong{font-size:16px}}

#cutin.codex-unified:not([hidden]){display:flex;align-items:center;justify-content:center;background:transparent}
#cutin.codex-unified>.cutin-slide,#cutin.codex-unified>.cutin-art,#cutin.codex-unified>.cutin-band{display:none!important}
.codex-cutin-panel{position:relative;width:96%;height:min(76%,440px);min-height:280px;overflow:hidden;background:transparent;border:0;box-shadow:none;color:#343e33}
#cutin.enemy .codex-cutin-panel{background:transparent}
.codex-cutin-kind{position:absolute;top:8px;left:10px;right:10px;z-index:2;font:400 17px/1.3 YashimaBrush,serif;color:#3e3425;text-shadow:0 0 3px #fff8dc,1px 1px #fff8dc,-1px -1px #fff8dc}
.codex-cutin-title{position:absolute;top:40px;left:12px;bottom:108px;writing-mode:vertical-rl;text-orientation:upright;font:400 42px/1.1 YashimaBrush,serif;letter-spacing:2px;z-index:2;color:#8b542e;text-shadow:1px 1px #fff8dc,-1px -1px #fff8dc}
.codex-cutin-picture{position:absolute;right:0;top:30px;width:76%;height:calc(100% - 116px);object-fit:contain;object-position:center top}
.codex-cutin-panel.is-great .codex-cutin-picture{right:5%;width:64%;padding:12px}
.codex-cutin-caster{position:absolute;right:12px;bottom:104px;padding:2px 10px;background:transparent;font:400 19px/1.2 YashimaBrush,serif;color:#293426;text-shadow:0 0 3px #fff8dc,1px 1px #fff8dc,-1px -1px #fff8dc}
.codex-cutin-caster:empty{display:none}
.codex-cutin-description{position:absolute;left:0;right:0;bottom:0;min-height:96px;margin:0;padding:12px 14px;background:#f4ebd3;border:1px solid #ad9d7c;border-radius:4px;font:600 14px/1.65 system-ui;color:#30291e;text-align:left}
@media(orientation:landscape) and (max-height:550px){.codex-cutin-panel{height:95%;min-height:0}.codex-cutin-title{top:32px;bottom:80px}.codex-cutin-description{min-height:70px;padding:8px 12px;font-size:13px;line-height:1.5}.codex-cutin-picture{top:22px;height:calc(100% - 92px)}.codex-cutin-caster{bottom:78px}}
.codex-cutin-title{bottom:calc(var(--codex-effect-height,96px) + 12px)}
.codex-cutin-picture{height:calc(100% - var(--codex-effect-height,96px) - 36px)}
.codex-cutin-caster{bottom:calc(var(--codex-effect-height,96px) + 8px)}

#hud.codex-castle-overlay{height:44px;background:#10181c99;padding:0;gap:5px;color:#fff;border-radius:0}
#hud.codex-castle-overlay .castleBox{height:44px;padding:0 4px;gap:0;background:transparent;border-radius:0}
.codex-title-slot{font-size:7px;line-height:10px;white-space:nowrap}
.codex-title-slot:empty{display:none}
#hud .codex-player-name{color:inherit;font:800 clamp(12px,4vw,16px)/19px serif;letter-spacing:1px;padding:0;min-height:0;background:transparent;border:0;max-width:100%;overflow:hidden;text-overflow:ellipsis}
#hud.codex-castle-overlay .row{height:20px;color:#fff;align-items:flex-end;gap:4px}
#hud.codex-castle-overlay .row .codex-player-name{order:0;flex:0 1 auto;min-width:0;text-align:left}
#hud.codex-castle-overlay .row .codex-title-slot{order:1;display:block;flex:1 1 0;min-width:0;min-height:10px;text-align:center;overflow:hidden;text-overflow:ellipsis}
#hud.codex-castle-overlay .row b{order:2;flex:0 0 auto;font-size:10px;line-height:12px;letter-spacing:0}
#hud.codex-castle-overlay .enemy .row .codex-player-name{order:2;text-align:right}
#hud.codex-castle-overlay .enemy .row b{order:0}
#hud.codex-castle-overlay .castle-wall{height:20px!important}
#hud.codex-castle-overlay #timer{height:44px;min-height:44px;background:transparent;color:#fff;border:1px solid #ffffff40;font-size:24px}
#controls .morale-bar{background:#17324c}
#controls #moraleFill{background:linear-gradient(#72c8ef,#2683cb 55%,#155b9e)}

.codex-spirit-flame{position:absolute;left:0;bottom:0;height:100%;pointer-events:none;display:grid;background:none;box-shadow:none;z-index:2}
.codex-spirit-flame::before,.codex-spirit-flame::after{display:none}
#controls #treasure.codex-treasure-icon{border:0;background:transparent;box-shadow:none;padding:0;column-gap:0;grid-template-columns:1fr;grid-template-rows:40px 12px;width:88px;min-width:88px;flex-basis:88px;height:54px}
#controls #treasure.codex-treasure-icon img{grid-column:1;grid-row:1;justify-self:center;width:40px;height:40px;border:2px solid var(--relic-frame);background:#e9e2ca;padding:2px;box-sizing:border-box}
#controls #treasure.codex-treasure-icon[data-rarity=R] img,#controls #treasure.codex-treasure-icon[data-rarity=SR] img{border-style:double;border-width:3px}
#controls #treasure.codex-treasure-icon::after{display:none}
#controls #treasure.codex-treasure-icon b{display:none}
#controls #treasure.codex-treasure-icon small{grid-column:1;grid-row:2;text-align:center}
#codexBattleAlert{position:absolute;left:6px;bottom:8px;z-index:7;padding:7px 26px 7px 14px;color:#fff;background:linear-gradient(100deg,#146fb8,#0c3154e8);border-left:4px solid #8bddff;box-shadow:0 2px 7px #0005;font:800 16px/1.2 YashimaBrush,serif;pointer-events:none;animation:codex-alert-in .22s ease-out}
#codexBattleAlert[data-team=enemy]{background:linear-gradient(100deg,#b63029,#682321e8);border-color:#ffad86}
#codexBattleAlert[hidden]{display:none}
@keyframes codex-alert-in{from{transform:translateX(-110%);opacity:0}to{transform:none;opacity:1}}
#codexNameDialog{padding:0;border:2px solid #685b43;max-width:calc(100% - 24px);width:390px;background:#eee6d1;color:#323b34}
#codexNameDialog::backdrop{background:#111c}
#codexNameDialog form{display:grid;grid-template-columns:34% 1fr;gap:8px;padding:14px}
#codexNameDialog img{width:100%;height:140px;object-fit:contain;object-position:center}
#codexNameDialog p{margin:0 0 8px;font-size:12px}
#codexNameDialog b{font-size:15px}
#codexNameDialog label{display:block;margin:12px 0 4px;font-size:11px}
#codexNameDialog input{display:block;width:100%;padding:6px;font:18px serif;background:#fff9e6;color:#283b40;border:1px solid #8c816b}
#codexNameDialog small{font-size:10px}
#codexNameDialog button{display:block;width:100%;margin-top:12px;padding:7px;color:#fff;background:#315566}
@media(orientation:landscape) and (max-height:550px){
  #controls{justify-content:flex-start;overflow-y:auto}
  #controls>.morale{display:grid;grid-template-columns:50px minmax(0,1fr);gap:6px}
  #controls #moraleValue{grid-column:1;grid-row:1}
  #controls #treasure.codex-treasure-icon{grid-column:2;grid-row:1;justify-self:end}
  #controls .codex-morale-center{grid-column:1 / -1;grid-row:2;width:100%}
  #roster .unit-button{min-height:40px;padding:3px}
  #roster .skill{min-height:30px;padding:3px}
}

#app[data-side-mode=right] #controls>.morale,#app[data-side-mode=both] #controls>.morale{display:none}
#codexRightBattleRail,#codexLeftBattleRail{position:absolute;top:48px;bottom:8px;z-index:5;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;color:#fff4d7;text-shadow:0 1px 2px #000;overflow:hidden}
#codexRightBattleRail[hidden],#codexLeftBattleRail[hidden]{display:none}
#codexRightBattleRail{right:0;padding:3px 5px;gap:5px;background:linear-gradient(90deg,#08090988,#08090928)}
#codexLeftBattleRail{left:0;justify-content:center;background:linear-gradient(90deg,#08090928,#08090988)}
#codexRightBattleRail #moraleValue{display:flex;flex:none;flex-direction:column;align-items:center;gap:3px;width:100%;margin:0 0 7px;color:#fff4d7}
#codexRightBattleRail .codex-selected-face{position:relative;display:block;width:36px;height:36px;overflow:hidden;border:1px solid #b9a877;background:#eee2c6;box-sizing:border-box;box-shadow:0 0 3px #000}
#codexRightBattleRail .codex-selected-face img{position:absolute;height:auto;max-width:none}
#codexRightBattleRail .codex-selected-treasure{width:100%;font:700 10px/14px serif;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#codexRightBattleRail .morale-bar{position:relative;flex:1;min-height:100px;width:20px;margin:5px 0 10px;background:linear-gradient(90deg,#091b2d,#173c58,#08192a);border:1px solid #b1a06b;border-radius:2px;overflow:visible;box-shadow:0 1px 5px #000,inset 0 0 5px #000}
#codexRightBattleRail #moraleFill{position:absolute;left:0;bottom:0;top:auto;display:block;background:linear-gradient(90deg,#1466a8,#5cc7ef 45%,#217cb5);box-shadow:inset 0 0 3px #a9ecff}
#codexRightBattleRail .codex-morale-divisions{grid-template-columns:none}
#codexRightBattleRail .codex-morale-divisions>span+span{border-left:0;border-top:1px solid #f4e7bdaa}
#codexRightBattleRail .codex-morale-required{top:auto;left:0;width:100%;height:0;color:#f6dd90;z-index:3}
#codexRightBattleRail .codex-morale-required::before,#codexRightBattleRail .codex-morale-required::after{top:-4px;bottom:auto;border:0;border-top:4px solid transparent;border-bottom:4px solid transparent}
#codexRightBattleRail .codex-morale-required::before{left:-8px;border-left:5px solid currentColor}
#codexRightBattleRail .codex-morale-required::after{left:auto;right:-8px;border-right:5px solid currentColor}
.codex-spirit-flame[hidden]{display:none!important}
.codex-fire-cell{position:relative;display:block;min-width:0;min-height:0;background:radial-gradient(ellipse at 60% 50%,#bbfaffaa,#349eea66 55%,transparent 80%)}
.codex-fire-cell::before{content:'';position:absolute;right:-1px;top:50%;width:32px;height:min(18px,calc(100% - 2px));background:var(--codex-side-flame) center/100% 100% no-repeat;transform:translateY(-50%);transform-origin:right center;filter:drop-shadow(0 0 2px #44cfff);animation:codex-side-fire .6s ease-in-out infinite alternate;animation-delay:var(--flicker-delay)}
.codex-fire-cell::after{content:'';position:absolute;right:2px;top:50%;width:10px;height:10px;border:1px solid #dcf8ec;border-radius:50%;background:radial-gradient(circle at 45% 40%,#fff 8%,#e4ffff 30%,#70e1ff 60%,#167ee5 85%);box-shadow:0 0 5px #bbf7ff,0 0 9px #219eff,inset 0 0 2px #fff;transform:translateY(-50%);animation:codex-side-core .8s ease-in-out infinite alternate;animation-delay:var(--flicker-delay)}
.codex-fire-cell>i{position:absolute;right:9px;top:50%;width:2px;height:2px;border-radius:50%;background:#fff5c1;box-shadow:0 0 3px #d8edff,5px -5px 0 #bfefff;animation:codex-side-spark 1.05s linear infinite;animation-delay:var(--flicker-delay)}
#codexRightBattleRail .codex-spirit-flame{display:grid;left:0;bottom:0;width:100%;background:none;box-shadow:none;z-index:2}
#codexRightBattleRail .codex-spirit-flame::before,#codexRightBattleRail .codex-spirit-flame::after{display:none}
#codexRightBattleRail .codex-fire-cell{position:relative;display:block;min-height:0;background:radial-gradient(ellipse at 60% 50%,#bbfaffaa,#349eea66 55%,transparent 80%)}
#codexRightBattleRail .codex-fire-cell::before{content:'';position:absolute;right:-1px;top:50%;width:46px;height:min(32px,calc(100% - 1px));background:var(--codex-side-flame) center/100% 100% no-repeat;transform:translateY(-50%);transform-origin:right center;filter:drop-shadow(0 0 2px #44cfff);animation:codex-side-fire .6s ease-in-out infinite alternate;animation-delay:var(--flicker-delay)}
#codexRightBattleRail .codex-fire-cell::after{content:'';position:absolute;right:2px;top:50%;width:14px;height:14px;border:1px solid #dcf8ec;border-radius:50%;background:radial-gradient(circle at 45% 40%,#fff 8%,#e4ffff 30%,#70e1ff 60%,#167ee5 85%);box-shadow:0 0 5px #bbf7ff,0 0 9px #219eff,inset 0 0 2px #fff;transform:translateY(-50%);animation:codex-side-core .8s ease-in-out infinite alternate;animation-delay:var(--flicker-delay)}
#codexRightBattleRail .codex-fire-cell>i{position:absolute;right:9px;top:50%;width:2px;height:2px;border-radius:50%;background:#fff5c1;box-shadow:0 0 3px #d8edff,5px -5px 0 #bfefff;animation:codex-side-spark 1.05s linear infinite;animation-delay:var(--flicker-delay)}
@keyframes codex-side-fire{from{transform:translateY(-50%) scaleX(.86);opacity:.78}to{transform:translateY(-50%) scaleX(1.05);opacity:1}}
@keyframes codex-side-core{to{filter:brightness(1.2);box-shadow:0 0 6px #e9ffff,0 0 11px #44bfff,inset 0 0 3px #fff}}
@keyframes codex-side-spark{from{transform:translateX(0);opacity:0}20%{opacity:1}to{transform:translateX(-25px);opacity:0}}
#codexRightBattleRail #treasure{flex:none;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:4px;width:100%;min-width:0;min-height:72px;height:72px;padding:0;border:0;background:transparent;box-shadow:none;border-radius:0;color:#fff4d7}
#codexRightBattleRail #treasure b,#codexRightBattleRail #treasure::after{display:none}
#codexRightBattleRail #treasure img{order:0;width:40px;height:40px;object-fit:contain;border:2px solid var(--relic-frame,#665c49);padding:2px;background:#e9e2ca;box-sizing:border-box}
#codexRightBattleRail #treasure[data-rarity=R]{--relic-frame:#778c94}
#codexRightBattleRail #treasure[data-rarity=SR]{--relic-frame:#a47d30}
#codexRightBattleRail #treasure[data-rarity=R] img,#codexRightBattleRail #treasure[data-rarity=SR] img{border-width:3px;border-style:double}
#codexRightBattleRail #treasure small{order:1;display:block;color:#fff4d7;white-space:normal;font:700 9px/13px serif;text-align:center;overflow-wrap:anywhere;max-height:28px}
#codexRightBattleRail #treasure.used{opacity:.35;filter:grayscale(1) brightness(.55)}
#controls>.codex-team-commands{margin-bottom:6px}
#codexLeftBattleRail .codex-team-commands{display:flex;flex-direction:column;gap:10px;width:44px}
#codexLeftBattleRail .codex-team-commands button{width:44px;min-width:44px;min-height:56px;height:56px;padding:8px 9px;border:1px solid #a8956c;border-radius:2px;background:#162930e8;color:#fff3d4;font:800 12px/18px serif;text-align:center;white-space:normal;overflow-wrap:anywhere;box-shadow:inset 0 0 0 1px #090f15,0 2px 5px #0006}
#codexLeftBattleRail .codex-team-commands button[aria-pressed=true]{border-color:#f5df92;background:#2c596b;color:#fff}
#codexLeftBattleRail .codex-team-commands button:disabled{opacity:.4}
@media(prefers-reduced-motion:reduce){#codexRightBattleRail .codex-fire-cell::before,#codexRightBattleRail .codex-fire-cell::after{animation:none}#codexRightBattleRail .codex-fire-cell>i{display:none}}

@media(prefers-reduced-motion:reduce){.codex-fire-cell::before,.codex-fire-cell::after{animation:none}.codex-fire-cell>i{display:none}}
#titleSettings{max-height:calc(100dvh - 32px);overflow-y:auto}


#titleCredits .codex-credit-author{font-weight:600;white-space:pre-wrap}

#controls #treasure.codex-treasure-icon img,#codexRightBattleRail #treasure img{
  background:radial-gradient(ellipse at 50% 65%,#223643 0%,#101820 48%,#030507 85%);
  border-color:var(--relic-frame);padding:3px;
  box-shadow:inset 0 1px 2px #fff8,inset 0 0 0 1px #ffffff26,0 1px 3px #000b,0 0 4px #b8aa8055;
}
#controls #treasure.codex-treasure-icon[data-rarity=R] img,#codexRightBattleRail #treasure[data-rarity=R] img{box-shadow:inset 0 1px 2px #edffff99,inset 0 0 0 1px #c2deef44,0 1px 3px #000b,0 0 5px #9dcde577}
#controls #treasure.codex-treasure-icon[data-rarity=SR] img,#codexRightBattleRail #treasure[data-rarity=SR] img{box-shadow:inset 0 1px 2px #fff1b8bb,inset 0 0 0 1px #f2d98b66,0 1px 3px #000b,0 0 6px #d3aa5488}
@media(max-width:700px){#titleScreen .title-screen{padding-bottom:18px}}

#controls{background-color:#0c1a24!important;background-image:radial-gradient(ellipse at 50% 0,#24374366,transparent 70%),repeating-radial-gradient(ellipse at 50% 110%,transparent 0 7px,#bca4770c 8px 9px,transparent 10px 15px);color:#fff0ce!important;border-top:1px solid #bca477;box-shadow:inset 0 1px 0 #f0d99555}
#roster{background:transparent!important}
#controls #moraleValue,#controls .codex-selected-treasure,#controls #treasure small{color:#fff0ce!important;text-shadow:0 1px 2px #000}
#controls .codex-selected-face{border-color:#c8ac72!important;box-shadow:inset 0 0 0 1px #e6d6a966,0 1px 3px #000a}
#controls .codex-team-commands button{color:#fff0ce!important;background:linear-gradient(#27313b,#0e141b)!important;border-color:#b49a64!important;box-shadow:inset 0 1px 1px #f8e6bd33,0 1px 2px #0006}
#controls .codex-team-commands button[aria-pressed=true]{background:linear-gradient(#2a5367,#142c3c)!important;border-color:#73d9f3!important;color:#fff!important}
#controls .morale-bar{border:0;outline:1px solid #bdac7a;background:#081725!important;box-shadow:inset 0 0 3px #000}
.codex-morale-required,.codex-morale-enough .codex-morale-required{color:#eed08a!important}
#roster .unit-button,#roster .skill{background:radial-gradient(ellipse at 0 0,#fff4d8aa,transparent 75%),repeating-linear-gradient(100deg,#8e6e2510 0 1px,transparent 1px 5px),#e4d5b5!important;color:#292e2c!important;border-color:#b79b63!important;box-shadow:inset 0 0 0 1px #fff2d17a,inset 0 1px 2px #fff2,0 1px 2px #0008}
#roster .unit-button strong{color:#283c45!important}#roster .unit-button small{color:#51564d!important}
#roster .mini-hp{background:#39493f!important;box-shadow:0 0 0 1px #152725;border-radius:2px}
#roster .mini-hp i{background:linear-gradient(#b5d96a,#648744)!important}
#roster .skill.ready{color:#392b18!important;border-color:#d0b16c!important;box-shadow:inset 0 0 0 1px #fff0c6,0 0 4px #d0b16c55;animation:none}
#roster .unit-button[aria-pressed=true],#roster .skill.unit-selected,#roster .skill.preview{background:radial-gradient(ellipse at 20% 0,#27749266,transparent 80%),repeating-linear-gradient(135deg,#7adaee08 0 1px,transparent 1px 5px),#102d42!important;border-color:#73d9f3!important;color:#fff5dd!important;outline:0;box-shadow:inset 0 0 0 1px #69dafa99,inset 0 1px 3px #85dfff55,0 0 4px #29c8f577}
#roster .unit-button[aria-pressed=true] strong,#roster .unit-button[aria-pressed=true] small{color:#fff5dd!important}
#roster .skill.active{background:#26463b!important;color:#eff7d7!important;border-color:#92bd8e!important}
#roster .skill.waiting,#roster .skill.queued{border-style:dashed;border-color:#edce7f!important;color:#fff0ca!important;background:#443827!important}
#roster .skill:disabled{opacity:1;color:#686153!important;background-color:#c6b99d!important;border-color:#8e8066!important;box-shadow:inset 0 0 0 1px #f4ebd533}
#controls button:focus-visible{outline:2px solid #ffe9ab;outline-offset:1px}
#controls .codex-team-commands button:disabled{color:#8a948e!important;border-color:#5f6258!important;background:#18242b!important;box-shadow:none}

#controls .codex-fire-cell::before{right:50%;top:auto;bottom:3px;width:34px;height:20px;transform:translateX(50%) rotate(90deg);transform-origin:center;animation:codex-up-fire .65s ease-in-out infinite alternate;animation-delay:var(--flicker-delay)}
#controls .codex-fire-cell::after{right:50%;transform:translate(50%,-50%)}
#controls .codex-fire-cell>i{right:50%;animation-name:codex-up-spark}
@keyframes codex-up-fire{from{transform:translateX(50%) rotate(90deg) scaleX(.8);opacity:.75}to{transform:translateX(50%) rotate(90deg) scaleX(1.08);opacity:1}}
@keyframes codex-up-spark{from{transform:translateY(0);opacity:0}20%{opacity:1}to{transform:translateY(-22px);opacity:0}}
@media(prefers-reduced-motion:reduce){#controls .codex-fire-cell::before{animation:none}#controls .codex-fire-cell>i{display:none}}

#controls #treasure.codex-treasure-icon small{color:#fff0ce;text-shadow:0 1px 2px #000}

#roster .unit-button{position:relative;isolation:isolate;overflow:hidden}
#roster .unit-button::before{content:'';position:absolute;inset:1px 1px 8px;border-radius:3px;background:var(--codex-name-gold-flow) center/100% 100% no-repeat;opacity:.2;pointer-events:none;z-index:0}
#roster .unit-button[aria-pressed=true]::before{opacity:.32}
#roster .unit-button strong,#roster .unit-button small,#roster .unit-button .mini-hp{position:relative;z-index:1}
.codex-mock-tabs{position:sticky;top:0;z-index:2;background:#eee6d0;padding:6px 0;margin-bottom:10px}
[data-mock-panel][hidden]{display:none!important}
.codex-mock-summary{font-size:12px;color:#52655e;border-bottom:1px solid #b7ac92;padding-bottom:8px}
.codex-gauntlet-rewards{padding:8px 12px;background:#e4d7b6;border:1px solid #ac9664;font-size:12px}
.codex-gauntlet-rewards p{margin:4px 0}


:root :is(.codex-cutin-description,.yashima-presentation.is-finale .presentation-quote,.washi-panel,#resultCard,.card-info .info-box){
  --codex-window-gold:#a88b54;
  border:1px solid #655b43;border-radius:3px;
  background-color:#f4ebd3;
  background-image:radial-gradient(ellipse at 4% 0,#fff8e9a0,transparent 65%),repeating-linear-gradient(112deg,#806a3605 0 1px,transparent 1px 5px),linear-gradient(110deg,#f6eedb,#eee2c6);
  color:#30291e;box-shadow:inset 0 0 0 2px #eee2c6,inset 0 0 0 3px #b5a07880,0 3px 8px #15191338;
}
:root :is(.codex-cutin-description,.yashima-presentation.is-finale .presentation-quote,.washi-panel,#resultCard,.card-info .info-box)::after{
  content:'';position:absolute;inset:5px;pointer-events:none;
  background:linear-gradient(var(--codex-window-gold),var(--codex-window-gold)) left top/16px 1px no-repeat,linear-gradient(var(--codex-window-gold),var(--codex-window-gold)) left top/1px 12px no-repeat,linear-gradient(var(--codex-window-gold),var(--codex-window-gold)) right bottom/16px 1px no-repeat,linear-gradient(var(--codex-window-gold),var(--codex-window-gold)) right bottom/1px 12px no-repeat;
}
:root :is(.codex-cutin-description,.washi-panel){position:absolute}
:root .washi-panel::before{clip-path:none;border-radius:2px}
:root .yashima-presentation.is-finale .presentation-quote::before{content:none}
.yashima-presentation.is-finale .presentation-scene{z-index:4;justify-content:center;gap:12px;padding:20px 16px}
.yashima-presentation.is-finale .presentation-art{flex:0 1 auto;min-height:0;width:min(82vw,600px);height:55dvh}
:root .yashima-presentation.is-finale .presentation-quote{flex:0 0 auto;width:min(620px,100%);padding:14px 20px;filter:none;text-shadow:none}
.yashima-presentation.is-finale .presentation-quote .presentation-name{margin:0 0 6px;font-size:clamp(20px,4vw,28px);color:#4c4533;text-shadow:none;line-height:1.3}
.yashima-presentation.is-finale .presentation-quote .presentation-line{margin:0;max-width:none;font-size:clamp(17px,3vw,22px);font-weight:600;line-height:1.65;color:#30291e;text-shadow:none;overflow-wrap:anywhere}
@media(orientation:landscape) and (max-height:550px){
  .yashima-presentation.is-finale .presentation-scene{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:16px;padding:16px 20px}
  .yashima-presentation.is-finale .presentation-art{width:100%;height:calc(100dvh - 32px);grid-column:1;grid-row:1;object-position:center bottom}
  :root .yashima-presentation.is-finale .presentation-quote{grid-column:2;grid-row:1;max-height:calc(100dvh - 32px);overflow-y:auto;padding:12px 16px}
}

.yashima-presentation.is-finale :is(.presentation-kind,.presentation-note){display:none}

:root :is(.yashima-presentation.is-finale .presentation-quote,#resultCard,.card-info .info-box){position:relative}

.info-card .military-card .card-portrait{object-fit:cover;object-position:center top}
.military-card[data-rarity=SR]:not(.compact) .strategy{position:relative;z-index:11}
.military-card[data-rarity=SR]:not(.compact) .strategy-copy{background:#f4ead4}

.codex-cutin-glyph{position:absolute;left:50%;top:40%;transform:translate(-50%,-50%);z-index:4;color:#f3e4bc;font:400 clamp(70px,23vw,110px)/1 YashimaBrush,YashimaBrush,serif;text-shadow:0 2px 3px #141d19;-webkit-text-stroke:1px #54462d;pointer-events:none}
.codex-cutin-brush{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none;opacity:0;overflow:visible}
.codex-cutin-brush path{fill:none;stroke-linecap:round;stroke-linejoin:round}
.codex-cutin-brush .ink-stroke{stroke:#384c55;stroke-width:9}
#cutin.enemy .codex-cutin-brush .ink-stroke{stroke:#763e32}
.codex-cutin-brush .dry-stroke{stroke:#d7bd7d;stroke-width:2}
#cutin.codex-restored .codex-cutin-panel{z-index:2}
#cutin.codex-cutin-playing .codex-cutin-glyph{animation:codexGlyphIntro 1.1s ease-out both}
#cutin.codex-cutin-playing .codex-cutin-panel{animation:codexCasterSlideLeft .42s cubic-bezier(.2,.8,.2,1) .45s both}
#cutin.enemy.codex-cutin-playing .codex-cutin-panel{animation-name:codexCasterSlideRight}
.codex-cutin-panel.is-great .codex-cutin-picture{right:0;width:80%;padding:0}
@keyframes codexGlyphIntro{0%{opacity:0;transform:translate(-50%,-50%) scale(.85)}20%,55%{opacity:1;transform:translate(-50%,-50%) scale(1)}100%{opacity:0;transform:translate(-50%,-50%) scale(1.08)}}
@keyframes codexCasterSlideLeft{from{opacity:0;transform:translateX(-110%)}to{opacity:1;transform:translateX(0)}}
@keyframes codexCasterSlideRight{from{opacity:0;transform:translateX(110%)}to{opacity:1;transform:translateX(0)}}
@media(prefers-reduced-motion:reduce){#cutin.codex-cutin-playing .codex-cutin-panel{animation:none}.codex-cutin-glyph,.codex-cutin-brush{display:none}}

.meta.ink-home .sheet-head{padding:8px 18px 0}
.meta.ink-home #metaEyebrow,.meta.ink-home .fort-development{display:none}
.meta.ink-home .sheet-head #metaTitle{display:block;margin:0 0 8px;font-size:30px;line-height:1.4;text-align:center}
.meta.ink-home .sheet-head::before{top:8px}
.info-card .codex-effect-time{margin:3px 0 5px;font:600 10px/1.4 system-ui;color:#655436}
.info-card .range-diagram figcaption{line-height:1.35;overflow-wrap:anywhere}
.info-card .range-diagram .codex-range-size{display:block;font:500 9px/1.4 system-ui;margin-top:3px;color:#655436}
#cardInfoBody{touch-action:pan-y}
#controls .codex-team-commands{grid-template-columns:repeat(4,minmax(0,1fr))}
#codexTeamOrderDialog{width:min(94vw,620px);max-height:88dvh;overflow:auto}
#codexTeamOrderDialog .codex-order-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
#codexTeamOrderDialog button small{display:block;font:11px/1.45 system-ui;margin-top:4px}
#codexTeamOrderDialog button{white-space:normal;padding:8px}
#codexTeamOrderDialog h3{margin:14px 0 6px;font-size:15px}
#instructionDialog button[data-quick-order]{display:block;width:100%;margin:5px 0}
.codex-workshop-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;position:sticky;top:0;z-index:3;background:#eee5ce;padding:5px 0 9px;border-bottom:1px solid #b3a17a;margin-bottom:12px}
.codex-workshop-tabs button{min-height:40px;padding:7px 3px;font-size:13px;white-space:normal}
.codex-workshop-tabs button[aria-pressed=true],.codex-workshop-types button[aria-pressed=true],.codex-workshop-saved button[aria-pressed=true],.codex-workshop-team button[aria-pressed=true]{background:#283d3d;color:#fff7df;border-color:#9b7b38;box-shadow:inset 0 0 0 1px #9b7b38}
.codex-workshop-name{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:center;margin:12px 0}
.codex-workshop-name input{width:100%;min-width:0;min-height:42px;border:1px solid #a89570;border-radius:4px;background:#faf5e9;color:#282f2b;padding:8px;font:16px system-ui}
.codex-workshop-types{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;margin:12px 0}
.codex-workshop-types button{padding:7px 2px;font-size:12px;white-space:normal}
.codex-workshop-types small{display:block;font:10px/1.4 system-ui;opacity:.8}
.codex-workshop-tools,.codex-workshop-save-buttons{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}
.codex-workshop-tools button{font-size:12px;padding:8px}
.codex-workshop-library summary{cursor:pointer;padding:9px 0;font-weight:700}
.codex-workshop-saved{display:flex;flex-wrap:wrap;gap:5px;padding:8px 0}
.codex-workshop-saved button{max-width:100%;overflow-wrap:anywhere;white-space:normal}
.codex-workshop-rows{list-style:none;margin:12px 0;padding:0;display:grid;gap:8px}
.codex-workshop-row{display:grid;grid-template-columns:23px minmax(0,1fr);gap:5px 8px;align-items:start;padding:10px 8px;border:1px solid #bdab85;border-left:3px solid #98732e;border-radius:4px;background:linear-gradient(110deg,#faf5e9,#e9dfc7);box-shadow:0 2px 3px #3f311710}
.codex-workshop-priority{font:700 15px/1.8 Georgia;text-align:center;color:#7a6030}
.codex-workshop-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:9px}
.codex-workshop-fields label>span{display:block;font-size:11px;color:#695b40;margin-bottom:3px}
.codex-workshop-fields select{width:100%;min-width:0;min-height:40px;font:13px system-ui;border:1px solid #ac9a76;border-radius:3px;background:#fffcf4;color:#253432;padding:4px}
.codex-workshop-quantity{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin-top:5px}
.codex-workshop-row-tools{grid-column:2;display:flex;gap:4px;justify-content:flex-end}
.codex-workshop-row-tools button{min-width:40px;min-height:36px;padding:4px 8px;font-size:12px}
.codex-workshop-row.is-locked{border-color:#a8593e}
.codex-workshop-row{display:block;padding:0}
.codex-workshop-row summary{display:grid;grid-template-columns:23px minmax(0,1fr) auto;gap:8px;align-items:center;list-style:none;cursor:pointer;padding:9px 8px}
.codex-workshop-row summary::-webkit-details-marker{display:none}
.codex-workshop-rule-summary{font:12px/1.6 system-ui;overflow-wrap:anywhere}
.codex-workshop-rule-summary span,.codex-workshop-rule-summary b{display:block}
.codex-workshop-rule-summary b{color:#294847;font-weight:600}
.codex-workshop-edit{font:11px system-ui;color:#78613b;padding:4px;border:1px solid #c0ac7f;border-radius:3px}
.codex-workshop-row details[open] summary{border-bottom:1px solid #c6b591;background:#dfd1ab55}
.codex-workshop-row-body{padding:9px;display:grid;gap:7px}
.codex-workshop-row-tools{grid-column:auto}
.codex-workshop-save-buttons{position:sticky;bottom:0;z-index:2;background:#eee5ce;border-top:1px solid #b3a17a;padding:8px 0;margin-bottom:0}
.codex-workshop-warning{color:#9d402c;font-size:13px}
#codexWorkshopStatus{min-height:1.5em;font-size:13px;color:#37584e}
.codex-workshop-team{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.codex-workshop-team button{padding:10px;white-space:normal}
.codex-workshop-team small{display:block;font:11px/1.5 system-ui;margin-top:4px}
@media(min-width:650px){.codex-workshop-row-body{grid-template-columns:minmax(0,1fr) auto}.codex-workshop-row-tools{align-self:center}.codex-workshop-fields select{font-size:14px}.codex-workshop-rule-summary{display:flex;gap:12px}}

.codex-army-shell{min-width:0;padding:0 0 8px}
.codex-army-banner{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;padding:17px 14px 13px;border:1px solid #a78a4c;border-radius:5px;background:linear-gradient(125deg,#253c3b,#152b2a);color:#f6ecd6;box-shadow:inset 0 0 0 3px #d7b77116,0 3px 9px #30271420}
.codex-army-banner::before,.codex-army-banner::after{content:'';position:absolute;z-index:-1;pointer-events:none;width:125%;height:70px;right:-40%;top:-32px;border:1px solid #b3914555;border-radius:50%;box-shadow:0 8px 0 -7px #ccaa5455,0 18px 0 -17px #ccaa5444,0 30px 0 -29px #ccaa5433;transform:rotate(-13deg)}
.codex-army-banner::after{right:-17%;top:63%;transform:rotate(-9deg)}
.codex-army-seal{display:flex;align-items:center;justify-content:center;width:40px;height:43px;border:1px solid #c0a062;outline:1px solid #c0a06255;outline-offset:3px;font:400 19px/1 YashimaBrush,serif;background:#5d2e2544;color:#e5ce96}
.codex-army-banner-title{align-self:center}
.codex-army-banner-title b{display:block;font:400 23px/1.3 YashimaBrush,serif;letter-spacing:1px}
.codex-army-banner-title small{display:block;margin-top:4px;color:#c9c6ad;font:10px/1.5 system-ui}
.codex-army-metrics{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding-top:9px;border-top:1px solid #b69c5455;text-align:center}
.codex-army-metrics>div+div{border-left:1px solid #b69c5444}
.codex-army-metrics span{display:block;color:#c4b793;font:10px/1.5 system-ui}
.codex-army-metrics b{display:block;font:600 18px/1.5 Georgia,serif;color:#fff1ce}
.codex-army-tabs{position:sticky;top:0;z-index:3;display:flex;gap:4px;margin:10px 0;padding:5px 0;background:#eee5ce;border-bottom:1px solid #aa8b4c}
.codex-army-tabs button{flex:1;min-width:0;min-height:45px;padding:5px 2px;border:1px solid #baa679;border-radius:3px 3px 0 0;background:linear-gradient(#f7efda,#e3d5b7);color:#51452d;font:600 12px/1.5 system-ui;white-space:normal;box-shadow:inset 0 1px #fffcf0}
.codex-army-tabs button small{display:block;color:#927238;font:9px/1.1 serif}
.codex-army-tabs button[aria-selected=true]{background:linear-gradient(#354d48,#203833);border-color:#8d713f;color:#fff2d7;box-shadow:inset 0 -3px #b29251,inset 0 1px #6b756155}
.codex-army-tabs button[aria-selected=true] small{color:#d3b36d}
.codex-army-shell [data-army-panel]{padding:10px 9px 14px;border:1px solid #bcab83;border-radius:3px;background:linear-gradient(110deg,#fbf5e7d9,#eee4cbd9);box-shadow:inset 0 0 0 3px #fffaf029}
.codex-army-shell [data-army-panel][hidden]{display:none!important}
.codex-army-pane-lead{font:12px/1.7 system-ui;color:#685d46;margin:0 0 12px}
.codex-army-shell .dba-summary:not(.is-preview){display:none}
.codex-army-shell .dba-summary.is-preview{border:1px solid #af9760;background:#e9ddbe;padding:8px;font-size:12px}
.codex-army-shell h2{font:400 23px/1.4 YashimaBrush,serif;border-bottom:1px solid #ad945b66;padding:0 0 5px;margin:10px 0}
.codex-army-shell .dba-filters,.codex-army-shell .armament-cats{padding:7px;border:1px solid #c7b48d;background:#e2d3b65c;border-radius:3px}
.codex-army-shell .dba-entry{filter:drop-shadow(0 2px 2px #49381520)}
.codex-army-shell .armament-rules{display:grid;gap:7px}
.codex-army-shell .armament{margin-top:0}
.codex-army-shell .armament-rules .rule{background:transparent;border:0;box-shadow:none;margin:0;padding:9px 7px;grid-template-columns:minmax(0,1fr) 36px!important}
.codex-army-shell .armament-rules .rule>.rule-number{display:none}
.codex-army-shell .rule-fields{grid-template-columns:minmax(0,1fr) 56px 61px minmax(0,1fr)!important}
.codex-army-shell .rule select{min-height:38px;min-width:0;font-size:12px}
.codex-army-shell .unit-tabs{display:flex;gap:4px;overflow-x:auto;margin:9px 0;padding-bottom:4px}
.codex-army-shell .unit-tabs button{flex:0 0 auto;padding:8px;font-size:12px;min-height:38px}
.codex-army-shell .unit-tabs button[aria-selected=true]{background:#304942;color:#fff2d6;border-color:#9d7b3c}
.codex-army-presets{margin:12px 0;border:1px solid #c1ac80;border-radius:3px;padding:8px;background:#e4d4b333}
.codex-army-presets summary{cursor:pointer;font-size:13px;font-weight:600}
.codex-army-presets button{margin:7px 4px 0 0;max-width:100%;white-space:normal;overflow-wrap:anywhere}
.codex-army-preset-save{position:sticky;bottom:0;z-index:2;display:flex;gap:5px;padding:8px 0;background:#eee5ce;border-top:1px solid #bca579}
.codex-army-preset-save input{flex:1;min-width:0;width:100%;border:1px solid #aa9978;border-radius:3px;background:#fff9eb;padding:8px;font:16px system-ui;color:#304039}
.codex-army-preset-save button{font-size:12px;padding:8px;white-space:nowrap}
.codex-army-save-notice{font:12px/1.5 system-ui;color:#89402e}
.codex-army-command-count{font:600 12px system-ui;color:#7f6231}
.codex-expedition-recovery{padding:10px 12px;border:1px solid #a9945d;border-left:3px solid #547568;border-radius:3px;background:#e6dec8;color:#334e43;font:13px/1.7 system-ui}
@media(max-width:520px){.codex-army-shell .dba-grid{gap:6px}.codex-army-shell [data-army-panel]{padding:9px 6px}.codex-army-banner-title b{font-size:22px}.codex-army-shell .rule-fields{grid-template-columns:repeat(2,minmax(0,1fr))!important}.codex-army-shell .rule-fields>label:first-child,.codex-army-shell .rule-fields>label:last-child{grid-column:1/-1}}


.meta.codex-map .sheet-head{padding:10px 16px 8px}
.meta.codex-map #metaEyebrow{display:none}
.meta.codex-map #metaTitle{display:block;text-align:center;margin:0 0 8px;line-height:1.3}
.meta.codex-map .codex-map-resources{display:flex;justify-content:center;align-items:center;gap:18px;margin:0;color:#38382e}
.meta.codex-map .codex-map-resources .prep-castle{flex:0 1 210px;min-width:0;margin:0}
.meta.codex-map .codex-map-resources .reward-mark{flex:0 0 auto}

.codex-map .ink-route .route-spot .map-node.open::before{content:none}


.sheet-head .eyebrow{display:none!important}
#prepOverview[hidden]{display:none}


#treasureCats,.armament-cats{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px!important;width:100%}
#treasureCats button,.armament-cats button{min-width:0!important;width:100%;padding:7px 1px!important;min-height:36px;font-size:clamp(10px,2.6vw,12px)!important;letter-spacing:0;white-space:nowrap}

.meta.ink-home .meta-foot{justify-content:flex-end;padding:5px 12px;border-top:0;background:transparent}
.meta.ink-home .meta-foot .codex-return-title{flex:0 0 auto;width:auto;min-height:32px;padding:4px 8px;border:0;background:transparent;box-shadow:none;font-size:11px;color:#75694e}
.meta.ink-home .meta-foot .codex-return-title:hover{color:#363d30;text-decoration:underline}

.codex-council-hub{display:grid;gap:16px}
.codex-council-hub h2{font:400 23px/1.4 YashimaBrush,serif;margin:10px 0;border-bottom:1px solid #b79b6366;padding-bottom:6px}
.codex-council-hub h2 small{font:12px system-ui;color:#756342}
.codex-council-hub .codex-army-banner{margin:0;grid-template-columns:42px minmax(0,1fr)}
.codex-council-current,.codex-council-set{border:1px solid #b6a172;border-radius:4px;background:linear-gradient(115deg,#fff8e844,transparent),#e7ddc6;padding:12px}
.codex-council-current h2{margin-top:0}
.codex-council-current>button{width:100%;margin-top:8px}
.codex-council-metrics{font:600 12px/1.7 system-ui;color:#615039}
.codex-council-commanders{display:flex;flex-wrap:wrap;gap:5px;margin:8px 0}
.codex-council-commanders button{font-size:11px;min-height:34px;padding:5px 7px}
.codex-council-set{margin:10px 0}
.codex-council-set>b{display:block;font:600 18px/1.6 serif}
.codex-council-set>small{display:block;font:11px/1.7 system-ui;color:#695b42}
#codexCouncilStatus{font:12px/1.6 system-ui;color:#7d4c30;min-height:1em}


.sheet.codex-flow-menu>.sheet-body{padding:0 16px 20px;scroll-padding-top:110px}
.sheet.codex-flow-menu>.sheet-body>.sheet-head{padding:14px 0 12px;margin:0 0 16px;flex:none;background:transparent;border-bottom:1px solid #ad955c88}
.sheet.codex-flow-menu .sheet-head h1{display:block;font:400 clamp(24px,5vw,30px)/1.35 YashimaBrush,serif;margin:0;letter-spacing:.06em;color:#333b32}
.sheet.codex-flow-menu.ink-home .sheet-head{padding-top:8px;padding-bottom:0}
.sheet.codex-flow-menu.ink-home .sheet-head::after{margin:0 -16px}
.sheet.codex-flow-menu.ink-home .sheet-head::before{right:6px;top:8px}
.sheet.codex-flow-menu .sheet-head p{display:block;margin:8px 0 0;font:12px/1.7 system-ui;color:#6d634d}
.sheet .sheet-body>h2,.sheet .section-title{font:400 23px/1.4 YashimaBrush,serif;margin:18px 0 10px;padding-bottom:6px;border-bottom:1px solid #b69a6266;color:#384031}
.sheet .sheet-body .lead{font-size:12px;line-height:1.8;color:#665e49}
.sheet .sheet-foot{padding:8px 16px;border-top:1px solid #aa915b88;background:linear-gradient(#f2ead7,#e6d9b9);box-shadow:0 -3px 9px #5749260c}
.codex-menu-balance{flex:none;display:flex;justify-content:space-between;align-items:center;padding:9px 16px;background:linear-gradient(110deg,#293e37,#1c302b);border-bottom:1px solid #ac9154;color:#f4e5bf;font:12px/1.5 serif}
.codex-menu-balance .reward-mark{color:inherit}
.codex-mock-tabs,.codex-workshop-tabs,.codex-archive-tabs,.codex-army-tabs{position:sticky;top:0;z-index:4;background:linear-gradient(#f0e7d1,#e8dcc1);border-bottom:1px solid #ad915b;border-radius:0;box-shadow:0 3px 6px #56472912;padding:5px 0;margin:0 0 12px;gap:4px}
.codex-mock-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));height:48px}
.codex-workshop-tabs,.codex-archive-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.codex-mock-tabs button,.codex-workshop-tabs button,.codex-archive-tabs button,.codex-army-tabs button{min-width:0;min-height:38px;padding:5px 2px;font:600 12px/1.4 system-ui;border:1px solid #b69d6c;border-radius:3px;background:linear-gradient(#f9f1df,#e4d4b0);color:#554832;box-shadow:inset 0 1px #fff9e9}
.codex-mock-tabs button[aria-pressed=true],.codex-workshop-tabs button[aria-pressed=true],.codex-archive-tabs button[aria-pressed=true],.codex-army-tabs button[aria-selected=true]{color:#fff1cf;background:linear-gradient(#354e46,#203a32);border-color:#947640;box-shadow:inset 0 -2px #b5995d}
.codex-mock-tabs~section .codex-army-tabs{top:48px;z-index:3}
.sheet .sheet-body .research,.sheet .sheet-body .gambit-slot,.sheet .sheet-body .mock,.sheet .sheet-body .army{border-color:#b5a076;border-radius:4px;background:linear-gradient(110deg,#fbf4e555,transparent),#e8dfc9;box-shadow:inset 0 1px #fff9e755}
@media(orientation:landscape) and (max-height:550px){.sheet.codex-flow-menu>.sheet-body>.sheet-head{padding-top:8px;margin-bottom:10px}.sheet.codex-flow-menu .sheet-head h1{font-size:24px}.sheet .sheet-foot{padding:5px 12px}}
.sheet .codex-mock-tabs button[aria-pressed=true],.sheet .codex-workshop-tabs button[aria-pressed=true],.sheet .codex-archive-tabs button[aria-pressed=true],.sheet .codex-army-tabs button[aria-selected=true]{color:#fff1cf!important;background:linear-gradient(#354e46,#203a32)!important;border-color:#947640!important;box-shadow:inset 0 -2px #b5995d}
.sheet.codex-flow-menu .sheet-head [hidden]{display:none!important}

.codex-mode-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0}
.codex-mode-grid .home-cmd{min-height:110px;padding:16px 12px;text-align:left;border:1px solid #a98e57;border-radius:4px;background:linear-gradient(120deg,#faf1dc,#e6d6b2);color:#353d32;box-shadow:inset 0 1px #fff9e7,0 2px 5px #59472814}
.codex-mode-grid .home-cmd b{display:block;font:400 24px/1.4 YashimaBrush,serif;margin-bottom:8px}
.codex-mode-grid .home-cmd small{display:block;font:11px/1.6 system-ui;color:#75654b;white-space:normal}
.codex-mode-grid .home-cmd:disabled{opacity:.6;background:#dfd8c6;box-shadow:none;cursor:default}
.codex-arena-steps{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:6px 0 10px;margin-bottom:8px;border-bottom:1px solid #b49961;font:12px/1.6 serif;color:#948367}
.codex-arena-steps span{padding:6px 8px;background:#e6dcc5;border-radius:3px}
.codex-arena-steps .active{background:#2c443a;color:#fff0cb;box-shadow:inset 0 -2px #b69b61}
.codex-tutorial-lesson{padding:12px;margin:10px 0;background:#e9dfc8;border:1px solid #b6a177;border-radius:4px}
.codex-tutorial-lesson h2{font:400 23px/1.4 YashimaBrush,serif;margin:0 0 7px;color:#374033}
.codex-tutorial-lesson p{font:12px/1.8 system-ui;margin:0;color:#645b47}
@media(max-width:360px){.codex-mode-grid .home-cmd{padding:12px 9px;min-height:106px}.codex-mode-grid .home-cmd b{font-size:21px}}
.codex-mode-grid .home-cmd b{letter-spacing:0}
.codex-mode-grid [data-battle-mode="tutorial"] b,.codex-mode-grid [data-battle-mode="friend"] b,.codex-mode-grid [data-battle-mode="test"] b{font-size:clamp(16px,4.6vw,21px)}

.codex-tutorial-party{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin:12px 0}.codex-tutorial-party .card-tile{min-width:0;width:100%}
.codex-tutorial-coach{position:fixed;inset:0;z-index:19000;pointer-events:none}.codex-tutorial-highlight{position:absolute;border:3px solid #f0d77d;border-radius:9px;box-shadow:0 0 8px #ffe9a2,0 0 23px #dca542b0;animation:codex-guide-glow 1.4s ease-in-out infinite;pointer-events:none}.codex-tutorial-dialog{pointer-events:auto;position:absolute;bottom:max(10px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:calc(100% - 20px);max-width:540px;max-height:45%;overflow:auto;padding:12px 14px;background:linear-gradient(135deg,#182d32fa,#0e181dfa);color:#f8f0da;border:1px solid #ad925c;border-radius:10px;box-shadow:0 4px 20px #0008;font-size:clamp(13px,3.5vw,16px);line-height:1.65}.codex-tutorial-dialog.at-top{top:max(10px,env(safe-area-inset-top));bottom:auto}.codex-tutorial-dialog>b{color:#e3c985;letter-spacing:.1em}.codex-tutorial-dialog p{margin:7px 0 10px;white-space:pre-line}.codex-tutorial-dialog button{font-size:14px;min-height:32px}.codex-tutorial-dialog .codex-tutorial-pause{float:right;background:transparent;color:#c4bca7;font-size:11px;min-height:28px;padding:4px 8px;border:0;box-shadow:none}.codex-tutorial-highlight[hidden]{display:none}
@keyframes codex-guide-glow{50%{box-shadow:0 0 13px #fff3bc,0 0 30px #edbc58e0}}
@media(prefers-reduced-motion:reduce){.codex-tutorial-highlight{animation:none}}

@media(max-width:700px) and (max-height:740px){
 #titleScreen .title-screen{min-height:100svh;padding-bottom:12px}
 #titleScreen .title-content{margin:clamp(65px,16svh,115px) 7% 12px}
 #titleScreen .landscape{min-height:170px;height:38svh;max-height:260px}
 #titleScreen .topline{padding:8px 6%}
 #titleScreen h1{margin-top:10px;font-size:clamp(62px,16vw,90px);line-height:1.15}
 #titleScreen .eight-marks{margin:10px 0}
 #titleScreen .invitation{font-size:11px;line-height:1.7;margin-bottom:12px}
 #titleScreen .begin{min-height:48px;padding:10px 18px}
 #titleScreen .story{min-height:40px;padding:8px 10px;margin-top:4px}
}
@media(min-width:701px) and (max-height:500px){
 #titleScreen .title-screen{min-height:100svh}
 #titleScreen .topline{padding:8px 5%}
 #titleScreen .title-content{width:min(580px,62%);margin:5px 0 12px 5%}
 #titleScreen .signature{font-size:10px;gap:10px}
 #titleScreen .seal{font-size:11px;padding:3px}
 #titleScreen h1{font-size:64px;line-height:1.1;margin-top:5px}
 #titleScreen .english{font-size:9px;margin-top:0}
 #titleScreen .eight-marks{display:none}
 #titleScreen .invitation{font-size:10px;line-height:1.4;margin:7px 0}
 #titleScreen .menu{display:grid;grid-template-columns:1fr 1fr;gap:4px 12px;width:100%;margin:0}
 #titleScreen .begin{grid-column:1/-1;min-height:42px;font-size:18px;padding:6px 18px}
 #titleScreen .story{min-height:34px;margin:0;padding:5px 8px;font-size:12px}
}

#cutin.codex-unified .codex-cutin-panel.is-ribbon{width:100%;height:100%;min-height:0;overflow:visible;color:#fff2d4;--ribbon-team:#0d3f53;--ribbon-gold:#c5a15b;--ribbon-font:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif}
#cutin.enemy .codex-cutin-panel.is-ribbon{--ribbon-team:#671f22;--ribbon-gold:#c8a166}
.is-ribbon .codex-cutin-picture{left:0;right:auto;top:1%;bottom:0;width:48%;height:96%;padding:0;object-fit:contain;object-position:left bottom;filter:drop-shadow(1px 2px 2px #15231a66);z-index:2}
.is-ribbon .codex-cutin-caster{left:2%;right:auto;bottom:3%;width:28%;padding:5px 9px;text-align:center;box-sizing:border-box;background:linear-gradient(100deg,var(--ribbon-team),#111b20e6);border:1px solid var(--ribbon-gold);font:700 clamp(16px,2.5vw,25px)/1.2 var(--ribbon-font);color:#fff4df;text-shadow:1px 1px #071014;z-index:4;clip-path:polygon(3% 0,90% 0,100% 100%,0 100%)}
.is-ribbon .codex-cutin-ribbon{position:absolute;left:31%;right:2%;bottom:7%;display:flex;flex-direction:column;filter:drop-shadow(1px 3px 3px #05121055);z-index:3;font-family:var(--ribbon-font);box-sizing:border-box}
.is-ribbon .codex-cutin-kind{position:relative;inset:auto;align-self:flex-start;padding:3px 16px 3px 9px;background:linear-gradient(100deg,var(--ribbon-team),#131d1be8);border:1px solid var(--ribbon-gold);border-bottom:0;clip-path:polygon(0 0,90% 0,100% 100%,0 100%);font:700 12px/1.4 var(--ribbon-font);text-shadow:none;color:#fff1d3}
.is-ribbon .codex-cutin-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;min-height:48px;gap:8px;padding:4px 8px 4px 14px;background:linear-gradient(100deg,#142b3370,#0c1b2488),var(--codex-name-gold-flow),var(--ribbon-team);background-size:auto,cover,auto;border:1px solid var(--ribbon-gold);border-bottom:2px solid var(--ribbon-gold)}
.is-ribbon .codex-cutin-title{position:static;inset:auto;writing-mode:horizontal-tb;text-orientation:mixed;letter-spacing:1px;font:700 34px/1.2 var(--ribbon-font);text-align:center;color:#fff5df;text-shadow:1px 2px #061518;white-space:nowrap;min-width:0;overflow:visible}
.is-ribbon .codex-cutin-cost{display:flex;align-items:center;justify-content:center;gap:6px;align-self:stretch;padding:0 9px;background:#091719d9;border:1px solid #bc985580;transform:skewX(-10deg);white-space:nowrap;color:#f6e4b5}
.is-ribbon .codex-cutin-cost[hidden],.is-ribbon .codex-cutin-time[hidden]{display:none}
.is-ribbon .codex-cutin-cost>*{transform:skewX(10deg)}
.is-ribbon .codex-cutin-cost small{font:600 11px/1.25 var(--ribbon-font)}
.is-ribbon .codex-cutin-cost strong{font:600 30px/1 var(--ribbon-font)}
.is-ribbon .codex-cutin-description{position:relative;inset:auto;margin:0;min-height:0;padding:9px 12px 7px;border:1px solid var(--ribbon-gold);border-top:0;border-bottom:0;border-radius:0;background:linear-gradient(100deg,#091514f0,#101b18e0);box-shadow:none;font:600 16px/1.65 var(--ribbon-font);color:#fff1d5;text-align:center;text-shadow:1px 1px #030a08;overflow-wrap:anywhere}
.is-ribbon .codex-cutin-description::after{display:none!important}
.is-ribbon .codex-cutin-time{margin:0;padding:4px 12px 5px;border:1px solid var(--ribbon-gold);border-top:1px solid #ba98534a;background:#0b1513e8;color:#e9d8aa;font:600 12px/1.4 var(--ribbon-font);text-align:center}
.is-ribbon.is-narrow .codex-cutin-picture{left:0;top:6%;width:93%;height:70%;object-position:left bottom}
.is-ribbon.is-narrow .codex-cutin-caster{left:3%;bottom:auto;top:52%;width:40%;font-size:18px}
.is-ribbon.is-narrow .codex-cutin-ribbon{left:3%;right:3%;bottom:5%}
.is-ribbon.is-narrow .codex-cutin-heading{min-height:46px;padding:4px 7px;gap:6px}
.is-ribbon.is-narrow .codex-cutin-cost{padding:0 7px;gap:5px}
.is-ribbon.is-narrow .codex-cutin-cost small{font-size:10px}
.is-ribbon.is-narrow .codex-cutin-cost strong{font-size:28px}
.is-ribbon.is-narrow .codex-cutin-description{padding:8px 10px;font-size:14px;line-height:1.6}
.is-ribbon.is-narrow .codex-cutin-time{font-size:11px}
@media(max-height:380px){.is-ribbon .codex-cutin-heading{min-height:38px}.is-ribbon .codex-cutin-cost strong{font-size:26px}.is-ribbon .codex-cutin-description{padding:6px 9px}.is-ribbon .codex-cutin-time{padding:2px 9px;font-size:11px}.is-ribbon .codex-cutin-kind{font-size:10px}}
.is-ribbon .codex-cutin-heading{background-blend-mode:normal,luminosity,normal}
.is-ribbon.is-narrow .codex-cutin-caster{top:auto;bottom:calc(5% + var(--codex-ribbon-height,160px) + 8px)}
.is-ribbon.is-narrow .codex-cutin-picture{top:auto;bottom:calc(5% + var(--codex-ribbon-height,160px) - 20px);height:calc(91% - var(--codex-ribbon-height,160px));object-position:left bottom}
#cutin.codex-unified .codex-cutin-panel.is-ribbon .codex-cutin-description{position:relative;background:linear-gradient(100deg,#091514f0,#101b18e0);color:#fff1d5;border:1px solid var(--ribbon-gold);border-top:0;border-bottom:0;border-radius:0;box-shadow:none;text-shadow:1px 1px #030a08;font-family:var(--ribbon-font);font-weight:500;text-wrap:pretty}
#cutin.codex-unified .codex-cutin-panel.is-ribbon .codex-cutin-description::after{display:none!important}

#cutin.codex-unified .codex-cutin-panel.is-ribbon .codex-cutin-picture{left:0;top:0;bottom:0;width:60%;height:100%;object-position:left bottom;mask-image:linear-gradient(#000 84%,transparent 100%);filter:drop-shadow(0 0 2px #fff0ce70)}
#cutin.codex-unified .codex-cutin-panel.is-ribbon.is-great .codex-cutin-picture{width:66%;height:100%;right:auto;padding:0;object-position:left bottom;mask-image:none;filter:none}
.codex-cutin-ink{position:absolute;left:-6%;top:-8%;width:73%;height:118%;object-fit:fill;z-index:1;pointer-events:none;opacity:.88}
#cutin.codex-unified .is-ribbon .codex-cutin-caster{display:none}
#cutin.codex-unified .is-ribbon .codex-cutin-ribbon{left:33%;right:4%;bottom:14%;isolation:isolate}
.codex-window-ink{position:absolute;left:-8%;top:-30%;width:116%;height:160%;object-fit:fill;z-index:-1;opacity:.85;pointer-events:none}
#cutin.enemy .codex-window-ink{filter:sepia(.5) hue-rotate(145deg) saturate(.7)}
#cutin.codex-unified .is-ribbon .codex-cutin-kind{position:absolute;bottom:100%;left:3%;max-width:94%;padding:3px 18px 3px 12px;font-size:15px;letter-spacing:.12em;background:linear-gradient(100deg,#101d20f2,var(--ribbon-team));color:#fff1d3;z-index:3;clip-path:polygon(4% 0,92% 0,100% 100%,0 100%)}
#cutin.codex-unified .is-ribbon .codex-cutin-heading{min-height:46px;position:relative;background:linear-gradient(90deg,#0a283230,var(--ribbon-team));border:0;border-bottom:1px solid #d4b56c90;padding:7px 12px;clip-path:polygon(2% 0,100% 0,98% 100%,0 100%)}
#cutin.codex-unified .is-ribbon .codex-cutin-cost{background:#0a161bd9;border:0;border-left:1px solid #d4b56c90}
#cutin.codex-unified .is-ribbon .codex-cutin-title{color:#fff5df;font-weight:700;writing-mode:horizontal-tb}
#cutin.codex-unified .codex-cutin-panel.is-ribbon .codex-cutin-description{position:relative;inset:auto;background:linear-gradient(90deg,#07120b80,#121712bb,#15191290);border:0;border-radius:0;padding:10px 16px;color:#fff1d5;font-weight:500;text-shadow:1px 1px 2px #030a08;line-height:1.6;overflow-wrap:break-word}
#cutin.codex-unified .is-ribbon .codex-cutin-time{background:#0b15138c;border:0;border-top:1px solid #d4b56c60;padding:5px 14px;color:#f2dfa9}
#cutin.codex-unified .is-ribbon.is-narrow .codex-cutin-picture{left:-9%;top:4%;bottom:auto;width:110%;height:91%;object-position:left bottom}
#cutin.codex-unified .is-ribbon.is-narrow.is-great .codex-cutin-picture{left:-12%;top:12%;width:120%;height:78%;object-position:center bottom}
#cutin.codex-unified .is-ribbon.is-narrow .codex-cutin-ink{left:-23%;top:5%;width:139%;height:96%}
#cutin.codex-unified .is-ribbon.is-narrow .codex-cutin-ribbon{left:5%;right:5%;bottom:14%}
#cutin.codex-unified .is-ribbon.is-narrow .codex-cutin-heading{padding:7px 9px;min-height:42px;gap:5px}
#cutin.codex-unified .is-ribbon.is-narrow .codex-cutin-kind{font-size:14px}
#cutin.codex-unified .is-ribbon.is-narrow .codex-cutin-description{padding:9px 11px}
@media(max-height:380px){#cutin.codex-unified .is-ribbon .codex-cutin-ribbon{bottom:12%}#cutin.codex-unified .is-ribbon .codex-cutin-heading{min-height:34px;padding-top:4px;padding-bottom:4px}#cutin.codex-unified .is-ribbon .codex-cutin-description{padding:6px 12px}#cutin.codex-unified .is-ribbon .codex-cutin-kind{font-size:12px}}

#eventCut.codex-painted-kill{display:block;background:transparent;isolation:isolate;--kill-x:18%;--kill-width:min(58%,380px)}
#eventCut.codex-painted-kill.enemy{--kill-x:82%}
#eventCut.codex-painted-kill .codex-event-ink{position:absolute;left:var(--kill-x);bottom:6%;transform:translateX(-50%);width:var(--kill-width);height:82%;object-fit:fill;z-index:1;opacity:.93;pointer-events:none}
#eventCut.codex-painted-kill.enemy .codex-event-ink{filter:sepia(.65) hue-rotate(145deg) saturate(.8)}
#eventCut.codex-painted-kill .ev-portrait{display:none}
#eventCut.codex-painted-kill .ev-card{position:absolute;left:var(--kill-x);right:auto;top:8%;bottom:auto;transform:translateX(-50%);height:65%;width:var(--kill-width);opacity:1;animation:none;z-index:0;overflow:hidden}
#eventCut.codex-painted-kill .ev-card img{object-fit:cover;object-position:50% 20%;mask-image:linear-gradient(#000 77%,transparent);filter:none}
#eventCut.codex-painted-kill .ev-name{position:absolute;left:var(--kill-x);bottom:27%;transform:translateX(-50%);width:var(--kill-width);padding:0;margin:0;background:transparent;border:0;border-radius:0;box-sizing:border-box;text-align:center;font:700 clamp(18px,3.5vw,27px)/1.3 "Yu Mincho","Hiragino Mincho ProN",serif;color:#fff4da;text-shadow:1px 2px #091516;z-index:3;animation:none}
#eventCut.codex-painted-kill .ev-word{position:absolute;left:var(--kill-x);bottom:7%;transform:translateX(-50%) rotate(-3deg);margin:0;color:#fff0d0;-webkit-text-stroke:.4px #292318;text-shadow:1px 2px #0e1817;z-index:3;animation:none;font-size:clamp(46px,8vw,76px)}
#eventCut.codex-painted-kill .ev-word .ev-ink{max-width:100%;max-height:100%}
#eventCut.codex-painted-kill .codex-event-extension{position:absolute;left:var(--kill-x);bottom:12%;transform:translateX(-50%) rotate(3deg);padding:3px 10px;border:1px solid #dac37d;background:#191023d9;color:#ffe5a6;font:700 clamp(15px,3vw,23px)/1.3 "Yu Mincho",serif;text-shadow:1px 1px #080a06;z-index:4;white-space:nowrap;box-shadow:0 1px 6px #070a0750}
#eventCut .codex-event-ink[hidden],#eventCut .codex-event-extension[hidden]{display:none}
@media(orientation:portrait){#eventCut.codex-painted-kill,#eventCut.codex-painted-kill.enemy{--kill-x:50%;--kill-width:min(94%,370px)}#eventCut.codex-painted-kill .codex-event-ink{height:60%;bottom:15%}#eventCut.codex-painted-kill .ev-card{height:51%;top:18%}#eventCut.codex-painted-kill .ev-name{bottom:33%}#eventCut.codex-painted-kill .ev-word{bottom:21%;font-size:72px}#eventCut.codex-painted-kill .codex-event-extension{bottom:25%}}
@media(prefers-reduced-motion:reduce){#eventCut.codex-painted-kill{animation:none}}
.codex-effect-clause{display:inline-block;max-width:100%;vertical-align:top;overflow-wrap:break-word}
#eventCut.codex-painted-kill{--kill-x:24%}#eventCut.codex-painted-kill.enemy{--kill-x:76%}
@media(orientation:portrait){#eventCut.codex-painted-kill,#eventCut.codex-painted-kill.enemy{--kill-x:50%}}
.codex-window-ink{top:-43.333%;height:166.667%}
#cutin.enemy .codex-window-ink,#eventCut.codex-painted-kill.enemy .codex-event-ink{filter:none}
#cutin.codex-unified .is-ribbon .codex-cutin-heading{background:transparent}
#eventCut.codex-painted-kill .ev-word{font-family:YashimaBrush,YashimaBrush,"Yu Mincho",serif;line-height:1.1;animation:codexKillWriting .42s ease-out both}
@keyframes codexKillWriting{from{clip-path:inset(0 100% 0 0);opacity:.3}to{clip-path:inset(0);opacity:1}}
@media(prefers-reduced-motion:reduce){#eventCut.codex-painted-kill .ev-word{animation:none}}
#cutin.codex-unified .is-ribbon.is-narrow.is-great .codex-cutin-picture{object-fit:cover;object-position:50% 30%;mask-image:linear-gradient(transparent,#000 8%,#000 92%,transparent)}
.codex-cutin-embers{position:absolute;inset:0;z-index:2;pointer-events:none}
.codex-cutin-embers i{position:absolute;left:var(--ember-x);top:var(--ember-y);width:3px;height:7px;border-radius:65% 10%;background:#e9c971;opacity:0;transform:rotate(-25deg)}
#cutin.codex-cutin-playing .codex-cutin-ink{animation:codexInkBloom .75s cubic-bezier(.2,.8,.2,1) .48s both}
#cutin.codex-cutin-playing .codex-cutin-embers i{animation:codexEmberFlight 1.25s ease-out var(--ember-delay) both}
@keyframes codexInkBloom{from{opacity:0;transform:scale(.87)}to{opacity:.88;transform:scale(1)}}
@keyframes codexEmberFlight{0%{opacity:0;transform:translate(0,0) rotate(-25deg)}20%{opacity:.85}100%{opacity:0;transform:translate(34px,-24px) rotate(35deg)}}
#eventCut.codex-painted-kill .ev-name{bottom:calc(7% + clamp(46px,8vw,76px) + 16px)}
@media(orientation:portrait){#eventCut.codex-painted-kill .ev-name{bottom:calc(21% + 86px)}}
@media(prefers-reduced-motion:reduce){#cutin.codex-cutin-playing .codex-cutin-ink{animation:none}.codex-cutin-embers{display:none}}
#eventCut.codex-painted-kill .ev-card img{object-position:50% 0;mask-image:linear-gradient(transparent,#000 5%,#000 77%,transparent)}
@media(orientation:portrait){#eventCut.codex-painted-kill .ev-name{bottom:calc(21% + 62px)}}

#cutin.codex-unified .is-ribbon.is-narrow:not(.is-great) .codex-cutin-picture{left:-6.75%;right:auto;width:82.5%;height:68.25%;object-position:left bottom}
#cutin.codex-unified .is-ribbon.is-narrow:not(.is-great) .codex-cutin-ink{left:-17.25%;right:auto;width:104.25%;height:72%;--codex-ink-direction:1}
#cutin.enemy.codex-unified .is-ribbon.is-narrow:not(.is-great) .codex-cutin-picture{left:auto;right:-6.75%;object-position:right bottom}
#cutin.enemy.codex-unified .is-ribbon.is-narrow:not(.is-great) .codex-cutin-ink{left:auto;right:-17.25%;--codex-ink-direction:-1;transform:scaleX(-1)}
#cutin.codex-unified .is-ribbon.is-narrow:not(.is-great) .codex-cutin-embers{width:75%;height:75%;top:5%}
#cutin.enemy.codex-unified .is-ribbon.is-narrow:not(.is-great) .codex-cutin-embers{left:auto;right:0;transform:scaleX(-1)}
@keyframes codexInkBloom{from{opacity:0;transform:scale(.87) scaleX(var(--codex-ink-direction,1))}to{opacity:.88;transform:scale(1) scaleX(var(--codex-ink-direction,1))}}

#cutin .codex-category-painted{--category-size:min(82vw,70vh,340px);--category-flow-x:-95px;position:absolute;left:50%;top:42%;width:var(--category-size);height:var(--category-size);font-size:0;text-shadow:none;-webkit-text-stroke:0;pointer-events:none;overflow:visible;filter:drop-shadow(0 2px 2px #10201755)}
#cutin.enemy .codex-category-painted{--category-flow-x:95px}
.codex-category-painted .category-sprite,.codex-category-painted .category-extra{position:absolute;inset:0;background-repeat:no-repeat;background-size:300% 200%;transform-origin:center;will-change:transform,opacity}
.codex-category-painted .category-sprite{background-image:var(--category-sheet);background-position:var(--category-position)}
.codex-category-painted .category-extra{background-image:var(--category-extra-sheet)}
.codex-category-painted .category-ink{mask-image:radial-gradient(circle,transparent 24%,#000 41%,#000 75%,transparent 89%);opacity:0}
.codex-category-painted .category-symbol{opacity:0}
.codex-category-painted .category-burst{background-position:100% 0;inset:-8%;opacity:0}
.codex-category-painted .category-glint{background-position:50% 100%;inset:-4%;opacity:0;mask-image:radial-gradient(circle,transparent 21%,#000 39%)}
.codex-category-painted .category-flow{background-position:0 100%;inset:-9%;opacity:0}
.codex-category-painted .category-fallback{position:absolute;inset:0;display:grid;place-items:center;font:400 clamp(70px,23vw,110px)/1 YashimaBrush,YashimaBrush,serif;color:#f4e7c7;text-shadow:0 2px 3px #141d19;-webkit-text-stroke:1px #54462d}
.codex-category-painted.has-category-art .category-fallback{display:none}
.codex-category-painted:not(.has-category-art) .category-sprite,.codex-category-painted:not(.has-category-art) .category-extra{display:none}
.codex-category-painted .category-spark{position:absolute;left:50%;top:50%;width:3px;height:7px;background:#ffe3a0;border-radius:65% 10%;opacity:0;transform:rotate(-30deg)}
#cutin.codex-cutin-playing .codex-category-painted{animation:codexCategoryEntrance 1.5s ease-out both}
#cutin.codex-cutin-playing .category-ink{animation:codexCategoryInk .82s ease-out both}
#cutin.codex-cutin-playing .category-symbol{animation:codexCategoryWriting 1.38s cubic-bezier(.2,.7,.2,1) .1s both}
#cutin.codex-cutin-playing .category-burst{animation:codexCategoryBurst .9s ease-out .35s both}
#cutin.codex-cutin-playing .category-glint{animation:codexCategoryGlint .45s ease-out .37s both}
#cutin.codex-cutin-playing .category-flow{animation:codexCategoryFlow .8s ease-in-out .68s both}
#cutin.codex-cutin-playing .category-spark{animation:codexCategorySpark .9s ease-out var(--spark-delay) both}
#cutin.codex-cutin-playing .codex-cutin-panel{animation-delay:1.1s}
#cutin.codex-cutin-playing .codex-cutin-ink{animation-delay:1.48s}
#cutin.codex-cutin-playing .codex-cutin-embers i{animation-delay:calc(var(--ember-delay) + .65s)}
@keyframes codexCategoryEntrance{0%{opacity:0;transform:translate(-50%,-50%) scale(.78)}12%{opacity:1;transform:translate(-50%,-50%) scale(.96)}32%,69%{opacity:1;transform:translate(-50%,-50%) scale(1)}100%{opacity:0;transform:translate(-50%,-50%) scale(1.09)}}
@keyframes codexCategoryInk{0%{opacity:0;transform:scale(.65) rotate(-12deg)}25%{opacity:.95}68%{opacity:.85;transform:scale(1) rotate(0)}100%{opacity:0;transform:scale(1.08)}}
@keyframes codexCategoryWriting{0%{opacity:0;clip-path:inset(0 100% 0 0)}19%{opacity:1;clip-path:inset(0)}66%{opacity:1}100%{opacity:0;clip-path:inset(0)}}
@keyframes codexCategoryBurst{0%{opacity:0;transform:scale(.55)}17%{opacity:.85;transform:scale(.92)}100%{opacity:0;transform:scale(1.25)}}
@keyframes codexCategoryGlint{0%{opacity:0;transform:scale(.6)}20%{opacity:.72;transform:scale(.95)}100%{opacity:0;transform:scale(1.16)}}
@keyframes codexCategoryFlow{0%{opacity:0;transform:translateX(0) scale(.9)}24%{opacity:.48}100%{opacity:0;transform:translateX(var(--category-flow-x)) scale(1.08)}}
@keyframes codexCategorySpark{0%{opacity:0;transform:translate(0,0) scale(.5)}17%{opacity:.95}100%{opacity:0;transform:translate(var(--spark-x),var(--spark-y)) rotate(45deg) scale(.35)}}
@media(prefers-reduced-motion:reduce){#cutin .codex-category-painted{display:none}#cutin.codex-cutin-playing .codex-cutin-panel,#cutin.codex-cutin-playing .codex-cutin-ink,#cutin.codex-cutin-playing .codex-cutin-embers i{animation:none}.category-spark{display:none}}

.codex-category-painted .category-ring{background-position:100% 100%;inset:-4%;display:none;opacity:0}
#cutin.codex-cutin-playing .category-ring{animation:codexCategoryRing .95s ease-out .32s both}
#cutin .codex-category-painted:is([data-category="旗"],[data-category="琴"],[data-category="陣"],[data-category="壺"],[data-category="鈴"],[data-category="鐘"],[data-category="玉"],[data-category="鏡"],[data-category="印"],[data-category="符"],[data-category="書"],[data-category="霊"],[data-category="煙"],[data-category="砂"]) :is(.category-burst,.category-glint){display:none}
#cutin .codex-category-painted:is([data-category="鎧"],[data-category="兜"],[data-category="柵"],[data-category="檻"],[data-category="塔"],[data-category="台"],[data-category="盾"],[data-category="水鞭"],[data-category="炎鞭"],[data-category="爆鞭"],[data-category="雷鞭"]) .category-glint{display:none}
#cutin .codex-category-painted:is([data-category="琴"],[data-category="玉"],[data-category="鏡"],[data-category="陣"],[data-category="印"],[data-category="霊"],[data-category="壺"]) .category-ring{display:block}
#cutin .codex-category-painted:is([data-category="槍"],[data-category="矢"],[data-category="杖"]) .category-glint{--category-glint-angle:-45deg}
#cutin.codex-cutin-playing .codex-category-painted:is([data-category="槍"],[data-category="矢"],[data-category="杖"],[data-category="塔"]) .category-symbol{animation-name:codexCategoryThrust}
@keyframes codexCategoryGlint{0%{opacity:0;transform:scale(.6) rotate(var(--category-glint-angle,0deg))}20%{opacity:.72;transform:scale(.95) rotate(var(--category-glint-angle,0deg))}100%{opacity:0;transform:scale(1.16) rotate(var(--category-glint-angle,0deg))}}
@keyframes codexCategoryRing{0%{opacity:0;transform:scale(.66) rotate(-10deg)}23%{opacity:.42}100%{opacity:0;transform:scale(1.2) rotate(8deg)}}
@keyframes codexCategoryThrust{0%{opacity:0;clip-path:inset(100% 0 0 0)}19%{opacity:1;clip-path:inset(0)}66%{opacity:1}100%{opacity:0;clip-path:inset(0)}}


.codex-tutorial-dialog{overflow:visible;isolation:isolate;bottom:16px;max-width:960px;width:calc(100% - 32px);max-height:none;padding:32px 30% 22px 30px;border:1px solid #b99a55;border-radius:2px;background:linear-gradient(115deg,#081e24f7,#10262cf8 58%,#0b1b21ef);box-shadow:0 0 0 3px #152a29b0,0 0 0 4px #89734188,0 8px 24px #020b1055;font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(16px,2.2vw,21px);line-height:1.85;color:#fff4df;}
.codex-tutorial-dialog::before{content:'';position:absolute;inset:var(--codex-dialogue-frame-inset);z-index:-1;pointer-events:none;background-image:var(--codex-dialogue-frame,var(--codex-name-gold-flow));background-size:105% 100%;background-position:center;opacity:.35;border-radius:3px;}
.codex-tutorial-dialog p{position:relative;margin:0 0 14px;min-height:2em;text-shadow:0 1px 2px #000;}
.codex-tutorial-speaker{position:absolute!important;left:18px;top:-18px;padding:3px 22px!important;background:#0a2027f5;border:1px solid #d0ad62;color:#ffe2a0!important;letter-spacing:.15em;font-size:20px;line-height:1.45;clip-path:polygon(4% 0,96% 0,100% 50%,96% 100%,4% 100%,0 50%);}
.codex-tutorial-bust{position:absolute;right:-2%;bottom:0;width:34%;height:clamp(230px,43vh,340px);overflow:hidden;pointer-events:none;z-index:-1;mask-image:linear-gradient(#000 0%,#000 72%,transparent 100%);}
.codex-tutorial-bust img{position:absolute;top:-4%;left:var(--bust-left);width:var(--bust-width);height:auto;max-width:none;filter:drop-shadow(0 0 3px #081519);}
.codex-tutorial-dialog button[data-tutorial-next]{float:none;display:block;margin:0 0 0 auto;padding:4px 8px;min-height:32px;background:transparent;border:0;box-shadow:none;color:#ebca87;font:inherit;font-size:14px;cursor:pointer;}
.codex-tutorial-dialog button.codex-tutorial-pause{position:absolute;bottom:10px;left:18px;color:#b9b7a5;font-size:11px;min-height:26px;padding:3px 8px;float:none;}
.codex-tutorial-dialog.at-top{top:28px;bottom:auto;}
.codex-tutorial-dialog.at-top .codex-tutorial-bust{height:100%;right:0;}
.codex-tutorial-live{position:fixed;z-index:19000;bottom:calc(100px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:12px;width:max-content;max-width:calc(100% - 20px);padding:8px 16px;background:#0b222be8;border:1px solid #b49a66;color:#fff2d7;font-family:"Yu Mincho",serif;pointer-events:auto;}
.codex-tutorial-live span{font-size:11px;color:#e7c278;white-space:nowrap;}.codex-tutorial-live b{font-size:14px;}.codex-tutorial-live button{font-size:10px;padding:4px;min-height:28px;background:transparent;border:0;color:#bdb69b;}
.codex-tutorial-demonstrating #teamRail,.codex-tutorial-demonstrating~#roster{pointer-events:none;opacity:.5;}
.codex-tutorial-curtain{position:fixed;inset:0;z-index:40000;background:#000;opacity:0;transition:opacity .7s ease;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#f4e7c4;pointer-events:auto;font-family:"Yu Mincho","Hiragino Mincho ProN",serif;}
.codex-tutorial-curtain.dark{opacity:1;}.codex-tutorial-curtain>*{opacity:0;transition:opacity .7s ease;}.codex-tutorial-curtain.title-visible>*{opacity:1;}.codex-tutorial-curtain h1{font-size:clamp(38px,8vw,66px);font-weight:400;letter-spacing:.35em;margin:14px 0;}.codex-tutorial-curtain p{font-size:22px;letter-spacing:.3em;}.codex-tutorial-curtain small{color:#ac9874;letter-spacing:.25em;}.codex-tutorial-curtain.revealing{opacity:0;pointer-events:none;}
.codex-tutorial-opening-scene{min-height:60vh;background:radial-gradient(ellipse at 50% 40%,#caba8a30,transparent 65%),linear-gradient(160deg,#252c31,#314441 55%,#182727);display:grid;place-items:center;border:1px solid #a38b5566;color:#e5d1a3;font-family:"Yu Mincho",serif;letter-spacing:.25em;}.codex-tutorial-opening-scene span{align-self:start;padding:32px;}
#talk{z-index:30000!important;}
@media(max-width:600px) and (min-height:500px){
 .codex-tutorial-dialog{bottom:12px;width:calc(100% - 24px);padding:30px 20px 32px;font-size:17px;line-height:1.85;}
 .codex-tutorial-dialog p{min-height:0;}.codex-tutorial-speaker{font-size:18px;left:12px;top:-17px;}
 .codex-tutorial-bust{right:-2%;bottom:calc(100% - 6px);width:62%;height:clamp(160px,26vh,235px);mask-image:linear-gradient(#000 0%,#000 78%,transparent 100%);}
 .codex-tutorial-bust img{width:var(--bust-width);top:-7%;}.codex-tutorial-dialog.at-top{top:18px;padding-right:26%;font-size:15px;}.codex-tutorial-dialog.at-top .codex-tutorial-bust{width:35%;bottom:0;height:100%;}
 .codex-tutorial-live{bottom:110px;padding:7px 10px;gap:8px;}
}
@media(max-height:499px){.codex-tutorial-dialog{bottom:8px;max-width:900px;padding:20px 26% 12px 20px;font-size:15px;line-height:1.65;}.codex-tutorial-dialog p{margin-bottom:5px;}.codex-tutorial-bust{height:200px;width:30%;}.codex-tutorial-speaker{font-size:17px;}.codex-tutorial-live{bottom:75px;}}
@media(prefers-reduced-motion:reduce){.codex-tutorial-curtain,.codex-tutorial-curtain>*{transition-duration:.1s;}}
.codex-tutorial-dialog::before{inset:-30% -3%;opacity:.9;}
body.codex-tutorial-demo-active #roster,body.codex-tutorial-demo-active #treasure,body.codex-tutorial-demo-active #teamRail,body.codex-tutorial-demo-active #moraleValue{pointer-events:none;}
body.codex-tutorial-demo-active #teamRail{opacity:.45;}
.codex-tutorial-opening-scene{background:linear-gradient(#0e1c2522,#12262977),var(--codex-tutorial-road) center/cover;}
.codex-tutorial-opening-scene span{background:#11232ba6;border:1px solid #a68b5266;padding:10px 20px;margin-top:22px;}


#meta.codex-opening-mode{padding:0!important;background:#070d10;overflow:hidden;}
#meta.codex-opening-mode>.sheet-head,#meta.codex-opening-mode>.sheet-foot{display:none!important;}
#meta.codex-opening-mode #metaBody{padding:0!important;margin:0;max-height:none;height:100%;overflow:hidden;}
.codex-opening-scene{position:absolute;inset:0;background-color:#091016;background-position:center;background-size:cover;isolation:isolate;}
.codex-opening-scene::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(#06121945,transparent 35%,#05101699);}
.codex-opening-scene.dragon{background-image:radial-gradient(ellipse at 50% 40%,#a3937766,transparent 70%),var(--codex-opening-dojo);background-position:center;}
.codex-opening-scene.dragon::before{content:'';position:absolute;inset:4% 10% 22%;background:var(--codex-opening-dragon) center/contain no-repeat;filter:drop-shadow(0 0 25px #040c14);animation:codex-dragon-arrival 1.6s ease-out both;}
.codex-opening-scene.hall{background-image:var(--codex-opening-hall);}
.codex-opening-scene.dojo{background-image:var(--codex-opening-dojo);}
.codex-opening-scene.black{background:#030406;}
.codex-opening-location{position:absolute;top:max(20px,env(safe-area-inset-top));left:24px;z-index:1;color:#f4e7c2;text-shadow:0 2px 5px #000;font:18px "Yu Mincho",serif;letter-spacing:.2em;}
.codex-tutorial-dialog.without-portrait{padding-right:30px;}
.codex-tutorial-dialog.codex-story-choices{padding-bottom:40px;}
.codex-protagonist-choices{display:grid;gap:10px;}
.codex-protagonist-choices button{display:grid;grid-template-columns:24px 1fr;gap:8px;width:100%;margin:0;min-height:48px;padding:10px 14px;text-align:left;font:inherit;font-size:17px;line-height:1.6;border:1px solid #bca15c88;border-radius:2px;color:#f8eed7;background:linear-gradient(110deg,#182d32e8,#0d1c22e8);box-shadow:none;}
.codex-protagonist-choices button:hover,.codex-protagonist-choices button:focus-visible{background:#2b4144;border-color:#e5c879;outline:2px solid #e5c879;outline-offset:2px;}
.codex-protagonist-choices button>span:first-child{color:#ebcb86;}
.codex-story-curtain{position:fixed;inset:0;z-index:40000;opacity:0;background:#030406;pointer-events:all;transition:opacity .65s ease;}
.codex-story-curtain.dark{opacity:1;}
.messenger-arrives~.codex-tutorial-coach .codex-tutorial-bust{animation:codex-messenger-arrival .45s ease-out both;}
body:has(.messenger-arrives) .codex-tutorial-bust{animation:codex-messenger-arrival .45s ease-out both;}
@keyframes codex-dragon-arrival{from{opacity:0;transform:scale(1.08) translateY(-20px)}to{opacity:1;transform:none}}
@keyframes codex-messenger-arrival{from{opacity:0;transform:translateX(50px)}to{opacity:1;transform:none}}
@media(max-width:600px) and (min-height:500px){.codex-tutorial-dialog.without-portrait{padding-right:20px;}.codex-protagonist-choices button{font-size:16px;padding:8px 10px;}.codex-opening-scene.dragon::before{inset:10% 0 32%;}}
@media(max-height:499px){.codex-tutorial-dialog.without-portrait{padding-right:20px;}.codex-story-choices p{display:none;}.codex-protagonist-choices{gap:6px;}.codex-protagonist-choices button{font-size:15px;min-height:38px;padding:5px 10px;}.codex-tutorial-dialog.codex-story-choices{padding-bottom:32px;}}
@media(prefers-reduced-motion:reduce){.codex-story-curtain{transition-duration:.1s;}.codex-opening-scene.dragon::before,body:has(.messenger-arrives) .codex-tutorial-bust{animation:none;}}


.codex-workshop-row>details{margin:0!important;}
.codex-workshop-row summary .codex-order-flick{touch-action:none;user-select:none;cursor:ns-resize;min-width:36px;min-height:44px;margin:0;padding:0 7px;border:0;background:transparent;box-shadow:none;color:#7e642c;font:24px/1 system-ui;}
.codex-workshop-row summary .codex-order-flick:focus-visible{outline:2px solid #9a7a38;outline-offset:1px;}
#rules .codex-native-order-flick{touch-action:none;user-select:none;cursor:ns-resize;}


#codexLeftBattleRail .codex-team-commands{height:100%;max-height:386px;box-sizing:border-box;gap:5px;padding:3px 0;justify-content:center;}
#codexLeftBattleRail .codex-team-commands button{flex:1 1 0;min-height:30px;max-height:56px;height:auto;padding:3px 5px;font-size:11px;line-height:14px;}
.codex-order-locked{opacity:.7;}
#instructionDialog button small{display:block;font-size:11px;line-height:1.5;font-weight:400;margin-top:4px;}


#roster .unit-button,#roster .skill{border-radius:4px;background:radial-gradient(ellipse at 0 0,#fff4d877,transparent 75%),repeating-linear-gradient(100deg,#8e6e2510 0 1px,transparent 1px 5px),#d7c8a8!important;box-shadow:inset 0 0 0 1px #f5dfab88,inset 0 -2px 3px #65533228,0 2px 3px #0009;}
#roster .skill.codex-readiness{position:relative;isolation:isolate;overflow:hidden;}
#roster .skill.codex-readiness::after{content:"";position:absolute;inset:0;border-radius:inherit;z-index:0;pointer-events:none;background:linear-gradient(90deg,#fff0bd22 0% var(--codex-ready-progress,0%),#06121d57 var(--codex-ready-progress,0%) 100%);}
#roster .skill.codex-readiness>b,#roster .skill.codex-readiness>.codex-skill-meta{position:relative;z-index:1;}
#roster .codex-skill-meta{display:flex;width:100%;min-width:0;align-items:center;justify-content:space-between;gap:2px;margin-top:2px;line-height:1.15;}
#roster .codex-skill-meta small{font-size:8.5px;flex:none;white-space:nowrap;}
#roster .codex-recast{font-size:8.5px;font-weight:900;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums;}
#roster .skill.codex-cast-ready{box-shadow:inset 0 0 0 1px #fff0bb,0 0 5px #e9cb7770!important;}
#roster .skill.codex-cast-ready .codex-recast{color:inherit;}
#roster .skill.codex-cast-paused{animation-play-state:paused;}
#roster .codex-recast.codex-ready-arrival{animation:codexReadyArrival .85s ease-out 1;}
#roster .skill.codex-cast-paused .codex-recast{animation-play-state:paused;}
@keyframes codexReadyArrival{0%{filter:brightness(1);box-shadow:0 0 0 #ffe6a000}25%{filter:brightness(1.9);box-shadow:0 0 8px #ffe6a0,inset 0 0 5px #fff4c8}100%{filter:brightness(1);box-shadow:0 0 0 #ffe6a000}}
@media(prefers-reduced-motion:reduce){#roster .codex-recast.codex-ready-arrival{animation:none;}}
@media(prefers-reduced-motion:reduce){#roster .skill.codex-cast-ready{animation:none;filter:none;}}

#roster .skill.codex-readiness:disabled{color:#263235!important;}
#roster .skill.codex-readiness.active{background:radial-gradient(ellipse at 20% 0,#5b8c6744,transparent 80%),#244739!important;color:#fff7df!important;border-color:#91ac79!important;}


#eventCut[hidden]{display:none!important}
#eventCut.codex-painted-kill{inset:auto 0 0 auto;width:min(47%,185px);height:min(34%,215px);--kill-x:50%;--kill-width:100%;overflow:visible;transform:scale(1.44);transform-origin:bottom right}
#eventCut.codex-painted-kill.codex-retreat{left:0;right:auto;transform-origin:bottom left}
#eventCut.codex-painted-kill.enemy{--kill-x:50%}
#eventCut.codex-painted-kill .codex-event-ink{bottom:0;height:100%;width:100%;left:50%;opacity:.85}
#eventCut.codex-painted-kill .ev-card{left:50%;top:0;bottom:auto;height:90%;width:100%;animation:none}
#eventCut.codex-painted-kill.codex-retreat .ev-card{animation:codexRetreatPortrait 1.5s linear both}
#eventCut.codex-painted-kill .ev-name{left:50%;bottom:25%;width:100%;font-size:16px;line-height:1.25}
#eventCut.codex-painted-kill .ev-word{left:50%;bottom:4%;font-size:36px;line-height:1.1;white-space:nowrap}
#eventCut.codex-painted-kill .codex-event-extension{left:50%;bottom:8%;font-size:12px;padding:2px 5px}
@keyframes codexRetreatPortrait{0%,25%{opacity:1}55%,100%{opacity:.35}}
@media(prefers-reduced-motion:reduce){#eventCut.codex-painted-kill.codex-retreat .ev-card{animation:none;opacity:.35}}


.codex-tutorial-dialog{padding-top:24px;padding-bottom:12px;}
.codex-tutorial-dialog p{margin-bottom:0;}
.codex-tutorial-dialog button:is([data-tutorial-next],[data-tutorial-dismiss]){position:absolute;inset:0;width:100%;height:100%;min-height:0;margin:0;padding:0;z-index:4;border-radius:2px;background:transparent;color:transparent;}
.codex-tutorial-dialog button:is([data-tutorial-next],[data-tutorial-dismiss]):focus-visible{outline:2px solid #e7c278;outline-offset:3px;}
.codex-tutorial-dialog.codex-story-choices{padding-bottom:12px;}
.codex-tutorial-dialog.codex-opening-nagi .codex-tutorial-bust{transform:scale(.6);transform-origin:right bottom;right:0;}
.codex-tutorial-dialog.codex-opening-nagi .codex-tutorial-bust img{top:0;}
#controls .codex-team-commands{grid-auto-flow:row;}

#cutin.codex-unified .is-ribbon .codex-cutin-ribbon,#cutin.codex-unified .is-ribbon.is-narrow .codex-cutin-ribbon{bottom:0;}


.codex-nagi-dialogue .washi-panel{width:calc(100% - 32px)!important;max-width:960px;padding:24px 30% 12px 30px!important;overflow:visible;max-height:calc(100dvh - 32px);}
.codex-nagi-dialogue .washi-panel::before{clip-path:none;z-index:-1;background-color:transparent;}
.codex-nagi-dialogue .washi-header[hidden]{display:none!important;}
.codex-nagi-dialogue .washi-body{color:#fff4df;min-height:0!important;max-height:40dvh!important;margin:0;padding-right:0;font-size:clamp(16px,2.2vw,21px);line-height:1.85;text-shadow:0 1px 2px #000;}
.codex-nagi-dialogue[data-size=small] .washi-body{font-size:15px;}
.codex-nagi-dialogue[data-size=large] .washi-body{font-size:21px;}
.codex-nagi-dialogue .washi-speaker{max-width:none;margin:0;}
.codex-nagi-dialogue .washi-bust{left:auto!important;bottom:0!important;max-width:none!important;aspect-ratio:auto;scale:1;}
.codex-nagi-dialogue .washi-bust img{transform:none;object-fit:initial;}
.codex-nagi-dialogue .washi-next{pointer-events:none;font-size:0!important;letter-spacing:0;color:transparent!important;background:transparent!important;border:0!important;}
.codex-nagi-dialogue .washi-progress[hidden]{display:none;}
.codex-nagi-note{position:relative!important;display:block!important;isolation:isolate;margin:24px 0 16px!important;padding:22px 112px 14px 18px!important;min-height:110px;border:1px solid #b99a55!important;border-radius:2px!important;background:linear-gradient(115deg,#081e24f7,#10262cf8 58%,#0b1b21ef)!important;color:#fff4df;box-shadow:0 0 0 3px #152a29b0,0 0 0 4px #89734188;}
.codex-nagi-note::before{content:'';position:absolute;inset:var(--codex-dialogue-frame-inset);z-index:-1;pointer-events:none;background:var(--codex-dialogue-frame) center/105% 100%;opacity:.9;}
.codex-nagi-note p{margin:0!important;color:#fff4df!important;font:16px/1.85 "Yu Mincho","Hiragino Mincho ProN",serif;text-shadow:0 1px 2px #000;}
.codex-nagi-note .codex-tutorial-speaker{font-size:16px;top:-17px;left:12px;}
.codex-nagi-note .codex-tutorial-bust{right:0;bottom:0;width:110px;height:138px;transform:none;}
.codex-nagi-note .codex-tutorial-bust img{top:0;}
.codex-tutorial-bust[data-expression],.washi-bust[data-expression]{mask-image:none!important;}
.codex-tutorial-bust[data-expression]>img,.washi-bust[data-expression]>img{visibility:hidden;}
.codex-expression-canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center bottom;pointer-events:none;}

.codex-opening-nagi .codex-tutorial-bust,.codex-nagi-note .codex-tutorial-bust{mask-image:none;}
.codex-opening-nagi .codex-tutorial-bust img,.codex-nagi-note .codex-tutorial-bust img{left:0!important;top:0!important;width:100%!important;height:100%;object-fit:contain;object-position:center bottom;filter:none;}
@media(max-width:600px) and (min-height:500px){.codex-nagi-dialogue .washi-panel{width:calc(100% - 24px)!important;padding:24px 20px 12px!important;}.codex-nagi-dialogue .washi-bust{bottom:calc(100% - 6px)!important;}.codex-nagi-dialogue .washi-body{font-size:17px;}}
@media(max-height:499px){.codex-nagi-dialogue .washi-panel{padding:20px 26% 12px 20px!important;}.codex-nagi-dialogue .washi-body{max-height:35dvh!important;font-size:15px;}}
#talk .talk-box{isolation:isolate;overflow:visible;border:1px solid #b99a55;border-radius:2px;background:linear-gradient(115deg,#081e24f7,#10262cf8 58%,#0b1b21ef);color:#fff4df;box-shadow:0 0 0 3px #152a29b0,0 0 0 4px #89734188;}
#talk .talk-box::before{content:'';position:absolute;inset:var(--codex-dialogue-frame-inset);background:var(--codex-dialogue-frame) center/105% 100%;opacity:.9;z-index:-1;pointer-events:none;}
#talk .talk-box .adjutant-face{left:auto;right:0;width:110px;height:138px;background-size:135% auto;background-position:50% 0;bottom:calc(100% - 6px);animation:none;}
#talk .talk-box .adjutant-face{background-size:contain;background-position:center;background-repeat:no-repeat;}
#talk .talk-box>div>b{color:#ffe2a0;}

:root .codex-nagi-dialogue .washi-panel{border:1px solid #b99a55;border-radius:2px;background:linear-gradient(115deg,#081e24f7,#10262cf8 58%,#0b1b21ef);color:#fff4df;box-shadow:0 0 0 3px #152a29b0,0 0 0 4px #89734188,0 8px 24px #020b1055;}
:root .codex-nagi-dialogue .washi-panel::before{inset:var(--codex-dialogue-frame-inset);background:var(--codex-dialogue-frame) center/105% 100%;opacity:.9;border:0;z-index:-1;}
:root .codex-nagi-dialogue .washi-panel::after{content:none;}


:root{--codex-dialogue-frame-inset:-36% 0;}
.codex-nagi-note{flex-shrink:0;min-width:0;height:auto;max-height:none;box-sizing:border-box;}
.codex-nagi-note p{min-width:0;white-space:normal;overflow-wrap:anywhere;}


.sheet.codex-flow-menu.ink-home .sheet-body>.sheet-head{padding-top:4px;margin-bottom:8px}
.sheet.codex-flow-menu.ink-home .sheet-head #metaTitle{margin-bottom:4px}
#preparation.codex-flow-menu .sheet-body>.sheet-head{position:relative;overflow:hidden;padding:12px 14px;margin:10px 0 12px;border:1px solid #a78a4c;border-radius:5px;background:linear-gradient(125deg,#253c3b,#152b2a);box-shadow:inset 0 0 0 3px #d7b77116,0 3px 9px #30271420}
#preparation.codex-flow-menu .sheet-head h1{color:#f6ecd6;font-size:clamp(23px,5vw,28px)}
#preparation.codex-flow-menu .sheet-head p{color:#c9c6ad;margin-top:5px}
#preparation .prep-treasures,#preparation .prep-fold,#preparation .opponent,#preparation .practice-only>details{min-width:0;padding:10px 9px;margin:10px 0;border:1px solid #bcab83;border-radius:3px;background:linear-gradient(110deg,#fbf5e7d9,#eee4cbd9);box-shadow:inset 0 0 0 3px #fffaf029}
#preparation .prep-treasures h2{font:400 23px/1.4 YashimaBrush,serif;color:#384031;margin:0 0 9px;padding-bottom:5px;border-bottom:1px solid #ad945b66}
#preparation .prep-fold>summary,#preparation .opponent>summary,#preparation .practice-only>details>summary{font:600 13px/1.6 system-ui;color:#384031;cursor:pointer;padding:3px 0}
#preparation .prep-fold[open]>summary,#preparation .opponent[open]>summary{margin-bottom:9px;padding-bottom:7px;border-bottom:1px solid #ad945b66}
#preparation .preset-row button,#preparation .unit-tabs button{border:1px solid #b69d6c;border-radius:3px;background:linear-gradient(#f9f1df,#e4d4b0);color:#554832;box-shadow:inset 0 1px #fff9e9}
#preparation .preset-row button[aria-pressed=true],#preparation .unit-tabs button[aria-selected=true]{color:#fff1cf;background:linear-gradient(#354e46,#203a32);border-color:#947640;box-shadow:inset 0 -2px #b5995d}
#preparation #treasureCats{justify-content:start}


#preparation.codex-departure .sheet-body>:not(#prepCouncil):not(.sheet-head):not(#codexDepartureDeck){display:none!important}
#preparation.codex-departure #prepOverview,#preparation.codex-departure #sheetLead{display:none!important}
#preparation.codex-departure #prepCouncil{width:100%;margin:10px 0 0;min-height:42px;color:#fff1cf;border:1px solid #947640;box-shadow:inset 0 -2px #b5995d}
#preparation.codex-departure #prepCouncil[hidden]{display:none!important}
.codex-army-banner,#preparation.codex-departure .sheet-body>.sheet-head,#preparation.codex-departure #prepCouncil{background:linear-gradient(125deg,#253c3bc9,#152b2ad9),var(--codex-name-gold-flow) center/cover,#152b2a}
#codexDepartureDeck{padding:12px 9px 14px;border:1px solid #bcab83;border-radius:3px;background:linear-gradient(110deg,#fbf5e7d9,#eee4cbd9);box-shadow:inset 0 0 0 3px #fffaf029}
#codexDepartureDeck h2{font:400 23px/1.4 YashimaBrush,serif;color:#384031;margin:0 0 10px;padding-bottom:6px;border-bottom:1px solid #ad945b66}
#codexDepartureDeck .codex-departure-cards{grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:8px}

:root .yashima-presentation.is-finale .presentation-quote{isolation:isolate;overflow:hidden;border-color:#b99a55;background:var(--codex-name-gold-flow) center/100% 100%,linear-gradient(115deg,#081e24f5,#10262cf7 58%,#0b1b21f0);box-shadow:inset 0 0 0 2px #142b30,inset 0 0 0 3px #b99a5555,0 4px 14px #0005;color:#fff4df;}
:root .yashima-presentation.is-finale .presentation-quote::before{content:'';position:absolute;inset:var(--codex-dialogue-frame-inset);z-index:-1;pointer-events:none;background:var(--codex-dialogue-frame) center/105% 100%;opacity:.8;}
:root .yashima-presentation.is-finale .presentation-quote .presentation-name{color:#ead399;text-shadow:0 1px 2px #000;}
:root .yashima-presentation.is-finale .presentation-quote .presentation-line{color:#fff4df;text-shadow:0 1px 2px #000;}


#meta.codex-road-scene .sheet-head{position:relative;isolation:isolate;background:linear-gradient(110deg,#142b30,#223936);border-bottom:2px solid #b99a55;padding:14px 18px;color:#fff4df}
#meta.codex-road-scene #metaTitle{color:#f1dfac}
#meta.codex-road-scene .event-art{position:relative;border:1px solid #b59a62;box-shadow:inset 0 0 0 3px #e6d8b5,0 4px 10px #14232324;border-radius:3px;overflow:hidden}
#meta.codex-road-scene .story{position:relative;isolation:isolate;padding:18px 20px;border-left:3px solid #b99a55;background:linear-gradient(115deg,#0e2328,#1c3439);color:#fff4df;line-height:1.85;box-shadow:0 3px 8px #14232320;border-radius:2px}
#meta.codex-road-scene #metaFoot{gap:10px;background:#efe5cdeF}
#meta.codex-road-scene #metaFoot button{position:relative;text-align:left;padding:12px 16px;border:1px solid #a58a54;border-left:3px solid #b99a55;background:linear-gradient(110deg,#fff4da,#e9d9b5);color:#283a34;box-shadow:inset 0 0 0 2px #f9efd780,0 2px 5px #13232120}
#meta.codex-road-scene #metaFoot button b{display:block;font:700 17px/1.4 serif}
#meta.codex-road-scene #metaFoot button small{display:block;margin-top:4px;font-size:12px;line-height:1.5;color:#655a42}
#meta.codex-road-scene #metaFoot button:disabled{opacity:.45}

#meta.codex-road-scene :is(.sheet-head,.story)::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:var(--codex-name-gold-flow) center/100% 100%;opacity:.15}

#preparation.codex-departure .sheet-head>small{display:none!important}
#preparation.codex-departure .sheet-body{padding-top:0}
#preparation.codex-departure.codex-flow-menu .sheet-body>.sheet-head{margin-top:0;padding-top:8px;padding-bottom:8px}
.codex-departure-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px;padding-bottom:6px;border-bottom:1px solid #ad945b66}
#codexDepartureDeck .codex-departure-heading h2{margin:0;padding:0;border:0}
#preparation.codex-departure .codex-departure-heading #prepCouncil{width:auto;flex:none;margin:0!important;min-height:34px;font-size:13px;padding:5px 10px}


:root #resultCard{width:min(100%,520px);padding:18px 14px;color:#30291e}
#resultSub[hidden],#resultCard .chart-tip[hidden]{display:none!important}
#resultTitle{padding:8px 12px;margin:0 0 12px;background:linear-gradient(120deg,#142e32e8,#183a38e8),var(--codex-name-gold-flow) center/cover;border:1px solid #a98b50;border-radius:3px;font-family:YashimaBrush,serif;letter-spacing:.08em;text-shadow:0 1px 2px #0008}
#resultDetail .result-score{padding:10px 8px;border:1px solid #a78a50;border-radius:3px;background:linear-gradient(110deg,#102932,#173936);color:#e5d5ad;box-shadow:inset 0 0 0 2px #b4995620}
#resultDetail .result-score small{color:#e7deca;font-weight:600;font-size:11px}
#resultDetail .result-score strong{font-size:26px;font-variant-numeric:tabular-nums}
#resultDetail .castle-chart{margin:10px 0;padding:10px 8px 6px;border:1px solid #a78a50;border-radius:3px;background:#142c30}
#resultDetail .castle-chart figcaption{color:#f2e2bd;font-weight:600;font-size:12px;flex-wrap:wrap}
#resultDetail .chart-key{color:#ede4d0;font-size:11px}
#resultDetail .castle-chart .grid{stroke:#7f8d8555}
#resultDetail .castle-chart .axis{fill:#d4d6c8}
#resultDetail .castle-chart .end-label{fill:#fff0ce}
#resultDetail .chart-tip{color:#eee1c6;font-size:11px;margin:4px 0 0}
#resultDetail .unit-table table{font-size:11px;margin:12px 0 0;color:#373629;background:#fff8e655;border-bottom:1px solid #b9a57d}
#resultDetail .unit-table caption{padding:5px 7px;font:600 15px/1.4 serif;color:#226095;border-bottom:2px solid #477a9a;background:#dce7e7}
#resultDetail .unit-table thead{background:#dae4e14d}
#resultDetail .unit-table th{color:#226095;font-weight:700;padding:5px 3px;white-space:nowrap}
#resultDetail .unit-table td{padding:5px 3px;border-top:1px solid #b7a78266;line-height:1.45}
#resultDetail .unit-table td:first-child{font-weight:600}
#resultDetail .unit-table tbody tr:nth-child(even){background:#b9ab8314}
#resultDetail .unit-table tr.mvp td{background:#d9c27e33}
#resultDetail .unit-table em{color:#765c25;border-color:#a98b50;background:#f3e4b6}
#resultDetail .unit-table [data-team=enemy] caption{color:#a33330;border-bottom-color:#b14e47;background:#efddd3}
#resultDetail .unit-table [data-team=enemy] thead{background:#d4988b20}
#resultDetail .unit-table [data-team=enemy] th,#resultDetail .unit-table [data-team=enemy] td:first-child{color:#a33330}
#resultDetail .stat-line{color:#514a39;font-size:12px;line-height:1.65;overflow-wrap:anywhere}
#resultCard button{min-height:42px;border:1px solid #a78a50;border-radius:3px;background:linear-gradient(120deg,#233b3b,#17302f);color:#fff1cf;box-shadow:inset 0 -2px #b6995844}
#resultCard button.secondary{background:linear-gradient(#f4ebd4,#e7dab8);color:#514630}
@media(max-width:360px){:root #resultCard{padding:14px 10px}#resultDetail .unit-table th,#resultDetail .unit-table td{padding-left:2px;padding-right:2px;font-size:10.5px}}


.meta.codex-map .map.route.codex-scroll-map{background-image:linear-gradient(90deg,#f4ebd319,#f4ebd330 50%,#f4ebd319),var(--route-picture);background-size:100% 100%;background-position:center;background-repeat:no-repeat;border:0;box-shadow:inset 0 0 14px #785f251c}
.codex-scroll-map .ink-road-group.taken{--road-ink:#97702f;opacity:1}
.codex-scroll-map .ink-road-group.open{--road-ink:#4b5140;opacity:1}
.codex-scroll-map .ink-road-group.ahead{--road-ink:#7e8173;opacity:.6}
.codex-scroll-map .route-spot .map-node:not(.codex-boss-node){background:radial-gradient(ellipse,#f7edd8f5 35%,#f7edd8b8 58%,#f7edd800 75%)!important}
.codex-scroll-map .route-spot .map-node:not(.codex-boss-node) b{font-size:11px;color:#38392c;text-shadow:0 1px #fff9e0;background:#f7efdabc}
.codex-scroll-map .route-spot .map-node.node-elite b{color:#994235}
.codex-scroll-map .route-spot .map-node.open:not(.codex-boss-node){filter:drop-shadow(0 1px 2px #c6a24b);}
.meta.codex-map .codex-scroll-map .codex-boss-node{background:transparent!important;min-height:0;padding:0;gap:0;overflow:visible;opacity:1;filter:none}
.codex-scroll-map .codex-boss-node .map-icon{width:100%;height:185px;display:block}
.codex-scroll-map .codex-boss-art{width:100%;height:100%;object-fit:contain;display:block;pointer-events:none}
.meta.codex-map .codex-scroll-map .codex-boss-node b{margin-top:-24px;padding:5px 24px;background:#182421ed;color:#f0d188;font:600 22px/1.25 YashimaBrush,serif;border-top:1px solid #b49651;border-bottom:1px solid #b49651;clip-path:polygon(6% 0,98% 0,94% 100%,0 100%);text-shadow:0 1px #000}
.codex-scroll-map .codex-boss-house{display:block;margin-top:3px;color:#514832;font:600 12px/1.4 serif;background:#f5ead1b8;padding:2px 8px}
.codex-scroll-map .codex-boss-node.open .codex-boss-art{filter:drop-shadow(0 0 5px #bf9b5666)}
.codex-scroll-map .codex-boss-node:disabled{cursor:default}
.meta.codex-map .sheet-head{border-bottom:1px solid #a78c4f;background:linear-gradient(110deg,#f8efdadb,#eee2c8ef),var(--codex-name-gold-flow) center/cover;box-shadow:0 2px 5px #57441c12}
.meta.codex-map .sheet-foot{border-top:1px solid #a78c4f}
.meta.codex-map .sheet-foot button{border:1px solid #ab9059;border-radius:3px;background:linear-gradient(#f6edd8,#e8dab9);color:#49422f;box-shadow:inset 0 0 0 2px #fff6e04a}
.meta.codex-map .map-route-legend{font-size:11px;color:#574c36}
@media(min-width:600px){.codex-scroll-map .codex-boss-node .map-icon{height:185px}}

.meta.codex-map .map-route-legend .passed::before{background:#97702f}
.meta.codex-map .codex-scroll-map .route-spot .codex-boss-node:disabled:not(.chosen){opacity:1}

.meta.codex-intuitive{background-color:#ded3b8}
.meta.codex-intuitive[data-ui-level=detail] .sheet-body>.sheet-head{margin-bottom:10px;padding:8px 12px;border-left:3px solid #a58946;background:linear-gradient(105deg,#e7dabde8,#f4ebd2);box-shadow:2px 3px 7px #5e4b2612}
.meta.codex-intuitive[data-ui-level=detail] .sheet-head h1{font-size:25px;line-height:1.25}
.meta.codex-intuitive[data-ui-level=detail] .sheet-head::after{content:none}
.codex-ui-trail{display:flex;align-items:center;flex-wrap:wrap;gap:5px;margin:0 0 6px;color:#65563c;font:11px/1.5 system-ui}
.codex-ui-trail[hidden]{display:none}
.codex-ui-trail button{padding:1px 4px;min-height:26px;border:0;background:transparent;color:#5b513c;box-shadow:none;font:inherit;text-decoration:underline;text-underline-offset:3px}
.codex-ui-trail [aria-current]{font-weight:700;color:#353e33}
.codex-council-nav{position:sticky;top:0;z-index:6;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:5px 0 7px;margin:0 0 10px;background:#ded3b8}
.codex-council-nav button,.codex-arena-steps button{min-width:0;padding:7px 3px;font:600 12px/1.4 serif;color:#5b523f;background:#d9cdb1;border:1px solid #ab9670;border-radius:3px;box-shadow:none;transition:background-color .18s,box-shadow .18s}
.codex-council-nav [aria-current],.codex-arena-steps [aria-current]{background:#fff5d9;color:#263c36;border-color:#a58b42;box-shadow:inset 0 -2px #af954d,0 1px 4px #7b642525}
.meta.codex-intuitive .codex-arena-steps{display:grid;grid-template-columns:1fr 1fr;padding:0;border:0;gap:6px}
.meta.codex-intuitive .codex-focus-space{transition:background-color .18s,box-shadow .18s;border-radius:3px}
.meta.codex-intuitive :is(.codex-council-current,.codex-council-set,.codex-workshop-row,.codex-secondary-info){background-color:#e5d9bd}
.meta.codex-intuitive [data-ui-priority=high]{background-color:#fff3d5;border-color:#ab9254;box-shadow:inset 0 0 0 1px #fff7e666,0 2px 5px #65532719}
.meta.codex-intuitive .codex-army-metrics{background:#f8edcf;color:#293d34;padding:5px 8px;border:1px solid #a68b4f;border-radius:3px}
.meta.codex-intuitive .codex-army-metrics span{color:#655535}
.meta.codex-intuitive [data-army-panel]:not([hidden]){background:linear-gradient(110deg,#fbf3df,#f2e7cc);padding:9px;border:1px solid #baaa83}
.meta.codex-intuitive :is(.codex-army-tabs,.codex-workshop-tabs,.codex-archive-tabs) button{background:#ddd1b5;color:#5b523e;box-shadow:none}
.meta.codex-intuitive :is(.codex-army-tabs,.codex-workshop-tabs,.codex-archive-tabs) button:is([aria-selected=true],[aria-pressed=true]){background:#fff4d5;color:#273e35;border-color:#a98d45;box-shadow:inset 0 -2px #ad9047}
.meta.codex-intuitive .codex-focus-space:focus-within:not(.codex-army-shell),.meta.codex-intuitive .codex-focus-space:hover:not(.codex-army-shell){background-color:#fff4db;box-shadow:inset 0 0 0 1px #b4985144}
.meta.codex-intuitive button:disabled{background-color:#d5cfbf;color:#5f584b}
.meta.codex-intuitive button:focus-visible,.meta.codex-intuitive summary:focus-visible{outline:2px solid #957832;outline-offset:3px}
.meta.codex-intuitive [data-ui-priority=support]{color:#635a43}
.codex-secondary-info{padding:8px 10px;margin:10px 0;border:1px solid #b9a783;font-size:12px;color:#5c5139}
.codex-secondary-info summary{cursor:pointer;font-weight:600;min-height:30px;line-height:30px}
.codex-secondary-info p{margin:6px 0;font:12px/1.7 system-ui}
.codex-secondary-info .home-cmd{min-height:50px;background-image:none;padding:7px;flex:1}
.meta.codex-intuitive .sheet-foot button[data-ui-priority=high]{color:#fff5da;background:linear-gradient(115deg,#365149,#203b35);border:1px solid #b39754;box-shadow:inset 0 -2px #c3a65f55}
@media(prefers-reduced-motion:reduce){.meta.codex-intuitive .codex-focus-space,.codex-council-nav button,.codex-arena-steps button{transition:none}}
.meta.codex-intuitive .codex-army-banner>.codex-army-seal,.meta.codex-intuitive .codex-army-banner>.codex-army-banner-title{display:none}
.meta.codex-intuitive .codex-army-banner{padding:7px;margin-bottom:7px}
.meta.codex-intuitive .codex-army-metrics{width:100%;justify-content:space-around}
.meta.codex-intuitive .codex-army-metrics b{color:#243e35}
:root .meta.codex-intuitive .codex-army-tabs button[aria-selected=true],:root .meta.codex-intuitive .codex-workshop-tabs button[aria-pressed=true],:root .meta.codex-intuitive .codex-archive-tabs button[aria-pressed=true]{background:linear-gradient(#fff7df,#f5e8c4);color:#273e35}
.meta.codex-intuitive .codex-focus-space:is(:hover,:focus-within):not(.codex-army-shell):not(.home-cmd){box-shadow:inset 0 0 0 500px #fff9e82e,0 1px 4px #a58b4a20}
.meta.codex-intuitive[data-ui-level=detail] .sheet-body>.sheet-head{clip-path:polygon(0 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%)}

.meta.codex-intuitive .sheet-foot button[data-ui-priority=high]{background:linear-gradient(#fff7dd,#edd69e);color:#293e34;box-shadow:inset 0 0 0 2px #fff8e680,0 2px 5px #6b562b26}
.meta.codex-intuitive[data-ui-family=council] :is(.codex-army-tabs,.codex-workshop-tabs,.codex-archive-tabs){top:48px}

:root .meta.codex-intuitive button:disabled{opacity:1;filter:none;background:#d5cfbf;color:#5f584b;box-shadow:none}
.meta.codex-intuitive .research.have{opacity:1;background-color:#d9cdb3}
:root .meta.codex-intuitive .codex-council-nav button[aria-current],:root .meta.codex-intuitive .codex-army-tabs button[aria-selected=true],:root .meta.codex-intuitive .codex-workshop-tabs button[aria-pressed=true]{background:linear-gradient(#fff9e4,#f4e7c0)!important;color:#263d34!important;box-shadow:inset 0 -2px #aa8b3c,0 1px 4px #6a542522!important}

#talk .talk-box #talkText{color:#fff4df;font-size:clamp(15px,3.8vw,18px);line-height:1.8;text-shadow:0 1px 2px #0008;}
#talk .talk-actions #talkNext{background:#f5e4b4;color:#302b20;border:1px solid #c4a56c;font-weight:700;}
#talk .talk-actions #talkSkip{background:#263c3e;color:#fff4df;border:1px solid #8c805f;}


canvas[hidden]{display:none!important}


#metaFoot:has(.codex-fort-nav){flex-wrap:wrap}
.codex-fort-nav{flex:1 0 100%;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:4px}
#meta .meta-foot .codex-fort-nav button{min-height:40px;width:100%;padding:4px 2px;font-size:13px;letter-spacing:0;border-radius:6px}
#meta .meta-foot .codex-fort-nav button.codex-return-title{border:1px solid transparent;background:transparent;box-shadow:none;color:#75694e}
.meta.ink-home .meta-foot:has(.codex-fort-nav){justify-content:stretch;padding:6px 10px}
@media(max-width:360px){#meta #metaBody .adjutant.codex-nagi-note p{font-size:13px;line-height:1.6}}

#meta #metaBody .adjutant .codex-nagi-guide{margin-top:6px;padding-top:6px;border-top:1px dashed #9aa58f;font-size:13px;line-height:1.65}
.codex-expedition-guide .codex-guide-face{float:right;width:58px;height:58px;margin:-4px -4px 4px 10px;border-radius:50%;border:2px solid #d4b56b;background:#efe7d2 var(--codex-nagi-art) 50% 8%/190% auto no-repeat}
#meta #metaBody .codex-map-nagi{position:sticky;top:0;z-index:4;padding-bottom:6px;background:linear-gradient(#fffdf6 85%,#fffdf600)}
#meta #metaBody .codex-map-nagi .adjutant{margin-bottom:0}

@media(max-width:600px){#meta #metaBody .event-art.painted{aspect-ratio:2/1;max-height:28vh}}
.codex-rare-skill{display:inline-block;padding:0 8px;margin-left:2px;border-radius:999px;font-weight:800;color:#fff;text-shadow:0 1px 2px #6b3d00;background:linear-gradient(110deg,#c4841a 25%,#fff3b8 45%,#c4841a 65%) 0 0/250% 100%;box-shadow:0 0 12px #ffcf40,0 0 3px #fff8,inset 0 0 0 1px #8a5a10;animation:codex-rare-shine 2.2s linear infinite}.codex-rare-skill:before{content:'✦ '}
@keyframes codex-rare-shine{from{background-position:100% 0}to{background-position:-150% 0}}
@media(prefers-reduced-motion:reduce){.codex-rare-skill{animation:none}}

#app #deployBar p{color:#eef5f8!important;font-size:12.5px;line-height:1.55;font-weight:600;text-shadow:0 1px 2px #0008}

#controls .morale{padding-top:12px}.codex-team-commands{margin-top:8px}#codexRetreatNotice{position:absolute;bottom:100%;left:50%;transform:translateX(-50%);padding:6px 10px;border-radius:6px;background:#102936;color:#fff;white-space:nowrap;pointer-events:none;z-index:20;font-size:12px}
#codexTeamOrderDialog #codexRetreatNotice{position:sticky;top:0;bottom:auto;left:auto;transform:none;white-space:normal}
#app.codex-deploying #controls .morale{display:none!important}#app.codex-deploying #teamRail,#app.codex-deploying #codexLeftBattleRail,#app.codex-deploying #codexRightBattleRail{display:none!important}

#enemyStrip{position:relative;padding-left:20px}#enemyStrip .codex-enemy-label{position:absolute;left:3px;top:50%;transform:translateY(-50%);font-size:11px;color:var(--yashu-ink)}

#codexDepartureIntel{margin-top:14px;padding:10px 12px;border-top:1px solid var(--yashu-line);background:var(--yashu-paper)}#codexDepartureIntel h3{margin:6px 0;font-size:14px}#codexDepartureIntel p{margin:5px 0;font-size:12px;line-height:1.6}

#app.codex-page-moving{overflow:hidden}
.codex-page-ghost{pointer-events:none}
.codex-page-backdrop{position:absolute;pointer-events:none;background:#1a252b}

button:not(:disabled):active,.home-cmd:active,[role=button]:active{scale:.96;translate:0 1px}

.codex-choice-glide{position:fixed;z-index:60;pointer-events:none;background:#e8b04a33;box-shadow:0 0 0 2px #b8452c99,0 4px 14px #4a2c1440}

.codex-fit-1,.codex-fit-2,.codex-fit-3,.codex-fit-4{font-feature-settings:"palt"}
.codex-fit-1,.codex-fit-2,.codex-fit-4{letter-spacing:-.02em}
.codex-fit-2,.codex-fit-3{font-size:95%}
.codex-fit-3{letter-spacing:-.06em}
.codex-fit-4{transform:scaleX(.9);transform-origin:left center;margin-right:-11.2%}

#meta .section-title{flex-wrap:wrap}

.adjutant.codex-talk{cursor:pointer;-webkit-tap-highlight-color:transparent}
.codex-talk-rest{visibility:hidden}
.adjutant.codex-talk-guest .codex-tutorial-bust{visibility:hidden}
.adjutant .codex-talk-face{position:absolute;right:10px;bottom:10px;width:76px;height:76px;border-radius:50%;overflow:hidden;border:2px solid #c9a95c;box-shadow:0 2px 8px #2a1d0e33;background:#f4ecd6}

.adjutant .codex-talk-face img{position:absolute;max-width:none;height:auto}


@media(max-width:389px){
 .adjutant.codex-talk{padding-right:96px!important}
 .adjutant.codex-talk .codex-tutorial-bust{width:94px;height:118px}
}


@media (max-width:599.98px),(max-height:799.98px){body{align-items:flex-end}}
.codex-opening-scene.road{background-image:linear-gradient(#d6e0b511,#253c4677),var(--codex-prologue-road)}.codex-opening-scene.road.dusk{background-image:linear-gradient(#c0783922,#182030aa),var(--codex-tutorial-road)}
.codex-prologue-road{list-style:none;padding:0;display:grid;gap:12px}.codex-prologue-road li{position:relative}.codex-prologue-road button{width:100%;display:grid;gap:5px;text-align:left;white-space:normal;min-height:80px}.codex-prologue-road .current button{border:2px solid #9d7730}.codex-prologue-road .done button{opacity:.65}.codex-prologue-road span,.codex-prologue-road small{font-size:12px}.codex-prologue-complete{padding:24px 10px;text-align:center}.codex-prologue-complete .complete{font-size:2rem;letter-spacing:.15em;color:#987329}.codex-prologue-complete h2{font-size:1.6rem}
.codex-opening-mode .codex-ui-trail,#meta:has(.codex-prologue-road) .codex-ui-trail{display:none}

.codex-opening-scene.dojo{background-image:linear-gradient(#0b1822aa,#08121bcc),var(--codex-opening-dojo)}

.codex-fort-origin-scene{position:relative;isolation:isolate;overflow:hidden}.codex-fort-origin-scene.is-smoking::after{content:'';position:absolute;pointer-events:none;left:68%;top:3%;height:60%;width:12%;opacity:.65;background:radial-gradient(ellipse at 40% 76%,#e6e2d5 0 13%,transparent 45%),radial-gradient(ellipse at 60% 40%,#e6e2d5 0 8%,transparent 42%);filter:blur(5px);animation:codex-fort-smoke 5s ease-out infinite}@keyframes codex-fort-smoke{from{transform:translateY(25%) scale(.8);opacity:.3}to{transform:translateY(-25%) scale(1.2);opacity:.65}}@media(prefers-reduced-motion:reduce){.codex-fort-origin-scene.is-smoking::after{animation:none}}
.codex-chapter-heading{padding:24px 12px;text-align:center}.codex-chapter-heading h2{font-family:'Yu Mincho',serif;font-size:clamp(24px,6vw,36px);color:#725127}.codex-tutorial-dialog [data-chapter-skip]{position:relative;z-index:5;min-height:38px;margin-top:6px;font-size:12px}


:root .codex-tutorial-dialog,:root .codex-nagi-dialogue .washi-panel,:root .codex-nagi-note,#talk .talk-box{font-family:'Hiragino Sans','Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;background:linear-gradient(110deg,#10272e,#0e2027)!important;border:1px solid #b59b62;border-radius:3px;box-shadow:0 0 0 2px #0c1d23,0 0 0 3px #8a7348,0 6px 20px #0005;}
:root .codex-tutorial-dialog::before,:root .codex-nagi-dialogue .washi-panel::before,:root .codex-nagi-note::before,#talk .talk-box::before,:root .yashima-presentation.is-finale .presentation-quote::before{content:'';inset:-5px;opacity:1;border:1px solid #8d754b;border-radius:3px;background:linear-gradient(#d3b77c,#d3b77c) left top/24px 2px,linear-gradient(#d3b77c,#d3b77c) left top/2px 20px,linear-gradient(#d3b77c,#d3b77c) right top/24px 2px,linear-gradient(#d3b77c,#d3b77c) right top/2px 20px,linear-gradient(#d3b77c,#d3b77c) left bottom/24px 2px,linear-gradient(#d3b77c,#d3b77c) left bottom/2px 20px,linear-gradient(#d3b77c,#d3b77c) right bottom/24px 2px,linear-gradient(#d3b77c,#d3b77c) right bottom/2px 20px;background-repeat:no-repeat;pointer-events:none;}
:root .codex-tutorial-dialog{padding:26px 22% 24px 26px;line-height:1.65;}
:root .codex-nagi-dialogue .washi-panel{padding:26px 22% 24px 26px!important;}
.codex-tutorial-dialog p,.codex-nagi-dialogue .washi-body,.codex-nagi-note p,#talkText,.washi-text{word-break:auto-phrase;overflow-wrap:normal;line-break:strict;white-space:normal;max-width:30em;line-height:1.65!important;font-family:inherit!important;text-shadow:none;}
.codex-speech-phrase{white-space:nowrap;}
.codex-tutorial-speaker,.codex-nagi-dialogue .washi-speaker,#talk .talk-box>div>b{font-family:inherit!important;letter-spacing:.04em;}
:root .codex-nagi-note p{font-family:inherit!important;line-height:1.65!important;}
.codex-talk>p,.codex-typed-speech{position:relative;}
.codex-typed-speech>.codex-talk-rest{position:absolute!important;width:1px;height:1px;clip-path:inset(50%);overflow:hidden;white-space:nowrap;}
.codex-talk-flow{display:inline;}
:root .codex-nagi-dialogue .washi-panel::after,.codex-tutorial-dialog:has([data-tutorial-next])::after,.codex-nagi-note.codex-talk::after,.codex-nagi-note:has(.codex-talk-flow,[data-tutorial-next])::after{content:'▼';position:absolute;right:12px;bottom:7px;color:#e0c78d;font:11px/1 sans-serif;pointer-events:none;z-index:6;opacity:.85;}
@media(min-width:601px){.codex-tutorial-dialog .codex-tutorial-bust,.codex-nagi-dialogue .washi-bust{width:21%!important;right:0!important;} }
@media(max-width:600px) and (min-height:500px){:root .codex-tutorial-dialog{padding:26px 20px 25px;line-height:1.65;}:root .codex-nagi-dialogue .washi-panel{padding:26px 20px 25px!important;}}
@media(max-height:499px){:root .codex-tutorial-dialog{padding:22px 22% 22px 20px;}:root .codex-nagi-dialogue .washi-panel{padding:22px 22% 22px 20px!important;}}
.codex-opening-scene.dojo{background-image:linear-gradient(#0a17240d,#0a172426),var(--codex-opening-old-hall);background-position:38% 40%;}

.codex-opening-scene.dragon{background-image:var(--codex-opening-dragon);background-position:50% 18%;}
.codex-opening-scene.dragon::before{content:none;animation:none;}
.codex-opening-scene.road{background-image:var(--codex-prologue-road);background-position:50% 24%;}
.codex-opening-scene.road.dusk{background-image:var(--codex-tutorial-road);background-position:50% 24%;}
.codex-opening-scene.hall{background-position:50% 32%;}
.codex-battle-reaction p,.codex-nagi-guide{word-break:auto-phrase;overflow-wrap:normal;line-height:1.65;}


:root .codex-tutorial-dialog:has([data-chapter-skip]){padding-bottom:62px;min-height:170px;box-sizing:border-box;}
:root .codex-tutorial-dialog [data-chapter-skip]{position:absolute;left:20px;bottom:10px;margin:0;min-height:38px;}
#meta #metaBody .adjutant.codex-nagi-note p{font-size:16px;}

:root .codex-tutorial-speaker{isolation:isolate;z-index:7;background:transparent!important;border:1px solid transparent;clip-path:none;}
:root .codex-tutorial-speaker::before,:root .codex-tutorial-speaker::after{content:'';position:absolute;pointer-events:none;clip-path:polygon(4% 0,96% 0,100% 50%,96% 100%,4% 100%,0 50%);}
:root .codex-tutorial-speaker::before{inset:-1px;background:#d0ad62;z-index:-2;}
:root .codex-tutorial-speaker::after{inset:0;background:#0a2027;z-index:-1;}
.codex-visual #meta .codex-nagi-note .codex-tutorial-speaker::after{background:var(--yashu-nature);}

.codex-story-conversation .codex-tutorial-dialog,.codex-story-conversation .washi-panel{z-index:3;}


.codex-tutorial-coach.has-action-target .codex-tutorial-highlight{z-index:0;border:3px solid #ffe8a3;border-radius:10px;box-shadow:0 0 0 200vmax #071019a8,0 0 0 2px #433512,0 0 20px #f4c34d;animation:codex-action-ring 1.3s ease-in-out infinite;}
.codex-tutorial-coach.has-action-target .codex-tutorial-dialog{z-index:3;}
.codex-tutorial-action-cue{position:absolute;z-index:2;pointer-events:none;color:#20323e;line-height:1.4;font:700 15px/1.4 'Hiragino Sans','Yu Gothic',sans-serif;box-sizing:border-box;}
.codex-tutorial-action-text{display:block;padding:10px 12px;background:#fffdf4;border:2px solid #324757;border-radius:7px;box-shadow:0 3px 12px #0005;text-align:center;overflow-wrap:anywhere;}
.codex-tutorial-action-text::after{content:'';position:absolute;left:var(--target-x);top:100%;width:12px;height:12px;background:#fffdf4;border-right:2px solid #324757;border-bottom:2px solid #324757;transform:translate(-50%,-7px) rotate(45deg);}
.below-target .codex-tutorial-action-text::after{top:0;transform:translate(-50%,-5px) rotate(225deg);}
.codex-tutorial-action-hand{position:absolute;left:var(--target-x);top:calc(100% + 5px);transform:translateX(-50%);filter:drop-shadow(0 2px 2px #0008);animation:codex-action-hand 1.1s ease-in-out infinite;}
.below-target .codex-tutorial-action-hand{top:-53px;rotate:180deg;}
.codex-tutorial-action-cue[hidden],.codex-tutorial-action-hand[hidden]{display:none!important;}
@keyframes codex-action-ring{50%{border-color:#fff9df;}}
@keyframes codex-action-hand{50%{translate:0 5px;}}
@media(prefers-reduced-motion:reduce){.codex-tutorial-coach.has-action-target .codex-tutorial-highlight,.codex-tutorial-action-hand{animation:none;}}

.codex-tutorial-coach.is-interactive .codex-tutorial-highlight{box-shadow:0 0 0 1px #57461d,0 0 9px #f4c34d;animation:none;}
.codex-tutorial-coach.is-interactive .codex-tutorial-dialog,.codex-tutorial-coach.is-interactive .codex-tutorial-dialog.at-top{pointer-events:none;top:8px;bottom:auto;left:50%;width:calc(100% - 24px);max-width:420px;max-height:none;padding:8px 60px 8px 12px;font:13px/1.5 'Hiragino Sans','Yu Gothic',sans-serif;}
.codex-tutorial-coach.is-interactive .codex-tutorial-dialog::before,.codex-tutorial-coach.is-interactive .codex-tutorial-bust{display:none;}
.codex-tutorial-coach.is-interactive .codex-tutorial-speaker{position:static!important;display:inline-block;border:0;clip-path:none;padding:0!important;background:none;font-size:12px;letter-spacing:0;}
.codex-tutorial-coach.is-interactive .codex-tutorial-dialog p{margin:2px 0 0;min-height:0;}
.codex-tutorial-coach.is-interactive [data-tutorial-dismiss]{position:absolute;inset:4px 4px auto auto;width:auto;height:32px;min-width:44px;pointer-events:auto;padding:4px;font-size:11px;color:#fff2d7;background:#183440;border:1px solid #b99a55;}

.codex-story-conversation{background:linear-gradient(#06121a10,#06121a35);}
.codex-story-portraits{position:fixed;left:50%;transform:translateX(-50%);display:flex;gap:14px;align-items:stretch;justify-content:center;pointer-events:none;z-index:2;}
.codex-story-portraits[hidden]{display:none;}
.codex-story-person{width:var(--portrait-width,150px);height:100%;box-sizing:border-box;position:relative;isolation:isolate;overflow:hidden;border:3px solid #727b82;border-radius:22px 22px 7px 7px;background:linear-gradient(150deg,#34424d,#14242d);box-shadow:0 0 0 2px #10202b,0 5px 14px #0007;filter:brightness(.66) saturate(.7);}
.codex-story-person.is-speaking{border-color:#f3d383;box-shadow:0 0 0 2px #554220,0 0 0 4px #ead29855,0 5px 18px #0007;filter:none;}
.codex-story-person-art{position:absolute;inset:0;overflow:hidden;}
.codex-story-person-art>img{position:absolute;inset:auto;max-width:none;height:auto;}
.codex-story-person-art[data-character]>img{visibility:hidden;}
.codex-story-person-art .codex-expression-canvas{position:absolute;inset:auto;max-width:none;object-fit:fill;}
.codex-story-framed .codex-tutorial-bust,.codex-story-framed .washi-bust,.codex-story-framed .washi-portrait{visibility:hidden!important;}
.codex-story-conversation .codex-tutorial-dialog::after,.codex-story-conversation .washi-panel::after{content:none!important;}
.codex-story-conversation .codex-tutorial-dialog,.codex-story-conversation .washi-panel{padding-right:26px!important;}
@media(max-height:499px){.codex-story-portraits{gap:10px}.codex-story-person{border-radius:12px 12px 5px 5px}}

.codex-story-person{--story-trim:#a4afb0;--story-trim-soft:#a4afb077;}
.codex-story-person.is-speaking{--story-trim:#f6dc9c;--story-trim-soft:#f6dc9c99;}
.codex-story-person::before{content:'';position:absolute;inset:5px;border:1px solid var(--story-trim-soft);border-radius:16px 16px 3px 3px;z-index:3;pointer-events:none;}
.codex-story-person::after{content:'◇ ◇ ◇';position:absolute;top:3px;left:25%;right:25%;height:8px;color:var(--story-trim);font:8px/1 sans-serif;letter-spacing:3px;text-align:center;white-space:nowrap;opacity:.85;z-index:3;pointer-events:none;}
@media(max-height:499px){.codex-story-person::before{inset:4px;border-radius:7px 7px 2px 2px;}.codex-story-person::after{height:5px;}}


:root .codex-story-conversation .codex-tutorial-dialog:not(.codex-story-choices){height:clamp(170px,27dvh,250px);max-height:calc(100dvh - 32px);box-sizing:border-box;display:flex;flex-direction:column;overflow:visible;}
:root .codex-story-conversation .codex-tutorial-dialog:not(.codex-story-choices)>p{flex:1;min-height:0;max-height:none;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;position:relative;z-index:5;}
:root .codex-story-conversation .washi-panel{height:clamp(220px,32dvh,300px);max-height:calc(100dvh - 32px);box-sizing:border-box;display:flex;flex-direction:column;}
:root .codex-story-conversation .washi-body{flex:1;min-height:0!important;max-height:none!important;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;}


#codexGreatDock[hidden]{display:none!important}
.codex-selected-portrait-mode #controls{position:relative;padding:4px 6px 7px;min-height:0;overflow:visible;box-sizing:border-box;background:linear-gradient(#0c202cdd,#0c202c);}
.codex-selected-portrait-mode #roster{display:grid;grid-template-columns:repeat(var(--battle-roster-count,5),minmax(0,1fr))!important;gap:3px;position:relative;z-index:4;}
.codex-selected-portrait-mode #roster .unit-button{position:relative;isolation:isolate;overflow:visible;min-height:24px;height:24px;box-sizing:border-box;padding:2px;display:grid;grid-template-columns:minmax(0,auto) minmax(12px,1fr);grid-template-rows:18px;column-gap:3px;align-items:center;}
.codex-roster-portrait{position:absolute;inset:-86px 0 0;overflow:hidden;pointer-events:none;z-index:0;filter:brightness(.84) saturate(.85);mask-image:linear-gradient(transparent,#000 10px,#000 78%,transparent),linear-gradient(90deg,transparent,#000 5px,#000 calc(100% - 5px),transparent);mask-composite:intersect;}
.codex-roster-portrait.is-selected{filter:drop-shadow(0 0 3px #e6c56f) brightness(1.08);}
.codex-roster-portrait img{position:absolute;max-width:none;}
.codex-roster-portrait{width:min(100%,128px);left:50%;right:auto;transform:translateX(-50%);}
.codex-selected-portrait-mode #roster .unit-button::after{content:'';position:absolute;inset:0;background:linear-gradient(transparent,#0b2539dc 32%,#0b2539f5);z-index:1;border-radius:4px;pointer-events:none;}
.codex-selected-portrait-mode #roster .unit-button :is(strong,small,.mini-hp){position:relative;z-index:2;}
.codex-selected-portrait-mode #roster .unit-button strong{display:flex;align-items:center;gap:1px;min-width:0;max-width:100%;font-size:10px;line-height:15px;white-space:nowrap;color:#fff4dc!important;text-shadow:0 1px 2px #000;}
.codex-selected-portrait-mode #roster .unit-button small{grid-column:1/-1;margin:0;line-height:10px;color:#d5e7ec!important;font-size:9px;text-shadow:0 1px 2px #000;}
.codex-selected-portrait-mode #roster .skill{position:relative;z-index:3;min-height:42px;padding:2px;font-size:11px;}
.codex-selected-portrait-mode #moraleValue{display:none!important}
.codex-selected-portrait-mode #controls .codex-morale-center{padding:0 0 6px;gap:8px;}
#codexGreatDock{position:absolute;right:3px;top:48px;z-index:7;text-align:center;}
#codexGreatDock #treasure{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;width:100%;min-width:0;min-height:64px;padding:3px 1px;border:1px solid #c5a865;background:#0c2532ed;border-radius:3px;color:#fff1ce;}
#codexGreatDock #treasure img{width:36px;height:36px;object-fit:contain;}
#codexGreatDock #treasure b{display:block;font-size:10px;}
#codexGreatDock #treasure small{font-size:9px;line-height:1.2;white-space:normal;overflow-wrap:anywhere;}
.codex-selected-portrait-mode #codexRightBattleRail{padding-top:98px;bottom:104px;}
.codex-great-heading{display:block;color:#f0d99b;font:10px/1.4 sans-serif;text-shadow:0 1px 2px #000;}
@media(orientation:landscape) and (max-height:550px){
 .codex-selected-portrait-mode #controls{padding:4px 6px 7px;justify-content:flex-end;overflow:visible;}
 .codex-selected-portrait-mode #controls>.morale{position:absolute;top:5px;left:6px;right:72px;display:block;min-height:62px;z-index:5;}
 #codexGreatDock{top:4px;right:4px;}
 .codex-selected-portrait-mode #roster .unit-button strong{font-size:10px;}
}


.codex-selected-portrait-mode #controls{border-top:0;}
.codex-selected-portrait-mode #roster .mini-hp{grid-column:2;grid-row:1;margin:0;height:5px;min-width:12px;}
.codex-selected-portrait-mode #roster .unit-button strong{grid-column:1;grid-row:1;}
.codex-roster-type-icon{width:12px;height:12px;object-fit:contain;flex:none;filter:drop-shadow(0 1px 1px #000);}
.codex-roster-name{min-width:0;overflow:hidden;text-overflow:ellipsis;}


#roster .unit-button>small{display:none!important;}
#roster .skill.codex-readiness{display:grid;grid-template-columns:17px minmax(0,1fr);grid-template-rows:16px 18px;gap:1px 2px;align-items:center;padding:2px;min-height:42px;}
#roster .skill.codex-readiness>.codex-skill-meta{display:contents;}
#roster .skill.codex-readiness>b{grid-column:2;grid-row:2;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;line-height:18px;text-align:left;}
#roster .codex-skill-meta small{position:relative;z-index:1;grid-column:1;grid-row:2;display:grid;place-items:center;box-sizing:border-box;width:17px;height:17px;margin:0;border:1px solid #b9e3f1;border-radius:50%;background:linear-gradient(#348dba,#173b66);color:#fff!important;text-shadow:0 1px 1px #000;font-size:11px;font-weight:900;line-height:1;}
#roster .codex-recast{position:relative;z-index:1;grid-column:1/-1;grid-row:1;display:block;box-sizing:border-box;width:100%;border:1px solid #8496a6;border-radius:2px;background:#243b50;color:#ecf2ff;font-size:9px;line-height:14px;text-align:center;white-space:nowrap;}
#roster [data-spell-state=ready] .codex-recast{background:#255443;border-color:#a2d6ae;color:#ecffdc;}
#roster [data-spell-state=effect] .codex-recast,#roster [data-spell-state=dance] .codex-recast{background:#59411e;border-color:#e1bc62;color:#fff1b8;}
#roster [data-spell-state=charge] .codex-recast{background:#4b315e;border-color:#d3abe7;color:#ffedff;}
#roster [data-spell-state=sealed] .codex-recast{background:#652d31;border-color:#dca1a1;color:#fff0e8;}


#roster .codex-recast{background-image:linear-gradient(90deg,#fff3c72b 0% var(--codex-ready-progress,0%),#0002 var(--codex-ready-progress,0%) 100%);}


.codex-selected-portrait-mode #roster .unit-card{position:relative;transform-origin:50% 100%;transition:transform .14s ease-out;}
.codex-selected-portrait-mode #roster .unit-card.codex-unit-selected{transform:translateY(-3px) scale(1.025);z-index:5;}
.codex-roster-portrait.is-fallen,.codex-roster-portrait.is-fallen.is-selected{filter:brightness(.58) saturate(.6);}
#roster [data-spell-state=respawn] .codex-recast{background-color:#343d48;border-color:#9aa5b3;color:#edf0f5;}
@media(prefers-reduced-motion:reduce){.codex-selected-portrait-mode #roster .unit-card{transition:none;}}


.codex-visual #app.codex-selected-portrait-mode #controls,.codex-visual #app.codex-selected-portrait-mode #roster{background:transparent!important;box-shadow:none;}
.codex-visual #app.codex-selected-portrait-mode #roster .unit-button{background:#102d42eb!important;}
.codex-visual #app.codex-selected-portrait-mode #roster .unit-button::after{background:linear-gradient(transparent,#0b25391a 32%,#0b253933);}
.codex-visual #app.codex-selected-portrait-mode #roster .unit-button[aria-pressed=true]{background:#163e53eb!important;}
.codex-visual #app.codex-selected-portrait-mode #roster .skill{background:linear-gradient(120deg,#fff4d826,transparent 75%),#e4d5b5eb!important;}
.codex-visual #app.codex-selected-portrait-mode #roster .skill.unit-selected,.codex-visual #app.codex-selected-portrait-mode #roster .skill.preview{background:#102d42eb!important;}
.codex-visual #app.codex-selected-portrait-mode #roster .skill.active{background:#26463beb!important;}
.codex-visual #app.codex-selected-portrait-mode #roster .skill.waiting,.codex-visual #app.codex-selected-portrait-mode #roster .skill.queued{background:#443827eb!important;}
.codex-visual #app.codex-selected-portrait-mode #roster .skill:disabled{background:#c6b99deb!important;}


.codex-visual #app.codex-selected-portrait-mode #roster .codex-unit-selected .unit-button{background-color:#163e53!important;}
.codex-visual #app.codex-selected-portrait-mode #roster .codex-unit-selected .skill{background-color:#102d42!important;color:#fff5dd!important;}
.codex-visual #app.codex-selected-portrait-mode #roster .codex-unit-selected .skill.active{background-color:#26463b!important;}
.codex-visual #app.codex-selected-portrait-mode #roster .codex-unit-selected .skill.waiting,.codex-visual #app.codex-selected-portrait-mode #roster .codex-unit-selected .skill.queued{background-color:#443827!important;}
.codex-visual #app.codex-selected-portrait-mode #roster .codex-unit-selected .skill:disabled{background-color:#c6b99d!important;color:#263235!important;}


.codex-selected-portrait-mode #roster.codex-crowded-roster :is(.mini-hp,.codex-skill-meta small){display:none!important;}
.codex-selected-portrait-mode #roster.codex-crowded-roster .unit-button{grid-template-columns:minmax(0,1fr);}
.codex-selected-portrait-mode #roster.codex-crowded-roster .skill.codex-readiness{grid-template-columns:minmax(0,1fr);column-gap:0;}
.codex-selected-portrait-mode #roster.codex-crowded-roster .skill.codex-readiness>b{grid-column:1;text-align:center;}

.codex-selected-portrait-mode #roster.codex-eight-roster .codex-roster-type-icon{display:none!important;}

.codex-selected-portrait-mode #roster.codex-eight-roster .unit-button strong{justify-content:center;}


.codex-visual #app.codex-selected-portrait-mode #roster .unit-card :is(.unit-button,.skill){border:1px solid #b79c65!important;border-radius:4px;background-image:linear-gradient(118deg,#edf8ff20,transparent 44%),linear-gradient(0deg,#030e1929,transparent 65%)!important;box-shadow:inset 0 0 0 1px #f5d99c36,inset 0 1px #fff0ce5c,0 2px 3px #09213066;}
.codex-visual #app.codex-selected-portrait-mode #roster .codex-unit-selected :is(.unit-button,.skill){border-color:#d5cb91!important;box-shadow:inset 0 0 0 1px #77d3e566,inset 0 1px #fff5ce99,0 0 4px #6cc8eb77;}
.codex-selected-portrait-mode #roster .unit-button::before{opacity:.12;}
.codex-selected-portrait-mode #roster .mini-hp{height:6px;border:1px solid #a89d71;box-sizing:border-box;background:#071824;box-shadow:inset 0 1px 2px #0009;}
.codex-selected-portrait-mode #roster .mini-hp i{background:linear-gradient(#c0df91,#72b764 45%,#356040);box-shadow:inset 0 1px #efffcd88;}
.codex-selected-portrait-mode #roster .skill>b{text-shadow:0 1px #ffffff33;}
.codex-selected-portrait-mode #roster .codex-unit-selected .skill>b{text-shadow:0 1px 2px #000;}
.codex-selected-portrait-mode #roster .codex-skill-meta small{border:1px solid #dac88b;box-shadow:0 1px 2px #0008,inset 0 0 0 1px #d3faff44,inset 0 2px 2px #ddf9ff66;background:radial-gradient(circle at 34% 22%,#a4eaff,#277eaf 35%,#102d52 78%);}
.codex-selected-portrait-mode #roster .codex-recast{border-color:#bda36f;border-radius:2px;box-shadow:inset 0 1px #fff5d63b,inset 0 -1px #050b1755;text-shadow:0 1px 2px #0009;letter-spacing:.02em;}
.codex-selected-portrait-mode #roster [data-spell-state=ready] .codex-recast{border-color:#e9cc81;color:#fff4c8;}
.codex-selected-portrait-mode #roster .skill.codex-readiness::after{background:linear-gradient(90deg,#f5dba02e 0% var(--codex-ready-progress,0%),#06121d57 var(--codex-ready-progress,0%) 100%);}
.codex-selected-portrait-mode #codexGreatDock #treasure{border:1px solid #b69b64;border-radius:5px;background:radial-gradient(ellipse at 20% 0,#6c8d962e,transparent 70%),#102a38f2;box-shadow:inset 0 0 0 2px #dbc08a24,inset 0 1px #f9e6bc66,0 2px 5px #0006;}
.codex-selected-portrait-mode #codexGreatDock #treasure img{filter:drop-shadow(0 2px 2px #0009);}
.codex-selected-portrait-mode #codexGreatDock #treasure:not(:disabled):not(.used){border-color:#e2c477;box-shadow:inset 0 0 0 2px #e5c8872e,0 0 5px #e0bc695e;}
.codex-selected-portrait-mode #codexGreatDock #treasure.used{filter:grayscale(.8) brightness(.7);opacity:.7;}
.codex-visual #app.codex-selected-portrait-mode #hud.codex-castle-overlay{border:1px solid #ad925e;background:linear-gradient(110deg,#254a56e8,#0b2332f5 45%,#152d37f2);box-shadow:inset 0 1px #f2d49b66,inset 0 -2px #020d1755,0 2px 5px #0006;}
.codex-visual #app.codex-selected-portrait-mode #hud.codex-castle-overlay .castleBox{box-shadow:inset 0 0 0 1px #d2b57820;}
.codex-visual #app.codex-selected-portrait-mode #hud.codex-castle-overlay #timer{border:1px solid #c1a56d;border-radius:5px;background:linear-gradient(125deg,#34525d,#102e3d 58%,#091d2d);color:#ffe7a8;box-shadow:inset 0 0 0 2px #ddc1832e,inset 0 1px #f9e5ad66,0 1px 4px #0008;text-shadow:0 1px 2px #000;}
.codex-visual #app.codex-selected-portrait-mode #hud.codex-castle-overlay #timer.paused{background:#4b4532;}
.codex-selected-portrait-mode #codexLeftBattleRail .codex-team-commands button{box-shadow:inset 0 0 0 1px #e7ce9233,inset 0 1px #fff2c844,0 2px 3px #0006;}

#app.codex-selected-portrait-mode .morale-bar.codex-orb-mode{background:transparent!important;border:0!important;outline:0!important;box-shadow:none!important;}
#app.codex-selected-portrait-mode .morale-bar.codex-orb-mode>:is(#moraleFill,.codex-spirit-flame,.codex-morale-divisions,.codex-morale-required){visibility:hidden!important;}
#app.codex-selected-portrait-mode #codexRightBattleRail{background:none;overflow:visible;padding-top:120px;}
#app.codex-selected-portrait-mode #codexRightBattleRail .morale-bar.codex-orb-mode{width:32px;min-height:0;}
.codex-orb-gauge[hidden],.codex-spirit-orb[hidden]{display:none!important;}
.codex-orb-gauge{position:absolute;inset:auto 0 0;display:grid;grid-template-columns:repeat(var(--orb-slots),minmax(0,1fr));grid-template-rows:1fr;height:20px;pointer-events:none;}
.codex-orb-gauge.is-vertical{grid-template-columns:1fr;grid-template-rows:repeat(var(--orb-slots),minmax(0,1fr));height:100%;max-height:360px;}
.codex-orb-gauge::before{content:'';position:absolute;left:0;bottom:0;width:var(--orb-cap-height);height:100%;border:1px solid #b8a27166;border-radius:10px;box-sizing:border-box;background:linear-gradient(90deg,#071a2799,#17364599,#071a2799);}
.codex-orb-gauge.is-vertical::before{left:4px;right:4px;width:auto;height:var(--orb-cap-height);}
.codex-spirit-orb{display:grid;place-items:center;min-height:0;min-width:0;}
.codex-orb-well{position:relative;display:block;height:var(--orb-diameter,18px);width:var(--orb-diameter,18px);aspect-ratio:1;box-sizing:border-box;border:1px solid #8295a5;border-radius:50%;overflow:hidden;background:radial-gradient(circle at 35% 25%,#284355,#061421 75%);box-shadow:inset 0 1px 3px #000c,0 0 2px #0008;}
.codex-orb-energy{position:absolute;left:0;bottom:0;width:100%;height:var(--orb-fill);background:var(--codex-side-flame) center/130% 130% no-repeat,radial-gradient(circle at 40% 30%,#f4ffff,#75d8ff 40%,#1684c9 72%,#17335a);box-shadow:inset 0 1px 3px #f2ffff;}
.has-energy .codex-orb-well{border-color:#ace4f3;box-shadow:0 0 4px #4fbce88c,inset 0 0 2px #c2f5ff;}
.has-energy .codex-orb-energy{animation:codexOrbFire 2s ease-in-out infinite alternate;}
.is-required .codex-orb-well{border-color:#ebca78;box-shadow:0 0 0 1px #8e6b36,0 0 4px #e0b75d66;}
.codex-orb-value{position:absolute;right:0;bottom:calc(100% + 3px);padding:1px 4px;border:1px solid #b69c66;border-radius:3px;background:linear-gradient(#223f4a,#0b1c2b);color:#fff0c8;font:700 9px/14px var(--yashu-font,serif);font-variant-numeric:tabular-nums;white-space:nowrap;box-shadow:inset 0 1px #fff0c333,0 1px 2px #0008;}
.is-vertical .codex-orb-value{right:50%;transform:translateX(50%);bottom:calc(var(--orb-cap-height) + 5px);}
#app.codex-selected-portrait-mode #controls .morale-bar.codex-orb-mode{height:20px;margin-top:14px;}
@keyframes codexOrbFire{to{filter:brightness(1.18);}}
@media(prefers-reduced-motion:reduce){.has-energy .codex-orb-energy{animation:none;}}


.codex-visual #app.codex-selected-portrait-mode #roster .unit-card{--lacquer-alpha:.92;}
.codex-visual #app.codex-selected-portrait-mode #roster .unit-card.codex-unit-selected{--lacquer-alpha:1;}
.codex-visual #app.codex-selected-portrait-mode #roster .unit-card .skill{background-color:rgb(16 45 66 / var(--lacquer-alpha))!important;color:#fff0d5!important;}
.codex-visual #app.codex-selected-portrait-mode #roster .unit-card .skill.active{background-color:rgb(30 65 53 / var(--lacquer-alpha))!important;}
.codex-visual #app.codex-selected-portrait-mode #roster .unit-card .skill.waiting,.codex-visual #app.codex-selected-portrait-mode #roster .unit-card .skill.queued{background-color:rgb(68 56 39 / var(--lacquer-alpha))!important;}
.codex-visual #app.codex-selected-portrait-mode #roster .unit-card .skill:disabled{background-color:rgb(49 63 73 / var(--lacquer-alpha))!important;color:#e4e9e9!important;}


@media(orientation:landscape) and (max-height:550px){
 .codex-selected-portrait-mode #controls #codexGreatDock #treasure{display:flex;flex-direction:column;width:100%;min-width:0;min-height:64px;height:auto;box-sizing:border-box;padding:3px 1px;}
 .codex-selected-portrait-mode #controls #codexGreatDock #treasure img{width:32px;height:32px;}
}
.codex-orb-gauge.is-arriving .is-required .codex-orb-well{animation:codexReadyArrival .85s ease-out 1;}
@media(prefers-reduced-motion:reduce){.codex-orb-gauge.is-arriving .is-required .codex-orb-well{animation:none;}}

:root{--codex-spell-painted-frame:url('/media/6d801467df9702b6d0145e63a08b882eb2ca13208a075d6e9952fcaa163cce0a.webp');--codex-great-painted-frame:url('/media/28d81f31b398bdedeabdb9ee6630137ac16ddefdb2e40f3c875a2f16781ce8a1.webp');}

.codex-visual #app.codex-selected-portrait-mode #roster .unit-card button.skill.codex-readiness{background:transparent!important;border:0!important;border-radius:0;box-shadow:none!important;padding:5px 5px 4px;grid-template-rows:14px 17px;}
.codex-visual #app.codex-selected-portrait-mode #roster .unit-card button.skill.codex-readiness::before{content:'';position:absolute;inset:0;box-sizing:border-box;border:5px solid transparent;border-image:var(--codex-spell-painted-frame) 23 fill / 5px / 0 stretch;opacity:var(--lacquer-alpha,.92);z-index:0;pointer-events:none;}
.codex-visual #app.codex-selected-portrait-mode #roster .unit-card button.skill.codex-readiness::after{inset:5px;}
.codex-visual #app.codex-selected-portrait-mode #roster .unit-card.codex-unit-selected button.skill::before{filter:drop-shadow(0 0 2px #88d9e699);}
.codex-selected-portrait-mode #roster .skill.codex-readiness>b{font-size:9.5px;line-height:17px;text-shadow:0 1px 2px #000;}
.codex-selected-portrait-mode #roster .codex-skill-meta small{box-shadow:0 0 0 1px #694d25,inset 0 0 0 1px #c4f6ff88,inset 0 2px 3px #ebffff66,0 1px 2px #000b;}
.codex-selected-portrait-mode #roster .codex-recast{--painted-status:#243b50;isolation:isolate;line-height:14px;font-size:8.5px;border:0;border-radius:0;background:#c0a367!important;box-shadow:none;clip-path:polygon(4px 0,calc(100% - 4px) 0,100% 50%,calc(100% - 4px) 100%,4px 100%,0 50%);}
.codex-selected-portrait-mode #roster .codex-recast::before{content:'';position:absolute;inset:1px;z-index:-1;clip-path:polygon(3px 0,calc(100% - 3px) 0,100% 50%,calc(100% - 3px) 100%,3px 100%,0 50%);background:linear-gradient(90deg,#e9f7ff33 0% var(--codex-ready-progress,0%),#0003 var(--codex-ready-progress,0%) 100%),var(--painted-status);}
.codex-selected-portrait-mode #roster [data-spell-state=ready] .codex-recast{--painted-status:#255443;}
.codex-selected-portrait-mode #roster :is([data-spell-state=effect],[data-spell-state=dance]) .codex-recast{--painted-status:#76511d;}
.codex-selected-portrait-mode #roster [data-spell-state=charge] .codex-recast{--painted-status:#523469;}
.codex-selected-portrait-mode #roster [data-spell-state=sealed] .codex-recast{--painted-status:#70353b;}
.codex-selected-portrait-mode #roster [data-spell-state=respawn] .codex-recast{--painted-status:#343d48;}
.codex-selected-portrait-mode #codexGreatDock #treasure{position:relative;isolation:isolate;background:transparent!important;border:0!important;border-radius:0;box-shadow:none!important;}
.codex-selected-portrait-mode #codexGreatDock #treasure::before{content:'';position:absolute;inset:0;box-sizing:border-box;border:5px solid transparent;border-image:var(--codex-great-painted-frame) 17 fill / 5px / 0 stretch;z-index:0;pointer-events:none;}
.codex-selected-portrait-mode #codexGreatDock #treasure>:is(img,b,small){position:relative;z-index:1;}
.codex-selected-portrait-mode #codexGreatDock #treasure.codex-great-available::before{filter:drop-shadow(0 0 2px #ffe5a1b3) drop-shadow(0 0 5px #f3bf554d);}
.codex-selected-portrait-mode #codexGreatDock #treasure.used::before{filter:grayscale(.7) brightness(.75);}

.codex-selected-portrait-mode #codexGreatDock #treasure{padding:5px!important;box-sizing:border-box;}
.codex-selected-portrait-mode #codexGreatDock #treasure img{order:0;}
.codex-selected-portrait-mode #codexGreatDock #treasure small{order:1;}
.codex-selected-portrait-mode #codexGreatDock #treasure b:empty{display:none;}

.codex-visual #app.codex-selected-portrait-mode #codexGreatDock #treasure img{width:100%;max-width:48px;height:44px;object-fit:contain;border:0;padding:0;background:transparent;box-shadow:none;filter:drop-shadow(0 1px 1px #000a);}
@media(orientation:landscape) and (max-height:550px){.codex-visual #app.codex-selected-portrait-mode #controls #codexGreatDock #treasure img{height:36px;max-width:40px;}}


.codex-visual #app.codex-selected-portrait-mode #codexGreatDock #treasure.codex-great-available img{filter:drop-shadow(0 1px 1px #000a) drop-shadow(0 0 3px #ffe6ac80);}

@font-face{font-family:CodexBattleSerif;src:url('/static/ff688efc8dd23270e8a542acfcc0147c6d3d6286d2dff7959a543694216cd32c.woff2') format('woff2');font-weight:700;font-display:swap;}

.codex-visual #app.codex-selected-portrait-mode :is(#roster,#hud,#codexGreatDock,#codexLeftBattleRail,.codex-orb-value){--battle-reference-font:CodexBattleSerif,'Hiragino Mincho ProN','Noto Serif CJK JP','Yu Mincho',serif;}
.codex-visual #app.codex-selected-portrait-mode :is(#roster,#hud,#codexGreatDock,#codexLeftBattleRail) :is(button,strong,b,small,span),.codex-visual #app.codex-selected-portrait-mode .codex-orb-value{font-family:var(--battle-reference-font)!important;font-weight:700;}
.codex-visual #app.codex-selected-portrait-mode #hud.codex-castle-overlay{background:transparent;border:0;box-shadow:none;padding:0;}
.codex-visual #app.codex-selected-portrait-mode #hud.codex-castle-overlay .castleBox{position:relative;isolation:isolate;background:transparent;box-shadow:none;padding:3px 5px;}
.codex-visual #app.codex-selected-portrait-mode #hud .castleBox::before{content:'';position:absolute;inset:0;border:4px solid transparent;border-image:var(--codex-spell-painted-frame) 23 fill / 4px / 0 stretch;box-sizing:border-box;z-index:-1;pointer-events:none;}
.codex-visual #app.codex-selected-portrait-mode #hud.codex-castle-overlay #timer{position:relative;isolation:isolate;background:transparent;border:0;border-radius:0;box-shadow:none;color:#ffe4a5;}
.codex-visual #app.codex-selected-portrait-mode #hud #timer::after{content:'';position:absolute;inset:0;border:4px solid transparent;border-image:var(--codex-great-painted-frame) 17 fill / 4px / 0 stretch;z-index:-1;pointer-events:none;}
.codex-visual #app.codex-selected-portrait-mode #hud #timer::before{font-family:var(--battle-reference-font);color:#e4c887;}
.codex-visual #app.codex-selected-portrait-mode #hud .castle-wall{filter:none;border-radius:0;}
.codex-selected-portrait-mode #roster .codex-recast{--painted-status:#344756;--status-fill:100%;background:linear-gradient(#ffe9a4,#a17a3b 46%,#ead093 55%,#715022)!important;color:#fff9e8;text-shadow:0 1px 2px #000;}
.codex-selected-portrait-mode #roster .codex-recast::before{background:linear-gradient(90deg,transparent calc(var(--status-fill) - 3px),#f4ffffbd calc(var(--status-fill) - 1px),transparent var(--status-fill)),linear-gradient(#ffffff9c 0%,#ffffff0d 16%,transparent 42%,#0005 78%,#ffffff26),linear-gradient(90deg,var(--painted-status) 0% var(--status-fill),#14212b var(--status-fill) 100%);box-shadow:inset 0 1px #fff9,inset 0 -1px #ffffff42,inset 0 0 5px #0008;}
.codex-selected-portrait-mode #roster :is([data-spell-state=ct],[data-spell-state=charge],[data-spell-state=effect]) .codex-recast{--status-fill:var(--codex-ready-progress,0%);}
.codex-selected-portrait-mode #roster [data-spell-state=ready] .codex-recast{--painted-status:#419733;color:#fff9e8;}
.codex-selected-portrait-mode #roster [data-spell-state=ct] .codex-recast{--painted-status:#367da9;}
.codex-selected-portrait-mode #roster [data-spell-state=charge] .codex-recast{--painted-status:#7941bd;}
.codex-selected-portrait-mode #roster :is([data-spell-state=effect],[data-spell-state=dance]) .codex-recast{--painted-status:#b97a27;}
.codex-selected-portrait-mode #roster [data-spell-state=sealed] .codex-recast{--painted-status:#9e4034;}
.codex-selected-portrait-mode #roster [data-spell-state=respawn] .codex-recast{--painted-status:#343d48;}
.codex-visual #app.codex-selected-portrait-mode #roster .mini-hp{height:6px;background:#050e12!important;border:1px solid #b0ac89;border-radius:0;clip-path:polygon(2px 0,calc(100% - 2px) 0,100% 2px,100% calc(100% - 2px),calc(100% - 2px) 100%,2px 100%,0 calc(100% - 2px),0 2px);box-shadow:0 0 0 1px #554c36,inset 0 1px 1px #000;}
.codex-visual #app.codex-selected-portrait-mode #roster .mini-hp i{position:relative;overflow:hidden;background:linear-gradient(#e4ffd7,#91d59b 20%,#3fb860 48%,#176a36 80%,#65d289)!important;box-shadow:inset 0 1px #f4ffecc9,inset 0 -1px #83f6ad88;}


.codex-visual #app.codex-selected-portrait-mode #roster .mini-hp i::after{content:'';position:absolute;inset:0 0 0 auto;width:2px;background:#d7ffe4;box-shadow:0 0 3px 1px #73ffc6;}
.codex-selected-portrait-mode #roster .codex-skill-meta small{background:radial-gradient(ellipse at 30% 16%,#fff 0%,#dcfaffbb 9%,transparent 30%),radial-gradient(ellipse at 65% 92%,#39c8ff88,transparent 48%),radial-gradient(circle at 40% 35%,#309ce4,#07549d 53%,#061d45 80%);box-shadow:0 0 0 1px #614219,0 0 4px #47bfff66,inset 0 0 0 1px #d3faffaa,inset 0 2px 2px #fff9,inset 0 -2px 3px #001b44;text-shadow:0 1px 2px #00132e,1px 0 1px #00132e;}
.codex-orb-energy{background:radial-gradient(ellipse at 32% 14%,#fff 0%,#e8fcffad 10%,transparent 32%),radial-gradient(ellipse at 66% 94%,#70eaffba,transparent 52%),radial-gradient(circle at 42% 36%,#70dfffbd,#168ddbe6 48%,#052b70 85%),var(--codex-side-flame) center/130% 130% no-repeat;box-shadow:inset 0 1px 2px #fff,inset 0 -2px 3px #0052a2;}
.has-energy .codex-orb-well{border-color:#c3efff;box-shadow:0 0 3px #68d4ffb3,0 0 7px #24acff55,inset 0 0 2px #f1ffff;}
.has-energy.is-required .codex-orb-well{border-color:#ffe4a1;box-shadow:0 0 0 1px #9d783a,0 0 4px #ffd48388,0 0 7px #24acff55,inset 0 0 2px #fff7d6;}

.codex-selected-portrait-mode #roster .skill.codex-cast-ready:not(:disabled):not(.codex-cast-paused) .codex-recast::before{filter:brightness(1.13);box-shadow:inset 0 0 6px #c7ff88ad,inset 0 1px #ffffd5,inset 0 -1px #d6ff9e9c;}
.codex-selected-portrait-mode #roster .skill.codex-cast-ready:not(:disabled):not(.codex-cast-paused) .codex-recast{text-shadow:0 0 3px #e9ffc58c,0 1px 2px #102f0a;}


:is(#meta,#preparation) .sheet-head.codex-fort-heading{position:relative;isolation:isolate;overflow:hidden;height:clamp(112px,17vw,180px);min-height:112px;box-sizing:border-box;padding:18px 16px 12px;margin:0 -16px 14px;border:0;border-radius:0;background:#256977;display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-end;flex-shrink:0}
#meta.codex-fort-home .sheet-head.codex-fort-heading{height:clamp(152px,22vw,230px);min-height:152px;padding:18px 18px 14px;margin-bottom:12px}
:is(#meta,#preparation) .sheet-head.codex-fort-heading::before,:is(#meta,#preparation) .sheet-head.codex-fort-heading::after{content:none;display:none}
.codex-fort-banner{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden;background:#286879}
.codex-fort-banner img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:34% 46%;opacity:0;transition:opacity 1.8s ease;display:block}
.codex-fort-banner img.is-current{opacity:1}
.codex-fort-banner::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 32%,#0a202a15 50%,#061b3570),linear-gradient(0deg,#061b354d,transparent 55%)}
:is(#meta,#preparation) .codex-fort-heading #metaTitle{color:#fff;margin:0;font:700 clamp(23px,5vw,31px)/1.35 CodexBook,serif;text-shadow:0 2px 5px #000b,0 1px 2px #000b;text-align:right;max-width:58%;letter-spacing:.04em}
:is(#meta,#preparation) .codex-fort-heading #metaEyebrow{color:#fff;display:block;margin:4px 0 0;text-shadow:0 1px 4px #000c;max-width:52%;font-size:11px}
#meta.codex-fort-home .codex-fort-heading #metaEyebrow{display:none}
:is(#meta,#preparation) .codex-fort-heading .codex-ui-trail{align-self:stretch;color:#fff;margin-bottom:auto;text-shadow:0 1px 4px #000c}
:is(#meta,#preparation) .codex-fort-heading .codex-ui-trail button,:is(#meta,#preparation) .codex-fort-heading .codex-ui-trail span{color:#fff;background:transparent}
.codex-fort-effects{position:absolute;inset:0;pointer-events:none}
@media(max-width:480px){:is(#meta,#preparation) .sheet-head.codex-fort-heading{height:122px;padding:12px 12px 10px}#meta.codex-fort-home .sheet-head.codex-fort-heading{height:168px;padding-right:14px}.codex-fort-banner img{object-position:24% center}:is(#meta,#preparation) .codex-fort-heading #metaTitle{max-width:54%;font-size:23px}:is(#meta,#preparation) .codex-fort-heading .codex-ui-trail{font-size:10px}}
@media(max-height:430px){:is(#meta,#preparation) .sheet-head.codex-fort-heading,#meta.codex-fort-home .sheet-head.codex-fort-heading{height:100px;min-height:100px}}
@media(prefers-reduced-motion:reduce){.codex-fort-banner img{transition:none}}

#preparation .codex-fort-heading h1{color:#fff;font-size:clamp(23px,5vw,31px);text-align:right;max-width:58%;text-shadow:0 2px 5px #000b}#preparation .codex-fort-heading p{color:#fff;max-width:58%;text-shadow:0 1px 4px #000b}

.codex-expedition-modes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:18px 0}.codex-mode-card{display:flex;flex-direction:column;text-align:left;gap:10px;border:1px solid var(--yashu-line);border-radius:14px;padding:20px;background:var(--yashu-paper);color:var(--yashu-ink);min-width:0}.codex-mode-card p{font-size:14px;line-height:1.8;margin:0;font-weight:400}.codex-mode-card>b{font-size:23px}.codex-mode-card strong{font-size:16px}.codex-mode-mark{font-family:YashimaBrush,serif;font-size:44px;color:var(--yashu-sky)}.mode-strategy .codex-mode-mark{color:var(--yashu-nature)}.codex-mode-card:disabled{opacity:.65}.codex-mode-card:focus-visible{outline:3px solid var(--yashu-sky);outline-offset:3px}.codex-hero-status{display:flex;flex-direction:column;gap:8px;background:var(--yashu-nature-soft);border:1px solid var(--yashu-line);border-left:5px solid var(--yashu-nature);border-radius:8px;padding:14px;margin:12px 0;color:var(--yashu-ink)}.codex-hero-status b{font-size:17px}.codex-hero-status small{font-size:13px;line-height:1.6}.codex-growth-choices{display:grid;gap:12px}.codex-growth-choices button{display:flex;flex-direction:column;text-align:left;gap:8px;padding:14px;white-space:pre-line}.codex-growth-choices span{font-size:14px;font-weight:400;line-height:1.7}.codex-expedition-warning{color:#a33130;background:#fff0e4;padding:9px;border-radius:6px;font-weight:700}.codex-adventure-record{padding:16px;margin:12px 0;background:var(--yashu-paper);border:1px solid var(--yashu-line);border-radius:10px;line-height:1.7}.codex-adventure-record h2{font-size:18px}.codex-adventure-record p{white-space:pre-line}.codex-expedition-highlight{outline:3px solid #e6b74f!important;outline-offset:3px;box-shadow:0 0 0 7px #edc76655!important}.codex-expedition-guide{position:fixed;left:max(12px,env(safe-area-inset-left));bottom:max(12px,env(safe-area-inset-bottom));z-index:23000;width:min(370px,calc(100vw - 24px));max-height:42vh;overflow:auto;padding:16px;background:#fffbedf5;color:var(--yashu-ink);border:2px solid #cbaa58;border-radius:12px;box-shadow:0 10px 30px #09293640;font:15px CodexUI,system-ui,sans-serif;line-height:1.7}.codex-expedition-guide>b{color:var(--yashu-sky)}.codex-expedition-guide p{margin:7px 0 12px}.codex-expedition-guide button{min-height:44px}.codex-expedition-guide.is-modes{top:50%;left:50%;bottom:auto;transform:translate(-50%,-50%);width:min(740px,calc(100vw - 24px));max-height:88dvh}.codex-expedition-guide.is-modes .codex-mode-card{padding:14px}.codex-expedition-guide.is-modes .codex-mode-card>b{font-size:19px}.codex-expedition-guide.is-modes .codex-mode-card p{font-size:13px}.codex-expedition-guide.is-modes>button{margin:4px}.codex-expedition-guide[data-expedition-guide=council]{bottom:max(8px,env(safe-area-inset-bottom));max-height:30vh}#cardInfo.codex-expedition-highlight{outline-offset:-5px;box-shadow:none!important}@media(max-width:600px){.codex-expedition-modes{grid-template-columns:1fr}.codex-mode-card{padding:16px}.codex-mode-mark{font-size:34px}.codex-expedition-guide.is-modes .codex-expedition-modes{gap:10px;margin:12px 0}.codex-expedition-guide.is-modes .codex-mode-mark{display:none}}@media(max-height:430px){.codex-expedition-guide{left:8px;bottom:8px;width:320px;max-height:60vh}.codex-expedition-guide.is-modes{max-height:94dvh}.codex-expedition-modes{grid-template-columns:repeat(2,minmax(0,1fr))}}
.codex-expedition-guide{pointer-events:none}.codex-expedition-guide button,.codex-expedition-guide.is-modes{pointer-events:auto}
.codex-visual #meta .codex-expedition-modes .codex-mode-card{color:var(--yashu-ink);box-shadow:0 3px 12px #18384c0a;border-color:var(--yashu-line);border-left-width:5px}
.codex-visual #meta .codex-expedition-modes .mode-adventure{background:var(--yashu-sky-soft);border-left-color:var(--yashu-sky)}
.codex-visual #meta .codex-expedition-modes .mode-strategy{background:var(--yashu-nature-soft);border-left-color:var(--yashu-nature)}
.codex-visual #meta .codex-expedition-modes .codex-mode-card:hover:not(:disabled){filter:brightness(1.025);transform:translateY(-1px)}

#app.codex-stage-active{background:transparent}
.codex-reunion-flag{display:inline-block;width:48px;height:48px}.codex-reunion-flag svg{width:100%;height:100%}.codex-reunion-node{position:relative}.codex-reunion-node .codex-reunion-flag{position:absolute;right:-8px;top:-18px;width:28px;height:28px;pointer-events:none}


#resultActions{position:sticky;bottom:-18px;z-index:2;display:grid;gap:8px;margin:12px -14px -18px;padding:10px 14px 14px;background:linear-gradient(transparent,var(--yashu-paper,#f6efdc) 14px);}
#resultActions:empty{display:none}
#resultActions button{width:100%;margin:0}
@media(max-width:360px){#resultActions{bottom:-14px;margin:10px -10px -14px;padding:8px 10px 12px}}


@media(max-width:600px){#meta .codex-expedition-modes:not(.codex-expedition-guide *){grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0}#meta .codex-expedition-modes .codex-mode-card{padding:12px 10px;gap:6px;border-radius:12px}#meta .codex-expedition-modes .codex-mode-mark{font-size:30px;line-height:1}#meta .codex-expedition-modes .codex-mode-card>b{font-size:17px}#meta .codex-expedition-modes .codex-mode-card strong{font-size:13px;line-height:1.45}#meta .codex-expedition-modes .codex-mode-card p{font-size:12px;line-height:1.6}}
#meta .adjutant .codex-nagi-link{display:inline-block;width:auto;min-height:0;margin:4px 0 0;padding:2px 0;border:0;background:none;color:var(--yashu-sky,#1f5f86);font-size:13px;font-weight:700;text-decoration:underline;text-underline-offset:3px;position:relative;z-index:1}
@media(max-width:600px) and (max-height:640px){#meta .codex-expedition-modes .codex-mode-card p{display:none}#meta .codex-expedition-modes .codex-mode-mark{font-size:26px}}


.codex-trial-progress{margin:8px 0 4px;font-size:13px;color:#5b5240}
.codex-trial-chapter h2{margin:14px 0 2px;font-size:17px}
.codex-trial-chapter .lead{margin:0 0 8px;font-size:12.5px}
.codex-trial-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.codex-trial-list button{width:100%;display:grid;grid-template-columns:30px minmax(0,1fr) max-content;grid-template-rows:auto auto;column-gap:8px;align-items:center;text-align:left;padding:8px 10px;min-height:52px;border:1px solid #bba77a;border-radius:6px;background:#fffaf0;color:#2e2a20}
.codex-trial-list button:disabled{opacity:.55}
.codex-trial-list .codex-trial-no{grid-row:1/3;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#28414a;color:#f4ecd6;font-weight:800;font-size:13px}
.codex-trial-list button.is-cleared .codex-trial-no{background:#9a7a32}
.codex-trial-list b{font-size:14.5px}
.codex-trial-list small{grid-column:2;font-size:12px;color:#5b5240}
.codex-trial-list .codex-trial-mark{grid-column:3;grid-row:1/3;white-space:nowrap;font-size:12px;font-weight:700;color:#8a6a24}
#codexTrialPanel{margin:0 0 6px;text-align:left}
#codexTrialPanel h2{margin:0;font-size:15px;display:flex;gap:8px;align-items:baseline}
#codexTrialPanel h2 span{font-size:12px;color:#8a6a24}
#codexTrialPanel p{margin:2px 0;font-size:12.5px;line-height:1.5;color:#3a3426;text-align:left}
#codexTrialPanel .codex-trial-goal{font-weight:800;color:#8e2f1f}
#codexTrialPanel .codex-trial-answer{background:#f3e7c4;border-radius:4px;padding:3px 6px}
#deployBar #codexTrialPanel .codex-trial-swap{display:flex;gap:6px;margin:4px 0;grid-template-columns:none}
.codex-trial-swap button{flex:1;min-height:44px;display:grid;padding:4px 6px;border:1px solid #bba77a;border-radius:5px;background:#fffaf0;color:#2e2a20;text-align:left}
.codex-trial-swap button[aria-pressed=true]{border:2px solid #8e2f1f;background:#f6e3c4}
.codex-trial-swap small{font-size:11px;color:#5b5240}
#codexTrialGoal{position:absolute;left:50%;bottom:8px;transform:translateX(-50%);z-index:6;margin:0;padding:3px 10px;max-width:calc(100% - 20px);box-sizing:border-box;border-radius:12px;background:#18263ad9;color:#f4ecd6;font-size:12px;font-weight:700;white-space:normal;text-align:center;overflow-wrap:anywhere;pointer-events:none}
.codex-trial-result{margin:6px 0 10px;font-size:14px;line-height:1.6;text-align:left}
.codex-trial-result .codex-trial-reward{font-weight:800;color:#8a6a24;white-space:nowrap}

.codex-trial-recommend{width:100%;min-height:44px;margin:6px 0 12px;white-space:normal;text-align:left}

#app #deployBar #codexTrialPanel .codex-trial-answer{color:#3a3426!important;text-shadow:none}
.codex-journey{min-width:0}.codex-journey h2{font-size:1.05rem}.codex-journey h3{margin:14px 0 6px}.codex-journey p{overflow-wrap:anywhere}.codex-journey>button,.journey-route button{width:100%;min-height:48px;white-space:normal;margin:5px 0}.journey-route{display:grid;gap:6px}.journey-stats{padding:10px;border:1px solid #b6a577;background:var(--yashu-surface,#f5f0e4);font-weight:700}.journey-goals{padding-left:22px;font-size:13px}.journey-goals li{margin:5px 0}.journey-goals [data-met=true]{color:#285b35}.journey-notice,.journey-result{padding:10px;background:#f3e7c4;color:#3a3426;border-radius:6px}.codex-journey .card-row{max-width:100%}


#meta #metaBody .codex-facility-guide .codex-facility-person{position:absolute;display:block;max-width:none;width:190%!important;height:auto!important;left:-45%!important;top:-4%!important;filter:none;object-fit:initial}
#meta #metaBody .codex-facility-guide .codex-tutorial-bust{mask-image:none}
#metaBody>.codex-menu-balance{margin:0 -16px 14px}
.codex-market-sale{color:var(--yashu-danger);font-weight:700;margin:8px 0}
.codex-fort-origin-picture{display:block;width:100%;height:auto;border-radius:8px}

.codex-visual #meta .treasure-tile[data-rarity="N"]{background:var(--yashu-paper)}
.codex-visual #meta .treasure-tile[data-rarity="R"]{background:#f0f4ef}
.codex-visual #meta.codex-road-scene #metaTitle{color:var(--yashu-ink)}
.codex-visual #meta .treasure-tile[data-rarity="R"]{border-color:#9faeb0;box-shadow:inset 0 0 0 1px #edf3ef}
.codex-visual #meta .treasure-tile[data-rarity="SR"]{border:2px solid #c19a48;background:linear-gradient(125deg,#fffdf3 20%,#fff3c9 53%,#fffdf3 82%);box-shadow:0 0 12px #e6bd6a66,inset 0 0 0 1px #fff9e0;position:relative}
.codex-visual #meta .treasure-tile[data-rarity="SR"] .card-top em{background:#6a4a19;color:#fff8df;text-shadow:0 1px 2px #2a200f}
.codex-visual #meta .treasure-tile[data-rarity="SR"]:disabled{box-shadow:none;filter:saturate(.55)}
.codex-visual #meta .military-card[data-rarity="SR"]{box-shadow:0 0 10px #e6bd6a55,inset 0 0 0 1px #e7c779}
.yashima-presentation.is-reward .presentation-scene{box-sizing:border-box;max-width:min(600px,94vw);margin:auto;border:1px solid #c8b995;border-radius:16px;background:linear-gradient(145deg,#fffdf4f5,#ede3cbe8);padding:22px 18px;box-shadow:0 12px 48px #10293666}
.yashima-presentation.is-reward[data-rarity="R"] .presentation-scene{border:2px solid #bacacb;background:linear-gradient(145deg,#fffef5,#dce9e9);box-shadow:0 0 0 5px #cbd6d333,0 0 45px #c6e4ed66}
.yashima-presentation.is-reward :is(.presentation-name,.presentation-line,.presentation-note){color:#18384c}
.yashima-presentation.is-reward[data-rarity="SR"] .presentation-scene{border:2px solid #e6c778;background:radial-gradient(ellipse at 50% 35%,#31566b,#142e40 70%);box-shadow:0 0 0 5px #d7ad5144,0 0 65px #edc96a88,inset 0 0 30px #dabf5930;color:#fff9e4}
.yashima-presentation.is-reward[data-rarity="SR"] .presentation-name{color:#ffedb4;text-shadow:0 2px 5px #0008}
.yashima-presentation.is-reward[data-rarity="SR"] :is(.presentation-kind,.presentation-line,.presentation-note){color:#fff4d3}
.yashima-presentation.is-reward[data-rarity="SR"] .presentation-art{filter:drop-shadow(0 0 18px #f4cb7988)}
.codex-growth-choices span{white-space:pre-line}
.codex-visual .event-art.painted{max-height:none;aspect-ratio:3/2;border:1px solid var(--yashu-line);border-radius:12px;overflow:hidden;background:var(--yashu-paper);margin:0 0 14px}
.codex-visual .event-art.painted img{width:100%;height:100%;object-fit:cover;display:block}
@media(max-width:500px){.yashima-presentation.is-reward .presentation-scene{padding:16px 12px;max-height:88dvh;overflow:auto}.codex-visual .event-art.painted{max-height:270px}}
@media(prefers-reduced-motion:reduce){.yashima-presentation.is-reward .presentation-scene{transform:none!important}}

:root{--codex-opening-dragon:url("/media/4d21eacc7bd7f9b20342e18f85495d7da45b5e8da6f5bbfbb4afc504855e22fa.webp");--codex-opening-dojo:url("/media/14ba189d732c59e69fd385ce745b0157af0f705ea120f395a400ebb2eeca1fe9.webp");--codex-opening-old-hall:url("/media/72ab11d0c28adc24c47e1d3780f79f99abc111ad433ef96f3641af8a6cf6d35f.webp");--codex-opening-hall:url("/media/6566cc34dfd844c1905af2791013b889e18609277ba705a981e4d4d97e653a94.webp");--codex-tutorial-road:url("/media/b45a19c5a9869b1ebfc7c9471dab7fb7acc72327a3504d3fa6e93a359d6d4d30.webp");--codex-prologue-road:url("/media/8fb51581f6590ea73b016cb312885c4dc7551e10e418149622e2d4d9578f28b8.webp");--codex-dialogue-frame:url("/media/533ecb36325ebb01ca54eca1539bbfc22e57a3c894df43c984b5c560c66b7c0e.webp");--codex-name-gold-flow:url("/media/6e8a54d1673a3b5f59165a76ac58674a700f994d171527cdc4e8a94ba54492d6.webp")}