*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--glass-hue: 250;--glass-bg: oklch(.97 .005 var(--glass-hue));--glass-text: oklch(.25 .02 260);--glass-dim: oklch(.55 .015 260);--glass-faint: oklch(.72 .01 260);--glass-accent: oklch(.62 .12 280);--glass-surface: oklch(.985 .003 var(--glass-hue))}body{font-family:Sora,system-ui,sans-serif;background:var(--glass-bg);color:var(--glass-text);line-height:1.7;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;background:linear-gradient(135deg,oklch(.92 .04 300 / .04),transparent 50%),linear-gradient(225deg,oklch(.92 .04 200 / .03),transparent 50%),radial-gradient(ellipse at 30% 20%,oklch(.9 .05 340 / .03),transparent 60%),radial-gradient(ellipse at 70% 80%,oklch(.9 .05 220 / .03),transparent 60%);background-size:200% 200%;animation:iridescent 45s ease-in-out infinite;pointer-events:none;z-index:0;mix-blend-mode:multiply}@keyframes iridescent{0%,to{background-position:0% 0%,100% 100%,0% 0%,100% 100%}25%{background-position:50% 100%,50% 0%,100% 50%,0% 50%}50%{background-position:100% 100%,0% 0%,50% 100%,50% 0%}75%{background-position:50% 0%,50% 100%,0% 50%,100% 50%}}.glass-container{position:relative;z-index:1;max-width:540px;width:100%;animation:breathe 5s ease-in-out infinite}@keyframes breathe{0%,to{transform:scale(1)}50%{transform:scale(1.012)}}.round-area{opacity:1;transition:opacity .6s ease}.round-area.fading{opacity:0}.prompt{font-size:1.15rem;font-weight:400;color:var(--glass-text);margin-bottom:1.5rem;letter-spacing:-.01em}textarea{width:100%;background:var(--glass-surface);border:1px solid oklch(.85 .01 var(--glass-hue));border-radius:8px;padding:1rem 1.1rem;color:var(--glass-text);font-family:Sora,system-ui,sans-serif;font-size:.95rem;line-height:1.6;resize:none;field-sizing:content;min-height:2.8rem;max-height:10rem;transition:border-color .3s ease,box-shadow .3s ease}textarea:focus{outline:none;border-color:#a6aad4;box-shadow:0 0 0 3px #c5caf51f}textarea::placeholder{color:var(--glass-faint);font-style:normal}.response{margin-top:1.5rem;font-size:.95rem;line-height:1.8;color:var(--glass-dim);min-height:1.5rem}.response .word{display:inline;opacity:0;transition:opacity .2s ease}.response .word.visible{opacity:1}.hint{margin-top:1.25rem;font-size:.8rem;color:var(--glass-faint);font-weight:300;letter-spacing:.01em;opacity:0;transition:opacity .8s ease}.hint.visible{opacity:1}.reveal{margin-top:2rem;font-size:.95rem;line-height:1.8;color:var(--glass-dim)}.reveal p{margin-bottom:1rem;opacity:0;transition:opacity 1.5s ease}.reveal p.visible{opacity:1}.reveal p:last-child{margin-bottom:0;font-weight:500;color:var(--glass-text)}.round-indicator{display:flex;gap:6px;margin-bottom:2rem}.round-dot{width:5px;height:5px;border-radius:50%;background:oklch(.85 .01 var(--glass-hue));transition:background .4s ease,transform .3s ease}.round-dot.active{background:var(--glass-accent);transform:scale(1.3)}.round-dot.done{background:#9da1ca}.back{position:fixed;top:1.5rem;right:1.5rem;color:var(--glass-faint);text-decoration:none;font-size:.8rem;letter-spacing:.02em;transition:color .2s ease;z-index:100}.back:hover{color:var(--glass-accent)}.cee-notes{position:fixed;bottom:1.5rem;left:1.5rem;z-index:100}.cee-notes summary{cursor:pointer;font-family:DM Mono,monospace;font-size:.75rem;color:var(--glass-faint);letter-spacing:.03em;list-style:none}.cee-notes summary::-webkit-details-marker{display:none}.cee-notes summary::marker{content:""}.cee-notes .notes-content{position:fixed;bottom:3rem;left:1.5rem;font-size:.75rem;color:var(--glass-dim);line-height:1.7;font-family:DM Mono,monospace;max-width:320px;max-height:60vh;overflow-y:auto;background:#f4f5f7;border:1px solid oklch(.88 .01 var(--glass-hue));border-radius:8px;padding:1rem 1.1rem;box-shadow:0 4px 20px #5d646f0f}.cee-notes .notes-content p+p{margin-top:.6rem}@media(max-width:640px){body{padding:1.5rem 1.25rem}.prompt{font-size:1.05rem}.back{top:1rem;right:1rem}.cee-notes{bottom:1rem;left:1rem}}@media(prefers-reduced-motion:reduce){body:before{animation:none}.glass-container{animation:none}.response .word{transition:none;opacity:1}.hint,.reveal p{transition:none}}
