/* CompactCSS source: /ai/styles.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * The Awtsmoos reveals one protected cascade from focused vessels. Awtsmoos.com
 * preserves the tested gate order while nested manifests carry refinements;
 * the canonical audio surface is loaded last so historical layers cannot fight it.
 */

/* CompactCSS source: /ai/css/ideal/tokens.css */
/*B"H
  Chapter 338: The Tokens Stopped Shouting.

  The Awtsmoos gives one root memory for size, color, and motion. Tokens define;
  components decide. Even hidden state now trusts cascade order.
*/
:root{
  color-scheme:dark;
  --awt-bg:#020611;
  --awt-text:#f8fcff;
  --awt-soft:#d7e7f8;
  --awt-muted:#a8bdd3;
  --awt-dim:#7d8ca2;
  --awt-hot:#22e6c4;
  --awt-blue:#2f78ff;
  --awt-violet:#8757ff;
  --awt-red:#ef476f;
  --awt-amber:#fbbf24;
  --awt-line:rgba(125,211,252,.25);
  --awt-line-soft:rgba(148,163,184,.18);
  --awt-line-strong:rgba(45,212,191,.55);
  --awt-input:#06101e;
  --awt-inset:inset 0 1px 0 rgba(255,255,255,.10);
  --awt-shadow-lg:0 30px 90px rgba(0,0,0,.48);
  --awt-shadow-md:0 16px 42px rgba(0,0,0,.30);
  --awt-ring:0 0 0 1px rgba(45,212,191,.28),0 0 40px rgba(34,230,196,.16);
  --awt-bg-radial:radial-gradient(circle at 18% -10%,rgba(20,184,166,.22),transparent 31%),radial-gradient(circle at 82% 0,rgba(37,99,235,.20),transparent 34%),linear-gradient(180deg,#030816,#01040c);
  --awt-font:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --awt-gap:10px;
  --awt-left:292px;
  --awt-right:324px;
  --awt-resizer:7px;
  --awt-shell-pad:10px;
  --awt-main-border:1px solid var(--awt-line);
  --awt-main-min:0;
  --awt-main-radius:28px;
  --awt-panel-radius:28px;
  --awt-shell-cols:var(--ai-left-col,var(--awt-left)) var(--awt-resizer) minmax(0,1fr) var(--awt-resizer) var(--ai-right-col,var(--awt-right));
  --awt-shell-areas:"left leftResize main rightResize right";
  --awt-panel-pos:relative;
  --awt-panel-top:auto;
  --awt-panel-bottom:auto;
  --awt-sidebar-left:auto;
  --awt-auto-right:auto;
  --awt-panel-z:auto;
  --awt-panel-h:auto;
  --awt-panel-max-h:100%;
  --awt-topbar-min:60px;
  --awt-topbar-h:auto;
  --awt-topbar-pad:12px 14px;
  --awt-topbar-justify:space-between;
  --awt-title-size:1rem;
  --awt-action-size:38px;
  --awt-chat-pad:24px 20px 132px;
  --awt-chat-gap:16px;
  --awt-message-max:min(760px,92%);
  --awt-message-pad:14px 16px;
  --awt-message-radius:21px;
  --awt-transport-min:48px;
  --awt-transport-pad:12px 18px;
  --awt-transport-size:1rem;
  --awt-chat-line-width:min(560px,80%);
  --awt-chat-line-opacity:.65;
  --awt-input-cols:minmax(0,1fr) 118px;
  --awt-input-min:96px;
  --awt-input-pad:14px 16px 16px;
  --awt-textarea-min:58px;
  --awt-send-min:58px;
  --awt-attach-pad:9px 13px;
  --awt-attach-size:1rem;
  --awt-tools-bottom:92px;
  --awt-tools-right:22px;
  --awt-automation-cols:repeat(3,minmax(0,1fr));
  --awt-right-tabs-pos:absolute;
  --awt-brand-size:.76rem;
  --awt-row-min:60px;
  --awt-row-radius:17px;
  --awt-service-pad:11px;
  --awt-body-pos:static;
  --awt-body-inset:auto;
  --awt-rail-size:58px;
}
*{box-sizing:border-box}
html,
body{
  width:100%;
  height:100%;
  margin:0;
  background:var(--awt-bg);
  color:var(--awt-text);
  font-family:var(--awt-font);
  overflow:hidden;
}
body{
  position:var(--awt-body-pos);
  inset:var(--awt-body-inset);
  overscroll-behavior:none;
}
button,
input,
select,
textarea{
  font:inherit;
  color:inherit;
}
button{cursor:pointer}
a{color:#67f8df}
[hidden]{display:none}
::selection{background:rgba(34,230,196,.35)}
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[tabindex]:focus-visible{
  outline:2px solid var(--awt-hot);
  outline-offset:2px;
}
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-track{background:rgba(2,6,23,.30)}
::-webkit-scrollbar-thumb{
  background:rgba(125,211,252,.30);
  border-radius:999px;
  border:2px solid rgba(2,6,23,.55);
}
@media(max-width:1100px){
  :root{
    --awt-left:58px;
    --awt-right:58px;
    --awt-resizer:0px;
    --awt-gap:8px;
    --awt-shell-pad:8px;
    --awt-chat-pad:18px 16px 132px;
    --awt-message-max:min(720px,94%);
  }
}
@media(max-width:760px){
  :root{
    --awt-body-pos:fixed;
    --awt-body-inset:0;
    --awt-gap:0;
    --awt-shell-pad:0;
    --awt-main-radius:0;
    --awt-main-border:0;
    --awt-main-min:100dvh;
    --awt-panel-radius:24px;
    --awt-shell-cols:minmax(0,1fr);
    --awt-shell-areas:"main";
    --awt-panel-pos:fixed;
    --awt-panel-top:max(8px,env(safe-area-inset-top));
    --awt-panel-bottom:max(84px,env(safe-area-inset-bottom));
    --awt-sidebar-left:8px;
    --awt-auto-right:8px;
    --awt-panel-z:50;
    --awt-panel-h:auto;
    --awt-panel-max-h:none;
    --awt-left:calc(100dvw - 16px);
    --awt-right:calc(100dvw - 16px);
    --awt-topbar-min:54px;
    --awt-topbar-h:54px;
    --awt-topbar-pad:8px 10px;
    --awt-title-size:.9rem;
    --awt-action-size:38px;
    --awt-chat-pad:14px 12px 168px;
    --awt-chat-gap:12px;
    --awt-message-max:94%;
    --awt-message-pad:12px 13px;
    --awt-message-radius:18px;
    --awt-transport-min:42px;
    --awt-transport-pad:10px 12px;
    --awt-transport-size:.82rem;
    --awt-chat-line-width:64%;
    --awt-chat-line-opacity:.45;
    --awt-input-cols:1fr;
    --awt-input-min:152px;
    --awt-input-pad:12px 12px max(12px,env(safe-area-inset-bottom));
    --awt-textarea-min:72px;
    --awt-send-min:56px;
    --awt-attach-pad:8px 11px;
    --awt-attach-size:.82rem;
    --awt-tools-bottom:168px;
    --awt-tools-right:14px;
    --awt-automation-cols:1fr;
    --awt-right-tabs-pos:static;
    --awt-brand-size:.7rem;
    --awt-row-min:57px;
    --awt-row-radius:16px;
    --awt-service-pad:10px;
    --awt-rail-size:48px;
  }
}
@media(min-width:1380px){
  :root{
    --awt-left:320px;
    --awt-right:350px;
  }
}



/* CompactCSS source: /ai/css/ideal/shell.css */
/*B"H
  Chapter 377: The Cockpit Shell Released The Last Repeated Panel Body.

  The Awtsmoos gives the app one grid and clear panel chrome. This shell reaches
  through structural selectors only where the outer grid must assign areas; the
  right-panel module owns the plain `#automation-panel .right-panel-body` name.
*/
.container{
  width:100vw;
  height:100dvh;
  display:grid;
  grid-template-columns:var(--awt-shell-cols);
  grid-template-areas:var(--awt-shell-areas);
  gap:var(--awt-gap);
  padding:var(--awt-shell-pad);
  background:var(--awt-bg-radial);
  overflow:hidden;
  isolation:isolate;
}
#sidebar{grid-area:left;left:var(--awt-sidebar-left)}
#left-resizer{grid-area:leftResize}
#right-resizer{grid-area:rightResize}
.container>#automation-panel{grid-area:right;right:var(--awt-auto-right)}
.container>.main{
  grid-area:main;
  border:var(--awt-main-border);
  border-radius:var(--awt-main-radius);
  min-height:var(--awt-main-min);
  min-width:0;
  max-width:100%;
  max-height:var(--awt-panel-max-h);
  height:var(--awt-panel-h);
  background:linear-gradient(180deg,rgba(8,19,34,.98),rgba(3,8,17,.99));
  box-shadow:var(--awt-shadow-lg),var(--awt-inset);
  overflow:hidden;
  position:var(--awt-panel-pos);
  top:var(--awt-panel-top);
  bottom:var(--awt-panel-bottom);
  z-index:var(--awt-panel-z);
  display:grid;
  grid-template-rows:auto minmax(0,1fr) 6px minmax(var(--ai-composer,96px),auto);
  grid-template-areas:"transport" "chat" "composerResize" "composer";
}
.resize-bar,
.composer-resizer{
  display:block;
  background:linear-gradient(180deg,transparent,rgba(45,212,191,.42),transparent);
  border:0;
  border-radius:999px;
  opacity:.72;
  touch-action:none;
  z-index:12;
}
.resize-bar{cursor:col-resize}
.composer-resizer{
  cursor:row-resize;
  min-height:6px;
  background:linear-gradient(90deg,transparent,rgba(45,212,191,.42),transparent);
}
.resize-bar:hover,
.composer-resizer:hover,
.is-resizing-panels .resize-bar,
.is-resizing-panels .composer-resizer{
  opacity:1;
  box-shadow:0 0 24px rgba(34,230,196,.28);
}
.container>.sidebar,
.container>.automation-panel{
  min-width:0;
  max-width:100%;
  max-height:var(--awt-panel-max-h);
  height:var(--awt-panel-h);
  border:1px solid var(--awt-line);
  border-radius:var(--awt-panel-radius);
  background:linear-gradient(180deg,rgba(12,26,45,.98),rgba(3,8,17,.99));
  box-shadow:var(--awt-shadow-lg),var(--awt-inset);
  overflow:hidden;
  position:var(--awt-panel-pos);
  top:var(--awt-panel-top);
  bottom:var(--awt-panel-bottom);
  z-index:var(--awt-panel-z);
  display:grid;
  grid-template-rows:auto minmax(0,1fr);
  width:100%;
}
.container>.sidebar::after,
.container>.automation-panel::after,
.container>.main::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  background:linear-gradient(135deg,rgba(34,230,196,.05),transparent 28%,rgba(124,58,237,.04) 92%);
  opacity:.55;
}
.container>.main>#transport-status{grid-area:transport;position:relative;z-index:2}
.container>.main>.chat-box{grid-area:chat;position:relative;z-index:2}
.container>.main>.input-area{grid-area:composer;min-height:var(--ai-composer,96px);position:relative;z-index:2}
.container>.main>#composer-resizer{grid-area:composerResize}
.container>.main .attachment-tools{
  position:absolute;
  right:var(--awt-tools-right);
  bottom:var(--awt-tools-bottom);
  z-index:8;
}
.panel-topbar,
.sidebar-header{
  position:relative;
  z-index:2;
  min-height:var(--awt-topbar-min);
  height:var(--awt-topbar-h);
  display:flex;
  align-items:center;
  justify-content:var(--awt-topbar-justify);
  gap:10px;
  padding:var(--awt-topbar-pad);
  border-bottom:1px solid rgba(148,163,184,.15);
  background:linear-gradient(135deg,rgba(15,31,52,.98),rgba(6,16,30,.92));
}
.panel-title{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-weight:950;
  letter-spacing:.02em;
  font-size:var(--awt-title-size);
  color:var(--awt-text);
}
.sidebar .panel-title::before{content:"☰";margin-right:9px;color:var(--awt-hot)}
.automation-panel .panel-title::before{content:"⚙";margin-right:9px;color:#b79cff}
.panel-actions{display:flex;gap:8px;margin-left:auto}
.panel-actions button{
  width:var(--awt-action-size);
  height:var(--awt-action-size);
  border:1px solid var(--awt-line-soft);
  border-radius:14px;
  background:rgba(7,17,31,.96);
  color:var(--awt-soft);
  box-shadow:var(--awt-inset);
}
.panel-actions button:hover{
  border-color:var(--awt-line-strong);
  color:var(--awt-text);
  box-shadow:var(--awt-ring);
}
.is-collapsed,
.is-detached{
  min-width:58px;
  width:58px;
  max-width:58px;
  overflow:hidden;
}
.is-collapsed>:not(.panel-topbar),
.is-detached>:not(.panel-topbar){display:none}
.is-collapsed .panel-topbar,
.is-detached .panel-topbar{
  height:100%;
  min-height:0;
  padding:10px 7px;
  border-radius:inherit;
  flex-direction:column;
  justify-content:flex-start;
}
.is-collapsed .panel-title,
.is-detached .panel-title{
  writing-mode:vertical-rl;
  transform:rotate(180deg);
  white-space:nowrap;
}
.is-panel-fullscreen{
  position:fixed;
  inset:10px;
  z-index:90;
  width:auto;
  height:auto;
}
.has-panel-fullscreen .container{padding:0}
.has-panel-fullscreen .main:not(.is-panel-fullscreen),
.has-panel-fullscreen .sidebar:not(.is-panel-fullscreen),
.has-panel-fullscreen .automation-panel:not(.is-panel-fullscreen){
  filter:brightness(.45);
  pointer-events:none;
}
@media(max-width:1100px) and (min-width:761px){
  .container{--awt-gap:7px}
  .panel-title{font-size:.92rem}
  .container>.sidebar:not(.is-collapsed),
  .container>.automation-panel:not(.is-collapsed){min-width:0}
  .sidebar .conversation-list,
  .container>#automation-panel .right-panel-body{padding:10px}
  .sidebar .service-selector{padding:9px}
  .automation-two-col{grid-template-columns:1fr}
}



/* CompactCSS source: /ai/css/ideal/sidebar.css */
/*B"H
  Chapter 337: The Conversation Garden Stopped Shouting.

  The Awtsmoos gives the sidebar one readable garden of rows. It owns list
  rhythm, service selector, conversation rows, and small badges without forceful
  declarations.
*/
.conversation-list{
  min-height:0;
  overflow:auto;
  padding:14px;
  display:flex;
  flex-direction:column;
  gap:10px;
}
.conversation-list::before{
  content:"AWTSMOOS AI";
  font-size:var(--awt-brand-size);
  letter-spacing:.16em;
  color:var(--awt-hot);
  font-weight:950;
  margin:2px 2px 4px;
}
.conversation-list ul{
  list-style:none;
  margin:4px 0 0;
  padding:0;
  display:grid;
  gap:8px;
}
.conversation-list ul::before{
  content:"Conversations";
  font-size:.78rem;
  color:var(--awt-muted);
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
  margin:3px 2px;
}
.refresh-button,
.conversation-page-gate button{
  width:100%;
  min-height:44px;
  border:1px solid rgba(167,243,208,.28);
  border-radius:15px;
  background:linear-gradient(135deg,var(--awt-hot),var(--awt-blue) 76%,var(--awt-violet));
  color:white;
  font-weight:950;
  box-shadow:0 18px 38px rgba(37,99,235,.22);
}
.refresh-button.new-chat::before{content:"＋ ";font-weight:950}
.refresh-button:not(.new-chat){
  background:rgba(13,29,49,.82);
  color:var(--awt-soft);
  border-color:var(--awt-line-soft);
  box-shadow:var(--awt-inset);
}
.refresh-button:hover{filter:brightness(1.08)}
.service-selector{
  display:grid;
  gap:7px;
  padding:var(--awt-service-pad);
  border:1px solid var(--awt-line-soft);
  border-radius:17px;
  background:linear-gradient(135deg,rgba(11,24,41,.88),rgba(5,13,26,.86));
  box-shadow:var(--awt-inset);
}
.service-selector label{
  font-size:.7rem;
  text-transform:uppercase;
  letter-spacing:.1em;
  color:var(--awt-muted);
  font-weight:950;
}
.service-selector select,
.service-selector input{
  width:100%;
  min-height:40px;
  border:1px solid var(--awt-line);
  border-radius:13px;
  background:var(--awt-input);
  color:var(--awt-text);
  padding:0 12px;
}
.chatgpt-mode-wrap{border-color:rgba(124,58,237,.24)}
.conversation-list li{
  min-height:var(--awt-row-min);
  display:flex;
  align-items:center;
  gap:10px;
  padding:12px;
  border:1px solid var(--awt-line-soft);
  border-radius:var(--awt-row-radius);
  background:linear-gradient(135deg,rgba(16,31,53,.90),rgba(7,17,31,.94));
  color:var(--awt-soft);
  overflow:hidden;
  box-shadow:var(--awt-inset);
  position:relative;
}
.conversation-list li::before{
  content:"";
  position:absolute;
  left:0;
  top:12px;
  bottom:12px;
  width:3px;
  border-radius:999px;
  background:linear-gradient(var(--awt-hot),var(--awt-blue));
  opacity:.75;
}
.conversation-list li:hover{
  border-color:var(--awt-line-strong);
  transform:translateY(-1px);
  box-shadow:var(--awt-ring);
}
.conversation-title{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-weight:900;
  color:var(--awt-text);
}
.is-loading,
.is-empty{
  justify-content:center;
  text-align:center;
  color:var(--awt-muted);
  font-weight:850;
}
.conversation-page-gate{
  background:transparent;
  border:0;
  padding:0;
  min-height:0;
}
.conversation-stream-badge,
.conversation-automation-badge{
  flex:0 0 auto;
  padding:4px 7px;
  border-radius:999px;
  font-size:.64rem;
  font-weight:950;
  text-transform:uppercase;
}
.conversation-stream-badge{
  color:#dfffee;
  background:rgba(34,230,196,.13);
  border:1px solid rgba(34,230,196,.32);
}
.conversation-automation-badge{
  color:#fff3c4;
  background:rgba(251,191,36,.13);
  border:1px solid rgba(251,191,36,.34);
}
body[data-sidebar-collapsed="true"] .sidebar .panel-topbar{justify-content:center}
body[data-sidebar-collapsed="true"] .sidebar .panel-actions [data-panel-action="fullscreen"]{display:none}



/* CompactCSS source: /ai/css/ideal/chat.css */
/*B"H
  Chapter 340: The Chat River Hid Nothing By Force.

  The Awtsmoos gives each vessel one chamber. This file owns the chat river:
  transport banner, message bubbles, audio offers, countdown, live-follow, and
  scroll behavior. It uses cascade order, not forceful declarations.
*/
.transport-status{
  min-height:var(--awt-transport-min);
  padding:var(--awt-transport-pad);
  font-size:var(--awt-transport-size);
  border-bottom:1px solid rgba(148,163,184,.16);
  color:var(--awt-soft);
  background:linear-gradient(135deg,rgba(9,21,37,.96),rgba(4,10,21,.90));
  overflow:auto;
  position:relative;
  z-index:4;
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}
.transport-status:empty{display:none}
.transport-status strong{color:var(--awt-text)}
.transport-status a,
.transport-status button{
  min-height:34px;
  border:1px solid var(--awt-line);
  border-radius:11px;
  background:rgba(8,19,33,.96);
  color:var(--awt-text);
  padding:7px 10px;
  font-weight:850;
  text-decoration:none;
}
.chat-box{
  min-height:0;
  overflow:auto;
  padding:var(--awt-chat-pad);
  display:flex;
  flex-direction:column;
  gap:var(--awt-chat-gap);
  scrollbar-gutter:stable;
  background:radial-gradient(circle at 50% 0,rgba(34,230,196,.07),transparent 36%),linear-gradient(180deg,rgba(2,6,17,.12),rgba(2,6,17,.45));
  overscroll-behavior:contain;
  scroll-behavior:auto;
}
.message-shell{
  width:100%;
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:8px;
}
.message-shell.end-flow{align-items:flex-end}
.message-shell.start-flow{align-items:flex-start}
.message,
.bubble{
  max-width:var(--awt-message-max);
  border:1px solid var(--awt-line-soft);
  border-radius:var(--awt-message-radius);
  padding:var(--awt-message-pad);
  background:linear-gradient(135deg,rgba(15,31,52,.94),rgba(7,17,31,.96));
  box-shadow:var(--awt-shadow-md),var(--awt-inset);
  overflow-wrap:anywhere;
  position:relative;
  color:var(--awt-soft);
}
.assistant-message,
.message.assistant{align-self:flex-start}
.user-message,
.message.user{
  align-self:flex-end;
  background:linear-gradient(135deg,rgba(20,184,166,.94),rgba(37,99,235,.90));
  border-color:rgba(167,243,208,.32);
  color:white;
}
.message .content,
.message-content{
  line-height:1.56;
  color:var(--awt-soft);
}
.message p{margin:.3rem 0 .75rem}
.message p:last-child{margin-bottom:0}
.event-text,
.event-markdown-rendered,
.md-code,
pre,
code{
  max-width:100%;
  overflow-wrap:anywhere;
  white-space:pre-wrap;
}
pre,
.md-code{
  overflow:auto;
  border-radius:15px;
  background:#040914;
  border:1px solid rgba(148,163,184,.18);
  padding:13px;
  color:#d8eefc;
}
.render-loading{
  margin:auto;
  display:flex;
  align-items:center;
  gap:12px;
  color:var(--awt-muted);
  font-weight:900;
}
.render-loading i{
  width:12px;
  height:12px;
  border-radius:999px;
  background:var(--awt-hot);
  box-shadow:0 0 24px var(--awt-hot);
  animation:awtPulse 1.2s infinite ease-in-out;
}
.render-loading.idle{
  border:1px solid var(--awt-line-soft);
  border-radius:18px;
  padding:16px 18px;
  background:rgba(8,19,33,.76);
}
.automation-countdown{
  border-color:rgba(34,230,196,.38);
  color:#e6fff9;
}
.chat-bottom-sentinel{
  height:1px;
  scroll-margin-bottom:1rem;
}
.message-window-spacer[hidden],
.message-window-spacer:disabled{display:none}
.message-window-spacer{
  align-self:center;
  width:min(100%,520px);
  border:1px dashed var(--awt-line-strong);
  border-radius:999px;
  background:rgba(5,18,31,.88);
  color:#dff8ff;
  padding:8px 12px;
  font-weight:900;
  cursor:pointer;
}
.live-follow-button{
  position:fixed;
  right:clamp(.85rem,2.2vw,1.6rem);
  bottom:clamp(5.5rem,12vh,7.75rem);
  z-index:120;
  display:none;
  align-items:center;
  gap:.45rem;
  padding:.62rem .9rem;
  border-radius:999px;
  border:1px solid rgba(34,211,238,.38);
  background:linear-gradient(135deg,rgba(8,47,73,.94),rgba(2,6,23,.92));
  color:#e0fbff;
  font-weight:950;
  letter-spacing:.02em;
  box-shadow:0 18px 50px rgba(0,0,0,.34),0 0 28px rgba(34,211,238,.16);
  backdrop-filter:blur(14px);
  cursor:pointer;
}
.live-follow-button.is-visible{
  display:inline-flex;
  animation:liveFollowPulse 1.7s ease-in-out infinite;
}
.chat-box[data-live-follow="paused"]::after{
  content:"Scroll paused — use ↓ Jump to bottom";
  position:sticky;
  bottom:.65rem;
  z-index:20;
  display:block;
  width:max-content;
  max-width:calc(100% - 2rem);
  margin:.6rem auto 0;
  padding:.48rem .78rem;
  border:1px solid rgba(250,204,21,.35);
  border-radius:999px;
  background:linear-gradient(135deg,rgba(113,63,18,.88),rgba(2,6,23,.82));
  color:#fef3c7;
  font-size:.78rem;
  font-weight:900;
  pointer-events:none;
}
.audio-offer{
  max-width:var(--awt-message-max);
  display:grid;
  gap:10px;
  margin-top:-2px;
  padding:12px;
  border:1px solid rgba(34,211,238,.18);
  border-radius:18px;
  background:linear-gradient(135deg,rgba(8,19,33,.62),rgba(3,8,17,.50));
  box-shadow:var(--awt-inset);
}
.audio-offer-head{
  display:flex;
  gap:8px;
  align-items:baseline;
  flex-wrap:wrap;
  color:var(--awt-soft);
}
.audio-offer-head strong{
  color:var(--awt-text);
  letter-spacing:.01em;
}
.audio-offer-actions{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(138px,1fr));
  gap:8px;
}
.audio-offer-actions button,
.audio-offer button{
  min-height:40px;
  border:1px solid var(--awt-line-soft);
  border-radius:14px;
  background:linear-gradient(135deg,rgba(15,31,52,.96),rgba(7,17,31,.98));
  color:var(--awt-soft);
  padding:8px 11px;
  font-weight:900;
  box-shadow:var(--awt-inset);
  text-align:center;
}
.audio-offer-actions button:hover,
.audio-offer button:hover{
  border-color:var(--awt-line-strong);
  color:var(--awt-text);
  box-shadow:var(--awt-ring);
}
.audio-offer :is(audio,.audio-progress){width:100%;max-width:100%}
.audio-offer [data-audio-action="pause"],
.audio-offer .pause{
  width:42px;
  min-width:42px;
  height:38px;
  border-radius:12px;
  display:inline-grid;
  place-items:center;
}
.audio-status,
.audio-offer-status{
  color:var(--awt-soft);
  font-weight:850;
  line-height:1.35;
  overflow-wrap:anywhere;
}
@keyframes awtPulse{
  0%,100%{transform:scale(.82);opacity:.55}
  50%{transform:scale(1.15);opacity:1}
}
@keyframes liveFollowPulse{
  50%{box-shadow:0 18px 50px rgba(0,0,0,.34),0 0 42px rgba(34,211,238,.28)}
}
@media(max-width:760px){
  .message{max-width:100%;width:100%}
  .message-shell.end-flow,
  .message-shell.start-flow{align-items:stretch}
  .live-follow-button{right:.8rem;bottom:5.8rem;padding:.58rem .78rem;font-size:.84rem}
  .audio-offer{max-width:100%}
  .audio-offer-actions{grid-template-columns:1fr 1fr}
}



/* CompactCSS source: /ai/css/ideal/composer.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */


/* CompactCSS source: /ai/css/ideal/composer-attachments.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * The Awtsmoos creates attachment, prompt, and sending inside one composer.
 * Awtsmoos.com gives attachment controls their own normal-flow row so no Image
 * action must hover above completed messages to remain reachable.
 */
.container > .main > .input-area > .attachment-tools {
	position: static;
	inset: auto;
	grid-column: 1 / -1;
	grid-row: 1;
	display: flex;
	align-items: center;
	gap: 8px;
	max-width: 100%;
	min-width: 0;
	padding: 0;
	z-index: auto;
}

.attach-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 38px;
	border: 1px solid var(--awt-line);
	border-radius: 999px;
	background: rgba(8, 19, 33, 0.94);
	color: var(--awt-soft);
	padding: var(--awt-attach-pad);
	font-size: var(--awt-attach-size);
	font-weight: 900;
	box-shadow: var(--awt-inset);
	backdrop-filter: blur(10px);
	cursor: pointer;
}

