@font-face{font-family:"NCR BIZ";src:url("fonts/BIZUDGothic-Regular.ttf") format("truetype");font-weight:400;font-display:swap}
@font-face{font-family:"NCR BIZ";src:url("fonts/BIZUDGothic-Bold.ttf") format("truetype");font-weight:700;font-display:swap}

:root{
  color-scheme:dark;
  --bg:#111315;--bg-soft:#14181b;--panel:#171a1d;--panel-2:#1f2427;--panel-3:#2d3337;
  --ink:#f4f2ed;--muted:#b5bdba;--faint:#77807d;--line:rgba(255,255,255,.13);--line-strong:rgba(255,255,255,.25);
  --accent:#39d0c3;--accent-strong:#75ebe1;--accent-soft:rgba(57,208,195,.12);--danger:#ff7185;--warning:#ffcd6e;--group:#990000;
  --field:#292d30;--field-ink:#f1f2ef;--field-border:#424b4d;--shadow:0 22px 65px rgba(0,0,0,.32);
  --header-height:72px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:150px}
body{margin:0;min-width:320px;background:repeating-linear-gradient(90deg,rgba(255,255,255,.018) 0 1px,transparent 1px 56px),linear-gradient(145deg,#111315 0%,#1b2021 52%,#151719 100%);color:var(--ink);font-family:"NCR BIZ","BIZ UDPGothic","Yu Gothic",Meiryo,sans-serif;font-size:14px;line-height:1.65}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
button:disabled{cursor:not-allowed;opacity:.45}
a{color:inherit}
[hidden]{display:none!important}
.skip-link{position:fixed;z-index:1000;top:8px;left:8px;transform:translateY(-160%);padding:10px 14px;background:var(--accent);color:#071311;font-weight:700;text-decoration:none}
.skip-link:focus{transform:none}

.site-header{position:sticky;z-index:50;top:0;height:var(--header-height);display:flex;align-items:center;gap:28px;padding:0 clamp(18px,3vw,48px);border-bottom:1px solid var(--line-strong);background:rgba(15,18,20,.92);backdrop-filter:blur(16px)}
.brand{display:flex;align-items:center;gap:12px;border:0;background:none;color:var(--ink);text-align:left}
.brand img{border-radius:12px;box-shadow:0 0 24px rgba(57,208,195,.1)}
.brand span{display:grid;line-height:1.25;letter-spacing:.04em}.brand strong{font-size:15px}.brand small{margin-top:3px;color:var(--muted);font-size:10px;font-weight:400}
.header-links{display:flex;gap:22px;margin-left:auto}.header-links a{color:var(--muted);font-size:12px;text-decoration:none}.header-links a:hover{color:var(--accent)}
.header-actions{display:flex;align-items:center;gap:18px}.system-light{display:flex;align-items:center;gap:7px;color:var(--muted);font-family:Consolas,monospace;font-size:10px;letter-spacing:.08em}.system-light i{width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 10px var(--accent)}

.button,.icon-button,.text-button{border:0;transition:border-color .16s,background .16s,color .16s,transform .16s}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 15px;border:1px solid var(--line-strong);background:#202528;color:var(--ink);font-weight:700;text-decoration:none}
.button:hover{border-color:var(--accent);background:#283033}.button:active{transform:translateY(1px)}
.button-primary{border-color:rgba(57,208,195,.76);background:var(--accent);color:#071311}.button-primary:hover{background:var(--accent-strong);color:#071311}
.button-ghost{background:rgba(255,255,255,.025)}
.button-danger{border-color:rgba(255,113,133,.55);background:rgba(255,113,133,.11);color:#ff9eac}.button-danger:hover{background:var(--danger);color:#251014}
.button-large{min-height:52px;padding:11px 22px;font-size:15px}
.icon-button{width:44px;height:44px;border:1px solid var(--line-strong);background:#171b1e;color:var(--ink);font-size:20px}
.icon-button:hover{border-color:var(--accent);color:var(--accent)}
.text-button{padding:3px;background:none;color:var(--muted);font-size:12px;text-decoration:underline;text-underline-offset:3px}.text-button:hover{color:var(--accent)}
.eyebrow{margin:0;color:var(--accent);font-family:Consolas,monospace;font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}

.home-view{max-width:1540px;margin:auto;padding:clamp(34px,6vw,86px) clamp(18px,5vw,72px) 80px}
.hero{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr);gap:clamp(34px,6vw,90px);align-items:center;min-height:min(690px,calc(100vh - 150px))}
.hero-copy h1{max-width:850px;margin:20px 0 24px;font-size:clamp(42px,6.6vw,92px);line-height:1.05;letter-spacing:-.06em}.hero-copy h1 em{color:var(--accent);font-style:normal;text-shadow:0 0 34px rgba(57,208,195,.16)}
.hero-lead{max-width:720px;margin:0;color:#d0d5d2;font-size:clamp(15px,1.35vw,19px);line-height:1.95}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}
.feature-row{display:flex;flex-wrap:wrap;gap:22px;margin-top:36px;color:var(--muted);font-size:11px;letter-spacing:.03em}.feature-row span{display:flex;align-items:center;gap:8px}.feature-row b{color:var(--accent);font-family:Consolas,monospace;font-size:10px}
.hero-panel{display:grid;gap:14px}
.specimen-card{position:relative;overflow:hidden;min-height:410px;padding:28px;border:1px solid var(--line-strong);background:linear-gradient(160deg,rgba(31,36,39,.96),rgba(18,21,24,.94));box-shadow:var(--shadow)}
.specimen-card:before,.specimen-card:after{content:"";position:absolute;border:1px solid rgba(57,208,195,.15);border-radius:50%;inset:auto -100px -160px 30px;aspect-ratio:1}.specimen-card:after{inset:55px auto auto -170px;width:280px}
.specimen-label{position:relative;z-index:1;color:var(--muted);font-family:Consolas,monospace;font-size:10px;letter-spacing:.18em}
.specimen-orbit{position:relative;z-index:1;display:grid;place-items:center;width:180px;aspect-ratio:1;margin:47px auto;border:1px solid var(--line-strong);border-radius:50%;box-shadow:inset 0 0 0 18px rgba(255,255,255,.018),inset 0 0 0 19px var(--line)}
.specimen-orbit:before,.specimen-orbit:after{content:"";position:absolute;background:var(--accent)}.specimen-orbit:before{width:120%;height:1px}.specimen-orbit:after{height:120%;width:1px}.specimen-orbit b{z-index:2;display:grid;place-items:center;width:78px;aspect-ratio:1;border-radius:50%;background:#101416;color:var(--ink);font:700 24px Consolas;letter-spacing:.08em;box-shadow:0 0 35px rgba(57,208,195,.26)}
.specimen-orbit i{position:absolute;top:15px;right:19px;width:10px;aspect-ratio:1;border-radius:50%;background:var(--danger);box-shadow:0 0 12px var(--danger)}
.specimen-card dl{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;margin:0;border-top:1px solid var(--line)}.specimen-card dl div{padding-top:17px}.specimen-card dt{color:var(--muted);font:10px Consolas;letter-spacing:.08em}.specimen-card dd{margin:5px 0 0;font:700 27px Consolas}
.hero-notice{margin:0;padding:18px 20px;border-left:3px solid var(--danger);background:rgba(255,113,133,.07);color:var(--muted);font-size:12px;line-height:1.75}.hero-notice b{display:block;color:var(--ink);font-size:12px}

.archive-section{padding-top:34px;border-top:1px solid var(--line)}
.archive-toolbar{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:22px}.archive-toolbar h2{margin:3px 0 0;font-size:28px}
.search-box{display:grid;grid-template-columns:auto minmax(190px,340px);align-items:center;gap:12px;color:var(--muted);font-size:11px}.search-box input{border-radius:0}
.character-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.record-card{position:relative;display:grid;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:14px;min-height:100px;padding:18px;border:1px solid var(--line);background:rgba(23,26,29,.72);color:var(--ink);text-align:left}.record-card:hover{border-color:rgba(57,208,195,.58);background:#1b2022}.record-card-avatar{position:relative;display:grid;place-items:center;overflow:hidden;width:52px;aspect-ratio:1;border:1px solid var(--line-strong);background:#101416;color:var(--accent);font:700 20px Consolas}.record-card-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.record-card-body{display:grid;min-width:0;gap:4px}.record-card h3{overflow:hidden;margin:0;font-size:16px;text-overflow:ellipsis;white-space:nowrap}.record-card-meta{display:flex;flex-wrap:wrap;gap:4px 12px;color:var(--muted);font-size:11px}.record-card-meta>span{display:flex;min-width:0;gap:5px}.record-card-meta b{flex:0 0 auto;color:var(--accent);font:8px Consolas;letter-spacing:.08em}.record-card-body small{color:var(--faint);font-size:9px}.record-card time{align-self:end;color:var(--faint);font:10px Consolas}.list-empty{grid-column:1/-1;padding:56px 24px;border:1px dashed var(--line-strong);color:var(--muted);text-align:center}

.editor-view{min-height:calc(100vh - var(--header-height))}
.editor-toolbar{position:sticky;z-index:45;top:var(--header-height);display:flex;align-items:center;gap:14px;min-height:78px;padding:12px clamp(16px,2.6vw,40px);border-bottom:1px solid var(--line-strong);background:rgba(18,21,23,.95);backdrop-filter:blur(15px)}
.editor-title{min-width:160px;margin-right:auto}.editor-title h1{overflow:hidden;max-width:440px;margin:2px 0 0;font-size:20px;text-overflow:ellipsis;white-space:nowrap}
.save-state{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:11px}.save-state i{width:7px;height:7px;border-radius:50%;background:var(--faint)}.save-state.is-dirty i{background:#ffcd6e;box-shadow:0 0 10px #ffcd6e}.save-state.is-saved i{background:var(--accent);box-shadow:0 0 10px var(--accent)}.save-state.is-error i{background:var(--danger);box-shadow:0 0 10px var(--danger)}
.toolbar-buttons{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.toolbar-buttons .button{min-height:38px;padding:7px 12px;font-size:12px}
.section-nav{position:sticky;z-index:40;top:calc(var(--header-height) + 78px);display:flex;align-items:center;gap:0;overflow-x:auto;padding:0 clamp(16px,2.6vw,40px);border-bottom:1px solid var(--line);background:#171a1d;scrollbar-width:thin}.section-nav a,.section-nav button{min-width:max-content;padding:10px 14px;border:0;background:none;color:var(--muted);font-size:11px;text-decoration:none}.section-nav a:hover,.section-nav button:hover{color:var(--accent)}.section-nav span{display:flex;margin-left:auto}

#characterForm{max-width:1720px;margin:auto;padding:24px clamp(14px,2.5vw,40px) 90px}
#editFieldset{min-width:0;margin:0;padding:0;border:0}#editFieldset:disabled{opacity:.68}#editFieldset:disabled .summary-rail{opacity:1}
.editor-workspace{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:22px;align-items:start}.sheet-column{display:grid;min-width:0;gap:14px}
.sheet-section{overflow:hidden;border:1px solid var(--line-strong);background:rgba(23,26,29,.9);box-shadow:0 7px 25px rgba(0,0,0,.09)}
.sheet-section>summary{display:flex;align-items:center;gap:14px;min-height:72px;padding:14px 20px;list-style:none;background:linear-gradient(90deg,rgba(153,0,0,.16),transparent 36%);cursor:pointer}.sheet-section>summary::-webkit-details-marker{display:none}.sheet-section>summary:hover{background:linear-gradient(90deg,rgba(57,208,195,.1),transparent 44%)}
.sheet-section>summary .section-number{display:grid;place-items:center;width:38px;aspect-ratio:1;border:1px solid rgba(57,208,195,.34);color:var(--accent);font:700 11px Consolas}.sheet-section>summary span:nth-child(2){display:grid}.sheet-section>summary small{color:var(--muted);font:9px Consolas;letter-spacing:.14em}.sheet-section>summary b{font-size:17px}.sheet-section>summary i{margin-left:auto;color:var(--accent);font-style:normal;font-size:20px;transition:transform .2s}.sheet-section[open]>summary i{transform:rotate(180deg)}
.section-body{padding:22px;border-top:1px solid var(--line)}
.profile-layout{display:grid;grid-template-columns:190px minmax(0,1fr);gap:16px}
.profile-layout.profile-layout-no-portrait{grid-template-columns:minmax(0,1fr)}
.portrait-card{display:flex;flex-direction:column;align-items:center;gap:7px;padding:10px;border:1px solid var(--line);background:#121517}.portrait-button{position:relative;overflow:hidden;width:100%;aspect-ratio:3/4;border:1px dashed var(--line-strong);background:linear-gradient(145deg,#1e2427,#121517);color:var(--muted)}.portrait-button:hover{border-color:var(--accent)}.portrait-button img{width:100%;height:100%;object-fit:cover}.portrait-button span{display:grid;place-items:center;height:100%;font:10px Consolas;letter-spacing:.1em}.portrait-button span b{font:400 26px "NCR BIZ";color:var(--accent)}.portrait-button span small{margin-top:8px;color:var(--faint);font:9px "NCR BIZ";letter-spacing:0}
.form-panel{padding:18px;border:1px solid var(--line);background:rgba(10,13,15,.25)}
.field-grid{display:grid;gap:14px}.field-grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.field-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.field-wide{grid-column:span 2}.field-full{grid-column:1/-1}
.field{display:grid;align-content:start;gap:6px;min-width:0}.field>span{color:var(--muted);font-size:11px}.field>span b{margin-left:4px;color:var(--danger);font-size:9px}
input,select,textarea{width:100%;min-width:0;border:1px solid var(--field-border);border-radius:0;background:var(--field);color:var(--field-ink);caret-color:var(--accent);outline:0;padding:9px 10px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.18)}
input::placeholder,textarea::placeholder{color:#8f9895;opacity:1}select option{background:var(--field);color:var(--field-ink)}
input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,textarea:-webkit-autofill,select:-webkit-autofill{-webkit-text-fill-color:var(--field-ink);-webkit-box-shadow:0 0 0 1000px var(--field) inset}
input,select{min-height:42px}textarea{min-height:92px;resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(57,208,195,.18)}input[type=checkbox]{width:18px;min-height:18px;accent-color:var(--accent)}
.subsection-header{display:flex;align-items:end;justify-content:space-between;gap:16px;margin:28px 0 12px}.subsection-header:first-child{margin-top:0}.subsection-header small,.integration-panel small{color:var(--accent);font:9px Consolas;letter-spacing:.15em}.subsection-header h3,.integration-panel h3{margin:1px 0 0;font-size:16px}.section-note,.formula-note{margin:0;color:var(--muted);font-size:11px}.formula-note{padding:5px 9px;border:1px solid var(--line);font:10px Consolas}
.reinforcement-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.reinforcement-grid>label,.reinforcement-grid>output{display:grid;grid-template-columns:1fr 74px;align-items:center;gap:4px;padding:12px;border:1px solid var(--line);background:#14181a}.reinforcement-grid label>span,.reinforcement-grid output>span{font-weight:700}.reinforcement-grid input{text-align:center}.reinforcement-grid small{grid-column:1/-1;color:var(--faint);font-size:9px}.reinforcement-grid output{border-color:rgba(57,208,195,.4);background:var(--accent-soft)}.reinforcement-grid output strong{color:var(--accent);font:700 27px Consolas;text-align:center}

.card-list,.compact-list,.maneuver-list,.fetter-list{display:grid;gap:9px}.list-row{position:relative;display:grid;gap:10px;padding:12px;border:1px solid var(--line);background:#14181a}.row-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:9px;align-items:end}.row-grid .field{grid-column:span 3}.row-grid .span-2{grid-column:span 2}.row-grid .span-4{grid-column:span 4}.row-grid .span-5{grid-column:span 5}.row-grid .span-6{grid-column:span 6}.row-grid .span-8{grid-column:span 8}.row-grid .span-10{grid-column:span 10}.row-grid .span-12{grid-column:1/-1}.remove-row{align-self:end;width:38px;height:42px;border:1px solid rgba(255,113,133,.35);background:rgba(255,113,133,.07);color:var(--danger)}.remove-row:hover{background:var(--danger);color:#261013}.drag-handle{align-self:center;color:var(--faint);font:18px Consolas;cursor:grab}
.check-field{display:flex;align-items:center;gap:8px;min-height:42px;color:var(--muted);font-size:11px}.check-field input{flex:0 0 auto}
.madness-picker{display:flex;align-items:center;gap:6px;min-height:42px}.madness-dot{width:26px;height:26px;border:1px solid var(--line-strong);border-radius:50%;background:#101416;color:transparent}.madness-dot.is-on{border-color:var(--danger);background:var(--danger);box-shadow:0 0 11px rgba(255,113,133,.3)}.madness-clear{padding:4px;border:0;background:none;color:var(--faint);font-size:11px}

.battle-config{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px;padding:14px;border:1px solid rgba(57,208,195,.28);background:var(--accent-soft)}
.parts-groups{display:grid;gap:12px}.part-group{border:1px solid var(--line);background:#121618}.part-group-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid var(--line)}.part-group-header div{display:flex;align-items:center;gap:10px}.part-group-header b{font-size:16px}.part-group-header span{color:var(--muted);font:10px Consolas}.part-group-header button{padding:6px 10px;border:1px solid var(--line);background:none;color:var(--accent);font-size:11px}.part-table{width:100%;border-collapse:collapse;table-layout:fixed}.part-table th{padding:7px;border-bottom:1px solid var(--line);color:var(--muted);font-size:9px;font-weight:400;text-align:left}.part-table td{padding:4px;border-bottom:1px solid rgba(255,255,255,.06);vertical-align:middle}.part-table tr:last-child td{border-bottom:0}.part-table input,.part-table select{min-height:36px;padding:6px 7px;border-color:rgba(143,222,214,.66)}.part-table .part-check{width:48px;text-align:center}.part-table .part-name{width:18%}.part-table .part-timing{width:100px}.part-table .part-cost{width:66px}.part-table .part-range{width:82px}.part-table .part-effect{width:auto}.part-table .part-remove{width:44px}.part-table .mini-check{width:18px;min-height:18px}.part-table .remove-row{width:34px;height:34px}
.integration-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;margin-top:22px;padding:18px;border:1px solid var(--line);background:#121618}.integration-panel p{margin:3px 0 0;color:var(--muted);font-size:11px}.integration-panel textarea{grid-column:1/-1;font-family:Consolas,monospace;font-size:12px}

.summary-rail{position:sticky;top:calc(var(--header-height) + 144px);display:grid;gap:10px}.summary-card,.summary-stat-grid{border:1px solid var(--line-strong);background:rgba(20,24,26,.95);box-shadow:0 10px 30px rgba(0,0,0,.14)}.summary-card{padding:18px}.summary-card>small,.summary-stat-grid small{color:var(--accent);font:9px Consolas;letter-spacing:.13em}.summary-identity{text-align:center}.summary-avatar{position:relative;display:grid;place-items:center;overflow:hidden;width:90px;aspect-ratio:1;margin:15px auto;padding:0;border:1px solid var(--line-strong);background:#0e1214;color:var(--accent);font:700 34px Consolas;cursor:pointer}.summary-avatar:hover,.summary-avatar:focus-visible{border-color:var(--accent)}.summary-avatar img{width:100%;height:100%;object-fit:cover}.summary-avatar-action{position:absolute;right:0;bottom:0;left:0;padding:5px 2px;background:rgba(7,12,14,.84);color:#e8f5f2;font:8px "NCR BIZ";letter-spacing:.04em;opacity:0;transition:opacity .16s}.summary-avatar:hover .summary-avatar-action,.summary-avatar:focus-visible .summary-avatar-action,.summary-avatar:not(:has(img:not([hidden]))) .summary-avatar-action{opacity:1}.summary-portrait-tools{display:flex;align-items:center;justify-content:center;gap:8px;margin:-8px 0 10px}.summary-portrait-tools>span{color:var(--faint);font-size:8px;line-height:1.45}.summary-portrait-tools .text-button{flex:0 0 auto;font-size:9px}.summary-identity h2{overflow:hidden;margin:0;font-size:18px;text-overflow:ellipsis;white-space:nowrap}.summary-identity p{margin:4px 0 0;color:var(--muted);font-size:10px}
.action-gauge{display:flex;align-items:baseline;gap:8px;margin-top:7px;font-family:Consolas,monospace}.action-gauge strong{color:var(--accent);font-size:40px}.action-gauge span{color:var(--faint)}.action-gauge b{font-size:19px}.meter{overflow:hidden;height:5px;background:#333b3e}.meter i{display:block;width:100%;height:100%;background:var(--accent);transition:width .2s}.summary-card>p{margin:9px 0 0;color:var(--muted);font-size:10px}
.summary-stat-grid{display:grid;grid-template-columns:1fr 1fr}.summary-stat-grid div{display:grid;gap:3px;padding:14px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.summary-stat-grid div:nth-child(even){border-right:0}.summary-stat-grid div:nth-last-child(-n+2){border-bottom:0}.summary-stat-grid strong{font:700 23px Consolas}.summary-check ul{display:grid;gap:8px;margin:12px 0 0;padding:0;list-style:none}.summary-check li{display:flex;gap:8px;color:var(--muted);font-size:10px}.summary-check li:before{content:"";flex:0 0 auto;width:7px;height:7px;margin-top:5px;border-radius:50%;background:var(--danger)}.summary-check li.is-ok:before{background:var(--accent)}
.summary-access h3{margin:5px 0 10px;font-size:14px}.summary-access-fields{display:grid;gap:5px}.summary-access .check-field{align-items:flex-start;min-height:0;padding:5px 0;font-size:10px}.summary-access .check-field input{margin-top:1px}.summary-access .check-field span{display:grid;gap:2px}.summary-access .check-field small{color:var(--faint);font-size:8px}.summary-access a{color:var(--accent)}.summary-access-note{margin:6px 0 10px!important}.summary-access-policy-note{margin:9px 0 0!important;padding-top:8px;border-top:1px solid var(--line);color:var(--muted);font-size:8px;line-height:1.65}.summary-password-setting{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;margin-top:10px;padding-top:9px;border-top:1px solid var(--line)}.summary-password-setting>div{display:grid;gap:2px}.summary-password-setting strong{font-size:10px}.summary-password-setting small{color:var(--muted);font-size:8px}.summary-password-setting .button{padding:6px 8px;font-size:9px}.password-risk-notice{display:grid;gap:4px;padding:11px 12px;border:1px solid color-mix(in srgb,var(--danger) 55%,var(--line));background:rgba(255,113,133,.08)}.password-risk-notice strong{color:#ffb5bf;font-size:11px}.password-risk-notice span{font-size:10px}

.toast-region{position:fixed;z-index:100;right:20px;bottom:20px;display:grid;gap:8px;max-width:min(390px,calc(100vw - 40px))}.toast{padding:12px 16px;border:1px solid rgba(57,208,195,.5);background:#101416;color:var(--ink);box-shadow:var(--shadow);font-size:12px;animation:toast-in .18s ease-out}.toast.is-error{border-color:var(--danger)}@keyframes toast-in{from{opacity:0;transform:translateY(8px)}}
.modal{width:min(470px,calc(100vw - 28px));padding:0;border:1px solid var(--line-strong);background:#171b1d;color:var(--ink);box-shadow:0 35px 90px rgba(0,0,0,.6)}.modal::backdrop{background:rgba(4,6,7,.74);backdrop-filter:blur(4px)}.modal form{display:grid;gap:16px;padding:26px}.modal h2{margin:-9px 0 0}.modal p{margin:0;color:var(--muted)}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}.form-error{padding:9px 11px;border-left:3px solid var(--danger);background:rgba(255,113,133,.09);color:#ffb5bf!important;font-size:11px}
.initial-save-modal{width:min(620px,calc(100vw - 28px));max-height:calc(100dvh - 28px);overflow-x:hidden;overflow-y:auto}.initial-save-modal form{min-width:0}.initial-save-section{display:grid;width:100%;min-width:0;gap:8px;margin:0;padding:13px;border:1px solid var(--line);background:rgba(0,0,0,.12)}.initial-save-section h3,.initial-save-section legend{margin:0;color:var(--accent);font-size:12px;letter-spacing:.05em}.initial-save-section .check-field{align-items:flex-start;width:100%;min-width:0;min-height:0;padding:4px 0}.initial-save-section .check-field input[type=checkbox],.initial-save-section .check-field input[type=radio]{flex:0 0 16px;width:16px;min-width:16px;max-width:16px;height:16px;min-height:16px;margin:2px 0 0;padding:0}.initial-save-section .check-field span{display:grid;min-width:0;gap:2px}.initial-save-section .check-field small{color:var(--muted);font-size:9px;line-height:1.55}.initial-password-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:4px}.initial-password-choice{min-width:0}.initial-password-choice legend{padding:0 4px}.initial-save-section[hidden],.initial-password-fields[hidden]{display:none}
@media(max-width:620px){.initial-password-fields{grid-template-columns:1fr}}
.password-none-option{align-items:flex-start;min-height:0;padding:11px 12px;border:1px solid var(--line);background:#121618;color:var(--ink);cursor:pointer}.password-none-option input{margin-top:2px}.password-none-option span{display:grid;gap:3px}.password-none-option strong{font-size:12px}.password-none-option small{color:var(--muted);font-size:10px;line-height:1.55}.password-none-option:has(input:checked){border-color:rgba(255,194,102,.58);background:rgba(255,194,102,.07)}.password-none-option:has(input:checked) strong{color:#ffc266}

.info-page{max-width:920px;margin:0 auto;padding:60px 22px 100px}.info-page h1{font-size:clamp(34px,6vw,62px);line-height:1.1}.info-page h2{margin-top:42px;padding-bottom:8px;border-bottom:1px solid var(--line)}.info-page p,.info-page li{color:#d0d5d2}.info-page code{padding:2px 5px;background:#272e31;color:var(--accent)}.info-back{display:inline-flex;margin-top:32px;color:var(--accent)}

@media(max-width:1180px){.editor-workspace{grid-template-columns:minmax(0,1fr) 235px}.character-list{grid-template-columns:repeat(2,minmax(0,1fr))}.toolbar-buttons .button-ghost{display:none}.reinforcement-grid{grid-template-columns:1fr 1fr}.summary-rail{top:calc(var(--header-height) + 144px)}}
@media(max-width:900px){:root{--header-height:64px}.site-header{gap:12px;padding:0 14px}.brand img{width:40px;height:40px}.brand small,.header-links,.system-light{display:none}.header-actions{margin-left:auto}.hero{grid-template-columns:1fr;min-height:auto}.hero-panel{grid-template-columns:1fr 1fr}.specimen-card{min-height:320px}.specimen-orbit{width:135px;margin:28px auto}.editor-toolbar{top:var(--header-height);flex-wrap:wrap}.editor-title{order:1}.save-state{order:2}.toolbar-buttons{order:3;width:100%;justify-content:flex-start}.section-nav{top:calc(var(--header-height) + 126px)}.editor-workspace{grid-template-columns:1fr}.summary-rail{position:static;grid-template-columns:repeat(2,1fr);grid-row:1}.summary-identity{grid-row:span 2}.summary-access{grid-column:1/-1}.summary-check{display:none}.field-grid.cols-3{grid-template-columns:repeat(2,1fr)}.field-grid.cols-3 .field-wide{grid-column:1/-1}.profile-layout{grid-template-columns:150px minmax(0,1fr)}.part-table{min-width:850px}.part-group{overflow-x:auto}}
@media(max-width:620px){body{font-size:13px}.site-header{position:relative}.brand strong{font-size:12px}.header-actions .button{padding:7px 10px;font-size:11px}.home-view{padding-top:35px}.hero-copy h1{font-size:42px}.hero-panel{grid-template-columns:1fr}.hero-actions .button{width:100%}.feature-row{display:grid;gap:8px}.character-list{grid-template-columns:1fr}.archive-toolbar{align-items:stretch;flex-direction:column}.search-box{grid-template-columns:1fr}.editor-toolbar{position:relative;top:0}.editor-title h1{max-width:235px}.section-nav{top:0}.toolbar-buttons{display:grid;grid-template-columns:repeat(3,1fr)}.toolbar-buttons .button{padding:6px}.toolbar-buttons .button-ghost{display:block}.sheet-section>summary{padding:12px 14px}.section-body{padding:14px}.summary-rail{grid-template-columns:1fr 1fr}.summary-identity{grid-column:1/-1;grid-row:auto}.summary-card{padding:14px}.profile-layout{grid-template-columns:1fr}.portrait-card{max-width:190px;margin:auto}.field-grid.cols-2,.field-grid.cols-3{grid-template-columns:1fr}.field-wide,.field-grid.cols-3 .field-wide{grid-column:auto}.field-full{grid-column:1}.reinforcement-grid,.battle-config{grid-template-columns:1fr 1fr}.row-grid{grid-template-columns:1fr}.row-grid .field,.row-grid [class*=span-]{grid-column:1}.remove-row{width:100%}.integration-panel{grid-template-columns:1fr}.integration-panel .button{width:100%}.hero-copy h1 br{display:none}}
@media print{.site-header,.editor-toolbar,.section-nav,.summary-rail,.button,.icon-button,.text-button,.toast-region{display:none!important}body{background:#fff;color:#111}.editor-view{display:block!important}#characterForm{padding:0}.sheet-section{break-inside:avoid;border-color:#777;background:#fff;box-shadow:none}.sheet-section>summary{background:#eee;color:#111}.sheet-section>summary small,.section-note{color:#444}.section-body{border-color:#bbb}input,select,textarea{border-color:#777;background:#fff;color:#111}.sheet-column{gap:8px}}

/* Compact character-sheet controls */
body{font-size:13px}
.sheet-section>summary{min-height:62px;padding:10px 16px}
.section-body{padding:16px}
.profile-layout{grid-template-columns:150px minmax(0,1fr);gap:12px}
.form-panel{padding:14px}
input,select,textarea{padding:7px 8px;font-size:13px}
input,select{min-height:36px}
textarea{min-height:76px}
.field{gap:4px}.field>span{font-size:10px}
.field-grid{gap:10px}
.profile-fields{grid-template-columns:repeat(12,minmax(0,1fr))}
.profile-name{grid-column:span 5}.profile-player{grid-column:span 3}.profile-age{grid-column:span 1}.profile-premonition{grid-column:span 3}
.profile-position,.profile-main-class,.profile-sub-class{grid-column:span 4}
.profile-treasure{grid-column:span 5}.profile-visibility{grid-column:span 3}.profile-tags{grid-column:span 4}
.custom-choice>span{display:flex;align-items:center;justify-content:space-between;gap:6px}
.custom-choice>span em{display:inline-flex;align-items:center;gap:3px;color:var(--faint);font-size:9px;font-style:normal;font-weight:400;white-space:nowrap}
.custom-choice>span em input{width:13px;min-height:13px;margin:0;padding:0}
.subsection-header{margin:20px 0 9px}.subsection-header:first-child{margin-top:0}
.subsection-actions{display:flex;align-items:center;gap:10px}
.reinforcement-grid{gap:7px}
.reinforcement-grid>label,.reinforcement-grid>output{grid-template-columns:1fr 56px;padding:8px 10px}
.reinforcement-grid input{min-height:32px;padding:4px 6px}
.reinforcement-grid input[readonly]{border-color:var(--line-strong);background:#d8ddda;color:#28302e}
.reinforcement-grid output strong{font-size:23px}
.reinforcement-extra{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:7px;padding:8px 10px;border:1px solid var(--line);background:#121618}
.reinforcement-extra>span{margin-right:auto;font-weight:700}.reinforcement-extra>span small{margin-left:5px;color:var(--faint);font-size:9px;font-weight:400}
.reinforcement-extra label{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:10px}
.reinforcement-extra input{width:54px;min-height:30px;padding:3px 5px;text-align:center}
.formula-note{max-width:60%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.battle-config{gap:8px;margin-bottom:14px;padding:10px}
.card-list,.compact-list,.maneuver-list,.fetter-list{gap:6px}
.list-row{gap:6px;padding:8px}.row-grid{gap:6px}
.remove-row{height:36px}
.check-field{min-height:36px}
.maneuver-list{overflow-x:auto}
.maneuver-list .list-row{min-width:850px;padding:7px}
.maneuver-list .row-grid{grid-template-columns:minmax(120px,1.35fr) 58px 112px 62px 72px minmax(220px,3fr) 36px;gap:6px;align-items:end}
.maneuver-list .row-grid .field,.maneuver-list .row-grid .check-field{grid-column:auto}
.maneuver-list .remove-row{width:36px;height:36px}
.part-group-header{padding:9px 12px}.part-table th{padding:5px}.part-table td{padding:3px}.part-table input,.part-table select{min-height:32px;padding:4px 6px;font-size:12px}
.integration-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.export-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px;padding:14px;border:1px solid var(--line);background:#121618}
.export-card .export-tag,.export-card h3,.export-card p{grid-column:1}.export-card .button{grid-column:2;grid-row:1/4;align-self:center}
.export-card h3{margin:0;font-size:16px}.export-card p{margin:0;color:var(--muted);font-size:10px}.export-card textarea{grid-column:1/-1;min-height:190px;font-family:Consolas,monospace;font-size:11px}
.export-tag{width:max-content;padding:2px 7px;border:1px solid var(--line);font:9px Consolas;letter-spacing:.1em}.export-tag.green{border-color:rgba(57,208,195,.45);color:var(--accent)}.export-tag.orange{border-color:rgba(255,194,102,.45);color:#ffc266}
#editFieldset.is-readonly .sheet-section{opacity:.78}#editFieldset.is-readonly .export-card{opacity:1}

@media(max-width:900px){.integration-grid{grid-template-columns:1fr}}
@media(max-width:620px){.section-body{padding:12px}.portrait-card{max-width:160px}.profile-fields{grid-template-columns:1fr}.profile-fields>*{grid-column:1}.reinforcement-extra{display:grid;grid-template-columns:repeat(3,1fr)}.reinforcement-extra>span{grid-column:1/-1;margin:0}.reinforcement-extra label{display:grid;grid-template-columns:1fr}.reinforcement-extra input{width:100%}.formula-note{max-width:52%}.maneuver-list .row-grid{grid-template-columns:1fr}.maneuver-list .list-row{min-width:0}.export-card{grid-template-columns:1fr}.export-card .button{grid-column:1;grid-row:auto;width:100%}}
@media print{body{background:#fff;color:#111}.sheet-section,.export-card{background:#fff;color:#111;box-shadow:none}.sheet-section>summary{background:#eee;color:#111}.section-body{border-color:#bbb}input,select,textarea,.reinforcement-grid input[readonly]{border-color:#777;background:#fff;color:#111}}

/* Nechronica Doll Archive / NCRDA 1.12 */
.specimen-orbit img{position:relative;z-index:2;width:78px;height:78px;border-radius:18px;filter:drop-shadow(0 0 18px rgba(57,208,195,.32))}
.specimen-card dl{grid-template-columns:1fr}.specimen-card dl div{display:flex;align-items:end;justify-content:space-between}.specimen-card dd{font-size:34px}
.convert-panel{display:grid;grid-template-columns:minmax(260px,1fr) auto;align-items:end;gap:9px;max-width:720px;margin-top:16px;padding:12px;border:1px solid var(--line);background:rgba(15,18,20,.65)}
.convert-panel .button{min-height:36px}.convert-panel p{grid-column:1/-1;margin:0;color:var(--faint);font-size:10px}
.inline-memo{margin-top:12px;border:1px solid var(--line);background:#121618}.inline-memo>summary{padding:9px 12px;color:var(--accent);font-size:11px;cursor:pointer}.inline-memo .field{padding:0 12px 12px}
.battle-config{grid-template-columns:minmax(150px,260px)}
.reinforcement-grid input[readonly],.computed-field input[readonly],.computed-field textarea[readonly]{border-color:#47756f;background:#1d3434;color:#c9e6e3;cursor:not-allowed;box-shadow:inset 0 0 0 1px rgba(57,208,195,.08)}
.source-free-toggle{display:inline-flex;align-items:center;gap:3px;color:var(--faint);font-size:9px;font-weight:400;white-space:nowrap}.source-free-toggle input{width:13px;min-height:13px;margin:0;padding:0}
.maneuver-source>span{display:flex;align-items:center;justify-content:space-between;gap:5px}
.maneuver-list .row-grid{grid-template-columns:minmax(130px,1.25fr) minmax(170px,1.35fr) 108px 60px 70px minmax(210px,2.6fr) 36px}
.part-table{min-width:1040px}.part-table .part-source{width:190px}.table-source{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:4px}.table-source .source-free-toggle{grid-column:1}.table-source select,.table-source>input{grid-column:2;grid-row:1}
html:not([data-density="compact"]) .part-table{display:block;width:100%;min-width:0;border-collapse:separate;table-layout:auto}
html:not([data-density="compact"]) .part-table thead{display:none}
html:not([data-density="compact"]) .part-table tbody{display:grid;gap:6px;padding:6px}
html:not([data-density="compact"]) .part-table tr{display:grid;grid-template-columns:58px minmax(120px,1.1fr) minmax(170px,1.35fr) 108px 62px 76px minmax(210px,2.4fr) 36px;align-items:end;gap:7px;padding:8px;border:1px solid var(--line);background:#171c1e}
html:not([data-density="compact"]) .part-table td{display:block;width:auto!important;padding:0;border:0}
html:not([data-density="compact"]) .part-table .part-field{display:grid;gap:4px;min-width:0}
html:not([data-density="compact"]) .part-table .part-field>span{color:var(--muted);font-size:9px}
html:not([data-density="compact"]) .part-table .part-damaged-field{justify-items:center}
html:not([data-density="compact"]) .part-table .part-damaged-field>span{text-align:center}
html:not([data-density="compact"]) .part-table .part-remove{width:auto}
html:not([data-density="compact"]) .part-table .remove-row{margin-bottom:1px}
html[data-density="compact"] .part-table .part-field{display:block}
html[data-density="compact"] .part-table .part-field>span{display:none}
.part-table input,.part-table select{border-color:rgba(143,222,214,.34)}
.session-summary{grid-template-columns:minmax(160px,240px)}.session-history-list{display:grid;gap:6px}.session-row{grid-template-columns:minmax(150px,1.25fr) 92px 92px 92px 92px minmax(180px,2fr) 36px}.session-row>*{grid-column:auto!important}.compact-empty{padding:22px}

.reinforcement-breakdown{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:8px}
.reinforcement-card{display:grid;grid-template-columns:minmax(88px,1.15fr) repeat(4,minmax(54px,.75fr));gap:8px;align-items:end;padding:10px;border:1px solid var(--line);background:#111517}
.reinforcement-identity{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:0 8px;min-width:0}.reinforcement-identity>span{font-weight:700}.reinforcement-identity>strong{grid-row:1/3;grid-column:2;color:var(--accent);font:700 36px/1 Consolas;text-align:right}
.creation-bonus-toggle{display:flex;align-items:center;gap:4px;color:var(--faint);font-size:9px;white-space:nowrap}.creation-bonus-toggle input{width:14px;min-height:14px;margin:0}
.reinforcement-input{display:grid;gap:3px}.reinforcement-input>span{color:var(--muted);font-size:9px;text-align:center}.reinforcement-input input{min-height:32px;padding:4px 5px;text-align:center}
.reinforcement-input.is-computed input{border-color:#47756f;background:#1d3434;color:#c9e6e3;cursor:not-allowed}.reinforcement-input.is-custom>span{color:#ffc266}.reinforcement-input.is-custom input{border-color:#a98348;background:#332d22;color:#ffedca}
.reinforcement-help{margin:7px 0 0;color:var(--faint);font-size:10px}
.action-value-panel{display:grid;grid-template-columns:82px 72px 82px minmax(230px,1fr);align-items:end;gap:8px;width:min(100%,570px);margin-bottom:17px;padding:10px;border:1px solid rgba(57,208,195,.28);background:var(--accent-soft)}
.action-value-panel input{min-height:32px;padding:4px 6px;text-align:center;font:700 18px Consolas}.action-value-panel p{align-self:center;margin:16px 0 0;color:var(--muted);font-size:10px}
.action-rule-help{position:relative;display:inline-flex;align-items:center;gap:9px;width:fit-content;max-width:100%;margin:-7px 0 1px;padding:8px 11px;border:1px solid var(--line);background:#121719;color:var(--ink);cursor:help;outline:none}.action-rule-help:focus{border-color:var(--accent);box-shadow:0 0 0 2px rgba(57,208,195,.14)}.action-rule-icon{display:grid;flex:0 0 22px;width:22px;height:22px;place-items:center;border:1px solid var(--accent);border-radius:50%;color:var(--accent);font:700 12px Consolas}.action-rule-help>span:nth-child(2){display:grid}.action-rule-help b{font-size:11px}.action-rule-help small{color:var(--faint);font-size:9px}.action-rule-tooltip{position:absolute;z-index:20;top:calc(100% + 8px);left:0;width:min(520px,calc(100vw - 72px));padding:14px 16px;border:1px solid var(--accent);background:#101416;color:#dce3df;box-shadow:0 14px 35px rgba(0,0,0,.48);font-size:11px;line-height:1.65;opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity .14s,transform .14s,visibility .14s;pointer-events:none}.action-rule-help:hover .action-rule-tooltip,.action-rule-help:focus .action-rule-tooltip,.action-rule-help:focus-within .action-rule-tooltip{opacity:1;visibility:visible;transform:translateY(0)}.action-rule-tooltip strong{color:var(--accent)}.action-rule-tooltip p{margin:7px 0}.action-rule-tooltip ul{margin:5px 0;padding-left:20px}.action-rule-tooltip code{padding:1px 4px;background:#242c2e;color:#ffc266;font:10px Consolas}
.favor-summary-grid{display:grid;grid-template-columns:minmax(120px,180px) repeat(2,minmax(100px,1fr));gap:8px;max-width:560px}
.favor-summary-grid output{display:grid;place-items:center;min-height:58px;padding:7px;border:1px solid var(--line);background:#121618}.favor-summary-grid output span{color:var(--muted);font-size:9px}.favor-summary-grid output strong{font:700 22px Consolas}.favor-summary-grid .favor-remaining{border-color:rgba(57,208,195,.5);background:var(--accent-soft)}.favor-summary-grid .favor-remaining strong{color:var(--accent)}
.favor-rule-note{margin:7px 0 0}
.session-card{gap:9px}
.fetter-type-label{display:flex;align-items:center;justify-content:space-between;gap:5px}.fetter-type-editor{display:block}.fetter-type-editor input,.fetter-type-editor select{width:100%}
.favor-dialog{width:min(760px,calc(100vw - 28px))}.favor-dialog-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.favor-dialog-wide{grid-column:1/-1}.dialog-empty{grid-column:1/-1;padding:18px;border:1px dashed var(--line);text-align:center}
.convert-panel{max-width:none}
.summary-rail{gap:7px}.summary-stat-grid div{gap:1px;padding:8px 10px}.summary-stat-grid small{font-size:8px}.summary-stat-grid strong{font-size:19px;line-height:1.2}

@media(max-width:1180px){.reinforcement-breakdown{grid-template-columns:1fr}.reinforcement-card{grid-template-columns:minmax(105px,1.15fr) repeat(4,minmax(64px,.75fr))}}
@media(max-width:900px){.convert-panel{max-width:none}.session-row{grid-template-columns:1fr 1fr 1fr}.session-row .session-name,.session-row .session-memo{grid-column:1/-1!important}.session-row .remove-row{grid-column:1/-1!important;width:100%}.favor-summary-grid{grid-template-columns:repeat(2,1fr)}.favor-dialog-fields{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){html:not([data-density="compact"]) .part-table tbody{min-width:900px}}
@media(max-width:620px){.convert-panel{grid-template-columns:1fr}.convert-panel .button,.convert-panel p{grid-column:1}.battle-config{grid-template-columns:1fr}.session-row{grid-template-columns:1fr}.session-row>*{grid-column:1!important}.reinforcement-card{grid-template-columns:repeat(4,1fr)}.reinforcement-identity{grid-column:1/-1;padding-bottom:7px;border-bottom:1px solid var(--line)}.action-value-panel{grid-template-columns:1fr 1fr}.action-value-panel p{grid-column:1/-1;margin:0}.action-rule-help{width:100%}.action-rule-tooltip{width:calc(100vw - 54px)}.favor-summary-grid,.favor-dialog-fields{grid-template-columns:1fr}.favor-dialog-wide{grid-column:1}.session-growth-actions>span{width:100%}}

.operator-page{max-width:1380px;margin:auto;padding:56px 24px 100px}.operator-page h1{margin:6px 0 24px;font-size:clamp(34px,5vw,58px)}.operator-login{display:grid;gap:14px;max-width:430px;padding:24px;border:1px solid var(--line-strong);background:var(--panel)}.operator-alert{padding:11px 14px;border-left:3px solid var(--accent);background:var(--accent-soft)}.operator-alert.is-error{border-color:var(--danger);background:rgba(255,113,133,.09)}
.operator-toolbar{display:grid;grid-template-columns:repeat(3,minmax(130px,1fr)) auto;gap:10px;align-items:stretch}.operator-toolbar>div{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px;border:1px solid var(--line);background:var(--panel)}.operator-toolbar span{color:var(--muted);font-size:10px}.operator-toolbar strong{font:700 27px Consolas}.operator-toolbar form{display:flex}.operator-toolbar .button{height:100%}
.operator-section{margin-top:34px}.operator-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:10px}.operator-heading h2{margin:2px 0 0}.operator-heading>span{color:var(--muted);font-size:11px}.operator-table-wrap{overflow-x:auto;border:1px solid var(--line)}.operator-table{width:100%;min-width:900px;border-collapse:collapse;background:var(--panel)}.operator-table th,.operator-table td{padding:10px 12px;border-bottom:1px solid var(--line);text-align:left}.operator-table th{color:var(--muted);font-size:10px;font-weight:400}.operator-table td{font-size:11px}.operator-table tr:last-child td{border-bottom:0}.operator-table code{color:var(--accent)}.operator-actions{display:flex;flex-wrap:wrap;align-items:flex-start;gap:5px}.operator-actions form{display:flex}.operator-actions .button{min-height:32px;padding:5px 9px;font-size:10px;text-decoration:none}
.operator-record-tools{flex:0 0 auto}.operator-record-tools>summary{min-height:32px;padding:5px 9px;border:1px solid var(--line-strong);background:#202528;color:var(--accent);font-size:10px;font-weight:700;list-style:none;cursor:pointer}.operator-record-tools>summary::-webkit-details-marker{display:none}.operator-record-tools>summary:after{content:"＋";margin-left:7px}.operator-record-tools[open]{flex-basis:100%;width:min(680px,calc(100vw - 120px));padding:8px;border:1px solid var(--line);background:#111517}.operator-record-tools[open]>summary{width:max-content;margin-bottom:8px}.operator-record-tools[open]>summary:after{content:"−"}.operator-tool-grid{display:grid;gap:7px}.operator-actions .operator-tool-grid form{display:grid;grid-template-columns:repeat(2,minmax(150px,1fr)) auto;align-items:end;gap:7px;padding:8px;border-left:2px solid var(--accent);background:rgba(57,208,195,.05)}.operator-tool-grid label{display:grid;gap:3px}.operator-tool-grid label span{color:var(--muted);font-size:9px}.operator-tool-grid input,.operator-tool-grid select{min-height:32px;padding:4px 6px;font-size:11px}.operator-tool-empty{margin:0;padding:10px;border-left:2px solid var(--faint);color:var(--faint);font-size:10px}
@media(max-width:760px){.operator-toolbar{grid-template-columns:1fr 1fr}.operator-toolbar form{grid-column:1/-1}.operator-toolbar .button{width:100%}.operator-record-tools[open]{width:calc(100vw - 68px)}.operator-actions .operator-tool-grid form{grid-template-columns:1fr}.operator-tool-grid .button{width:100%}}

/* Device-local whole-interface sizing and density */
.header-actions{gap:10px}
.font-size-control,.density-control{display:inline-flex;align-items:center;gap:2px;padding:3px;border:1px solid var(--line);background:#111517;white-space:nowrap}
.control-label,.font-size-label{padding:0 6px;color:var(--muted);font-size:9px}
.font-size-control button,.density-control button{display:grid;min-width:29px;height:27px;padding:0 7px;place-items:center;border:1px solid transparent;background:none;color:var(--muted);font-size:11px}
.font-size-control button:hover,.density-control button:hover{border-color:var(--line-strong);color:var(--ink)}
.font-size-control button.is-active,.density-control button.is-active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);font-weight:700}
.info-header-actions{margin-left:auto}

/* Medium is the existing scale. Small renders the 13px body base at 12px. */
html[data-font-size="small"] body{zoom:.9230769231}
html[data-font-size="medium"] body{zoom:1}
html[data-font-size="large"] body{zoom:1.0769230769}
@supports not (zoom:1){html[data-font-size="small"] body{font-size:12px}html[data-font-size="medium"] body{font-size:13px}html[data-font-size="large"] body{font-size:14px}}

html[data-density="compact"]{--header-height:58px;scroll-padding-top:118px}
html[data-density="compact"] .site-header{gap:14px;padding-inline:clamp(10px,2vw,26px)}
html[data-density="compact"] .brand{gap:8px}html[data-density="compact"] .brand img{width:38px;height:38px;border-radius:8px}html[data-density="compact"] .brand strong{font-size:13px}html[data-density="compact"] .brand small{margin-top:1px;font-size:9px}
html[data-density="compact"] .header-links{gap:14px}html[data-density="compact"] .header-actions{gap:6px}
html[data-density="compact"] .font-size-control,html[data-density="compact"] .density-control{padding:2px}html[data-density="compact"] .font-size-control button,html[data-density="compact"] .density-control button{height:23px;padding-inline:5px}
html[data-density="compact"] .button{min-height:32px;padding:5px 10px}html[data-density="compact"] .button-large{min-height:40px;padding:7px 15px}html[data-density="compact"] .icon-button{width:34px;height:34px;font-size:16px}
html[data-density="compact"] .home-view{padding:24px clamp(12px,3vw,42px) 44px}html[data-density="compact"] .hero{gap:24px;min-height:min(500px,calc(100vh - 100px))}html[data-density="compact"] .hero-copy h1{margin:12px 0 16px}html[data-density="compact"] .hero-lead{line-height:1.65}html[data-density="compact"] .hero-actions{gap:7px;margin-top:20px}html[data-density="compact"] .feature-row{gap:14px;margin-top:18px}
html[data-density="compact"] .hero-panel{gap:7px}html[data-density="compact"] .specimen-card{min-height:278px;padding:16px}html[data-density="compact"] .specimen-orbit{width:126px;margin:23px auto;box-shadow:inset 0 0 0 12px rgba(255,255,255,.018),inset 0 0 0 13px var(--line)}html[data-density="compact"] .specimen-orbit img{width:58px;height:58px;border-radius:13px}html[data-density="compact"] .specimen-card dl div{padding-top:9px}html[data-density="compact"] .specimen-card dd{font-size:27px}html[data-density="compact"] .hero-notice{padding:10px 12px;line-height:1.55}
html[data-density="compact"] .archive-section{padding-top:20px}html[data-density="compact"] .archive-toolbar{gap:14px;margin-bottom:10px}html[data-density="compact"] .archive-toolbar h2{font-size:23px}html[data-density="compact"] .character-list{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:6px}html[data-density="compact"] .record-card{grid-template-columns:40px minmax(0,1fr) auto;gap:9px;min-height:68px;padding:9px}html[data-density="compact"] .record-card-avatar{width:40px;font-size:16px}html[data-density="compact"] .record-card h3{font-size:14px}html[data-density="compact"] .list-empty{padding:28px 16px}
html[data-density="compact"] .editor-toolbar{gap:8px;min-height:58px;padding:6px clamp(10px,2vw,24px)}html[data-density="compact"] .editor-title{min-width:125px}html[data-density="compact"] .editor-title h1{font-size:17px}html[data-density="compact"] .toolbar-buttons{gap:4px}html[data-density="compact"] .toolbar-buttons .button{min-height:29px;padding:4px 8px;font-size:11px}
html[data-density="compact"] .section-nav{top:calc(var(--header-height) + 58px);padding-inline:clamp(10px,2vw,24px)}html[data-density="compact"] .section-nav a,html[data-density="compact"] .section-nav button{padding:6px 10px}
html[data-density="compact"] #characterForm{padding:12px clamp(8px,1.5vw,22px) 50px}html[data-density="compact"] .editor-workspace{grid-template-columns:minmax(0,1fr) 238px;gap:10px}html[data-density="compact"] .sheet-column{gap:6px}
html[data-density="compact"] .sheet-section{box-shadow:none}html[data-density="compact"] .sheet-section>summary{gap:9px;min-height:46px;padding:6px 10px}html[data-density="compact"] .sheet-section>summary .section-number{width:28px;font-size:9px}html[data-density="compact"] .sheet-section>summary small{font-size:8px}html[data-density="compact"] .sheet-section>summary b{font-size:15px}html[data-density="compact"] .section-body{padding:9px}
html[data-density="compact"] .profile-layout{grid-template-columns:120px minmax(0,1fr);gap:7px}html[data-density="compact"] .portrait-card{gap:4px;padding:6px}html[data-density="compact"] .portrait-button span small{margin-top:3px}html[data-density="compact"] .form-panel{padding:8px}html[data-density="compact"] .field-grid{gap:6px}html[data-density="compact"] .field{gap:2px}html[data-density="compact"] input,html[data-density="compact"] select{min-height:30px;padding:4px 6px}html[data-density="compact"] textarea{min-height:56px;padding:4px 6px}html[data-density="compact"] input[type=checkbox]{width:15px;min-height:15px}
html[data-density="compact"] .inline-memo{margin-top:6px}html[data-density="compact"] .inline-memo>summary{padding:6px 8px}html[data-density="compact"] .inline-memo .field{padding:0 8px 8px}html[data-density="compact"] .subsection-header{gap:8px;margin:12px 0 5px}html[data-density="compact"] .subsection-header h3,html[data-density="compact"] .integration-panel h3{font-size:14px}html[data-density="compact"] .formula-note{padding:3px 6px}
html[data-density="compact"] .reinforcement-breakdown{gap:4px}html[data-density="compact"] .reinforcement-card{gap:4px;padding:5px}html[data-density="compact"] .reinforcement-identity>strong{font-size:29px}html[data-density="compact"] .reinforcement-input input{min-height:27px;padding:2px 4px}html[data-density="compact"] .reinforcement-help{margin-top:3px}html[data-density="compact"] .reinforcement-extra{gap:7px;margin-top:4px;padding:5px 7px}
html[data-density="compact"] .action-rule-help{margin:-3px 0 0;padding:5px 8px}html[data-density="compact"] .action-value-panel{gap:5px;margin-bottom:9px;padding:6px}html[data-density="compact"] .action-value-panel input{min-height:27px;padding:2px 4px}
html[data-density="compact"] .card-list,html[data-density="compact"] .compact-list,html[data-density="compact"] .maneuver-list,html[data-density="compact"] .fetter-list{gap:0}html[data-density="compact"] .list-row{gap:4px;padding:5px 6px;border-bottom:0}html[data-density="compact"] .list-row:last-child{border-bottom:1px solid var(--line)}html[data-density="compact"] .row-grid{gap:4px}html[data-density="compact"] .maneuver-list .list-row{padding:4px;min-width:790px}html[data-density="compact"] .maneuver-list .row-grid{grid-template-columns:minmax(112px,1.2fr) minmax(150px,1.25fr) 96px 52px 62px minmax(190px,2.6fr) 30px;gap:4px}html[data-density="compact"] .remove-row,html[data-density="compact"] .maneuver-list .remove-row{width:30px;height:30px}html[data-density="compact"] .check-field,html[data-density="compact"] .madness-picker{min-height:30px}
html[data-density="compact"] .parts-groups{gap:5px}html[data-density="compact"] .part-group-header{padding:6px 8px}html[data-density="compact"] .part-group-header button{padding:3px 7px}html[data-density="compact"] .part-table th{padding:3px 4px}html[data-density="compact"] .part-table td{padding:2px}html[data-density="compact"] .part-table input,html[data-density="compact"] .part-table select{min-height:27px;padding:2px 4px}html[data-density="compact"] .part-table .remove-row{width:27px;height:27px}
html[data-density="compact"] .favor-summary-grid{gap:4px}html[data-density="compact"] .favor-summary-grid output{min-height:44px;padding:4px}html[data-density="compact"] .favor-summary-grid output strong{font-size:18px}html[data-density="compact"] .session-history-list{gap:0}html[data-density="compact"] .session-card{border-bottom:0}html[data-density="compact"] .session-card:last-child{border-bottom:1px solid var(--line)}
html[data-density="compact"] .integration-grid{gap:5px}html[data-density="compact"] .export-card,html[data-density="compact"] .integration-panel{gap:5px;margin-top:10px;padding:8px}html[data-density="compact"] .export-card textarea{min-height:120px}
html[data-density="compact"] .summary-rail{top:calc(var(--header-height) + 94px);gap:4px}html[data-density="compact"] .summary-card{padding:9px}html[data-density="compact"] .summary-identity{display:grid;grid-template-columns:52px minmax(0,1fr);align-items:center;gap:0 8px;text-align:left}html[data-density="compact"] .summary-identity>small{grid-column:1/-1}html[data-density="compact"] .summary-avatar{grid-column:1;grid-row:2/5;width:52px;margin:5px 0;font-size:22px}html[data-density="compact"] .summary-avatar-action{padding:3px 1px;font-size:6px}html[data-density="compact"] .summary-portrait-tools{grid-column:2;grid-row:2;justify-content:flex-start;margin:2px 0}html[data-density="compact"] .summary-portrait-tools>span{font-size:7px}html[data-density="compact"] .summary-identity h2{grid-column:2;grid-row:3;font-size:15px}html[data-density="compact"] .summary-identity p{grid-column:2;grid-row:4;margin-top:1px}html[data-density="compact"] .summary-stat-grid div{padding:6px 7px}html[data-density="compact"] .summary-stat-grid strong{font-size:17px}html[data-density="compact"] .summary-check ul{gap:3px;margin-top:6px}
html[data-density="compact"] .modal form{gap:9px;padding:16px}html[data-density="compact"] .toast{padding:7px 10px}html[data-density="compact"] .info-page{padding:34px 18px 60px}html[data-density="compact"] .info-page h2{margin-top:25px}html[data-density="compact"] .operator-page{padding:28px 16px 60px}html[data-density="compact"] .operator-page h1{margin-bottom:14px}html[data-density="compact"] .operator-toolbar{gap:5px}html[data-density="compact"] .operator-toolbar>div{padding:8px}html[data-density="compact"] .operator-section{margin-top:20px}html[data-density="compact"] .operator-table th,html[data-density="compact"] .operator-table td{padding:5px 7px}

@media(max-width:1180px){.system-light{display:none}html[data-density="compact"] .editor-workspace{grid-template-columns:minmax(0,1fr) 215px}html[data-density="compact"] .toolbar-buttons .button-ghost{display:block}}
@media(max-width:900px){
  html[data-density="compact"] .editor-workspace{grid-template-columns:1fr}
  html[data-density="compact"] .summary-rail{position:static;grid-row:1;grid-template-columns:220px 190px 240px;width:100%;max-width:100%;overflow-x:auto}
  html[data-density="compact"] .summary-identity{grid-row:auto;grid-column:auto}
  html[data-density="compact"] .summary-check{display:block}
}
@media(max-width:620px){
  .control-label,.font-size-label{display:none}.font-size-control button{min-width:25px;padding-inline:4px}.density-control button{padding-inline:4px}.site-header{gap:8px}.header-actions{gap:5px}#headerNewButton{display:none}
  html[data-density="compact"] .site-header{position:sticky;top:0;overflow-x:auto}html[data-density="compact"] .brand,html[data-density="compact"] .header-actions{flex:0 0 auto}
  html[data-density="compact"] .editor-toolbar{position:sticky;top:var(--header-height);flex-wrap:nowrap;overflow-x:auto}html[data-density="compact"] .editor-title,html[data-density="compact"] .save-state{flex:0 0 auto}html[data-density="compact"] .toolbar-buttons{display:flex;flex:0 0 auto;flex-wrap:nowrap;width:max-content}html[data-density="compact"] .section-nav{position:sticky;top:calc(var(--header-height) + 58px)}
  html[data-density="compact"] .section-body{overflow-x:auto}
  html[data-density="compact"] .profile-layout{grid-template-columns:120px minmax(600px,1fr);min-width:727px}html[data-density="compact"] .portrait-card{max-width:none;margin:0}
  html[data-density="compact"] .profile-fields{grid-template-columns:repeat(12,minmax(0,1fr));min-width:0}html[data-density="compact"] .profile-fields .profile-name{grid-column:span 5}html[data-density="compact"] .profile-fields .profile-player{grid-column:span 3}html[data-density="compact"] .profile-fields .profile-age{grid-column:span 1}html[data-density="compact"] .profile-fields .profile-premonition{grid-column:span 3}html[data-density="compact"] .profile-fields .profile-position,html[data-density="compact"] .profile-fields .profile-main-class,html[data-density="compact"] .profile-fields .profile-sub-class{grid-column:span 4}html[data-density="compact"] .profile-fields .profile-treasure{grid-column:span 5}html[data-density="compact"] .profile-fields .profile-visibility{grid-column:span 3}html[data-density="compact"] .profile-fields .profile-tags{grid-column:span 4}
  html[data-density="compact"] .field-grid.cols-2{grid-template-columns:repeat(2,minmax(180px,1fr));min-width:500px}html[data-density="compact"] .field-grid.cols-3{grid-template-columns:repeat(3,minmax(150px,1fr));min-width:520px}html[data-density="compact"] .field-grid .field-wide{grid-column:span 2}html[data-density="compact"] .field-grid .field-full{grid-column:1/-1}
  html[data-density="compact"] .reinforcement-breakdown,html[data-density="compact"] .card-list,html[data-density="compact"] .compact-list,html[data-density="compact"] .fetter-list,html[data-density="compact"] .session-history-list{overflow-x:auto}
  html[data-density="compact"] .reinforcement-card{grid-template-columns:minmax(105px,1.15fr) repeat(4,minmax(64px,.75fr));min-width:520px}html[data-density="compact"] .reinforcement-identity{grid-column:auto;padding-bottom:0;border-bottom:0}html[data-density="compact"] .reinforcement-extra{display:flex;grid-template-columns:none;min-width:520px}html[data-density="compact"] .reinforcement-extra>span{grid-column:auto;margin-right:auto}html[data-density="compact"] .reinforcement-extra label{display:flex;grid-template-columns:none}html[data-density="compact"] .reinforcement-extra input{width:54px}
  html[data-density="compact"] .battle-config{grid-template-columns:minmax(150px,260px);min-width:260px}html[data-density="compact"] .action-value-panel{grid-template-columns:82px 72px 82px minmax(230px,1fr);min-width:570px}html[data-density="compact"] .action-value-panel p{grid-column:auto;margin:16px 0 0}
  html[data-density="compact"] .list-row{min-width:700px}html[data-density="compact"] .row-grid{grid-template-columns:repeat(12,minmax(0,1fr))}html[data-density="compact"] .row-grid .field{grid-column:span 3}html[data-density="compact"] .row-grid .span-2{grid-column:span 2}html[data-density="compact"] .row-grid .span-4{grid-column:span 4}html[data-density="compact"] .row-grid .span-5{grid-column:span 5}html[data-density="compact"] .row-grid .span-6{grid-column:span 6}html[data-density="compact"] .row-grid .span-8{grid-column:span 8}html[data-density="compact"] .row-grid .span-10{grid-column:span 10}html[data-density="compact"] .row-grid .span-12{grid-column:1/-1}html[data-density="compact"] .remove-row{width:30px}
  html[data-density="compact"] .maneuver-list .list-row{min-width:790px}html[data-density="compact"] .maneuver-list .row-grid{grid-template-columns:minmax(112px,1.2fr) minmax(150px,1.25fr) 96px 52px 62px minmax(190px,2.6fr) 30px}html[data-density="compact"] .maneuver-list .row-grid .field,html[data-density="compact"] .maneuver-list .row-grid .check-field{grid-column:auto}
  html[data-density="compact"] .session-card{min-width:850px}html[data-density="compact"] .session-row{grid-template-columns:minmax(150px,1.25fr) 92px 92px 92px 92px minmax(180px,2fr) 30px}html[data-density="compact"] .session-row>*{grid-column:auto!important}html[data-density="compact"] .session-row .remove-row{width:30px}
  html[data-density="compact"] .favor-summary-grid{grid-template-columns:minmax(120px,180px) repeat(2,minmax(100px,1fr));min-width:460px}
  html[data-density="compact"] .integration-grid{grid-template-columns:repeat(2,minmax(300px,1fr));min-width:620px}html[data-density="compact"] .export-card{grid-template-columns:minmax(0,1fr) auto}html[data-density="compact"] .export-card .button{grid-column:2;grid-row:1/4;width:auto}
  html[data-density="compact"] .convert-panel{grid-template-columns:minmax(260px,1fr) auto;min-width:620px}html[data-density="compact"] .convert-panel .button{grid-column:2}html[data-density="compact"] .convert-panel p{grid-column:1/-1}
  html[data-density="compact"] .summary-rail{grid-template-columns:220px 190px 240px}html[data-density="compact"] .summary-identity{grid-column:auto;grid-row:auto}
  html[data-density="compact"] .operator-record-tools[open]{overflow-x:auto}html[data-density="compact"] .operator-actions .operator-tool-grid form{grid-template-columns:repeat(2,minmax(150px,1fr)) auto;min-width:520px}html[data-density="compact"] .operator-tool-grid .button{width:auto}
}

/* Compact mode: column-based data tables */
.compact-table-head{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
html[data-density="compact"] .compact-table-head{position:static;display:grid;width:auto;height:auto;margin:0;overflow:visible;clip-path:none;white-space:normal;align-items:center;gap:4px;padding:4px 5px;border:1px solid var(--line-strong);border-bottom:0;background:#202629;color:var(--muted);font-size:9px;font-weight:700;letter-spacing:.03em}
html[data-density="compact"] .compact-table-head>span{min-width:0;padding:1px 3px;border-right:1px solid var(--line);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}html[data-density="compact"] .compact-table-head>span:last-child{border-right:0}
html[data-density="compact"] input[type="number"]{font-variant-numeric:tabular-nums;text-align:center}
html[data-density="compact"] .maneuver-list,html[data-density="compact"] .memory-table,html[data-density="compact"] .fetter-list,html[data-density="compact"] .session-history-list{overflow-x:auto}

html[data-density="compact"] .reinforcement-breakdown{display:grid;grid-template-columns:1fr;gap:0;width:min(100%,560px);max-width:560px;overflow-x:auto}
html[data-density="compact"] .reinforcement-table-head,html[data-density="compact"] .reinforcement-card{grid-template-columns:minmax(145px,1fr) repeat(4,58px);min-width:410px}
html[data-density="compact"] .reinforcement-card{gap:4px;padding:4px 5px;border-bottom:0}html[data-density="compact"] .reinforcement-card:last-child{border-bottom:1px solid var(--line)}
html[data-density="compact"] .reinforcement-input>span{display:none}html[data-density="compact"] .reinforcement-input input{width:58px;min-height:27px;padding:2px 3px}
html[data-density="compact"] .reinforcement-identity{grid-template-columns:minmax(72px,1fr) 34px;gap:0 5px}html[data-density="compact"] .reinforcement-identity>strong{font-size:24px}html[data-density="compact"] .creation-bonus-toggle{font-size:8px}

html[data-density="compact"] .skill-table-head,html[data-density="compact"] .maneuver-list .skill-row .row-grid{grid-template-columns:minmax(120px,160px) minmax(150px,200px) 100px 58px 64px minmax(240px,1fr) 30px;min-width:800px;gap:4px}
html[data-density="compact"] .maneuver-list .skill-row{min-width:800px;padding:3px 4px}html[data-density="compact"] .skill-row .field>span{display:none}
html[data-density="compact"] .skill-row .maneuver-source{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:3px}html[data-density="compact"] .skill-row .maneuver-source>span{display:block;grid-column:1;grid-row:1;font-size:0}html[data-density="compact"] .skill-row .maneuver-source>span .source-free-toggle{font-size:8px}html[data-density="compact"] .skill-row .maneuver-source>select,html[data-density="compact"] .skill-row .maneuver-source>input{grid-column:2;grid-row:1}
html[data-density="compact"] .skill-row .skill-cost input,html[data-density="compact"] .skill-row .skill-range input{text-align:center}

html[data-density="compact"] .memory-table-head,html[data-density="compact"] .memory-row .row-grid{grid-template-columns:minmax(140px,190px) 58px minmax(240px,1fr) 30px;min-width:520px;gap:4px}
html[data-density="compact"] .memory-row{min-width:520px;padding:3px 4px}html[data-density="compact"] .memory-row .field{grid-column:auto!important}html[data-density="compact"] .memory-row .field>span{display:none}html[data-density="compact"] .memory-number input{text-align:center}

html[data-density="compact"] .fetter-table-head,html[data-density="compact"] .fetter-row .row-grid{grid-template-columns:minmax(120px,160px) minmax(210px,250px) 146px minmax(300px,1.35fr) minmax(140px,.8fr) 30px;min-width:980px;gap:4px}
html[data-density="compact"] .fetter-row{min-width:980px;padding:3px 4px}html[data-density="compact"] .fetter-row .field{grid-column:auto!important;grid-row:1}html[data-density="compact"] .fetter-row .field>span{display:none}html[data-density="compact"] .fetter-row textarea{height:30px;min-height:30px;padding-top:6px;resize:vertical}html[data-density="compact"] .fetter-type{display:grid!important;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:3px}html[data-density="compact"] .fetter-row .fetter-type>.fetter-type-label{display:block;font-size:0}html[data-density="compact"] .fetter-type-label .source-free-toggle{font-size:8px}html[data-density="compact"] .fetter-row .fetter-type>.fetter-type-editor{display:block}
html[data-density="compact"] .fetter-target{grid-column:1!important}html[data-density="compact"] .fetter-type{grid-column:2!important}html[data-density="compact"] .fetter-madness{grid-column:3!important}html[data-density="compact"] .fetter-effect{grid-column:4!important}html[data-density="compact"] .fetter-memo{grid-column:5!important}html[data-density="compact"] .fetter-row .remove-row{grid-column:6;grid-row:1}
html[data-density="compact"] .fetter-row .madness-picker{gap:3px;min-height:27px}html[data-density="compact"] .fetter-row .madness-dot{width:20px;height:20px}html[data-density="compact"] .fetter-row .madness-clear{font-size:0}html[data-density="compact"] .fetter-row .madness-clear:after{content:"0";font-size:9px}

html[data-density="compact"] .session-table-head,html[data-density="compact"] .session-row{grid-template-columns:minmax(150px,190px) 58px 58px 58px 58px minmax(180px,1fr) 30px;min-width:712px;gap:4px}
html[data-density="compact"] .session-card{min-width:712px;padding:3px 4px}html[data-density="compact"] .session-row .field>span{display:none}html[data-density="compact"] .session-favor input{text-align:center}
html[data-density="compact"] .session-name{grid-column:1!important;grid-row:1}html[data-density="compact"] .session-personal{grid-column:2!important;grid-row:1}html[data-density="compact"] .session-shared{grid-column:3!important;grid-row:1}html[data-density="compact"] .session-total{grid-column:4!important;grid-row:1}html[data-density="compact"] .session-spent{grid-column:5!important;grid-row:1}html[data-density="compact"] .session-memo{grid-column:6!important;grid-row:1}html[data-density="compact"] .session-row>.remove-row{grid-column:7!important;grid-row:1;width:30px}
html[data-density="compact"] .session-history-list .compact-empty{min-width:712px;padding:14px}

html[data-density="compact"] .profile-age{max-width:72px}html[data-density="compact"] .profile-age input{text-align:center}html[data-density="compact"] .action-value-panel .field{max-width:82px}html[data-density="compact"] .favor-summary-grid .field{max-width:180px}

@media(max-width:620px){
  html[data-density="compact"] .reinforcement-card{min-width:410px}
  html[data-density="compact"] .maneuver-list .skill-row{min-width:800px}
  html[data-density="compact"] .memory-row{min-width:520px}
  html[data-density="compact"] .fetter-row{min-width:980px}
  html[data-density="compact"] .session-card{min-width:650px}
}

/* Split reinforcement section and compact wrapping layouts */
.reinforcement-section-lead{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}
html[data-density="compact"] .reinforcement-section-lead{flex-wrap:wrap;margin-bottom:5px}
html[data-density="compact"] #profileSection .section-body{overflow-x:visible}
html[data-density="compact"] .profile-layout{display:flex;flex-wrap:wrap;align-items:flex-start;gap:7px;min-width:0}
html[data-density="compact"] .portrait-card{flex:0 0 120px;width:120px;max-width:120px;margin:0}
html[data-density="compact"] .identity-panel{flex:1 1 500px;min-width:0}
html[data-density="compact"] .profile-fields{display:flex;flex-wrap:wrap;align-items:flex-start;gap:6px;min-width:0}
html[data-density="compact"] .profile-fields>.field{grid-column:auto;min-width:0}
html[data-density="compact"] .profile-name{flex:2 1 220px}html[data-density="compact"] .profile-player{flex:1 1 150px}html[data-density="compact"] .profile-age{flex:0 1 72px}html[data-density="compact"] .profile-premonition{flex:0 1 130px}
html[data-density="compact"] .profile-position,html[data-density="compact"] .profile-main-class,html[data-density="compact"] .profile-sub-class{flex:1 1 170px}
html[data-density="compact"] .profile-treasure{flex:2 1 230px}html[data-density="compact"] .profile-visibility{flex:0 1 150px}html[data-density="compact"] .profile-tags{flex:1 1 200px}
html[data-density="compact"] .summary-rail{display:flex;flex-wrap:wrap;align-items:stretch;width:100%;max-width:100%;overflow:visible}

/* 2026-07 UI refinements */
.section-nav span{margin-left:18px}
.sheet-section{scroll-margin-top:calc(var(--header-height) + 132px)}
.profile-treasure{grid-column:span 5}.profile-initial-position{grid-column:span 2}.profile-visibility{grid-column:span 2}.profile-tags{grid-column:span 3}
.reinforcement-section-lead{margin-bottom:4px}.reinforcement-formula{display:block;width:fit-content;max-width:100%;margin:0 0 8px}
.action-value-layout{display:flex;align-items:flex-start;gap:10px;margin-bottom:17px}.action-value-layout .action-value-panel{flex:0 1 570px;margin-bottom:0}.action-value-layout .action-rule-help{flex:0 0 auto;margin:0}.action-value-layout .action-rule-tooltip{right:0;left:auto}
.subsection-title-actions{display:flex;align-items:center;gap:9px}.subsection-title-actions h3{margin:1px 0 0}.maneuver-add-button{min-height:30px;padding:5px 9px;border:1px solid var(--line);background:none;color:var(--accent);font-size:11px;line-height:1;cursor:pointer}.maneuver-add-button:hover{border-color:var(--accent);background:rgba(57,208,195,.07)}.maneuver-add-button:disabled{opacity:.4;cursor:not-allowed}
.part-group{overflow:visible}.part-group>summary{list-style:none}.part-group>summary::-webkit-details-marker{display:none}.part-group-header{cursor:pointer;user-select:none}.part-group-header:before{content:none}.part-group-header:after{content:"⌄";flex:0 0 auto;margin-left:auto;color:var(--accent);font-size:15px;transform:rotate(180deg);transition:transform .16s}.part-group:not([open]) .part-group-header:after{transform:none}.part-group-header div{margin-right:0}.part-group-header button{cursor:pointer}.part-group-content{overflow-x:auto}
html:not([data-density="compact"]) .part-table tr{grid-template-columns:42px 58px minmax(120px,1.1fr) minmax(170px,1.35fr) 108px 62px 76px minmax(210px,2.4fr) 36px}
.part-table .part-order{width:42px;text-align:center}.part-drag-handle{display:grid;width:30px;height:30px;margin:auto;place-items:center;padding:0;border:1px solid var(--line);background:#101416;color:var(--accent);font:700 15px/1 Consolas;cursor:grab;touch-action:none;user-select:none}.part-drag-handle:hover{border-color:var(--accent);background:rgba(57,208,195,.08)}.part-drag-handle:active{cursor:grabbing}.part-drag-handle:disabled{opacity:.3;cursor:not-allowed}.part-table tr.is-dragging{opacity:.38}.part-table tr.is-drag-before{box-shadow:inset 0 3px 0 var(--accent)}.part-table tr.is-drag-after{box-shadow:inset 0 -3px 0 var(--accent)}
.madness-clear{min-height:28px;padding:4px 8px;border:1px solid rgba(255,113,133,.72);background:rgba(255,113,133,.14);color:#ff9cab;font-weight:700}.madness-clear:hover{border-color:var(--danger);background:var(--danger);color:#171315}
.summary-rail{min-width:0;max-height:calc(100vh - var(--header-height) - 158px);overflow-x:hidden;overflow-y:auto;padding-right:3px;scrollbar-width:thin}.summary-card,.summary-stat-grid{box-sizing:border-box;min-width:0;max-width:100%}.summary-identity>*{max-width:100%}.summary-avatar{width:128px;margin:12px auto 8px}.summary-avatar-action{font-size:9px}.summary-portrait-tools{flex-wrap:wrap;margin:0 0 10px}.summary-portrait-tools>span{min-width:0;overflow-wrap:anywhere}.summary-identity h2{max-width:100%;overflow:visible;line-height:1.35;overflow-wrap:anywhere;text-overflow:clip;white-space:normal}.summary-identity p{max-width:100%;overflow-wrap:anywhere}.summary-access,.summary-access-fields,.summary-access .check-field,.summary-access .check-field span,.summary-password-setting,.summary-password-setting>div{min-width:0}.summary-access p,.summary-access strong,.summary-access small{overflow-wrap:anywhere}.summary-password-setting .button{max-width:96px;white-space:normal}
html[data-density="compact"] .profile-initial-position{flex:0 1 120px}
html[data-density="compact"] .action-value-layout{min-width:780px;gap:7px;margin-bottom:9px}html[data-density="compact"] .action-value-layout .action-value-panel{min-width:570px;margin-bottom:0}html[data-density="compact"] .action-value-layout .action-rule-help{width:auto;margin:0}
html[data-density="compact"] .part-table{min-width:1090px}html[data-density="compact"] .part-drag-handle{width:24px;height:24px;font-size:13px}
html[data-density="compact"] .fetter-row .madness-clear{width:25px;min-height:22px;padding:1px;font-size:0}html[data-density="compact"] .fetter-row .madness-clear:after{content:"0";font-size:10px}
html[data-density="compact"] .summary-identity{grid-template-columns:52px minmax(0,1fr)}html[data-density="compact"] .summary-avatar{width:52px;margin:5px 0}html[data-density="compact"] .summary-portrait-tools{margin:2px 0}html[data-density="compact"] .summary-identity h2,html[data-density="compact"] .summary-identity p{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:900px){.summary-rail{max-height:none;overflow:visible;padding-right:0}.sheet-section{scroll-margin-top:calc(var(--header-height) + 178px)}.action-value-layout{flex-wrap:wrap}.action-value-layout .action-rule-help{width:fit-content}.action-value-layout .action-rule-tooltip{right:auto;left:0}}
@media(max-width:620px){.profile-fields .profile-initial-position{grid-column:1}.sheet-section{scroll-margin-top:16px}.action-value-layout{display:grid;grid-template-columns:1fr;margin-bottom:12px}.action-value-layout .action-value-panel{width:100%}.action-value-layout .action-rule-help{width:100%}}
html[data-density="compact"] .summary-identity{flex:1 1 220px}html[data-density="compact"] .summary-stat-grid{flex:1 1 190px}html[data-density="compact"] .summary-check{display:block;flex:1 1 240px}

/* Campaign maneuver archive */
.campaign-maneuver-panel{margin:14px 0 18px;border:1px solid rgba(57,208,195,.32);background:linear-gradient(135deg,rgba(57,208,195,.08),rgba(17,19,21,.45) 58%)}
.campaign-maneuver-expander{position:absolute;inline-size:1px;block-size:1px;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.campaign-maneuver-toggle{display:flex;width:100%;align-items:center;gap:12px;padding:11px 14px;border:0;background:transparent;color:var(--ink);text-align:left;cursor:pointer}.campaign-maneuver-toggle:hover{background:rgba(57,208,195,.06)}.campaign-maneuver-expander:focus-visible+.campaign-maneuver-toggle{outline:1px solid var(--accent);outline-offset:-2px}.campaign-maneuver-toggle>span{display:grid}.campaign-maneuver-toggle small{color:var(--accent);font:700 8px Consolas;letter-spacing:.16em}.campaign-maneuver-toggle strong{font-size:16px}.campaign-maneuver-toggle i{margin-left:auto;color:var(--accent);font-style:normal;font-size:18px;transform:rotate(180deg);transition:transform .2s}.campaign-maneuver-expander:not(:checked)+.campaign-maneuver-toggle i{transform:none}.campaign-maneuver-expander:not(:checked)~.campaign-maneuver-content{display:none}
.campaign-maneuver-content{display:grid;gap:10px;padding:0 14px 14px}.campaign-maneuver-link{display:flex;justify-content:flex-end;margin-top:-28px;padding-right:28px}.campaign-maneuver-link a{color:var(--muted);font-size:10px;text-underline-offset:3px}.campaign-maneuver-link a:hover{color:var(--accent)}
.campaign-maneuver-status{margin:0;padding:6px 9px;border-left:2px solid var(--accent);background:rgba(0,0,0,.18);color:#d1d8d5;font-size:11px;line-height:1.6}
.campaign-maneuver-grid{display:grid;gap:7px}.campaign-picker{display:grid;align-items:end;gap:7px;padding:9px;border:1px solid var(--line);background:rgba(17,19,21,.5)}.campaign-picker>strong{align-self:center;color:var(--accent);font-size:12px}.campaign-picker .field{min-width:0}.campaign-picker .field>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.campaign-picker .button{min-height:36px;padding:6px 11px;font-size:11px;white-space:nowrap}
.campaign-skill-picker{grid-template-columns:64px minmax(220px,1fr) auto}.campaign-part-picker{grid-template-columns:64px minmax(120px,.35fr) minmax(260px,1fr) minmax(105px,.28fr) auto}
.campaign-maneuver-content>.section-note{margin:0}
html[data-density="compact"] .campaign-maneuver-panel{margin:8px 0 11px}html[data-density="compact"] .campaign-maneuver-toggle{padding:6px 7px}html[data-density="compact"] .campaign-maneuver-content{gap:6px;padding:0 7px 7px}html[data-density="compact"] .campaign-maneuver-link{margin-top:-24px;padding-right:24px}html[data-density="compact"] .campaign-maneuver-status{padding:3px 6px}html[data-density="compact"] .campaign-picker{gap:4px;padding:5px}html[data-density="compact"] .campaign-picker .button{min-height:30px;padding:4px 7px}html[data-density="compact"] .campaign-skill-picker{grid-template-columns:48px minmax(210px,1fr) auto}html[data-density="compact"] .campaign-part-picker{grid-template-columns:48px 125px minmax(250px,1fr) 92px auto}

@media(max-width:1050px){
  .campaign-part-picker{grid-template-columns:64px minmax(120px,.35fr) minmax(240px,1fr) auto}.campaign-part-destination{grid-column:2}.campaign-part-picker>.button{grid-column:4;grid-row:2}
  html[data-density="compact"] .campaign-part-picker{grid-template-columns:48px 125px minmax(250px,1fr) 92px auto}html[data-density="compact"] .campaign-part-destination{grid-column:auto}html[data-density="compact"] .campaign-part-picker>.button{grid-column:auto;grid-row:auto}
}
@media(max-width:760px){
  .campaign-maneuver-link{position:static;margin-top:0;padding-right:0}.campaign-skill-picker{grid-template-columns:minmax(0,1fr) auto}.campaign-skill-picker>strong{grid-column:1/-1}.campaign-part-picker{grid-template-columns:minmax(110px,.4fr) minmax(0,1fr)}.campaign-part-picker>strong{grid-column:1/-1}.campaign-part-destination{grid-column:1}.campaign-part-picker>.button{grid-column:2;grid-row:3}
  html[data-density="compact"] .campaign-maneuver-panel{min-width:650px}html[data-density="compact"] .campaign-skill-picker{grid-template-columns:48px minmax(210px,1fr) auto}html[data-density="compact"] .campaign-skill-picker>strong{grid-column:auto}html[data-density="compact"] .campaign-part-picker{grid-template-columns:48px 125px minmax(250px,1fr) 92px auto}html[data-density="compact"] .campaign-part-picker>strong,html[data-density="compact"] .campaign-part-destination,html[data-density="compact"] .campaign-part-picker>.button{grid-column:auto;grid-row:auto}
}

/* Public release security and policy UI */
.brand-link{text-decoration:none}
.clipboard-fallback{position:fixed;inset:auto auto 0 0;width:1px;height:1px;opacity:0;pointer-events:none}
.site-footer{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center;padding:18px max(20px,calc((100vw - 1320px)/2));border-top:1px solid var(--line);background:var(--surface);color:var(--muted)}
.site-footer a{color:var(--ink);text-decoration:none}.site-footer a:hover{text-decoration:underline}.site-footer small{flex-basis:100%;font-size:.78em}
.form-note{margin:0;padding:10px;border:1px solid color-mix(in srgb,var(--warning) 45%,var(--line));background:color-mix(in srgb,var(--warning) 8%,transparent);color:var(--ink);line-height:1.7}
.convert-authorization{grid-column:1/-1}
.policy-document{line-height:1.85}.policy-document section{margin-block:28px}.policy-document h2{margin-bottom:10px}.policy-document ul{display:grid;gap:7px}.policy-warning{padding:12px 14px;border-left:3px solid var(--danger);background:rgba(255,113,133,.08)}.policy-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:18px 0;background:var(--line)}.policy-meta div{padding:10px 12px;background:var(--surface)}.policy-meta dt{color:var(--muted);font-size:.75em}.policy-meta dd{margin:3px 0 0}
.content-policy-notice{margin:12px 0;padding:10px 12px;border:1px solid color-mix(in srgb,var(--warning) 45%,var(--line));background:color-mix(in srgb,var(--warning) 8%,transparent);color:var(--ink);font-size:.85em;line-height:1.7}
.specimen-card .specimen-counts{display:grid;grid-template-columns:1fr;gap:7px;border-top:0;background:transparent}
.specimen-card .specimen-counts div{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;overflow:hidden;padding:10px 14px 10px 17px;border:1px solid var(--line);background:linear-gradient(90deg,rgba(57,208,195,.08),rgba(15,18,20,.78) 68%)}
.specimen-card .specimen-counts div:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--accent);box-shadow:0 0 12px var(--accent)}
.specimen-card .specimen-counts div:nth-child(2){background:linear-gradient(90deg,rgba(255,205,110,.07),rgba(15,18,20,.78) 68%)}.specimen-card .specimen-counts div:nth-child(2):before{background:var(--warning);box-shadow:0 0 12px var(--warning)}
.specimen-card .specimen-counts div:nth-child(3){border-color:var(--line-strong);background:linear-gradient(90deg,rgba(255,113,133,.07),rgba(15,18,20,.86) 68%)}.specimen-card .specimen-counts div:nth-child(3):before{background:var(--danger);box-shadow:0 0 12px var(--danger)}
.specimen-card .specimen-counts dt{overflow:hidden;color:var(--muted);font-size:10px;letter-spacing:.14em;text-overflow:ellipsis;white-space:nowrap}
.specimen-card .specimen-counts dd{flex:0 0 auto;margin:0;color:var(--accent-strong);font-size:27px;line-height:1;text-shadow:0 0 16px rgba(57,208,195,.4)}
.specimen-card .specimen-counts div:nth-child(2) dd{color:var(--warning);text-shadow:0 0 16px rgba(255,205,110,.3)}
.specimen-card .specimen-counts div:nth-child(3) dd{color:var(--ink);text-shadow:0 0 16px rgba(255,113,133,.34)}
html[data-density="compact"] .specimen-card .specimen-counts{gap:5px}html[data-density="compact"] .specimen-card .specimen-counts div{padding:8px 11px 8px 14px}html[data-density="compact"] .specimen-card .specimen-counts dd{font-size:23px}
.external-service-note{padding-top:5px;color:var(--muted)!important;line-height:1.65}.external-service-note a,.rights-notice a{color:var(--accent)}
.convert-panel .external-service-note{grid-column:1/-1}
.contact-email-reveal{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:10px 0}.contact-email-reveal small{flex-basis:100%;color:var(--muted)}.contact-email-reveal [data-contact-email-result] a{color:var(--accent);font-weight:700}
.webif-document pre{max-width:100%;overflow:auto;padding:14px;border:1px solid var(--line);background:#0d1012;color:var(--ink);font:12px/1.7 Consolas,monospace}.webif-document code{font-family:Consolas,monospace}.webif-table{width:100%;border-collapse:collapse}.webif-table th,.webif-table td{padding:9px 10px;border:1px solid var(--line);text-align:left;vertical-align:top}.webif-table th{background:var(--surface-strong);color:var(--accent);font-size:.8em}.webif-table td:first-child{white-space:nowrap}
@media(max-width:760px){.site-footer{padding:14px 16px}.site-footer a{flex:1 1 42%}}
