@font-face{font-family:"Instrument Serif";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/instrument-serif-latin-400-normal-DnYpCC2O.woff2) format("woff2"),url(/assets/instrument-serif-latin-400-normal-BVbkICAY.woff) format("woff")}@font-face{font-family:"Instrument Serif";font-style:italic;font-display:swap;font-weight:400;src:url(/assets/instrument-serif-latin-400-italic-DKMiL14s.woff2) format("woff2"),url(/assets/instrument-serif-latin-400-italic-u__WvvIK.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2) format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2) format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2) format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff) format("woff")}:root{--ground: #0d1235;--ground-top: #16206a;--ivory: #f4eedd;--text-2: #c3bfdd;--text-3: #9c98bf;--chip-text: #e4e0f5;--placeholder: #8f8bb3;--silver: #d8dbe5;--gold: #e9b949;--gold-ink: #1a1330;--fill: rgba(13, 18, 53, .85);--line: rgba(255, 255, 255, .16);--line-input: rgba(255, 255, 255, .2);--line-ivory: rgba(244, 238, 221, .3);--danger: #ff9c94;--knockout: 0 0 1px var(--ground), 0 0 1px var(--ground), 0 0 1px var(--ground), 0 0 1px var(--ground), 0 0 2px var(--ground), 0 0 2px var(--ground), 0 0 2px var(--ground), 0 0 3px var(--ground), 0 0 3px var(--ground), 0 0 6px var(--ground), 0 0 12px rgba(13, 18, 53, .8);--serif: "Instrument Serif", Georgia, "Times New Roman", serif;--sans: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--gutter: 20px}*,*:before,*:after{box-sizing:border-box}html{background-color:var(--ground);overscroll-behavior-y:none;-webkit-text-size-adjust:100%}body{margin:0;min-height:100vh;min-height:100dvh;background-color:var(--ground);color:var(--ivory);font-family:var(--sans);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}::selection{background:#e9b94959;color:var(--ivory)}:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.brand-name,.maker-title,.maker-sub,.field-label{text-shadow:var(--knockout)}.for-narrow{display:none}@media(max-width:719px){.for-wide{display:none}.for-narrow{display:inline}}.vault{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0}.vault-lilies{opacity:.26}.vault-lilies.is-narrow{display:none}@media(max-width:719px){.vault-lilies.is-wide{display:none}.vault-lilies.is-narrow{display:inline}}.app-shell{position:relative;z-index:1;display:flex;flex-direction:column;min-height:100vh;min-height:100dvh}.site-header{width:100%;max-width:1200px;margin:0 auto;padding:16px var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{display:inline-flex;align-items:center;gap:10px;min-height:44px;color:var(--ivory);text-decoration:none}.brand-mark{flex:none;fill:var(--silver)}.brand-name{font-family:var(--serif);font-size:25px;line-height:1;letter-spacing:-.01em}@media(min-width:720px){.site-header{padding:20px 32px}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 18px;border-radius:10px;font:500 14px/1.2 var(--sans);white-space:nowrap;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,opacity .15s ease,transform .1s ease;-webkit-tap-highlight-color:transparent}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{cursor:not-allowed}.btn-primary{height:52px;padding:0 26px;border:0;border-radius:12px;background:var(--gold);color:var(--gold-ink);font-size:15px;font-weight:600;box-shadow:0 10px 30px -10px #e9b949b3}.btn-primary:hover:not(:disabled){background:#f0c862}.btn-primary:disabled{background:#b8954a;box-shadow:none}.btn-secondary{border:1px solid var(--line-ivory);background:var(--fill);color:var(--ivory)}.btn-secondary:hover:not(:disabled){border-color:#f4eedd8c}.btn-secondary:disabled{border-color:#f4eedd24;background:var(--ground);color:var(--text-3)}.maker{flex:1;display:flex;flex-direction:column}.maker-main{width:100%;max-width:1200px;margin:0 auto;padding:8px var(--gutter) 0;display:flex;flex-direction:column;gap:22px}.maker-intro{display:flex;flex-direction:column;gap:10px}.maker-title{margin:0;font-family:var(--serif);font-weight:400;font-size:42px;line-height:1.02;letter-spacing:-.02em;color:var(--ivory);text-wrap:balance}.maker-title em{font-style:italic;color:var(--gold)}.maker-sub{margin:0;max-width:520px;font-size:15px;color:var(--text-2)}.maker-occasions{display:flex;flex-direction:column;gap:10px;min-width:0}.field-label{font-size:13px;font-weight:500;line-height:1.35;color:var(--text-2)}.field-optional{font-weight:400;color:var(--text-2)}.chips{display:flex;gap:8px;margin:0 calc(-1 * var(--gutter));padding:0 var(--gutter) 4px;overflow-x:auto;scrollbar-width:none;overscroll-behavior-x:contain}.chips::-webkit-scrollbar{display:none}.chip{flex:none;display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 14px;border:1px solid var(--line);border-radius:999px;background:var(--fill);color:var(--chip-text);font:500 14px/1 var(--sans);white-space:nowrap;cursor:pointer;transition:border-color .15s ease,background-color .15s ease,box-shadow .2s ease;-webkit-tap-highlight-color:transparent}.chip:hover{border-color:#ffffff52}.chip.is-selected{border-color:var(--gold);background:linear-gradient(#e9b94929,#e9b94929),var(--fill);color:var(--ivory);box-shadow:0 0 24px -6px #e9b94999}.chip-dot{flex:none;width:8px;height:8px;border-radius:999px}.maker-preview{display:flex;flex-direction:column;align-items:center;gap:18px;min-width:0}.preview-stage{width:300px;max-width:100%;transition:opacity .25s ease}.preview-stage.is-loading{opacity:.55}.card-stage{position:relative;width:100%;aspect-ratio:4 / 5;margin:0;box-shadow:0 0 0 1px #d8dbe559,0 0 80px -20px #d8dbe559,0 40px 80px -20px #000000b3}.card-scaler{position:absolute;top:0;left:0;width:480px;height:600px;transform-origin:0 0}.preview-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%}.maker-fields{display:flex;flex-direction:column;gap:14px;min-width:0}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field input{width:100%;height:48px;padding:0 14px;border:1px solid var(--line-input);border-radius:10px;background:var(--fill);color:var(--ivory);font:400 16px var(--sans);text-overflow:ellipsis;transition:border-color .15s ease,box-shadow .15s ease}.field input::placeholder{color:var(--placeholder);opacity:1}.field input:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px #e9b94933}.form-error{margin:0;padding:10px 14px;border:1px solid rgba(255,156,148,.4);border-radius:10px;background:var(--fill);color:var(--danger);font-size:14px}.maker-buttons{position:sticky;bottom:0;z-index:5;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:8px;margin:0 calc(-1 * var(--gutter));padding:14px var(--gutter) calc(14px + env(safe-area-inset-bottom));border-top:1px solid rgba(216,219,229,.2);background:var(--ground)}.maker-buttons .btn{width:100%;height:52px;padding:0 12px;border-radius:12px;font-size:15px}.maker-buttons .btn-another{order:-1}.site-footer{margin-top:40px;border-top:1px solid rgba(216,219,229,.2);background:#0d1235cc}.footer-inner{max-width:1200px;margin:0 auto;padding:36px var(--gutter) 32px;display:flex;flex-direction:column;gap:28px}.footer-intro h2{margin:0 0 8px;font-family:var(--serif);font-weight:400;font-size:32px;line-height:1.1;letter-spacing:-.01em;color:var(--ivory)}.footer-intro p{margin:0;max-width:560px;font-size:15px;color:var(--text-2)}.footer-sources{display:grid;grid-template-columns:minmax(0,1fr);gap:22px}.footer-sources h3{margin:0 0 4px;font-family:var(--serif);font-weight:400;font-size:26px;line-height:1.15;color:var(--ivory)}.footer-sources p{margin:0;font-size:14px;color:var(--text-2)}.footer-mark{margin:0;padding-top:20px;border-top:1px solid rgba(216,219,229,.12);font-size:13px;color:var(--text-3)}@media(min-width:720px){:root{--gutter: 32px}.maker-main{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);grid-template-rows:1fr auto auto auto auto 1fr;grid-template-areas:".          preview" "intro      preview" "occasions  preview" "fields     preview" "buttons    preview" ".          preview";column-gap:clamp(32px,4.5vw,56px);row-gap:28px;padding-top:16px}.maker-intro{grid-area:intro;gap:16px}.maker-occasions{grid-area:occasions}.maker-preview{grid-area:preview;align-self:center}.maker-fields{grid-area:fields}.maker-buttons{grid-area:buttons}.maker-title{font-size:clamp(48px,5.3vw,68px);line-height:1}.maker-sub{font-size:18px}.chips{flex-wrap:wrap;margin:0;padding:0;overflow:visible}.chip{padding:0 16px}.preview-stage{width:380px}.preview-actions{display:flex;justify-content:center;gap:10px;width:auto}.maker-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.field-wide{grid-column:1 / -1}.maker-buttons{position:static;display:flex;flex-wrap:wrap;gap:12px;margin:0;padding:0;border:0;background:none}.maker-buttons .btn{width:auto}.maker-buttons .btn-find{padding:0 26px}.maker-buttons .btn-another{order:0;padding:0 20px;font-weight:500}.site-footer{margin-top:72px}.footer-inner{gap:32px;padding:48px var(--gutter) 36px}.footer-intro h2{font-size:38px}.footer-intro p{font-size:16px}.footer-sources{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}}.toast-stack{position:fixed;left:50%;bottom:calc(100px + env(safe-area-inset-bottom));z-index:50;display:flex;flex-direction:column;gap:8px;width:min(420px,calc(100vw - 32px));transform:translate(-50%);pointer-events:none}.toast{padding:12px 16px;border:1px solid var(--line);border-radius:10px;background:#1a2150;color:var(--ivory);font-size:14px;box-shadow:0 16px 40px -12px #000000b3;animation:toast-in .25s ease both}.toast-success{border-color:#8cc09a99}.toast-error{border-color:#ff9c9499}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media(min-width:720px){.toast-stack{bottom:32px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.bcard{position:relative;width:480px;height:600px;overflow:hidden;color:var(--c-ink);background:radial-gradient(140% 90% at 50% 15%,var(--c-bg) 0%,var(--c-bg) 42%,var(--c-bg2) 100%);font-family:var(--serif);font-weight:400;-webkit-font-smoothing:antialiased}.bcard-grain{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background-image:var(--card-grain, none);mix-blend-mode:multiply;opacity:.6}.bcard.is-dark .bcard-grain{mix-blend-mode:screen;opacity:.35}.bcard-frame{position:absolute;top:18px;right:18px;bottom:18px;left:18px;border:1px solid color-mix(in srgb,var(--c-accent) 60%,transparent);pointer-events:none}.bcard-corner{position:absolute;width:7px;height:7px;background:var(--c-accent);transform:rotate(45deg)}.bcard-corner.is-tl{top:-4px;left:-4px}.bcard-corner.is-tr{top:-4px;right:-4px}.bcard-corner.is-bl{bottom:-4px;left:-4px}.bcard-corner.is-br{bottom:-4px;right:-4px}.bcard-body{position:absolute;top:18px;right:18px;bottom:18px;left:18px;display:flex;flex-direction:column;align-items:center;padding:30px 40px 46px;text-align:center}.bcard-ornament{flex:none;color:var(--c-accent)}.bcard-for{flex:none;display:flex;align-items:center;justify-content:center;gap:12px;max-width:100%;margin:10px 0 0;font-size:21px;font-variant-caps:small-caps;letter-spacing:.1em;line-height:1.2;color:var(--c-accent-text)}.bcard-for-rule{flex:0 0 24px;height:1px;background:var(--c-accent);opacity:.6}.bcard-for-name{min-width:0;overflow-wrap:anywhere}.bcard-textbox{flex:1 1 auto;min-height:0;width:100%;display:flex;align-items:center;justify-content:center;margin:14px 0;overflow:visible}.bcard-text{max-width:100%;margin:0;line-height:1.3;white-space:pre-line;visibility:hidden}.bcard.is-verse .bcard-text{line-height:1.26;white-space:pre}.bcard.is-fitted .bcard-text{visibility:visible}.bcard-lead{font-variant-caps:small-caps;letter-spacing:.05em}.bcard.is-placeholder .bcard-text{font-size:28px;font-style:italic;color:var(--c-muted-text)}.bcard-divider{flex:none;color:var(--c-accent);opacity:.7}.bcard-source{flex:none;max-width:360px;margin:10px 0 0;font-size:17px;font-variant-caps:small-caps;letter-spacing:.06em;line-height:1.25;color:var(--c-muted-text)}.bcard-from{flex:none;margin:8px 0 0;font-size:21px;font-style:italic;line-height:1.2;color:var(--c-ink);overflow-wrap:anywhere}.bcard.is-dense .bcard-body{padding:22px 30px 42px}.bcard.is-dense .bcard-ornament{width:42px;height:42px}.bcard.is-dense .bcard-for{margin-top:6px;font-size:18px}.bcard.is-dense .bcard-textbox{margin:8px 0}.bcard.is-dense.is-verse .bcard-text{line-height:1.18}.bcard.is-dense .bcard-source{margin-top:6px;font-size:15px}.bcard.is-dense .bcard-from{margin-top:5px;font-size:19px}.bcard-mark{position:absolute;left:0;right:0;bottom:28px;margin:0;text-align:center;font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--c-muted-text)}