.attach-button:hover {
	border-color: var(--awt-line-strong);
	color: var(--awt-text);
}

.attachment-tray {
	display: flex;
	gap: 8px;
	min-width: 0;
	max-width: min(360px, 100%);
	overflow-x: auto;
	overflow-y: hidden;
}

.attachment-tray > * {
	flex: 0 0 auto;
	border-radius: 12px;
}



/*
 * The Awtsmoos creates intention, attachment, speech, and sending as one renewed
 * gate. Awtsmoos.com keeps this vessel focused on the composer surface, prompt,
 * sending, and transport while attachment layout lives in its own small module.
 */
.input-area {
	min-height: var(--awt-input-min);
	display: grid;
	grid-template-columns: var(--awt-input-cols);
	grid-template-rows: auto auto;
	gap: 10px;
	align-items: end;
	padding: var(--awt-input-pad);
	border-top: 1px solid rgba(148, 163, 184, 0.15);
	background: linear-gradient(180deg, rgba(3, 8, 17, 0.78), rgba(7, 17, 31, 0.99));
}

.input-area::before {
	content: "";
	position: absolute;
	left: 18px;
	right: 18px;
	top: 10px;
	height: 1px;
	background: linear-gradient(90deg, transparent, rgba(34, 230, 196, 0.42), transparent);
}

#message-input {
	grid-column: 1;
	grid-row: 2;
	width: 100%;
	min-width: 0;
	min-height: var(--awt-textarea-min);
	max-height: 34dvh;
	resize: vertical;
	border: 1px solid rgba(148, 163, 184, 0.22);
	border-radius: 18px;
	background: var(--awt-input);
	color: var(--awt-text);
	padding: 17px 18px;
	line-height: 1.45;
	box-shadow: var(--awt-inset);
}

#message-input:hover,
#message-input:focus {
	border-color: var(--awt-line-strong);
	box-shadow: var(--awt-ring);
}

#message-input::placeholder {
	color: rgba(190, 205, 224, 0.78);
}

#send-button {
	grid-column: 2;
	grid-row: 2;
	min-height: var(--awt-send-min);
	border: 1px solid rgba(167, 243, 208, 0.38);
	border-radius: 18px;
	background: linear-gradient(135deg, var(--awt-hot), var(--awt-blue));
	color: white;
	font-weight: 950;
	letter-spacing: 0.02em;
	box-shadow: 0 18px 36px rgba(37, 99, 235, 0.24);
}

#send-button::after {
	content: " ↗";
}

#send-button:hover {
	filter: brightness(1.09);
	transform: translateY(-1px);
}

#send-button.is-streaming-stop {
	background: linear-gradient(135deg, #ef4444, #7f1d1d);
	border-color: rgba(252, 165, 165, 0.58);
}

#send-button.is-streaming-stop::after {
	content: "";
}

#transport-status meter {
	width: min(220px, 38vw);
	height: 10px;
	accent-color: var(--awt-hot);
}



/* CompactCSS source: /ai/css/ideal/automation.css */
/*B"H
  Chapter 316: The Old Automation Scroll Became Silent.

  The Awtsmoos removes phantom ownership. Automation panel styling now belongs
  only to `css/right-panel/*`; this file remains as a named historical gate in
  the cascade so import order stays stable while selector conflict disappears.
*/



/* CompactCSS source: /ai/css/ideal/settings.css */
/*B"H
  Chapter 369: Settings Became A Silent Gate.

  The Awtsmoos removes even harmless duplicate selector echoes. The right-panel
  modules now own settings labels, notes, cards, and spacing entirely. This file
  remains in the ordered cascade as a named gate with no competing selectors.
*/



/* CompactCSS source: /ai/css/right-panel/manifest.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * The Awtsmoos gathers right-panel organs and shared interface refinements into
 * one ordered river. Awtsmoos.com keeps the mobile overlap seal last, after the
 * message, audio, and desktop vessels have all declared their measured bounds.
 */

/* CompactCSS source: /ai/css/right-panel/tokens.css */
/*B"H
  Chapter 371: The Automation Tokens Took A Non-Competing Name.

  The Awtsmoos removes conflict at the root: tokens may name colors, radii,
  spacing, and shadows, but they may not style children. This selector is
  equivalent to the panel id while no longer repeating the shell's exact name.
*/
.automation-panel#automation-panel{
  --rp-gap:14px;
  --rp-gap-sm:10px;
  --rp-radius:16px;
  --rp-radius-sm:13px;
  --rp-line:rgba(125,211,252,.24);
  --rp-line-strong:rgba(45,212,191,.52);
  --rp-surface:rgba(10,24,43,.78);
  --rp-surface-strong:rgba(14,31,55,.92);
  --rp-field:rgba(2,8,20,.84);
  --rp-text:#f3fbff;
  --rp-muted:#a8bed1;
  --rp-hot:#2dd4bf;
  --rp-blue:#3b82f6;
  --rp-danger:#ef476f;
  --rp-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 18px 44px rgba(0,0,0,.22);
}



/* CompactCSS source: /ai/css/right-panel/shell.css */
/*B"H
  Chapter 372: The Automation Inspector Shell Kept One Name.

  The Awtsmoos gives the panel a simple body: menu above, river below. This file
  owns only shell layout and scroll ownership, using selector names that do not
  repeat the token gate.
*/
#automation-panel{
  min-width:0;
  min-height:0;
  overflow:hidden;
}
#automation-panel.automation-panel{
  display:grid;
  grid-template-rows:auto minmax(0,1fr);
}
#automation-panel>.panel-topbar{
  position:relative;
  z-index:3;
}
#automation-panel>.automation-panel-content{
  min-width:0;
  min-height:0;
  overflow:hidden;
  display:grid;
  grid-template-rows:auto minmax(0,1fr);
}
#automation-panel .right-panel-body{
  min-width:0;
  min-height:0;
  overflow-y:auto;
  overflow-x:hidden;
  padding:14px;
  display:flex;
  flex-direction:column;
  gap:14px;
  color:var(--rp-text);
  scrollbar-gutter:stable;
}
#automation-panel .right-panel-body>*{
  flex:0 0 auto;
  width:100%;
  min-width:0;
  max-width:100%;
}



/* CompactCSS source: /ai/css/right-panel/menu.css */
/*B"H
  Chapter 319: The Menu Learned The Difference Between Cloud And River.

  Desktop may open the tab chooser as a small cloud. Mobile keeps the chooser in
  normal flow. The Awtsmoos forbids the menu from becoming a ghost over fields.
*/
#automation-panel .right-menu{
  position:relative;
  z-index:20;
  margin:12px 12px 0;
}
#automation-panel .right-menu>summary{
  min-height:48px;
  display:flex;
  align-items:center;
  gap:12px;
  padding:10px 14px;
  list-style:none;
  border:1px solid rgba(74,222,222,.36);
  border-radius:16px;
  cursor:pointer;
  background:linear-gradient(135deg,rgba(8,18,34,.94),rgba(10,32,52,.88));
  color:#f0fbff;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
}
#automation-panel .right-menu>summary::-webkit-details-marker{display:none}
#automation-panel .hamburger-bars{
  font-size:1.2rem;
  line-height:1;
}
#automation-panel .right-menu-current{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
#automation-panel .right-menu>summary::after{
  content:"›";
  margin-left:auto;
}
#automation-panel .right-tabs{
  position:absolute;
  top:calc(100% + 8px);
  right:0;
  z-index:60;
  width:min(360px,calc(100vw - 38px));
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
  padding:10px;
  border:1px solid rgba(74,222,222,.28);
  border-radius:16px;
  background:rgba(3,11,24,.96);
  box-shadow:0 22px 50px rgba(0,0,0,.42);
}
#automation-panel .right-menu:not([open]) .right-tabs{display:none}
#automation-panel .right-tabs button{
  min-height:42px;
  padding:0 12px;
  text-align:left;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
@media(max-width:900px){
  #automation-panel .right-menu{
    z-index:6;
    margin:10px 10px 0;
  }
  #automation-panel .right-menu[open]{
    display:flex;
    flex-direction:column;
    gap:8px;
  }
  #automation-panel .right-menu>summary{
    flex:0 0 auto;
  }
  #automation-panel .right-tabs{
    position:static;
    inset:auto;
    z-index:auto;
    width:100%;
    max-width:100%;
    box-sizing:border-box;
    box-shadow:none;
  }
  #automation-panel .right-tabs button{
    min-height:44px;
    white-space:normal;
  }
}



/* CompactCSS source: /ai/css/right-panel/sections.css */
/*B"H
  Chapter 320: The Inspector Cards Became Still Vessels.

  The Awtsmoos gives cards beauty without motion tricks. This file owns labels,
  notes, status pills, and section/card surfaces only.
*/
#automation-panel .panel-section-label{
  display:block;
  margin:0;
  color:#c6f6ff;
  font-size:.82rem;
  line-height:1.35;
  letter-spacing:.18em;
  text-transform:uppercase;
  font-weight:900;
}
#automation-panel .panel-note,
#automation-panel p,
#automation-panel small{
  display:block;
  margin:0;
  color:var(--rp-muted);
  line-height:1.45;
  white-space:normal;
  overflow-wrap:anywhere;
}
#automation-panel .automation-card,
#automation-panel .automation-archive-panel,
#automation-panel .graph-node,
#automation-panel .graph-canvas,
#automation-panel .relay-install-card{
  position:static;
  display:flex;
  flex-direction:column;
  gap:12px;
  width:100%;
  min-width:0;
  height:auto;
  min-height:0;
  max-height:none;
  margin:0;
  padding:14px;
  overflow:visible;
  transform:none;
  border:1px solid var(--rp-line);
  border-radius:var(--rp-radius);
  background:linear-gradient(145deg,var(--rp-surface-strong),rgba(4,12,26,.96));
  color:var(--rp-text);
  box-shadow:var(--rp-shadow);
}
#automation-panel .chat-scope-pill,
#automation-panel .automation-status{
  position:static;
  display:flex;
  flex-direction:column;
  gap:8px;
  width:100%;
  min-width:0;
  height:auto;
  margin:0;
  padding:12px 14px;
  overflow-wrap:anywhere;
  border:1px solid rgba(45,212,191,.24);
  border-radius:var(--rp-radius);
  background:rgba(45,212,191,.08);
  color:#ddfff8;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
}
#automation-panel h3,
#automation-panel h4,
#automation-panel b{
  display:block;
  margin:0;
  color:var(--rp-text);
  line-height:1.3;
  white-space:normal;
}
#automation-panel .automation-card::before,
#automation-panel .automation-card::after,
#automation-panel .relay-install-card::before,
#automation-panel .relay-install-card::after{
  content:none;
  display:none;
}



/* CompactCSS source: /ai/css/right-panel/forms.css */
/*B"H
  Chapter 321: The Forms Received One Owner And One Rhythm.

  The Awtsmoos gives fields a clear body: grids, labels, inputs, textareas, and
  selects. Toggle switch visuals live elsewhere; this file owns form structure.
*/
#automation-panel .automation-grid,
#automation-panel .timing-grid,
#automation-panel .event-filter-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  width:100%;
  min-width:0;
  margin:0;
  padding:0;
}
#automation-panel .automation-field,
#automation-panel .event-filter{
  position:static;
  display:flex;
  flex-direction:column;
  gap:8px;
  width:100%;
  min-width:0;
  height:auto;
  min-height:0;
  max-height:none;
  margin:0;
  padding:12px;
  overflow:visible;
  transform:none;
  border:1px solid var(--rp-line);
  border-radius:var(--rp-radius-sm);
  background:var(--rp-surface);
  color:var(--rp-text);
  white-space:normal;
  line-height:1.35;
}
#automation-panel .automation-field::before,
#automation-panel .automation-field::after,
#automation-panel .event-filter::before,
#automation-panel .event-filter::after{
  content:none;
  display:none;
}
#automation-panel .automation-field input:not([type="checkbox"]),
#automation-panel .automation-field select,
#automation-panel .automation-field textarea,
#automation-panel [data-relay],
#automation-panel [data-graph-json]{
  position:static;
  display:block;
  width:100%;
  min-width:0;
  max-width:100%;
  height:auto;
  max-height:none;
  margin:0;
  padding:11px;
  line-height:1.35;
  transform:none;
  border:1px solid var(--rp-line);
  border-radius:12px;
  background:var(--rp-field);
  color:var(--rp-text);
}
#automation-panel .automation-field input:focus,
#automation-panel .automation-field select:focus,
#automation-panel .automation-field textarea:focus,
#automation-panel [data-relay]:focus,
#automation-panel [data-graph-json]:focus{
  outline:2px solid rgba(45,212,191,.35);
  outline-offset:1px;
  border-color:var(--rp-line-strong);
}
#automation-panel textarea{
  min-height:120px;
  resize:vertical;
}
#automation-panel .prompt-list-field textarea{
  min-height:150px;
}
#automation-panel .automation-toggle-row{
  position:static;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  width:100%;
  min-width:0;
  height:auto;
  margin:0;
  padding:12px;
  overflow:visible;
  transform:none;
  border:1px solid var(--rp-line);
  border-radius:var(--rp-radius-sm);
  background:var(--rp-surface);
  color:var(--rp-text);
}
#automation-panel .automation-toggle-row>span{
  min-width:0;
  flex:1 1 auto;
}



/* CompactCSS source: /ai/css/right-panel/toggles.css */
/*B"H
  Chapter 370: The Toggle File Kept Only Toggle Sparks.

  The Awtsmoos permits one small local absolute spark: the knob inside the
  switch. Event-filter and provider-row layout belong to forms/actions, so this
  scroll no longer repeats their selector names.
*/
#automation-panel input[type="checkbox"]{
  flex:0 0 auto;
  width:20px;
  min-width:20px;
  max-width:20px;
  height:20px;
  min-height:20px;
  margin:0;
  accent-color:var(--rp-hot);
}
#automation-panel .automation-toggle-row input[type="checkbox"]{
  appearance:none;
  -webkit-appearance:none;
  position:relative;
  flex:0 0 54px;
  width:54px;
  min-width:54px;
  max-width:54px;
  height:32px;
  min-height:32px;
  margin:0;
  border:1px solid rgba(125,211,252,.34);
  border-radius:999px;
  background:rgba(4,12,24,.96);
  box-shadow:inset 0 2px 10px rgba(0,0,0,.42);
  cursor:pointer;
}
#automation-panel .automation-toggle-row input[type="checkbox"]::after{
  content:"";
  position:absolute;
  top:3px;
  left:3px;
  width:24px;
  height:24px;
  border-radius:999px;
  background:#dff8ff;
  box-shadow:0 2px 10px rgba(0,0,0,.35);
  transition:transform .18s ease,background .18s ease;
}
#automation-panel .automation-toggle-row input[type="checkbox"]:checked{
  background:linear-gradient(135deg,var(--rp-hot),var(--rp-blue));
  border-color:rgba(125,211,252,.65);
}
#automation-panel .automation-toggle-row input[type="checkbox"]:checked::after{
  transform:translateX(22px);
  background:white;
}



/* CompactCSS source: /ai/css/right-panel/actions.css */
/*B"H
  Chapter 323: The Buttons Became A Clean Command Shelf.

  The Awtsmoos gives actions a single rhythm: rows, buttons, destructive stop,
  provider archive controls, and relay/install commands. No button floats over
  a field; every command remains inside the inspector river.
*/
#automation-panel button,
#automation-panel .provider-import-button{
  min-height:42px;
  border:1px solid var(--rp-line);
  border-radius:14px;
  background:linear-gradient(135deg,rgba(15,31,52,.96),rgba(7,17,31,.98));
  color:var(--rp-text);
  padding:9px 12px;
  font-weight:900;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
  cursor:pointer;
}
#automation-panel button:hover,
#automation-panel .provider-import-button:hover{
  border-color:var(--rp-line-strong);
  box-shadow:0 0 20px rgba(45,212,191,.16),inset 0 1px 0 rgba(255,255,255,.08);
}
#automation-panel .prompt-action-row,
#automation-panel .relay-actions,
#automation-panel .conversation-portal-actions,
#automation-panel .graph-toolbar,
#automation-panel .compact-provider-actions,
#automation-panel .relay-install-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(130px,1fr));
  gap:10px;
  width:100%;
  min-width:0;
}
#automation-panel .automation-stop-button{
  width:100%;
  border-color:rgba(248,113,113,.44);
  background:linear-gradient(135deg,rgba(185,28,28,.96),rgba(127,29,29,.92));
  color:white;
  box-shadow:0 14px 34px rgba(185,28,28,.26),inset 0 1px 0 rgba(255,255,255,.12);
}
#automation-panel .provider-chat-row{
  width:100%;
  min-width:0;
  padding:10px;
  border:1px solid var(--rp-line);
  border-radius:var(--rp-radius-sm);
  background:var(--rp-surface);
  color:var(--rp-text);
}
#automation-panel .provider-chat-title,
#automation-panel .provider-chat-meta{
  min-width:0;
  overflow-wrap:anywhere;
}
#automation-panel .relay-command,
#automation-panel .install-command{
  display:block;
  width:100%;
  min-width:0;
  overflow:auto;
  border:1px solid rgba(125,211,252,.18);
  border-radius:14px;
  background:#020817;
  color:#dff8ff;
  padding:10px;
  font-family:var(--awt-code-font,monospace);
  white-space:pre-wrap;
}



