/* Kuartal Satellites: persistent desktop navigation and minimal command workspace.
 * No agent runtime security or permission handling is replaced by these styles. */
:root {--sat-accent:#27a852;--sat-accent-soft:color-mix(in srgb,var(--sat-accent) 12%,var(--k-bg));}
.app{min-height:100dvh;height:100dvh;overflow:hidden;}
.app > .sidebar{
  position:sticky!important;top:0;left:0;bottom:auto;
  height:100dvh;min-height:0;max-height:100dvh;
  width:270px;flex:0 0 270px;overflow-y:auto;overflow-x:hidden;
  overscroll-behavior:contain;scrollbar-width:thin;box-sizing:border-box;
  z-index:35;transition:width .2s ease,flex-basis .2s ease,padding .2s ease;
}
.app > .sidebar.is-collapsed{
  position:sticky!important;width:0!important;min-width:0!important;
  flex-basis:0!important;padding-left:0!important;padding-right:0!important;
  border:0!important;overflow:hidden!important;visibility:hidden;
}
.app > main{min-width:0;height:100dvh;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;}
.app > main > header{
  position:sticky;top:0;z-index:20;background:var(--k-bg);
  border-bottom:1px solid var(--k-border);
}
#sat-sidebar-toggle{
  display:inline-grid;place-items:center;width:35px;height:35px;
  flex:none;border:0;border-radius:9px;background:transparent;
  color:var(--k-text);cursor:pointer;margin-right:10px;
}
#sat-sidebar-toggle:hover,#sat-sidebar-toggle:focus-visible{background:var(--sat-accent-soft);}
#sat-sidebar-toggle .nv-icon{width:18px;height:18px;}
/* Kuartal.id navigation: neutral active fill, no green rail or edge highlight. */
.sidebar .nav.active,.sidebar .nav:hover{background:var(--k-surface);color:var(--k-text);}
.sidebar .nav.active{font-weight:600;box-shadow:none;border-inline-start:0;}
.workspace-home{max-width:1060px;width:100%;padding:clamp(32px,6vh,65px) clamp(20px,4vw,46px) 65px;}
.workspace-home>h1{font-size:clamp(28px,3.6vw,41px);letter-spacing:-.045em;}
.workspace-home>p{max-width:620px;margin:4px 0 26px;line-height:1.6;}
.workspace-home .workspace-compose{max-width:890px;padding:18px 18px 12px;border-radius:17px;}
.workspace-home .workspace-compose textarea{font-size:14px;min-height:66px;resize:vertical;}
.workspace-home .workspace-compose:focus-within{border-color:var(--sat-accent);box-shadow:none;}
.workspace-home .rt-panel{max-width:890px;margin:14px 0 25px;border-radius:15px;}
.workspace-home .rt-blueprints{display:none;}
.workspace-home .rt-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.workspace-home .rt-picker:focus-within{outline:1px solid var(--sat-accent);}
.workspace-home #command-metrics{margin-top:20px;}
.workspace-home .home-agent-grid{margin-bottom:25px;}
.workspace-home .command-heading{margin:18px 0 10px;}
.workspace-home .command-heading strong{font-weight:600;}
@media(max-width:850px){
  .app > .sidebar,.app > .sidebar.is-collapsed {
    position:fixed!important;top:0;bottom:0;left:0;z-index:90;
    width:min(290px,88vw)!important;min-width:0!important;flex-basis:auto!important;
    padding:16px 11px!important;visibility:visible!important;overflow-y:auto!important;
    transform:translateX(-100%);transition:transform .2s ease!important;
  }
  .app > .sidebar.open{transform:translateX(0)!important;box-shadow:0 0 0 100vw rgb(0 0 0 / .32);}
  #sat-sidebar-toggle{display:none;}
  .app > main{width:100%;}
  .workspace-home{padding:28px 18px 48px;}
}
@media(max-width:620px){.workspace-home .rt-row{grid-template-columns:1fr;}}
@media(prefers-reduced-motion:reduce){.app>.sidebar{transition:none!important;}}

.rt-model-detail{font-size:11px;line-height:1.5;color:var(--k-text-muted);margin:8px 0 13px;}
.rt-row select{width:100%;min-width:0;}
.rt-model-detail::before{content:"";width:6px;height:6px;display:inline-block;background:var(--sat-accent);border-radius:100%;margin-right:7px;vertical-align:middle;}


/* A readable chat-style transcript of actual server runs (no fabricated memory). */
.rt-thread[hidden]{display:none!important;}
.rt-thread{display:grid;gap:13px;max-height:440px;overflow:auto;scrollbar-width:thin;
  padding:12px;margin:9px 0 14px;border:1px solid var(--k-border);border-radius:14px;background:var(--k-bg);}
