@import"https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@300;400;600;700&family=ZCOOL+XiaoWei&family=Noto+Naskh+Arabic:wght@400;600&family=Noto+Sans:wght@300;400;600&display=swap";.lang-switcher{margin-left:8px;padding:4px 8px;background:transparent;border:1px solid #444;border-radius:2px;color:#999;font-size:.72rem;font-family:inherit;cursor:pointer;letter-spacing:.04em;-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;outline:none;transition:border-color .3s,color .3s}.lang-switcher:hover{border-color:#666;color:#ccc}.lang-switcher:focus{border-color:#888}[dir=rtl] .lang-switcher{margin-left:0;margin-right:8px}.app-layout{min-height:100dvh;display:flex;flex-direction:column}.global-nav{position:sticky;top:0;z-index:var(--z-sticky);background:var(--ink-deepest);border-bottom:1px solid rgba(255,255,255,.06);box-shadow:0 4px 20px #00000040;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.global-nav-inner{max-width:var(--content-max);margin:0 auto;padding:0 var(--space-6);height:var(--nav-height);display:flex;align-items:center;justify-content:space-between}.nav-brand{font-family:var(--font-ink);font-size:1.05rem;font-weight:var(--font-weight-semibold);color:var(--gold-pale);text-decoration:none;letter-spacing:.1em;flex-shrink:0;transition:color var(--transition-fast)}.nav-brand:hover{color:#f0e8d4}.nav-links{display:flex;align-items:center;gap:2px}.nav-link{padding:5px 14px;color:#ffffff8c;text-decoration:none;font-family:var(--font-ui);font-size:var(--text-xs);font-weight:var(--font-weight-normal);letter-spacing:.04em;border-radius:var(--radius-sm);transition:color var(--transition-fast),background var(--transition-fast);white-space:nowrap}.nav-link:hover{color:#ffffffd9;background:#ffffff0d}.nav-link--active{color:#ffffffe6;background:#ffffff14}.nav-link-admin{color:var(--gold-mid)}.nav-link-admin:hover{color:var(--gold-warm);background:#c9a96e14}.nav-user{color:#fff6;font-family:var(--font-ui);font-size:var(--text-2xs);margin-left:var(--space-3);letter-spacing:.03em;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-logout-btn{margin-left:var(--space-2);padding:4px 12px;background:transparent;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-sm);color:#fff6;font-family:var(--font-ui);font-size:var(--text-2xs);cursor:pointer;letter-spacing:.04em;transition:all var(--transition-fast)}.nav-logout-btn:hover{color:#ffffffb3;border-color:#ffffff38}.nav-logout-btn:active{transform:scale(.97)}.app-content{flex:1}.page-transition-enter{animation:pageEnter .4s var(--ease-out-expo)}@keyframes pageEnter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 640px){.global-nav-inner{padding:0 var(--space-4)}.nav-link{padding:4px 8px;font-size:var(--text-2xs)}.nav-user{display:none}.nav-logout-btn{font-size:var(--text-2xs);padding:4px 8px}}.music-banner{position:fixed;top:calc(var(--nav-height, 52px) + 12px);left:50%;transform:translate(-50%);z-index:calc(var(--z-toast, 50) + 10);width:min(480px,calc(100vw - 32px));pointer-events:auto;animation:bannerDrop .5s cubic-bezier(.34,1.56,.64,1) forwards}.music-banner--exit{animation:bannerRise .42s cubic-bezier(.4,0,1,1) forwards}@keyframes bannerDrop{0%{opacity:0;transform:translate(-50%) translateY(-28px) scale(.96)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}@keyframes bannerRise{0%{opacity:1;transform:translate(-50%) translateY(0) scale(1)}to{opacity:0;transform:translate(-50%) translateY(-20px) scale(.96)}}.music-banner-inner{display:flex;align-items:center;gap:14px;padding:14px 18px;background:#16120eeb;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-radius:16px;border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 40px #00000059,0 2px 8px #0003,inset 0 1px #ffffff0f;overflow:hidden}.music-banner-vinyl{flex-shrink:0;width:40px;height:40px;position:relative}.vinyl-disc{width:40px;height:40px;border-radius:50%;background:radial-gradient(circle at center,#1a1210 32%,#2a2018 33%,#1a1210 46%,transparent 47%,transparent 56%,#1a1210 57%,#2a2018 60%,#1a1210 72%,transparent 73%);background-color:#1a1210;box-shadow:0 0 0 1px #c9a96e40;animation:vinylSpin 3s linear infinite;position:relative}.vinyl-label{position:absolute;top:50%;left:50%;width:16px;height:16px;border-radius:50%;background:radial-gradient(circle,#c9a96e 30%,#8b6a2e);transform:translate(-50%,-50%)}@keyframes vinylSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.music-banner-text{flex:1;min-width:0}.music-banner-title{font-family:var(--font-ink, serif);font-size:.95rem;color:#fffffff2;margin:0 0 2px;letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.music-banner-sub{font-family:var(--font-ui, system-ui, sans-serif);font-size:.72rem;color:#ffffff73;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.music-banner-action{display:flex;align-items:center;gap:5px;padding:7px 16px;background:linear-gradient(135deg,#c9a96e,#a07840);border:none;border-radius:10px;color:#fff;font-family:var(--font-ui, system-ui, sans-serif);font-size:.8rem;font-weight:600;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:opacity .2s ease,transform .15s ease;letter-spacing:.02em}.music-banner-action:hover{opacity:.88;transform:scale(1.03)}.music-banner-action:active{transform:scale(.98)}.music-banner-close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:#ffffff0f;border-radius:7px;color:#ffffff59;cursor:pointer;flex-shrink:0;transition:background .2s,color .2s}.music-banner-close:hover{background:#ffffff1f;color:#ffffffbf}.music-banner-progress{position:absolute;bottom:0;left:0;height:2px;background:linear-gradient(90deg,#c9a96e,#a07840);animation:bannerProgress linear forwards;transform-origin:left center;border-radius:0 0 16px 16px}@keyframes bannerProgress{0%{width:100%}to{width:0%}}@media (max-width: 480px){.music-banner{top:calc(var(--nav-height, 52px) + 8px);width:calc(100vw - 24px)}.music-banner-inner{gap:10px;padding:12px 14px}.music-banner-sub{display:none}.music-banner-vinyl,.vinyl-disc{width:34px;height:34px}}.poster{position:relative;width:100%;aspect-ratio:3 / 2;overflow:hidden;border-radius:2px 2px 0 0}.poster-svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.poster-text{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;gap:.15em;z-index:2}.poster-char{font-family:"Noto Serif SC","Source Han Serif SC",serif;font-size:clamp(2rem,8vw,3rem);font-weight:700;color:#ffffffd9;text-shadow:0 2px 12px rgba(0,0,0,.3);letter-spacing:.1em;animation:posterCharIn .7s cubic-bezier(.16,1,.3,1) both}@keyframes posterCharIn{0%{opacity:0;filter:blur(8px);transform:translateY(8px) scale(1.1)}to{opacity:1;filter:blur(0);transform:translateY(0) scale(1)}}.poster-mood{position:absolute;top:12px;right:12px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.3);border-radius:50%;font-family:"Noto Serif SC",serif;font-size:.7rem;color:#ffffff8c;z-index:2;pointer-events:none}.poster-grain{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;pointer-events:none;opacity:.04;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.home-page{min-height:100dvh;background:var(--color-page);position:relative;overflow-x:hidden;padding-bottom:100px}.bg-ink{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:var(--z-below)}.bg-wash{position:absolute;border-radius:50%;filter:blur(80px);animation:bgBreath 24s ease-in-out infinite}.wash-main{width:60vw;height:60vw;max-width:600px;max-height:600px;top:-5%;left:-10%;background:radial-gradient(circle,rgba(160,148,132,.1) 0%,transparent 70%);animation-delay:0s}.wash-side{width:40vw;height:40vw;max-width:400px;max-height:400px;bottom:15%;right:-8%;background:radial-gradient(circle,rgba(140,128,112,.08) 0%,transparent 70%);animation-delay:-12s}.bg-line{position:absolute;top:0;left:12%;width:1px;height:100%;background:linear-gradient(180deg,transparent,rgba(15,15,15,.025) 30%,rgba(15,15,15,.025) 70%,transparent)}.hero{position:relative;z-index:var(--z-base);padding:64px 24px 56px;display:flex;flex-direction:column;align-items:center;text-align:center}.hero-visual{position:relative;margin-bottom:32px}.hero-brush{width:180px;height:36px;color:var(--ink-faint)}.hero-seal{position:absolute;top:-10px;right:-18px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:1px solid var(--seal-red);border-radius:50%;font-family:var(--font-ink);font-size:.72rem;color:var(--seal-red);opacity:.55;transition:opacity .4s,transform .4s var(--ease-out-expo)}.hero:hover .hero-seal{opacity:.8;transform:rotate(-6deg)}.hero-heading{font-family:var(--font-ink);font-size:clamp(1.5rem,5vw,2.5rem);font-weight:var(--font-weight-light);color:var(--ink-dark);line-height:1.9;letter-spacing:.12em;margin:0;animation:heroFadeIn .9s .15s var(--ease-out-expo) both}.hero-rule{width:48px;height:1px;background:linear-gradient(90deg,transparent,var(--ink-faint),transparent);margin-top:32px;animation:heroFadeIn .7s .4s var(--ease-out-expo) both}@keyframes heroFadeIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.feed{position:relative;z-index:var(--z-base);padding:0 20px}.feed-grid{display:grid;grid-template-columns:1fr;gap:28px;max-width:520px;margin:0 auto}.story-card{display:block;text-decoration:none;color:inherit;border-radius:var(--radius-sm);overflow:hidden;background:#fff;box-shadow:var(--shadow-card);transition:transform .45s var(--ease-out-expo),box-shadow .45s var(--ease-out-expo);animation:cardIn .55s var(--ease-out-expo) both}@keyframes cardIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.story-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-card-hover)}.story-card:active{transform:translateY(0);transition:transform .1s ease}.story-card .story-poster{width:100%}.card-info{padding:22px 24px}.card-title-row{display:flex;align-items:flex-start;gap:8px;margin-bottom:4px}.card-title{font-family:var(--font-ink);font-size:1.05rem;font-weight:var(--font-weight-semibold);color:var(--ink-black);margin:0;letter-spacing:.05em;line-height:1.5;flex:1}.card-author{font-family:var(--font-ui);font-size:var(--text-xs);color:var(--ink-wash);letter-spacing:.04em;margin-bottom:6px;display:block}.card-tags{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:8px}.ink-card__tag{display:inline-block;padding:1px 8px;background:#0f0f0f0a;border:1px solid rgba(15,15,15,.08);border-radius:10px;font-family:var(--font-ui);font-size:.68rem;color:var(--ink-medium);letter-spacing:.03em;line-height:1.8;white-space:nowrap}.music-badge{flex-shrink:0;display:inline-flex;align-items:center;padding:2px 8px;border-radius:10px;font-family:var(--font-ui);font-size:.68rem;letter-spacing:.04em;line-height:1.6;white-space:nowrap;margin-top:2px}.music-badge--song{background:#5a3c1e14;color:#5a3c1ebf;border:1px solid rgba(90,60,30,.15)}.music-badge--music{background:#28507812;color:#285078a6;border:1px solid rgba(40,80,120,.13)}.music-badge--pending{background:#966e1e12;color:#966e1e99;border:1px solid rgba(150,110,30,.13)}.feed-filter{display:flex;justify-content:flex-end;padding:0 20px 12px;max-width:560px;margin:-8px auto 0}.filter-btn{background:transparent;border:1px solid var(--ink-faint);border-radius:16px;padding:4px 14px;font-family:var(--font-ui);font-size:var(--text-xs);color:var(--ink-wash);cursor:pointer;letter-spacing:.04em;transition:all .25s var(--ease-out-expo)}.filter-btn:hover{border-color:var(--ink-medium);color:var(--ink-medium)}.filter-btn--active{background:var(--ink-dark);border-color:var(--ink-dark);color:#fff}.filter-btn--active:hover{background:var(--ink-medium);border-color:var(--ink-medium);color:#fff}.card-excerpt{font-family:var(--font-ink);font-size:var(--text-sm);color:var(--ink-light);line-height:1.75;margin:0 0 16px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-meta{display:flex;justify-content:space-between;align-items:center;padding-top:14px;border-top:1px solid rgba(15,15,15,.05)}.card-date{font-family:var(--font-ui);font-size:var(--text-2xs);color:var(--ink-faint);letter-spacing:.04em}.card-stats{display:flex;align-items:center;gap:14px}.card-likes{font-family:var(--font-ui);font-size:var(--text-2xs);color:var(--seal-red-light);letter-spacing:.04em}.card-comments{font-family:var(--font-ui);font-size:var(--text-2xs);color:var(--ink-wash);letter-spacing:.04em}.card-read{font-family:var(--font-ui);font-size:var(--text-2xs);color:var(--ink-wash);letter-spacing:.04em;transition:color .3s,transform .3s}.story-card:hover .card-read{color:var(--ink-medium);transform:translate(3px)}.loading{display:flex;justify-content:center;gap:12px;padding:120px 0}.load-text{font-family:var(--font-ink);font-size:var(--text-base);color:var(--ink-faint);letter-spacing:.15em;animation:loadPulse 1.8s ease-in-out infinite}.empty{text-align:center;padding:80px 20px;max-width:340px;margin:0 auto}.empty-circle{width:56px;height:56px;margin:0 auto 32px;display:flex;align-items:center;justify-content:center;border:1px solid var(--ink-faint);border-radius:50%;font-family:var(--font-ink);font-size:1rem;color:var(--ink-wash);transition:all .5s var(--ease-out-expo)}.empty:hover .empty-circle{border-color:var(--seal-red);color:var(--seal-red);opacity:.7}.empty-title{font-family:var(--font-ink);font-size:var(--text-base);color:var(--ink-medium);margin:0 0 8px;letter-spacing:.08em}.empty-hint{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--ink-wash);margin:0 0 44px;line-height:1.6}.empty-link{display:inline-block;padding:10px 36px;border:1px solid var(--ink-faint);border-radius:var(--radius-sm);text-decoration:none;font-family:var(--font-ui);font-size:var(--text-sm);color:var(--ink-medium);letter-spacing:.06em;transition:all .4s var(--ease-out-expo)}.empty-link:hover{color:#fff;background:var(--ink-black);border-color:var(--ink-black)}.fab{position:fixed;bottom:36px;left:50%;transform:translate(-50%);z-index:var(--z-dropdown)}.fab-btn{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:var(--ink-black);color:var(--paper-cream);box-shadow:0 2px 20px #0f0f0f26;transition:transform .4s var(--ease-out-expo),box-shadow .4s var(--ease-out-expo),background .3s;text-decoration:none}.fab-btn:hover{transform:scale(1.06);box-shadow:0 6px 32px #0f0f0f38;background:var(--ink-deep)}.fab-btn:active{transform:scale(.94);transition:transform .1s ease}.fab-icon{width:20px;height:20px}@media (min-width: 640px){.hero{padding:80px 32px 72px}.hero-heading{letter-spacing:.14em}.feed-grid{grid-template-columns:repeat(2,1fr);max-width:760px;gap:36px 32px}.story-card--hero{grid-column:1 / -1}.story-card--hero .card-title{font-size:1.2rem}.story-card:nth-child(2n){margin-top:48px}.story-card--hero{margin-top:0}.story-card--hero+.story-card:nth-child(2n){margin-top:0}}@media (min-width: 1024px){.feed-grid--bento{grid-template-columns:repeat(3,1fr);max-width:var(--content-max-editorial, 1200px);gap:32px 28px}.feed-grid--bento .story-card--hero{grid-column:span 2;grid-row:span 1;margin-top:0}.feed-grid--bento .story-card--hero .card-title{font-size:1.35rem}.feed-grid--bento .story-card--hero .skeleton-poster{height:220px}.story-card:nth-child(2n){margin-top:0}}.featured-strip{max-width:var(--content-max-editorial, 1200px);margin:0 auto 40px;padding:0 4px}.featured-scroll{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:16px;padding:4px 0 12px;scrollbar-width:none}.featured-scroll::-webkit-scrollbar{display:none}.featured-card{flex:0 0 260px;scroll-snap-align:start;text-decoration:none;color:inherit;border-radius:var(--radius-sm);overflow:hidden;background:#fff;box-shadow:var(--shadow-card);transition:transform .35s var(--ease-out-expo),box-shadow .35s var(--ease-out-expo);animation:cardIn .45s var(--ease-out-expo) both}.featured-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-card-hover)}.featured-card .story-poster{height:140px}.featured-info{padding:14px 16px}.featured-title{font-family:var(--font-ink);font-size:var(--text-sm);font-weight:var(--font-weight-semibold);color:var(--ink-deep);margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.featured-excerpt{font-family:var(--font-ink);font-size:var(--text-2xs);color:var(--ink-wash);line-height:1.5}.feed-grid--bento .story-card{position:relative}.feed-grid--bento .story-card:after{content:"";position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;border:1px solid var(--ink-faint);border-radius:calc(var(--radius-sm) + 2px);opacity:0;transform:scale(1.03);transition:opacity .5s var(--ease-bleed),transform .5s var(--ease-bleed);pointer-events:none;z-index:-1}.feed-grid--bento .story-card:hover:after{opacity:.45;transform:scale(1)}@media (min-width: 960px){.hero{padding:100px 40px 88px}.hero-heading{font-size:clamp(2rem,4vw,2.75rem)}.feed-grid{max-width:840px;gap:40px 36px}}@media (max-width: 480px){.hero{padding:48px 16px 40px}.feed{padding:0 12px}.feed-grid{gap:20px}.card-info{padding:18px 16px}.fab{bottom:28px}}.skeleton-poster{width:100%;height:160px;background:linear-gradient(90deg,var(--paper-aged) 25%,var(--paper-cream) 50%,var(--paper-aged) 75%);background-size:200% 100%;animation:shimmer 1.6s ease-in-out infinite;border-radius:var(--radius-sm) var(--radius-sm) 0 0}.skeleton-line{height:14px;background:linear-gradient(90deg,var(--paper-aged) 25%,var(--paper-cream) 50%,var(--paper-aged) 75%);background-size:200% 100%;animation:shimmer 1.6s ease-in-out infinite;border-radius:var(--radius-sm);margin-bottom:var(--space-2)}.skeleton-line--title{width:65%;height:20px;margin-bottom:var(--space-3)}.skeleton-line--text{width:90%}.skeleton-line--short{width:45%}.skeleton-line--meta{width:60px;height:10px}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.voice-input{display:flex;align-items:center;gap:var(--spacing-sm)}.voice-btn{width:44px;height:44px;border-radius:50%;border:1px solid var(--color-ink-light-gray);background:var(--color-white);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--duration-normal) var(--ease-out)}.voice-btn:hover{border-color:var(--color-ink-medium);background:var(--color-paper-dark)}.voice-btn:disabled{opacity:.5;cursor:not-allowed}.voice-btn.listening{border-color:var(--color-ink-dark);background:var(--color-ink-black)}.voice-btn.listening .voice-icon{color:var(--color-white)}.voice-icon{width:20px;height:20px;color:var(--color-ink-dark)}.interim-text{font-size:.875rem;color:var(--color-ink-light);font-style:italic}.not-supported{font-size:.75rem;color:var(--color-ink-gray)}.create-page{min-height:100dvh;display:flex;flex-direction:column;background:var(--color-page);position:relative}.create-page .page-header{display:flex;align-items:center;justify-content:center;padding:var(--space-3) var(--space-6);background:#faf8f4eb;backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);border-bottom:1px solid rgba(15,15,15,.06);position:sticky;top:var(--nav-height);z-index:var(--z-elevated);box-shadow:0 1px #fffc,0 2px 8px #0f0f0f0a}.create-page .back-btn{position:absolute;left:var(--space-4);width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid transparent;border-radius:50%;cursor:pointer;color:var(--ink-medium);transition:all var(--transition-fast) var(--ease-out-expo)}.create-page .back-btn:hover{background:#0f0f0f0a;border-color:var(--ink-faint);color:var(--ink-deep);transform:translate(-2px)}.create-page .back-btn:active{transform:translate(0) scale(.95)}.create-page .back-icon{width:20px;height:20px}.create-page .page-title{font-family:var(--font-ink);font-size:var(--text-base);font-weight:var(--font-weight-normal);letter-spacing:.25em;color:var(--ink-deep);animation:fadeIn .5s var(--ease-out-expo)}.form-container{flex:1;max-width:var(--content-narrow);margin:0 auto;padding:var(--space-10) var(--space-6) var(--space-16);width:100%}.story-form{display:flex;flex-direction:column;gap:0}.writing-panel{display:flex;flex-direction:column;gap:var(--space-8);padding:0}.music-panel{display:flex;flex-direction:column;gap:var(--space-5);padding:var(--space-8) 0;border-top:1px solid rgba(15,15,15,.06);margin-top:var(--space-8)}.char-count{display:block;font-family:var(--font-ui);font-size:var(--text-2xs);color:var(--ink-wash);text-align:right;margin-top:var(--space-1);letter-spacing:.04em}.form-group{position:relative}.title-input{width:100%;padding:var(--space-4) 0 var(--space-3);font-family:var(--font-ink);font-size:var(--text-2xl);font-weight:var(--font-weight-normal);color:var(--ink-deep);background:transparent;border:none;border-bottom:2px solid rgba(15,15,15,.08);letter-spacing:.06em;transition:border-color var(--transition-normal) var(--ease-out-expo)}.title-input::placeholder{color:var(--ink-faint);font-weight:var(--font-weight-light);letter-spacing:.08em}.title-input:focus{outline:none;border-bottom-color:#0f0f0f47;box-shadow:0 2px #0f0f0f0f}:root{--paper-line-height: 32px;--paper-line-color: rgba(15, 15, 15, .065);--paper-margin-color: rgba(200, 60, 60, .12)}.textarea-wrapper{position:relative;border-radius:var(--radius-lg);background:linear-gradient(to right,transparent 47px,var(--paper-margin-color) 47px,var(--paper-margin-color) 48px,transparent 48px),repeating-linear-gradient(to bottom,transparent 0px,transparent calc(var(--paper-line-height) - 1px),var(--paper-line-color) calc(var(--paper-line-height) - 1px),var(--paper-line-color) var(--paper-line-height)),var(--paper-mist, #faf9f6);background-position:0 calc(var(--space-6) + var(--paper-line-height) - 1px),0 var(--space-6),0 0;border:1px solid rgba(15,15,15,.08);box-shadow:0 1px 4px #0f0f0f0a,inset 0 1px #ffffffb3}.content-textarea{width:100%;min-height:320px;padding:var(--space-6) var(--space-6) var(--space-6) 60px;font-family:var(--font-ink);font-size:var(--text-base);line-height:var(--paper-line-height);color:var(--ink-dark);background:transparent;border:none;border-radius:var(--radius-lg);resize:none;letter-spacing:.015em;transition:box-shadow var(--transition-normal) var(--ease-out-expo);position:relative;z-index:1}.content-textarea::placeholder{color:var(--ink-wash);font-style:italic;line-height:var(--paper-line-height)}.content-textarea:focus{outline:none;box-shadow:none}.textarea-wrapper:focus-within{border-color:#0f0f0f24;box-shadow:0 0 0 3px #0f0f0f0a,0 2px 12px #0f0f0f0f,inset 0 1px #ffffffb3}.textarea-wrapper:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--radius-lg);background:url("data:image/svg+xml,%3Csvg viewBox='0 0 400 400' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");opacity:.022;pointer-events:none;z-index:0}.textarea-wrapper:after{content:"";position:absolute;top:0;left:0;bottom:0;width:48px;border-right:1px solid var(--paper-margin-color);border-radius:var(--radius-lg) 0 0 var(--radius-lg);background:#0f0f0f03;pointer-events:none;z-index:0}.voice-input-wrapper{position:absolute;bottom:var(--space-4);right:var(--space-4)}.voice-input-wrapper--active{animation:voicePulse 1.5s ease-in-out infinite}@keyframes voicePulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.08);opacity:.8}}.voice-ring{position:absolute;top:50%;left:50%;width:20px;height:20px;border:1px solid var(--ink-medium);border-radius:50%;transform:translate(-50%,-50%) scale(0);opacity:0}.voice-input-wrapper--active .voice-ring{animation:voiceRing 2s ease-out infinite}.voice-ring:nth-child(1){animation-delay:0s}.voice-ring:nth-child(2){animation-delay:.4s}.voice-ring:nth-child(3){animation-delay:.8s}@keyframes voiceRing{0%{transform:translate(-50%,-50%) scale(0);opacity:.5}to{transform:translate(-50%,-50%) scale(3);opacity:0}}.music-toggle{display:flex;align-items:center;gap:var(--space-2);font-family:var(--font-ui);font-size:var(--text-sm);color:var(--ink-medium);cursor:pointer;transition:color var(--transition-fast)}.music-toggle:hover{color:var(--ink-deep)}.music-toggle.disabled{color:var(--ink-wash);cursor:not-allowed}.music-toggle input[type=checkbox]{width:16px;height:16px;accent-color:var(--ink-deep);cursor:pointer}.music-toggle input[type=checkbox]:disabled{opacity:.5;cursor:not-allowed}.inline-purchase-link{font-family:var(--font-ui);font-size:var(--text-xs);color:var(--seal-red);text-underline-offset:2px;margin-left:var(--space-1)}.music-status{font-family:var(--font-ink);font-size:var(--text-sm);color:var(--ink-medium);text-align:center;animation:fadeIn .4s var(--ease-out-expo)}.music-options{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-5);background:#ffffff73;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(15,15,15,.05);border-radius:var(--radius-md);animation:fadeIn .35s var(--ease-out-expo)}.music-option{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.music-option label{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--ink-medium);white-space:nowrap;min-width:64px}.music-option select{flex:1;max-width:200px;padding:var(--space-2) var(--space-3);font-family:var(--font-ui);font-size:var(--text-sm);color:var(--ink-deep);background:#ffffffb3;border:1px solid rgba(15,15,15,.1);border-radius:var(--radius-sm);cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23555' stroke-width='1.5'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:32px;transition:all var(--transition-fast) var(--ease-out-expo)}.music-option select:focus{outline:none;border-color:var(--ink-medium);box-shadow:0 0 0 2px #0f0f0f0a}.music-option--lyrics,.music-option--mode{align-items:flex-start;flex-direction:column;gap:10px}.lyrics-mode-group{display:flex;flex-direction:column;gap:8px;width:100%}.lyrics-mode-choice{display:flex;align-items:flex-start;gap:10px;padding:10px 14px;border-radius:var(--radius-sm);border:1px solid rgba(15,15,15,.08);background:#ffffff80;cursor:pointer;transition:border-color .2s,background .2s}.lyrics-mode-choice input[type=radio]{margin-top:2px;flex-shrink:0;accent-color:var(--ink-dark)}.lyrics-mode-choice--active{border-color:var(--ink-medium);background:#0f0f0f08}.lyrics-mode-label{display:flex;flex-direction:column;gap:2px}.lyrics-mode-label strong{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--ink-dark);font-weight:500}.lyrics-mode-label em{font-family:var(--font-ui);font-size:var(--text-xs);color:var(--ink-wash);font-style:normal;line-height:1.4}.form-error{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--seal-red);text-align:center}.title-input--error{border-bottom-color:var(--seal-red)}.content-textarea--error{border-color:var(--seal-red)}.field-error{display:block;font-family:var(--font-ui);font-size:var(--text-2xs);color:var(--seal-red);margin-top:var(--space-1);animation:fadeIn .3s var(--ease-out-expo)}.form-actions{display:flex;justify-content:center;padding-top:var(--space-4)}.submit-btn{position:relative;padding:var(--space-4) var(--space-12);font-family:var(--font-ink);font-size:var(--text-base);font-weight:var(--font-weight-normal);letter-spacing:.22em;color:var(--paper-cream);background:var(--ink-deep);border:none;border-radius:var(--radius-md);cursor:pointer;overflow:hidden;transition:all var(--transition-normal) var(--ease-out-expo)}.submit-btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:radial-gradient(circle,rgba(255,255,255,.18) 0%,transparent 70%);transform:translate(-50%,-50%);transition:all .5s var(--ease-out-expo)}.submit-btn:hover:before{width:300%;height:300%}.submit-btn:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.12),transparent);transition:left .5s var(--ease-out-expo)}.submit-btn:hover:after{left:100%}.submit-btn:hover:not(:disabled){background:var(--ink-dark);box-shadow:0 8px 32px #0f0f0f47;transform:translateY(-2px)}.submit-btn:active:not(:disabled){transform:translateY(0) scale(.98)}.submit-btn:disabled{opacity:.4;cursor:not-allowed}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media (min-width: 768px){.form-container{max-width:none;padding:0;flex:1}.story-form{flex-direction:row;min-height:calc(100dvh - var(--nav-height) - 56px)}.writing-panel{flex:3;padding:var(--space-12) var(--space-10);border-right:1px solid rgba(15,15,15,.06);overflow-y:auto}.music-panel{flex:2;padding:var(--space-12) var(--space-8);background:var(--paper-cream);border-top:none;margin-top:0;overflow-y:auto}.music-panel .music-toggle{padding-bottom:var(--space-4);border-bottom:1px solid rgba(15,15,15,.05)}.music-panel .music-options{background:#ffffff8c;border:1px solid rgba(15,15,15,.06)}.content-textarea{min-height:380px}}@media (min-width: 1024px){.writing-panel{padding:var(--space-16) var(--space-14)}.music-panel{padding:var(--space-16) var(--space-10)}.content-textarea{min-height:440px;font-size:1.05rem}}@media (max-width: 640px){.form-container{padding:var(--space-6) var(--space-4) var(--space-12)}.title-input{font-size:var(--text-xl)}.content-textarea{min-height:260px}.submit-btn{width:100%;padding:var(--space-4) var(--space-8)}.music-options{padding:var(--space-4)}}@media (max-width: 480px){.create-page .page-header{padding:var(--space-2) var(--space-4)}.form-container{padding:var(--space-4) var(--space-3) var(--space-10)}.title-input{font-size:var(--text-lg)}.content-textarea{min-height:220px;font-size:.95rem;padding:var(--space-4) var(--space-4) var(--space-4) var(--space-4)}.textarea-wrapper{background:repeating-linear-gradient(to bottom,transparent 0px,transparent calc(var(--paper-line-height) - 1px),var(--paper-line-color) calc(var(--paper-line-height) - 1px),var(--paper-line-color) var(--paper-line-height)),var(--paper-mist, #faf9f6);background-position:0 var(--space-4),0 0}.textarea-wrapper:after{display:none}.music-option{flex-direction:column;align-items:flex-start;gap:var(--space-2)}.music-option select{max-width:100%;width:100%}}.like-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border:none;background:transparent;color:#bbb;cursor:pointer;border-radius:4px;transition:color .25s,transform .2s;font-family:inherit;font-size:.8rem}.like-btn:hover{color:#e07373;transform:scale(1.08)}.like-btn:active{transform:scale(.94)}.like-btn--liked{color:#d44}.like-btn--liked:hover{color:#c33}.like-btn--disabled{cursor:default;color:#ccc}.like-btn--disabled:hover{transform:none;color:#ccc}.like-icon{flex-shrink:0}.like-count{font-size:.78rem;letter-spacing:.05em}.comment-section{max-width:var(--content-width);margin:0 auto;padding:var(--space-8) var(--space-6) var(--space-16);width:100%}.cmt-heading{font-family:"Noto Serif SC","Source Han Serif SC",serif;font-size:var(--text-lg);font-weight:var(--font-weight-normal);color:var(--ink-deep);margin:0 0 var(--space-6);letter-spacing:.12em;text-align:center;position:relative}.cmt-heading:after{content:"";display:block;width:40px;height:1px;background:linear-gradient(90deg,transparent,var(--ink-medium),transparent);margin:var(--space-3) auto 0}.cmt-loading{text-align:center;color:var(--ink-light);font-family:"Noto Serif SC",serif;font-size:var(--text-sm)}.cmt-burned-notice{text-align:center;padding:var(--space-6);background:#e85a2c0a;border:1px solid rgba(232,90,44,.12);border-radius:var(--radius-md)}.cmt-burned-notice p{color:var(--ink-medium);font-size:var(--text-sm);font-style:italic;letter-spacing:.05em;margin:0}.cmt-form{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-5);background:#ffffff80;border:1px solid rgba(26,26,26,.06);border-radius:var(--radius-lg);margin-bottom:var(--space-8)}.cmt-author-badge{display:inline-flex;align-items:center;align-self:flex-start;padding:2px 12px;font-family:"Noto Serif SC",serif;font-size:var(--text-xs);color:var(--ink-medium);background:#1a1a1a0a;border-radius:100px;letter-spacing:.05em}.cmt-input-row{width:100%}.cmt-textarea{width:100%;padding:var(--space-3);font-family:"Noto Serif SC","Source Han Serif SC",serif;font-size:var(--text-sm);color:var(--ink-deep);background:transparent;border:none;border-bottom:1px solid rgba(26,26,26,.1);resize:none;outline:none;transition:border-color var(--transition-fast);line-height:1.8;letter-spacing:.03em}.cmt-textarea::placeholder{color:var(--ink-light)}.cmt-textarea:focus{border-bottom-color:var(--ink-medium)}.cmt-actions{display:flex;justify-content:space-between;align-items:center}.cmt-hint{font-size:var(--text-xs);color:var(--ink-light)}.cmt-submit{padding:6px 20px;font-family:"Noto Serif SC",serif;font-size:var(--text-sm);color:var(--ink-deep);background:transparent;border:1px solid var(--ink-medium);border-radius:var(--radius-md);cursor:pointer;letter-spacing:.08em;transition:all var(--transition-fast) var(--ease-out-expo)}.cmt-submit:hover:not(:disabled){background:var(--ink-deep);border-color:var(--ink-deep);color:var(--paper-white)}.cmt-submit:disabled{opacity:.4;cursor:not-allowed}.cmt-list{display:flex;flex-direction:column}.cmt-item{padding:var(--space-5) 0;border-bottom:1px solid rgba(26,26,26,.05);animation:fadeInUp .5s var(--ease-out-expo) both}.cmt-item:last-child{border-bottom:none}.cmt-meta{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-2)}.cmt-author{font-family:"Noto Serif SC",serif;font-size:var(--text-sm);font-weight:var(--font-weight-bold);color:var(--ink-deep);letter-spacing:.05em}.cmt-date{font-size:var(--text-xs);color:var(--ink-light);letter-spacing:.05em}.cmt-delete{margin-left:auto;display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:transparent;border:none;color:var(--ink-light);cursor:pointer;border-radius:50%;transition:all var(--transition-fast);opacity:0}.cmt-item:hover .cmt-delete{opacity:.5}.cmt-item:hover .cmt-delete:hover{opacity:1;color:var(--ember-orange);background:#e85a2c14}.cmt-text{font-size:var(--text-sm);color:var(--ink-dark);line-height:1.8;letter-spacing:.03em;margin:0}.cmt-footer{display:flex;align-items:center;margin-top:6px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.burn-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0a0a99;-webkit-backdrop-filter:blur(12px) saturate(80%);backdrop-filter:blur(12px) saturate(80%);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);animation:burnFadeIn .4s var(--ease-out-expo)}.burn-modal{width:340px;max-width:90vw;padding:var(--space-10) var(--space-8);background:var(--paper-white);border-radius:2px;text-align:center;box-shadow:0 0 0 1px #1a1a1a0a,0 8px 40px #0000001f;animation:burnModalIn .5s var(--ease-out-expo);transition:all .6s var(--ease-out-expo)}.burn-modal--ignited{background:#1a1a1a;color:#c8c0b4;box-shadow:0 0 0 1px #c8c0b414,0 0 80px #e85a2c33}.burn-modal-icon{color:var(--ember-orange);margin-bottom:var(--space-5);opacity:.8}.burn-modal-title{font-family:"Noto Serif SC","Source Han Serif SC",serif;font-size:var(--text-xl);font-weight:var(--font-weight-normal);color:var(--ink-deep);margin:0 0 var(--space-4);letter-spacing:.15em}.burn-modal--ignited .burn-modal-title{color:transparent}.burn-modal-story-name{font-family:"Noto Serif SC",serif;font-size:var(--text-base);color:var(--ink-medium);margin:0 0 var(--space-4);letter-spacing:.08em}.burn-modal--ignited .burn-modal-story-name{color:transparent}.burn-modal-warning{font-size:var(--text-sm);color:var(--ink-light);line-height:1.8;margin:0 0 var(--space-8);letter-spacing:.04em}.burn-modal--ignited .burn-modal-warning{color:transparent}.burn-modal-actions{display:flex;gap:var(--space-4);justify-content:center}.burn-cancel-btn,.burn-confirm-btn{padding:var(--space-3) var(--space-6);font-family:"Noto Serif SC",serif;font-size:var(--text-sm);letter-spacing:.1em;border-radius:2px;cursor:pointer;transition:all var(--transition-fast) var(--ease-out-expo)}.burn-cancel-btn{background:transparent;border:1px solid var(--ink-wash);color:var(--ink-medium)}.burn-cancel-btn:hover{border-color:var(--ink-medium);color:var(--ink-deep)}.burn-confirm-btn{background:transparent;border:1px solid var(--ember-orange);color:var(--ember-orange)}.burn-confirm-btn:hover{background:var(--ember-orange);color:#fff}.burn-modal-burning{display:flex;flex-direction:column;align-items:center;gap:var(--space-8)}.burn-fire-ring{position:relative;width:100px;height:100px}.burn-fire-core{position:absolute;top:15px;right:15px;bottom:15px;left:15px;background:radial-gradient(circle,var(--ember-orange) 0%,rgba(232,90,44,.3) 40%,transparent 70%);border-radius:50%;animation:corePulse .6s ease-in-out infinite alternate}@keyframes corePulse{0%{transform:scale(.8);opacity:.6}to{transform:scale(1.3);opacity:1}}.burn-ember{position:absolute;width:6px;height:6px;background:var(--ember-orange);border-radius:50%;box-shadow:0 0 8px var(--ember-orange);animation:emberOrbit 2s linear infinite}.burn-ember.e1{animation-delay:0s}.burn-ember.e2{animation-delay:.3s}.burn-ember.e3{animation-delay:.6s}.burn-ember.e4{animation-delay:.9s}.burn-ember.e5{animation-delay:1.2s}.burn-ember.e6{animation-delay:1.5s}@keyframes emberOrbit{0%{top:0;left:50%;transform:translate(-50%,-50%) scale(1);opacity:1}25%{top:50%;left:100%;transform:translate(-50%,-50%) scale(1.5);opacity:.8}50%{top:100%;left:50%;transform:translate(-50%,-50%) scale(.8);opacity:.4}75%{top:50%;left:0;transform:translate(-50%,-50%) scale(1.3);opacity:.7}to{top:0;left:50%;transform:translate(-50%,-50%) scale(1);opacity:1}}.burn-modal-ignited-text{font-family:"Noto Serif SC",serif;font-size:var(--text-sm);color:#8a8074;letter-spacing:.15em;animation:textFadeInOut 2.8s ease-in-out}@keyframes textFadeInOut{0%{opacity:0;transform:translateY(10px)}20%{opacity:.8;transform:translateY(0)}80%{opacity:.8;transform:translateY(0)}to{opacity:0;transform:translateY(-10px)}}@keyframes burnFadeIn{0%{opacity:0}to{opacity:1}}@keyframes burnModalIn{0%{opacity:0;transform:scale(.92) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.ink-player{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-6);background:var(--paper-mist);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(26,26,26,.08);border-radius:var(--radius-xl);min-width:300px;box-shadow:var(--shadow-mist);transition:all var(--transition-normal) var(--ease-out-expo)}.ink-player--playing{box-shadow:var(--shadow-mist),0 0 40px #1a1a1a1a;border-color:#1a1a1a1f}.ink-player__info{display:flex;flex-direction:column;align-items:center;gap:var(--space-1)}.ink-player__title{font-size:var(--text-base);font-weight:var(--font-weight-bold);color:var(--ink-deep);letter-spacing:.08em;animation:fadeInUp .5s var(--ease-out-expo)}.ink-player__title--empty{color:var(--ink-light);font-style:italic;font-weight:var(--font-weight-normal)}.ink-player__artist{font-size:var(--text-sm);color:var(--ink-medium);letter-spacing:.05em;animation:fadeInUp .5s var(--ease-out-expo) .1s forwards;opacity:0}.ink-player__waveform{display:flex;align-items:center;justify-content:center;gap:3px;height:40px;padding:var(--space-2) 0}.waveform-bar{width:3px;height:20%;background:linear-gradient(to top,var(--ink-light),var(--ink-medium));border-radius:2px;transition:height .1s ease}.ink-player--playing .waveform-bar{animation:waveform .8s ease-in-out infinite}.waveform-bar:nth-child(1){animation-delay:0s}.waveform-bar:nth-child(2){animation-delay:.1s}.waveform-bar:nth-child(3){animation-delay:.2s}.waveform-bar:nth-child(4){animation-delay:.3s}.waveform-bar:nth-child(5){animation-delay:.4s}.waveform-bar:nth-child(6){animation-delay:.5s}.waveform-bar:nth-child(7){animation-delay:.6s}.waveform-bar:nth-child(8){animation-delay:.7s}.waveform-bar:nth-child(9){animation-delay:.6s}.waveform-bar:nth-child(10){animation-delay:.5s}.waveform-bar:nth-child(11){animation-delay:.4s}.waveform-bar:nth-child(12){animation-delay:.3s}.waveform-bar:nth-child(13){animation-delay:.2s}.waveform-bar:nth-child(14){animation-delay:.1s}.waveform-bar:nth-child(15){animation-delay:0s}.ink-player:not(.ink-player--playing) .waveform-bar{height:20%!important;animation:none}.ink-player__controls{display:flex;align-items:center;justify-content:center;gap:var(--space-6)}.ink-player__btn{display:flex;align-items:center;justify-content:center;background:transparent;border:none;cursor:pointer;color:var(--ink-medium);font-size:var(--text-sm);padding:var(--space-3);border-radius:50%;transition:all var(--transition-fast) var(--ease-out-expo);position:relative}.ink-player__btn:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:var(--ink-deep);transform:scale(0);opacity:0;transition:all var(--transition-normal) var(--ease-out-expo)}.ink-player__btn:hover:before{transform:scale(1);opacity:.08}.ink-player__btn:hover{color:var(--ink-deep)}.ink-player__btn:active{transform:scale(.9)}.ink-player__btn svg{width:18px;height:18px;position:relative;z-index:1}.ink-player__btn--download{color:var(--ink-light)}.ink-player__btn--download:hover{color:var(--ink-deep)}.ink-player__btn--play{width:56px;height:56px;border:1px solid var(--ink-medium);color:var(--ink-deep)}.ink-player__btn--play:before{background:var(--ink-deep);opacity:0}.ink-player__btn--play:hover:before{opacity:.1}.ink-player--playing .ink-player__btn--play{border-color:var(--ink-deep);background:var(--ink-deep);color:var(--paper-white);box-shadow:0 0 20px #1a1a1a4d}.ink-player--playing .ink-player__btn--play:hover{box-shadow:0 0 30px #1a1a1a66}.ink-player__btn--play svg{width:20px;height:20px}.ink-player__btn--play:after{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:50%;border:2px solid var(--ember-orange);opacity:0;transform:scale(.8);transition:all var(--transition-normal) var(--ease-out-expo)}.ink-player--playing .ink-player__btn--play:after{opacity:.5;animation:playGlow 2s ease-in-out infinite}@keyframes playGlow{0%,to{transform:scale(1);opacity:.3}50%{transform:scale(1.2);opacity:0}}.ink-player__btn--skip{font-size:10px;letter-spacing:-2px}.ink-player__progress{display:flex;align-items:center;gap:var(--space-3)}.ink-player__time{font-size:var(--text-xs);color:var(--ink-light);min-width:40px;font-variant-numeric:tabular-nums;letter-spacing:.02em}.ink-player__time:first-child{text-align:right}.ink-player__track{flex:1;height:3px;background:#1a1a1a14;border-radius:2px;overflow:hidden;position:relative}.ink-player__track:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(90deg,transparent,transparent 4px,rgba(26,26,26,.03) 4px,rgba(26,26,26,.03) 5px)}.ink-player__fill{height:100%;background:linear-gradient(90deg,var(--ink-medium),var(--ink-deep));border-radius:2px;transition:width .1s linear;position:relative}.ink-player--playing .ink-player__fill:after{content:"";position:absolute;right:0;top:50%;width:8px;height:8px;background:var(--ink-deep);border-radius:50%;transform:translateY(-50%);box-shadow:0 0 10px #1a1a1a4d;opacity:0;transition:opacity var(--transition-fast)}.ink-player--playing .ink-player__fill:after{opacity:1}.ink-player__volume{display:flex;align-items:center;gap:var(--space-2)}.ink-player__volume-btn{display:flex;align-items:center;justify-content:center;background:transparent;border:none;cursor:pointer;color:var(--ink-light);padding:var(--space-1);transition:color var(--transition-fast)}.ink-player__volume-btn:hover{color:var(--ink-medium)}.ink-player__volume-slider{width:60px;height:2px;background:#1a1a1a1a;border-radius:1px;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.ink-player__volume-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:10px;height:10px;background:var(--ink-medium);border-radius:50%;cursor:pointer;transition:transform var(--transition-fast)}.ink-player__volume-slider::-webkit-slider-thumb:hover{transform:scale(1.2)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.ink-player__title--changing{animation:titleChange .5s var(--ease-out-expo)}@keyframes titleChange{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.detail-page{min-height:100vh;display:flex;flex-direction:column;background:var(--color-page);position:relative}.detail-page .page-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-6);background:var(--paper-mist);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-bottom:1px solid rgba(15,15,15,.05);position:sticky;top:0;z-index:var(--z-sticky)}.detail-page .back-btn,.detail-page .delete-btn{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid transparent;border-radius:50%;cursor:pointer;color:var(--ink-medium);transition:all var(--transition-fast) var(--ease-out-expo)}.detail-page .back-btn:hover,.detail-page .delete-btn:hover{background:#0f0f0f0a;border-color:var(--ink-faint);color:var(--ink-deep);transform:translate(-2px)}.detail-page .back-btn:active,.detail-page .delete-btn:active{transform:translate(0) scale(.95)}.detail-page .back-icon,.detail-page .delete-icon{width:20px;height:20px}.detail-page .header-actions{display:flex;gap:var(--space-2)}.burn-btn{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid transparent;border-radius:50%;cursor:pointer;color:var(--ink-medium);transition:all var(--transition-fast) var(--ease-out-expo)}.burn-btn:hover{background:#e85a2c14;border-color:var(--ember-orange);color:var(--ember-orange);transform:scale(1.05)}.burn-icon{width:20px;height:20px}.story-content{flex:1;max-width:var(--content-narrow);margin:0 auto;padding:var(--space-12) var(--space-6) var(--space-16);width:100%;animation:fadeInUp .7s var(--ease-out-expo)}.ink-decoration{margin-bottom:var(--space-10);animation:fadeIn .5s var(--ease-out-expo) .2s forwards;opacity:0}.ink-line{height:1px;background:linear-gradient(to right,transparent 0%,var(--ink-faint) 20%,var(--ink-wash) 50%,var(--ink-faint) 80%,transparent 100%);position:relative}.ink-line:before{content:"";position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.6),transparent);animation:inkFlow 5s ease-in-out infinite}@keyframes inkFlow{0%{left:-50%}to{left:150%}}.story-content article{animation:articleReveal .7s var(--ease-out-expo) .15s forwards;opacity:0}@keyframes articleReveal{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.story-title{font-family:var(--font-ink);font-size:clamp(1.75rem,4.5vw,2.5rem);font-weight:var(--font-weight-normal);color:var(--ink-deep);margin:0 0 var(--space-3);letter-spacing:.06em;line-height:1.35;position:relative}.story-title:after{content:"";position:absolute;bottom:-14px;left:0;width:56px;height:2px;background:linear-gradient(90deg,var(--ink-dark),transparent)}.story-date{display:block;font-family:var(--font-ui);font-size:var(--text-xs);color:var(--ink-wash);letter-spacing:.06em;margin-top:var(--space-8);animation:fadeIn .4s var(--ease-out-expo) .4s forwards;opacity:0}.story-tags{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-3);animation:fadeIn .4s var(--ease-out-expo) .5s forwards;opacity:0}.story-tag{display:inline-block;padding:2px 10px;background:var(--paper-aged, rgba(139, 109, 56, .08));color:var(--ink-wash);border:1px solid var(--ink-faint, rgba(139, 109, 56, .2));border-radius:12px;font-size:var(--text-xs);font-family:var(--font-ui);letter-spacing:.04em}.story-actions-row{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-5)}.story-body{margin-top:var(--space-10)}.story-body p{font-family:var(--font-ink);font-size:var(--text-base);line-height:2.1;color:var(--ink-dark);margin:0 0 var(--space-6);letter-spacing:.015em;animation:fadeInUp .55s var(--ease-out-expo) forwards;opacity:0;max-width:65ch}.story-body p:nth-child(1){animation-delay:.2s}.story-body p:nth-child(2){animation-delay:.25s}.story-body p:nth-child(3){animation-delay:.3s}.story-body p:nth-child(4){animation-delay:.35s}.story-body p:nth-child(5){animation-delay:.4s}.story-body p:nth-child(6){animation-delay:.45s}.story-body p:nth-child(7){animation-delay:.5s}.story-body p:nth-child(8){animation-delay:.55s}.story-body p:last-child{margin-bottom:0}.story-body p:first-child:first-letter{font-size:3.5em;float:left;line-height:.75;padding-right:8px;padding-top:4px;color:var(--ink-deep);font-weight:var(--font-weight-light)}.reading-progress-line{position:fixed;top:0;width:1px;height:100vh;background:#0f0f0f0f;z-index:var(--z-below, -1);pointer-events:none}.music-section{position:sticky;bottom:0;background:var(--paper-mist);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-top:1px solid rgba(15,15,15,.06);padding:10px var(--space-6);margin:var(--space-12) calc(-1 * var(--space-6)) 0;width:calc(100% + var(--space-6) * 2);max-width:none;z-index:var(--z-sticky, 20)}.music-empty{max-width:var(--content-narrow);margin:var(--space-8) auto 0;padding:0 var(--space-6);width:100%;text-align:center}.music-empty-hint{font-family:var(--font-ink);font-size:var(--text-sm);color:var(--ink-wash)}@media (max-width: 640px){.detail-page .page-header{padding:var(--space-2) var(--space-4)}.story-content{padding:var(--space-8) var(--space-4) var(--space-12)}.story-title{font-size:clamp(1.35rem,5vw,1.75rem)}.story-body p{font-size:.95rem;line-height:1.95;max-width:none}.music-section{padding:8px var(--space-4);margin:var(--space-10) calc(-1 * var(--space-4)) 0;width:calc(100% + var(--space-4) * 2)}}@media (max-width: 480px){.detail-page .page-header{padding:var(--space-2) var(--space-3)}.story-content{padding:var(--space-6) var(--space-3) var(--space-10)}.story-body{margin-top:var(--space-8)}}.login-page{min-height:100dvh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;background:var(--color-page)}.login-page .ink-wash-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--color-page);z-index:0}.login-page .ink-blob{position:absolute;border-radius:50%;filter:blur(80px);opacity:.35;animation:bgBreath 24s ease-in-out infinite}.login-page .blob-1{width:420px;height:420px;background:radial-gradient(circle,rgba(15,15,15,.1) 0%,transparent 70%);top:-120px;right:-120px;animation-delay:0s}.login-page .blob-2{width:300px;height:300px;background:radial-gradient(circle,rgba(140,128,112,.08) 0%,transparent 70%);bottom:-60px;left:-60px;animation-delay:-12s}.login-page .blob-3{width:200px;height:200px;background:radial-gradient(circle,rgba(160,148,132,.06) 0%,transparent 70%);top:55%;left:30%;animation-delay:-6s}.login-page .login-container{position:relative;z-index:1;width:100%;max-width:400px;margin:0 var(--space-6);padding:var(--space-12) var(--space-8);background:var(--paper-mist);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(15,15,15,.06);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);animation:fadeInUp .6s var(--ease-out-expo)}.login-page .login-header{text-align:center;margin-bottom:var(--space-10)}.login-page .login-title{font-family:var(--font-ink);font-size:var(--text-3xl);font-weight:var(--font-weight-light);color:var(--ink-deep);margin:0 0 var(--space-2);letter-spacing:.12em}.login-page .login-subtitle{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--ink-medium);margin:0;letter-spacing:.04em}.login-page .login-form{display:flex;flex-direction:column;gap:var(--space-5)}.login-page .form-group{display:flex;flex-direction:column;gap:var(--space-1)}.login-page .form-label{font-family:var(--font-ui);font-size:var(--text-xs);color:var(--ink-medium);letter-spacing:.04em}.login-page .form-input{padding:var(--space-3) var(--space-4);font-family:var(--font-ink);font-size:var(--text-base);color:var(--ink-deep);background:#fff9;border:1px solid rgba(15,15,15,.08);border-radius:var(--radius-sm);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.login-page .form-input:focus{outline:none;border-color:var(--ink-faint);box-shadow:0 0 0 3px #0f0f0f0a}.login-page .form-input::placeholder{color:var(--ink-wash);font-style:italic}.login-page .error-message{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--seal-red);text-align:center;padding:var(--space-3);background:#b8382a0d;border-radius:var(--radius-sm);border:1px solid rgba(184,56,42,.1)}.login-page .submit-btn{margin-top:var(--space-2);padding:var(--space-3) 0;font-family:var(--font-ink);font-size:var(--text-base);font-weight:var(--font-weight-normal);letter-spacing:.15em;color:var(--paper-cream);background:var(--ink-deep);border:none;border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-normal) var(--ease-out-expo),transform var(--transition-fast) var(--ease-out-expo),box-shadow var(--transition-normal) var(--ease-out-expo)}.login-page .submit-btn:hover:not(:disabled){background:var(--ink-dark);box-shadow:0 8px 32px #0f0f0f38;transform:translateY(-1px)}.login-page .submit-btn:active:not(:disabled){transform:translateY(0) scale(.98)}.login-page .submit-btn:disabled{opacity:.4;cursor:not-allowed}.login-page .login-footer{margin-top:var(--space-8);text-align:center}.login-page .login-footer p{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--ink-medium);margin:0}.login-page .link{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--seal-red);text-decoration:none;margin-left:var(--space-1);transition:color var(--transition-fast),opacity var(--transition-fast)}.login-page .link:hover{color:var(--seal-red-dark);opacity:.85}@media (max-width: 480px){.login-page .login-container{margin:0 var(--space-4);padding:var(--space-8) var(--space-6)}.login-page .login-title{font-size:var(--text-2xl)}}.register-page{min-height:100dvh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;background:var(--color-page)}.register-page .ink-wash-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--color-page);z-index:0}.register-page .ink-blob{position:absolute;border-radius:50%;filter:blur(80px);opacity:.35;animation:bgBreath 24s ease-in-out infinite}.register-page .blob-1{width:420px;height:420px;background:radial-gradient(circle,rgba(15,15,15,.1) 0%,transparent 70%);top:-120px;left:-120px;animation-delay:0s}.register-page .blob-2{width:300px;height:300px;background:radial-gradient(circle,rgba(140,128,112,.08) 0%,transparent 70%);bottom:-60px;right:-60px;animation-delay:-12s}.register-page .blob-3{width:200px;height:200px;background:radial-gradient(circle,rgba(160,148,132,.06) 0%,transparent 70%);top:35%;right:20%;animation-delay:-6s}.register-page .register-container{position:relative;z-index:1;width:100%;max-width:420px;margin:0 var(--space-6);padding:var(--space-12) var(--space-8);background:var(--paper-mist);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(15,15,15,.06);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);animation:fadeInUp .6s var(--ease-out-expo)}.register-page .register-header{text-align:center;margin-bottom:var(--space-10)}.register-page .register-title{font-family:var(--font-ink);font-size:var(--text-3xl);font-weight:var(--font-weight-light);color:var(--ink-deep);margin:0 0 var(--space-2);letter-spacing:.12em}.register-page .register-subtitle{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--ink-medium);margin:0;letter-spacing:.04em}.register-page .register-form{display:flex;flex-direction:column;gap:var(--space-4)}.register-page .form-group{display:flex;flex-direction:column;gap:var(--space-1)}.register-page .form-label{font-family:var(--font-ui);font-size:var(--text-xs);color:var(--ink-medium);letter-spacing:.04em}.register-page .required{color:var(--seal-red)}.register-page .form-input{padding:var(--space-3) var(--space-4);font-family:var(--font-ink);font-size:var(--text-base);color:var(--ink-deep);background:#fff9;border:1px solid rgba(15,15,15,.08);border-radius:var(--radius-sm);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.register-page .form-input:focus{outline:none;border-color:var(--ink-faint);box-shadow:0 0 0 3px #0f0f0f0a}.register-page .form-input::placeholder{color:var(--ink-wash);font-style:italic}.register-page .error-message{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--seal-red);text-align:center;padding:var(--space-3);background:#b8382a0d;border-radius:var(--radius-sm);border:1px solid rgba(184,56,42,.1)}.register-page .submit-btn{margin-top:var(--space-2);padding:var(--space-3) 0;font-family:var(--font-ink);font-size:var(--text-base);font-weight:var(--font-weight-normal);letter-spacing:.15em;color:var(--paper-cream);background:var(--ink-deep);border:none;border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-normal) var(--ease-out-expo),transform var(--transition-fast) var(--ease-out-expo),box-shadow var(--transition-normal) var(--ease-out-expo)}.register-page .submit-btn:hover:not(:disabled){background:var(--ink-dark);box-shadow:0 8px 32px #0f0f0f38;transform:translateY(-1px)}.register-page .submit-btn:active:not(:disabled){transform:translateY(0) scale(.98)}.register-page .submit-btn:disabled{opacity:.4;cursor:not-allowed}.register-page .register-footer{margin-top:var(--space-8);text-align:center}.register-page .register-footer p{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--ink-medium);margin:0}.register-page .link{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--seal-red);text-decoration:none;margin-left:var(--space-1);transition:color var(--transition-fast),opacity var(--transition-fast)}.register-page .link:hover{color:var(--seal-red-dark);opacity:.85}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 480px){.register-page .register-container{margin:0 var(--space-4);padding:var(--space-8) var(--space-6)}.register-page .register-title{font-size:var(--text-2xl)}}.profile-page{min-height:100dvh;position:relative;background:var(--color-page)}.profile-page .ink-wash-bg{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-page);z-index:var(--z-below)}.profile-page .ink-blob{position:absolute;border-radius:50%;filter:blur(80px);opacity:.3;animation:bgBreath 24s ease-in-out infinite}.profile-page .blob-1{width:320px;height:320px;background:radial-gradient(circle,rgba(15,15,15,.08) 0%,transparent 70%);top:-60px;right:-60px;animation-delay:0s}.profile-page .blob-2{width:260px;height:260px;background:radial-gradient(circle,rgba(140,128,112,.06) 0%,transparent 70%);bottom:20%;left:-80px;animation-delay:-12s}.profile-page .blob-3{width:180px;height:180px;background:radial-gradient(circle,rgba(160,148,132,.05) 0%,transparent 70%);top:40%;right:10%;animation-delay:-6s}@keyframes bgBreath{0%,to{transform:translate(0) scale(1)}33%{transform:translate(2%,1.5%) scale(1.04)}66%{transform:translate(-1.5%,-1%) scale(.97)}}.profile-header{position:sticky;top:var(--nav-height);z-index:var(--z-sticky);display:flex;justify-content:space-between;align-items:center;padding:var(--space-4) var(--space-8);background:var(--paper-mist);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-bottom:1px solid rgba(15,15,15,.05)}.profile-title{font-family:var(--font-ink);font-size:var(--text-xl);font-weight:var(--font-weight-normal);color:var(--ink-deep);margin:0;letter-spacing:.08em}.logout-btn{padding:var(--space-2) var(--space-4);font-family:var(--font-ui);font-size:var(--text-xs);color:var(--ink-medium);background:transparent;border:1px solid rgba(15,15,15,.1);border-radius:var(--radius-sm);cursor:pointer;letter-spacing:.04em;transition:all var(--transition-fast) var(--ease-out-expo)}.logout-btn:hover{color:var(--seal-red);border-color:var(--seal-red);background:#b8382a0a}.profile-content{position:relative;z-index:var(--z-base);max-width:var(--content-narrow);margin:0 auto;padding:var(--space-8) var(--space-6) var(--space-16)}.user-info-section{display:flex;align-items:center;gap:var(--space-5);padding:var(--space-6);background:#ffffffb3;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(15,15,15,.05);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);margin-bottom:var(--space-6)}.user-avatar{width:64px;height:64px;border-radius:50%;background:var(--ink-deep);color:var(--paper-cream);display:flex;align-items:center;justify-content:center;font-family:var(--font-ink);font-size:var(--text-xl);font-weight:var(--font-weight-light);flex-shrink:0}.user-details{flex:1;min-width:0}.user-nickname{font-family:var(--font-ink);font-size:var(--text-lg);font-weight:var(--font-weight-semibold);color:var(--ink-deep);margin:0 0 var(--space-1);letter-spacing:.04em}.user-email{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--ink-light);margin:0}.usage-section{margin-bottom:var(--space-6)}.section-title{font-family:var(--font-ui);font-size:var(--text-xs);font-weight:var(--font-weight-semibold);color:var(--ink-medium);margin:0 0 var(--space-3);letter-spacing:.08em;text-transform:uppercase}.usage-card{display:flex;justify-content:space-between;align-items:center;padding:var(--space-6);background:#ffffffb3;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(15,15,15,.05);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.usage-count{display:flex;flex-direction:column}.count-number{font-family:var(--font-ink);font-size:var(--text-4xl);font-weight:var(--font-weight-light);color:var(--ink-deep);line-height:1}.count-label{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--ink-light);margin-top:var(--space-1)}.buy-btn{display:inline-flex;align-items:center;padding:var(--space-2) var(--space-6);font-family:var(--font-ui);font-size:var(--text-sm);color:var(--paper-cream);background:var(--ink-deep);border-radius:var(--radius-md);text-decoration:none;letter-spacing:.06em;transition:all var(--transition-normal) var(--ease-out-expo)}.buy-btn:hover{background:var(--ink-dark);box-shadow:0 6px 24px #0f0f0f2e;transform:translateY(-1px)}.usage-hint{font-family:var(--font-ui);font-size:var(--text-2xs);color:var(--ink-wash);margin:var(--space-3) 0 0;text-align:center}.stories-section{margin-bottom:var(--space-6)}.loading-text{font-family:var(--font-ink);color:var(--ink-wash);text-align:center;padding:var(--space-8);letter-spacing:.08em}.empty-stories{text-align:center;padding:var(--space-12) var(--space-6);background:#ffffff80;border:1px solid rgba(15,15,15,.05);border-radius:var(--radius-lg);display:flex;flex-direction:column;align-items:center;gap:var(--space-4)}.empty-ink-illustration{opacity:.7;animation:inkBloom 4s ease-in-out infinite}@keyframes inkBloom{0%,to{opacity:.5;transform:scale(1)}50%{opacity:.8;transform:scale(1.03)}}.empty-stories-text{font-family:var(--font-ink);font-size:var(--text-base);color:var(--ink-medium);margin:0}.create-link{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--seal-red);text-decoration:none;transition:opacity var(--transition-fast)}.create-link:hover{opacity:.8}.stories-list{list-style:none;padding:0;margin:0;background:#ffffffb3;border:1px solid rgba(15,15,15,.05);border-radius:var(--radius-lg);overflow:hidden}.story-item{border-bottom:1px solid rgba(15,15,15,.04)}.story-item:last-child{border-bottom:none}.story-link{display:flex;justify-content:space-between;align-items:center;padding:var(--space-4) var(--space-5);text-decoration:none;transition:background var(--transition-fast)}.story-link:hover{background:#0f0f0f05}.story-title{font-family:var(--font-ink);font-size:var(--text-base);color:var(--ink-deep);letter-spacing:.03em}.story-date{font-family:var(--font-ui);font-size:var(--text-2xs);color:var(--ink-wash);white-space:nowrap}.quick-actions{display:flex;gap:var(--space-3)}.action-btn{flex:1;padding:var(--space-3) var(--space-6);font-family:var(--font-ui);font-size:var(--text-sm);text-align:center;text-decoration:none;letter-spacing:.06em;border-radius:var(--radius-md);transition:all var(--transition-normal) var(--ease-out-expo)}.action-btn:first-child{color:var(--paper-cream);background:var(--ink-deep)}.action-btn:first-child:hover{background:var(--ink-dark);box-shadow:0 6px 24px #0f0f0f2e;transform:translateY(-1px)}.action-btn.secondary{color:var(--ink-medium);background:transparent;border:1px solid rgba(15,15,15,.1)}.action-btn.secondary:hover{color:var(--ink-deep);border-color:var(--ink-faint);background:#0f0f0f05}@media (max-width: 640px){.profile-header{padding:var(--space-3) var(--space-4)}.profile-content{padding:var(--space-6) var(--space-4) var(--space-12)}.user-info-section{flex-direction:column;text-align:center;gap:var(--space-3)}.usage-card{flex-direction:column;gap:var(--space-4);text-align:center}.quick-actions{flex-direction:column}}.pp-page{min-height:100vh;background:var(--color-page);display:flex;flex-direction:column}.pp-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-5);background:var(--paper-mist);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(15,15,15,.05);position:sticky;top:var(--nav-height);z-index:var(--z-elevated)}.pp-back{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid transparent;border-radius:50%;cursor:pointer;color:var(--ink-medium);transition:all var(--transition-fast);flex-shrink:0}.pp-back:hover{background:#0f0f0f0d;border-color:var(--ink-faint);color:var(--ink-deep);transform:translate(-2px)}.pp-header-label{font-family:var(--font-ink);font-size:var(--text-sm);color:var(--ink-medium);letter-spacing:.12em}.pp-hero{text-align:center;padding:var(--space-10) var(--space-5) var(--space-8);position:relative;overflow:hidden}.pp-hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 70% 60% at 50% 0%,rgba(184,56,42,.04),transparent 70%);pointer-events:none}.pp-hero-seal{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;font-family:var(--font-ink);font-size:22px;color:var(--paper-cream);background:var(--seal-red);border-radius:6px;margin-bottom:var(--space-5);box-shadow:0 4px 20px #b8382a47;position:relative}.pp-hero-seal:after{content:"";position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;border:1px solid rgba(184,56,42,.3);border-radius:8px}.pp-hero-title{font-family:var(--font-ink);font-size:var(--text-3xl);font-weight:var(--font-weight-semibold);color:var(--ink-deep);line-height:1.5;letter-spacing:.04em;margin-bottom:var(--space-3)}.pp-hero-sub{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--ink-wash);letter-spacing:.08em;margin-bottom:var(--space-6)}.pp-hero-divider{display:flex;justify-content:center}.pp-hero-divider span{display:block;width:40px;height:1px;background:linear-gradient(90deg,transparent,var(--ink-faint),transparent)}.pp-content{max-width:600px;width:100%;margin:0 auto;padding:0 var(--space-5) var(--space-16);display:flex;flex-direction:column;gap:var(--space-6)}.pp-sub-banner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-4) var(--space-5);background:#fff;border:1px solid rgba(15,15,15,.06);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.pp-sub-banner-left{display:flex;align-items:center;gap:var(--space-3)}.pp-sub-icon{font-size:22px;color:var(--indigo);line-height:1}.pp-sub-name{font-family:var(--font-ink);font-size:var(--text-base);font-weight:var(--font-weight-semibold);color:var(--ink-deep);letter-spacing:.04em}.pp-sub-meta{font-family:var(--font-ui);font-size:var(--text-xs);color:var(--ink-light);margin-top:2px}.pp-sub-upgrade{flex-shrink:0;padding:var(--space-2) var(--space-4);font-family:var(--font-ui);font-size:var(--text-xs);letter-spacing:.06em;color:var(--seal-red);background:#b8382a0f;border:1px solid rgba(184,56,42,.2);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;transition:all var(--transition-fast)}.pp-sub-upgrade:hover{background:#b8382a1a;border-color:#b8382a59}.pp-renew-hint{font-family:var(--font-ui);font-size:var(--text-xs);color:var(--ink-wash);text-align:center;letter-spacing:.08em;margin:calc(-1 * var(--space-2)) 0}.pp-plans{display:flex;flex-direction:column;gap:var(--space-4)}.pp-plan{background:#fff;border:1.5px solid rgba(15,15,15,.07);border-radius:var(--radius-xl);padding:var(--space-6) var(--space-6) var(--space-5);position:relative;overflow:hidden;cursor:pointer;transition:border-color var(--transition-fast),box-shadow var(--transition-normal) var(--ease-out-expo),transform var(--transition-normal) var(--ease-out-expo);box-shadow:var(--shadow-card)}.pp-plan:hover{transform:translateY(-2px);box-shadow:var(--shadow-card-hover)}.pp-plan--selected{border-color:var(--plan-color, var(--ink-dark));box-shadow:0 0 0 3px color-mix(in srgb,var(--plan-color, var(--ink-dark)) 12%,transparent),var(--shadow-card-hover);transform:translateY(-2px)}.pp-plan--current{opacity:.45;cursor:default;pointer-events:none}.pp-plan--recommended{border-color:#8b451359}.pp-plan-strip{position:absolute;top:0;left:0;right:0;height:3px;background:var(--plan-color, var(--ink-faint));opacity:.7}.pp-plan--selected .pp-plan-strip{opacity:1}.pp-plan-badge{position:absolute;top:14px;right:16px;font-family:var(--font-ui);font-size:var(--text-2xs);font-weight:var(--font-weight-semibold);letter-spacing:.08em;padding:3px 10px;border-radius:var(--radius-full)}.pp-plan-badge--rec{background:linear-gradient(135deg,#8b4513,#c47a2e);color:#fff}.pp-plan-badge--up{background:#3a4f8b1a;color:var(--indigo);border:1px solid rgba(58,79,139,.25)}.pp-plan-badge--cur{background:#0f0f0f0f;color:var(--ink-medium)}.pp-plan-head{display:flex;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-4)}.pp-plan-icon{font-size:24px;line-height:1;color:var(--plan-color, var(--ink-medium));flex-shrink:0;margin-top:2px}.pp-plan-name{font-family:var(--font-ink);font-size:var(--text-lg);font-weight:var(--font-weight-semibold);color:var(--ink-deep);letter-spacing:.06em;line-height:1.3}.pp-plan-tagline{font-family:var(--font-ui);font-size:var(--text-xs);color:var(--ink-wash);letter-spacing:.08em;margin-top:2px}.pp-plan-price-wrap{display:flex;align-items:baseline;gap:3px;margin-bottom:var(--space-3)}.pp-plan-price-orig{font-family:var(--font-ink);font-size:var(--text-sm);color:var(--ink-faint);text-decoration:line-through;margin-right:4px}.pp-plan-currency{font-family:var(--font-ink);font-size:var(--text-lg);color:var(--ink-medium)}.pp-plan-amount{font-family:var(--font-ink);font-size:var(--text-5xl);font-weight:var(--font-weight-semibold);color:var(--ink-deep);line-height:1}.pp-plan-period{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--ink-light);margin-left:2px}.pp-plan-limit{display:inline-flex;align-items:center;gap:4px;padding:4px 12px;background:#0f0f0f0a;border-radius:var(--radius-full);font-family:var(--font-ui);font-size:var(--text-xs);color:var(--ink-medium);letter-spacing:.04em;margin-bottom:var(--space-4)}.pp-plan-sep{height:1px;background:#0f0f0f0d;margin:0 0 var(--space-4)}.pp-plan-features{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-2)}.pp-plan-feature{display:flex;align-items:center;gap:var(--space-2);font-family:var(--font-ui);font-size:var(--text-sm);color:var(--ink-medium);line-height:1.4}.pp-feature-dot{width:5px;height:5px;border-radius:50%;background:var(--plan-color, var(--ink-faint));flex-shrink:0;opacity:.7}.pp-plan--selected .pp-feature-dot{opacity:1}.pp-plan-check{position:absolute;bottom:18px;right:20px;width:24px;height:24px;border-radius:50%;background:var(--plan-color, var(--ink-dark));display:flex;align-items:center;justify-content:center;color:#fff}.pp-cta-wrap{display:flex;flex-direction:column;align-items:center;gap:var(--space-3)}.pp-cta{width:100%;padding:var(--space-4) var(--space-5);font-family:var(--font-ink);font-size:var(--text-base);letter-spacing:.1em;color:var(--paper-cream);background:var(--ink-deep);border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-normal) var(--ease-out-expo);box-shadow:0 4px 16px #0f0f0f2e}.pp-cta:hover:not(:disabled){background:var(--ink-dark);transform:translateY(-1px);box-shadow:0 8px 32px #0f0f0f38}.pp-cta:active:not(:disabled){transform:translateY(0) scale(.98)}.pp-cta:disabled{background:var(--ink-faint);cursor:default;box-shadow:none}.pp-cta-note{font-family:var(--font-ui);font-size:var(--text-xs);color:var(--ink-faint);letter-spacing:.06em;text-align:center}.pp-trust{display:flex;align-items:center;justify-content:center;gap:var(--space-4);padding-top:var(--space-2)}.pp-trust-item{display:flex;align-items:center;gap:var(--space-1);font-family:var(--font-ui);font-size:var(--text-xs);color:var(--ink-wash)}.pp-trust-icon{font-size:14px}.pp-trust-dot{width:3px;height:3px;border-radius:50%;background:var(--ink-faint)}.pp-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:60vh;gap:var(--space-3)}.pp-loading-char{font-family:var(--font-ink);font-size:40px;color:var(--ink-faint);animation:loadPulse 1.8s ease-in-out infinite}.pp-loading-text{font-family:var(--font-ui);font-size:var(--text-xs);color:var(--ink-faint);letter-spacing:.15em;animation:loadPulse 1.8s ease-in-out infinite}@keyframes loadPulse{0%,to{opacity:.2}50%{opacity:.7}}@media (max-width: 480px){.pp-hero-title{font-size:var(--text-2xl)}.pp-content{padding:0 var(--space-4) var(--space-12)}.pp-plan{padding:var(--space-5) var(--space-4) var(--space-4)}.pp-plan-amount{font-size:var(--text-4xl)}.pp-trust{flex-wrap:wrap;gap:var(--space-3)}}.checkout-page{min-height:100vh;background:linear-gradient(135deg,#0f0c29,#1a1a2e,#16213e);display:flex;flex-direction:column;padding-bottom:40px}.page-header{display:flex;align-items:center;gap:12px;padding:20px 24px 12px;border-bottom:1px solid rgba(255,255,255,.08)}.back-btn{background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:8px;cursor:pointer;display:flex;align-items:center;color:#c8bfff;transition:background .2s}.back-btn:hover{background:#ffffff1f}.back-icon{width:20px;height:20px;stroke:currentColor}.page-title{font-size:18px;font-weight:600;color:#fff;margin:0}.checkout-content{max-width:520px;width:100%;margin:0 auto;padding:24px 20px;display:flex;flex-direction:column;gap:20px}.plan-detail-card{background:linear-gradient(135deg,#6c5ce72e,#a29bfe1a);border:1px solid rgba(162,155,254,.3);border-radius:20px;padding:28px 24px;position:relative;overflow:hidden}.plan-detail-card:before{content:"";position:absolute;top:-60px;right:-60px;width:160px;height:160px;background:radial-gradient(circle,rgba(162,155,254,.15),transparent 70%);pointer-events:none}.plan-detail-header{display:flex;align-items:center;gap:10px;margin-bottom:16px}.plan-badge{display:inline-block;background:linear-gradient(90deg,#a29bfe,#6c5ce7);color:#fff;font-size:13px;font-weight:700;padding:5px 14px;border-radius:20px;letter-spacing:.5px}.upgrade-tag{background:#fdcb6e2e;border:1px solid rgba(253,203,110,.5);color:#fdcb6e;font-size:11px;font-weight:600;padding:3px 10px;border-radius:10px}.plan-price-display{display:flex;align-items:baseline;gap:6px;margin-bottom:14px}.plan-price-original{font-size:16px;color:#ffffff59;text-decoration:line-through}.plan-price-main{font-size:36px;font-weight:800;color:#fff;line-height:1}.plan-price-unit{font-size:14px;color:#ffffff80}.plan-description{font-size:13px;color:#fff9;margin:0 0 20px;line-height:1.5}.plan-features{list-style:none;padding:0;margin:0 0 20px;display:flex;flex-direction:column;gap:10px}.plan-feature-item{display:flex;align-items:center;gap:10px;font-size:14px;color:#ffffffd9}.feature-icon{font-size:18px;width:24px;text-align:center;flex-shrink:0}.feature-text{line-height:1.4}.plan-limit-badge{display:inline-flex;align-items:center;gap:6px;background:#a29bfe1f;border:1px solid rgba(162,155,254,.25);border-radius:12px;padding:6px 16px;font-size:13px;color:#a29bfe;font-weight:600}.order-section{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:16px 20px}.order-row{display:flex;justify-content:space-between;align-items:center}.order-label{font-size:14px;color:#fff9}.qty-control{display:flex;align-items:center;gap:12px}.qty-btn{width:32px;height:32px;border-radius:50%;background:#a29bfe26;border:1px solid rgba(162,155,254,.35);color:#a29bfe;font-size:18px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.qty-btn:hover:not(:disabled){background:#a29bfe4d}.qty-btn:disabled{opacity:.35;cursor:not-allowed}.qty-value{font-size:18px;font-weight:700;color:#fff;min-width:28px;text-align:center}.coupon-row{display:flex;gap:10px}.coupon-input{flex:1;background:#ffffff0d;border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:12px 16px;font-size:14px;color:#fff;outline:none;transition:border-color .2s}.coupon-input::placeholder{color:#ffffff4d}.coupon-input:focus{border-color:#a29bfe8c}.checkout-total-row{display:flex;justify-content:space-between;align-items:baseline;padding:14px 20px;background:#a29bfe14;border:1px solid rgba(162,155,254,.2);border-radius:14px}.checkout-total-label{font-size:15px;color:#ffffffb3}.checkout-total-amount{font-size:26px;font-weight:800;color:#fff}.checkout-btn{width:100%;padding:16px;border-radius:16px;border:none;background:linear-gradient(135deg,#6c5ce7,#a29bfe);color:#fff;font-size:16px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:opacity .2s,transform .15s,background .3s;letter-spacing:.4px;min-height:54px}.checkout-btn:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.checkout-btn:active:not(:disabled){transform:translateY(0)}.checkout-btn:disabled{opacity:.5;cursor:not-allowed}.payment-recap{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:14px}.payment-recap-name{font-size:15px;color:#ffffffbf;font-weight:600}.payment-recap-amount{font-size:22px;font-weight:800;color:#fff}.payment-method{display:flex;flex-direction:column;gap:12px}.section-title{font-size:13px;font-weight:600;color:#ffffff73;text-transform:uppercase;letter-spacing:1px;margin:0}.provider-options{display:flex;flex-direction:column;gap:12px}.provider-option{display:flex;align-items:center;gap:14px;padding:16px 20px;background:#ffffff0a;border:2px solid rgba(255,255,255,.1);border-radius:16px;cursor:pointer;transition:background .2s,border-color .2s;position:relative}.provider-option:hover,.provider-option--active{background:#ffffff14}.provider-option input[type=radio]{position:absolute;opacity:0;width:0;height:0}.provider-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:8px;overflow:hidden}.provider-name{font-size:16px;font-weight:600;color:#fff;flex:1}.provider-check{font-size:18px;font-weight:700;margin-left:auto}.provider-option--disabled{opacity:.45;cursor:pointer}.provider-option--disabled:hover{background:#ffffff0a}.provider-soon{font-size:11px;font-weight:600;padding:2px 8px;border-radius:8px;background:#ffffff14;color:#fff6;letter-spacing:.5px;margin-left:auto}.unavailable-toast{background:#ffc8641f;border:1px solid rgba(255,200,100,.3);border-radius:12px;padding:10px 16px;font-size:13px;color:#fdcb6e;text-align:center;animation:fadeInUp .2s ease}@keyframes fadeInUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.qr-cancel-btn{margin-top:4px;background:transparent;border:1px solid rgba(255,255,255,.15);border-radius:10px;color:#fff6;font-size:13px;padding:8px 20px;cursor:pointer;transition:all .2s}.qr-cancel-btn:hover{border-color:#ff6b6b66;color:#ff7675}.payment-note{font-size:12px;color:#ffffff4d;text-align:center;margin:0;line-height:1.5}.payment-status{background:#a29bfe1f;border:1px solid rgba(162,155,254,.3);border-radius:12px;padding:12px 18px;font-size:14px;color:#a29bfe;text-align:center}.payment-error{background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);border-radius:12px;padding:12px 18px;font-size:14px;color:#ff7675;text-align:center;margin:0}.qr-section{display:flex;flex-direction:column;align-items:center}.qr-placeholder{background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-radius:24px;padding:32px 28px;display:flex;flex-direction:column;align-items:center;gap:16px;width:100%;max-width:320px}.qr-provider-badge{display:flex;align-items:center;gap:8px;padding:6px 16px;border-radius:20px;color:#fff;font-size:14px;font-weight:700}.qr-image{width:200px;height:200px;border-radius:14px;display:block}.qr-title{font-size:16px;font-weight:700;color:#fff;margin:0}.qr-amount{font-size:24px;font-weight:800;color:#a29bfe;margin:0}.qr-hint{font-size:13px;color:#ffffff73;text-align:center;margin:0;line-height:1.5}.qr-icon-wrap{color:#fff3}.qr-loading-spinner{width:40px;height:40px;border:3px solid rgba(162,155,254,.2);border-top-color:#a29bfe;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading{color:#ffffff80;text-align:center;padding:80px 20px;font-size:15px}@media (max-width: 480px){.page-header{padding:16px 16px 10px}.checkout-content{padding:16px;gap:16px}.plan-detail-card{padding:22px 18px}.plan-price-main{font-size:30px}.checkout-total-amount{font-size:22px}}.myspace-page{min-height:100dvh;background:var(--color-page);padding-bottom:var(--space-16)}.profile-card{margin:0 var(--space-5);padding:var(--space-6);background:#ffffffb3;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(15,15,15,.05);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.profile-main{display:flex;justify-content:space-between;align-items:flex-start}.profile-info{flex:1;min-width:0}.profile-name{font-family:var(--font-ink);font-size:var(--text-lg);font-weight:var(--font-weight-semibold);color:var(--ink-deep);margin:0;display:flex;align-items:center;gap:var(--space-2);letter-spacing:.04em}.profile-badge{font-family:var(--font-ink);font-size:var(--text-2xs);font-weight:var(--font-weight-normal);padding:1px var(--space-2);border-radius:var(--radius-sm);letter-spacing:.06em}.badge--monthly{background:var(--paper-aged);color:var(--ink-medium)}.badge--yearly{background:var(--ink-deep);color:var(--paper-cream)}.profile-bio{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--ink-light);margin:var(--space-2) 0 0;line-height:1.6}.profile-edit-btn{flex-shrink:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:1px solid transparent;background:transparent;color:var(--ink-faint);cursor:pointer;border-radius:50%;transition:all var(--transition-fast) var(--ease-out-expo)}.profile-edit-btn:hover{color:var(--ink-deep);background:#0f0f0f0a;border-color:var(--ink-faint)}.profile-edit-form{margin-top:var(--space-3)}.profile-edit-input{width:100%;padding:var(--space-2) var(--space-3);font-family:var(--font-ink);font-size:var(--text-base);color:var(--ink-deep);background:#ffffffb3;border:1px solid rgba(15,15,15,.08);border-radius:var(--radius-sm);outline:none;transition:border-color var(--transition-fast);margin-bottom:var(--space-2)}.profile-edit-input:focus,.profile-edit-textarea:focus{border-color:var(--ink-faint);box-shadow:0 0 0 2px #0f0f0f0a}.profile-edit-textarea{width:100%;padding:var(--space-2) var(--space-3);font-family:var(--font-ink);font-size:var(--text-sm);color:var(--ink-deep);background:#ffffffb3;border:1px solid rgba(15,15,15,.08);border-radius:var(--radius-sm);outline:none;resize:vertical;transition:border-color var(--transition-fast)}.profile-edit-actions{display:flex;gap:var(--space-2);margin-top:var(--space-3)}.profile-save-btn{padding:var(--space-2) var(--space-5);font-family:var(--font-ink);font-size:var(--text-sm);color:var(--paper-cream);background:var(--ink-deep);border:none;border-radius:var(--radius-sm);cursor:pointer;letter-spacing:.06em;transition:background var(--transition-fast),transform var(--transition-fast)}.profile-save-btn:hover{background:var(--ink-dark)}.profile-save-btn:disabled{opacity:.5;cursor:default}.profile-cancel-btn{padding:var(--space-2) var(--space-4);font-family:var(--font-ink);font-size:var(--text-sm);color:var(--ink-medium);background:transparent;border:1px solid rgba(15,15,15,.1);border-radius:var(--radius-sm);cursor:pointer;letter-spacing:.04em;transition:color var(--transition-fast),border-color var(--transition-fast)}.profile-cancel-btn:hover{color:var(--ink-deep);border-color:var(--ink-faint)}.profile-stats-row{display:flex;gap:var(--space-6);margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid rgba(15,15,15,.05)}.profile-stat{display:flex;flex-direction:column;align-items:center;gap:2px}.profile-stat-num{font-family:var(--font-ink);font-size:var(--text-xl);font-weight:var(--font-weight-semibold);color:var(--ink-deep)}.profile-stat-label{font-family:var(--font-ui);font-size:var(--text-2xs);color:var(--ink-wash);letter-spacing:.06em}.profile-subscription{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid rgba(15,15,15,.04);display:flex;align-items:center;gap:var(--space-3)}.sub-badge{font-family:var(--font-ui);font-size:var(--text-2xs);padding:2px var(--space-3);background:var(--paper-aged);color:var(--ink-medium);border-radius:var(--radius-sm);letter-spacing:.06em}.sub-expiry{font-family:var(--font-ui);font-size:var(--text-2xs);color:var(--ink-wash)}.myspace-tabs{display:flex;gap:0;margin:var(--space-6) var(--space-5) 0;border-bottom:1px solid rgba(15,15,15,.06)}.myspace-tab{padding:var(--space-3) var(--space-5);font-family:var(--font-ink);font-size:var(--text-sm);color:var(--ink-wash);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;letter-spacing:.06em;margin-bottom:-1px;transition:color var(--transition-fast),border-color var(--transition-fast)}.myspace-tab:hover{color:var(--ink-medium)}.myspace-tab--active{color:var(--ink-deep);border-bottom-color:var(--ink-deep)}.myspace-content{padding:var(--space-6) var(--space-5)}.myspace-grid,.stats-panel{max-width:520px;margin:0 auto}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4)}.stat-card{background:#ffffffb3;border:1px solid rgba(15,15,15,.05);padding:var(--space-5) var(--space-3);border-radius:var(--radius-lg);text-align:center;box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:var(--space-1)}.stat-card-num{font-family:var(--font-ink);font-size:var(--text-2xl);font-weight:var(--font-weight-semibold);color:var(--ink-deep)}.stat-card-label{font-family:var(--font-ui);font-size:var(--text-2xs);color:var(--ink-wash);letter-spacing:.06em}.loading{display:flex;justify-content:center;padding:var(--space-20) 0;font-family:var(--font-ink);font-size:var(--text-base);color:var(--ink-faint);letter-spacing:.15em;animation:loadPulse 1.8s ease-in-out infinite}@keyframes loadPulse{0%,to{opacity:.25}50%{opacity:.8}}.story-card--skeleton{pointer-events:none}.skeleton-poster{width:100%;aspect-ratio:3 / 4;background:#0f0f0f0a;border-radius:var(--radius-sm);animation:shimmer 1.6s ease-in-out infinite}.skeleton-line{height:12px;background:#0f0f0f0d;border-radius:4px;animation:shimmer 1.6s ease-in-out infinite;margin-bottom:var(--space-2)}.skeleton-line--title{width:65%;height:16px;animation-delay:.1s}.skeleton-line--excerpt{width:90%;animation-delay:.2s}.skeleton-line--meta{width:40%;height:10px;animation-delay:.3s}.skeleton-line--name{width:35%;height:20px;margin-bottom:var(--space-2)}.skeleton-line--bio{width:60%;height:14px}.profile-card--skeleton{padding:var(--space-6);margin:0 var(--space-5);background:#ffffff80;border:1px solid rgba(15,15,15,.05);border-radius:var(--radius-lg)}.skeleton-stats-row{display:flex;gap:var(--space-6);margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid rgba(15,15,15,.05)}.skeleton-stat{width:48px;height:40px;background:#0f0f0f0a;border-radius:var(--radius-sm);animation:shimmer 1.6s ease-in-out infinite}@keyframes shimmer{0%{background:#0f0f0f0a}50%{background:#0f0f0f14}to{background:#0f0f0f0a}}.error-state{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);padding:var(--space-20) var(--space-6)}.error-state-text{font-family:var(--font-ink);font-size:var(--text-base);color:var(--ink-medium);margin:0}.error-retry-btn{padding:var(--space-2) var(--space-6);font-family:var(--font-ink);font-size:var(--text-sm);color:var(--ink-deep);background:transparent;border:1px solid rgba(15,15,15,.15);border-radius:var(--radius-sm);cursor:pointer;letter-spacing:.06em;transition:all var(--transition-fast) var(--ease-out-expo)}.error-retry-btn:hover{border-color:var(--ink-medium);background:#0f0f0f08}.tab-content-enter{animation:fadeInUp .35s var(--ease-out-expo)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 480px){.profile-card{margin:0 var(--space-3);padding:var(--space-4)}.myspace-tabs{margin:var(--space-5) var(--space-3) 0}.myspace-content{padding:var(--space-5) var(--space-3)}.stats-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-3)}}:root{--ink-deepest: #080808;--ink-deep: #0a0a0a;--ink-black: #1a1a1a;--ink-dark: #2d2d2d;--ink-medium: #4f4f4f;--ink-light: #7a7a7a;--ink-wash: #a8a8a8;--ink-faint: #c4c4c4;--paper-white: #fafaf8;--paper-cream: #f6f4ef;--paper-aged: #ebe7df;--paper-warm: #f0ece4;--paper-mist: rgba(246, 244, 239, .88);--color-page: #f7f5f0;--seal-red: #b8382a;--seal-red-light: #d44a3a;--seal-red-dark: #8b1f16;--seal-glow: rgba(184, 56, 42, .12);--indigo: #3a4f8b;--indigo-light: #5b6faa;--gold-pale: #e4d8c0;--gold-mid: #c9a96e;--gold-warm: #b8955a;--ember-orange: #e85a2c;--ember-red: #c43c26;--ember-glow: #ff6b35;--flame-yellow: #f5a623;--flame-gold: #ffc107;--color-success: #4a8b5e;--color-warning: #c47a2e;--color-danger: var(--seal-red);--font-ink: "Noto Serif SC", "ZCOOL XiaoWei", "Songti SC", "SimSun", serif;--font-ui: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", "Noto Sans", sans-serif;--font-weight-light: 300;--font-weight-normal: 400;--font-weight-semibold: 600;--font-weight-bold: 700;--text-2xs: .688rem;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 2.75rem;--text-6xl: 3.25rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--radius-none: 0;--radius-sm: 2px;--radius-md: 4px;--radius-lg: 8px;--radius-xl: 16px;--radius-full: 999px;--shadow-hairline: 0 0 0 1px rgba(15, 15, 15, .04);--shadow-mist: 0 4px 20px rgba(15, 15, 15, .05);--shadow-float: 0 12px 40px rgba(15, 15, 15, .1);--shadow-card: 0 2px 8px rgba(15, 15, 15, .04), 0 8px 32px rgba(15, 15, 15, .06);--shadow-card-hover: 0 4px 16px rgba(15, 15, 15, .06), 0 16px 48px rgba(15, 15, 15, .1);--shadow-modal: 0 24px 80px rgba(15, 15, 15, .18);--shadow-ink-light: 0 2px 8px rgba(26, 26, 26, .08);--shadow-ink-medium: 0 6px 24px rgba(26, 26, 26, .15);--shadow-ink-dark: 0 12px 48px rgba(26, 26, 26, .25);--transition-fast: .15s ease;--transition-normal: .3s ease;--transition-slow: .5s ease;--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--ease-drift: cubic-bezier(.25, .46, .45, .94);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--z-below: -1;--z-base: 0;--z-elevated: 1;--z-dropdown: 10;--z-sticky: 20;--z-overlay: 30;--z-modal: 40;--z-toast: 50;--z-smoke: -1;--z-bg: 0;--z-float: 100;--nav-height: 48px;--content-max: 960px;--content-max-editorial: 1200px;--content-narrow: 680px;--ease-bleed: cubic-bezier(.25, .1, .25, 1)}@keyframes mistFloat{0%,to{transform:translate(0) scale(1);opacity:.4}25%{transform:translate(15px,-20px) scale(1.05);opacity:.6}50%{transform:translate(-10px,-35px) scale(.95);opacity:.5}75%{transform:translate(20px,-15px) scale(1.08);opacity:.55}}@keyframes inkMorph{0%,to{border-radius:60% 40% 30% 70%/60% 30% 70% 40%;transform:translate(0) rotate(0)}25%{border-radius:30% 60% 70% 40%/50% 60% 30%;transform:translate(20px,-10px) rotate(5deg)}50%{border-radius:50% 60% 30%/30% 40% 70% 60%;transform:translate(-15px,15px) rotate(-3deg)}75%{border-radius:40% 30% 60% 50%/60% 40% 30% 50%;transform:translate(10px,20px) rotate(2deg)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes inkSpread{0%{transform:scale(0);opacity:.6}to{transform:scale(1);opacity:0}}@keyframes ripple{0%{transform:scale(0);opacity:.5}to{transform:scale(4);opacity:0}}@keyframes floatGentle{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes glowPulse{0%,to{box-shadow:0 0 24px var(--seal-glow)}50%{box-shadow:0 0 48px #b8382a38}}@keyframes waveform{0%,to{height:20%}50%{height:100%}}@keyframes smokeDrift{0%{transform:translate(-100%) translateY(0) rotate(0);opacity:0}10%{opacity:.12}90%{opacity:.12}to{transform:translate(100%) translateY(-50px) rotate(10deg);opacity:0}}@keyframes ashFloat{0%{transform:translateY(0) translate(0) rotate(0);opacity:1}to{transform:translateY(-150px) translate(30px) rotate(180deg);opacity:0}}@keyframes inkReveal{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}@keyframes gradientFlow{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes burnCreep{0%{clip-path:polygon(0 100%,100% 100%,100% 100%,0 100%)}to{clip-path:polygon(0 100%,100% 100%,100% 0%,0 0%)}}@keyframes particleDrift{0%{transform:translateY(0) scale(1);opacity:.7}to{transform:translateY(-100vh) scale(.1);opacity:0}}@keyframes revealLine{0%{transform:scaleX(0)}to{transform:scaleX(1)}}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}body{font-family:var(--font-ink);color:var(--ink-black);background:var(--color-page);line-height:1.7;min-height:100vh;overflow-x:hidden}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:linear-gradient(to bottom,var(--ink-faint),var(--ink-wash));border-radius:2px}::-webkit-scrollbar-thumb:hover{background:var(--ink-light)}::selection{background:#0f0f0f1a;color:var(--ink-deep)}:focus-visible{outline:2px solid var(--ink-medium);outline-offset:2px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.app{display:flex;flex-direction:column;width:100%;min-height:100vh;position:relative}.smoke-container{position:fixed;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:var(--z-smoke);overflow:hidden}.smoke-layer{position:absolute;width:150%;height:150%;top:-25%;left:-25%;filter:blur(80px);opacity:.12}.smoke-layer--1{background:radial-gradient(ellipse at 20% 30%,var(--ink-dark) 0%,transparent 70%);animation:smokeDrift 25s ease-in-out infinite}.smoke-layer--2{background:radial-gradient(ellipse at 80% 70%,var(--ink-medium) 0%,transparent 70%);animation:smokeDrift 30s ease-in-out infinite reverse;animation-delay:-10s}.smoke-layer--3{background:radial-gradient(ellipse at 50% 50%,var(--ink-light) 0%,transparent 60%);animation:smokeDrift 35s ease-in-out infinite;animation-delay:-20s}.ink-blob-container{position:fixed;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:var(--z-smoke)}.ink-blob{position:absolute;border-radius:60% 40% 30% 70%/60% 30% 70% 40%;filter:blur(100px);opacity:.06;animation:inkMorph 20s ease-in-out infinite}.ink-blob--1{width:600px;height:600px;background:var(--ink-deep);top:-15%;right:-10%}.ink-blob--2{width:500px;height:500px;background:var(--ink-dark);bottom:-10%;left:-15%;animation-delay:-5s}.ink-blob--3{width:400px;height:400px;background:var(--ink-medium);top:40%;right:20%;animation-delay:-10s}.particle-container{position:fixed;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:var(--z-smoke);overflow:hidden}.particle{position:absolute;width:4px;height:4px;background:var(--ink-wash);border-radius:50%;opacity:0;animation:particleDrift 15s linear infinite}.particle:nth-child(1){left:10%;animation-delay:0s;animation-duration:18s}.particle:nth-child(2){left:20%;animation-delay:2s;animation-duration:15s}.particle:nth-child(3){left:35%;animation-delay:4s;animation-duration:20s}.particle:nth-child(4){left:50%;animation-delay:1s;animation-duration:17s}.particle:nth-child(5){left:65%;animation-delay:3s;animation-duration:19s}.particle:nth-child(6){left:75%;animation-delay:5s;animation-duration:16s}.particle:nth-child(7){left:85%;animation-delay:2.5s;animation-duration:21s}.particle:nth-child(8){left:90%;animation-delay:6s;animation-duration:14s}.page-enter{opacity:0;transform:translateY(20px)}.page-enter-active{opacity:1;transform:translateY(0);transition:opacity var(--transition-slow) var(--ease-out-expo),transform var(--transition-slow) var(--ease-out-expo)}.page-exit{opacity:1;transform:translateY(0)}.page-exit-active{opacity:0;transform:translateY(-10px);transition:opacity var(--transition-normal) var(--ease-in-out),transform var(--transition-normal) var(--ease-in-out)}.ink-reveal{position:relative;overflow:hidden}.ink-reveal:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:var(--ink-dark);transform:translate(-100%);animation:inkReveal .8s var(--ease-out-expo) forwards;z-index:var(--z-overlay)}.loading-mist{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-4);padding:var(--space-16)}.loading-mist__text{font-size:var(--text-base);color:var(--ink-light);letter-spacing:.3em;animation:fadeInUp .6s ease-out}.loading-mist__dots{display:flex;gap:var(--space-2)}.loading-mist__dot{width:6px;height:6px;background:var(--ink-wash);border-radius:50%;animation:floatGentle 1.5s ease-in-out infinite}.loading-mist__dot:nth-child(1){animation-delay:0s}.loading-mist__dot:nth-child(2){animation-delay:.2s}.loading-mist__dot:nth-child(3){animation-delay:.4s}.share-panel-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0a0a0a80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);animation:fadeIn .2s ease-out;padding:0}.share-panel{position:relative;background:var(--paper-white);width:calc(100% - 40px);max-width:400px;border-radius:var(--radius-lg);padding:var(--space-6) var(--space-4) var(--space-6);box-shadow:var(--shadow-ink-dark);animation:fadeInScale .3s var(--ease-out-expo);max-height:70vh;overflow-y:auto;-webkit-overflow-scrolling:touch;margin:auto}.share-panel-close{position:absolute;top:var(--space-4);right:var(--space-4);width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--ink-light);cursor:pointer;border-radius:50%;transition:background var(--transition-fast),color var(--transition-fast)}.share-panel-close:hover{background:#0000000f;color:var(--ink-deep)}.share-panel-title{text-align:center;font-family:var(--font-ink);font-size:var(--text-lg);font-weight:var(--font-weight-normal);color:var(--ink-deep);margin-bottom:var(--space-6);letter-spacing:.1em}.share-platforms{display:flex;justify-content:center;gap:var(--space-4);flex-wrap:wrap;margin-bottom:var(--space-6)}.share-platform-btn{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-3);border:none;background:transparent;cursor:pointer;border-radius:var(--radius-lg);transition:background var(--transition-fast),transform var(--transition-fast);min-width:64px}.share-platform-btn:hover{background:#0000000a;transform:translateY(-2px)}.share-platform-btn span{font-size:var(--text-xs);color:var(--ink-light);font-family:var(--font-ink)}.share-platform-btn svg{color:var(--platform-color, var(--ink-dark))}.share-link-container{display:flex;gap:var(--space-2);background:var(--paper-aged);border-radius:var(--radius-md);padding:var(--space-2);min-width:0}.share-link-input{flex:1;min-width:0;border:none;background:transparent;padding:var(--space-2) var(--space-3);font-size:var(--text-xs);color:var(--ink-dark);font-family:monospace,var(--font-ink);outline:none;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch}.share-copy-btn{padding:var(--space-2) var(--space-4);background:var(--ink-black);color:var(--paper-white);border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-sm);font-family:var(--font-ink);transition:background var(--transition-fast);white-space:nowrap}.share-copy-btn:hover{background:var(--ink-dark)}.share-copy-btn.copied{background:var(--ember-orange)}.copy-hint{text-align:center;font-size:var(--text-xs);color:var(--ink-light);margin-top:var(--space-3);font-family:var(--font-ink)}.share-preview{background:var(--paper-aged);border-left:2px solid var(--ink-light);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-5)}.share-preview-title{font-family:var(--font-ink);font-size:var(--text-base);color:var(--ink-deep);font-weight:var(--font-weight-medium);margin:0 0 var(--space-1) 0;line-height:1.4}.share-preview-tags{font-size:var(--text-xs);color:var(--ink-light);margin:0;line-height:1.6;word-break:break-word}.share-wechat-hint{text-align:center;font-size:var(--text-xs);color:#07c160;margin:0 0 var(--space-3) 0;font-family:var(--font-ink);animation:fadeIn .2s ease-out}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.fade-in{animation:fadeInUp .5s var(--ease-out-expo) forwards}.fade-in-scale{animation:fadeInScale .4s var(--ease-out-expo) forwards}.stagger-1{animation-delay:.1s}.stagger-2{animation-delay:.2s}.stagger-3{animation-delay:.3s}.stagger-4{animation-delay:.4s}.stagger-5{animation-delay:.5s}[dir=rtl]{--font-ink: "Noto Naskh Arabic", "Noto Sans", serif}[dir=rtl] .global-nav-inner{flex-direction:row-reverse}[lang=ru]{--font-ink: "Noto Sans", "Noto Serif SC", serif}
