:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;font-weight:400;color:#111;background:#f7f6f2;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--ss-bg: #f7f6f2;--ss-paper: #fbfaf7;--ss-paper-2: #f8f7f3;--ss-ink: #111111;--ss-muted: rgba(17, 17, 17, .62);--ss-subtle: rgba(17, 17, 17, .4);--ss-border: rgba(17, 17, 17, .14);--ss-border-strong: rgba(17, 17, 17, .22);--ss-shadow: 0 24px 60px rgba(0, 0, 0, .12);--ss-shadow-soft: 0 12px 30px rgba(0, 0, 0, .08);--ss-accent: #111111;--ss-gold: #c9b089;--ss-gold-soft: #d8c3a3;--ss-radius-xl: 26px;--ss-radius-lg: 18px;--ss-radius-md: 14px;--ss-radius-sm: 10px;--ss-focus: 0 0 0 3px rgba(201, 176, 137, .28)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;padding:0}html{background:var(--ss-bg)}body{min-width:320px;min-height:100vh;color:var(--ss-ink);background:radial-gradient(900px 520px at 15% 10%,rgba(0,0,0,.045),transparent 55%),radial-gradient(700px 460px at 85% 25%,rgba(0,0,0,.035),transparent 60%),linear-gradient(180deg,var(--ss-bg),#f2f1ed)}a{color:inherit;text-decoration:none}a:hover{color:inherit}img,svg{display:block;max-width:100%}button,input,textarea,select{font:inherit}button{border-radius:999px;border:1px solid transparent;padding:.85rem 1.2rem;font-size:1rem;font-weight:600;font-family:inherit;background:var(--ss-accent);color:#fff;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease,border-color .18s ease}button:hover{transform:translateY(-1px)}button:focus,button:focus-visible,input:focus,input:focus-visible,textarea:focus,select:focus,select:focus-visible{outline:none;box-shadow:var(--ss-focus)}input,textarea,select{width:100%;border:1px solid var(--ss-border);border-radius:var(--ss-radius-md);background:#ffffffb8;color:var(--ss-ink);padding:.95rem 1rem;transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease}input::placeholder,textarea::placeholder{color:var(--ss-subtle)}input:focus,textarea:focus,select:focus{border-color:var(--ss-border-strong);background:#fffffff0}h1,h2,h3,h4,h5,h6{margin:0;font-family:Georgia,Times New Roman,serif;font-weight:600;letter-spacing:-.02em;color:var(--ss-ink)}h1{font-size:clamp(2.3rem,5vw,3.4rem);line-height:1.02}h2{font-size:clamp(1.7rem,4vw,2.4rem);line-height:1.08}p{margin:0;color:var(--ss-muted)}#root{min-height:100%}.screen{min-height:100vh}.ss-editorial{min-height:100vh;display:grid;place-items:center;padding:28px 16px;color:var(--ss-ink)}.ss-card{width:100%;max-width:440px;background:linear-gradient(180deg,var(--ss-paper),var(--ss-paper-2));border:1px solid var(--ss-border);border-radius:var(--ss-radius-xl);box-shadow:var(--ss-shadow);padding:26px 22px 18px;position:relative;overflow:hidden}.ss-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(135deg,rgba(201,176,137,.08),transparent 22%,transparent 78%,rgba(201,176,137,.06))}.ss-title{color:var(--ss-ink)}.ss-subtitle{color:var(--ss-muted)}.ss-editorial{--ss-bg: #f7f6f2;--ss-paper: #fbfaf7;--ss-paper-2: #f8f7f3;--ss-ink: #111111;--ss-muted: rgba(17, 17, 17, .62);--ss-subtle: rgba(17, 17, 17, .55);--ss-border: rgba(17, 17, 17, .14);--ss-border-soft: rgba(17, 17, 17, .1);--ss-border-strong: rgba(17, 17, 17, .18);--ss-shadow: 0 24px 60px rgba(0, 0, 0, .12);--ss-shadow-strong: 0 16px 40px rgba(0, 0, 0, .18);--ss-accent: #111111;--ss-gold: #c9b089;--ss-radius-xl: 26px;--ss-radius-lg: 18px;--ss-radius-md: 14px;--ss-radius-pill: 999px;min-height:100vh;display:grid;place-items:center;padding:28px 16px;background:radial-gradient(900px 520px at 15% 10%,rgba(0,0,0,.045),transparent 55%),radial-gradient(700px 460px at 85% 25%,rgba(0,0,0,.035),transparent 60%),linear-gradient(180deg,var(--ss-bg),#f2f1ed);color:var(--ss-ink)}.ss-card{position:relative;width:100%;max-width:440px;padding:26px 22px 18px;overflow:hidden;background:linear-gradient(180deg,var(--ss-paper),var(--ss-paper-2));border:1px solid var(--ss-border);border-radius:var(--ss-radius-xl);box-shadow:var(--ss-shadow)}.ss-card:after{content:"";position:absolute;top:10px;right:10px;bottom:10px;left:10px;border:1px solid rgba(17,17,17,.08);border-radius:calc(var(--ss-radius-xl) - 10px);pointer-events:none}.ss-card.ss-card--wide{max-width:520px}.wedding-create .ss-card--wide{max-width:560px}.ss-header{position:relative;z-index:1;margin-bottom:18px;text-align:center}.ss-title{margin:8px 0;font-size:34px;line-height:1.05;letter-spacing:-.6px;font-weight:800}.ss-title--sm{font-size:28px}.ss-subtitle{margin:0;font-size:14px;line-height:1.35;color:var(--ss-muted)}.ss-subtitle--tight{margin-top:10px}.ss-ornament{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:2px}.ss-dot{width:10px;height:10px;border-radius:999px;background:var(--ss-gold);opacity:.95}.ss-line{width:84px;height:1px;background:linear-gradient(90deg,transparent,rgba(201,176,137,.85),transparent)}.ss-wedding-header{margin-bottom:16px}.ss-wedding-titleblock{margin-top:8px}.ss-wedding-overline{margin-bottom:10px;font-size:12px;letter-spacing:2.2px;text-transform:uppercase;color:var(--ss-subtle)}.ss-wedding-names{display:inline-flex;align-items:baseline;justify-content:center;gap:12px}.ss-wedding-name{font-size:30px;line-height:1.05;font-weight:800;font-style:italic;letter-spacing:-.6px}.ss-wedding-amp{font-size:18px;font-weight:700;font-style:italic;opacity:.8;transform:translateY(-2px)}.ss-wedding-underline{position:relative;width:220px;height:1px;margin:14px auto 0;background:linear-gradient(90deg,transparent,rgba(17,17,17,.18),transparent)}.ss-wedding-underline:after{content:"";position:absolute;top:50%;left:50%;width:8px;height:8px;border-radius:999px;transform:translate(-50%,-50%);background:#11111173}.ss-form{position:relative;z-index:1;display:grid;gap:14px}.ss-field{display:grid;gap:8px}.ss-label{font-size:12px;letter-spacing:1.15px;text-transform:uppercase;color:var(--ss-subtle)}.ss-input,.ss-select{width:100%;font-size:15px;color:var(--ss-ink);outline:none;transition:box-shadow .16s ease,border-color .16s ease,transform .16s ease,background .16s ease}.ss-input{padding:12px;border:1px solid var(--ss-border);border-radius:var(--ss-radius-md);background:#fffc}.ss-input::placeholder{color:#1116}.ss-input:focus{border-color:#1111114d;box-shadow:0 0 0 4px #1111111a}.ss-input:active{transform:translateY(.5px)}.ss-input.ss-code{letter-spacing:2px}.ss-select{appearance:none;-webkit-appearance:none;-moz-appearance:none;min-width:82px;height:44px;padding:0 38px 0 14px;font-weight:800;border:1px solid rgba(17,17,17,.16);border-radius:14px;background-color:#ffffffeb;background-image:linear-gradient(45deg,transparent 50%,rgba(17,17,17,.75) 50%),linear-gradient(135deg,rgba(17,17,17,.75) 50%,transparent 50%);background-position:calc(100% - 18px) 50%,calc(100% - 12px) 50%;background-size:6px 6px,6px 6px;background-repeat:no-repeat}.ss-select:focus{border-color:#11111147;box-shadow:0 0 0 4px #1111111a}.ss-select--full{min-width:0}.ss-time{display:flex;align-items:flex-end;gap:8px}.ss-time__group{display:grid;gap:6px;justify-items:center}.ss-time__label{font-size:11px;letter-spacing:1px;text-transform:uppercase;color:#11111180}.ss-time__colon{padding-bottom:10px;font-size:18px;line-height:1;font-weight:900;color:#111111b3}.ss-error{padding:10px 12px;font-size:13px;color:#821414f2;background:#aa1e1e0f;border:1px solid rgba(170,30,30,.22);border-radius:var(--ss-radius-md)}.ss-footnote{font-size:12px;color:#11111194}.ss-footer{position:relative;z-index:1;display:flex;justify-content:center;margin-top:14px}.ss-footer--muted{margin-top:12px}.ss-btn{border:0;border-radius:var(--ss-radius-pill);padding:13px 14px;font-size:15px;font-weight:800;cursor:pointer;transition:transform .14s ease,box-shadow .14s ease,opacity .14s ease,background .14s ease}.ss-btn:active{transform:translateY(1px)}.ss-btn--primary{color:#fff;background:#111;box-shadow:var(--ss-shadow-strong)}.ss-btn--primary:hover{box-shadow:0 18px 52px #00000038}.ss-btn--secondary{color:#111;background:#ffffffbf;border:1px solid var(--ss-border-strong)}.ss-btn--secondary:hover{box-shadow:0 14px 30px #0000001a}.ss-btn--ghost{padding:13px 14px;font-size:14px;font-weight:800;color:#111111bf;background:transparent;border:1px solid var(--ss-border);border-radius:var(--ss-radius-pill);cursor:pointer;transition:transform .14s ease,box-shadow .14s ease,background .14s ease}.ss-btn--ghost:hover{background:#1111110d}.ss-btn--ghost:active{transform:translateY(1px)}.ss-btn--full,.ss-submit{width:100%}.ss-link{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:8px 10px;font-size:13px;color:#111111a6;background:transparent;border:0;border-radius:10px;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.ss-link:hover{color:#111111d9;background:#1111110d}.ss-icon-btn{width:34px;height:34px;display:grid;place-items:center;font-size:20px;line-height:1;font-weight:900;color:#111111bf;background:#fffc;border:1px solid var(--ss-border);border-radius:999px;cursor:pointer;transition:transform .14s ease,box-shadow .14s ease,opacity .14s ease}.ss-icon-btn:active{transform:translateY(1px)}.ss-icon-btn:disabled{opacity:.4;cursor:not-allowed}.ss-divider{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin:4px 0 2px}.ss-divider-line{height:1px;background:linear-gradient(90deg,transparent,rgba(17,17,17,.16),transparent)}.ss-divider-text{font-size:12px;letter-spacing:1.1px;text-transform:uppercase;color:var(--ss-subtle)}.ss-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ss-section{margin-top:4px}.ss-section__title{font-size:14px;font-weight:900;letter-spacing:.2px}.ss-section__hint{margin-top:4px;font-size:12px;color:var(--ss-subtle)}.ss-actions{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px;margin-top:6px}.ss-playerline{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:10px;margin:2px 0 14px;padding:10px 12px;border:1px solid var(--ss-border-soft);border-radius:14px;background:#ffffffb8}.ss-playerline__label{font-size:12px;letter-spacing:1.1px;text-transform:uppercase;color:var(--ss-subtle)}.ss-playerline__input{padding:10px 12px;border-radius:12px}.ss-list{display:grid;gap:10px;margin-bottom:14px}.ss-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;padding:12px;border:1px solid var(--ss-border-soft);border-radius:16px;background:#ffffffbd}.ss-row--stack{grid-template-columns:1fr;gap:10px}.ss-row__top{display:flex;justify-content:space-between;align-items:center}.ss-row__badge{display:inline-flex;align-items:center;padding:6px 10px;font-size:12px;font-weight:900;color:#111111bf;background:#ffffffbd;border:1px solid rgba(17,17,17,.12);border-radius:999px}.ss-row__name,.ss-row__role{font-size:16px;font-weight:800;letter-spacing:-.2px}.ss-row__role{font-weight:900}.ss-row__hint{margin-top:2px;font-size:12px;color:var(--ss-subtle)}.ss-row__person{display:inline-flex;align-items:center;gap:8px;margin-top:6px;padding:7px 10px;border:1px solid rgba(17,17,17,.12);border-radius:999px;background:#ffffffb8}.ss-row__person-pill{width:8px;height:8px;border-radius:999px;background:#111c;opacity:.9}.ss-row__person-name{font-size:13px;font-weight:800;letter-spacing:.2px;color:#111c}.ss-created{margin-top:14px;padding:14px 14px 12px;border:1px solid rgba(17,17,17,.12);border-radius:18px;background:#ffffffbf}.ss-created__label{font-size:12px;letter-spacing:1.1px;text-transform:uppercase;color:var(--ss-subtle)}.ss-created__code{margin-top:6px;font-size:28px;font-weight:950;letter-spacing:4px}.ss-created__hint{margin-top:8px;font-size:12px;line-height:1.35;color:var(--ss-subtle)}.ss-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px;background:#11182773}.ss-modal-card{width:100%;max-width:520px;padding:24px;background:#fff;border-radius:18px;box-shadow:0 24px 60px #0000002e}.ss-modal-title{margin:0 0 12px;font-size:1.2rem;font-weight:700}.ss-modal-text{margin:0 0 20px;line-height:1.5;color:#4b5563}.wedding-header{position:sticky;top:0;z-index:1000;display:grid;grid-template-columns:56px 1fr 56px;align-items:center;height:64px;padding:0 12px;background:#fbfaf7f5;border-bottom:1px solid rgba(17,17,17,.08);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.wedding-header__left,.wedding-header__right{width:40px;height:40px;display:flex;align-items:center;justify-content:center;margin:0;padding:0;background:transparent;border:none;border-radius:999px;cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none}.wedding-header__left:hover,.wedding-header__right:hover{background:#1111110d}.wedding-header__title{justify-self:center;color:#111827;text-decoration:none;font-size:1.2rem;font-weight:800;letter-spacing:.02em}.wedding-header__icon{width:24px;height:24px;display:block;flex-shrink:0;color:#000}.wedding-header__icon--account{width:26px;height:26px}.wedding-sidebar-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1100;background:#11182759}.wedding-sidebar{position:fixed;top:0;left:0;z-index:1200;width:min(82vw,320px);height:100vh;padding:88px 20px 24px;background:#fff;box-shadow:0 20px 60px #00000038}.wedding-sidebar-list{list-style:none;margin:0;padding:0}.wedding-sidebar-list li+li{margin-top:10px}.wedding-nav-link{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:14px;color:#111827;text-decoration:none;font-weight:600;transition:background .18s ease}.wedding-nav-link:hover{background:#f3f4f6}.wedding-sidebar-item-icon{width:20px;height:20px;display:block;flex-shrink:0;color:#000}@keyframes weddingSlideIn{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes weddingSlideOut{0%{transform:translate(0)}to{transform:translate(-100%)}}.wedding-sidebar.slide-in{animation:weddingSlideIn .22s ease forwards}.wedding-sidebar.slide-out{animation:weddingSlideOut .2s ease forwards}@media(max-width:520px){.ss-grid-2,.ss-actions{grid-template-columns:1fr}}@media(max-width:420px){.ss-row{grid-template-columns:1fr;gap:10px}.ss-time{justify-content:flex-start}.ss-select{min-width:92px}.ss-wedding-name{font-size:26px}.ss-wedding-underline{width:180px}}@media(max-width:380px){.ss-card{padding:22px 18px 16px;border-radius:22px}.ss-title{font-size:30px}}
