:root{--ink:#15223a;--muted:#667085;--line:#e5e8ef;--surface:#fff;--canvas:#f8f8fb;--navy:#243b6b;--navy-dark:#172a52;--orange:#ee7c2b;--orange-soft:#fff2e8;--blue-soft:#edf3ff;--green:#197a62;--shadow:0 22px 70px #1d2b4a1f, 0 2px 8px #1d2b4a0f}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--canvas);-webkit-font-smoothing:antialiased;margin:0;font-family:Noto Sans TC,PingFang TC,Microsoft JhengHei,system-ui,sans-serif}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}.site-header{z-index:20;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f8f8fbf0;border-bottom:1px solid #d5dae5bf;justify-content:space-between;align-items:center;max-width:1540px;height:78px;margin:0 auto;padding:0 56px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:12px;display:flex}.brand-avatar,.assistant-avatar{background:#dfe4ef;border:2px solid #fff;border-radius:50%;place-items:center;display:grid;position:relative;overflow:hidden;box-shadow:0 3px 12px #1c2c4b29}.brand-avatar{width:44px;height:44px}.brand-avatar img,.assistant-avatar img{object-fit:cover;object-position:50% 22%;width:100%;height:100%}.brand>span:last-child{gap:1px;display:grid}.brand strong{letter-spacing:.02em;font-size:16px}.brand small{color:var(--muted);font-size:12px}.site-header nav{align-items:center;gap:34px;font-size:14px;font-weight:650;display:flex}.site-header nav a:not(.nav-cta):hover{color:var(--orange)}.nav-cta{color:#fff;background:var(--navy);border-radius:9px;padding:10px 18px;box-shadow:0 5px 14px #243b6b2e}.hero-shell{grid-template-columns:minmax(0,.88fr) minmax(520px,1.12fr);align-items:center;gap:90px;max-width:1540px;min-height:790px;margin:0 auto;padding:88px 56px 110px;display:grid;position:relative;overflow:hidden}.hero-copy{z-index:1;max-width:690px;position:relative}.eyebrow{color:#4e596f;background:#fff;border:1px solid #e2e5eb;border-radius:999px;align-items:center;gap:8px;padding:7px 13px;font-size:13px;font-weight:700;display:inline-flex;box-shadow:0 4px 12px #1d2b4a0a}.eyebrow svg{color:var(--orange)}.hero-copy h1{letter-spacing:-.045em;margin:34px 0 26px;font-size:clamp(46px,4.4vw,70px);line-height:1.16}.hero-copy h1 span{color:var(--navy)}.hero-copy>p:not(.micro-trust){color:#566176;max-width:650px;margin:0;font-size:18px;line-height:1.9}.hero-actions{gap:14px;margin-top:40px;display:flex}.button{cursor:pointer;border:0;border-radius:11px;justify-content:center;align-items:center;gap:9px;min-height:50px;padding:0 24px;font-weight:750;transition:transform .18s,box-shadow .18s,background .18s;display:inline-flex}.button:hover{transform:translateY(-1px)}.button-primary{background:var(--orange);color:#fff;box-shadow:0 12px 24px #ee7c2b40}.button-primary:hover{background:#dc6b1d;box-shadow:0 15px 28px #ee7c2b4d}.button-secondary{color:var(--ink);background:#fff;border:1px solid #d9dee8}.button:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}.button.full{width:100%}.micro-trust{color:#7b8496;align-items:center;gap:7px;margin:20px 0 0;font-size:13px;display:flex}.booking-stage{z-index:2;justify-self:end;width:100%;max-width:650px;position:relative}.booking-card{height:590px;box-shadow:var(--shadow);background:#fffffffa;border:1px solid #dfe3ea;border-radius:22px;grid-template-rows:auto 1fr auto;display:grid;overflow:hidden}.booking-card-header{border-bottom:1px solid #eef0f4;align-items:center;gap:12px;min-height:94px;padding:20px 24px;display:flex}.assistant-avatar{flex:none;width:50px;height:50px}.booking-card-header>span:nth-child(2){gap:4px;display:grid}.booking-card-header strong{font-size:17px}.booking-card-header small{color:var(--muted);font-size:13px}.secure-pill{color:var(--green);background:#ecf8f4;border-radius:999px;align-items:center;gap:5px;margin-left:auto;padding:7px 10px;font-size:11px;font-weight:700;display:inline-flex}.chat-body{overscroll-behavior:contain;scroll-behavior:smooth;min-height:0;padding:24px 24px 28px;overflow-y:auto}.bubble{border-radius:16px;width:fit-content;max-width:84%;margin-bottom:14px;padding:12px 16px;font-size:14px;line-height:1.65}.bubble.assistant{color:#344054;background:#f4f6fa;border-bottom-left-radius:5px}.bubble.user{background:var(--navy);color:#fff;border-bottom-right-radius:5px;margin-left:auto;box-shadow:0 7px 16px #243b6b26}.loading-bubble{align-items:center;gap:9px;display:flex}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.service-options{gap:9px;margin-top:5px;display:grid}.service-options button{text-align:left;border:1px solid var(--line);width:100%;min-height:66px;color:var(--ink);cursor:pointer;background:#fff;border-radius:13px;align-items:center;gap:12px;padding:12px 15px;transition:border .18s,box-shadow .18s,transform .18s;display:flex}.service-options button:hover{border-color:#9daac1;transform:translateY(-1px);box-shadow:0 7px 16px #243b6b12}.service-options svg{width:25px;height:25px;color:var(--orange)}.service-options span{grid-template-columns:1fr auto;align-items:center;gap:3px 12px;width:100%;min-width:0;display:grid}.service-options strong{font-size:14px}.service-options small{text-overflow:ellipsis;min-width:0;color:var(--muted);white-space:nowrap;grid-column:1/-1;font-size:11px;overflow:hidden}.service-options em{color:var(--navy);white-space:nowrap;grid-area:1/2;font-size:10px;font-style:normal;font-weight:750}.service-load-error{justify-content:space-between;align-items:center;gap:10px;display:flex}.service-load-error button{color:#8b2929;cursor:pointer;background:0 0;border:0;flex:none;font-weight:800}.booking-preferences{background:#fafbfc;border:1px solid #dfe4ee;border-radius:13px;gap:12px;margin:4px 0 15px;padding:14px;display:grid}.preference-control{gap:9px;display:grid}.preference-control>span{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.preference-control strong{font-size:12px}.preference-control small{color:var(--muted);font-size:10px}.preference-control>label{background:#fff;border:1px solid #cfd6e2;border-radius:9px;grid-template-columns:1fr auto;align-items:center;width:132px;height:38px;display:grid;overflow:hidden}.preference-control>label input{text-align:right;border:0;outline:0;width:100%;min-width:0;padding:0 8px}.preference-control>label em{color:var(--muted);padding-right:8px;font-size:10px;font-style:normal}.preference-control>p{color:#9f2d2d;margin:-3px 0 0;font-size:10px}.option-pills,.delivery-options{flex-wrap:wrap;gap:6px;display:flex}.option-pills button,.delivery-options button{min-height:32px;color:var(--navy);cursor:pointer;background:#fff;border:1px solid #cbd3e0;border-radius:999px;justify-content:center;align-items:center;gap:5px;padding:0 10px;font-size:10px;font-weight:750;display:inline-flex}.option-pills button.active,.delivery-options button.active{color:#fff;border-color:var(--navy);background:var(--navy)}.preference-retry{border:1px solid var(--navy);width:fit-content;min-height:36px;color:var(--navy);cursor:pointer;background:#fff;border-radius:9px;padding:0 13px;font-size:11px;font-weight:800}.preference-retry:hover{color:#fff;background:var(--navy)}.preference-retry:disabled{opacity:.45;cursor:not-allowed}.delivery-options button{border-radius:9px;flex:1}.delivery-options svg{width:17px;height:17px}.preference-note,.manual-review-note{color:#5e697c;align-items:flex-start;gap:7px;margin:0;font-size:10px;line-height:1.55;display:flex}.preference-note svg,.manual-review-note svg{width:16px;height:16px;color:var(--green);flex:none}.slot-grid{grid-template-columns:1fr 1fr;gap:9px;margin-top:4px;display:grid}.slot-grid button{min-height:46px;color:var(--navy);cursor:pointer;background:#fff;border:1px solid #b9c4d8;border-radius:999px;justify-content:center;align-items:center;gap:7px;padding:10px 12px;font-size:12px;font-weight:700;display:flex}.slot-grid button:hover{background:var(--blue-soft);border-color:var(--navy)}.slot-grid button>span{color:var(--green);background:#e9f7f2;border-radius:999px;padding:3px 6px;font-size:9px}.slot-more{width:fit-content;min-height:38px;color:var(--navy);cursor:pointer;background:#fff;border:1px solid #b9c4d8;border-radius:999px;margin:12px auto 2px;padding:0 16px;font-size:11px;font-weight:800}.slot-more:hover{background:var(--blue-soft);border-color:var(--navy)}.slot-more:disabled{opacity:.45;cursor:wait}.full-day-slots{grid-template-columns:1fr}.inline-error{color:#9f2d2d;background:#fff0f0;border-radius:10px;margin:8px 0 14px;padding:10px 12px;font-size:13px}.guided-actions{grid-template-columns:1fr 1fr;gap:8px;margin:2px 0 14px;display:grid}.guided-actions button{min-height:44px;color:var(--navy);cursor:pointer;background:#fff;border:1px solid #b9c4d8;border-radius:12px;padding:9px 12px;font-size:12px;font-weight:750;transition:border .18s,background .18s,transform .18s}.guided-actions button:hover{border-color:var(--navy);background:var(--blue-soft);transform:translateY(-1px)}.guided-actions button:disabled{opacity:.45;cursor:wait;transform:none}.chat-input{background:#fff;border-top:1px solid #e9ecf2;grid-template-columns:38px 1fr 48px;gap:8px;padding:14px 16px;display:grid}.chat-input input{border:1px solid #d9dee8;border-radius:11px;outline:none;min-width:0;height:48px;padding:0 14px}.chat-input input:focus{border-color:var(--navy);box-shadow:0 0 0 3px #243b6b1a}.chat-input>button{cursor:pointer;border:0;border-radius:11px}.chat-input>button:last-child{color:#fff;background:var(--navy);place-items:center;display:grid}.chat-input>button:last-child:disabled{opacity:.35;cursor:not-allowed}.service-reset{color:var(--muted);background:0 0}.booking-form{gap:13px;padding:4px 0 2px;display:grid}.selected-summary{color:var(--navy);background:var(--blue-soft);border-radius:12px;align-items:center;gap:10px;margin-bottom:2px;padding:12px;display:flex}.selected-summary button{width:30px;height:30px;color:var(--navy);cursor:pointer;background:#fff;border:0;border-radius:50%;flex:none;place-items:center;display:grid}.selected-summary span{gap:2px;display:grid}.selected-summary small{color:var(--muted);font-size:11px}.selected-summary strong{font-size:13px}.booking-form label{color:#475467;gap:6px;font-size:12px;font-weight:700;display:grid}.booking-form label>small{color:var(--muted);font-size:10px;font-weight:500;line-height:1.5}.booking-form input,.booking-form textarea{width:100%;color:var(--ink);resize:vertical;background:#fff;border:1px solid #d9dee8;border-radius:10px;outline:none;padding:10px 12px}.booking-form input:focus,.booking-form textarea:focus{border-color:var(--navy);box-shadow:0 0 0 3px #243b6b17}.form-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.venue-fields{background:#f8fafb;border:1px solid #e3e7ee;border-radius:12px;grid-template-columns:.8fr 1.2fr;gap:10px;padding:13px;display:grid}.venue-fields label>span{color:var(--muted);font-size:10px;font-weight:600}.venue-fields small{color:var(--muted);font-size:9px;font-weight:500;line-height:1.45}.manual-review-note{color:#276654;background:#e9f7f2;border-radius:9px;padding:10px}.booking-result{text-align:center;grid-template-rows:1fr;place-items:center;padding:58px}.result-icon{width:72px;height:72px;color:var(--green);background:#eaf7f3;border-radius:50%;place-items:center;display:grid}.result-icon svg{width:46px;height:46px}.result-kicker{color:var(--orange);margin:24px 0 8px;font-weight:800}.booking-result h2{margin:0;font-size:27px}.booking-result>p:not(.result-kicker){color:var(--muted);margin:14px 0 26px;line-height:1.7}.text-button{color:var(--navy);cursor:pointer;background:0 0;border:0;margin-top:18px;font-weight:700}.feature-section{background:#fff;border-top:1px solid #e8eaf0;max-width:1540px;margin:0 auto;padding:110px 56px 130px}.section-heading{text-align:center}.section-heading p{color:var(--orange);letter-spacing:.08em;margin:0 0 12px;font-size:13px;font-weight:800}.section-heading h2{letter-spacing:-.035em;margin:0;font-size:clamp(32px,4vw,48px)}.feature-grid{grid-template-columns:repeat(3,1fr);gap:24px;max-width:1080px;margin:58px auto 0;display:grid}.feature-grid article{border:1px solid var(--line);background:#fff;border-radius:18px;padding:30px}.feature-grid svg{width:28px;height:28px;color:var(--orange);margin-bottom:20px}.feature-grid strong{margin-bottom:9px;font-size:17px;display:block}.feature-grid p{color:var(--muted);margin:0;font-size:14px;line-height:1.75}@media (max-width:1100px){.hero-shell{grid-template-columns:1fr;gap:56px;padding-top:70px}.hero-copy{text-align:center;justify-self:center;max-width:760px}.hero-copy>p:not(.micro-trust){margin-inline:auto}.hero-actions,.micro-trust{justify-content:center}.booking-stage{justify-self:center;max-width:680px}}@media (max-width:760px){.site-header{height:68px;padding:0 18px}.brand-avatar{width:38px;height:38px}.brand strong{font-size:14px}.brand small{font-size:10px}.site-header nav>a:not(.nav-cta){display:none}.nav-cta{padding:8px 12px;font-size:12px}.hero-shell{gap:40px;padding:48px 16px 78px}.hero-copy h1{margin-top:26px;font-size:40px}.hero-copy>p:not(.micro-trust){font-size:15px;line-height:1.75}.hero-actions{flex-direction:column}.hero-actions .button{width:100%}.micro-trust{text-align:left;align-items:flex-start}.booking-card{border-radius:18px;height:660px}.booking-card-header{min-height:82px;padding:16px}.assistant-avatar{width:44px;height:44px}.booking-card-header strong{font-size:14px}.booking-card-header small{font-size:11px}.secure-pill{display:none}.chat-body{padding:18px 16px 22px}.bubble{max-width:91%;font-size:13px}.slot-grid,.form-grid,.venue-fields{grid-template-columns:1fr}.chat-input{grid-template-columns:34px 1fr 46px;padding:12px}.feature-section{padding:76px 18px 88px}.feature-grid{grid-template-columns:1fr;margin-top:38px}.booking-result{padding:32px 22px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}:focus-visible{outline-offset:3px;outline:3px solid #ee7c2b6b}.admin-shell{background:#f5f6f8;grid-template-columns:244px 1fr;min-height:100vh;display:grid}.admin-sidebar{color:#e9edf6;background:var(--navy-dark);flex-direction:column;height:100vh;min-height:100vh;padding:28px 18px 20px;display:flex;position:sticky;top:0}.admin-brand{border-bottom:1px solid #ffffff1a;align-items:center;gap:11px;padding:0 9px 26px;display:flex}.admin-brand>span{background:#dfe4ef;border-radius:11px;place-items:center;width:40px;height:40px;display:grid;position:relative;overflow:hidden}.admin-brand>span img{object-fit:cover;object-position:50% 22%;width:100%;height:100%}.admin-brand strong{font-size:14px;line-height:1.35}.admin-brand small{color:#9eabc2;font-size:10px;font-weight:500}.admin-sidebar nav{gap:7px;margin-top:26px;display:grid}.admin-sidebar nav button{color:#aeb9cd;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:11px;width:100%;min-height:46px;padding:0 13px;font-size:13px;font-weight:700;display:flex}.admin-sidebar nav button svg{width:20px;height:20px}.admin-sidebar nav button:hover,.admin-sidebar nav button.active{color:#fff;background:#ffffff1a}.admin-sidebar nav button.active:before{content:"";background:var(--orange);border-radius:0 3px 3px 0;width:3px;height:22px;margin-left:-13px}.sidebar-foot{color:#8f9cb3;border-top:1px solid #ffffff1a;align-items:center;gap:9px;margin-top:auto;padding:16px 10px 4px;font-size:11px;display:flex}.admin-main{min-width:0;padding:34px 42px 70px}.admin-topbar{justify-content:space-between;align-items:center;margin-bottom:30px;display:flex}.admin-topbar p,.panel-title p{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;margin:0 0 4px;font-size:11px;font-weight:800}.admin-topbar h1{letter-spacing:-.035em;margin:0;font-size:30px}.admin-user{text-align:right;align-items:center;gap:12px;display:flex}.admin-user-copy{min-width:0;display:grid}.admin-user-copy span{font-size:13px;font-weight:800}.admin-user-copy small{color:var(--muted);font-size:11px}.admin-signout{min-height:40px;color:var(--navy);cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #c8d0df;border-radius:9px;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-size:11px;font-weight:800;display:inline-flex}.admin-signout:hover{color:#fff;background:var(--navy);border-color:var(--navy)}.admin-signout:disabled{cursor:wait;opacity:.65}.admin-signout svg{width:17px;height:17px}.admin-notice{color:#276654;background:#e9f7f2;border-radius:10px;justify-content:space-between;align-items:center;margin:-10px 0 20px;padding:12px 15px;font-size:13px;display:flex}.admin-notice button{color:inherit;cursor:pointer;background:0 0;border:0}.stat-grid{grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:22px;display:grid}.stat-grid article{border:1px solid var(--line);background:#fff;border-radius:15px;min-height:150px;padding:22px;position:relative}.stat-grid article>span{float:right;width:38px;height:38px;color:var(--orange);background:var(--orange-soft);border-radius:10px;place-items:center;display:grid}.stat-grid p{color:var(--muted);margin:0 0 8px;font-size:12px;font-weight:700}.stat-grid strong{margin-bottom:7px;font-size:34px;display:block}.stat-grid small{color:#98a2b3;font-size:11px}.admin-panel{border:1px solid var(--line);background:#fff;border-radius:16px;padding:25px;box-shadow:0 5px 18px #1f2d4c09}.panel-title{justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.panel-title h2{margin:0;font-size:19px}.panel-title>button{color:var(--navy);cursor:pointer;background:0 0;border:0;font-size:12px;font-weight:750}.booking-table{display:grid}.booking-table>article{border-top:1px solid #edf0f4;grid-template-columns:58px 1.05fr 1.6fr 1.25fr auto;align-items:center;gap:16px;min-height:84px;display:grid}.booking-table>article:first-child{border-top:0}.booking-date{width:48px;height:53px;color:var(--navy);background:var(--blue-soft);border-radius:10px;align-content:center;place-items:center;display:grid}.booking-date strong{font-size:18px;line-height:1}.booking-date small{color:#78859a;font-size:9px}.booking-person,.booking-purpose,.booking-time{gap:4px;min-width:0;display:grid}.booking-person strong,.booking-purpose strong,.booking-time strong{font-size:12px}.booking-person small,.booking-purpose small,.booking-time small{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--muted);font-size:10px;overflow:hidden}.row-actions{gap:6px;display:flex}.row-actions button{cursor:pointer;border:0;border-radius:8px;align-items:center;gap:4px;min-height:35px;padding:0 11px;font-size:11px;font-weight:800;display:inline-flex}.row-actions .approve{color:#fff;background:var(--navy)}.row-actions .reject{color:#a83b3b;background:#fff0f0}.status{border-radius:999px;justify-self:end;padding:6px 9px;font-size:10px;font-weight:800}.status-confirmed{color:#197a62;background:#e9f7f2}.status-rejected,.status-cancelled{color:#a83b3b;background:#fff0f0}.status-pending,.status-confirming,.status-needs_reschedule{color:#a45a16;background:#fff3e6}.status-expired{color:#667085;background:#f2f4f7}.admin-empty{min-height:150px;color:var(--muted);justify-content:center;align-items:center;gap:10px;font-size:13px;display:flex}.admin-empty svg{color:var(--green)}.rule-layout{grid-template-columns:1.05fr .95fr;gap:20px;display:grid}.rules-stack{gap:20px;display:grid}.special-date-grid{grid-template-columns:.85fr 1.15fr;gap:22px;display:grid}.special-date-grid form{gap:11px;display:grid}.special-date-grid label{color:#475467;gap:6px;font-size:10px;font-weight:800;display:grid}.special-date-grid input,.special-date-grid select,.special-date-grid textarea{width:100%;min-height:39px;font:inherit;background:#fff;border:1px solid #d7dce6;border-radius:8px;padding:9px 10px}.special-date-grid textarea{resize:vertical}.special-date-grid label small{color:var(--muted);font-size:9px;font-weight:500}.special-date-pair{grid-template-columns:1fr 1fr;gap:8px;display:grid}.special-date-actions,.special-date-row-actions{flex-wrap:wrap;gap:7px;display:flex}.special-date-actions .button{min-height:40px}.special-date-list{align-content:start;gap:9px;display:grid}.special-date-list article{border:1px solid var(--line);background:#fafbfc;border-radius:10px;justify-content:space-between;gap:14px;padding:13px;display:flex}.special-date-list article.inactive{opacity:.65}.special-date-list article>div:first-child{gap:5px;min-width:0;display:grid}.special-date-list strong{font-size:12px}.special-date-list small,.special-date-list p{color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:9px;line-height:1.5}.special-date-badge{border-radius:999px;width:fit-content;padding:4px 7px;font-size:8px;font-weight:850}.special-date-badge.block{color:#9d3434;background:#fff0f0}.special-date-badge.manual_review{color:#a45a16;background:#fff3e6}.special-date-badge.open{color:#17654f;background:#e9f7f2}.special-date-row-actions{flex:none;align-content:flex-start}.special-date-row-actions button{min-height:34px;color:var(--navy);cursor:pointer;background:#fff;border:1px solid #c8d0df;border-radius:7px;align-items:center;gap:4px;padding:0 9px;font-size:9px;font-weight:800;display:inline-flex}.special-date-warning{color:#8a4b10;background:#fff8e8;border:1px solid #efd29c;border-radius:10px;gap:7px;margin-top:14px;padding:13px;display:grid}.special-date-warning>strong{font-size:11px}.special-date-warning>div{gap:2px;font-size:10px;display:grid}.special-date-warning small{color:#6f5b42;font-size:9px}.rule-editor label{color:#475467;gap:8px;font-size:12px;font-weight:800;display:grid}.rule-editor textarea{color:var(--ink);resize:vertical;border:1px solid #d7dce6;border-radius:11px;outline:none;padding:14px;line-height:1.7}.rule-editor textarea:focus{border-color:var(--navy);box-shadow:0 0 0 3px #243b6b17}.field-help{color:var(--muted);margin:10px 0 20px;font-size:11px;line-height:1.6}.rule-summary{grid-template-columns:1fr 1fr;gap:11px;display:grid}.rule-summary>div{background:#f7f8fa;border-radius:10px;align-content:center;gap:6px;min-height:72px;padding:13px;display:grid}.rule-summary small{color:var(--muted);font-size:10px}.rule-summary strong{font-size:12px}.admin-confirm{color:#fff;background:var(--green);width:100%;margin-top:18px}.rule-history{border-top:1px solid var(--line);gap:8px;margin-top:18px;padding-top:16px;display:grid}.rule-history>strong{font-size:11px}.rule-history>div{border-top:1px solid #edf0f4;grid-template-columns:1fr auto;align-items:center;gap:9px;padding:9px 0;display:grid}.rule-history span{gap:3px;min-width:0;display:grid}.rule-history small{color:var(--orange);font-size:9px;font-weight:800}.rule-history em{text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:9px;font-style:normal;overflow:hidden}.rule-history button{min-height:30px;color:var(--navy);cursor:pointer;background:#fff;border:1px solid #c8d0df;border-radius:7px;padding:0 9px;font-size:9px;font-weight:800}.connection-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.connection-grid article{border:1px solid var(--line);border-radius:12px;grid-template-columns:40px 1fr auto;align-items:center;gap:12px;min-height:84px;padding:15px;display:grid}.connection-grid article>span{border-radius:10px;place-items:center;width:38px;height:38px;display:grid}.connection-grid .connected{color:var(--green);background:#e9f7f2}.connection-grid .demo{color:#a45a16;background:#fff3e6}.connection-grid article>div{gap:4px;display:grid}.connection-grid .connection-copy details{color:var(--muted);margin-top:4px;font-size:9px}.connection-grid .connection-copy summary{width:fit-content;color:var(--navy);cursor:pointer;font-weight:750}.connection-grid .connection-copy details p{margin:7px 0;line-height:1.6}.connection-grid .connection-copy dl{grid-template-columns:auto 1fr;gap:3px 7px;margin:0;display:grid}.connection-grid .connection-copy dt{color:#667085}.connection-grid .connection-copy dd{overflow-wrap:anywhere;color:var(--ink);margin:0}.connection-grid strong{font-size:12px}.connection-grid small{color:var(--muted);font-size:10px}.connection-action,.connection-hint{color:var(--navy);align-items:center;gap:5px;font-size:10px;font-weight:750;display:flex}.connection-hint{color:var(--muted);font-weight:600}.access-layout{grid-template-columns:1.05fr .95fr;gap:20px;display:grid}.access-services{grid-row:span 2}.service-panel-title>button{align-items:center;gap:5px;display:inline-flex}.service-help{margin-top:-8px}.service-template-list{gap:12px;display:grid}.service-template-editor{background:#fbfcfd;border:1px solid #dfe4ec;border-radius:13px;margin-bottom:14px;padding:16px}.service-template-editor.inactive{opacity:.82;background:#f7f7f8}.service-editor-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.service-editor-heading>span{gap:3px;min-width:0;display:grid}.service-editor-heading strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.service-editor-heading small{color:var(--muted);font-size:9px}.service-editor-heading>em{border-radius:999px;flex:none;padding:5px 8px;font-size:9px;font-style:normal;font-weight:800}.service-editor-heading>em.active{color:var(--green);background:#e9f7f2}.service-editor-heading>em.inactive{color:#667085;background:#eaecf0}.service-template-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.service-template-grid label{color:#475467;align-content:start;gap:5px;min-width:0;font-size:10px;font-weight:800;display:grid}.service-template-grid label.wide,.service-template-grid .wide{grid-column:1/-1}.service-template-grid input,.service-template-grid select,.service-template-grid textarea{width:100%;min-width:0;color:var(--ink);font:inherit;background:#fff;border:1px solid #d7dce6;border-radius:8px;outline:none;padding:9px 10px;font-weight:500}.service-template-grid textarea{resize:vertical;line-height:1.5}.service-template-grid input:focus,.service-template-grid select:focus,.service-template-grid textarea:focus{border-color:var(--navy);box-shadow:0 0 0 3px #243b6b14}.service-template-grid label>small{color:#a45a16;font-size:9px;font-weight:650}.calendar-color-field{gap:6px;min-width:0;display:grid}.calendar-color-label{color:#475467;font-size:10px;font-weight:800}.calendar-color-field>small{color:var(--muted);font-size:9px;font-weight:600;line-height:1.55}.calendar-color-picker{grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:7px;display:grid}.calendar-color-option{min-width:0;min-height:54px;color:var(--ink);cursor:pointer;text-align:left;background:#fff;border:1px solid #d7dce6;border-radius:10px;grid-template-columns:34px minmax(0,1fr) 17px;align-items:center;gap:8px;padding:7px;display:grid}.calendar-color-option:hover{background:#f8fafc;border-color:#9eabc1}.calendar-color-option:focus-visible{outline-offset:2px;outline:3px solid #243b6b38}.calendar-color-option.selected{border-color:var(--navy);box-shadow:inset 0 0 0 1px var(--navy);background:#f4f7fc}.calendar-color-swatch{border:1px solid #17243c29;border-radius:9px;place-items:center;width:34px;height:34px;font-size:15px;font-weight:800;display:grid;box-shadow:inset 0 0 0 1px #ffffff3d}.calendar-color-default-swatch{color:#667085;background:repeating-linear-gradient(135deg,#fff,#fff 6px,#edf0f5 6px 12px)}.calendar-color-copy{gap:2px;min-width:0;display:grid}.calendar-color-copy strong{color:var(--navy);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.calendar-color-copy small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:8px;font-weight:600;overflow:hidden}.calendar-color-selected-mark{color:#fff;background:var(--navy);border-radius:50%;place-items:center;width:17px;height:17px;display:grid}.calendar-color-selected-mark:empty{background:0 0}.calendar-color-selected-mark svg{width:11px;height:11px}.calendar-marker-field{grid-column:1/-1;margin-top:6px}.calendar-warning{color:#8a4b08;background:#fff4e5;border-radius:9px;margin:0 0 14px;padding:10px 12px;font-size:10px;line-height:1.6}.calendar-preferences-form label{color:#475467;gap:5px;font-size:10px;font-weight:800;display:grid}.calendar-preferences-form input,.calendar-preferences-form select{background:#fff;border:1px solid #d7dce6;border-radius:8px;min-height:38px;padding:8px 10px}.service-toggle-row{flex-wrap:wrap;gap:14px;margin-top:12px;display:flex}.service-toggle-row label{color:#475467;align-items:center;gap:6px;font-size:10px;font-weight:750;display:inline-flex}.service-editor-actions{justify-content:flex-end;gap:8px;margin-top:14px;display:flex}.service-editor-actions .button{min-height:36px;padding:0 13px;font-size:10px}.service-save{color:#fff;background:var(--navy)}.compact-form button,.invite-url button{color:#fff;background:var(--navy);cursor:pointer;border:0;border-radius:8px;min-height:36px;padding:0 10px;font-size:10px;font-weight:800}.compact-form button:disabled{opacity:.4;cursor:not-allowed}.access-card{min-width:0}.compact-form{grid-template-columns:1.2fr .8fr auto;gap:7px;display:grid}.compact-form input{border:1px solid #d7dce6;border-radius:8px;outline:none;min-width:0;height:38px;padding:0 10px;font-size:11px}.invite-form{grid-template-columns:1fr auto}.access-list{max-height:190px;margin-top:15px;display:grid;overflow:auto}.access-list>div{border-top:1px solid #edf0f4;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.access-list span{gap:3px;min-width:0;display:grid}.access-list strong{font-size:11px}.access-list small{text-overflow:ellipsis;color:var(--muted);font-size:9px;overflow:hidden}.access-list em{color:var(--green);flex:none;font-size:9px;font-style:normal;font-weight:800}.allowlist-row-actions{grid-auto-flow:column;align-items:center;gap:6px!important;display:flex!important}.allowlist-row-actions button,.allowlist-edit-row button{min-height:29px;color:var(--navy);cursor:pointer;background:#fff;border:1px solid #c8d0df;border-radius:7px;padding:0 8px;font-size:9px;font-weight:750}.allowlist-edit-row{grid-template-columns:1fr .8fr auto auto;width:100%;gap:6px!important;display:grid!important}.allowlist-edit-row input{border:1px solid #d7dce6;border-radius:7px;min-width:0;padding:7px 8px;font-size:10px}.invite-url{background:var(--blue-soft);border-radius:9px;grid-template-columns:1fr auto;align-items:center;gap:7px;margin-top:10px;padding:9px;display:grid}.invite-url code{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--navy);font-size:9px;overflow:hidden}.admin-loading,.manage-loading{min-height:100vh;color:var(--muted);justify-content:center;align-items:center;gap:9px;display:flex}.admin-access-page{background:#f5f6f9;place-items:center;min-height:100vh;padding:32px 18px;display:grid}.admin-access-card{text-align:center;border:1px solid var(--line);width:min(100%,520px);box-shadow:var(--shadow);background:#fff;border-radius:20px;padding:38px}.admin-access-label{color:var(--navy);background:var(--blue-soft);border-radius:999px;padding:6px 11px;font-size:12px;font-weight:800;display:inline-flex}.admin-access-card h1{letter-spacing:-.03em;margin:20px 0 12px;font-size:28px}.admin-access-card p{color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:14px;line-height:1.8}.admin-access-card p strong{color:var(--ink)}.admin-access-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:28px;display:flex}.booking-manager-title>button{align-items:center;gap:5px;display:inline-flex}.booking-table-clickable>article{grid-template-columns:1fr auto}.booking-row-open{min-width:0;min-height:83px;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:58px 1.05fr 1.6fr 1.25fr;align-items:center;gap:16px;padding:0;display:grid}.booking-row-open:hover strong{color:var(--orange)}.booking-drawer-backdrop{z-index:100;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0c183061;justify-content:flex-end;display:flex;position:fixed;inset:0}.booking-drawer{width:min(560px,100%);height:100%;color:var(--ink);background:#fff;padding:34px;position:relative;overflow-y:auto;box-shadow:-20px 0 50px #111f3b29}.drawer-close{border:1px solid var(--line);width:38px;height:38px;color:var(--navy);cursor:pointer;background:#fff;border-radius:50%;place-items:center;display:grid;position:absolute;top:22px;right:22px}.drawer-kicker{color:var(--orange);margin:4px 0 5px;font-size:11px;font-weight:800}.booking-drawer h2{margin:0 50px 22px 0;font-size:26px}.drawer-details{grid-template-columns:1fr 1fr;gap:9px;display:grid}.drawer-details>div{background:#f7f8fa;border-radius:9px;gap:5px;min-width:0;padding:12px;display:grid}.drawer-details .wide{grid-column:1/-1}.drawer-details small{color:var(--muted);font-size:9px}.drawer-details strong{overflow-wrap:anywhere;font-size:11px;line-height:1.6}.drawer-change-box{background:var(--blue-soft);border-radius:11px;margin-top:18px;padding:15px}.drawer-change-box>label{color:var(--navy);gap:6px;font-size:10px;font-weight:800;display:grid}.drawer-change-box textarea{resize:vertical;font:inherit;background:#fff;border:1px solid #cbd5e5;border-radius:8px;padding:10px;line-height:1.5}.drawer-date-search{margin-top:10px}.drawer-date-search input{min-height:38px;font:inherit;background:#fff;border:1px solid #cbd5e5;border-radius:8px;padding:0 10px}.drawer-date-search small{color:var(--muted);font-size:9px;font-weight:500;line-height:1.5}.drawer-actions{grid-template-columns:1fr 1fr;gap:7px;margin-top:10px;display:grid}.drawer-actions button,.archive-action,.cleanup-warning{min-height:38px;color:var(--navy);cursor:pointer;background:#fff;border:1px solid #bec9dc;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:0 11px;font-size:10px;font-weight:800;display:inline-flex}.drawer-actions .danger{color:#9d3434;background:#fff5f5;border-color:#efcaca}.drawer-slots{grid-template-columns:1fr 1fr;gap:6px;margin-top:10px;display:grid}.drawer-slots button{min-height:36px;color:var(--navy);cursor:pointer;background:#fff;border:1px solid #b9c4d8;border-radius:999px;padding:6px;font-size:9px;font-weight:750}.archive-action,.cleanup-warning{width:100%;margin-top:13px}.cleanup-warning{color:#a45a16;background:#fff9ef;border-color:#efc68f}.audit-list{border-top:1px solid var(--line);margin-top:25px;padding-top:18px}.audit-list h3{margin:0 0 8px;font-size:14px}.audit-list>div{border-top:1px solid #edf0f4;grid-template-columns:1fr auto;gap:3px 10px;padding:10px 0;display:grid}.audit-list>div span{gap:2px;display:grid}.audit-list strong{font-size:10px}.audit-list small,.audit-list time{color:var(--muted);font-size:8px}.audit-list p{color:#475467;grid-column:1/-1;margin:3px 0 0;font-size:9px;line-height:1.5}.connections-stack{gap:20px;display:grid}.calendar-blocking-list{display:grid}.calendar-blocking-list>div{border-top:1px solid #edf0f4;justify-content:space-between;align-items:center;gap:14px;min-height:62px;padding:9px 0;display:flex}.calendar-blocking-list>div:first-child{border-top:0}.calendar-blocking-list>div>span{gap:4px;min-width:0;display:grid}.calendar-blocking-list strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.calendar-blocking-list small{color:var(--muted);font-size:9px}.blocking-switch{color:var(--navy);cursor:pointer;flex:none;align-items:center;gap:7px;font-size:9px;font-weight:800;display:flex}.blocking-switch input{width:34px;height:19px;accent-color:var(--green)}.managed-event{color:#667085;flex:none;align-items:center;gap:4px;font-size:9px;font-style:normal;font-weight:750;display:inline-flex}.busy-diagnostics{color:#344054;background:#f8fafc;border:1px solid #e3e8ef;border-radius:10px;margin:14px 0;padding:12px 14px;font-size:9px}.busy-diagnostics summary{color:var(--navy);cursor:pointer;font-size:10px;font-weight:800}.busy-diagnostics p{color:var(--muted);margin:8px 0;line-height:1.6}.busy-diagnostics ul{max-height:240px;margin:0;padding-left:18px;line-height:1.8;overflow:auto}.manage-page{background:#f5f6f9;place-items:center;min-height:100vh;padding:54px 18px;display:grid}.manage-card{text-align:center;border:1px solid var(--line);width:min(620px,100%);box-shadow:var(--shadow);background:#fff;border-radius:20px;padding:42px}.manage-mark{width:62px;height:62px;color:var(--green);background:#e9f7f2;border-radius:50%;place-items:center;margin:0 auto;display:grid}.manage-mark svg{width:39px;height:39px}.manage-kicker{color:var(--orange);margin:20px 0 6px;font-size:12px;font-weight:850}.manage-card h1{margin:0 0 24px;font-size:28px}.manage-details{text-align:left;border:1px solid var(--line);border-radius:13px;gap:2px;margin-bottom:18px;display:grid;overflow:hidden}.manage-details>div{border-top:1px solid var(--line);background:#fafbfc;align-items:center;gap:13px;padding:15px 17px;display:flex}.manage-details>div:first-child{border-top:0}.manage-details svg{width:22px;height:22px;color:var(--navy)}.manage-details span{gap:3px;display:grid}.manage-details small{color:var(--muted);font-size:10px}.manage-details strong{overflow-wrap:anywhere;font-size:12px}.manage-status{border-radius:999px;margin:0 0 20px;padding:7px 11px;font-size:11px;font-weight:800;display:inline-block}.manage-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.danger-button{color:#a83b3b;background:#fff0f0}.manage-slots{border-top:1px solid var(--line);gap:8px;margin-top:24px;padding-top:20px;display:grid}.manage-slots h2{margin:0 0 6px;font-size:16px}.manage-slots button{min-height:42px;color:var(--navy);cursor:pointer;background:#fff;border:1px solid #b9c4d8;border-radius:999px;font-size:12px;font-weight:750}.manage-notice{color:var(--green);background:#e9f7f2;border-radius:9px;margin:0 0 18px;padding:10px;font-size:12px}.back-home{color:var(--muted);margin-top:20px;font-size:12px;font-weight:700;display:inline-block}.partner-application-page{background:#f5f6f9;min-height:100vh;padding:52px 18px}.partner-application-shell{width:min(680px,100%);margin:0 auto}.partner-application-shell>.text-button{color:var(--muted);align-items:center;gap:7px;margin-bottom:32px;text-decoration:none;display:inline-flex}.partner-application-shell h1{color:var(--navy);margin:10px 0 14px;font-size:clamp(30px,6vw,46px);line-height:1.15}.partner-application-shell>p:not(.eyebrow){max-width:610px;color:var(--muted);line-height:1.8}.partner-application-shell .micro-trust{justify-content:flex-start;margin:20px 0}.allowlist-explainer{background:#eef3fb;border:1px solid #d6dfef;border-radius:18px;gap:18px;margin:0 0 20px;padding:24px;display:grid}.allowlist-explainer h2{color:var(--navy);margin:5px 0 0;font-size:20px;line-height:1.35}.allowlist-explainer .eyebrow{margin:0}.allowlist-explainer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.allowlist-explainer-grid article{background:#ffffffb8;border-radius:11px;padding:14px}.allowlist-explainer-grid strong{color:var(--navy);margin-bottom:5px;font-size:12px;display:block}.allowlist-explainer-grid p{color:#596579;margin:0;font-size:11px;line-height:1.65}.partner-application-card{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:18px;padding:28px}.partner-application-card form{gap:17px;display:grid}.partner-application-card label,.allowlist-application-list label{color:var(--navy);gap:7px;font-size:11px;font-weight:800;display:grid}.partner-application-card input,.partner-application-card textarea,.allowlist-application-list textarea{width:100%;font:inherit;background:#fff;border:1px solid #cbd5e5;border-radius:9px;padding:12px 13px;line-height:1.5}.partner-application-card textarea,.allowlist-application-list textarea{resize:vertical}.partner-application-card .button{justify-self:start}.partner-application-result,.partner-application-error{border-radius:10px;align-items:flex-start;gap:10px;margin-top:18px;padding:13px;display:flex}.partner-application-result{color:#17654f;background:#e9f7f2}.partner-application-error{color:#9d3434;background:#fff0f0}.partner-application-result svg,.partner-application-error svg{flex:none;width:22px;height:22px}.partner-application-result div{gap:7px;display:grid}.partner-application-result small{align-items:center;gap:5px;line-height:1.5;display:flex}.allowlist-application-list{gap:12px;display:grid}.allowlist-application-list article{border:1px solid var(--line);background:#fafbfc;border-radius:10px;gap:10px;padding:14px;display:grid}.allowlist-application-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.allowlist-application-heading>span{gap:3px;display:grid}.allowlist-application-list small{color:var(--muted);overflow-wrap:anywhere}.allowlist-application-list p{color:#475467;margin:0;font-size:10px;line-height:1.6}.allowlist-application-list .row-actions{gap:8px;display:flex}.allowlist-review-summary{background:#f1f4f8;border-radius:8px;gap:4px;padding:10px;display:grid}.allowlist-review-summary strong,.allowlist-review-summary small{font-size:9px}@media (max-width:900px){.admin-shell{grid-template-columns:76px 1fr}.admin-sidebar{padding-inline:10px}.admin-brand strong,.admin-sidebar nav button{font-size:0}.admin-brand{justify-content:center;padding-inline:0}.admin-sidebar nav button{justify-content:center;padding:0}.admin-sidebar nav button svg{width:22px;height:22px}.admin-sidebar nav button.active:before,.sidebar-foot span{display:none}.admin-main{padding:28px 24px 60px}.booking-table>article{grid-template-columns:52px 1fr 1fr auto}.booking-purpose{display:none}.rule-layout,.access-layout,.special-date-grid{grid-template-columns:1fr}.access-services{grid-row:auto}.booking-row-open{grid-template-columns:52px 1fr 1fr}.booking-row-open .booking-purpose{display:none}}@media (max-width:650px){.allowlist-explainer{padding:18px}.allowlist-explainer-grid,.calendar-color-picker{grid-template-columns:1fr}.admin-shell{display:block}.admin-sidebar{z-index:20;grid-template-columns:46px 1fr;align-items:center;height:66px;min-height:auto;padding:8px 12px;display:grid;position:sticky}.admin-brand{border:0;padding:0}.admin-brand>span{width:38px;height:38px}.admin-sidebar nav{justify-content:flex-end;gap:4px;margin:0;display:flex}.admin-sidebar nav button{width:41px;min-height:41px}.sidebar-foot{display:none}.admin-main{padding:24px 14px 50px}.admin-topbar h1{font-size:24px}.admin-user{display:flex}.admin-user-copy{display:none}.admin-signout{min-height:44px;padding-inline:13px}.stat-grid{grid-template-columns:1fr;gap:10px}.stat-grid article{min-height:112px}.admin-panel{padding:17px;overflow:hidden}.booking-table>article{grid-template-columns:48px 1fr;gap:10px;padding:12px 0}.booking-table-clickable>article{grid-template-columns:1fr}.booking-row-open{grid-template-columns:48px 1fr;gap:10px;min-height:auto}.booking-row-open .booking-time,.booking-time{grid-column:2}.row-actions,.booking-table .status{grid-column:1/-1;justify-self:stretch}.row-actions button{flex:1;justify-content:center}.rule-summary,.connection-grid,.special-date-pair{grid-template-columns:1fr}.special-date-list article{flex-direction:column}.service-template-grid{grid-template-columns:1fr}.service-template-grid label.wide{grid-column:auto}.service-editor-heading{align-items:flex-start}.service-editor-actions{grid-template-columns:1fr;display:grid}.service-editor-actions .button{width:100%}.compact-form{grid-template-columns:1fr}.allowlist-edit-row{grid-template-columns:1fr!important}.allowlist-row-actions{flex-wrap:wrap;justify-content:flex-end}.booking-drawer{padding:26px 18px}.drawer-details,.drawer-actions,.drawer-slots{grid-template-columns:1fr}.calendar-blocking-list>div{flex-direction:column;align-items:flex-start}.manage-card{padding:30px 18px}.manage-actions{grid-template-columns:1fr}.partner-application-page{padding:28px 14px}.partner-application-card{padding:20px 16px}.partner-application-card .button{width:100%}}