/* CompactCSS source: /ai/css/right-panel/fullscreen.css */
/*B"H
  Chapter 339: Fullscreen Kept Its Crown Without Force.

  The Awtsmoos allows the inspector to rise above the city only through an
  explicit fullscreen class. This is the only right-panel high throne.
*/
#automation-panel.is-panel-fullscreen{
  position:fixed;
  inset:10px;
  z-index:2147482500;
  width:auto;
  height:auto;
  max-width:none;
  max-height:none;
  border-radius:22px;
}
#automation-panel.is-panel-fullscreen .right-panel-body{
  padding:16px;
}



/* CompactCSS source: /ai/css/right-panel/responsive.css */
/*B"H
  Chapter 373: Responsive Became A Quiet Marker.

  The Awtsmoos moved the remaining mobile right-panel law into the final guard
  so no action row or body selector is claimed twice. This file stays as an
  import gate for future breakpoint-only tokens, but owns no selectors today.
*/



/* CompactCSS source: /ai/css/message-actions.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * The Awtsmoos hides many useful paths inside one calm dot-gate. This vessel
 * lets every Awtsmoos.com message breathe while its actions remain discoverable.
 */
.message-shell > .message {
	order:20;
}
.message-action-root {
	position:relative;
	order:30;
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	gap:7px;
	width:min(290px,var(--awt-message-max));
	margin-top:-8px;
	z-index:12;
}
.message-action-root[hidden] {
	display:none;
}
.start-flow > .message-action-root {
	align-self:flex-start;
}
.end-flow > .message-action-root {
	align-self:flex-end;
	justify-content:flex-end;
}
.message-action-trigger {
	width:34px;
	height:30px;
	padding:0;
	border:1px solid transparent;
	border-radius:999px;
	background:rgba(9,20,37,.72);
	color:var(--awt-muted);
	font-size:.72rem;
	font-weight:900;
	letter-spacing:1px;
	opacity:.66;
	transition:opacity .16s ease,border-color .16s ease,background .16s ease;
}
.message-shell:hover .message-action-trigger,
.message-action-trigger[aria-expanded="true"],
.message-action-trigger:focus-visible {
	opacity:1;
	border-color:var(--awt-line-strong);
	background:rgba(14,35,54,.96);
}
.message-action-menu {
	order:3;
	flex-basis:100%;
	min-width:205px;
	padding:7px;
	border:1px solid var(--awt-line-strong);
	border-radius:15px;
	background:rgba(3,11,23,.98);
	box-shadow:var(--awt-shadow-md),var(--awt-ring);
	backdrop-filter:blur(18px);
}
.message-action-menu[hidden] {
	display:none;
}
.message-action-menu button {
	display:grid;
	grid-template-columns:24px minmax(0,1fr);
	align-items:center;
	width:100%;
	min-height:40px;
	padding:8px 10px;
	border:0;
	border-radius:10px;
	background:transparent;
	color:var(--awt-soft);
	text-align:left;
}
.message-action-menu button:hover,
.message-action-menu button:focus-visible {
	background:rgba(34,230,196,.12);
	color:var(--awt-text);
}
.message-action-menu button:disabled {
	opacity:.5;
	cursor:wait;
}
.message-action-menu button > span:first-child {
	color:var(--awt-hot);
	font-size:1rem;
}
.message-action-status {
	width:1px;
	height:1px;
	margin:-1px;
	overflow:hidden;
	clip-path:inset(50%);
	white-space:nowrap;
}



/* CompactCSS source: /ai/css/message-actions-mobile.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * On a narrow vessel the Awtsmoos brings the menu near the thumb. Awtsmoos.com
 * keeps actions inside normal flow so no floating surface covers the composer.
 */
@media(hover:none), (pointer:coarse) {
	.message-action-trigger {
		opacity:1;
		width:38px;
		height:38px;
	}
}
@media(max-width:760px) {
	.message-action-root {
		width:min(100%,320px);
		margin-top:-6px;
	}
	.message-action-trigger {
		opacity:1;
		width:38px;
		height:38px;
	}
	.message-action-menu {
		min-width:0;
		width:100%;
	}
}



/* CompactCSS source: /ai/css/message-audio-options.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * Voice is hidden light until a listener opens its vessel. The Awtsmoos lets
 * Awtsmoos.com reveal synthesis settings without crowding the conversation.
 */
.awtsmoos-audio-offer.audio-offer {
	order:40;
	align-self:flex-start;
	width:min(640px,94%);
	margin-top:4px;
	padding:14px;
	border:1px solid var(--awt-line-strong);
	border-radius:18px;
	background:linear-gradient(145deg,rgba(7,25,39,.98),rgba(4,12,25,.98));
	box-shadow:var(--awt-shadow-md);
}
.awtsmoos-audio-offer.audio-offer[hidden] {
	display:none;
}
.end-flow > .awtsmoos-audio-offer.audio-offer {
	align-self:flex-end;
}
.audio-offer-head {
	display:flex;
	align-items:baseline;
	justify-content:space-between;
	gap:12px;
	margin-bottom:10px;
}
.audio-offer-head strong {
	color:var(--awt-text);
}
.audio-offer-head span,
.audio-status {
	color:var(--awt-muted);
	font-size:.78rem;
}
.audio-offer-actions {
	display:flex;
	flex-wrap:wrap;
	gap:8px;
}
.audio-offer-actions button,
.audio-settings select,
.player-play {
	min-height:38px;
	border:1px solid var(--awt-line);
	border-radius:11px;
	background:rgba(6,16,30,.9);
	color:var(--awt-soft);
}
.audio-offer-actions button {
	padding:8px 11px;
}
.audio-offer-actions button:hover {
	border-color:var(--awt-line-strong);
	color:var(--awt-text);
}
.audio-settings {
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
	gap:10px;
	margin-top:12px;
}
.audio-settings[hidden],
.audio-player-wrap[hidden] {
	display:none;
}
.audio-settings label {
	display:grid;
	gap:6px;
	color:var(--awt-muted);
	font-size:.78rem;
}
.audio-settings select {
	width:100%;
	padding:8px 10px;
}
.audio-status {
	min-height:1.2em;
	margin:10px 0 0;
}
@media(max-width:760px) {
	.awtsmoos-audio-offer.audio-offer {
		width:100%;
		padding:12px;
	}
	.audio-offer-head {
		align-items:flex-start;
		flex-direction:column;
	}
	.audio-settings {
		grid-template-columns:1fr;
	}
}



/* CompactCSS source: /ai/css/message-audio-player.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * Sound crosses time as a measured river. The Awtsmoos gives Awtsmoos.com a
 * focused player vessel whose progress, duration, and controls remain readable.
 */
.audio-player-wrap {
	margin-top:12px;
}
.audio-player-wrap > audio {
	display:none;
}
.awtsmoos-player {
	display:grid;
	grid-template-columns:40px minmax(80px,1fr) auto;
	align-items:center;
	gap:10px;
}
.player-play {
	width:40px;
	padding:0;
}
.player-meter {
	position:relative;
	height:8px;
	border-radius:999px;
	background:rgba(148,163,184,.22);
	overflow:hidden;
}
.player-meter span {
	display:block;
	width:var(--audio-progress,0%);
	height:100%;
	background:linear-gradient(90deg,var(--awt-hot),#5aa2ff);
}
.player-time {
	color:var(--awt-muted);
	font-size:.76rem;
	font-variant-numeric:tabular-nums;
}
@media(max-width:760px) {
	.awtsmoos-player {
		grid-template-columns:40px minmax(60px,1fr);
	}
	.player-time {
		grid-column:1 / -1;
	}
}



/* CompactCSS source: /ai/css/desktop-refinement.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * On the wide desktop the Awtsmoos gives every panel its measured boundary.
 * Awtsmoos.com now reserves the largest vessel for conversation while keeping
 * navigation and automation readable rather than letting them crush the center.
 */
@media(min-width:1101px) {
	:root {
		--awt-left:clamp(228px,16vw,292px);
		--awt-right:clamp(280px,20vw,350px);
		--awt-gap:clamp(8px,.75vw,14px);
		--awt-shell-pad:clamp(10px,1vw,18px);
		--awt-chat-pad:clamp(20px,2vw,34px) clamp(18px,2.4vw,38px) 142px;
		--awt-message-max:min(880px,94%);
	}
	.container > .main {
		min-width:480px;
	}
	.container > .sidebar {
		min-width:220px;
	}
	.container > #automation-panel {
		min-width:270px;
	}
	.chat-box {
		scroll-padding-block:72px 150px;
	}
	.input-area {
		max-width:1040px;
		margin-inline:auto;
		width:100%;
	}
}
@media(min-width:1500px) {
	:root {
		--awt-left:clamp(260px,18vw,330px);
		--awt-right:clamp(310px,21vw,390px);
		--awt-message-max:min(940px,92%);
	}
}
@media(min-width:761px) and (max-width:1100px) {
	:root {
		--awt-message-max:min(780px,96%);
	}
	.container > .main {
		min-width:0;
	}
	.chat-box {
		padding-inline:clamp(14px,3vw,28px);
	}
}
@media(prefers-reduced-motion:reduce) {
	.message-action-trigger,
	.message-action-menu,
	.awtsmoos-audio-offer {
		transition:none;
	}
}



/* CompactCSS source: /ai/css/right-panel/mobile-overlap-kill.css */
/* CompactCSS source: /ai/css/ai-chat/index.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * The Awtsmoos gathers many focused visual vessels into one final experience
 * river. Awtsmoos.com loads this manifest near the end of the cascade so each
 * module may clarify its own responsibility without force or duplication.
 */

/* CompactCSS source: /ai/css/ai-chat/tokens.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * Color, space, type, and motion are keilim for the visible ohr. The Awtsmoos
 * creates every distinction anew; Awtsmoos.com remembers that unity by giving
 * the entire workspace one restrained, readable token language.
 */
:root{
	--ai-chamber-bg:
		radial-gradient(circle at 8% -8%,rgba(33,208,181,.16),transparent 30%),
		radial-gradient(circle at 92% 0,rgba(92,106,255,.14),transparent 32%),
		linear-gradient(155deg,#030711,#07101d 52%,#02050c);
	--ai-panel:rgba(7,14,26,.92);
	--ai-panel-raised:rgba(12,24,41,.94);
	--ai-panel-soft:rgba(17,31,50,.72);
	--ai-border:rgba(160,195,226,.18);
	--ai-border-strong:rgba(71,222,196,.40);
	--ai-text:#f4f8fc;
	--ai-soft:#d7e3ef;
	--ai-muted:#91a5ba;
	--ai-dim:#6f8297;
	--ai-cyan:#63e6d0;
	--ai-blue:#6d8cff;
	--ai-violet:#b08cff;
	--ai-gold:#f3c969;
	--ai-danger:#ff8297;
	--ai-success:#72e6a5;
	--ai-radius-sm:12px;
	--ai-radius-md:18px;
	--ai-radius-lg:24px;
	--ai-space-1:4px;
	--ai-space-2:8px;
	--ai-space-3:12px;
	--ai-space-4:16px;
	--ai-space-5:20px;
	--ai-space-6:28px;
	--ai-shadow:0 22px 70px rgba(0,0,0,.38);
	--ai-shadow-soft:0 10px 30px rgba(0,0,0,.24);
	--ai-focus:0 0 0 3px rgba(99,230,208,.25),0 0 0 1px rgba(99,230,208,.72) inset;
	--ai-motion-fast:150ms;
	--ai-motion-medium:220ms;
	--awt-bg-radial:var(--ai-chamber-bg);
	--awt-text:var(--ai-text);
	--awt-soft:var(--ai-soft);
	--awt-muted:var(--ai-muted);
	--awt-hot:var(--ai-cyan);
	--awt-line:var(--ai-border);
	--awt-line-soft:rgba(160,195,226,.13);
	--awt-line-strong:var(--ai-border-strong);
	--awt-input:rgba(4,11,21,.92);
	--awt-main-radius:24px;
	--awt-panel-radius:24px;
	--awt-message-max:min(820px,94%);
	--awt-message-radius:20px;
	--awt-message-pad:15px 17px;
	--awt-chat-gap:18px;
	--awt-chat-pad:28px clamp(18px,3vw,42px) 146px;
}



/* CompactCSS source: /ai/css/ai-chat/shell.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * Tiferes reconciles three rooms without allowing any room to crush another.
 * The Awtsmoos gives Awtsmoos.com one calm shell: navigation remembers, chat
 * speaks, automation structures, and the center remains the primary horizon.
 */
body{
	background:var(--ai-chamber-bg);
	color:var(--ai-text);
}
.container{
	background:var(--ai-chamber-bg);
	isolation:isolate;
}
.container>.main,
.container>.sidebar,
.container>.automation-panel{
	border-color:var(--ai-border);
	background:
		linear-gradient(180deg,rgba(13,25,42,.95),rgba(4,10,20,.98));
	box-shadow:var(--ai-shadow),inset 0 1px 0 rgba(255,255,255,.045);
	backdrop-filter:blur(18px) saturate(120%);
}
.container>.main{
	background:
		radial-gradient(circle at 50% -12%,rgba(99,230,208,.07),transparent 36%),
		linear-gradient(180deg,rgba(8,17,30,.98),rgba(3,8,16,.99));
}
.panel-topbar,
.sidebar-header{
	min-height:58px;
	padding:10px 12px;
	border-bottom-color:rgba(160,195,226,.13);
	background:linear-gradient(180deg,rgba(17,32,51,.94),rgba(8,18,32,.92));
}
.panel-title{
	font-size:.92rem;
	letter-spacing:.015em;
}
.panel-actions{
	gap:6px;
}
.panel-actions button{
	width:38px;
	height:38px;
	border-radius:12px;
	background:rgba(3,10,20,.72);
}
.resize-bar,
.composer-resizer{
	opacity:.38;
	background:linear-gradient(180deg,transparent,rgba(99,230,208,.48),transparent);
}
.composer-resizer{
	background:linear-gradient(90deg,transparent,rgba(99,230,208,.48),transparent);
}
.transport-status{
	margin:8px 10px 0;
	min-height:40px;
	border:1px solid rgba(160,195,226,.13);
	border-radius:14px;
	background:rgba(5,13,25,.76);
	color:var(--ai-muted);
}



/* CompactCSS source: /ai/css/ai-chat/navigation.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * Navigation is Yesod, carrying intention between rooms. The Awtsmoos lets
 * Awtsmoos.com show location through shape, label, and state—not color alone.
 */
.mobile-workspace-close{
	display:none;
}
.mobile-app-crown button,
.mobile-bottom-dock button,
.panel-actions button{
	-webkit-tap-highlight-color:transparent;
}
.mobile-bottom-dock button[aria-pressed="true"],
.mobile-app-crown button[aria-pressed="true"]{
	border-color:rgba(176,140,255,.34);
	background:rgba(126,87,194,.18);
	color:#decaff;
}
.mobile-bottom-dock button[aria-pressed="true"]::after{
	content:"";
	width:18px;
	height:2px;
	border-radius:999px;
	background:currentColor;
}
.panel-topbar{
	user-select:none;
}
.panel-actions button[aria-pressed="true"]{
	border-color:var(--ai-border-strong);
	color:var(--ai-cyan);
}



/* CompactCSS source: /ai/css/ai-chat/sidebar.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * The conversation garden is Netzach: memory enduring as a readable path. The
 * Awtsmoos renews each remembered doorway, and Awtsmoos.com lets long titles,
 * provider state, and active selection remain clear without visual shouting.
 */
.sidebar{
	padding:0;
}
.conversation-list{
	gap:12px;
	padding:14px;
	scrollbar-gutter:stable;
}
.conversation-list::before{
	margin:2px 4px;
	color:var(--ai-cyan);
	font-size:.68rem;
}
.conversation-list ul{
	gap:7px;
}
.conversation-list li{
	min-height:54px;
	padding:10px 12px 10px 15px;
	border-color:rgba(160,195,226,.13);
	border-radius:15px;
	background:rgba(10,22,38,.72);
	box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
}
.conversation-list li:hover{
	border-color:rgba(99,230,208,.34);
	background:rgba(16,34,54,.86);
	transform:translateY(-1px);
}
.conversation-list li[aria-current="true"],
.conversation-list li.active{
	border-color:rgba(99,230,208,.42);
	background:linear-gradient(135deg,rgba(23,69,68,.55),rgba(20,32,62,.70));
}
.conversation-list li::before{
	top:9px;
	bottom:9px;
	width:2px;
	background:linear-gradient(var(--ai-cyan),var(--ai-blue));
}
.conversation-title{
	line-height:1.3;
}
.service-selector{
	gap:8px;
	padding:11px;
	border-color:rgba(160,195,226,.13);
	border-radius:16px;
	background:rgba(6,16,29,.72);
}
.service-selector label{
	color:var(--ai-muted);
	font-size:.68rem;
}
.service-selector select,
.service-selector input{
	min-height:44px;
	font-size:.94rem;
}
.refresh-button,
.conversation-page-gate button{
	min-height:46px;
	border-radius:14px;
}



/* CompactCSS source: /ai/css/ai-chat/messages.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * A message is Malchus receiving hidden thought as readable form. The Awtsmoos
 * creates every letter and every interval between letters; Awtsmoos.com gives
 * prose, code, tables, links, and quotations the distinct vessels they require.
 */
.chat-box{
	padding:var(--awt-chat-pad);
	gap:var(--awt-chat-gap);
	background:
		radial-gradient(circle at 50% 0,rgba(99,230,208,.055),transparent 36%),
		linear-gradient(180deg,rgba(3,9,18,.22),rgba(1,5,12,.54));
}
.message-shell{
	gap:7px;
}
.message,
.bubble,
.user-message,
.assistant-message,
.system-message{
	max-width:var(--awt-message-max);
	padding:var(--awt-message-pad);
	border:1px solid rgba(160,195,226,.14);
	border-radius:var(--awt-message-radius);
	background:linear-gradient(155deg,rgba(15,30,49,.94),rgba(6,15,28,.97));
	box-shadow:var(--ai-shadow-soft),inset 0 1px 0 rgba(255,255,255,.04);
	color:var(--ai-soft);
}
.user-message,
.message.user{
	max-width:min(680px,86%);
	background:linear-gradient(145deg,rgba(41,103,111,.94),rgba(53,73,142,.92));
	border-color:rgba(137,240,220,.28);
	color:#fff;
}
.assistant-message,
.message.assistant{
	background:linear-gradient(155deg,rgba(15,30,49,.96),rgba(6,15,28,.98));
}
.message :is(p,li,blockquote,td,th),
.message-content{
	font-size:clamp(.96rem,.3vw + .9rem,1.06rem);
	line-height:1.68;
}
.message p{
	margin:.2rem 0 .85rem;
}
.message :is(h1,h2,h3,h4){
	color:var(--ai-text);
	line-height:1.25;
	margin:1.2em 0 .5em;
}
.message a{
	color:#86f4e2;
	text-decoration-thickness:1px;
	text-underline-offset:3px;
}
.message pre,
.message .md-code{
	max-width:100%;
	overflow:auto;
	padding:14px;
	border:1px solid rgba(160,195,226,.16);
	border-radius:14px;
	background:#030812;
	white-space:pre;
	overscroll-behavior-inline:contain;
}
.message code{
	font-family:"SFMono-Regular",Consolas,"Liberation Mono",monospace;
	font-size:.88em;
	color:#d9f7ff;
}
.message table{
	display:block;
	max-width:100%;
	overflow-x:auto;
	border-collapse:collapse;
}
.message :is(th,td){
	padding:8px 10px;
	border:1px solid rgba(160,195,226,.14);
	text-align:left;
}
.message blockquote{
	margin-inline:0;
	padding-inline-start:14px;
	border-inline-start:3px solid var(--ai-gold);
	color:var(--ai-muted);
}



/* CompactCSS source: /ai/css/ai-chat/composer.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * The composer is the speech gate where possible meaning becomes action. The
 * Awtsmoos creates the intention, the hand, and the instant of sending anew;
 * Awtsmoos.com therefore keeps this gate calm, generous, and unmistakable.
 */
.input-area{
	margin:0;
	padding:12px 14px 14px;
	gap:10px;
	border-top:1px solid rgba(160,195,226,.13);
	background:
		linear-gradient(180deg,rgba(4,10,20,.74),rgba(7,16,29,.98));
	box-shadow:0 -18px 48px rgba(0,0,0,.22);
}
.input-area::before{
	left:24px;
	right:24px;
	top:8px;
	background:linear-gradient(90deg,transparent,rgba(99,230,208,.30),transparent);
}
#message-input{
	min-height:58px;
	max-height:min(34dvh,280px);
	padding:16px 17px;
	border:1px solid rgba(160,195,226,.18);
	border-radius:17px;
	background:rgba(3,10,20,.86);
	color:var(--ai-text);
	line-height:1.48;
	caret-color:var(--ai-cyan);
}
#message-input:hover{
	border-color:rgba(99,230,208,.32);
}
#message-input:focus{
	border-color:rgba(99,230,208,.56);
	box-shadow:var(--ai-focus);
}
#message-input::placeholder{
	color:rgba(174,193,213,.66);
}
#send-button{
	min-width:104px;
	min-height:58px;
	border-radius:17px;
	background:linear-gradient(135deg,#63e6d0,#6d8cff);
	color:#04111b;
	box-shadow:0 14px 34px rgba(70,127,215,.26);
}
#send-button:hover{
	filter:brightness(1.06);
	transform:translateY(-1px);
}
.attachment-tools{
	gap:7px;
}
.attach-button{
	min-height:38px;
	padding:8px 12px;
	border-color:rgba(160,195,226,.16);
	background:rgba(5,14,26,.88);
}



