*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*
! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.pointer-events-none{pointer-events:none}.relative{position:relative}.hidden{display:none}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}*{box-sizing:border-box;margin:0;padding:0}:root{--moon-gold:#e8d5a0;--moon-warm:#f0c987;--whisper:hsla(44,61%,77%,.85);--ink:hsla(45,50%,92%,.92);--ink-soft:hsla(45,50%,92%,.65);--ink-faint:hsla(45,50%,92%,.4);--ink-ghost:hsla(45,50%,92%,.22)}body,html{width:100%;min-height:100vh;background:radial-gradient(ellipse at 30% 20%,#1a1340 0,#0a0e1f 55%,#050816 100%);color:var(--ink);font-family:"Noto Serif SC",serif;overflow:hidden}body:before{content:"";position:fixed;inset:0;z-index:1;pointer-events:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2'/><feColorMatrix values='0 0 0 0 0.95 0 0 0 0 0.93 0 0 0 0 0.85 0 0 0 0.4 0'/></filter><rect width='200' height='200' filter='url(%23n)' opacity='0.5'/></svg>");opacity:.06;mix-blend-mode:overlay}.night-sky{position:relative;width:100vw;height:100vh;overflow:hidden;background:radial-gradient(ellipse at 30% 20%,#1a1340 0,#0a0e1f 55%,#050816 100%)}.deep-stars{position:fixed;inset:0;z-index:0;pointer-events:none}.deep-stars:after,.deep-stars:before{content:"";position:absolute;inset:0;background-image:radial-gradient(.5px .5px at 5% 8%,hsla(0,0%,100%,.4),transparent),radial-gradient(.5px .5px at 12% 22%,hsla(0,0%,100%,.3),transparent),radial-gradient(.5px .5px at 18% 45%,hsla(44,61%,77%,.3),transparent),radial-gradient(.5px .5px at 25% 65%,hsla(0,0%,100%,.35),transparent),radial-gradient(.5px .5px at 33% 14%,hsla(0,0%,100%,.3),transparent),radial-gradient(.5px .5px at 41% 78%,hsla(0,0%,100%,.3),transparent),radial-gradient(.5px .5px at 48% 28%,rgba(200,168,233,.3),transparent),radial-gradient(.5px .5px at 55% 92%,hsla(0,0%,100%,.3),transparent),radial-gradient(.5px .5px at 62% 52%,hsla(0,0%,100%,.35),transparent),radial-gradient(.5px .5px at 69% 18%,hsla(0,0%,100%,.3),transparent),radial-gradient(.5px .5px at 76% 70%,rgba(163,196,243,.3),transparent),radial-gradient(.5px .5px at 83% 38%,hsla(0,0%,100%,.35),transparent),radial-gradient(.5px .5px at 90% 84%,hsla(0,0%,100%,.3),transparent),radial-gradient(.5px .5px at 97% 12%,hsla(44,61%,77%,.3),transparent),radial-gradient(.5px .5px at 8% 58%,hsla(0,0%,100%,.3),transparent),radial-gradient(.5px .5px at 22% 88%,hsla(0,0%,100%,.3),transparent),radial-gradient(.5px .5px at 38% 38%,hsla(0,0%,100%,.3),transparent),radial-gradient(.5px .5px at 52% 70%,hsla(0,0%,100%,.3),transparent),radial-gradient(.5px .5px at 65% 6%,hsla(0,0%,100%,.3),transparent),radial-gradient(.5px .5px at 78% 62%,hsla(0,0%,100%,.3),transparent),radial-gradient(.5px .5px at 88% 48%,hsla(0,0%,100%,.3),transparent),radial-gradient(.5px .5px at 92% 24%,hsla(0,0%,100%,.3),transparent)}.deep-stars:after{opacity:.6;background-image:radial-gradient(.5px .5px at 15% 15%,hsla(0,0%,100%,.25),transparent),radial-gradient(.5px .5px at 28% 35%,hsla(0,0%,100%,.25),transparent),radial-gradient(.5px .5px at 42% 55%,hsla(0,0%,100%,.25),transparent),radial-gradient(.5px .5px at 56% 75%,hsla(0,0%,100%,.25),transparent),radial-gradient(.5px .5px at 72% 25%,hsla(0,0%,100%,.25),transparent),radial-gradient(.5px .5px at 86% 65%,hsla(0,0%,100%,.25),transparent),radial-gradient(.5px .5px at 11% 78%,hsla(0,0%,100%,.25),transparent),radial-gradient(.5px .5px at 35% 8%,hsla(0,0%,100%,.25),transparent),radial-gradient(.5px .5px at 58% 48%,hsla(0,0%,100%,.25),transparent),radial-gradient(.5px .5px at 75% 88%,hsla(0,0%,100%,.25),transparent)}.ambient-stars{position:fixed;inset:0;z-index:0;pointer-events:none}.ambient-stars:before{position:absolute;inset:0;background-image:radial-gradient(.8px .8px at 8% 12%,hsla(0,0%,100%,.5),transparent),radial-gradient(1px 1px at 22% 38%,hsla(0,0%,100%,.35),transparent),radial-gradient(.8px .8px at 38% 18%,hsla(44,61%,77%,.4),transparent),radial-gradient(.8px .8px at 52% 62%,hsla(0,0%,100%,.35),transparent),radial-gradient(1px 1px at 68% 28%,rgba(200,168,233,.4),transparent),radial-gradient(.8px .8px at 76% 52%,hsla(0,0%,100%,.35),transparent),radial-gradient(1px 1px at 84% 78%,hsla(0,0%,100%,.4),transparent),radial-gradient(.8px .8px at 12% 72%,rgba(163,196,243,.35),transparent),radial-gradient(.8px .8px at 92% 32%,hsla(0,0%,100%,.35),transparent),radial-gradient(1px 1px at 32% 88%,hsla(44,61%,77%,.35),transparent),radial-gradient(.8px .8px at 60% 88%,hsla(0,0%,100%,.3),transparent),radial-gradient(.8px .8px at 88% 12%,hsla(0,0%,100%,.35),transparent),radial-gradient(.8px .8px at 18% 55%,hsla(0,0%,100%,.3),transparent),radial-gradient(.8px .8px at 45% 45%,hsla(44,61%,77%,.3),transparent);animation:ambientDrift 240s linear infinite;content:""}@keyframes ambientDrift{0%{transform:translateY(0)}50%{transform:translateY(-12px)}to{transform:translateY(0)}}.top-bar{position:fixed;top:0;right:0;left:0;z-index:30;display:flex;align-items:center;justify-content:space-between;padding:22px 32px;background:linear-gradient(180deg,rgba(10,14,31,.6),transparent);backdrop-filter:blur(8px)}.brand{display:flex;align-items:baseline;gap:10px}.brand .name{color:var(--moon-gold);font-family:Ma Shan Zheng,serif;font-size:20px;letter-spacing:.15em}.brand .sub{color:var(--ink-faint);font-family:EB Garamond,serif;font-size:10px;font-style:italic;letter-spacing:.3em}.view-switcher{display:flex;gap:4px;padding:5px;border:1px solid hsla(44,61%,77%,.12);border-radius:100px;background:rgba(20,20,40,.5);backdrop-filter:blur(8px)}.view-switcher button{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border:0;border-radius:50%;background:transparent;color:var(--ink-faint);cursor:pointer;transition:all .4s ease}.view-switcher button.active{background:hsla(44,61%,77%,.12);color:var(--moon-gold)}.view-switcher button:hover:not(.active){color:var(--ink-soft)}.view-switcher button svg{width:16px;height:16px;fill:currentColor}.sky{position:absolute;inset:0;z-index:5;transition:opacity 1s ease}.list,.sky.hidden{opacity:0;pointer-events:none}.list{position:absolute;inset:0;z-index:5;padding:100px 32px 60px;overflow-x:hidden;overflow-y:auto;transition:opacity 1s ease}.list.active{opacity:1;pointer-events:all}.list-month{max-width:1280px;margin:0 auto 60px}.list-month-head{display:flex;gap:16px;align-items:baseline;padding-bottom:18px;margin-bottom:28px;border-bottom:1px solid hsla(44,61%,77%,.1)}.month-num{color:var(--moon-gold);font-family:EB Garamond,serif;font-size:36px;font-style:italic;line-height:1;letter-spacing:.05em}.month-name{color:var(--whisper);font-family:Ma Shan Zheng,serif;font-size:17px;letter-spacing:.15em}.month-count{margin-left:auto;color:var(--ink-faint);font-family:EB Garamond,serif;font-size:12px;font-style:italic;letter-spacing:.2em}.list-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:24px}.list-card-button{display:block;width:100%;padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.sky-canvas{position:absolute;inset:0;cursor:default}.sky-header{position:absolute;top:90px;left:50%;z-index:6;text-align:center;pointer-events:none;transform:translateX(-50%)}.sky-header .eyebrow{margin-bottom:8px;color:var(--moon-gold);font-family:EB Garamond,serif;font-size:11px;font-style:italic;letter-spacing:.4em;text-transform:uppercase;opacity:.7}.sky-header .title{color:var(--whisper);font-family:Ma Shan Zheng,serif;font-size:22px;letter-spacing:.15em}.sky-header .subtitle{margin-top:8px;color:var(--ink-faint);font-family:"Noto Serif SC",serif;font-size:11px;font-weight:300;letter-spacing:.1em}.sky-record-entry.recording-core{top:50%;z-index:8;width:280px;height:280px;text-decoration:none}.sky-record-entry:focus-visible{border-radius:50%;outline:1px solid hsla(44,61%,77%,.55);outline-offset:-78px}.sky-record-hint{position:absolute;top:calc(50% + 100px);left:50%;z-index:8;color:var(--ink-faint);font-family:"Noto Serif SC",serif;font-size:13px;font-weight:300;letter-spacing:.4em;white-space:nowrap;pointer-events:none;transform:translateX(-50%)}.star-tooltip{position:fixed;z-index:25;margin-top:-16px;text-align:center;pointer-events:none;opacity:0;transform:translate(-50%,-100%);transition:opacity .3s ease}.star-tooltip.show{opacity:1}.star-tooltip .date{margin-bottom:4px;color:var(--moon-gold);font-family:Liu Jian Mao Cao,cursive;font-size:18px}.star-tooltip .date,.star-tooltip .title{letter-spacing:.05em;text-shadow:0 0 12px rgba(0,0,0,.8)}.star-tooltip .title{max-width:240px;color:var(--ink-soft);font-family:"Noto Serif SC",serif;font-size:12px;font-weight:300}.card-overlay{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:40px;background:rgba(5,8,22,0);pointer-events:none;transition:background .6s ease}.card-overlay.active{background:rgba(5,8,22,.55);pointer-events:all;backdrop-filter:blur(6px)}.card-close{position:absolute;top:32px;right:32px;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid hsla(44,61%,77%,.15);border-radius:50%;background:rgba(20,20,40,.6);color:var(--ink-soft);cursor:pointer;opacity:0;backdrop-filter:blur(8px);transition:all .4s ease}.card-overlay.active .card-close{opacity:1;transition-delay:.5s}.card-close:hover{background:rgba(40,40,60,.7);color:var(--moon-gold)}.card-close svg{width:14px;height:14px}.journal-card{position:relative;width:min(360px,calc(100vw - 80px));aspect-ratio:9/16;overflow:hidden;border-radius:22px;opacity:0;box-shadow:0 0 0 1px hsla(44,61%,77%,.08),0 24px 60px rgba(0,0,0,.5),0 0 100px rgba(168,140,233,.12),inset 0 0 50px hsla(0,0%,100%,.02);backdrop-filter:blur(2px);transform:scale(.05);transition:opacity .4s ease,transform .7s cubic-bezier(.2,.8,.3,1)}.journal-card.list-card{width:100%;min-width:0;border-radius:18px;opacity:1;cursor:pointer;transform:none;transition:transform .5s cubic-bezier(.2,.8,.3,1)}.journal-card.list-card:hover{transform:translateY(-6px)}.journal-card.list-card .voice-track{display:none}.journal-card.list-card .star-stage{height:32%}.journal-card.list-card .main-star{width:80px;height:80px}.journal-card.list-card .star-core{width:18px;height:18px}.journal-card.list-card .card-content{height:68%;padding:0 22px}.journal-card.list-card .date-handwrite{font-size:17px}.journal-card.list-card .date-meta{font-size:10px}.journal-card.list-card .card-title{margin-bottom:14px;font-size:14px}.journal-card.list-card .divider{margin-bottom:12px}.journal-card.list-card .excerpt{font-size:11px;line-height:1.8}.journal-card.list-card .excerpt p{margin-bottom:8px}.journal-card.list-card .emotion-row{padding:10px 0 14px}.journal-card.list-card .emotion-tag{padding:3px 9px;font-size:9px}.journal-card.list-card .corner-mark{right:12px;bottom:10px;font-size:8px}.card-overlay.active .journal-card{opacity:1;transform:scale(1);transition-delay:.05s}.journal-card .card-dust{position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(1px 1px at 18% 25%,hsla(0,0%,100%,.5),transparent),radial-gradient(1px 1px at 75% 18%,hsla(44,61%,77%,.4),transparent),radial-gradient(1px 1px at 35% 55%,hsla(0,0%,100%,.3),transparent),radial-gradient(1px 1px at 88% 72%,rgba(200,168,233,.4),transparent),radial-gradient(1px 1px at 25% 90%,hsla(0,0%,100%,.3),transparent),radial-gradient(1.5px 1.5px at 62% 38%,rgba(232,180,197,.5),transparent);opacity:.7;animation:dustDrift 80s linear infinite}@keyframes dustDrift{0%{transform:translate(0)}50%{transform:translate(8px,-12px)}to{transform:translate(0)}}.journal-card .star-stage{height:32%}.journal-card .main-star,.journal-card .star-stage{position:relative;display:flex;align-items:center;justify-content:center}.journal-card .main-star{width:90px;height:90px}.journal-card .star-core{position:absolute;z-index:3;width:22px;height:22px;border-radius:50%;animation:starPulse 4s ease-in-out infinite}@keyframes starPulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}.journal-card .companion{position:absolute;width:3px;height:3px;border-radius:50%;background:hsla(0,0%,100%,.85);box-shadow:0 0 6px hsla(0,0%,100%,.5);animation:companionTwinkle 3s ease-in-out infinite}@keyframes companionTwinkle{0%,to{opacity:.55}50%{opacity:1}}.journal-card .card-content{display:flex;flex-direction:column;height:68%;padding:0 24px}.journal-card .date-line{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:16px}.journal-card .date-handwrite{color:var(--moon-gold);font-family:Liu Jian Mao Cao,cursive;font-size:18px;line-height:1;letter-spacing:.05em}.journal-card .date-meta{color:var(--ink-faint);font-family:EB Garamond,serif;font-size:10px;font-style:italic;letter-spacing:.15em}.journal-card .card-title{margin-bottom:14px;color:var(--whisper);font-family:"Noto Serif SC",serif;font-size:15px;font-weight:400;line-height:1.55;letter-spacing:.02em}.journal-card .divider{display:flex;gap:8px;align-items:center;margin-bottom:14px;opacity:.45}.journal-card .divider-line{flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--moon-gold),transparent)}.journal-card .divider-dot{width:3px;height:3px;border-radius:50%;background:var(--moon-gold);box-shadow:0 0 6px var(--moon-gold)}.journal-card .excerpt{flex:1;color:var(--ink-soft);font-family:"Noto Serif SC",serif;font-size:12px;font-weight:300;line-height:1.85;letter-spacing:.03em}.journal-card .excerpt p{margin-bottom:8px;text-indent:2em}.journal-card .excerpt .quote-mark{margin-right:4px;color:var(--moon-gold);font-family:EB Garamond,serif;font-size:22px;line-height:.5;vertical-align:-.3em;opacity:.5}.journal-card .emotion-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:12px 0 4px}.journal-card .emotion-tag{display:inline-flex;gap:5px;align-items:center;padding:4px 10px;border:1px solid hsla(44,61%,77%,.2);border-radius:100px;background:hsla(44,61%,77%,.04);color:var(--whisper);font-family:"Noto Serif SC",serif;font-size:10px;letter-spacing:.1em;backdrop-filter:blur(8px)}.journal-card .emotion-tag.primary{border-color:hsla(38,78%,74%,.45);background:hsla(38,78%,74%,.1)}.journal-card .emotion-dot{width:4px;height:4px;border-radius:50%}.journal-card .corner-mark{position:absolute;right:16px;bottom:12px;color:hsla(44,61%,77%,.22);font-family:Ma Shan Zheng,serif;font-size:9px;letter-spacing:.3em}.journal-card .voice-track{display:flex;gap:12px;align-items:center;padding:12px 0 0;margin-bottom:4px;border-top:1px solid hsla(44,61%,77%,.08)}.journal-card .play-btn{position:relative;display:flex;flex:none;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid hsla(44,61%,77%,.3);border-radius:50%;background:hsla(44,61%,77%,.06);color:var(--moon-gold);cursor:pointer;backdrop-filter:blur(6px);transition:all .4s ease}.journal-card .play-btn:disabled{cursor:default;opacity:.45}.journal-card .play-btn:not(:disabled):hover{border-color:hsla(44,61%,77%,.5);background:hsla(44,61%,77%,.12);box-shadow:0 0 16px hsla(44,61%,77%,.25)}.journal-card .play-btn svg{width:11px;height:11px;fill:currentColor;transition:opacity .3s ease}.journal-card .play-btn .icon-pause,.journal-card .play-btn.playing .icon-play{display:none}.journal-card .play-btn.playing .icon-pause{display:block}.journal-card .play-btn.playing{border-color:hsla(44,61%,77%,.5);background:hsla(44,61%,77%,.14);animation:btnBreath 2.4s ease-in-out infinite}@keyframes btnBreath{0%,to{box-shadow:0 0 12px hsla(44,61%,77%,.3)}50%{box-shadow:0 0 22px hsla(44,61%,77%,.55),0 0 40px hsla(44,61%,77%,.18)}}.journal-card .play-btn:after,.journal-card .play-btn:before{position:absolute;inset:-2px;border:1px solid hsla(44,61%,77%,.4);border-radius:50%;pointer-events:none;opacity:0;content:""}.journal-card .play-btn.playing:before{animation:voiceRipple 2.8s ease-out infinite}.journal-card .play-btn.playing:after{animation:voiceRipple 2.8s ease-out 1.4s infinite}@keyframes voiceRipple{0%{opacity:.5;transform:scale(1)}to{opacity:0;transform:scale(2.2)}}.journal-card .voice-progress{position:relative;flex:1;height:2px;overflow:hidden;border-radius:1px;background:hsla(44,61%,77%,.08)}.journal-card .voice-progress-fill{position:absolute;top:0;bottom:0;left:0;width:0;background:linear-gradient(90deg,hsla(44,61%,77%,.35) 0,var(--moon-gold) 50%,rgba(255,247,230,.95) 100%);box-shadow:0 0 8px hsla(44,61%,77%,.6);transition:width .1s linear}.journal-card .voice-progress-fill:after{position:absolute;top:50%;right:-2px;width:4px;height:4px;border-radius:50%;background:var(--moon-warm);box-shadow:0 0 8px var(--moon-warm),0 0 16px hsla(38,78%,74%,.5);opacity:0;content:"";transform:translateY(-50%);transition:opacity .3s ease}.journal-card .play-btn.playing~.voice-progress .voice-progress-fill:after{opacity:1}.journal-card .voice-duration{flex:none;min-width:54px;color:var(--ink-faint);font-family:EB Garamond,serif;font-size:10px;font-style:italic;text-align:right;letter-spacing:.08em}.journal-card .duration-separator{margin:0 4px;opacity:.5}.journal-card.e-warm{background:radial-gradient(ellipse at 50% 18%,rgba(232,180,197,.18) 0,transparent 45%),radial-gradient(ellipse at 30% 80%,rgba(163,196,243,.1) 0,transparent 50%),linear-gradient(180deg,#1a1f3d,#131838 40%,#0e1230)}.journal-card.e-warm .star-core{background:radial-gradient(circle at 35% 35%,#fff7e6 0,#f0c987 30%,#d4a574 70%,transparent 100%);box-shadow:0 0 16px hsla(38,78%,74%,.9),0 0 32px hsla(38,78%,74%,.6),0 0 64px rgba(232,180,197,.4),0 0 110px rgba(232,180,197,.22)}.journal-card.e-melancholy{background:radial-gradient(ellipse at 50% 22%,rgba(163,196,243,.15) 0,transparent 50%),radial-gradient(ellipse at 70% 75%,rgba(60,80,140,.2) 0,transparent 55%),linear-gradient(180deg,#131c3d,#0e1535 50%,#080d24)}.journal-card.e-melancholy .star-core{background:radial-gradient(circle at 35% 35%,#e8f0ff 0,#a3c4f3 35%,#5a7fb8 70%,transparent 100%);box-shadow:0 0 16px rgba(163,196,243,.8),0 0 32px rgba(163,196,243,.5),0 0 80px rgba(100,140,200,.3)}.journal-card.e-bright{background:radial-gradient(ellipse at 50% 18%,hsla(38,78%,74%,.22) 0,transparent 50%),radial-gradient(ellipse at 25% 70%,rgba(232,180,197,.15) 0,transparent 50%),linear-gradient(180deg,#2a1f3d,#1f1838 50%,#131030)}.journal-card.e-bright .star-core{width:26px;height:26px;background:radial-gradient(circle at 35% 35%,#fffaf0 0,#ffd97a 30%,#f5b860 70%,transparent 100%);box-shadow:0 0 20px #ffd97a,0 0 40px rgba(255,217,122,.7),0 0 90px rgba(245,184,96,.45),0 0 150px rgba(232,180,197,.25)}.journal-card.e-calm{background:radial-gradient(ellipse at 50% 25%,rgba(180,210,200,.1) 0,transparent 55%),linear-gradient(180deg,#102028,#0c1820 50%,#07121a)}.journal-card.e-calm .star-core{width:18px;height:18px;background:radial-gradient(circle at 35% 35%,#fff 0,#e8f0ee 35%,#b4d2c8 70%,transparent 100%);box-shadow:0 0 14px hsla(0,0%,100%,.6),0 0 28px rgba(180,210,200,.4),0 0 60px rgba(140,180,170,.2);animation-duration:6s}.journal-card.e-anxious{background:radial-gradient(ellipse at 50% 22%,rgba(180,80,90,.18) 0,transparent 50%),radial-gradient(ellipse at 70% 70%,rgba(120,60,90,.18) 0,transparent 50%),linear-gradient(180deg,#2a1322,#1d0f1c 50%,#120912)}.journal-card.e-anxious .star-core{background:radial-gradient(circle at 35% 35%,#ffe0d8 0,#d97878 35%,#8a4040 70%,transparent 100%);box-shadow:0 0 14px hsla(0,56%,66%,.85),0 0 28px rgba(180,80,90,.55),0 0 70px rgba(120,50,70,.35);animation-duration:2s}.journal-card.e-lost{background:radial-gradient(ellipse at 40% 25%,rgba(168,140,200,.18) 0,transparent 50%),radial-gradient(ellipse at 70% 75%,rgba(120,100,160,.15) 0,transparent 55%),linear-gradient(180deg,#1f1a36,#181432 50%,#0e0a22)}.journal-card.e-lost .star-core{background:radial-gradient(circle at 35% 35%,#f0e8f8 0,#c8a8e9 35%,#8868a8 70%,transparent 100%);box-shadow:0 0 14px rgba(200,168,233,.75),0 0 28px rgba(168,140,200,.5),0 0 70px rgba(130,100,170,.3);filter:blur(.3px)}.journal-card.e-tired{background:radial-gradient(ellipse at 50% 25%,rgba(140,150,170,.1) 0,transparent 55%),linear-gradient(180deg,#1a1a26,#15141e 50%,#0c0c14)}.journal-card.e-tired .star-core{width:16px;height:16px;background:radial-gradient(circle at 35% 35%,#d8d8e0 0,#9898a8 40%,#555568 75%,transparent 100%);box-shadow:0 0 10px rgba(150,150,170,.5),0 0 22px hsla(240,8%,51%,.3);animation-duration:8s}.journal-card.e-grateful{background:radial-gradient(ellipse at 50% 20%,rgba(232,180,197,.22) 0,transparent 50%),radial-gradient(ellipse at 30% 75%,hsla(38,78%,74%,.12) 0,transparent 50%),linear-gradient(180deg,#251c30,#1d152a 50%,#120c20)}.journal-card.e-grateful .star-core{background:radial-gradient(circle at 35% 35%,#fff0f0 0,#f5c0b0 35%,#d99080 70%,transparent 100%);box-shadow:0 0 16px hsla(14,78%,83%,.85),0 0 32px rgba(232,180,197,.55),0 0 80px hsla(11,54%,68%,.3)}.journal-card.e-twin{background:radial-gradient(ellipse at 35% 22%,hsla(38,78%,74%,.18) 0,transparent 45%),radial-gradient(ellipse at 65% 30%,rgba(163,196,243,.18) 0,transparent 45%),linear-gradient(180deg,#1c1a3a,#15132e 50%,#0a0820)}.journal-card.e-twin .star-core{background:radial-gradient(circle at 35% 35%,#fff7e6 0,#f0c987 35%,#d4a574 70%,transparent 100%);box-shadow:0 0 12px hsla(38,78%,74%,.85),0 0 28px hsla(38,78%,74%,.5);animation:twinOrbit1 6s ease-in-out infinite;transform:translateX(-12px)}.journal-card.e-twin .star-core:after{position:absolute;top:2px;left:32px;width:18px;height:18px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#e8f0ff 0,#a3c4f3 35%,#5a7fb8 70%,transparent 100%);box-shadow:0 0 12px rgba(163,196,243,.85),0 0 28px rgba(163,196,243,.5);animation:twinOrbit2 6s ease-in-out infinite;content:""}@keyframes twinOrbit1{0%,to{transform:translateX(-12px) translateY(0)}50%{transform:translateX(-8px) translateY(-3px)}}@keyframes twinOrbit2{0%,to{transform:translateX(0) translateY(0)}50%{transform:translateX(-4px) translateY(3px)}}.journal-card.e-meteor{background:radial-gradient(ellipse at 30% 20%,hsla(44,61%,77%,.15) 0,transparent 50%),linear-gradient(180deg,#131532,#0c0e26 50%,#060818)}.journal-card.e-meteor .star-stage{overflow:hidden}.journal-card.e-meteor .main-star:before{position:absolute;top:30%;left:-20%;width:130%;height:1.5px;background:linear-gradient(90deg,transparent,hsla(44,61%,77%,.1) 30%,rgba(255,247,230,.95) 75%,#fff7e6 90%,transparent);box-shadow:0 0 8px rgba(255,247,230,.6),0 0 16px hsla(38,78%,74%,.4);animation:meteorStreak 5s ease-in-out infinite;content:"";transform:rotate(-18deg)}.journal-card.e-meteor .star-core{width:8px;height:8px;background:radial-gradient(circle at 35% 35%,#fff 0,#ffe8b0 50%,transparent 100%);box-shadow:0 0 12px #fff7e6,0 0 24px hsla(38,78%,74%,.6);animation:meteorHead 5s ease-in-out infinite;transform:translate(28px,-14px)}.journal-card.e-meteor .companion{display:none}@keyframes meteorStreak{0%,to{opacity:.5}50%{opacity:1}}@keyframes meteorHead{0%,to{opacity:.7;transform:translate(28px,-14px)}50%{opacity:1;transform:translate(32px,-16px)}}.record-page{position:relative;width:100vw;height:100vh;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;user-select:none;background:radial-gradient(ellipse at 30% 20%,#1a1340 0,#0a0e1f 55%,#050816 100%)}.record-top-bar{z-index:10;padding:24px 28px;background:transparent;backdrop-filter:none}.record-status{display:flex;gap:8px;align-items:center;color:var(--ink-faint);font-family:EB Garamond,serif;font-size:12px;font-style:italic;letter-spacing:.25em;text-transform:uppercase}.record-status .dot{width:6px;height:6px;border-radius:50%;background:var(--ink-faint);transition:all .5s ease}.record-status.recording .dot{background:var(--moon-warm);box-shadow:0 0 8px var(--moon-warm);animation:dotPulse 1.5s ease-in-out infinite}@keyframes dotPulse{0%,to{opacity:.5}50%{opacity:1}}.record-stage{position:relative;z-index:5;display:flex;align-items:center;justify-content:center;width:100%;height:100vh}.particles-canvas{position:absolute;inset:0;z-index:6;pointer-events:none}.recording-core{position:absolute;top:38%;left:50%;display:flex;align-items:center;justify-content:center;width:320px;height:320px;border:0;background:transparent;cursor:pointer;-webkit-tap-highlight-color:transparent;transform:translate(-50%,-50%)}.recording-halo{position:absolute;border-radius:50%;pointer-events:none;transition:opacity .15s ease-out,transform .15s ease-out}.recording-halo.halo-1{z-index:4;width:60px;height:60px;background:radial-gradient(circle,rgba(255,247,230,.95) 0,hsla(38,78%,74%,.5) 40%,transparent 75%);box-shadow:0 0 40px hsla(38,78%,74%,.7),0 0 80px rgba(232,180,197,.4)}.recording-halo.halo-2{z-index:3;width:110px;height:110px;background:radial-gradient(circle,hsla(38,78%,74%,.25) 0,rgba(232,180,197,.18) 50%,transparent 80%)}.recording-halo.halo-3{z-index:2;width:180px;height:180px;background:radial-gradient(circle,rgba(200,168,233,.15) 0,rgba(163,196,243,.08) 50%,transparent 80%)}.recording-halo.halo-4{z-index:1;width:280px;height:280px;background:radial-gradient(circle,rgba(168,140,233,.08) 0,transparent 70%)}.recording-core.idle .halo-1{animation:idle1 3.5s ease-in-out infinite}.recording-core.idle .halo-2{animation:idle2 4s ease-in-out infinite}.recording-core.idle .halo-3{animation:idle3 5s ease-in-out infinite}.recording-core.idle .halo-4{animation:idle4 6s ease-in-out infinite}@keyframes idle1{0%,to{opacity:.9;transform:scale(1)}50%{opacity:1;transform:scale(1.15)}}@keyframes idle2{0%,to{opacity:.7;transform:scale(1)}50%{opacity:.9;transform:scale(1.2)}}@keyframes idle3{0%,to{opacity:.55;transform:scale(1)}50%{opacity:.75;transform:scale(1.25)}}@keyframes idle4{0%,to{opacity:.35;transform:scale(1)}50%{opacity:.55;transform:scale(1.3)}}.core-hint{position:absolute;bottom:calc(62% - 216px);left:50%;color:var(--ink-faint);font-family:"Noto Serif SC",serif;font-size:13px;font-weight:300;letter-spacing:.4em;white-space:nowrap;pointer-events:none;transform:translateX(-50%);transition:opacity .5s ease}.recording-core.recording+.core-hint{opacity:0}.transcript{position:absolute;bottom:100px;left:50%;z-index:7;width:90%;max-width:860px;height:260px;overflow:hidden;pointer-events:none;-webkit-mask-image:linear-gradient(180deg,transparent,#000 35%,#000 80%,transparent);mask-image:linear-gradient(180deg,transparent,#000 35%,#000 80%,transparent);transform:translateX(-50%)}.transcript-inner{position:absolute;right:0;bottom:0;left:0;display:flex;flex-direction:column;gap:10px;align-items:center;transition:transform .6s cubic-bezier(.2,.8,.3,1)}.transcript-line{max-width:100%;padding:0 20px;overflow:visible;font-family:"Noto Serif SC",serif;font-weight:300;line-height:1.7;text-align:center;letter-spacing:.05em;white-space:normal;overflow-wrap:anywhere;transition:all .6s cubic-bezier(.2,.8,.3,1)}.record-duration{bottom:32px;z-index:8;color:var(--ink-ghost);font-family:EB Garamond,serif;font-size:11px;font-style:italic;letter-spacing:.4em;transition:opacity .5s ease}.record-duration,.record-processing-note{position:absolute;left:50%;transform:translateX(-50%)}.record-processing-note{bottom:112px;z-index:9;color:var(--ink-faint);font-family:"Noto Serif SC",serif;font-size:13px;font-weight:300;letter-spacing:.32em;white-space:nowrap;pointer-events:none;transition:opacity .4s ease}.record-hint{position:absolute;right:32px;bottom:32px;z-index:8;color:var(--ink-ghost);font-family:EB Garamond,serif;font-size:11px;font-style:italic;line-height:1.8;text-align:right;letter-spacing:.2em;pointer-events:none}.record-hint .key{margin-right:4px;color:var(--ink-faint)}.toast{position:absolute;top:50%;left:50%;z-index:50;max-width:400px;padding:24px 36px;border:1px solid hsla(44,61%,77%,.2);border-radius:16px;background:rgba(20,20,40,.85);color:var(--ink);font-family:"Noto Serif SC",serif;font-size:14px;line-height:1.8;text-align:center;pointer-events:none;opacity:0;backdrop-filter:blur(12px);transform:translate(-50%,-50%);transition:opacity .4s ease}.toast.show{pointer-events:all;opacity:1}.toast button{margin-top:16px;padding:8px 20px;border:1px solid hsla(44,61%,77%,.3);border-radius:100px;background:hsla(44,61%,77%,.12);color:var(--moon-gold);font-family:"Noto Serif SC",serif;font-size:13px;letter-spacing:.1em;cursor:pointer}.record-page.crystallizing .record-stage,.record-page.crystallizing .record-top-bar{pointer-events:none;opacity:0;transition:opacity .6s ease}.record-page .crystallize-shell{z-index:35}.crystallize-page{position:relative;width:100vw;height:100vh;overflow:hidden;background:radial-gradient(ellipse at 30% 20%,#1a1340 0,#0a0e1f 55%,#050816 100%)}.crystallize-shell{position:absolute;inset:0;z-index:5;overflow:hidden}.crystallize-stage{position:absolute;inset:0;z-index:20;display:flex;align-items:center;justify-content:center;pointer-events:none;opacity:0;transition:opacity .6s ease}.crystallize-stage.active{opacity:1}.crystallize-shell[data-phase=flying] .crystallize-stage{opacity:0;transition:opacity 1.5s ease}.crystallize-shell[data-phase=complete] .crystallize-stage{opacity:0}.crystallize-core{position:relative;display:flex;align-items:center;justify-content:center;width:240px;height:240px}.crystallize-halo{position:absolute;border-radius:50%;pointer-events:none}.crystallize-halo.halo-1{z-index:4;width:60px;height:60px;background:radial-gradient(circle,rgba(255,247,230,.95) 0,hsla(38,78%,74%,.5) 40%,transparent 75%);box-shadow:0 0 40px hsla(38,78%,74%,.7),0 0 80px rgba(232,180,197,.4)}.crystallize-halo.halo-2{z-index:3;width:110px;height:110px;background:radial-gradient(circle,hsla(38,78%,74%,.25) 0,rgba(232,180,197,.18) 50%,transparent 80%)}.crystallize-halo.halo-3{z-index:2;width:180px;height:180px;background:radial-gradient(circle,rgba(200,168,233,.15) 0,rgba(163,196,243,.08) 50%,transparent 80%)}.crystallize-halo.halo-4{z-index:1;width:280px;height:280px;background:radial-gradient(circle,rgba(168,140,233,.08) 0,transparent 70%)}.crystallize-stage.gathering .halo-1{animation:crystalGather1 2s ease-in forwards}.crystallize-stage.gathering .halo-2{animation:crystalGather2 2s ease-in forwards}.crystallize-stage.gathering .halo-3{animation:crystalGather3 2s ease-in forwards}.crystallize-stage.gathering .halo-4{animation:crystalGather4 2s ease-in forwards}@keyframes crystalGather1{0%{opacity:.9;transform:scale(1)}60%{opacity:1;transform:scale(1.3)}to{opacity:1;box-shadow:0 0 80px #f0c987,0 0 160px hsla(38,78%,74%,.7);transform:scale(.45)}}@keyframes crystalGather2{0%{opacity:.7;transform:scale(1)}to{opacity:0;transform:scale(.3)}}@keyframes crystalGather3{0%{opacity:.55;transform:scale(1)}to{opacity:0;transform:scale(.2)}}@keyframes crystalGather4{0%{opacity:.35;transform:scale(1)}to{opacity:0;transform:scale(.15)}}.crystal-particle{position:absolute;border-radius:50%;pointer-events:none;transition:all 1.8s cubic-bezier(.4,0,.2,1)}.crystallize-stage.gathering .crystal-particle{opacity:0!important;transform:translate(0) scale(0)!important}.crystal-text{position:absolute;bottom:20%;left:50%;color:var(--ink-soft);font-family:"Noto Serif SC",serif;font-size:14px;font-weight:300;letter-spacing:.4em;opacity:0;transform:translateX(-50%);transition:opacity 1s ease}.crystallize-stage.gathering .crystal-text{opacity:1;animation:crystalTextFade 4s ease-in-out forwards}@keyframes crystalTextFade{0%{opacity:0}25%,75%{opacity:1}to{opacity:0}}.crystal-newborn{position:absolute;top:calc(50% - 12px);left:calc(50% - 12px);z-index:25;width:24px;height:24px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#fff7e6 0,#f0c987 30%,#d4a574 70%,transparent 100%);box-shadow:0 0 24px #fff7e6,0 0 50px hsla(38,78%,74%,.85),0 0 100px rgba(232,180,197,.5),0 0 200px rgba(232,180,197,.3);pointer-events:none;opacity:0}.crystal-newborn.born{animation:bornPulse 1.2s ease-out forwards}.crystal-newborn.flying{animation:flyToSky 2.5s cubic-bezier(.2,.8,.4,1) forwards}@keyframes bornPulse{0%{opacity:0;transform:scale(.3)}40%{opacity:1;transform:scale(1.4)}to{opacity:1;transform:scale(1)}}@keyframes flyToSky{0%{opacity:1;transform:translate(0) scale(1)}to{opacity:1;transform:translate(42vw,-18vh) scale(.5)}}@media (max-width:640px){.top-bar{padding:18px 20px}.sky-header{top:82px;width:min(320px,calc(100vw - 40px))}.sky-header .subtitle{line-height:1.7}.sky-record-entry.recording-core{width:240px;height:240px}.sky-record-hint{top:calc(50% + 92px)}.card-overlay{padding:32px 20px}.card-close{top:20px;right:20px}.recording-core{width:280px;height:280px}.record-hint{right:20px;bottom:24px}.transcript{bottom:92px}}