:root{--ink:#17130f;--paper:#f7f2e8;--paper-strong:#fffaf0;--accent:#8a3f20;--accent-dark:#5f2914;--line:#d9cdbb;--muted:#776d61}*{box-sizing:border-box}html{background:var(--paper)}body{color:var(--ink);background:radial-gradient(circle at 20% 0%, #8a3f2017, transparent 30rem), var(--paper);margin:0;font-family:ui-serif,Hiragino Mincho ProN,Yu Mincho,YuMincho,Georgia,serif}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}.site-shell{min-height:100svh}.page{width:min(100% - 32px,880px);margin:0 auto;padding:48px 0 64px}.brand{margin-bottom:48px}.brand-jp{letter-spacing:.08em;margin:0;font-size:clamp(2rem,7vw,4.5rem);line-height:1.05}.brand-en{color:var(--muted);letter-spacing:.28em;margin:10px 0 0;font-family:ui-sans-serif,system-ui,sans-serif;font-size:.82rem;font-weight:700}.lead{max-width:620px;margin:0 0 32px;font-size:clamp(1.2rem,4vw,1.75rem);line-height:1.8}.eyebrow{color:var(--accent);letter-spacing:.16em;text-transform:uppercase;margin:0 0 8px;font-family:ui-sans-serif,system-ui,sans-serif;font-size:.75rem;font-weight:800}.title{margin:0 0 24px;font-size:clamp(1.7rem,5vw,3rem)}.card{border:1px solid var(--line);background:#fffaf0db;border-radius:24px;padding:clamp(24px,5vw,48px);box-shadow:0 20px 60px #2c1f1414}.actions{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.primary-cta-actions{justify-content:center}.primary-cta{min-width:210px}.button{border:1px solid var(--accent-dark);background:var(--accent-dark);color:#fff;cursor:pointer;border-radius:999px;justify-content:center;align-items:center;min-height:48px;padding:0 22px;font-family:ui-sans-serif,system-ui,sans-serif;font-weight:700;display:inline-flex}.button.secondary{color:var(--accent-dark);background:0 0}.button.tertiary{min-height:auto;color:var(--accent-dark);background:0 0;border-color:#0000;border-radius:999px;padding:8px 12px;font-weight:700;text-decoration:none}.button:disabled{cursor:not-allowed;opacity:.55}.question{border-top:1px solid var(--line);padding:26px 0}.question:first-of-type{border-top:0}.question h2{margin:0 0 14px;font-size:1.12rem}.choice-grid{flex-wrap:wrap;gap:8px;display:flex}.choice{border:1px solid var(--line);background:var(--paper-strong);color:var(--ink);cursor:pointer;border-radius:999px;padding:9px 14px;font-family:ui-sans-serif,system-ui,sans-serif;font-size:.9rem}.choice.selected{border-color:var(--accent-dark);background:var(--accent-dark);color:#fff}.dream-input{border:1px solid var(--line);width:100%;min-height:112px;color:var(--ink);resize:vertical;background:#fff;border-radius:16px;padding:16px}.brewing{text-align:center;place-items:center;min-height:58svh;display:grid}.brewing-mark{border:1px solid var(--accent);width:92px;height:92px;color:var(--accent);border-radius:50%;place-items:center;margin:0 auto 28px;font-size:2rem;display:grid}.brewing-message{animation:.32s ease-out brewing-message-fade}@keyframes brewing-message-fade{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.brewing-message{animation:none}}.dream-card{aspect-ratio:1;background:linear-gradient(145deg,#ffffffd6,#ffffff1a),repeating-linear-gradient(125deg,#d9c58f 0 18px,#c7d1bb 18px 36px);border:1px solid #5f291429;border-radius:28px;flex-direction:column;justify-content:space-between;padding:clamp(26px,7vw,62px);display:flex;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #fffaf080,0 24px 80px #2c1f1426}.dream-card:after{content:"";aspect-ratio:1;border:1px solid #17130f59;border-radius:50%;width:56%;position:absolute;bottom:-22%;right:-14%}.dream-card-kicker{color:var(--accent-dark);letter-spacing:.24em;text-transform:uppercase;margin:0 0 18px;font-family:ui-sans-serif,system-ui,sans-serif;font-size:.72rem;font-weight:800}.dream-name{letter-spacing:.08em;text-wrap:balance;max-width:90%;margin:0;font-size:clamp(2.6rem,10vw,5.6rem);line-height:.96}.dream-meta,.flavors{letter-spacing:.12em;text-transform:uppercase;font-family:ui-sans-serif,system-ui,sans-serif;font-size:.78rem;font-weight:800}.dream-meta{margin:0 0 18px}.dream-card-details{z-index:1;position:relative}.flavors{margin:0}.flavors+.flavors{margin-top:10px}.story{color:#3f372f;max-width:44rem;margin:28px 0 0;font-size:1.05rem;line-height:1.9}.muted{color:var(--muted)}.result-actions{border-top:1px solid var(--line);margin-top:34px;padding-top:24px}.result-question{margin:0;font-size:1.08rem;font-weight:700}.result-actions-primary{margin-top:14px}.result-actions-secondary{align-items:center;margin-top:16px}.responsibility-footer{width:min(100% - 32px,880px);padding:24px 0 calc(32px + env(safe-area-inset-bottom));border-top:1px solid var(--line);color:var(--muted);margin:0 auto;font-family:ui-sans-serif,system-ui,sans-serif;font-size:.72rem;line-height:1.75}.responsibility-footer p{margin:0}.responsibility-footer p+p{margin-top:6px}.responsibility-footer__fiction{color:var(--ink);font-weight:700}@media (max-width:560px){.page{width:min(100% - 24px,880px);padding:28px 0 48px}.result-page{padding-bottom:calc(96px + env(safe-area-inset-bottom))}.brand{margin-bottom:30px}.card{padding:22px}.dream-form-card{padding-bottom:calc(48px + env(safe-area-inset-bottom))}.question{padding:22px 0}.story{margin-top:22px}.result-actions{margin-top:28px;padding-top:20px}.result-actions-primary,.result-actions-secondary{gap:10px}.responsibility-footer{width:min(100% - 24px,880px);padding-top:20px}}
.dream-card[class*=visual-]{--label-primary:#e7ded0;--label-secondary:#b9aa94;--label-accent:#66766d;--label-ink:#2f2922;--label-shield:#f8f4eb8c;--label-angle:32deg;--label-origin:50% 42%;--label-density:14px;isolation:isolate;color:var(--label-ink);background:var(--label-primary)}.dream-card[class*=visual-]>*{z-index:3;position:relative}.dream-card[class*=visual-]:before,.dream-card[class*=visual-]:after{content:"";pointer-events:none;position:absolute}.dream-card[class*=visual-]:before{z-index:2;background:radial-gradient(ellipse at 42% 42%, var(--label-shield) 0 26%, transparent 72%);border-radius:24px;inset:8% 5%}.dream-card[class*=visual-] .dream-card-kicker,.dream-card[class*=visual-] .dream-meta,.dream-card[class*=visual-] .dream-name,.dream-card[class*=visual-] .flavors{color:var(--label-ink);text-shadow:0 1px 12px color-mix(in srgb, var(--label-shield) 72%, transparent)}.dream-card.visual-mist.visual-pattern-a{background:radial-gradient(circle at var(--label-origin), color-mix(in srgb, var(--label-accent) 55%, transparent) 0 11%, transparent 38%), radial-gradient(circle at 78% 72%, color-mix(in srgb, var(--label-secondary) 70%, transparent) 0 15%, transparent 46%), linear-gradient(var(--label-angle), var(--label-primary), var(--label-secondary))}.dream-card.visual-mist.visual-pattern-b{background:linear-gradient(180deg, var(--label-primary) 0 18%, color-mix(in srgb, var(--label-primary) 72%, var(--label-secondary)) 36%, var(--label-secondary) 58%, color-mix(in srgb, var(--label-secondary) 70%, var(--label-accent)) 76%, var(--label-primary) 100%)}.dream-card.visual-mist:after{z-index:1;opacity:.2;background:repeating-linear-gradient(100deg,#0000 0 13px,#ffffff57 13px 14px,#0000 14px 28px);inset:-16%;transform:rotate(-4deg)}.dream-card.visual-horizon.visual-pattern-a{background:linear-gradient(180deg, var(--label-primary) 0 56%, var(--label-accent) 56% 56.6%, var(--label-secondary) 56.6% 100%)}.dream-card.visual-horizon.visual-pattern-b{background:radial-gradient(circle at 68% 42%, color-mix(in srgb, var(--label-accent) 78%, white) 0 8%, transparent 8.5%), linear-gradient(180deg, var(--label-primary) 0 52%, var(--label-secondary) 52% 100%)}.dream-card.visual-horizon:after{z-index:1;opacity:.42;background:var(--label-ink);height:1px;bottom:38%;left:7%;right:7%}.dream-card.visual-quiet.visual-pattern-a{background:radial-gradient(circle at 14% 16%, color-mix(in srgb, var(--label-accent) 10%, transparent) 0 1px, transparent 1.2px), var(--label-primary);background-size:17px 17px,auto}.dream-card.visual-quiet.visual-pattern-b{background:linear-gradient(90deg, transparent 0 74%, color-mix(in srgb, var(--label-accent) 16%, transparent) 74% 84%, transparent 84%), linear-gradient(180deg, var(--label-primary), var(--label-secondary))}.dream-card.visual-quiet:after{z-index:1;background:var(--label-accent);opacity:.58;width:32%;height:1px;bottom:19%;left:14%}.dream-card.visual-organic.visual-pattern-a{background:repeating-radial-gradient(ellipse at 76% 86%, transparent 0 17px, color-mix(in srgb, var(--label-secondary) 44%, transparent) 18px 20px, transparent 21px 36px), linear-gradient(var(--label-angle), var(--label-primary), color-mix(in srgb, var(--label-primary) 58%, var(--label-secondary)))}.dream-card.visual-organic.visual-pattern-b{background:radial-gradient(ellipse at 50% 118%, var(--label-secondary) 0 39%, transparent 39.5%), radial-gradient(ellipse at 15% 112%, color-mix(in srgb, var(--label-accent) 72%, var(--label-primary)) 0 37%, transparent 37.5%), var(--label-primary)}.dream-card.visual-organic:after{z-index:1;aspect-ratio:1;border:1px solid color-mix(in srgb, var(--label-ink) 30%, transparent);width:54%;transform:rotate(var(--label-angle));border-radius:45% 55% 61% 39%/54% 45% 55% 46%;bottom:-18%;right:-8%}.dream-card.visual-riso.visual-pattern-a{background:radial-gradient(circle at 72% 28%, color-mix(in srgb, var(--label-secondary) 86%, transparent) 0 14%, transparent 14.5%), radial-gradient(circle at 66% 34%, color-mix(in srgb, var(--label-accent) 76%, transparent) 0 15%, transparent 15.5%), radial-gradient(circle, color-mix(in srgb, var(--label-ink) 18%, transparent) 0 .9px, transparent 1px), var(--label-primary);background-size:auto, auto, var(--label-density) var(--label-density), auto}.dream-card.visual-riso.visual-pattern-b{background:repeating-linear-gradient(var(--label-angle), transparent 0 12px, color-mix(in srgb, var(--label-secondary) 22%, transparent) 12px 14px), radial-gradient(circle, color-mix(in srgb, var(--label-accent) 28%, transparent) 0 1px, transparent 1.2px), var(--label-primary);background-size:auto, var(--label-density) var(--label-density), auto}.dream-card.visual-riso:after{z-index:1;opacity:.16;background:radial-gradient(circle, var(--label-ink) 0 .8px, transparent 1px);background-size:var(--label-density) var(--label-density);inset:0;transform:translate(3px,3px)}.dream-card.visual-fracture.visual-pattern-a{background:linear-gradient(var(--label-angle), var(--label-primary) 0 43%, var(--label-secondary) 43% 67%, var(--label-accent) 67% 100%)}.dream-card.visual-fracture.visual-pattern-b{background:var(--label-secondary)}.dream-card.visual-fracture.visual-pattern-b:after{z-index:1;background:linear-gradient(135deg, var(--label-primary), var(--label-accent));clip-path:polygon(0 0,68% 0,53% 23%,77% 40%,49% 61%,67% 100%,0 100%);inset:-10% -12%}.dream-card.visual-fracture.visual-pattern-a:after{z-index:1;opacity:.5;background:color-mix(in srgb, var(--label-ink) 64%, transparent);width:2px;height:122%;transform:rotate(calc(var(--label-angle) - 42deg));top:-10%;right:18%}.dream-card.visual-lacquer:before{background:radial-gradient(ellipse at 34% 24%, var(--label-shield) 0 30%, transparent 72%), linear-gradient(180deg, #0a0a0c24 0%, #0a0a0c0d 34%, transparent 64%)}.dream-card.visual-lacquer.visual-pattern-a{background:radial-gradient(74% 92% at 28% 18%, color-mix(in srgb, var(--label-accent) 13%, transparent) 0 24%, transparent 66%), radial-gradient(96% 118% at 82% 86%, color-mix(in srgb, var(--label-secondary) 22%, transparent) 0 22%, transparent 70%), repeating-linear-gradient(calc(var(--label-angle) + 66deg), color-mix(in srgb, var(--label-accent) 7%, transparent) 0 1px, transparent 1px 18px), linear-gradient(136deg, var(--label-primary) 0%, color-mix(in srgb, var(--label-primary) 78%, var(--label-secondary)) 46%, var(--label-secondary) 100%)}.dream-card.visual-lacquer.visual-pattern-a:after{z-index:1;border:1px solid color-mix(in srgb, var(--label-accent) 28%, transparent);opacity:.48;border-left-color:#0000;border-radius:52% 0 0 52%;inset:9% -18% 7% 45%;transform:rotate(-7deg)}.dream-card.visual-lacquer.visual-pattern-b{background:linear-gradient(90deg, transparent 0 82%, color-mix(in srgb, var(--label-accent) 5%, transparent) 86%, color-mix(in srgb, var(--label-accent) 28%, transparent) 96%, color-mix(in srgb, var(--label-accent) 12%, transparent) 100%), linear-gradient(135deg, color-mix(in srgb, var(--label-accent) 12%, var(--label-primary)) 0%, var(--label-primary) 28%, color-mix(in srgb, var(--label-primary) 74%, var(--label-secondary)) 62%, var(--label-secondary) 100%)}.dream-card.visual-lacquer.visual-pattern-b:after{z-index:1;background:linear-gradient(180deg, transparent, color-mix(in srgb, var(--label-accent) 72%, transparent) 22%, color-mix(in srgb, var(--label-accent) 34%, transparent) 74%, transparent);width:1px;box-shadow:-26px 0 44px color-mix(in srgb, var(--label-accent) 9%, transparent);opacity:.82;top:11%;bottom:11%;right:7%}.dream-card.visual-paper.visual-pattern-a{background:linear-gradient(128deg, var(--label-primary) 0 48%, var(--label-secondary) 48% 69%, color-mix(in srgb, var(--label-primary) 72%, white) 69% 100%)}.dream-card.visual-paper.visual-pattern-b{background:linear-gradient(180deg, var(--label-primary), color-mix(in srgb, var(--label-secondary) 58%, var(--label-primary)))}.dream-card.visual-paper.visual-pattern-b:after{z-index:1;background:color-mix(in srgb, var(--label-secondary) 72%, transparent);clip-path:polygon(28% 0,100% 18%,78% 54%,100% 100%,16% 82%,0 42%);inset:8% -10% -12% 34%;transform:rotate(7deg)}.dream-card.visual-paper.visual-pattern-a:after{z-index:1;background:color-mix(in srgb, var(--label-ink) 24%, transparent);width:1px;height:118%;top:-8%;left:54%;transform:rotate(-12deg)}@media (max-width:560px){.dream-card[class*=visual-]:before{inset:6% 4%}.dream-card.visual-riso:after,.dream-card.visual-mist:after{opacity:.1}.dream-card.visual-lacquer.visual-pattern-a:after{opacity:.34}}@media (prefers-contrast:more){.dream-card[class*=visual-]:before{background:radial-gradient(ellipse at 42% 42%, var(--label-shield) 0 42%, transparent 82%)}}
