:root{--bg: #f5f6f8;--panel: #ffffff;--border: #e2e5ea;--text: #1a1d23;--muted: #6b7280;--primary: #128c7e;--primary-dark: #0d6d62;--brand-navy: #0e2f50;--accent: #eef7f5;--danger: #d64545;--draft-bg: #fff8e6;--draft-border: #f0c14b;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text)}.app-shell{display:flex;flex-direction:column;height:100vh;height:100dvh}.app-header{display:flex;align-items:center;justify-content:space-between;padding:0 20px;height:56px;background:var(--panel);border-bottom:1px solid var(--border);flex-shrink:0}.brand{display:flex;align-items:center;gap:8px;background:none;border:none;padding:0;cursor:pointer;font-family:inherit;font-weight:700;font-size:1.15rem;color:var(--brand-navy);letter-spacing:.02em}.brand__mark{width:32px;height:32px;display:block}.tabs{display:flex;gap:4px}.tab{padding:8px 16px;border:none;background:transparent;border-radius:8px;cursor:pointer;font-size:.95rem;color:var(--muted)}@media (hover: hover){.tab:hover{background:var(--accent)}}.tab--active,.tab--active:hover{background:var(--primary);color:#fff}.app-main{flex:1;min-height:0}.account{position:relative;min-width:0}.account__button{display:flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--border);border-radius:8px;background:var(--panel);color:var(--text);font:inherit;font-size:.88rem;cursor:pointer;max-width:200px}.account__name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600}.account__bell{font-size:.8rem}.account__menu{position:absolute;right:0;top:calc(100% + 6px);z-index:40;width:280px;max-width:calc(100vw - 24px);background:var(--panel);border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 24px #0f172a1f;display:flex;flex-direction:column;overflow:hidden}.account__menu-head{padding:12px 14px;border-bottom:1px solid var(--border)}.account__menu-title{font-weight:600;font-size:.92rem}.account__menu-item{display:block;width:100%;text-align:left;padding:12px 14px;border:none;border-bottom:1px solid var(--border);background:none;font:inherit;font-size:.9rem;color:var(--text);cursor:pointer}.account__menu-item:last-child{border-bottom:none}button.account__menu-item:hover{background:var(--accent)}.account__menu-item--static{cursor:default}.account__notify{color:var(--text);font-size:.9rem}.login{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:16px}.login__card{width:100%;max-width:360px;background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:28px 24px;display:flex;flex-direction:column;gap:14px}.login__logo{display:block;width:100%;max-width:220px;height:auto;margin:0 auto 8px}.login__field{display:flex;flex-direction:column;gap:6px;font-size:.82rem;color:var(--muted);font-weight:600}.login__field input{padding:10px 12px;border:1px solid var(--border);border-radius:8px;font-size:.95rem;color:var(--text);background:var(--panel)}.login__field input:focus{outline:2px solid var(--primary);outline-offset:-1px}.login__error{color:var(--danger);font-size:.88rem}.login__submit{padding:10px 16px;font-size:.95rem}.login__layout{display:flex;align-items:center;justify-content:center;gap:40px;width:100%;max-width:1180px}.login__layout .login__card{flex:0 0 auto}.login__demo{flex:1 1 auto;min-width:0;max-width:760px}.login__video{display:block;width:100%;aspect-ratio:16 / 9;background:#000;border-radius:12px}.login__demo-link{margin:4px 0 0;font-size:.85rem;color:var(--muted);text-align:center}.login__demo .login__demo-link{margin-top:12px;font-size:.95rem}.login__demo-link a{color:var(--primary);font-weight:600}.modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;padding:16px;z-index:50}.modal__title{margin:0 0 4px;font-size:1.1rem}.modal__text{margin:0;font-size:.92rem;line-height:1.45}.modal__actions{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}.connection-grid{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}.email-login-grid{grid-template-columns:repeat(3,minmax(0,1fr))}@media (max-width: 720px){.email-login-grid{grid-template-columns:minmax(0,1fr)}}.email-grid{grid-template-columns:minmax(0,3fr) minmax(0,1fr)}@media (max-width: 720px){.connection-grid{grid-template-columns:minmax(0,1fr)}}.readonly-value{display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--border);border-radius:8px;background:var(--bg);font-size:.9rem;min-width:0}.readonly-value code{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.readonly-value .btn{padding:4px 10px;flex-shrink:0}.update-banner{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;padding:8px 16px;background:var(--draft-bg);border-bottom:1px solid var(--draft-border);font-size:.9rem}.update-banner__button{padding:4px 12px;border:none;border-radius:6px;background:var(--primary);color:#fff;cursor:pointer}.update-banner__button:hover{background:var(--primary-dark)}.reception{display:flex;height:100%}.conv-list{width:320px;flex-shrink:0;background:var(--panel);border-right:1px solid var(--border);display:flex;flex-direction:column}.conv-list__header{padding:16px;border-bottom:1px solid var(--border)}.conv-list__header h2{margin:0 0 4px;font-size:1.1rem}.check-email{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:8px}.btn--small{padding:4px 10px;font-size:.8rem}.auto-all{margin-top:10px;padding-top:10px;border-top:1px dashed var(--border)}.auto-all .auto-toggle{color:var(--text);font-weight:600}.auto-all__hint{font-size:.75rem;margin-top:2px}.auto-all__channel+.auto-all__channel{margin-top:6px}.conv-list__items{flex:1;overflow-y:auto}.conv-list__more{display:block;margin:10px auto}.empty-hint{padding:16px;font-size:.9rem}.conv-item{display:block;width:100%;text-align:left;padding:12px 16px;border:none;border-bottom:1px solid var(--border);background:var(--panel);cursor:pointer}.conv-item:hover{background:var(--accent)}.conv-item--active{background:var(--accent);border-left:3px solid var(--primary)}.conv-item__top{display:flex;justify-content:space-between;margin-bottom:4px}.conv-item__name{font-weight:600;font-size:.95rem}.conv-item__time{font-size:.75rem;color:var(--muted)}.conv-item__preview{font-size:.85rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:6px}.conv-item__bottom{display:flex;align-items:center;gap:6px;min-width:0}.conv-item__address{font-size:.75rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.badge{font-size:.7rem;padding:2px 8px;border-radius:999px;flex-shrink:0;font-weight:600}.badge--pending{background:var(--draft-bg);color:#8a6d1e;border:1px solid var(--draft-border)}.badge--auto{background:var(--accent);color:var(--primary-dark)}.badge--email{background:#e8f0fb;color:#2b5797;border:1px solid #bcd0ee}.badge--booking{background:#fff3d6;color:#7a4b00;border:1px solid #f0d58a}.badge--direct{background:#f1f1f4;color:#4b5563;border:1px solid #d6d8de}.badge--whatsapp{background:#e7f7ec;color:#1f7a3d;border:1px solid #b5e2c3}.thread{flex:1;display:flex;flex-direction:column;min-width:0}.thread__empty{flex:1;display:flex;align-items:center;justify-content:center}.thread__dashboard{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}.thread__dashboard .dashboard{flex:1;min-height:0;width:100%}.conv-list__search{width:100%;margin:8px 0 6px;padding:7px 10px;border:1px solid var(--border);border-radius:8px;font:inherit;font-size:.88rem}.conv-list__title{display:flex;align-items:center;justify-content:space-between;gap:8px}.conv-list__panes{display:flex;gap:6px}.conv-list__badge{display:inline-block;min-width:18px;margin-left:6px;padding:0 5px;border-radius:9px;background:var(--danger, #c0392b);color:#fff;font-size:.75rem;line-height:18px;text-align:center}.bank-payment{padding:10px 0;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:4px}.bank-payment:first-of-type{border-top:none}.bank-payment select{max-width:100%;min-width:0;flex:1 1 260px;padding:6px 8px;border:1px solid var(--border);border-radius:8px;font:inherit;font-size:.88rem;background:var(--panel);color:var(--text)}.bank-payment__mark{flex-basis:100%;margin-top:4px}.bank-payment--booking{flex-direction:row;flex-wrap:wrap;gap:4px 12px;align-items:baseline;padding:6px 0}.bank-payment__raw{white-space:pre-wrap;font-size:.78rem;background:var(--bg, #f6f7f9);border-radius:8px;padding:8px 10px;max-height:260px;overflow:auto;margin:4px 0 0}.thread__header{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;background:var(--panel);border-bottom:1px solid var(--border)}.thread__title{font-weight:600}.auto-toggle{display:flex;align-items:center;gap:6px;font-size:.85rem;color:var(--muted);cursor:pointer}.thread__toggles{display:flex;align-items:flex-start;gap:4px 20px;flex-wrap:wrap;justify-content:flex-end}.staying-toggle{display:contents}.staying-toggle__hint{order:1;width:100%;font-size:.75rem;text-align:right}.start-counter{position:relative;height:1.4em}.start-counter>span{position:absolute;right:0;top:0;white-space:nowrap}.start-counter--done{color:#9a5b00}.link-button{background:none;border:none;padding:0;color:var(--primary-dark);text-decoration:underline;cursor:pointer;font-size:inherit}.badge--staying{background:#fdf3e2;color:#8a5a12;border:1px solid #efcf97}.thread__messages{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:10px}.bubble-row{display:flex}.bubble-row--left{justify-content:flex-start}.bubble-row--right{justify-content:flex-end}.bubble-row--center{justify-content:center}.bubble{max-width:60%;padding:10px 14px;border-radius:14px;font-size:.92rem;line-height:1.4}.bubble{min-width:0;overflow-wrap:anywhere}.bubble__body{white-space:pre-wrap}.thread__messages{overflow-x:hidden}.thread__earlier{align-self:center}.bubble--guest{background:var(--panel);border:1px solid var(--border);border-bottom-left-radius:4px}.bubble--business{background:var(--accent);border-bottom-right-radius:4px}.bubble--draft{background:var(--draft-bg);border:1px dashed var(--draft-border)}.bubble--system{background:#f1f2f4;color:var(--muted);font-size:.8rem;text-align:center;max-width:80%;border-radius:10px}.bubble__meta{font-size:.7rem;color:var(--muted);margin-top:4px}.bubble__failed{color:var(--danger)}.composer{border-top:1px solid var(--border);background:var(--panel);padding:14px 20px}.composer__hint{font-size:.8rem;color:#8a6d1e;margin-bottom:6px}.composer__textarea{width:100%;resize:vertical;padding:10px 12px;border-radius:10px;border:1px solid var(--border);font-family:inherit;font-size:.92rem}.composer__actions{display:flex;gap:8px;margin-top:8px;justify-content:flex-end}.thread__back{display:none}.thread__who{min-width:0}@media (max-width: 1100px){.app-header{gap:12px}.brand{font-size:0;gap:0}.tabs{flex:1;min-width:0;overflow-x:auto;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tab{padding:8px 10px;white-space:nowrap;flex-shrink:0}.account__button{max-width:130px}}@media (max-width: 900px){.tab{padding:8px}.account__button{max-width:110px}}@media (max-width: 720px){.app-header{padding:0 12px;padding-top:env(safe-area-inset-top);height:calc(52px + env(safe-area-inset-top));gap:8px}.brand{font-size:0;gap:0}.tabs{flex:1;min-width:0}.conv-list{width:100%;border-right:none}.reception .thread,.reception--thread-open .conv-list{display:none}.reception--thread-open .thread{display:flex}.conv-list__search{font-size:16px}.thread__dashboard .thread__back--dashboard{font-size:1.1rem;padding:10px 12px 0;text-align:left}.conv-item{padding:14px 16px}.thread__header{flex-wrap:wrap;gap:8px;padding:10px 12px;justify-content:flex-start}.thread__back{display:block;border:none;background:none;font-size:2rem;line-height:1;padding:0 8px 4px 0;color:var(--primary-dark);cursor:pointer}.thread__who{flex:1}.thread__toggles{width:100%}.thread__messages{padding:12px}.bubble{max-width:85%}.composer{padding:10px 12px;padding-bottom:calc(10px + env(safe-area-inset-bottom))}.composer__textarea{font-size:16px}.composer__actions{flex-wrap:wrap}.composer__actions .btn--primary{flex:1}.calendar-page{padding:12px;padding-bottom:calc(12px + env(safe-area-inset-bottom))}}@media (max-width: 599px),(max-height: 499px) and (pointer: coarse){.tab--desktop-only{display:none}}.btn{padding:8px 16px;border-radius:8px;border:1px solid transparent;cursor:pointer;font-size:.88rem;font-weight:600}.btn--primary{background:var(--primary);color:#fff}.btn--primary:hover{background:var(--primary-dark)}.btn--primary:disabled{opacity:.6;cursor:not-allowed}.btn--secondary{background:var(--accent);color:var(--primary-dark)}.btn--ghost{background:transparent;color:var(--muted);border:1px solid var(--border)}.error-text{color:var(--danger);font-size:.85rem;margin-top:8px}.success-text{color:var(--primary-dark);font-size:.85rem;margin-top:4px}.muted{color:var(--muted)}.small{font-size:.8rem}[hidden]{display:none!important}.property-tabs-page{display:flex;flex-direction:column;height:100%}.property-tabs-page,.property-tabs-page *{scrollbar-width:none}.property-tabs-page::-webkit-scrollbar,.property-tabs-page *::-webkit-scrollbar{display:none}.subtabs{display:flex;justify-content:center;gap:4px;padding:8px 20px 0;background:var(--panel);border-bottom:1px solid var(--border);flex-shrink:0;overflow-x:auto}.subtab{padding:8px 14px;border:none;border-bottom:2px solid transparent;background:transparent;cursor:pointer;font-size:.9rem;color:var(--muted);white-space:nowrap}.subtab:hover{color:var(--text)}.subtab--active{color:var(--brand-navy);border-bottom-color:var(--brand-navy);font-weight:600}.subtabs--inline{justify-content:flex-start;background:transparent;padding:0;margin:4px 0 14px}.subtab__count{display:inline-block;margin-left:6px;min-width:18px;padding:0 5px;border-radius:9px;background:var(--brand-navy);color:#fff;font-size:.72rem;line-height:18px;text-align:center;font-weight:600}.subtab-panel{flex:1;min-height:0;display:flex;justify-content:center}.property-form--single{width:100%;max-width:900px}.subtab-panel .smart-home{border-top:none;padding-top:0}.company-details{display:grid;grid-template-columns:max-content 1fr;gap:4px 16px;margin:0;font-size:.9rem}.company-details dt{color:var(--muted)}.company-details dd{margin:0}.property-page{display:grid;grid-template-columns:380px 1fr;flex:1;min-height:0}.setup-chat{border-right:1px solid var(--border);background:var(--panel);display:flex;flex-direction:column;padding:20px;min-height:0}.setup-chat h2{margin-top:0}.setup-chat__messages{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:10px;margin:12px 0}.chat-msg{padding:10px 14px;border-radius:12px;font-size:.9rem;max-width:90%}.chat-msg--user{align-self:flex-end;background:var(--accent)}.chat-msg--assistant{align-self:flex-start;background:#f1f2f4}.setup-chat__input{display:flex;gap:8px}.setup-chat__input input{flex:1;padding:10px 12px;border-radius:8px;border:1px solid var(--border);font-size:.9rem}.property-form{padding:24px;overflow-y:auto}.property-form__header{display:flex;justify-content:space-between;align-items:center;margin:-24px -24px 8px;padding:16px 24px 12px;position:sticky;top:-24px;z-index:5;background:var(--panel);border-bottom:1px solid var(--border)}.property-form__header h2{margin:0}.property-form__save{display:flex;align-items:center;gap:12px;min-width:0;text-align:right}.property-form__save .success-text,.property-form__save .error-text,.smart-home__actions .success-text,.smart-home__actions .error-text{margin-top:0}.form-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.form-grid label{display:flex;flex-direction:column;font-size:.78rem;color:var(--muted);gap:4px}.form-grid input,.form-grid select{padding:8px 10px;border-radius:8px;border:1px solid var(--border);font-size:.9rem;color:var(--text);width:100%;min-width:0}.form-grid>*{min-width:0}.input-with-status{display:flex;align-items:center;gap:8px;min-width:0}.input-with-status input{flex:1}.status-badge{flex-shrink:0;font-size:.75rem;font-weight:600;color:var(--primary-dark);background:var(--accent);border-radius:999px;padding:3px 10px;white-space:nowrap}.field-block{display:block;margin-bottom:16px}.field-block__label{font-size:.78rem;color:var(--muted);margin-bottom:6px;font-weight:600}.field-block__label-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.field-block textarea{width:100%;padding:8px 10px;border-radius:8px;border:1px solid var(--border);font-family:inherit;font-size:.9rem}.amenity-chips{display:flex;flex-wrap:wrap;gap:8px}.chip{padding:6px 12px;border-radius:999px;border:1px solid var(--border);background:var(--panel);cursor:pointer;font-size:.82rem;text-transform:capitalize}.chip--active{background:var(--primary);color:#fff;border-color:var(--primary)}.rate-row{display:grid;grid-template-columns:2fr 1fr 1.5fr 2fr auto;gap:8px;margin-bottom:8px}.rate-row input{padding:8px 10px;border-radius:8px;border:1px solid var(--border);font-size:.88rem}.website-import-row{display:flex;gap:8px}.website-import-row input{flex:1;padding:8px 10px;border-radius:8px;border:1px solid var(--border);font-size:.9rem}.website-summary{margin-top:8px}.website-summary summary{cursor:pointer}.website-summary__text{white-space:pre-wrap;font-size:.85rem;background:var(--accent);border-radius:8px;padding:10px 12px;margin-top:8px;line-height:1.5}.calendar-page{padding:24px;max-width:720px;margin:0 auto;overflow-y:auto;height:100%}.calendar-page{scrollbar-width:none}.calendar-page::-webkit-scrollbar{display:none}.calendar-sync__pull{color:var(--primary-dark);font-weight:600}.calendar-sync__pull:disabled{color:var(--muted);text-decoration:none;cursor:default}.calendar-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px 16px;margin-bottom:16px}.calendar-header__title{display:flex;align-items:center;gap:8px 16px;flex-wrap:wrap}.calendar-header__title h2{margin:0}.calendar-sync{display:flex;flex-wrap:wrap;gap:2px 16px;margin:0}@media (min-width: 1400px){.calendar-page{max-width:1480px}.calendar-layout{display:grid;grid-template-columns:minmax(0,720px) minmax(0,1fr);gap:40px;align-items:start}.calendar-side>.calendar-blocks:first-child{margin-top:16px}}.calendar-nav{display:flex;align-items:center;gap:8px;margin:16px 0}.calendar-nav__label{font-weight:600;font-size:1.05rem;flex:1;text-align:left}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:12px}.calendar-grid__weekday{text-align:center;font-size:.75rem;color:var(--muted);font-weight:600;padding-bottom:4px}.calendar-cell{aspect-ratio:1 / 1;border-radius:8px;display:flex;align-items:flex-start;justify-content:flex-end;padding:6px;font-size:.85rem;border:1px solid transparent}.calendar-cell--free{background:#eaf7ee;color:#1a1d23}.calendar-cell--occupied{background:#fdeaea;color:#1a1d23}.calendar-cell--muted{opacity:.35}.calendar-cell--today{border-color:var(--primary)}.calendar-cell__num{font-weight:600}.calendar-cell{flex-direction:column;align-items:stretch;justify-content:flex-start;gap:2px;overflow:hidden;min-width:0;-webkit-touch-callout:none;user-select:none;-webkit-user-select:none;touch-action:manipulation}.calendar-cell__num{text-align:right}.calendar-cell__checkout{margin-top:auto;align-self:flex-start;display:inline-flex;align-items:center;gap:3px;max-width:100%;overflow:hidden;white-space:nowrap;font-size:.62rem;font-weight:700;line-height:1.3;color:#fff;background:#b4541a;border-radius:4px;padding:1px 4px}.calendar-cell__checkout-text{overflow:hidden;text-overflow:ellipsis}.calendar-cell--direct .calendar-cell__label{color:#1f7a3d}.calendar-cell--hold,.calendar-cell--hold.calendar-cell--occupied{background:#fff3c4}.calendar-cell--hold .calendar-cell__label{color:#8a6a00}.calendar-cell__label{font-size:.72rem;line-height:1.2;text-align:left;color:#8f2d2d;font-weight:600;overflow:hidden;overflow-wrap:break-word;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}@media (max-width: 560px){.calendar-grid{gap:3px;padding:6px}.calendar-cell{padding:3px 2px}.calendar-cell__label{font-size:.5rem;line-height:1.1;letter-spacing:-.02em}.calendar-cell__label--ref{word-break:break-all}}.day-menu{position:fixed;z-index:60;background:var(--panel);border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 24px #0f172a2e;padding:6px;display:flex;flex-direction:column}.day-menu__head{font-size:.78rem;color:var(--muted);font-weight:600;padding:4px 8px 6px;border-bottom:1px solid var(--border);margin-bottom:4px}.day-menu__note{font-size:.82rem;padding:4px 8px;color:var(--muted)}.day-menu__item{display:flex;align-items:center;gap:8px;width:100%;text-align:left;background:none;border:none;border-radius:6px;padding:9px 8px;font:inherit;font-size:.9rem;color:var(--text);cursor:pointer}.day-menu__item:hover,.day-menu__item:focus-visible{background:var(--accent);outline:none}.day-menu__dot{width:10px;height:10px;border-radius:3px;flex-shrink:0}.day-menu__dot--open{background:#eaf7ee;border:1px solid #7cc492}.day-menu__dot--closed{background:#fdeaea;border:1px solid #e28b8b}.day-menu__check{margin-left:auto;color:var(--primary);font-weight:700}.day-menu__item--primary{font-weight:600;color:var(--primary-dark)}.booking-form__goto{margin-right:auto;text-decoration:none;display:inline-flex;align-items:center}.day-menu__sep{border-top:1px solid var(--border);margin:4px 0}.day-menu__dot--price{border:none;font-size:.7rem;color:var(--muted);display:inline-flex;align-items:center;justify-content:center}.day-menu__price{display:flex;align-items:center;gap:6px;padding:6px 8px}.day-menu__price .btn{margin-left:auto;flex-shrink:0}.day-menu__price input{width:70px;min-width:0;padding:6px 8px;border:1px solid var(--border);border-radius:6px;font:inherit}.calendar-cell__price{font-size:.78rem;color:#2f6b45;text-align:left;font-variant-numeric:tabular-nums}.calendar-cell__price--own{font-weight:700;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:2px;color:#1f5a37}.calendar-cell__min{align-self:flex-start;font-size:.62rem;font-weight:700;color:#7a4b00;background:#fff1cc;border:1px solid #f0d58a;border-radius:4px;padding:0 3px;line-height:1.3;white-space:nowrap}.calendar-cell__checkout+.calendar-cell__holiday{margin-top:2px}.calendar-cell__holiday{margin-top:auto;font-size:.62rem;line-height:1.1;color:#6a3fb3;font-weight:600;text-align:left;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.calendar-cell--holiday .calendar-cell__num{color:#6a3fb3}.calendar-cell--holiday .calendar-cell__num:before{content:"●";font-size:.5rem;vertical-align:middle;margin-right:3px}.calendar-legend__holiday{width:12px;height:12px;display:inline-block;position:relative}.calendar-legend__holiday:before{content:"●";color:#6a3fb3;font-size:.7rem;position:absolute;top:-2px;left:2px}@media (max-width: 560px){.calendar-cell__price{font-size:.56rem}.calendar-cell__holiday{display:none}.calendar-cell{position:relative}.calendar-cell__checkout{position:absolute;top:3px;left:2px;margin:0;font-size:.55rem;padding:0 3px}.calendar-cell__checkout-text{display:none}.calendar-cell__min{font-size:.5rem;padding:0 2px}}button.calendar-cell{font:inherit;cursor:pointer;text-align:right}.calendar-cell--manual{background:#fff3d6;color:#1a1d23}.calendar-cell--selected{outline:2px solid var(--primary);outline-offset:-2px}.calendar-selection-bar{display:flex;align-items:center;justify-content:space-between;gap:8px 12px;flex-wrap:wrap;margin:-6px 0 8px;padding:8px 12px;border:1px solid var(--primary);border-radius:10px;background:var(--accent);font-size:.9rem}.calendar-block-panel{margin-top:12px;padding:12px;border:1px solid var(--border);border-radius:10px;background:var(--panel);display:flex;flex-direction:column;gap:10px}.calendar-block-panel__actions{display:flex;flex-wrap:wrap;gap:8px}.calendar-block-panel__actions input{flex:1;min-width:180px;padding:8px 10px;border-radius:8px;border:1px solid var(--border);font-size:.88rem}.calendar-blocks{margin-top:20px}.calendar-blocks h3{margin:0 0 4px;font-size:1rem}.calendar-blocks__pending{font-size:.8rem;color:#9a6700;font-weight:600}.calendar-blocks__row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:8px 0;border-bottom:1px solid var(--border)}.calendar-legend{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:14px}.calendar-legend__item{display:flex;align-items:center;gap:6px;font-size:.85rem;color:var(--muted)}.calendar-legend__swatch{width:12px;height:12px;border-radius:3px;display:inline-block}.calendar-legend__swatch--free{background:#eaf7ee;border:1px solid #b7dfc2}.calendar-legend__swatch--occupied{background:#fdeaea;border:1px solid #f0b8b8}.calendar-legend__swatch--manual{background:#fff3d6;border:1px solid #f0d58a}.bookings__head{display:flex;justify-content:space-between;align-items:baseline;gap:8px 16px;flex-wrap:wrap;margin-bottom:4px}.bookings__head h3{margin:0}.bookings__cleaning{display:flex;align-items:center;gap:6px;font-size:.82rem;color:var(--muted);flex-wrap:wrap}.bookings__cleaning input{width:52px;padding:4px 6px;border:1px solid var(--border);border-radius:6px;font:inherit}.bookings__row{display:flex;align-items:center;gap:8px 12px;flex-wrap:wrap;padding:8px 0 8px 10px;border-bottom:1px solid var(--border);border-left:4px solid transparent}.bookings__row--guest,.bookings__row--reservation{border-left-color:#9fc3ea}.bookings__row--closed,.bookings__row--block{border-left-color:#e05252}.bookings__row--cleaning{border-left-color:#ec80b5}.bookings__row--unknown{border-left-color:#f0b8b8}.bookings__row--direct{border-left-color:#7cc492}.bookings__row--hold{border-left-color:#f0c419;background:#fffbea}.bookings__row--direct .bookings__title{color:#1f7a3d}.bookings__main{flex:1;min-width:220px;display:flex;flex-direction:column;gap:2px;text-align:left;background:none;border:none;padding:0;font:inherit;color:inherit;cursor:pointer}.bookings__main:not(:disabled):hover .bookings__title{text-decoration:underline}.bookings__main:disabled{cursor:default;opacity:1}.booking-form__fields{border:none;padding:0;margin:0;min-width:0;display:flex;flex-direction:column;gap:12px}.booking-form__fields:disabled input,.booking-form__fields:disabled select,.booking-form__fields:disabled textarea{background:var(--bg);color:var(--text);opacity:1}.bookings__dates{font-weight:600}.bookings__title{font-size:.92rem}.bookings__row--unknown .bookings__title{color:#a33a3a}.bookings__warning{font-size:.8rem;color:#9a6700;font-weight:600}.bookings__actions{display:flex;gap:6px;flex-wrap:wrap}.booking-dialog{max-width:420px;max-height:calc(100dvh - 32px);overflow-y:auto}.booking-dialog--wide{max-width:620px}.booking-dialog__head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.booking-dialog__close{flex-shrink:0;width:32px;height:32px;margin:-6px -8px 0 0;border:none;border-radius:8px;background:none;color:var(--muted);font-size:1.1rem;line-height:1;cursor:pointer}.booking-dialog__close:hover{background:var(--bg);color:var(--text)}.booking-form{display:flex;flex-direction:column;gap:12px}.booking-form input,.booking-form select,.booking-form textarea{padding:7px 9px;border:1px solid var(--border);border-radius:8px;font:inherit;font-size:.9rem;color:var(--text);background:var(--panel);min-width:0}.booking-form__kind{display:flex;gap:18px;flex-wrap:wrap;font-size:.92rem}.booking-form__kind label{display:flex;align-items:center;gap:6px;cursor:pointer}.booking-form__summary{margin:-4px 0 0}.booking-form__notes{display:flex;flex-direction:column;gap:3px;font-size:.8rem;color:var(--muted);font-weight:600}.booking-form__notes textarea{resize:vertical}.booking-form__remove{margin-right:auto;color:var(--danger)}.booking-welcome{border-top:1px solid var(--border);padding-top:12px;display:flex;flex-direction:column;gap:6px}.booking-welcome p{margin:0}@media (max-width: 560px){.booking-dialog .market-form-grid{grid-template-columns:minmax(0,1fr)}}.smart-home{border-top:1px solid var(--border);padding-top:16px}.smart-home__master{border:1px solid var(--border);border-radius:10px;padding:12px 16px;margin-bottom:20px;background:var(--bg)}.smart-home__master--on{border-color:var(--primary);background:var(--accent)}.smart-home__master-toggle{display:flex;align-items:center;gap:10px;font-weight:700;font-size:1rem;cursor:pointer}.smart-home__master-toggle input{width:18px;height:18px}.smart-home__master p{margin:6px 0 0 28px}.smart-home__actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:20px;padding-top:12px;border-top:1px dashed var(--border)}.smart-home__heading{font-size:.9rem;margin:18px 0 8px}.smart-home__device{margin:8px 0;padding:8px 12px;border:1px solid var(--border);border-radius:8px}.smart-home__device-name{font-weight:600;font-size:.85rem;margin-bottom:4px}.smart-home__sensor{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:3px 0}.smart-home__check{display:flex;align-items:center;gap:8px;font-size:.88rem}.smart-home__label-input{padding:5px 8px;border:1px solid var(--border);border-radius:6px;font-size:.85rem;min-width:0;max-width:100%}.smart-home img{max-width:100%}.smart-home .website-import-row,.smart-home .website-import-row input{min-width:0}.smart-home__cameras{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.smart-home__camera{display:flex;flex-direction:column;gap:6px;min-width:0}.smart-home__camera input{padding:8px 10px;border:1px solid var(--border);border-radius:8px;min-width:0;width:100%}.smart-home__camera img{width:100%;border-radius:8px;border:1px solid var(--border)}@media (max-width: 720px){.smart-home__cameras{grid-template-columns:minmax(0,1fr)}}.guest{max-width:560px;margin:0 auto;padding:16px;display:flex;flex-direction:column;gap:12px}.guest__header{display:flex;align-items:center;gap:12px;padding:4px 0 8px}.guest__title{font-weight:700;font-size:1.15rem;color:var(--brand-navy)}.guest__muted{color:var(--muted);font-size:.9rem;margin:0}.guest__small{font-size:.8rem;margin-top:6px}.guest__card{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:16px}.guest__section-title{font-size:1rem;margin:0 0 10px}.guest__readings{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px}.guest__reading{background:var(--bg);border-radius:10px;padding:10px;text-align:center}.guest__reading-value{font-size:1.6rem;font-weight:700;color:var(--brand-navy)}.guest__stepper{display:flex;align-items:center;justify-content:center;gap:16px;margin:12px 0}.guest__stepper .btn{width:48px;height:48px;font-size:1.4rem;padding:0}.guest__target{font-size:2rem;font-weight:700;min-width:110px;text-align:center}.guest__action{width:100%;padding:12px 16px;font-size:1rem}.guest__cameras{display:flex;flex-direction:column;gap:10px}.guest__cameras img{width:100%;border-radius:8px;background:var(--bg);min-height:120px}.guest__notice{border-radius:10px;padding:10px 14px;font-size:.92rem}.guest__notice--ok{background:var(--accent);color:var(--primary-dark)}.guest__notice--error{background:#fdecec;color:var(--danger)}.guest--loading{min-height:80vh;align-items:center;justify-content:center;gap:16px}.guest__loading-logo{width:64px;height:64px}.guest__dots{display:flex;gap:6px}.guest__dots span{width:8px;height:8px;border-radius:50%;background:var(--brand-navy);opacity:.25;animation:guest-dot 1.2s infinite ease-in-out}.guest__dots span:nth-child(2){animation-delay:.2s}.guest__dots span:nth-child(3){animation-delay:.4s}@keyframes guest-dot{0%,80%,to{opacity:.25}40%{opacity:1}}@media (prefers-reduced-motion: reduce){.guest__dots span{animation:none;opacity:.6}}.calendar-pass-created{border:1px solid var(--primary);background:var(--accent);border-radius:10px;padding:14px 16px;margin:12px 0}.calendar-pass-created__head{display:flex;justify-content:space-between;align-items:center;gap:12px}.calendar-pass-created__head .btn{padding:2px 10px}.calendar-pass-created p{margin:6px 0 10px}.calendar-pass-created__link{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:8px 12px;overflow-x:auto}.calendar-pass-created__link code{white-space:nowrap;font-size:.85rem}.calendar-pass-created__message{width:100%;margin-top:10px;padding:8px 12px;border:1px solid var(--border);border-radius:8px;font:inherit;font-size:.85rem;resize:vertical;background:var(--panel)}.calendar-pass-created__actions,.calendar-pass-row__actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.calendar-pass-row__actions{margin-top:0}.calendar-pass-off{color:#8a5a12}.pass-status{font-weight:600}.pass-status--active{color:var(--primary-dark)}.pass-status--upcoming{color:#8a5a12}.badge--window{background:#eef2f7;color:#3d5a80;border:1px solid #cfdae8}.badge--window-soon{background:#fff4e5;color:#9a5b00;border-color:#f3cf96}.reply-window{margin-top:2px;color:#3d5a80}.reply-window--soon{color:#9a5b00;font-weight:600}.reply-window--closed,.composer__hint--blocked{color:var(--danger)}.template-sid-input{width:100%;max-width:420px;padding:8px 10px;border-radius:8px;border:1px solid var(--border);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.88rem}.template-status{margin-top:8px;padding:10px 12px;border-radius:8px;background:var(--draft-bg);border:1px solid var(--draft-border);font-size:.85rem}.template-status--ok{background:var(--accent);border-color:#b5e2c3}.template-status__body{margin-top:6px;white-space:pre-wrap;color:var(--muted);max-height:160px;overflow-y:auto}.bubble__media{display:block;max-width:100%;border-radius:10px;margin-bottom:6px}a.bubble__media img,.bubble video.bubble__media{display:block;max-width:100%;max-height:320px;border-radius:10px;background:var(--bg)}.bubble__audio{display:block;width:260px;max-width:100%;margin-bottom:6px}.bubble__file{display:inline-block;margin-bottom:6px;color:var(--primary-dark);font-weight:600}.bubble__media-failed{font-size:.8rem;color:var(--muted);margin-bottom:6px}.dashboard{height:100%;overflow-y:auto;padding:20px;max-width:1100px;margin:0 auto}.dashboard{scrollbar-width:none}.dashboard::-webkit-scrollbar{display:none}.dash-title{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:14px}.dash-title h2{margin:0;font-size:1.25rem}.dash-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.dash-card{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:14px 16px;min-width:0}@media (min-width: 721px){.dash-grid{grid-template-areas:"today coming" "temps thermo" "gate thermo"}.dash-card--today{grid-area:today}.dash-card--coming{grid-area:coming}.dash-card--temps{grid-area:temps}.dash-card--thermo{grid-area:thermo}.dash-card--gate{grid-area:gate}.dash-card--gate,.dash-card--thermo{display:flex;flex-direction:column}.dash-gate,.dash-thermo{flex:1}.dash-gate{justify-content:flex-end}.dash-thermo__set{margin-top:auto}}.dash-layout{display:flex;flex-direction:column;gap:14px}@media (min-width: 1400px){.dashboard{max-width:1480px}.dash-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,.72fr);align-items:start}.dash-card--wide .dash-cameras{grid-template-columns:minmax(0,1fr)}}.dash-status{min-height:1.3em;font-size:.85rem}.dash-card h3{margin:0 0 10px;font-size:.95rem;color:var(--brand-navy)}.dash-empty{margin:0}.dash-today{display:flex;flex-direction:column;gap:4px;padding:6px 0}.dash-today+.dash-today{border-top:1px solid var(--border)}.dash-badge{align-self:flex-start;font-size:.72rem;font-weight:700;padding:2px 8px;border-radius:999px}.dash-badge--arriving{background:#e7f7ec;color:#1f7a3d}.dash-badge--staying{background:var(--accent);color:var(--primary-dark)}.dash-badge--leaving{background:#fdf3e2;color:#8a5a12}.dash-stay__name{font-weight:600;overflow-wrap:anywhere}.dash-stay__open{font-weight:600;color:inherit;text-decoration:none;text-align:left}.dash-stay__open:hover{text-decoration:underline}.dash-stay__chat{margin-left:8px;font-weight:400;font-size:.85rem}.dash-next+.dash-next{margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}.dash-next__label{font-size:.75rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.03em;margin-bottom:4px}.dash-readings{display:grid;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:8px}.dash-reading{background:var(--bg);border-radius:10px;padding:10px;text-align:center}.dash-reading__value{font-size:1.5rem;font-weight:700;color:var(--brand-navy)}.dash-thermo{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center}.dash-thermo__now{display:flex;gap:32px}.dash-thermo__state{margin-top:-2px}.dash-thermo__stepper{display:flex;align-items:center;gap:16px}.dash-thermo__stepper .btn{width:44px;height:44px;padding:0;font-size:1.3rem}.dash-thermo__target{font-size:1.6rem;font-weight:700;min-width:90px}.dash-thermo__set{width:100%;padding:14px 16px;font-size:1rem}.dash-thermo .success-text,.dash-thermo .error-text{margin-top:0}.dash-heating{color:#b4540a}.dash-gate{display:flex;flex-direction:column;gap:8px}.dash-gate__button{padding:14px 16px;font-size:1rem}.dash-gate .success-text,.dash-gate .error-text{margin-top:0}.dash-cameras{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.dash-camera{display:block;border-radius:10px;overflow:hidden;background:var(--bg);min-height:120px}.dash-camera img{display:block;width:100%;height:auto}.dash-camera--failed{display:flex;align-items:center;justify-content:center;padding:12px;text-align:center}@media (max-width: 720px){.dashboard{padding:12px;padding-bottom:calc(12px + env(safe-area-inset-bottom))}.dash-grid,.dash-cameras{grid-template-columns:minmax(0,1fr)}.tabs{gap:2px}.tab{padding:7px 9px;font-size:.88rem}.account__button{max-width:96px;padding:6px 8px}}.analytics-range{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px 14px;margin-bottom:16px}.analytics-range label{display:flex;flex-direction:column;gap:4px;font-size:.8rem;color:var(--muted)}.analytics-range input{padding:7px 10px;border-radius:8px;border:1px solid var(--border);font-family:inherit;font-size:.9rem;background:var(--panel);color:var(--text)}.analytics-range__shortcuts{display:flex;flex-wrap:wrap;gap:6px}.analytics-range__shortcuts .chip{text-transform:none}.analytics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.analytics-card--wide{grid-column:1 / -1}.stat-row{display:flex;flex-wrap:wrap;gap:12px 32px;margin-bottom:12px}.stat{min-width:110px}.stat__label{font-size:.8rem;color:var(--muted)}.stat__value{font-size:1.7rem;font-weight:700;color:var(--text);font-variant-numeric:tabular-nums;line-height:1.2}.stat__sub{margin-top:2px}.analytics-note{margin:0}.night-strip{display:grid;grid-template-columns:repeat(auto-fill,minmax(26px,1fr));gap:2px}.night-strip__night{height:30px;border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-variant-numeric:tabular-nums}.night-strip__night--booked{background:#1baf7a;color:#0b0b0b}.night-strip__night--booked.night-strip__night--booking{background:#2a78d6;color:#fff}.night-strip__night--open{background:var(--panel);border:1px dashed #b8bec8;color:var(--muted)}.night-strip__night--partial{background:#a8e0c6;color:#0b0b0b}.night-strip__night--closed{background:#eda100;color:#0b0b0b}.night-strip__night--booking_closed{background:#eb6834;color:#0b0b0b}.night-strip__night--today{outline:2px solid var(--brand-navy);outline-offset:1px}.analytics-table{width:100%;border-collapse:collapse;font-size:.9rem}.analytics-table td{padding:6px 0;border-top:1px solid var(--border)}.analytics-table__bar{width:40%;padding:6px 12px!important}.analytics-table__bar span{display:block;height:8px;border-radius:0 4px 4px 0;background:#0e9384;min-width:2px}.analytics-table__row{cursor:pointer}.analytics-table__row:hover td{background:var(--bg)}.analytics-table__caret{display:inline-block;width:16px;color:var(--muted)}.analytics-table__detail td{font-size:.82rem;color:var(--muted);padding:4px 0 4px 16px;border-top:none;overflow-wrap:anywhere}.analytics-table__detail .analytics-table__num{padding-left:0}.analytics-table__num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.analytics-table--income .analytics-table__bar span{background:#3a6fb0}.bank-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 28px;align-items:start}.bank-columns__title{margin:4px 0 6px;font-size:.88rem}.night-strip+.analytics-note{margin-top:8px}.advisor__messages{display:flex;flex-direction:column;gap:10px;max-height:460px;overflow-y:auto;margin-bottom:10px}.advisor__msg{line-height:1.45}.advisor__msg p{margin:0 0 6px}.advisor__msg p:last-child,.advisor__msg ul:last-child{margin-bottom:0}.advisor__msg ul{margin:0 0 6px;padding-left:20px}.advisor__note{margin:6px 0 0}@media (max-width: 720px){.bank-columns,.analytics-grid{grid-template-columns:minmax(0,1fr)}}.training-howto{margin:0 0 8px;padding-left:20px;line-height:1.55;font-size:.92rem}.training-howto li+li{margin-top:4px}.training-howto code,.training code{font-size:.82rem;overflow-wrap:anywhere}.training-warning{background:var(--draft-bg);border:1px solid var(--draft-border);border-radius:8px;padding:8px 12px;font-size:.9rem}.training-form{display:flex;flex-direction:column;gap:12px;max-width:560px}.training-form__field{display:flex;flex-direction:column;gap:6px;font-size:.85rem;font-weight:600;color:var(--muted)}.training-form__field textarea{padding:8px 10px;border:1px solid var(--border);border-radius:8px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem;color:var(--text)}.training-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;font-size:.92rem;color:var(--muted)}.training-steps--done{color:var(--primary-dark)}.training-steps--now{color:var(--text);font-weight:600}.training-summary{font-family:inherit;font-size:.9rem;line-height:1.5}.training-actions{display:flex;gap:8px;margin-top:8px}.training-update{border-top:1px solid var(--border);padding-top:16px}.training-proposal{margin-top:14px;border:1px solid var(--primary);border-radius:10px;padding:12px 14px;background:var(--panel)}.training-proposal__head{font-weight:700;margin-bottom:6px}.training-diff{max-height:460px;overflow-y:auto;border:1px solid var(--border);border-radius:8px;padding:8px 0;font-size:.88rem;line-height:1.5}.training-diff>div{padding:0 12px;white-space:pre-wrap;overflow-wrap:anywhere}.training-diff__added{background:#e7f7ec;color:#14532d}.training-diff__removed{background:#fdecec;color:#8b1c1c;text-decoration:line-through}.guest__wifi-row{display:flex;align-items:center;gap:12px;padding:6px 0}.guest__wifi-row+.guest__wifi-row{border-top:1px solid var(--border)}.guest__wifi-text{flex:1;min-width:0}.guest__wifi-value{font-size:1.1rem;font-weight:700;color:var(--brand-navy);overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.market-card{margin-bottom:14px}.market-controls{display:flex;gap:24px;flex-wrap:wrap;align-items:flex-start}.market-area{flex:1 1 320px;display:flex;flex-direction:column;gap:4px}.market-area__row{display:flex;gap:8px}.market-area__row input{flex:1;min-width:0;padding:8px 10px;border:1px solid var(--border);border-radius:8px;font:inherit;font-size:.9rem}.market-run{display:flex;flex-direction:column;gap:4px;align-items:flex-start}.market-run__buttons{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:4px}.market-summary{margin:0 0 8px;padding-left:20px;line-height:1.55;font-size:.92rem}.market-summary li+li{margin-top:4px}.market-table-wrap{overflow-x:auto;margin-bottom:8px}.market-table{width:100%;border-collapse:collapse;font-size:.9rem}.market-table th{text-align:left;font-size:.8rem;color:var(--muted);font-weight:600;padding:6px 10px;border-bottom:1px solid var(--border);vertical-align:bottom}.market-table td{padding:8px 10px;border-bottom:1px solid var(--border);vertical-align:top}.market-row{cursor:pointer}.market-row:hover,.market-row--open{background:var(--accent)}.market-stay,.market-median{font-weight:600}.market-diff{display:inline-block;font-size:.75rem;font-weight:600;padding:1px 7px;border-radius:999px;background:var(--bg);color:var(--muted)}.market-diff--above{background:#fdf3e2;color:#8a5a12}.market-diff--below{background:#e7f7ec;color:#1f7a3d}.market-row-detail>td{background:var(--bg)}.market-detail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.market-listings h4{margin:4px 0 8px;font-size:.85rem;color:var(--brand-navy)}.market-listing{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;padding:6px 0}.market-listing+.market-listing{border-top:1px solid var(--border)}.market-listing__name{font-weight:600;overflow-wrap:anywhere}.market-listing__name a{color:var(--primary-dark)}.market-listing__price{font-weight:600;text-align:right;white-space:nowrap}.market-listing__meta{grid-column:1 / -1}@media (max-width: 720px){.market-detail{grid-template-columns:minmax(0,1fr)}}.market-like{color:var(--primary-dark);font-weight:600;margin-top:2px}.market-like-badge{margin-left:8px;background:var(--accent);color:var(--primary-dark)}.market-diff--booked{background:var(--brand-navy);color:#fff}.market-row--booked>td{opacity:.6}.market-row--static{cursor:default}.market-card__head{display:flex;justify-content:space-between;align-items:center;gap:12px}.market-detail{grid-template-columns:repeat(3,minmax(0,1fr))}@media (max-width: 900px){.market-detail{grid-template-columns:minmax(0,1fr)}}.market-moved{color:#8a5a12;font-weight:600}.market-history{margin-top:8px}.market-status--booked{color:var(--brand-navy)}.market-status--no_price,.market-status--unknown{color:var(--muted);font-weight:400}.market-confidence{display:inline-block;font-size:.75rem;font-weight:700;padding:2px 8px;border-radius:999px}.market-confidence--low{background:#fdecea;color:#a1302a}.market-confidence--medium{background:#fdf3e2;color:#8a5a12}.market-confidence--high{background:#e7f7ec;color:#1f7a3d}.market-tier{margin-top:12px}.market-tier h4{margin:0 0 4px;font-size:.85rem;color:var(--brand-navy)}.market-competitor{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:8px 0;border-top:1px solid var(--border)}.market-competitor .market-like-badge{margin-left:8px}.market-competitor__actions{display:flex;gap:6px;flex-shrink:0}.market-competitor-form{background:var(--bg);border-radius:8px;padding:12px;margin:8px 0}.market-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px}.market-form-grid label{display:flex;flex-direction:column;gap:3px;font-size:.8rem;color:var(--muted);font-weight:600}.market-form-grid input:not([type=checkbox]),.market-form-grid select{padding:7px 9px;border:1px solid var(--border);border-radius:8px;font:inherit;font-size:.9rem;color:var(--text, inherit);background:#fff}.market-form-wide{grid-column:1 / -1}.market-form-check{flex-direction:row!important;align-items:center;align-self:end}.market-form-actions{display:flex;gap:8px;align-items:center;margin-top:10px}@media (max-width: 600px){.market-form-grid{grid-template-columns:minmax(0,1fr)}.market-competitor{flex-direction:column}}.market-action{border:1px solid var(--border);border-radius:10px;padding:12px;margin-top:10px}.market-action--decided{opacity:.75}.market-action__head{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.market-action__badge{font-size:.75rem;font-weight:700;padding:2px 8px;border-radius:999px;background:var(--accent);color:var(--primary-dark)}.market-action__badge--hold{background:#eef2f7;color:#3d5a80}.market-action__badge--up{background:#e7f7ec;color:#1f7a3d}.market-action__badge--down{background:#fdf3e2;color:#8a5a12}.market-action__title{font-weight:600;margin-top:6px}.market-action__why{margin-top:4px;line-height:1.5}.market-action__draft{margin-top:8px;padding:8px 10px;background:var(--bg);border-radius:8px;white-space:pre-wrap}.market-action__edit{width:100%;box-sizing:border-box;margin-top:8px;padding:8px 10px;border:1px solid var(--border);border-radius:8px;font:inherit;font-size:.9rem;resize:vertical}.market-recipients{display:flex;flex-direction:column;gap:4px;margin-top:8px}.market-recipient{display:flex;gap:8px;align-items:baseline;font-size:.9rem}.market-recipient--sent{background:#e7f7ec;color:#1f7a3d}.market-recipient--failed{background:#fdecea;color:#a1302a}.market-decided-toggle{margin-top:12px}.market-template{margin-top:14px;padding-top:10px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:4px}.market-template input{flex:1;min-width:0;padding:6px 9px;border:1px solid var(--border);border-radius:8px;font:inherit;font-size:.85rem}.market-social{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:20px;margin-top:10px}.market-social__side{display:flex;flex-direction:column;gap:12px}.market-social__side h4{margin:0 0 4px;font-size:.85rem;color:var(--brand-navy)}.market-social__side a{color:var(--primary-dark)}.market-social__post+.market-social__post{margin-top:6px}@media (max-width: 900px){.market-social{grid-template-columns:minmax(0,1fr)}}.customers__search{width:100%;box-sizing:border-box;margin-top:10px;padding:7px 10px;border:1px solid var(--border);border-radius:8px;font:inherit;font-size:.9rem}.customers .conv-item__top{gap:8px;align-items:center}.customer-badge{display:inline-block;font-size:.7rem;font-weight:700;padding:2px 8px;border-radius:999px;white-space:nowrap;flex-shrink:0}.customer-badge--never{background:var(--bg);color:var(--muted)}.customer-badge--stayed{background:var(--accent);color:var(--primary-dark)}.customer-badge--upcoming{background:#e8f0fb;color:#2b5797}.customer-badge--staying{background:#fdf3e2;color:#8a5a12}.customer-badge--cancelled{background:#fdecea;color:#a1302a}.customer-profile{flex:1;overflow-y:auto;padding:20px 24px}.customer-profile__head{display:flex;align-items:flex-start;gap:12px}.customer-profile__who{flex:1;min-width:0}.customer-profile__who h2{margin:0 0 2px;font-size:1.2rem;overflow-wrap:anywhere}.customer-actions{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.customer-card{margin-bottom:14px}.customer-card h3{margin-top:0}.customer-stay--cancelled td{opacity:.6}.customer-document+.customer-document{margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}.customer-document__head{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline;margin-bottom:8px}.customer-document__head a{color:var(--primary-dark)}.customer-fields{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px 16px}.customer-field__label{font-size:.75rem;color:var(--muted);font-weight:600}.customer-field__value{font-size:.92rem;overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}.stay-history{margin-top:2px;color:var(--muted)}.stay-history--returning{color:var(--primary-dark);font-weight:600}.stay-history .link-button{font-weight:400}@media (max-width: 720px){.customer-profile{padding:12px}}.customer-card a{color:var(--primary-dark);font-weight:600}.merge-dialog{max-width:480px}.merge-dialog__list{max-height:50vh;overflow-y:auto;border:1px solid var(--border);border-radius:8px}.merge-dialog__list .conv-item__bottom{gap:6px}.customer-profile__who .link-button{margin-left:8px}.customer-profile__who .customer-marketing{display:inline-flex;margin-left:12px;font-size:.85rem;vertical-align:middle}.booking-settings{display:flex;flex-direction:column;gap:10px}.booking-settings label{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:.9rem}.booking-settings input{width:64px;padding:6px 8px;border:1px solid var(--border);border-radius:6px;font:inherit}.booking-settings input[type=checkbox]{width:auto;padding:0;margin:0}.booking-settings input:disabled{opacity:.5}.services{max-width:560px;margin:0 auto;padding:16px;padding-bottom:calc(16px + env(safe-area-inset-bottom));height:100%;overflow-y:auto;scrollbar-width:none}.services::-webkit-scrollbar{display:none}.services__head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.services__head h2{margin:0;font-size:1.2rem}.services__notify{display:flex;align-items:center;gap:8px 12px;flex-wrap:wrap;margin:12px 0 0;font-size:.88rem}.services__hint{margin:10px 0 0}.services__login-title{margin:-4px 0 4px;text-align:center;font-size:1.1rem}.services .calendar-cell:disabled{cursor:default}@media (max-width: 560px){.services .calendar-grid{gap:3px;padding:6px}}.cleaning-access h2{margin-top:0}.cleaning-access__code{font-size:1.8rem;font-weight:700;letter-spacing:.12em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--brand-navy);margin:4px 0 8px}.cleaning-access__link{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:8px 12px;overflow-x:auto}.cleaning-access__link code{white-space:nowrap;font-size:.85rem}.training-form__check{display:block;font-size:.92rem}.training-form__check input{margin-right:6px}.market-think{display:flex;gap:6px;flex-wrap:wrap}.market-model{font-weight:400}.btn--think-fast{background:#1f9d55;color:#fff}.btn--think-hard{background:var(--danger);color:#fff}@media (hover: hover){.btn--think-fast:hover:not(:disabled){background:#188247}.btn--think-hard:hover:not(:disabled){background:#b83636}}.btn--think-fast:disabled,.btn--think-hard:disabled{opacity:.55}.market-add-recipient{display:flex;gap:6px;margin-top:8px}.market-add-recipient input{flex:1;min-width:0}.lead-chat{display:flex;flex-direction:column;gap:6px;max-height:260px;overflow-y:auto;margin:8px 0}.lead-chat__msg{max-width:85%;padding:6px 10px;border-radius:10px;font-size:.92rem;line-height:1.4}.lead-chat__msg--user{align-self:flex-end;background:var(--accent)}.lead-chat__msg--assistant{align-self:flex-start;background:var(--bg)}.lead-chat__left-out{margin-top:8px}.tv-screen h2{margin-top:0}.tv-slides{list-style:none;margin:8px 0 12px;padding:0;display:flex;flex-direction:column;gap:6px}.tv-slide{display:flex;align-items:center;gap:10px;background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:8px 10px}.tv-slide--off{opacity:.55}.tv-slide__order{display:flex;flex-direction:column;gap:2px}.tv-slide__order .btn{padding:0 8px;line-height:1.4}.tv-slide__thumb{width:64px;height:36px;border-radius:6px;object-fit:cover;flex:none;background:var(--brand-navy)}.tv-slide__thumb--built-in{display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700}.tv-slide__name{display:flex;align-items:center;gap:8px;flex:1;min-width:0;cursor:pointer}.tv-slide__name>span{display:flex;flex-direction:column;min-width:0}.tv-slide__name strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tv-slide__seconds{display:flex;align-items:center;gap:4px}.tv-slide__seconds input{width:64px}.tv-screen__row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.tv-screen__grid{grid-template-columns:1fr 2fr 140px;margin-top:8px}.tv-screen__app{margin-top:28px;padding-top:16px;border-top:1px solid var(--border)}.tv-screen__setup{margin:12px 0}.tv-screen__setup summary{cursor:pointer;font-size:.9rem;font-weight:600}.tv-screen__commands{background:var(--brand-navy);color:#fff;border-radius:8px;padding:10px 12px;font-size:.8rem;overflow-x:auto}.tv-devices{list-style:none;margin:8px 0 12px;padding:0;display:flex;flex-direction:column;gap:6px}.tv-device{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:8px 10px}.tv-device input,.tv-pair input{padding:7px 9px;border:1px solid var(--border);border-radius:8px;font:inherit;font-size:.9rem;color:var(--text);background:var(--panel);min-width:0}.tv-device input{width:200px;font-weight:600}.tv-device__info{flex:1;min-width:160px}.tv-pair input{width:220px}.tv-pair .tv-pair__code{width:150px;letter-spacing:.1em;font-weight:700}.tv-pair .tv-pair__code::placeholder{letter-spacing:normal;font-weight:400}.tv-screen__own-app>summary{cursor:pointer}.tv-screen__link{margin-top:16px;display:flex;flex-direction:column;gap:6px}@media (max-width: 700px){.tv-screen__grid{grid-template-columns:1fr}.tv-slide{flex-wrap:wrap}}.tv-screen a.btn{text-decoration:none;display:inline-block}.admin{height:100vh;height:100dvh;overflow-y:auto}.admin .app-header{position:sticky;top:0;z-index:10}.admin__login-title{margin:0;text-align:center;color:var(--brand-navy);font-size:1.1rem}.admin__account{display:flex;align-items:center;gap:12px;min-width:0}.admin__account a.btn{text-decoration:none;display:inline-block;white-space:nowrap}@media (max-width: 560px){.admin__account>.muted{display:none}}.admin__main{max-width:1000px;margin:0 auto;padding:20px 16px 48px}.admin__toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.admin__toolbar h2{margin:0}.admin__card{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:16px 20px;margin-bottom:16px}.admin__card h3{margin:0;font-size:1.05rem}.admin__card h4{margin:12px 0 8px;font-size:.9rem}.admin__card-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.admin__details{display:grid;grid-template-columns:160px 1fr;gap:6px 12px;margin:12px 0 0;font-size:.9rem}.admin__details dt{color:var(--muted)}.admin__details dd{margin:0;min-width:0;overflow-wrap:anywhere}.admin__url{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.admin__url code{font-size:.8rem;overflow-wrap:anywhere}.admin__form{margin-top:12px}.admin__form .form-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}.admin__actions{display:flex;justify-content:flex-end;gap:8px}.admin__logins{border-top:1px solid var(--border);margin-top:16px;padding-top:4px}.admin__login{padding:8px 0;border-bottom:1px solid var(--border)}.admin__login:last-of-type{border-bottom:none}.admin__login-row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.admin__login-who{display:flex;flex-direction:column;gap:2px;min-width:0;overflow-wrap:anywhere}.admin__login-buttons{display:flex;gap:6px}.admin__disabled{color:var(--muted);text-decoration:line-through}.admin__inline-form{background:var(--bg);border-radius:8px;padding:12px}@media (max-width: 600px){.admin__details{grid-template-columns:1fr}.admin__details dd{margin-bottom:6px}}.reminder-dialog{width:100%;max-width:420px;display:flex;flex-direction:column;gap:12px}.reminder-dialog__time{display:flex;align-items:flex-end;gap:8px}.reminder-dialog__time label{display:flex;flex-direction:column;gap:4px;font-size:.8rem;color:var(--muted)}.reminder-dialog__time select{font-size:1.2rem;padding:6px 10px;min-width:80px}.reminder-dialog__colon{font-size:1.4rem;font-weight:600;padding-bottom:6px}.reminder-dialog textarea{width:100%;resize:vertical;font:inherit}.dash-reminder{padding:6px 0 8px;border-bottom:1px solid var(--border);margin-bottom:6px}.dash-reminder__head{display:flex;align-items:center;gap:8px}.dash-reminder__when{font-weight:600;font-size:.9rem}.dash-reminder__delete{margin-left:auto;border:none;background:none;color:var(--muted);cursor:pointer;font-size:.85rem;padding:2px 6px;border-radius:6px}.dash-reminder__delete:hover{background:var(--bg);color:inherit}.dash-reminder__note{white-space:pre-wrap;overflow-wrap:anywhere;font-size:.92rem;margin-top:2px}.dash-reminders-more{margin:0 0 8px}.donut{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:4px 0 12px}.donut svg{flex-shrink:0}.donut__slice{stroke:var(--panel);stroke-width:2px;transition:opacity .12s;cursor:default}.donut__value{font-size:17px;font-weight:700;fill:var(--text);font-variant-numeric:tabular-nums}.donut__caption{font-size:10px;fill:var(--muted)}.donut__legend{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:4px 10px;align-items:center;font-size:.84rem;flex:0 1 380px;min-width:200px}.donut__legend li{display:contents}.donut__legend-item--active>*{font-weight:600}.donut__swatch{width:10px;height:10px;border-radius:3px}.donut__label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.donut__num,.donut__share{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.payment-row{border:1px solid var(--border);border-radius:10px;padding:10px 12px;margin:8px 0;font-size:.88rem;background:var(--panel, #fff)}.payment-row .smart-home__actions{margin-top:8px;flex-wrap:wrap}.payment-row__url{flex:1 1 240px;min-width:0;font-size:.8rem;padding:6px 8px;border:1px solid var(--border);border-radius:6px;color:var(--muted)}.payment-status{font-weight:600}.payment-status--open{color:#9a6700}.payment-status--paid{color:var(--primary-dark)}.payment-status--refunded,.payment-status--partly_refunded{color:#2b5797}.payment-status--cancelled{color:var(--muted)}.booking-form__wide{grid-column:1 / -1}.customers__bookings{width:300px}.customers__bookings-heading{padding:10px 16px 4px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.customers__bookings .conv-item__address{white-space:normal}.customer-conversation{display:flex;flex-direction:column;gap:10px;max-height:70vh;overflow-y:auto;padding:8px 4px;background:var(--bg);border-radius:8px}.book{max-width:860px;margin:0 auto;padding:16px;display:flex;flex-direction:column;gap:12px}.book--embedded{padding:4px}body:has(.book--embedded){background:transparent}.book__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.book__title{font-size:1.35rem;margin:0;color:var(--brand-navy)}.book__section{font-size:1.05rem;margin:0}.book__muted{color:var(--muted);font-size:.88rem}.book__small{font-size:.8rem}.book__card{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:10px}.book__lang{display:flex;border:1px solid var(--border);border-radius:8px;overflow:hidden;flex-shrink:0}.book__lang-btn{border:none;background:var(--panel);padding:6px 10px;font:inherit;font-size:.8rem;font-weight:600;color:var(--muted);cursor:pointer}.book__lang-btn--on{background:var(--brand-navy);color:#fff}.book__picker-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.book__step-hint{font-weight:600;color:var(--brand-navy);text-align:center}.book__nav{width:36px;height:36px;border-radius:50%;border:1px solid var(--border);background:var(--panel);font-size:1.3rem;line-height:1;cursor:pointer;color:var(--text)}.book__nav:disabled{opacity:.35;cursor:default}.book__months{display:grid;grid-template-columns:1fr 1fr;gap:24px}.book__months>:nth-child(2){display:block}@media (max-width: 640px){.book__months{grid-template-columns:1fr}.book__months>:nth-child(2){display:none}}.book__month-name{text-align:center;font-weight:600;text-transform:capitalize;margin-bottom:8px}.book__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.book__weekday{text-align:center;font-size:.72rem;color:var(--muted);padding-bottom:4px}.book__day{aspect-ratio:1 / 1;min-width:0;border:none;border-radius:8px;padding:2px;font:inherit;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;background:transparent;color:var(--text)}.book__day-num{font-size:.9rem;font-weight:600}.book__day-price{font-size:.62rem;color:var(--muted)}.book__day--open{background:var(--accent)}.book__day--taken{color:#b6bcc6;text-decoration:line-through}.book__day--pickable{cursor:pointer}@media (hover: hover){.book__day--pickable:hover{outline:2px solid var(--primary)}}.book__day:disabled{cursor:default}.book__day--range{background:#c9ebe5;text-decoration:none;color:var(--text)}.book__day--start,.book__day--end{background:var(--primary);color:#fff;text-decoration:none}.book__day--start .book__day-price,.book__day--end .book__day-price{color:#ffffffd9}.book__day--out{box-shadow:inset 0 0 0 2px var(--primary)}.book__legend{display:flex;flex-wrap:wrap;gap:14px;align-items:center}.book__swatch{display:inline-block;width:12px;height:12px;border-radius:3px;vertical-align:-1px}.book__swatch--open{background:var(--accent);border:1px solid #b9ddd6}.book__swatch--taken{background:#eef0f3}.book__summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px}.book__select{display:block;margin-top:2px;padding:4px 8px;font:inherit;border:1px solid var(--border);border-radius:6px}.book__wide{width:100%;padding:12px 16px;font-size:1rem;text-align:center;text-decoration:none;display:block}.book__hold-note{margin:8px 0 0;text-align:center;line-height:1.45}.book__error{color:var(--danger);margin:0;font-size:.9rem}.book__form label{display:flex;flex-direction:column;gap:4px;font-size:.85rem;color:var(--muted);flex:1;min-width:0}.book__form input,.book__form textarea{font:inherit;font-size:1rem;color:var(--text);padding:9px 10px;border:1px solid var(--border);border-radius:8px;width:100%}.book__row{display:flex;gap:10px}@media (max-width: 560px){.book__row{flex-direction:column}}.book__cui{display:flex;gap:6px;align-items:stretch}.book__cui input{flex:1;min-width:0}.book__cui-check{white-space:nowrap;padding:6px 12px;font-size:.85rem}.book__company{border:1px solid var(--border);border-radius:10px;padding:10px 12px 12px;margin:0;display:flex;flex-direction:column;gap:8px}.book__company legend{padding:0 6px;font-size:.85rem;font-weight:600;color:var(--text)}.book__company p{margin:0}.book__form .book__check{flex-direction:row;align-items:flex-start;gap:8px;color:var(--text);font-size:.9rem}.book__form .book__check input{width:auto;margin-top:3px}.book__trap{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}.book__done-title{margin:0;color:var(--primary-dark);font-size:1.25rem}.book__done-title--late{color:var(--danger)}.book__countdown{text-align:center;font-weight:700;font-variant-numeric:tabular-nums;color:var(--brand-navy)}.book__contact{margin-top:6px;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;font-size:.9rem}.book__contact a{color:inherit}.book__contact-links{display:inline-flex;gap:12px}.book__contact-links a{color:var(--primary);text-decoration:none;font-weight:600}.book__bank{background:var(--bg);border-radius:10px;padding:12px 14px;display:flex;flex-direction:column;gap:3px;overflow-wrap:anywhere}.book__powered{text-align:center}.book__powered a{color:var(--muted)}.booking-page__link{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.booking-page__link a{overflow-wrap:anywhere;min-width:0}.booking-page__dates{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:10px}.booking-page__dates label{display:flex;flex-direction:column;gap:4px;font-size:.85rem;color:var(--muted)}.booking-page__dates input{font:inherit;padding:6px 8px;border:1px solid var(--border);border-radius:6px}.booking-page__dates input[type=number]{width:80px}.booking-page__snippet{white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 8px}.reviews{display:flex;flex-direction:column;gap:16px}.reviews h4{margin:14px 0 8px;font-size:.95rem}.reviews__overview{display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin:8px 0}.reviews__sources-row{display:flex;align-items:flex-start;gap:28px;flex-wrap:wrap}.reviews__source-score{min-width:110px}.reviews__actions{margin-left:auto;display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-end;max-width:460px}.reviews__actions .muted{flex-basis:100%;text-align:right}.reviews__categories{display:flex;flex-wrap:wrap;gap:6px;max-width:420px;align-content:flex-start}.reviews__category{font-size:.78rem;background:#e6eefc;color:#003580;border-radius:999px;padding:3px 9px}.reviews__summary{line-height:1.5}.reviews__table td{vertical-align:top}.reviews__own-row td{background:var(--accent)}.market-row-detail .reviews__categories{margin-top:10px;max-width:none}.reviews__columns{display:grid;grid-template-columns:1fr 1fr;gap:24px}@media (max-width: 900px){.reviews__columns{grid-template-columns:1fr}}.reviews__theme{padding:10px 0;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:4px}.reviews__theme-head{display:flex;justify-content:space-between;gap:10px;align-items:baseline}.reviews__mentions{background:none;border:none;padding:0;font:inherit;font-size:.8rem;color:var(--primary-dark);text-decoration:underline;cursor:pointer;white-space:nowrap}.reviews__bar{height:6px;background:var(--bg);border-radius:3px;overflow:hidden}.reviews__bar span{display:block;height:100%;border-radius:3px}.reviews__themes--pros .reviews__bar span{background:#1baf7a}.reviews__themes--cons .reviews__bar span{background:#e34948}.reviews__quote{color:var(--muted);font-style:italic}.reviews__again{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:8px}.reviews__filters select{font:inherit;font-size:.9rem;padding:7px 9px;border:1px solid var(--border);border-radius:8px;background:var(--panel)}.reviews__filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:4px}.reviews__chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:.85rem;background:var(--accent);color:var(--primary-dark)}.reviews__chip button{border:none;background:none;cursor:pointer;font-size:1rem;color:inherit;padding:0}.review{padding:12px 0;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:6px}.review__head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.review__source{font-size:.72rem;font-weight:700;padding:2px 8px;border-radius:999px;background:var(--bg);color:var(--text)}.review__source--google{background:#e8f0fe;color:#1a56c4}.review__source--booking{background:#e6eefc;color:#003580}.review__source--airbnb{background:#ffe9ec;color:#c8102e}.review__score{color:#e0a200;letter-spacing:1px;font-size:.9rem}.review__sentiment{font-size:.72rem;padding:2px 8px;border-radius:999px}.review__sentiment--positive{background:#e3f6ee;color:#12805a}.review__sentiment--mixed{background:#fdf3dc;color:#946600}.review__sentiment--negative{background:#fdecec;color:var(--danger)}.review__body{white-space:pre-wrap;line-height:1.45;font-size:.92rem}.review__body--clamped{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.review__more{align-self:flex-start}.review__reply{color:var(--muted);border-left:3px solid var(--border);padding-left:10px;white-space:pre-wrap}.listing-links{display:grid;grid-template-columns:1fr 1fr;gap:10px}@media (max-width: 700px){.listing-links{grid-template-columns:1fr}}.listing-links label{display:flex;flex-direction:column;gap:4px;font-size:.85rem;color:var(--muted)}.listing-links input{font:inherit;font-size:.92rem;padding:7px 9px;border:1px solid var(--border);border-radius:8px}.cui-field{display:flex;gap:6px;align-items:center}.cui-field input{flex:1;min-width:0}.booking-form .booking-form__auto-checkout{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:8px;font-size:.9rem;color:var(--text);cursor:pointer;text-align:left}.booking-form .booking-form__auto-checkout input{width:auto;margin:0;flex:none}.room-row{display:grid;grid-template-columns:2fr repeat(3,.8fr) 1fr .8fr auto;gap:8px;margin-bottom:8px;align-items:center}.room-row input{padding:8px 10px;border-radius:8px;border:1px solid var(--border);font-size:.88rem;min-width:0}.room-row--head{margin-bottom:4px}.room-row__actions{display:flex;gap:4px}@media (max-width: 640px){.room-row{grid-template-columns:repeat(3,1fr)}.room-row input:first-child{grid-column:1 / -1}.room-row--head{display:none}}.price-chat{margin-top:0}.price-chat__messages{max-height:360px}.price-chat__form{display:flex;gap:8px}.price-chat__form input{flex:1;min-width:0;padding:8px 10px;border-radius:8px;border:1px solid var(--border);font-size:.9rem}.price-proposal{margin-top:8px;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:var(--panel);color:var(--text)}.price-proposal--applied{opacity:.75}.price-proposal__lines{margin:0 0 6px;padding-left:18px;font-size:.88rem;line-height:1.45}.price-proposal__warning{margin:4px 0}.price-proposal__actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.price-latest{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:8px}.calendar-cell--preview{box-shadow:inset 0 0 0 2px #e0a100}.booking-rooms{border:1px solid var(--border);border-radius:8px;padding:8px 10px;margin:8px 0 12px}.booking-rooms__head{display:flex;justify-content:space-between;align-items:center;gap:12px;font-weight:600;margin-bottom:4px}.booking-rooms__guests{display:flex;align-items:center;gap:6px;font-weight:400;font-size:.88rem}.booking-rooms__guests input{width:64px;padding:4px 6px;border-radius:6px;border:1px solid var(--border)}.booking-rooms__room{display:flex;gap:8px;align-items:baseline;padding:3px 0;font-size:.9rem;cursor:pointer}.booking-rooms__room--taken{opacity:.6;cursor:default}.booking-rooms__taken{color:var(--danger)}.calendar-cell--partial{background:#f3f7e6}.calendar-cell__rooms{font-size:.78rem;font-weight:700;color:#8f2d2d;text-align:left;font-variant-numeric:tabular-nums}.calendar-cell__rooms--full{color:#8f2d2d}.calendar-rooms{list-style:none;margin:8px 0;padding:0;display:grid;gap:4px}.calendar-rooms__room{display:flex;flex-wrap:wrap;gap:6px;align-items:baseline;font-size:.88rem}.calendar-rooms__state{margin-left:auto;color:var(--muted)}.calendar-rooms__room--open .calendar-rooms__state{color:#1f7a3d}.calendar-rooms__room--guest .calendar-rooms__state{color:#8f2d2d}.day-menu__rooms{display:flex;flex-direction:column;gap:2px;padding:2px 4px 6px;border-bottom:1px solid var(--border);margin-bottom:4px}.day-menu__room{display:flex;align-items:center;gap:6px;font-size:.85rem;padding:2px 4px}.day-menu__room-name{font-weight:600}.day-menu__room-state{margin-left:auto;font-size:.78rem;color:var(--muted)}.day-menu__room-state--open{color:#1f7a3d}.book__rooms{display:flex;flex-direction:column;gap:6px;border-top:1px solid var(--border);padding-top:10px}.book__rooms-head{display:flex;flex-direction:column;gap:2px}.book__room{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;padding:8px 10px;border:1px solid var(--border);border-radius:10px}.book__room--chosen{border-color:var(--primary);background:var(--accent)}.book__room-price{font-weight:600;font-variant-numeric:tabular-nums}.services__rooms{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:6px}.services__room{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:6px 0;border-bottom:1px solid var(--border)}.room-row__rates{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:-4px}.room-rate{display:inline-flex;align-items:center;gap:4px}.book__gallery{display:grid;gap:8px;grid-template-columns:2fr 1fr 1.3fr;grid-template-rows:130px 130px}.book__photo{padding:0;border:none;border-radius:10px;overflow:hidden;cursor:zoom-in;background:var(--border);min-height:0}.book__photo img{width:100%;height:100%;object-fit:cover;display:block}.book__gallery--3 .book__photo:first-child{grid-row:1 / 3}.book__map{position:relative;border-radius:10px;overflow:hidden;border:1px solid var(--border);background:var(--border);min-height:0}.book__map iframe{width:100%;height:100%;border:0;display:block}.book__gallery--1,.book__gallery--2,.book__gallery--0{grid-template-rows:220px;grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:1fr}.book__gallery--3 .book__map{grid-column:3;grid-row:1 / 3}.book__gallery--3:not(.book__gallery--map){grid-template-columns:2fr 1fr}.book__zoom{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#000000e0;display:flex;align-items:center;justify-content:center;padding:16px;cursor:zoom-out}.book__zoom img{max-width:100%;max-height:100%;border-radius:8px}.book__zoom-close{position:absolute;top:12px;right:12px;width:40px;height:40px;border-radius:50%;border:none;background:#ffffffe6;font-size:1.1rem;cursor:pointer}@media (max-width: 640px){.book__gallery--3,.book__gallery--3:not(.book__gallery--map){grid-template-columns:1fr 1fr;grid-template-rows:190px 110px;grid-auto-rows:150px}.book__gallery--3 .book__photo:first-child,.book__gallery--3 .book__map{grid-column:1 / -1;grid-row:auto}.book__gallery--1,.book__gallery--2,.book__gallery--0{grid-template-rows:160px}}.property-photos{display:flex;flex-wrap:wrap;gap:10px}.property-photos__item{position:relative;width:160px;height:110px;border-radius:8px;overflow:hidden;background:var(--border)}.property-photos__item:first-child{width:220px}.property-photos__item img{width:100%;height:100%;object-fit:cover;display:block}.property-photos__remove{position:absolute;top:6px;right:6px;width:26px;height:26px;border-radius:50%;border:none;background:#ffffffeb;cursor:pointer;font-size:.8rem}.property-photos__add{width:160px;height:110px;border:2px dashed var(--border);border-radius:8px;display:flex;align-items:center;justify-content:center;text-align:center;padding:8px;color:var(--brand-navy);font-weight:600;font-size:.85rem;cursor:pointer}.property-photos__add input{display:none}.property-photos__add--busy{opacity:.6;cursor:progress}.affiliates__form{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.affiliates__cui{grid-column:span 2}@media (max-width: 640px){.affiliates__cui{grid-column:auto}}.affiliate{border-top:1px solid var(--border);padding-top:16px}.affiliate__head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px}.affiliate__table .num{text-align:right;white-space:nowrap}.affiliate__settled td{color:var(--muted)}.affiliate__actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;justify-content:flex-end}.affiliate__actions>span{margin-right:auto}.guest__ev-last{margin-bottom:10px}.guest__ev-last p{margin:0 0 6px}a.guest__action{display:block;text-align:center;text-decoration:none;box-sizing:border-box}.btn--danger-text{color:var(--danger)}.sgh-links{margin-top:12px;display:flex;flex-direction:column;gap:8px}.sgh-links__row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;border:1px solid var(--border, #e3e6ea);border-radius:8px;padding:8px 10px}.sgh-links__text{flex:1 1 240px;min-width:0}.sgh-links__url{display:block;font-size:.8rem;overflow-wrap:anywhere;margin-top:2px}.dash-badge--ev{background:#fff4d6;color:#8a5a00}.smart-home__heading--toggle{display:flex;align-items:center;gap:14px}.smart-home__heading--toggle .smart-home__check{font-size:.85rem;font-weight:500}.dash-openers{display:flex;gap:10px;flex-wrap:wrap}.dash-openers .dash-gate{flex:1 1 140px}.guest__openers{display:flex;gap:10px;flex-wrap:wrap}.guest__openers .guest__action{flex:1 1 140px;width:auto}.guest__modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;padding:16px;z-index:50}.guest__modal{background:var(--panel, #fff);border-radius:14px;padding:22px 18px 18px;width:100%;max-width:360px;text-align:center;display:flex;flex-direction:column;gap:12px;box-shadow:0 12px 40px #0003}.guest__modal-icon{font-size:2.2rem;line-height:1}.guest__modal-text{margin:0;font-size:1.05rem;font-weight:600}.guest__modal-contact{display:flex;flex-direction:column;gap:8px}.guest__modal-phone{font-size:1.15rem;font-weight:700;color:var(--brand-navy)}.market-subscribers{display:flex;flex-direction:column;gap:6px}.market-subscriber{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px}.book__terms{border:1px solid var(--border);border-radius:8px;padding:8px 12px;font-size:.9rem}.book__terms summary{cursor:pointer;font-weight:600}.book__terms-text{white-space:pre-line;max-height:320px;overflow-y:auto;margin-top:8px;color:var(--text);line-height:1.5;font-size:.85rem}.regulatory p{line-height:1.55}.regulatory__list{margin:0;padding-left:20px;line-height:1.55;display:flex;flex-direction:column;gap:6px}.regulatory__table-wrap{overflow-x:auto}.regulatory__table{width:100%;border-collapse:collapse;font-size:.88rem}.regulatory__table th,.regulatory__table td{text-align:left;padding:6px 8px;border-bottom:1px solid var(--border);vertical-align:top}.regulatory__table th{font-weight:600;color:var(--muted, #6e7781)}