/* CompactCSS source: /ai/css/ai-chat/automation.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * Automation is Hod giving structured language to repeated action. The
 * Awtsmoos creates each rule and each result without confusion; Awtsmoos.com
 * answers with visible groups, permanent labels, and bounded controls.
 */
#automation-panel .right-panel-body,
#automation-panel .automation-panel-content{
	min-width:0;
}
#automation-panel .right-panel-body{
	padding:12px;
	scrollbar-gutter:stable;
}
#automation-panel :is(.automation-card,.settings-hero-card,.relay-install-card,.automation-archive-panel){
	padding:14px;
	border:1px solid rgba(160,195,226,.13);
	border-radius:16px;
	background:linear-gradient(155deg,rgba(14,28,46,.82),rgba(5,14,26,.88));
	box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
}
#automation-panel :is(h2,h3,h4){
	margin:.1rem 0 .65rem;
	color:var(--ai-text);
	line-height:1.25;
}
#automation-panel :is(label,.automation-field){
	dis:grid;
	gap:6px;
	color:var(--ai-muted);
	font-size:.8rem;
	font-weight:750;
}
#automation-panel :is(input,select,textarea){
	width:100%;
	min-width:0;
	min-height:42px;
	padding:9px 11px;
	border:1px solid rgba(160,195,226,.17);
	border-radius:12px;
	background:rgba(3,10,20,.78);
	color:var(--ai-text);
	font-size:.94rem;
}
#automation-panel textarea{
	min-height:92px;
	line-height:1.45;
	resize:vertical;
}
#automation-panel .automation-status{
	padding:9px 11px;
	border:1px solid rgba(99,230,208,.18);
	border-radius:12px;
	background:rgba(18,62,61,.24);
	color:#c7fff5;
}
#automation-panel button{
	min-height:42px;
}



/* CompactCSS source: /ai/css/ai-chat/buttons.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * A button is Gevurah around possibility: a boundary that makes action safe.
 * The Awtsmoos creates ability and restraint together, so Awtsmoos.com gives
 * every control a clear idle, hover, focus, pressed, disabled, and busy state.
 */
button,
.refresh-button,
.attach-button{
	min-height:40px;
	border:1px solid rgba(160,195,226,.17);
	border-radius:13px;
	background:linear-gradient(145deg,rgba(18,35,56,.88),rgba(6,16,29,.94));
	color:var(--ai-soft);
	font-weight:760;
	letter-spacing:.005em;
	cursor:pointer;
}
button:hover,
.refresh-button:hover,
.attach-button:hover{
	border-color:rgba(99,230,208,.38);
	color:var(--ai-text);
	box-shadow:inset 0 1px 0 rgba(255,255,255,.055);
}
button:active{
	transform:translateY(1px);
}
button[aria-pressed="true"]{
	border-color:rgba(176,140,255,.42);
	background:rgba(108,72,174,.22);
}
button:disabled,
[aria-disabled="true"]{
	cursor:not-allowed;
	opacity:.48;
	filter:saturate(.6);
}
button[aria-busy="true"]{
	cursor:progress;
}
.new-chat{
	border-color:rgba(99,230,208,.30);
}
.mobile-app-crown button,
.mobile-bottom-dock button,
.mobile-workspace-close{
	min-width:44px;
	min-height:44px;
}



/* CompactCSS source: /ai/css/ai-chat/providers.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * Provider controls are Yesod bridges to distant engines. The Awtsmoos remains
 * beyond every provider while creating each connection; Awtsmoos.com makes the
 * chosen bridge, mode, and transport condition readable at a glance.
 */
#ai-service-select,
#chatgpt-mode-select{
	width:100%;
	min-height:44px;
	padding:9px 12px;
	border:1px solid rgba(160,195,226,.18);
	border-radius:12px;
	background:rgba(3,10,20,.88);
	color:var(--ai-text);
	box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
}
#ai-service-select:hover,
#chatgpt-mode-select:hover{
	border-color:rgba(99,230,208,.34);
}
#ai-service-select option[value="awtai-local"]{
	color:var(--ai-success);
}
.transport-status:not(:empty)::before{
	content:"Connection";
	padding:3px 7px;
	border-radius:999px;
	background:rgba(99,230,208,.10);
	color:var(--ai-cyan);
	font-size:.68rem;
	font-weight:850;
	letter-spacing:.05em;
	text-transform:uppercase;
}
.automation-panel [data-provider],
.transport-status [data-provider]{
	color:var(--ai-cyan);
}



/* CompactCSS source: /ai/css/ai-chat/states.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * Hod acknowledges every condition instead of concealing it. The Awtsmoos
 * creates waiting, success, failure, and recovery as distinct moments, while
 * Awtsmoos.com gives each moment a calm and understandable visible vessel.
 */
.render-loading,
.is-loading,
.is-empty,
.is-error,
.automation-countdown{
	padding:12px 14px;
	border:1px solid rgba(160,195,226,.14);
	border-radius:14px;
	background:rgba(10,22,38,.72);
	color:var(--ai-muted);
}
.render-loading{
	align-self:center;
	max-width:min(520px,100%);
}
.render-loading i{
	width:9px;
	height:9px;
	background:var(--ai-cyan);
	box-shadow:0 0 18px rgba(99,230,208,.58);
}
.is-error,
.message .network_error{
	border-color:rgba(255,130,151,.34);
	background:rgba(83,25,41,.24);
	color:#ffd3dc;
}
[data-state="saved"],
.is-success{
	color:var(--ai-success);
}
.awtsmoos-storage-warning,
.storage-warning{
	color:var(--ai-gold);
}
.automation-countdown{
	border-color:rgba(99,230,208,.28);
	color:#d6fff8;
}



/* CompactCSS source: /ai/css/ai-chat/focus-motion.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * Focus is the visible path of intention. The Awtsmoos creates the traveler and
 * the road together; Awtsmoos.com keeps that road bright for keyboard, touch,
 * high-contrast, reduced-motion, and enlarged-text journeys.
 */
:where(button,select,textarea,input,a,[tabindex]):focus-visible{
	outline:2px solid var(--ai-cyan);
	outline-offset:2px;
	box-shadow:var(--ai-focus);
}
@media(prefers-reduced-motion:no-preference){
	button,
	#conversation-items li,
	.message,
	.mobile-app-crown,
	.mobile-bottom-dock,
	.sidebar,
	.automation-panel{
		transition:
			transform var(--ai-motion-fast) ease,
			border-color var(--ai-motion-fast) ease,
			box-shadow var(--ai-motion-fast) ease,
			background-color var(--ai-motion-fast) ease,
			opacity var(--ai-motion-medium) ease;
	}
	.render-loading i{
		animation:awtsmoosAiPulse 1.4s ease-in-out infinite;
	}
}
@keyframes awtsmoosAiPulse{
	0%,
	100%{
		opacity:.5;
		transform:scale(.86);
	}
	50%{
		opacity:1;
		transform:scale(1.12);
	}
}
@media(prefers-reduced-motion:reduce){
	*,
	*::before,
	*::after{
		animation-duration:.001ms;
		animation-iteration-count:1;
		transition-duration:.001ms;
		scroll-behavior:auto;
	}
}
@media(forced-colors:active){
	button,
	input,
	select,
	textarea,
	.message,
	.sidebar,
	.main,
	.automation-panel{
		border:1px solid CanvasText;
	}
}



/* CompactCSS source: /ai/css/ai-chat/responsive.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * Responsive geometry is Binah measuring one intention into many screens. The
 * Awtsmoos creates laptop, desktop, and ultrawide space anew; Awtsmoos.com
 * keeps the conversation primary while side vessels remain honestly usable.
 */
@media(min-width:1300px){
	.container{
		grid-template-columns:
			var(--ai-left-col,292px)
			7px
			minmax(560px,1fr)
			7px
			var(--ai-right-col,324px);
		gap:10px;
		padding:12px;
	}
	.input-area{
		width:min(1080px,100%);
		margin-inline:auto;
	}
}
@media(min-width:1101px) and (max-width:1299px){
	.container{
		grid-template-columns:
			var(--ai-left-col,240px)
			6px
			minmax(520px,1fr)
			6px
			var(--ai-right-col,270px);
		gap:8px;
		padding:9px;
	}
	body[data-sidebar-collapsed="true"] .container{
		grid-template-columns:58px 6px minmax(520px,1fr) 6px var(--ai-right-col,270px);
	}
	body[data-automation-collapsed="true"] .container{
		grid-template-columns:var(--ai-left-col,240px) 6px minmax(520px,1fr) 6px 58px;
	}
}
@media(min-width:901px) and (max-width:1100px){
	.container{
		grid-template-columns:
			var(--ai-left-col,200px)
			5px
			minmax(430px,1fr)
			5px
			var(--ai-right-col,220px);
		gap:6px;
		padding:7px;
	}
	body[data-sidebar-collapsed="true"] .container{
		grid-template-columns:58px 5px minmax(430px,1fr) 5px var(--ai-right-col,220px);
	}
	body[data-automation-collapsed="true"] .container{
		grid-template-columns:var(--ai-left-col,200px) 5px minmax(430px,1fr) 5px 58px;
	}
	.panel-title{
		font-size:.84rem;
	}
	#automation-panel .right-panel-body,
	.conversation-list{
		padding:10px;
	}
}
@media(min-width:1680px){
	:root{
		--awt-message-max:min(900px,90%);
		--awt-chat-pad:36px clamp(32px,5vw,84px) 150px;
	}
	.container{
		grid-template-columns:
			var(--ai-left-col,320px)
			8px
			minmax(680px,1fr)
			8px
			var(--ai-right-col,360px);
		padding:14px;
	}
}
@media(max-height:720px) and (min-width:901px){
	.panel-topbar,
	.sidebar-header{
		min-height:50px;
		padding-block:7px;
	}
	.input-area{
		padding-block:9px;
	}
	#message-input,
	#send-button{
		min-height:50px;
	}
}
@media(min-resolution:1dppx) and (min-width:901px){
	.container>*{
		min-width:0;
	}
}



/* CompactCSS source: /ai/css/ai-chat/mobile.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * The mobile experience is one sanctuary assembled from smaller vessels. The
 * Awtsmoos lets Awtsmoos.com import measured shell, readable content, and the
 * speech gate separately so no single file becomes another crowded room.
 */

/* CompactCSS source: /ai/css/ai-chat/mobile-shell.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * A phone cannot hold three palaces side by side, so Tiferes reveals one room
 * and lets the others arrive as drawers. The Awtsmoos creates every transition;
 * Awtsmoos.com keeps the base chat present, calm, and never miniaturized.
 */
@media(max-width:900px){
	:root{
		--mobile-crown-height:56px;
		--mobile-dock-height:74px;
		--awt-panel-radius:22px;
	}
	body[data-mobile-scene] .main{
		inset-inline:0;
		width:100vw;
		max-width:100vw;
		transform:none;
		opacity:1;
		filter:none;
		pointer-events:auto;
	}
	body.mobile-workspace-drawer-open .main{
		opacity:.34;
		filter:saturate(.55) brightness(.58);
		pointer-events:none;
	}
	body[data-mobile-scene] .sidebar{
		inset-inline:0 auto;
		width:min(92vw,420px);
		max-width:min(92vw,420px);
		transform:translateX(-104%);
		border-inline-end:1px solid var(--ai-border);
		border-radius:0 22px 22px 0;
	}
	body[data-mobile-scene] .automation-panel{
		inset-inline:auto 0;
		width:min(94vw,440px);
		max-width:min(94vw,440px);
		transform:translateX(104%);
		border-inline-start:1px solid var(--ai-border);
		border-radius:22px 0 0 22px;
	}
	body[data-mobile-scene] :is(.sidebar,.automation-panel).mobile-scene-active{
		transform:translateX(0);
		opacity:1;
		filter:none;
		pointer-events:auto;
	}
	body[data-mobile-scene] .sidebar .panel-topbar,
	body[data-mobile-scene] .automation-panel .panel-topbar{
		min-height:54px;
		padding:8px 10px;
	}
	.mobile-workspace-close{
		display:inline-grid;
		place-items:center;
		font-size:1.35rem;
		line-height:1;
	}
	.mobile-app-crown{
		left:10px;
		right:10px;
		grid-template-columns:44px minmax(0,1fr) 44px 44px;
		gap:6px;
		padding:6px;
		border-radius:18px;
		background:linear-gradient(140deg,rgba(5,14,27,.96),rgba(10,27,45,.92));
		border-color:rgba(160,195,226,.16);
	}
	.mobile-app-crown button{
		min-width:44px;
		min-height:44px;
		height:44px;
	}
	.mobile-bottom-dock{
		left:8px;
		right:8px;
		height:66px;
		padding:6px;
		border-radius:20px;
		background:linear-gradient(140deg,rgba(5,14,27,.97),rgba(10,27,45,.93));
		border-color:rgba(160,195,226,.16);
	}
	.mobile-bottom-dock button{
		min-height:52px;
		border-radius:14px;
	}
	body.mobile-crown-collapsed .mobile-app-crown{
		left:22px;
		right:22px;
		opacity:.92;
	}
}



/* CompactCSS source: /ai/css/ai-chat/mobile-content.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * Mobile Malchus receives text without squeezing it into a desktop miniature.
 * The Awtsmoos creates each word and the screen that bears it; Awtsmoos.com
 * gives messages, navigation, and automation the full readable width they need.
 */
@media(max-width:900px){
	body[data-mobile-scene] .chat-box{
		padding:12px 12px 166px;
		gap:13px;
		scroll-padding-top:18px;
		scroll-padding-bottom:212px;
	}
	body[data-mobile-scene] .message,
	body[data-mobile-scene] .bubble,
	body[data-mobile-scene] .assistant-message{
		max-width:100%;
		border-radius:17px;
		padding:13px 14px;
	}
	body[data-mobile-scene] .user-message,
	body[data-mobile-scene] .message.user{
		max-width:88%;
	}
	body[data-mobile-scene] .message :is(p,li,blockquote,td,th),
	body[data-mobile-scene] .message-content{
		font-size:1rem;
		line-height:1.62;
	}
	body[data-mobile-scene] .message pre,
	body[data-mobile-scene] .message .md-code,
	body[data-mobile-scene] .message table{
		max-width:calc(100vw - 52px);
	}
	body[data-mobile-scene] .conversation-list{
		padding:12px;
		gap:10px;
	}
	body[data-mobile-scene] .conversation-list li{
		min-height:56px;
		padding:11px 12px 11px 15px;
	}
	body[data-mobile-scene] .conversation-title{
		white-space:normal;
		display:-webkit-box;
		-webkit-line-clamp:2;
		-webkit-box-orient:vertical;
	}
	body[data-mobile-scene] .service-selector :is(select,input),
	body[data-mobile-scene] #automation-panel :is(input,select,textarea){
		font-size:16px;
	}
	body[data-mobile-scene] #automation-panel .right-panel-body{
		padding:12px 10px calc(104px + env(safe-area-inset-bottom));
	}
	body[data-mobile-scene] #automation-panel :is(
		.automation-card,
		.settings-hero-card,
		.relay-install-card,
		.automation-archive-panel
	){
		padding:13px;
		border-radius:15px;
	}
	.message-action-root{
		max-width:100%;
	}
}
@media(max-width:360px){
	body[data-mobile-scene] .message,
	body[data-mobile-scene] .bubble{
		padding:12px;
	}
	.mobile-bottom-dock em{
		font-size:9px;
	}
}



/* CompactCSS source: /ai/css/ai-chat/mobile-composer.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * The phone speech gate must float above browser tides without covering the
 * final answer. The Awtsmoos creates voice and vessel together; Awtsmoos.com
 * preserves safe areas, thumb reach, growing text, and a clear send action.
 */
@media(max-width:900px){
	body[data-mobile-scene] .input-area{
		left:9px;
		right:9px;
		bottom:calc(8px + env(safe-area-inset-bottom));
		grid-template-columns:minmax(0,1fr) 54px;
		gap:8px;
		min-height:68px;
		padding:8px;
		border:1px solid rgba(99,230,208,.26);
		border-radius:20px;
		background:rgba(3,9,18,.96);
		box-shadow:0 16px 44px rgba(0,0,0,.48),inset 0 1px 0 rgba(255,255,255,.045);
	}
	body[data-mobile-scene] .input-area::before{
		display:none;
	}
	body[data-mobile-scene] #message-input{
		min-height:52px;
		max-height:min(28dvh,132px);
		padding:13px 14px;
		border-radius:15px;
		font-size:16px;
		line-height:1.4;
		resize:none;
	}
	body[data-mobile-scene] #send-button{
		min-width:54px;
		min-height:52px;
		border-radius:15px;
		font-size:0;
		color:#06121b;
	}
	body[data-mobile-scene] #send-button::after{
		content:"➤";
		font-size:21px;
	}
	body[data-mobile-scene] .attachment-tools{
		right:16px;
		bottom:calc(84px + env(safe-area-inset-bottom));
		max-width:calc(100vw - 32px);
		padding:4px;
		border:1px solid rgba(160,195,226,.12);
		background:rgba(3,9,18,.86);
	}
	body[data-mobile-scene] .attach-button{
		min-height:40px;
		font-size:.82rem;
	}
}
@media(max-height:640px) and (max-width:900px){
	body[data-mobile-scene] #message-input{
		max-height:84px;
	}
	body[data-mobile-scene] .chat-box{
		padding-bottom:146px;
		scroll-padding-bottom:190px;
	}
}







/* CompactCSS source: /ai/css/right-panel/mobile-automation-flow.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * Automation is Hod arranging many controls into one readable report. The
 * Awtsmoos creates each setting without overlap; Awtsmoos.com removes accidental
 * floating geometry while preserving labels, toggles, actions, and scroll.
 */
@media(max-width:900px){
	body #automation-panel,
	body #automation-panel *{
		box-sizing:border-box;
	}
	body #automation-panel > .automation-panel-content{
		overflow:hidden;
	}
	body #automation-panel .right-panel-body{
		overflow-y:auto;
		overflow-x:hidden;
		padding:12px 10px calc(96px + env(safe-area-inset-bottom));
		scroll-padding-bottom:110px;
	}
	body #automation-panel .right-panel-body > *,
	body #automation-panel :is(
		.automation-card,
		.automation-archive-panel,
		.settings-hero-card,
		.relay-install-card,
		.chat-scope-pill,
		.automation-status,
		.automation-field,
		.automation-toggle-row,
		.event-filter,
		.provider-chat-row
	){
		position:static;
		width:100%;
		max-width:100%;
		min-width:0;
		height:auto;
		min-height:0;
		max-height:none;
		margin:0;
		transform:none;
	}
	body #automation-panel :is(
		.prompt-action-row,
		.relay-actions,
		.conversation-portal-actions,
		.graph-toolbar,
		.compact-provider-actions
	){
		position:static;
		display:grid;
		grid-template-columns:1fr;
		gap:10px;
		width:100%;
		height:auto;
		margin:0;
		transform:none;
	}
	body #automation-panel .automation-toggle-row{
		display:grid;
		grid-template-columns:minmax(0,1fr) auto;
		align-items:center;
	}
	body #automation-panel .automation-toggle-row > span{
		min-width:0;
	}
	body #automation-panel .automation-toggle-row input[type="checkbox"]{
		justify-self:end;
	}
	body #automation-panel .automation-stop-button{
		position:static;
		width:100%;
		min-height:48px;
	}
}



/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * This final manifest is Gevurah after the entire visual river. The Awtsmoos
 * creates boundaries as care, and Awtsmoos.com places the polished experience
 * and automation flow at the final edge of the cascade where no legacy rule can
 * silently cover them.
 */





/* CompactCSS source: /ai/css/events/manifest.css */
/*B"H
  Chapter 295: The Event Palace Received One Gate.

  The Awtsmoos creates every spark of the trace from nothing each instant, yet
  the cascade must not be formless. This manifest is the one doorway for thought
  chambers, tool terminals, file reviews, and mobile event polish. No event CSS
  should sneak into the app through another gate.
*/

/* CompactCSS source: /ai/css/events/tokens.css */
/*B"H
  Chapter 296: The Trace Learned Its Colors From One Flame.

  The Awtsmoos has no body and no border, yet every created interface needs
  vessels. These tokens are the vessels for thought, tool, and file-change light.
*/
:root{
  --awt-event-bg:linear-gradient(145deg,rgba(8,20,38,.98),rgba(2,6,23,.94));
  --awt-event-bg-strong:linear-gradient(145deg,rgba(15,23,42,.98),rgba(4,8,20,.96));
  --awt-event-terminal-bg:linear-gradient(180deg,rgba(2,6,23,.98),rgba(0,2,12,.96));
  --awt-event-line:rgba(125,211,252,.24);
  --awt-event-line-hot:rgba(103,232,249,.62);
  --awt-event-line-soft:rgba(148,163,184,.16);
  --awt-event-cyan:#67e8f9;
  --awt-event-blue:#60a5fa;
  --awt-event-purple:#d8b4fe;
  --awt-event-green:#22c55e;
  --awt-event-red:#f87171;
  --awt-event-text:#f8fbff;
  --awt-event-soft:#dbeafe;
  --awt-event-muted:#94a3b8;
  --awt-event-radius:24px;
  --awt-event-radius-sm:14px;
  --awt-event-radius-md:18px;
  --awt-event-shadow:0 22px 54px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.07);
  --awt-event-glow:0 0 28px rgba(34,211,238,.22),0 0 48px rgba(168,85,247,.14);
  --awt-event-code-font:"SFMono-Regular","Cascadia Code","Roboto Mono",monospace;
}