.rt-thread-pair{display:grid;gap:7px;}
.rt-thread-message{max-width:min(94%,760px);min-width:0;line-height:1.6;padding:12px 14px;border-radius:13px;overflow-wrap:anywhere;}
.rt-thread-message strong{display:block;font-size:11px;margin-bottom:5px;color:var(--k-text-muted);}
.rt-thread-user{justify-self:end;background:var(--sat-accent-soft);border:1px solid var(--k-border);}
.rt-thread-assistant{justify-self:start;background:var(--k-surface-elev);border:1px solid var(--k-border);}
.rt-thread-message p{margin:5px 0;font-size:12px;color:var(--k-text);}
.rt-thread-message .rt-result{font-size:12px;min-width:0;}
.rt-thread-inspect{border:1px solid var(--k-border)!important;border-radius:999px!important;
  background:transparent!important;color:var(--k-text)!important;padding:7px 10px!important;margin-top:9px;font-size:11px!important;}
.rt-thread-inspect:hover{background:var(--sat-accent-soft)!important;}
.rt-thread-empty{font-size:12px;color:var(--k-text-muted);padding:8px 12px;}
.rt-thread-note{color:var(--k-text-muted)!important;font-size:10px;line-height:1.5;margin:0 0 13px;}


/* Functional settings dialog, opened from the sidebar or account menu. */
.sat-settings[hidden]{display:none!important;}
.sat-settings{
  position:fixed;inset:0;z-index:190;display:grid;place-items:center;
  padding:20px;background:rgb(0 0 0 / .38);
}
.sat-settings-card{
  width:min(650px,100%);max-height:calc(100dvh - 40px);overflow-y:auto;
  background:var(--k-surface-elev);border:1px solid var(--k-border);
  color:var(--k-text);border-radius:18px;padding:24px;
  box-shadow:0 20px 55px rgb(0 0 0 / .18);
}
.sat-settings-head{display:flex;justify-content:space-between;align-items:start;gap:20px;
  margin-bottom:18px;background:transparent!important;border-bottom:1px solid var(--k-border);padding-bottom:14px;}
.sat-settings-head small{font-size:10px;letter-spacing:.11em;color:var(--k-text-muted);}
.sat-settings-head h2{font-size:24px;margin:3px 0 0;font-family:var(--k-font-display);font-weight:600;}
.sat-settings-head button{background:transparent;border:1px solid var(--k-border);border-radius:999px;padding:9px 14px;color:var(--k-text);cursor:pointer;}
.sat-settings-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;
  gap:20px;padding:17px 0;border-bottom:1px solid var(--k-border);}
.sat-settings-row strong{font-size:13px;font-weight:600;}
.sat-settings-row p{font-size:11px;line-height:1.6;color:var(--k-text-muted);margin:5px 0 0;}
.sat-settings-themes{display:flex;gap:5px;}
.sat-settings-themes button{border:1px solid var(--k-border);border-radius:9px;padding:9px 12px;
  font-size:11px;color:var(--k-text);background:transparent;cursor:pointer;}
.sat-settings-themes button.active,.sat-settings-themes button[aria-pressed="true"]{background:var(--sat-accent-soft);border-color:var(--sat-accent);font-weight:600;}
.sat-settings :is(button):focus-visible{outline:2px solid var(--k-focus);outline-offset:3px;}
.sat-settings-note{font-size:11px;line-height:1.65;color:var(--k-text-muted);margin:19px 0 0;}
@media(max-width:620px){
  .sat-settings-card{padding:18px;}
  .sat-settings-row{grid-template-columns:1fr;gap:12px;}
}


/* Discover models from authenticated gateway; never hardcode provider availability.
   Neutral Kuartal.id selection, with no colored left rails or fake capability badges. */
.sat-browse-models{display:inline-flex;align-items:center;gap:8px;margin:8px 0 11px;padding:8px 12px;
 border:1px solid var(--k-border);border-radius:999px;background:var(--k-bg);color:var(--k-text);font-size:11px;cursor:pointer;}
.sat-browse-models:hover{background:var(--k-surface);}
.sat-model-dialog[hidden]{display:none!important;}
.sat-model-dialog{position:fixed;inset:0;z-index:180;display:grid;place-items:center;
 padding:20px;background:rgba(0,0,0,.52);}
.sat-model-dialog-card{display:flex;flex-direction:column;width:min(940px,100%);max-height:min(810px,calc(100dvh - 40px));
 overflow:hidden;background:var(--k-bg);color:var(--k-text);border:1px solid var(--k-border);border-radius:18px;
 box-shadow:0 22px 65px rgba(0,0,0,.23);}
.sat-model-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:24px 26px 15px;
 background:var(--k-bg)!important;border-bottom:0!important;}
