/* HiHiro V10 · Owner desktop unified three-pane workspace.
   Desktop site in mobile Chrome uses desktop CSS width >=891px.
   All rules are strictly scoped to desktop, no changed JS/event behavior. */
body.service-os .desktop-chat-pane-header{display:none!important}
body.service-os .desktop-service-pane-footer{display:none!important}
@media (min-width:891px) {
  html[data-theme="light"] body.service-os {
    --unified-edge:#c5d7e8;
    --unified-divider:#d1e1ef;
    --unified-shell:#f8fbff;
    --unified-surface:#f8fbff;
    --unified-header:#eaf2fa;
    --unified-footer:#eff5fb;
    --unified-ink:#193550;
    --unified-muted:#4b6883;
    --unified-focus:#1764a9;
  }
  html[data-theme="dark"] body.service-os {
    --unified-edge:#385471;
    --unified-divider:#284561;
    --unified-shell:#0b2037;
    --unified-surface:#0b223a;
    --unified-header:#112d49;
    --unified-footer:#0b253f;
    --unified-ink:#ecf4ff;
    --unified-muted:#b2c9e2;
    --unified-focus:#f1c575;
  }
  body.service-os .service-main {
    padding:8px 0 0!important;
    box-sizing:border-box!important;
    min-height:0!important;
    overflow:hidden!important;
  }
  body.service-os .service-main > #service-shell.service-shell {
    --unified-title-h:58px;
    --unified-bottom-h:118px;
    display:grid!important;
    direction:ltr!important;
    grid-template-areas:"services chat projects"!important;
    grid-template-columns:clamp(232px,21vw,272px) minmax(0,1fr) clamp(215px,18vw,255px)!important;
    grid-template-rows:minmax(0,1fr)!important;
    gap:0!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    padding:0!important;
    overflow:hidden!important;
    border:1px solid var(--unified-edge)!important;
    border-radius:16px!important;
    background:var(--unified-shell)!important;
    box-shadow:0 10px 28px rgba(8,28,53,.10)!important;
    isolation:isolate;
    box-sizing:border-box!important;
  }
  body.service-os #service-shell > .service-catalog,
  body.service-os #service-shell > .service-workspace-track > .service-workbench,
  body.service-os #service-shell > .service-workspace-track > .service-project-pane {
    min-width:0!important;
    min-height:0!important;
    width:100%!important;
    height:100%!important;
    max-height:100%!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
    border-radius:0!important;
    background:var(--unified-surface)!important;
    box-shadow:none!important;
    overflow:hidden!important;
  }
  body.service-os #service-shell > .service-workspace-track { display:contents!important; }
  body.service-os #service-shell > .service-catalog {
    grid-area:services!important;
    grid-column:1!important;
    display:flex!important;
    flex-direction:column!important;
    border-right:1px solid var(--unified-divider)!important;
  }
  body.service-os #service-shell > .service-workspace-track > .service-workbench {
    grid-area:chat!important;
    grid-column:2!important;
    display:flex!important;
    flex-direction:column!important;
  }
  body.service-os #service-shell > .service-workspace-track > .service-project-pane {
    grid-area:projects!important;
    grid-column:3!important;
    display:flex!important;
    flex-direction:column!important;
    border-left:1px solid var(--unified-divider)!important;
  }
  body.service-os #service-shell :is(.service-catalog,.service-project-pane,.service-workbench,.conversation-column){
    box-shadow:none!important;
  }
  body.service-os #service-shell .conversation-workspace,
  body.service-os #service-shell .conversation-column,
  body.service-os #service-shell .workbench-body,
  body.service-os #service-shell .stage-area {
    min-height:0!important;
    max-height:100%!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
  }
  body.service-os #service-shell .conversation-column {
    display:flex!important;
    flex-direction:column!important;
    height:100%!important;
    background:var(--unified-surface)!important;
    overflow:hidden!important;
  }
  body.service-os #service-shell :is(.catalog-head,.service-project-header,.desktop-chat-pane-header){
    flex:0 0 var(--unified-title-h)!important;
    width:100%!important;
    min-width:0!important;
    height:var(--unified-title-h)!important;
    min-height:var(--unified-title-h)!important;
    max-height:var(--unified-title-h)!important;
    box-sizing:border-box!important;
    padding:0 12px!important;
    margin:0!important;
    display:flex!important;
    align-items:center!important;
    gap:9px!important;
    background:var(--unified-header)!important;
    border:0!important;
    border-bottom:1px solid var(--unified-divider)!important;
    border-radius:0!important;
    box-shadow:none!important;
    color:var(--unified-ink)!important;
  }
  body.service-os #service-shell .desktop-chat-pane-header {
    position:relative!important;
    z-index:1;
    justify-content:center!important;
    text-align:center!important;
    direction:ltr!important;
  }
  body.service-os #service-shell .desktop-chat-pane-header b{
    color:var(--unified-ink)!important;
    font-size:.81rem!important;
    font-weight:850!important;
    letter-spacing:.01em;
    white-space:nowrap!important;
    line-height:1.3!important;
  }
  body.service-os #service-shell .desktop-chat-pane-header-mark{
    display:grid;
    place-items:center;
    width:30px;
    height:30px;
    border:1px solid var(--unified-edge);
    border-radius:9px;
    color:var(--unified-ink);
    background:transparent;
  }
  body.service-os #service-shell .desktop-chat-pane-header-mark svg{
    display:block;width:17px;height:17px;
    fill:none;stroke:currentColor;stroke-width:1.8;
    stroke-linecap:round;stroke-linejoin:round;
  }
  body.service-os #service-shell .service-catalog > .catalog-head,
  body.service-os #service-shell .service-project-pane > .service-project-header {
    color:var(--unified-ink)!important;
    background:var(--unified-header)!important;
  }
  body.service-os #service-shell .catalog-head-copy b,
  body.service-os #service-shell .service-project-header b {
    color:var(--unified-ink)!important;
  }
  body.service-os #service-shell .service-project-header-mark,
  body.service-os #service-shell .catalog-head-icon {
    border:1px solid var(--unified-edge)!important;
    background:transparent!important;
    color:var(--unified-ink)!important;
  }
  body.service-os #service-shell .service-catalog .catalog-search {
    flex:0 0 auto!important;
    margin:10px 9px!important;
    width:calc(100% - 18px)!important;
    box-sizing:border-box!important;
  }
  body.service-os #service-shell .service-catalog #service-tree{
    flex:1 1 0!important;
    min-height:0!important;
    height:auto!important;
    max-height:none!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    scrollbar-gutter:stable;
  }
  /* The Services rail intentionally has a quiet bottom strip, perfectly aligned
     with the action footer of Chat and Projects. No synthetic marketing text. */
  body.service-os #service-shell > .service-catalog::after{content:none!important;display:none!important}
  body.service-os #service-shell > .service-catalog > .desktop-service-pane-footer {
    display:block!important;
    flex:0 0 var(--unified-bottom-h)!important;
    height:var(--unified-bottom-h)!important;
    box-sizing:border-box!important;
    background:var(--unified-footer)!important;
    border-top:1px solid var(--unified-divider)!important;
  }
  body.service-os #service-shell .conversation-column > .chat-hero { display:none!important; }
  body.service-os #service-shell .conversation-column > #stage-2.conversation-panel:not([hidden]) {
    flex:1 1 0!important;
    padding:0!important;
    margin:0!important;
    box-sizing:border-box!important;
    min-height:0!important;
    height:auto!important;
    max-height:100%!important;
    display:flex!important;
    flex-direction:column!important;
    background:var(--unified-surface)!important;
  }
  /* Empty or transient validation errors formerly occupied a 7px last flex
     row even with no text, lifting the composer above the unified footer.
     Position actual warnings over the transcript, never displace controls. */
  body.service-os #service-shell #stage-2.conversation-panel:not([hidden]) {
    position:relative!important;
  }
  body.service-os #service-shell #stage-2 > .visitor-error {
    position:absolute!important;
    inset:auto 10px calc(var(--unified-bottom-h) + 6px) 10px!important;
    width:auto!important;
    max-width:calc(100% - 20px)!important;
    margin:0!important;
    padding:4px 9px!important;
    min-height:0!important;
    border:1px solid rgba(191,81,92,.25);
    border-radius:8px;
    background:var(--unified-header)!important;
    z-index:38!important;
    pointer-events:none;
  }
  body.service-os #service-shell #stage-2 > .visitor-error:empty,
  body.service-os #service-shell #stage-2 > .visitor-error[hidden]{
    display:none!important;
  }
  body.service-os #service-shell #stage-2 > .stage-head {display:none!important}
  body.service-os #service-shell #operation-service-summary.chat-workspace-status:not([hidden]){
    flex:0 0 auto!important;
    height:50px!important;
    min-height:50px!important;
    max-height:50px!important;
    border-top:0!important;
    border-bottom:1px solid var(--unified-divider)!important;
    background:var(--unified-header)!important;
  }
  body.service-os #service-shell #stage-2 > #chat-scroll.chat-scroll{
    flex:1 1 0!important;
    min-height:0!important;
    max-height:none!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    background:var(--unified-surface)!important;
  }
  body.service-os #service-shell #stage-2 > .agent-composer {
    flex:0 0 var(--unified-bottom-h)!important;
    width:100%!important;
    height:var(--unified-bottom-h)!important;
    min-height:var(--unified-bottom-h)!important;
    max-height:var(--unified-bottom-h)!important;
    box-sizing:border-box!important;
    margin:0!important;
    padding:7px 10px!important;
    border:0!important;
    border-top:1px solid var(--unified-divider)!important;
    border-radius:0!important;
    background:var(--unified-footer)!important;
    box-shadow:none!important;
    overflow:hidden!important;
  }
  body.service-os #service-shell #stage-2 > .agent-composer textarea {
    min-height:54px!important;
    height:54px!important;
    max-height:54px!important;
    resize:none!important;
    box-sizing:border-box!important;
  }
  body.service-os #service-shell #stage-2 > .agent-composer .composer-bottom {
    margin-top:4px!important;
    padding-top:4px!important;
    min-height:34px!important;
  }
  body.service-os #service-shell .service-project-tree-heading {
    flex:0 0 auto!important;
    background:var(--unified-surface)!important;
    border-bottom:1px solid var(--unified-divider)!important;
  }
  body.service-os #service-shell .service-project-list {
    flex:1 1 0!important;
    min-height:0!important;
    max-height:none!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    scrollbar-gutter:stable;
  }
  body.service-os #service-shell .service-project-new {
    flex:0 0 var(--unified-bottom-h)!important;
    height:var(--unified-bottom-h)!important;
    min-height:var(--unified-bottom-h)!important;
    max-height:var(--unified-bottom-h)!important;
    margin:0!important;
    padding:12px!important;
    width:100%!important;
    box-sizing:border-box!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    border:0!important;
    border-top:1px solid var(--unified-divider)!important;
    border-radius:0!important;
    background:var(--unified-footer)!important;
    color:var(--unified-ink)!important;
  }
  body.service-os #service-shell .service-project-new span {
    max-width:100%;
    overflow-wrap:anywhere;
  }
  body.service-os #service-shell .service-chat-preview-fab {
    top:8px!important;
    right:10px!important;
    z-index:36!important;
  }
  body.service-os #service-shell .service-chat-preview-fab .service-project-preview-launch {
    min-height:40px!important;
    height:40px!important;
    padding:6px 10px!important;
    border-radius:11px!important;
  }
  body.service-os #service-shell .service-chat-preview-fab .service-project-preview-launch[hidden] {
    display:none!important;
  }
  body.service-os #service-shell .service-project-quote:not([hidden]),
  body.service-os #service-shell .service-project-continue-form:not([hidden]) {
    flex-shrink:0!important;
    max-height:35%!important;
    overflow:auto!important;
  }
  body.service-os #service-shell :is(a,button,input,textarea):focus-visible{
    outline:2px solid var(--unified-focus)!important;
    outline-offset:2px!important;
  }
}
/* Desktop presentation on an Android Chrome 'Desktop site' viewport is identical.
   Mobile/drawer <=890px is unaffected. */
