:root{--white: #fafafa;--white-soft: #f3f3f1;--black: #0a0a0a;--gray: #8a8a86;--gray-light: #d8d8d4;--line: rgba(10, 10, 10, .1);--line-strong: rgba(10, 10, 10, .22);--canvas: var(--white);--canvas-bright: #ffffff;--canvas-muted: var(--white-soft);--paper: var(--canvas);--paper-bright: var(--canvas-bright);--ink: var(--black);--ink-soft: var(--gray);--ink-faint: #b0b0ab;--hairline: var(--line);--hairline-strong: var(--line-strong);--accent: var(--black);--accent-dark: var(--black);--vermilion: var(--black);--vermilion-dark: var(--black);--display: "Instrument Serif", "Noto Serif SC", serif;--serif: "Noto Serif SC", "Songti SC", serif;--sans: "Syne", "PingFang SC", sans-serif;--data-sans: ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--mono: "IBM Plex Sans", monospace}*{box-sizing:border-box}html{background:var(--white);overflow-x:clip;overscroll-behavior-x:none}body{margin:0;overflow-x:clip;overscroll-behavior-x:none;background:var(--white);color:var(--black);font-family:var(--sans)}.app-shell{position:relative;display:flex;width:100%;min-height:100dvh;flex:1 1 auto;flex-direction:column;overflow:hidden;background:var(--white)}html.home-surface-active,body.home-surface-active,body.home-surface-active #root,body.home-surface-active .app-shell{background:#1239d5;overscroll-behavior:none}.app-main{position:relative;z-index:1;display:flex;width:100%;min-height:0;flex:1 1 auto;flex-direction:column}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}::selection{color:var(--white);background:var(--black)}.home-shell{--studio-blue: #1239d5;--studio-yellow: #ffe300;--studio-red: #ef3d27;position:relative;display:flex;width:100%;min-width:0;min-height:100dvh;overflow:clip;overscroll-behavior:none;flex-direction:column;color:#fff9ed;background:var(--studio-blue)}.home-header,.home-footer{position:relative;z-index:4;display:flex;align-items:center;justify-content:space-between;padding:clamp(20px,2.6vw,38px) clamp(24px,4vw,62px);border-color:#fff9ed5c;color:#fff9ed;font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.home-header{border-bottom:1px solid rgba(255,249,237,.36)}.home-wordmark{font-family:var(--sans);font-size:13px;letter-spacing:.2em}.home-edition{display:grid;width:28px;height:28px;place-items:center;border-radius:50%;color:#101010;background:var(--studio-yellow);font-size:10px}.home-layout{position:relative;z-index:1;display:grid;width:100%;min-width:0;min-height:0;flex:1;grid-template-columns:minmax(280px,.88fr) minmax(420px,1.45fr)}.home-copy{position:relative;z-index:2;display:flex;min-height:0;flex-direction:column;justify-content:space-between;padding:clamp(42px,7vh,96px) clamp(24px,4vw,62px) clamp(34px,5vh,70px);animation:fade-up .8s cubic-bezier(.16,1,.3,1) both}.home-index{margin:0;color:var(--studio-yellow);font-family:var(--display);font-size:clamp(28px,4vw,58px);font-style:italic;line-height:1}.home-title{margin:auto 0 0;font-family:var(--serif);font-size:clamp(42px,6vw,100px);font-weight:700;letter-spacing:0;line-height:1.1}.home-description{margin-top:20px;font-size:16px;line-height:1.6;color:#fff9edcc;max-width:360px}.home-actions{margin-top:clamp(38px,7vh,92px)}.enter-button{display:inline-flex;min-height:52px;align-items:center;gap:20px;padding:0 0 0 18px;border:1px solid rgba(255,249,237,.65);color:#fff9ed;background:transparent;cursor:pointer;font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;transition:color .28s ease,background .28s ease,transform .28s cubic-bezier(.16,1,.3,1)}.enter-button:hover,.enter-button:focus-visible{color:#101010;background:var(--studio-yellow);outline:none;transform:translate(7px)}.enter-button__arrow{display:grid;width:52px;height:50px;place-items:center;border-left:1px solid currentColor;font-size:22px;transition:transform .28s cubic-bezier(.16,1,.3,1)}.enter-button:hover .enter-button__arrow,.enter-button:focus-visible .enter-button__arrow{transform:rotate(-16deg)}.home-book-stage{position:relative;min-height:0;margin:0;overflow:hidden;background:var(--studio-yellow);animation:fade-up .95s .1s cubic-bezier(.16,1,.3,1) both}.home-art-field{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;overflow:hidden}.home-art-field:before,.home-art-field:after{position:absolute;content:"";pointer-events:none}.home-art-field:before{top:-34%;left:-12%;width:min(46vw,700px);aspect-ratio:1;border-radius:50%;background:var(--studio-red)}.home-art-field:after{right:-8%;bottom:-32%;width:min(32vw,480px);aspect-ratio:1;border:min(2.2vw,30px) solid var(--studio-blue);border-radius:50%}.home-art-stamp{position:absolute;right:clamp(20px,3vw,48px);bottom:clamp(20px,3vw,48px);z-index:3;color:#101010;font-family:var(--sans);font-size:10px;font-weight:600;letter-spacing:.17em;line-height:1.4;text-align:right}.book-object{position:relative;z-index:2;width:min(116%,820px);height:min(76vh,760px);cursor:default;transform:rotate(-8deg) translate(5%,3%);transition:transform .8s cubic-bezier(.16,1,.3,1),filter .8s ease;filter:drop-shadow(30px 36px 0 rgba(16,16,16,.18))}.book-object:hover{transform:rotate(-4deg) translate(5%,-1%);filter:drop-shadow(40px 48px 0 rgba(16,16,16,.22))}.book-object img{width:100%;height:100%;object-fit:contain}.home-footer{border-top:1px solid rgba(255,249,237,.36)}.catalog-shell,.reader-shell{color:var(--black);background:#fff}html.chapter-surface-active,body.chapter-surface-active,body.chapter-surface-active #root{background:var(--white);overscroll-behavior-y:none}.catalog-shell{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;overflow-y:auto;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch}.catalog-inner{width:min(100% - 48px,1160px);margin:0 auto;padding:clamp(32px,5vw,64px) 0 clamp(100px,14vh,160px)}.catalog-nav,.reader-nav{display:flex;align-items:center;justify-content:space-between;min-height:56px;font-size:14px;letter-spacing:.05em;text-transform:uppercase}.text-action{display:inline-flex;min-height:44px;align-items:center;gap:10px;padding:0;border:0;color:var(--black);background:transparent;cursor:pointer;letter-spacing:0;text-transform:uppercase;font-weight:500;transition:color .2s ease}.text-action:hover,.text-action:focus-visible{color:#1239d5;outline:none}.catalog-hero{position:relative;overflow:hidden;margin-top:clamp(32px,6vh,64px);padding:clamp(28px,4vw,56px) clamp(32px,5vw,64px);border-radius:16px;color:#fff9ed;background:#1239d5}.catalog-hero:after{position:absolute;right:-5%;bottom:-40%;width:min(30vw,360px);aspect-ratio:1;border-radius:50%;content:"";background:#ffe300}.catalog-label{position:relative;z-index:1;margin:0 0 clamp(20px,3vh,32px);color:#ffe300;font-size:11px;font-weight:500;letter-spacing:.32em;text-transform:uppercase}.catalog-title{position:relative;z-index:1;margin:0;font-family:var(--serif);font-size:clamp(48px,8vw,120px);font-weight:700;letter-spacing:0;line-height:1.1}.chapter-list{margin-top:clamp(48px,6vh,80px)}.chapter-entry{position:relative;display:grid;grid-template-columns:clamp(56px,8vw,88px) minmax(0,1fr);width:100%;align-items:baseline;padding:clamp(16px,2.5vh,28px) clamp(12px,2vw,26px);border:0;border-bottom:1px solid var(--line);color:var(--black);background:transparent;text-align:left;cursor:pointer;transition:color .24s ease,background .3s ease,transform .4s cubic-bezier(.16,1,.3,1)}.chapter-entry:before{position:absolute;top:0;bottom:0;left:0;width:0;content:"";background:#ef3d27;transition:width .36s cubic-bezier(.16,1,.3,1)}.chapter-entry:hover,.chapter-entry:focus-visible{color:#101010;background:#ffe300;transform:translate(10px);outline:none}.chapter-entry:hover:before,.chapter-entry:focus-visible:before{width:8px}.chapter-entry__index{color:#ef3d27;font-family:var(--display);font-size:clamp(28px,4vw,44px);font-style:italic;font-weight:400;letter-spacing:-.02em;line-height:1;transition:color .24s ease}.chapter-entry:hover .chapter-entry__index,.chapter-entry:focus-visible .chapter-entry__index{color:#1239d5}.chapter-entry__title{margin:0;font-family:var(--serif);font-size:clamp(22px,3vw,36px);font-weight:500;letter-spacing:-.03em;line-height:1.2}.chapter-entry__arrow{display:none}.reader-shell{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;overflow-y:auto;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch}.reader-nav{position:sticky;top:0;z-index:3;padding:16px clamp(24px,5vw,64px);border-bottom:1px solid rgba(0,0,0,.04);background:#fff0;backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px)}.reader-chapter-label{color:var(--gray);font-family:var(--display);font-size:18px;font-style:italic}.reader-content{width:min(100% - 48px,680px);margin:0 auto;padding:clamp(72px,12vh,120px) 0 clamp(120px,16vh,200px)}.loading-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center;color:var(--gray);background:var(--white)}.loading-mark{display:flex;align-items:center;gap:14px;font-size:11px;letter-spacing:.22em;text-transform:uppercase}.loading-mark:before{width:24px;height:1px;content:"";background:var(--black);animation:loading-line .9s ease-in-out infinite alternate}@keyframes fade-up{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@keyframes loading-line{0%{transform:scaleX(.2);transform-origin:left}to{transform:scaleX(1);transform-origin:left}}@media(max-width:820px){.home-shell{height:100dvh;overflow-x:clip;overflow-y:auto;overscroll-behavior:none}.home-layout{min-height:0;flex:none;grid-template-columns:1fr;gap:0}.home-copy{order:2;max-width:none;min-height:370px;padding:clamp(38px,7vh,68px) clamp(24px,7vw,52px)}.home-book-stage{order:1;min-height:42vh}.book-object{width:min(125%,620px);height:48vh}}@media(max-width:540px){.home-header,.home-footer{padding-right:24px;padding-left:24px}.home-layout{padding:0}.home-title{font-size:clamp(40px,12vw,56px);line-height:1.1}.catalog-inner{width:min(100% - 32px,960px)}.catalog-hero{margin-top:48px}.chapter-entry{grid-template-columns:48px minmax(0,1fr);gap:8px}.chapter-entry__index{font-size:24px}.reader-content{width:min(100% - 32px,680px);padding-top:64px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}}