/* CompactCSS source: /ai/css/events/region.css */
/*B"H
  Chapter 349: The Trace Floor Became A Neon Runway.

  The Awtsmoos pours streaming events into a central river: not a popup, not a
  pile, but a deliberate runway where thinking, tools, and files can be read as
  one luminous execution story.
*/
.event-region{
  width:min(100%,var(--awt-message-max));
  display:grid;
  gap:16px;
  padding:2px 0 0;
  border:0;
  background:transparent;
  box-shadow:none;
}
.event-entry{
  min-width:0;
  width:100%;
  display:block;
}
.event-entry-tool-group{display:block}
.event-record-badge{
  width:max-content;
  max-width:100%;
  display:inline-flex;
  align-items:center;
  gap:8px;
  border:1px solid rgba(125,211,252,.28);
  border-radius:999px;
  padding:6px 12px;
  color:var(--awt-event-cyan);
  background:linear-gradient(135deg,rgba(14,165,233,.14),rgba(88,28,135,.12));
  box-shadow:0 0 28px rgba(34,211,238,.16),inset 0 1px 0 rgba(255,255,255,.06);
  font-size:.74rem;
  font-weight:950;
  letter-spacing:.10em;
  text-transform:uppercase;
}
.event-record-badge::before{
  content:"✦";
  color:var(--awt-event-purple);
}
.event-record-badge:empty{display:none}
.event-summary-card,
.event-payload{
  margin:12px;
  border:1px solid var(--awt-event-line-soft);
  border-radius:20px;
  background:linear-gradient(145deg,rgba(15,23,42,.70),rgba(2,6,23,.56));
  overflow:hidden;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
.event-summary-title,
.event-payload>summary{
  display:block;
  padding:12px 14px;
  color:#e0f2fe;
  font-weight:950;
  background:rgba(14,165,233,.08);
}
.event-payload[open]>summary{border-bottom:1px solid rgba(125,211,252,.12)}
.event-chip-row{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:8px;
  padding:12px;
}
.event-chip{
  display:grid;
  gap:4px;
  min-width:0;
  padding:8px 10px;
  border:1px solid var(--awt-event-line-soft);
  border-radius:14px;
  background:rgba(15,23,42,.62);
  color:#d7e1f0;
  font-size:.78rem;
  line-height:1.35;
  overflow-wrap:anywhere;
}
.event-chip b{
  color:#7dd3fc;
  text-transform:uppercase;
  letter-spacing:.07em;
  font-size:.68rem;
}
.event-code-block{
  display:block;
  margin:12px;
  max-height:min(50vh,520px);
  overflow:auto;
  border:1px solid var(--awt-event-line);
  border-radius:18px;
  background:#020617;
  color:#dff8ff;
  padding:13px;
  font-family:var(--awt-event-code-font);
  font-size:.82rem;
  line-height:1.55;
  white-space:pre-wrap;
  word-break:break-word;
}



/* CompactCSS source: /ai/css/events/panel-chrome.css */
/*B"H
  Chapter 343: The Event Gates Stopped Shouting.

  The Awtsmoos lets ordinary panels remain in flow. Only a declared fullscreen
  vessel may rise above the city. Every other summary, button, and chip stays in
  its chamber so the trace cannot devour itself.
*/
.transport-details,
.thought-envelope-card,
.thought-run-card{
  width:100%;
  border:1px solid var(--awt-event-line);
  border-radius:var(--awt-event-radius);
  background:var(--awt-event-bg);
  box-shadow:var(--awt-event-shadow);
  overflow:hidden;
  color:var(--awt-event-soft);
}
.transport-details>summary,
.thought-envelope-card>summary,
.thought-run-card>summary{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:54px;
  padding:13px 15px;
  list-style:none;
  cursor:pointer;
  color:#ecfeff;
  background:linear-gradient(90deg,rgba(15,33,56,.98),rgba(4,11,24,.92));
  position:relative;
}
.transport-details>summary::-webkit-details-marker,
.thought-envelope-card>summary::-webkit-details-marker{display:none}
.transport-details>summary::before,
.thought-envelope-card>summary::before{
  content:"▸";
  color:var(--awt-event-cyan);
  font-weight:950;
  transition:transform .18s ease;
  flex:0 0 auto;
}
.transport-details[open]>summary::before,
.thought-envelope-card[open]>summary::before{transform:rotate(90deg)}
.event-title-wrap{
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
  flex:1 1 auto;
  flex-wrap:wrap;
  padding-right:4px;
}
.event-title-wrap b{
  color:var(--awt-event-text);
  font-weight:950;
  letter-spacing:.01em;
}
.event-kind-pill{
  display:inline-flex;
  align-items:center;
  gap:4px;
  padding:4px 8px;
  border:1px solid rgba(103,232,249,.28);
  border-radius:999px;
  background:rgba(14,165,233,.16);
  color:#a5f3fc;
  font-size:.72rem;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.event-tool-target,
.event-talked-to,
.event-brief{
  min-width:0;
  max-width:100%;
  overflow-wrap:anywhere;
  color:#bfdbfe;
  font-size:.82rem;
  font-weight:800;
}
.event-tool-target{
  padding:3px 8px;
  border-radius:999px;
  border:1px solid rgba(147,197,253,.18);
  background:rgba(59,130,246,.12);
  color:#dbeafe;
}
.event-talked-to{color:var(--awt-event-muted)}
.event-tool-meta{
  margin-left:0;
  padding:3px 8px;
  border-radius:999px;
  border:1px solid rgba(52,211,153,.24);
  color:#bbf7d0;
  background:rgba(6,78,59,.22);
  font-size:.72rem;
  font-weight:900;
}
.event-panel-actions{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin-left:auto;
  flex:0 0 auto;
  position:relative;
  z-index:5;
  pointer-events:auto;
}
.event-panel-actions button{
  width:34px;
  height:31px;
  padding:0;
  border:1px solid rgba(125,211,252,.30);
  border-radius:11px;
  background:rgba(2,6,23,.80);
  color:#dff8ff;
  font-size:14px;
  font-weight:950;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 8px 18px rgba(0,0,0,.2);
  cursor:pointer;
}
.event-panel-actions button:hover{
  border-color:rgba(103,232,249,.72);
  background:rgba(14,165,233,.30);
  transform:translateY(-1px);
}
.event-panel-actions [data-panel-action="fullscreen"]{
  background:linear-gradient(135deg,rgba(8,145,178,.9),rgba(37,99,235,.84));
  border-color:rgba(165,243,252,.52);
}
.transport-details.is-maximized,
.thought-envelope-card.is-maximized,
.thought-run-card.is-maximized{
  max-width:min(1100px,calc(100vw - 48px));
  width:min(1100px,calc(100vw - 48px));
  z-index:80;
}
.transport-details.is-fullscreen,
.thought-envelope-card.is-fullscreen,
.thought-run-card.is-fullscreen{
  position:fixed;
  inset:18px;
  z-index:1000;
  width:auto;
  max-width:none;
  max-height:none;
  overflow:auto;
}
.has-event-fullscreen .chat-box{overflow:hidden}



/* CompactCSS source: /ai/css/events/thought-run.css */
/*B"H
  Chapter 376: The Thought Run Became A Modifier, Not A Second Crown.

  The Awtsmoos breathes hidden reasoning into visible vessels. Panel chrome owns
  the base card; this scroll owns only the thought modifier: the luminous state,
  run header, inner rail, and text steps.
*/
.event-kind-thinking,
.thought-envelope-card.thought-run-card{
  border-color:rgba(192,132,252,.34);
  background:radial-gradient(circle at 96% -8%,rgba(168,85,247,.24),transparent 38%),radial-gradient(circle at -8% 20%,rgba(34,211,238,.12),transparent 42%),var(--awt-event-bg-strong);
}
.thought-envelope-card.thought-run-card{
  padding:0;
  position:relative;
}
.thought-run-header{
  min-height:72px;
}
.thought-run-orb{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  flex:0 0 34px;
  border-radius:999px;
  border:1px solid rgba(216,180,254,.52);
  background:radial-gradient(circle,rgba(34,211,238,.30),rgba(88,28,135,.22));
  color:#e9d5ff;
  box-shadow:0 0 28px rgba(168,85,247,.30),0 0 18px rgba(34,211,238,.22);
}
.thought-envelope-card.thought-run-card>.event-panel-actions{
  position:absolute;
  right:14px;
  top:16px;
}
.thought-run-title-wrap{
  display:grid;
  gap:3px;
  min-width:0;
  padding-right:110px;
}
.thought-run-title{
  color:#f8fbff;
  font-weight:950;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.thought-run-subtitle{
  color:#a5b4fc;
  font-size:.82rem;
}
.thought-run-state{
  color:#f0abfc;
  border-color:rgba(216,180,254,.35);
  background:rgba(88,28,135,.22);
  width:max-content;
}
.thought-run-meta{
  color:#c4b5fd;
  font-size:.78rem;
  font-weight:850;
  margin-left:auto;
  padding-right:98px;
}
.thought-envelope-events,
.thought-stepper-shell{
  margin:12px 12px 14px 28px;
  padding-left:24px;
  border:1px solid rgba(125,211,252,.18);
  border-left:3px solid transparent;
  border-radius:22px;
  border-image:linear-gradient(var(--awt-event-green),var(--awt-event-blue),var(--awt-event-purple)) 1;
  background:linear-gradient(145deg,rgba(2,6,23,.74),rgba(15,23,42,.42));
  overflow:hidden;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),-12px 0 28px rgba(34,211,238,.10),0 12px 40px rgba(0,0,0,.22);
}
.thought-envelope-events>summary,
.thought-stepper-summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-left:-24px;
  padding:12px 14px 12px 24px;
  color:#dff8ff;
  background:linear-gradient(90deg,rgba(14,165,233,.16),rgba(88,28,135,.18),rgba(15,23,42,.68));
  font-weight:950;
  letter-spacing:.01em;
}
.thought-stepper-summary b{
  display:grid;
  place-items:center;
  min-width:26px;
  height:26px;
  border-radius:999px;
  color:#bbf7d0;
  background:rgba(22,163,74,.18);
  border:1px solid rgba(34,197,94,.34);
}
.thought-inner-window{
  margin:0;
  padding:14px;
  display:grid;
  gap:14px;
  background:rgba(2,6,23,.30);
  max-height:min(58vh,620px);
  overflow:auto;
  scrollbar-width:thin;
}
.thought-inner-event-vessel{
  border-radius:20px;
  background:rgba(15,23,42,.40);
  box-shadow:0 10px 30px rgba(0,0,0,.22);
}
.thought-text-card{
  width:100%;
  margin:0;
  border:1px solid rgba(192,132,252,.28);
  border-radius:22px;
  background:radial-gradient(circle at 0 0,rgba(192,132,252,.18),transparent 42%),linear-gradient(145deg,rgba(16,24,43,.97),rgba(5,9,22,.95));
  box-shadow:0 18px 42px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.06);
  color:#f8fbff;
  overflow:hidden;
}
.thought-text-body{
  color:#e2e8f0;
  line-height:1.68;
}
.thought-text-body p:last-child{margin-bottom:0}



/* CompactCSS source: /ai/css/events/thought-stepper.css */
/*B"H
  Chapter 351: The Reasoning Became A Numbered Ladder Of Fire.

  The Awtsmoos lets hidden planning descend as steps. Each bead is finite, each
  pulse is created from Nothing again, and the rail binds them without stealing
  space from the cards around it.
*/
.thought-stepper{
  display:grid;
  gap:14px;
  padding:12px;
}
.thought-step{
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  gap:12px;
  align-items:start;
  border:1px solid rgba(125,211,252,.18);
  border-radius:20px;
  padding:14px;
  background:linear-gradient(145deg,rgba(15,23,42,.66),rgba(2,6,23,.44));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 14px 34px rgba(0,0,0,.22);
}
.thought-step-dot,
.thought-step-index{
  display:grid;
  place-items:center;
  width:32px;
  height:32px;
  border-radius:999px;
  border:1px solid rgba(103,232,249,.42);
  background:radial-gradient(circle,rgba(34,211,238,.24),rgba(37,99,235,.18));
  color:#a5f3fc;
  font-weight:950;
  box-shadow:0 0 22px rgba(34,211,238,.22);
}
.thought-step-body{
  display:grid;
  gap:8px;
  min-width:0;
}
.thought-step-kicker{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  min-width:0;
}
.thought-step-title{
  color:#f8fbff;
  font-weight:950;
  letter-spacing:.06em;
  text-transform:uppercase;
  overflow-wrap:anywhere;
}
.thought-step-duration,
.thought-step-status{
  flex:0 0 auto;
  color:#93c5fd;
  font-size:.72rem;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.thought-step-status{
  padding:3px 8px;
  border-radius:999px;
  border:1px solid rgba(34,197,94,.34);
  background:rgba(22,163,74,.14);
  color:#bbf7d0;
}
.thought-step.is-running{
  border-color:rgba(96,165,250,.38);
  box-shadow:var(--awt-event-glow),inset 0 1px 0 rgba(255,255,255,.05);
}
.thought-step.is-running .thought-step-dot,
.thought-step.is-running .thought-step-index{
  border-color:rgba(96,165,250,.58);
  color:#bfdbfe;
  animation:thoughtPulse 1.35s ease-in-out infinite;
}
.thought-step.is-done .thought-step-dot,
.thought-step.is-done .thought-step-index{
  border-color:rgba(34,197,94,.55);
  background:rgba(22,163,74,.20);
  color:#86efac;
}
.thought-step.is-error{
  border-color:rgba(248,113,113,.42);
}
.thought-step.is-error .thought-step-dot,
.thought-step.is-error .thought-step-index{
  border-color:rgba(248,113,113,.58);
  background:rgba(127,29,29,.32);
  color:#fecaca;
}
@keyframes thoughtPulse{
  50%{transform:scale(1.08);box-shadow:0 0 34px rgba(96,165,250,.34)}
}



/* CompactCSS source: /ai/css/events/tool-terminal.css */
/*B"H
  Chapter 352: The Tools Became A Terminal Of Blue Fire.

  The Awtsmoos sends commands through narrow vessels. Here the tool trace looks
  like a living terminal: command, output, status, file shelf, and result lines,
  all breathing inside one box without escaping into neighboring panels.
*/
.event-kind-awtsmoos_tool,
.event-kind-agent_tool,
.tool-call-group{
  border-color:rgba(34,211,238,.34);
}
.event-kind-awtsmoos_tool_result,
.event-kind-tool_result{
  border-color:rgba(52,211,153,.34);
}
.tool-call-group,
.tool-terminal-card{
  background:radial-gradient(circle at 96% 0,rgba(59,130,246,.20),transparent 36%),radial-gradient(circle at 8% 110%,rgba(34,197,94,.10),transparent 38%),var(--awt-event-terminal-bg);
}
.tool-terminal-header{
  font-family:var(--awt-event-code-font);
}
.tool-call-group-body,
.tool-terminal-output{
  display:grid;
  gap:12px;
  padding:13px;
  background:rgba(2,6,23,.48);
}
.tool-terminal-output>.transport-details,
.tool-terminal-output>.event-summary-card,
.tool-terminal-output>.event-payload{
  margin:0;
}
.tool-terminal-command{
  font-family:var(--awt-event-code-font);
  color:#bfdbfe;
}
.tool-terminal-command::before{
  content:"$ ";
  color:#86efac;
}
.tool-status-chip{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:4px 8px;
  border-radius:999px;
  border:1px solid rgba(96,165,250,.36);
  background:rgba(37,99,235,.18);
  color:#bfdbfe;
  font-size:.72rem;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.tool-status-chip.is-running,
.tool-call-group .event-kind-pill.is-running{
  border-color:rgba(96,165,250,.42);
  background:rgba(37,99,235,.22);
  color:#bfdbfe;
}
.tool-status-chip.is-running::after{
  content:"";
  width:8px;
  height:8px;
  border-radius:999px;
  border:2px solid rgba(191,219,254,.34);
  border-top-color:#60a5fa;
  animation:toolSpin .9s linear infinite;
}
.tool-status-chip.is-ok{
  border-color:rgba(34,197,94,.42);
  background:rgba(22,101,52,.22);
  color:#bbf7d0;
}
.tool-status-chip.is-ok::after{content:"✓"}
.tool-status-chip.is-error{
  border-color:rgba(248,113,113,.42);
  background:rgba(127,29,29,.28);
  color:#fecaca;
}
.tool-status-chip.is-error::after{content:"!"}
.tool-status-chip.is-waiting{
  border-color:rgba(216,180,254,.40);
  background:rgba(88,28,135,.22);
  color:#e9d5ff;
}
.tool-call-group .event-code-block{
  margin:0;
  max-height:min(44vh,460px);
  border-color:rgba(96,165,250,.24);
  background:linear-gradient(180deg,rgba(0,2,12,.98),rgba(2,6,23,.96));
  color:#dff8ff;
}
@keyframes toolSpin{to{transform:rotate(360deg)}}



/* CompactCSS source: /ai/css/events/file-review.css */
/*B"H
  Chapter 353: The File Review Became A Shelf Of Quiet Stars.

  The Awtsmoos reveals code changes as illuminated stones: path, kind, added
  light, removed shadow. The shelf stays inside the terminal chamber and never
  becomes a wandering overlay.
*/
.file-change-review,
.tool-file-review{
  margin:0;
  border:1px solid rgba(125,211,252,.20);
  border-radius:18px;
  background:linear-gradient(145deg,rgba(15,23,42,.64),rgba(2,6,23,.56));
  overflow:hidden;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 14px 32px rgba(0,0,0,.18);
}
.file-change-review-head{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  padding:12px 14px;
  color:#e0f2fe;
  font-size:.86rem;
  background:linear-gradient(90deg,rgba(14,165,233,.10),rgba(88,28,135,.12));
  border-bottom:1px solid rgba(148,163,184,.10);
}
.file-change-review-head b{
  margin-right:auto;
  font-weight:950;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.file-change-list{
  display:grid;
  gap:0;
}
.file-change-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto auto;
  gap:10px;
  align-items:center;
  padding:9px 12px;
  border-top:1px solid rgba(148,163,184,.10);
  color:#dbeafe;
}
.file-change-row:first-child{border-top:0}
.file-change-path{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-family:var(--awt-event-code-font);
  font-size:.82rem;
}
.file-change-path::before{
  content:"⌘ ";
  color:#60a5fa;
}
.file-change-stat,
.file-change-kind{
  color:#fbbf24;
  font-size:.72rem;
  font-weight:950;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.diff-plus{color:#4ade80}
.diff-minus{color:#fb7185}
.file-change-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  padding:10px 12px;
}



/* CompactCSS source: /ai/css/events/mobile.css */
/*B"H
  Chapter 365: Event Mobile Took A Contextual Name.

  On mobile the Awtsmoos narrows the palace without crushing it. These rules are
  body-scoped so desktop event ownership remains exact and mobile polish becomes
  an explicit contextual refinement, not a duplicate selector claim.
*/
@media(max-width:760px){
  body .event-region,
  body .transport-details,
  body .thought-envelope-card,
  body .thought-run-card{
    width:100%;
    max-width:100%;
  }
  body .transport-details>summary,
  body .thought-envelope-card>summary,
  body .thought-run-card>summary{
    align-items:flex-start;
    flex-wrap:wrap;
    padding:12px;
  }
  body .event-panel-actions{
    margin-left:0;
    padding-top:2px;
  }
  body .thought-run-orb{
    width:30px;
    height:30px;
    flex-basis:30px;
  }
  body .thought-run-title-wrap{
    padding-right:0;
  }
  body .thought-run-meta{
    width:100%;
    margin-left:42px;
    padding-right:0;
  }
  body .thought-envelope-events,
  body .thought-stepper-shell{
    margin:10px 10px 12px 42px;
    border-radius:18px;
  }
  body .event-chip-row,
  body .file-change-row{
    grid-template-columns:1fr;
  }
  body .event-tool-target,
  body .event-talked-to,
  body .event-brief{
    font-size:.78rem;
  }
  body .thought-inner-window{
    max-height:min(52vh,520px);
    padding:10px;
  }
  body .thought-step{
    grid-template-columns:30px minmax(0,1fr);
    padding:10px;
  }
  body .thought-step-dot,
  body .thought-step-index{
    width:26px;
    height:26px;
  }
  body .thought-step-kicker{
    align-items:flex-start;
    flex-direction:column;
  }
  body .tool-call-group-body,
  body .tool-terminal-output{
    padding:10px;
  }
  body .tool-terminal-command{
    width:100%;
  }
  body .transport-details.is-fullscreen,
  body .thought-envelope-card.is-fullscreen,
  body .thought-run-card.is-fullscreen{
    inset:8px;
    border-radius:18px;
  }
}





/* CompactCSS source: /ai/css/ideal/mobile.css */
/*B"H
  Chapter 391: The Mobile Manifest Placed The Seal Last.
  Measure, scenes, crown, composer, controls, suggestions, polish, visual match,
  then revamp: the Awtsmoos lets the final palette be final again.
*/

/* CompactCSS source: /ai/css/ideal/mobile/measure.css */
/*B"H
  Chapter 4: The Measuring Reed Became Retractable.

  The Awtsmoos makes the phone crown small by default and smaller on command.
  The chat scene receives the reclaimed height instantly through variables.
*/
@media(max-width:900px){
  :root{
    --mobile-crown-top:calc(8px + env(safe-area-inset-top));
    --mobile-crown-height:52px;
    --mobile-dock-height:70px;
    --mobile-scene-top:calc(var(--mobile-crown-top) + var(--mobile-crown-height) + 8px);
    --mobile-scene-bottom:calc(var(--mobile-dock-height) + env(safe-area-inset-bottom));
    --mobile-composer-bottom:calc(var(--mobile-scene-bottom) + 8px);
  }
  body.mobile-crown-collapsed{
    --mobile-crown-height:18px;
    --mobile-scene-top:calc(var(--mobile-crown-top) + var(--mobile-crown-height) + 6px);
  }
  html body{
    min-height:100svh;
    overflow:hidden;
    background:
      radial-gradient(circle at 12% 0%,rgba(34,230,196,.16),transparent 32%),
      radial-gradient(circle at 92% 8%,rgba(124,58,237,.18),transparent 36%),
      #020814;
  }
  body .container{
    display:block;
    padding:0;
    overflow:hidden;
  }
  body #left-resizer,
  body #right-resizer,
  body #composer-resizer{display:none}
}



/* CompactCSS source: /ai/css/ideal/mobile/scenes.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * The responsive rooms are Malchus receiving one workspace through measured
 * boundaries. The Awtsmoos creates chat, memory, and automation every instant;
 * Awtsmoos.com gives each room the whole mobile stage instead of compressing
 * three desktop columns into an unreadable miniature.
 */
@media(max-width:900px){
	body[data-mobile-scene] .container{
		display:block;
		width:100vw;
		height:100dvh;
		padding:0;
		gap:0;
		overflow:hidden;
	}
	body[data-mobile-scene] .container > :is(.main,.sidebar,.automation-panel){
		position:fixed;
		top:var(--mobile-scene-top);
		bottom:var(--mobile-scene-bottom);
		height:auto;
		min-height:0;
		max-height:none;
		margin:0;
		border:1px solid rgba(125,211,252,.18);
		background:linear-gradient(160deg,rgba(7,17,32,.99),rgba(2,7,16,.99));
		box-shadow:0 24px 70px rgba(0,0,0,.52);
		overflow:hidden;
		transition:
			transform .26s cubic-bezier(.2,.75,.2,1),
			opacity .2s ease,
			filter .2s ease;
	}
	body[data-mobile-scene] .container > .main{
		inset-inline:0;
		width:100vw;
		max-width:100vw;
		display:grid;
		grid-template-rows:minmax(0,1fr) auto auto auto;
		transform:none;
		opacity:1;
		filter:none;
		pointer-events:auto;
		z-index:22;
	}
	body[data-mobile-scene] .container > #sidebar{
		inset-inline:0 auto;
		width:min(92vw,420px);
		max-width:min(92vw,420px);
		grid-template-rows:auto minmax(0,1fr);
		transform:translateX(-104%);
		border-radius:0 22px 22px 0;
		z-index:32;
	}
	body[data-mobile-scene] .container > #automation-panel{
		inset-inline:auto 0;
		width:min(94vw,440px);
		max-width:min(94vw,440px);
		grid-template-rows:auto minmax(0,1fr);
		transform:translateX(104%);
		border-radius:22px 0 0 22px;
		z-index:32;
	}
	body[data-mobile-scene="conversations"] .container > #sidebar,
	body[data-mobile-scene="automation"] .container > #automation-panel{
		transform:translateX(0);
		opacity:1;
		filter:none;
		pointer-events:auto;
	}
	body.mobile-workspace-drawer-open .container > .main{
		opacity:.34;
		filter:saturate(.55) brightness(.58);
		pointer-events:none;
	}
	body .is-collapsed > :not(.panel-topbar),
	body .is-detached > :not(.panel-topbar){
		display:revert;
	}
	body .is-collapsed .panel-topbar,
	body .is-detached .panel-topbar{
		display:flex;
		height:48px;
		writing-mode:horizontal-tb;
	}
	body #left-resizer,
	body #right-resizer,
	body #composer-resizer{
		display:none;
	}
}



