body:has(.tk-page) footer.beus-footer{margin-top:0}.tk-page{--tk-bg:#f9f7f2;--tk-bg2:#f2ede6;--tk-ink:#3c2f2f;--tk-ink2:#5c4f47;--tk-ink3:#8b7e74;--tk-gold:#c4a86c;--tk-gold2:#edd898;--tk-gold-bg:#faf5e8;--tk-champagne:#a89178;--tk-tan:#b08968;--tk-sage:#87967b;--tk-sage-bg:#eff3ec;--tk-blush:#d4a898;--tk-blush-bg:#faf0ec;--tk-rose:#a97b76;--tk-clay:#b87a6a;--tk-line:#e6dfd6;--tk-white:#fffcfa;--tk-sidebar:220px;--tk-radius:4px;background:var(--tk-bg);color:var(--tk-ink);box-sizing:border-box;min-height:calc(100dvh - 4rem);font-family:DM Sans,sans-serif;display:flex}.tk-page *,.tk-page :before,.tk-page :after{box-sizing:border-box}.tk-page .tk-sidebar{width:var(--tk-sidebar);flex:0 0 var(--tk-sidebar);background:var(--tk-ink);z-index:20;flex-direction:column;align-self:flex-start;height:calc(100dvh - 4rem);display:flex;position:-webkit-sticky;position:sticky;top:4rem;overflow-y:auto}.tk-page .tk-sidebar-brand{border-bottom:1px solid rgba(255,255,255,.06);padding:24px 20px 20px}.tk-page .tk-sidebar-brand .tk-sub{color:rgba(255,255,255,.25);letter-spacing:.18em;text-transform:uppercase;margin-top:0;font-size:10px}.tk-page .tk-sidebar-nav{flex:1;padding:16px 0}.tk-page .tk-nav-section-label{letter-spacing:.22em;color:rgba(255,255,255,.18);text-transform:uppercase;padding:12px 20px 6px;font-size:9px}.tk-page .tk-nav-item{cursor:pointer;color:rgba(255,255,255,.38);text-align:left;background:0 0;border:none;border-left:2px solid transparent;align-items:center;gap:10px;width:100%;padding:10px 20px;font-family:inherit;font-size:13px;font-weight:400;text-decoration:none;transition:background .15s;display:flex;position:relative}.tk-page .tk-nav-item:hover{color:rgba(255,255,255,.65);background:rgba(255,255,255,.04)}.tk-page .tk-nav-item.active{border-left-color:var(--tk-gold);color:#ede5d8;background:rgba(196,168,108,.08)}.tk-page .tk-nav-item .tk-icon{opacity:.7;flex-shrink:0;font-size:14px}.tk-page .tk-nav-item.active .tk-icon{opacity:1}.tk-page .tk-nav-item .tk-label-zh{color:rgba(255,255,255,.2);margin-top:1px;font-family:Noto Serif TC,serif;font-size:9px;font-weight:200;display:block}.tk-page .tk-nav-item.active .tk-label-zh{color:rgba(196,168,108,.5)}.tk-page.tk-locale-zh .tk-nav-item>div>div:first-child{font-family:Noto Serif TC,serif;font-size:14px;font-weight:300}.tk-page.tk-locale-zh .tk-nav-item .tk-label-zh{letter-spacing:.06em;text-transform:none;font-family:DM Sans,sans-serif;font-size:9px;font-weight:400}.tk-page .tk-mobile-tabs{display:none}.tk-page .tk-sidebar-progress{border-top:1px solid rgba(255,255,255,.06);padding:20px}.tk-page .tk-progress-label{letter-spacing:.2em;color:rgba(255,255,255,.2);text-transform:uppercase;margin-bottom:10px;font-size:9px}.tk-page .tk-progress-track{background:rgba(255,255,255,.08);border-radius:2px;height:3px;margin-bottom:8px}.tk-page .tk-progress-fill{background:var(--tk-tan);border-radius:2px;height:100%;transition:width .5s}.tk-page .tk-progress-text{color:rgba(255,255,255,.3);font-size:11px}.tk-page .tk-progress-text span{color:var(--tk-gold)}.tk-page .tk-main{flex:1;width:auto;min-width:0;min-height:calc(100dvh - 4rem)}.tk-page .tk-panel{display:none}.tk-page .tk-panel.active{display:block}.tk-page .tk-header{border-bottom:1px solid var(--tk-line);background:var(--tk-white);z-index:10;justify-content:space-between;align-items:flex-end;padding:28px 40px 20px;display:flex;position:-webkit-sticky;position:sticky;top:4rem}.tk-page .tk-title{color:var(--tk-ink);font-family:Fraunces,serif;font-size:24px;font-weight:300;line-height:1.1}.tk-page .tk-title-zh{color:var(--tk-ink3);letter-spacing:.08em;margin-top:2px;font-family:Noto Serif TC,serif;font-size:11px;font-weight:200}.tk-page .tk-meta{color:var(--tk-ink3);letter-spacing:.06em;font-size:11px}.tk-page .tk-header-actions{align-items:center;gap:10px;display:flex}.tk-page .tk-guest-add-icon{border:1px solid var(--tk-line);background:var(--tk-white);color:var(--tk-ink);letter-spacing:.04em;cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-family:inherit;font-size:12px;display:inline-flex}.tk-page .tk-guest-add-icon:hover{border-color:var(--tk-gold);background:var(--tk-gold-bg);color:#7a6030}.tk-page .tk-btn{cursor:pointer;border-radius:var(--tk-radius);letter-spacing:.04em;border:none;align-items:center;gap:6px;padding:8px 18px;font-family:DM Sans,sans-serif;font-size:12px;font-weight:500;text-decoration:none;transition:all .15s;display:inline-flex}.tk-page .tk-btn-primary{background:var(--tk-tan);color:#fffcfa}.tk-page .tk-btn-primary:hover{background:#9a7458}.tk-page .tk-btn-ghost{color:var(--tk-ink2);border:1px solid var(--tk-line);background:0 0}.tk-page .tk-btn-ghost:hover{background:var(--tk-bg2)}.tk-page .tk-btn-tan{background:var(--tk-tan);color:#fffcfa;border:1px solid var(--tk-tan)}.tk-page .tk-btn-tan:hover{background:#9a7458;border-color:#9a7458}.tk-page .tk-btn-gold{background:var(--tk-gold-bg);color:#7a6030;border:1px solid #e0cc90}.tk-page .tk-btn-danger{color:#a05040;background:0 0;border:1px solid #e0c8c0;padding:5px 12px;font-size:11px}.tk-page .tk-btn-danger:hover{background:var(--tk-blush-bg)}.tk-page .tk-field-group{flex-direction:column;gap:5px;display:flex}.tk-page label,.tk-page .tk-label{color:var(--tk-ink3);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:500}.tk-page label .tk-zh,.tk-page .tk-label .tk-zh{text-transform:none;letter-spacing:.05em;color:var(--tk-ink3);margin-left:4px;font-family:Noto Serif TC,serif;font-size:10px;font-weight:200}.tk-page input[type=text],.tk-page input[type=number],.tk-page input[type=email],.tk-page input[type=date],.tk-page input[type=time],.tk-page input[type=datetime-local],.tk-page select,.tk-page textarea{background:var(--tk-white);border:1px solid var(--tk-line);border-radius:var(--tk-radius);color:var(--tk-ink);outline:none;width:100%;padding:9px 13px;font-family:DM Sans,sans-serif;font-size:14px;transition:border .15s,box-shadow .15s}.tk-page input:focus,.tk-page select:focus,.tk-page textarea:focus{border-color:var(--tk-gold);box-shadow:0 0 0 3px rgba(196,168,108,.12)}.tk-page input::placeholder,.tk-page textarea::placeholder{color:var(--tk-ink3);opacity:.5}.tk-page select{cursor:pointer}.tk-page textarea{resize:vertical;min-height:80px}.tk-page .tk-body{padding:32px 40px 64px}.tk-page .tk-budget-summary{background:0 0;border:none;grid-template-columns:.8fr 1.2fr;align-items:stretch;gap:14px;margin-bottom:32px;display:grid;overflow:visible}.tk-page .tk-budget-card{background:var(--tk-white);border:1px solid var(--tk-line);border-radius:12px;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 1px 2px rgba(60,47,47,.04)}.tk-page .tk-budget-card-head{color:var(--tk-ink);align-items:center;gap:8px;padding:8px 14px 0;font-size:14px;font-weight:600;display:flex}.tk-page .tk-budget-card-head svg{color:var(--tk-tan);flex-shrink:0}.tk-page .tk-budget-card-body{flex-direction:column;flex:1;padding:0 14px 8px;display:flex}.tk-page .tk-budget-metric{flex-direction:column;align-items:flex-start;gap:3px;padding:6px 0;display:flex}.tk-page .tk-budget-metric-row{grid-template-columns:1fr 1fr;align-items:start;gap:12px;display:grid}.tk-page .tk-budget-card:first-child .tk-budget-metric-row{flex-flow:row;justify-content:flex-start;align-items:baseline;gap:20px;display:flex}.tk-page .tk-budget-metric-row .tk-budget-metric{min-width:0}.tk-page .tk-budget-card:first-child .tk-budget-metric-row .tk-budget-metric{flex:none;padding-top:4px;padding-bottom:4px}.tk-page .tk-budget-metric-inline{white-space:nowrap;flex-flow:row;align-items:baseline;gap:8px;display:flex}.tk-page .tk-budget-metric-inline .tk-stat-value{margin-left:0}.tk-page .tk-budget-metric-inline .tk-stat-label{flex-shrink:0}.tk-page .tk-budget-plan-block{flex-direction:column;align-items:flex-start;gap:2px;padding-top:0;display:flex}.tk-page .tk-budget-card .tk-budget-plan-block .tk-stat-value{margin-left:0}.tk-page .tk-budget-metric.tk-budget-plan-top{flex-flow:row;justify-content:flex-start;align-items:flex-start;gap:36px;display:flex}.tk-page .tk-budget-cap-inline{margin:0;padding:0}.tk-page .tk-budget-plan-amount-row{flex-flow:row;justify-content:flex-start;align-items:baseline;gap:36px;display:flex}.tk-page .tk-budget-plan-amount-row>.tk-stat-value{margin-left:12px}.tk-page .tk-budget-plan-amount-row .tk-budget-metric-inline{margin-left:12px;padding:0}.tk-page .tk-budget-cap-row{justify-content:flex-start;margin-top:.85em;padding-top:4px;padding-bottom:4px}.tk-page .tk-budget-cap-row .tk-stat-value{margin-left:0}.tk-page .tk-budget-cap-row .tk-stat-value.tk-stat-estimate,.tk-page .tk-budget-cap-row .tk-stat-value.tk-stat-estimate .tk-currency-num,.tk-page .tk-budget-cap-row .tk-stat-value.tk-stat-estimate .tk-currency-num-btn{color:var(--tk-ink3)}.tk-page .tk-budget-metric-lower{margin-top:.2em}.tk-page .tk-budget-metric-drop{margin-top:.55em}.tk-page .tk-budget-card .tk-budget-metric .tk-stat-value{margin-left:12px}.tk-page .tk-budget-card .tk-stat-label{letter-spacing:0;text-transform:none;color:var(--tk-ink3);margin-bottom:0;font-size:12px;font-weight:400}.tk-page .tk-budget-card .tk-stat-value{color:var(--tk-ink);text-align:left;font-variant-numeric:lining-nums;letter-spacing:-.01em;align-items:baseline;gap:.12em;font-family:Noto Serif TC,Fraunces,serif;font-size:28px;font-weight:600;line-height:1.1;display:flex}.tk-page .tk-budget-card .tk-stat-value.tk-stat-planned,.tk-page .tk-budget-card .tk-stat-value.tk-stat-spent{font-size:36px;font-weight:700}.tk-page .tk-budget-card .tk-stat-value-edit{gap:.12em}.tk-page .tk-budget-card .tk-currency-num-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;font:inherit;font-weight:inherit;color:inherit;line-height:inherit;letter-spacing:inherit;cursor:text;text-align:left;background:0 0;border:none;margin:0;padding:0}.tk-page .tk-budget-card .tk-currency-num-btn:hover{opacity:.85}.tk-page .tk-budget-card .tk-currency-num-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;border-bottom:1px solid var(--tk-tan);width:8.5ch;min-width:4ch;max-width:100%;font:inherit;font-family:inherit;font-size:inherit;font-weight:inherit;color:inherit;line-height:inherit;letter-spacing:inherit;background:0 0;border-radius:0;outline:none;margin:0;padding:0 0 2px}.tk-page .tk-budget-card .tk-stat-value.tk-stat-estimate{font-size:22px;font-weight:600}.tk-page .tk-budget-card .tk-currency-prefix,.tk-page .tk-budget-card .tk-currency-sign{color:#b7aea4;letter-spacing:0;font-family:DM Sans,sans-serif;font-size:.5em;font-weight:500}.tk-page .tk-budget-card .tk-currency-num{font-family:inherit;font-weight:inherit;color:inherit}.tk-page .tk-budget-card .tk-stat-value.tk-stat-planned,.tk-page .tk-budget-card .tk-stat-value.tk-stat-estimate{color:var(--tk-ink)}.tk-page .tk-budget-card .tk-stat-value.tk-stat-spent{color:var(--tk-clay)}.tk-page .tk-budget-card .tk-stat-value.tk-stat-remain-budget{color:#a3b08f}.tk-page .tk-budget-card .tk-stat-value.over{color:var(--tk-clay)}.tk-page .tk-budget-card .tk-stat-value.ok{color:var(--tk-sage)}.tk-page .tk-budget-card:nth-child(2) .tk-budget-metric-row .tk-budget-metric{padding-bottom:2px}.tk-page .tk-budget-usage{margin-top:-6px;padding-top:0}.tk-page .tk-budget-usage-head{justify-content:flex-end;align-items:center;gap:12px;margin-bottom:2px;display:flex}.tk-page .tk-budget-usage-head strong{color:var(--tk-ink3);font-variant-numeric:lining-nums;align-items:flex-end;gap:.35em;font-family:Noto Serif TC,Fraunces,serif;font-weight:700;line-height:1;display:inline-flex}.tk-page .tk-budget-paid-label{color:var(--tk-ink3);padding-bottom:1px;font-family:DM Sans,sans-serif;font-size:13.5px;font-weight:500;line-height:1}.tk-page .tk-budget-paid-pct{font-size:18px;font-weight:700;line-height:1}.tk-page .tk-budget-usage-track{background:#e8ede6;border-radius:999px;width:100%;height:7px;overflow:hidden}.tk-page .tk-budget-usage-fill{background:#e0b44a;border-radius:999px;height:100%;transition:width .2s,background-color .2s;display:block}.tk-page .tk-budget-usage-foot{color:var(--tk-ink3);text-align:right;justify-content:flex-end;align-items:center;gap:12px;margin-top:4px;font-size:11px;display:flex}.tk-page .tk-budget-total-row{background:var(--tk-gold-bg);border:1px solid #e0cc90;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:28px;padding:20px 24px;display:grid}.tk-page .tk-section-head{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.tk-page .tk-section-head h3{color:var(--tk-ink);font-family:Fraunces,serif;font-size:16px;font-weight:300}.tk-page .tk-section-head h3 em{color:var(--tk-ink3);font-style:italic}.tk-page .tk-budget-table{border-collapse:collapse;width:100%}.tk-page .tk-budget-table th{letter-spacing:.14em;text-transform:uppercase;color:var(--tk-ink3);text-align:left;border-bottom:2px solid var(--tk-line);background:var(--tk-bg);padding:8px 12px;font-size:10px;font-weight:500}.tk-page .tk-budget-table td{border-bottom:1px solid var(--tk-line);vertical-align:middle;padding:0}.tk-page .tk-budget-table tr:last-child td{border-bottom:none}.tk-page .tk-budget-table tr:hover td{background:var(--tk-bg)}.tk-page .tk-budget-table td input{background:0 0;border:none;border-radius:0;padding:11px 12px;font-size:13px}.tk-page .tk-budget-table td input:focus{background:var(--tk-gold-bg);box-shadow:none;border-bottom:1px solid var(--tk-gold)}.tk-page .tk-budget-table td.tk-amount input{text-align:right}.tk-page .tk-budget-table .tk-amount-input{box-sizing:border-box;background:0 0;justify-content:flex-start;align-items:baseline;gap:0;width:100%;padding:0 12px;display:inline-flex}.tk-page .tk-budget-table .tk-currency-prefix{color:inherit;letter-spacing:0;background:0 0;flex-shrink:0;font-size:13px;line-height:1}.tk-page .tk-budget-table .tk-amount-input input{text-align:left;font-variant-numeric:tabular-nums;width:5.5em;min-width:0;color:inherit;-moz-appearance:textfield;flex:none;padding:11px 0;font-family:inherit;font-size:13px;line-height:1.2;background:0 0!important}.tk-page .tk-budget-table .tk-amount-input input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.tk-page .tk-budget-table .tk-amount-input input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.tk-page .tk-budget-table td.tk-amount .tk-amount-planned input{text-align:left;width:auto;min-width:4ch;max-width:12ch;padding:11px 0;font-size:13px;line-height:1.2}.tk-page .tk-budget-table .tk-amount-planned,.tk-page .tk-budget-table .tk-amount-planned input,.tk-page .tk-budget-table .tk-amount-planned .tk-currency-prefix{color:var(--tk-ink);font-size:13px}.tk-page .tk-budget-table .tk-amount-actual,.tk-page .tk-budget-table .tk-amount-actual input,.tk-page .tk-budget-table .tk-amount-actual .tk-currency-prefix,.tk-page .tk-budget-table .tk-amount-actual .tk-amount-readonly-value{color:var(--tk-clay);font-size:13px;line-height:1.2}.tk-page .tk-budget-table td.tk-category-cell{width:34%}.tk-page .tk-budget-table td.tk-vendor-cell{width:16%;position:relative;overflow:visible}.tk-page .tk-vendor-cell-wrap{width:100%;position:relative}.tk-page .tk-vendor-trigger{text-align:left;width:100%;min-height:42px;color:var(--tk-ink);cursor:pointer;background:0 0;border:none;align-items:center;padding:11px 12px 11px 0;font-family:inherit;font-size:13px;display:flex}.tk-page .tk-vendor-placeholder{color:var(--tk-ink3);opacity:.5}.tk-page .tk-vendor-menu{z-index:1200;background:#f3f4f6;border:1px solid rgba(15,23,42,.06);border-radius:10px;max-height:280px;padding:6px;position:fixed;overflow-y:auto;box-shadow:0 10px 28px rgba(15,23,42,.16)}.tk-page .tk-vendor-menu-empty{color:var(--tk-ink3);padding:10px 12px;font-size:12.5px}.tk-page .tk-vendor-option{color:#1f2937;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:8px;width:100%;padding:8px 10px;font-family:inherit;font-size:13px;display:flex}.tk-page .tk-vendor-option:hover{background:rgba(255,255,255,.7)}.tk-page .tk-vendor-option.is-selected{color:#fff;background:#3b82f6}.tk-page .tk-vendor-option-manual{color:#374151;border-top:1px solid rgba(15,23,42,.08);border-radius:0 0 8px 8px;margin-top:2px;font-weight:500}.tk-page .tk-vendor-option-gap{flex-shrink:0;width:14px}.tk-page .tk-budget-table th.tk-vendor-cell,.tk-page .tk-budget-table th.tk-note-cell,.tk-page .tk-budget-table td.tk-vendor-cell input,.tk-page .tk-budget-table td.tk-note-cell input{padding-left:0}.tk-page .tk-budget-table td.tk-item-cell{width:16%;padding-right:0}.tk-page .tk-budget-table th.tk-item-cell{padding-right:0}.tk-page .tk-budget-table td.tk-amount{background:0 0;width:14%}.tk-page .tk-budget-table th.tk-amount{background:var(--tk-bg)}.tk-page .tk-budget-table td.tk-note-cell{width:16%}.tk-page .tk-budget-table td.tk-progress-cell{width:120px;padding:0 12px}.tk-page .tk-budget-table td.tk-empty-row{text-align:center;color:var(--tk-ink3);padding:20px 12px;font-size:13px}.tk-page .tk-cat-progress,.tk-page .tk-row-progress{align-items:center;gap:8px;display:inline-flex}.tk-page .tk-row-progress{width:100%}.tk-page .tk-mini-track{background:#efe8dc;border-radius:999px;flex-shrink:0;width:144px;height:6px;display:block;overflow:hidden}.tk-page .tk-cat-progress .tk-mini-track{width:216px}.tk-page .tk-mini-fill{background:var(--tk-tan);border-radius:999px;height:100%;transition:width .2s;display:block}.tk-page .tk-mini-pct{color:var(--tk-ink3);text-align:right;min-width:28px;font-size:11px}.tk-page .tk-budget-list{flex-direction:column;gap:28px;display:flex}.tk-page .tk-budget-cat{background:var(--tk-white);border:1px solid var(--tk-line);border-radius:var(--tk-radius);overflow:visible}.tk-page .tk-budget-table-scroll{-webkit-overflow-scrolling:touch;width:100%;max-width:100%;overflow-x:auto}.tk-page .tk-budget-cat .tk-budget-table{min-width:760px}.tk-page .tk-budget-table td.tk-amount,.tk-page .tk-budget-table th.tk-amount,.tk-page .tk-budget-table .tk-amount-input,.tk-page .tk-budget-table .tk-amount-readonly,.tk-page .tk-budget-table .tk-amount-readonly-value{white-space:nowrap}.tk-page .tk-budget-table td.tk-amount{min-width:7.5rem}.tk-page .tk-cat-head{border-bottom:1px solid var(--tk-line);border-left:4px solid var(--tk-tan);background:linear-gradient(90deg,#f3e6d4 0%,#faf5e8 48%,#f7f1e6 100%);justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.tk-page .tk-cat-toggle{cursor:pointer;text-align:left;min-width:0;color:var(--tk-ink);background:0 0;border:none;flex-wrap:wrap;flex:1;align-items:center;gap:10px;padding:0;font-family:inherit;display:flex}.tk-page .tk-cat-chevron{color:var(--tk-tan);flex-shrink:0}.tk-page .tk-cat-name{color:var(--tk-ink);white-space:nowrap;font-family:Fraunces,serif;font-size:17px;font-weight:600}.tk-page .tk-cat-stats{flex-wrap:wrap;align-items:center;gap:18px;margin-left:8px;display:inline-flex}.tk-page .tk-cat-stat{color:var(--tk-ink2);white-space:nowrap;font-size:13px}.tk-page .tk-cat-planned{color:#6b5e54;font-weight:700}.tk-page .tk-cat-actual{color:#6b7f5e;font-weight:700}.tk-page .tk-cat-remain{color:var(--tk-ink);font-weight:700}.tk-page .tk-cat-remain-over{color:#a85f4e;font-weight:700}.tk-page .tk-cat-progress{align-items:center;gap:8px;margin-left:auto;display:inline-flex}.tk-page .tk-cat-actions{flex-shrink:0;align-items:center;gap:4px;display:flex}.tk-page .tk-icon-btn{cursor:pointer;color:var(--tk-ink3);background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:6px;display:inline-flex}.tk-page .tk-icon-btn:hover{color:var(--tk-ink);background:var(--tk-bg2)}.tk-page .tk-icon-btn.tk-icon-danger:hover{color:var(--tk-rose)}.tk-page .tk-cat-edit{background:var(--tk-bg);border-bottom:1px solid var(--tk-line);flex-wrap:wrap;align-items:center;gap:8px;padding:12px 16px;display:flex}.tk-page .tk-inline-add{background:var(--tk-bg);border:1px solid var(--tk-line);border-radius:var(--tk-radius);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:20px;padding:12px 16px;display:flex}.tk-page .tk-cat-edit input,.tk-page .tk-inline-add input{flex:1;min-width:160px}.tk-page .tk-budget-table td.tk-del-cell{text-align:center;width:4%;padding:0 8px}.tk-page .tk-budget-table .tk-del-btn{cursor:pointer;color:var(--tk-ink3);opacity:.3;background:0 0;border:none;padding:4px;font-size:14px;transition:opacity .15s}.tk-page .tk-budget-table tr:hover .tk-del-btn{opacity:.7}.tk-page .tk-budget-table .tk-del-btn:hover{color:var(--tk-rose);opacity:1}.tk-page .tk-badge{letter-spacing:.06em;border-radius:20px;align-items:center;padding:2px 8px;font-size:10px;font-weight:500;display:inline-flex}.tk-page .tk-badge-paid{background:var(--tk-sage-bg);color:#5a7050}.tk-page .tk-badge-pending{background:var(--tk-blush-bg);color:#8a4838}.tk-page .tk-badge-select{cursor:pointer;background:0 0;border:none;padding:2px 4px;font-size:10px}.tk-page .tk-add-row-btn{border:1px dashed var(--tk-line);width:100%;color:var(--tk-ink3);cursor:pointer;border-radius:var(--tk-radius);background:0 0;margin-top:2px;padding:10px;font-family:DM Sans,sans-serif;font-size:12px;transition:all .15s}.tk-page .tk-add-row-btn:hover{background:var(--tk-bg2);border-color:var(--tk-gold);color:var(--tk-ink)}.tk-page .tk-guest-filters{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.tk-page .tk-guest-filter-meta{color:var(--tk-ink3);margin-bottom:10px;font-size:11px}.tk-page .tk-guest-pagination{border-top:1px solid var(--tk-line);flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;margin-top:16px;padding-top:12px;display:flex}.tk-page .tk-guest-pagination-info{color:var(--tk-ink3);letter-spacing:.02em;text-align:center;min-width:6.5rem;font-size:12px}.tk-page .tk-guest-pagination .tk-btn:disabled{opacity:.4;cursor:not-allowed}.tk-page .tk-guest-empty{text-align:center;color:var(--tk-ink3);font-size:13px;padding:28px 12px!important}.tk-page .tk-guest-filter-row th{border-bottom:1px solid var(--tk-line);background:var(--tk-bg);vertical-align:top;text-transform:none;letter-spacing:0;padding:6px 8px 10px;font-weight:400}.tk-page .tk-col-filter{border:1px solid var(--tk-line);border-radius:var(--tk-radius);background:var(--tk-white);width:100%;min-width:0;color:var(--tk-ink);box-sizing:border-box;padding:6px 8px;font-family:inherit;font-size:12px}.tk-page .tk-col-filter:focus{border-color:var(--tk-gold);outline:none;box-shadow:0 0 0 3px rgba(196,168,108,.12)}.tk-page .tk-filter-chip{border:1px solid var(--tk-line);background:var(--tk-white);color:var(--tk-ink2);cursor:pointer;border-radius:20px;padding:5px 14px;font-family:inherit;font-size:12px;transition:all .15s}.tk-page .tk-filter-chip:hover{border-color:var(--tk-gold)}.tk-page .tk-filter-chip.active{background:var(--tk-ink);color:#ede5d8;border-color:var(--tk-ink)}.tk-page .tk-guest-add-form{background:var(--tk-white);border:1px solid var(--tk-line);grid-template-columns:1.6fr 1.2fr .9fr .9fr .9fr 1.2fr .55fr auto;align-items:end;gap:10px;margin-bottom:20px;padding:20px 24px;display:grid}.tk-page .tk-guest-sent-check{letter-spacing:0;text-transform:none;color:var(--tk-ink2);white-space:nowrap;align-items:center;gap:8px;margin-bottom:2px;font-size:12px;display:flex}.tk-page .tk-guest-sent-check.drawer{background:var(--tk-bg);border:1px solid var(--tk-line);border-radius:var(--tk-radius);padding:12px 14px}.tk-page .tk-guest-sent-check input{width:16px;height:16px;accent-color:var(--tk-gold)}.tk-page .tk-guest-qty-field input{width:100%;min-width:0}.tk-page .tk-guest-qty-cell{color:var(--tk-ink2);text-align:center;width:56px;font-size:12px}.tk-page .tk-guest-qty-cell input{text-align:center;width:56px}.tk-page .tk-guest-table{border-collapse:collapse;width:100%}.tk-page .tk-guest-table th{letter-spacing:.14em;text-transform:uppercase;color:var(--tk-ink3);text-align:left;border-bottom:2px solid var(--tk-line);background:var(--tk-bg);padding:8px 14px;font-size:10px;font-weight:500}.tk-page .tk-guest-table td{border-bottom:1px solid var(--tk-line);vertical-align:middle;padding:11px 14px;font-size:13px}.tk-page .tk-guest-table tr:hover td{background:var(--tk-bg)}.tk-page .tk-guest-name{font-weight:500}.tk-page .tk-guest-name-zh{color:var(--tk-ink2);font-family:Noto Serif TC,serif;font-size:13px;font-weight:300}.tk-page .tk-guest-secondary a{color:var(--tk-ink2);text-decoration:none}.tk-page .tk-guest-secondary a:hover{color:var(--tk-ink);text-decoration:underline}.tk-page .tk-guest-form-error{color:#c45c3e;margin:-8px 0 16px;font-size:12px}.tk-page .tk-guest-filter-panel{background:var(--tk-white);border:1px solid var(--tk-line);border-radius:6px;flex-direction:column;gap:16px;margin-bottom:16px;padding:18px 20px 16px;display:flex}.tk-page .tk-guest-filter-search input{background:var(--tk-bg);border:1px solid var(--tk-line);border-radius:var(--tk-radius);width:100%;color:var(--tk-ink);padding:11px 14px;font-family:inherit;font-size:14px}.tk-page .tk-guest-filter-search input:focus{border-color:var(--tk-gold);background:var(--tk-white);outline:none;box-shadow:0 0 0 3px rgba(196,168,108,.12)}.tk-page .tk-guest-filter-group{flex-direction:row;align-items:center;gap:10px 14px;display:flex}.tk-page .tk-guest-filter-label{letter-spacing:.06em;min-width:4.5em;color:var(--tk-ink3);flex-shrink:0;font-size:11px;font-weight:500;line-height:1.3}.tk-page .tk-guest-filter-label .en{letter-spacing:.12em;text-transform:uppercase;opacity:.75;margin-left:6px;font-size:10px}.tk-page .tk-filter-chips{flex-wrap:wrap;flex:1;align-items:center;gap:8px;min-width:0;display:flex}.tk-page .tk-chip-en{opacity:.55;margin-left:4px;font-size:10px;font-weight:400}.tk-page .tk-filter-chip.active .tk-chip-en{opacity:.65;color:#ede5d8}.tk-page .tk-guest-filter-result{border-top:1px solid var(--tk-line);color:var(--tk-ink2);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-top:8px;font-size:12px;display:flex}.tk-page .tk-guest-filter-result-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.tk-page .tk-guest-page-size{color:var(--tk-ink2);white-space:nowrap;align-items:center;gap:6px;font-size:12px;display:inline-flex}.tk-page .tk-guest-page-size>span{white-space:nowrap;flex:none}.tk-page .tk-guest-page-size select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--tk-bg);border:1px solid var(--tk-line);color:var(--tk-ink);background-image:linear-gradient(45deg,transparent 50%,var(--tk-ink3)50%),linear-gradient(135deg,var(--tk-ink3)50%,transparent 50%);cursor:pointer;background-position:calc(100% - 14px),calc(100% - 9px);background-repeat:no-repeat;background-size:5px 5px,5px 5px;border-radius:20px;padding:4px 28px 4px 12px;font-size:12px}.tk-page .tk-guest-page-size select:focus{border-color:var(--tk-ink3);outline:none}.tk-page .tk-btn-clear-filters{border:1px solid var(--tk-line);color:var(--tk-ink2);cursor:pointer;background:0 0;border-radius:20px;padding:5px 12px;font-family:inherit;font-size:11px}.tk-page .tk-btn-clear-filters:hover{border-color:var(--tk-gold);color:var(--tk-ink);background:var(--tk-gold-bg)}.tk-page .tk-guest-list{flex-direction:column;gap:12px;display:flex}.tk-page .tk-guest-empty-card{text-align:center;background:var(--tk-white);border:1px dashed var(--tk-line);color:var(--tk-ink3);border-radius:6px;padding:48px 24px;font-size:14px}.tk-page .tk-guest-card{background:var(--tk-white);border:1px solid var(--tk-line);border-radius:6px;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:20px;padding:18px 22px;display:flex}.tk-page .tk-guest-card:hover{border-color:#d8cfc2;box-shadow:0 2px 12px rgba(30,26,20,.04)}.tk-page .tk-guest-card-main{flex:1;min-width:0}.tk-page .tk-guest-primary{flex-wrap:wrap;align-items:center;gap:8px 10px;margin-bottom:10px;display:flex}.tk-page .tk-guest-chips{flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:10px;display:flex}.tk-page .tk-guest-chip{letter-spacing:.02em;border:1px solid transparent;border-radius:6px;align-items:center;gap:6px;padding:4px 10px;font-size:11px;line-height:1.3;display:inline-flex}.tk-page .tk-guest-chip-side{letter-spacing:.06em;border-radius:3px;padding:4px 8px;font-size:10px}.tk-page .tk-guest-chip-rsvp{color:#3a5f36;background:#e4f0e2;border-color:#c0d4bc}.tk-page .tk-guest-chip-rsvp.rsvp-no{color:#8a3a36;background:#f8e4e2;border-color:#e0c0bc}.tk-page .tk-guest-chip-rsvp.rsvp-pending{color:#555a64;background:#eef0f3;border-color:#d0d4da}.tk-page .tk-guest-chip-relation,.tk-page .tk-guest-chip-relation.tone-0{color:#4a3480;background:#ece4f8;border-color:#cfc0e6}.tk-page .tk-guest-chip-relation.tone-1{color:#7a3468;background:#f8e4f2;border-color:#e4c0d8}.tk-page .tk-guest-chip-relation.tone-2{color:#246848;background:#dff6e8;border-color:#b4dcc8}.tk-page .tk-guest-chip-relation.tone-3{color:#5a2878;background:#e8e0f6;border-color:#c8b8e4}.tk-page .tk-guest-chip-relation.tone-4{color:#245878;background:#dceef8;border-color:#b4d4e4}.tk-page .tk-guest-chip-relation.tone-5{color:#7a2848;background:#f8e0e8;border-color:#e4b8c8}.tk-page .tk-guest-chip-relation.tone-6{color:#1f5c58;background:#d8f4f0;border-color:#b0dcd8}.tk-page .tk-guest-chip-relation.tone-7{color:#6a3058;background:#f0e4ec;border-color:#d8c0d0}.tk-page .tk-guest-chip-meal,.tk-page .tk-guest-chip-meal.meal-other{color:#1a5c6c;background:#d4f0f6;border-color:#a0d0dc}.tk-page .tk-guest-chip-meal.meal-veg{color:#1f6b5c;background:#d8f3ec;border-color:#a8d8cc}.tk-page .tk-guest-chip-meal.meal-halal{color:#4a5c18;background:#e8f2c8;border-color:#c8d490}.tk-page .tk-guest-chip-meal.meal-allergy{color:#8a3e18;background:#fce4d4;border-color:#e8c0a4}.tk-page .tk-guest-chip-qty{color:#6a4a36;background:#efe4d6;border-color:#d4c0ac}.tk-page .tk-guest-chip-table,.tk-page .tk-guest-chip-table.tone-0{color:#8a5200;background:bisque;border-color:#f0c890}.tk-page .tk-guest-chip-table.tone-1{color:#7a3418;background:#f8d4c0;border-color:#e8b498}.tk-page .tk-guest-chip-table.tone-2{color:#6a5410;background:#f0e0b8;border-color:#dcc890}.tk-page .tk-guest-chip-table.tone-3{color:#5c3820;background:#e8d0b8;border-color:#d0b498}.tk-page .tk-guest-chip-table.tone-4{color:#8a3818;background:#f8c8a8;border-color:#e8b088}.tk-page .tk-guest-chip-table.tone-5{color:#704018;background:#f4dcc0;border-color:#e0c098}.tk-page .tk-guest-chip-sent{color:#353c78;background:#e4e6f6;border-color:#c0c4e4}.tk-page .tk-guest-chip-sent.muted{color:#6a6458;background:#e8e4dc;border-color:#d0c8bc}.tk-page .tk-guest-chip-sent.clickable{cursor:pointer;font:inherit}.tk-page .tk-guest-chip-sent.clickable:hover{border-color:#4a5580}.tk-page .tk-guest-relation,.tk-page .tk-meal-pill,.tk-page .tk-table-pill,.tk-page .tk-guest-qty-inline{color:var(--tk-ink3);font-size:12px}.tk-page .tk-guest-meta-sep{color:var(--tk-line);font-size:12px}.tk-page .tk-rsvp-badge{color:var(--tk-ink2);align-items:center;gap:6px;font-size:11px;display:inline-flex}.tk-page .tk-guest-secondary{color:var(--tk-ink2);flex-wrap:wrap;align-items:center;gap:2px 12px;margin-bottom:10px;font-size:12px;line-height:1.45;display:flex}.tk-page .tk-guest-contact{align-items:center;gap:4px;min-width:0;max-width:100%;display:inline-flex}.tk-page .tk-guest-contact-ico{opacity:.85;flex:none;font-size:12px;line-height:1}.tk-page .tk-guest-contact-address{text-overflow:ellipsis;white-space:nowrap;max-width:min(280px,100%);overflow:hidden}.tk-page .tk-guest-contact-address>span:last-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.tk-page .tk-guest-blessing{letter-spacing:.02em;color:#a63a28;white-space:pre-wrap;word-break:break-word;background:#fff4ea;border-left:3px solid #c45a3c;border-radius:4px;flex:100%;width:100%;margin:0;padding:10px 14px;font-family:Noto Serif TC,Fraunces,Songti SC,serif;font-size:15px;font-style:italic;font-weight:500;line-height:1.55}.tk-page .tk-guest-blessing-label{letter-spacing:.12em;text-transform:uppercase;color:#c45a3c;vertical-align:middle;margin-right:8px;font-family:DM Sans,sans-serif;font-size:10px;font-style:normal;font-weight:700;display:inline-block}.tk-page .tk-guest-nfc-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.tk-page .tk-nfc-pill{border-radius:20px;align-items:center;gap:8px;padding:4px 10px;font-size:11px;display:inline-flex}.tk-page .tk-nfc-pill.registered{background:var(--tk-gold-bg);color:#7a6030;border:1px solid #e0cc90}.tk-page .tk-nfc-pill.unregistered{color:var(--tk-ink3);background:0 0;padding-left:0}.tk-page .tk-nfc-ver{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:500}.tk-page .tk-guest-card-actions{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:4px;display:flex}.tk-page .tk-btn-text{color:var(--tk-ink2);cursor:pointer;border-radius:var(--tk-radius);background:0 0;border:none;padding:8px 14px;font-family:inherit;font-size:13px;font-weight:500}.tk-page .tk-btn-text:hover{color:var(--tk-ink);background:var(--tk-bg2)}.tk-page .tk-btn-text-danger{color:var(--tk-ink3)}.tk-page .tk-btn-text-danger:hover{color:#a05040;background:var(--tk-blush-bg)}.tk-page .tk-guest-drawer-backdrop{z-index:200;background:rgba(30,26,20,.28);position:fixed;top:0;bottom:0;left:0;right:0}.tk-page .tk-guest-drawer{background:var(--tk-white);z-index:210;flex-direction:column;width:min(440px,100%);display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-8px 0 32px rgba(30,26,20,.08)}.tk-page .tk-guest-drawer-header{border-bottom:1px solid var(--tk-line);justify-content:space-between;gap:16px;padding:28px 28px 20px;display:flex}.tk-page .tk-guest-drawer-title{color:var(--tk-ink);font-size:20px;font-weight:500}.tk-page .tk-guest-drawer-zh{color:var(--tk-ink3);margin-top:4px;font-size:12px}.tk-page .tk-guest-drawer-close{color:var(--tk-ink3);cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:20px}.tk-page .tk-guest-drawer-body{flex-direction:column;flex:1;gap:16px;padding:28px;display:flex;overflow-y:auto}.tk-page .tk-guest-drawer-section{letter-spacing:.16em;text-transform:uppercase;color:var(--tk-ink3);margin:8px 0 0;font-size:10px}.tk-page .tk-guest-drawer label .zh{text-transform:none;letter-spacing:.05em;color:var(--tk-ink3);margin-left:4px;font-family:Noto Serif TC,serif;font-size:10px;font-weight:200}.tk-page .tk-guest-drawer textarea{resize:vertical;min-height:88px;line-height:1.5}.tk-page .tk-guest-drawer-error{color:#c45c3e;margin:0;font-size:12px}.tk-page .tk-nfc-toggle-row{background:var(--tk-bg);border:1px solid var(--tk-line);border-radius:var(--tk-radius);justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;display:flex}.tk-page .tk-nfc-toggle-label{color:var(--tk-ink);letter-spacing:0;text-transform:none;font-size:13px;font-weight:500}.tk-page .tk-nfc-toggle-hint{color:var(--tk-ink3);margin-top:2px;font-size:11px}.tk-page .tk-toggle{flex-shrink:0;width:42px;height:24px;position:relative}.tk-page .tk-toggle input{opacity:0;width:0;height:0;position:absolute}.tk-page .tk-toggle-track{background:var(--tk-line);cursor:pointer;border-radius:12px;transition:background .2s;position:absolute;top:0;bottom:0;left:0;right:0}.tk-page .tk-toggle-track:after{content:"";background:var(--tk-white);border-radius:50%;width:18px;height:18px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px rgba(0,0,0,.12)}.tk-page .tk-toggle input:checked+.tk-toggle-track{background:var(--tk-gold)}.tk-page .tk-toggle input:checked+.tk-toggle-track:after{transform:translate(18px)}.tk-page .tk-guest-drawer-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.tk-page .tk-guest-drawer-footer{border-top:1px solid var(--tk-line);justify-content:flex-end;gap:10px;padding:16px 28px 24px;display:flex}.tk-page .tk-guest-blessing-cell{max-width:180px;color:var(--tk-ink3,#6b5544);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.tk-page .tk-guest-zh{color:var(--tk-ink3);font-family:Noto Serif TC,serif;font-size:12px;font-weight:200}.tk-page .tk-rsvp-dot{border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.tk-page .tk-rsvp-yes{background:var(--tk-sage)}.tk-page .tk-rsvp-no{background:var(--tk-blush)}.tk-page .tk-rsvp-pending{background:var(--tk-line)}.tk-page .tk-side-tag{letter-spacing:.06em;border-radius:3px;padding:2px 9px;font-size:10px}.tk-page .tk-tag-bride,.tk-page .tk-guest-chip-side.tk-tag-bride{color:#7a5088;background:#f0e8f4;border-color:#ddcfe4}.tk-page .tk-tag-groom,.tk-page .tk-guest-chip-side.tk-tag-groom{color:#405888;background:#e8eef8;border-color:#cfd8e8}.tk-page .tk-tag-both,.tk-page .tk-guest-chip-side.tk-tag-both{background:var(--tk-gold-bg);color:#7a6030;border-color:#e0cc90}.tk-page .tk-guest-count-bar{background:var(--tk-line);border:1px solid var(--tk-line);grid-template-columns:repeat(4,1fr);gap:1px;margin-bottom:20px;display:grid}.tk-page .tk-guest-count-bar-5{grid-template-columns:repeat(5,1fr)}.tk-page .tk-guest-count-cell{background:var(--tk-white);align-items:center;gap:12px;padding:16px 20px;display:flex}.tk-page .tk-guest-count-cell.clickable{text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer;border:0;transition:background .15s}.tk-page .tk-guest-count-cell.clickable:hover{background:var(--tk-gold-bg)}.tk-page .tk-payment-header-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.tk-page .tk-payment-item-select{min-width:12rem;max-width:18rem;font-size:12px}.tk-page .tk-payment-filters label{color:var(--tk-ink3);letter-spacing:.04em;flex-direction:column;gap:4px;font-size:11px;display:flex}.tk-page .tk-payment-filters input,.tk-page .tk-payment-filters select{min-width:10rem}.tk-page .tk-payment-table .tk-amount{white-space:nowrap;font-variant-numeric:tabular-nums}.tk-page .tk-payment-desc{color:var(--tk-ink);font-weight:500}.tk-page .tk-payment-remarks,.tk-page .tk-payment-cat{color:var(--tk-ink3);margin-top:2px;font-size:11px}.tk-page .tk-payment-status{align-items:center;font-size:12px;display:inline-flex}.tk-page .tk-payment-file-link{color:var(--tk-champagne);text-underline-offset:2px;font-size:12px;text-decoration:underline}.tk-page .tk-count-num{font-family:Fraunces,serif;font-size:32px;font-weight:200}.tk-page .tk-count-sub{color:var(--tk-ink3);font-size:11px}.tk-page .tk-count-num.color-sage{color:var(--tk-sage)}.tk-page .tk-count-num.color-muted{color:var(--tk-ink3)}.tk-page .tk-count-num.color-gold{color:var(--tk-gold)}.tk-page .tk-seating-workspace{grid-template-columns:1fr 290px;align-items:start;gap:24px;display:grid}.tk-page .tk-tables-col{min-width:0}.tk-page .tk-tables-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px;display:grid}.tk-page .tk-add-table-inline{border:1.5px dashed var(--tk-line);width:100%;color:var(--tk-ink3);cursor:pointer;background:0 0;border-radius:6px;margin-top:14px;padding:14px;font-family:Noto Serif TC,DM Sans,sans-serif;font-size:13px;transition:all .15s}.tk-page .tk-add-table-inline:hover{border-color:var(--tk-gold);color:var(--tk-ink);background:var(--tk-gold-bg)}.tk-page .tk-table-card{background:var(--tk-white);border:1px solid var(--tk-line);cursor:pointer;border-radius:8px;transition:border-color .15s,box-shadow .15s,background .15s;overflow:hidden}.tk-page .tk-table-card:hover{border-color:#d8cfc2;box-shadow:0 2px 12px rgba(30,26,20,.04)}.tk-page .tk-table-card.selected{border-color:var(--tk-gold);box-shadow:0 0 0 3px rgba(196,168,108,.18)}.tk-page .tk-table-card.drag-over{border-color:var(--tk-gold);background:var(--tk-gold-bg)}.tk-page .tk-table-card.nearly-full{background:linear-gradient(180deg,var(--tk-gold-bg)0%,var(--tk-white)48%)}.tk-page .tk-table-card.over-cap{background:linear-gradient(180deg,var(--tk-blush-bg)0%,var(--tk-white)48%);border-color:#e8c8bc}.tk-page .tk-table-card-header{border-bottom:1px solid var(--tk-line);flex-wrap:wrap;align-items:center;gap:8px;padding:12px 14px 8px;display:flex}.tk-page .tk-table-name-input{min-width:0;color:var(--tk-ink);background:0 0;border:none;border-bottom:1px solid transparent;outline:none;flex:1;padding:2px 0;font-family:Fraunces,Noto Serif TC,serif;font-size:16px;font-weight:300}.tk-page .tk-table-name-input:focus{border-bottom-color:var(--tk-gold)}.tk-page .tk-table-header-meta{flex-shrink:0;align-items:center;gap:6px;display:flex}.tk-page .tk-seat-fill{color:var(--tk-ink3);letter-spacing:.04em;white-space:nowrap;font-family:Noto Serif TC,DM Sans,sans-serif;font-size:11px}.tk-page .tk-seat-fill.full{color:#7a6030}.tk-page .tk-seat-fill.warn{color:#a05040}.tk-page .tk-table-type-select,.tk-page .tk-table-capacity-select{border:1px solid var(--tk-line);background:var(--tk-bg);color:var(--tk-ink2);cursor:pointer;border-radius:3px;outline:none;flex-shrink:0;padding:3px 6px;font-family:inherit;font-size:11px}.tk-page .tk-table-type-select{max-width:7.5rem}.tk-page .tk-table-capacity-select{text-align:center;width:3.4rem;min-width:3.4rem;max-width:3.4rem;padding:3px 4px}.tk-page .tk-table-capacity-select:focus{border-color:var(--tk-gold)}.tk-page .tk-seating-header-actions{flex-wrap:nowrap;flex-shrink:0;gap:12px}.tk-page .tk-seating-header-actions .tk-meta,.tk-page .tk-seating-header-actions .tk-btn,.tk-page .tk-seating-header-actions .tk-table-type-select{white-space:nowrap;flex-shrink:0}.tk-page .tk-seating-header-actions .tk-table-type-select{width:max-content;min-width:10.5rem;max-width:none;padding:8px 12px}.tk-page .tk-table-icon-btn{width:26px;height:26px;color:var(--tk-ink3);cursor:pointer;background:0 0;border:none;border-radius:3px;justify-content:center;align-items:center;padding:0;font-size:14px;display:inline-flex}.tk-page .tk-table-icon-btn:hover{background:var(--tk-blush-bg);color:#a05040}.tk-page .tk-table-card-body{flex-direction:column;align-items:center;gap:14px;padding:16px 14px 14px;display:flex}.tk-page .tk-round-table{flex-shrink:0;width:168px;height:168px;position:relative}.tk-page .tk-round-table-center{background:var(--tk-bg2);border:1.5px solid var(--tk-line);z-index:1;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;top:28%;bottom:28%;left:28%;right:28%}.tk-page .tk-rt-label{color:var(--tk-ink3);letter-spacing:.06em;font-family:Noto Serif TC,serif;font-size:10px;font-weight:200}.tk-page .tk-rt-num{color:var(--tk-ink2);font-family:Fraunces,serif;font-size:18px;font-weight:200;line-height:1.1}.tk-page .tk-table-card.nearly-full .tk-round-table-center{background:var(--tk-gold-bg);border-color:#e0cc90}.tk-page .tk-table-card.over-cap .tk-round-table-center{background:var(--tk-blush-bg);border-color:#e8c8bc}.tk-page .tk-seat-slot{letter-spacing:-.02em;z-index:2;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:9px;font-weight:500;display:flex;position:absolute;transform:translate(-50%,-50%)}.tk-page .tk-seat-slot.empty{color:transparent;background:0 0;border:1.5px dashed #d0c8bc}.tk-page .tk-seat-slot.filled{background:var(--tk-ink);color:#ede5d8;border:1.5px solid var(--tk-ink)}.tk-page .tk-seat-slot.filled.bridal{background:var(--tk-gold);color:#3a2810;border-color:#b89850}.tk-page .tk-seated-list{flex-wrap:wrap;gap:6px;width:100%;min-height:28px;display:flex}.tk-page .tk-seated-pill{background:var(--tk-bg);border:1px solid var(--tk-line);color:var(--tk-ink2);border-radius:20px;align-items:center;gap:5px;max-width:100%;padding:4px 8px 4px 10px;font-size:12px;display:inline-flex}.tk-page .tk-sp-name{text-overflow:ellipsis;white-space:nowrap;max-width:140px;overflow:hidden}.tk-page .tk-sp-zh{color:var(--tk-ink3);font-family:Noto Serif TC,serif;font-size:11px;font-weight:300}.tk-page .tk-sp-x{color:var(--tk-ink3);cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:12px;line-height:1}.tk-page .tk-sp-x:hover{color:#a05040}.tk-page .tk-seated-empty{color:var(--tk-ink3);text-align:center;width:100%;padding:4px 0;font-family:Noto Serif TC,serif;font-size:11px;font-style:italic;font-weight:200}.tk-page .tk-guest-qty-badge{color:var(--tk-ink3);flex-shrink:0;font-size:10px;font-weight:600;line-height:1}.tk-page .tk-pool-col{align-self:start;position:-webkit-sticky;position:sticky;top:100px}.tk-page .tk-pool-panel{background:var(--tk-white);border:1px solid var(--tk-line);border-radius:8px;flex-direction:column;max-height:calc(100vh - 130px);display:flex;overflow:hidden}.tk-page .tk-pool-header{border-bottom:1px solid var(--tk-line);flex-shrink:0;padding:14px 16px 10px}.tk-page .tk-pool-title{color:var(--tk-ink);align-items:baseline;gap:8px;font-family:Noto Serif TC,Fraunces,serif;font-size:15px;font-weight:300;display:flex}.tk-page .tk-pool-count{color:var(--tk-gold);font-family:Fraunces,serif;font-size:18px;font-weight:200}.tk-page .tk-pool-hint{color:var(--tk-ink3);letter-spacing:.02em;margin-top:4px;font-size:10px;line-height:1.4}.tk-page .tk-pool-filters{border-bottom:1px solid var(--tk-line);flex-direction:column;flex-shrink:0;gap:8px;padding:10px 14px;display:flex}.tk-page .tk-pool-search{background:var(--tk-bg);border:1px solid var(--tk-line);border-radius:var(--tk-radius);width:100%;color:var(--tk-ink);outline:none;padding:8px 12px;font-size:13px}.tk-page .tk-pool-search:focus{border-color:var(--tk-gold);background:var(--tk-white);box-shadow:0 0 0 3px rgba(196,168,108,.12)}.tk-page .tk-pool-chips{flex-wrap:wrap;gap:5px;display:flex}.tk-page .tk-pool-chips .tk-filter-chip{border-radius:20px;padding:4px 10px}.tk-page .tk-pool-rsvp-tip{color:var(--tk-ink3);align-items:center;gap:6px;font-size:11px;display:flex}.tk-page .tk-pool-rsvp-tip label{cursor:pointer;align-items:center;gap:5px;display:inline-flex}.tk-page .tk-pool-rsvp-tip input{accent-color:var(--tk-gold)}.tk-page .tk-pool-guests{flex-direction:column;flex:1;gap:6px;min-height:120px;padding:12px 14px 16px;display:flex;overflow-y:auto}.tk-page .tk-pool-guest{background:var(--tk-bg);border:1px solid var(--tk-line);cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none;border-radius:6px;align-items:center;gap:8px;width:100%;max-width:100%;padding:8px 10px;display:flex}.tk-page .tk-pool-guest:hover{border-color:var(--tk-gold);background:var(--tk-gold-bg)}.tk-page .tk-pool-guest.dragging{opacity:.45}.tk-page .tk-pool-guest.declined{opacity:.55;cursor:default}.tk-page .tk-pg-avatar{background:var(--tk-ink);color:#ede5d8;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:10px;font-weight:500;display:flex}.tk-page .tk-pg-info{flex:1;min-width:0}.tk-page .tk-pg-name{color:var(--tk-ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;display:block;overflow:hidden}.tk-page .tk-pg-zh{color:var(--tk-ink3);text-overflow:ellipsis;white-space:nowrap;font-family:Noto Serif TC,serif;font-size:11px;font-weight:300;display:block;overflow:hidden}.tk-page .tk-pg-tags{flex-shrink:0;gap:4px;display:flex}.tk-page .tk-tag-dot{border-radius:50%;width:7px;height:7px}.tk-page .tk-tag-dot.bride{background:var(--tk-blush)}.tk-page .tk-tag-dot.groom{background:#7a90a8}.tk-page .tk-tag-dot.both,.tk-page .tk-tag-dot.rsvp-yes{background:var(--tk-sage)}.tk-page .tk-tag-dot.rsvp-pending{background:var(--tk-gold)}.tk-page .tk-tag-dot.rsvp-no{background:#c08070}.tk-page .tk-pool-empty{text-align:center;color:var(--tk-ink3);padding:28px 12px;font-family:Noto Serif TC,serif;font-size:13px;font-weight:200;line-height:1.6}.tk-page .tk-rundown-header-form{background:var(--tk-white);border:1px solid var(--tk-line);grid-template-columns:1fr 1fr 1fr;gap:16px;margin-bottom:28px;padding:20px 24px;display:grid}.tk-page .tk-timeline-list{background:var(--tk-white);border:1px solid var(--tk-line);border-radius:10px;overflow:hidden}.tk-page .tk-timeline-list-empty{text-align:center;color:var(--tk-ink3);padding:36px 20px;font-size:13px}.tk-page .tk-timeline-list-date{letter-spacing:.1em;text-transform:uppercase;color:var(--tk-ink3);background:var(--tk-bg);border-top:1px solid var(--tk-line);padding:12px 20px 6px;font-size:11px}.tk-page .tk-timeline-list>div:first-child .tk-timeline-list-date{border-top:none}.tk-page .tk-timeline-list-item{border-top:1px solid var(--tk-line);cursor:pointer;align-items:flex-start;gap:12px;padding:14px 20px;transition:background .15s;display:flex}.tk-page .tk-timeline-list-date+.tk-timeline-list-item,.tk-page .tk-timeline-list>div:first-child>.tk-timeline-list-item{border-top:none}.tk-page .tk-timeline-list-item:hover{background:var(--tk-bg)}.tk-page .tk-timeline-list-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px;margin-top:6px}.tk-page .tk-timeline-list-time{width:110px;color:var(--tk-ink3);flex-shrink:0;padding-top:2px;font-size:12px}.tk-page .tk-timeline-list-body{flex:1;min-width:0}.tk-page .tk-timeline-list-title{color:var(--tk-ink);font-size:14px;font-weight:500}.tk-page .tk-timeline-list-detail{color:var(--tk-ink2);margin-top:2px;font-size:12px}.tk-page .tk-timeline-list-meta{color:var(--tk-ink3);margin-top:4px;font-size:11px}.tk-page .tk-timeline-chips{flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px;display:flex}.tk-page .tk-timeline-chip{border-radius:999px;align-items:center;gap:5px;max-width:100%;padding:3px 10px 3px 8px;font-size:12px;font-weight:500;line-height:1.35;display:inline-flex}.tk-page .tk-timeline-chip svg{flex-shrink:0}.tk-page .tk-timeline-chip>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tk-page .tk-timeline-chip-detail{color:#3d6b4f;background:#e6f3ea}.tk-page .tk-timeline-chip-detail svg{color:#5a8f6a}.tk-page .tk-timeline-chip-staff{color:#5b4b8a;background:#ede8f8}.tk-page .tk-timeline-chip-staff svg{color:#6b5b95}.tk-page .tk-timeline-chip-owner{color:#9a5b3a;background:#f8ede4}.tk-page .tk-timeline-chip-owner svg{color:#c47a55}.tk-page .tk-timeline{padding-left:28px;position:relative}.tk-page .tk-timeline:before{content:"";background:var(--tk-line);width:2px;position:absolute;top:8px;bottom:8px;left:7px}.tk-page .tk-timeline-item{margin-bottom:4px;position:relative}.tk-page .tk-timeline-dot{background:var(--tk-white);border:2px solid var(--tk-line);z-index:1;border-radius:50%;width:10px;height:10px;position:absolute;top:14px;left:-24px}.tk-page .tk-timeline-item.active .tk-timeline-dot{border-color:var(--tk-gold);background:var(--tk-gold)}.tk-page .tk-timeline-item.done .tk-timeline-dot{border-color:var(--tk-sage);background:var(--tk-sage)}.tk-page .tk-timeline-row{background:var(--tk-white);border:1px solid var(--tk-line);border-radius:var(--tk-radius);grid-template-columns:90px 80px 1fr auto;align-items:center;gap:10px;margin-bottom:3px;padding:10px 14px;transition:border-color .15s;display:grid}.tk-page .tk-timeline-row:hover{border-color:var(--tk-gold)}.tk-page .tk-timeline-row input[type=time]{border-color:var(--tk-line);padding:6px 10px;font-family:DM Sans,sans-serif;font-size:13px}.tk-page .tk-event-category{border-radius:3px;padding:3px 9px;font-size:10px}.tk-page .tk-cat-ceremony{color:#7a5088;background:#f0e8f4}.tk-page .tk-cat-reception{background:var(--tk-gold-bg);color:#7a6030}.tk-page .tk-cat-photo{background:var(--tk-sage-bg);color:#5a7050}.tk-page .tk-cat-family{background:var(--tk-blush-bg);color:#8a4838}.tk-page .tk-cat-logistics{background:var(--tk-bg2);color:var(--tk-ink2)}.tk-page .tk-timeline-event-name input{color:var(--tk-ink);background:0 0;border:none;padding:0;font-size:13px}.tk-page .tk-timeline-event-name input:focus{border-bottom:1px solid var(--tk-gold);box-shadow:none;outline:none}.tk-page .tk-rundown-note{color:var(--tk-ink3);font-size:11px}.tk-page .tk-todo-add-row{background:var(--tk-white);border:1px solid var(--tk-line);border-radius:var(--tk-radius);align-items:flex-end;gap:10px;margin-bottom:28px;padding:14px 18px;display:flex}.tk-page .tk-todo-add-row .tk-field-group{flex:1}.tk-page .tk-todo-add-row .tk-todo-date-field{flex:0 0 160px}.tk-page .tk-todo-add-row .tk-todo-owner-field{flex:0 0 140px}.tk-page .tk-todo-add-row .tk-todo-time-field{flex:0 0 120px}.tk-page .tk-todo-add-row .tk-btn{flex-shrink:0}.tk-page .tk-todo-timeline{flex-direction:column;gap:0;display:flex;position:relative}.tk-page .tk-todo-month-group{margin-bottom:6px;padding-left:28px;position:relative}.tk-page .tk-todo-month-group:before{content:"";background:var(--tk-line);width:1px;position:absolute;top:26px;bottom:-6px;left:5px}.tk-page .tk-todo-month-group:last-child:before{display:none}.tk-page .tk-todo-month-dot{background:var(--tk-gold-bg);border:2px solid var(--tk-gold);border-radius:50%;width:11px;height:11px;position:absolute;top:5px;left:0}.tk-page .tk-todo-month-group.is-past .tk-todo-month-dot{background:var(--tk-ink3);border-color:var(--tk-ink3)}.tk-page .tk-todo-month-header{justify-content:space-between;align-items:baseline;padding-bottom:10px;display:flex}.tk-page .tk-todo-month-title{color:var(--tk-ink);font-family:Fraunces,serif;font-size:16px;font-weight:300}.tk-page .tk-todo-month-title .tk-zh{color:var(--tk-ink3);margin-left:8px;font-family:Noto Serif TC,serif;font-size:11px;font-weight:200}.tk-page .tk-todo-month-count{color:var(--tk-ink3);font-size:11px}.tk-page .tk-todo-month-items{background:var(--tk-white);border:1px solid var(--tk-line);border-radius:var(--tk-radius);margin-bottom:22px;overflow:hidden}.tk-page .tk-todo-item{border-bottom:1px solid var(--tk-line);border-left:3px solid transparent;align-items:center;gap:14px;padding:12px 18px;transition:background .1s;display:flex}.tk-page .tk-todo-item:last-child{border-bottom:none}.tk-page .tk-todo-item:hover{background:var(--tk-bg)}.tk-page .tk-todo-item.status-overdue{border-left-color:#c97b64}.tk-page .tk-todo-item.status-soon{border-left-color:var(--tk-gold)}.tk-page .tk-todo-item.status-later{border-left-color:var(--tk-sage);opacity:.85}.tk-page .tk-todo-item.status-done{border-left-color:var(--tk-line)}.tk-page .tk-todo-cb{border:1.5px solid var(--tk-line);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--tk-white);border-radius:3px;flex-shrink:0;width:16px;height:16px;transition:all .15s}.tk-page .tk-todo-cb:checked{background:var(--tk-sage);border-color:var(--tk-sage);background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 12 12' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2 6l3 3 5-5' stroke='white' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:10px}.tk-page .tk-todo-content{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.tk-page .tk-todo-title{color:var(--tk-ink);font-size:14px;font-weight:400;line-height:1.35}.tk-page .tk-todo-meta{color:var(--tk-ink2);flex-wrap:wrap;align-items:center;gap:6px;font-size:12px;line-height:1.3;display:flex}.tk-page .tk-todo-amount{font-variant-numeric:tabular-nums;color:var(--tk-ink);margin-right:2px;font-weight:500}.tk-page .tk-todo-chip{border-radius:999px;align-items:center;gap:5px;max-width:100%;padding:3px 10px 3px 8px;font-size:12px;font-weight:500;line-height:1.35;display:inline-flex}.tk-page .tk-todo-chip svg{flex-shrink:0}.tk-page .tk-todo-chip>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tk-page .tk-todo-chip-owner{color:#5b4b8a;background:#ede8f8}.tk-page .tk-todo-chip-owner svg{color:#6b5b95}.tk-page .tk-todo-chip-vendor{color:#3a5f8a;background:#e5eef8}.tk-page .tk-todo-chip-vendor svg{color:#4a7ab0}.tk-page .tk-todo-chip-notes{color:#3d6b4f;background:#e6f3ea}.tk-page .tk-todo-chip-notes svg{color:#5a8f6a}.tk-page .tk-todo-item.status-done .tk-todo-meta{opacity:.8}.tk-page .tk-todo-item.status-done .tk-todo-amount{color:var(--tk-ink3)}.tk-page .tk-todo-item.status-done .tk-todo-title{color:var(--tk-ink3);text-decoration:line-through}.tk-page .tk-todo-date-label{letter-spacing:.09em;text-transform:uppercase;cursor:pointer;width:-moz-fit-content;width:fit-content;color:inherit;text-align:left;background:0 0;border:none;border-radius:3px;margin:-1px -3px;padding:1px 3px;font-family:inherit;font-size:10.5px;font-weight:500}.tk-page .tk-todo-when{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.tk-page .tk-todo-time-label{letter-spacing:.06em;cursor:pointer;width:-moz-fit-content;width:fit-content;color:inherit;text-align:left;background:0 0;border:none;border-radius:3px;margin:-1px -3px;padding:1px 3px;font-family:inherit;font-size:10.5px;font-weight:500}.tk-page .tk-todo-time-label.is-empty{color:var(--tk-ink3);letter-spacing:.02em;text-transform:none;font-weight:400}.tk-page .tk-todo-date-label:hover,.tk-page .tk-todo-time-label:hover{background:var(--tk-bg2)}.tk-page .tk-todo-item.status-overdue .tk-todo-date-label,.tk-page .tk-todo-item.status-overdue .tk-todo-time-label:not(.is-empty){color:#b25940}.tk-page .tk-todo-item.status-soon .tk-todo-date-label,.tk-page .tk-todo-item.status-soon .tk-todo-time-label:not(.is-empty){color:#9a7a2e}.tk-page .tk-todo-item.status-later .tk-todo-date-label,.tk-page .tk-todo-item.status-later .tk-todo-time-label:not(.is-empty){color:var(--tk-ink3)}.tk-page .tk-todo-item.status-done .tk-todo-date-label,.tk-page .tk-todo-item.status-done .tk-todo-time-label{color:var(--tk-ink3);opacity:.7}.tk-page .tk-todo-date-edit,.tk-page .tk-todo-time-edit{border:1px solid var(--tk-gold);background:var(--tk-white);color:var(--tk-ink2);border-radius:3px;width:-moz-fit-content;width:fit-content;padding:3px 6px;font-family:DM Sans,sans-serif;font-size:11px}.tk-page .tk-todo-status{letter-spacing:.04em;white-space:nowrap;border-radius:10px;flex-shrink:0;padding:3px 9px;font-size:10px;font-weight:500}.tk-page .tk-todo-status.overdue{background:var(--tk-blush-bg);color:#a05040}.tk-page .tk-todo-status.soon{background:var(--tk-gold-bg);color:#7a6030}.tk-page .tk-todo-status.later{background:var(--tk-sage-bg);color:#5c6e52}.tk-page .tk-todo-edit{color:var(--tk-ink3);cursor:pointer;letter-spacing:.04em;opacity:.7;background:0 0;border:none;flex-shrink:0;padding:2px 4px;font-size:11px;line-height:1;transition:opacity .15s,color .15s}.tk-page .tk-todo-edit:hover{opacity:1;color:var(--tk-gold)}.tk-page .tk-todo-remove{color:var(--tk-ink3);cursor:pointer;opacity:.5;background:0 0;border:none;flex-shrink:0;font-size:15px;line-height:1;transition:opacity .15s,color .15s}.tk-page .tk-todo-remove:hover{opacity:1;color:#a05040}.tk-page .tk-todo-empty{text-align:center;color:var(--tk-ink3);background:var(--tk-white);border:1px dashed var(--tk-line);border-radius:var(--tk-radius);padding:30px;font-size:13px}.tk-page .tk-guodali-header-actions{align-items:center;gap:12px;display:flex}.tk-page .tk-guodali-card.is-locked .tk-guodali-controls{opacity:.6}.tk-page .tk-guodali-card.is-locked .tk-guodali-control-field select:disabled,.tk-page .tk-guodali-card.is-locked .tk-guodali-stepper-btn:disabled{cursor:not-allowed}.tk-page .tk-guodali-unified-field select:disabled{cursor:not-allowed;opacity:.65}.tk-page .tk-guodali-intro-row{align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.tk-page .tk-guodali-intro{background:var(--tk-gold-bg);border:1px solid #e0cc90;flex:1;align-items:flex-start;gap:16px;min-width:0;padding:18px 24px;display:flex}.tk-page .tk-guodali-intro .tk-icon{flex-shrink:0;font-size:28px}.tk-page .tk-guodali-intro p{color:#7a6030;font-size:13px;line-height:1.7}.tk-page .tk-guodali-unified{flex-direction:column;flex:none;align-items:flex-end;gap:6px;padding-top:4px;display:flex}.tk-page .tk-guodali-unified-field{flex-direction:column;align-items:flex-end;gap:6px;display:flex}.tk-page .tk-guodali-unified-field>span{color:var(--tk-ink3);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:600}.tk-page .tk-guodali-unified-field select{border:1px solid var(--tk-line);background:var(--tk-white);min-width:132px;color:var(--tk-ink);border-radius:4px;padding:7px 10px;font-size:13px}.tk-page .tk-guodali-unified-hint{color:var(--tk-gold);font-size:11px}.tk-page .tk-guodali-intro strong{font-weight:600}.tk-page .tk-guodali-cards{grid-template-columns:1fr 1fr;gap:16px;display:grid}.tk-page .tk-guodali-card{background:var(--tk-white);border:1px solid var(--tk-line);border-radius:var(--tk-radius);padding:18px 20px 18px 44px;transition:background .2s,border-color .2s,opacity .2s;position:relative}.tk-page .tk-guodali-card:hover:not(.is-cut){background:var(--tk-bg);border-color:#d4c4a8}.tk-page .tk-guodali-card.is-purchased:not(.is-cut){border-color:var(--tk-gold);background:var(--tk-gold-bg)}.tk-page .tk-guodali-card.is-cut{opacity:.72;background:#f5f5f4;border-color:#e7e5e4}.tk-page .tk-guodali-card-x{color:rgba(120,113,108,.22);pointer-events:none;z-index:1;justify-content:center;align-items:center;font-size:72px;font-weight:200;line-height:1;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}.tk-page .tk-guodali-cb{border:1.5px solid var(--tk-line);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--tk-white);z-index:2;border-radius:3px;flex-shrink:0;width:18px;height:18px;transition:all .15s;position:absolute;top:16px;left:16px}.tk-page .tk-guodali-cb:disabled{opacity:.35;cursor:not-allowed}.tk-page .tk-guodali-cb:checked{background:var(--tk-gold);border-color:var(--tk-gold);background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 12 12' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2 6l3 3 5-5' stroke='white' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:10px}.tk-page .tk-guodali-card-body{z-index:2;position:relative}.tk-page .tk-guodali-name{color:var(--tk-ink);margin-bottom:2px;font-family:Noto Serif TC,serif;font-size:16px;font-weight:400}.tk-page .tk-guodali-name-en{color:var(--tk-ink3);margin-bottom:8px;font-size:11px}.tk-page .tk-guodali-meaning{color:var(--tk-ink2);margin-bottom:12px;font-size:12px;line-height:1.6}.tk-page .tk-guodali-variants{border:1px solid var(--tk-line);background:rgba(0,0,0,.02);border-radius:6px;flex-direction:column;gap:4px;margin-bottom:14px;padding:10px 12px;display:flex}.tk-page .tk-guodali-variant-empty{color:var(--tk-ink3);font-size:12px;font-style:italic}.tk-page .tk-guodali-card.is-pending{border-style:dashed}.tk-page .tk-guodali-variants.is-pending .tk-guodali-variant-line{color:var(--tk-ink2)}.tk-page .tk-guodali-stepper-btn:disabled{opacity:.35;cursor:not-allowed}.tk-page .tk-guodali-stepper-btn:disabled:hover{background:var(--tk-bg)}.tk-page .tk-guodali-card.is-cut .tk-guodali-variants{background:0 0}.tk-page .tk-guodali-card.is-cut .tk-guodali-variant-line.is-active,.tk-page .tk-guodali-card.is-cut .tk-guodali-variant-line.is-active .tk-guodali-variant-label{color:var(--tk-ink3)}.tk-page .tk-guodali-variant-line{color:var(--tk-ink3);font-size:12px;line-height:1.5}.tk-page .tk-guodali-variant-line.is-active{color:var(--tk-ink);font-weight:500}.tk-page .tk-guodali-variant-line.is-active .tk-guodali-variant-label{color:var(--tk-gold)}.tk-page .tk-guodali-variant-label{font-weight:500}.tk-page .tk-guodali-variant-sep{opacity:.5;margin:0 2px}.tk-page .tk-guodali-controls{flex-wrap:wrap;align-items:flex-end;gap:16px 24px;display:flex}.tk-page .tk-guodali-control-field{flex-direction:column;gap:6px;display:flex}.tk-page .tk-guodali-control-field>span{color:var(--tk-ink3);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:500}.tk-page .tk-guodali-control-field select{border:1px solid var(--tk-line);background:var(--tk-white);min-width:120px;color:var(--tk-ink);border-radius:4px;padding:7px 10px;font-size:13px}.tk-page .tk-guodali-card.is-cut .tk-guodali-control-field select{color:var(--tk-ink3);background:#ececec}.tk-page .tk-guodali-qty-row{align-items:center;gap:8px;display:flex}.tk-page .tk-guodali-unit{color:var(--tk-ink2);min-width:1.5em;font-size:13px}.tk-page .tk-guodali-stepper{border:1px solid var(--tk-line);background:var(--tk-white);border-radius:4px;align-items:center;display:flex;overflow:hidden}.tk-page .tk-guodali-stepper-btn{background:var(--tk-bg);width:36px;height:34px;color:var(--tk-ink);cursor:pointer;border:none;font-size:18px;line-height:1;transition:background .1s}.tk-page .tk-guodali-stepper-btn:hover{background:var(--tk-line)}.tk-page .tk-guodali-stepper-val{text-align:center;min-width:40px;color:var(--tk-ink);border-left:1px solid var(--tk-line);border-right:1px solid var(--tk-line);padding:6px 4px;font-size:14px;font-weight:500}.tk-page .tk-guodali-hint{color:var(--tk-ink3);margin-top:10px;font-size:11px}.tk-page .tk-guodali-divider{color:var(--tk-ink3);letter-spacing:.06em;text-transform:uppercase;grid-column:1/-1;align-items:center;gap:12px;margin:8px 0;font-size:11px;display:flex}.tk-page .tk-guodali-divider:before,.tk-page .tk-guodali-divider:after{content:"";border-top:1px dashed var(--tk-line);flex:1}.tk-page .tk-guodali-empty{text-align:center;color:var(--tk-ink3);background:var(--tk-white);border:1px dashed var(--tk-line);border-radius:var(--tk-radius);grid-column:1/-1;padding:24px;font-size:13px}.tk-page .tk-guodali-progress{background:var(--tk-white);border:1px solid var(--tk-line);align-items:center;gap:20px;margin-bottom:20px;padding:16px 20px;display:flex}.tk-page .tk-guodali-progress .tk-gp-track{background:var(--tk-line);border-radius:2px;flex:1;height:4px}.tk-page .tk-guodali-progress .tk-gp-fill{background:var(--tk-tan);border-radius:2px;height:100%;transition:width .4s}.tk-page .tk-memory-add-card{background:var(--tk-white);border:1px solid var(--tk-line);border-radius:var(--tk-radius);margin-bottom:32px;padding:20px 24px}.tk-page .tk-memory-add-grid{grid-template-columns:140px 1fr;gap:20px;display:grid}.tk-page .tk-memory-photo-drop{border:1.5px dashed var(--tk-line);border-radius:var(--tk-radius);background:var(--tk-bg);cursor:pointer;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:6px;width:140px;height:140px;transition:border-color .15s,background .15s;display:flex;position:relative;overflow:hidden}.tk-page .tk-memory-photo-drop:hover{border-color:var(--tk-gold);background:var(--tk-gold-bg)}.tk-page .tk-memory-photo-drop .tk-icon{opacity:.4;font-size:22px}.tk-page .tk-memory-photo-drop .tk-hint{color:var(--tk-ink3);text-align:center;letter-spacing:.04em;padding:0 8px;font-size:10px}.tk-page .tk-memory-photo-drop img{object-fit:cover;width:100%;height:100%;position:absolute;top:0;bottom:0;left:0;right:0}.tk-page .tk-memory-photo-drop input[type=file]{display:none}.tk-page .tk-memory-add-fields{flex-direction:column;gap:14px;display:flex}.tk-page .tk-memory-add-row{grid-template-columns:160px 1fr;gap:14px;display:grid}.tk-page .tk-memory-add-actions{justify-content:flex-end;margin-top:4px;display:flex}.tk-page .tk-memory-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:22px;display:grid}.tk-page .tk-memory-card{background:var(--tk-white);border:1px solid var(--tk-line);border-radius:var(--tk-radius);flex-direction:column;transition:box-shadow .15s,transform .15s;display:flex;overflow:hidden}.tk-page .tk-memory-card:hover{transform:translateY(-2px);box-shadow:0 6px 18px rgba(30,26,20,.07)}.tk-page .tk-memory-card-photo{aspect-ratio:4/3;background:var(--tk-bg2);justify-content:center;align-items:center;width:100%;display:flex;position:relative;overflow:hidden}.tk-page .tk-memory-card-photo img{object-fit:cover;width:100%;height:100%}.tk-page .tk-memory-card-photo .tk-placeholder{opacity:.3;font-size:30px}.tk-page .tk-memory-remove-btn{color:#fff;cursor:pointer;opacity:0;background:rgba(30,26,20,.55);border:none;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:12px;line-height:1;transition:opacity .15s;display:flex;position:absolute;top:8px;right:8px}.tk-page .tk-memory-card:hover .tk-memory-remove-btn{opacity:1}.tk-page .tk-memory-card-body{flex-direction:column;flex:1;gap:6px;padding:16px 18px 20px;display:flex}.tk-page .tk-memory-date{letter-spacing:.1em;text-transform:uppercase;color:var(--tk-gold);font-size:10px;font-weight:500}.tk-page .tk-memory-title{font-family:var(--tk-font-serif);color:var(--tk-ink);font-size:17px;font-weight:400;line-height:1.25}.tk-page .tk-memory-desc{color:var(--tk-ink2);-webkit-line-clamp:4;-webkit-box-orient:vertical;font-size:12.5px;line-height:1.55;display:-webkit-box;overflow:hidden}.tk-page .tk-memory-empty{text-align:center;color:var(--tk-ink3);background:var(--tk-white);border:1px dashed var(--tk-line);border-radius:var(--tk-radius);grid-column:1/-1;padding:40px;font-size:13px}.tk-page .tk-toast{background:var(--tk-ink);color:#ede5d8;border-radius:var(--tk-radius);z-index:999;opacity:0;pointer-events:none;padding:12px 20px;font-size:13px;transition:all .25s;position:fixed;bottom:32px;right:32px;transform:translateY(80px)}.tk-page .tk-toast.show{opacity:1;transform:translateY(0)}.tk-page .tk-divider{background:var(--tk-line);height:1px;margin:28px 0}.tk-page .tk-row{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.tk-page .tk-flex-1{flex:1}.tk-page .tk-text-right{text-align:right}.tk-page .tk-color-sage{color:var(--tk-sage)}.tk-page .tk-color-gold{color:var(--tk-gold)}.tk-page .tk-color-muted{color:var(--tk-ink3)}.tk-page .tk-font-serif{font-family:Fraunces,serif;font-weight:300}.tk-page .tk-mt8{margin-top:8px}.tk-page .tk-mt16{margin-top:16px}.tk-page .tk-mt24{margin-top:24px}@media (max-width:900px){.tk-page{flex-direction:column}.tk-page .tk-sidebar{display:none}.tk-page .tk-mobile-tabs{z-index:15;-webkit-overflow-scrolling:touch;scrollbar-width:none;background:var(--tk-ink);border-bottom:1px solid rgba(255,255,255,.06);gap:0;display:flex;position:-webkit-sticky;position:sticky;top:4rem;overflow-x:auto}.tk-page .tk-mobile-tabs::-webkit-scrollbar{display:none}.tk-page .tk-mobile-tabs .tk-nav-item{white-space:nowrap;border-bottom:2px solid transparent;border-left:none;flex-direction:column;flex:none;align-items:center;gap:2px;width:auto;padding:10px 14px;font-size:11px}.tk-page .tk-mobile-tabs .tk-nav-item.active{border-left-color:transparent;border-bottom-color:var(--tk-gold);background:rgba(196,168,108,.08)}.tk-page .tk-mobile-tabs .tk-nav-item .tk-label-zh,.tk-page .tk-mobile-tabs .tk-nav-section-label{display:none}.tk-page .tk-main{width:100%;min-height:calc(100dvh - 4rem);margin-left:0}.tk-page .tk-header{flex-wrap:wrap;gap:12px;padding:20px 20px 16px}.tk-page .tk-body{padding:24px 20px 48px}.tk-page .tk-budget-summary{grid-template-columns:1fr}.tk-page .tk-guest-count-bar,.tk-page .tk-guest-count-bar-5{grid-template-columns:1fr 1fr}.tk-page .tk-budget-card{min-width:0;overflow:visible}.tk-page .tk-budget-card-body{min-width:0}.tk-page .tk-budget-metric.tk-budget-plan-top,.tk-page .tk-budget-metric-row,.tk-page .tk-budget-card:first-child .tk-budget-metric-row{grid-template-columns:1fr 1fr;align-items:start;gap:12px;display:grid}.tk-page .tk-budget-plan-block,.tk-page .tk-budget-metric-row .tk-budget-metric{min-width:0}.tk-page .tk-budget-card .tk-stat-value{flex-wrap:wrap;max-width:100%;font-size:24px}.tk-page .tk-budget-card .tk-stat-value.tk-stat-planned,.tk-page .tk-budget-card .tk-stat-value.tk-stat-spent{font-size:28px}.tk-page .tk-budget-card .tk-stat-value.tk-stat-estimate{font-size:20px}.tk-page .tk-budget-metric-inline{white-space:normal;flex-wrap:wrap}.tk-page .tk-budget-usage{margin-top:8px}.tk-page .tk-budget-usage-head,.tk-page .tk-budget-usage-foot{text-align:left;flex-wrap:wrap;justify-content:flex-start}.tk-page .tk-budget-total-row{grid-template-columns:1fr}.tk-page .tk-guest-add-form{grid-template-columns:1fr 1fr}.tk-page .tk-guest-card{flex-direction:column;gap:14px;padding:16px 18px}.tk-page .tk-guest-contact-address{max-width:100%}.tk-page .tk-guest-card-actions{border-top:1px solid var(--tk-line);flex-direction:row;justify-content:flex-end;width:100%;padding-top:12px}.tk-page .tk-guest-drawer-row,.tk-page .tk-seating-workspace{grid-template-columns:1fr}.tk-page .tk-pool-col{position:static}.tk-page .tk-pool-panel{max-height:none}.tk-page .tk-tables-grid,.tk-page .tk-rundown-header-form{grid-template-columns:1fr}.tk-page .tk-timeline-row{grid-template-columns:1fr 1fr;gap:8px}.tk-page .tk-todo-add-row{flex-wrap:wrap}.tk-page .tk-todo-add-row .tk-todo-date-field,.tk-page .tk-todo-add-row .tk-todo-owner-field,.tk-page .tk-todo-add-row .tk-todo-time-field{flex:120px}.tk-page .tk-guodali-cards{grid-template-columns:1fr}.tk-page .tk-guodali-intro-row{flex-direction:column}.tk-page .tk-guodali-unified{align-items:stretch;width:100%}.tk-page .tk-guodali-unified-field{align-items:stretch}.tk-page .tk-guodali-unified-field select{width:100%}.tk-page .tk-guodali-controls{flex-direction:column;align-items:stretch}.tk-page .tk-guodali-control-field select{width:100%}.tk-page .tk-memory-add-grid,.tk-page .tk-memory-add-row{grid-template-columns:1fr}}.tk-page .bg-blue-600{background:var(--tk-ink)!important}.tk-page .hover\:bg-blue-700:hover{background:#3a3025!important}.tk-page .text-blue-600{color:var(--tk-gold)!important}.tk-page .border-blue-500{border-color:var(--tk-gold)!important}.tk-page .bg-blue-50{background:var(--tk-gold-bg)!important}.tk-page .text-blue-900{color:var(--tk-ink)!important}.tk-page .focus\:ring-blue-500:focus{--tw-ring-color:rgba(196,168,108,.35)}.tk-page .border-gray-200{border-color:var(--tk-line)}.tk-page .bg-gray-50{background:var(--tk-bg2)}.tk-page .bg-white{background:var(--tk-white)}.tk-page .text-gray-900{color:var(--tk-ink)}.tk-page .text-gray-600,.tk-page .text-gray-500{color:var(--tk-ink3)}.tk-page .rounded-lg,.tk-page .rounded-md{border-radius:var(--tk-radius)}.tk-page .tk-btn,.tk-page button.inline-flex{letter-spacing:.04em;font-family:DM Sans,sans-serif}.tk-page .tk-amount-readonly{cursor:pointer;width:100%;font:inherit;text-align:left;background:0 0;border:none;align-items:center;padding:11px 12px;display:flex}.tk-page .tk-amount-readonly:hover{background:rgba(176,137,104,.08)}.tk-page .tk-amount-readonly-value{font-variant-numeric:tabular-nums;color:inherit}.tk-page .tk-modal-backdrop{z-index:1400;background:rgba(30,24,20,.35);justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.tk-page .tk-modal{border:1px solid var(--tk-line);background:#fff;border-radius:12px;width:min(440px,100%);overflow:hidden;box-shadow:0 20px 50px rgba(30,24,20,.18)}.tk-page .tk-modal-head{padding:18px 20px 8px}.tk-page .tk-modal-head h3{color:var(--tk-ink);margin:0;font-family:Fraunces,serif;font-size:20px;font-weight:400}.tk-page .tk-modal-sub{color:var(--tk-ink3);margin:4px 0 0;font-size:13px}.tk-page .tk-modal-body{flex-direction:column;gap:12px;padding:8px 20px 12px;display:flex}.tk-page .tk-modal-body .tk-field{color:var(--tk-ink3);letter-spacing:.04em;flex-direction:column;gap:6px;font-size:12px;display:flex}.tk-page .tk-modal-body .tk-field input[type=text],.tk-page .tk-modal-body .tk-field input[type=date],.tk-page .tk-modal-body .tk-field input[type=time],.tk-page .tk-modal-body .tk-field input[type=file]{border:1px solid var(--tk-line);color:var(--tk-ink);background:#fff;border-radius:6px;padding:10px 12px;font-size:14px}.tk-page .tk-modal-body .tk-field-check{color:var(--tk-ink);letter-spacing:0;flex-direction:row;align-items:center;gap:8px;font-size:14px}.tk-page .tk-field-hint{color:var(--tk-ink3);font-size:11.5px}.tk-page .tk-modal-actions{border-top:1px solid var(--tk-line);justify-content:flex-end;gap:10px;padding:12px 20px 18px;display:flex}.tk-trial-banner{box-sizing:border-box;text-align:center;color:#6b5535;background:#fff4c8;border-bottom:1px solid #f0e0a0;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;width:100%;padding:10px 20px;font-size:13px;font-weight:500;line-height:1.45;display:flex}.tk-trial-button{color:#5b472b;font:inherit;cursor:pointer;background:#fffdf5;border:1px solid #c7a85f;border-radius:999px;flex:none;padding:5px 15px;font-weight:700;line-height:1.2;text-decoration:none;transition:background .18s,transform .18s}.tk-trial-button:hover{background:#fff;transform:translateY(-1px)}.tk-trial-button--ghost{background:0 0}.tk-trial-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.tk-trial-modal-backdrop{--tk-bg:#f9f7f2;--tk-line:#e6dfd6;--tk-ink:#3c2f2f;--tk-ink2:#5c4f47;--tk-ink3:#8b7e74;--tk-tan:#b08968;--tk-radius:4px;z-index:200;background:rgba(47,42,38,.42);justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.tk-trial-modal{background:#fffcfa;border:1px solid #e6dfd6;border-radius:8px;width:min(420px,100%);padding:28px;box-shadow:0 24px 48px -16px rgba(47,42,38,.28)}.tk-trial-modal h3{color:#3c2f2f;margin:0 0 12px;font-family:Fraunces,serif;font-size:20px;font-weight:500}.tk-trial-modal-text{color:#8b7e74;margin:0 0 20px;font-size:14px;line-height:1.7}.tk-trial-modal-actions{flex-wrap:wrap;gap:12px;display:flex}.tk-trial-modal .tk-btn{cursor:pointer;letter-spacing:.04em;color:#5c4f47;background:0 0;border:1px solid #e6dfd6;border-radius:4px;align-items:center;gap:6px;padding:8px 18px;font-family:DM Sans,sans-serif;font-size:12px;font-weight:500;transition:all .15s;display:inline-flex}.tk-trial-modal .tk-btn-primary{color:#fffcfa;background:#b08968;border-color:#b08968}.tk-trial-modal .tk-btn-primary:hover{background:#9a7458}
