/* ---------- モード（海外赴任・経営者・奈落） ---------- */
.ob .ob-l { font-size: 12px; white-space: nowrap; }
.odds-bars:has(.ob-l) .ob { grid-template-columns: 7.5em 1fr 52px; }
.nojob b.neg, .nk-info b.neg { color: #b8241a; }
.nojob b.pos { color: #2a7a4a; }
.perf-bar { height: 8px; margin: 2px 0 4px; background: #d8d2c2; border: 1px solid var(--ink); position: relative; }
.perf-bar i { position: absolute; left: 0; top: 0; bottom: 0; background: linear-gradient(90deg, #b8241a 0%, #e0a040 30%, #4a9a5a 60%, #2a6ab0 100%); background-size: 160px 100%; }
.chip[data-job="naraku"] { background: #0a0a10; color: #d8443a; box-shadow: inset 0 0 0 1px #5a1a14; letter-spacing: .08em; }
.chip[data-job="owner"] { background: #1e1a24; color: #f4d06a; box-shadow: inset 0 0 0 1px #8a6a2a; }
.chip[data-job="kaigai"] { background: #2a3566; color: #fff; }
.mode-grid li.got b { color: #1e2030; }
.mode-grid li.got.m-naraku { background: #14100e; color: #e8e0d8; border-color: #5a1a14; }
.mode-grid li.got.m-naraku b { color: #d8443a; }
.mode-grid li.got.m-naraku span { color: #b8aca0; }

/* 奈落の辞令は、紙ではなく、すすけた段ボール */
body[data-mode="naraku"] { background-color: #07070c; }
body[data-mode="naraku"] .jirei { background: #2a241c; color: #e8dccb; border-color: #000; box-shadow: 0 6px 0 #000, inset 0 0 40px rgba(0, 0, 0, .5); }
body[data-mode="naraku"] .jirei::before { border-color: #4a3e2e; }
body[data-mode="naraku"] .odds, body[data-mode="naraku"] .career { background-color: #0c0b10; border-color: #2a1e1a; }
body[data-mode="naraku"] .odds h2 span { color: #a89888; }
.nk-h { color: #d8443a; letter-spacing: 1.2em !important; margin-left: 1.2em !important; font-size: 26px !important; text-shadow: 0 2px 0 #000; }
.nk-wrap { display: grid; grid-template-columns: 7.4em 1fr; gap: 12px; border-top: 1px solid #4a3e2e; padding-top: 10px; }
.nk-ladder { list-style: none; margin: 0; padding: 0; display: grid; gap: 3px; font-family: var(--f-pix); font-size: 11px; }
.nk-ladder li { padding: 2px 6px; border-left: 3px solid #3a3028; color: #7a6e60; line-height: 1.35; }
.nk-ladder li span { display: block; font-size: 10px; color: #5a5048; }
.nk-ladder li.up { color: #8a8070; }
.nk-ladder li.on { border-left-color: #d8443a; background: #3a1410; color: #ffe8dc; }
.nk-ladder li.on span { color: #ff8a70; }
.nk-ladder li:first-child { border-left-color: #6a8a6a; }
.nk-info p { margin: 0; font-size: 14px; }
.nk-info p b { font-weight: 800; color: #ffb090; }
.nk-info .small { font-size: 12px; color: #a89888; margin-top: 4px; }
/* 落ちる・上がるときの演出 */
.nk-fx { display: grid; place-items: center; gap: 8px; padding: 30px 46px; background: #050508; border: 2px solid #3a1410; box-shadow: 0 0 80px rgba(0, 0, 0, .9); }
.nk-fx b { font-family: var(--f-disp); font-weight: 400; font-size: 56px; line-height: 1; color: #d8443a; letter-spacing: .08em; }
.nk-fx span { font-family: var(--f-doc); font-weight: 800; color: #e8dccb; letter-spacing: .5em; margin-left: .5em; font-size: 16px; }
.nk-fx.up { border-color: #3a5a3a; }
.nk-fx.up b { color: #9ae0a8; }
.nk-depth { display: flex; gap: 6px; }
.nk-depth i { width: 10px; height: 10px; border: 1px solid #5a4a40; }
.nk-depth i.on { background: #d8443a; border-color: #d8443a; }
.nk-fx.up .nk-depth i.on { background: #9ae0a8; border-color: #9ae0a8; }
.nk-fx.down { animation: nkDown .9s cubic-bezier(.4, 0, .6, 1) both; }
.nk-fx.up { animation: nkUp .9s cubic-bezier(.2, .9, .3, 1) both; }
@keyframes nkDown { 0% { transform: translateY(-60px); opacity: 0; filter: blur(4px); } 60% { opacity: 1; filter: none; } 100% { transform: none; } }
@keyframes nkUp { 0% { transform: translateY(50px); opacity: 0; } 100% { transform: none; opacity: 1; } }
@media (prefers-reduced-motion: reduce) { .nk-fx.down, .nk-fx.up { animation: none; } }
/* 経営者 */
body[data-mode="owner"] .jirei { box-shadow: 0 6px 0 #07081a, inset 0 0 0 2px #c8a040; }

