:root,[data-theme=day]{--sky-a:#bfe3f7;--sky-b:#e4f1fb;--sky-c:#fde6ef;--orb-1:#9fd6f2;--orb-2:#ffcfe2;--orb-3:#fff1b8;--cloud-hi:#fff;--cloud-lo:#e3eefa;--cloud-shadow:#5082b447;--ink:#3a4a5c;--ink-soft:#7b8ea3;--accent:#ff8fb3;--accent-ink:#fff;--glass:#ffffff8c;--glass-line:#fffc;--logo-filter:invert(27%) sepia(12%) saturate(900%) hue-rotate(170deg);--stars:0}[data-theme=yume]{--sky-a:#f7d4e6;--sky-b:#e5dcfb;--sky-c:#d2e9ff;--orb-1:#ffb8d9;--orb-2:#c9b8ff;--orb-3:#b8f0ff;--cloud-hi:#fffafd;--cloud-lo:#f1e3fb;--cloud-shadow:#aa6ebe4d;--ink:#5b4470;--ink-soft:#9a86ad;--accent:#b58cff;--accent-ink:#fff;--glass:#fffaff80;--glass-line:#ffffffd9;--logo-filter:invert(28%) sepia(25%) saturate(1200%) hue-rotate(240deg);--stars:0}[data-theme=night]{--sky-a:#151a3a;--sky-b:#2d2f6b;--sky-c:#5a4a8c;--orb-1:#4b5bd6;--orb-2:#a56bd6;--orb-3:#ff9ec7;--cloud-hi:#f6f3ff;--cloud-lo:#cfc8f0;--cloud-shadow:#beaaff73;--ink:#2f2a52;--ink-soft:#c9c3ef;--accent:#ffd479;--accent-ink:#2f2a52;--glass:#28245a73;--glass-line:#ffffff38;--logo-filter:invert(96%) sepia(8%) saturate(500%) hue-rotate(200deg);--stars:1}*{box-sizing:border-box}html,body{height:100%;margin:0}body{overscroll-behavior:none;font-family:var(--font-maru), "Hiragino Maru Gothic ProN", sans-serif;color:var(--ink);background:var(--sky-b);transition:color .8s;overflow-x:hidden}.sky{background:linear-gradient(160deg, var(--sky-a), var(--sky-b) 50%, var(--sky-c));transition:background .8s;position:fixed;inset:0;overflow:hidden}.orb{filter:blur(80px);opacity:.7;border-radius:50%;animation:28s ease-in-out infinite alternate orb;position:absolute}.orb:first-child{background:var(--orb-1);width:55vmax;height:55vmax;top:-20vmax;left:-15vmax}.orb:nth-child(2){background:var(--orb-2);width:45vmax;height:45vmax;animation-duration:34s;bottom:-15vmax;right:-15vmax}.orb:nth-child(3){background:var(--orb-3);opacity:.5;width:30vmax;height:30vmax;animation-duration:22s;top:30vh;left:40vw}@keyframes orb{to{transform:translate(8vw,6vh)scale(1.15)}}.stars{opacity:var(--stars);background-image:radial-gradient(1.5px 1.5px at 12% 18%,#fff,#0000),radial-gradient(1px 1px at 28% 72%,#fff,#0000),radial-gradient(1.5px 1.5px at 44% 34%,#fff,#0000),radial-gradient(1px 1px at 63% 12%,#fff,#0000),radial-gradient(2px 2px at 78% 58%,#fff,#0000),radial-gradient(1px 1px at 88% 26%,#fff,#0000),radial-gradient(1px 1px at 8% 88%,#fff,#0000),radial-gradient(1.5px 1.5px at 52% 90%,#fff,#0000);transition:opacity .8s;animation:4s ease-in-out infinite alternate twinkle;position:absolute;inset:0}@keyframes twinkle{0%{filter:brightness(.6)}to{filter:brightness(1.3)}}.grain{opacity:.12;mix-blend-mode:overlay;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:absolute;inset:0}header{z-index:50;top:calc(20px + env(safe-area-inset-top,0px));pointer-events:none;justify-content:space-between;align-items:flex-start;gap:12px;display:flex;position:fixed;left:24px;right:24px}.brand{pointer-events:auto}.brand h1{margin:0}.brand img{width:auto;height:40px;filter:var(--logo-filter);transition:filter .8s;display:block}.brand p{letter-spacing:.12em;color:var(--ink-soft);margin:6px 0 0;font-size:12px}[data-theme=night] .brand p{color:#d9d4ff}.switch{pointer-events:auto;background:var(--glass);border:1px solid var(--glass-line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:999px;gap:4px;padding:4px;display:flex}.switch button{font:inherit;cursor:pointer;color:var(--ink-soft);background:0 0;border:0;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:700}[data-theme=night] .switch button{color:#d9d4ff}.switch button[aria-pressed=true]{background:var(--accent);color:var(--accent-ink)}.switch .swatch{border:2px solid #fff;border-radius:50%;width:22px;height:22px;display:none}.switch .swatch[data-t=day]{background:linear-gradient(135deg,#bfe3f7,#fde6ef)}.switch .swatch[data-t=yume]{background:linear-gradient(135deg,#f7d4e6,#d2e9ff)}.switch .swatch[data-t=night]{background:linear-gradient(135deg,#151a3a,#5a4a8c)}.field{z-index:10;position:fixed;inset:0;overflow:clip}.cloud{width:var(--w);height:var(--h);touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none;animation:appear .9s ease-out both, drift var(--dur) ease-in-out infinite alternate;animation-delay:var(--appear), var(--delay);position:absolute}.cloud:focus-visible{outline:none}.cloud:focus-visible .body{transform:scale(1.06)}@keyframes appear{0%{opacity:0}}.cloud.is-dragging{cursor:grabbing}@keyframes drift{0%{transform:translate(0)rotate(-1deg)}to{transform:translate(var(--dx), var(--dy)) rotate(1deg)}}.cloud .body{filter:drop-shadow(0 14px 22px var(--cloud-shadow));rotate:var(--tilt,0deg);transition:transform .6s cubic-bezier(.34,1.56,.64,1);position:absolute;inset:0}.cloud .puff{filter:url(#goo);animation:5s ease-in-out infinite breathe;position:absolute;inset:0}.puff i{background:radial-gradient(circle at 35% 30%, var(--cloud-hi) 45%, var(--cloud-lo));border-radius:50%;position:absolute}.puff i.base{border-radius:999px}@keyframes breathe{50%{transform:scale(1.03,.98)}}.cloud .text{overflow-wrap:anywhere;text-align:center;font-size:var(--fs);letter-spacing:.04em;text-wrap:balance;color:var(--ink);place-items:center;margin:0;font-weight:700;line-height:1.5;display:grid;position:absolute;inset:34% 12% 10%}.cloud:hover .body{transform:scale(1.04)}.cloud.is-open{z-index:45;animation-play-state:running,paused}.field:before{content:"";z-index:44;pointer-events:none;background:color-mix(in srgb, var(--sky-b) 72%, transparent);opacity:0;transition:opacity .35s;position:absolute;inset:0}.field.has-open:before{opacity:1;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.field.has-open .cloud:not(.is-open),.field.has-open .cloud:not(.is-open) .puff{animation-play-state:paused}.field.has-open .cloud:not(.is-open){pointer-events:none}.cloud.is-open .body{transform:scale(1.12)}[data-theme=night] .cloud .body{filter:drop-shadow(0 0 26px var(--cloud-shadow))}.reaction{opacity:0;pointer-events:none;white-space:nowrap;background:#fff;border:1px solid #0000000f;border-radius:20px;flex-direction:column;align-items:center;gap:8px;padding:10px 12px 12px;transition:opacity .35s,transform .35s cubic-bezier(.34,1.56,.64,1);display:flex;position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%,-6px)scale(.9);box-shadow:0 16px 36px -10px #28325059}.cloud.is-open .reaction{opacity:1;pointer-events:auto;transform:translate(-50%,8px)scale(1)}.reaction .label{color:#6b7a8c;letter-spacing:.08em;font-size:12px;font-weight:700}.reaction .row{gap:6px;display:flex}.cloud .reaction .pill{color:#3a4a5c;-webkit-backdrop-filter:none;backdrop-filter:none;background:#f1f4f8;border-color:#0000}.cloud .reaction .pill.is-on{background:var(--accent);color:var(--accent-ink)}[data-theme=night] .cloud .reaction .pill.is-on{color:#2f2a52}.pill{font:inherit;cursor:pointer;border:1px solid var(--glass-line);background:var(--glass);color:var(--ink);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:999px;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:700;text-decoration:none;transition:transform .2s,background .3s;display:inline-flex}[data-theme=night] .pill{color:#f1eeff}.pill:hover{transform:translateY(-2px)}.pill.is-on{background:var(--accent);color:var(--accent-ink);border-color:#0000}.pill b{font-weight:900}.spark{pointer-events:none;z-index:40;background:var(--cloud-hi);width:18px;height:12px;box-shadow:5px -4px 0 -1px var(--cloud-hi), -5px -3px 0 -2px var(--cloud-hi);border-radius:999px;animation:1.2s ease-out forwards spark;position:absolute}@keyframes spark{to{transform:translate(var(--sx), -90px) scale(.3);opacity:0}}.composer{z-index:60;left:50%;bottom:calc(24px + env(safe-area-inset-bottom,0px));width:min(560px,100% - 32px);box-shadow:0 18px 40px -12px var(--cloud-shadow);background:#fff;border:1px solid #0000000f;border-radius:999px;align-items:center;gap:8px;padding:8px 8px 8px 22px;display:flex;position:fixed;transform:translate(-50%)}.composer input{min-width:0;font:inherit;color:#3a4a5c;background:0 0;border:0;outline:0;flex:1;font-size:16px;font-weight:500}.composer input::placeholder{color:#9aa6b4}.composer .count{color:#9aa6b4;font-variant-numeric:tabular-nums;font-size:12px}.composer button{font:inherit;cursor:pointer;background:var(--accent);color:var(--accent-ink);border:0;border-radius:999px;padding:12px 20px;font-size:14px;font-weight:700;transition:transform .2s,opacity .2s}.composer button:disabled{opacity:.4;cursor:not-allowed}.composer button:not(:disabled):hover{transform:scale(1.04)}.terms{z-index:60;right:24px;bottom:calc(6px + env(safe-area-inset-bottom,0px));color:var(--ink-soft);font-size:11px;text-decoration:none;position:fixed}[data-theme=night] .terms{color:#bdb6ea}.composer .error{color:var(--accent);background:var(--glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:999px;padding:4px 12px;font-size:12px;font-weight:700;position:absolute;bottom:calc(100% + 8px);left:22px}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (max-width:640px),(max-height:500px){header{left:calc(16px + env(safe-area-inset-left,0px));right:calc(16px + env(safe-area-inset-right,0px));align-items:center}.brand img{height:28px}.brand p{display:none}.switch{gap:2px}.switch button{padding:3px;line-height:0}.switch button[aria-pressed=true]{background:var(--accent)}.switch .swatch{display:block}.switch .tab-label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.composer{bottom:calc(40px + env(safe-area-inset-bottom,0px));padding-left:16px}.composer button{padding:11px 16px}.terms{text-align:center;left:0;right:0;bottom:calc(14px + env(safe-area-inset-bottom,0px));line-height:1}}@media (prefers-reduced-motion:reduce){.cloud,.orb,.puff,.stars{animation:none!important}}.page{z-index:10;min-height:100vh;padding:calc(48px + env(safe-area-inset-top,0px)) 16px 80px;flex-direction:column;align-items:center;gap:32px;display:flex;position:relative}.page-logo img{width:auto;height:40px;filter:var(--logo-filter)}.terms-card{background:var(--glass);border:1px solid var(--glass-line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);width:min(760px,100%);box-shadow:0 24px 60px -24px var(--cloud-shadow);letter-spacing:.02em;border-radius:32px;flex-direction:column;gap:28px;padding:clamp(24px,5vw,56px);font-size:14px;line-height:1.9;display:flex}[data-theme=night] .terms-card{color:#f1eeff}.terms-card h1{margin:0;font-size:26px;font-weight:900}.terms-card h2{margin:0 0 6px;font-size:17px;font-weight:700}.terms-card p{margin:0}.terms-card a{color:inherit}.notfound{justify-content:center}.lost-cloud{width:300px;height:180px;filter:drop-shadow(0 14px 22px var(--cloud-shadow));--dx:10px;--dy:-12px;animation:7s ease-in-out infinite alternate drift;position:relative}.lost-cloud .puff{filter:url(#goo);position:absolute;inset:0}.lost-cloud p{letter-spacing:.1em;color:var(--ink);place-items:center;margin:0;font-size:22px;font-weight:900;display:grid;position:absolute;inset:40% 0 0}.notfound-text{color:var(--ink-soft);margin:0;font-weight:700}[data-theme=night] .notfound-text{color:#e6e1ff}
