@charset "UTF-8";
:root{color-scheme:dark;--bg:#080e18;--panel:#101c2b;--panel2:#132135;--ink:#e8edf4;--muted:#a7b4c7;--blue:#b4d8ff;--gold:#c7ad7d;--line:#25374c;--serif:Georgia,'Times New Roman',serif;--sans:'Segoe UI',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:104px}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.75 var(--sans)}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--blue);outline-offset:5px}button,input,select{color:var(--ink)}button{background:none}img{display:block;max-width:100%;height:auto}button[hidden],[hidden]{display:none!important}.skip{position:fixed;top:-80px;left:12px;z-index:100;background:var(--ink);color:var(--bg);padding:12px}.skip:focus{top:12px}.wrap{max-width:1260px;margin:auto;padding:0 44px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.12}h2{font-size:clamp(36px,4.8vw,62px);letter-spacing:-1.5px;margin-bottom:25px}h3{font-size:27px;margin-bottom:16px}p{color:var(--muted);margin-bottom:22px}.eyebrow{font-size:11px;color:var(--gold);letter-spacing:3.5px;text-transform:uppercase;font-weight:600;margin-bottom:22px}.eyebrow:before{content:'✦';margin-right:14px;color:var(--blue)}.intro{font-size:18px;max-width:690px}.section{padding:115px 0;border-bottom:1px solid var(--line);position:relative}.section-head{display:flex;gap:35px;align-items:end;justify-content:space-between;margin-bottom:44px}.section-head p{max-width:405px;margin:0 0 5px}.section-number{font-family:var(--serif);color:#57718e;font-size:15px;letter-spacing:2px;display:block;margin-bottom:15px}.topbar{position:sticky;top:0;background:#080e18ef;border-bottom:1px solid #344355;z-index:40;backdrop-filter:blur(15px);height:80px}.top-inner{max-width:1480px;margin:auto;padding:0 35px;display:flex;align-items:center;justify-content:space-between;height:100%;gap:30px}.brand{display:flex;gap:12px;align-items:center}.brand b{font:28px var(--serif);white-space:nowrap}.brand small{font-size:9px;letter-spacing:3px;color:var(--muted);border-left:1px solid #50617a;padding-left:14px}.mark{width:28px;height:28px;border:1px solid var(--gold);display:grid;place-items:center;transform:rotate(45deg);margin-right:8px}.mark span{transform:rotate(-45deg);font:20px var(--serif);color:var(--gold)}.topnav{display:flex;gap:26px;align-items:center;font-size:12px;color:var(--muted)}.topnav a:hover,.topnav a.active{color:var(--blue)}.nav-cta{border:1px solid #536c88;padding:9px 17px;color:var(--blue)!important}.menu{display:none;border:1px solid var(--line);padding:7px 12px}.progress{position:absolute;bottom:-1px;height:2px;width:0;background:var(--blue);left:0}.hero{position:relative;isolation:isolate;min-height:825px;height:calc(100svh - 80px);max-height:1080px;display:flex;align-items:center;text-align:center;background:#101d31 url('assets/intro_select.jpg') center/cover no-repeat;overflow:hidden}.hero:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,var(--bg) 0%,transparent 30%,#06102070 100%),radial-gradient(ellipse at 50% 45%,#0610207a,transparent 70%)}.hero-content{max-width:850px;margin:auto;padding:60px 20px 110px}.hero .eyebrow{color:#d3e6fc;letter-spacing:6px}.hero h1{font-size:clamp(78px,11vw,162px);margin:0;letter-spacing:-6px;color:#e6edf8;text-shadow:0 2px 1px #0a1629,0 0 60px #75a7f152}.global{font-size:15px;letter-spacing:17px;padding-left:17px;color:var(--gold);display:block;margin:12px 0 42px}.hero h2{font-size:clamp(24px,3vw,36px);letter-spacing:.3px;line-height:1.4;margin-bottom:20px}.hero p{color:#c0cfe0;max-width:540px;margin:0 auto 32px}.ornament{height:1px;background:linear-gradient(90deg,transparent,#b6ccdf,transparent);max-width:320px;margin:30px auto;position:relative}.ornament:after{content:'◆';color:var(--gold);font-size:11px;position:absolute;left:calc(50% - 5px);top:-11px;background:#12213b}.actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;min-height:49px;padding:11px 25px;border:1px solid #65809e;font-size:11px;font-weight:600;letter-spacing:1.7px;text-transform:uppercase;transition:background .2s,transform .2s}.button:hover{background:#243c58;transform:translateY(-2px)}.button.primary{background:linear-gradient(130deg,#c6def6,#8fb3db);color:#102039;border-color:#dbecff}.button.primary:hover{background:#d7eaff}.scroll-hint{position:absolute;bottom:26px;left:0;right:0;font-size:9px;letter-spacing:3px;color:#a7b9d0}.scroll-hint span{display:block;font-size:25px;line-height:1.6}.stats{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--line);padding:30px 0;margin-top:0}.stat{text-align:center;border-right:1px solid var(--line)}.stat:last-child{border:0}.stat b{display:block;font:38px var(--serif);color:var(--blue);line-height:1.4}.stat span{font-size:10px;letter-spacing:2px;color:var(--muted);text-transform:uppercase}.split{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}.image-frame{position:relative;border:1px solid #4a5b71;padding:8px}.image-frame:before,.image-frame:after{content:'◆';position:absolute;color:var(--gold);background:var(--bg);font-size:11px;line-height:20px;z-index:1}.image-frame:before{left:-5px;top:-10px}.image-frame:after{right:-5px;bottom:-10px}.image-frame img{width:100%;aspect-ratio:1.5;object-fit:cover}.caption{font-size:11px;letter-spacing:.5px;padding:10px 4px 0;color:#8e9eb4}.three-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.editorial{border-top:1px solid #44556b;padding-top:28px}.editorial .num{font:17px var(--serif);color:var(--gold);margin-bottom:22px}.editorial p{font-size:14px}.class-tabs{display:flex;flex-wrap:wrap;border-bottom:1px solid var(--line);margin-bottom:32px;gap:12px}.class-tabs button{padding:15px 25px;border:0;border-bottom:2px solid transparent;color:var(--muted);font-size:13px;display:flex;align-items:center;gap:12px}.class-tabs button img{width:38px;height:38px;border-radius:50%;object-fit:cover}.class-tabs button[aria-selected=true]{border-bottom-color:var(--blue);color:var(--blue);background:linear-gradient(0deg,#18314a70,transparent)}.class-body{display:grid;grid-template-columns:1.2fr 1fr;gap:65px;align-items:center;min-height:260px}.class-body h3{font-size:45px}.doctrines{display:grid;gap:20px}.doctrine{padding:20px 25px;border-left:2px solid #718ba5;background:linear-gradient(90deg,#162b4290,transparent)}.doctrine h4{margin:0 0 6px;font-weight:500;color:var(--blue)}.doctrine p{margin:0;font-size:13px}.inventory{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.inventory-item{background:#0c1624;padding:23px 15px;text-align:center}.item-icon{height:75px;display:flex;align-items:center;justify-content:center;margin-bottom:12px}.item-icon img{max-height:68px;max-width:55px;object-fit:contain;filter:drop-shadow(0 2px 6px #8ebfff30)}.inventory-item b{display:block;font-size:12px;font-weight:500}.inventory-item small{font-size:10px;color:var(--muted)}.fine{font-size:12px;line-height:1.7;color:#8ea0b7}.timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;margin-top:50px}.timeline>div{border-top:1px solid #5c7590;padding-top:22px;position:relative}.timeline>div:before{content:'';position:absolute;top:-4px;left:0;height:7px;width:7px;background:var(--gold);transform:rotate(45deg)}.timeline b{font:26px var(--serif);color:var(--blue)}.timeline h3{font-size:22px;margin:15px 0 12px}.timeline p{font-size:13px}.routes{border:1px solid var(--line);background:linear-gradient(135deg,#14223880,#0b131f);padding:30px}.route-tools{display:flex;align-items:center;gap:20px;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:23px;margin-bottom:25px}.route-tools h3{margin:0}.select{background:#111e2d;border:1px solid #40566f;padding:10px 16px;max-width:100%}.route{display:flex;align-items:stretch;gap:12px;overflow-x:auto;padding-bottom:16px}.route-step{min-width:142px;flex:1;text-align:center;border:1px solid #293b51;padding:24px 12px;background:#0b1522}.route-step img{height:75px;width:55px;object-fit:contain;margin:0 auto 18px}.route-step b{font-size:12px;font-weight:500;display:block;min-height:43px}.route-step small{font-size:10px;color:#92adc9}.route-arrow{align-self:center;color:var(--gold);font-size:23px}.route-special{color:var(--gold);font-size:12px;margin-top:15px}.feature-pairs{display:grid;grid-template-columns:1fr 1fr;gap:0 55px}.feature-pair{padding:28px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:45px 1fr;gap:20px}.feature-pair .symbol{font:30px var(--serif);color:var(--gold)}.feature-pair h3{font-size:25px}.feature-pair p{font-size:14px;margin-bottom:0}.alchemy{display:flex;gap:12px;margin:25px 0;flex-wrap:wrap}.alchemy img{width:56px;height:56px;object-fit:contain;border:1px solid #3e526b;background:#0b1522;padding:4px}.table-wrap{overflow-x:auto;border:1px solid var(--line)}table{border-collapse:collapse;width:100%;font-size:13px;line-height:1.6}th{text-align:left;font-size:10px;text-transform:uppercase;letter-spacing:1.4px;background:#172337;color:#c0d5ed;padding:18px 19px;font-weight:500;white-space:nowrap}td{padding:16px 19px;border-top:1px solid var(--line);color:#b7c5d7;vertical-align:top}td strong{font-weight:500;color:var(--ink)}tr:hover td{background:#15243a60}.level{color:var(--blue);white-space:nowrap;font-weight:600}.table-item{display:flex;gap:12px;align-items:center}.table-item img{height:35px;width:30px;object-fit:contain}.pet-track{display:flex;align-items:center;justify-content:space-between;border-block:1px solid var(--line);padding:30px 0;margin:25px 0;gap:15px}.pet-track b{font:30px var(--serif);color:var(--blue)}.pet-track small{display:block;color:var(--muted);font-size:10px;letter-spacing:1px}.pet-track>span{color:var(--gold)}.filters{display:flex;gap:9px;flex-wrap:wrap;margin:28px 0}.filters button{border:1px solid var(--line);padding:9px 16px;font-size:11px;color:#b7c9dd;min-height:40px}.filters button[aria-pressed=true]{background:#263d56;border-color:#7898b8;color:#eff7ff}.dungeon-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.dungeon-card{border:1px solid var(--line);background:#0c1521}.dungeon-art{height:175px;overflow:hidden;position:relative;background:#162437}.dungeon-art img{width:100%;height:100%;object-fit:cover;object-position:center 76%;filter:brightness(.95)}.dungeon-art:after{position:absolute;content:'';inset:0;background:linear-gradient(0deg,#0c1521,transparent 80%)}.dungeon-label{position:absolute;bottom:10px;left:22px;font-size:10px;letter-spacing:2px;color:#deebff;z-index:1}.dungeon-info{padding:20px 23px 23px}.dungeon-info h3{font-size:25px}.meta{display:flex;gap:15px;flex-wrap:wrap;color:var(--blue);font-size:11px;line-height:1.7;margin-bottom:17px}.dungeon-info p{font-size:12px;min-height:61px}.dungeon-info details{border-top:1px solid var(--line);padding-top:13px;font-size:12px}.dungeon-info summary{cursor:pointer;color:#c6ddf5}.dungeon-info details p{min-height:0;margin:12px 0 0}.yohara{background:linear-gradient(90deg,#08111fef,#08111fa8),url('assets/intro_loading.jpg') center 40%/cover no-repeat;padding:125px 0}.yohara .split{grid-template-columns:1.1fr 1fr;gap:100px}.giant{font:110px var(--serif);color:#b9d7fb;line-height:1}.giant small{display:block;font:10px var(--sans);letter-spacing:4px;margin-top:20px;color:var(--gold)}.yohara-stats{display:flex;gap:70px;margin-top:35px}.map-list{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:28px}.map-list span{border-bottom:1px solid #49627c;padding-bottom:10px;font-size:12px;color:#c9d8e9}.market{display:grid;grid-template-columns:1fr 1.1fr;gap:75px}.ledger{border:1px solid #425773;padding:30px;background:#111f30}.ledger-row{padding:18px 0;display:flex;gap:20px;border-bottom:1px solid var(--line)}.ledger-row:last-child{border:0}.ledger-row span{font:23px var(--serif);color:var(--gold);width:45px}.ledger-row b{font-size:13px;font-weight:500;display:block;color:#e3edfa}.ledger-row p{margin:5px 0 0;font-size:12px}.search{background:#0c1624;border:1px solid #4b6381;padding:13px 18px;width:100%;border-radius:0;font-size:13px}.search::placeholder{color:#879cb5}.system-list{display:grid;grid-template-columns:1fr 1fr;gap:0 50px;margin-top:25px}.system{padding:25px 0;border-bottom:1px solid var(--line)}.system h3{font:20px var(--serif);margin:0 0 10px}.system h3 span{font:9px var(--sans);text-transform:uppercase;letter-spacing:1.5px;color:var(--gold);display:block;margin-bottom:8px}.system p{font-size:13px;margin:0}.event-list{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:40px}.event{padding:25px 0;border-top:1px solid #4b637b}.event h3{font-size:23px}.event p{font-size:13px}.atlas{background:#0c1523}.atlas-toolbar{display:grid;grid-template-columns:1fr 210px;gap:16px;margin:25px 0 18px}.atlas .class-tabs button{padding:13px 18px}.pagination{display:flex;gap:20px;align-items:center;justify-content:space-between;margin-top:20px;font-size:12px;color:var(--muted)}.pagination button{padding:8px 16px;border:1px solid #425b76;min-height:42px}.pagination button:disabled{opacity:.35;cursor:default}.pagination .buttons{display:flex;gap:8px}.atlas-details summary{cursor:pointer;color:var(--blue)}.atlas-details ul{padding-left:17px;font-size:12px}.empty{padding:40px;text-align:center;color:var(--muted)}.count{font-size:12px;color:#829bb7;margin-top:12px}.faq{max-width:850px;margin:auto}.faq details{border-bottom:1px solid var(--line);padding:22px 0}.faq summary{cursor:pointer;font:22px var(--serif);color:#dce9f7}.faq p{font-size:14px;padding-top:18px;margin-bottom:0}.closing{padding:115px 20px;text-align:center;background:radial-gradient(ellipse at center,#152c4788,transparent 70%)}.closing h2{font-size:clamp(38px,5vw,65px)}.closing p{max-width:550px;margin:0 auto 30px}footer{border-top:1px solid var(--line);padding:30px 0}.footer-inner{display:flex;justify-content:space-between;gap:25px;align-items:center}.footer-inner p{font-size:11px;margin:0}.footer-brand{font:22px var(--serif)}.to-top{position:fixed;bottom:24px;right:24px;width:42px;height:42px;background:#15253b;border:1px solid #45607d;z-index:20;font-size:21px;display:grid;place-items:center}.chapter-nav{display:none}.plain-link{color:var(--blue);border-bottom:1px solid #708aa5;font-size:12px}.loading-note{padding:20px;color:var(--muted)}@media(min-width:1600px){.chapter-nav{position:fixed;left:25px;top:50%;transform:translateY(-50%);display:grid;gap:18px;z-index:25}.chapter-nav a{font-size:10px;letter-spacing:1px;color:#748da8;border-left:1px solid #3c536e;padding-left:12px}.chapter-nav a:hover{color:var(--blue)}}@media(max-width:1000px){.wrap{padding:0 28px}.topnav{gap:17px}.topnav a:nth-child(3){display:none}.split,.market{gap:40px}.dungeon-grid{grid-template-columns:1fr 1fr}.inventory{grid-template-columns:repeat(4,1fr)}.three-cols{gap:22px}.yohara .split{gap:40px}.global{letter-spacing:12px}.hero{min-height:740px}}@media(max-width:700px){html{scroll-padding-top:83px}.wrap{padding:0 20px}.topbar{height:68px}.top-inner{padding:0 20px}.brand b{font-size:24px}.brand small{font-size:8px}.mark{width:23px;height:23px}.menu{display:block}.topnav{display:none;position:absolute;top:68px;left:0;right:0;background:#0b1625;padding:20px;border-bottom:1px solid #55708d;flex-direction:column;align-items:stretch;gap:0}.topnav.open{display:flex}.topnav a{padding:12px}.topnav a:nth-child(3){display:block}.hero{height:calc(100svh - 68px);min-height:720px;background-position:48% center}.hero-content{padding:70px 20px 125px}.hero h1{letter-spacing:-3px;font-size:85px}.hero .eyebrow{letter-spacing:3px;font-size:9px}.global{font-size:11px;letter-spacing:11px;margin-bottom:30px}.hero h2{font-size:26px}.hero p{font-size:14px;max-width:330px}.hero .button{padding:11px 17px;font-size:10px}.stats{grid-template-columns:1fr 1fr;gap:25px 0;padding:28px 0}.stat:nth-child(2){border:0}.stat b{font-size:31px}.stat span{font-size:8px}.section{padding:75px 0}.section-head{display:block;margin-bottom:30px}.section-head p{margin-top:18px}.section h2{font-size:40px;letter-spacing:-1px}.split,.three-cols,.class-body,.market,.feature-pairs,.system-list,.yohara .split{grid-template-columns:1fr;gap:30px}.split .image-frame{margin-top:15px}.class-tabs{gap:0;display:grid;grid-template-columns:1fr 1fr}.class-tabs button{padding:12px 10px;font-size:12px}.class-body{min-height:0;gap:20px}.class-body h3{font-size:37px}.class-body p{font-size:14px}.inventory{grid-template-columns:repeat(2,1fr)}.inventory-item{padding:17px 10px}.timeline{grid-template-columns:1fr 1fr;gap:30px 20px}.route-tools{display:block}.route-tools select{width:100%;margin-top:20px}.routes{padding:20px 15px}.route-step{min-width:140px}.dungeon-grid{grid-template-columns:1fr}.dungeon-art{height:190px}.dungeon-info p{min-height:0}.feature-pair{padding:22px 0;gap:12px;grid-template-columns:35px 1fr}.yohara{padding:80px 0}.yohara-stats{gap:40px}.giant{font-size:86px}.map-list{gap:12px 20px}.event-list{grid-template-columns:1fr 1fr;gap:16px}.event p{font-size:12px}.event h3{font-size:21px}.atlas-toolbar{grid-template-columns:1fr}.atlas .class-tabs{grid-template-columns:1fr 1fr}.atlas .class-tabs button{justify-content:center;font-size:11px;padding:12px 8px}.pagination{align-items:start;font-size:11px;gap:10px}.pagination button{padding:8px 11px}.footer-inner{flex-direction:column;align-items:start}.closing{padding:75px 20px}.to-top{right:12px;bottom:12px;width:35px;height:35px}.intro{font-size:16px}td,th{padding:13px 12px}.faq summary{font-size:19px}.section-number{font-size:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}@media print{.topbar,.chapter-nav,.to-top,.filters,.atlas-toolbar,.pagination,.menu,.scroll-hint{display:none}.hero{min-height:500px;height:auto}.section{padding:35px 0}.dungeon-card,.system,.editorial{break-inside:avoid}body{font-size:12px}.wrap{max-width:none}.hero h1{font-size:95px}}
