html,body,#root{min-width:320px;min-height:100%;margin:0}html{background:#f4f3ef}body{min-height:100vh}@supports (min-height:100dvh){body{min-height:100dvh}}button,input,textarea,select{font:inherit}button{border:0}*{box-sizing:border-box}:root{color:#171717;background:#f4f3ef;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body{color:#171717;background:#f4f3ef}button,input,textarea,select{font-family:inherit}button{cursor:pointer}.app{width:100%;max-width:760px;min-height:100vh;padding:calc(76px + env(safe-area-inset-top)) calc(22px + env(safe-area-inset-right)) calc(110px + env(safe-area-inset-bottom)) calc(22px + env(safe-area-inset-left));margin:0 auto}@supports (min-height:100dvh){.app{min-height:100dvh}}.topbar{z-index:40;height:calc(76px + env(safe-area-inset-top));box-sizing:border-box;background:#f4f3ef;border-bottom:1px solid #0000000d;width:100%;max-width:none;margin:0;padding:0;position:fixed;top:0;left:0;right:0;box-shadow:0 5px 14px #00000006}.topbar>.menu-button,.topbar>.back-button{left:calc(20px + env(safe-area-inset-left));top:calc(50% + (env(safe-area-inset-top) / 2));z-index:1;position:absolute;transform:translateY(-50%)}.topbar>.brand{top:calc(50% + (env(safe-area-inset-top) / 2));z-index:1;white-space:nowrap;gap:12px;font-size:19px;position:absolute;left:50%;transform:translate(-50%,-50%)}.topbar>.brand .brand-logo{border-radius:11px;width:40px;height:40px;font-size:14px}.topbar>.account-menu{top:calc(50% + (env(safe-area-inset-top) / 2));right:calc(20px + env(safe-area-inset-right));z-index:2;position:absolute;transform:translateY(-50%)}.auth-page{background:#f4f3ef;place-items:center;min-height:100dvh;padding:24px;display:grid}.auth-card{background:#fff;border:1px solid #00000012;border-radius:22px;gap:22px;width:min(100%,420px);padding:28px;display:grid;box-shadow:0 14px 38px #00000012}.auth-card>.brand{justify-content:center}.auth-card form{gap:14px;display:grid}.auth-card label{color:#5f5d57;gap:7px;font-size:12px;font-weight:750;display:grid}.auth-card input{min-height:48px}.auth-message{color:#68655f;margin:0;font-size:14px;line-height:1.5}.password-rules{color:#68655f;margin:-4px 0 0;font-size:12px;line-height:1.45}.auth-success{color:#2f6c3a;background:#eff8f0;border:1px solid #b9d9bf;border-radius:12px;padding:11px 12px;font-size:13px;line-height:1.4}.auth-links{justify-items:center;gap:8px;display:grid}.auth-links button,.auth-back{color:#4f4d48;text-underline-offset:3px;background:0 0;border:0;justify-self:start;padding:3px 0;font-size:13px;font-weight:700;text-decoration:underline}.user-accounts-intro{color:#696761;margin:-8px 0 14px;font-size:13px}.user-account-row{background:#fff;border:1px solid #00000012;border-radius:15px;justify-content:space-between;align-items:center;gap:14px;margin-bottom:9px;padding:14px;display:flex}.user-account-row>div{gap:3px;min-width:0;display:grid}.user-account-row strong{font-size:14px}.user-account-row small,.user-account-row span{color:#777;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.user-account-row .account-admin-badge{color:#4f4d48;white-space:nowrap;background:#f3f2ef;border-radius:999px;justify-self:start;width:fit-content;padding:3px 6px;font-size:10px;font-style:normal;font-weight:750}.user-account-row-actions>b{border-radius:999px;padding:5px 8px;font-size:10px}.user-account-row-actions{flex:none;justify-items:end;gap:7px;display:grid}.user-account-actions-menu{position:relative}.user-account-actions-trigger{color:#3f3d38;background:#fff;border:1px solid #0000001a;border-radius:9px;place-items:center;width:32px;height:32px;font-size:20px;font-weight:800;line-height:1;display:grid}.user-account-actions-popover{z-index:5;background:#fff;border:1px solid #0000001a;border-radius:11px;min-width:180px;padding:5px;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 10px 24px #00000024}.user-account-actions-popover button{color:#3f3d38;text-align:left;background:0 0;border:0;border-radius:7px;width:100%;min-height:38px;font-size:12px;font-weight:750}.user-account-actions-popover button:hover{background:#f4f3ef}.user-account-actions-popover .user-account-deactivate-action,.user-account-actions-popover button:last-child{color:#a62921}.user-account-actions-popover .user-account-deactivate-action:hover,.user-account-actions-popover button:last-child:hover{background:#fff3f2}.user-account-actions-popover .user-account-reactivate-action{color:#25633a}.capacity-warning-actions .user-account-deactivate-confirm-button{color:#fff;background:#b42318;border-color:#a62921}.capacity-warning-actions .user-account-reactivate-confirm-button{color:#fff;background:#171717;border-color:#171717}.user-account-delete-confirmation{max-width:440px}.user-account-delete-confirmation>small{color:#5f5d57;line-height:1.45}.capacity-warning-actions .user-account-delete-confirm-button{color:#fff;background:#b42318;border-color:#a62921}.account-active{color:#25633a;background:#edf7ef}.account-inactive{color:#696761;background:#f3f2ef}.account-invited{color:#3f3d38;background:#f4f3ef}.user-account-form{background:#fff;border:1px solid #00000014;border-radius:16px;gap:11px;margin:12px 0;padding:15px;display:grid}.user-accounts-screen:has(.user-account-form)>.user-account-invite-trigger{display:none}.user-account-form label{color:#5f5d57;gap:6px;font-size:12px;font-weight:750;display:grid}.user-account-form input{min-height:42px}.user-account-form fieldset{border:0;gap:8px;margin:0;padding:0;display:grid}.user-account-form legend{color:#5f5d57;margin-bottom:7px;font-size:12px;font-weight:750}.user-account-form fieldset .establishment-option{color:#171717;letter-spacing:normal;text-transform:none;align-items:center;gap:10px;width:100%;min-width:0;display:flex}.user-account-form fieldset .establishment-option input[type=checkbox]{flex:0 0 18px;width:18px;min-width:18px;height:18px;min-height:18px;margin:0}.user-account-form fieldset .establishment-option span{min-width:0;color:inherit;overflow-wrap:anywhere;font-size:14px;font-weight:700;line-height:1.35}.account-admin-option{align-items:center;gap:10px;display:flex!important}.account-admin-option input{width:18px;min-width:18px;height:18px;margin:0}.user-account-form-actions{grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:8px;display:grid}.user-account-form-actions>button{min-width:0}.user-account-form-actions .user-account-cancel{background:#b42318}.brand{cursor:pointer;letter-spacing:.08em;align-items:center;gap:10px;font-size:15px;font-weight:750;display:flex}.brand-logo{color:#fff;letter-spacing:-.04em;background:#171717;border-radius:9px;justify-content:center;align-items:center;width:31px;height:31px;font-size:11px;font-weight:800;display:flex}.header-spacer{width:42px}.menu-button,.profile-button,.back-button{color:#171717;background:#ffffffb3;border:1px solid #0000000f;border-radius:13px;justify-content:center;align-items:center;width:42px;height:42px;font-size:20px;display:flex}.menu-button{font-size:19px}.profile-button{min-width:44px;min-height:44px;font-size:14px;font-weight:700}.account-menu{justify-content:flex-end;display:flex;position:relative}.account-menu-popover{z-index:70;background:#fff;border:1px solid #00000017;border-radius:15px;width:max-content;min-width:218px;padding:7px;display:grid;position:absolute;top:calc(100% + 9px);right:0;box-shadow:0 13px 30px #00000021}.account-menu-popover button{color:#171717;text-align:left;background:0 0;border:0;border-radius:10px;min-height:44px;padding:0 13px;font-size:13px;font-weight:700}.account-menu-popover button:hover,.account-menu-popover button:focus-visible{background:#f4f3ef}.account-menu-divider{background:#0000001a;height:1px;margin:5px 6px}.account-menu-popover .account-menu-signout{color:#a6332f}.account-details-card,.account-password-form{background:#fff;border:1px solid #00000014;border-radius:17px;gap:14px;padding:17px;display:grid}.account-details-card{--account-value-color:#171717}.account-details-card>div{gap:4px;display:grid}.account-details-card span,.account-password-form label{color:#77746e;letter-spacing:.07em;text-transform:uppercase;font-size:11px;font-weight:800}.account-details-card strong,.account-establishments li{color:var(--account-value-color);opacity:1;filter:none;font-size:14px;font-weight:700;line-height:1.4}.account-establishments ul{gap:5px;margin:2px 0 0;padding:0;list-style:none;display:grid}.account-establishments li:before{content:"•";color:#77746e;margin-right:7px}.account-password-form label{gap:7px;display:grid}.account-password-form input{min-height:48px}.account-password-form .password-rules{margin:-4px 0 0}.account-actions-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;width:100%;display:grid}.account-actions-grid .continue-button,.account-signout-button{width:100%;min-width:0;min-height:48px;padding:10px 12px}.account-signout-button{margin-top:16px}.account-current-email{gap:5px;display:grid}.account-current-email span{color:#77746e;letter-spacing:.07em;text-transform:uppercase;font-size:11px;font-weight:800}.account-current-email strong{color:#171717;overflow-wrap:anywhere;font-size:14px}.back-button{font-size:30px;line-height:1}.date-navigation{justify-content:space-between;align-items:center;margin:25px 0 26px;display:flex;position:relative}.home-date-navigation{margin-top:8px}.date-navigation>button{color:#171717;background:#fff;border:1px solid #0000000f;border-radius:12px;width:40px;height:40px;font-size:25px}.date-navigation>div{text-align:center}.date-navigation-center{position:relative}.date-trigger{color:#171717;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:12px;flex-direction:column;align-items:center;max-width:min(100%,290px);padding:7px 12px;transition:background .15s,border-color .15s,transform .15s;display:flex}.date-trigger:hover{background:#00000006;border-color:#00000014}.date-trigger:active{transform:scale(.985)}.date-trigger:focus-visible,.date-calendar button:focus-visible{outline-offset:2px;outline:2px solid #171717}.date-navigation span{letter-spacing:.14em;color:#8a8a8a;font-size:10px;font-weight:800}.date-navigation h1{letter-spacing:-.04em;margin:5px 0 0;font-size:25px;font-weight:750}.date-calendar{z-index:30;background:#fff;border:1px solid #00000017;border-radius:16px;width:288px;padding:12px;position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%);box-shadow:0 14px 35px #00000021}.date-calendar-header{justify-content:space-between;align-items:center;min-height:32px;margin-bottom:12px;display:flex;position:relative}.date-calendar-title{color:#252525;text-align:center;text-overflow:ellipsis;text-transform:capitalize;white-space:nowrap;cursor:pointer;background:0 0;border:0;width:calc(100% - 80px);padding:4px;font-size:13px;font-weight:700;line-height:1.25;position:absolute;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}.date-calendar-title:hover{background:#e9e7e0;border-radius:8px}.date-calendar-header>button:not(.date-calendar-title){color:#171717;cursor:pointer;background:#f4f3ef;border:0;border-radius:9px;width:32px;height:32px;font-size:22px;line-height:1}.date-calendar-header button:hover,.date-calendar-grid button:hover{background:#e9e7e0}.date-calendar-months{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;display:grid}.date-calendar-months button{color:#252525;text-transform:capitalize;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;min-height:38px;padding:5px 3px;font-size:12px;font-weight:700}.date-calendar-months button:hover{background:#e9e7e0}.date-calendar-months button.selected{color:#fff;background:#171717;border-color:#171717}.date-calendar-weekdays,.date-calendar-grid{grid-template-columns:repeat(7,1fr);gap:3px;display:grid}.date-calendar-weekdays{margin-bottom:4px}.date-calendar-weekdays span{color:#858585;letter-spacing:0;text-align:center;font-size:10px;font-weight:800}.date-calendar-grid button,.date-calendar-grid>span{width:35px;height:35px}.date-calendar-grid button{color:#252525;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;font-size:12px;font-weight:700}.date-calendar-grid button.today{border-color:#00000040}.date-calendar-grid button.selected{color:#fff;background:#171717;border-color:#171717}.reservation-date-calendar{background:#fff;border:1px solid #e2e0da;border-radius:15px;width:min(100%,310px);margin:10px auto 0;padding:14px;box-shadow:0 8px 22px #0000000f}.reservation-date-calendar .date-calendar-grid button:disabled{color:#c7c4bd;cursor:not-allowed}.reservation-date-calendar .date-calendar-grid button:disabled:hover{background:0 0}.selected-reservation-date{color:#68655f;text-transform:capitalize;margin:9px 0 0;font-size:12px}.summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:20px;display:grid}.summary-card{background:#fff;border:1px solid #0000000d;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;min-height:86px;padding:15px 16px;display:flex;box-shadow:0 4px 18px #00000009}button.summary-card{color:#171717;text-align:left;width:100%;font:inherit;cursor:pointer;transition:transform .15s,border-color .15s,box-shadow .15s,background .15s}button.summary-card:hover{border-color:#00000038;box-shadow:0 7px 20px #00000012}button.summary-card:active{transform:scale(.985)}button.summary-card.active{color:#fff;background:#171717;border-color:#171717}button.summary-card:focus-visible{outline-offset:3px;outline:2px solid #171717}.summary-card.day,.summary-card.other-service{grid-column:1/-1;min-height:60px;padding:13px 16px}.summary-card.period{min-height:60px;padding:13px 16px}.summary-card-content{justify-content:space-between;align-items:center;gap:18px;width:min(100%,230px);display:flex}.summary-card span{letter-spacing:.08em;opacity:.65;font-size:10px;font-weight:800}.summary-card strong{letter-spacing:-.05em;margin-top:8px;font-size:27px;line-height:1}.summary-card-total{white-space:nowrap;align-items:baseline;gap:5px;margin-left:auto;display:inline-flex}.summary-card-content strong{margin:0;font-size:22px}.summary-card-content small{font-size:10px}.summary-card small{opacity:.6;font-size:11px;font-weight:600}.summary-card.day small,.summary-card.other-service small{opacity:.6}.reservations{margin-bottom:25px}.section-title{justify-content:space-between;align-items:baseline;margin-bottom:13px;display:flex}.section-title h2{letter-spacing:.13em;margin:0;font-size:11px;font-weight:850}.section-title span{color:#999;font-size:11px}.reservation-list{flex-direction:column;gap:17px;display:flex}.reservation-time-group-heading{border-bottom:1px solid #e6e4df;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:7px;padding-bottom:6px;display:flex}.reservation-time-group h3{color:#272624;margin:0 0 7px;padding-top:2px;font-size:17px;font-weight:750;line-height:1}.reservation-time-group-heading h3{margin:0}.slot-capacity-list{flex-direction:column;align-items:flex-end;gap:4px;display:flex}.slot-capacity-indicator{color:#171717;text-align:right;flex-direction:column;align-items:flex-end;gap:2px;font-size:11px;line-height:1.1;display:flex}.slot-capacity-indicator strong{font-weight:800}.slot-capacity-indicator small{letter-spacing:.055em;text-transform:uppercase;font-size:9px;font-weight:850}.slot-capacity-indicator.full,.slot-capacity-indicator.over{color:#b42318}.reservation-group-rows{background:#fff;border:1px solid #0000000f;border-radius:14px;overflow:hidden;box-shadow:0 3px 15px #00000006}.reservation{min-height:49px;box-shadow:none;background:#fff;border:0;border-radius:0;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:10px 13px;transition:transform .15s,box-shadow .15s;display:grid}.reservation+.reservation{border-top:1px solid #eeece7}.reservation:hover{transform:translateY(-1px);box-shadow:0 6px 20px #00000012}.reservation-time{font-size:15px;font-weight:750}.reservation-info{flex-direction:column;gap:5px;min-width:0;display:flex}.reservation-guests{color:#5e5b56;white-space:nowrap;font-size:13px;font-weight:600}.reservation-info>span{color:#999;font-size:11px}.reservation-name{align-items:center;gap:7px;display:flex}.reservation-name strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:700;overflow:hidden}.client-badge{color:#b42318;background:#fff0f0;border:1px solid #f3c7c7;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:19px;height:19px;font-size:11px;font-weight:800;display:flex}.reservation-table{justify-content:flex-end;align-items:center;gap:10px;min-width:32px;display:flex}.reservation-table .reservation-status-dot{flex-basis:16px;width:16px;height:16px}.reservation-table>span:not(.warning):not(.reservation-status-dot){background:#f3f2ef;border-radius:9px;padding:7px 10px;font-size:11px;font-weight:750}.reservation-table .reservation-terminal-status{color:#5f5b55;white-space:nowrap;background:#f8f7f5;border:1px solid #deddd9}.reservation-terminal-detail{color:#4d4942;text-align:center;background:#f8f7f5;border:1px solid #deddd9;border-radius:12px;padding:10px 13px;font-size:12px;font-weight:750}.reservation-arrived-detail{color:#346d93;text-align:center;background:#f1f7fb;border:1px solid #c9ddea;border-radius:12px;place-items:center;min-height:42px;padding:10px 13px;font-size:12px;font-weight:750;display:grid;position:relative}.reservation-arrived-detail button{color:#346d93;background:0 0;border:0;border-radius:9px;width:36px;height:36px;font-size:25px;font-weight:400;line-height:1;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.reservation-arrived-detail button:hover{background:#4b82a81a}.reservation-status-legend{color:#77746e;flex-wrap:wrap;gap:8px 14px;margin:-4px 0 12px;font-size:11px;display:flex}.reservation-status-legend span{align-items:center;gap:5px;display:inline-flex}.reservation-status-dot{border-radius:50%;flex:0 0 10px;width:10px;height:10px;box-shadow:0 0 0 2px #ffffffdb}.reservation-status-dot.upcoming{background:#4d9b65}.reservation-status-dot.arrived{background:#4b82a8}.reservation-status-dot.late{background:#d65555}.reservation-status-dot.at-table{background:#8a62ac}.reservation-search,.reservation-mobile-note,.phone-home-header-date,.reservation-open-chevron,.reservation-time-group-summary,.reservation-table-mobile{display:none}.warning{color:#9a6500;background:#fff1d8;border-radius:50%;justify-content:center;align-items:center;width:27px;height:27px;font-size:13px;font-weight:900;display:flex}.loading{text-align:center;color:#999;padding:30px 10px;font-size:13px}.bottom-actions{left:50%;bottom:calc(18px + env(safe-area-inset-bottom));width:min(calc(100% - 44px - env(safe-area-inset-left) - env(safe-area-inset-right)), 716px);z-index:10;grid-template-columns:repeat(3,1fr);gap:10px;display:grid;position:fixed;transform:translate(-50%)}.bottom-actions.past-date-actions{grid-template-columns:minmax(0,1fr)}.bottom-actions.future-date-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.floor-plan,.walk-in-action,.new-reservation{border-radius:17px;justify-content:center;align-items:center;gap:9px;height:58px;font-size:12px;font-weight:700;display:flex;box-shadow:0 8px 30px #0000001f}.floor-plan{color:#171717;background:#fff}.floor-plan.past-date-floor-plan{color:#fff;background:#171717}.walk-in-action{color:#171717;background:#fff}.walk-in-action:disabled{opacity:.42;cursor:not-allowed;box-shadow:none}.new-reservation{color:#fff;background:#171717}.floor-plan span,.walk-in-action span,.new-reservation span{font-size:20px;line-height:1}.floor-plan small,.walk-in-action small,.new-reservation small{font-size:12px}.reservation-form{max-width:600px;margin:20px auto 0}.room-plan-editor-app{max-width:1480px}.room-plan-editor-app .room-plan-detail{max-width:none}.client-form{max-width:600px}.client-directory,.client-directory-detail,.client-directory-form{max-width:720px}.client-directory-toolbar{flex-direction:column;gap:9px;margin-bottom:14px;display:flex}.client-directory-toolbar input{color:#171717;width:100%;min-width:0;min-height:42px;font:inherit;background:#fff;border:1px solid #deddd9;border-radius:11px;padding:0 12px;font-size:12px}.directory-new-client{color:#fff;white-space:nowrap;background:#171717;border:1px solid #171717;border-radius:11px;width:100%;min-height:42px;padding:0 12px;font-size:11px;font-weight:750}.client-directory-list,.client-history-list{flex-direction:column;gap:7px;display:flex}.client-directory-row{color:#171717;cursor:pointer;text-align:left;background:#fff;border:1px solid #00000012;border-radius:13px;flex-direction:column;align-items:flex-start;gap:3px;width:100%;padding:13px 14px;transition:border-color .15s,background .15s,transform .15s;display:flex}.client-directory-row:hover{background:#fcfbf8;border-color:#0003}.client-directory-row:active{transform:scale(.995)}.client-directory-row strong{font-size:13px}.client-directory-row span{color:#6f6e68;font-size:11px}.client-directory-row small{color:#777;font-size:11px;line-height:1.35}.directory-loading{color:#777;margin:-4px 0 8px;font-size:11px;font-weight:650}.directory-pagination{flex-direction:column;align-items:center;gap:10px;margin-top:16px;display:flex}.directory-pagination-summary{color:#777;font-size:11px;font-weight:600}.directory-pagination-controls{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.directory-pagination-controls button{color:#171717;background:#fff;border:1px solid #deddd9;border-radius:10px;min-width:34px;height:34px;padding:0 10px;font-size:11px;font-weight:700}.directory-pagination-controls button.active{color:#fff;background:#171717;border-color:#171717}.directory-pagination-controls button:disabled{color:#aaa8a2;cursor:not-allowed}.directory-pagination-ellipsis{color:#777;text-align:center;align-self:center;min-width:16px}.client-profile{background:#fff;border:1px solid #00000012;border-radius:15px;flex-direction:column;gap:12px;padding:15px;display:flex}.success-toast{z-index:70;top:calc(92px + env(safe-area-inset-top));box-sizing:border-box;color:#246036;background:#eaf6ed;border:1px solid #b8d9c0;border-radius:13px;justify-content:center;align-items:center;width:min(100vw - 32px,420px);min-height:54px;padding:12px 16px;font-size:15px;font-weight:750;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 10px 26px #1717171f}.client-profile div{flex-direction:column;gap:4px;display:flex}.client-profile span,.client-history-heading{color:#888;letter-spacing:.09em;font-size:10px;font-weight:850}.client-profile strong{font-size:13px}.client-profile p{color:#46453f;white-space:pre-wrap;margin:0;font-size:12px;line-height:1.45}.phone-link{color:inherit;font:inherit;align-items:center;gap:6px;text-decoration:none;display:inline-flex}.phone-link:hover{text-underline-offset:3px;text-decoration:underline}.client-edit-action{color:#fff;background:#171717;border-color:#171717;border-radius:14px;width:100%;min-height:52px;margin-top:12px;font-size:14px;font-weight:700}.client-back-home-action{color:#171717;background:#fff;border-color:#d5d4d0;border-radius:14px;width:100%;min-height:52px;margin-top:9px;font-size:14px;font-weight:700}.client-history-heading{justify-content:space-between;align-items:center;margin:28px 0 10px;display:flex}.client-history-heading b{color:#5d5b55;letter-spacing:0;text-align:center;background:#efeee9;border-radius:999px;min-width:22px;padding:3px 6px;font-size:10px}.client-history-row{background:#fcfbf8;border:1px solid #0000000f;border-radius:12px;flex-direction:column;gap:3px;padding:12px 13px;display:flex}.client-history-row strong{text-transform:capitalize;font-size:12px}.client-history-row span{font-size:11px;font-weight:700}.client-history-row small{color:#777;font-size:11px}.delete-client-button{color:#aa2e25;background:snow;border:1px solid #d9a8a3;border-radius:12px;width:100%;min-height:44px;margin-top:28px;font-size:12px;font-weight:750;display:block}.delete-client-button:hover{background:#fff3f2;border-color:#aa2e25}.client-delete-confirmation{max-width:520px}.client-delete-confirmation>p{color:#3f3e39;font-size:14px;line-height:1.45}.client-delete-confirmation .client-delete-warning{color:#777;margin-top:18px;font-size:12px}.confirm-delete-client-button{color:#fff;background:#b42318;border:1px solid #a62921;border-radius:12px;min-height:46px;font-size:12px;font-weight:750}.recap-form{max-width:600px}.page-heading{margin:25px 0 35px}.page-heading>span{letter-spacing:.14em;color:#999;font-size:10px;font-weight:850}.page-heading h1{letter-spacing:-.045em;margin:7px 0 0;font-size:29px;line-height:1.1}.form-section{margin-bottom:25px}.form-section>label{letter-spacing:.04em;margin-bottom:10px;font-size:11px;font-weight:800;display:block}.field-error{color:#b42318;margin-top:7px;font-size:11px;font-weight:650;display:block}.choice-grid{gap:9px;display:grid}.choice-grid.three{grid-template-columns:repeat(3,1fr)}.choice,.time-choice,.guest-choice{color:#171717;background:#fff;border:1px solid #deddd9;border-radius:13px;min-height:48px;font-size:12px;font-weight:650;transition:background .15s,color .15s,border-color .15s}.choice.active,.time-choice.active,.guest-choice.active{color:#fff;background:#171717;border-color:#171717}.time-grid{grid-template-columns:repeat(5,1fr);gap:8px;display:grid}.time-choice{flex-direction:column;justify-content:center;align-items:center;gap:2px;display:flex}.time-choice strong{font-size:12px;line-height:1}.time-choice small{color:#171717;font-size:9px;font-weight:750;line-height:1}.time-choice.capacity-full,.time-choice.capacity-over{border-color:#dba29c}.time-choice.capacity-full small,.time-choice.capacity-over small{color:#b42318}.time-choice.active small{color:#d6d5d0}.time-choice.active.capacity-full small,.time-choice.active.capacity-over small{color:#f2aaa5}.time-unavailable-message{color:#6a6862;background:#f8f7f4;border:1px solid #deddd9;border-radius:13px;margin:0;padding:12px 14px;font-size:13px;line-height:1.4}.walk-in-table-picker{gap:10px}.walk-in-plan-tabs{margin:0 0 2px}.mini-plan-viewport{aspect-ratio:1000/680;background:#fcfbf8;border:1px solid #deddd9;border-radius:16px;justify-content:center;align-items:center;width:100%;min-height:238px;display:flex;position:relative;overflow:hidden}.mini-plan-stage{flex:none;position:relative}.mini-plan-canvas{transform-origin:0 0;width:1000px;height:680px;position:absolute;top:0;left:0}.mini-plan-canvas .floor-plan-surface{pointer-events:auto}.mini-plan-canvas .floor-plan-table{cursor:pointer}.mini-plan-canvas .floor-plan-table.selected{box-shadow:0 0 0 5px #171717,0 0 0 9px #ffffffe6}.walk-in-selected-table{color:#68655f;margin:0;font-size:13px}.walk-in-selected-table strong{color:#171717}.service-floor-plan-fit-viewport{background:#fcfbf8;border:1px solid #00000012;border-radius:15px;justify-content:center;align-items:center;width:100%;height:100%;min-height:0;display:flex;position:relative;overflow:hidden}.service-floor-plan-fit-stage{flex:none;position:relative}.service-floor-plan-fit-canvas{transform-origin:0 0;width:1000px;height:680px;position:absolute}.service-floor-plan-fit-canvas .floor-plan-surface{pointer-events:auto}.service-period-settings{flex-direction:column;gap:12px;display:flex}.service-period-settings .page-heading{margin-bottom:12px}.settings-screen{flex-direction:column;gap:20px;display:flex}.settings-navigation{gap:12px;display:grid}.settings-navigation-item{color:#171717;text-align:left;background:#fff;border:1px solid #e7e5df;border-radius:18px;justify-content:space-between;align-items:center;gap:16px;width:100%;min-height:86px;padding:18px 20px;display:flex;box-shadow:0 8px 20px #00000008}.settings-navigation-item>div{gap:5px;min-width:0;display:grid}.settings-navigation-item strong{font-size:16px}.settings-navigation-item small{color:#68655f;font-size:13px;line-height:1.4}.settings-navigation-item b{flex:none;font-size:26px;font-weight:400}.settings-navigation-item:hover{border-color:#c9c6bf}.service-period-card{background:#fff;border:1px solid #0000000f;border-radius:16px;flex-direction:column;gap:12px;padding:16px;display:flex}.service-period-card label{color:#777;flex-direction:column;gap:6px;font-size:11px;font-weight:700;display:flex}.service-period-card .resalle-select{box-sizing:border-box;color:#171717;cursor:pointer;appearance:none;background:#fcfbf8 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='m4 6 4 4 4-4' stroke='%23706e68' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") right 12px center/12px 12px no-repeat;border:1px solid #e1e0dc;border-radius:15px;height:36px;min-height:36px;padding:0 35px 0 12px;font-size:12px;font-weight:700;line-height:1;transition:border-color .15s,box-shadow .15s,background-color .15s}.service-period-card .resalle-select:hover{border-color:#bdbbb5}.service-period-card .resalle-select:focus{border-color:#54524d;box-shadow:0 0 0 3px #1717171a}.service-period-card .resalle-select::-ms-expand{display:none}.service-period-times{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.service-time-slot-limits{flex-direction:column;gap:7px;padding-top:3px;display:flex}.service-time-slot-limits>span{color:#999;letter-spacing:.1em;font-size:9px;font-weight:850}.service-time-slot-limit{grid-template-columns:58px 64px minmax(0,1fr) 34px;align-items:center;gap:9px!important;display:grid!important}.service-time-slot-limit b{color:#171717;font-size:12px}.service-time-slot-limit input{box-sizing:border-box;color:#171717;min-width:0;height:34px;font:inherit;text-align:center;background:#fff;border:1px solid #deddd9;border-radius:9px;padding:0 9px}.service-time-slot-limit small{color:#888;font-size:11px;font-weight:600}.service-time-slot-limit.unavailable{opacity:.58}.service-time-slot-limit.unavailable input{color:#8b8984;cursor:not-allowed;background:#f0efec}.service-time-slot-toggle{color:#56544f;cursor:pointer;background:#fff;border:1px solid #deddd9;border-radius:9px;width:34px;min-width:34px;height:34px;font-size:20px;font-weight:500;line-height:1}.service-time-slot-toggle:hover{color:#171717;background:#f1f0ed}.service-time-slot-limit.unavailable .service-time-slot-toggle{color:#55534e;background:#ecebe7}.guests-grid{grid-template-columns:repeat(7,1fr);gap:8px;display:grid}.guest-choice{min-width:0}.guest-choice.plus{font-size:20px}.walk-in-custom-guests{color:#68655f;align-items:center;gap:8px;margin-top:10px;font-size:13px;font-weight:650;display:inline-flex}.walk-in-custom-guests input{box-sizing:border-box;color:#171717;width:58px;min-height:38px;font:inherit;text-align:center;background:#fff;border:1px solid #deddd9;border-radius:13px;padding:0 8px;font-weight:650}.walk-in-custom-guests input:focus{border-color:#171717;outline:none;box-shadow:0 0 0 3px #1717171a}.guest-count{text-align:center;color:#777;margin-top:10px;font-size:12px;font-weight:700}input,textarea,select{color:#171717;background:#fff;border:1px solid #deddd9;border-radius:13px;outline:none;width:100%;padding:14px 15px}input:focus,textarea:focus,select:focus{border-color:#171717}textarea{resize:vertical}.continue-button{color:#fff;background:#171717;border-radius:15px;justify-content:center;align-items:center;gap:12px;width:100%;min-height:54px;margin-top:10px;font-size:13px;font-weight:750;display:flex;box-shadow:0 7px 22px #00000021}.continue-button span{font-size:18px}.continue-button:disabled{opacity:.6;cursor:wait}.edit-date-input{margin-top:10px}.edit-client-section,.new-client-search{position:relative}.client-search-feedback{color:#777;margin-top:6px;font-size:11px;display:block}.phone-duplicate-warning{color:#4d493c;background:#fffdf5;border:1px solid #e5d9b7;border-radius:12px;flex-direction:column;gap:6px;margin-top:9px;padding:11px;display:flex}.phone-duplicate-warning strong{font-size:12px}.phone-duplicate-warning span{color:#6f6a58;font-size:11px}.phone-duplicate-warning button{color:#fff;background:#171717;border:1px solid #171717;border-radius:9px;align-self:flex-start;min-height:34px;padding:0 11px;font-size:11px;font-weight:750}.selected-client-info{background:#faf9f5;border:1px solid #e5e3df;border-radius:13px;flex-direction:column;gap:5px;margin:4px 0 16px;padding:13px 14px;display:flex}.selected-client-info span{color:#888;letter-spacing:.1em;font-size:9px;font-weight:850}.selected-client-info p{color:#46453f;white-space:pre-wrap;margin:0;font-size:12px;line-height:1.45}.capacity-warning-backdrop{z-index:30;padding:max(20px, env(safe-area-inset-top)) max(20px, env(safe-area-inset-right)) max(20px, env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-left));background:#1717173d;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.capacity-warning{color:#4d493c;background:#fffdf5;border:1px solid #e5d9b7;border-radius:14px;flex-direction:column;gap:5px;width:min(100%,420px);max-height:100%;padding:14px;display:flex;overflow-y:auto}.capacity-warning strong{font-size:13px}.capacity-warning span{font-size:12px}.capacity-warning small{color:#6f6a58;margin-top:3px;font-size:11px}.capacity-warning-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;margin-top:8px;display:grid}.capacity-warning-actions button{color:#171717;background:#fff;border:1px solid #d5d4d0;border-radius:11px;width:100%;min-width:0;min-height:40px;font-size:12px;font-weight:750}.capacity-warning-actions button:last-child{color:#fff;background:#171717;border-color:#171717}.directory-phone-duplicate-warning{color:#4d493c;background:#fffdf5;border:1px solid #e5d9b7;border-radius:12px;flex-direction:column;gap:4px;margin-top:9px;padding:12px;display:flex}.directory-phone-duplicate-warning strong,.directory-phone-duplicate-warning span{font-size:12px}.directory-phone-duplicate-warning small{color:#6f6a58;margin-top:3px;font-size:11px}.directory-name-duplicate-warning{color:#4d493c;background:#fffdf5;border:1px solid #e5d9b7;border-radius:12px;flex-direction:column;gap:4px;margin:14px 0;padding:13px;display:flex}.directory-name-duplicate-warning strong,.directory-name-duplicate-warning span{font-size:12px}.directory-name-duplicate-warning small{color:#6f6a58;margin-top:4px;font-size:11px}.directory-name-duplicate-warning>div{grid-template-columns:1fr 1fr;gap:8px;margin-top:8px;display:grid}.directory-name-duplicate-warning button{color:#171717;background:#fff;border:1px solid #d5d4d0;border-radius:10px;min-height:38px;font-size:11px;font-weight:750}.directory-name-duplicate-warning button:last-child{color:#fff;background:#171717;border-color:#171717}.client-suggestions{z-index:2;background:#fff;border:1px solid #00000014;border-radius:13px;margin-top:6px;position:absolute;top:100%;left:0;right:0;overflow:hidden;box-shadow:0 9px 25px #0000001a}.client-suggestion{color:#171717;text-align:left;background:#fff;border:0;border-bottom:1px solid #efeeea;flex-direction:column;align-items:flex-start;gap:3px;width:100%;padding:12px 14px;display:flex}.client-suggestion:last-child{border-bottom:0}.client-suggestion strong{font-size:12px}.client-suggestion span{color:#777;font-size:11px}.client-suggestion small{color:#777;font-size:10px}.client-suggestion:hover{background:#faf9f5}.edit-actions{grid-template-columns:.75fr 1.5fr;gap:10px;margin-top:10px;display:grid}.edit-actions.reservation-delete-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;width:100%}.edit-actions.reservation-delete-actions .cancel-edit-button,.edit-actions.reservation-delete-actions .confirm-delete-client-button{box-sizing:border-box;border-radius:14px;width:100%;min-width:0;min-height:52px;padding:0 12px;font-size:13px;font-weight:750}.edit-actions.client-delete-actions{grid-template-columns:1fr 1fr;gap:16px;width:100%;display:grid}.edit-actions.client-delete-actions .cancel-edit-button,.edit-actions.client-delete-actions .confirm-delete-client-button{box-sizing:border-box;border-radius:14px;width:100%;min-width:0;min-height:52px;padding:0 12px;font-size:13px;font-weight:750}.edit-actions.walk-in-delete-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;width:100%;display:grid}.edit-actions.walk-in-delete-actions .cancel-edit-button,.edit-actions.walk-in-delete-actions .confirm-delete-client-button{box-sizing:border-box;border-radius:14px;width:100%;min-width:0;min-height:52px;padding:0 12px;font-size:13px;font-weight:750}.edit-actions .continue-button{margin-top:0}.cancel-edit-button{color:#171717;background:#fff;border:1px solid #deddd9;border-radius:15px;min-height:54px;font-size:13px;font-weight:750}.cancel-edit-button:disabled{opacity:.6;cursor:wait}.move-summary,.selected-plan-name,.empty-tables{background:#fff;border:1px solid #0000000d;border-radius:17px;padding:17px;box-shadow:0 4px 18px #00000009}.move-summary{flex-direction:column;gap:6px;margin-bottom:25px;display:flex}.move-summary strong{font-size:18px}.move-summary small,.empty-tables{color:#777;font-size:12px}.selected-plan-name{font-size:13px;font-weight:700}.plan-choice-grid{grid-template-columns:repeat(2,1fr);gap:9px;display:grid}.table-choice-grid{grid-template-columns:repeat(3,1fr);gap:9px;display:grid}.table-choice{color:#171717;text-align:left;background:#fff;border:1px solid #deddd9;border-radius:14px;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:8px;min-height:84px;padding:12px 10px;display:flex}.table-choice strong{font-size:14px}.table-choice span{color:#777;font-size:10px}.table-choice.active{color:#fff;background:#171717;border-color:#171717}.table-choice.active span{color:#ffffffb3}.move-actions{grid-template-columns:1fr;gap:10px;margin-top:10px;display:grid}.move-actions .continue-button{margin-top:0}.app-menu{max-width:600px}.establishment-selector{gap:8px;margin:0 0 18px;display:grid;position:relative}.establishment-selector-title{color:#777;letter-spacing:.1em;margin:0 0 2px 2px;font-size:10px;font-weight:800}.establishment-trigger,.establishment-option{color:#171717;text-align:left;background:#fff;border:1px solid #00000014;border-radius:14px;justify-content:space-between;align-items:center;gap:14px;width:100%;min-height:52px;padding:12px 16px;font-size:14px;font-weight:700;display:flex}.establishment-trigger{min-height:54px}.establishment-trigger span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.establishment-trigger b{color:#777;flex:none;font-size:20px;font-weight:500;line-height:1}.establishment-popover{z-index:20;background:#fff;border:1px solid #0000001a;border-radius:16px;gap:7px;padding:8px;display:grid;position:absolute;top:calc(100% - 10px);left:0;right:0;box-shadow:0 14px 34px #00000021}.establishment-popover .establishment-option{border-color:#0000;min-height:48px}.establishment-option.active{background:#f4f3ef}.establishment-option b{color:#fff;background:#171717;border-radius:50%;flex:none;justify-content:center;align-items:center;width:22px;height:22px;font-size:13px;display:flex}.establishment-option:not(.active):hover{border-color:#00000047}.team-screen{max-width:600px}.team-intro{color:#737373;margin:-4px 0 20px;font-size:14px}.team-add-form{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;display:grid}.team-add-form .form-section{margin:0}.team-add-form .continue-button{min-height:52px;margin:0;padding-inline:22px}.team-member-list{gap:10px;margin-top:24px;display:grid}.team-member-row{background:#fff;border:1px solid #00000012;border-radius:16px;justify-content:space-between;align-items:center;gap:16px;min-height:66px;padding:12px 14px 12px 18px;display:flex;box-shadow:0 4px 18px #00000009}.team-member-row strong{min-width:0;font-size:16px}.team-member-row button{color:#b42318;background:#fff;border:1px solid #be272740;border-radius:12px;min-width:108px;min-height:42px;padding:0 14px;font-size:13px;font-weight:750}.edit-actions.team-delete-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;width:100%;display:grid}.edit-actions.team-delete-actions .cancel-edit-button,.edit-actions.team-delete-actions .confirm-delete-client-button{box-sizing:border-box;border-radius:14px;width:100%;min-width:0;min-height:52px;padding:0 12px;font-size:13px;font-weight:750}.menu-item,.room-plan-card{color:#171717;text-align:left;background:#fff;border:1px solid #0000000d;border-radius:18px;align-items:center;gap:14px;width:100%;padding:18px;display:flex;box-shadow:0 4px 18px #00000009}.menu-item>span{background:#f4f3ef;border-radius:12px;justify-content:center;align-items:center;width:38px;height:38px;font-size:19px;display:flex}.menu-item>span.team-menu-icon{letter-spacing:-.08em;font-size:11px;font-weight:800}.menu-item div,.room-plan-card div{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.menu-item strong,.room-plan-card strong{font-size:14px}.menu-item small,.room-plan-card span{color:#888;font-size:11px}.menu-item b,.room-plan-card b{font-size:25px;font-weight:400;line-height:1}.room-plan-list{flex-direction:column;gap:10px;display:flex}.room-plan-card{box-sizing:border-box;background:#fff;border:1px solid #0000000d;border-radius:18px;flex-direction:column;width:100%;max-width:100%;display:flex;overflow:hidden;box-shadow:0 4px 18px #00000009}.room-plan-card-main{box-sizing:border-box;color:#171717;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:14px;width:100%;min-height:62px;padding:13px 16px;display:flex}.room-plan-card .room-plan-info{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.room-plan-card .room-plan-status-wrap{flex-direction:row;flex:none;align-items:center;gap:10px;min-width:auto;display:flex}.room-plan-status{border-radius:999px;flex-shrink:0;padding:4px 7px;font-weight:800;font-size:9px!important}.room-plan-status.active{background:#e8f3e9;color:#387242!important}.room-plan-status.inactive{background:#f1f0eb;color:#777!important}.room-plan-card-actions{box-sizing:border-box;flex-wrap:wrap;flex:none;gap:8px;width:100%;margin-top:2px;padding:0 16px 14px;display:flex}.room-plan-card-actions button{color:#575650;white-space:nowrap;background:#fcfbf8;border:1px solid #deddd9;border-radius:8px;width:auto;min-width:72px;min-height:30px;padding:0 9px;font-size:10px;font-weight:700}.room-plan-card-actions .danger{color:#9d332b}.create-room-plan-button{margin-top:16px}.room-plan-detail .page-heading{margin-bottom:27px}.room-plan-detail{grid-template-rows:auto auto auto auto auto auto;grid-template-columns:300px minmax(0,1fr);align-items:start;column-gap:18px;display:grid}.room-plan-detail .page-heading{grid-area:1/1/auto/-1}.room-plan-detail>.element-palette{grid-area:2/1}.room-plan-detail>.plan-tables-heading{grid-area:3/1}.room-plan-detail>.plan-quick-toolbar{grid-area:4/1}.room-plan-detail>.floor-plan-scroll,.room-plan-detail>.loading,.room-plan-detail>.empty-tables{grid-area:2/2/span 6}.room-plan-detail>.selected-table-panel{grid-area:5/1}.room-plan-detail>.save-error{grid-area:6/1}.room-plan-detail>.room-plan-actions{grid-area:7/1}.room-plan-empty{text-align:center}.room-plan-actions{grid-template-columns:1fr 1.5fr;gap:10px;margin-top:16px;display:grid}.room-plan-actions .detail-action:disabled{opacity:.6;cursor:not-allowed}.plan-tables-heading{justify-content:space-between;align-items:baseline;margin-bottom:12px;display:flex}.plan-tables-heading>span:last-child{color:#999;font-size:11px}.plan-quick-toolbar{flex-wrap:wrap;gap:7px;margin-bottom:13px;display:flex}.room-plan-detail .plan-quick-toolbar .toolbar-secondary{margin-left:0}.plan-quick-toolbar button{color:#171717;background:#fff;border:1px solid #deddd9;border-radius:11px;min-height:38px;padding:0 11px;font-size:11px;font-weight:700}.plan-quick-toolbar .toolbar-secondary{background:#f1f0eb;margin-left:auto}.element-palette{background:#fff;border:1px solid #0000000f;border-radius:15px;flex-wrap:wrap;align-items:center;gap:8px;margin:-4px 0 14px;padding:10px;display:flex}.element-palette-title{color:#777;text-transform:uppercase;margin-right:2px;font-size:10px;font-weight:800}.element-palette-item{color:#171717;text-align:left;background:#fcfbf8;border:1px solid #deddd9;border-radius:10px;align-items:center;gap:8px;min-height:32px;padding:0 8px;font-size:11px;font-weight:700;display:flex}.element-palette-item>span{border:2px solid #575650;border-radius:3px;width:14px;height:14px;display:inline-block}.element-palette-item.plant>span{background:#a5b49a;border-radius:50% 50% 50% 4px}.element-palette-item.door>span{border-width:2px 0 0 2px;border-radius:14px 0 0}.element-palette-item.stairs>span{background:repeating-linear-gradient(#575650 0 2px,#0000 2px 4px);border:0}.element-palette-item.pillar>span{background:#575650;border-radius:50%}.element-palette-item.wall>span{background:#575650;border:0;border-radius:1px;width:16px;height:4px}.plan-quick-toolbar button:disabled{opacity:.6;cursor:wait}.managed-table-list{flex-direction:column;gap:10px;display:flex}.managed-table-card{color:#171717;text-align:left;background:#fff;border:1px solid #0000000d;border-radius:17px;align-items:center;gap:14px;width:100%;min-height:78px;padding:14px 17px;display:flex;box-shadow:0 4px 18px #00000009}.table-shape{border:2px solid #171717;flex-shrink:0;width:34px;height:24px}.table-shape.round{border-radius:50%;width:27px;height:27px}.table-shape.square{width:27px;height:27px}.managed-table-card div{flex-direction:column;flex:1;gap:5px;display:flex}.managed-table-card strong{font-size:15px}.managed-table-card small{color:#777;font-size:11px}.managed-table-card b{font-size:25px;font-weight:400}.floor-plan-surface{background:radial-gradient(circle at 20% 15%,#00000006,#0000 32%),#fcfbf8;border:1px solid #0000000f;border-radius:22px;width:1000px;min-width:850px;min-height:680px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 7px #ffffff8c}.floor-plan-scroll{-webkit-overflow-scrolling:touch;scrollbar-color:#c7c4bc transparent;scrollbar-width:thin;width:100%;padding:3px 3px 11px;overflow:auto hidden}.floor-plan-scroll::-webkit-scrollbar{height:9px}.floor-plan-scroll::-webkit-scrollbar-track{background:0 0}.floor-plan-scroll::-webkit-scrollbar-thumb{background:#c7c4bc;border-radius:9px}.placement-form{max-width:none}.placement-summary{background:#fff;border:1px solid #0000000f;border-radius:16px;flex-direction:column;gap:5px;margin-bottom:14px;padding:14px 16px;display:flex}.placement-summary>strong{font-size:16px}.placement-summary>span:not(.detail-label){font-size:13px;font-weight:700}.placement-summary small{color:#777;font-size:11px}.placement-plan-tabs{flex-wrap:wrap;gap:7px;margin-bottom:12px;display:flex}.placement-plan-tabs button{color:#171717;background:#fff;border:1px solid #deddd9;border-radius:10px;min-height:34px;padding:0 11px;font-size:11px;font-weight:700}.placement-plan-tabs button.active{color:#fff;background:#171717;border-color:#171717}.placement-layout{grid-template-columns:minmax(0,1fr) 220px;align-items:start;gap:14px;display:grid}.placement-plan-scroll .floor-plan-surface{min-height:640px}.placement-selection{background:#fff;border:1px solid #0000000f;border-radius:16px;flex-direction:column;gap:9px;padding:14px;display:flex}.placement-selection>strong{font-size:16px}.placement-selection>span:not(.detail-label){color:#777;font-size:12px}.placement-selection .continue-button,.placement-selection .cancel-edit-button{width:100%;margin-top:3px}.floor-plan-surface.placement-mode .floor-plan-table{cursor:pointer}.floor-plan-surface.placement-mode .floor-plan-element{pointer-events:none}.service-plan-app{max-width:1280px}.service-tablet-establishment{display:none}.service-plan-header{justify-content:space-between;align-items:end;gap:16px;margin:8px 0 14px;display:flex}.service-plan-header h1{letter-spacing:-.04em;text-transform:capitalize;margin:4px 0 3px;font-size:23px}.service-plan-header small{color:#777;font-size:12px;font-weight:650}.service-plan-header-actions{justify-content:flex-end;align-items:center;gap:9px;display:flex}.service-new-reservation{display:none}.service-date-navigation{justify-content:flex-start;gap:8px;margin:2px 0 3px}.service-date-navigation .date-trigger{padding:5px 8px}.service-date-navigation h1{margin:0;font-size:23px}.service-date-navigation>button{border-radius:10px;width:34px;height:34px;font-size:22px}.service-plan-count{color:#fff;white-space:nowrap;background:#171717;border-radius:14px;align-items:baseline;gap:6px;padding:10px 13px;display:inline-flex;box-shadow:0 5px 12px #0000001f}.service-plan-count b{font-size:19px;font-weight:850;line-height:1}.service-plan-count small{color:#ffffffd1;font-size:11px;font-weight:750}.service-plan-tabs{flex-wrap:wrap;gap:7px;margin-bottom:13px;display:flex}.service-plan-tabs button{color:#171717;background:#fff;border:1px solid #deddd9;border-radius:10px;min-height:34px;padding:0 12px;font-size:11px;font-weight:750}.service-plan-tabs button.active{color:#fff;background:#171717;border-color:#171717}.service-view-tabs{flex-direction:column;gap:12px;margin:0 0 13px;display:flex}.service-view-tabs button{color:#171717;background:#fff;border:1px solid #deddd9;border-radius:10px;min-height:34px;padding:0 12px;font-size:11px;font-weight:800}.service-day-filter{width:100%}.service-period-filters{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.service-period-filters button{white-space:nowrap;min-width:0}.service-view-tabs button.active{color:#fff;background:#171717;border-color:#171717}.service-plan-layout{grid-template-columns:minmax(210px,270px) minmax(0,1fr);align-items:start;gap:15px;display:grid}.service-unplaced,.service-placed,.service-plan-canvas{background:#fff;border:1px solid #00000012;border-radius:17px;position:relative;box-shadow:0 4px 18px #00000009}.service-reservation-column{flex-direction:column;gap:15px;min-width:0;display:flex}.service-unplaced,.service-placed{padding:13px}.service-unplaced{min-height:200px}.service-unplaced-heading,.service-plan-canvas-heading{color:#6a6963;letter-spacing:.1em;justify-content:space-between;align-items:center;gap:8px;margin-bottom:11px;font-size:10px;font-weight:850;display:flex}.service-unplaced-heading b{color:#fff;letter-spacing:0;text-align:center;background:#171717;border-radius:999px;min-width:21px;padding:3px 6px;font-size:10px}.service-unplaced-list,.service-placed-list{flex-direction:column;gap:7px;max-height:min(280px,34vh);padding-right:2px;display:flex;overflow-y:auto}.service-unplaced-reservation{cursor:grab;touch-action:manipulation;background:#fbfaf7;border:1px solid #e2e0d9;border-radius:11px;grid-template-columns:auto 1fr;gap:3px 8px;padding:10px;display:grid}.service-unplaced-reservation:active{cursor:grabbing;background:#f0eee8}.service-unplaced-reservation.touch-selected{color:#fff;background:#171717;border-color:#171717;box-shadow:0 5px 14px #00000029}.service-unplaced-reservation.touch-selected time,.service-unplaced-reservation.touch-selected small{color:#ffffffc2}.service-unplaced-reservation time{color:#6a6963;font-size:11px;font-weight:800}.service-unplaced-reservation strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.service-unplaced-reservation small{color:#777;grid-column:2;font-size:10px}.service-unplaced>p,.service-placed>p{color:#777;margin:12px 0;font-size:12px;line-height:1.45}.service-placed-reservation{color:#171717;cursor:pointer;touch-action:manipulation;background:#fff;border:1px solid #e2e0d9;border-radius:11px;flex-direction:column;gap:5px;padding:9px 10px;display:flex}.service-placed-reservation:hover{background:#fbfaf7}.service-touch-selection{background:#f4f3ef;border:1px solid #171717;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.service-touch-selection>div{flex-direction:column;gap:3px;min-width:0;display:flex}.service-touch-selection span{color:#6a6963;letter-spacing:.08em;font-size:9px;font-weight:850}.service-touch-selection strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.service-touch-selection small{color:#5d5b55;font-size:11px;line-height:1.3}.service-touch-selection button{color:#171717;background:#fff;border:1px solid #d5d4d0;border-radius:11px;flex:none;min-height:40px;padding:0 12px;font-size:12px;font-weight:750}.service-placed-topline,.service-placed-footer{justify-content:space-between;align-items:center;gap:8px;display:flex}.service-placed-topline time{color:#55534e;font-size:11px;font-weight:800}.service-placed-topline b{color:#171717;text-align:right;text-overflow:ellipsis;white-space:nowrap;max-width:118px;font-size:11px;font-weight:850;overflow:hidden}.service-placed-reservation>strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.service-placed-footer small{color:#777;font-size:10px}.service-placed-footer .reservation-status-dot{width:12px;height:12px}.service-table-action-popover{z-index:8;background:#fffffffa;border:1px solid #0000001a;border-radius:14px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 12px;width:min(280px,100% - 26px);padding:10px 10px 10px 13px;display:grid;position:absolute;top:48px;right:13px;box-shadow:0 10px 26px #00000024}.service-table-action-popover>div{flex-direction:column;gap:2px;min-width:0;display:flex}.service-table-action-popover span{color:#171717;font-size:12px;font-weight:850}.service-table-action-popover small{color:#777;font-size:10px;font-weight:700}.service-table-action-popover>button:not(.service-table-action-dismiss){color:#fff;background:#171717;border:1px solid #171717;border-radius:11px;grid-column:1/-1;min-height:42px;font-size:12px;font-weight:800}.service-table-action-dismiss{color:#5e5c56;background:0 0;border:0;border-radius:9px;width:30px;height:30px;font-size:22px;line-height:1}.service-plan-canvas{min-width:0;padding:13px}.service-plan-canvas-heading strong{color:#171717;letter-spacing:0;font-size:11px}.service-floor-plan-scroll .floor-plan-surface{min-height:640px}.floor-plan-surface.service-mode .floor-plan-table{touch-action:manipulation;overflow:visible}.floor-plan-surface.service-mode .floor-plan-table.service-occupied{z-index:2}.floor-plan-surface.service-mode .floor-plan-table:hover{z-index:4}.floor-plan-surface.service-mode .floor-plan-table.reservation-drop-sufficient{background:#f3fbf5;border-color:#3f8f5c;box-shadow:0 0 0 3px #3f8f5c2e,0 5px 14px #3f8f5c29}.floor-plan-surface.service-mode .floor-plan-table.reservation-drop-insufficient{background:#fff8ed;border-color:#c77a20;box-shadow:0 0 0 3px #c77a202b,0 5px 14px #c77a2024}.floor-plan-surface.service-mode .floor-plan-table.reservation-drop-hovered{z-index:5;border-width:3px;box-shadow:0 0 0 5px #17171726,0 10px 22px #0003}.floor-plan-table-content.service-content{box-sizing:border-box;pointer-events:auto;width:100%;min-width:0;height:100%;padding:3px 4px;display:block;position:absolute;inset:0;overflow:hidden}.floor-plan-surface.service-mode .floor-plan-table:not(.service-occupied) .floor-plan-table-content.service-content{flex-direction:column;justify-content:center;align-items:center;gap:2px;display:flex}.floor-plan-service-reservation{cursor:grab;text-align:center;grid-template-rows:repeat(4,minmax(0,1fr));place-items:center;width:100%;min-width:0;height:100%;display:grid;position:relative;overflow:hidden}.floor-plan-service-reservation:active{cursor:grabbing;opacity:.62}.floor-plan-service-table-number,.floor-plan-service-time{color:#252525;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:clamp(8px,.8vw,10px);font-weight:850;line-height:1.1;overflow:hidden}.floor-plan-service-time{margin-top:0}.floor-plan-service-reservation b{text-align:center;text-overflow:ellipsis;white-space:nowrap;align-self:center;width:100%;font-size:clamp(9px,.9vw,12px);font-weight:800;line-height:1.05;overflow:hidden}.floor-plan-service-reservation small{color:#777;text-overflow:ellipsis;white-space:nowrap;place-self:center;max-width:100%;font-size:clamp(8px,.7vw,10px);font-weight:600;line-height:1.1;overflow:hidden}.floor-plan-service-reservation>.reservation-status-dot{width:6px;height:6px;box-shadow:none;position:absolute;top:1px;right:1px}.floor-plan-service-reservation-count{color:#fff;background:#171717;border-radius:999px;justify-content:center;align-items:center;min-width:15px;height:15px;padding:0 3px;font-size:8px;font-weight:850;line-height:1;display:inline-flex;position:absolute;bottom:1px;right:1px}.service-saving{color:#777;text-align:center;margin-top:10px;font-size:11px}.floor-plan-delete-zone{z-index:5;color:#9d332b;pointer-events:none;background:#fff7f6f0;border:1px dashed #d5aaa6;border-radius:13px;justify-content:center;align-items:center;min-height:48px;font-size:12px;font-weight:750;display:flex;position:absolute;bottom:14px;left:14px;right:14px}.floor-plan-delete-zone.active{color:#fff;background:#b42318;border-style:solid}.floor-plan-table{z-index:1;color:#171717;touch-action:none;-webkit-user-select:none;user-select:none;background:#fff;border:2px solid #171717;flex-direction:column;justify-content:center;align-items:center;gap:2px;display:flex;position:absolute;box-shadow:0 4px 12px #00000017}.floor-plan-table.round{border-radius:50%}.floor-plan-table.square{border-radius:8px}.floor-plan-table.rectangle{border-radius:10px}.floor-plan-table strong{text-overflow:ellipsis;white-space:nowrap;max-width:calc(100% - 10px);font-size:11px;font-weight:800;overflow:hidden}.floor-plan-table-content{pointer-events:none;flex-direction:column;align-items:center;gap:2px;display:flex}.floor-plan-table small{color:#777;font-size:9px}.floor-plan-chair{pointer-events:none;background:#b7b5ae;border-radius:50%;width:6px;height:6px;position:absolute;transform:translate(-50%,-50%)}.floor-plan-table.selected{z-index:2;background:#f1f0eb;border-color:#171717;box-shadow:0 8px 18px #0000002e}.floor-plan-table.reservation-unavailable{color:#77736c;box-shadow:none;opacity:.72;background:#efeeea;border-color:#aaa7a0;cursor:not-allowed!important}.floor-plan-table.dragging{z-index:3;cursor:grabbing;box-shadow:0 12px 24px #0003}.floor-plan-element{z-index:0;box-sizing:border-box;color:#575650;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;background:#e9e7e0;border:1px solid #aaa8a1;border-radius:5px;justify-content:center;align-items:center;display:flex;position:absolute}.floor-plan-element.selected{z-index:4;outline-offset:3px;outline:2px solid #171717}.floor-plan-element.dragging{z-index:6;cursor:grabbing}.floor-plan-element.wall{background:#575650;border:0;border-radius:1px}.floor-plan-element.pillar{color:#0000;background:#77756e;border-radius:50%}.floor-plan-element.door{background:0 0;border-width:2px 0 0 2px;border-radius:26px 0 0}.floor-plan-element.plant{background:#aab79f;border-radius:50% 50% 50% 7px;width:34px;min-width:34px;height:34px;min-height:34px}.floor-plan-element.worktop{background:#dedbd2}.floor-plan-element.bar{background:#d3cfc5;border-color:#908c82}.floor-plan-element.stairs{background:#e3e1da;overflow:hidden}.floor-plan-element-label{text-overflow:ellipsis;white-space:nowrap;letter-spacing:.03em;pointer-events:none;max-width:calc(100% - 8px);font-size:9px;font-weight:800;overflow:hidden}.floor-plan-element.wall .floor-plan-element-label,.floor-plan-element.pillar .floor-plan-element-label,.floor-plan-element.plant .floor-plan-element-label,.floor-plan-element.door .floor-plan-element-label{display:none}.floor-plan-element.plant .floor-plan-element-icon:before{content:"";border:2px solid #52644d;border-radius:50% 50% 50% 3px;position:absolute;inset:9px;transform:rotate(-35deg)}.floor-plan-stairs{pointer-events:none;opacity:.8;background:repeating-linear-gradient(#8d8a82 0 2px,#0000 2px 6px);position:absolute;inset:5px}.floor-plan-resize-handle{z-index:2;touch-action:none;background:#fff;border:2px solid #171717;border-radius:50%;width:20px;height:20px;position:absolute}.floor-plan-resize-handle.n{cursor:ns-resize;top:-11px;left:calc(50% - 10px)}.floor-plan-resize-handle.ne{cursor:nesw-resize;top:-11px;right:-11px}.floor-plan-resize-handle.e{cursor:ew-resize;top:calc(50% - 10px);right:-11px}.floor-plan-resize-handle.se{cursor:nwse-resize;bottom:-11px;right:-11px}.floor-plan-resize-handle.s{cursor:ns-resize;bottom:-11px;left:calc(50% - 10px)}.floor-plan-resize-handle.sw{cursor:nesw-resize;bottom:-11px;left:-11px}.floor-plan-resize-handle.w{cursor:ew-resize;top:calc(50% - 10px);left:-11px}.floor-plan-resize-handle.nw{cursor:nwse-resize;top:-11px;left:-11px}.element-selection-panel{align-items:center}.selected-table-panel{background:#fff;border:1px solid #0000000f;border-radius:16px;justify-content:space-between;align-items:center;gap:14px;margin-top:12px;padding:15px;display:flex;box-shadow:0 4px 18px #00000009}.selected-table-panel>div:first-child{flex-direction:column;gap:4px;display:flex}.selected-table-panel strong{font-size:14px}.selected-table-panel span{color:#777;font-size:11px}.selected-table-actions{gap:8px;display:flex}.selected-table-actions .detail-action{min-height:40px;padding:0 12px}.quick-table-panel{flex-direction:column;align-items:stretch;display:flex}.room-plan-detail .selected-table-panel{gap:10px;margin-top:6px;padding:12px}.room-plan-detail .selected-table-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.room-plan-detail .selected-table-actions .detail-action{min-height:34px;padding:0 8px;font-size:10px}.quick-table-panel>input{padding:11px 12px;font-size:14px;font-weight:750}.quick-capacity,.quick-shapes{align-items:center;gap:8px;display:flex}.quick-capacity{margin-top:11px}.quick-capacity button,.quick-shapes button{color:#171717;background:#fff;border:1px solid #deddd9;border-radius:10px;min-height:34px;padding:0 10px;font-size:11px;font-weight:700}.quick-capacity strong{text-align:center;min-width:20px}.quick-capacity span{color:#777;font-size:11px}.quick-shapes{flex-wrap:wrap;margin-top:10px}.quick-shapes button.active{color:#fff;background:#171717;border-color:#171717}.quick-layouts span{color:#777;font-size:11px;font-weight:700}.batch-numbering{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:25px;display:grid}.batch-numbering label{letter-spacing:.04em;margin-bottom:10px;font-size:11px;font-weight:800;display:block}.capacity-grid{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.custom-capacity-input{margin-top:10px}.custom-capacity-button{color:#666;background:0 0;border:0;margin-top:10px;padding:0;font-size:12px;text-decoration:underline}.shape-choice-grid{grid-template-columns:repeat(3,1fr);gap:9px;display:grid}.shape-choice{color:#171717;background:#fff;border:1px solid #deddd9;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:7px;min-height:78px;font-size:12px;font-weight:650;display:flex}.shape-symbol{font-size:30px;line-height:.8}.shape-symbol.rectangle{font-size:34px}.shape-choice.active{color:#fff;background:#171717;border-color:#171717}.delete-table-button{color:#b42318;background:#fff7f6;border:1px solid #e4b7b4;border-radius:14px;width:100%;min-height:52px;margin-top:15px;font-size:13px;font-weight:750}.delete-table-button.confirm{color:#fff;background:#b42318;border-color:#b42318;margin-top:0}.delete-table-button:disabled{opacity:.6;cursor:wait}.delete-table-card{background:#fff;border:1px solid #0000000d;border-radius:18px;padding:19px;box-shadow:0 4px 18px #00000009}.delete-table-card strong{font-size:19px}.delete-table-card p{color:#777;margin:8px 0 0;font-size:12px;line-height:1.5}.recap-card{background:#fff;border:1px solid #0000000d;border-radius:17px;margin-bottom:13px;padding:19px;box-shadow:0 4px 18px #00000009}.recap-row{justify-content:space-between;align-items:center;padding:7px 0;display:flex}.recap-row strong{font-size:13px}.recap-label{color:#999;letter-spacing:.12em;font-size:9px;font-weight:850}.recap-client-name{flex-direction:column;gap:5px;display:flex}.recap-client-name strong{font-size:18px}.recap-detail{color:#777;margin-top:12px;font-size:12px}.recap-note{border-top:1px solid #eeeeeb;margin-top:15px;padding-top:14px}.recap-note span{letter-spacing:.1em;color:#999;font-size:9px;font-weight:850}.recap-note p{margin:7px 0 0;font-size:12px;line-height:1.5}.recap-table-choice{color:#171717;width:100%;min-height:48px;font:inherit;text-align:left;cursor:pointer;background:#fff;border:1px solid #e4e4e1;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;font-size:14px;font-weight:600;display:flex}.recap-table-choice:hover{background:#fafaf8;border-color:#bdbdb8}.recap-table-choice:active{transform:scale(.99)}.recap-table-choice b{color:#777;font-size:20px;line-height:1}.reservation-duplicate-card{color:#37331f;background:#fffdf5;border:1px solid #eadfb7;border-radius:16px;flex-direction:column;gap:6px;padding:18px;display:flex}.reservation-duplicate-card strong{font-size:18px}.reservation-duplicate-card span,.reservation-duplicate-message{color:#6f6a58;font-size:13px}.reservation-duplicate-message{margin:13px 0 0}.reservation-duplicate-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;width:100%;margin-top:18px;display:grid}.reservation-duplicate-actions .cancel-edit-button,.reservation-duplicate-actions .continue-button{width:100%;min-width:0;min-height:52px;margin-top:0}.save-error{color:#b42318;background:#fff0f0;border-radius:12px;margin:12px 0;padding:12px 14px;font-size:14px;font-weight:600}.reservation-detail{max-width:600px;margin:0 auto;padding-bottom:30px}.reservation-detail .page-heading{margin-bottom:27px}.reservation-detail .page-heading h1{font-size:32px}.detail-card{background:#fff;border:1px solid #0000000d;border-radius:18px;margin-bottom:11px;padding:20px;box-shadow:0 5px 20px #0000000b}.detail-summary-card{padding:15px 20px}.detail-summary-content{width:min(100%,440px);margin:0 auto}.detail-grid-row{grid-template-columns:minmax(0,1fr) minmax(0,1.6fr) minmax(0,1fr);align-items:center;min-height:24px;display:grid}.detail-grid-row>*{text-align:center;justify-self:stretch;min-width:0}.detail-grid-row .phone-link{justify-self:center}.detail-time{color:#171717;text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:750;line-height:1.2;overflow:hidden}.detail-service,.detail-label{white-space:nowrap;color:#999;letter-spacing:.13em;font-size:9px;font-weight:850}.detail-guests-inline{color:#555;white-space:nowrap;font-size:14px;font-weight:700}.detail-section{flex-direction:column;gap:6px;display:flex}.detail-label{display:block}.detail-section>strong{font-size:17px}.detail-card-content{width:min(100%,440px);margin:0 auto}.detail-client-card{padding:15px 20px}.detail-client-row{gap:18px}.detail-client-row .detail-label{white-space:nowrap}.detail-client-name{color:#171717;text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:750;overflow:hidden}.detail-client-row .phone-link{color:#777;white-space:nowrap;font-size:14px;font-weight:700}.detail-line{color:#777;margin-top:10px;font-size:12px}.detail-important{box-sizing:border-box;background:#faf9f5;border-radius:12px;width:min(100%,300px);margin:17px auto 0;padding:13px 14px}.detail-important span{color:#999;letter-spacing:.1em;font-size:9px;font-weight:850}.detail-important p{margin:6px 0 0;font-size:12px;line-height:1.5}.detail-section p{margin:5px 0 0;font-size:13px;line-height:1.55}.detail-note-content{width:min(100%,300px);margin:0 auto}.detail-table-card{box-sizing:border-box;background:#fff;border:1px solid #0000000d;border-radius:18px;width:100%;margin:11px 0;padding:15px 20px;position:relative;box-shadow:0 5px 20px #0000000b}button.detail-table-card{color:#171717;text-align:left;font:inherit;display:block}.detail-table-card.interactive{cursor:pointer;transition:transform .15s,box-shadow .15s,background .15s}.detail-table-card.interactive:hover{background:#fcfbf8;box-shadow:0 8px 22px #00000014}.detail-table-card.interactive:active{transform:scale(.99)}.detail-table-card.interactive:focus-visible{outline-offset:3px;outline:2px solid #171717}.table-card-chevron{color:#999;font-size:21px;font-weight:500;line-height:1}.detail-table-content{width:min(100%,440px);margin:0 auto}.detail-table-content>strong{color:#171717;font-size:16px;font-weight:750;line-height:1.2}.detail-table-name{white-space:nowrap}.unassigned-table{align-items:center;gap:12px;margin-top:0;display:flex}.warning.large{flex-shrink:0;width:36px;height:36px;font-size:16px}.unassigned-table div{flex-direction:column;gap:3px;display:flex}.unassigned-table strong{font-size:13px}.unassigned-table small{color:#999;font-size:11px}.detail-actions{grid-template-columns:1fr 1fr;gap:9px;margin-top:17px;display:grid}.walk-in-detail-actions{grid-template-columns:1fr 1fr}.reservation-detail-actions{flex-direction:column;gap:0;margin-top:38px;display:flex}.reservation-service-actions{grid-template-columns:minmax(0,1fr);gap:9px;display:grid}.reservation-exception-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;width:100%;margin-top:38px;display:grid}.reservation-exception-actions .detail-action{box-sizing:border-box;width:100%;min-width:0}.reservation-exception-actions .delete-reservation-action:only-child{grid-column:1/-1}.detail-action{color:#171717;background:#fff;border:1px solid #deddd9;border-radius:14px;min-height:52px;font-size:12px;font-weight:750;transition:transform .15s,background .15s}.detail-action:hover{transform:translateY(-1px)}.detail-action.primary{color:#fff;background:#171717;border-color:#171717}.detail-action.arrival-action,.detail-action.remove-table-action{grid-column:1/-1}.detail-action.delete-reservation-action{color:#a62921;border-color:#b423186b}.detail-action.delete-reservation-action:hover{background:#fff5f3}.detail-action.no-show-action{color:#8a6424;background:#fffdf8;border-color:#e4cfad}.detail-action.no-show-action:hover{background:#fff8e8}.detail-action.arrived-action{color:#346d93;background:#f7fbfe;border-color:#c9ddea}.detail-action.arrived-action:hover{background:#eef7fc}.detail-action.more{justify-content:center;align-items:center;gap:7px;font-size:21px;display:flex}.detail-action.more span{font-size:12px;font-weight:750}@media (pointer:coarse) and (width>=521px){.menu-button,.profile-button,.back-button,.date-navigation>button,.service-date-navigation>button{width:44px;height:44px}.date-calendar-header{grid-template-columns:44px 1fr 44px}.date-calendar-header>button:not(.date-calendar-title){width:44px;height:44px}.date-calendar-grid button,.date-calendar-grid>span{width:40px;height:40px}.service-period-card .resalle-select{height:44px;min-height:44px;font-size:16px}.service-time-slot-limit{grid-template-columns:58px 72px minmax(0,1fr) 44px}.service-time-slot-limit input,.service-time-slot-toggle,.directory-pagination-controls button,.room-plan-card-actions button,.plan-quick-toolbar button,.element-palette-item,.room-plan-detail .selected-table-actions .detail-action,.team-member-row button,.service-touch-selection button{height:44px;min-height:44px}.service-time-slot-toggle{width:44px;min-width:44px}.floor-plan-resize-handle{width:44px;height:44px}.floor-plan-resize-handle.n{top:-23px;left:calc(50% - 22px)}.floor-plan-resize-handle.ne{top:-23px;right:-23px}.floor-plan-resize-handle.e{top:calc(50% - 22px);right:-23px}.floor-plan-resize-handle.se{bottom:-23px;right:-23px}.floor-plan-resize-handle.s{bottom:-23px;left:calc(50% - 22px)}.floor-plan-resize-handle.sw{bottom:-23px;left:-23px}.floor-plan-resize-handle.w{top:calc(50% - 22px);left:-23px}.floor-plan-resize-handle.nw{top:-23px;left:-23px}}@media (width<=900px){.room-plan-detail{display:block}.room-plan-detail>*{margin-bottom:14px}.floor-plan-surface{width:850px;min-width:850px;min-height:620px}.placement-layout,.service-plan-layout{grid-template-columns:1fr}.service-unplaced{min-height:0}.service-unplaced-list{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}}@media (width>=600px) and (height>=600px) and (width<=1366px) and (any-pointer:coarse){.service-plan-app{box-sizing:border-box;max-width:none;height:100vh;min-height:0;padding-bottom:calc(14px + env(safe-area-inset-bottom));flex-direction:column;display:flex;overflow:hidden}@supports (height:100dvh){.service-plan-app{height:100dvh}}.service-tablet-establishment{color:#6a6963;letter-spacing:.04em;margin:0 0 4px 8px;font-size:11px;font-weight:800;display:block}.service-plan-header{margin-top:8px}.service-new-reservation{color:#fff;white-space:nowrap;background:#171717;border:1px solid #171717;border-radius:12px;justify-content:center;align-items:center;gap:7px;min-height:44px;padding:0 13px;font-size:12px;font-weight:800;display:inline-flex}.service-new-reservation span{font-size:18px;font-weight:500;line-height:1}.service-plan-layout{flex:auto;grid-template-columns:minmax(216px,31%) minmax(0,1fr);align-items:stretch;height:auto;min-height:0}.service-reservation-column{overscroll-behavior:contain;height:100%;max-height:none;padding-right:3px;overflow-y:auto}.service-unplaced-list,.service-placed-list{grid-template-columns:none;max-height:min(260px,30dvh);display:flex}.service-plan-canvas{min-width:0;height:100%;min-height:0;box-shadow:none;background:0 0;border:0;border-radius:0;flex-direction:column;margin:0;display:flex;overflow:hidden}.service-plan-canvas-heading{flex:none;margin:0 0 5px;padding:0 3px}.service-floor-plan-scroll{flex:auto;height:auto;min-height:0;padding:0;display:flex;overflow:hidden}}@media (width<=520px){.app{padding-left:calc(16px + env(safe-area-inset-left));padding-right:calc(16px + env(safe-area-inset-right))}.topbar{margin:0;padding:0}.summary{gap:7px}.summary-card{min-height:100px;padding:13px}.summary-card strong{font-size:27px}.client-directory-toolbar{flex-direction:column}.directory-new-client{width:100%}.choice-grid.three{grid-template-columns:1fr}.time-grid{grid-template-columns:repeat(3,1fr)}.guests-grid{grid-template-columns:repeat(4,1fr)}.edit-actions{grid-template-columns:1fr}.plan-choice-grid,.table-choice-grid{grid-template-columns:repeat(2,1fr)}.room-plan-actions{grid-template-columns:1fr}.capacity-grid{grid-template-columns:repeat(2,1fr)}.selected-table-panel{flex-direction:column;align-items:stretch}.selected-table-actions{grid-template-columns:1fr 1fr;display:grid}.plan-quick-toolbar .toolbar-secondary{margin-left:0}.reservation{grid-template-columns:minmax(0,1fr) auto auto;gap:7px;padding:10px 11px}.reservation-name strong{max-width:170px}.reservation-detail .page-heading h1{font-size:28px}.detail-time{font-size:16px}.bottom-actions{grid-template-columns:repeat(3,1fr);gap:7px;width:calc(100% - 32px)}.bottom-actions small{font-size:10px}.mini-plan-viewport{min-height:238px}}@media (width<=599px){.topbar>.brand{gap:10px;font-size:17px}.topbar>.brand .brand-logo{border-radius:10px;width:36px;height:36px;font-size:13px}.home-app{padding-top:calc(60px + env(safe-area-inset-top));padding-bottom:calc(132px + env(safe-area-inset-bottom))}.home-app .topbar{height:calc(56px + env(safe-area-inset-top))}.home-app .topbar>.brand{display:none}.home-app .topbar>.menu-button{left:calc(12px + env(safe-area-inset-left))}.home-app .topbar>.account-menu{right:calc(12px + env(safe-area-inset-right))}.home-app .phone-home-header-date{top:calc(12px + env(safe-area-inset-top));grid-template-columns:25px minmax(80px,1fr) 25px;align-items:center;gap:1px;width:min(190px,100% - 140px);margin-inline:auto;display:grid;position:absolute;left:0;right:0}.home-app .phone-home-header-date>button{color:#171717;background:0 0;border:0;border-radius:8px;min-width:0;height:32px;font-size:20px;line-height:1}.home-app .phone-home-date-trigger{letter-spacing:.025em;text-overflow:ellipsis;white-space:nowrap;padding:0 3px;font-weight:850;overflow:hidden;font-size:11px!important}.home-app .phone-home-header-date .date-calendar{top:calc(64px + env(safe-area-inset-top));box-sizing:border-box;width:min(312px,100vw - 24px);max-width:calc(100vw - 24px);position:fixed;left:50vw;transform:translate(-50%)}.home-app .phone-home-header-date .date-calendar-header{justify-content:space-between;display:flex;position:relative}.home-app .phone-home-header-date .date-calendar-header>button:not(.date-calendar-title){z-index:1;position:relative}.home-app .home-date-navigation{display:none}.home-app .summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin-bottom:8px}.home-app .summary-card,.home-app .summary-card.day,.home-app .summary-card.period,.home-app .summary-card.other-service{border-radius:10px;grid-column:auto;min-height:44px;padding:3px 4px}.home-app .summary-card-content{flex-direction:column;justify-content:center;gap:1px;width:100%}.home-app .summary-card span{letter-spacing:.04em;text-align:center;min-height:16px;font-size:7px;line-height:1.1}.home-app .summary-card-total{margin-left:0}.home-app .summary-card-content strong{font-size:16px}.home-app .summary-card-content small{display:none}.home-app .reservation-search{gap:0;margin:0 0 8px;display:grid;position:relative}.home-app .reservation-search>span{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.home-app .reservation-search input{box-sizing:border-box;color:#171717;background:#fff;border:1px solid #dfddd7;border-radius:11px;width:100%;min-height:38px;padding:0 13px;font-size:12px;font-weight:600}.home-app .reservation-search input:focus{outline-offset:2px;outline:2px solid #171717}.home-app .reservations{margin-bottom:0}.home-app .section-title,.home-app .reservation-status-legend{display:none}.home-app .reservation-list{gap:6px}.home-app .reservation-time-group-heading{align-items:center;min-height:30px;margin-bottom:2px;padding-bottom:2px}.home-app .reservation-time-group h3{font-size:14px}.home-app .reservation-time-group-summary{color:#7b7871;white-space:nowrap;margin-right:auto;font-size:9px;font-weight:750;display:block}.home-app .reservation-time-group-heading .slot-capacity-list{display:none}.home-app .reservation{grid-template-columns:minmax(0,1fr) auto auto auto;gap:6px;min-height:46px;padding:6px 8px}.home-app .reservation-info{gap:0}.home-app .reservation-name strong{max-width:none;font-size:12px}.home-app .reservation-mobile-note{display:none}.home-app .reservation-guests{color:#292724;font-size:16px;font-weight:700}.home-app .reservation-table>span:not(.warning):not(.reservation-status-dot){box-sizing:border-box;white-space:nowrap;min-height:34px;padding:5px 7px;font-size:16px;font-weight:700}.home-app .reservation-table-default{display:none}.home-app .reservation-table-mobile{display:inline-flex}.home-app .warning{color:#b42318;background:#fff0f0;width:24px;height:24px;font-size:14px}.home-app .reservation-status-dot{flex-basis:12px;width:12px;height:12px}.home-app .reservation-open-chevron{color:#85817a;font-size:20px;line-height:1;display:block}.home-app .bottom-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:7px}.home-app .bottom-actions.past-date-actions{grid-template-columns:minmax(0,1fr)}.home-app .floor-plan>span{display:none}.home-app .floor-plan,.home-app .new-reservation{border-radius:14px;height:52px}.home-app .walk-in-action{border-radius:13px;grid-column:1/-1;height:40px;display:flex}}@media (width<=430px){.team-add-form{grid-template-columns:1fr}.team-add-form .continue-button{width:100%}.service-period-times{grid-template-columns:1fr}.detail-service,.detail-label{font-size:8px}.detail-guests-inline,.detail-client-row .phone-link{font-size:11px}.detail-client-row{gap:10px}.detail-client-name,.detail-time,.detail-table-content>strong{font-size:14px}}