.sat-model-header h2{font-size:24px;font-weight:600;letter-spacing:-.035em;margin:0;}
.sat-model-header p{font-size:12px;line-height:1.5;margin:6px 0 0;color:var(--k-text-muted);}
.sat-model-header button{flex:none;border:1px solid var(--k-border);background:transparent;color:var(--k-text);
 font-size:11px;padding:9px 14px;border-radius:999px;cursor:pointer;}
.sat-model-header button:hover{background:var(--k-surface);}
.sat-model-toolbar{display:grid;gap:13px;padding:0 26px 16px;border-bottom:1px solid var(--k-border);}
.sat-model-toolbar input{width:100%;min-height:43px;border:1px solid var(--k-border);border-radius:10px;padding:9px 13px;
 background:var(--k-surface);color:var(--k-text);font:inherit;font-size:13px;}
.sat-model-filters{display:flex;flex-wrap:wrap;gap:7px;}
.sat-model-filters button{background:transparent;color:var(--k-text-muted);border:1px solid var(--k-border);
 border-radius:999px;font-size:11px;padding:8px 12px;cursor:pointer;}
.sat-model-filters button:hover,.sat-model-filters button.selected{background:var(--k-surface);color:var(--k-text);}
.sat-model-filters button.selected{border-color:var(--k-text);font-weight:600;}
.sat-model-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-height:0;
 overflow-y:auto;overscroll-behavior:contain;padding:19px 26px;scrollbar-width:thin;}
.sat-model-card{position:relative;display:flex;flex-direction:column;gap:6px;text-align:left;min-height:130px;
 background:var(--k-bg);color:var(--k-text);border:1px solid var(--k-border);border-radius:13px;
 padding:18px;cursor:pointer;overflow-wrap:anywhere;}
.sat-model-card:hover,.sat-model-card:focus-visible,.sat-model-card[aria-pressed="true"]{background:var(--k-surface);}
.sat-model-card[aria-pressed="true"]{outline:1px solid var(--k-text);outline-offset:-1px;}
.sat-model-card:disabled{cursor:not-allowed;opacity:.55;}
.sat-model-card strong{font-size:13px;font-weight:600;}
.sat-model-card small{font-size:11px;color:var(--k-text-muted);}
.sat-model-card p{font-size:11px;line-height:1.55;color:var(--k-text-muted);margin:6px 0 0;}
.sat-model-card.sat-model-auto{grid-column:1/-1;min-height:100px;background:var(--k-surface);}
.sat-model-card.sat-model-auto p{max-width:650px;}
.sat-model-selected{position:absolute;right:13px;top:13px;font-size:10px;font-weight:600;}
.sat-model-empty{font-size:12px;color:var(--k-text-muted);padding:15px;grid-column:1/-1;}
.sat-model-footnote{margin:0;padding:13px 26px;font-size:10px;line-height:1.6;color:var(--k-text-muted);
 border-top:1px solid var(--k-border);}
.sat-model-dialog :is(button,input):focus-visible,.sat-browse-models:focus-visible{outline:2px solid var(--k-focus);outline-offset:2px;}
@media(max-width:680px){
 .sat-model-dialog{padding:0;}
 .sat-model-dialog-card{width:100%;max-height:100dvh;height:100dvh;border:0;border-radius:0;}
 .sat-model-header{padding:20px 16px 13px;}
 .sat-model-toolbar{padding:0 16px 15px;}
 .sat-model-results{grid-template-columns:minmax(0,1fr);padding:16px;}
 .sat-model-footnote{padding:13px 16px;}
}


/* Agent switching opens the working conversation, not the editor.
   Neutral selected item matches Kuartal.id; never draw an accent left edge. */
.sidebar .side-agent[aria-pressed="true"]{
  background:var(--k-surface)!important;color:var(--k-text)!important;
  border-inline-start:0!important;box-shadow:none!important;font-weight:600;
  border-radius:9px;
}
.sidebar .side-agent[aria-pressed="true"]:focus-visible{outline:2px solid var(--k-focus);outline-offset:2px;}


/* Explicit same-satellite follow-up; context is displayed before any run. */
.rt-followup-button,.rt-thread-followup{
  display:inline-flex;align-items:center;justify-content:center;gap:7px;
  margin:10px 6px 0 0;padding:8px 13px;background:var(--k-surface)!important;
  color:var(--k-text)!important;border:1px solid var(--k-border)!important;
  border-radius:999px!important;font-size:11px!important;font-weight:600;
  cursor:pointer;box-shadow:none!important;
}
.rt-followup-button:hover,.rt-thread-followup:hover{background:var(--k-bg-warm)!important;}
.rt-followup-button:focus-visible,.rt-thread-followup:focus-visible{
  outline:2px solid var(--k-focus);outline-offset:2px;
}

/* Show sign-out only for an authenticated Kuartal ID session. */
.account-menu button[hidden]{display:none!important;}
