.app-shell{background:radial-gradient(circle at 8% 4%,#ffd7cfa6,#0000 30rem),linear-gradient(155deg,#fffaf8 0%,#fff1ed 52%,#fff8f5 100%);min-height:100dvh}.app-shell--centered{padding:calc(32px + var(--safe-top)) calc(20px + var(--safe-right)) calc(32px + var(--safe-bottom)) calc(20px + var(--safe-left));place-items:center;display:grid}.app-shell--workspace{padding:calc(20px + var(--safe-top)) calc(18px + var(--safe-right)) calc(42px + var(--safe-bottom)) calc(18px + var(--safe-left))}.topbar{justify-content:space-between;align-items:center;width:min(100%,760px);margin:0 auto 28px;display:flex}.brand{color:#b44759;letter-spacing:.14em;text-transform:uppercase;margin:0 0 20px;font-size:.875rem;font-weight:800}.brand--compact{margin:0 0 4px;font-size:.72rem}.welcome{color:#6f5d61;margin:0;font-size:.92rem}.profile-dot{color:#8c3544;background:#ffe3e1;border:1px solid #b4475926;border-radius:50%;place-items:center;width:42px;height:42px;font-weight:800;display:grid;box-shadow:0 8px 22px #633b401a}.status-card,.workspace-state,.empty-wedding{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffc;border:1px solid #70474c1f;border-radius:28px;width:min(100%,520px);padding:clamp(28px,8vw,48px);box-shadow:0 24px 70px #633b401f}.workspace-state,.empty-wedding{margin:clamp(60px,12vh,120px) auto 0}.workspace-state p,.empty-wedding>p:not(.eyebrow){color:#705e62;margin:20px 0 28px;line-height:1.65}.empty-wedding__mark{color:#a63f51;background:#ffe3e1;border-radius:18px;place-items:center;width:52px;height:52px;margin-bottom:28px;font-family:Georgia,serif;font-size:2rem;display:grid}.loader{border:3px solid #f3d9d7;border-top-color:#b44759;border-radius:50%;width:42px;height:42px;margin-bottom:24px;animation:.8s linear infinite spin;display:block}.status-icon{color:#8c3544;background:#ffe3e1;border-radius:50%;place-items:center;width:42px;height:42px;margin-bottom:24px;font-size:1.25rem;font-weight:800;display:grid}h1,h2,p{overflow-wrap:anywhere}h1{color:#39282c;letter-spacing:-.045em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.1rem,8vw,3.6rem);font-weight:500;line-height:.98}.status-card h1,.workspace-state h1,.empty-wedding h1{max-width:12ch}.status-copy{color:#705e62;margin:24px 0 0;font-size:1rem;line-height:1.65}.editor{width:min(100%,760px);margin:0 auto}.editor__heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.editor__heading h1{max-width:11ch}.eyebrow{color:#a74455;letter-spacing:.13em;text-transform:uppercase;margin:0 0 10px;font-size:.72rem;font-weight:800}.status-pill{border-radius:999px;flex:none;padding:8px 12px;font-size:.75rem;font-weight:750}.status-pill--draft{color:#785e24;background:#fff0c9}.status-pill--published{color:#276749;background:#dff5e9}.status-pill--completed{color:#5e5960;background:#ece9ed}fieldset{display:contents}.form-card{background:#ffffffe0;border:1px solid #70474c1a;border-radius:24px;margin-bottom:16px;padding:clamp(20px,5vw,32px);box-shadow:0 14px 45px #633b4014}.section-heading,.section-heading__title{align-items:flex-start;gap:14px;display:flex}.section-heading{margin-bottom:24px}.section-heading--action{justify-content:space-between}.section-number{color:#a74455;border:1px solid #edc8c6;border-radius:50%;flex:none;place-items:center;width:32px;height:32px;font-size:.68rem;font-weight:800;display:grid}.section-heading h2{color:#433237;margin:1px 0 4px;font-size:1.12rem;line-height:1.25}.section-heading p{color:#8a767a;margin:0;font-size:.82rem;line-height:1.5}.field{gap:8px;margin-top:18px;display:grid}.field>span{color:#5e4a4f;font-size:.78rem;font-weight:750}.field input,.field textarea{color:#392e31;background:#fffdfc;border:1px solid #e7d7d5;border-radius:14px;outline:none;width:100%;transition:border-color .15s,box-shadow .15s}.field input{min-height:48px;padding:0 14px}.field textarea{resize:vertical;min-height:92px;padding:13px 14px;line-height:1.5}.field input:focus,.field textarea:focus{border-color:#c46877;box-shadow:0 0 0 4px #b447591a}.button:focus-visible,.timeline-actions button:focus-visible{outline-offset:2px;outline:3px solid #b447593d}.field input::placeholder,.field textarea::placeholder{color:#baa9ac}.field small{color:#a08d91;justify-self:end;font-size:.7rem}.timeline-empty{color:#927e82;text-align:center;background:#fffaf8;border:1px dashed #dcc5c4;border-radius:16px;padding:22px;font-size:.85rem;line-height:1.55}.timeline-list{gap:22px;display:grid}.timeline-item{grid-template-columns:32px 1fr;gap:12px;display:grid}.timeline-item__rail{flex-direction:column;align-items:center;gap:8px;display:flex}.timeline-item__rail span{color:#fff;background:#b44759;border-radius:50%;flex:none;place-items:center;width:28px;height:28px;font-size:.62rem;font-weight:800;display:grid}.timeline-item__rail i{background:#ecd9d7;width:1px;height:100%;min-height:150px}.timeline-item:last-child .timeline-item__rail i{background:linear-gradient(#ecd9d7,#0000)}.timeline-item__fields .field:first-child{margin-top:0}.field--time{max-width:145px}.timeline-actions{align-items:center;gap:7px;margin-top:12px;display:flex}.timeline-actions button{color:#6f5d61;cursor:pointer;background:#fff;border:1px solid #eadbd9;border-radius:10px;min-width:36px;min-height:42px}.timeline-actions button:disabled{opacity:.35;cursor:default}.timeline-actions .timeline-actions__remove{color:#a13f4f;margin-left:auto;padding:0 10px}.button{cursor:pointer;border:0;border-radius:14px;justify-content:center;align-items:center;min-height:48px;padding:0 18px;font-weight:750;transition:transform .12s,opacity .12s,box-shadow .12s;display:inline-flex}.button:active:not(:disabled){transform:translateY(1px)}.button:disabled{opacity:.55;cursor:wait}.button--primary{color:#fff;background:#a83e51;box-shadow:0 10px 24px #a83e5138}.button--secondary{color:#6d4149;background:#fff;border:1px solid #decac8}.button--small{color:#8c3544;background:#ffe9e6;min-height:36px;padding:0 12px;font-size:.76rem}.button--ghost-danger{color:#a13f4f;background:0 0}.notice{border-radius:14px;margin:16px 0;padding:14px 16px;font-size:.84rem;line-height:1.5}.notice--success{color:#276749;background:#dff5e9}.notice--error{color:#923b48;background:#ffe4e3}.notice--neutral{color:#5f5961;background:#ffffffbf}.editor-actions{flex-wrap:wrap;align-items:center;gap:10px;padding:8px 0;display:flex}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=540px){.editor__heading{flex-direction:column;align-items:flex-start}.section-heading--action{flex-direction:column;align-items:stretch}.section-heading--action .button{align-self:flex-start}.editor-actions{grid-template-columns:1fr 1fr;display:grid}.editor-actions .button--ghost-danger{grid-column:1/-1}}@media (prefers-reduced-motion:no-preference){.status-card,.empty-wedding,.workspace-state,.editor{animation:.42s ease-out both enter}@keyframes enter{0%{opacity:0;transform:translateY(8px)}}}@media (prefers-reduced-motion:reduce){.loader{animation-duration:1.8s}}@keyframes spin{to{transform:rotate(360deg)}}:root{color:#352b2d;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);background:#fff8f5;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:#fff8f5;min-width:320px;min-height:100%}body{min-width:320px;min-height:100dvh;margin:0}button,input,textarea,select{font:inherit}
