:root{--paper:#f7f7f2;--white:#fff;--ink:#22251f;--muted:#70766b;--line:#e4e6dd;--dark:#1c1e1b;--lime:#e7efb1;--sage:#e5ebe1;--peach:#f6e6dc;--green:#46623d;--radius:17px;--shadow:0 8px 30px #29331d06;font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--ink);font-synthesis:none}
*{box-sizing:border-box}body{margin:0;background:var(--paper);font-size:14px;line-height:1.5}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit;text-decoration:none}button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #819e4b;outline-offset:4px}.svg-defs{position:absolute;width:0;height:0;overflow:hidden}.icon{height:20px;width:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.sidebar{position:fixed;inset:0 auto 0 0;width:224px;background:var(--dark);color:#f7f8ef;padding:32px 22px;display:flex;flex-direction:column;z-index:5}.brand{font-size:23px;font-weight:650;letter-spacing:-1.2px;line-height:1.2;padding:0 7px}.brand span{display:block;letter-spacing:3.5px;font-size:9px;color:#afb3a7;margin-top:13px;font-weight:400}.nav-caption{font-size:8px;letter-spacing:1.7px;color:#909687;margin:59px 7px 18px}nav{display:flex;flex-direction:column;gap:7px}.nav-button{display:flex;align-items:center;gap:13px;padding:14px 15px;border:0;background:none;color:#aeb4a7;border-radius:9px;text-align:left;font-size:13px;font-weight:500}.nav-button:hover{background:#2b2e28;color:white}.nav-button.active{background:var(--lime);color:var(--ink)}.sidebar-bottom{margin-top:auto}.founder-link{background:none;border:1px solid #42473c;border-radius:10px;color:#d9dfcb;font-size:10px;width:100%;padding:13px 10px;display:flex;gap:7px;align-items:center;margin:25px 0}.founder-link span:first-child{color:var(--lime);font-size:19px}.founder-link span:last-child{margin-left:auto}.sidebar-couple{border-top:1px solid #383c32;padding-top:23px;display:flex;align-items:center;gap:10px;font-size:12px}.avatar-pair{display:flex;padding-right:7px}.avatar{width:30px;height:30px;border-radius:50%;background:#e5dfd0;color:#34372c;display:inline-grid;place-items:center;font-size:10px;border:2px solid var(--dark)}.avatar+.avatar{margin-left:-7px;background:#cbd7bd}.sidebar-bottom small{display:block;color:#89917e;font-size:10px;padding:11px 0 0 4px}.workspace{margin-left:224px;min-height:100vh;display:flex;flex-direction:column}.topbar{height:76px;border-bottom:1px solid var(--line);padding:0 45px;display:flex;align-items:center;justify-content:space-between;gap:15px}.breadcrumb{font-size:9px;letter-spacing:1.4px;color:#73786a}.top-actions{display:flex;align-items:center;gap:20px}.preview-pill{font-size:10px;border:1px solid var(--line);padding:6px 10px;border-radius:20px;white-space:nowrap;color:#646d58;display:flex;align-items:center;gap:6px}.preview-pill>span{width:5px;height:5px;border-radius:50%;background:#8b9c6a}.quiet-button{border:0;background:none;font-size:11px;display:flex;align-items:center;gap:8px;padding:5px}.quiet-button .icon{width:15px;height:15px}.mobile-brand{display:none}main{padding:42px 45px 30px;max-width:1480px;width:100%;margin:auto;flex:1}main:focus{outline:none}.eyebrow{font-size:9px;letter-spacing:2px;color:var(--muted);text-transform:uppercase;margin:0 0 12px}.page-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px}.page-heading h1{font-size:clamp(31px,3.3vw,45px);letter-spacing:-1.8px;line-height:1.12;font-weight:600;margin:0 0 12px}.page-heading p:not(.eyebrow){color:var(--muted);margin:0;font-size:13px}.button{border:1px solid var(--line);padding:11px 17px;border-radius:9px;background:white;font-size:12px;font-weight:550;display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;transition:transform .15s,background .15s}.button:hover{transform:translateY(-1px);background:#f0f2e7}.button.primary{background:var(--ink);border-color:var(--ink);color:white}.button.primary:hover{background:#414936}.button.lime{background:var(--lime);border-color:var(--lime)}.button .icon{width:16px;height:16px}.button.small{padding:8px 12px;font-size:11px}.button.text{border:0;background:none;color:var(--green);padding:5px 0;justify-content:start}.hero{display:grid;grid-template-columns:1.5fr 1fr;background:var(--sage);border:1px solid #dce3d5;border-radius:var(--radius);overflow:hidden;min-height:233px;margin-bottom:23px;position:relative}.hero-copy{padding:29px 32px;z-index:1}.hero h2{font-size:29px;letter-spacing:-1px;font-weight:500;margin:0 0 12px;line-height:1.15}.hero h2 em{font-family:Georgia,serif;font-weight:400}.hero p{font-size:12px;color:#67725e;margin:0 0 22px;max-width:320px}.hero-art{position:relative;display:grid;place-items:center;min-height:230px}.ring-orbit{position:absolute;width:210px;height:210px;border:1px solid #c6d3ba;border-radius:50%}.ring-orbit:after{content:'';position:absolute;border:1px solid #c6d3ba;border-radius:50%;inset:21px}.countdown{height:153px;width:153px;border-radius:50%;background:#f7f9f1;border:1px solid #d1d9c8;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1;box-shadow:0 8px 24px #7183600a}.countdown strong{font-size:45px;font-weight:500;letter-spacing:-2px;line-height:1.1}.countdown span{font-size:9px;letter-spacing:1.6px;margin:6px 0}.countdown small{font-size:10px;color:var(--muted)}.orbit-star{position:absolute;top:35px;right:30px;color:#71845b;font-size:31px}.orbit-star.lower{top:auto;bottom:31px;left:24px;font-size:19px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:25px}.stat{border:1px solid var(--line);border-radius:13px;padding:20px 22px;background:#fff;box-shadow:var(--shadow)}.stat-label{color:var(--muted);font-size:10px;display:flex;align-items:center;justify-content:space-between;margin-bottom:11px}.stat-label .icon{width:16px;height:16px;color:#81906d}.stat strong{font-size:25px;font-weight:550;letter-spacing:-.8px}.stat small{font-size:10px;color:var(--muted);display:block;margin-top:7px}.progress-track{height:5px;background:#eceee5;border-radius:5px;overflow:hidden;margin-top:13px}.progress-track span{display:block;height:100%;background:#a5b97d;border-radius:5px;max-width:100%;transition:width .35s}.home-grid{display:grid;grid-template-columns:1.45fr 1fr;gap:22px}.panel{background:white;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.panel-head{padding:22px 24px 17px;display:flex;justify-content:space-between;align-items:start;gap:12px}.panel-head h2,.section-title{font-size:17px;letter-spacing:-.4px;font-weight:550;margin:0}.panel-head p{font-size:11px;color:var(--muted);margin:5px 0 0}.badge{display:inline-block;font-size:9px;border:1px solid var(--line);border-radius:20px;padding:4px 8px;white-space:nowrap;color:#6e7664}.badge.green{background:#eef3e3;border-color:#dce6c9;color:#4f6e3e}.badge.peach{background:var(--peach);border-color:#ebd8c9;color:#8b5e40}.task-row{display:flex;gap:13px;align-items:center;padding:17px 24px;border-top:1px solid #eeefe8;transition:background .2s}.task-row:hover{background:#fafbf6}.check-button{appearance:none;border:1.5px solid #cdd3c3;border-radius:50%;width:23px;height:23px;background:white;display:grid;place-items:center;padding:3px;flex-shrink:0;transition:.2s}.check-button.done{background:var(--green);border-color:var(--green);color:white}.check-button .icon{width:15px;height:15px}.task-title{font-size:12px;font-weight:500;margin:0}.task-meta{font-size:10px;color:var(--muted);margin:5px 0 0}.task-row.is-done .task-title{text-decoration:line-through;color:#8e9585}.task-row .badge{margin-left:auto}.nudge{padding:23px;background:var(--peach);border:1px solid #eaded3;border-radius:var(--radius)}.nudge .icon{color:#8c6e51;margin-bottom:10px}.nudge h3{font-size:19px;letter-spacing:-.4px;font-weight:500;margin:0 0 10px}.nudge p{font-size:12px;color:#85715f;margin:0 0 19px}.mini-progress{margin-top:17px;padding:22px;background:white;border:1px solid var(--line);border-radius:var(--radius)}.mini-progress h3{font-size:12px;font-weight:500;margin:0 0 10px}.mini-progress p{font-size:11px;color:var(--muted);margin-bottom:0}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:0 0 22px}.segmented{display:inline-flex;gap:5px;background:#eceee6;border:1px solid #e2e5d9;padding:4px;border-radius:9px}.segmented button{font-size:11px;background:none;border:0;padding:8px 14px;border-radius:6px;color:var(--muted)}.segmented button.active{background:white;color:var(--ink);box-shadow:0 1px 3px #22222210}.search{width:260px;border:1px solid var(--line);background:white;border-radius:9px;padding:11px 14px;font-size:12px}.empty{padding:35px;text-align:center;color:var(--muted)}.empty h3{color:var(--ink);font-weight:500}.money-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:22px}.money-summary{background:var(--sage);padding:25px;border-radius:var(--radius);border:1px solid #dae3d1}.money-summary h2{font-size:35px;font-weight:500;letter-spacing:-1.5px;margin:8px 0}.money-summary p{font-size:12px;color:var(--muted)}.money-split{display:flex;justify-content:space-between;gap:20px;margin-top:22px;border-top:1px solid #ccd6c0;padding-top:18px}.money-split span{font-size:10px;color:var(--muted)}.money-split strong{display:block;font-size:18px;margin-top:5px;font-weight:500}.supplier-row{padding:19px 24px;border-top:1px solid #eeefe8;display:flex;align-items:center;gap:12px}.supplier-row .supplier-icon{height:38px;width:38px;border-radius:11px;background:#f1f3e9;display:grid;place-items:center;flex-shrink:0}.supplier-row .supplier-icon .icon{width:17px;height:17px;color:#6a7b56}.supplier-info{flex:1}.supplier-info h3{font-size:12px;margin:0 0 4px;font-weight:500}.supplier-info p{font-size:10px;color:var(--muted);margin:0}.supplier-amount{text-align:right}.supplier-amount strong{display:block;font-size:13px;font-weight:550}.supplier-amount small{font-size:10px;color:var(--muted)}.icon-button{padding:7px;border:0;background:none;border-radius:6px;color:var(--muted)}.icon-button:hover{background:#edf1e3}.icon-button .icon{width:15px;height:15px}.payment-list{padding:0 23px 8px}.payment-row{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:14px 0;font-size:11px;gap:10px}.payment-row small{display:block;color:var(--muted);font-size:10px;margin-top:4px}.guest-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.guest-card{display:flex;align-items:center;gap:13px;padding:20px;border:1px solid var(--line);background:white;border-radius:13px}.guest-avatar{height:37px;width:37px;border-radius:50%;display:grid;place-items:center;background:#ece9df;color:#81775e;font-size:12px;flex-shrink:0}.guest-card:nth-child(3n+2) .guest-avatar{background:#e5ecdf;color:#6e8158}.guest-info{flex:1;min-width:0}.guest-info h3{font-size:12px;font-weight:500;margin:0 0 4px}.guest-info p{font-size:10px;color:var(--muted);margin:0}.guest-card select{font-size:10px;max-width:110px;border:1px solid var(--line);padding:7px;border-radius:20px;background:#f8faf2;color:#5f7152}.guest-card .icon-button{padding:4px}.section-gap{margin-top:26px}.timeline{position:relative;max-width:760px}.timeline:before{content:'';position:absolute;left:69px;top:12px;bottom:30px;width:1px;background:#d9dece}.event{position:relative;display:grid;grid-template-columns:55px 1fr;gap:30px;margin-bottom:12px}.event-time{padding-top:22px;font-size:12px;color:#6d775e}.event:after{content:'';position:absolute;left:64px;top:26px;border:3px solid var(--paper);width:11px;height:11px;border-radius:50%;background:#91a46d;box-sizing:content-box}.event-card{padding:18px 22px;background:white;border:1px solid var(--line);border-radius:13px;display:flex;align-items:center;gap:15px}.event-card h3{font-size:13px;font-weight:500;margin:0 0 5px}.event-card p{font-size:11px;color:var(--muted);margin:0}.event-card .icon-button{margin-left:auto}.timeline-callout{background:var(--peach);padding:19px 22px;border-radius:13px;font-size:12px;color:#82664e;margin:25px 0}.film-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.film-card{padding:23px;border:1px solid var(--line);background:white;border-radius:15px}.film-card h3{font-size:15px;font-weight:500;margin:10px 0}.film-card p{font-size:12px;color:var(--muted)}.film-card textarea{width:100%;height:100px;border:1px solid var(--line);border-radius:8px;padding:11px;font-size:12px;resize:vertical;background:#fcfcf8}footer{padding:26px 45px 24px;display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:8px;letter-spacing:1.4px;color:#919786;border-top:1px solid var(--line);margin-top:26px}footer>div{display:flex;align-items:center;gap:16px;font-size:9px;letter-spacing:0}footer button{background:none;border:0;color:#7f8872;font-size:9px;padding:0}.footer-sep{margin:0 9px;color:#bdc3b3}dialog{border:1px solid var(--line);border-radius:20px;padding:0;max-width:530px;width:calc(100% - 32px);box-shadow:0 24px 90px #111a1640;color:var(--ink)}dialog::backdrop{background:#18201475;backdrop-filter:blur(4px)}.modal-head{padding:26px 29px 17px;display:flex;align-items:start;justify-content:space-between;gap:18px}.modal-head h2{font-size:25px;letter-spacing:-.8px;font-weight:550;margin:0 0 7px}.modal-head p{font-size:12px;color:var(--muted);margin:0}.close{font-size:22px;line-height:1;padding:2px 5px;border:0;background:none;color:var(--muted)}.modal-body{padding:5px 29px 28px}.field{display:block;font-size:11px;font-weight:500;margin:17px 0}.field input,.field select,.field textarea{width:100%;display:block;margin-top:7px;border:1px solid #dce1d2;background:#fbfcf7;border-radius:8px;padding:11px 12px;font-size:13px;color:var(--ink);min-height:43px}.field textarea{resize:vertical;min-height:80px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.field-grid .field{margin:10px 0}.modal-actions{display:flex;align-items:center;justify-content:end;gap:12px;margin-top:22px}.help{font-size:11px;color:var(--muted);line-height:1.7}.offer-badge{display:inline-block;background:var(--lime);padding:6px 11px;border-radius:20px;font-size:10px}.offer-price{font-size:66px;letter-spacing:-4px;font-weight:500;line-height:1;margin:24px 0 7px}.offer-price small{font-size:12px;letter-spacing:0;color:var(--muted)}.offer-list{padding-left:18px;font-size:12px;color:#606d51;line-height:2.3;margin:20px 0}.notice{padding:13px 15px;background:#f0f2e8;border:1px solid #e0e5d3;border-radius:9px;font-size:11px;color:#687657;margin:16px 0;line-height:1.7}.journey-step{font-size:9px;color:var(--muted);letter-spacing:1.4px;text-transform:uppercase;margin:0 0 12px}.checkout-line{display:flex;justify-content:space-between;font-size:12px;padding:16px 0;border-bottom:1px solid var(--line)}.success-mark{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:var(--lime);margin:15px auto 22px}.success-mark .icon{height:29px;width:29px}.success-text{text-align:center}.error{font-size:11px;color:#9b3e32;margin-top:15px}#toast{position:fixed;left:calc(50% + 112px);bottom:27px;transform:translate(-50%,15px);padding:12px 21px;border:1px solid #d4dfc4;border-radius:12px;box-shadow:0 6px 30px #1c261c18;background:#f1f7e6;color:#435932;opacity:0;pointer-events:none;transition:.25s;z-index:30;font-size:12px;max-width:90%}#toast.visible{opacity:1;transform:translate(-50%,0)}.confetti{position:fixed;width:7px;height:11px;top:40%;left:50%;border-radius:2px;z-index:40;animation:confetti .9s ease-out forwards;pointer-events:none}@keyframes confetti{to{transform:translate(var(--dx),var(--dy)) rotate(var(--rot));opacity:0}}.welcome-banner{background:var(--lime);border:1px solid #d9e49a;border-radius:12px;padding:16px 20px;margin-bottom:23px;font-size:12px;display:flex;justify-content:space-between;gap:12px}.welcome-banner button{background:none;border:0}.danger{color:#a34636}.form-note{border-top:1px solid var(--line);padding-top:12px;font-size:10px;color:var(--muted);margin-top:20px}
@media(min-width:1450px){main{padding-top:50px}.hero{min-height:260px}.hero-copy{padding:36px}.hero h2{font-size:35px}.hero-art{min-height:260px}}
@media(max-width:1100px){.sidebar{width:190px;padding:29px 16px}.brand{font-size:21px}.workspace{margin-left:190px}main{padding:32px 27px}.topbar{padding:0 27px}.top-actions{gap:10px}.home-grid,.money-grid{grid-template-columns:1.2fr 1fr}.stat{padding:17px}.guest-grid{grid-template-columns:1fr}.page-heading h1{font-size:34px}footer{padding:22px 27px;align-items:start}footer>div{flex-wrap:wrap;justify-content:end;gap:8px 12px}#toast{left:calc(50% + 95px)}}
@media(max-width:800px){.home-grid,.money-grid{grid-template-columns:1fr}.home-grid>aside{display:grid;grid-template-columns:1fr 1fr;gap:14px}.mini-progress{margin:0}.stats{gap:10px}.stat-label{font-size:9px}.stat strong{font-size:22px}.stat{padding:16px 14px}.hero-copy{padding:25px}.hero{grid-template-columns:1.3fr 1fr}.hero h2{font-size:25px}.ring-orbit{width:175px;height:175px}.countdown{height:134px;width:134px}.hero-art{min-height:225px}.countdown strong{font-size:40px}.film-grid{grid-template-columns:1fr}.page-heading{align-items:start}.top-actions .quiet-button span{display:none}.preview-pill{font-size:9px}.toolbar{flex-wrap:wrap}}
@media(max-width:600px){.sidebar{inset:auto 0 0;width:100%;height:73px;padding:5px 5px 9px;border-radius:17px 17px 0 0;box-shadow:0 -3px 20px #2222220b}.sidebar .brand,.nav-caption,.sidebar-bottom{display:none}nav{display:grid;grid-template-columns:repeat(5,1fr);gap:2px}.nav-button{display:flex;flex-direction:column;gap:4px;align-items:center;justify-content:center;padding:8px 3px;font-size:9px;border-radius:9px}.nav-button .icon{width:18px;height:18px}.workspace{margin-left:0}.topbar{height:64px;padding:0 20px}.mobile-brand{display:block;font-size:17px;font-weight:650;letter-spacing:-.7px}.breadcrumb{display:none}.top-actions{gap:10px}.preview-pill{font-size:8px;padding:5px 8px}.quiet-button{padding:2px}main{padding:27px 20px 20px}.page-heading{margin-bottom:23px}.page-heading h1{font-size:32px;letter-spacing:-1.4px}.page-heading p:not(.eyebrow){font-size:12px}.page-heading .button{padding:9px 11px;font-size:10px}.hero{grid-template-columns:1.2fr .8fr;min-height:218px}.hero-copy{padding:22px 18px}.hero h2{font-size:24px;letter-spacing:-.8px}.hero p{font-size:10px;margin-bottom:16px}.hero-art{min-height:218px}.hero .button{font-size:10px;padding:9px}.ring-orbit{width:133px;height:133px}.ring-orbit:after{inset:14px}.countdown{width:112px;height:112px}.countdown strong{font-size:34px}.countdown span{font-size:7px}.countdown small{font-size:8px}.orbit-star{top:29px;right:9px;font-size:23px}.orbit-star.lower{left:4px;bottom:25px;font-size:16px}.stats{gap:8px;margin-bottom:20px}.stat{padding:13px 10px;border-radius:11px}.stat-label{font-size:8px;line-height:1.5;min-height:25px;margin-bottom:8px}.stat-label .icon{display:none}.stat strong{font-size:20px}.stat small{font-size:8px}.home-grid>aside{grid-template-columns:1fr}.panel-head{padding:20px 18px 16px}.task-row{padding:16px 18px;gap:11px}.task-title{font-size:11px}.task-meta{font-size:9px}.task-row .badge{font-size:8px;padding:3px 6px}.nudge{padding:22px}.mini-progress{padding:22px}.toolbar{gap:12px}.search{width:100%}.segmented{max-width:100%}.segmented button{font-size:10px;padding:7px 11px}.guest-card{padding:15px 13px;gap:10px}.guest-card select{font-size:9px;max-width:94px}.guest-card .icon-button{padding:2px}.guest-info p{font-size:9px}.supplier-row{padding:17px 16px}.supplier-row .supplier-icon{width:31px;height:31px}.supplier-info h3{font-size:11px}.supplier-amount strong{font-size:12px}.timeline:before{left:54px}.event{grid-template-columns:43px 1fr;gap:23px}.event:after{left:49px}.event-time{font-size:11px}.event-card{padding:17px 16px}.event-card h3{font-size:12px}.event-card p{font-size:10px}footer{padding:20px 20px 96px;flex-direction:column;gap:12px;font-size:7px}footer>div{justify-content:start;gap:12px}#toast{left:50%;bottom:87px;max-width:calc(100% - 35px);width:max-content;font-size:11px}.modal-head{padding:23px 22px 14px}.modal-body{padding:3px 22px 24px}.modal-head h2{font-size:24px}.field-grid{gap:10px}.money-summary{padding:22px}.money-split{gap:12px}.money-split strong{font-size:16px}.money-split span{font-size:9px}.welcome-banner{font-size:11px}.guest-info h3{font-size:11px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}.confetti{display:none}}
@media print{.sidebar,.topbar,footer,.button,.toolbar,.icon-button,.preview-pill,#toast,dialog{display:none!important}.workspace{margin:0}main{padding:15px}.event-card{break-inside:avoid}.timeline{max-width:none}body{background:white}.timeline-callout{display:none}}
.brand span{font-size:10px;letter-spacing:.65px;margin-top:10px;color:#c2c8b8}.mobile-brand span{display:block;font-size:8px;font-weight:400;letter-spacing:.3px;margin-top:3px;color:var(--muted)}.footer-brand>span{display:block;font-size:9px;letter-spacing:.4px;margin-top:5px}
.hero{grid-template-columns:minmax(0,1.4fr) minmax(230px,1fr);min-height:270px}.hero-art{min-height:268px;min-width:0}.ring-orbit{width:236px;height:236px}.countdown{appearance:none;flex-shrink:0;width:198px;height:198px;aspect-ratio:1;padding:20px 25px;gap:0;text-align:center;color:var(--ink);font:inherit;cursor:pointer;transition:box-shadow .2s,background .2s}.countdown:hover{background:#fff;box-shadow:0 8px 28px #71836020}.countdown strong{font-size:46px;line-height:1.02;letter-spacing:-2px;font-weight:500;font-variant-numeric:tabular-nums}.countdown span{margin:0;letter-spacing:0}.countdown .countdown-label{display:block;font-size:10px;line-height:1.4;letter-spacing:1.3px;text-transform:uppercase;max-width:122px;margin:7px 0 9px;color:#5f6e52;white-space:normal}.countdown .clock-parts{display:flex;align-items:start;justify-content:center;gap:5px;width:125px;margin:0}.countdown .clock-part{display:flex;flex-direction:column;align-items:center;gap:3px;min-width:27px}.clock-part b{font-size:18px;line-height:1.1;font-weight:500;font-variant-numeric:tabular-nums}.countdown .clock-part>span{font-size:7px;letter-spacing:.8px;line-height:1.3;color:var(--muted)}.countdown .clock-colon{font-size:16px;line-height:1.1;color:#96a487}.countdown small{font-size:8px;line-height:1.4;max-width:135px;margin-top:10px;white-space:normal;color:#7d886e}.orbit-star{top:20px;right:20px}.orbit-star.lower{bottom:16px;left:14px}
@media(max-width:1000px){.hero{grid-template-columns:minmax(0,1.2fr) minmax(180px,1fr)}.hero-art{min-height:250px}.ring-orbit{width:192px;height:192px}.countdown{width:168px;height:168px;padding:15px 20px}.countdown strong{font-size:37px}.countdown .countdown-label{font-size:8px;max-width:105px;letter-spacing:1px;margin:5px 0 8px}.countdown .clock-parts{width:112px;gap:3px}.clock-part b{font-size:16px}.countdown small{font-size:7px;margin-top:8px}}
@media(max-width:700px){.hero{grid-template-columns:minmax(0,1fr) minmax(158px,1fr)}.hero-copy{padding:24px 18px}.ring-orbit{width:172px;height:172px}.countdown{width:152px;height:152px;padding:14px 17px}.countdown strong{font-size:32px}.countdown .countdown-label{font-size:7px;max-width:98px;line-height:1.35;margin:5px 0 7px}.countdown .clock-parts{width:104px;gap:2px}.clock-part b{font-size:15px}.countdown .clock-part>span{font-size:6px}.countdown small{font-size:6px;margin-top:7px;max-width:102px}}
@media(max-width:450px){.hero{grid-template-columns:minmax(0,1fr)}.hero-copy{padding:24px 25px 0}.hero h2{font-size:29px}.hero p{font-size:11px}.hero-art{min-height:237px}.ring-orbit{width:211px;height:211px}.countdown{width:184px;height:184px;padding:17px 23px}.countdown strong{font-size:42px}.countdown .countdown-label{font-size:9px;letter-spacing:1.2px;max-width:115px;margin:6px 0 9px}.countdown .clock-parts{width:121px;gap:5px}.clock-part b{font-size:17px}.countdown .clock-part>span{font-size:6px}.countdown small{font-size:7px;max-width:125px;margin-top:9px}.orbit-star{right:24px;top:25px}.orbit-star.lower{left:28px;bottom:22px}}

/* Gentle entrances stay separate from the planning layout and live countdown. */
.reveal-ready{opacity:0;transform:translateY(18px);transition:opacity .56s cubic-bezier(.2,.75,.2,1),transform .56s cubic-bezier(.2,.75,.2,1);transition-delay:var(--reveal-delay,0ms)}
.reveal-ready.is-revealed{opacity:1;transform:translateY(0)}
.reveal-ready:focus-within{opacity:1;transform:none;transition-delay:0ms}
.hero{background:radial-gradient(ellipse at 90% 20%,#f6f8ee90,transparent 65%),var(--sage)}
.stat,.guest-card,.event-card,.film-card,.mini-progress,.nudge{transition:box-shadow .24s ease,border-color .24s ease,transform .24s ease}
.stat.reveal-ready,.guest-card.reveal-ready,.event.reveal-ready,.film-card.reveal-ready,.mini-progress.reveal-ready,.nudge.reveal-ready{transition:opacity .56s cubic-bezier(.2,.75,.2,1),transform .56s cubic-bezier(.2,.75,.2,1),box-shadow .24s ease,border-color .24s ease;transition-delay:var(--reveal-delay,0ms)}
.button,.icon-button,.nav-button,.close,.founder-link{transition:background .2s ease,color .2s ease,box-shadow .2s ease,transform .2s ease}
.button:active,.icon-button:active,.nav-button:active{transform:scale(.97)}
.button .icon{transition:transform .22s ease}.button:hover .icon{transform:translateX(2px)}
.button.primary{box-shadow:0 3px 7px #202a1810}.button.primary:hover{box-shadow:0 5px 13px #202a1820}
.check-button.done{animation:little-win .3s cubic-bezier(.2,.8,.3,1)}
.check-button:not(.done):hover{background:#f2f6e8;border-color:#8caa68;box-shadow:0 0 0 4px #e6efd280}
.task-row{transition:background .2s ease}.task-row:hover .task-title{color:#486536}
.is-revealed .progress-track>span{transform-origin:left;animation:progress-arrive .75s cubic-bezier(.2,.75,.2,1) both}
.hero .orbit-star{transition:transform .5s cubic-bezier(.2,.8,.2,1)}.hero:focus-within .orbit-star{transform:rotate(18deg)}
.countdown{box-shadow:0 8px 22px #6072470c}.countdown:hover{box-shadow:0 10px 30px #60724722}
.segmented{padding:5px;border-color:#e4e8dc;background:#ecefe5}.segmented button{transition:background .2s ease,box-shadow .2s ease,color .2s ease,transform .2s ease}.segmented button.active{box-shadow:0 2px 7px #3340240c}.segmented button:active{transform:scale(.96)}
dialog{background:#fdfef9;border:1px solid #e2e7d8;border-radius:22px;max-height:calc(100dvh - 36px);overscroll-behavior:contain;scrollbar-width:thin}
dialog[open]{animation:dialog-arrive .3s cubic-bezier(.16,.8,.2,1) both}
dialog[open]::backdrop{animation:backdrop-arrive .25s ease both;background:#19221166;backdrop-filter:blur(5px)}
dialog.is-closing{animation:dialog-leave .16s ease-in both;pointer-events:none}
dialog.is-closing::backdrop{animation:backdrop-leave .16s ease-in both}
.modal-head{position:relative;padding-top:32px;background:linear-gradient(140deg,#edf3dc80,#fdfef900 80%);border-radius:22px 22px 0 0}
.modal-head:before{content:'';position:absolute;top:0;left:30px;right:30px;height:3px;background:#dce9b4;border-radius:0 0 4px 4px}
.modal-head h2{font-size:26px;line-height:1.16;letter-spacing:-.9px;max-width:380px}
.modal-head p{line-height:1.65;max-width:360px;margin-top:9px}
.close{height:30px;width:30px;flex-shrink:0;display:grid;place-items:center;border-radius:50%;background:#ecf0e3;color:#69765a;font-size:21px}
.close:hover{background:#e1e9d1;color:#35492b;transform:rotate(8deg)}
.modal-body{padding-top:7px}.modal-body .field{color:#56614b;font-size:11px}
.field input,.field select,.field textarea,.film-card textarea,.search{transition:background .2s ease,border-color .2s ease,box-shadow .2s ease}
.field input:hover,.field select:hover,.field textarea:hover,.search:hover,.film-card textarea:hover{border-color:#bfcdae}
.field input:focus,.field select:focus,.field textarea:focus,.search:focus,.film-card textarea:focus{background:#fff;border-color:#99af77;box-shadow:0 0 0 3px #dfeacb70;outline:0}
.field input,.field select,.field textarea{min-height:46px;background:#f8faf3;border-radius:10px}
.modal-actions{border-top:1px solid #e9eddf;padding-top:20px;margin-top:22px}.modal-actions .button{min-height:42px}
.notice{background:#edf3e2;border-color:#dce7cd;border-radius:12px;line-height:1.8;padding:15px 17px}
.offer-badge{font-size:9px;letter-spacing:.7px;padding:7px 11px}.offer-price{margin-top:28px}.offer-list{line-height:2.6}
.success-mark{box-shadow:0 0 0 9px #f0f5e3;animation:little-win .45s cubic-bezier(.16,.8,.2,1)}
#toast{display:flex;align-items:center;gap:10px;border-radius:30px;box-shadow:0 8px 26px #29341d18;background:#f4f8eb;padding:12px 18px}
#toast:before{content:'✓';display:grid;place-items:center;width:20px;height:20px;flex-shrink:0;background:#e0ebc8;border-radius:50%;font-size:11px;color:#526a39}
@keyframes dialog-arrive{from{opacity:0;transform:translateY(20px) scale(.975)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes dialog-leave{from{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(9px) scale(.985)}}
@keyframes backdrop-arrive{from{opacity:0}to{opacity:1}}@keyframes backdrop-leave{from{opacity:1}to{opacity:0}}
@keyframes progress-arrive{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes little-win{0%{transform:scale(.85)}60%{transform:scale(1.08)}100%{transform:scale(1)}}
@media(hover:hover) and (pointer:fine){.stat.is-revealed:hover,.guest-card.is-revealed:hover,.film-card.is-revealed:hover{transform:translateY(-3px);box-shadow:0 9px 25px #29371b0a;border-color:#cbd7bb}.event-card:hover{transform:translateX(3px);box-shadow:0 5px 19px #29371b08}.nudge.is-revealed:hover{transform:translateY(-2px)}.hero:hover .orbit-star{transform:rotate(18deg)}}
@media(max-width:600px){dialog{width:calc(100% - 24px);border-radius:20px;max-height:calc(100dvh - 24px)}.modal-head{padding-top:29px}.modal-head h2{font-size:24px}.modal-actions{gap:9px}.modal-actions .button{padding:11px 13px;font-size:11px}.field input,.field select,.field textarea,.film-card textarea,.search{font-size:16px}.notice{padding:13px 14px}.reveal-ready{transform:translateY(13px)}.modal-head:before{left:22px;right:22px}}
@media(prefers-reduced-motion:reduce){.reveal-ready{opacity:1!important;transform:none!important;transition:none!important}dialog[open],dialog.is-closing,dialog::backdrop,.check-button.done,.success-mark,.is-revealed .progress-track>span{animation:none!important}.stat:hover,.guest-card:hover,.film-card:hover,.event-card:hover,.nudge:hover,.button:active,.nav-button:active,.icon-button:active,.button:hover .icon,.hero .orbit-star{transform:none!important}}
@media print{.reveal-ready{opacity:1!important;transform:none!important}.is-revealed .progress-track>span{animation:none!important}}
.field-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end}.field{min-width:0}.field input,.field select,.field textarea{min-width:0;max-width:100%}
#toast{visibility:hidden;transition:opacity .22s ease,transform .22s ease,visibility 0s linear .22s}#toast.visible{visibility:visible;transition-delay:0s}#toast:empty:before{content:none}
@media(max-width:360px){.field-grid:has(input[type="date"]){grid-template-columns:minmax(0,1fr)}}

/* A compact agenda, connected to the dates already in the plan. */
.coming-up{margin-bottom:25px;background:linear-gradient(130deg,#fbfcf6,#fff 58%)}
.coming-up .panel-head{align-items:center;padding-bottom:20px}.coming-up .eyebrow{font-size:8px;margin:0 0 6px;letter-spacing:1.6px}.coming-up .panel-head h2{font-size:23px;letter-spacing:-.7px}
.upcoming-list{list-style:none;padding:0;margin:0}.upcoming-row{display:flex;align-items:center;gap:17px;padding:17px 24px;border-top:1px solid #edf0e5;transition:background .2s ease}.upcoming-row:hover{background:#f7faf0}
.date-tile{width:53px;min-height:68px;flex-shrink:0;border:1px solid #dfe7d3;border-radius:13px;background:#edf3e3;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:7px 3px;color:#506443}.date-tile>span{font-size:9px;text-transform:uppercase;letter-spacing:1.2px}.date-tile>strong{font-size:24px;font-weight:550;line-height:1.2;font-variant-numeric:tabular-nums}.date-tile>small{font-size:8px;color:#758565}
.upcoming-info{min-width:0;flex:1}.upcoming-when{display:block;font-size:9px;color:#728463;margin-bottom:4px}.upcoming-title{display:block;padding:0;border:0;background:none;text-align:left;font-size:13px;font-weight:550;line-height:1.5;overflow-wrap:anywhere}.upcoming-title:hover{color:var(--green);text-decoration:underline;text-underline-offset:3px}.upcoming-info p{font-size:10px;color:var(--muted);margin:4px 0 0;overflow-wrap:anywhere}.calendar-button{font-size:10px!important;background:#fafcf5;border-color:#e0e8d5}.calendar-button .icon{width:13px;height:13px}
.upcoming-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 24px;background:#f8faf4;border-top:1px solid #e9eddf}.upcoming-footer p{font-size:9px;color:#78836e;margin:0;line-height:1.7}.upcoming-empty{display:flex;align-items:center;gap:20px;padding:8px 24px 27px}.upcoming-empty>span{font-size:39px;color:#9eb37f}.upcoming-empty h3{font-size:13px;font-weight:500;margin:0 0 5px}.upcoming-empty p{font-size:11px;color:var(--muted);margin:0;max-width:430px;line-height:1.8}.is-overdue .upcoming-when{color:#a05c3c}.is-overdue .date-tile{background:#faf0e7;border-color:#ebdccd;color:#926448}
.modal-body .upcoming-row{padding:15px 0;gap:12px}.modal-body .calendar-button{padding:8px}.modal-body .calendar-button span{display:none}.modal-body .upcoming-title{font-size:12px}
@media(max-width:600px){.coming-up .panel-head{gap:10px}.coming-up .panel-head h2{font-size:21px}.coming-up .panel-head .button{padding:9px;font-size:10px}.upcoming-row{padding:16px 18px;gap:12px}.date-tile{width:46px;min-height:63px;border-radius:11px}.date-tile>strong{font-size:22px}.upcoming-title{font-size:12px}.upcoming-info p{font-size:9px}.calendar-button{padding:9px!important;min-width:33px;min-height:33px}.calendar-button span{display:none}.calendar-button .icon{width:15px;height:15px}.upcoming-footer{padding:12px 18px;align-items:start;flex-direction:column;gap:7px}.upcoming-empty{padding:5px 18px 22px;gap:14px}.task-row{flex-wrap:wrap}.task-row>div{flex:1;min-width:90px}.task-row .badge{margin-left:0}.task-row .icon-button{padding:4px}}
