@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(vendor/fonts/font-01.ttf) format('truetype');
}
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(vendor/fonts/font-02.ttf) format('truetype');
}
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(vendor/fonts/font-03.ttf) format('truetype');
}
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(vendor/fonts/font-04.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(vendor/fonts/font-05.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(vendor/fonts/font-06.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(vendor/fonts/font-07.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(vendor/fonts/font-08.ttf) format('truetype');
}

:root{color-scheme:dark;--ink:#17102e;--deep:#100b20;--surface:#211637;--purple:#9562ea;--lime:#d9f76a;--paper:#fcfaf3;--muted:#c0b4d0;--line:#ffffff20;font-family:'DM Sans',sans-serif;font-size:16px;color:var(--paper);background:var(--deep)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:radial-gradient(ellipse at 0 10%,#40205e80,transparent 50%),var(--deep)}button,a,select{-webkit-tap-highlight-color:transparent}button,select{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}button:disabled{opacity:.35;cursor:default}button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid var(--lime);outline-offset:5px}button,a{transition:background .2s,transform .2s,color .2s}img{max-width:100%;display:block}button{border:0}h1,h2,h3,p{margin:0}h1,h2,h3,.brand-name,.footer-brand{font-family:'Barlow Condensed','Arial Narrow',sans-serif}.masthead{max-width:1520px;margin:auto;display:flex;align-items:center;gap:46px;padding:30px 4.5%;border-bottom:1px solid var(--line)}.brand{display:flex;flex-direction:column;line-height:.83;transform:rotate(-3deg)}.brand-name{font-size:2.85rem;letter-spacing:-.04em;font-weight:900;color:var(--lime);text-shadow:3px 3px 0 #744baa}.brand-star{font-size:1.4rem;display:inline-block;vertical-align:top;margin:0 0 0 7px;color:var(--paper)}.brand-sub{font-size:.72rem;letter-spacing:.27em;font-weight:700;margin-top:12px}.masthead nav{display:flex;gap:30px;margin-left:auto;align-items:center;font-size:.92rem}.masthead nav a:hover,.text-button:hover{color:var(--lime)}.text-button{padding:8px 0;background:transparent;color:inherit;font-weight:600}.shop-sign{font-size:.72rem;letter-spacing:.09em;border:1px solid var(--lime);border-radius:4px;padding:10px 12px;color:var(--lime);font-weight:700;transform:rotate(3deg)}main{max-width:1520px;padding:0 4.5% 70px;margin:auto}.welcome-line{display:flex;justify-content:space-between;font-size:.7rem;letter-spacing:.14em;font-weight:600;padding:18px 0 28px;color:var(--muted)}.welcome-line>span:last-child{color:var(--lime)}.shop-layout{display:grid;grid-template-columns:minmax(235px,27%) 1fr;gap:6%}.shopkeeper{align-self:start;position:sticky;top:25px}.speech{position:relative;background:var(--paper);color:var(--ink);padding:24px;border-radius:4px 24px 24px 24px;box-shadow:6px 7px 0 #744baa;transform:rotate(-2deg);z-index:1}.speech:after{content:'';position:absolute;bottom:-22px;left:55%;border:13px solid transparent;border-top:18px solid var(--paper);border-left:0}.eyebrow{font-size:.72rem;letter-spacing:.12em;font-weight:700;display:block;margin-bottom:10px;color:var(--muted)}.speech .eyebrow{font-size:.61rem;color:#65457b;letter-spacing:.1em}.speech h1{font-size:clamp(2.4rem,3.4vw,3.7rem);line-height:.98;font-weight:800;letter-spacing:-.02em}.speech p{font-size:.9rem;line-height:1.5;margin-top:14px;max-width:240px}.model-stage{position:relative;height:360px;background:radial-gradient(ellipse at 50% 65%,#a665ed44,transparent 68%);margin-top:22px}.model-stage:after{content:'';position:absolute;bottom:29px;left:7%;right:7%;height:22px;border-radius:50%;background:#b97ffa36;box-shadow:0 12px 30px #090511;pointer-events:none;z-index:0}model-viewer{width:100%;height:100%;z-index:1;--poster-color:transparent;--progress-bar-color:var(--lime)}.model-loading{font-size:.85rem;color:var(--muted);position:absolute;top:40%;left:0;right:0;text-align:center}.owner-tag{position:absolute;z-index:2;bottom:2px;left:50%;transform:translateX(-50%) rotate(-3deg);background:var(--lime);color:var(--ink);box-shadow:0 4px 0 #8aab36;border-radius:4px;padding:10px 25px;font-family:'Barlow Condensed',sans-serif;font-size:1.3rem;letter-spacing:.05em;font-weight:800;text-align:center}.owner-tag small{display:block;font:600 .58rem 'DM Sans',sans-serif;letter-spacing:.12em;white-space:nowrap;margin-top:3px}.model-hint{font-size:.76rem;color:var(--muted);text-align:center;margin:18px 0}.button{display:inline-flex;justify-content:center;align-items:center;gap:12px;border:1px solid transparent;background:var(--lime);color:var(--ink);font-size:.92rem;font-weight:700;min-height:45px;padding:12px 20px;border-radius:7px;box-shadow:0 4px 0 #819933}.button:hover:not(:disabled){transform:translateY(-2px);background:#e7ff98}.button:active:not(:disabled){transform:translateY(2px);box-shadow:none}.start-reading{width:100%;justify-content:space-between}.library-heading{display:flex;justify-content:space-between;align-items:center;margin:0 0 26px}.library-heading h2{font-size:clamp(3rem,4.8vw,5.3rem);font-weight:800;line-height:.9;letter-spacing:-.015em}.collection-stamp{flex-shrink:0;margin-left:20px;border:2px solid var(--purple);border-radius:50%;width:108px;height:108px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;font-size:.64rem;line-height:1.35;letter-spacing:.06em;transform:rotate(12deg);color:#cba4ff}.collection-stamp strong{font:800 2.8rem/.95 'Barlow Condensed',sans-serif;display:block}.shelf-info{display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:.77rem;padding-bottom:16px;border-bottom:1px solid var(--line);margin-bottom:26px}.shelf-info>span:last-child{font-size:.62rem;letter-spacing:.09em;align-self:center}.comic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px 24px}.comic-card{min-width:0;padding:0 0 22px;border-bottom:8px solid #4d345f;box-shadow:0 8px 0 #24162e,0 15px 12px -10px #0007;position:relative}.cover-button{display:block;position:relative;background:transparent;perspective:1000px;padding:0;width:100%;text-align:left;border-radius:5px;margin-bottom:18px}.cover-button img,.comic-card>img{width:100%;height:auto;aspect-ratio:1054/1492;object-fit:contain;box-shadow:5px 7px 0 #665670,10px 15px 17px #0006;transform:rotateY(-9deg) rotateZ(-2deg);transform-origin:left center;transition:transform .35s,box-shadow .35s;border-radius:2px}.cover-button:hover img{transform:rotateY(-2deg) rotateZ(1deg) translateY(-7px);box-shadow:3px 5px 0 #665670,12px 20px 25px #0007}.issue-label{position:absolute;top:10px;left:-5px;background:var(--lime);color:var(--ink);font-size:.65rem;letter-spacing:.06em;font-weight:800;padding:5px 8px;border:1px solid var(--ink);box-shadow:2px 2px 0 var(--ink);transform:rotate(-5deg)}.comic-card h3{font-size:1.35rem;line-height:1.05;margin:5px 0 10px;font-weight:700}.comic-day{font-size:.71rem;color:#cba4ff;font-weight:700;letter-spacing:.08em}.comic-meta{color:var(--muted);font-size:.72rem;margin-bottom:14px}.comic-card .button{width:100%;font-size:.8rem;padding:10px;min-height:40px}.download{display:block;text-align:center;font-size:.75rem;font-weight:600;margin:15px 0 0;text-decoration:underline;text-underline-offset:4px;color:#ddd3eb}.download:hover{color:var(--lime)}.upcoming-cover{aspect-ratio:1054/1492;border:1px dashed #7d6688;border-radius:3px;background:linear-gradient(140deg,#ffffff08,#ffffff00);display:flex;flex-direction:column;align-items:center;justify-content:center;margin-bottom:18px;position:relative;color:#b5a3c5}.upcoming-cover .future-brand{font:800 1.45rem 'Barlow Condensed',sans-serif;letter-spacing:.05em;opacity:.55}.upcoming-cover strong{font:800 5rem/1 'Barlow Condensed',sans-serif;color:#9b83b4}.upcoming-cover small{font-size:.7rem;margin-top:14px}.upcoming h3{color:#c7b9d6}.upcoming .comic-meta{margin:0}.upcoming{box-shadow:0 8px 0 #1e1527,0 15px 12px -10px #0007;border-color:#352342}.pending-caption{font-size:.76rem;color:#ac9aba;line-height:1.6}footer{max-width:1520px;margin:auto;display:flex;align-items:center;gap:28px;border-top:1px solid var(--line);padding:26px 4.5% 36px;color:var(--muted);font-size:.8rem}.footer-brand{font-size:1.7rem;font-weight:800;color:var(--lime)}footer>button{margin-left:auto}.skip{position:absolute;z-index:20;top:-100px;left:20px;background:var(--lime);color:var(--ink);padding:12px}.skip:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.noscript{padding:24px;background:#432e51}dialog{border:1px solid #8b69ab;border-radius:16px;color:var(--paper);background:var(--ink);padding:0;box-shadow:0 25px 90px #000a}dialog::backdrop{background:#070412eF;backdrop-filter:blur(8px)}#reader{width:min(1500px,98vw);height:96dvh;max-width:none;max-height:none;overflow:hidden}#reader[open]{display:flex;flex-direction:column}.reader-top{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:15px 24px;border-bottom:1px solid var(--line)}.reader-top .eyebrow{margin:0 0 3px;font-size:.65rem;color:var(--lime)}.reader-top h2{font-size:1.8rem;line-height:1}.reader-actions{display:flex;align-items:center;gap:18px}.button-small{font-size:.8rem;min-height:38px;padding:8px 14px}.icon-button{background:transparent;width:44px;height:44px;font-size:1.3rem;border:1px solid var(--line);border-radius:50%;flex-shrink:0}.icon-button:hover{background:#ffffff15}.reader-toolbar{display:flex;align-items:center;justify-content:space-between;padding:10px 24px;gap:15px;font-size:.76rem}.view-switch{display:flex;padding:3px;background:#080613;border-radius:6px;flex-shrink:0}.view-switch button{padding:7px 13px;border-radius:4px;background:transparent;font-size:.75rem;color:var(--muted)}.view-switch button[aria-pressed=true]{background:#634288;color:white}.reader-tip{color:var(--muted)}.reading-desk{position:relative;flex:1;min-height:0;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,#412d55,var(--deep));overflow:hidden;padding:4px 15px}#book-host{width:100%;height:100%;display:flex;align-items:center;justify-content:center;min-width:0}#book{margin:auto}.stf__parent{filter:drop-shadow(0 12px 20px #0008)}.page-controls{display:flex;justify-content:center;align-items:center;gap:18px;padding:13px;border-top:1px solid var(--line);font-size:.83rem}.button-quiet{color:var(--paper);background:#3b2852;box-shadow:0 4px 0 #080514}.button-quiet:hover:not(:disabled){background:#533769}.page-controls select{max-width:135px;background:#291b3d;border:1px solid #70508a;border-radius:6px;padding:9px;color:var(--paper);font-size:.8rem}.page-controls .button{font-size:.85rem;min-height:40px;padding:9px 18px}#large-page{height:100%;width:100%;overflow:auto;overscroll-behavior:contain;padding:10px}#large-page img{width:min(100%,1000px);margin:auto;height:auto;box-shadow:0 8px 30px #0009}#reader-error{position:absolute;background:#17102ef0;border:1px solid var(--purple);padding:20px;max-width:350px;line-height:1.6;text-align:center}#printing{width:520px;max-width:calc(100vw - 30px);padding:36px}#printing .close-print.icon-button{position:absolute;right:16px;top:14px}#printing h2{font-size:2.6rem;line-height:1;margin:15px 0 22px}#printing p{line-height:1.6;font-size:.95rem;color:#ded4e9}#printing dl{margin:24px 0}#printing dl div{display:flex;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid var(--line);font-size:.85rem}#printing dd{margin:0;font-weight:700;text-align:right}#printing>.button{margin-top:25px}[hidden]{display:none!important}
@media(min-width:1400px){.model-stage{height:430px}.comic-grid{gap:42px 30px}}
@media(max-width:1100px){.masthead{gap:25px}.shop-sign{display:none}.shop-layout{grid-template-columns:240px 1fr;gap:35px}.comic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.speech h1{font-size:2.7rem}.model-stage{height:325px}.collection-stamp{width:88px;height:88px}.library-heading h2{font-size:3.5rem}.reader-tip{display:none}}
@media(max-width:700px){.masthead{padding:22px 6%;gap:15px}.brand-name{font-size:2.15rem}.brand-sub{font-size:.55rem}.masthead nav{gap:17px;font-size:.78rem}.masthead nav .text-button{font-size:.78rem}main{padding:0 6% 45px}.welcome-line{font-size:.52rem;line-height:1.5;gap:10px;padding:16px 0 20px}.welcome-line>span:last-child{display:none}.shop-layout{display:block}.shopkeeper{position:relative;top:auto;display:grid;grid-template-columns:1fr 43%;gap:0;margin-bottom:38px}.speech{align-self:center;padding:19px;margin-right:-16px;border-radius:4px 20px 20px 20px}.speech h1{font-size:2.6rem}.speech .eyebrow{font-size:.5rem}.speech p{font-size:.78rem;margin-top:10px;max-width:160px}.speech:after{bottom:38px;left:auto;right:-20px;border:12px solid transparent;border-left:15px solid var(--paper);border-right:0}.model-stage{height:280px;margin:0 0 0 -10px}.model-hint{display:none}.owner-tag{bottom:0;padding:7px 15px;font-size:1rem}.owner-tag small{font-size:.47rem}.start-reading{margin-top:17px;grid-column:1/3;justify-content:center}.library-heading h2{font-size:3.4rem}.library-heading .eyebrow{font-size:.63rem}.collection-stamp{width:86px;height:86px}.shelf-info{font-size:.68rem;gap:10px}.shelf-info>span:last-child{display:none}.comic-grid{gap:30px 23px}.comic-card h3{font-size:1.3rem}.comic-day{font-size:.64rem}.comic-meta{font-size:.65rem}.comic-card .button{font-size:.77rem}.download{font-size:.68rem}.upcoming-cover strong{font-size:4rem}.upcoming-cover .future-brand{font-size:1.2rem}footer{padding:24px 6%;gap:14px;flex-wrap:wrap}footer p{font-size:.7rem}footer>button{font-size:.7rem}#reader{width:100vw;height:100dvh;border-radius:0;border:0;margin:0}.reader-top{padding:12px;gap:9px}.reader-top h2{font-size:1.4rem;max-width:210px}.reader-actions{gap:8px}.reader-actions .button{font-size:.68rem;padding:8px;box-shadow:none}.reader-actions .button span{display:none}.reader-top .icon-button{width:36px;height:36px;font-size:1rem}.reader-toolbar{padding:9px 12px;gap:8px}.reader-toolbar .text-button{font-size:.7rem}.view-switch button{font-size:.69rem;padding:7px 9px}.reading-desk{padding:0 5px}.page-controls{gap:10px;padding:12px 8px}.page-controls .button{padding:9px 12px;font-size:.75rem}.page-controls select{max-width:100px;font-size:.7rem}#page-counter{font-size:.72rem}.page-controls .button span{display:none}#printing{padding:28px}#printing h2{font-size:2.4rem}.pending-caption{font-size:.7rem}}
.eyebrow,.speech .eyebrow,.welcome-line,.brand-sub,.shop-sign,.shelf-info,.shelf-info>span:last-child,.issue-label,.comic-day,.comic-meta,.download,.upcoming-cover small,.owner-tag small,.model-hint{font-size:max(.75rem,12px)}
.comic-card .button,.view-switch button,.reader-toolbar .text-button,.page-controls select,.page-controls .button,.reader-actions .button,.pending-caption{font-size:.875rem}
.owner-tag{min-width:160px}.owner-tag small{font-size:.65rem}.reader-top .eyebrow{font-size:.75rem}
@media(max-width:700px){.welcome-line{font-size:.65rem}.brand-sub{font-size:.6rem}.speech .eyebrow{font-size:.65rem}.owner-tag{min-width:132px}.owner-tag small{font-size:.55rem}.reader-actions .button{font-size:.75rem}.page-controls select{font-size:.8rem}.view-switch button{font-size:.8rem}.shelf-info{font-size:.8rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* The flip canvas owns page drags; the large-page reading view still scrolls. */
#book .stf__canvas{touch-action:none;user-select:none;-webkit-user-select:none}

/* Book-only reading works without the Fullscreen API, including on phones. */
#reader.book-only{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;border:0;border-radius:0;background:#100b1b}
#reader.book-only>.reader-top,#reader.book-only>.reader-toolbar,#reader.book-only>.page-controls{display:none}
#reader.book-only .reading-desk{height:100%;padding:4px max(48px,env(safe-area-inset-right)) 4px max(48px,env(safe-area-inset-left));background:#100b1b}
#book-only-controls{position:absolute;inset:0;z-index:5;pointer-events:none}
#book-only-controls button{pointer-events:auto;position:absolute;min-width:44px;min-height:44px;color:#fff;background:#211637e8;border:1px solid #ffffff35;border-radius:9px;box-shadow:none}
#book-only-controls button:disabled{opacity:.25}
#exit-book-only{right:max(8px,env(safe-area-inset-right));top:max(8px,env(safe-area-inset-top));padding:8px 12px;font-size:.9rem}
.focus-page-arrow{top:50%;transform:translateY(-50%);font-size:2rem;line-height:1;padding:0}
#focus-previous{left:max(2px,env(safe-area-inset-left))}#focus-next{right:max(2px,env(safe-area-inset-right))}
#focus-counter{position:absolute;bottom:max(5px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);padding:3px 10px;border-radius:20px;font-size:.75rem;background:#100b1bd9;color:#ddd3eb}
#rotate-phone{display:none}
@media(orientation:portrait) and (max-width:700px){
 #reader.book-only .reading-desk{padding:50px 5px 65px}
 #rotate-phone{display:block;position:absolute;bottom:max(28px,env(safe-area-inset-bottom));left:12%;right:12%;text-align:center;font-size:.85rem;line-height:1.4;color:#d9f76a}
 #book-only-controls .focus-page-arrow{top:auto;bottom:8px;transform:none;background:#211637}
}