/* CompactCSS source: /ai/css/ideal/mobile/crown.css */
/*B"H
  Chapter 6: The Crown Became A Small Rail And The Dock Gained Five Stars.

  The Awtsmoos keeps global identity above, but small; the dock below mirrors
  the mockup with five calm destinations while only real rooms become active.
*/
@media(max-width:900px){
  body .mobile-app-crown{
    position:fixed;
    left:12px;
    right:12px;
    top:var(--mobile-crown-top);
    height:var(--mobile-crown-height);
    display:grid;
    grid-template-columns:38px minmax(0,1fr) 38px 38px;
    align-items:center;
    gap:7px;
    padding:6px;
    border-radius:18px;
    background:linear-gradient(135deg,rgba(5,14,27,.94),rgba(4,20,37,.90));
    border:1px solid rgba(125,211,252,.18);
    backdrop-filter:blur(20px);
    z-index:140;
    overflow:hidden;
    box-shadow:0 12px 30px rgba(0,0,0,.28),0 0 0 1px rgba(45,212,191,.06) inset;
    transition:height .22s ease,padding .22s ease,opacity .22s ease;
  }
  body.mobile-crown-collapsed .mobile-app-crown{
    height:18px;
    padding:0 10px;
    grid-template-columns:1fr 28px;
    opacity:.88;
    border-radius:999px;
  }
  body .mobile-crown-brand{
    min-width:0;
    display:flex;
    align-items:center;
    gap:9px;
    color:#22e6c4;
    font-weight:950;
    letter-spacing:.08em;
    overflow:hidden;
    white-space:nowrap;
  }
  body .mobile-crown-mark{
    width:26px;
    height:26px;
    display:grid;
    place-items:center;
    border-radius:10px;
    color:#08131f;
    background:#22e6c4;
  }
  body .mobile-app-crown button{
    height:34px;
    border:1px solid rgba(125,211,252,.18);
    border-radius:14px;
    background:rgba(8,19,33,.90);
    color:#d8eefc;
    font-weight:950;
  }
  body.mobile-crown-collapsed .mobile-crown-menu,
  body.mobile-crown-collapsed .mobile-crown-code,
  body.mobile-crown-collapsed .mobile-crown-mark,
  body.mobile-crown-collapsed .mobile-crown-brand span:last-child{display:none}
  body.mobile-crown-collapsed .mobile-crown-brand::before{
    content:"AWTSMOOS AI";
    color:#22e6c4;
    font-size:11px;
    letter-spacing:.12em;
  }
  body.mobile-crown-collapsed .mobile-crown-collapse{
    display:block;
    height:16px;
    border:0;
    background:transparent;
    color:#9ff9ee;
  }
  body .mobile-bottom-dock{
    position:fixed;
    left:10px;
    right:10px;
    bottom:calc(8px + env(safe-area-inset-bottom));
    height:60px;
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:2px;
    padding:7px;
    border-radius:21px;
    background:linear-gradient(135deg,rgba(5,14,27,.95),rgba(4,20,37,.90));
    border:1px solid rgba(125,211,252,.18);
    backdrop-filter:blur(20px);
    z-index:130;
    box-shadow:0 16px 38px rgba(0,0,0,.36),0 0 0 1px rgba(45,212,191,.06) inset;
  }
  body .mobile-bottom-dock button{
    min-width:0;
    display:grid;
    place-items:center;
    gap:1px;
    border:0;
    border-radius:15px;
    background:transparent;
    color:#aebbd0;
    font-weight:800;
  }
  body .mobile-bottom-dock span{font-size:20px;line-height:1}
  body .mobile-bottom-dock em{font-style:normal;font-size:10px;line-height:1;white-space:nowrap}
  body[data-mobile-scene="chat"] .mobile-nav-chat,
  body[data-mobile-scene="conversations"] .mobile-nav-conversations,
  body[data-mobile-scene="automation"] .mobile-nav-automation{
    background:rgba(124,58,237,.16);
    color:#c084fc;
  }
}
@media(min-width:901px){
  body .mobile-app-crown,
  body .mobile-bottom-dock{display:none}
}



/* CompactCSS source: /ai/css/ideal/mobile/composer.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * The Awtsmoos creates the mobile composer as one true vessel for attachments,
 * words, and sending. Awtsmoos.com keeps the Image action inside that vessel,
 * above the prompt row, never floating over the answer it is meant to continue.
 */
@media (max-width: 900px) {
	body[data-mobile-scene] .container > .main > .input-area {
		position: absolute;
		left: 9px;
		right: 9px;
		bottom: calc(8px + env(safe-area-inset-bottom));
		width: calc(100% - 18px);
		max-width: none;
		margin: 0;
		grid-template-columns: minmax(0, 1fr) 54px;
		grid-template-rows: auto auto;
		gap: 8px;
		align-items: end;
		min-height: 68px;
		padding: 8px;
		border: 1px solid rgba(99, 230, 208, 0.26);
		border-radius: 20px;
		background: rgba(3, 9, 18, 0.96);
		box-shadow: 0 16px 44px rgba(0, 0, 0, 0.48), inset 0 1px 0 rgba(255, 255, 255, 0.045);
		z-index: 18;
	}

	body[data-mobile-scene] .container > .main > .input-area::before {
		display: none;
	}

	body[data-mobile-scene] .container > .main > .input-area > .attachment-tools {
		position: static;
		inset: auto;
		grid-column: 1 / -1;
		grid-row: 1;
		justify-content: flex-start;
		max-width: 100%;
		min-width: 0;
		padding: 0;
		border: 0;
		border-radius: 0;
		background: transparent;
		z-index: auto;
	}

	body[data-mobile-scene] .container > .main > .input-area .attach-button {
		min-height: 44px;
		padding: 8px 12px;
		font-size: 0.82rem;
	}

	body[data-mobile-scene] .container > .main > .input-area .attachment-tray {
		max-width: calc(100% - 96px);
	}

	body[data-mobile-scene] #message-input {
		grid-column: 1;
		grid-row: 2;
		min-height: 52px;
		max-height: min(28dvh, 132px);
		padding: 13px 14px;
		border-radius: 15px;
		font-size: 16px;
		line-height: 1.4;
		resize: none;
	}

	body[data-mobile-scene] #send-button {
		grid-column: 2;
		grid-row: 2;
		min-width: 54px;
		min-height: 52px;
		padding: 0;
		border-radius: 15px;
		font-size: 0;
		color: #06121b;
	}

	body[data-mobile-scene] #send-button::after {
		content: "➤";
		font-size: 21px;
	}
}

@media (max-height: 640px) and (max-width: 900px) {
	body[data-mobile-scene] #message-input {
		max-height: 84px;
	}
}



/* CompactCSS source: /ai/css/ideal/mobile/control-center.css */
/*B"H
  Chapter 5: The Control Palace Folded Into One Mobile Jewel.

  The Awtsmoos keeps provider and transport near the chat, but collapsed by
  default. This is the anti-blockage covenant: status is visible, details are
  one tap away, and the message river owns the phone.
*/
@media(max-width:900px){
  body[data-mobile-scene] .mobile-control-center{
    grid-area:control;
    display:block;
    margin:8px 12px 4px;
    border:1px solid rgba(125,211,252,.18);
    border-radius:18px;
    background:
      radial-gradient(circle at 0 0,rgba(34,230,196,.16),transparent 38%),
      linear-gradient(135deg,rgba(9,18,32,.92),rgba(5,10,22,.96));
    box-shadow:0 14px 34px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.05);
    overflow:hidden;
  }
  body[data-mobile-scene] .mobile-control-center summary{
    min-height:50px;
    display:grid;
    grid-template-columns:16px minmax(0,1fr) auto;
    gap:10px;
    align-items:center;
    padding:9px 12px;
    list-style:none;
    cursor:pointer;
  }
  body[data-mobile-scene] .mobile-control-center summary::-webkit-details-marker{display:none}
  body[data-mobile-scene] .mobile-control-center strong{
    display:block;
    color:#f8fbff;
    font-size:15px;
    line-height:1.1;
  }
  body[data-mobile-scene] .mobile-control-center em{
    display:block;
    color:#9fb0c8;
    font-style:normal;
    font-size:11px;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  body[data-mobile-scene] .mobile-control-provider-name{
    max-width:92px;
    padding:5px 9px;
    border-radius:999px;
    border:1px solid rgba(124,58,237,.26);
    color:#c4b5fd;
    font-size:11px;
    font-weight:900;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    background:rgba(124,58,237,.10);
  }
  body[data-mobile-scene] .mobile-control-dot{
    width:12px;
    height:12px;
    border-radius:999px;
    background:#fbbf24;
    box-shadow:0 0 16px rgba(251,191,36,.62);
  }
  body[data-mobile-scene] .mobile-control-dot[data-state="ready"]{
    background:#22c55e;
    box-shadow:0 0 16px rgba(34,197,94,.65);
  }
  body[data-mobile-scene] .mobile-control-dot[data-state="missing"]{
    background:#fb7185;
    box-shadow:0 0 16px rgba(251,113,133,.65);
  }
  body[data-mobile-scene] .mobile-control-body{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
    padding:0 10px 10px;
  }
  body[data-mobile-scene] .mobile-control-body label{
    grid-column:1/-1;
    display:grid;
    gap:5px;
    color:#9fb0c8;
    font-size:11px;
    font-weight:900;
  }
  body[data-mobile-scene] .mobile-control-provider,
  body[data-mobile-scene] .mobile-control-body button{
    min-height:36px;
    border:1px solid rgba(125,211,252,.20);
    border-radius:13px;
    background:rgba(2,8,20,.72);
    color:#e6fbff;
    font-weight:900;
    padding:7px 9px;
  }
  body[data-mobile-scene] .transport-status{
    display:none;
  }
}
@media(min-width:901px){
  .mobile-control-center{display:none}
}



/* CompactCSS source: /ai/css/ideal/mobile/suggestions.css */
/*B"H
  Chapter 7: Three Prompt Sparks Floated Above The Speech Gate.

  The Awtsmoos keeps suggestions small, scrollable, and quiet. They help the
  thumb without becoming a new wall above the composer.
*/
@media(max-width:900px){
  body[data-mobile-scene] .mobile-suggestion-rail{
    position:absolute;
    left:12px;
    right:12px;
    bottom:calc(82px + env(safe-area-inset-bottom));
    display:flex;
    gap:8px;
    overflow:auto;
    padding:2px 0 4px;
    z-index:78;
    scrollbar-width:none;
  }
  body[data-mobile-scene] .mobile-suggestion-rail::-webkit-scrollbar{display:none}
  body[data-mobile-scene] .mobile-suggestion-rail button{
    flex:0 0 auto;
    min-height:34px;
    padding:7px 12px;
    border:1px solid rgba(192,132,252,.28);
    border-radius:999px;
    background:rgba(21,13,43,.74);
    color:#d8b4fe;
    font-weight:850;
    box-shadow:0 12px 24px rgba(0,0,0,.20);
  }
  body[data-mobile-scene] .chat-box{
    padding-bottom:172px;
    scroll-padding-bottom:190px;
  }
}
@media(min-width:901px){.mobile-suggestion-rail{display:none}}



/* CompactCSS source: /ai/css/ideal/mobile/polish.css */
/*B"H
  Chapter 375: Mobile Polish Released The Transport Banner.

  The Awtsmoos makes polish as restraint. Composer owns the transport banner on
  mobile; this file now smooths only lists, bubbles, audio, and jump controls.
*/
@media(max-width:900px){
  body .sidebar .panel-topbar,
  body .automation-panel .panel-topbar{
    min-height:48px;
  }
  body .conversation-list,
  body .automation-panel-content,
  body .right-panel-body{
    max-height:100%;
    overflow:auto;
    scrollbar-gutter:stable;
  }
  body .message{
    max-width:100%;
    width:100%;
  }
  body .message-shell.end-flow,
  body .message-shell.start-flow{
    align-items:stretch;
  }
  body .audio-offer{
    max-width:100%;
  }
  body .audio-offer-actions{
    grid-template-columns:1fr 1fr;
  }
  body .bubble{
    max-width:100%;
    border-radius:22px;
    border-color:rgba(125,211,252,.24);
    background:linear-gradient(180deg,rgba(11,29,51,.92),rgba(4,12,24,.96));
    box-shadow:0 18px 46px rgba(0,0,0,.32),inset 0 1px 0 rgba(255,255,255,.08);
  }
  body .bubble button,
  body .audio-offer button{
    min-width:34px;
    min-height:34px;
    border:1px solid rgba(125,211,252,.24);
    border-radius:12px;
    background:rgba(6,16,30,.88);
    color:#d8eefc;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
  }
  body #jump-to-bottom,
  body .jump-to-bottom{
    display:none;
  }
}



/* CompactCSS source: /ai/css/ideal/mobile/visual-match.css */
/*B"H
  Chapter 6: The Phone Glass Took The Mockup Palette.

  The Awtsmoos quiets the excessive neon. Deep navy owns the field, purple owns
  the AI voice, green owns transport truth, and cyan becomes a rare accent.
*/
@media(max-width:900px){
  html body{
    background:
      radial-gradient(circle at 20% -8%,rgba(34,230,196,.12),transparent 30%),
      radial-gradient(circle at 90% 6%,rgba(124,58,237,.14),transparent 36%),
      linear-gradient(180deg,#050b18,#020611 44%,#02050d);
  }
  body .mobile-app-crown,
  body .mobile-bottom-dock,
  body[data-mobile-scene] .mobile-control-center,
  body[data-mobile-scene] .mobile-chat-hero,
  body[data-mobile-scene] .input-area,
  body .main,
  body .sidebar,
  body .automation-panel{
    background:linear-gradient(180deg,rgba(10,18,32,.94),rgba(4,9,20,.97));
    border-color:rgba(148,163,184,.16);
    box-shadow:0 18px 46px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.04);
  }
  body .mobile-crown-brand{
    color:#22d3c5;
    text-shadow:none;
  }
  body .mobile-crown-mark{
    background:rgba(34,211,197,.12);
    color:#22d3c5;
    border:1px solid rgba(34,211,197,.24);
    box-shadow:none;
  }
  body[data-mobile-scene] .mobile-chat-icon{
    color:#c084fc;
    background:rgba(124,58,237,.16);
    border:1px solid rgba(192,132,252,.18);
  }
  body[data-mobile-scene] .mobile-control-dot[data-state="ready"]{
    background:#4ade80;
    box-shadow:0 0 0 7px rgba(74,222,128,.12),0 0 18px rgba(74,222,128,.38);
  }
  body[data-mobile-scene] .mobile-control-dot[data-state="missing"]{
    background:#fb7185;
    box-shadow:0 0 0 7px rgba(251,113,133,.12),0 0 18px rgba(251,113,133,.38);
  }
  body[data-mobile-scene] .chat-box{
    background:
      radial-gradient(circle at 50% 0,rgba(124,58,237,.08),transparent 38%),
      linear-gradient(180deg,rgba(4,9,20,.42),rgba(2,6,17,.65));
  }
  body[data-mobile-scene] .message,
  body[data-mobile-scene] .bubble{
    border-color:rgba(148,163,184,.15);
    border-radius:24px;
    background:linear-gradient(180deg,rgba(13,24,42,.95),rgba(6,13,26,.97));
    box-shadow:0 14px 34px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.045);
    color:#e6edf7;
  }
  body[data-mobile-scene] .user-message,
  body[data-mobile-scene] .message.user{
    background:linear-gradient(135deg,rgba(74,35,145,.94),rgba(39,32,74,.96));
    border-color:rgba(168,85,247,.24);
    color:#f8f5ff;
  }
  body[data-mobile-scene] .assistant-message,
  body[data-mobile-scene] .message.assistant{
    background:linear-gradient(180deg,rgba(12,24,42,.94),rgba(6,13,26,.97));
  }
  body[data-mobile-scene] #message-input{
    background:rgba(11,21,38,.94);
    border-color:rgba(148,163,184,.18);
    color:#f8fafc;
  }
  body[data-mobile-scene] #send-button{
    background:linear-gradient(135deg,#7c3aed,#5b21b6);
    border-color:rgba(196,181,253,.30);
    box-shadow:0 12px 28px rgba(124,58,237,.32);
  }
  body .mobile-bottom-dock button{
    background:transparent;
    border-color:transparent;
    color:#aebbd0;
  }
  body[data-mobile-scene="chat"] .mobile-nav-chat,
  body[data-mobile-scene="conversations"] .mobile-nav-conversations,
  body[data-mobile-scene="automation"] .mobile-nav-automation{
    background:rgba(124,58,237,.16);
    color:#c084fc;
    border-color:rgba(192,132,252,.18);
    box-shadow:none;
  }
  body .provider-key-panel,
  body .service-selector,
  body .conversation-list li,
  body .automation-panel button{
    border-color:rgba(148,163,184,.15);
    background:rgba(8,16,31,.72);
  }
}



/* CompactCSS source: /ai/css/ideal/mobile/revamp.css */
/*B"H
  Chapter 392: Revamp Lifted The Composer Above The Browser Tide.
  The Awtsmoos refused to let the speech gate drown behind mobile toolbars.
  This file remains only the final token seal: no panels, no chat selectors,
  only safe measurements spoken at the end of the mobile manifest.
*/
@media(max-width:900px){
  :root{
    --mobile-browser-lift:calc(76px + env(safe-area-inset-bottom));
    --mobile-composer-height:82px;
    --awt-main-min:100svh;
  }
}





/* CompactCSS source: /ai/css/right-panel/mobile-overlap-kill.css */
/* CompactCSS source: /ai/css/ai-chat/index.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * The Awtsmoos gathers many focused visual vessels into one final experience
 * river. Awtsmoos.com loads this manifest near the end of the cascade so each
 * module may clarify its own responsibility without force or duplication.
 */

/* CompactCSS source: /ai/css/ai-chat/tokens.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * Color, space, type, and motion are keilim for the visible ohr. The Awtsmoos
 * creates every distinction anew; Awtsmoos.com remembers that unity by giving
 * the entire workspace one restrained, readable token language.
 */
