:root{color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at top right,#361a30,transparent 55%),#100d18;color:#eee6f0;font:17px/1.8 system-ui}main{max-width:1150px;margin:auto;padding:24px}a{color:#eccba0}nav{display:flex;justify-content:space-between;gap:20px;font-size:14px;margin-bottom:22px}nav span,.eyebrow{font-size:11px;letter-spacing:.16em;color:#d3ae7a}header{border:1px solid #826077;border-radius:20px;overflow:hidden;background:linear-gradient(90deg,#191020 15%,#191020bb 48%,transparent),url('../assets/entrances-v1/dungeon.png') right 22%/cover;min-height:290px;padding:30px 36px}h1{font-family:Georgia,serif;font-size:70px;letter-spacing:.12em;line-height:1.2;margin:18px 0;color:#f6ddb7}h1 span{display:block;font:17px/2 system-ui;letter-spacing:.08em}h2{font-size:24px;margin:4px 0 18px}h3{font-size:18px;margin:6px 0}p{margin:10px 0}.layout{display:grid;grid-template-columns:1.1fr 1fr;gap:22px}.panel{min-width:0;background:linear-gradient(130deg,#2a1e32,#191420);border:1px solid #57405c;border-radius:16px;padding:26px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:22px 0}.stats>div{background:#15101e;border:1px solid #57415f;border-radius:12px;padding:14px 8px;text-align:center}.stats span{display:block;font-size:13px;color:#c5b3ce}.stats strong{display:block;color:#f3cd8e;font-size:27px;white-space:nowrap}#ranks{display:grid;grid-template-columns:repeat(3,1fr);padding:0;gap:10px;list-style:none}#ranks li{border-bottom:3px solid #4a3a52;padding:10px 4px;text-align:center;font-size:13px}#ranks span{display:block}#ranks .current{border-color:#edb97f;background:#573049;border-radius:8px 8px 0 0}#ranks [aria-current=true]::after{content:'現在';display:block;color:#f5cf90;font-size:12px}.growth p,.note{font-size:14px;color:#c4b2ce}.material{display:flex;align-items:center;gap:16px}.material img{width:100px;height:100px;object-fit:contain}.button{display:block;text-align:center;background:linear-gradient(110deg,#d5a86e,#e8cda2);color:#281929;padding:12px 18px;border-radius:10px;font-weight:700;text-decoration:none;margin:20px 0}.proposal{border-style:dashed}ul{padding-left:22px}#save-status{font-size:14px;padding:12px 0;color:#d7c6df}footer{font-size:13px;color:#b8a5c1;margin-top:24px}a:focus-visible{outline:3px solid #ffc780;outline-offset:4px}@media(max-width:750px){main{padding:16px}.layout{grid-template-columns:1fr}header{padding:24px;min-height:240px}h1{font-size:56px}.panel{padding:20px}nav span{display:none}.stats strong{font-size:24px}}

header.saga-title{min-height:0;background:none;border:0;padding:20px 0 24px;border-radius:0}header.saga-title h1{font-size:clamp(60px,9vw,96px);margin:12px 0}.full-name{color:#d8b88b;letter-spacing:.08em;font-size:16px}.tagline{font-size:21px;color:#f1d8e8}.saga-art{margin:0;border:1px solid #76506a;border-radius:18px;overflow:hidden;background:#170f20}.saga-art img{display:block;width:100%;height:auto}.saga-art figcaption{display:flex;justify-content:space-between;gap:12px;padding:16px 22px;font-size:14px;flex-wrap:wrap}.profile-intro{max-width:880px;margin:44px auto}.profile-intro p{line-height:2}.personality-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.personality-grid h2{font-size:20px}.dialogue{display:grid;grid-template-columns:58px 1fr;gap:14px 8px;font-size:16px}.dialogue dt{color:#e5b983;font-size:13px;padding-top:3px}.dialogue dd{margin:0}.core-notes{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:28px 0 50px}.core-notes>div{border-top:1px solid #88647b;padding-top:14px}.core-notes p{font-size:15px;color:#cebfd5}.section-heading{border-top:1px solid #594358;padding-top:24px}.section-heading p{font-size:15px;color:#c6b4cf}@media(max-width:750px){.personality-grid,.core-notes{grid-template-columns:1fr}.profile-intro{margin:30px 0}.tagline{font-size:17px}.full-name{font-size:13px;overflow-wrap:anywhere}.saga-art figcaption{padding:12px}.dialogue{grid-template-columns:48px 1fr;font-size:15px}}

/* RANK IV and guard track. */
#ranks{grid-template-columns:repeat(4,1fr)!important}.guard-ranks{display:grid;grid-template-columns:repeat(3,1fr);padding:0;gap:10px;list-style:none}.guard-ranks li{background:#131a24;border:1px solid #3f5670;border-radius:12px;padding:12px 8px;text-align:center}.guard-ranks b{display:block;color:#bfe3ff}.guard-ranks span{display:block;font-size:13px;color:#c5d3e0}.guard-ranks li.current{border-color:#9fd4ff;box-shadow:0 0 16px #6fb8ff44;background:#1a2636}
@media(max-width:700px){#ranks{grid-template-columns:repeat(2,1fr)!important}.guard-ranks{grid-template-columns:1fr}}
