@import "https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght,SOFT@0,9..144,300..700,0..100;1,9..144,300..700,0..100&family=Inter:wght@400;500;600;700&display=swap";:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#150a18;--bg-grad:radial-gradient(120% 80% at 50% 0%, #2a1322 0%, #150a18 55%, #0c060f 100%);--card:#2d192d8c;--card-border:#ffc8dc14;--text:#f7ecf2;--muted:#b89cb0;--accent:#ff86b3;--accent-2:#c44a82;--accent-soft:#ff86b326;--ok:#7fc89c;--warn:#e0b067;--err:#ff7e8a;--radius:18px;--radius-sm:12px;--serif:"Fraunces", "New York", "Iowan Old Style", Georgia, serif;--sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{background:var(--bg);background-image:var(--bg-grad);color:var(--text);font-family:var(--sans);background-attachment:fixed;min-height:100vh;margin:0;font-size:16px;line-height:1.5;transition:background-image 1.2s,color .6s}body.mood-on{--bg-grad:radial-gradient(120% 90% at 50% 0%, #5a1a3a 0%, #2a0f24 50%, #160810 100%);--accent:#ff96c0;--accent-2:#d8588f;--card:#4b1e378c;--card-border:#ffc8dc29;animation:8s ease-in-out infinite roomBreathe}body.mood-on:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(60% 50% at 0 100%,#ff86b32e 0%,#0000 70%),radial-gradient(60% 50% at 100% 0,#c44a822e 0%,#0000 70%);animation:14s ease-in-out infinite ambientDrift;position:fixed;inset:0}body.mood-on:after{content:"";pointer-events:none;z-index:0;background:radial-gradient(circle at 50% 100%,#0000 55%,#0000008c 100%);position:fixed;inset:0}body.mood-on .app{z-index:1;position:relative}body.mood-on .card{box-shadow:0 8px 40px -12px #ff86b340}body.match-on{--bg-grad:radial-gradient(120% 90% at 50% 0%, #6f1d44 0%, #320f26 50%, #160810 100%);animation:4s ease-in-out infinite roomBreathe}body.match-on:before{background:radial-gradient(60% 50% at 0 100%,#ff86b34d 0%,#0000 70%),radial-gradient(60% 50% at 100% 0,#d8588f4d 0%,#0000 70%),radial-gradient(40% 30%,#ffb4d226 0%,#0000 70%)}@keyframes roomBreathe{0%,to{filter:saturate()brightness()}50%{filter:saturate(1.15)brightness(1.08)}}@keyframes ambientDrift{0%,to{transform:translate(0)}50%{transform:translate(2%,-2%)}}h1,h2,h3{letter-spacing:-.01em;margin:0 0 .5rem;font-weight:500}h1{font-family:var(--serif);font-variation-settings:"opsz" 96, "SOFT" 100, "wght" 400;letter-spacing:-.015em;font-size:2rem;font-style:italic}h2{font-family:var(--sans);text-transform:uppercase;letter-spacing:.18em;color:var(--muted);font-size:.7rem;font-weight:600}p{margin:0 0 .5rem}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button,.btn{font:inherit;background:linear-gradient(135deg, var(--accent) 0%, var(--accent-2) 100%);color:#1a0a14;border-radius:var(--radius);cursor:pointer;border:0;width:100%;padding:1rem 1.2rem;font-weight:600;transition:transform 80ms,box-shadow .2s;position:relative;overflow:hidden;box-shadow:0 8px 24px -8px #ff86b380}button:not(.secondary):not(.ghost):not(.danger):hover,.btn:hover{box-shadow:0 12px 36px -6px #ff86b3b3}button:active,.btn:active{transform:scale(.97)}button:disabled{opacity:.6;cursor:default}button.secondary{color:var(--text);border:1px solid var(--card-border);box-shadow:none;background:#ffffff0f}button.ghost{color:var(--muted);border:1px solid var(--card-border);box-shadow:none;background:0 0;font-weight:500}button.ghost:hover{color:var(--text)}button.danger{color:var(--err);box-shadow:none;background:0 0;border:1px solid #ff7e8a66}button.danger-outline{color:var(--muted);box-shadow:none;background:0 0;border:1px solid #ff7e8a40;font-weight:500}button.danger-outline:hover{color:var(--err);border-color:#ff7e8a80}input,select{font:inherit;width:100%;color:var(--text);border:1px solid var(--card-border);border-radius:var(--radius-sm);background:#ffffff0a;padding:.85rem .95rem;transition:border-color .15s,background .15s}input:focus,select:focus{border-color:var(--accent);background:#ffffff0f;outline:none}label{color:var(--muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:.4rem;font-size:.72rem;font-weight:500;display:block}.card{background:var(--card);border:1px solid var(--card-border);border-radius:var(--radius);-webkit-backdrop-filter:blur(20px);margin-bottom:.85rem;padding:1.2rem 1.15rem;box-shadow:inset 0 1px #ffc8dc21}.card.compact{padding:.9rem 1.1rem}.card.hero{padding:1.8rem 1.4rem}.muted{color:var(--muted);font-size:.9rem}.row{align-items:center;gap:.6rem;display:flex}.stack>*+*{margin-top:.7rem}.error{color:var(--err);font-size:.9rem}.app-header{justify-content:space-between;align-items:center;margin:.5rem 0 1.5rem;display:flex}.app-header .greeting{font-family:var(--serif);font-variation-settings:"opsz" 96, "SOFT" 100, "wght" 400;letter-spacing:-.01em;color:var(--text);font-size:1.75rem;font-style:italic}.app-header .greeting .lead{color:var(--muted);margin-right:.25rem;font-weight:300}.back-link{color:var(--muted);font-family:var(--serif);font-variation-settings:"opsz" 48, "SOFT" 100, "wght" 380;align-items:center;gap:.25rem;font-size:1rem;font-style:italic;text-decoration:none;transition:color .12s;display:inline-flex}.back-link:hover{color:var(--text);text-decoration:none}.icon-link{border:1px solid var(--card-border);width:36px;height:36px;color:var(--muted);background:#ffffff0a;border-radius:50%;place-items:center;font-size:1rem;transition:color .15s,background .15s;display:grid}.icon-link:hover{color:var(--text);background:#ffffff14;text-decoration:none}.mood-hero{text-align:center;background:radial-gradient(120% 100% at 50% 0%, #ff86b30a 0%, transparent 60%), var(--card);padding:2.4rem 1.4rem 1.6rem;position:relative;overflow:hidden}.mood-hero.active{background:radial-gradient(140% 110% at 50% 0%, #ff86b338 0%, #ff86b30a 60%, transparent 100%), var(--card);border-color:#ff86b347}.mood-hero .indicator{color:var(--accent);text-transform:uppercase;letter-spacing:.18em;align-items:center;gap:.55rem;margin-bottom:1.1rem;font-size:.72rem;font-weight:600;display:inline-flex}.mood-hero .indicator .dot{background:var(--accent);width:8px;height:8px;box-shadow:0 0 12px var(--accent);border-radius:50%;animation:1.8s ease-in-out infinite dotPulse}@keyframes dotPulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.25)}}.mood-hero .countdown-big{font-family:var(--serif);font-variation-settings:"opsz" 144, "SOFT" 100, "wght" 360;letter-spacing:-.03em;color:#fff;text-shadow:0 0 40px #ff86b366;font-feature-settings:"tnum" 1, "lnum" 1;font-size:clamp(3.2rem,13vw,4.4rem);font-style:italic;line-height:1;animation:.28s cubic-bezier(.2,.9,.35,1.1) both countIn}.mood-hero .ends{color:var(--muted);letter-spacing:.02em;margin:.6rem 0 1.6rem;font-size:.85rem}.mood-hero .prompt{font-family:var(--serif);font-variation-settings:"opsz" 48, "SOFT" 100, "wght" 400;color:var(--text);margin:0 0 1.4rem;font-size:1.5rem;font-style:italic;line-height:1.2}.mood-hero .controls{text-align:left;max-width:320px;margin:0 auto}.mood-hero .controls .stack{margin-top:0}.card.story .line{font-family:var(--serif);font-variation-settings:"opsz" 48, "SOFT" 100, "wght" 380;color:var(--text);margin:.45rem 0;font-size:1.1rem;line-height:1.45}.card.story .line.headline{font-variation-settings:"opsz" 96, "SOFT" 100, "wght" 380;color:#fff;margin-bottom:.7rem;font-size:1.3rem;font-style:italic}.card.story .line :global(b){color:var(--accent);font-style:normal;font-weight:600;font-family:var(--sans);font-feature-settings:"tnum" 1}.card.story .footnote{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;opacity:.55;margin-top:.9rem;font-size:.72rem}.card.last-match{padding:.95rem 1.15rem}.card.last-match .line{color:var(--muted);align-items:center;gap:.6rem;margin:0;font-size:1rem;font-style:italic;display:flex}.card.last-match .heart-small{color:var(--accent);font-size:1.1rem}.tagline{font-family:var(--serif);font-variation-settings:"opsz" 96, "SOFT" 100, "wght" 380;color:var(--muted);text-align:center;margin:-.5rem 0 1.5rem;font-size:1.1rem;font-style:italic}.match-banner{border-radius:var(--radius);text-align:center;color:#fff;background:radial-gradient(120% 100% at 50% 0,#ff86b359 0%,#c44a8226 60%,#0000 100%),linear-gradient(135deg,#c44a8299,#ff86b380);border:1px solid #ffc8dc66;margin-bottom:.85rem;padding:1.7rem 1.2rem 1.5rem;animation:2.4s ease-in-out infinite matchPulse;position:relative;overflow:hidden;box-shadow:0 0 40px -4px #ff86b373,inset 0 0 30px #ffffff14}.match-banner:before{content:"";pointer-events:none;background:radial-gradient(circle,#ffffff2e 0%,#0000 60%);animation:6s linear infinite matchShimmer;position:absolute;inset:-50%}.match-banner h2{font-family:var(--serif);font-variation-settings:"opsz" 144, "SOFT" 100, "wght" 400;letter-spacing:-.02em;text-transform:none;color:#fff;margin:0 0 .35rem;font-size:2.4rem;font-style:italic}.match-banner .heart{filter:drop-shadow(0 0 12px #ffc8dcb3);font-size:2.6rem;animation:1.4s ease-in-out infinite heartBeat;display:inline-block}.match-banner p{opacity:.95;margin:0;font-size:.95rem}.match-banner .countdown{font-family:var(--serif);font-variation-settings:"opsz" 96, "SOFT" 100, "wght" 380;font-feature-settings:"tnum" 1;margin-top:.5rem;font-size:1.4rem;font-style:italic}@keyframes matchPulse{0%,to{box-shadow:0 0 40px -4px #ff86b373,inset 0 0 30px #ffffff14}50%{box-shadow:0 0 60px 4px #ff86b3b3,inset 0 0 40px #ffffff26}}@keyframes heartBeat{0%,to{transform:scale(1)}15%{transform:scale(1.2)}30%{transform:scale(1)}45%{transform:scale(1.15)}}@keyframes matchShimmer{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.match-banner.reveal-in{animation:2.4s ease-in-out infinite matchPulse,.7s cubic-bezier(.2,.9,.3,1.2) both bannerIn}@keyframes bannerIn{0%{opacity:0;filter:blur(8px);transform:scale(.85)translateY(-12px)}to{opacity:1;filter:blur();transform:scale(1)translateY(0)}}.grain{z-index:9998;pointer-events:none;opacity:.045;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n' x='0' y='0'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.72' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)'/%3E%3C/svg%3E");background-size:300px 300px;position:fixed;inset:0}button:not(.secondary):not(.ghost):not(.danger):after,.btn:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000 0%,#ffffff21 50%,#0000 100%);width:55%;height:100%;animation:9s ease-in-out infinite btnShimmer;position:absolute;top:0;left:-130%}@keyframes btnShimmer{0%,50%,to{left:-130%}35%{left:160%}}@keyframes countIn{0%{opacity:.45;filter:blur(4px);transform:translateY(-5px)scale(.96)}to{opacity:1;filter:blur();transform:translateY(0)scale(1)}}html{scroll-behavior:smooth}.app.svelte-12qhfyh{max-width:480px;min-height:100vh;margin:0 auto;padding:1.25rem 1rem 4rem}
