:root{--cream:#f7f1ea;--cream-deep:#efe6db;--paper:#fbf7f2;--blush:#e8c9bd;--blush-soft:#f1ddd2;--rose:#d8a99b;--terracotta:#b5654a;--terracotta-deep:#8e4a33;--sage:#a4ac96;--ink:#2a211c;--ink-soft:#5c4f47;--muted:#8a7b70;--line:#e5d8cc;--line-soft:#efe5da;--gold:#b89968;--serif:"Cormorant Garamond", "EB Garamond", Georgia, serif;--sans:"Inter", "Helvetica Neue", system-ui, sans-serif;--script:"Pinyon Script", "Snell Roundhand", cursive;--mono:"JetBrains Mono", ui-monospace, "SF Mono", monospace;--radius:6px}*{box-sizing:border-box}body{background:var(--cream);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:15px;line-height:1.55}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}h1,h2,h3,.serif{font-family:var(--serif);font-weight:400}.script{font-family:var(--script);font-weight:400}.italic{font-style:italic}.tag{color:var(--muted);font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;font-size:10.5px}.btn,.btn-link{min-height:40px}.btn:disabled,.btn-link:disabled{cursor:not-allowed;opacity:.55}.btn{border:1px solid var(--ink);background:var(--ink);color:var(--cream);letter-spacing:.18em;text-transform:uppercase;border-radius:3px;justify-content:center;align-items:center;padding:10px 18px;font-size:12px;font-weight:600;display:inline-flex}.btn-link{color:var(--ink);letter-spacing:.18em;text-transform:uppercase;background:0 0;border:0;border-bottom:1px solid;padding:0 0 4px;font-size:11px;font-weight:600}.card{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper)}.login-screen{background:radial-gradient(circle at 18% 15%, #e8c9bdb8, transparent 34%), radial-gradient(circle at 80% 12%, #a4ac964d, transparent 28%), linear-gradient(135deg, var(--cream), var(--paper));place-items:center;min-height:100vh;padding:28px;display:grid}.login-card{border:1px solid var(--line);background:#fbf7f2e6;border-radius:8px;width:min(520px,100%);padding:44px;box-shadow:0 24px 80px #2a211c1f}.login-card .script{color:var(--terracotta);font-size:48px;line-height:1}.login-card h1{margin-top:18px;font-size:48px;line-height:1.02}.login-card p{color:var(--ink-soft);margin-top:14px;font-size:18px}.login-card form{gap:16px;margin-top:28px;display:grid}.login-card label{color:var(--ink-soft);letter-spacing:.16em;text-transform:uppercase;gap:8px;font-size:12px;font-weight:700;display:grid}.login-card input,.wedding-switcher select{border:1px solid var(--line);background:var(--cream);min-height:46px;color:var(--ink);border-radius:4px;outline:none;padding:0 14px}.form-error{color:var(--terracotta-deep);font-size:13px}.loading-state,.error-state,.empty-state{padding:28px}.loading-state{text-align:center;place-items:center;min-height:180px;display:grid}.loading-state .script{color:var(--terracotta);font-size:42px}.error-state{border-color:var(--terracotta);margin-bottom:24px}.empty-state{grid-column:1/-1}.dashboard-shell{background:var(--cream);min-height:100vh}.dashboard-header{z-index:20;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f7f1eaf0;justify-content:space-between;align-items:center;gap:28px;padding:20px 48px;display:flex;position:sticky;top:0}.dashboard-brand,.countdown-pill{align-items:center;gap:16px;display:flex}.dashboard-brand .script{font-size:32px;line-height:1}.dashboard-brand i{background:var(--line);width:1px;height:24px}.countdown-pill{gap:24px}.countdown-pill div{text-align:right;display:grid}.countdown-pill strong{color:var(--terracotta-deep);font-size:24px;line-height:1}.avatar{background:var(--blush);width:40px;height:40px;color:var(--ink);border-radius:50%;place-items:center;display:inline-grid}.logout-link{min-height:auto}.dashboard-grid{grid-template-columns:240px minmax(0,1fr);min-height:calc(100vh - 81px);display:grid}.dashboard-sidebar{border-right:1px solid var(--line);background:var(--cream);padding:32px 0}.dashboard-sidebar nav{display:grid}.wedding-switcher{gap:8px;margin:0 32px 24px;display:grid}.dashboard-sidebar nav button{width:100%;color:var(--ink-soft);letter-spacing:.12em;text-align:left;text-transform:uppercase;background:0 0;border:0;border-left:2px solid #0000;padding:14px 32px;font-size:13px;font-weight:600}.dashboard-sidebar nav button.is-active{border-color:var(--terracotta);color:var(--terracotta-deep)}.planner-card{border-top:1px solid var(--line);margin-top:32px;padding:32px}.planner-card .serif{margin-top:8px;font-size:18px}.planner-card .btn-link{margin-top:12px}.dashboard-main{background:var(--paper);padding:40px 48px 120px}.welcome-head{margin-bottom:40px}.welcome-head .tag{color:var(--terracotta-deep);margin-bottom:12px}.welcome-head h1,.section-head h1{font-size:56px;line-height:1.02}.welcome-head h1 span{color:var(--terracotta)}.welcome-head p,.section-head p{color:var(--ink-soft);margin-top:12px;font-size:20px}.overview-top,.overview-bottom{grid-template-columns:1.4fr 1fr;gap:24px;margin-bottom:24px;display:grid}.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-bottom:24px;display:grid}.dark-card{background:var(--ink);color:var(--cream)}.day-card{border:0;padding:36px;position:relative;overflow:hidden}.day-card:before{content:"";filter:blur(36px);background:radial-gradient(circle,#d8a99b6b,#0000 70%);width:300px;height:300px;position:absolute;top:-80px;right:-40px}.day-card>*{position:relative}.day-card .tag,.day-grid .tag{color:var(--blush)}.day-date{margin-top:12px;font-size:32px}.day-script{color:var(--blush);margin-top:18px;font-size:56px;line-height:1}.day-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:32px;display:grid}.day-grid strong{color:var(--cream);font-size:32px;display:block}.next-card,.metric-card,.panel,.note-card{padding:28px}.next-card>.tag,.panel-title .tag,.note-card>.tag{color:var(--terracotta-deep)}.next-item{border-bottom:1px solid var(--line-soft);grid-template-columns:64px 1fr;gap:20px;padding:16px 0;display:grid}.next-item:last-child{border-bottom:0;padding-bottom:0}.next-item strong{color:var(--terracotta);font-size:26px;line-height:1;display:block}.next-item p{font-size:17px}.next-item>.tag{grid-column:2}.metric-card strong{margin-top:8px;font-size:36px;line-height:1.1;display:block}.metric-card>span{color:var(--ink-soft);margin-top:4px;font-size:13px;display:block}.bar{background:var(--line-soft);border-radius:2px;height:4px;margin-top:16px;overflow:hidden}.bar i{background:var(--terracotta);height:100%;display:block}.panel-title{justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;display:flex}.activity-item{align-items:flex-start;gap:20px;margin-top:16px;display:flex}.activity-item>i{background:var(--terracotta);border-radius:50%;flex:none;width:8px;height:8px;margin-top:8px}.activity-item p{font-size:17px;line-height:1.4}.note-card{border-color:var(--blush);background:var(--blush-soft)}.note-author{align-items:center;gap:16px;margin:18px 0 20px;display:flex}.note-card p{margin-bottom:20px;font-size:18px;line-height:1.5}.section-head{margin-bottom:32px}.section-head .tag{color:var(--terracotta-deep);margin-bottom:12px}.timeline-stack{gap:32px;display:grid}.timeline-phase{padding:32px}.phase-head{justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:24px;display:flex}.phase-head h2{font-size:28px}.task-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.task-row{background:var(--cream);border-radius:4px;align-items:center;gap:16px;padding:12px 16px;display:flex}.task-row.is-done{background:var(--blush-soft);color:var(--ink-soft);text-decoration:line-through}.task-row span{border:1px solid var(--line);width:18px;height:18px;color:var(--cream);border-radius:4px;place-items:center;font-size:12px;display:inline-grid}.task-row.is-done span{border-color:var(--terracotta);background:var(--terracotta)}.table-card{overflow:hidden}.budget-row,.guest-row,.doc-row{border-bottom:1px solid var(--line-soft);grid-template-columns:1.4fr 100px 1fr 120px;align-items:center;gap:24px;padding:20px 28px;display:grid}.budget-row:last-child,.guest-row:last-child,.doc-row:last-child{border-bottom:0}.budget-row h2,.guest-row h2,.doc-row h2{font-size:20px}.budget-row strong{color:var(--terracotta-deep);text-align:right}.payment-ledger-card{margin-top:24px}.payment-ledger-head{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:18px;padding:24px 28px;display:flex}.payment-ledger-head h2{margin-top:6px;font-size:30px;line-height:1}.payment-row{grid-template-columns:1.2fr 120px 1fr 110px}.guest-mode-tabs{border:1px solid var(--line);background:var(--cream);border-radius:999px;gap:6px;margin-bottom:24px;padding:5px;display:inline-flex}.guest-mode-tabs button{color:var(--ink-soft);font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;background:0 0;border:0;border-radius:999px;padding:10px 14px;font-size:10px}.guest-mode-tabs button.is-active{background:var(--ink);color:var(--cream)}.client-seating-card,.meal-board{padding:30px;position:relative;overflow:hidden}.client-seating-card:before,.meal-board:before{content:"";filter:blur(18px);background:radial-gradient(circle,#e8c9bd94,#0000 68%);border-radius:50%;width:320px;height:320px;position:absolute;top:-120px;right:-80px}.client-seating-card>*,.meal-board>*{position:relative}.client-seating-head,.meal-board-head{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:26px;display:flex}.client-seating-meta{border:1px solid var(--blush);text-align:right;background:#e8c9bd3d;border-radius:10px;align-content:start;gap:4px;padding:10px 14px;display:grid}.client-seating-meta small{color:var(--ink-soft);font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;font-size:10px}.client-room-tabs{flex-wrap:wrap;gap:8px;margin-bottom:18px;display:flex}.client-room-tab{border:1px solid var(--line);background:var(--paper);color:var(--ink);text-align:left;cursor:pointer;border-radius:12px;gap:2px;padding:10px 14px;transition:all .18s;display:grid}.client-room-tab strong{font-size:14px}.client-room-tab small{color:var(--muted);font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;font-size:9.5px}.client-room-tab.is-active{border-color:var(--terracotta);background:var(--blush-soft)}.client-room-tab:hover{border-color:var(--terracotta)}.client-decor-item{z-index:1;color:#2a211cc7;font-family:var(--mono);letter-spacing:.08em;text-align:center;text-transform:uppercase;pointer-events:none;border:1px dashed #2a211c2e;border-radius:14px;place-items:center;font-size:10.5px;display:grid;position:absolute;box-shadow:0 12px 30px #2a211c14}.client-decor-item span{background:#fbf7f2bf;border-radius:6px;padding:4px 10px}.client-seating-head h2,.meal-board-head h2,.guest-edit-card h2{margin-top:6px;font-size:34px;line-height:1.05}.client-seating-head p{color:var(--ink-soft);margin-top:8px;font-size:18px}.client-room-canvas{border:1px solid var(--line);background:linear-gradient(90deg, #b5654a0f 1px, transparent 1px), linear-gradient(#b5654a0f 1px, transparent 1px), radial-gradient(circle at 20% 18%, #e8c9bd85, transparent 30%), radial-gradient(circle at 78% 74%, #a4ac9633, transparent 32%), var(--cream);background-size:44px 44px,44px 44px,auto,auto,auto;border-radius:12px;min-height:560px;position:relative;overflow:hidden}.client-visual-table-card{z-index:2;outline:none;justify-items:center;gap:10px;width:190px;display:grid;position:absolute;transform:translate(-50%,-50%)}.client-venue-zone{z-index:1;min-width:92px;color:var(--muted);font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;background:#fbf7f2b8;border:1px dashed #b5654a47;border-radius:999px;place-items:center;padding:9px 12px;font-size:10px;display:grid;position:absolute;transform:translate(-50%,-50%)}.client-venue-zone-dance{border-radius:50%;min-width:160px;min-height:92px}.client-visual-table{border:1px solid var(--line);background:radial-gradient(circle at 35% 20%, #fbf7f2cc, transparent 34%), linear-gradient(145deg, var(--blush-soft), var(--paper));border-radius:50%;place-items:center;width:118px;height:118px;display:grid;position:relative;box-shadow:0 22px 60px #2a211c1f}.client-visual-table-long{border-radius:36px;width:154px}.client-visual-table-square{border-radius:24px}.client-visual-table span{border:1px solid var(--line);background:var(--paper);width:28px;height:28px;color:var(--terracotta-deep);font-family:var(--mono);border-radius:999px;place-items:center;font-size:9px;font-weight:700;display:grid;position:absolute;transform:translate(-50%,-50%)}.client-visual-table span.is-filled{border-color:var(--terracotta);background:var(--terracotta);color:var(--cream)}.client-visual-table strong{width:72%;color:var(--ink);text-align:center;font-size:20px;line-height:1}.client-table-popover{z-index:5;border:1px solid var(--line);text-align:center;background:#fbf7f2eb;border-radius:8px;width:100%;padding:14px;display:none;position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%)}.client-visual-table-card:hover .client-table-popover,.client-visual-table-card:focus-within .client-table-popover{display:block}.client-table-popover h3{font-size:24px;line-height:1}.client-seat-list{gap:9px;display:grid}.client-seat-list div{border-top:1px solid var(--line-soft);grid-template-columns:46px 1fr;align-items:center;gap:10px;padding-top:9px;display:grid}.seating-review-card{border:1px solid var(--blush);background:var(--blush-soft);border-radius:10px;gap:16px;margin-top:24px;padding:24px;display:grid}.seating-review-card h3{margin:6px 0;font-size:30px;line-height:1}.seating-review-card p{color:var(--ink-soft)}.seating-review-card textarea{border:1px solid var(--line);background:var(--paper);width:100%;color:var(--ink);resize:vertical;border-radius:6px;outline:none;padding:14px}.seating-review-actions{flex-wrap:wrap;gap:12px;display:flex}.client-seat-list span{background:var(--blush-soft);min-width:34px;min-height:34px;color:var(--terracotta-deep);font-family:var(--mono);border-radius:50%;place-items:center;font-size:10px;display:grid}.client-guest-layout{grid-template-columns:minmax(0,1.1fr) minmax(320px,.72fr);align-items:start;gap:24px;display:grid}.client-guest-directory,.guest-edit-card{padding:26px}.client-group-card+.client-group-card{border-top:1px solid var(--line-soft);margin-top:24px;padding-top:24px}.client-group-head{justify-content:space-between;align-items:baseline;gap:18px;margin-bottom:12px;display:flex}.client-group-head h2{font-size:30px;line-height:1}.client-guest-list{gap:10px;display:grid}.client-guest-row,.meal-card{border:1px solid var(--line-soft);background:var(--cream);width:100%;color:var(--ink);text-align:left;border-radius:6px;gap:4px;padding:14px 16px;display:grid}.client-guest-row:hover,.client-guest-row.is-active,.meal-card:hover{border-color:var(--terracotta);background:var(--blush-soft)}.client-guest-row span,.client-guest-row small,.meal-card span,.meal-card small{color:var(--ink-soft)}.guest-edit-card form{gap:14px;display:grid}.guest-edit-card label{color:var(--ink-soft);letter-spacing:.12em;text-transform:uppercase;gap:8px;font-size:11px;font-weight:700;display:grid}.guest-edit-card input,.guest-edit-card select,.guest-edit-card textarea{border:1px solid var(--line);background:var(--cream);width:100%;color:var(--ink);border-radius:4px;outline:none;padding:12px 14px}.guest-edit-card textarea{resize:vertical}.meal-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.meal-card{align-content:start;min-height:124px}.budget-row span,.guest-row span,.doc-row span{color:var(--ink-soft);font-size:13px}.vendor-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.vendor-card{padding:28px}.vendor-card .tag{color:var(--terracotta-deep);margin-bottom:12px}.vendor-card h2{font-size:28px}.vendor-card span{color:var(--ink-soft);margin:8px 0 24px;display:block}.vendor-card p{color:var(--ink-soft);margin-top:8px;font-size:13px}.mood-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.palette-row{gap:10px;margin:-10px 0 28px;display:flex}.palette-row i{border:1px solid var(--line);border-radius:50%;width:54px;height:54px;display:block;box-shadow:inset 0 0 0 6px #fbf7f285}.ph{aspect-ratio:4/3;background-color:var(--blush-soft);background-image:repeating-linear-gradient(135deg,#b5654a12 0 1px,#0000 1px 14px);border-radius:4px;position:relative;overflow:hidden}.ph:after{content:attr(data-label);color:var(--terracotta-deep);font-family:var(--mono);letter-spacing:.06em;text-transform:lowercase;background:linear-gradient(#0000,#f7f1eae0);padding:10px 14px;font-size:10px;position:absolute;inset:auto 0 0}.ph-dark{background-color:#3a2e26}.ph-dark:after{color:var(--blush);background:linear-gradient(#0000,#2a211ce0)}.ph-sage{background-color:#c4cab8}.message-panel{gap:14px;padding:28px;display:grid}.message-layout{grid-template-columns:280px minmax(0,1fr)}.thread-list{border-right:1px solid var(--line-soft);align-content:start;gap:10px;padding-right:18px;display:grid}.thread-list button{color:var(--ink);text-align:left;background:0 0;border:1px solid #0000;border-radius:4px;gap:4px;padding:12px;display:grid}.thread-list button.is-active{border-color:var(--blush);background:var(--blush-soft)}.thread-panel{gap:14px;display:grid}.message{border:1px solid var(--line);background:var(--cream);border-radius:6px;max-width:560px;padding:16px 18px}.message.is-planner{border-color:var(--blush);background:var(--blush-soft)}.message p{margin-top:4px;font-size:18px}.message-compose{border-top:1px solid var(--line-soft);grid-template-columns:1fr auto;gap:12px;margin-top:12px;padding-top:20px;display:grid}.message-compose input{border:1px solid var(--line);background:var(--cream);min-height:44px;color:var(--ink);border-radius:4px;outline:none;padding:0 14px}.doc-row{grid-template-columns:1.5fr 80px 1fr auto}.settings-grid{grid-template-columns:minmax(0,1fr) minmax(280px,.72fr);gap:24px;display:grid}.settings-panel,.account-callout{padding:28px;position:relative;overflow:hidden}.settings-panel:before,.account-callout:before{content:"";filter:blur(10px);background:radial-gradient(circle,#e8c9bd99,#0000 70%);border-radius:50%;width:190px;height:190px;position:absolute;top:-80px;right:-80px}.settings-panel>*,.account-callout>*{position:relative}.settings-panel .tag,.account-callout .tag{color:var(--terracotta-deep);margin-bottom:10px}.settings-panel h2,.account-callout h2{font-size:32px;line-height:1.05}.settings-panel p,.account-callout p{color:var(--ink-soft);margin-top:10px}.account-callout{border-color:var(--terracotta);background:radial-gradient(circle at 8% 12%, #b5654a24, transparent 34%), var(--blush-soft);margin-bottom:24px}.settings-form{gap:16px;margin-top:22px;display:grid}.settings-form label{gap:8px;display:grid}.settings-form label span{color:var(--ink-soft);letter-spacing:.14em;text-transform:uppercase;font-size:11px;font-weight:700}.settings-form input{border:1px solid var(--line);background:var(--cream);min-height:46px;color:var(--ink);border-radius:4px;outline:none;padding:0 14px}.password-panel{grid-column:1/-1}.btn-linkish{border-color:var(--terracotta);width:100%;color:var(--terracotta-deep);background:0 0;margin-top:22px}.settings-error{border:1px solid var(--terracotta);background:var(--blush-soft);border-radius:4px;margin-bottom:18px;padding:12px 14px}.toast-notice{z-index:70;border:1px solid var(--terracotta);background:var(--ink);color:var(--cream);font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;border-radius:999px;padding:12px 18px;font-size:11px;position:fixed;bottom:24px;right:24px;box-shadow:0 18px 50px #2a211c38}.fade-up{animation:.42s cubic-bezier(.2,.7,.2,1) both fadeUp}@keyframes fadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media (width<=1080px){.dashboard-grid{grid-template-columns:1fr}.dashboard-sidebar{z-index:10;border-right:0;border-bottom:1px solid var(--line);padding:0;position:sticky;top:81px;overflow-x:auto}.dashboard-sidebar nav{display:flex}.dashboard-sidebar nav button{border-bottom:2px solid #0000;border-left:0;min-width:max-content}.dashboard-sidebar nav button.is-active{border-bottom-color:var(--terracotta)}.planner-card{display:none}.wedding-switcher{margin:18px 20px}.overview-top,.overview-bottom,.metric-grid,.vendor-grid,.mood-grid,.message-layout,.client-guest-layout,.meal-grid,.settings-grid{grid-template-columns:1fr}.thread-list{border-right:0;border-bottom:1px solid var(--line-soft);padding:0 0 18px}}@media (width<=720px){.dashboard-header{flex-direction:column;align-items:flex-start;padding:18px 20px}.dashboard-brand{flex-direction:column;align-items:flex-start;gap:6px}.dashboard-brand i{display:none}.countdown-pill{justify-content:space-between;width:100%}.dashboard-sidebar{top:138px}.dashboard-main{padding:30px 20px 90px}.welcome-head h1,.section-head h1{font-size:42px}.day-grid,.task-grid,.budget-row,.payment-row,.guest-row,.doc-row,.message-compose{grid-template-columns:1fr}.budget-row strong{text-align:left}.guest-mode-tabs{width:100%}.guest-mode-tabs button{flex:1}.client-seating-card,.meal-board,.client-guest-directory,.guest-edit-card{padding:22px}.client-room-canvas{min-height:680px}.client-seating-head,.meal-board-head,.payment-ledger-head,.client-group-head{display:grid}}.invitation-builder-shell{gap:18px;display:grid}.invitation-builder-error{margin:-6px 0 4px}.invitation-builder-tabs{background:var(--paper);border:1px solid var(--line);border-radius:999px;gap:4px;width:fit-content;padding:4px;display:inline-flex}.invitation-builder-tabs button{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);cursor:pointer;background:0 0;border:none;border-radius:999px;padding:8px 16px;font-size:.78rem}.invitation-builder-tabs button.is-active{background:var(--ink);color:var(--paper)}.invitation-builder-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:start;gap:18px;display:grid}.invitation-builder-controls{gap:18px;display:grid}.invitation-builder-section{gap:14px;padding:22px 24px;display:grid}.invitation-builder-section h2{font-size:1.4rem}.invitation-builder-section .tag{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--muted);font-size:.72rem}.invitation-builder-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.invitation-template-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.invitation-template-grid-tight{grid-template-columns:repeat(2,minmax(0,1fr))}.invitation-template-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);text-align:left;cursor:pointer;gap:8px;padding:14px;transition:border-color .16s,transform .16s;display:grid}.invitation-template-card:hover:not(:disabled){transform:translateY(-2px)}.invitation-template-card.is-active{border-color:var(--terracotta);box-shadow:0 0 0 2px color-mix(in srgb, var(--terracotta) 25%, transparent)}.invitation-template-card strong{font-family:var(--serif);color:var(--ink);font-size:1.05rem}.invitation-template-card span{color:var(--ink-soft);font-size:.82rem;line-height:1.4}.invitation-template-card:disabled{opacity:.6;cursor:progress}.invitation-builder-starter{padding:26px 28px}.invitation-builder-starter .invitation-template-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.invitation-form-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.invitation-form-grid label,.invitation-builder-section label{color:var(--ink-soft);letter-spacing:.06em;gap:4px;font-size:.78rem;display:grid}.invitation-form-grid input,.invitation-form-grid select,.invitation-form-grid textarea,.invitation-builder-section input:not([type=color]),.invitation-builder-section select,.invitation-builder-section textarea{border:1px solid var(--line);background:var(--paper);border-radius:var(--radius);color:var(--ink);padding:9px 12px;font-size:.92rem}.invitation-form-grid label.span-2{grid-column:span 2}.invitation-color-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;display:grid}.invitation-color-field{gap:4px;font-size:.78rem;display:grid}.invitation-color-field>span:first-child{text-transform:uppercase;letter-spacing:.18em;color:var(--muted);font-size:.7rem}.invitation-color-input{grid-template-columns:38px 1fr;align-items:center;gap:8px;display:grid}.invitation-color-input input[type=color]{border:1px solid var(--line);background:0 0;border-radius:6px;width:38px;height:32px;padding:0}.invitation-builder-hint{color:var(--ink-soft);margin:4px 0;font-size:.85rem}.invitation-gallery-add{grid-template-columns:1fr auto;align-items:end;gap:8px;display:grid}.invitation-gallery-add input{border:1px solid var(--line);border-radius:var(--radius);padding:9px 12px}.invitation-gallery-list{gap:6px;display:grid}.invitation-gallery-row{background:var(--paper);border:1px solid var(--line-soft);border-radius:var(--radius);justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.invitation-gallery-row span{color:var(--ink-soft);word-break:break-all;font-size:.78rem}.invitation-image-block{border:1px dashed var(--line);border-radius:var(--radius);background:var(--paper);gap:10px;padding:14px;display:grid}.invitation-image-block+.invitation-image-block{margin-top:14px}.invitation-image-block-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.invitation-image-block-head strong{font-family:var(--serif,Georgia, serif);font-size:1rem}.invitation-image-thumb{border-radius:var(--radius);border:1px solid var(--line-soft);aspect-ratio:16/10;background:#1c1a17;max-width:320px;overflow:hidden}.invitation-image-thumb img{object-fit:cover;width:100%;height:100%;display:block}.invitation-image-empty{font-family:var(--serif,Georgia, serif);color:var(--ink-soft);border-radius:var(--radius);text-align:center;background:#00000008;padding:24px;font-size:.9rem;font-style:italic}.invitation-gallery-thumbs{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;display:grid}.invitation-gallery-thumb{gap:4px;display:grid}.invitation-gallery-thumb img{aspect-ratio:4/5;object-fit:cover;border-radius:var(--radius);border:1px solid var(--line-soft);background:#1c1a17;width:100%;display:block}.invitation-image-inputs{gap:10px;display:grid}.invitation-image-mode-tabs{border:1px solid var(--line);background:var(--bg);border-radius:999px;width:max-content;padding:3px;display:inline-flex}.invitation-image-mode-tabs button{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);cursor:pointer;background:0 0;border:none;border-radius:999px;padding:6px 14px;font-size:.78rem}.invitation-image-mode-tabs button.is-active{background:var(--ink);color:#fff}.invitation-upload-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.invitation-upload-row input[type=text],.invitation-upload-row input:not([type]){border:1px solid var(--line);border-radius:var(--radius);flex:1;min-width:220px;padding:9px 12px}.invitation-upload-row .serif{color:var(--ink-soft);font-size:.85rem}.invitation-builder-actions{gap:10px;display:flex}.status-pill{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;border:1px solid var(--line);color:var(--ink-soft);border-radius:999px;padding:4px 10px;font-size:.7rem}.status-pill.status-published,.status-pill.status-accepted{background:var(--sage);color:#fff;border-color:var(--sage)}.status-pill.status-declined{color:#fff;background:#b6433a;border-color:#b6433a}.status-pill.status-maybe{background:var(--gold);color:#fff;border-color:var(--gold)}.invitation-builder-preview{align-self:start;position:sticky;top:24px}.invitation-preview-frame{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);place-items:center;min-height:540px;padding:24px;display:grid}@keyframes miniSoftZoom{0%{transform:scale(1.06)}to{transform:scale(1)}}@keyframes miniFadeRise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes miniPetalDrift{0%{opacity:0;transform:translateY(-8px)rotate(0)}10%{opacity:.75}90%{opacity:.45}to{opacity:0;transform:translateY(220px)rotate(400deg)}}@keyframes miniCandleFlicker{0%,to{opacity:.82;transform:scale(1)translateY(0)}25%{opacity:.94;transform:scale(1.04)translateY(-3px)}55%{opacity:.74;transform:scale(.97)translateY(2px)}78%{opacity:.9;transform:scale(1.02)translateY(-1px)}}@keyframes miniGardenLeft{0%{transform:perspective(600px)rotateY(0)}to{transform:perspective(600px)rotateY(-72deg)}}@keyframes miniGardenRight{0%{transform:perspective(600px)rotateY(0)}to{transform:perspective(600px)rotateY(72deg)}}@keyframes miniShimmer{0%{transform:translate(-200%)}to{transform:translate(350%)}}.invitation-mini{background:var(--inv-bg,var(--cream));width:100%;max-width:380px;color:var(--inv-text,var(--ink));font-family:var(--inv-body-font,var(--sans));border-radius:10px;flex-direction:column;justify-content:center;align-items:center;min-height:320px;display:flex;position:relative;overflow:hidden}.invitation-mini.is-compact{max-width:100%;min-height:182px}.invitation-mini:not(.is-compact){border-radius:0;width:100%;max-width:100%;min-height:540px;padding:32px 20px 52px}.invitation-photo-layer{background-position:50%;background-size:cover;position:absolute;inset:0}.invitation-floral-layer{pointer-events:none;z-index:1;position:absolute;inset:0}.invitation-petal-layer{pointer-events:none;z-index:2;position:absolute;inset:0;overflow:hidden}.invitation-petal{background:var(--inv-primary,#a3543c);opacity:0;border-radius:50% 12%;width:7px;height:11px;animation:6s ease-in infinite miniPetalDrift;position:absolute}.invitation-petal-1{animation-duration:5.8s;animation-delay:0s;left:12%}.invitation-petal-2{animation-duration:7.2s;animation-delay:1.1s;left:28%}.invitation-petal-3{animation-duration:6s;animation-delay:2.3s;left:52%}.invitation-petal-4{animation-duration:8.1s;animation-delay:.5s;left:70%}.invitation-petal-5{animation-duration:5.2s;animation-delay:1.7s;left:86%}.invitation-mini.is-compact .invitation-petal{width:5px;height:8px}.invitation-reveal-line{background:var(--inv-accent,#cba37e);width:36px;height:1px;margin:3px auto}.invitation-mini-card{background:var(--inv-card,#fff);text-align:center;z-index:3;border-radius:6px;gap:5px;padding:16px 18px;display:grid;position:relative;box-shadow:0 8px 32px #00000021}.invitation-mini:not(.is-compact) .invitation-mini-card{gap:10px;width:100%;max-width:360px;padding:28px 32px}.invitation-mini-card strong{font-family:var(--inv-heading-font,var(--serif));color:var(--inv-text);font-size:1.15rem;font-weight:500;line-height:1.1}.invitation-mini:not(.is-compact) .invitation-mini-card strong{font-size:2rem}.invitation-mini-card small{color:var(--inv-muted,var(--muted));font-size:.72rem}.invitation-mini:not(.is-compact) .invitation-mini-card small{font-size:.9rem}.invitation-mini-eyebrow{letter-spacing:.28em;text-transform:uppercase;color:var(--inv-muted,var(--muted));font-size:.58rem}.invitation-mini:not(.is-compact) .invitation-mini-eyebrow{letter-spacing:.32em;font-size:.68rem}.invitation-mini-script{font-family:var(--inv-script-font,var(--script));color:var(--inv-primary,var(--terracotta));font-size:1.05rem;line-height:1}.invitation-mini:not(.is-compact) .invitation-mini-script{font-size:1.8rem}.invitation-mini-message{font-family:var(--inv-heading-font,var(--serif));color:var(--inv-muted);max-width:32ch;margin:4px 0 0;font-size:.88rem;font-style:italic;line-height:1.5}.invitation-mini-detail{color:var(--inv-muted);letter-spacing:.14em;text-transform:uppercase;font-size:.76rem}.invitation-preview-frame{border:1px solid var(--line);border-radius:var(--radius);place-items:stretch stretch;min-height:540px;padding:0;display:grid;overflow:hidden}.invitation-preview-footer{justify-content:space-between;align-items:center;gap:12px;padding:10px 2px 0;display:flex}.invitation-preview-note{color:var(--ink-soft);margin:0;font-size:.8rem}.invitation-template-card.is-active{border-color:var(--terracotta);box-shadow:0 0 0 2px color-mix(in srgb, var(--terracotta) 25%, transparent), 0 8px 24px #00000014;transform:translateY(-2px)}.invitation-mini-fade-floral{background:linear-gradient(150deg, color-mix(in srgb, var(--inv-bg,#fdf6ef) 88%, var(--inv-primary,#a3543c) 12%), var(--inv-bg,#fdf6ef) 45%, color-mix(in srgb, var(--inv-bg,#fdf6ef) 84%, var(--inv-accent,#cba37e) 16%));padding:22px 18px}.invitation-mini-fade-floral .invitation-photo-layer{opacity:.32;animation:20s ease-in-out infinite alternate miniSoftZoom}.invitation-mini-fade-floral .invitation-photo-layer:after{content:"";background:linear-gradient(#00000008,#00000047);position:absolute;inset:0}.invitation-mini-fade-floral .invitation-floral-layer:before{content:"";background:radial-gradient(ellipse at 10% 10%, var(--inv-primary,#a3543c), transparent 65%);opacity:.16;width:72px;height:72px;position:absolute;top:-4px;left:-4px}.invitation-mini-fade-floral .invitation-floral-layer:after{content:"";background:radial-gradient(ellipse at 90% 90%, var(--inv-accent,#cba37e), transparent 65%);opacity:.2;width:72px;height:72px;position:absolute;bottom:-4px;right:-4px}.invitation-mini-fade-floral:not(.is-compact) .invitation-mini-card{opacity:0;animation:.9s .3s forwards miniFadeRise}.invitation-mini-blossom-overlay{padding:20px 16px}.invitation-mini-blossom-overlay .invitation-mini-photos{grid-template-columns:1fr 1fr 1fr;display:grid;position:absolute;inset:0}.invitation-mini-blossom-overlay .invitation-mini-photos span{background-position:50%;background-size:cover;background-color:var(--inv-accent,#cba37e);background-image:linear-gradient(180deg, var(--inv-accent,#cba37e), color-mix(in srgb, var(--inv-primary,#a3543c) 35%, transparent));opacity:.46;transition:opacity .6s}.invitation-mini-blossom-overlay:hover .invitation-mini-photos span{opacity:.56}.invitation-mini-monogram-reveal{grid-template-columns:1fr 1fr;min-height:200px;padding:0;display:grid}.invitation-mini-monogram-reveal.is-compact{min-height:182px}.invitation-mini-monogram-reveal:not(.is-compact){min-height:540px;padding:0}.invitation-mini-monogram-reveal .invitation-mini-half{background:linear-gradient(135deg, var(--inv-accent,#cba37e), color-mix(in srgb, var(--inv-primary,#a3543c) 60%, #2b2017 40%));background-position:50%;background-size:cover;position:relative}.invitation-mini-monogram-reveal .invitation-mini-half:after{content:"";background:linear-gradient(90deg,#0000 70%,#ffffff14);position:absolute;inset:0}.invitation-mini-monogram-reveal .invitation-mini-card{box-shadow:none;background:var(--inv-card,#fff);border-radius:0;flex-direction:column;justify-content:center;align-items:center;min-height:100%;padding:18px 14px;display:flex}.invitation-mini-monogram-reveal:not(.is-compact) .invitation-mini-card{padding:40px 32px}.invitation-mini-monogram{font-family:var(--inv-script-font,var(--script));color:var(--inv-primary,var(--terracotta));letter-spacing:.02em;font-size:2.2rem;line-height:1}.invitation-mini-monogram-reveal.is-compact .invitation-mini-monogram{font-size:1.5rem}.invitation-mini-monogram-reveal:not(.is-compact) .invitation-mini-monogram{opacity:0;font-size:3.4rem;animation:1s .2s forwards miniFadeRise}.invitation-mini-monogram-reveal:not(.is-compact) .invitation-mini-card strong{opacity:0;animation:.9s .6s forwards miniFadeRise}.invitation-mini-monogram-reveal:not(.is-compact) .invitation-mini-card small{opacity:0;animation:.9s .85s forwards miniFadeRise}.invitation-mini-polaroid-stack{background:linear-gradient(180deg, var(--inv-bg,#fdf6ef), color-mix(in srgb, var(--inv-bg,#fdf6ef) 78%, var(--inv-accent,#cba37e) 22%));padding:20px 16px}.invitation-mini-stack{place-items:center;display:grid;position:absolute;inset:0}.invitation-polaroid{background:#fff 50%/cover;border:1px solid #0000000d;padding:6px 6px 22px;position:absolute;box-shadow:0 5px 18px #00000021}.invitation-mini.is-compact .invitation-polaroid{width:62px;height:78px;padding:4px 4px 18px}.invitation-mini:not(.is-compact) .invitation-polaroid{width:100px;height:126px;padding:8px 8px 32px}.invitation-polaroid-1{background-color:var(--inv-accent,#cba37e)}.invitation-polaroid-2{background-color:var(--inv-card,#fff)}.invitation-polaroid-3{background-color:color-mix(in srgb, var(--inv-primary,#a3543c) 20%, white);opacity:.8}.invitation-mini.is-compact .invitation-polaroid-1{transform:translate(-46px,-8px)rotate(-10deg)}.invitation-mini.is-compact .invitation-polaroid-2{transform:translate(44px,10px)rotate(8deg)}.invitation-mini.is-compact .invitation-polaroid-3{transform:translateY(44px)rotate(-3deg)}.invitation-mini:not(.is-compact) .invitation-polaroid-1{opacity:0;animation:.9s cubic-bezier(.2,.6,.2,1) .1s forwards miniPolaroidFan1;transform:translate(-50%,-50%)rotate(0)}.invitation-mini:not(.is-compact) .invitation-polaroid-2{opacity:0;animation:.95s cubic-bezier(.2,.6,.2,1) .25s forwards miniPolaroidFan2;transform:translate(-50%,-50%)rotate(0)}.invitation-mini:not(.is-compact) .invitation-polaroid-3{opacity:0;animation:1s cubic-bezier(.2,.6,.2,1) .38s forwards miniPolaroidFan3;transform:translate(-50%,-50%)rotate(0)}@keyframes miniPolaroidFan1{0%{opacity:0;transform:translate(-50%,-50%)rotate(0)}60%{opacity:1}to{opacity:1;transform:translate(calc(-50% - 110px),calc(-50% - 8px))rotate(-11deg)}}@keyframes miniPolaroidFan2{0%{opacity:0;transform:translate(-50%,-50%)rotate(0)}60%{opacity:1}to{opacity:1;transform:translate(calc(110px - 50%),calc(14px - 50%))rotate(9deg)}}@keyframes miniPolaroidFan3{0%{opacity:0;transform:translate(-50%,-50%)rotate(0)}60%{opacity:1}to{opacity:1;transform:translate(-50%,calc(80px - 50%))rotate(-3deg)}}.invitation-mini:not(.is-compact) .invitation-mini-stack+.invitation-mini-card{opacity:0;animation:.9s .9s forwards miniFadeRise}.invitation-mini-candlelight-suite{color:#f5e6d0;background:#1c0e07;padding:22px 18px}.invitation-mini-candlelight-suite .invitation-candlelight-hero{opacity:.14}.invitation-candle-glow{z-index:1;background:radial-gradient(ellipse 72% 80% at 50% 100%, color-mix(in srgb, var(--inv-primary,#a3543c) 50%, #e07030 50%) 0%, #a3543c38 42%, transparent 72%);animation:3.4s ease-in-out infinite miniCandleFlicker;position:absolute;inset:0}.invitation-mini-candlelight-suite .invitation-mini-card:after{content:"";background:linear-gradient(90deg,#0000,#ffdca0bf,#0000);width:50%;height:1px;animation:3.6s 2s infinite miniShimmer;position:absolute;top:0;left:-60%}.invitation-mini-candlelight-suite .invitation-mini-card{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#1c0e07b8;border:1px solid #cba37e38;overflow:hidden}.invitation-mini-candlelight-suite .invitation-mini-card strong{color:#f0dfc0}.invitation-mini-candlelight-suite .invitation-mini-card small{color:#f0dfc0a6}.invitation-mini-candlelight-suite .invitation-mini-eyebrow{color:#cba37ea6}.invitation-mini-candlelight-suite .invitation-mini-script{color:var(--inv-accent,#cba37e)}.invitation-mini-candlelight-suite:not(.is-compact) .invitation-mini-card{opacity:0;animation:1.1s .6s forwards miniFadeRise}.invitation-mini-garden-gate{background:linear-gradient(150deg, color-mix(in srgb, var(--inv-bg,#fdf6ef) 85%, #c8d8b8 15%), var(--inv-bg,#fdf6ef) 55%, color-mix(in srgb, var(--inv-bg,#fdf6ef) 88%, #b8c8a8 12%));padding:20px 16px}.invitation-garden-bg{opacity:.28;animation:24s ease-in-out infinite alternate miniSoftZoom}.invitation-garden-bg:after{content:"";background:linear-gradient(180deg, color-mix(in srgb, var(--inv-bg,#fdf6ef) 60%, transparent), transparent 50%, color-mix(in srgb, var(--inv-bg,#fdf6ef) 40%, transparent));position:absolute;inset:0}.invitation-garden-frame-compact{border:1px solid color-mix(in srgb, var(--inv-accent,#cba37e) 50%, transparent);pointer-events:none;z-index:1;border-radius:4px;position:absolute;inset:6px}.invitation-garden-frame-compact:before{content:"❧";color:var(--inv-accent,#cba37e);background:var(--inv-bg,#fdf6ef);opacity:.55;padding:0 6px;font-size:1rem;position:absolute;top:-10px;left:50%;transform:translate(-50%)}.invitation-garden-frame-compact:after{content:"❧";color:var(--inv-accent,#cba37e);background:var(--inv-bg,#fdf6ef);opacity:.55;padding:0 6px;font-size:1rem;position:absolute;bottom:-10px;left:50%;transform:translate(-50%)scaleX(-1)}.invitation-garden-door{z-index:2;width:50%;position:absolute;top:0;bottom:0}.invitation-garden-door-left{transform-origin:0;background:linear-gradient(90deg, var(--inv-card,#fff), color-mix(in srgb, var(--inv-card,#fff) 88%, var(--inv-accent,#cba37e) 12%));border-right:1px solid #0000000d;animation:1.8s cubic-bezier(.5,0,.2,1) .2s forwards miniGardenLeft;left:0}.invitation-garden-door-left:after{content:"❧";color:var(--inv-accent,#cba37e);opacity:.35;font-size:1.6rem;position:absolute;top:50%;right:20px;transform:translateY(-50%)scaleX(-1)}.invitation-garden-door-right{transform-origin:100%;background:linear-gradient(-90deg, var(--inv-card,#fff), color-mix(in srgb, var(--inv-card,#fff) 88%, var(--inv-accent,#cba37e) 12%));border-left:1px solid #0000000d;animation:1.8s cubic-bezier(.5,0,.2,1) .2s forwards miniGardenRight;right:0}.invitation-garden-door-right:after{content:"❧";color:var(--inv-accent,#cba37e);opacity:.35;font-size:1.6rem;position:absolute;top:50%;left:20px;transform:translateY(-50%)}.invitation-mini-garden-gate:not(.is-compact) .invitation-mini-card{opacity:0;animation:.9s 1.6s forwards miniFadeRise}@media (prefers-reduced-motion:reduce){.invitation-photo-layer,.invitation-candle-glow,.invitation-petal,.invitation-garden-door,.invitation-mini-fade-floral .invitation-mini-card,.invitation-mini-blossom-overlay .invitation-mini-card,.invitation-mini-monogram-reveal .invitation-mini-monogram,.invitation-mini-monogram-reveal .invitation-mini-card strong,.invitation-mini-monogram-reveal .invitation-mini-card small,.invitation-mini-polaroid-stack .invitation-polaroid,.invitation-mini-polaroid-stack .invitation-mini-card,.invitation-mini-candlelight-suite .invitation-mini-card,.invitation-mini-garden-gate .invitation-mini-card,.invitation-mini-candlelight-suite .invitation-mini-card:after{opacity:1!important;animation:none!important;transform:none!important}.invitation-mini.is-compact .invitation-polaroid-1{transform:translate(-46px,-8px)rotate(-10deg)}.invitation-mini.is-compact .invitation-polaroid-2{transform:translate(44px,10px)rotate(8deg)}.invitation-mini.is-compact .invitation-polaroid-3{transform:translateY(44px)rotate(-3deg)}.invitation-mini:not(.is-compact) .invitation-polaroid-1{transform:translate(calc(-50% - 110px),calc(-50% - 8px))rotate(-11deg)}.invitation-mini:not(.is-compact) .invitation-polaroid-2{transform:translate(calc(110px - 50%),calc(14px - 50%))rotate(9deg)}.invitation-mini:not(.is-compact) .invitation-polaroid-3{transform:translate(-50%,calc(80px - 50%))rotate(-3deg)}.invitation-garden-door-left{transform:perspective(600px)rotateY(-72deg)}.invitation-garden-door-right{transform:perspective(600px)rotateY(72deg)}}.invitation-recipients-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:start;gap:18px;display:grid}.invitation-recipients-section,.invitation-recipients-links{gap:14px;padding:22px 24px;display:grid}.invitation-recipients-head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:14px;display:flex}.invitation-recipients-actions{flex-wrap:wrap;gap:8px;display:flex}.invitation-recipients-list{gap:16px;display:grid}.invitation-recipients-group{gap:6px;display:grid}.invitation-recipients-group h3{letter-spacing:.06em;color:var(--ink-soft);text-transform:uppercase;font-size:.92rem}.invitation-recipient-row{background:var(--paper);border:1px solid var(--line-soft);border-radius:var(--radius);grid-template-columns:18px 1fr auto;align-items:center;gap:12px;padding:10px 12px;display:grid}.invitation-recipient-row strong{font-family:var(--serif);font-size:1.02rem}.invitation-recipient-row span{color:var(--ink-soft);font-size:.8rem}.invitation-link-list{gap:8px;display:grid}.invitation-link-row{background:var(--paper);border:1px solid var(--line-soft);border-radius:var(--radius);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.invitation-link-row strong{font-family:var(--serif);font-size:1rem;display:block}.invitation-link-row span{color:var(--ink-soft);font-size:.78rem}@media (width<=1080px){.invitation-builder-grid,.invitation-recipients-grid{grid-template-columns:1fr}.invitation-builder-preview{position:static}}@media (width<=720px){.invitation-form-grid,.invitation-color-grid,.invitation-template-grid{grid-template-columns:1fr}.invitation-form-grid label.span-2{grid-column:span 1}}.proposed-guests-grid{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:18px;display:grid}.proposed-guests-form-card,.proposed-guests-list-card{gap:14px;padding:22px 24px;display:grid}.proposed-guests-form{gap:12px;display:grid}.proposed-guests-form label{color:var(--ink-soft);gap:4px;font-size:.78rem;display:grid}.proposed-guests-form input,.proposed-guests-form select,.proposed-guests-form textarea{border:1px solid var(--line);background:var(--paper);border-radius:var(--radius);padding:9px 12px;font-size:.92rem}.proposed-guests-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.proposed-guests-list{gap:16px;display:grid}.proposed-guests-section{gap:8px;display:grid}.proposed-guests-section h3{letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);font-size:.85rem}.proposed-guest-row{background:var(--paper);border:1px solid var(--line-soft);border-radius:var(--radius);grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding:10px 12px;display:grid}.proposed-guest-row strong{font-family:var(--serif);font-size:1.02rem;display:block}.proposed-guest-row span{color:var(--ink-soft);font-size:.78rem}.proposed-guest-row small{color:var(--muted);font-size:.75rem;display:block}@media (width<=1080px){.proposed-guests-grid{grid-template-columns:1fr}}@media (width<=720px){.proposed-guests-row{grid-template-columns:1fr}}.status-pill.status-proposed{background:var(--gold);color:#fff;border-color:var(--gold)}.status-pill.status-rejected{background:var(--terracotta-deep);color:#fff;border-color:var(--terracotta-deep)}.document-board{gap:18px;display:grid}.document-uploader{background:var(--paper,#fcf8f1);border:1px solid #2a211c24;border-radius:18px;padding:22px 24px;transition:border-color .16s,background .16s}.document-uploader.is-drag-over{border-color:var(--terracotta);background:#e8c9bd40}.document-uploader-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.document-uploader-head h2{color:var(--ink);margin:0 0 4px;font-size:22px}.document-uploader-head p{color:var(--ink-soft,#6b5e54);max-width:460px;margin:0;font-size:14px}.document-uploader-hint{font-family:var(--mono);letter-spacing:.08em;color:var(--ink-soft,#6b5e54);text-transform:uppercase;font-size:10.5px}.document-uploader-form{gap:14px;display:grid}.document-dropzone{cursor:pointer;background:#f7f1eab3;border:1.5px dashed #2a211c38;border-radius:14px;place-items:center;min-height:110px;padding:28px 18px;transition:border-color .12s,background .12s;display:grid}.document-dropzone:hover,.document-dropzone:focus-visible{border-color:var(--terracotta);background:#e8c9bd4d;outline:none}.document-dropzone.has-file{background:var(--cream);border-style:solid}.document-dropzone-empty{text-align:center;gap:4px;display:grid}.document-dropzone-empty strong{color:var(--ink);font-size:18px}.document-dropzone-empty span{color:var(--ink-soft,#6b5e54);font-size:12.5px}.document-dropzone-file{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;display:flex}.document-dropzone-file strong{font-family:var(--serif);color:var(--ink);font-size:16px}.document-dropzone-file span{font-family:var(--mono);color:var(--ink-soft,#6b5e54);font-size:11px}.document-uploader-meta{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:10px;display:grid}.document-uploader-meta label{gap:6px;display:grid}.document-uploader-meta input,.document-uploader-meta select{background:var(--cream);color:var(--ink);border:1px solid #2a211c2e;border-radius:10px;outline:none;padding:10px 12px;font-size:14px}.document-uploader-meta input:focus,.document-uploader-meta select:focus{border-color:var(--terracotta)}.document-uploader-progress{gap:6px;display:grid}.document-progress-track{background:#2a211c1f;border-radius:999px;height:6px;overflow:hidden}.document-progress-track b{background:var(--terracotta);height:100%;transition:width .2s;display:block}.document-uploader-progress span{font-family:var(--mono);color:var(--ink-soft,#6b5e54);font-size:11px}.document-uploader-actions{justify-content:flex-end;display:flex}.document-list{padding:0;overflow:hidden}.document-list-head{background:#f7f1eab3;border-bottom:1px solid #2a211c1f;justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 22px;display:flex}.document-list-head strong{color:var(--ink);font-size:16px;display:block}.document-list-head span{color:var(--ink-soft,#6b5e54);max-width:540px;font-size:13px}.document-rows{flex-direction:column;display:flex}.document-row{border-bottom:1px solid #2a211c1a;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px 22px;transition:background .12s;display:grid}.document-row:last-child{border-bottom:0}.document-row:hover{background:#f7f1ea80}.document-row.is-pending{opacity:.7;pointer-events:none}.document-row-icon{background:#e8c9bd59;border-radius:10px;place-items:center;width:40px;height:40px;font-size:20px;display:grid}.document-row-body{gap:4px;min-width:0;display:grid}.document-row-title{gap:2px;min-width:0;display:grid}.document-row-title strong{font-family:var(--serif);color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:16px;line-height:1.2;overflow:hidden}.document-row-title span{color:var(--ink-soft,#6b5e54);font-size:12.5px}.document-row-meta{font-family:var(--mono);letter-spacing:.06em;color:var(--ink-soft,#6b5e54);flex-wrap:wrap;gap:12px;font-size:10.5px;display:flex}.document-row-meta-empty{font-style:italic}.document-row-controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.btn-compact{padding:7px 14px!important;font-size:12px!important}.status-pill{background:var(--cream);color:var(--ink);font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;border:1px solid #2a211c2e;border-radius:999px;align-items:center;gap:6px;padding:4px 12px;font-size:10.5px;display:inline-flex}.status-pill.status-success{color:#48643c;background:#96b48240;border-color:#6e915c}.status-pill.status-warning{border-color:var(--gold,#b89968);color:#6f5b3a;background:#e5b86940}.status-pill.status-accent{border-color:var(--terracotta);color:var(--terracotta-deep,#8a4a30);background:#e8c9bd59}.btn-link.is-confirming{color:var(--terracotta-deep,#8a4a30);font-weight:600}.empty-panel{text-align:center;color:var(--ink-soft,#6b5e54);padding:26px}.form-error{color:var(--terracotta-deep,#8a4a30);margin:4px 0 0;font-size:13px}@media (width<=720px){.document-uploader{padding:18px}.document-uploader-meta{grid-template-columns:1fr}.document-row{grid-template-columns:36px minmax(0,1fr);padding:14px 16px}.document-row-controls{grid-column:2/-1;justify-content:flex-start}}
