:root{--bg-deep:#05070f;--bg-gradient:radial-gradient(ellipse at 50% 35%, #0f1429 0%, #080b18 55%, #04060c 100%);--text-main:#f5f3ec;--text-muted:#9e9ba7;--text-subtle:#6e6b77;--accent-purple:#c2b0ec;--accent-purple-dim:#c2b0ec40;--accent-gold:#dfd3b9;--accent-gold-dim:#dfd3b940;--sphere-core:#fff;--sphere-glow-inner:#d7c9f8;--sphere-glow-mid:#6f59a6;--sphere-glow-outer:#6f59a640;--font-serif:"Noto Serif KR", -apple-system, Georgia, serif;--font-sans:"Noto Sans KR", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--transition-slow:.8s cubic-bezier(.2, .8, .2, 1);--transition-normal:.4s cubic-bezier(.2, .8, .2, 1);--transition-fast:.2s ease-out;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html,body{background-color:var(--bg-deep);width:100%;height:100%;color:var(--text-main);font-family:var(--font-sans);letter-spacing:-.015em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:300;line-height:1.6;overflow-x:hidden}#root{background:var(--bg-gradient);flex-direction:column;min-height:100dvh;display:flex;position:relative}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:focus-visible{outline:2px solid var(--accent-purple);outline-offset:3px}button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:none}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.sphere-wrapper{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:none;justify-content:center;align-items:center;width:220px;height:220px;margin:0 auto;display:flex;position:relative}.sphere-ambient-glow{filter:blur(20px);pointer-events:none;background:radial-gradient(circle,#c2b0ec2e 0%,#876ebe14 45%,#0000 70%);border-radius:50%;width:260px;height:260px;transition:transform .6s,opacity .6s;animation:6s ease-in-out infinite ambientBreathe;position:absolute}@keyframes ambientBreathe{0%,to{opacity:.6;transform:scale(.92)}50%{opacity:.95;transform:scale(1.08)}}.sphere-ring-svg{pointer-events:none;width:100%;height:100%;position:absolute;transform:rotate(-90deg)}.sphere-ring-track{fill:none;stroke:#ffffff0d;stroke-width:1.5px}.sphere-ring-progress{fill:none;stroke:var(--accent-purple);stroke-width:2px;stroke-linecap:round;filter:drop-shadow(0 0 6px #c2b0eccc);transition:stroke-dashoffset 50ms linear,stroke .3s}.sphere-ring-progress.is-ready{stroke:var(--accent-gold);filter:drop-shadow(0 0 10px #dfd3b9e6)}.sphere-core-button{cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none;background:radial-gradient(circle at 38% 36%,#fff 0%,#e8e0fc 20%,#9a80cf 55%,#3b2866 85%,#150f28 100%);border:none;border-radius:50%;outline:none;justify-content:center;align-items:center;width:130px;height:130px;padding:0;transition:transform .25s cubic-bezier(.2,.8,.2,1),box-shadow .3s;display:flex;position:relative;box-shadow:0 0 25px #d2c3f573,0 0 60px #876ebe4d,inset 0 0 15px #fffc,inset -5px -5px 20px #28144b99}.sphere-core-button:focus-visible{outline:2px solid var(--accent-purple);outline-offset:8px}.sphere-wrapper.is-charging .sphere-core-button{transform:scale(1.08);box-shadow:0 0 35px #dccdffb3,0 0 80px #9b82d780,inset 0 0 20px #fffffff2}.sphere-wrapper.is-charging .sphere-ambient-glow{opacity:1;transform:scale(1.2)}.sphere-wrapper.is-ready .sphere-core-button{transform:scale(1.12);box-shadow:0 0 40px #f0e6ffd9,0 0 95px #af96eb99,0 0 130px #dfd3b94d,inset 0 0 25px #fff}.sphere-ripple{border:1.5px solid var(--accent-purple);pointer-events:none;border-radius:50%;width:130px;height:130px;animation:2s cubic-bezier(.1,.8,.3,1) infinite sphereRipple;position:absolute}@keyframes sphereRipple{0%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(1.6)}}.sphere-wrapper.is-releasing .sphere-core-button{filter:brightness(1.2);transition:transform 1s ease-out,filter 1s ease-out;transform:scale(1.18)}.sphere-wrapper.is-releasing .sphere-ambient-glow{opacity:.85;transition:transform 1s ease-out,opacity 1s ease-out;transform:scale(1.4)}.sphere-wrapper.is-revealed{opacity:.75;width:140px;height:140px;transition:opacity 1.2s,width 1.2s,height 1.2s}.sphere-wrapper.is-revealed .sphere-core-button{cursor:default;width:80px;height:80px;box-shadow:0 0 25px #c2b0ec66,0 0 50px #876ebe33,inset 0 0 10px #fffc}.sphere-wrapper.is-revealed .sphere-ambient-glow{opacity:.4;width:160px;height:160px}@media (prefers-reduced-motion:reduce){.sphere-ambient-glow{animation:none!important}.sphere-ripple{display:none;animation:none!important}.sphere-core-button,.sphere-ring-progress{transition:none!important}}.card-modal-backdrop{-webkit-backdrop-filter:blur(12px);z-index:1000;background-color:#030409d1;justify-content:center;align-items:center;padding:1.5rem;animation:.3s ease-out forwards modalFadeIn;display:flex;position:fixed;inset:0}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.card-modal-container{background:#0a0d1a;border:1px solid #c2b0ec33;border-radius:20px;flex-direction:column;width:100%;max-width:520px;max-height:90vh;animation:.35s cubic-bezier(.16,1,.3,1) forwards modalSlideUp;display:flex;overflow:hidden;box-shadow:0 20px 60px #000000b3,0 0 40px #876ebe26}@keyframes modalSlideUp{0%{transform:translateY(20px)scale(.97)}to{transform:translateY(0)scale(1)}}.card-modal-header{border-bottom:1px solid #ffffff0f;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.card-modal-title{font-family:var(--font-serif);color:var(--text-main);letter-spacing:-.02em;font-size:1.15rem;font-weight:500}.card-modal-close-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:1.25rem;transition:color .2s,background-color .2s;display:flex}.card-modal-close-btn:hover{color:var(--text-main);background-color:#ffffff14}.card-modal-body{flex-direction:column;align-items:center;gap:1.25rem;padding:1.5rem;display:flex;overflow-y:auto}.card-preview-wrapper{aspect-ratio:4/5;background-color:#05070f;border:1px solid #c2b0ec40;border-radius:14px;justify-content:center;align-items:center;width:100%;max-width:360px;display:flex;position:relative;overflow:hidden;box-shadow:0 10px 30px #00000080}.card-preview-img{object-fit:contain;width:100%;height:100%;display:block}.card-preview-loading{color:var(--text-muted);font-size:.9rem}.card-option-row{background-color:#ffffff08;border:1px solid #ffffff0d;border-radius:10px;justify-content:space-between;align-items:center;width:100%;padding:.75rem 1rem;display:flex}.card-option-label{color:var(--text-main);cursor:pointer;align-items:center;gap:.5rem;font-size:.9rem;display:flex}.card-checkbox{appearance:none;border:1.5px solid var(--accent-purple);cursor:pointer;background:0 0;border-radius:4px;place-content:center;width:18px;height:18px;transition:background-color .2s,border-color .2s;display:inline-grid}.card-checkbox:checked{background-color:var(--accent-purple)}.card-checkbox:checked:before{content:"";border-bottom:2px solid #05070f;border-left:2px solid #05070f;width:8px;height:5px;transform:rotate(-45deg)translate(1px,-1px)}.card-modal-footer{border-top:1px solid #ffffff0f;flex-direction:column;gap:.75rem;padding:1.25rem 1.5rem;display:flex}.card-button-group{gap:.75rem;display:flex}.card-action-btn{border-radius:10px;flex:1;justify-content:center;align-items:center;gap:.5rem;padding:.85rem 1rem;font-size:.95rem;font-weight:500;transition:all .2s;display:flex}.card-action-btn.primary{color:#070913;background:linear-gradient(135deg,#c2b0ec 0%,#9a80cf 100%);box-shadow:0 4px 15px #c2b0ec40}.card-action-btn.primary:hover{filter:brightness(1.1);transform:translateY(-1px)}.card-action-btn.secondary{color:var(--text-main);background:#ffffff0d;border:1px solid #ffffff1a}.card-action-btn.secondary:hover{background:#ffffff17}.card-modal-hint{color:var(--text-muted);text-align:center;font-size:.78rem;line-height:1.4}.card-status-message{text-align:center;border-radius:6px;padding:.4rem .8rem;font-size:.85rem}.card-status-message.success{color:#9ae6b4;background:#48bb7826}.card-status-message.error{color:#feb2b2;background:#f5656526}@media (width<=480px){.card-modal-backdrop{padding:.75rem}.card-button-group{flex-direction:column}}.app-container{z-index:1;flex-direction:column;width:100%;max-width:960px;min-height:100dvh;margin:0 auto;padding:1.5rem 1.25rem 2rem;display:flex;position:relative}.site-header{border-bottom:1px solid #ffffff0a;justify-content:space-between;align-items:center;padding:.5rem 0 1rem;display:flex}.brand-title{font-family:var(--font-serif);letter-spacing:.08em;color:var(--text-main);align-items:center;gap:.6rem;font-size:1.25rem;font-weight:500;text-decoration:none;transition:opacity .3s;display:flex}.brand-dot{background:var(--accent-purple);width:6px;height:6px;box-shadow:0 0 8px var(--accent-purple);border-radius:50%}.header-status{color:var(--text-subtle);letter-spacing:-.01em;font-size:.82rem}.stage-main{flex-direction:column;flex:1;justify-content:center;align-items:center;width:100%;padding:2rem 0;display:flex;position:relative}.step-pane{text-align:center;flex-direction:column;align-items:center;width:100%;max-width:620px;animation:.8s cubic-bezier(.16,1,.3,1) forwards fadeIn;display:flex}@keyframes fadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.step-harbor .sphere-container{margin-bottom:2rem}.step-harbor .heading-title{font-family:var(--font-serif);color:var(--text-main);word-break:keep-all;margin-bottom:.75rem;font-size:1.75rem;font-weight:400;line-height:1.45}.step-harbor .sub-desc{color:var(--text-muted);word-break:keep-all;margin-bottom:2.25rem;font-size:.95rem}.question-form{flex-direction:column;gap:1.25rem;width:100%;max-width:460px;margin-bottom:2rem;display:flex}.input-wrapper{width:100%;position:relative}.question-input{width:100%;color:var(--text-main);font-size:.98rem;font-family:var(--font-sans);background:#ffffff08;border:1px solid #c2b0ec33;border-radius:12px;padding:1rem 4.5rem 1rem 1.25rem;transition:all .3s}.question-input::placeholder{color:var(--text-subtle);font-weight:300}.question-input:focus{border-color:var(--accent-purple);background:#ffffff0d;outline:none;box-shadow:0 0 20px #c2b0ec26}.char-counter{color:var(--text-subtle);pointer-events:none;font-size:.78rem;position:absolute;top:50%;right:1rem;transform:translateY(-50%)}.btn-primary-action{color:var(--text-main);letter-spacing:-.01em;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:linear-gradient(135deg,#c2b0ec40 0%,#876ebe40 100%);border:1px solid #c2b0ec66;border-radius:12px;padding:.95rem 1.8rem;font-size:1rem;font-weight:400;transition:all .3s}.btn-primary-action:hover{border-color:var(--accent-purple);background:linear-gradient(135deg,#c2b0ec59 0%,#876ebe59 100%);transform:translateY(-2px);box-shadow:0 8px 24px #c2b0ec33}.step-awaken{flex-direction:column;align-items:center;display:flex}.awaken-header{flex-direction:column;justify-content:center;align-items:center;min-height:5.5rem;margin-bottom:2.5rem;display:flex}.awaken-instruction{font-family:var(--font-serif);color:var(--text-main);margin-bottom:.5rem;font-size:1.55rem;font-weight:400;line-height:1.5;transition:color .3s}.awaken-instruction.is-ready{color:var(--accent-gold);text-shadow:0 0 16px #dfd3b966}.awaken-sub-instruction{color:var(--text-muted);font-size:.92rem}.step-awaken .sphere-container{margin:1rem 0 2.5rem}.awaken-actions{flex-direction:column;align-items:center;gap:1rem;display:flex}.btn-bypass{color:var(--text-muted);background:#ffffff08;border:1px solid #ffffff14;border-radius:8px;padding:.5rem 1rem;font-size:.85rem;transition:all .2s}.btn-bypass:hover{color:var(--text-main);background:#ffffff14;border-color:#c2b0ec4d}.btn-back-link{color:var(--text-subtle);text-underline-offset:4px;font-size:.82rem;text-decoration:underline;transition:color .2s}.btn-back-link:hover{color:var(--text-muted)}.step-waiting{flex-direction:column;justify-content:center;align-items:center;gap:1.5rem;min-height:12rem;display:flex}.waiting-text{font-family:var(--font-serif);color:var(--text-muted);letter-spacing:.04em;font-size:1.15rem;animation:1.6s ease-in-out infinite waitingPulse}@keyframes waitingPulse{0%,to{opacity:.5}50%{opacity:.9}}.step-revealed{flex-direction:column;align-items:center;width:100%;display:flex}.step-revealed .sphere-container{margin-bottom:1.5rem}.revealed-content{text-align:center;flex-direction:column;align-items:center;width:100%;margin-bottom:2.75rem;display:flex}.revealed-question-badge{color:var(--accent-purple);word-break:break-all;background:#c2b0ec14;border:1px solid #c2b0ec2e;border-radius:20px;max-width:90%;margin-bottom:2rem;padding:.4rem 1rem;font-size:.88rem;line-height:1.4}.revealed-question-label{color:var(--text-subtle);margin-right:.4rem}.revealed-answer-text{font-family:var(--font-serif);color:#fff;text-shadow:0 0 25px #dccdff59;word-break:keep-all;letter-spacing:-.02em;max-width:680px;margin-bottom:2rem;font-size:2.4rem;font-weight:600;line-height:1.5}.revealed-contemplation{color:var(--text-muted);font-size:.95rem;line-height:1.6}.revealed-button-group{justify-content:center;gap:1rem;width:100%;max-width:420px;display:flex}.btn-card-save{color:#060810;letter-spacing:-.01em;background:linear-gradient(135deg,#c2b0ec 0%,#9a80cf 100%);border-radius:12px;flex:1;padding:.95rem 1.4rem;font-size:.98rem;font-weight:500;transition:all .3s;box-shadow:0 6px 20px #c2b0ec40}.btn-card-save:hover{filter:brightness(1.1);transform:translateY(-2px);box-shadow:0 10px 28px #c2b0ec59}.btn-new-question{color:var(--text-main);letter-spacing:-.01em;background:#ffffff0a;border:1px solid #ffffff1f;border-radius:12px;flex:1;padding:.95rem 1.4rem;font-size:.98rem;font-weight:400;transition:all .2s}.btn-new-question:hover{background:#ffffff14;border-color:#c2b0ec4d}.site-footer{text-align:center;border-top:1px solid #ffffff08;padding-top:1.5rem}.footer-quote{color:var(--text-subtle);letter-spacing:-.01em;font-size:.85rem}@media (width<=640px){.app-container{padding:1rem 1rem 1.5rem}.step-harbor .heading-title{font-size:1.45rem}.awaken-instruction{font-size:1.35rem}.revealed-answer-text{font-size:1.8rem;line-height:1.45}.revealed-button-group{flex-direction:column;gap:.75rem}.question-form{gap:1rem}}
