:root{color-scheme:dark;--bg: #031015;--panel: rgba(206, 247, 244, .06);--panel-strong: rgba(206, 247, 244, .12);--line: rgba(173, 228, 223, .16);--text: #e9fbf8;--muted: rgba(214, 244, 239, .64);--glow: #5ed9d0;--glow-soft: rgba(94, 217, 208, .34);--glow-deep: #2aa9a4;--warm: #ffb874;--success: #88f6dd;--danger: #ff9ea6;--shadow: 0 28px 96px rgba(0, 0, 0, .42)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:"Noto Serif SC",Songti SC,Microsoft YaHei,serif;background:radial-gradient(circle at 52% 12%,rgba(94,217,208,.22),transparent 26%),radial-gradient(circle at 16% 20%,rgba(67,173,255,.12),transparent 34%),radial-gradient(circle at 82% 88%,rgba(42,169,164,.14),transparent 40%),linear-gradient(180deg,#02080c,#05131a 46%,#062228);color:var(--text);overflow-x:hidden}button,input,textarea{font:inherit}button{border:0;background:none;color:inherit}.experience-shell{position:relative;min-height:100vh;overflow:hidden}.experience-shell:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 50% 18%,rgba(125,245,235,.1),transparent 22%),radial-gradient(circle at 50% 92%,rgba(84,189,255,.08),transparent 36%);pointer-events:none;z-index:0}.drawer-fab{position:fixed;right:22px;bottom:24px;z-index:6;width:66px;height:66px;border-radius:22px;background:#beefeb14;border:1px solid rgba(169,225,221,.2);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);box-shadow:0 16px 42px #00000047,inset 0 1px #ffffff1f;cursor:pointer;display:grid;place-items:center;overflow:hidden;transition:transform .2s ease,background .2s ease}.drawer-fab:hover{transform:translateY(-2px);background:#beefeb1f}.drawer-fab-glow{position:absolute;top:10px;right:10px;bottom:10px;left:10px;border-radius:18px;background:radial-gradient(circle,rgba(94,217,208,.28),transparent 70%);filter:blur(6px)}.drawer-fab-value{position:relative;font-size:1.1rem;font-weight:700;color:#d7fbf6f0;letter-spacing:.04em}.stage{position:relative;z-index:2;min-height:100vh;min-height:100svh;max-width:820px;margin:0 auto;padding:28px 22px 26px;display:flex;flex-direction:column;gap:14px;backface-visibility:hidden}.first-fold{min-height:calc(100vh - 54px);min-height:calc(100svh - 54px);display:grid;grid-template-rows:61.8% 38.2%;gap:14px}.mandala-stage{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:0;padding-top:10px;gap:14px}.karma-mandala{--breath-duration: 5.2s;--instability: .2;--touch-x: 50%;--touch-y: 50%;--tilt-x: 0deg;--tilt-y: 0deg;width:clamp(190px,46vw,308px);aspect-ratio:1;border:0;padding:0;background:transparent;display:inline-grid;place-items:center;position:relative;transform:perspective(900px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y)) translateZ(0);transition:transform .28s ease,filter .26s ease;touch-action:pan-y;cursor:pointer}.karma-mandala:before{content:"";position:absolute;top:10%;right:10%;bottom:10%;left:10%;border-radius:50%;background:radial-gradient(circle at var(--touch-x) var(--touch-y),rgba(153,255,240,.28),rgba(74,212,201,.2) 32%,transparent 72%);filter:blur(22px);opacity:.74;pointer-events:none;transition:opacity .2s ease}.karma-mandala:after{content:"";position:absolute;top:18%;right:18%;bottom:18%;left:18%;border-radius:50%;border:1px solid rgba(138,236,227,.24);box-shadow:inset 0 0 22px #2db2aa29;opacity:.3;pointer-events:none;animation:haloDrift calc(var(--breath-duration) * 1.3) ease-in-out infinite}.karma-mandala.restless{animation:shellDrift calc(var(--breath-duration) * .9) ease-in-out infinite}.karma-mandala.responding{filter:brightness(1.08)}.karma-mandala.responding:before{opacity:1}.karma-mandala.responding .fire-deity-shell{animation:flameBreath var(--breath-duration) ease-in-out infinite,flameFloat calc(var(--breath-duration) * 1.25) ease-in-out infinite,touchInhale .92s cubic-bezier(.2,.74,.24,1)}.fire-deity-shell{position:relative;width:74%;height:84%;animation:flameBreath var(--breath-duration) ease-in-out infinite,flameFloat calc(var(--breath-duration) * 1.25) ease-in-out infinite}.fire-core{position:absolute;left:50%;bottom:12%;width:42%;height:54%;transform:translate(-50%);border-radius:56% 56% 46% 46%/62% 62% 38% 38%;background:radial-gradient(circle at 48% 68%,#f8fffce6,#7df0e1d1 34%,#33bfb49e 66%,#ffb8746b 82%,#ffb87414);filter:blur(1px);box-shadow:0 0 34px #5be0d18f,0 0 84px #ffb8744d;animation:corePulse calc(var(--breath-duration) * .92) ease-in-out infinite}.fire-heart{position:absolute;left:50%;bottom:22%;width:21%;height:27%;transform:translate(-50%);border-radius:50%;background:radial-gradient(circle,rgba(255,251,240,.96),rgba(255,191,132,.7) 58%,transparent 100%);filter:blur(1.2px);opacity:.9;animation:heartPulse calc(var(--breath-duration) * .8) ease-in-out infinite}.fire-aura{position:absolute;top:6%;right:10%;bottom:6%;left:10%;border-radius:48%;background:radial-gradient(circle at 50% 74%,rgba(74,220,206,.28),transparent 44%),radial-gradient(circle at 50% 24%,rgba(255,184,116,.14),transparent 68%);filter:blur(14px);pointer-events:none;animation:auraWave calc(var(--breath-duration) * 1.1) ease-in-out infinite}.fire-particle{position:absolute;left:var(--fx);top:var(--fy);width:var(--fs);height:var(--fs);border-radius:50%;background:radial-gradient(circle,#fafffceb,#76eedfb8 55%,#ffba7f57 85%,#ffba7f29);filter:blur(var(--fblur));transform:translate(-50%,-50%);opacity:.54;animation:particleBreathe var(--fdr) ease-in-out infinite;animation-delay:var(--fd)}.karma-mandala.pumping .fire-deity-shell{animation:flameBreath var(--breath-duration) ease-in-out infinite,flameFloat calc(var(--breath-duration) * 1.25) ease-in-out infinite,shellSurge 1.28s ease-out}.karma-mandala.pumping .fire-core{animation:corePulse calc(var(--breath-duration) * .92) ease-in-out infinite,fireBurst 1.2s ease-out}.karma-mandala.pumping .fire-particle{animation:particleBreathe var(--fdr) ease-in-out infinite,particleBurst 1.16s ease-out}.mandala-caption{text-align:center}.state-label,.state-copy,.section-kicker,.blessing-text,.status-line,.summary-label,.drawer-user span,.podium-empty{margin:0}.state-label{color:#ffe7c0e6;font-size:.86rem;letter-spacing:.18em;text-transform:uppercase}.state-copy{margin-top:8px;color:var(--muted);font-size:.94rem}.ritual-zone{min-height:0;display:flex;align-items:center}.composer-shell{width:100%;display:flex;flex-direction:column;gap:12px;justify-content:center}.prayer-composer,.blessing-panel,.status-panel,.insight-card,.podium-card,.drawer-header,.drawer-summary,.name-panel,.drawer-actions,.drawer-item{background:linear-gradient(180deg,#cef7f414,#cef7f408);border:1px solid rgba(168,232,226,.14);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px)}.prayer-composer,.blessing-panel,.status-panel,.insight-card,.podium-card{border-radius:28px}.prayer-composer{padding:22px;animation:panelRise .28s ease}.composer-label{display:block;margin-bottom:10px;color:var(--muted);font-size:.92rem}.prayer-input,.name-input{width:100%;border-radius:20px;border:1px solid rgba(168,232,226,.2);background:#040d129e;color:var(--text);outline:none;transition:border-color .2s ease,box-shadow .2s ease}.prayer-input{min-height:128px;padding:18px 18px 22px;resize:none;line-height:1.8}.name-input{min-height:52px;padding:12px 16px}.prayer-input:focus,.name-input:focus{border-color:#66e5da8f;box-shadow:0 0 0 4px #66e5da1f}.collapse-link{margin-top:12px;padding:0;color:var(--muted);cursor:pointer}.ritual-button{position:relative;width:min(100%,700px);min-height:138px;margin:0 auto;border-radius:999px;overflow:hidden;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:radial-gradient(circle at 50% 22%,rgba(255,255,255,.16),transparent 24%),linear-gradient(135deg,#4ad6c9f2,#2b98cbe6,#ffb676e0);box-shadow:0 26px 84px #34abc64d,inset 0 1px #ffffff38,inset 0 -10px 24px #0c3d5047;transition:transform .25s ease,opacity .25s ease}.ritual-button:hover:not(:disabled){transform:translateY(-2px) scale(1.01)}.ritual-button:disabled{cursor:not-allowed;opacity:.56}.ritual-button.active{min-height:116px}.button-glow{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 50% 54%,rgba(255,255,255,.18),transparent 54%),linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);animation:buttonShimmer 4.8s ease-in-out infinite}.button-title,.button-subtitle{position:relative;z-index:1}.button-title{font-size:clamp(1.58rem,2.8vw,2.26rem);letter-spacing:.04em}.button-subtitle{color:#e7fcf8e6;font-size:.95rem}.blessing-panel{min-height:164px;padding:24px}.section-kicker{color:var(--muted);font-size:.8rem;letter-spacing:.16em;text-transform:uppercase}.blessing-text{margin-top:12px;font-size:clamp(1.12rem,2.4vw,1.52rem);line-height:1.86}.status-panel{min-height:110px;padding:18px 24px}.status-slot{min-height:72px;display:flex;flex-direction:column;justify-content:center;gap:8px}.status-line{line-height:1.6}.status-line.muted{color:var(--muted)}.status-line.success{color:var(--success)}.status-line.error{color:var(--danger)}.bottom-dock{margin-top:auto;display:flex;flex-direction:column;gap:14px}.insight-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.insight-card{min-height:132px;padding:20px}.insight-card strong{display:block;margin-top:10px;font-size:clamp(1.06rem,2vw,1.34rem);line-height:1.58}.podium-card{padding:18px 20px}.podium-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.podium-item{min-height:88px;padding:14px;border-radius:18px;background:#cef7f40d;border:1px solid rgba(168,232,226,.14);display:flex;flex-direction:column;gap:8px}.podium-1{background:linear-gradient(180deg,#85f4e32e,#cef7f40a)}.podium-2{background:linear-gradient(180deg,#77e1f726,#cef7f40a)}.podium-3{background:linear-gradient(180deg,#ffba7f26,#cef7f40a)}.podium-rank{color:var(--muted);font-size:.82rem}.podium-name{font-size:1rem;word-break:break-word}.podium-score{margin-top:auto;font-size:1.08rem}.podium-empty{color:var(--muted)}.drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:7;background:#0000;pointer-events:none;transition:background .28s ease}.wishwall-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:8;background:#0000;pointer-events:none;transition:background .28s ease}.drawer-fab,.ritual-button,.prayer-composer,.blessing-panel,.status-panel,.insight-card,.podium-card,.leaderboard-drawer,.wishwall-panel{backface-visibility:hidden;transform:translateZ(0)}.wishwall-backdrop.visible{background:#00000080;pointer-events:auto}.drawer-backdrop.visible{background:#0000006b;pointer-events:auto}.wishwall-panel{position:absolute;left:50%;top:50%;width:min(860px,calc(100vw - 28px));max-height:min(82vh,840px);transform:translate(-50%,-45%) scale(.98);border-radius:28px;background:#080b10f7;border:1px solid rgba(168,232,226,.16);box-shadow:0 36px 120px #00000085;display:flex;flex-direction:column;gap:14px;padding:22px;opacity:0;pointer-events:none;transition:transform .3s ease,opacity .3s ease}.wishwall-panel.open{transform:translate(-50%,-50%) scale(1);opacity:1;pointer-events:auto}.wishwall-actions{display:flex;align-items:center;gap:8px}.wishwall-header h2{margin:8px 0 0;font-size:1.35rem}.wishwall-list{min-height:0;overflow-y:auto;display:grid;gap:12px;padding-right:4px}.wishwall-empty{margin:12px 0 0;color:var(--muted)}.wish-card{border-radius:20px;border:1px solid rgba(168,232,226,.14);background:linear-gradient(180deg,#cef7f414,#cef7f408);box-shadow:0 12px 40px #0000003d;padding:14px;display:grid;gap:10px}.wish-top-1{border-color:#85f4e361;background:linear-gradient(180deg,#85f4e333,#cef7f408)}.wish-top-2{border-color:#77e1f757;background:linear-gradient(180deg,#77e1f72b,#cef7f408)}.wish-top-3{border-color:#ffba7f52;background:linear-gradient(180deg,#ffba7f24,#cef7f408)}.wish-rank{display:inline-flex;align-items:center;justify-content:center;min-width:48px;min-height:30px;border-radius:999px;background:#cef7f41f;color:#d9fcf7e6;font-size:.82rem}.wish-time{color:var(--muted);font-size:.82rem}.wish-blessing{margin:0;color:#ffe7c0d6;line-height:1.6}.wish-foot{color:var(--muted);font-size:.84rem}.wish-support{min-height:42px;padding:0 14px;border-radius:999px;border:1px solid rgba(102,229,218,.24);background:#66e5da24;color:#e2fdf8f2;cursor:pointer}.wish-support:disabled{cursor:not-allowed;opacity:.56}.leaderboard-drawer{position:absolute;top:0;right:0;width:min(440px,100vw);height:100%;padding:28px 22px 36px;background:#080b10f5;border-left:1px solid rgba(168,232,226,.12);transform:translate(100%);transition:transform .32s ease;display:flex;flex-direction:column;gap:18px;overflow-y:auto}.leaderboard-drawer.open{transform:translate(0)}.drawer-header,.drawer-summary,.name-panel,.drawer-actions,.drawer-item{border-radius:24px}.drawer-header{padding:20px;display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.drawer-header h2{margin:8px 0 0;font-size:1.35rem}.drawer-close,.refresh-button,.name-save,.rename-trigger{cursor:pointer;transition:transform .2s ease,opacity .2s ease}.drawer-close:hover,.refresh-button:hover,.name-save:hover,.rename-trigger:hover{transform:translateY(-1px)}.drawer-close:disabled,.refresh-button:disabled,.name-save:disabled,.rename-trigger:disabled{cursor:not-allowed;opacity:.55}.drawer-summary{padding:18px 20px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.name-inline{display:inline-flex;align-items:center;gap:6px}.name-refresh{width:20px;height:20px;border-radius:999px;border:1px solid rgba(170,233,226,.24);background:#cef7f40f;color:#d7fbf68a;font-size:11px;line-height:1;display:inline-grid;place-items:center;cursor:pointer}.name-refresh:hover:not(:disabled){color:#e6fdf9d6;border-color:#66e5da66}.name-refresh:disabled{cursor:not-allowed;opacity:.45}.summary-label{color:var(--muted);font-size:.76rem;letter-spacing:.14em;text-transform:uppercase}.drawer-summary strong{display:block;margin-top:8px;font-size:1.1rem;word-break:break-word}.name-panel{padding:20px}.name-panel-copy strong{display:block;margin-bottom:8px;font-size:1.05rem}.name-panel-copy p{margin:0;color:var(--muted);line-height:1.7}.name-editor{display:grid;gap:12px;margin-top:16px}.my-wishes-panel{padding:18px;border-radius:24px;background:linear-gradient(180deg,#cef7f414,#cef7f408);border:1px solid rgba(168,232,226,.14);box-shadow:var(--shadow)}.my-wishes-header,.wishwall-header,.wish-card-head,.wish-foot{display:flex;align-items:center;justify-content:space-between;gap:10px}.refresh-inline{min-height:34px;padding:0 12px;border-radius:999px;border:1px solid rgba(102,229,218,.24);background:#66e5da24;color:#e1fdf8eb;cursor:pointer}.refresh-inline:disabled{cursor:not-allowed;opacity:.58}.my-wishes-list{margin-top:12px;display:grid;gap:10px;max-height:280px;overflow-y:auto;padding-right:4px}.my-wish-item{border-radius:16px;border:1px solid rgba(168,232,226,.14);background:#cef7f40a;padding:12px}.my-wish-empty{margin:0;color:var(--muted)}.wish-content{margin:0;line-height:1.6;word-break:break-word}.wish-meta{margin:8px 0 0;display:flex;flex-wrap:wrap;gap:8px 12px;color:var(--muted);font-size:.84rem}.name-save,.refresh-button,.rename-trigger{min-height:48px;padding:0 18px;border-radius:999px;background:#66e5da29;border:1px solid rgba(102,229,218,.22)}.rename-trigger{width:100%;margin-top:16px}.drawer-actions{padding:16px 20px}.refresh-button{width:100%}.drawer-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}.rank-section{display:grid;gap:10px}.drawer-item{padding:16px 18px;display:grid;grid-template-columns:52px 1fr auto;align-items:center;gap:14px}.drawer-item.is-me{border-color:#66e5da52;box-shadow:inset 0 0 0 1px #66e5da29}.drawer-rank{display:inline-flex;align-items:center;justify-content:center;height:36px;border-radius:999px;background:#cef7f414;color:var(--muted)}.drawer-user strong,.drawer-score{display:block}.drawer-user span{color:var(--muted);font-size:.9rem}.drawer-score{font-size:1.12rem}@keyframes haloDrift{0%,to{transform:scale(.97);opacity:.26}50%{transform:scale(1.04);opacity:.46}}@keyframes flameFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes touchInhale{0%{transform:scale(1)}40%{transform:scale(1.035)}to{transform:scale(1)}}@keyframes flameBreath{0%,to{opacity:.74;transform:scale(.97)}50%{opacity:1;transform:scale(1.03)}}@keyframes corePulse{0%,to{transform:translate(-50%) scale(.94);opacity:.78}50%{transform:translate(-50%) scale(1.08);opacity:1}}@keyframes heartPulse{0%,to{transform:translate(-50%) scale(.9);opacity:.72}50%{transform:translate(-50%) scale(1.08);opacity:1}}@keyframes auraWave{0%,to{transform:scale(.96);opacity:.46}50%{transform:scale(1.08);opacity:.84}}@keyframes particleBreathe{0%,to{transform:translate(-50%,-50%) translate(0) translateY(0) scale(.74);opacity:.42}35%{transform:translate(-50%,-50%) translate(calc(var(--fshift) * .42)) translateY(-.18rem) scale(1.16);opacity:.88}70%{transform:translate(-50%,-50%) translate(calc(var(--fshift) * -.22)) translateY(-.34rem) scale(.94);opacity:.66}}@keyframes particleBurst{0%{opacity:.65}45%{opacity:1;transform:translate(-50%,-50%) translate(calc(var(--fshift) * 1.3)) translateY(-.58rem) scale(1.3)}to{opacity:.54}}@keyframes fireBurst{0%{opacity:.76;transform:translate(-50%) scale(.95)}35%{opacity:1;transform:translate(-50%) scale(1.22)}to{opacity:.84;transform:translate(-50%) scale(1)}}@keyframes shellDrift{0%,to{transform:translate(0) rotate(0)}25%{transform:translate(calc(var(--instability) * 1px),calc(var(--instability) * -1.6px)) rotate(calc(var(--instability) * .4deg))}50%{transform:translate(calc(var(--instability) * -1.2px),calc(var(--instability) * 1.1px)) rotate(calc(var(--instability) * -.5deg))}75%{transform:translate(calc(var(--instability) * 1.5px),calc(var(--instability) * .8px)) rotate(calc(var(--instability) * .35deg))}}@keyframes pumpLine{0%{stroke-dashoffset:1;opacity:.28;stroke:#66e5da70}35%{opacity:1;stroke:#fff3db}70%{stroke-dashoffset:0;opacity:1;stroke:#ffbb72f5}to{stroke-dashoffset:0;opacity:1;stroke:#66e5dae0}}@keyframes seedFlash{0%{transform:scale(1);opacity:.8}30%{transform:scale(1.55);opacity:1}to{transform:scale(1);opacity:.92}}@keyframes shellSurge{0%{opacity:1}30%{opacity:1}to{opacity:1}}@keyframes buttonShimmer{0%,to{transform:translate(-8%);opacity:.52}50%{transform:translate(8%);opacity:.85}}@keyframes panelRise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 860px){.stage{padding-top:58px}.first-fold{min-height:calc(100vh - 84px);min-height:calc(100svh - 84px)}.insight-pair,.podium-list{grid-template-columns:1fr}}@media (max-width: 640px){.drawer-fab{right:16px;bottom:16px;width:60px;height:60px;border-radius:20px}.stage{padding:18px 16px 94px}.first-fold{min-height:calc(100vh - 112px);min-height:calc(100svh - 112px);grid-template-rows:62% 38%;gap:12px}.mandala-stage{padding-top:4px;gap:10px}.karma-mandala{width:clamp(170px,58vw,248px)}.fire-deity-shell{width:82%;height:88%}.ritual-zone{align-items:flex-end}.ritual-button{min-height:108px;border-radius:32px}.button-title{font-size:1.34rem}.button-subtitle{font-size:.88rem}.state-label{font-size:.78rem;letter-spacing:.14em}.state-copy{font-size:.88rem}.prayer-composer,.blessing-panel,.status-panel,.insight-card,.podium-card{border-radius:22px}.leaderboard-drawer{top:auto;bottom:0;width:100%;height:min(82vh,720px);border-left:0;border-top:1px solid rgba(168,232,226,.12);border-radius:28px 28px 0 0;transform:translateY(100%)}.wishwall-panel{left:0;right:0;top:auto;bottom:0;width:100%;max-height:84vh;border-radius:28px 28px 0 0;padding:16px;transform:translateY(100%)}.wishwall-panel.open{transform:translateY(0)}.wishwall-header{align-items:flex-start}.wishwall-actions{flex-direction:column;align-items:stretch}.leaderboard-drawer.open{transform:translateY(0)}.drawer-summary,.drawer-item{grid-template-columns:1fr}.wish-card-head{align-items:flex-start;flex-wrap:wrap}.wish-support{width:100%}.drawer-score{text-align:left}}
