/* Easy Wedding (easywedding.in) — original design & code © 2026 Chandan Kumar Mahato. All rights reserved. Origin fingerprint: EW-ORIGIN-2026-369eafc22a98. Unauthorised copying is prohibited. */
@font-face{font-family:GardenSerif;src:url('assets/GardenSerif.otf');font-display:swap}
:root{--ink:#333c34;--muted:#7c8277;--line:#dddcd2;--wine:#6b303c;--paper:#f8f7f1;--serif:'Cormorant Garamond',GardenSerif,Georgia,serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:13px/1.5 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.5;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #a98949;outline-offset:3px}[hidden]{display:none!important}button{color:inherit}h1,h2,p{margin:0}img{display:block;max-width:100%}.studio-header{height:86px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 4%;background:var(--paper);position:relative;z-index:2}.brand{display:flex;align-items:center;gap:10px;font:600 27px/1 var(--serif);letter-spacing:-.8px}.brand-mark{font:italic 34px var(--serif);color:var(--wine);border:1px solid #a29b8170;width:38px;height:43px;border-radius:50% 50% 3px 3px;text-align:center;line-height:35px}.brand-divider{width:1px;height:23px;background:var(--line);margin:0 9px}.brand small{font:8px/1.6 Arial;letter-spacing:.2em;color:var(--muted)}.header-actions{display:flex;align-items:center;gap:23px}.header-actions>span{font-size:10px;color:var(--muted)}.primary,.secondary{display:inline-flex;justify-content:center;align-items:center;gap:18px;min-height:44px;padding:13px 21px;border:1px solid var(--wine);background:var(--wine);color:#fff8eb;border-radius:3px;font-size:11px;letter-spacing:.03em;transition:background .2s}.primary:hover{background:#4f2330}.secondary{background:transparent;color:var(--ink);border-color:#c7c5b9}.secondary:hover{background:#eae8dc}.studio-layout{display:grid;grid-template-columns:minmax(410px,49%) 1fr;max-width:1600px;margin:auto}.editor{padding:53px clamp(25px,5.4vw,85px) 45px;border-right:1px solid var(--line);min-width:0}.eyebrow{font-size:8px;letter-spacing:.19em;color:var(--muted);line-height:1.6}.editor-intro h1{font:500 62px/.96 var(--serif);letter-spacing:-1.6px;margin:25px 0 24px}.editor-intro h1 em{font-weight:400;color:var(--wine)}.editor-intro>p:last-child{font-size:12px;line-height:1.8;color:#7e8177}.theme-fieldset{border:0;padding:0;margin:40px 0 30px;min-width:0}.theme-fieldset legend{font-size:10px;color:#929183;padding:0;margin-bottom:17px}.theme-fieldset legend span{font:500 21px var(--serif);color:var(--ink);margin-left:15px}.theme-options{display:grid;grid-template-columns:1fr;gap:10px}.theme-card{border:1px solid var(--line);padding:12px;display:flex;align-items:center;gap:15px;border-radius:4px;cursor:pointer;position:relative;background:#fbfaf6;transition:background .2s,border-color .2s}.theme-card:has(input:checked){border-color:#987161;background:#f4ece6}.theme-card input{position:absolute;opacity:0;width:1px;height:1px}.theme-card:has(input:focus-visible){outline:3px solid #a98949;outline-offset:3px}.theme-card img{width:40px;height:60px;object-fit:cover;box-shadow:0 3px 7px #765a4026}.theme-card strong{display:block;font:500 20px/1.3 var(--serif)}.theme-card small{display:block;font-size:9px;color:#8a8072;margin-top:4px}.theme-card i{font-style:normal;position:absolute;right:17px;color:var(--wine);opacity:0}.theme-card:has(input:checked) i{opacity:1}.editor-section{border-top:1px solid var(--line)}.editor-section summary{list-style:none;display:flex;align-items:center;gap:16px;padding:22px 0;cursor:pointer}.editor-section summary::-webkit-details-marker{display:none}.editor-section .step{font-size:10px;color:#929183}.editor-section summary>span:nth-child(2){font:500 22px var(--serif);flex:1}.editor-section summary small{display:block;font:9px/1.5 Arial;color:#8a8b80;letter-spacing:.02em;margin-top:5px}.editor-section summary b{font-weight:400;font-size:18px;color:#938b78}.editor-section[open] summary b{transform:rotate(45deg)}.section-fields{padding:2px 0 28px}.section-fields>label,.field-row>label{display:block;font-size:10px;font-weight:500;letter-spacing:.015em;margin-bottom:18px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.section-fields input:not([type=checkbox]),.section-fields textarea,.section-fields select{display:block;width:100%;border:1px solid #d6d5ca;background:#fffef9;color:var(--ink);border-radius:3px;padding:12px 11px;margin-top:8px;min-height:43px;font-size:12px;line-height:1.5}.section-fields textarea{resize:vertical}.section-fields label>small{font-size:9px;color:#8c8b7b;font-weight:400;margin-left:4px}.section-fields input+small,.section-fields textarea+small,.section-fields select+small{display:block;margin:7px 0 0!important;line-height:1.65}.helper{font-size:10px;line-height:1.8;color:#858575;margin-bottom:20px}.field-separator{height:1px;background:var(--line);margin:29px 0 25px}.toggle-row{display:flex!important;justify-content:space-between;align-items:center;padding-top:14px;border-top:1px solid var(--line);gap:20px}.toggle-row>span{font-size:11px}.toggle-row small{display:block;font-size:9px;color:#89897b;margin-top:6px;font-weight:400;line-height:1.6}.toggle-row input{accent-color:var(--wine);width:19px;height:19px;flex:none}.event-edit{padding:16px 15px;border:1px solid var(--line);border-radius:4px;background:#fcfbf5;margin-bottom:12px}.event-edit-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.event-controls{display:flex;gap:3px}.event-controls button{background:transparent;border:1px solid #dbd7ca;width:29px;height:30px;border-radius:3px;font-size:12px}.event-edit .field-row{grid-template-columns:90px 1fr;gap:10px}.event-edit label{font-size:9px;display:block}.event-edit input,.event-edit textarea{margin-top:5px!important;padding:9px!important}.event-edit .field-row>label{margin-bottom:10px}.editor-bottom{border-top:1px solid var(--line);padding-top:30px;text-align:center}.editor-bottom .primary{width:100%}.text-button{background:none;border:0;text-decoration:underline;text-underline-offset:4px;font-size:10px;padding:16px 8px;min-height:44px}.editor-bottom>p{font-size:9px;line-height:1.7;color:#999589;margin:12px auto 0;max-width:320px}.preview-pane{position:sticky;top:0;height:100vh;background:#eae8df;overflow:hidden;padding:29px 34px 20px;display:flex;flex-direction:column;align-items:center;min-width:0}.preview-toolbar{width:100%;display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:10px}.preview-toolbar>div{display:flex;align-items:center;gap:7px}.preview-toolbar strong{font-size:10px;font-weight:400;color:#676e63}.preview-toolbar small{font-size:7px;letter-spacing:.12em;border-left:1px solid #cccec2;padding-left:10px;margin-left:3px;color:#8a8b7f}.preview-toolbar>a{font-size:9px;border-bottom:1px solid #979b8b;padding-bottom:4px}.live-dot{width:5px;height:5px;background:#7b8d70;border-radius:50%;box-shadow:0 0 0 3px #7b8d7012}.phone-stage{flex:1;min-height:0;display:flex;justify-content:center;align-items:center;width:100%;padding-top:25px}.phone-shell{width:min(390px,100%);height:min(730px,100%);border:7px solid #e1ddd1;border-radius:23px;background:#faf5e9;box-shadow:0 15px 60px #554c321f,0 1px 3px #554c3220;overflow:hidden}.phone-shell iframe{width:100%;height:100%;border:0;display:block;border-radius:15px}.preview-actions{display:flex;justify-content:space-between;align-items:center;width:min(390px,100%);padding-top:13px;gap:10px}.preview-actions button{background:none;border:0;padding:7px 0;font-size:10px;min-height:35px;color:#747466}.preview-actions>span{font-size:9px;color:#95917f}.preview-caption{text-align:center;margin-top:15px}.preview-caption>span{font-size:6px;letter-spacing:.2em;color:#9b9584}.preview-caption>p{font:italic 18px var(--serif);margin-top:7px;color:#7e7c6e}dialog{border:1px solid #c3b498;border-radius:5px;background:var(--paper);color:var(--ink);padding:37px;width:min(490px,calc(100% - 25px));max-height:90svh;overflow:auto;box-shadow:0 20px 80px #27170b55}dialog::backdrop{background:#252f28a1;backdrop-filter:blur(5px)}.dialog-close{position:absolute;top:10px;right:12px;background:none;border:0;width:34px;height:34px;font-size:24px}dialog h2{font:45px/1 var(--serif);margin:19px 0 20px;letter-spacing:-1px}dialog h2 em{color:var(--wine)}dialog>p:not(.eyebrow){font-size:11px;color:#7f8074;line-height:1.8}.share-label{display:block;font-size:10px;margin-top:23px}.share-label textarea{width:100%;display:block;margin-top:8px;background:#fffdf7;border:1px solid var(--line);padding:12px;font-size:10px;resize:none;word-break:break-all}#share-dialog .primary,#share-dialog .secondary{width:100%;margin-top:13px}#share-alerts{font-size:10px;color:#904131;line-height:1.7;margin-top:12px}.sharing-note{border-top:1px solid var(--line);padding-top:18px;margin-top:24px}#copy-status{margin-top:12px;color:var(--wine)}.reset-actions{display:flex;gap:10px;margin-top:24px}#reset-dialog h2{font-size:30px}
@media(min-width:1450px){.theme-options{grid-template-columns:1fr 1fr}.theme-card{gap:10px}.theme-card i{right:7px}.theme-card strong{font-size:18px}.theme-card small{font-size:8px}.theme-card img{width:33px;height:49px}}
@media(max-width:950px){.studio-header{padding:0 23px;height:75px}.brand small,.brand-divider{display:none}.header-actions>span{display:none}.studio-layout{grid-template-columns:minmax(345px,48%) 1fr}.editor{padding:35px 26px}.editor-intro h1{font-size:55px}.preview-pane{padding:24px 17px}.preview-toolbar small{display:none}.phone-shell{border-width:5px}.preview-actions>span{font-size:8px}}
@media(max-width:700px){.studio-header{height:68px;padding:0 17px}.brand{font-size:23px;gap:8px}.brand-mark{width:30px;height:35px;font-size:29px;line-height:29px}.header-actions .primary{padding:11px 12px;font-size:9px;gap:8px}.header-actions .primary span{display:none}.studio-layout{display:flex;flex-direction:column}.preview-pane{position:relative;order:-1;height:auto;padding:20px 23px 19px}.phone-stage{padding-top:20px;flex:none}.phone-shell{width:320px;height:560px;max-width:100%}.preview-caption{display:none}.preview-actions{width:320px}.preview-toolbar{max-width:450px}.preview-toolbar small{display:inline}.preview-actions>span{font-size:8px}.editor{border-right:0;padding:36px 25px;max-width:540px;width:100%;margin:auto}.editor-intro h1{font-size:56px}.editor-intro h1 br{display:none}.editor-intro>p:last-child br{display:none}.theme-fieldset{margin-top:30px}.theme-options{grid-template-columns:1fr 1fr}.theme-card{display:block;padding:11px}.theme-card img{width:35px;height:52px;margin-bottom:9px}.theme-card strong{font-size:18px}.theme-card small{font-size:8px}.theme-card i{top:19px;right:14px}.field-row{gap:12px}.reset-actions{flex-direction:column}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
/* Event collection and direct image uploads */
.studio-header .brand{font-size:28px}.studio-header .brand small{font-size:12px;letter-spacing:0;max-width:185px;white-space:normal;line-height:1.4}.theme-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.theme-card img{height:120px;object-fit:cover}.theme-card strong{font-size:18px}.theme-card small{font-size:13px}.invitation-uploads{display:grid;gap:14px}.photo-upload{padding:16px;border:1px dashed #b89e76;border-radius:6px;background:#fffbf3}.photo-upload img{width:100%;height:185px;object-fit:cover;border-radius:6px}.photo-upload input{max-width:100%;font-size:14px}.photo-upload [role=status]{font:13px/1.5 Arial,sans-serif;color:#786653}.photo-upload .text-button{font-size:14px;text-align:left}.section-fields details>summary{padding:15px 0;font-size:14px;cursor:pointer}.section-fields label{font-size:15px}
@media(max-width:750px){.studio-header .brand{font-size:23px;flex-wrap:wrap;gap:6px}.studio-header .brand small{width:100%;max-width:240px}.studio-header .brand-divider{display:none}.studio-header .header-actions{flex-wrap:wrap;justify-content:flex-end}.theme-card strong{font-size:16px}}

.song-upload{display:grid;gap:10px}.song-upload label{display:grid;gap:12px}.song-upload small{font:12px/1.5 Arial,sans-serif;color:#786653}.song-upload [role=status]{overflow-wrap:anywhere}

/* The ten worlds use the same artwork as their live invitation. */
.theme-help{font:11px/1.7 Arial,sans-serif;color:#7a6b5a;margin-bottom:8px}.compare-designs{display:inline-block;font:11px/1.6 Arial,sans-serif;border-bottom:1px solid #a8855e;margin-bottom:20px;padding:4px 0}
.theme-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.theme-card{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:0;overflow:hidden;border-radius:10px;background:var(--card-paper);border-color:#d9cfbf;min-width:0}
.theme-card:has(input:checked){border-color:var(--card-gold);background:var(--card-paper);box-shadow:0 0 0 2px var(--card-gold)}
.theme-art{display:block;position:relative;width:100%;overflow:hidden;background:var(--card-paper)}
.theme-card .theme-art img{width:100%;height:175px;object-fit:cover;object-position:50% 42%;margin:0;box-shadow:none;transition:transform .65s ease}
.theme-card:hover .theme-art img{transform:scale(1.035)}
.theme-number{position:absolute;top:9px;left:9px;padding:3px 7px;border-radius:4px;background:var(--card-paper);color:var(--card-ink);font:500 10px/1.5 Arial,sans-serif}
.theme-caption{display:block;padding:13px 12px 14px;color:var(--card-ink)}
.theme-card strong{font:600 20px/1.05 var(--serif);color:inherit}
.theme-card small{font:10px/1.5 Arial,sans-serif;margin-top:7px;color:inherit;opacity:.85}
.theme-capacity{display:block;font:9px/1.5 Arial,sans-serif;margin-top:8px;color:inherit;opacity:.7}
.theme-card i{top:9px;right:9px;width:23px;height:23px;border-radius:50%;background:var(--card-paper);color:var(--card-ink);display:grid;place-items:center}
.theme-card:has(input:focus-visible){outline:3px solid #aa7a35;outline-offset:5px}
@media(max-width:950px){.theme-card .theme-art img{height:150px}.theme-card strong{font-size:18px}.theme-caption{padding:12px 10px}}
@media(max-width:700px){.theme-card .theme-art img{height:180px}.theme-card strong{font-size:20px}}
@media(prefers-reduced-motion:reduce){.theme-card .theme-art img{transition:none}.theme-card:hover .theme-art img{transform:none}}

.theme-card-premium{grid-column:1/-1;border-color:#b98a35!important;box-shadow:0 6px 24px #a06c1820}.premium-badge{display:inline-block;background:#6d1025;color:#fff7e8;border:1px solid #e8c876;border-radius:30px;padding:4px 8px;font:600 9px/1.3 'DM Sans',Arial,sans-serif;letter-spacing:.1em;margin-left:6px;vertical-align:middle}.theme-card-premium .theme-art{height:230px}.theme-card-premium .theme-art img{object-position:50% 45%}.theme-card strong{overflow-wrap:break-word}.theme-card input:focus-visible+span{outline:3px solid #8d1730;outline-offset:3px}
.addon-card{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid #e7d9c4}
.addon-card p{margin:3px 0 0;font-size:12.5px;color:#7a6a58}
.addon-buy{display:flex;align-items:center;gap:10px;flex-shrink:0}
.addon-owned{font-weight:600;color:#2e7d32;font-size:13px}
.addon-note{font-size:13px;color:#7a6a58}
.addon-lang{display:block;margin:16px 0;padding:12px;background:#faf3e3;border:1px dashed #c9a465;border-radius:10px;font-size:14px;color:#4a3428}
.addon-lang small{display:block;color:#7a6a58;margin-top:3px}
.addon-lang.is-locked{opacity:.55}
.addon-tool{margin-top:18px;padding:14px;background:#faf3e3;border:1px dashed #c9a465;border-radius:10px;color:#4a3428}
.addon-tool h4{margin:0 0 5px;color:#75152e}
.addon-tool p{font-size:13px;color:#7a6a58;margin:0 0 10px}
.addon-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:8px}
.addon-prefix{font-size:13px;color:#7a6a58}