:root{
	--ai-chamber-bg:
		radial-gradient(circle at 8% -8%,rgba(33,208,181,.16),transparent 30%),
		radial-gradient(circle at 92% 0,rgba(92,106,255,.14),transparent 32%),
		linear-gradient(155deg,#030711,#07101d 52%,#02050c);
	--ai-panel:rgba(7,14,26,.92);
	--ai-panel-raised:rgba(12,24,41,.94);
	--ai-panel-soft:rgba(17,31,50,.72);
	--ai-border:rgba(160,195,226,.18);
	--ai-border-strong:rgba(71,222,196,.40);
	--ai-text:#f4f8fc;
	--ai-soft:#d7e3ef;
	--ai-muted:#91a5ba;
	--ai-dim:#6f8297;
	--ai-cyan:#63e6d0;
	--ai-blue:#6d8cff;
	--ai-violet:#b08cff;
	--ai-gold:#f3c969;
	--ai-danger:#ff8297;
	--ai-success:#72e6a5;
	--ai-radius-sm:12px;
	--ai-radius-md:18px;
	--ai-radius-lg:24px;
	--ai-space-1:4px;
	--ai-space-2:8px;
	--ai-space-3:12px;
	--ai-space-4:16px;
	--ai-space-5:20px;
	--ai-space-6:28px;
	--ai-shadow:0 22px 70px rgba(0,0,0,.38);
	--ai-shadow-soft:0 10px 30px rgba(0,0,0,.24);
	--ai-focus:0 0 0 3px rgba(99,230,208,.25),0 0 0 1px rgba(99,230,208,.72) inset;
	--ai-motion-fast:150ms;
	--ai-motion-medium:220ms;
	--awt-bg-radial:var(--ai-chamber-bg);
	--awt-text:var(--ai-text);
	--awt-soft:var(--ai-soft);
	--awt-muted:var(--ai-muted);
	--awt-hot:var(--ai-cyan);
	--awt-line:var(--ai-border);
	--awt-line-soft:rgba(160,195,226,.13);
	--awt-line-strong:var(--ai-border-strong);
	--awt-input:rgba(4,11,21,.92);
	--awt-main-radius:24px;
	--awt-panel-radius:24px;
	--awt-message-max:min(820px,94%);
	--awt-message-radius:20px;
	--awt-message-pad:15px 17px;
	--awt-chat-gap:18px;
	--awt-chat-pad:28px clamp(18px,3vw,42px) 146px;
}



/* CompactCSS source: /ai/css/ai-chat/shell.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * Tiferes reconciles three rooms without allowing any room to crush another.
 * The Awtsmoos gives Awtsmoos.com one calm shell: navigation remembers, chat
 * speaks, automation structures, and the center remains the primary horizon.
 */
body{
	background:var(--ai-chamber-bg);
	color:var(--ai-text);
}
.container{
	background:var(--ai-chamber-bg);
	isolation:isolate;
}
.container>.main,
.container>.sidebar,
.container>.automation-panel{
	border-color:var(--ai-border);
	background:
		linear-gradient(180deg,rgba(13,25,42,.95),rgba(4,10,20,.98));
	box-shadow:var(--ai-shadow),inset 0 1px 0 rgba(255,255,255,.045);
	backdrop-filter:blur(18px) saturate(120%);
}
.container>.main{
	background:
		radial-gradient(circle at 50% -12%,rgba(99,230,208,.07),transparent 36%),
		linear-gradient(180deg,rgba(8,17,30,.98),rgba(3,8,16,.99));
}
.panel-topbar,
.sidebar-header{
	min-height:58px;
	padding:10px 12px;
	border-bottom-color:rgba(160,195,226,.13);
	background:linear-gradient(180deg,rgba(17,32,51,.94),rgba(8,18,32,.92));
}
.panel-title{
	font-size:.92rem;
	letter-spacing:.015em;
}
.panel-actions{
	gap:6px;
}
.panel-actions button{
	width:38px;
	height:38px;
	border-radius:12px;
	background:rgba(3,10,20,.72);
}
.resize-bar,
.composer-resizer{
	opacity:.38;
	background:linear-gradient(180deg,transparent,rgba(99,230,208,.48),transparent);
}
.composer-resizer{
	background:linear-gradient(90deg,transparent,rgba(99,230,208,.48),transparent);
}
.transport-status{
	margin:8px 10px 0;
	min-height:40px;
	border:1px solid rgba(160,195,226,.13);
	border-radius:14px;
	background:rgba(5,13,25,.76);
	color:var(--ai-muted);
}



/* CompactCSS source: /ai/css/ai-chat/navigation.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * Navigation is Yesod, carrying intention between rooms. The Awtsmoos lets
 * Awtsmoos.com show location through shape, label, and state—not color alone.
 */
.mobile-workspace-close{
	display:none;
}
.mobile-app-crown button,
.mobile-bottom-dock button,
.panel-actions button{
	-webkit-tap-highlight-color:transparent;
}
.mobile-bottom-dock button[aria-pressed="true"],
.mobile-app-crown button[aria-pressed="true"]{
	border-color:rgba(176,140,255,.34);
	background:rgba(126,87,194,.18);
	color:#decaff;
}
.mobile-bottom-dock button[aria-pressed="true"]::after{
	content:"";
	width:18px;
	height:2px;
	border-radius:999px;
	background:currentColor;
}
.panel-topbar{
	user-select:none;
}
.panel-actions button[aria-pressed="true"]{
	border-color:var(--ai-border-strong);
	color:var(--ai-cyan);
}



/* CompactCSS source: /ai/css/ai-chat/sidebar.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * The conversation garden is Netzach: memory enduring as a readable path. The
 * Awtsmoos renews each remembered doorway, and Awtsmoos.com lets long titles,
 * provider state, and active selection remain clear without visual shouting.
 */
.sidebar{
	padding:0;
}
.conversation-list{
	gap:12px;
	padding:14px;
	scrollbar-gutter:stable;
}
.conversation-list::before{
	margin:2px 4px;
	color:var(--ai-cyan);
	font-size:.68rem;
}
.conversation-list ul{
	gap:7px;
}
.conversation-list li{
	min-height:54px;
	padding:10px 12px 10px 15px;
	border-color:rgba(160,195,226,.13);
	border-radius:15px;
	background:rgba(10,22,38,.72);
	box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
}
.conversation-list li:hover{
	border-color:rgba(99,230,208,.34);
	background:rgba(16,34,54,.86);
	transform:translateY(-1px);
}
.conversation-list li[aria-current="true"],
.conversation-list li.active{
	border-color:rgba(99,230,208,.42);
	background:linear-gradient(135deg,rgba(23,69,68,.55),rgba(20,32,62,.70));
}
.conversation-list li::before{
	top:9px;
	bottom:9px;
	width:2px;
	background:linear-gradient(var(--ai-cyan),var(--ai-blue));
}
.conversation-title{
	line-height:1.3;
}
.service-selector{
	gap:8px;
	padding:11px;
	border-color:rgba(160,195,226,.13);
	border-radius:16px;
	background:rgba(6,16,29,.72);
}
.service-selector label{
	color:var(--ai-muted);
	font-size:.68rem;
}
.service-selector select,
.service-selector input{
	min-height:44px;
	font-size:.94rem;
}
.refresh-button,
.conversation-page-gate button{
	min-height:46px;
	border-radius:14px;
}



/* CompactCSS source: /ai/css/ai-chat/messages.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * A message is Malchus receiving hidden thought as readable form. The Awtsmoos
 * creates every letter and every interval between letters; Awtsmoos.com gives
 * prose, code, tables, links, and quotations the distinct vessels they require.
 */
.chat-box{
	padding:var(--awt-chat-pad);
	gap:var(--awt-chat-gap);
	background:
		radial-gradient(circle at 50% 0,rgba(99,230,208,.055),transparent 36%),
		linear-gradient(180deg,rgba(3,9,18,.22),rgba(1,5,12,.54));
}
.message-shell{
	gap:7px;
}
.message,
.bubble,
.user-message,
.assistant-message,
.system-message{
	max-width:var(--awt-message-max);
	padding:var(--awt-message-pad);
	border:1px solid rgba(160,195,226,.14);
	border-radius:var(--awt-message-radius);
	background:linear-gradient(155deg,rgba(15,30,49,.94),rgba(6,15,28,.97));
	box-shadow:var(--ai-shadow-soft),inset 0 1px 0 rgba(255,255,255,.04);
	color:var(--ai-soft);
}
.user-message,
.message.user{
	max-width:min(680px,86%);
	background:linear-gradient(145deg,rgba(41,103,111,.94),rgba(53,73,142,.92));
	border-color:rgba(137,240,220,.28);
	color:#fff;
}
.assistant-message,
.message.assistant{
	background:linear-gradient(155deg,rgba(15,30,49,.96),rgba(6,15,28,.98));
}
.message :is(p,li,blockquote,td,th),
.message-content{
	font-size:clamp(.96rem,.3vw + .9rem,1.06rem);
	line-height:1.68;
}
.message p{
	margin:.2rem 0 .85rem;
}
.message :is(h1,h2,h3,h4){
	color:var(--ai-text);
	line-height:1.25;
	margin:1.2em 0 .5em;
}
.message a{
	color:#86f4e2;
	text-decoration-thickness:1px;
	text-underline-offset:3px;
}
.message pre,
.message .md-code{
	max-width:100%;
	overflow:auto;
	padding:14px;
	border:1px solid rgba(160,195,226,.16);
	border-radius:14px;
	background:#030812;
	white-space:pre;
	overscroll-behavior-inline:contain;
}
.message code{
	font-family:"SFMono-Regular",Consolas,"Liberation Mono",monospace;
	font-size:.88em;
	color:#d9f7ff;
}
.message table{
	display:block;
	max-width:100%;
	overflow-x:auto;
	border-collapse:collapse;
}
.message :is(th,td){
	padding:8px 10px;
	border:1px solid rgba(160,195,226,.14);
	text-align:left;
}
.message blockquote{
	margin-inline:0;
	padding-inline-start:14px;
	border-inline-start:3px solid var(--ai-gold);
	color:var(--ai-muted);
}



/* CompactCSS source: /ai/css/ai-chat/composer.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * The composer is the speech gate where possible meaning becomes action. The
 * Awtsmoos creates the intention, the hand, and the instant of sending anew;
 * Awtsmoos.com therefore keeps this gate calm, generous, and unmistakable.
 */
.input-area{
	margin:0;
	padding:12px 14px 14px;
	gap:10px;
	border-top:1px solid rgba(160,195,226,.13);
	background:
		linear-gradient(180deg,rgba(4,10,20,.74),rgba(7,16,29,.98));
	box-shadow:0 -18px 48px rgba(0,0,0,.22);
}
.input-area::before{
	left:24px;
	right:24px;
	top:8px;
	background:linear-gradient(90deg,transparent,rgba(99,230,208,.30),transparent);
}
#message-input{
	min-height:58px;
	max-height:min(34dvh,280px);
	padding:16px 17px;
	border:1px solid rgba(160,195,226,.18);
	border-radius:17px;
	background:rgba(3,10,20,.86);
	color:var(--ai-text);
	line-height:1.48;
	caret-color:var(--ai-cyan);
}
#message-input:hover{
	border-color:rgba(99,230,208,.32);
}
#message-input:focus{
	border-color:rgba(99,230,208,.56);
	box-shadow:var(--ai-focus);
}
#message-input::placeholder{
	color:rgba(174,193,213,.66);
}
#send-button{
	min-width:104px;
	min-height:58px;
	border-radius:17px;
	background:linear-gradient(135deg,#63e6d0,#6d8cff);
	color:#04111b;
	box-shadow:0 14px 34px rgba(70,127,215,.26);
}
#send-button:hover{
	filter:brightness(1.06);
	transform:translateY(-1px);
}
.attachment-tools{
	gap:7px;
}
.attach-button{
	min-height:38px;
	padding:8px 12px;
	border-color:rgba(160,195,226,.16);
	background:rgba(5,14,26,.88);
}



/* CompactCSS source: /ai/css/ai-chat/automation.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * Automation is Hod giving structured language to repeated action. The
 * Awtsmoos creates each rule and each result without confusion; Awtsmoos.com
 * answers with visible groups, permanent labels, and bounded controls.
 */
#automation-panel .right-panel-body,
#automation-panel .automation-panel-content{
	min-width:0;
}
#automation-panel .right-panel-body{
	padding:12px;
	scrollbar-gutter:stable;
}
#automation-panel :is(.automation-card,.settings-hero-card,.relay-install-card,.automation-archive-panel){
	padding:14px;
	border:1px solid rgba(160,195,226,.13);
	border-radius:16px;
	background:linear-gradient(155deg,rgba(14,28,46,.82),rgba(5,14,26,.88));
	box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
}
#automation-panel :is(h2,h3,h4){
	margin:.1rem 0 .65rem;
	color:var(--ai-text);
	line-height:1.25;
}
#automation-panel :is(label,.automation-field){
	dis:grid;
	gap:6px;
	color:var(--ai-muted);
	font-size:.8rem;
	font-weight:750;
}
#automation-panel :is(input,select,textarea){
	width:100%;
	min-width:0;
	min-height:42px;
	padding:9px 11px;
	border:1px solid rgba(160,195,226,.17);
	border-radius:12px;
	background:rgba(3,10,20,.78);
	color:var(--ai-text);
	font-size:.94rem;
}
#automation-panel textarea{
	min-height:92px;
	line-height:1.45;
	resize:vertical;
}
#automation-panel .automation-status{
	padding:9px 11px;
	border:1px solid rgba(99,230,208,.18);
	border-radius:12px;
	background:rgba(18,62,61,.24);
	color:#c7fff5;
}
#automation-panel button{
	min-height:42px;
}



/* CompactCSS source: /ai/css/ai-chat/buttons.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * A button is Gevurah around possibility: a boundary that makes action safe.
 * The Awtsmoos creates ability and restraint together, so Awtsmoos.com gives
 * every control a clear idle, hover, focus, pressed, disabled, and busy state.
 */
button,
.refresh-button,
.attach-button{
	min-height:40px;
	border:1px solid rgba(160,195,226,.17);
	border-radius:13px;
	background:linear-gradient(145deg,rgba(18,35,56,.88),rgba(6,16,29,.94));
	color:var(--ai-soft);
	font-weight:760;
	letter-spacing:.005em;
	cursor:pointer;
}
button:hover,
.refresh-button:hover,
.attach-button:hover{
	border-color:rgba(99,230,208,.38);
	color:var(--ai-text);
	box-shadow:inset 0 1px 0 rgba(255,255,255,.055);
}
button:active{
	transform:translateY(1px);
}
button[aria-pressed="true"]{
	border-color:rgba(176,140,255,.42);
	background:rgba(108,72,174,.22);
}
button:disabled,
[aria-disabled="true"]{
	cursor:not-allowed;
	opacity:.48;
	filter:saturate(.6);
}
button[aria-busy="true"]{
	cursor:progress;
}
.new-chat{
	border-color:rgba(99,230,208,.30);
}
.mobile-app-crown button,
.mobile-bottom-dock button,
.mobile-workspace-close{
	min-width:44px;
	min-height:44px;
}



/* CompactCSS source: /ai/css/ai-chat/providers.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * Provider controls are Yesod bridges to distant engines. The Awtsmoos remains
 * beyond every provider while creating each connection; Awtsmoos.com makes the
 * chosen bridge, mode, and transport condition readable at a glance.
 */
#ai-service-select,
#chatgpt-mode-select{
	width:100%;
	min-height:44px;
	padding:9px 12px;
	border:1px solid rgba(160,195,226,.18);
	border-radius:12px;
	background:rgba(3,10,20,.88);
	color:var(--ai-text);
	box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
}
#ai-service-select:hover,
#chatgpt-mode-select:hover{
	border-color:rgba(99,230,208,.34);
}
#ai-service-select option[value="awtai-local"]{
	color:var(--ai-success);
}
.transport-status:not(:empty)::before{
	content:"Connection";
	padding:3px 7px;
	border-radius:999px;
	background:rgba(99,230,208,.10);
	color:var(--ai-cyan);
	font-size:.68rem;
	font-weight:850;
	letter-spacing:.05em;
	text-transform:uppercase;
}
.automation-panel [data-provider],
.transport-status [data-provider]{
	color:var(--ai-cyan);
}



/* CompactCSS source: /ai/css/ai-chat/states.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * Hod acknowledges every condition instead of concealing it. The Awtsmoos
 * creates waiting, success, failure, and recovery as distinct moments, while
 * Awtsmoos.com gives each moment a calm and understandable visible vessel.
 */
.render-loading,
.is-loading,
.is-empty,
.is-error,
.automation-countdown{
	padding:12px 14px;
	border:1px solid rgba(160,195,226,.14);
	border-radius:14px;
	background:rgba(10,22,38,.72);
	color:var(--ai-muted);
}
.render-loading{
	align-self:center;
	max-width:min(520px,100%);
}
.render-loading i{
	width:9px;
	height:9px;
	background:var(--ai-cyan);
	box-shadow:0 0 18px rgba(99,230,208,.58);
}
.is-error,
.message .network_error{
	border-color:rgba(255,130,151,.34);
	background:rgba(83,25,41,.24);
	color:#ffd3dc;
}
[data-state="saved"],
.is-success{
	color:var(--ai-success);
}
.awtsmoos-storage-warning,
.storage-warning{
	color:var(--ai-gold);
}
.automation-countdown{
	border-color:rgba(99,230,208,.28);
	color:#d6fff8;
}



/* CompactCSS source: /ai/css/ai-chat/focus-motion.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * Focus is the visible path of intention. The Awtsmoos creates the traveler and
 * the road together; Awtsmoos.com keeps that road bright for keyboard, touch,
 * high-contrast, reduced-motion, and enlarged-text journeys.
 */
:where(button,select,textarea,input,a,[tabindex]):focus-visible{
	outline:2px solid var(--ai-cyan);
	outline-offset:2px;
	box-shadow:var(--ai-focus);
}
@media(prefers-reduced-motion:no-preference){
	button,
	#conversation-items li,
	.message,
	.mobile-app-crown,
	.mobile-bottom-dock,
	.sidebar,
	.automation-panel{
		transition:
			transform var(--ai-motion-fast) ease,
			border-color var(--ai-motion-fast) ease,
			box-shadow var(--ai-motion-fast) ease,
			background-color var(--ai-motion-fast) ease,
			opacity var(--ai-motion-medium) ease;
	}
	.render-loading i{
		animation:awtsmoosAiPulse 1.4s ease-in-out infinite;
	}
}
@keyframes awtsmoosAiPulse{
	0%,
	100%{
		opacity:.5;
		transform:scale(.86);
	}
	50%{
		opacity:1;
		transform:scale(1.12);
	}
}
@media(prefers-reduced-motion:reduce){
	*,
	*::before,
	*::after{
		animation-duration:.001ms;
		animation-iteration-count:1;
		transition-duration:.001ms;
		scroll-behavior:auto;
	}
}
@media(forced-colors:active){
	button,
	input,
	select,
	textarea,
	.message,
	.sidebar,
	.main,
	.automation-panel{
		border:1px solid CanvasText;
	}
}



/* CompactCSS source: /ai/css/ai-chat/responsive.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * Responsive geometry is Binah measuring one intention into many screens. The
 * Awtsmoos creates laptop, desktop, and ultrawide space anew; Awtsmoos.com
 * keeps the conversation primary while side vessels remain honestly usable.
 */
@media(min-width:1300px){
	.container{
		grid-template-columns:
			var(--ai-left-col,292px)
			7px
			minmax(560px,1fr)
			7px
			var(--ai-right-col,324px);
		gap:10px;
		padding:12px;
	}
	.input-area{
		width:min(1080px,100%);
		margin-inline:auto;
	}
}
@media(min-width:1101px) and (max-width:1299px){
	.container{
		grid-template-columns:
			var(--ai-left-col,240px)
			6px
			minmax(520px,1fr)
			6px
			var(--ai-right-col,270px);
		gap:8px;
		padding:9px;
	}
	body[data-sidebar-collapsed="true"] .container{
		grid-template-columns:58px 6px minmax(520px,1fr) 6px var(--ai-right-col,270px);
	}
	body[data-automation-collapsed="true"] .container{
		grid-template-columns:var(--ai-left-col,240px) 6px minmax(520px,1fr) 6px 58px;
	}
}
@media(min-width:901px) and (max-width:1100px){
	.container{
		grid-template-columns:
			var(--ai-left-col,200px)
			5px
			minmax(430px,1fr)
			5px
			var(--ai-right-col,220px);
		gap:6px;
		padding:7px;
	}
	body[data-sidebar-collapsed="true"] .container{
		grid-template-columns:58px 5px minmax(430px,1fr) 5px var(--ai-right-col,220px);
	}
	body[data-automation-collapsed="true"] .container{
		grid-template-columns:var(--ai-left-col,200px) 5px minmax(430px,1fr) 5px 58px;
	}
	.panel-title{
		font-size:.84rem;
	}
	#automation-panel .right-panel-body,
	.conversation-list{
		padding:10px;
	}
}
@media(min-width:1680px){
	:root{
		--awt-message-max:min(900px,90%);
		--awt-chat-pad:36px clamp(32px,5vw,84px) 150px;
	}
	.container{
		grid-template-columns:
			var(--ai-left-col,320px)
			8px
			minmax(680px,1fr)
			8px
			var(--ai-right-col,360px);
		padding:14px;
	}
}
@media(max-height:720px) and (min-width:901px){
	.panel-topbar,
	.sidebar-header{
		min-height:50px;
		padding-block:7px;
	}
	.input-area{
		padding-block:9px;
	}
	#message-input,
	#send-button{
		min-height:50px;
	}
}
@media(min-resolution:1dppx) and (min-width:901px){
	.container>*{
		min-width:0;
	}
}



/* CompactCSS source: /ai/css/ai-chat/mobile.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * The mobile experience is one sanctuary assembled from smaller vessels. The
 * Awtsmoos lets Awtsmoos.com import measured shell, readable content, and the
 * speech gate separately so no single file becomes another crowded room.
 */

/* CompactCSS source: /ai/css/ai-chat/mobile-shell.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * A phone cannot hold three palaces side by side, so Tiferes reveals one room
 * and lets the others arrive as drawers. The Awtsmoos creates every transition;
 * Awtsmoos.com keeps the base chat present, calm, and never miniaturized.
 */
