*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--font-sans:"PingFang TC","Noto Sans TC","Microsoft JhengHei",system-ui,-apple-system,sans-serif;--font-serif:"Noto Serif TC","Songti TC","PMingLiU",Georgia,"Times New Roman",serif;--teal:#0197b2;--teal-ink:#00728a;--teal-deep:#0b4f5c;--teal-soft:#e4f3f6;--coral:#ff5a5a;--coral-ink:#d63d3d;--coral-soft:#ffeceb;--yellow:#fd5;--yellow-soft:#fff5cc;--paper:#fbf8f2;--surface:#fff;--surface-2:#f4efe6;--line:#e8e1d4;--line-strong:#d6cdbd;--ink:#1d2a2f;--ink-2:#44535a;--muted:#6c787d;--radius-sm:8px;--radius:12px;--radius-lg:18px;--shadow-sm:0 1px 2px rgba(29,42,47,.06);--shadow:0 1px 2px rgba(29,42,47,.05),0 8px 24px rgba(29,42,47,.06);--transition:0.2s ease;--page-max:1120px}html{font-size:16px;-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:80px}body{font-family:var(--font-sans);background:var(--paper);color:var(--ink);min-height:100dvh;line-height:1.7;overflow-x:hidden;-webkit-font-smoothing:antialiased}button{font-family:inherit;cursor:pointer;border:none;background:none}a,button{color:inherit}:focus-visible{outline:2px solid var(--teal);outline-offset:3px;border-radius:4px}img{max-width:100%;display:block}.app{position:relative;min-height:100dvh;display:flex;flex-direction:column}.app-main{flex:1 1;width:100%;max-width:var(--page-max);margin:0 auto;padding:40px 20px 72px}.app-main--center{display:flex;align-items:center;justify-content:center}.eyebrow{font-size:.8rem;letter-spacing:.12em;text-transform:uppercase}.eyebrow,.text-link{font-weight:600;color:var(--teal-ink)}.text-link{display:inline-flex;align-items:center;gap:6px;font-size:.95rem;text-decoration:none;border-bottom:1px solid transparent;transition:border-color var(--transition);width:-moz-fit-content;width:fit-content}.text-link:hover{border-bottom-color:currentColor}.primary-btn,.secondary-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 26px;border-radius:var(--radius);font-size:1rem;font-weight:600;text-decoration:none;transition:background var(--transition),border-color var(--transition)}.primary-btn{background:var(--teal-ink);color:#fff}.primary-btn:hover{background:var(--teal-deep)}.secondary-btn{background:var(--surface);color:var(--ink);border:1px solid var(--line-strong)}.secondary-btn:hover{border-color:var(--ink-2)}.app-header{position:-webkit-sticky;position:sticky;top:0;z-index:40;background:hsla(40,53%,97%,.94);border-bottom:1px solid var(--line)}@supports ((-webkit-backdrop-filter:blur(8px)) or (backdrop-filter:blur(8px))){.app-header{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}}.app-header-inner{max-width:var(--page-max);margin:0 auto;padding:12px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px}.logo-wrap{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink)}.logo-icon-img{width:36px;height:36px;border-radius:8px;object-fit:contain}.logo-title{font-family:var(--font-serif);font-size:1.08rem;font-weight:700;letter-spacing:.02em;white-space:nowrap}.header-right--desktop{display:flex;align-items:center;gap:28px}.header-nav-link{display:inline-flex;align-items:center;gap:6px;color:var(--ink-2);font-size:.92rem;font-weight:500;text-decoration:none;transition:color var(--transition)}.header-nav-link:hover{color:var(--teal-ink)}.submit-book-btn{display:inline-flex;align-items:center;padding:7px 16px;border-radius:999px;border:1px solid var(--ink);color:var(--ink);font-size:.88rem;font-weight:600;text-decoration:none;white-space:nowrap;transition:background var(--transition),color var(--transition)}.submit-book-btn:hover{background:var(--ink);color:var(--paper)}.hamburger-btn{display:none;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-sm);color:var(--ink)}.hamburger-btn:hover{background:var(--surface-2)}.mobile-nav{display:none}.hero{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:32px;gap:32px;align-items:start}.hero-text{display:flex;flex-direction:column;align-items:flex-start;gap:18px;padding-top:8px}.hero-title{font-family:var(--font-serif);font-size:clamp(2rem,6vw,3.1rem);font-weight:700;line-height:1.3;letter-spacing:.01em;color:var(--ink)}.hero-mark{background:linear-gradient(transparent 62%,var(--yellow) 62%,var(--yellow) 92%,transparent 92%);padding:0 2px}.hero-desc{max-width:34em;color:var(--ink-2);font-size:1.05rem;line-height:1.85}.store-badges{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.store-badge-link{display:inline-flex;border-radius:8px;transition:opacity var(--transition)}.store-badge-link:hover{opacity:.85}.store-badge{height:42px;width:auto}.extension-cta{display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 16px 0 10px;border-radius:8px;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);font-size:.9rem;font-weight:600;text-decoration:none;white-space:nowrap;transition:border-color var(--transition)}.extension-cta:hover{border-color:var(--ink-2)}.extension-cta-icon{width:24px;height:24px}.phone{justify-self:center;width:100%;padding:0}.phone-screen{display:flex;flex-direction:column;overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.phone-body{flex:1 1;display:flex;flex-direction:column}.phone-body .gashapon-wrapper{flex:1 1;justify-content:center}.phone-tabbar{display:none;grid-template-columns:repeat(5,1fr);padding:8px 4px 14px;background:var(--paper);border-top:1px solid var(--line)}.phone-tab{display:flex;flex-direction:column;align-items:center;gap:3px;font-size:.64rem;color:var(--muted)}.phone-tab.is-active{color:var(--teal-ink);font-weight:700}.spin-panel{padding:24px 20px;gap:18px}.spin-panel,.spin-panel-head{display:flex;flex-direction:column}.spin-panel-head{gap:2px}.spin-panel-title{font-family:var(--font-serif);font-size:1.25rem;font-weight:700}.spin-panel-sub{color:var(--muted);font-size:.9rem}.category-selector{width:100%}.category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.category-btn{position:relative;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;grid-column-gap:12px;column-gap:12px;align-items:center;text-align:left;padding:12px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);transition:border-color var(--transition),background var(--transition)}.category-btn:hover{border-color:var(--line-strong);background:var(--paper)}.category-btn.active{border-color:var(--cat-color);background:color-mix(in srgb,var(--cat-color) 7%,#fff);box-shadow:inset 0 0 0 1px var(--cat-color)}.cat-icon{grid-row:1/span 2;width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--cat-color);background:color-mix(in srgb,var(--cat-color) 12%,#fff)}.category-btn.active .cat-icon{color:#fff;background:var(--cat-color)}.cat-name{font-size:.95rem;font-weight:700;color:var(--ink);line-height:1.35}.cat-desc{font-size:.76rem;color:var(--muted);line-height:1.4}.cat-desc-sep{margin:0 1px}.cat-check{position:absolute;top:8px;right:8px;width:18px;height:18px;border-radius:50%;background:var(--cat-color)}.cat-check,.spin-btn{color:#fff;display:flex;align-items:center;justify-content:center}.spin-btn{gap:10px;width:100%;padding:15px 24px;border-radius:var(--radius);font-size:1.02rem;font-weight:700;letter-spacing:.02em;background:var(--coral-ink);transition:background var(--transition)}.spin-btn:hover:not(:disabled){background:#bf3232}.spin-btn:disabled{background:var(--surface-2);color:var(--muted);cursor:not-allowed}.lucky-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;align-self:center;padding:6px 10px;border-radius:var(--radius-sm);color:var(--teal-ink);font-size:.9rem;font-weight:600;transition:background var(--transition)}.lucky-btn:hover{background:var(--teal-soft)}.error-msg{color:var(--coral-ink);background:var(--coral-soft);border-radius:var(--radius-sm);padding:10px 14px;font-size:.9rem}.section{margin-top:88px}.section-head{max-width:640px;display:flex;flex-direction:column;gap:10px;margin-bottom:32px}.section-title{font-family:var(--font-serif);font-size:clamp(1.5rem,4vw,2.1rem);font-weight:700;line-height:1.35}.section-desc{color:var(--ink-2);font-size:1rem}.feature-grid{list-style:none;display:grid;grid-template-columns:minmax(0,1fr);grid-gap:16px;gap:16px}.feature-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:24px;display:flex;flex-direction:column;gap:10px}.feature-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.feature-icon,.product-icon{flex-shrink:0;width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:var(--teal-soft);color:var(--teal-ink)}.feature-card:nth-child(2) .feature-icon{background:var(--yellow-soft);color:#8a6a00}.feature-card:nth-child(3) .feature-icon{background:var(--coral-soft);color:var(--coral-ink)}.feature-step{font-size:.78rem;font-weight:600;letter-spacing:.08em;color:var(--muted)}.feature-title{font-size:1.1rem;font-weight:700}.feature-text{color:var(--ink-2);font-size:.94rem;line-height:1.8}.product-grid{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:16px;gap:16px}.product-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:28px 24px;display:flex;flex-direction:column;gap:20px}.product-card--app{border-top:4px solid var(--teal)}.product-card-head{display:flex;align-items:center;gap:14px}.product-title{font-size:1.2rem;font-weight:700;line-height:1.3}.product-platform{color:var(--muted);font-size:.88rem}.product-points{list-style:none;display:flex;flex-direction:column;gap:10px;flex:1 1}.product-points li{display:flex;align-items:flex-start;gap:10px;color:var(--ink-2);font-size:.95rem;line-height:1.6}.product-points svg{flex-shrink:0;margin-top:4px;color:var(--teal)}.product-card .extension-cta{align-self:flex-start}.newsletter{display:grid;grid-gap:28px;gap:28px;padding:28px 24px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow)}.newsletter-body{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.newsletter-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:var(--coral-soft);color:var(--coral-ink);margin-bottom:4px}.newsletter-body{container-type:inline-size}:lang(zh-TW) .newsletter-body .section-title{font-size:clamp(1rem,5.6cqi,1.75rem);white-space:nowrap}.newsletter .text-link{margin-top:6px}.newsletter-embed{width:100%;max-width:480px;height:400px;justify-self:center;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.privacy-strip{margin-top:88px;display:flex;flex-direction:column;gap:16px;padding:28px 24px;border-radius:var(--radius-lg);background:var(--teal-deep);color:#fff}.privacy-strip-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:hsla(0,0%,100%,.12);color:var(--yellow);flex-shrink:0}.privacy-strip-body{flex:1 1}.privacy-strip-title{font-family:var(--font-serif);font-size:1.25rem;font-weight:700;margin-bottom:4px}.privacy-strip-text{color:hsla(0,0%,100%,.82);font-size:.95rem}.privacy-strip .text-link{color:var(--yellow);white-space:nowrap}.gashapon-wrapper{display:flex;flex-direction:column;align-items:center;gap:28px;padding:48px 16px}.gashapon-label{color:var(--ink-2);font-size:1rem;text-align:center}.gashapon-machine{position:relative;display:flex;align-items:center;justify-content:center}.machine-body,.machine-stand{display:flex;flex-direction:column;align-items:center}.machine-dome{width:168px;height:168px;border-radius:50%;background:var(--surface);border:6px solid var(--glow);box-shadow:inset 0 -10px 0 rgba(29,42,47,.04),var(--shadow);display:flex;align-items:center;justify-content:center}.machine-icon{display:block}.machine-base{width:128px;height:44px;margin-top:-6px;background:var(--teal-deep);border-radius:6px 6px 14px 14px;display:flex;align-items:center;justify-content:center}.machine-slot{width:44px;height:10px;background:rgba(0,0,0,.35);border-radius:5px}.stage-shake .machine-body{animation:shake .15s ease-in-out infinite}@keyframes shake{0%,to{transform:translateX(0) rotate(0deg)}25%{transform:translateX(-5px) rotate(-2deg)}75%{transform:translateX(5px) rotate(2deg)}}.capsule-fly{position:absolute;top:-10px;left:50%;transform:translateX(-50%);width:56px;height:56px;animation:capsulePop .6s ease-out forwards}.capsule-bottom,.capsule-top{width:56px;height:28px}.capsule-top{border-radius:28px 28px 0 0;background:var(--cap-color)}.capsule-bottom{border-radius:0 0 28px 28px;background:var(--surface);border:2px solid var(--line-strong);border-top:none}@keyframes capsulePop{0%{transform:translateX(-50%) translateY(0) scale(.5);opacity:1}60%{transform:translateX(-50%) translateY(-120px) scale(1.15) rotate(20deg);opacity:1}to{transform:translateX(-50%) translateY(-200px) scale(.8) rotate(45deg);opacity:0}}.loading-dots{display:flex;gap:8px}.loading-dots span{width:8px;height:8px;border-radius:50%;background:var(--teal);animation:dotBounce .9s ease-in-out infinite}.loading-dots span:nth-child(2){animation-delay:.15s;background:var(--yellow)}.loading-dots span:nth-child(3){animation-delay:.3s;background:var(--coral)}@keyframes dotBounce{0%,to{transform:translateY(0);opacity:.5}50%{transform:translateY(-8px);opacity:1}}.revealed-phase{width:100%;max-width:560px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:20px}.back-link{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;color:var(--ink-2);font-size:.92rem;text-decoration:none}.back-link:hover{color:var(--teal-ink)}.book-card-scene{align-items:center;gap:20px}.book-card,.book-card-scene{width:100%;display:flex;flex-direction:column}.book-card{max-width:420px;aspect-ratio:4/5;background:var(--card-grad);border-radius:16px;box-shadow:0 12px 32px rgba(29,42,47,.18);position:relative;overflow:clip}.book-card.card--downloading{border-radius:0}.book-card.card--downloading .card-author{margin-bottom:6px}.book-card.card--html2canvas .quote-content{padding:2px 0 18px}.book-card:after,.book-card:before{content:"";position:absolute;border-radius:50%;background:hsla(0,0%,100%,.08);pointer-events:none}.book-card:before{width:200px;height:200px;top:-80px;right:-60px}.book-card:after{width:140px;height:140px;bottom:-50px;left:-40px}.card-body{flex:1 1;position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:20px 20px 50px;min-height:480px}.card-title{margin-top:10px;margin-bottom:6px;padding-bottom:8px;font-size:1.15rem;font-weight:800;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.3);line-height:1.3;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;flex-shrink:0}.card-author{color:hsla(0,0%,100%,.85);font-size:.85rem;font-weight:500;margin-bottom:16px}.card-quote{background:hsla(0,0%,100%,.15);border-radius:10px;padding:0 14px;font-size:.85rem;color:hsla(0,0%,100%,.95);line-height:1.65;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;width:100%;min-height:72px}.quote-content{text-align:center;padding:10px 0}.quote-mark{font-family:Georgia,Times New Roman,serif;font-size:1.35rem;font-weight:700;line-height:0;color:hsla(0,0%,100%,.5);vertical-align:-.28em;margin:0 3px}.card-watermark{position:absolute;bottom:0;left:0;right:0;height:42px;z-index:2}.card-watermark-text{position:absolute;bottom:14px;left:0;right:0;text-align:center;font-size:.62rem;color:hsla(0,0%,100%,.65);font-weight:600;letter-spacing:.12em}.card-watermark-logo{position:absolute;right:10px;bottom:8px;width:24px;height:24px;opacity:.9}.book-cover-wrap{position:relative;width:min(110px,30%);aspect-ratio:390/569;flex-shrink:0}.book-cover-fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:hsla(0,0%,100%,.85)}.book-cover-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:4px;box-shadow:4px 6px 20px rgba(0,0,0,.4);opacity:0;transition:opacity .4s ease}.book-cover-img.visible{opacity:1}.card-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px;width:100%;max-width:420px}.action-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:12px 14px;border-radius:var(--radius);font-size:.92rem;font-weight:600;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);transition:border-color var(--transition),background var(--transition)}.action-btn:hover{border-color:var(--ink-2)}.action-btn:last-child:nth-child(odd){grid-column:1/-1}.download-btn{background:var(--teal-ink);border-color:var(--teal-ink);color:#fff}.download-btn:hover{background:var(--teal-deep);border-color:var(--teal-deep)}.highlights-btn{background:var(--yellow-soft);border-color:#f0d36a}.highlights-btn:hover{border-color:#c9a72c}.purchase-section{width:100%;max-width:420px;display:flex;flex-direction:column;gap:10px;padding-top:4px}.purchase-title{font-size:.85rem;font-weight:600;color:var(--muted)}.purchase-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));grid-gap:8px;gap:8px}.purchase-btn{display:flex;align-items:center;justify-content:center;padding:11px 14px;border-radius:var(--radius-sm);font-size:.9rem;font-weight:600;color:var(--ink);background:var(--surface);border:1px solid var(--line);text-decoration:none;transition:border-color var(--transition)}.purchase-btn:hover{border-color:var(--teal);color:var(--teal-ink)}.purchase-name{white-space:nowrap}.app-promo{width:100%;max-width:420px;margin-top:12px;display:flex;gap:16px;padding:20px;border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--line)}.app-promo-body{display:flex;flex-direction:column;gap:8px}.app-promo-title{font-size:1.05rem;font-weight:700}.app-promo-text{color:var(--ink-2);font-size:.92rem;margin-bottom:6px}.app-promo .store-badge{height:36px}.empty-state{display:flex;flex-direction:column;align-items:center;gap:20px;text-align:center}.highlights-intro{font-size:.95rem;color:var(--ink-2);line-height:1.85;padding:14px 16px;border-left:3px solid var(--teal);background:var(--teal-soft);border-radius:0 var(--radius-sm) var(--radius-sm) 0;white-space:pre-line}.highlights-group{display:flex;flex-direction:column;gap:12px}.highlights-group-label{font-size:.8rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--teal-ink)}.highlights-list{display:flex;flex-direction:column;gap:12px;list-style:none;counter-reset:highlights-counter}.highlights-point{counter-increment:highlights-counter;display:flex;flex-direction:column;gap:3px;font-size:.92rem;line-height:1.75}.highlights-point-title{font-weight:700;display:flex;align-items:center;gap:8px}.highlights-action-item:before,.highlights-point-title:before{content:counter(highlights-counter);flex-shrink:0;width:22px;height:22px;border-radius:50%;background:var(--teal-soft);color:var(--teal-ink);font-size:.72rem;font-weight:700;display:flex;align-items:center;justify-content:center}.highlights-point-content{color:var(--ink-2);padding-left:30px}.highlights-action-item{counter-increment:highlights-counter;display:flex;align-items:flex-start;gap:8px;font-size:.92rem;line-height:1.75;color:var(--ink-2)}.highlights-action-item:before{margin-top:3px}.highlights-conclusion{font-size:.92rem;color:var(--ink-2);line-height:1.85}.share-backdrop{position:fixed;inset:0;background:rgba(29,42,47,.45);z-index:100;display:flex;align-items:flex-end;justify-content:center;padding:0 12px 12px;animation:backdropIn .2s ease-out}@keyframes backdropIn{0%{opacity:0}to{opacity:1}}.share-modal{width:100%;max-width:420px;background:var(--surface);border-radius:var(--radius-lg);box-shadow:0 20px 48px rgba(29,42,47,.2);padding:20px;display:flex;flex-direction:column;gap:14px;animation:modalSlideUp .25s ease-out}@keyframes modalSlideUp{0%{transform:translateY(24px);opacity:0}to{transform:translateY(0);opacity:1}}.share-modal-header{display:flex;align-items:center;justify-content:space-between;font-family:var(--font-serif);font-size:1.1rem;font-weight:700}.share-close{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--ink-2);background:var(--surface-2);transition:background var(--transition)}.share-close:hover{background:var(--line)}.share-action-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:13px;border-radius:var(--radius);border:1px solid var(--line-strong);background:var(--surface);font-size:.98rem;font-weight:600;transition:border-color var(--transition)}.share-action-btn:hover{border-color:var(--ink-2)}.share-action-primary{background:var(--teal-ink);border-color:var(--teal-ink);color:#fff}.share-action-primary:hover{background:var(--teal-deep);border-color:var(--teal-deep)}.highlights-modal-backdrop{align-items:center;padding:16px}.highlights-modal{max-width:640px;max-height:84vh}.highlights-modal-body{overflow-y:auto;display:flex;flex-direction:column;gap:22px;padding-right:6px}.inapp-overlay{position:fixed;inset:0;z-index:99998;background:rgba(15,22,25,.94);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;padding:24px 16px calc(24px + env(safe-area-inset-bottom, 0px))}.inapp-overlay-hint{color:#fff;font-size:1rem;font-weight:600;text-align:center}.inapp-overlay-img{max-width:min(90vw,420px);max-height:60vh;border-radius:12px;object-fit:contain;-webkit-user-drag:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-touch-callout:default}.inapp-overlay-close{background:#fff;color:var(--ink);border-radius:999px;padding:10px 32px;font-size:.92rem;font-weight:600}.toast-container{position:fixed;bottom:calc(28px + env(safe-area-inset-bottom, 0px));left:50%;transform:translateX(-50%);z-index:99999;flex-direction:column;pointer-events:none;width:calc(100vw - 32px);max-width:400px}.toast-container,.toast-item{display:flex;align-items:center;gap:10px}.toast-item{padding:12px 16px;border-radius:var(--radius);font-size:.9rem;font-weight:500;color:#fff;background:var(--ink);width:100%;box-shadow:0 8px 24px rgba(29,42,47,.25);pointer-events:all;cursor:pointer;animation:toastSlideUp .25s ease-out}.toast-exit{animation:toastSlideDown .25s ease-in forwards}.toast-icon{flex-shrink:0;width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--teal)}.toast-error .toast-icon{background:var(--coral)}.toast-warning .toast-icon{background:var(--yellow);color:var(--ink)}.toast-msg{flex:1 1;line-height:1.4}@keyframes toastSlideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes toastSlideDown{to{opacity:0;transform:translateY(16px)}}.lang-switcher{position:relative;z-index:50}.lang-toggle{display:flex;align-items:center;gap:6px;background:var(--surface);color:var(--ink-2);border:1px solid var(--line-strong);border-radius:var(--radius-sm);padding:7px 12px;font-size:.88rem;font-weight:500;white-space:nowrap;transition:border-color var(--transition)}.lang-toggle:hover{border-color:var(--ink-2)}.lang-dropdown{position:absolute;top:calc(100% + 6px);left:0;list-style:none;min-width:150px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:6px;box-shadow:var(--shadow)}.lang-dropdown--up{top:auto;bottom:calc(100% + 6px)}.lang-option{display:flex;align-items:center;justify-content:space-between;width:100%;padding:9px 12px;border-radius:var(--radius-sm);color:var(--ink-2);font-size:.9rem;transition:background var(--transition)}.lang-option:hover{background:var(--surface-2)}.lang-option.active{color:var(--teal-ink);font-weight:700}.lang-check{display:flex;align-items:center}.app-footer{border-top:1px solid var(--line);background:var(--surface-2);padding:48px 20px 28px}.footer-grid{max-width:calc(var(--page-max) - 40px);margin:0 auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:32px 24px;gap:32px 24px}.footer-brand{grid-column:1/-1;display:flex;flex-direction:column;gap:12px}.footer-tagline{color:var(--ink-2);font-size:.92rem;max-width:22em}.footer-col{display:flex;flex-direction:column;gap:10px}.footer-col-title{font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:2px}.footer-link{font-size:.92rem;color:var(--ink-2);text-decoration:none;width:-moz-fit-content;width:fit-content;transition:color var(--transition)}.footer-link:hover{color:var(--teal-ink)}.footer-bottom{max-width:calc(var(--page-max) - 40px);margin:40px auto 0;padding-top:20px;border-top:1px solid var(--line)}.footer-copyright{font-size:.82rem;color:var(--muted)}.footer-copyright .footer-link{font-size:inherit;color:var(--ink-2);font-weight:600}.page{max-width:720px;margin:0 auto}.page,.page-hero{display:flex;flex-direction:column}.page-hero{gap:12px;padding-bottom:32px;margin-bottom:8px;border-bottom:1px solid var(--line)}.page-hero--about{flex-direction:column;gap:20px}.page-hero--about>div{display:flex;flex-direction:column;gap:12px}.about-avatar{width:96px;height:96px;border-radius:50%;object-fit:cover;border:3px solid var(--surface);box-shadow:0 0 0 2px var(--teal)}.page-title{font-family:var(--font-serif);font-size:clamp(1.8rem,5vw,2.5rem);font-weight:700;line-height:1.3}.page-meta{color:var(--muted);font-size:.9rem}.page-lead{color:var(--ink-2);font-size:1.05rem;line-height:1.85}.prose-section{padding:28px 0;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:10px}.prose-title{font-size:1.2rem;font-weight:700}.prose-text{color:var(--ink-2);font-size:1rem;line-height:1.9}.step-list{list-style:none;display:flex;flex-direction:column;gap:14px}.step-item{display:flex;gap:14px;align-items:flex-start;color:var(--ink-2);line-height:1.8}.step-num{flex-shrink:0;width:28px;height:28px;margin-top:1px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--teal-ink);color:#fff;font-size:.85rem;font-weight:700}.page-cta{padding-top:40px;display:flex;flex-direction:column;align-items:flex-start;gap:18px}.page-cta-text{font-family:var(--font-serif);font-size:1.35rem;font-weight:700}@media (max-width:860px){.header-right--desktop{display:none}.hamburger-btn{display:inline-flex}.mobile-nav.is-open{display:block;border-top:1px solid var(--line);background:var(--paper);padding:8px 20px 20px}.mobile-nav-items{display:flex;flex-direction:column}.mobile-nav-items .header-nav-link{padding:14px 0;font-size:1rem;border-bottom:1px solid var(--line)}.mobile-nav-items .submit-book-btn{margin-top:16px;justify-content:center;padding:11px 16px;font-size:.95rem}}@media (max-width:420px){.cat-desc{display:flex;flex-direction:column}.cat-desc-sep{display:none}}@media (max-width:380px){.logo-title{font-size:.98rem}.category-grid{grid-template-columns:minmax(0,1fr)}}@media (min-width:640px){.app-main{padding:56px 32px 88px}.feature-grid,.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.privacy-strip{flex-direction:row;align-items:center;gap:20px;padding:28px 32px}.page-hero--about{flex-direction:row;align-items:flex-start;gap:28px}.about-avatar{width:112px;height:112px}.footer-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width:960px){.app-main{padding:72px 40px 104px}.hero{grid-template-columns:minmax(0,1fr) 380px;gap:56px;align-items:center}.hero-text{gap:22px}.phone{max-width:380px;padding:11px;border-radius:46px;background:var(--ink);box-shadow:0 2px 4px rgba(29,42,47,.08),0 28px 56px rgba(29,42,47,.18)}.phone-screen{min-height:580px;border:none;border-radius:36px;box-shadow:none}.phone-tabbar{display:grid}.spin-panel{padding:28px 16px 18px;gap:14px}.phone .category-grid{gap:8px}.phone .category-btn{column-gap:10px;padding:10px}.phone .cat-icon{width:34px;height:34px}.phone .cat-name{font-size:.88rem}.phone .cat-desc{font-size:.68rem}.phone .cat-desc-part{display:block}.phone .cat-desc-sep{display:none}.section{margin-top:120px}.feature-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.newsletter{grid-template-columns:minmax(0,1fr) minmax(0,480px);align-items:center;gap:48px;padding:40px}.footer-grid{grid-template-columns:2fr repeat(4,minmax(0,1fr))}.footer-brand{grid-column:auto}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}