.thbp-home-tobo-bar{box-sizing:border-box;max-width:960px;margin:0 auto;padding:12px 16px 0;display:flex;justify-content:flex-end}.thbp-home-tobo-bar button{font:inherit;font-weight:600;border:1px solid #d4dbee;border-radius:24px;background:#fff;color:#283875;padding:9px 16px;cursor:pointer}.thbp-home-tobo-bar button:hover,.thbp-home-tobo-bar button:focus-visible{background:#eef0fa;box-shadow:0 0 0 3px #d9dff3}.thbp-home-tobo-panel{position:fixed;z-index:99990;box-sizing:border-box;background:#f5f7fb;border:1px solid #d7ddef;border-radius:18px;box-shadow:0 14px 50px #18234730;display:flex;flex-direction:column;overflow:hidden;color:#1e2852}.thbp-home-tobo-panel[hidden]{display:none!important}.thbp-home-tobo-panel>header{display:flex;align-items:center;gap:12px;padding:12px 14px;background:#fff;border-bottom:1px solid #e0e5f1;flex:none}.thbp-home-tobo-panel>header strong{margin-right:auto}.thbp-home-tobo-panel>header a{font-size:12px;color:#283875}.thbp-home-tobo-panel>header button{border:0;background:transparent;color:inherit;font-size:26px;width:36px;height:36px;cursor:pointer}.thbp-home-tobo-panel #toboHomeBody{flex:1;min-height:0}.thbp-home-tobo-panel iframe{display:block;width:100%;height:100%;border:0}.thbp-home-tobo-panel #toboHomeStatus:not([hidden]){padding:16px}.thbp-home-tobo-panel #toboHomeRetry{margin:0 16px 16px;align-self:flex-start}.thbp-home-tobo-panel [hidden]{display:none!important}

.thbp-home-tobo-panel[hidden]{pointer-events:none!important;box-shadow:none!important}
.tobo-brand-star{background:linear-gradient(135deg,#318cff,#9659ec,#ef6398);color:transparent;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}

/* Keep the launcher and homepage title in one responsive layout.
   Desktop uses a balanced title row; mobile keeps the launcher above the title. */
.thbp-hero-title-row{display:flex;align-items:flex-start;gap:24px}
.thbp-hero-title-row h1{flex:1;min-width:0}
.thbp-hero-title-row .thbp-home-tobo-bar{flex:0 0 auto;max-width:none;margin:0;padding:0;display:flex;justify-content:flex-end}
.thbp-hero-title-row .thbp-home-tobo-bar button{position:static}

@media (max-width:767px){
 .thbp-homepage .thbp-hero{padding-top:4px}
 .thbp-hero-title-row{flex-direction:column;gap:0}
 .thbp-hero-title-row h1{width:100%}
 .thbp-hero-title-row .thbp-home-tobo-bar{order:-1;width:100%;margin:0 0 14px}
}

@media(max-width:760px){
 html.tobo-mobile-open,html.tobo-mobile-open body{overflow:hidden!important;overscroll-behavior:none}
 .thbp-home-tobo-panel{border-radius:0;border:0;max-width:none}
}

@media(max-width:760px){html.tobo-mobile-open #masthead{display:none!important}html.tobo-mobile-open body{position:fixed!important;inset:0;width:100%;height:100%}}

.thbp-home-tobo-panel>header #toboHomeNew{width:auto;font-size:13px;border:1px solid #d8e0ed;border-radius:9px;padding:6px 10px}
@media(max-width:760px){.thbp-home-tobo-panel>header #toboHomeFull{display:none}}

/* iOS can retain synthetic hover on the header link uncovered by Tobo's close
   button. Hover styling is useful only on devices with a real hover pointer. */
@media(hover:none),(pointer:coarse){.add-property-header a:hover{background:#fff}}

/* A single branded header and chat surface, matching the dashboard. */
.thbp-home-tobo-panel{background:#fff;touch-action:pan-y}
.thbp-home-tobo-panel>header{min-height:58px;padding:8px 12px;gap:8px;border-bottom:1px solid #e5e7eb}
.thbp-home-tobo-panel>header strong{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:500;min-width:0}
.thbp-home-tobo-panel>header button{flex-shrink:0;min-height:40px}
.thbp-home-tobo-panel>header #toboHomeNew{font-size:13px;white-space:nowrap}

/* Listing-page launcher stays in normal flow beside the existing page content. */
.thbp-listing-tobo-bar{height:auto;max-width:none;padding:8px 0 12px}
.thbp-listing-tobo-bar button{position:static}

/* Keep the underlying page out of Safari's keyboard animation/repaint area. */
#toboMobileBackdrop{position:fixed;inset:0;min-height:100vh;min-height:100lvh;background:#f5f7fb;z-index:99989;pointer-events:none}
#toboMobileBackdrop[hidden]{display:none!important}
@media(max-width:760px){
 html.tobo-mobile-open,html.tobo-mobile-open body{background:#f5f7fb!important}
 html.tobo-mobile-open body>:not(#toboHomePanel):not(#toboMobileBackdrop),html.tobo-mobile-open body>:not(#toboHomePanel):not(#toboMobileBackdrop) *{visibility:hidden!important}
 html.tobo-mobile-open #toboHomePanel{visibility:visible!important;background:#f5f7fb;isolation:isolate}
}

/* 1.34.108: accessible compact loading indicator, with no opening message. */
#toboHomeStatus.is-loading{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:0;text-align:center}
.tobo-home-loading-mark{display:grid;place-items:center;width:56px;height:56px;border-radius:18px;background:#eef2fa;color:#293b78;font-size:30px;line-height:1}
.tobo-home-loading-name{color:#142653;font-size:19px;font-weight:600;line-height:1.3}
.tobo-home-loading-spinner{display:block;width:20px;height:20px;box-sizing:border-box;border:2px solid #dce2ec;border-top-color:#293b78;border-radius:50%;animation:tobo-loading .8s linear infinite}
@keyframes tobo-loading{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.tobo-home-loading-spinner{animation:none;border-style:dotted}}

@supports(overflow:clip){@media(max-width:760px){html.tobo-mobile-open,html.tobo-mobile-open body{overflow:clip!important}}}

/* Wide screens give Tobo a full-height workspace beside the homepage.
   On smaller desktop screens the same chat opens as a focused, dismissible view. */
.thbp-home-tobo-scrim{position:fixed;inset:0;z-index:99989;background:rgba(15,23,42,.35)}
.thbp-home-tobo-scrim[hidden]{display:none!important}
.thbp-home-tobo-panel.tobo-docked{border-radius:16px;box-shadow:0 12px 38px rgba(20,38,83,.15)}
.thbp-home-tobo-panel.tobo-focused{border-radius:16px;box-shadow:0 20px 60px rgba(20,38,83,.24)}
@media(max-width:760px){.thbp-home-tobo-scrim{display:none!important}.thbp-home-tobo-panel.tobo-focused{border-radius:0}}
