/* Field maintenance dossier: mobile-first, scoped to the status dialog. */
.hero-status{--hero-color:#c88e70;box-sizing:border-box;width:min(1140px,96vw);max-width:1140px;height:min(760px,94dvh);max-height:94dvh;padding:0;border:1px solid #766955;border-radius:2px;background:repeating-linear-gradient(0deg,#ffffff02 0 1px,transparent 1px 4px),#1a1b18;color:#e5dfd2;overflow:hidden;font:14px/1.5 system-ui;box-shadow:0 25px 90px #000c;grid-template-rows:72px 64px minmax(0,1fr)}
.hero-status[open]{display:grid}.hero-status::backdrop{background:#080806dc;backdrop-filter:blur(4px)}
.hero-status *{box-sizing:border-box}.hero-status button{font:inherit;min-height:44px;background:#292a24;color:#e4dccb;border:1px solid #646050;border-radius:1px;padding:7px 12px;cursor:pointer;transition:background .15s,border-color .15s}
.hero-status button:hover:not(:disabled){background:#38392d;border-color:#c1b188}.hero-status button:focus-visible{outline:2px solid #e0c183;outline-offset:-3px}.hero-status button:disabled{opacity:.42;cursor:default}.hero-status button[aria-pressed=true]{border-color:var(--hero-color);color:#f5e4c3;background:#38372c}
.status-header{display:flex;justify-content:space-between;align-items:center;padding:10px 24px;border-bottom:1px solid #746b535e;background:linear-gradient(100deg,#32322a,#1c1d19);position:relative}.status-header::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--hero-color),#736347 45%,transparent)}
.status-heading{display:flex;gap:12px;align-items:baseline}.status-heading small{font:10px/1.2 ui-monospace,monospace;letter-spacing:.16em;color:#a69d87}.status-heading strong{font:600 24px/1.25 'Noto Serif TC','Microsoft JhengHei',serif;letter-spacing:.18em}.status-header button{background:transparent;min-width:100px;border-color:#746a53}
.status-roster{display:flex;padding:8px 24px 0;gap:5px;background:#171814;border-bottom:1px solid #766e5255;min-width:0}.status-roster button{display:flex;align-items:center;gap:10px;padding:8px 14px;border-bottom:0;flex:1;max-width:340px;background:#23251f;color:#a9a899;border-color:#494b3e;min-width:0;position:relative}.status-roster button[aria-pressed=true]{background:#34352b;border-color:#82714e;color:#f4e5c7;box-shadow:inset 0 3px var(--hero-color)}.status-roster-index{font:18px ui-monospace,monospace;color:var(--hero-color);opacity:.75}.status-roster-pilot{margin-left:auto;color:#a6a08b;font-size:10px}.status-roster button>span{font-size:13px;white-space:nowrap}
.status-layout{display:grid;grid-template-columns:40% minmax(0,60%);min-height:0;overflow:hidden}
.status-portrait{position:relative;overflow:hidden;min-width:0;border-right:1px solid #81735566;background:linear-gradient(0deg,#151611 5%,#15161177 50%,#151611b8),url('../assets/story/backgrounds/chapter-one/base-v1.webp') center/cover}
.status-portrait::before{content:'';position:absolute;inset:14px;border:1px solid #c5b78b20;pointer-events:none}.status-portrait::after{content:'';position:absolute;left:25px;right:25px;bottom:89px;height:1px;background:#ab967d55;pointer-events:none}.status-unit-mark{position:absolute;left:24px;top:8px;font:italic 150px/1 Georgia,serif;color:#b9b59b12;letter-spacing:-.08em;pointer-events:none}
.hero-status .status-portrait>img{position:absolute;inset:auto auto 95px 50%;width:auto;height:54%;max-width:none;max-height:none;object-fit:contain;transform:translateX(-50%);filter:drop-shadow(0 10px 16px #0009)}.hero-status .status-portrait[data-hero=barbatos]>img{height:78%}
.status-plaque{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#161713 32%);padding:23px 25px 20px}.status-plaque small{color:#c6bca6;font-size:12px;letter-spacing:.12em}.status-plaque h2{font-size:clamp(18px,2.1vw,29px);font-weight:650;letter-spacing:.025em;line-height:1.25;margin:5px 0 9px}.status-role{display:inline-block;font-size:11px;color:var(--hero-color);border-left:2px solid var(--hero-color);padding-left:8px;letter-spacing:.13em}
.status-right{display:flex;flex-direction:column;min-height:0;min-width:0;padding:20px 26px 12px;background:linear-gradient(130deg,#28292266,transparent 65%)}
.status-summary{display:flex;align-items:baseline;flex-wrap:wrap;gap:5px 13px;padding:0 0 18px}.status-level{font:32px/1 Georgia,serif;color:#d9c393}.status-summary>span{font-size:12px;color:#b7b3a3}.status-points{margin-left:auto;padding:3px 8px;font-size:12px;font-weight:500;color:#e0c183;border:1px solid #7f70514d;background:#b9a3650a}.status-summary progress{display:block;width:100%;height:5px;margin-top:5px;border:0;background:#090b08;accent-color:#ae9969;border-radius:0}.status-summary progress::-webkit-progress-bar{background:#090b08}.status-summary progress::-webkit-progress-value{background:linear-gradient(90deg,#726447,#c4b27c)}.status-summary small{font:10px/1.4 ui-monospace,monospace;color:#999681}
.status-tabs{display:flex;gap:0;border-bottom:1px solid #7c735c;flex:none}.status-tabs button{flex:1;min-width:0;padding:8px 5px;white-space:nowrap;border:0;border-bottom:2px solid transparent;background:transparent;color:#aaa796;min-height:42px}.status-tabs button[aria-pressed=true]{background:linear-gradient(transparent,#a8955c18);border-color:var(--hero-color);color:#f0dfb9}
.status-content{overflow:auto;overscroll-behavior:contain;min-height:0;padding:15px 1px 15px;scrollbar-width:thin;scrollbar-color:#776d52 #1a1b16}.status-content h3{color:#cdbb8d;font-size:12px;letter-spacing:.15em;margin:20px 0 7px;font-weight:600}.status-content p{margin:7px 0;line-height:1.75}.status-description{color:#e0dac8;font-size:13px;border-left:2px solid #74694d;padding-left:12px}.status-note{color:#a19f90;font-size:12px}
.status-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:18px 0;border-top:1px solid #736c5055;border-bottom:1px solid #736c5055;background:#0f110c55}.status-stat{padding:12px 14px;border-right:1px solid #736c5033;position:relative}.status-stat:nth-child(3n){border-right:0}.status-stat:nth-child(-n+3){border-bottom:1px solid #736c5033}.status-stat small{display:block;color:#b7b49f;font-size:10px;letter-spacing:.1em}.status-stat strong{font:31px/1.45 Georgia,serif;color:#f0e7d2;font-variant-numeric:tabular-nums}
.training-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:1px solid #6d694444}.training-row small{display:block;color:#aca795;font-size:12px;margin-top:3px}.training-row button{flex-shrink:0}.status-content>button{margin-top:10px}.status-specialization{display:block;width:100%;text-align:left;margin-bottom:6px;line-height:1.6}
.status-skill{border:0;border-left:2px solid #8b7957;border-bottom:1px solid #75664d55;padding:13px 15px;margin:0 0 10px;background:linear-gradient(90deg,#bfa2670c,transparent)}.status-skill>b{float:right;color:#d2bc87;font:12px ui-monospace,monospace;border:1px solid #806d4f66;padding:3px 6px}.status-skill>strong{font-weight:600;letter-spacing:.06em}.status-skill p{font-size:13px}.status-partner{display:flex;gap:12px;border-bottom:1px solid #6d694444;padding:12px 0}.status-partner img{width:65px;height:75px;object-fit:contain;flex:none;filter:drop-shadow(0 4px 6px #0008)}.status-partner h3{margin:0;font-size:14px;letter-spacing:0}.status-partner p{font-size:12px}
@media(orientation:landscape) and (max-height:540px){
 .hero-status{width:calc(100vw - max(12px,env(safe-area-inset-left)) - max(12px,env(safe-area-inset-right)));max-width:none;height:calc(100dvh - 12px);max-height:calc(100dvh - 12px);font-size:12px;grid-template-rows:42px 40px minmax(0,1fr)}
 .status-header{padding:4px 14px}.status-heading{gap:10px}.status-heading strong{font-size:18px}.status-heading small{font-size:9px;letter-spacing:.08em}.status-header button{min-height:32px;padding:4px 10px;min-width:80px}
 .status-roster{padding:4px 12px 0;gap:4px}.status-roster button{min-height:34px;padding:4px 9px;gap:7px}.status-roster-index{font-size:13px}.status-roster button>span{font-size:12px}.status-roster-pilot{font-size:9px}
 .status-layout{grid-template-columns:35% minmax(0,65%)}.status-right{padding:8px 14px 3px}.status-summary{padding-bottom:7px;gap:3px 8px}.status-summary small{display:none}.status-summary>span{font-size:10px}.status-level{font-size:22px}.status-points{font-size:10px;padding:1px 6px}.status-summary progress{margin-top:1px;height:4px}
 .status-tabs button{min-height:34px;padding:4px;font-size:12px}.status-content{padding:7px 0 10px}.status-description{font-size:12px}.status-content h3{margin-top:12px}.status-stats{margin:9px 0}.status-stat{padding:6px 10px}.status-stat strong{font-size:23px;line-height:1.3}.status-note{font-size:11px}
 .hero-status .status-portrait>img{bottom:65px;height:54%}.hero-status .status-portrait[data-hero=barbatos]>img{height:78%}.status-unit-mark{font-size:100px;left:16px;top:8px}.status-portrait::before{inset:9px}.status-portrait::after{bottom:60px;left:14px;right:14px}.status-plaque{padding:18px 14px 10px}.status-plaque h2{font-size:17px;margin:2px 0 5px}.status-plaque small{font-size:10px}.status-role{font-size:10px}.training-row{padding:8px 0}.training-row button{min-height:36px}.status-skill{padding:9px 12px}
}
@media(orientation:landscape) and (max-height:330px){.status-heading small,.status-roster-pilot{display:none}.status-right{padding-top:5px}.status-plaque h2{font-size:14px}.status-plaque small{font-size:9px}.status-role{letter-spacing:0;font-size:9px}.status-unit-mark{font-size:74px}.status-summary{padding-bottom:4px}.status-tabs button{min-height:32px}.status-content p{line-height:1.5}}
@media(max-width:600px) and (orientation:portrait){
 .hero-status{grid-template-rows:58px 51px minmax(0,1fr);height:94dvh;max-height:94dvh}.status-header{padding:9px 12px}.status-heading{display:block}.status-heading small{font-size:8px}.status-heading strong{font-size:20px;display:block}.status-header button{min-width:80px;font-size:12px}.status-roster{padding:5px 8px 0}.status-roster button{padding:5px;gap:4px;justify-content:center}.status-roster-pilot,.status-roster-index{display:none}.status-roster button>span{font-size:11px}
 .status-layout{grid-template-columns:1fr;grid-template-rows:150px minmax(0,1fr)}.status-portrait{border-right:0;border-bottom:1px solid #766b4f66}.hero-status .status-portrait>img{inset:auto auto 6px 20%;height:65%;width:auto}.hero-status .status-portrait[data-hero=barbatos]>img{height:94%}.status-plaque{left:40%;top:0;bottom:0;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(90deg,transparent,#171913);padding:10px}.status-plaque h2{font-size:18px}.status-plaque small{font-size:10px}.status-role{font-size:10px}.status-unit-mark{font-size:100px;left:10px;top:8px}.status-portrait::after{display:none}.status-right{padding:12px 14px 8px}.status-summary{padding-bottom:10px;gap:5px 8px}.status-level{font-size:25px}.status-summary>span{font-size:10px}.status-points{font-size:10px;padding:2px 5px}.status-tabs button{font-size:12px;min-height:40px}.status-stat{padding:9px}.status-stat strong{font-size:26px}
}
@media(prefers-reduced-motion:reduce){.hero-status button{transition:none}}

@media(orientation:landscape) and (max-height:330px){.hero-status .status-portrait>img{max-height:calc(100% - 66px)}}

