@import"https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap";:root{font-family:Manrope,system-ui,sans-serif;color:#f8f7ff;background:#080812}*{box-sizing:border-box}body{margin:0}.app{min-height:100vh;display:flex;background:radial-gradient(circle at 80% 0,#211d45 0,transparent 32%),#080812}.sidebar{width:280px;padding:28px 20px;border-right:1px solid #24233a;display:flex;flex-direction:column;gap:13px}.brand{font-weight:800;font-size:21px;letter-spacing:-.04em}.brand-dot{display:inline-grid;place-items:center;width:30px;height:30px;margin-right:8px;border-radius:10px;background:linear-gradient(135deg,#9c7cff,#5d42ff);color:#fff}.muted{color:#8d8aa3;font-size:13px;line-height:1.6}.projects{margin-top:20px;display:grid;gap:7px}.project{border:0;background:transparent;color:#aaa8bd;text-align:left;padding:12px;border-radius:10px;display:flex;gap:10px;align-items:center;font:inherit;cursor:pointer}.project:hover,.project.selected{background:#1a1830;color:#fff}.project-icon{color:#8f7dff}.ghost{background:#131228;border:1px solid #2e2a50;color:#d8d5f0;padding:12px;border-radius:10px;font:inherit;cursor:pointer}.side-bottom{margin-top:auto;color:#8d8aa3;font-size:12px;display:flex;justify-content:space-between;gap:10px}.link{border:0;background:none;color:#9b88ff;cursor:pointer}.main{flex:1;min-width:0;padding:30px 34px}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.eyebrow{font:11px DM Mono,monospace;color:#9b88ff;letter-spacing:.15em}h1{font-size:29px;letter-spacing:-.06em;margin:8px 0}.public-link{color:#d8d1ff;text-decoration:none;border:1px solid #423b73;border-radius:9px;padding:11px 16px;font-size:13px}.workspace{display:grid;grid-template-columns:minmax(300px,.75fr) minmax(420px,1.35fr);gap:20px;height:calc(100vh - 130px);min-height:600px}.chat,.preview{border:1px solid #282641;background:#0e0d1d;border-radius:17px;overflow:hidden;display:flex;flex-direction:column}.messages{flex:1;overflow:auto;padding:22px;display:grid;align-content:start;gap:18px}.message{max-width:90%}.message.user{justify-self:end}.bubble{padding:14px 16px;border-radius:14px;background:#17152c;color:#dcd9e9;font-size:13px;line-height:1.65}.message.user .bubble{background:linear-gradient(135deg,#745aff,#5138d5);color:#fff}.message small{font:10px DM Mono;color:#696681;display:block;margin:6px 4px}.composer{padding:15px;border-top:1px solid #282641;display:flex;gap:10px}.composer textarea{resize:none;height:76px;flex:1;border:0;background:#151329;color:#fff;border-radius:11px;padding:13px;font:13px Manrope;outline:none}.composer button,.auth-card button{border:0;border-radius:11px;background:#8067ff;color:#fff;padding:0 18px;font:600 13px Manrope;cursor:pointer}.composer button span,.auth-card button span{font-size:18px;margin-left:7px}.preview{background:#f5f4f8}.preview-bar{height:43px;padding:0 16px;display:flex;align-items:center;gap:13px;color:#6e6b78;font-size:11px}.traffic{display:flex;gap:4px}.traffic i{width:8px;height:8px;border-radius:50%;background:#ff6c75}.traffic i:nth-child(2){background:#ffc55c}.traffic i:nth-child(3){background:#69d595}.preview iframe{border:0;flex:1;background:#fff;width:100%}.auth{min-height:100vh;display:grid;grid-template-columns:1.2fr .8fr;background:radial-gradient(circle at 15% 80%,#2b205f,transparent 40%),#080812}.auth-copy{padding:60px 9vw;position:relative;overflow:hidden}.auth-copy h1{font-size:clamp(42px,6vw,84px);line-height:1.02;margin-top:17vh}.auth-copy h1 em{font-style:normal;color:#957dff}.auth-copy p{max-width:440px;color:#a09db5;line-height:1.7}.auth-copy canvas{position:absolute;right:5%;bottom:0;opacity:.75}.auth-card{align-self:center;margin:30px auto;width:min(420px,84%);padding:35px;border:1px solid #2b2846;border-radius:20px;background:#131227db;box-shadow:0 25px 90px #0007}.tabs{display:flex;background:#111023;padding:4px;border-radius:10px;margin-bottom:28px}.tabs button{flex:1;background:none;border:0;color:#817d98;padding:11px;border-radius:7px;cursor:pointer}.tabs button.active{background:#28234a;color:#fff}.auth-card h2{font-size:25px;margin-bottom:4px}.auth-card form{display:grid;gap:12px;margin-top:25px}.auth-card input{background:#111023;border:1px solid #302c50;color:#fff;border-radius:9px;padding:14px;font:14px Manrope;outline:none}.auth-card button{height:48px;margin-top:5px}.error{color:#ff8895;font-size:12px;min-height:18px}@media(max-width:950px){.sidebar{width:220px}.workspace{grid-template-columns:1fr}.preview{min-height:500px}.auth{grid-template-columns:1fr}.auth-copy{padding:30px}.auth-copy h1{margin-top:70px}.auth-copy canvas{display:none}}@media(max-width:600px){.sidebar{display:none}.main{padding:20px 14px}.workspace{height:auto}.chat{min-height:600px}.preview{min-height:500px}header h1{font-size:23px}}.auth{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(circle at 16% 82%,rgba(106,72,255,.3),transparent 30%),radial-gradient(circle at 78% 12%,rgba(50,184,255,.12),transparent 28%),#070711}.auth:before{content:"";position:absolute;inset:0;z-index:-1;opacity:.24;background-image:linear-gradient(rgba(151,128,255,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(151,128,255,.12) 1px,transparent 1px);background-size:54px 54px;-webkit-mask-image:linear-gradient(90deg,#000,transparent 80%);mask-image:linear-gradient(90deg,#000,transparent 80%)}.auth-copy{padding:56px clamp(30px,8vw,130px);display:flex;flex-direction:column;justify-content:flex-start}.auth-copy:after{content:"";position:absolute;width:520px;height:520px;left:-170px;bottom:-280px;border:1px solid rgba(146,119,255,.22);border-radius:50%;box-shadow:0 0 80px #6f4bff2e,inset 0 0 80px #6f4bff1a;animation:auth-spin 24s linear infinite}.auth-kicker{margin-top:clamp(90px,16vh,180px);font:11px DM Mono,monospace;letter-spacing:.2em;color:#9e8cff;display:flex;align-items:center;gap:9px}.auth-kicker span{width:7px;height:7px;border-radius:50%;background:#8c6dff;box-shadow:0 0 16px #8c6dff;animation:pulse-dot 1.8s ease-in-out infinite}.auth-copy h1{position:relative;z-index:1;font-size:clamp(45px,6.1vw,88px);line-height:.98;letter-spacing:-.075em;margin:20px 0 24px;text-shadow:0 10px 45px rgba(105,81,255,.18)}.auth-copy h1 em{background:linear-gradient(100deg,#c5b8ff,#795cff 55%,#50c8ff);background-clip:text;-webkit-background-clip:text;color:transparent}.auth-copy p{position:relative;z-index:1;font-size:15px;max-width:470px;margin:0;color:#aaa6c2}.auth-proof{position:relative;z-index:2;display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}.auth-proof span{padding:9px 12px;border:1px solid rgba(151,132,255,.22);border-radius:100px;background:#1c193973;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#aaa5c7;font-size:11px}.auth-proof b{color:#a895ff;margin-right:5px}.auth-copy canvas{right:clamp(-60px,3vw,50px);bottom:7%;width:min(440px,48vw);height:auto;filter:drop-shadow(0 0 30px rgba(126,95,255,.35));opacity:.82;z-index:0}.auth-glow{position:absolute;border-radius:50%;filter:blur(5px);pointer-events:none}.glow-one{width:200px;height:200px;right:9%;top:18%;background:radial-gradient(circle,rgba(111,81,255,.2),transparent 68%);animation:float-glow 7s ease-in-out infinite}.glow-two{width:140px;height:140px;left:33%;bottom:17%;background:radial-gradient(circle,rgba(45,192,255,.14),transparent 68%);animation:float-glow 9s ease-in-out infinite reverse}.auth-side{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px clamp(20px,6vw,100px) 30px 30px}.auth-card{position:relative;width:min(440px,100%);margin:0;padding:30px;border:1px solid rgba(157,135,255,.28);border-radius:27px;background:linear-gradient(145deg,#1c1939e0,#0d0d1ef0);box-shadow:0 35px 110px #0000008c,0 0 0 1px #ffffff06 inset,0 0 80px #6349ff1f;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);transform:perspective(1000px) rotateX(calc(var(--my,0px)*-.12)) rotateY(calc(var(--mx,0px)*.12));transition:transform .25s ease,box-shadow .3s ease}.auth-card:before{content:"";position:absolute;inset:-1px;border-radius:27px;padding:1px;background:linear-gradient(130deg,rgba(172,150,255,.55),transparent 35%,transparent 68%,rgba(47,203,255,.4));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}.card-top{display:flex;align-items:center;gap:8px;margin-bottom:24px;color:#8e8aa8;font-size:11px}.live-dot{width:7px;height:7px;border-radius:50%;background:#64e6ae;box-shadow:0 0 12px #64e6ae}.spark{margin-left:auto;color:#a995ff;font-size:18px;animation:sparkle 2.4s ease-in-out infinite}.tabs{background:#070713b3;border:1px solid rgba(255,255,255,.04);padding:4px;border-radius:13px;margin-bottom:28px}.tabs button{font-size:12px;transition:.25s}.tabs button.active{background:linear-gradient(135deg,#7659ff,#4f39cb);box-shadow:0 5px 18px #664aff4d}.auth-card h2{font-size:28px;letter-spacing:-.06em;margin:0 0 7px}.auth-card form{gap:14px;margin-top:25px}.auth-card label{display:grid;gap:7px;color:#aaa6c3;font-size:11px}.auth-card input{height:50px;background:#080815b8;border:1px solid #312c53;border-radius:12px;padding:0 15px;font-size:13px;transition:.25s}.auth-card input:focus{border-color:#8872ff;box-shadow:0 0 0 4px #7a5eff1f,0 0 24px #7a5eff1a}.auth-card form>button{height:52px;margin-top:7px;background:linear-gradient(105deg,#8b6bff,#6547e9 55%,#3b9eea);box-shadow:0 10px 28px #684bff4d;font-size:14px;transition:transform .2s,box-shadow .2s}.auth-card form>button:hover{transform:translateY(-2px);box-shadow:0 14px 34px #684bff75}.secure-note{margin-top:22px;text-align:center;color:#706b88;font-size:10px}.secure-note span{color:#8e7cff;margin-right:5px}.auth-side-note{margin-top:17px;color:#67627e;font-size:11px}.auth-side-note span{color:#9882ff;margin-left:5px}@keyframes auth-spin{to{transform:rotate(360deg)}}@keyframes pulse-dot{50%{opacity:.35;transform:scale(.65)}}@keyframes float-glow{50%{transform:translate(20px,-18px) scale(1.12)}}@keyframes sparkle{50%{transform:rotate(25deg) scale(1.2);text-shadow:0 0 16px #a995ff}}@media(max-width:950px){.auth-copy{padding:30px 30px 0;min-height:430px}.auth-kicker{margin-top:70px}.auth-copy h1{margin-top:18px}.auth-copy canvas{right:0;bottom:-80px;width:310px}.auth-side{padding:0 20px 38px}.auth-card{margin-top:-25px;z-index:3}.auth-side-note{display:none}}@media(max-width:600px){.auth-copy{min-height:390px}.auth-copy h1{font-size:45px}.auth-copy p{font-size:13px}.auth-proof{gap:6px}.auth-proof span{font-size:10px;padding:8px 9px}.auth-copy canvas{opacity:.48;width:260px;right:-45px;bottom:-35px}.auth-card{padding:23px 20px;border-radius:22px}.auth-card:before{border-radius:22px}.auth-card h2{font-size:25px}}.project-dialog{width:min(430px,calc(100% - 32px));padding:0;border:1px solid #3c3470;border-radius:24px;background:linear-gradient(145deg,#211c43,#0e0d1e);color:#f8f7ff;box-shadow:0 30px 120px #000b,0 0 70px #7154ff33}.project-dialog::backdrop{background:#05050dcc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.project-dialog form{padding:32px}.dialog-orb{display:grid;place-items:center;width:46px;height:46px;margin-bottom:22px;border-radius:15px;background:linear-gradient(135deg,#9b7cff,#5136da);box-shadow:0 10px 30px #7254ff55;font-size:24px}.project-dialog h2{margin:10px 0 8px;font-size:27px;letter-spacing:-.06em}.project-dialog p{margin:0 0 22px;color:#9b97b2;font-size:12px;line-height:1.6}.project-dialog input{width:100%;height:52px;border:1px solid #3a345f;border-radius:13px;background:#0c0b1b;color:#fff;padding:0 15px;outline:0;font:14px Manrope}.project-dialog input:focus{border-color:#927bff;box-shadow:0 0 0 4px #765aff1c}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.dialog-actions button{height:45px;border:0;border-radius:11px;padding:0 16px;font:600 12px Manrope;cursor:pointer}.dialog-cancel{background:#17152b;color:#aaa6bd}.dialog-submit{background:linear-gradient(105deg,#8b6bff,#5f43e6);color:#fff;box-shadow:0 8px 22px #7152ff45}.dialog-submit span{font-size:16px;margin-left:5px}.project-row{display:flex;align-items:center;gap:3px}.project-row .project{min-width:0;flex:1}.project-edit,.project-delete{width:30px;height:30px;border:0;border-radius:8px;background:transparent;color:#706b89;opacity:0;cursor:pointer;transition:.2s}.project-row:hover .project-edit,.project-edit:focus{opacity:1;color:#b6a8ff;background:#211d3d}.project-row:hover .project-delete,.project-delete:focus{opacity:1;color:#ff8f9c;background:#3b1e35}.project-edit:hover,.project-delete:hover{color:#fff;transform:scale(1.08)}.public-link.payment-required{border-color:#765cf0;background:linear-gradient(105deg,#765aff22,#3d9de622);color:#c9beff;box-shadow:0 0 24px #7154ff1f}.public-link.payment-required:hover{border-color:#9b88ff;background:linear-gradient(105deg,#765aff38,#3d9de638)}.composer{display:block}.composer-main{display:flex;align-items:flex-end;gap:9px}.composer-main textarea{min-width:0}.attach-button{flex:0 0 44px!important;width:44px;height:44px;padding:0!important;border:1px solid #35305b!important;background:#17152d!important;color:#a99aff!important;display:grid;place-items:center;transition:.2s}.attach-button:hover{border-color:#816af8!important;background:#211d42!important;transform:translateY(-1px)}.attach-button svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.send-button{height:44px}.attachment-hint{margin:8px 2px 0 53px;color:#5f5b74;font-size:9px}.attachment-tray{display:flex;gap:8px;overflow-x:auto;padding:0 0 10px 53px}.attachment-tray[hidden]{display:none}.attachment-item{position:relative;flex:0 0 72px;height:64px;border:1px solid #302b50;border-radius:10px;overflow:hidden;background:#111021}.attachment-item img{width:100%;height:100%;object-fit:cover}.attachment-item button{position:absolute;right:3px;top:3px;width:20px;height:20px;padding:0!important;border-radius:50%!important;background:#090817cc!important;color:#fff!important;font-size:15px;line-height:1}.attachment-item span{position:absolute;left:4px;right:4px;bottom:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:2px 4px;border-radius:4px;background:#090817bb;color:#ddd;font-size:7px}.message-images{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin-bottom:6px}.message-images img{width:100%;height:74px;object-fit:cover;border-radius:10px;border:1px solid #38315e}@media(max-width:600px){.attachment-hint{display:none}.attachment-tray{padding-left:0}.composer-main{align-items:center}.composer-main textarea{height:66px}.send-button{padding:0 12px!important}.attach-button{flex-basis:40px!important;width:40px}}.invitation-create{border-color:#5c3f63!important;background:linear-gradient(120deg,#28192f,#18142c)!important;color:#f2c7db!important;box-shadow:inset 0 0 25px #9c477514}.invitation-create:hover{border-color:#a55d84!important;transform:translateY(-1px)}.header-actions{display:flex;align-items:center;gap:9px}.wishes-button{height:41px;padding:0 14px;border:1px solid #4e3962;border-radius:9px;background:#21162b;color:#e5bdd6;font:600 12px Manrope;cursor:pointer}.wishes-button b{display:inline-grid;place-items:center;min-width:20px;height:20px;margin-left:5px;border-radius:20px;background:#8d496f;color:#fff;font-size:10px}.project-wish-count{margin-left:auto;display:grid;place-items:center;min-width:18px;height:18px;border-radius:20px;background:#7d4167;color:#fff;font-size:9px}.chat-promo{margin:14px 14px 0;padding:11px 12px;border:1px solid #503557;border-radius:13px;background:radial-gradient(circle at 10% 0,#6e365544,transparent 45%),#181326;display:flex;align-items:center;gap:10px;color:#edcadb}.chat-promo[hidden]{display:none}.chat-promo>span{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:linear-gradient(135deg,#b15d8a,#6a3b78);box-shadow:0 6px 18px #9f4d7855}.chat-promo div{display:grid;gap:2px;min-width:0}.chat-promo small{color:#8e8196;font-size:8px}.chat-promo button{margin-left:auto;border:0;border-radius:8px;background:#3a2446;color:#e7bed4;padding:7px 10px;font:600 9px Manrope;cursor:pointer}.audio-attach{color:#e2a7ca!important}.audio-item{background:linear-gradient(145deg,#3d2349,#171329)}.audio-note{display:grid;place-items:center;height:100%;font-size:28px;color:#e9aed0;text-shadow:0 0 20px #c55b9d}.project-types{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:0 0 17px}.project-types[hidden]{display:none}.project-types button{display:grid;text-align:left;gap:4px;min-height:92px;padding:13px;border:1px solid #332e54;border-radius:13px;background:#111024;color:#aaa5bd;cursor:pointer}.project-types button.selected{border-color:#8c74ff;background:linear-gradient(145deg,#2d2755,#17142d);box-shadow:0 0 0 3px #765aff13}.project-types button span{font-size:20px;color:#a28fff}.project-types button:nth-child(2) span{color:#e6a8c8}.project-types b{font:700 11px Manrope;color:#f3f1ff}.project-types small{font:9px Manrope;color:#777289}.wishes-dialog{width:min(720px,calc(100% - 28px));max-height:min(760px,88vh);padding:0;border:1px solid #49355d;border-radius:24px;background:radial-gradient(circle at 90% 0,#4c294644,transparent 32%),#0d0c19;color:#fff;box-shadow:0 30px 120px #000c}.wishes-dialog::backdrop{background:#05050ddd;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px)}.wishes-head{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:center;padding:25px 28px;border-bottom:1px solid #292239;background:#0d0c19e8;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px)}.wishes-head h2{margin:6px 0 0;font-size:25px}.wishes-head>button{width:38px;height:38px;border:1px solid #392d48;border-radius:11px;background:#171322;color:#aaa1b5;font-size:24px;cursor:pointer}.wishes-list{padding:20px 25px 28px;display:grid;gap:11px;overflow:auto}.wish-item{position:relative;display:grid;grid-template-columns:42px 1fr auto;gap:12px;padding:17px;border:1px solid #2a2439;border-radius:16px;background:linear-gradient(135deg,#171426,#11101d)}.wish-avatar{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,#bc6e98,#66427d);font-weight:800}.wish-meta{display:flex;align-items:center;gap:10px}.wish-meta b{font-size:12px}.wish-meta time{color:#716b7e;font:9px DM Mono}.wish-item p{margin:7px 0 0;color:#bbb5c4;font-size:12px;line-height:1.65;white-space:pre-wrap}.wish-item>button{align-self:start;width:26px;height:26px;border:0;border-radius:8px;background:transparent;color:#6e6679;cursor:pointer}.wish-item>button:hover{background:#3c1f35;color:#ff99ad}.wishes-empty,.wishes-loading{min-height:260px;display:grid;place-items:center;align-content:center;text-align:center;color:#777183}.wishes-empty span{font-size:44px;color:#a75b85}.wishes-empty b{margin-top:10px;color:#d7d2dc}.wishes-empty p{font-size:11px}.invitation-preview{position:absolute;right:7%;top:15%;width:145px;height:190px;border:1px solid rgba(224,184,210,.35);border-radius:72px 72px 18px 18px;background:linear-gradient(160deg,#8e4b7347,#17123094);display:grid;place-items:center;align-content:center;text-align:center;box-shadow:0 20px 70px #0006,0 0 40px #b4608c22;animation:invitation-float 6s ease-in-out infinite;transform:rotate(7deg);z-index:1}.invitation-preview b{font:italic 24px/1.05 Georgia;color:#f0cadc}.invitation-preview small{margin-top:14px;color:#9b8192;font-size:8px;letter-spacing:.15em}.invitation-ring{position:absolute;border:1px solid rgba(226,185,207,.22);border-radius:50%;inset:12px}.ring-two{inset:22px;border-style:dashed;animation:auth-spin 18s linear infinite}@keyframes invitation-float{50%{translate:0 -13px;rotate:-2deg}}@media(max-width:600px){.header-actions{gap:5px}.wishes-button{padding:0 9px}.public-link{padding:10px!important;font-size:10px!important}.chat-promo{margin:10px 10px 0}.project-types{grid-template-columns:1fr}.invitation-preview{display:none}.wishes-head{padding:20px}.wishes-list{padding:14px}.wish-item{grid-template-columns:36px 1fr auto;padding:13px}.wish-avatar{width:36px;height:36px}}.creation-actions{display:grid;gap:7px}.creation-actions .ghost{margin:0}.birthday-create{border-color:#665438!important;background:linear-gradient(120deg,#2c2416,#171528)!important;color:#f3d99a!important}.love-create{border-color:#693447!important;background:linear-gradient(120deg,#321624,#171329)!important;color:#ffb8cd!important}.holiday-create{border-color:#32556c!important;background:linear-gradient(120deg,#142b38,#15152a)!important;color:#a9e4ff!important}.birthday-create:hover,.love-create:hover,.holiday-create:hover{transform:translateY(-1px);filter:brightness(1.13)}.chat-promo.creation-promo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:9px;background:linear-gradient(145deg,#181329,#10101f)}.creation-promo>button{margin:0;min-width:0;padding:9px 8px;display:flex;align-items:center;justify-content:flex-start;gap:7px;border:1px solid #423454;background:#21182d;color:#d9d2e7}.creation-promo>button:nth-child(2){border-color:#5b4932;background:#292216;color:#f0d494}.creation-promo>button:nth-child(3){border-color:#613146;background:#2b1721;color:#ffb4ca}.creation-promo>button:nth-child(4){border-color:#305268;background:#142632;color:#a9e4ff}.creation-promo>button span{display:grid;place-items:center;width:25px;height:25px;border-radius:8px;background:#ffffff0c;font-size:14px}.creation-promo>button b{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-dialog{width:min(680px,calc(100vw - 28px))}.project-types{grid-template-columns:repeat(2,minmax(0,1fr))}.project-types button{transition:transform .2s,border-color .2s,background .2s}.project-types button:hover{transform:translateY(-2px);border-color:#6d5ba5}.project-types button:nth-child(3) span{color:#f0cf83}.project-types button:nth-child(4) span{color:#ff9fbc}.project-types button:nth-child(5) span{color:#80d7ff}@media(max-width:1100px){.creation-actions{grid-template-columns:1fr 1fr}.creation-actions #newProject{grid-column:1 / -1}}@media(max-width:600px){.creation-actions{grid-template-columns:1fr 1fr}.project-types{grid-template-columns:1fr}}.attachment-item{display:flex;align-items:center;justify-content:center}.attachment-item>img,.attachment-item>.audio-note{position:absolute;inset:0}.attachment-item>span{z-index:2}.attachment-item>button{z-index:4}.upload-status{position:absolute;z-index:3;left:4px;right:4px;bottom:4px;display:grid;gap:2px;padding:3px 4px;border-radius:5px;background:#090817d9;color:#e8e4f3;font:700 7px/1 Manrope,sans-serif;text-align:center}.upload-status i{display:block;height:3px;border-radius:9px;background:linear-gradient(90deg,#8068ff,#54c7ff);transition:width .15s ease}.attachment-item.done .upload-status i{background:#62dfa9}.attachment-item.failed .upload-status i{background:#ff7186;width:100%!important}.attachment-item.done .upload-status b{color:#8bf0be}.attachment-item.failed .upload-status b{color:#ff9aaa}.attachment-item.uploading{border-color:#8068ff;box-shadow:0 0 0 2px #8068ff26}@media(max-width:600px){.sidebar{display:flex;position:fixed;z-index:20;left:0;right:0;bottom:0;width:auto;height:54px;padding:0 14px;border-right:0;border-top:1px solid #24233a;background:#0e0d1d;align-items:center}.sidebar>*:not(.side-bottom){display:none}.side-bottom{display:flex;width:100%;margin:0;align-items:center}.main{padding-bottom:74px}}:root{--violet:#8b73ff;--violet-soft:#b5a7ff;--ink:#080812;--panel:#111023;--line:#2b2748;--muted:#918da8}body{overflow-x:hidden;background:var(--ink)}.app{position:relative;isolation:isolate;background:radial-gradient(900px 500px at 75% -10%,#34277055,transparent 70%),radial-gradient(700px 500px at 0 100%,#17134455,transparent 70%),var(--ink)}.app:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.25;background-image:linear-gradient(#fff 1px,transparent 1px),linear-gradient(90deg,#fff 1px,transparent 1px);background-size:72px 72px;-webkit-mask-image:linear-gradient(to bottom,black,transparent 75%);mask-image:linear-gradient(to bottom,black,transparent 75%)}.sidebar{background:linear-gradient(180deg,#0e0d1eeb,#0b0a16dd);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:18px 0 55px #0003}.brand{display:flex;align-items:center}.brand-dot{box-shadow:0 0 28px #8067ff88}.muted{color:var(--muted)}.creation-actions{display:grid;gap:8px}.ghost{transition:transform .22s,border-color .22s,background .22s;box-shadow:inset 0 1px #ffffff08}.ghost:hover{transform:translateY(-2px);border-color:#7664d8;background:#1b1838}.main{padding:clamp(18px,3vw,38px);position:relative}header{min-height:48px}.header-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.public-link{transition:.2s}.public-link:hover{border-color:var(--violet);background:#211b45}.workspace{height:calc(100vh - 128px);grid-template-columns:minmax(320px,.72fr) minmax(420px,1.28fr);gap:clamp(12px,2vw,22px)}.chat,.preview{border-color:#3a345d;box-shadow:0 24px 80px #0004,0 0 0 1px #fff03;transition:border-color .25s,box-shadow .25s}.chat:focus-within,.preview:hover{border-color:#6655b2;box-shadow:0 24px 90px #0005,0 0 35px #6753c622}.chat-promo{padding:14px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;border-bottom:1px solid var(--line)}.chat-promo button{min-height:58px;border:1px solid #34305a;border-radius:13px;background:linear-gradient(135deg,#191632,#121126);color:#dcd8f4;cursor:pointer;text-align:left;padding:10px 12px;transition:.2s}.chat-promo button:hover{transform:translateY(-2px);border-color:#8976ff;box-shadow:0 10px 30px #0005}.chat-promo span{display:block;color:#b9aaff;font-size:18px;margin-bottom:3px}.chat-promo b{font-size:11px}.messages{scrollbar-color:#4d417d transparent;scrollbar-width:thin}.bubble{box-shadow:0 8px 20px #0002}.message.user .bubble{box-shadow:0 10px 28px #5941d944}.composer{background:#0b0a16e8;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.composer textarea{border:1px solid #282346;transition:.2s}.composer textarea:focus{border-color:#7665d8;box-shadow:0 0 0 3px #8067ff1c}.composer button{transition:.2s}.composer button:hover{filter:brightness(1.12);transform:translateY(-1px)}.preview-bar{background:#efedf5;border-bottom:1px solid #d9d5e2}.preview iframe{min-height:0}.mobile-logout{display:none;border:1px solid #3f376d;border-radius:9px;background:#17132e;color:#c6baff;padding:9px 12px;font:600 12px Manrope;cursor:pointer}@media(max-width:950px){.main{padding:22px 18px}.workspace{height:auto;min-height:0;grid-template-columns:1fr}.chat{min-height:620px}.preview{height:min(720px,78vh);min-height:520px}.chat-promo{grid-template-columns:repeat(4,minmax(0,1fr))}.chat-promo button{min-height:72px}.chat-promo b{font-size:10px}}@media(max-width:600px){.main{padding:16px 12px 76px}header{align-items:flex-start;margin-bottom:14px}.header-actions{gap:6px}.mobile-logout{display:block}.public-link{font-size:11px;padding:9px 10px}.workspace{display:flex;flex-direction:column;gap:12px}.chat{min-height:calc(100svh - 150px);border-radius:15px}.preview{height:68svh;min-height:420px;border-radius:15px}.chat-promo{grid-template-columns:repeat(2,minmax(0,1fr));padding:10px}.chat-promo button{min-height:54px;padding:8px}.messages{padding:15px}.composer{padding:10px}.composer-main{gap:6px}.composer textarea{font-size:12px}.send-button{padding:0 12px!important}.preview-bar{height:38px}.side-bottom{font-size:11px}.sidebar{display:flex;position:fixed;z-index:20;left:0;right:0;bottom:0;width:auto;height:54px;padding:0 14px;border:0;border-top:1px solid #292542;background:#0d0c19f5;align-items:center}.sidebar>*:not(.side-bottom){display:none}.side-bottom{display:flex;width:100%;margin:0;align-items:center}}.mobile-app-menu,.mobile-preview-open{display:none}.mobile-preview-dialog:not([open]){display:none}@media(max-width:600px){header{position:relative}.mobile-app-menu{display:inline-flex;align-items:center;gap:6px;border:1px solid #3c356d;border-radius:9px;background:#15122c;color:#dcd5ff;padding:9px 11px;font:600 11px Manrope;cursor:pointer}.main:not(.mobile-app-menu-open) .header-actions>*:not(.mobile-app-menu){display:none}.main.mobile-app-menu-open .header-actions{display:flex;flex-direction:column;align-items:stretch;position:absolute;right:0;top:52px;z-index:30;min-width:170px;padding:8px;border:1px solid #3d356d;border-radius:12px;background:#111024f5;box-shadow:0 18px 45px #0008;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px)}.main.mobile-app-menu-open .header-actions>*{display:block!important}.mobile-preview-open{display:none!important}.mobile-inline-preview{display:none}.preview{display:none!important}.mobile-preview-dialog{width:calc(100% - 24px);height:calc(100svh - 70px);padding:0;border:1px solid #51458d;border-radius:16px;background:#f5f4f8;overflow:hidden}.mobile-preview-dialog::backdrop{background:#05040dcc;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.mobile-preview-dialog .preview-bar{display:flex;height:42px}.mobile-preview-dialog iframe{display:block;width:100%;height:calc(100% - 42px);border:0;background:#fff}.mobile-preview-close{position:absolute;right:10px;top:7px;z-index:3;width:28px;height:28px;border:0;border-radius:50%;background:#2d2940;color:#fff;font-size:20px}.chat{min-height:calc(100svh - 132px);height:calc(100svh - 132px)}.composer textarea{height:136px!important;min-height:136px;line-height:1.55}.composer{padding:12px}.composer-main{align-items:stretch}.composer-main .send-button{min-width:92px}.chat-promo{flex:none}.messages{min-height:0}.mobile-inline-preview{display:block;margin:10px 0 0;border:1px solid #6d5ad4;border-radius:9px;background:#17132f;color:#cfc6ff;padding:9px 12px;font:600 11px Manrope;cursor:pointer}}.mobile-chat-menu{display:none}@media(max-width:600px){.main.mobile-app-menu-open .header-actions .mobile-chat-menu{display:grid!important;gap:7px;padding:0;margin:0 0 5px;background:none;border:0}.mobile-chat-menu button{display:grid!important;grid-template-columns:28px 1fr;grid-template-rows:auto auto;column-gap:8px;text-align:left;border:1px solid #322b59!important;border-radius:9px!important;background:#17142d!important;color:#ddd7f5!important;padding:9px!important}.mobile-chat-menu button>span{grid-row:1/3;display:grid;place-items:center;font-size:19px;color:#b8aaff}.mobile-chat-menu button>b{font:700 11px Manrope}.mobile-chat-menu button>small{font:10px/1.35 Manrope;color:#89829e}.mobile-chat-menu button:hover{border-color:#7664d8!important;background:#211b45!important}}.mobile-attach-toggle,.mobile-attach-picker{display:none}@media(max-width:600px){header h1{max-width:calc(100vw - 135px);font-size:14px!important;line-height:1.2!important;letter-spacing:-.01em!important;margin:5px 0!important;overflow-wrap:anywhere}.main.mobile-app-menu-open .header-actions .side-bottom{display:flex!important;order:20;margin:6px 0 0;padding:10px 2px 2px;border-top:1px solid #ffffff14;justify-content:space-between}.main.mobile-app-menu-open .header-actions .side-bottom .link{color:#bcabff}.sidebar .side-bottom{display:none}.mobile-attach-toggle{display:grid;place-items:center;width:40px;height:40px;align-self:end;flex:none;border:1px solid #4a3e84!important;border-radius:11px!important;background:#15122f!important;color:#d8ceff!important;font:300 27px/1 Manrope!important;padding:0!important}.composer{position:relative;display:flex!important;flex-direction:row!important;align-items:flex-end!important;gap:5px!important}.composer-main{flex:1;min-width:0;gap:5px!important}.composer-main>#imageAttach,.composer-main>#audioAttach{display:none}.mobile-attach-picker{position:absolute;left:10px;bottom:108px;z-index:25;display:none;gap:6px;padding:7px;border:1px solid #4b4084;border-radius:12px;background:#12102a;box-shadow:0 15px 40px #0009}.mobile-attach-picker.open{display:grid}.mobile-attach-picker button{border:0!important;border-radius:8px!important;background:#211b45!important;color:#e0d9ff!important;padding:10px 12px!important;font:600 11px Manrope!important;white-space:nowrap}.composer-main .send-button{min-width:44px!important;width:44px!important;height:40px!important;padding:0!important;font-size:0!important;color:transparent!important}.composer-main .send-button span{display:block;color:#fff!important;font-size:23px!important;margin:0!important}.composer-main textarea{min-width:0;height:86px!important;min-height:86px;line-height:1.45}.composer>.attachment-hint{display:none}.preview-followup{max-width:92%!important}.mobile-save-project{display:block;margin-top:10px;border:1px solid #7560e8;border-radius:9px;background:#17132f;color:#dcd4ff;padding:10px 13px;font:600 11px Manrope;cursor:pointer}.mobile-inline-preview{margin-top:9px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.guest-shell{min-height:100vh;color:#f8f7ff;background:radial-gradient(900px 500px at 50% -10%,#43328c55,transparent 72%),#080812;overflow:hidden}.guest-nav{height:76px;padding:0 clamp(18px,6vw,90px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff0b;background:#090817aa;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);position:relative;z-index:5}.guest-logo{color:#fff;text-decoration:none;font-size:19px;font-weight:800}.guest-logo span{display:inline-grid;place-items:center;width:30px;height:30px;margin-right:8px;border-radius:10px;background:linear-gradient(135deg,#a48fff,#674cff);box-shadow:0 0 28px #8067ff66}.guest-nav-links{display:flex;align-items:center;gap:28px}.guest-nav-links a{color:#9691ad;text-decoration:none;font-size:12px}.guest-nav-links a:hover{color:#fff}.nav-login{border:1px solid #51458d;border-radius:10px;background:#17132e;color:#d8d0ff;padding:10px 17px;font:600 12px Manrope;cursor:pointer}.mobile-nav-login{display:none}.guest-hero{min-height:690px;display:flex;flex-direction:column;align-items:center;text-align:center;padding:clamp(80px,11vh,135px) 18px 70px;position:relative}.hero-orbit{position:absolute;width:min(650px,90vw);height:min(650px,90vw);border:1px solid #8d79ff1c;border-radius:50%;top:40px;box-shadow:0 0 100px #725bff18,inset 0 0 100px #725bff14;pointer-events:none}.hero-orbit:after{content:"✦";position:absolute;right:15%;top:17%;color:#c9c0ff;filter:drop-shadow(0 0 15px #a695ff);animation:guestFloat 5s ease-in-out infinite}.hero-copy{max-width:850px;position:relative}.hero-kicker,.section-kicker{color:#a99dff;font:10px DM Mono,monospace;letter-spacing:.2em}.hero-kicker i{display:inline-block;width:6px;height:6px;margin-right:8px;border-radius:50%;background:#a99dff;box-shadow:0 0 15px #a99dff}.hero-copy h1{font-size:clamp(42px,7vw,88px);line-height:.98;letter-spacing:-.07em;margin:22px 0}.hero-copy h1 em{font-style:normal;color:#a998ff}.hero-copy p{max-width:670px;margin:0 auto;color:#aaa6bb;font-size:15px;line-height:1.8}.guest-composer{position:relative;width:min(760px,100%);margin:43px auto 0;padding:18px 20px 15px;border:1px solid #554a8d;border-radius:20px;text-align:left;background:linear-gradient(145deg,#171432e8,#0e0c1de8);box-shadow:0 25px 90px #0008,0 0 50px #745dff12;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.composer-label{color:#cbc4e6;font-size:12px;font-weight:700}.composer-label span{color:#a594ff;font-size:18px;margin-right:7px}.guest-composer textarea{width:100%;height:72px;resize:none;border:0;outline:0;background:transparent;color:#fff;padding:14px 0;font:14px/1.6 Manrope}.guest-composer textarea::placeholder{color:#716b8c}.guest-composer-foot{display:flex;align-items:center;justify-content:space-between;color:#716b8c;font-size:10px}.guest-composer button,.primary-cta{border:0;border-radius:10px;background:linear-gradient(135deg,#967fff,#684cff);color:#fff;padding:12px 17px;font:700 12px Manrope;cursor:pointer;box-shadow:0 10px 28px #765dff44}.guest-composer button b,.primary-cta b{font-size:17px;margin-left:8px}.hero-proof{display:flex;gap:20px;margin-top:25px;color:#7f7995;font-size:11px}.demo-section,.how-section{max-width:1200px;margin:auto;padding:85px clamp(18px,5vw,60px)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:30px}.section-heading h2,.how-section h2{font-size:clamp(28px,4vw,48px);letter-spacing:-.06em;margin:12px 0}.section-heading p{max-width:300px;color:#88839b;font-size:13px;line-height:1.7}.demo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.demo-card{border:1px solid #312b50;border-radius:18px;overflow:hidden;background:#111022;transition:.3s}.demo-card:hover{transform:translateY(-7px);border-color:#7766d0;box-shadow:0 20px 45px #0007}.demo-art{height:220px;position:relative;display:grid;place-items:center;overflow:hidden}.demo-art:before{content:"";position:absolute;width:180px;height:180px;border:1px solid #ffffff35;border-radius:50%;box-shadow:0 0 70px #fff3}.demo-gold .demo-art{background:radial-gradient(circle,#886b3733,#140f1b),linear-gradient(140deg,#211a2c,#080912)}.demo-rose .demo-art{background:radial-gradient(circle,#bc668044,#241327),#111}.demo-violet .demo-art{background:radial-gradient(circle,#8b70ec55,#17102b),#111}.demo-blue .demo-art{background:radial-gradient(circle,#4c8bd844,#0e1a31),#111}.demo-orb{font-size:62px;color:#f2d6a5;filter:drop-shadow(0 0 25px currentColor);animation:guestFloat 5s ease-in-out infinite}.demo-rose .demo-orb{color:#f1aecb}.demo-violet .demo-orb{color:#c0b1ff}.demo-blue .demo-orb{color:#9dcaff}.demo-spark{position:absolute;color:#fff;opacity:.6}.spark-a{top:25%;right:22%;animation:guestPulse 2.5s infinite}.spark-b{bottom:20%;left:22%;font-size:30px}.demo-art-copy{position:absolute;bottom:18px;left:20px;display:grid;text-align:left}.demo-art-copy small{font:9px DM Mono;letter-spacing:.15em;color:#fff9}.demo-art-copy strong{font:italic 19px Georgia;color:#fff;margin-top:5px}.demo-card-body{padding:17px}.demo-card-body p{height:47px;margin:0 0 15px;color:#8f8a9f;font-size:11px;line-height:1.55}.demo-open{border:0;background:none;color:#b5a8ff;padding:0;font:600 11px Manrope;cursor:pointer}.demo-open b{margin-left:8px;font-size:16px;transition:.2s}.demo-open:hover b{margin-left:14px}.how-section{border-top:1px solid #ffffff0b}.how-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:35px}.how-grid div{padding:22px;border:1px solid #292541;border-radius:16px;background:#100e20}.how-grid b{color:#a596ff;font:11px DM Mono}.how-grid h3{font-size:17px;margin:20px 0 8px}.how-grid p{color:#89849a;font-size:12px;line-height:1.6}.guest-footer{display:flex;justify-content:space-between;padding:28px clamp(18px,6vw,90px);border-top:1px solid #ffffff0b;color:#777188;font-size:11px}.guest-dialog{width:min(900px,calc(100% - 28px));padding:0;border:1px solid #554a8d;border-radius:20px;background:#0d0b1b;color:#fff;box-shadow:0 30px 100px #000b}.guest-dialog::backdrop{background:#05040dcc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.dialog-close{position:absolute;right:16px;top:13px;border:0;background:none;color:#bbb4d0;font-size:27px;cursor:pointer;z-index:2}.demo-detail{display:grid;grid-template-columns:1fr 1fr;min-height:480px}.demo-detail-art{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:40px;background:radial-gradient(circle,#8b6e4638,transparent 62%),#171022}.demo-detail-art>span{font-size:80px;color:#edc789;filter:drop-shadow(0 0 30px currentColor)}.demo-rose .demo-detail-art>span{color:#efa7c5}.demo-violet .demo-detail-art>span{color:#c2b1ff}.demo-blue .demo-detail-art>span{color:#9ccaff}.demo-detail-art small{font:10px DM Mono;letter-spacing:.2em;color:#cfc6df;margin-top:20px}.demo-detail-art h2{font:italic 42px Georgia;margin:15px 0 10px}.demo-detail-art p{color:#a9a0b4;font-size:12px}.fake-count{display:flex;gap:11px;margin-top:25px}.fake-count b{display:grid;place-items:center;width:50px;height:44px;border:1px solid #ffffff22;border-radius:8px;background:#fff1;color:#fff}.demo-detail-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(30px,6vw,70px);background:#111022}.demo-detail-copy h3{font-size:26px;line-height:1.2;margin:17px 0}.demo-detail-copy p{color:#928ca2;font-size:13px;line-height:1.7}.primary-cta{margin-top:22px;align-self:flex-start}.auth-dialog{width:min(450px,calc(100% - 28px));padding:42px}.auth-gate{text-align:center}.gate-icon{display:grid;place-items:center;width:52px;height:52px;margin:0 auto 20px;border-radius:16px;background:#8067ff;color:#fff;font-size:24px;box-shadow:0 0 35px #8067ff66}.auth-gate h2{font-size:29px;letter-spacing:-.05em;margin:12px 0}.auth-gate>p{color:#9690a5;font-size:13px;line-height:1.6}.gate-tabs{display:flex;gap:4px;margin:26px 0 14px;padding:4px;border-radius:10px;background:#0a0914}.gate-tabs button{flex:1;border:0;border-radius:7px;padding:10px;background:none;color:#77718d;font:600 12px Manrope;cursor:pointer}.gate-tabs button.active{background:#29234e;color:#fff}.auth-gate form{display:grid;gap:10px}.auth-gate input{width:100%;padding:13px;border:1px solid #302b4e;border-radius:9px;background:#0b0a16;color:#fff;outline:0;font:13px Manrope}.auth-gate input:focus{border-color:#8067ff}.auth-gate form>button{height:46px;margin-top:5px;border:0;border-radius:9px;background:#8067ff;color:#fff;font:700 13px Manrope;cursor:pointer}.guest-auth-error{min-height:18px;color:#ff9da8;font-size:11px}@keyframes guestFloat{50%{transform:translateY(-8px) rotate(4deg)}}@keyframes guestPulse{50%{opacity:1;transform:scale(1.35)}}@media(max-width:900px){.demo-grid{grid-template-columns:repeat(2,1fr)}.guest-hero{min-height:650px}.section-heading{display:block}.section-heading p{margin-top:8px}.demo-detail{grid-template-columns:1fr}.demo-detail-art{min-height:310px}.demo-detail-copy{min-height:300px}}@media(max-width:600px){.guest-nav{height:64px;padding:0 16px}.guest-nav-links{display:none}.mobile-nav-login{display:block}.guest-hero{min-height:680px;padding:70px 14px 40px}.hero-copy h1{font-size:clamp(39px,12vw,58px)}.hero-copy p{font-size:13px;line-height:1.7}.guest-composer{margin-top:30px;padding:15px}.guest-composer textarea{height:86px}.guest-composer-foot{align-items:flex-end;gap:10px}.guest-composer-foot>span{max-width:120px;line-height:1.4}.guest-composer button{padding:11px 12px}.hero-proof{flex-wrap:wrap;justify-content:center;gap:9px 14px;font-size:10px}.demo-section,.how-section{padding:60px 14px}.demo-grid{grid-template-columns:1fr}.demo-art{height:190px}.how-grid{grid-template-columns:1fr;gap:10px}.how-grid div{padding:17px}.guest-footer{display:grid;gap:10px;padding:22px 16px}.auth-dialog{padding:35px 20px}.demo-detail-copy h3{font-size:23px}}@media(prefers-reduced-motion:reduce){.hero-orbit:after,.demo-orb{animation:none}}.guest-shell{--pointer-x:50vw;--pointer-y:20vh;position:relative;isolation:isolate}.guest-shell:before{content:"";position:fixed;z-index:-1;inset:0;pointer-events:none;background:radial-gradient(420px circle at var(--pointer-x) var(--pointer-y),#8c76ff20,transparent 70%);transition:background .2s}.guest-ambient{position:absolute;z-index:0;inset:0 0 auto;height:100vh;overflow:hidden;pointer-events:none;-webkit-mask-image:linear-gradient(#000 65%,transparent);mask-image:linear-gradient(#000 65%,transparent)}.guest-ambient:before,.guest-ambient:after{content:"";position:absolute;width:38vw;height:38vw;border-radius:50%;filter:blur(75px);opacity:.2;animation:ambientDrift 14s ease-in-out infinite alternate}.guest-ambient:before{left:-14vw;top:9vh;background:#7154ff}.guest-ambient:after{right:-15vw;top:28vh;background:#df5bba;animation-delay:-7s}.guest-ambient i{position:absolute;left:calc((var(--i) * 17.7%) - 8%);top:calc(8% + (var(--i) % 5) * 15%);width:3px;height:3px;border-radius:50%;background:#fff;box-shadow:0 0 12px #b3a6ff;opacity:.25;animation:ambientStar calc(4s + (var(--i) % 5) * 1s) ease-in-out infinite;animation-delay:calc(var(--i) * -.45s)}.guest-nav{position:sticky;top:0;animation:navEnter .7s both cubic-bezier(.16,1,.3,1)}.guest-logo span{animation:logoPulse 3.5s ease-in-out infinite}.guest-nav-links a{position:relative}.guest-nav-links a:after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:1px;background:#a998ff;transition:right .35s}.guest-nav-links a:hover:after{right:0}.hero-kicker{animation:heroReveal .7s .1s both}.hero-copy h1{animation:heroReveal 1s .2s both cubic-bezier(.16,1,.3,1)}.hero-copy h1 em{display:inline-block;background:linear-gradient(100deg,#a998ff,#eadcff,#957dff);background-size:220% auto;-webkit-background-clip:text;background-clip:text;color:transparent;animation:heroReveal 1s .35s both,headlineShine 5s 1.2s linear infinite}.hero-copy p{animation:heroReveal .9s .45s both}.guest-composer{animation:composerEnter 1s .58s both cubic-bezier(.16,1,.3,1);transition:transform .35s,border-color .35s,box-shadow .35s}.guest-composer:focus-within{transform:translateY(-4px) scale(1.012);border-color:#9381ff;box-shadow:0 32px 110px #0009,0 0 70px #745dff2e}.guest-composer:before{content:"";position:absolute;inset:-1px;border-radius:20px;padding:1px;background:linear-gradient(115deg,transparent 25%,#a998ff88,transparent 70%);background-size:250% 100%;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:borderSweep 5s linear infinite;pointer-events:none}.guest-composer button{position:relative;overflow:hidden;transition:transform .25s,box-shadow .25s}.guest-composer button:hover{transform:translateY(-2px);box-shadow:0 15px 38px #765dff77}.guest-composer button:after{content:"";position:absolute;inset:-100% -40%;background:linear-gradient(100deg,transparent 35%,#fff7,transparent 65%);transform:translate(-70%);animation:buttonShine 3.8s 1.5s infinite}.hero-proof{animation:heroReveal .8s .78s both}.hero-proof span{padding:7px 11px;border:1px solid #ffffff0b;border-radius:99px;background:#ffffff05;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.hero-orbit{animation:orbitBreathe 8s ease-in-out infinite}.hero-orbit:before{content:"";position:absolute;inset:9%;border:1px dashed #9b88ff1f;border-radius:50%;animation:orbitSpin 30s linear infinite}.hero-orbit:after{animation:orbitStar 12s linear infinite!important;transform-origin:calc(-1*min(220px,30vw)) min(210px,29vw)}.guest-reveal{opacity:0;transform:translateY(45px) scale(.97);filter:blur(7px);transition:opacity .8s var(--reveal-delay) cubic-bezier(.16,1,.3,1),transform .9s var(--reveal-delay) cubic-bezier(.16,1,.3,1),filter .8s var(--reveal-delay)}.guest-reveal.guest-visible{opacity:1;transform:none;filter:none}.demo-grid{perspective:1200px}.demo-card{position:relative;transform-style:preserve-3d;transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .25s ease,border-color .3s,box-shadow .3s}.demo-card.guest-visible:hover{transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translateY(-8px);box-shadow:0 28px 70px #0009,0 0 45px #7561ff18}.demo-card:after{content:"";position:absolute;inset:0;border-radius:18px;pointer-events:none;background:linear-gradient(125deg,#fff0 20%,#fff12 45%,#fff0 65%);opacity:0;transition:opacity .3s}.demo-card:hover:after{opacity:1}.demo-art:before{animation:demoRing 7s ease-in-out infinite}.demo-card:nth-child(2) .demo-art:before{animation-delay:-1.7s}.demo-card:nth-child(3) .demo-art:before{animation-delay:-3.4s}.demo-card:nth-child(4) .demo-art:before{animation-delay:-5.1s}.how-grid div{position:relative;overflow:hidden;transition:border-color .3s,transform .3s,background .3s}.how-grid div:after{content:"";position:absolute;width:130px;height:130px;right:-65px;bottom:-75px;border-radius:50%;background:#8067ff1b;filter:blur(3px);transition:transform .5s}.how-grid div:hover{transform:translateY(-5px);border-color:#6657a5;background:#15122b}.how-grid div:hover:after{transform:scale(1.8)}@keyframes navEnter{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:none}}@keyframes heroReveal{0%{opacity:0;transform:translateY(34px);filter:blur(8px)}to{opacity:1;transform:none;filter:none}}@keyframes composerEnter{0%{opacity:0;transform:translateY(45px) scale(.94);filter:blur(10px)}to{opacity:1;transform:none;filter:none}}@keyframes headlineShine{to{background-position:220% center}}@keyframes borderSweep{to{background-position:250% 0}}@keyframes buttonShine{55%,to{transform:translate(70%)}}@keyframes orbitBreathe{50%{transform:scale(1.06);opacity:.75}}@keyframes orbitSpin{to{transform:rotate(360deg)}}@keyframes orbitStar{to{transform:rotate(360deg)}}@keyframes logoPulse{50%{box-shadow:0 0 42px #8067ffaa;transform:rotate(8deg) scale(1.06)}}@keyframes ambientDrift{to{transform:translate3d(8vw,8vh,0) scale(1.15)}}@keyframes ambientStar{50%{opacity:.9;transform:translateY(-14px) scale(1.8)}}@keyframes demoRing{50%{transform:scale(1.15) rotate(12deg);opacity:.65}}@media(max-width:600px){.guest-shell:before{display:none}.guest-ambient:before,.guest-ambient:after{width:80vw;height:80vw;filter:blur(55px)}.guest-reveal{transform:translateY(28px);filter:blur(3px)}.demo-card,.demo-card.guest-visible:hover{transform:none}.hero-orbit{width:94vw;height:94vw}.guest-nav{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}}@media(prefers-reduced-motion:reduce){.guest-reveal{transition-duration:.4s}.hero-copy *,.guest-composer,.hero-proof{animation-duration:.45s!important}.guest-ambient:before,.guest-ambient:after{animation-duration:20s!important}}.full-demo-dialog{width:min(1180px,calc(100% - 18px));height:min(92vh,900px);overflow:hidden;border-radius:24px}.full-demo-dialog #demoContent{height:100%;overflow:auto}.real-demo{min-height:100%;background:#0e0a12;color:#fff;font-family:Manrope,sans-serif}.real-demo-nav{position:sticky;top:0;z-index:5;display:flex;justify-content:space-between;padding:17px 26px;background:#100b16d9;border-bottom:1px solid #fff2;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);font-size:12px}.music-toggle,.map-button{border:1px solid #fff5;border-radius:999px;background:#fff1;color:#fff;padding:8px 13px;font:11px Manrope;cursor:pointer}.real-hero{min-height:570px;display:grid;place-items:center;align-content:center;text-align:center;padding:60px 20px;position:relative;overflow:hidden;background:radial-gradient(circle at 50% 42%,#b77b4d44,transparent 34%),linear-gradient(145deg,#25131f,#0d0a12)}.real-hero:before{content:"";position:absolute;width:390px;height:390px;border:1px solid #edc78b55;border-radius:50%;box-shadow:0 0 90px #dd9f6222,inset 0 0 70px #dd9f621a}.demo-rose .real-hero{background:radial-gradient(circle at 50% 42%,#d95f9a55,transparent 35%),linear-gradient(145deg,#2b1429,#0e0914)}.demo-violet .real-hero{background:radial-gradient(circle at 50% 42%,#8b65e866,transparent 35%),linear-gradient(145deg,#201437,#0c0915)}.demo-blue .real-hero{background:radial-gradient(circle at 50% 42%,#4b9bd855,transparent 35%),linear-gradient(145deg,#10243c,#080e18)}.real-hero>*{position:relative}.real-hero small,.real-story>small,.real-gallery>small,.real-place small{font:10px DM Mono;letter-spacing:.24em;color:#e4bb91}.real-hero h1{font:italic clamp(52px,9vw,110px) Georgia;margin:24px 0 14px;letter-spacing:-.05em}.real-hero p{color:#d8c8d1;font-size:14px}.hero-particles{position:absolute;top:24%;color:#edc78b;letter-spacing:1.3em;opacity:.8;animation:realFloat 6s ease-in-out infinite}.scroll-cue{margin-top:90px;font:10px DM Mono;letter-spacing:.12em;color:#aa97a1}.real-count{padding:70px 20px;text-align:center;background:#130c12}.real-count small{font:10px DM Mono;letter-spacing:.2em;color:#cba77e}.count-grid{display:flex;justify-content:center;gap:14px;margin-top:25px}.count-grid b{display:grid;min-width:100px;padding:18px 10px;border:1px solid #fff3;border-radius:12px;background:#fff1}.count-grid strong{font:38px Georgia;color:#f2c99b}.count-grid span{font-size:10px;color:#a9989e;margin-top:4px}.real-story,.real-gallery{padding:100px clamp(25px,8vw,110px);background:#0f0c12}.real-story{text-align:center}.real-story h2,.real-gallery h2,.real-place h2,.real-final h2{font:italic clamp(30px,5vw,58px) Georgia;line-height:1.05;margin:18px 0 55px}.story-line{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;text-align:left}.story-line article{padding:25px;border-left:1px solid #edc78b66}.story-line i{font:11px DM Mono;color:#e6b885}.story-line h3{font:20px Georgia;margin:20px 0 10px}.story-line p,.real-place p,.real-final p{color:#a99ba2;font-size:13px;line-height:1.8}.real-gallery{text-align:center;background:linear-gradient(#100c14,#17101a)}.gallery-grid{display:grid;grid-template-columns:1.1fr .9fr 1fr;grid-template-rows:160px 160px;gap:12px;max-width:750px;margin:auto}.gallery-grid div{display:grid;place-items:center;border-radius:14px;font-size:52px;color:#f3c796;background:linear-gradient(140deg,#4b293a,#1b1321);box-shadow:inset 0 0 40px #fff1}.gallery-grid div:nth-child(2){grid-row:span 2;background:linear-gradient(140deg,#96704c,#261a24)}.gallery-grid div:nth-child(3){background:linear-gradient(140deg,#503b68,#1a1227)}.gallery-grid div:nth-child(4){background:linear-gradient(140deg,#8e4e6c,#251429)}.real-place{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;padding:100px clamp(25px,8vw,110px);background:#100b13}.real-place h2{margin:18px 0 15px}.map-art{height:260px;display:grid;place-items:center;border:1px solid #fff2;border-radius:18px;background:radial-gradient(circle,#dbac6925 1px,transparent 2px);background-size:24px 24px;color:#e5b980}.map-art span{font-size:55px;filter:drop-shadow(0 0 20px currentColor)}.map-art em{font:italic 18px Georgia}.real-final{text-align:center;padding:120px 20px;background:radial-gradient(circle,#b66d8438,transparent 55%),#160c15}.real-final>span{font-size:35px;color:#e9b6c9}.real-final h2{margin:18px 0}.real-final .primary-cta{margin:auto}@keyframes realFloat{50%{transform:translateY(-14px) rotate(5deg)}}@media(max-width:650px){.full-demo-dialog{width:100%;height:100%;max-height:none;border:0;border-radius:0}.real-demo-nav{padding:14px 16px}.real-hero{min-height:560px}.count-grid{gap:7px}.count-grid b{min-width:82px}.count-grid strong{font-size:31px}.story-line{grid-template-columns:1fr;gap:10px}.real-story,.real-gallery,.real-place{padding:70px 20px}.gallery-grid{grid-template-rows:120px 120px}.real-place{grid-template-columns:1fr}.map-art{height:190px}}.demo-card .demo-art{background-size:cover;background-position:center;isolation:isolate}.demo-card .demo-art:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0001 20%,#080811dd);z-index:-1}.demo-card:nth-child(1) .demo-art{background-image:url(/aisayt/demos/wedding-luxury.png)}.demo-card:nth-child(2) .demo-art{background-image:url(/aisayt/demos/birthday-party.png)}.demo-card:nth-child(3) .demo-art{background-image:url(/aisayt/demos/love-letter.png)}.demo-card:nth-child(4) .demo-art{background-image:url(/aisayt/demos/family-tribute.png)}.demo-card .demo-orb,.demo-card .demo-art-copy,.demo-card .demo-spark{z-index:1}.demo-card .demo-orb{color:#fff;mix-blend-mode:screen}.real-demo .real-hero{background-size:cover;background-position:center}.real-demo.demo-gold .real-hero{background-image:linear-gradient(180deg,#0b081355,#0b0811dd),url(/aisayt/demos/wedding-luxury.png)}.real-demo.demo-rose .real-hero{background-image:linear-gradient(180deg,#6a294055,#140b16dd),url(/aisayt/demos/birthday-party.png)}.real-demo.demo-violet .real-hero{background-image:linear-gradient(180deg,#180d2b44,#0d0714dd),url(/aisayt/demos/love-letter.png)}.real-demo.demo-blue .real-hero{background-image:linear-gradient(180deg,#0b263544,#0a1119dd),url(/aisayt/demos/family-tribute.png)}.variant{min-height:100%;overflow:hidden}.variant button{cursor:pointer}.wedding-variant{background:#f5efe3;color:#201b18;font-family:Georgia,serif}.wedding-top{display:flex;justify-content:space-between;align-items:center;padding:17px 5vw;background:#201b18;color:#e4c690;font:11px Manrope;letter-spacing:.18em}.wedding-top b{font:26px Georgia}.wedding-top button{border:1px solid #d5b675;background:transparent;color:#d5b675;border-radius:50%;width:34px;height:34px}.wedding-cover{min-height:570px;display:grid;place-items:center;align-content:center;text-align:center;color:#fff;position:relative;background:linear-gradient(#09070733,#090707aa),var(--cover) center/cover}.wedding-cover:after{content:"";position:absolute;inset:24px;border:1px solid #f9e4b066}.wedding-cover>*{position:relative;z-index:1}.wedding-monogram{font:clamp(62px,12vw,130px) Georgia;letter-spacing:.08em}.wedding-monogram i{font-size:.45em;color:#e5c37d}.wedding-cover p{font:italic 19px Georgia}.wedding-cover a{margin-top:90px;color:#fff;font:10px Manrope;letter-spacing:.18em}.wedding-invite{padding:100px 20px;text-align:center;background:#f5efe3}.wedding-invite small,.wedding-rsvp small{font:10px Manrope;letter-spacing:.22em;color:#927040}.wedding-invite h1{font:italic clamp(52px,8vw,86px) Georgia;line-height:.8;font-weight:400;margin:26px}.wedding-invite h1 em{font-size:.4em;color:#bc9457}.wedding-invite p{max-width:480px;margin:auto;color:#665a51;line-height:1.8;font:15px Manrope}.wedding-date{display:flex;gap:22px;justify-content:center;align-items:center;margin-top:44px}.wedding-date b{font:45px Georgia;color:#9c7648}.wedding-date span{padding:0 20px;border-left:1px solid #c9af8b;border-right:1px solid #c9af8b;font:11px Manrope;line-height:1.7}.wedding-gallery{display:grid;grid-template-columns:1fr .8fr 1fr;align-items:center;background:#1d1918;padding:30px}.wedding-gallery figure{height:260px;background:linear-gradient(#0001,#0007),var(--photo) center/cover;margin:0}.wedding-gallery blockquote{margin:0;color:#e5d7bd;padding:30px;font:italic 24px/1.4 Georgia;text-align:center}.wedding-rsvp{padding:110px 20px;text-align:center;background:#201b18;color:#fff}.wedding-rsvp h2{font:italic clamp(38px,6vw,64px) Georgia;font-weight:400}.wedding-rsvp button,.love-last button,.tribute-final button{border:1px solid currentColor;background:transparent;padding:14px 21px;color:inherit;font:600 12px Manrope}.birthday-variant{background:#ffebd8;color:#2d2551;font-family:Manrope}.birthday-cover{min-height:570px;display:flex;align-items:center;padding:clamp(35px,8vw,100px);background:var(--cover) center/cover;position:relative;overflow:hidden}.birthday-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#fff4 0%,transparent 70%)}.party-doodles{position:absolute;right:-5%;top:8%;font-size:45px;color:#ff4b71;letter-spacing:.3em;rotate:14deg}.birthday-copy{z-index:1;max-width:360px}.birthday-copy>span{display:inline-block;padding:8px 11px;border-radius:999px;background:#302252;color:#fff;font-size:10px;letter-spacing:.14em}.birthday-copy h1{font-size:clamp(60px,11vw,118px);line-height:.74;letter-spacing:-.09em;margin:24px 0}.birthday-copy h1 b{font-size:1.55em;color:#f2506f}.birthday-copy p{font-size:16px;font-weight:700}.birthday-copy button{border:0;border-radius:999px;background:#2d2551;color:#fff;padding:14px 19px;font:700 12px Manrope}.birthday-ticket{display:grid;grid-template-columns:1fr 2fr 1fr;align-items:center;text-align:center;background:#fff7ed;padding:20px;border-top:7px dashed #ff9d80;border-bottom:7px dashed #ff9d80}.birthday-ticket b{font-size:47px;color:#f2506f}.birthday-ticket span,.birthday-ticket p{font-size:10px;letter-spacing:.1em}.birthday-ticket p{line-height:1.7}.birthday-confetti{text-align:center;padding:100px 20px;background:repeating-linear-gradient(135deg,#ffdfc6 0 15px,#fed 15px 30px)}.birthday-confetti h2{font-size:clamp(35px,6vw,62px);letter-spacing:-.07em}.birthday-confetti p{max-width:430px;margin:auto;line-height:1.7}.birthday-badges{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:30px}.birthday-badges span{padding:12px 16px;border-radius:999px;background:#fff;color:#f2506f;font-weight:800;font-size:12px;box-shadow:0 8px 18px #f5816644}.birthday-photo{min-height:410px;display:grid;place-items:center;text-align:center;color:#fff;background:linear-gradient(#30225266,#302252cc),var(--photo) center/cover}.birthday-photo div{padding:30px;background:#2d2551d9;border-radius:25px}.birthday-photo small{letter-spacing:.18em;font-size:10px}.birthday-photo h2{font-size:42px;margin:12px}.birthday-photo button{border:0;border-radius:999px;background:#ffda62;padding:13px 19px;color:#2d2551;font-weight:800}.love-variant{background:#1b090e;color:#3b1723;font-family:Georgia,serif}.love-paper{min-height:680px;padding:70px 15px;display:grid;place-items:center;position:relative;background:linear-gradient(#18070c55,#18070c99),var(--cover) center/cover}.letter{width:min(570px,92%);padding:clamp(35px,7vw,80px);background:#f7ebd4;color:#4e2030;box-shadow:14px 18px #4d0d1b88;rotate:-1deg}.letter small{font:10px Manrope;letter-spacing:.18em;color:#a75f63}.love-date{text-align:right;font:italic 13px Georgia}.letter h1{font:italic 52px Georgia;margin:34px 0 16px}.letter p{font-size:18px;line-height:1.75}.letter .sign{text-align:right;font-style:italic;margin-top:35px}.love-music{position:absolute;top:20px;right:25px;z-index:2;border:1px solid #f4d6c6;background:#480f1d;color:#fff;border-radius:50%;width:45px;height:45px}.wax{position:absolute;bottom:35px;right:24%;display:grid;place-items:center;width:54px;height:54px;border-radius:50%;background:#7b1129;color:#f8ced4;box-shadow:0 4px #480918;font-size:23px}.love-quote{padding:100px 20px;text-align:center;background:#fff0e1}.love-quote span{font-size:70px;color:#aa2848}.love-quote p{font:italic clamp(25px,4vw,46px) Georgia;line-height:1.35;margin:0}.love-moments{padding:90px 8vw;background:#2b0a14;color:#f6d8d4}.love-moments small{font:10px Manrope;letter-spacing:.2em}.love-moments>div{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:30px;background:#f4c8c422}.love-moments article{padding:35px 20px;font:42px Georgia;background:#2b0a14}.love-moments em{display:block;margin-top:25px;font:italic 18px Georgia;color:#e6aab3}.love-last{text-align:center;padding:110px 20px;background:#420d1d;color:#fff}.love-last h2{font:italic clamp(42px,7vw,75px) Georgia;font-weight:400}.tribute-variant{background:#f7f1e8;color:#504638;font-family:Manrope}.tribute-hero{min-height:570px;display:flex;align-items:center;padding:7vw;background:linear-gradient(90deg,#f6efe6ef 10%,#f6efe644 70%),var(--cover) center/cover}.tribute-card{max-width:430px;padding:34px;background:#fbf8f0dd;border:1px solid #c9bba7;box-shadow:0 18px 45px #5b463633}.tribute-card small,.album-note small{font-size:10px;letter-spacing:.18em;color:#90785f}.tribute-card h1{font:italic clamp(38px,6vw,62px) Georgia;line-height:1.05;margin:18px 0}.tribute-card p{line-height:1.8;font-size:14px}.tribute-card button{border:0;background:#8e6c54;color:#fff;padding:12px 15px;font:600 12px Manrope}.tribute-ribbon{display:flex;justify-content:center;gap:25px;align-items:center;padding:24px;background:#b98e83;color:#fff}.tribute-ribbon p{font:italic 17px Georgia}.tribute-album{display:grid;grid-template-columns:1fr 1.2fr;gap:45px;align-items:center;padding:100px 8vw}.album-note h2{font:italic clamp(35px,5vw,58px) Georgia;line-height:1.05}.album-note p{line-height:1.8;color:#776b5f}.polaroids{height:330px;position:relative}.polaroids i{position:absolute;width:55%;height:230px;padding:10px;background:#fff;box-shadow:0 14px 30px #604d3d33;background:var(--photo) center/cover;border:9px solid #fff}.polaroids i:nth-child(1){left:0;rotate:-8deg}.polaroids i:nth-child(2){right:0;top:25px;rotate:8deg}.polaroids i:nth-child(3){left:23%;top:85px;rotate:-1deg}.tribute-final{text-align:center;padding:110px 20px;background:#6e8771;color:#fff}.tribute-final>span{font-size:36px}.tribute-final h2{font:italic clamp(40px,6vw,70px) Georgia;font-weight:400;margin:12px}.tribute-final p{font-size:14px}.demo-details{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#fff2}.detail-card{padding:35px 28px;background:#17131a;color:#fff}.detail-card span{font:10px DM Mono;opacity:.55}.detail-card b{display:block;margin:18px 0 8px;font:italic 21px Georgia}.detail-card p{margin:0;color:#aaa0a7;font:12px/1.6 Manrope}.birthday-variant+.demo-details .detail-card{background:#2d2551}.love-variant+.demo-details .detail-card{background:#2b0a14}.tribute-variant+.demo-details .detail-card{background:#6e8771}.demo-photo-story{display:grid;grid-template-columns:1fr .75fr 1fr;align-items:center;min-height:430px;padding:55px;background:#efe7da;color:#3b3028}.story-photo{height:320px;background:var(--photo) center/cover;box-shadow:0 18px 50px #3a261f33}.photo-one{rotate:-3deg}.photo-two{rotate:3deg}.story-copy{padding:30px;text-align:center}.story-copy small,.wish-heading small,.demo-build-cta small{font:10px Manrope;letter-spacing:.2em;opacity:.65}.story-copy h2{font:italic clamp(29px,4vw,48px) Georgia;line-height:1.08}.story-copy p{font:13px/1.8 Manrope;color:#6f6259}.demo-wishes{padding:90px clamp(20px,7vw,90px);background:#faf7f0;color:#3c312d}.wish-heading{text-align:center;max-width:560px;margin:0 auto 38px}.wish-heading h2{font:italic clamp(35px,5vw,58px) Georgia;margin:12px}.wish-heading p{font:13px Manrope;color:#82746e}.wish-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:35px;max-width:900px;margin:auto}.demo-wish-form{display:grid;gap:14px;padding:26px;border:1px solid #d7c8ba;background:#fff}.demo-wish-form label{display:grid;gap:7px;font:10px Manrope;letter-spacing:.08em}.demo-wish-form input,.demo-wish-form textarea{width:100%;border:1px solid #d9cec3;background:#faf8f3;color:#332b28;padding:13px;font:13px Manrope;outline:0}.demo-wish-form textarea{min-height:120px;resize:vertical}.demo-wish-form input:focus,.demo-wish-form textarea:focus{border-color:#9b755f}.demo-wish-form button{border:0;background:#332923;color:#fff;padding:14px;font:700 12px Manrope}.wish-status{min-height:17px;color:#688367;font:11px Manrope}.demo-wish-list{display:grid;gap:10px;align-content:start;max-height:380px;overflow:auto}.demo-wish-list article{display:grid;grid-template-columns:38px 1fr;gap:12px;padding:17px;background:#fff;border:1px solid #e3d8ce}.demo-wish-list article>span{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#92705e;color:#fff;font:700 14px Manrope}.demo-wish-list b{font:13px Manrope}.demo-wish-list p{margin:5px 0 0;color:#786b65;font:12px/1.6 Manrope}.demo-build-cta{text-align:center;padding:100px 20px;background:#151116;color:#fff}.demo-build-cta>span{display:block;font-size:32px;color:#d2ad7b;margin-bottom:14px}.demo-build-cta h2{font:italic clamp(40px,6vw,70px) Georgia;font-weight:400;line-height:1.05}.demo-build-cta button{border:1px solid #d9bd94;background:transparent;color:#fff;padding:15px 22px;font:700 12px Manrope}.birthday-variant~.demo-photo-story{background:#ffdcc7;color:#2d2551}.birthday-variant~.demo-wishes{background:#fff0e3}.birthday-variant~.demo-wish-form button,.birthday-variant~.demo-build-cta{background:#2d2551}.birthday-variant~.demo-wish-list article>span{background:#f2506f}.love-variant~.demo-photo-story{background:#f4e1d0;color:#4e2030}.love-variant~.demo-wishes{background:#fff0e1}.love-variant~.demo-wish-form button,.love-variant~.demo-build-cta{background:#420d1d}.love-variant~.demo-wish-list article>span{background:#8c1731}.tribute-variant~.demo-photo-story{background:#ece5d7;color:#504638}.tribute-variant~.demo-wishes{background:#f7f1e8}.tribute-variant~.demo-wish-form button,.tribute-variant~.demo-build-cta{background:#6e8771}.tribute-variant~.demo-wish-list article>span{background:#8d7563}@media(max-width:650px){.wedding-gallery,.tribute-album,.demo-photo-story,.wish-layout,.demo-details{grid-template-columns:1fr}.wedding-gallery blockquote{padding:45px 20px}.wedding-gallery figure{height:220px}.love-moments>div{grid-template-columns:1fr}.tribute-album{padding:70px 20px}.birthday-cover{min-height:520px}.letter{padding:35px 24px}.letter p{font-size:16px}.wedding-cover{min-height:510px}.demo-photo-story{padding:45px 20px}.story-photo{height:230px}.demo-wishes{padding:65px 16px}.demo-build-cta{padding:75px 16px}}.wedding-glow{position:absolute!important;width:500px;height:500px;border-radius:50%;background:#d6ad6530;filter:blur(50px);animation:weddingGlow 6s ease-in-out infinite}.wedding-petals{position:absolute!important;inset:0;overflow:hidden;z-index:2}.wedding-petals i{position:absolute;top:-40px;left:calc((var(--i) * 5.7%));color:#f4e8d2cc;font-style:normal;font-size:calc(10px + (var(--i) % 4) * 4px);animation:weddingPetal calc(8s + (var(--i) % 6) * 1s) linear infinite;animation-delay:calc(var(--i) * -.7s)}.wedding-countdown{text-align:center;padding:90px 20px;background:radial-gradient(circle at 50% 0,#9a713722,transparent 55%),#141111;color:#f7ead4}.wedding-countdown small,.wedding-story-timeline>small,.wedding-full-gallery>small,.wedding-dress-map small{font:10px Manrope;letter-spacing:.24em;color:#c9a66c}.wedding-countdown h2,.wedding-story-timeline h2,.wedding-full-gallery h2{font:italic clamp(36px,5vw,58px) Georgia;font-weight:400}.wedding-countdown>div{display:flex;justify-content:center;gap:10px;margin-top:35px}.wedding-countdown b{display:grid;min-width:100px;padding:20px 10px;border:1px solid #b5915c55;background:#fff05}.wedding-countdown strong{font:42px Georgia;color:#e2c18b}.wedding-countdown span{font:10px Manrope;color:#aa9b8a}.wedding-story-timeline{padding:100px clamp(20px,8vw,110px);background:#eee5d6;color:#302821;text-align:center}.wedding-story-timeline>div{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:45px;text-align:left}.wedding-story-timeline article{position:relative;padding:30px;border-top:1px solid #a78961}.wedding-story-timeline article:before{content:"";position:absolute;top:-6px;left:30px;width:11px;height:11px;border-radius:50%;background:#9b7543;box-shadow:0 0 0 6px #eee5d6}.wedding-story-timeline span{font:11px Manrope;letter-spacing:.14em;color:#9b7543}.wedding-story-timeline b{display:block;margin:18px 0 9px;font:italic 22px Georgia}.wedding-story-timeline p{font:12px/1.7 Manrope;color:#71665d}.wedding-full-gallery{text-align:center;padding:100px clamp(16px,6vw,75px);background:#1b1716;color:#fff}.wedding-masonry{display:grid;grid-template-columns:1.2fr .8fr 1fr;grid-template-rows:210px 210px;gap:12px;max-width:900px;margin:45px auto 0}.wedding-masonry button{border:0;min-height:0;background:linear-gradient(#0000,#0003),var(--photo) center/cover;transition:transform .35s,filter .35s;filter:saturate(.9)}.wedding-masonry button:hover{transform:scale(.98);filter:saturate(1.15) brightness(1.08)}.wedding-masonry button:nth-child(1),.wedding-masonry button:nth-child(4){grid-row:span 2}.wedding-masonry button:nth-child(4){grid-column:3;grid-row:1/span 2}.wedding-dress-map{display:grid;grid-template-columns:1fr 1fr;background:#f5efe3;color:#302821}.dress-code,.venue-card{padding:90px clamp(25px,7vw,90px)}.dress-code{border-right:1px solid #c8b18d}.wedding-dress-map h2{font:italic clamp(32px,5vw,50px) Georgia;font-weight:400}.wedding-dress-map p{font:13px/1.7 Manrope;color:#75695f}.dress-code>div{display:flex;gap:9px;margin-top:25px}.dress-code i{width:38px;height:38px;border-radius:50%;background:#171514}.dress-code i:nth-child(2){background:#735d49}.dress-code i:nth-child(3){background:#c5aa7d}.dress-code i:nth-child(4){background:#eee2cd;border:1px solid #c6b494}.venue-card button{border:1px solid #8c704d;background:transparent;padding:12px 15px;color:#594630}.wedding-lightbox{width:min(900px,94vw);height:min(820px,90vh);padding:0;border:0;background:#090808}.wedding-lightbox::backdrop{background:#000d;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.wedding-lightbox img{width:100%;height:100%;object-fit:contain}.lightbox-close{position:absolute;right:12px;top:12px;z-index:2;width:40px;height:40px;border:1px solid #fff5;border-radius:50%;background:#0008;color:#fff;font-size:24px}@keyframes weddingPetal{0%{transform:translate3d(0,-50px,0) rotate(0);opacity:0}10%{opacity:.9}to{transform:translate3d(80px,700px,0) rotate(540deg);opacity:0}}@keyframes weddingGlow{50%{transform:scale(1.2);opacity:.55}}@media(max-width:650px){.wedding-dress-map{grid-template-columns:1fr}.wedding-story-timeline>div{grid-template-columns:1fr}.wedding-story-timeline article{border-top:0;border-left:1px solid #a78961}.wedding-story-timeline article:before{left:-6px;top:36px}.wedding-countdown>div{display:grid;grid-template-columns:repeat(2,1fr);max-width:330px;margin:30px auto 0}.wedding-countdown b{min-width:0}.wedding-masonry{grid-template-columns:1fr 1fr;grid-template-rows:170px 170px 170px}.wedding-masonry button:nth-child(n){grid-column:auto;grid-row:auto}.dress-code{border-right:0;border-bottom:1px solid #c8b18d}}@media(prefers-reduced-motion:reduce){.wedding-petals i,.wedding-glow{animation:none!important}}.wedding-slide-deck{scroll-snap-type:y mandatory;scroll-behavior:smooth;overscroll-behavior-y:contain;overflow-anchor:none;background:#171312}.wedding-slide-deck>.wedding-variant{display:contents}.wedding-slide-deck.is-resetting{scroll-snap-type:none!important;scroll-behavior:auto!important}.wedding-slide-deck .wedding-top{position:sticky;top:0;z-index:20;box-shadow:0 8px 30px #0003}.wedding-slide{position:relative;box-sizing:border-box;min-height:100svh;scroll-snap-align:start;scroll-snap-stop:always;opacity:.18;transform:translateY(34px) scale(.985);filter:blur(3px);transition:opacity .8s ease,transform .9s cubic-bezier(.2,.8,.2,1),filter .8s ease}.wedding-slide.is-visible{opacity:1;transform:none;filter:none}.wedding-slide.is-visible>*{animation:weddingContentIn .9s .12s both cubic-bezier(.2,.8,.2,1)}.wedding-slide small,.wedding-slide h1,.wedding-slide h2,.wedding-slide>p,.wedding-slide blockquote,.wedding-slide .wedding-date,.wedding-slide .wish-heading,.wedding-slide .story-copy>*{opacity:0;transform:translateY(26px)}.wedding-slide.is-visible small,.wedding-slide.is-visible h1,.wedding-slide.is-visible h2,.wedding-slide.is-visible>p,.wedding-slide.is-visible blockquote,.wedding-slide.is-visible .wedding-date,.wedding-slide.is-visible .wish-heading,.wedding-slide.is-visible .story-copy>*{animation:weddingReveal .85s both cubic-bezier(.16,1,.3,1)}.wedding-slide.is-visible h1,.wedding-slide.is-visible h2,.wedding-slide.is-visible blockquote,.wedding-slide.is-visible .story-copy h2{animation-delay:.12s}.wedding-slide.is-visible>p,.wedding-slide.is-visible .wedding-date,.wedding-slide.is-visible .story-copy p{animation-delay:.24s}.wedding-slide.is-visible .wedding-date{animation-name:weddingRevealScale}.wedding-countdown b,.wedding-story-timeline article,.wedding-masonry button,.demo-details .detail-card,.demo-wish-form,.demo-wish-list article,.wedding-dress-map>div{opacity:0;transform:translateY(35px) scale(.96)}.wedding-slide.is-visible .wedding-countdown b,.wedding-slide.is-visible.wedding-countdown b,.wedding-slide.is-visible .wedding-story-timeline article,.wedding-slide.is-visible.wedding-story-timeline article,.wedding-slide.is-visible .wedding-masonry button,.wedding-slide.is-visible.wedding-full-gallery .wedding-masonry button,.wedding-slide.is-visible.detail-card,.wedding-slide.is-visible .detail-card,.wedding-slide.is-visible .demo-wish-form,.wedding-slide.is-visible .demo-wish-list article,.wedding-slide.is-visible.wedding-dress-map>div{animation:weddingCardIn .8s both cubic-bezier(.16,1,.3,1)}.wedding-slide.is-visible b:nth-child(1),.wedding-slide.is-visible article:nth-child(1),.wedding-slide.is-visible button:nth-child(1),.wedding-slide.is-visible .detail-card:nth-child(1){animation-delay:.08s}.wedding-slide.is-visible b:nth-child(2),.wedding-slide.is-visible article:nth-child(2),.wedding-slide.is-visible button:nth-child(2),.wedding-slide.is-visible .detail-card:nth-child(2){animation-delay:.18s}.wedding-slide.is-visible b:nth-child(3),.wedding-slide.is-visible article:nth-child(3),.wedding-slide.is-visible button:nth-child(3),.wedding-slide.is-visible .detail-card:nth-child(3){animation-delay:.28s}.wedding-slide.is-visible b:nth-child(4),.wedding-slide.is-visible button:nth-child(4){animation-delay:.38s}.wedding-slide.is-visible button:nth-child(5),.wedding-slide.is-visible .demo-wish-list article:nth-child(2){animation-delay:.48s}.wedding-slide.is-visible button:nth-child(6),.wedding-slide.is-visible .demo-wish-list article:nth-child(3){animation-delay:.58s}.wedding-slide.is-visible .demo-wish-form{animation-delay:.16s}.wedding-slide.is-visible .demo-wish-list article{animation-delay:.28s}.wedding-cover{min-height:calc(100svh - 68px)!important;background-attachment:fixed!important}.wedding-invite,.wedding-countdown,.wedding-story-timeline,.wedding-full-gallery,.wedding-rsvp,.demo-wishes,.demo-build-cta{display:grid;align-content:center}.wedding-gallery{min-height:100svh;grid-template-columns:1.15fr .7fr 1.15fr!important;padding:clamp(28px,5vw,72px)!important;gap:clamp(18px,3vw,48px)}.wedding-gallery figure{height:min(68vh,680px)!important;box-shadow:0 30px 80px #0008;transition:transform 1.2s cubic-bezier(.2,.8,.2,1)}.wedding-gallery.is-visible figure:first-child{transform:rotate(-2deg) translateY(-2vh)}.wedding-gallery.is-visible figure:last-child{transform:rotate(2deg) translateY(2vh)}.wedding-countdown>div,.wedding-story-timeline>div,.wedding-masonry,.wish-layout{width:min(1100px,100%)}.wedding-countdown>div,.wedding-story-timeline>div,.wish-layout{margin-left:auto;margin-right:auto}.wedding-masonry{grid-template-rows:min(31vh,300px) min(31vh,300px)}.wedding-dress-map{min-height:100svh;align-items:stretch}.wedding-dress-map>div{display:grid;align-content:center}.demo-details.wedding-slide{grid-template-columns:repeat(3,1fr);align-items:stretch;background:#17131a}.demo-details.wedding-slide .detail-card{display:grid;align-content:center;padding:clamp(35px,7vw,100px)}.wedding-program.wedding-slide{display:grid;grid-template-columns:1fr;align-content:center;padding:clamp(45px,6vw,85px);background:radial-gradient(circle at 50% 15%,#8c693525,transparent 42%),#151116}.program-heading{text-align:center;color:#fff;margin:0 auto clamp(35px,6vh,70px)}.program-heading small{font:10px Manrope;letter-spacing:.26em;color:#c8a66f}.program-heading h2{margin:12px 0;font:italic clamp(38px,5vw,62px) Georgia}.program-heading p{font:13px/1.7 Manrope;color:#aaa0a7}.program-grid{display:grid;grid-template-columns:repeat(4,1fr);max-width:1200px;margin:auto;border-top:1px solid #a8865355}.program-grid .detail-card{position:relative;border-right:1px solid #ffffff12;background:transparent!important;padding:42px clamp(18px,3vw,42px)!important}.program-grid .detail-card:before{content:"";position:absolute;top:-6px;left:clamp(18px,3vw,42px);width:11px;height:11px;border-radius:50%;background:#d2ad76;box-shadow:0 0 0 6px #d2ad7620}.program-grid .detail-card:last-child{border-right:0}.program-grid .detail-card span{color:#caa66e;opacity:1}.program-grid .detail-card p{color:#aaa0a7}.demo-photo-story.wedding-slide{min-height:100svh;grid-template-columns:1fr .75fr 1fr;padding:clamp(35px,6vw,90px);gap:clamp(18px,3vw,45px)}.demo-photo-story.wedding-slide .story-photo{height:min(70vh,720px);background-size:cover}.demo-wishes.wedding-slide{min-height:100svh}@keyframes weddingContentIn{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}@keyframes weddingReveal{0%{opacity:0;transform:translateY(30px);filter:blur(7px)}to{opacity:1;transform:none;filter:none}}@keyframes weddingRevealScale{0%{opacity:0;transform:translateY(25px) scale(.9)}to{opacity:1;transform:none}}@keyframes weddingCardIn{0%{opacity:0;transform:translateY(42px) scale(.94);filter:blur(5px)}to{opacity:1;transform:none;filter:none}}@media(max-width:650px){.wedding-slide{min-height:100svh;will-change:opacity,transform}.wedding-slide,.wedding-slide *{-webkit-backface-visibility:hidden;backface-visibility:hidden}.wedding-cover{min-height:calc(100svh - 64px)!important;background-attachment:scroll!important}.wedding-gallery{grid-template-columns:1fr 1fr!important;grid-template-rows:1fr auto;padding:22px!important;gap:12px}.wedding-gallery figure{height:58vh!important}.wedding-gallery blockquote{grid-column:1/-1;grid-row:2;padding:18px 8px!important;font-size:20px}.wedding-gallery figure:last-child{grid-column:2;grid-row:1}.wedding-masonry{grid-template-rows:repeat(3,min(22vh,190px))}.demo-details.wedding-slide{grid-template-columns:1fr}.demo-details.wedding-slide .detail-card{padding:30px 26px}.wedding-program.wedding-slide{padding:48px 22px}.program-heading{margin-bottom:28px}.program-grid{grid-template-columns:1fr;border-top:0;border-left:1px solid #a8865355}.program-grid .detail-card{padding:18px 18px 18px 30px!important;border-right:0;border-bottom:1px solid #ffffff12}.program-grid .detail-card:before{left:-6px;top:27px}.program-grid .detail-card b{margin:8px 0 5px}.demo-photo-story.wedding-slide{grid-template-columns:1fr 1fr;padding:22px;gap:12px}.demo-photo-story.wedding-slide .story-photo{height:48vh}.demo-photo-story.wedding-slide .story-copy{grid-column:1/-1;grid-row:2;padding:8px 4px}.wedding-story-timeline{padding-top:70px;padding-bottom:70px}.wedding-dress-map>div{padding:55px 25px}}@media(prefers-reduced-motion:reduce){.wedding-slide{transition-duration:.35s!important}.wedding-slide.is-visible *{animation-duration:.4s!important;animation-delay:0s!important}}
