/* Hallmark · macrostructure: Catalogue / Chapter Ledger · inked-grimoire-catalogue · vertical index / specimen folio */
:root{--paper:#f1eadb;--paper-2:#fff8ed;--ink:#171c24;--ink-2:#263240;--muted:#687078;--line:#c9bea9;--rust:#8f3128;--rust-2:#b55e42;--blue:#1d4261;--violet:#72617c;--sage:#7d8e82;--serif:"Noto Serif SC",Georgia,serif;--sans:"Noto Sans SC",system-ui,sans-serif;--shadow:0 22px 70px rgba(23,28,36,.16)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.8}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button{font:inherit;color:inherit}main{overflow:hidden}.site-header{position:fixed;z-index:20;top:20px;left:50%;transform:translateX(-50%);width:min(1150px,calc(100% - 40px));display:flex;align-items:center;justify-content:space-between;gap:18px;padding:8px 10px 8px 16px;border:1px solid rgba(23,28,36,.25);border-radius:999px;background:rgba(255,248,237,.88);backdrop-filter:blur(18px);box-shadow:0 10px 30px rgba(23,28,36,.08)}.brand{width:172px}.brand img{width:100%;height:38px;object-fit:cover;object-position:left center;border-radius:6px}.site-nav{display:flex;align-items:center;gap:4px}.nav-link,.nav-cta{padding:7px 13px;font-size:13px;color:var(--muted)}.nav-link:hover,.nav-link.is-active{color:var(--ink);background:#e8dec9;border-radius:999px}.nav-cta{background:var(--ink);color:var(--paper-2);border-radius:999px;font-weight:700}.nav-toggle{display:none;background:transparent;border:1px solid var(--line);border-radius:999px;padding:5px 11px}.chapter-label{font:11px/1.3 var(--sans);letter-spacing:.16em;color:var(--rust);font-weight:700;text-transform:uppercase}.folio-cover{position:relative;min-height:830px;display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.88fr);gap:7vw;align-items:center;padding:172px max(7vw,32px) 92px;background:var(--paper-2);isolation:isolate}.folio-cover:before{content:"";position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(255,248,237,.78),rgba(255,248,237,.2)),url('../images/aoliposidejinshu-grimoire-texture-01.png');background-size:cover;background-position:center;opacity:.45;z-index:-1}.cover-copy{max-width:680px}.cover-stamp{position:absolute;top:124px;left:max(7vw,32px);font:11px var(--sans);letter-spacing:.14em;color:var(--rust);border-bottom:1px solid var(--rust);padding-bottom:5px}.folio-cover h1,.page-heading h1,.paper-section h2,.download-letter h2,.final-seal h2{font-family:var(--serif);font-weight:900;letter-spacing:-.06em;line-height:1.08}.folio-cover h1{font-size:clamp(48px,8vw,110px);max-width:8ch;margin:20px 0}.lead{font-size:clamp(17px,2vw,22px);max-width:32ch;color:var(--ink-2)}.cover-actions{display:flex;flex-wrap:wrap;gap:12px;margin:34px 0}.button{display:inline-flex;align-items:center;justify-content:center;min-height:47px;padding:10px 18px;border:1px solid var(--ink);font-weight:700;transition:transform .2s ease,background .2s ease}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--rust);color:var(--paper-2);border-color:var(--rust)}.button-primary:hover{background:#a64334}.button-quiet{background:rgba(255,248,237,.5)}.button-dark{background:var(--ink);color:var(--paper-2)}.cover-meta{display:flex;gap:24px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:15px;color:var(--muted);font-size:12px}.cover-meta b{display:block;color:var(--ink);font:15px var(--sans)}.cover-art{position:relative;padding:15px 15px 42px;background:#e4d8c2;border:1px solid #a99b85;box-shadow:var(--shadow);transform:rotate(2deg)}.cover-art img{width:100%;aspect-ratio:616/353;object-fit:cover}.bookmark{position:absolute;z-index:2;top:-18px;right:28px;background:var(--rust);color:var(--paper-2);padding:12px 9px 20px;font:11px var(--sans);letter-spacing:.12em;writing-mode:vertical-rl}.art-caption{position:absolute;bottom:10px;left:16px;font:10px var(--sans);letter-spacing:.14em;color:var(--blue)}.index-tabs{display:grid;grid-template-columns:repeat(4,1fr);max-width:1240px;margin:0 auto;padding:28px max(7vw,32px);border-bottom:1px solid var(--line)}.index-tabs a{display:flex;gap:13px;align-items:center;padding:8px 16px;border-right:1px solid var(--line);color:var(--muted);font-size:14px}.index-tabs a:last-child{border:0}.index-tabs a:hover{color:var(--rust)}.index-tabs span{font:15px var(--serif);color:var(--rust)}.paper-section{max-width:1240px;margin:auto;padding:118px max(7vw,32px);scroll-margin-top:80px}.quest-brief{display:grid;grid-template-columns:200px minmax(0,720px);gap:8vw}.margin-note{font:11px/1.7 var(--sans);letter-spacing:.12em;color:var(--rust);padding-top:9px;border-top:2px solid var(--rust)}.paper-section h2{font-size:clamp(34px,5.4vw,72px);margin:14px 0 24px}.paper-section p{max-width:65ch;color:#4e5961}.text-link{display:inline-flex;margin-top:12px;color:var(--blue);border-bottom:1px solid var(--blue);font-weight:700}.spellbook-system{display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw;background:linear-gradient(90deg,rgba(233,223,205,.66),transparent)}.ledger-list{border-top:1px solid var(--line)}.ledger-list>div{display:grid;grid-template-columns:150px 1fr;gap:22px;padding:19px 0;border-bottom:1px solid var(--line)}.ledger-list b{font:12px var(--sans);letter-spacing:.09em;color:var(--rust)}.ledger-list span{color:var(--ink-2);font-size:14px}.operator-dossier{display:grid;grid-template-columns:1fr 1fr;gap:8vw;background:#e3d8c4}.dossier-heading h2{margin-bottom:0}.dossier-body{padding-top:44px}.quote-mark{margin:30px 0;padding:22px;border-left:3px solid var(--rust);font:20px var(--serif);color:var(--blue)}.section-top{display:flex;justify-content:space-between;align-items:end;gap:22px;margin-bottom:30px}.section-top h2{margin-bottom:0}.archive-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr;grid-template-rows:190px 190px;gap:13px}.archive-tile{position:relative;overflow:hidden;border:1px solid var(--line);background:var(--ink)}.archive-tile:first-child{grid-row:span 2}.archive-tile img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.archive-tile:hover img{transform:scale(1.05)}.archive-tile span{position:absolute;left:0;right:0;bottom:0;padding:30px 14px 10px;background:linear-gradient(transparent,rgba(23,28,36,.85));color:var(--paper-2);font-size:12px}.download-letter,.final-seal{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:65px max(7vw,32px);background:var(--blue);color:var(--paper-2)}.download-letter h2,.final-seal h2{font-size:clamp(32px,5vw,60px);margin:13px 0 10px}.download-letter p,.final-seal p{margin:0;color:#e2e8e8}.download-letter .chapter-label,.final-seal .chapter-label{color:#d8c89f}.faq-margin{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{display:flex;justify-content:space-between;gap:20px;padding:15px 0;cursor:pointer;font-weight:700;list-style:none}summary::-webkit-details-marker{display:none}summary span{color:var(--rust);font-size:20px}details p{margin:0 30px 16px 0;font-size:14px}.final-seal{background:var(--rust)}.final-seal .button-primary{background:var(--paper-2);color:var(--rust);border-color:var(--paper-2)}.site-footer{display:grid;grid-template-columns:1.4fr .55fr 1.3fr;gap:42px;padding:74px max(7vw,32px) 28px;background:var(--ink);color:#b9c0be}.footer-letter h2{font:700 30px var(--serif);color:var(--paper-2);margin:13px 0 8px}.footer-letter p{max-width:40ch;margin:0;font-size:13px}.footer-label{display:block;color:#d8c89f;font-size:11px;margin-bottom:7px}.footer-col{display:flex;flex-direction:column;gap:5px;font-size:13px}.footer-col a:hover{color:#fff1d8}.article-col{display:grid;grid-template-columns:repeat(2,1fr);column-gap:18px}.footer-note{grid-column:1/-1;display:flex;justify-content:space-between;gap:18px;padding-top:22px;border-top:1px solid #3b4852;font-size:11px;color:#96a09e}.page-heading{padding:170px max(7vw,32px) 76px;background:#e3d8c4;border-bottom:1px solid var(--line)}.page-heading h1{font-size:clamp(50px,8vw,106px);margin:18px 0 12px}.page-heading p{max-width:58ch;color:#4e5961;font-size:17px}.archive-shell,.download-layout,.requirements,.chapter-index{max-width:1240px;margin:auto;padding:58px max(7vw,32px)}.filter-bar{display:flex;gap:8px;border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:26px}.filter-btn{border:1px solid var(--line);background:transparent;padding:7px 15px;cursor:pointer}.filter-btn.is-active,.filter-btn:hover{color:var(--rust);border-color:var(--rust)}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.gallery-card{margin:0}.lightbox-trigger{position:relative;width:100%;padding:0;border:0;background:var(--ink);cursor:pointer;text-align:left;overflow:hidden}.lightbox-trigger img{width:100%;aspect-ratio:16/10;object-fit:cover;transition:transform .4s ease}.lightbox-trigger:hover img{transform:scale(1.04)}.lightbox-trigger span{position:absolute;left:0;right:0;bottom:0;padding:30px 13px 10px;color:var(--paper-2);background:linear-gradient(transparent,rgba(23,28,36,.9));font-size:13px}.gallery-card figcaption{padding-top:8px;color:var(--muted);font-size:12px}.lightbox{position:fixed;inset:0;z-index:50;display:none;align-items:center;justify-content:center;padding:24px;background:rgba(12,18,24,.93)}.lightbox.is-open{display:flex}.lightbox img{max-width:92vw;max-height:82vh;object-fit:contain}.lightbox button{position:absolute;border:1px solid #76818a;background:var(--ink-2);color:var(--paper-2);padding:9px 13px;cursor:pointer}.lightbox-close{top:20px;right:20px}.lightbox-prev{left:20px}.lightbox-next{right:20px}.lightbox-caption{position:absolute;bottom:18px;color:#d8c89f;font-size:12px}.download-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:22px}.download-card{padding:34px;background:var(--paper-2);border:1px solid var(--rust);box-shadow:var(--shadow)}.download-card h2{font:700 35px var(--serif);margin:17px 0 8px}.download-card p{color:var(--muted);margin-bottom:28px}.install-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.install-list li{display:grid;grid-template-columns:60px 1fr;gap:18px;padding:21px 0;border-bottom:1px solid var(--line)}.install-list b{color:var(--rust);font:18px var(--serif)}.requirements{background:#e3d8c4}.requirements h2{font:700 35px var(--serif);margin:12px 0}.table-wrap{overflow:auto}.requirements table{width:100%;min-width:680px;border-collapse:collapse}.requirements th,.requirements td{text-align:left;padding:14px;border-bottom:1px solid var(--line);font-size:13px}.requirements th{color:var(--rust);font-weight:700}.table-note{color:var(--muted);font-size:12px}.chapter-index{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line)}.chapter-index a{display:flex;flex-direction:column;gap:7px;min-height:178px;padding:24px;background:var(--paper-2)}.chapter-index a:hover{background:#eadfcf}.chapter-index b{font:15px var(--serif);color:var(--rust)}.chapter-index span{font:700 20px var(--serif)}.chapter-index small{color:var(--muted)}.manual-section{max-width:1240px;margin:auto;padding:95px max(7vw,32px);scroll-margin-top:80px;border-bottom:1px solid var(--line)}.manual-section h2{font-size:clamp(34px,5vw,65px);margin:14px 0 28px}.manual-columns{display:grid;grid-template-columns:1.25fr .75fr;gap:8vw}.manual-columns p,.manual-section>p{max-width:65ch;color:#4e5961}.manual-columns ol{color:#4e5961}.margin-card{align-self:start;padding:22px;border:1px solid var(--line);background:#e3d8c4;display:flex;flex-direction:column;gap:9px}.margin-card b{font:11px var(--sans);letter-spacing:.12em;color:var(--rust)}.margin-card a{color:var(--blue);font-weight:700}.article-page{max-width:820px;margin:auto;padding:180px 28px 100px}.article-page h1{font:900 clamp(40px,6vw,72px)/1.12 var(--serif);letter-spacing:-.06em;margin:20px 0}.article-lead{font-size:19px;color:var(--ink-2);border-left:3px solid var(--rust);padding-left:19px}.article-page h2{font:700 28px var(--serif);margin-top:45px}.article-page p,.article-page li{color:#4e5961}.article-page a{color:var(--blue);border-bottom:1px solid var(--blue)}
@media(max-width:900px){.site-header{top:10px}.nav-toggle{display:block}.site-nav{display:none;position:absolute;top:57px;left:0;right:0;flex-direction:column;align-items:stretch;padding:10px;background:var(--paper-2);border:1px solid var(--line);border-radius:18px}.site-nav.is-open{display:flex}.nav-link,.nav-cta{text-align:center}.folio-cover{grid-template-columns:1fr;min-height:auto;padding-top:165px}.cover-art{max-width:620px;margin:16px auto 0}.index-tabs{grid-template-columns:repeat(2,1fr)}.index-tabs a{border-bottom:1px solid var(--line)}.quest-brief,.spellbook-system,.operator-dossier,.faq-margin,.download-layout,.manual-columns{grid-template-columns:1fr}.archive-grid{grid-template-columns:1fr 1fr}.archive-tile:first-child{grid-row:auto;grid-column:span 2}.gallery-grid{grid-template-columns:1fr 1fr}.chapter-index{grid-template-columns:1fr 1fr}.site-footer{grid-template-columns:1fr 1fr}.footer-note{grid-column:1/-1;flex-direction:column}}
@media(max-width:600px){.site-header{width:calc(100% - 24px)}.brand{width:140px}.folio-cover{padding-inline:20px}.folio-cover h1{font-size:55px}.cover-stamp{left:20px}.index-tabs{padding-inline:20px}.paper-section,.archive-shell,.download-layout,.requirements,.chapter-index,.manual-section{padding-inline:20px}.paper-section{padding-block:78px}.index-tabs a{padding-inline:8px;font-size:12px}.archive-grid,.gallery-grid,.chapter-index{grid-template-columns:1fr}.archive-tile:first-child{grid-column:auto}.section-top,.download-letter,.final-seal{align-items:flex-start;flex-direction:column}.site-footer{grid-template-columns:1fr;padding-inline:20px}.article-col{grid-template-columns:1fr 1fr}.footer-note{font-size:10px}.lightbox{padding:10px}.lightbox-prev{left:8px}.lightbox-next{right:8px}.lightbox-close{top:8px;right:8px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