@media(max-width:900px){
	:root{
		--mobile-crown-height:56px;
		--mobile-dock-height:74px;
		--awt-panel-radius:22px;
	}
	body[data-mobile-scene] .main{
		inset-inline:0;
		width:100vw;
		max-width:100vw;
		transform:none;
		opacity:1;
		filter:none;
		pointer-events:auto;
	}
	body.mobile-workspace-drawer-open .main{
		opacity:.34;
		filter:saturate(.55) brightness(.58);
		pointer-events:none;
	}
	body[data-mobile-scene] .sidebar{
		inset-inline:0 auto;
		width:min(92vw,420px);
		max-width:min(92vw,420px);
		transform:translateX(-104%);
		border-inline-end:1px solid var(--ai-border);
		border-radius:0 22px 22px 0;
	}
	body[data-mobile-scene] .automation-panel{
		inset-inline:auto 0;
		width:min(94vw,440px);
		max-width:min(94vw,440px);
		transform:translateX(104%);
		border-inline-start:1px solid var(--ai-border);
		border-radius:22px 0 0 22px;
	}
	body[data-mobile-scene] :is(.sidebar,.automation-panel).mobile-scene-active{
		transform:translateX(0);
		opacity:1;
		filter:none;
		pointer-events:auto;
	}
	body[data-mobile-scene] .sidebar .panel-topbar,
	body[data-mobile-scene] .automation-panel .panel-topbar{
		min-height:54px;
		padding:8px 10px;
	}
	.mobile-workspace-close{
		display:inline-grid;
		place-items:center;
		font-size:1.35rem;
		line-height:1;
	}
	.mobile-app-crown{
		left:10px;
		right:10px;
		grid-template-columns:44px minmax(0,1fr) 44px 44px;
		gap:6px;
		padding:6px;
		border-radius:18px;
		background:linear-gradient(140deg,rgba(5,14,27,.96),rgba(10,27,45,.92));
		border-color:rgba(160,195,226,.16);
	}
	.mobile-app-crown button{
		min-width:44px;
		min-height:44px;
		height:44px;
	}
	.mobile-bottom-dock{
		left:8px;
		right:8px;
		height:66px;
		padding:6px;
		border-radius:20px;
		background:linear-gradient(140deg,rgba(5,14,27,.97),rgba(10,27,45,.93));
		border-color:rgba(160,195,226,.16);
	}
	.mobile-bottom-dock button{
		min-height:52px;
		border-radius:14px;
	}
	body.mobile-crown-collapsed .mobile-app-crown{
		left:22px;
		right:22px;
		opacity:.92;
	}
}



/* CompactCSS source: /ai/css/ai-chat/mobile-content.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * Mobile Malchus receives text without squeezing it into a desktop miniature.
 * The Awtsmoos creates each word and the screen that bears it; Awtsmoos.com
 * gives messages, navigation, and automation the full readable width they need.
 */
@media(max-width:900px){
	body[data-mobile-scene] .chat-box{
		padding:12px 12px 166px;
		gap:13px;
		scroll-padding-top:18px;
		scroll-padding-bottom:212px;
	}
	body[data-mobile-scene] .message,
	body[data-mobile-scene] .bubble,
	body[data-mobile-scene] .assistant-message{
		max-width:100%;
		border-radius:17px;
		padding:13px 14px;
	}
	body[data-mobile-scene] .user-message,
	body[data-mobile-scene] .message.user{
		max-width:88%;
	}
	body[data-mobile-scene] .message :is(p,li,blockquote,td,th),
	body[data-mobile-scene] .message-content{
		font-size:1rem;
		line-height:1.62;
	}
	body[data-mobile-scene] .message pre,
	body[data-mobile-scene] .message .md-code,
	body[data-mobile-scene] .message table{
		max-width:calc(100vw - 52px);
	}
	body[data-mobile-scene] .conversation-list{
		padding:12px;
		gap:10px;
	}
	body[data-mobile-scene] .conversation-list li{
		min-height:56px;
		padding:11px 12px 11px 15px;
	}
	body[data-mobile-scene] .conversation-title{
		white-space:normal;
		display:-webkit-box;
		-webkit-line-clamp:2;
		-webkit-box-orient:vertical;
	}
	body[data-mobile-scene] .service-selector :is(select,input),
	body[data-mobile-scene] #automation-panel :is(input,select,textarea){
		font-size:16px;
	}
	body[data-mobile-scene] #automation-panel .right-panel-body{
		padding:12px 10px calc(104px + env(safe-area-inset-bottom));
	}
	body[data-mobile-scene] #automation-panel :is(
		.automation-card,
		.settings-hero-card,
		.relay-install-card,
		.automation-archive-panel
	){
		padding:13px;
		border-radius:15px;
	}
	.message-action-root{
		max-width:100%;
	}
}
@media(max-width:360px){
	body[data-mobile-scene] .message,
	body[data-mobile-scene] .bubble{
		padding:12px;
	}
	.mobile-bottom-dock em{
		font-size:9px;
	}
}



/* CompactCSS source: /ai/css/ai-chat/mobile-composer.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * The phone speech gate must float above browser tides without covering the
 * final answer. The Awtsmoos creates voice and vessel together; Awtsmoos.com
 * preserves safe areas, thumb reach, growing text, and a clear send action.
 */
@media(max-width:900px){
	body[data-mobile-scene] .input-area{
		left:9px;
		right:9px;
		bottom:calc(8px + env(safe-area-inset-bottom));
		grid-template-columns:minmax(0,1fr) 54px;
		gap:8px;
		min-height:68px;
		padding:8px;
		border:1px solid rgba(99,230,208,.26);
		border-radius:20px;
		background:rgba(3,9,18,.96);
		box-shadow:0 16px 44px rgba(0,0,0,.48),inset 0 1px 0 rgba(255,255,255,.045);
	}
	body[data-mobile-scene] .input-area::before{
		display:none;
	}
	body[data-mobile-scene] #message-input{
		min-height:52px;
		max-height:min(28dvh,132px);
		padding:13px 14px;
		border-radius:15px;
		font-size:16px;
		line-height:1.4;
		resize:none;
	}
	body[data-mobile-scene] #send-button{
		min-width:54px;
		min-height:52px;
		border-radius:15px;
		font-size:0;
		color:#06121b;
	}
	body[data-mobile-scene] #send-button::after{
		content:"➤";
		font-size:21px;
	}
	body[data-mobile-scene] .attachment-tools{
		right:16px;
		bottom:calc(84px + env(safe-area-inset-bottom));
		max-width:calc(100vw - 32px);
		padding:4px;
		border:1px solid rgba(160,195,226,.12);
		background:rgba(3,9,18,.86);
	}
	body[data-mobile-scene] .attach-button{
		min-height:40px;
		font-size:.82rem;
	}
}
@media(max-height:640px) and (max-width:900px){
	body[data-mobile-scene] #message-input{
		max-height:84px;
	}
	body[data-mobile-scene] .chat-box{
		padding-bottom:146px;
		scroll-padding-bottom:190px;
	}
}







/* CompactCSS source: /ai/css/right-panel/mobile-automation-flow.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * Automation is Hod arranging many controls into one readable report. The
 * Awtsmoos creates each setting without overlap; Awtsmoos.com removes accidental
 * floating geometry while preserving labels, toggles, actions, and scroll.
 */
@media(max-width:900px){
	body #automation-panel,
	body #automation-panel *{
		box-sizing:border-box;
	}
	body #automation-panel > .automation-panel-content{
		overflow:hidden;
	}
	body #automation-panel .right-panel-body{
		overflow-y:auto;
		overflow-x:hidden;
		padding:12px 10px calc(96px + env(safe-area-inset-bottom));
		scroll-padding-bottom:110px;
	}
	body #automation-panel .right-panel-body > *,
	body #automation-panel :is(
		.automation-card,
		.automation-archive-panel,
		.settings-hero-card,
		.relay-install-card,
		.chat-scope-pill,
		.automation-status,
		.automation-field,
		.automation-toggle-row,
		.event-filter,
		.provider-chat-row
	){
		position:static;
		width:100%;
		max-width:100%;
		min-width:0;
		height:auto;
		min-height:0;
		max-height:none;
		margin:0;
		transform:none;
	}
	body #automation-panel :is(
		.prompt-action-row,
		.relay-actions,
		.conversation-portal-actions,
		.graph-toolbar,
		.compact-provider-actions
	){
		position:static;
		display:grid;
		grid-template-columns:1fr;
		gap:10px;
		width:100%;
		height:auto;
		margin:0;
		transform:none;
	}
	body #automation-panel .automation-toggle-row{
		display:grid;
		grid-template-columns:minmax(0,1fr) auto;
		align-items:center;
	}
	body #automation-panel .automation-toggle-row > span{
		min-width:0;
	}
	body #automation-panel .automation-toggle-row input[type="checkbox"]{
		justify-self:end;
	}
	body #automation-panel .automation-stop-button{
		position:static;
		width:100%;
		min-height:48px;
	}
}



/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * This final manifest is Gevurah after the entire visual river. The Awtsmoos
 * creates boundaries as care, and Awtsmoos.com places the polished experience
 * and automation flow at the final edge of the cascade where no legacy rule can
 * silently cover them.
 */



/* CompactCSS source: /ai/css/audio/manifest.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * The Awtsmoos gathers the final audio vessels after every older compatibility
 * layer. Awtsmoos.com receives hierarchy, status, player, mobile adaptation,
 * and accessibility in one final canonical cascade.
 */

/* CompactCSS source: /ai/css/audio/surface.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * The Awtsmoos gives the audio card one hierarchy: listening first, utilities
 * second. Awtsmoos.com keeps this vessel focused on structure and action weight.
 */
.awtsmoos-audio-offer {
	display: grid;
	gap: 12px;
	margin-top: 14px;
	padding: 16px;
	border: 1px solid var(--awt-line);
	border-radius: 18px;
	background: linear-gradient(145deg, rgba(9, 24, 35, 0.96), rgba(4, 18, 28, 0.92));
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.025);
	isolation: isolate;
}

.awtsmoos-audio-offer .audio-offer-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

.awtsmoos-audio-offer .audio-offer-title {
	display: grid;
	gap: 2px;
	min-width: 0;
}

.awtsmoos-audio-offer .audio-offer-title strong {
	font-size: 15px;
	letter-spacing: 0.01em;
	color: var(--awt-text);
}

.awtsmoos-audio-offer .audio-offer-title span {
	font-size: 12px;
	line-height: 1.45;
	color: var(--awt-muted);
}

.awtsmoos-audio-offer .audio-state-chip {
	flex: none;
	padding: 5px 9px;
	border: 1px solid var(--awt-line);
	border-radius: 999px;
	font-size: 11px;
	font-weight: 700;
	color: var(--awt-soft);
	background: rgba(255, 255, 255, 0.035);
}

.awtsmoos-audio-offer[data-audio-tone="active"] .audio-state-chip,
.awtsmoos-audio-offer[data-audio-tone="progress"] .audio-state-chip {
	border-color: rgba(34, 230, 196, 0.38);
	color: var(--awt-hot);
	background: rgba(34, 230, 196, 0.08);
}

.awtsmoos-audio-offer[data-audio-tone="success"] .audio-state-chip {
	border-color: rgba(34, 230, 196, 0.3);
	color: var(--awt-hot);
}

.awtsmoos-audio-offer[data-audio-tone="error"] .audio-state-chip {
	border-color: rgba(255, 102, 122, 0.45);
	color: var(--awt-red);
	background: rgba(255, 102, 122, 0.08);
}

.awtsmoos-audio-offer .audio-control-deck {
	display: grid;
	gap: 9px;
}

.awtsmoos-audio-offer .audio-primary-button {
	width: 100%;
	min-height: 46px;
	border: 1px solid rgba(34, 230, 196, 0.48);
	border-radius: 13px;
	font-weight: 750;
	color: var(--awt-text);
	background: linear-gradient(135deg, rgba(34, 230, 196, 0.18), rgba(86, 154, 255, 0.14));
}

.awtsmoos-audio-offer.has-audio-player .audio-primary-action {
	display: none;
}

.awtsmoos-audio-offer .audio-offer-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.awtsmoos-audio-offer .audio-offer-actions button,
.awtsmoos-audio-offer .audio-retry {
	min-height: 40px;
	padding: 8px 12px;
	border: 1px solid var(--awt-line);
	border-radius: 11px;
	color: var(--awt-soft);
	background: rgba(255, 255, 255, 0.025);
}

.awtsmoos-audio-offer .audio-offer-actions button:hover,
.awtsmoos-audio-offer .audio-retry:hover {
	border-color: var(--awt-line-strong);
	background: rgba(255, 255, 255, 0.055);
}



/* CompactCSS source: /ai/css/audio/status.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * The Awtsmoos gives preparation, feedback, elapsed patience, and recovery their
 * own visible vessel. Awtsmoos.com keeps this task channel separate from the
 * playback timeline while allowing bytes and elapsed time to coexist truthfully.
 */
.awtsmoos-audio-offer .audio-settings {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px;
	padding: 10px;
	border: 1px solid var(--awt-line-soft);
	border-radius: 12px;
	background: rgba(0, 0, 0, 0.14);
}

.awtsmoos-audio-offer .audio-settings[hidden],
.awtsmoos-audio-offer .audio-task-progress[hidden],
.awtsmoos-audio-offer .audio-retry[hidden],
.awtsmoos-audio-offer .audio-task-elapsed[hidden] {
	display: none;
}

.awtsmoos-audio-offer .audio-task-progress,
.awtsmoos-audio-offer .audio-feedback {
	display: grid;
	gap: 6px;
	min-width: 0;
}

.awtsmoos-audio-offer .audio-feedback {
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
}

.awtsmoos-audio-offer .audio-task-meta {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 4px 10px;
	min-width: 0;
}

.awtsmoos-audio-offer .audio-task-detail,
.awtsmoos-audio-offer .audio-task-elapsed,
.awtsmoos-audio-offer .audio-status {
	min-width: 0;
	font-size: 12px;
	line-height: 1.45;
	color: var(--awt-muted);
	overflow-wrap: anywhere;
}

.awtsmoos-audio-offer .audio-task-elapsed {
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}

.awtsmoos-audio-offer .audio-status[data-tone="error"] {
	color: var(--awt-red);
}

.awtsmoos-audio-offer .audio-status[data-tone="success"] {
	color: var(--awt-hot);
}

.awtsmoos-audio-offer .audio-task-meter {
	height: 5px;
	overflow: hidden;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.07);
}

.awtsmoos-audio-offer .audio-task-meter > span {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, var(--awt-hot), var(--awt-blue));
	transition: width 180ms ease;
}

.awtsmoos-audio-offer .audio-task-progress[data-determinate="false"] .audio-task-meter > span {
	animation: awtsmoos-audio-working 1.3s ease-in-out infinite alternate;
}

@keyframes awtsmoos-audio-working {
	from {
		transform: translateX(-55%);
	}
	to {
		transform: translateX(165%);
	}
}



/* CompactCSS source: /ai/css/audio/player.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * The Awtsmoos lets playback occupy one clear horizontal river. Awtsmoos.com
 * gives the seek rail a generous invisible touch/keyboard vessel while the
 * visible progress line remains compact and distinct from task progress.
 */
.awtsmoos-audio-offer .audio-player-wrap {
	min-width: 0;
}

.awtsmoos-audio-offer .audio-player-wrap[hidden] {
	display: none;
}

.awtsmoos-audio-offer .audio-player-wrap audio {
	display: none;
}

.awtsmoos-audio-offer .awtsmoos-player {
	display: grid;
	grid-template-columns: 44px minmax(90px, 1fr) auto;
	align-items: center;
	gap: 10px;
	min-width: 0;
	padding: 8px 10px;
	border: 1px solid var(--awt-line-soft);
	border-radius: 14px;
	background: rgba(0, 0, 0, 0.18);
}

.awtsmoos-audio-offer .player-play {
	display: grid;
	place-items: center;
	width: 44px;
	height: 44px;
	padding: 0;
	border: 1px solid rgba(34, 230, 196, 0.32);
	border-radius: 12px;
	font-size: 16px;
	color: var(--awt-text);
	background: rgba(34, 230, 196, 0.09);
}

.awtsmoos-audio-offer .player-play:disabled {
	opacity: 0.42;
	cursor: wait;
}

.awtsmoos-audio-offer .player-meter {
	position: relative;
	display: flex;
	align-items: center;
	height: 22px;
	min-width: 0;
	border-radius: 999px;
	background: transparent;
	cursor: pointer;
	touch-action: manipulation;
}

.awtsmoos-audio-offer .player-meter::before {
	content: "";
	position: absolute;
	inset-inline: 0;
	top: 7px;
	height: 8px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.08);
}

.awtsmoos-audio-offer .player-meter > span {
	position: relative;
	z-index: 1;
	display: block;
	height: 8px;
	border-radius: 999px;
	background: linear-gradient(90deg, var(--awt-hot), var(--awt-blue));
	transition: width 120ms linear;
}

.awtsmoos-audio-offer .player-meter[aria-disabled="true"] {
	cursor: default;
	opacity: 0.58;
}

.awtsmoos-audio-offer .player-time {
	min-width: 72px;
	font-size: 11px;
	font-variant-numeric: tabular-nums;
	text-align: right;
	white-space: nowrap;
	color: var(--awt-muted);
}

.awtsmoos-audio-offer .awtsmoos-player[data-player-state="playing"] {
	border-color: rgba(34, 230, 196, 0.24);
	box-shadow: inset 0 0 0 1px rgba(34, 230, 196, 0.025);
}



/* CompactCSS source: /ai/css/audio/mobile.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * The Awtsmoos narrows the card without narrowing human touch. Awtsmoos.com
 * keeps visible labels, flexible metadata, and a compact player intact even
 * under phone widths and enlarged text.
 */
@media (max-width: 760px) {
	.awtsmoos-audio-offer {
		gap: 10px;
		margin-top: 12px;
		padding: 14px;
		border-radius: 16px;
		min-width: 0;
	}

	.awtsmoos-audio-offer .audio-offer-actions {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 7px;
	}

	.awtsmoos-audio-offer .audio-offer-actions button {
		min-width: 0;
		min-height: 44px;
		padding: 8px 7px;
		font-size: 12px;
		white-space: normal;
		overflow-wrap: anywhere;
	}

	.awtsmoos-audio-offer .audio-primary-button {
		min-height: 48px;
		font-size: 14px;
	}

	.awtsmoos-audio-offer .awtsmoos-player {
		grid-template-columns: 44px minmax(0, 1fr);
		gap: 8px;
		padding: 8px;
	}

	.awtsmoos-audio-offer .player-time {
		grid-column: 2;
		min-width: 0;
		text-align: left;
		white-space: normal;
	}

	.awtsmoos-audio-offer .audio-settings {
		grid-template-columns: 1fr;
	}

	.awtsmoos-audio-offer .audio-feedback {
		grid-template-columns: 1fr;
	}

	.awtsmoos-audio-offer .audio-retry {
		justify-self: start;
		min-height: 44px;
	}
}

@media (max-width: 430px) {
	.awtsmoos-audio-offer .audio-offer-title span {
		max-width: 220px;
	}

	.awtsmoos-audio-offer .audio-offer-actions button {
		font-size: 11px;
	}
}

@media (max-width: 340px) {
	.awtsmoos-audio-offer .audio-offer-actions {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.awtsmoos-audio-offer [data-audio-action="settings"] {
		grid-column: 1 / -1;
	}
}



/* CompactCSS source: /ai/css/audio/accessibility.css */
/*B"H*/
/* Boruch Hashem */
/* Blessed is He */

/*
 * The Awtsmoos creates every mode of perception and every path of attention.
 * Awtsmoos.com therefore keeps focus visible, motion optional, contrast honest,
 * and long text flexible without changing the meaning of the audio controls.
 */
.awtsmoos-audio-offer button:focus-visible,
.awtsmoos-audio-offer select:focus-visible,
.awtsmoos-audio-offer .player-meter:focus-visible,
.attach-button:focus-visible {
	outline: 3px solid var(--awt-hot);
	outline-offset: 2px;
}

.awtsmoos-audio-offer .audio-offer-title,
.awtsmoos-audio-offer .audio-control-deck,
.awtsmoos-audio-offer .audio-settings,
.awtsmoos-audio-offer .audio-feedback,
.awtsmoos-audio-offer .audio-task-meta,
.awtsmoos-audio-offer .awtsmoos-player {
	min-width: 0;
}

.awtsmoos-audio-offer button,
.awtsmoos-audio-offer select,
.awtsmoos-audio-offer .audio-status,
.awtsmoos-audio-offer .audio-task-detail,
.awtsmoos-audio-offer .audio-task-elapsed,
.awtsmoos-audio-offer .player-time {
	max-width: 100%;
}

@media (prefers-reduced-motion: reduce) {
	.awtsmoos-audio-offer .audio-task-progress[data-determinate="false"] .audio-task-meter > span {
		animation: none;
		transform: none;
	}

	.awtsmoos-audio-offer .audio-task-meter > span,
	.awtsmoos-audio-offer .player-meter > span,
	.awtsmoos-audio-offer button,
	.attach-button {
		transition: none;
	}
}

@media (forced-colors: active) {
	.awtsmoos-audio-offer,
	.awtsmoos-audio-offer .awtsmoos-player,
	.awtsmoos-audio-offer button,
	.awtsmoos-audio-offer select,
	.attach-button {
		border-color: CanvasText;
	}

	.awtsmoos-audio-offer .player-meter::before,
	.awtsmoos-audio-offer .audio-task-meter {
		background: Canvas;
		border: 1px solid CanvasText;
	}

	.awtsmoos-audio-offer .player-meter > span,
	.awtsmoos-audio-offer .audio-task-meter > span {
		background: Highlight;
	}

	.awtsmoos-audio-offer button:focus-visible,
	.awtsmoos-audio-offer select:focus-visible,
	.awtsmoos-audio-offer .player-meter:focus-visible,
	.attach-button:focus-visible {
		outline-color: Highlight;
	}
}




