:root{color:#242b3e;font-synthesis:none;background:#f6f7f9;font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,Malgun Gothic,sans-serif;font-size:15px;font-weight:400;line-height:1.6}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;min-height:44px}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:3px;outline:3px solid #8e9df5}button:disabled{opacity:.55;cursor:wait}.app{max-width:960px;margin:auto;padding-bottom:110px}.topbar{border-bottom:1px solid #e8eaf0;justify-content:space-between;align-items:center;height:85px;padding:0 28px;display:flex}.wordmark{letter-spacing:-1.6px;color:#3c4cb5;font-size:27px;font-weight:800}.wordmark span{letter-spacing:1.2px;color:#70788d;margin-left:12px;font-size:11px;font-weight:600}.local-badge{color:#626e83;background:#eceff5;border-radius:30px;padding:5px 11px;font-size:12px}main{padding:30px 28px}.eyebrow{color:#6774bf;letter-spacing:1.2px;margin:0 0 10px;font-size:12px;font-weight:700}h1{letter-spacing:-1.3px;margin:0 0 22px;font-size:30px;line-height:1.4}h2{letter-spacing:-.5px;margin:0;font-size:18px}p{margin:8px 0}.card{background:#fff;border:1px solid #e6e9f0;border-radius:20px;margin:16px 0;padding:24px;box-shadow:0 3px 10px #29355203}.bottom-nav{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);width:min(960px,100%);padding:10px 12px calc(10px + env(safe-area-inset-bottom));z-index:10;background:#fffe;border-top:1px solid #e6e9f0;justify-content:space-around;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.bottom-nav button{color:#7d869a;background:0 0;border:0;border-radius:12px;flex-direction:column;align-items:center;gap:4px;min-width:64px;padding:6px 12px;font-size:11px;display:flex}.bottom-nav button[aria-current]{color:#5264d9;background:#f0f2ff;font-weight:700}@media (width<=540px){.topbar{height:72px;padding:0 20px}.wordmark span{display:none}main{padding:26px 20px}.local-badge{font-size:10px}.card{padding:20px}h1{font-size:28px}}.page-heading,.section-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.page-heading h1{margin-bottom:12px}.hero-mark{color:#dfe3fa;padding-right:24px;font-size:90px;font-weight:800;line-height:1;position:relative;transform:rotate(-12deg)}.hero-mark span{color:#c8cff4;font-size:28px;position:absolute;top:0;right:4px}.muted{color:#6e778b}.small,small{font-size:12px;line-height:1.6}.summary-card{color:#fff;background:linear-gradient(115deg,#5264d9,#6475df);border-radius:23px;margin:16px 0 18px;padding:27px 30px;box-shadow:0 8px 24px #5264d921}.summary-top{color:#eff1ff;justify-content:space-between;align-items:center;gap:10px;font-size:13px;display:flex}.summary-tag{background:#ffffff20;border:1px solid #ffffff20;border-radius:30px;align-items:center;gap:5px;padding:4px 10px;font-size:11px;display:flex}.total-amount{letter-spacing:-1.7px;margin:4px 0 18px;font-size:46px;line-height:1.4;display:block}.total-amount span{margin-left:6px;font-size:22px;font-weight:500}.summary-footer{color:#e9edff;border-top:1px solid #ffffff29;justify-content:space-between;align-items:center;gap:10px;padding-top:16px;font-size:12px;display:flex}.summary-footer strong{color:#fff;align-items:center;gap:3px;font-size:14px;display:flex}.mini-stats{grid-template-columns:1fr 1fr;gap:14px;margin:16px 0;display:grid}.mini-stats>div{background:#fff;border:1px solid #e6e9f0;border-radius:18px;align-items:center;gap:14px;padding:18px 20px;display:flex}.mini-stats small{color:#6e778b;font-size:12px;display:block}.mini-stats strong{font-size:24px;line-height:1.4;display:block}.mini-stats strong span{color:#8c93a3;margin-left:4px;font-size:13px;font-weight:500}.mini-icon,.event-icon{border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.lavender,.event-icon.discount{color:#6370c5;background:#eff1ff}.peach,.event-icon.gift{color:#b36c39;background:#fff2e6}.quick-add{color:#626f9e;background:0 0;border:1px dashed #c7cedd;border-radius:14px;justify-content:space-between;align-items:center;width:100%;margin:20px 0 27px;padding:15px 20px;display:flex}.quick-add>span{align-items:center;gap:10px;display:flex}.quick-add strong{font-size:13px;font-weight:600}.section-heading h2{align-items:center;gap:8px;display:flex}.count{color:#7781ae;background:#eff1f8;border-radius:7px;margin-left:3px;padding:1px 7px;font-size:12px;font-weight:600}.text-button{color:#6573b1;background:0 0;border:0;flex-shrink:0;justify-content:center;align-items:center;gap:5px;padding:5px 0;font-size:12px;font-weight:600;display:inline-flex}.schedule-card{padding-bottom:8px}.event-row{text-align:left;background:0 0;border:0;border-bottom:1px solid #f0f1f5;align-items:center;gap:14px;width:100%;padding:19px 0;display:flex}.event-row:last-child{border-bottom:0}.event-copy,.line-copy{flex:1;min-width:0;display:block}.event-copy strong,.line-copy strong{overflow-wrap:anywhere;font-size:14px;font-weight:650;display:block}.event-copy small,.line-copy small{color:#7e8699;overflow-wrap:anywhere;font-size:11px;display:block}.day-badge{color:#6574bf;white-space:nowrap;background:#eff1fc;border-radius:7px;padding:3px 7px;font-size:11px;font-weight:700}.day-badge.urgent{color:#ad5f40;background:#fff0e8}.event-row>svg{color:#b3b9c7}.empty{text-align:center;color:#858da0;padding:36px 8px}.empty h3{color:#5e687f;margin:12px 0 5px;font-size:15px}.empty p{font-size:12px}.empty-icon{color:#a1accf;background:#f1f3f9;border-radius:50%;justify-content:center;align-items:center;width:62px;height:62px;display:inline-flex}.privacy-note{color:#8a93a7;justify-content:center;align-items:flex-start;gap:10px;margin:29px 0;display:flex}.privacy-note p{margin:0;font-size:12px;line-height:1.8}.privacy-note span{color:#9199a9;font-size:11px}.app-footer{text-align:center;color:#9aa1b0;margin:30px 0 0;font-size:11px}.app-footer span{font-size:10px;display:block}.button{border:0;border-radius:12px;justify-content:center;align-items:center;gap:7px;padding:12px 17px;font-size:13px;font-weight:650;line-height:1.5;display:inline-flex}.button.primary{color:#fff;background:#5264d9}.button.secondary{color:#596783;background:#f0f2f8;border:1px solid #e4e8f2}.button.compact{white-space:nowrap;padding:9px 12px}.full{width:100%}.button-row{flex-wrap:wrap;gap:10px;margin:20px 0 10px;display:flex}.button-row>.button{white-space:nowrap;flex:1}.icon-button{color:#8390a5;background:0 0;border:0;border-radius:9px;justify-content:center;align-items:center;min-width:44px;padding:8px;display:inline-flex}.filter-row{flex-wrap:wrap;gap:7px;margin:23px 0;display:flex}.chip{color:#7b859a;background:#fff;border:1px solid #e3e7ef;border-radius:30px;padding:7px 13px;font-size:12px}.chip.selected{color:#fff;background:#5264d9;border-color:#5264d9}.family-section{margin:25px 0}.family-label{align-items:center;gap:10px;display:flex}.avatar{color:#6874b5;background:#e9edff;border-radius:13px;justify-content:center;align-items:center;width:36px;height:36px;font-weight:700;display:flex}.tone-1{color:#a3815f;background:#f5eadf}.tone-2{color:#6c9480;background:#e3f1e9}.tone-3{color:#9c7bad;background:#f1e7f6}.inline-actions{gap:0;display:flex}.line-list{background:#fff;border:1px solid #e6e9f0;border-radius:18px;margin-top:12px;padding:0 18px}.line-card{text-align:left;background:0 0;border:0;border-bottom:1px solid #eff1f6;align-items:center;gap:13px;width:100%;padding:20px 0;display:flex}.line-symbol{color:#8a96b2;background:#f3f5fa;border-radius:11px;padding:9px;display:flex}.line-price{flex-direction:column;align-items:flex-end;display:flex}.line-price strong{white-space:nowrap;font-size:14px}.line-price small{color:#8b93a6;font-size:10px}.line-card>svg{color:#b3b9c7}.add-line{color:#7a88b0;background:0 0;border:0;justify-content:center;align-items:center;gap:8px;width:100%;padding:13px;font-size:12px;display:flex}.inline-empty{color:#9098a8;text-align:center;padding:20px 0;font-size:12px}.modal{color:#283147;border:0;border-radius:24px;width:calc(100% - 28px);max-width:570px;max-height:90dvh;padding:26px;overflow-y:auto;box-shadow:0 15px 80px #202b5c33}.modal::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#17234670}.modal>header{justify-content:space-between;align-items:center;gap:10px;margin-bottom:15px;display:flex}.modal>header h2{font-size:20px}.field{color:#58637a;flex-direction:column;gap:7px;min-width:0;margin:14px 0;font-size:13px;display:flex}.field>label{font-weight:600}.field>small{color:#8a93a6;font-size:11px}.field input,.field select,.field textarea{color:#323d56;background:#fff;border:1px solid #dce1ec;border-radius:10px;width:100%;min-width:0;min-height:46px;padding:10px 12px;font-size:16px}.field textarea{resize:vertical}.field input[type=file]{font-size:12px}.form-grid{gap:0 14px;display:grid}.form-grid.two{grid-template-columns:1fr 1fr}.form-actions{justify-content:flex-end;gap:10px;margin-top:25px;display:flex}.form-actions .button{min-width:100px}.steps{border-bottom:1px solid #e7eaf2;gap:5px;margin-bottom:10px;padding-bottom:15px;display:flex}.steps button{color:#8e97aa;white-space:nowrap;background:0 0;border:0;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:6px;font-size:11px;display:flex}.steps button span{background:#f0f2f8;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:10px;display:flex}.steps button.selected{color:#5264d9;background:#f4f5ff;font-weight:700}.steps button.selected span{color:#fff;background:#5264d9}.info-box{color:#677693;background:#f1f4fb;border:1px solid #e6ebf7;border-radius:12px;margin:18px 0;padding:15px 17px;font-size:12px}.info-box p{font-size:11px;line-height:1.8}.info-box small{font-size:10px}.error,.success{overflow-wrap:anywhere;border-radius:12px;padding:12px 15px;font-size:12px}.error{color:#a44e47;background:#fff0ee}.success{color:#43765e;background:#eaf5ee}.detail-hero{background:#f1f3fc;border-radius:16px;margin:20px 0;padding:20px}.detail-hero>span{color:#7885b1;font-size:11px}.detail-hero>strong{color:#5365b9;font-size:30px;display:block}.detail-hero strong small{color:#818ca7;font-size:11px;font-weight:400}.detail-hero p{color:#7a87a3;font-size:12px}.details{margin:20px 0}.details>div{justify-content:space-between;gap:20px;margin:13px 0;font-size:12px;display:flex}.details dt{color:#8790a4;flex-shrink:0}.details dd{text-align:right;overflow-wrap:anywhere;margin:0}.note{white-space:pre-wrap;overflow-wrap:anywhere;background:#faf9f5;border-radius:10px;padding:15px;font-size:13px}.spaced{margin-top:30px}.gift-item{border-bottom:1px solid #eef0f5;align-items:center;gap:11px;padding:13px 0;display:flex}.gift-item.received{opacity:.65}.check-button{color:#5264d9;background:#fff;border:1px solid #dfe5ee;border-radius:12px;justify-content:center;align-items:center;min-width:44px;display:flex}.check-button[aria-pressed=true]{background:#edf0ff;border-color:#bcc5f3}.gift-copy{text-align:left;color:#424e65;background:0 0;border:0;flex-direction:column;flex:1;min-width:0;padding:0;display:flex}.gift-copy strong{overflow-wrap:anywhere;font-size:13px}.gift-copy small{color:#8b93a5;font-size:11px}.gift-form{background:#f7f8fc;border-radius:14px;margin-top:20px;padding:16px}.gift-form h3{margin:0;font-size:15px}.checkbox-label{align-items:center;gap:10px;min-height:44px;margin:16px 0;font-size:12px;display:flex}.checkbox-label input{accent-color:#5264d9;flex-shrink:0;width:20px;height:20px}.restore-choice{border:1px solid #dfe4f0;border-radius:12px;padding:14px;font-size:12px}.restore-choice label{align-items:center;gap:10px;min-height:50px;display:flex}.restore-choice input{accent-color:#5264d9}.warning{color:#a16441;background:#fff5e9;border-radius:12px;padding:13px}.status-pill{color:#8b94a6;background:#f0f2f6;border-radius:20px;padding:3px 9px;font-size:11px}.status-pill.on{color:#4e8267;background:#edf6ef}.recovery-item{border-top:1px solid #edf0f7;margin-top:15px;padding-top:12px;font-size:12px}.offline-bar{color:#8f6f3d;background:#f8eddb;justify-content:center;align-items:center;gap:8px;padding:10px;font-size:12px;display:flex}.notice,.backup-banner{color:#6572a1;background:#ecf0fc;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;margin:0 0 20px;padding:12px 15px;font-size:11px;display:flex}.notice p,.backup-banner p{margin:0}.backup-banner{color:#728062;background:#eff3eb}.backup-banner .text-button{color:#637e58}.skip-link{z-index:50;background:#fff;padding:12px;position:absolute;top:-80px;left:12px}.skip-link:focus{top:12px}@media (width>=760px){main{padding:35px 50px}.topbar{padding:0 50px}.summary-card{padding:30px 35px}.total-amount{font-size:52px}.hero-mark{padding-right:50px;font-size:110px}.hero-mark span{right:25px}.mini-stats>div{padding:20px 25px}}@media (width<=420px){.mini-stats{gap:10px}.mini-stats>div{gap:9px;padding:16px 12px}.mini-stats small{font-size:10px}.mini-icon{border-radius:10px;width:34px;height:34px}.summary-card{padding:23px}.summary-footer{font-size:10px}.summary-footer strong{font-size:12px}.event-row{gap:10px}.event-icon{width:36px;height:36px}.event-copy strong{font-size:12px}.event-row>svg{display:none}.line-card{gap:9px}.line-symbol{display:none}.line-price strong{font-size:12px}.modal{padding:20px}.hero-mark{padding-right:8px;font-size:72px}.hero-mark span{font-size:21px;right:-5px}.page-heading h1{font-size:26px}.summary-tag{font-size:10px}.form-grid.two{gap:0 10px}.steps button{gap:4px;font-size:10px}.steps button span{width:16px;height:16px}}
