.messages.rastorg-view { padding: 0; overflow: hidden; background: #0c110d; }
.rastorg-root { position: relative; display: flex; width: 100%; height: 100%; min-height: 0; box-sizing: border-box; flex: 1; flex-direction: column; overflow: hidden; color: var(--text, #eef5ed); background: #0c110d; }
.rastorg-root.loading { display: grid; place-content: center; gap: 10px; text-align: center; }
.rastorg-root.loading svg { animation: spin 1s linear infinite; }
.rastorg-workspace { display: grid; width: 100%; height: 100%; min-height: 0; flex: 1; grid-template-columns: clamp(248px, 23vw, 320px) minmax(0, 1fr); overflow: hidden; background: transparent; }
.rastorg-topics { display: flex; min-width: 0; min-height: 0; flex-direction: column; padding: 18px 14px; border-right: 1px solid rgba(112, 222, 139, .14); background: rgba(24, 35, 26, .74); }
.rastorg-topics-head { display: flex; min-width: 0; align-items: center; gap: 10px; }
.rastorg-topics-head span, .rastorg-chat-head span { display: grid; gap: 3px; min-width: 0; }
.rastorg-topics-head small, .rastorg-chat-head small { color: var(--muted, #9da89d); }
.rastorg-topic-create { display: grid; gap: 8px; margin: 16px 0; }
.rastorg-topic-create-main { display: grid; min-width: 0; grid-template-columns: 1fr auto; gap: 8px; }
.rastorg-topic-create input, .rastorg-composer textarea, .rastorg-admin-form input, .rastorg-admin-form textarea { width: 100%; min-width: 0; box-sizing: border-box; border: 1px solid rgba(126, 218, 147, .22); border-radius: 13px; color: inherit; background: rgba(5, 10, 6, .62); outline: none; }
.rastorg-topic-create input, .rastorg-admin-form input { min-height: 42px; padding: 0 12px; }
.rastorg-topic-create input:focus, .rastorg-composer textarea:focus, .rastorg-admin-form input:focus, .rastorg-admin-form textarea:focus { border-color: #67df87; box-shadow: 0 0 0 3px rgba(103, 223, 135, .12); }
.rastorg-topic-create-submit:disabled { border-color: rgba(255,255,255,.08); color: rgba(238,245,237,.38); background: rgba(255,255,255,.055); box-shadow: none; cursor: default; opacity: 1; }
.rastorg-topic-create-submit:not(:disabled) { color: #071108; background: #69db88; }
.rastorg-topic-create-submit[aria-busy="true"] svg, .rastorg-topic-create-submit:disabled svg[data-lucide="loader-2"] { animation: spin 1s linear infinite; }
.rastorg-topic-list { display: grid; min-width: 0; min-height: 0; flex: 1; align-content: start; gap: 7px; overflow-x: hidden; overflow-y: auto; }
.rastorg-load-more, .rastorg-load-older { justify-self: center; }
.rastorg-load-older { flex: 0 0 auto; }
.rastorg-topic-row { display: grid; width: 100%; max-width: 100%; min-width: 0; box-sizing: border-box; grid-template-columns: minmax(0, 1fr) auto; align-items: center; border: 1px solid transparent; border-radius: 14px; }
.rastorg-topic-row:hover, .rastorg-topic-row.active { border-color: rgba(103, 223, 135, .25); background: rgba(91, 199, 120, .1); }
.rastorg-topic { display: grid; min-width: 0; grid-template-columns: 32px minmax(0, 1fr); gap: 9px; align-items: center; width: 100%; box-sizing: border-box; overflow: hidden; padding: 11px; border: 1px solid transparent; border-radius: 14px; color: inherit; text-align: left; background: transparent; cursor: pointer; }
.rastorg-topic > span:last-child { display: grid; min-width: 0; gap: 3px; }
.rastorg-topic b em { display: inline-flex; margin-left: 6px; padding: 2px 5px; border-radius: 6px; color: #91e7a7; background: rgba(89,217,139,.1); font-size: 8px; font-style: normal; text-transform: uppercase; vertical-align: 2px; }
.rastorg-topic :is(b, small) { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rastorg-topic small { color: var(--muted, #9da89d); }
.rastorg-topic-actions { display: flex; padding-right: 5px; opacity: 0; transition: opacity .15s ease; }
.rastorg-topic-row:hover .rastorg-topic-actions, .rastorg-topic-row:focus-within .rastorg-topic-actions { opacity: 1; }
.rastorg-topic-actions button { display: grid; width: 28px; height: 28px; place-items: center; padding: 0; border: 0; border-radius: 8px; color: var(--muted, #9da89d); background: transparent; cursor: pointer; }
.rastorg-topic-actions button:hover { color: #7de39a; background: rgba(103,223,135,.1); }
.rastorg-topic-actions svg { width: 15px; height: 15px; }
.rastorg-chat { position: relative; display: flex; min-width: 0; min-height: 0; flex-direction: column; background: #0c110d; }
.rastorg-chat-head { position: relative; z-index: 5; display: flex; min-height: 70px; align-items: center; gap: 10px; overflow: visible; padding: 0 18px; border-bottom: 1px solid rgba(112, 222, 139, .13); }
.rastorg-chat-head span :is(b, small) { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rastorg-agent-badge { display: inline-flex; align-items: center; gap: 4px; margin-left: 8px; padding: 3px 7px; border: 1px solid rgba(103,223,135,.2); border-radius: 8px; color: #a7efb8; background: rgba(77,170,100,.12); font-size: 10px; font-style: normal; vertical-align: 2px; }
.rastorg-agent-badge svg { width: 12px; height: 12px; }
.rastorg-chat-head-actions { display: flex; min-width: max-content; flex: 0 0 auto; align-items: center; gap: 6px; margin-left: auto; }
.rastorg-chat-head-actions .button { width: 44px; min-width: 44px; height: 44px; min-height: 44px; }
.rastorg-topic-kb-trigger.active { border-color: rgba(103,223,135,.45); color: #aef2bf; background: rgba(77,170,100,.18); }
.rastorg-mobile-back { display: none; }
.rastorg-messages-stage { position: relative; display: flex; min-width: 0; min-height: 0; flex: 1; }
.rastorg-messages { display: flex; width: 100%; min-height: 0; flex: 1; flex-direction: column; gap: 16px; overflow: auto; padding: 22px clamp(16px, 4vw, 54px); overscroll-behavior: contain; }
.rastorg-messages-stage .rastorg-messages-jump { right: 22px; bottom: 16px; }
.rastorg-messages-jump[hidden] { display: none; }
.rastorg-message { display: grid; width: fit-content; max-width: min(92%, 840px); align-self: flex-start; grid-template-columns: 34px minmax(0, 1fr); gap: 10px; }
.rastorg-message.user { align-self: flex-start; }
.rastorg-message-avatar { display: grid; width: 34px; height: 34px; place-items: center; border: 1px solid rgba(106, 225, 139, .25); border-radius: 12px; color: #7de39a; background: rgba(71, 146, 89, .12); }
.rastorg-message > .avatar { width: 34px; height: 34px; min-width: 34px; min-height: 34px; grid-column: 1; grid-row: 1; border-radius: 12px; }
.rastorg-message > .avatar img { border-radius: inherit; }
.rastorg-message > div:last-child { position: relative; min-width: 0; width: fit-content; max-width: 100%; grid-column: 2; grid-row: 1; padding: 11px 14px; border: 1px solid rgba(255,255,255,.07); border-radius: 4px 17px 17px; background: rgba(255,255,255,.045); transition: border-color .14s ease, box-shadow .14s ease, background-color .14s ease; }
.rastorg-message.user > div:last-child { border-color: rgba(103,223,135,.12); background: rgba(77, 170, 100, .14); }
.rastorg-message:is(.context-menu-active, .context-press-pending) > div:last-child { border-color: rgba(103,223,135,.48); box-shadow: 0 0 0 3px rgba(103,223,135,.1); }
.rastorg-message.selected > div:last-child { border-color: rgba(103,223,135,.68); background: rgba(77,170,100,.2); box-shadow: 0 0 0 3px rgba(103,223,135,.13); }
.rastorg-message.rastorg-pinned-focus > div:last-child { animation: rastorg-pinned-pulse 1.2s ease; }
.rastorg-message-context-trigger { position: absolute; z-index: 3; top: 4px; right: 4px; width: 1px; height: 1px; overflow: hidden; padding: 0; border: 0; opacity: 0; }
.rastorg-message-context-trigger:focus-visible { width: 30px; height: 30px; display: grid; place-items: center; overflow: visible; border: 1px solid rgba(103,223,135,.35); border-radius: 9px; color: #a9efba; background: #172119; opacity: 1; outline: 2px solid rgba(121,226,143,.7); outline-offset: 2px; }
.rastorg-message-context-trigger svg { width: 15px; height: 15px; }
.rastorg-message-select-hit { position: absolute; z-index: 2; inset: 0; width: 100%; height: 100%; padding: 0; border: 0; border-radius: inherit; background: transparent; cursor: pointer; }
.rastorg-message-pinned { display: inline-flex; align-items: center; gap: 3px; margin-left: 8px; color: #89e6a0; font-size: 10px; font-weight: 800; vertical-align: middle; }
.rastorg-message-pinned svg { width: 11px; height: 11px; }
.rastorg-pinned-summary { display: inline-flex; width: auto !important; min-width: 42px !important; gap: 5px; padding-inline: 10px; color: #9deeb1; }
.rastorg-pinned-summary svg { width: 15px; height: 15px; }
.rastorg-pinned-summary.active { border-color: rgba(103,223,135,.42); background: rgba(77,170,100,.16); }
.rastorg-pinned-panel { position: absolute; z-index: 9; top: 62px; right: 16px; display: grid; width: min(390px, calc(100% - 32px)); max-height: min(520px, calc(100% - 82px)); grid-template-rows: auto minmax(0, 1fr); overflow: hidden; border: 1px solid rgba(103,223,135,.25); border-radius: 17px; color: #eaf4ea; background: #111913; box-shadow: 0 24px 70px rgba(0,0,0,.5), inset 0 1px 0 rgba(255,255,255,.035); }
.rastorg-pinned-panel > header { display: flex; min-height: 52px; align-items: center; justify-content: space-between; gap: 10px; padding: 7px 8px 7px 13px; border-bottom: 1px solid rgba(103,223,135,.12); }
.rastorg-pinned-panel > header > span { display: flex; align-items: center; gap: 7px; }
.rastorg-pinned-panel > header svg { width: 16px; height: 16px; color: #91e7a7; }
.rastorg-pinned-panel > header .button { width: 38px; min-width: 38px; height: 38px; min-height: 38px; }
.rastorg-pinned-panel > div { display: grid; min-height: 0; align-content: start; gap: 6px; overflow-y: auto; padding: 8px; overscroll-behavior: contain; }
.rastorg-pinned-item { display: grid; min-width: 0; grid-template-columns: 30px minmax(0, 1fr) 18px; align-items: center; gap: 8px; padding: 9px; border: 1px solid rgba(255,255,255,.065); border-radius: 12px; color: inherit; text-align: left; background: rgba(255,255,255,.025); font: inherit; cursor: pointer; }
.rastorg-pinned-item:hover, .rastorg-pinned-item:focus-visible { border-color: rgba(103,223,135,.3); background: rgba(77,170,100,.1); outline: none; }
.rastorg-pinned-item > i { display: grid; width: 30px; height: 30px; place-items: center; border-radius: 9px; color: #9beab0; background: rgba(89,217,139,.09); font-style: normal; }
.rastorg-pinned-item > i svg { width: 15px; height: 15px; }
.rastorg-pinned-item > span { display: grid; min-width: 0; gap: 2px; }
.rastorg-pinned-item :is(b, small) { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rastorg-pinned-item small { color: #99a59a; font-size: 11px; }
.rastorg-pinned-state { display: grid; min-height: 82px; place-content: center; justify-items: center; gap: 7px; color: #9ba79c; text-align: center; }
.rastorg-pinned-state.error { color: #ffaaa3; }
.rastorg-pinned-state > svg, .rastorg-pinned-more:disabled svg { animation: spin 1s linear infinite; }
.rastorg-pinned-more { justify-self: center; min-height: 38px; }
.rastorg-selection-bar { position: relative; z-index: 4; inset: auto; display: flex; min-height: 48px; flex: 0 0 auto; align-items: center; justify-content: space-between; gap: 10px; margin: 8px 14px 0; padding: 6px 8px 6px 12px; border: 1px solid rgba(103,223,135,.24); border-radius: 14px; background: rgba(17,27,19,.96); box-shadow: 0 12px 36px rgba(0,0,0,.3); transform: none; }
.rastorg-selection-bar > div { display: flex; align-items: center; gap: 5px; }
.rastorg-selection-bar .button { width: 38px; min-width: 38px; height: 38px; min-height: 38px; padding: 0; }
.rastorg-selection-bar > span { color: #aab6aa; font-size: 12px; }
.rastorg-selection-bar > span b { color: #dff5e3; }
.rastorg-message-content { margin-top: 5px; line-height: 1.55; overflow-wrap: break-word; word-break: normal; }
.rastorg-agent-progress { display: grid; gap: 5px; margin: 9px 0 7px; padding: 8px; border: 1px solid rgba(103,223,135,.13); border-radius: 11px; background: rgba(0,0,0,.16); }
.rastorg-agent-progress > div { display: grid; min-width: 0; grid-template-columns: 20px minmax(0, 1fr); align-items: start; gap: 7px; color: #abb6ac; }
.rastorg-agent-progress i { display: grid; width: 20px; height: 20px; place-items: center; color: #84e59c; font-style: normal; }
.rastorg-agent-progress i svg { width: 14px; height: 14px; }
.rastorg-agent-progress .running i svg { animation: spin 1s linear infinite; }
.rastorg-agent-progress .failed { color: #ffaaa3; }
.rastorg-agent-progress .failed i { color: #ff8f86; }
.rastorg-agent-progress span { display: grid; min-width: 0; gap: 2px; }
.rastorg-agent-progress b { overflow-wrap: anywhere; font-size: 11px; }
.rastorg-agent-progress small { color: #829084; font-size: 10px; line-height: 1.35; }
.rastorg-message.streaming .rastorg-message-content { white-space: pre-wrap; }
.rastorg-message.streaming .rastorg-message-content::after { display: inline-block; width: 7px; height: 1em; margin-left: 3px; content: ""; vertical-align: -.15em; background: #77e293; animation: rastorg-caret .8s steps(1) infinite; }
.rastorg-message.finalizing .rastorg-message-content::after { display: none; }
.rastorg-message.error > div { border-color: rgba(234, 102, 102, .35); }
@keyframes rastorg-caret { 50% { opacity: 0; } }
@keyframes rastorg-pinned-pulse { 0%, 100% { box-shadow: 0 0 0 0 rgba(103,223,135,0); } 35% { box-shadow: 0 0 0 6px rgba(103,223,135,.22); } }
.rastorg-composer { position: relative; display: grid; grid-template-columns: auto minmax(0, 1fr) 44px; gap: 4px; align-items: end; padding: 14px 18px 18px; }
.rastorg-composer-tools { display: flex; min-width: 0; align-items: center; gap: 8px; }
.rastorg-composer-input-wrap { position: relative; display: flex; width: 100%; min-width: 0; grid-column: 2; align-self: end; overflow: visible; border-radius: 13px; }
.rastorg-composer textarea { display: block; width: 100%; min-width: 0; height: 48px; min-height: 48px; max-height: 150px; flex: 1 1 auto; resize: none; overflow-y: auto; padding: 13px 50px 13px 14px; scrollbar-width: none; -ms-overflow-style: none; transition: height .18s ease, max-height .18s ease; }
.rastorg-composer textarea::-webkit-scrollbar { width: 0; height: 0; display: none; }
.rastorg-composer.expanded textarea { height: clamp(160px, 36dvh, 400px); max-height: 40dvh; }
.rastorg-composer .button { position: relative; width: 44px; min-width: 44px; height: 44px; min-height: 44px; flex: 0 0 44px; }
.rastorg-composer .rastorg-composer-tools-toggle { display: none; }
.rastorg-composer .rastorg-composer-expand { position: absolute; z-index: 2; top: 10px; right: 8px; width: 28px; min-width: 28px; height: 28px; min-height: 28px; flex: 0 0 28px; padding: 0; border-color: rgba(126,218,147,.14); border-radius: 8px; color: #9faaa0; background: rgba(20,28,21,.9); box-shadow: 0 4px 14px rgba(0,0,0,.22); }
.rastorg-composer-submit { grid-column: 3; }
.rastorg-composer .rastorg-composer-expand:hover, .rastorg-composer .rastorg-composer-expand[aria-pressed="true"] { border-color: rgba(103,223,135,.34); color: #a9efba; background: #18251b; }
.rastorg-composer .rastorg-composer-expand svg { width: 14px; height: 14px; }
.rastorg-composer .button small { position: absolute; right: -3px; top: -5px; min-width: 17px; padding: 1px 4px; border-radius: 9px; color: #08110a; background: #7de39a; font-size: 10px; }
.rastorg-composer .button.recording { color: #ff8c83; border-color: rgba(255,100,90,.45); animation: rastorg-caret 1s steps(1) infinite; }
.rastorg-voice-timer { display: inline-flex; min-height: 32px; align-items: center; padding: 0 8px; border: 1px solid rgba(255,100,90,.28); border-radius: 10px; color: #ffaaa3; background: rgba(18,13,13,.94); font-size: 12px; font-variant-numeric: tabular-nums; white-space: nowrap; pointer-events: none; }
.rastorg-draft-file { display: grid; grid-column: 1 / -1; min-width: 0; grid-template-columns: 14px minmax(0, 1fr) 30px; align-items: center; gap: 7px; padding: 5px 6px 5px 9px; border: 1px solid rgba(103,223,135,.18); border-radius: 11px; color: #8ce8a4; background: rgba(103,223,135,.065); font-size: 12px; }
.rastorg-draft-file > span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rastorg-draft-file > button { display: grid; width: 30px; height: 30px; place-items: center; padding: 0; border: 0; border-radius: 8px; color: #c6d1c7; background: rgba(255,255,255,.055); cursor: pointer; }
.rastorg-draft-file > button:hover { color: #fff; background: rgba(255,255,255,.11); }
.rastorg-draft-file svg { width: 14px; height: 14px; flex: 0 0 auto; }
.rastorg-resources { display: flex; max-width: 100%; min-width: 0; flex-wrap: wrap; gap: 7px; margin-top: 10px; }
.rastorg-resource, .rastorg-download-answer { display: inline-flex; max-width: 100%; min-width: 0; box-sizing: border-box; align-items: center; gap: 6px; padding: 7px 9px; border: 1px solid rgba(103,223,135,.18); border-radius: 10px; color: #8ce8a4; background: rgba(103,223,135,.07); text-decoration: none; }
.rastorg-resource > span { min-width: 0; overflow-wrap: anywhere; word-break: break-word; }
.rastorg-resource svg, .rastorg-download-answer svg { width: 15px; height: 15px; flex: 0 0 auto; }
.rastorg-generated-image { display: grid; max-width: min(100%, 520px); gap: 6px; padding: 0; border: 0; color: #8ce8a4; text-align: left; background: transparent; font: inherit; cursor: zoom-in; }
.rastorg-generated-image img { display: block; width: 100%; max-height: 520px; object-fit: contain; border: 1px solid rgba(103,223,135,.18); border-radius: 14px; background: rgba(0,0,0,.2); }
.rastorg-generated-audio { display: grid; width: min(100%, 520px); gap: 7px; }
.rastorg-generated-audio > span { display: flex; align-items: center; gap: 6px; color: #8ce8a4; }
.rastorg-generated-audio audio { display: none; }
.rastorg-voice-note { width: 100%; min-width: 0; box-sizing: border-box; }
.rastorg-audio-volume { flex: 0 0 auto; }
.rastorg-download-answer { margin-top: 9px; cursor: pointer; }
.rastorg-long-answer-actions { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 10px; }
.rastorg-long-answer-actions .button, .rastorg-long-answer-actions .rastorg-download-answer { min-height: 38px; margin: 0; }
.rastorg-retry-send, .rastorg-retry-run { min-height: 44px; margin-top: 9px; }
.rastorg-retry-run[aria-busy="true"] svg { animation: spin 1s linear infinite; }
.rastorg-long-answer summary { margin: 6px 0; color: #8ce8a4; cursor: pointer; }
.rastorg-empty { display: grid; align-self: center; justify-items: center; gap: 8px; margin: auto; padding: 28px; color: var(--muted, #9da89d); text-align: center; }
.rastorg-empty > svg { width: 40px; height: 40px; color: #69dc88; }
.rastorg-empty.compact { padding: 18px 8px; }
.rastorg-empty.error, .rastorg-inline-error { color: #ffb0a9; }
.rastorg-inline-error { margin-bottom: 10px; padding: 10px 14px; border-radius: 12px; background: rgba(141, 44, 37, .2); }
.rastorg-admin-trigger { width: 38px; min-width: 38px; height: 38px; margin-left: auto; padding: 0; border: 1px solid rgba(103,223,135,.25); border-radius: 12px; color: #a9efba; background: linear-gradient(145deg, rgba(77,170,100,.17), rgba(255,255,255,.025)); font: inherit; font-size: 16px; font-weight: 950; cursor: pointer; box-shadow: inset 0 1px 0 rgba(255,255,255,.05); }
.rastorg-admin-trigger:hover, .rastorg-admin-trigger[aria-expanded="true"] { border-color: rgba(103,223,135,.5); color: #e0ffe7; background: rgba(77,170,100,.24); }
.rastorg-admin-trigger:focus-visible { outline: 2px solid rgba(121,226,143,.76); outline-offset: 2px; }
.rastorg-admin-backdrop { z-index: 3090; }
.rastorg-admin-dialog { position: relative; display: grid; width: min(1180px, calc(100vw - 48px)); height: min(740px, calc(100dvh - 72px)); box-sizing: border-box; grid-template-rows: 82px minmax(0, 1fr); }
.rastorg-admin-dialog > .rastorg-admin-close { position: absolute; z-index: 8; top: 18px; right: 18px; bottom: auto; left: auto; width: 44px; min-width: 44px; height: 44px; min-height: 44px; margin: 0; transform: none; }
.rastorg-admin-header { min-width: 0; min-height: 0; height: 82px; max-height: 82px; box-sizing: border-box; grid-row: 1; align-self: stretch; overflow: hidden; }
.rastorg-admin-dialog > .workspace-settings-layout { min-height: 0; grid-row: 2; }
.rastorg-admin-mark { display: grid; width: 56px; height: 56px; flex: 0 0 56px; place-items: center; border: 1px solid rgba(103,223,135,.28); border-radius: 17px; color: #b9f4c6; background: linear-gradient(145deg, rgba(89,217,139,.2), rgba(89,217,139,.055)); font-size: 21px; font-weight: 950; box-shadow: inset 0 1px 0 rgba(255,255,255,.07); }
.rastorg-admin-section { min-height: auto; }
.rastorg-admin-overview-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px; }
.rastorg-admin-metric-group { display: grid; min-width: 0; align-content: start; gap: 12px; padding: 16px; border: 1px solid rgba(255,255,255,.08); border-radius: 16px; background: rgba(255,255,255,.035); }
.rastorg-admin-metric-group:first-child { grid-column: 1 / -1; }
.rastorg-admin-metric-group h3 { margin: 0; font-size: 14px; }
.rastorg-admin-metric-group > div { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.rastorg-admin-metric-group span { display: grid; min-width: 0; gap: 3px; padding: 11px; border-radius: 12px; background: rgba(0,0,0,.2); }
.rastorg-admin-metric-group b { overflow: hidden; color: #e9f5ea; font-size: 18px; text-overflow: ellipsis; }
.rastorg-admin-metric-group small { color: var(--muted, #919b91); font-size: 10px; }
.rastorg-admin-form { display: grid; align-content: start; gap: 15px; padding: 18px; border: 1px solid rgba(255,255,255,.08); border-radius: 16px; background: rgba(255,255,255,.035); }
.rastorg-agent-settings { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; }
.rastorg-agent-settings > .rastorg-admin-form-actions { grid-column: 1 / -1; }
.rastorg-agent-settings-card { display: grid; min-width: 0; align-content: start; gap: 13px; padding: 15px; border: 1px solid rgba(103,223,135,.13); border-radius: 15px; background: rgba(4,10,5,.26); }
.rastorg-agent-settings-card > header { display: grid; min-width: 0; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 10px; }
.rastorg-agent-settings-card > header > i { display: grid; width: 34px; height: 34px; place-items: center; border: 1px solid rgba(103,223,135,.2); border-radius: 11px; color: #aaf0ba; background: rgba(77,170,100,.1); }
.rastorg-agent-settings-card > header > i svg { width: 17px; height: 17px; }
.rastorg-agent-settings-card > header > span { display: grid; min-width: 0; gap: 2px; }
.rastorg-agent-settings-card > header b { color: #e7f1e8; font-size: 13px; }
.rastorg-agent-settings-card > header small { overflow: hidden; color: var(--muted, #919b91); font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.rastorg-agent-settings-card > header em { padding: 5px 8px; border: 1px solid rgba(255,255,255,.08); border-radius: 999px; color: #98a39a; background: rgba(255,255,255,.035); font-size: 9px; font-style: normal; font-weight: 850; }
.rastorg-agent-settings-card > header em.ready { border-color: rgba(103,223,135,.24); color: #aef0bc; background: rgba(77,170,100,.1); }
.rastorg-agent-settings-card input[type="url"], .rastorg-agent-settings-card input[type="password"] { width: 100%; min-width: 0; min-height: 42px; box-sizing: border-box; padding: 0 12px; border: 1px solid rgba(126,218,147,.2); border-radius: 11px; color: #edf5ed; background: #090e0a; font: inherit; font-size: 12px; outline: none; }
.rastorg-agent-settings-card input:focus { border-color: #67df87; box-shadow: 0 0 0 3px rgba(103,223,135,.12); }
.rastorg-agent-settings-card input:disabled { cursor: not-allowed; opacity: .58; }
.rastorg-agent-settings-card code { color: #b9efc5; font: inherit; }
.rastorg-agent-clear-key { justify-self: start; min-height: 36px; color: #c6d1c7; }
.rastorg-agent-clear-key.active { border-color: rgba(255,166,92,.26); color: #ffd0a8; background: rgba(177,91,26,.1); }
.rastorg-agent-toggle { display: grid; min-width: 0; grid-template-columns: auto minmax(0, 1fr); align-items: start; gap: 10px; padding: 12px; border: 1px solid rgba(103,223,135,.13); border-radius: 13px; background: rgba(0,0,0,.13); cursor: pointer; }
.rastorg-agent-toggle input { width: 18px !important; height: 18px; min-height: 0 !important; margin: 2px 0 0; accent-color: #69db88; }
.rastorg-agent-toggle > span { display: grid; min-width: 0; gap: 3px; }
.rastorg-agent-toggle b { color: #e6f1e7; font-size: 12px; }
.rastorg-agent-toggle small { color: #8f9b90; font-size: 10px; line-height: 1.4; }
.rastorg-agent-toggle.primary { border-color: rgba(103,223,135,.25); background: linear-gradient(135deg, rgba(48,119,67,.19), rgba(0,0,0,.12)); }
.rastorg-admin-field { display: grid; min-width: 0; gap: 7px; color: var(--muted, #9da89d); font-size: 12px; font-weight: 800; }
.rastorg-admin-prompt textarea { min-height: 190px; resize: none; overflow-y: auto; padding: 12px 13px; color: #e8f1e8; background: #101611; font: inherit; font-size: 13px; font-weight: 500; line-height: 1.5; appearance: none; }
.rastorg-admin-prompt > small { display: flex; justify-content: space-between; gap: 12px; color: var(--muted, #919b91); font-weight: 500; }
.rastorg-admin-prompt > small b { color: #a9b4aa; font-variant-numeric: tabular-nums; }
.rastorg-admin-prompt-error { padding: 10px 12px; border: 1px solid rgba(255,113,103,.24); border-radius: 12px; color: #ffb0a9; background: rgba(141,44,37,.16); font-size: 12px; }
.rastorg-context-tail { display: grid; min-width: 0; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 11px 18px; padding: 13px; border: 1px solid rgba(103,223,135,.14); border-radius: 14px; background: rgba(5,10,6,.34); }
.rastorg-context-tail-copy { display: grid; min-width: 0; gap: 4px; }
.rastorg-context-tail-copy > span { color: #dde9de; font-size: 12px; font-weight: 850; }
.rastorg-context-tail-copy > small, .rastorg-context-tail > small { color: var(--muted, #919b91); font-size: 10px; font-weight: 550; line-height: 1.4; }
.rastorg-context-tail > small { grid-column: 1 / -1; }
.rastorg-context-tail-control { display: flex; align-items: end; gap: 8px; }
.rastorg-context-tail-control > label { display: grid; width: 82px; gap: 5px; color: var(--muted, #919b91); font-size: 10px; font-weight: 750; }
.rastorg-context-tail-control input { width: 82px; min-height: 38px; box-sizing: border-box; padding: 0 10px; border: 1px solid rgba(126,218,147,.22); border-radius: 10px; color: #edf5ed; background: #090e0a; font: inherit; font-size: 13px; font-variant-numeric: tabular-nums; outline: none; appearance: textfield; }
.rastorg-context-tail-control input:focus { border-color: #67df87; box-shadow: 0 0 0 3px rgba(103,223,135,.12); }
.rastorg-context-tail-control input[aria-invalid="true"] { border-color: rgba(255,113,103,.48); }
.rastorg-context-tail-presets { display: flex; gap: 5px; }
.rastorg-context-tail-presets button { min-width: 42px; height: 38px; padding: 0 8px; border: 1px solid rgba(255,255,255,.09); border-radius: 10px; color: #9ea99f; background: rgba(255,255,255,.035); font: inherit; font-size: 11px; font-weight: 800; cursor: pointer; }
.rastorg-context-tail-presets button:hover { border-color: rgba(103,223,135,.3); color: #dff5e3; background: rgba(77,170,100,.1); }
.rastorg-context-tail-presets button.active { border-color: rgba(103,223,135,.46); color: #baf3c7; background: rgba(77,170,100,.18); box-shadow: inset 0 1px 0 rgba(255,255,255,.05); }
.rastorg-context-tail-presets button:focus-visible { outline: 2px solid rgba(121,226,143,.72); outline-offset: 2px; }
.rastorg-context-tail-presets button:disabled { cursor: default; opacity: .55; }
.rastorg-personal-kb-section, .rastorg-personal-kb-section > * { min-width: 0; }
.rastorg-personal-kb-search { display: grid; min-width: 0; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 9px; padding: 13px; border: 1px solid rgba(255,255,255,.075); border-radius: 15px; background: rgba(255,255,255,.025); }
.rastorg-personal-kb-users { display: grid; min-width: 0; gap: 8px; }
.rastorg-personal-kb-users.refreshing { opacity: .62; transition: opacity .14s ease; }
.rastorg-personal-kb-user { display: grid; width: 100%; min-width: 0; grid-template-columns: minmax(150px, 1fr) repeat(4, minmax(58px, auto)) 20px; align-items: center; gap: 9px; padding: 11px; border: 1px solid rgba(255,255,255,.075); border-radius: 14px; color: inherit; text-align: left; background: rgba(255,255,255,.028); cursor: pointer; }
.rastorg-personal-kb-user:hover, .rastorg-personal-kb-user.active { border-color: rgba(103,223,135,.3); background: rgba(77,170,100,.08); }
.rastorg-personal-kb-user:focus-visible { outline: 2px solid rgba(121,226,143,.72); outline-offset: 2px; }
.rastorg-personal-kb-user > span { display: grid; min-width: 0; gap: 2px; }
.rastorg-personal-kb-user b, .rastorg-personal-kb-user small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rastorg-personal-kb-user small { color: var(--muted, #919b91); font-size: 10px; }
.rastorg-personal-kb-user .error b { color: #ff9c92; }
.rastorg-personal-kb-user > svg { width: 17px; height: 17px; color: #829086; }
.rastorg-personal-kb-state { display: grid; min-height: 112px; place-content: center; justify-items: center; gap: 9px; padding: 16px; color: var(--muted, #919b91); text-align: center; }
.rastorg-personal-kb-state svg { width: 23px; height: 23px; color: #8de5a2; }
.rastorg-personal-kb-state.error { color: #ffb0a9; }
.rastorg-personal-kb-state.error svg { color: #ff9f96; }
.rastorg-personal-kb-state.loading svg, .rastorg-personal-kb-more [aria-busy="true"] svg { animation: spin 1s linear infinite; }
.rastorg-personal-kb-error { display: flex; min-width: 0; align-items: center; justify-content: space-between; gap: 12px; padding: 9px 11px; border: 1px solid rgba(255,113,103,.24); border-radius: 12px; color: #ffb0a9; background: rgba(141,44,37,.16); font-size: 12px; }
.rastorg-personal-kb-error > span { min-width: 0; overflow: hidden; text-overflow: ellipsis; }
.rastorg-personal-kb-error .button { min-height: 36px; }
.rastorg-personal-kb-more { display: flex; justify-content: center; }
.rastorg-personal-kb-more .button { min-height: 38px; padding-inline: 14px; }
.rastorg-personal-kb-panel { display: grid; min-width: 0; gap: 9px; padding: 13px; border: 1px solid rgba(103,223,135,.2); border-radius: 15px; background: #101611; }
.rastorg-personal-kb-panel header { display: flex; min-width: 0; align-items: center; justify-content: space-between; gap: 10px; }
.rastorg-personal-kb-panel header > span { display: grid; min-width: 0; gap: 2px; }
.rastorg-personal-kb-panel header :is(b, small) { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rastorg-personal-kb-panel header small { color: var(--muted, #919b91); font-size: 10px; }
.rastorg-personal-kb-panel > div { display: grid; min-width: 0; gap: 7px; }
.rastorg-personal-kb-panel article { display: grid; grid-template-columns: 32px minmax(0,1fr); align-items: center; gap: 9px; padding: 9px; border-radius: 11px; background: rgba(255,255,255,.035); }
.rastorg-personal-kb-panel article > i { display: grid; width: 32px; height: 32px; place-items: center; border-radius: 9px; color: #9de9ae; background: rgba(89,217,139,.09); font-style: normal; }
.rastorg-personal-kb-panel article > i svg { width: 16px; height: 16px; }
.rastorg-personal-kb-panel article[data-status="processing"] > i svg { animation: spin 1s linear infinite; }
.rastorg-personal-kb-panel article[data-status="failed"] > i { color: #ff9f96; background: rgba(150,48,40,.16); }
.rastorg-personal-kb-panel article span { display: grid; min-width: 0; gap: 3px; }
.rastorg-personal-kb-panel article b { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rastorg-personal-kb-panel article small { display: flex; min-width: 0; align-items: center; gap: 5px; overflow: hidden; color: var(--muted, #919b91); font-size: 10px; white-space: nowrap; }
.rastorg-personal-kb-panel article small em { color: #a9ddb3; font-style: normal; font-weight: 750; }
.rastorg-personal-kb-panel article[data-status="failed"] small em { color: #ff9f96; }
@media (max-width: 720px) { .rastorg-personal-kb-user { grid-template-columns: minmax(0, 1fr) repeat(2, auto) 18px; } .rastorg-personal-kb-user > span:nth-of-type(4), .rastorg-personal-kb-user > span:nth-of-type(5) { display: none; } }
@media (max-width: 760px) {
  .rastorg-personal-kb-section.viewing-sources > :not(.rastorg-personal-kb-panel) { display: none; }
  .rastorg-personal-kb-section.viewing-sources { min-height: 100%; align-content: stretch; }
  .rastorg-personal-kb-section.viewing-sources .rastorg-personal-kb-panel { min-height: 100%; box-sizing: border-box; align-content: start; border: 0; border-radius: 0; background: transparent; }
  .rastorg-personal-kb-section.viewing-sources .rastorg-personal-kb-panel > header { position: sticky; z-index: 2; top: 0; padding-bottom: 10px; background: #0c110d; }
}
@media (max-width: 520px) {
  .rastorg-context-tail { grid-template-columns: minmax(0, 1fr); }
  .rastorg-context-tail-control { width: 100%; min-width: 0; align-items: stretch; flex-direction: column; }
  .rastorg-context-tail-control > label { width: 100%; }
  .rastorg-context-tail-control input { width: 100%; }
  .rastorg-context-tail-presets { display: grid; width: 100%; min-width: 0; grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .rastorg-context-tail-presets button { width: 100%; min-width: 0; }
  .rastorg-personal-kb-search { grid-template-columns: minmax(0, 1fr); }
  .rastorg-personal-kb-search .rastorg-admin-user-search-submit { width: 100%; }
  .rastorg-personal-kb-user { grid-template-columns: minmax(0, 1fr) auto 18px; }
  .rastorg-personal-kb-user > span:nth-of-type(3) { display: none; }
  .rastorg-personal-kb-error { align-items: stretch; flex-direction: column; }
  .rastorg-personal-kb-error .button { width: 100%; min-height: 44px; }
  .rastorg-personal-kb-more .button { min-height: 44px; }
}
.rastorg-admin-form-actions { display: flex; align-items: center; justify-content: space-between; gap: 14px; }
.rastorg-admin-form-actions small { color: var(--muted, #919b91); font-size: 11px; }
.rastorg-admin-form-actions .button { min-height: 44px; }
.rastorg-admin-form-actions .button svg[data-lucide="loader-2"] { animation: spin 1s linear infinite; }
.rastorg-composer-blocked { display: flex; min-height: 54px; align-items: center; justify-content: center; gap: 10px; padding: 10px 16px; border: 1px solid rgba(255, 164, 126, .22); border-radius: 15px; color: #e7b9a8; background: rgba(83, 35, 22, .18); font-size: 13px; font-weight: 750; text-align: center; }
.rastorg-composer-blocked svg { width: 18px; height: 18px; flex: 0 0 auto; }
.rastorg-admin-picker { position: relative; width: min(100%, 360px); font-weight: 400; }
.rastorg-admin-picker.open { z-index: 65; }
.rastorg-admin-user-toolbar { display: grid; min-width: 0; grid-template-columns: minmax(210px, 1fr) minmax(160px, 210px) auto; align-items: end; gap: 10px; padding: 13px; border: 1px solid rgba(255,255,255,.075); border-radius: 15px; background: rgba(255,255,255,.025); }
.rastorg-admin-user-search { display: grid; min-width: 0; gap: 7px; color: var(--muted, #9da89d); font-size: 12px; font-weight: 800; }
.rastorg-admin-user-search-control { position: relative; display: block; min-width: 0; }
.rastorg-admin-user-search-control > svg { position: absolute; z-index: 1; top: 50%; left: 12px; width: 17px; height: 17px; color: #91a094; pointer-events: none; transform: translateY(-50%); }
.rastorg-admin-user-search input { width: 100%; min-width: 0; height: 44px; box-sizing: border-box; padding: 0 12px 0 39px; border: 1px solid rgba(126,218,147,.22); border-radius: 12px; color: #e8f1e8; background: #101611; font: inherit; font-size: 13px; font-weight: 650; outline: none; appearance: none; }
.rastorg-admin-user-search input::-webkit-search-cancel-button { appearance: none; }
.rastorg-admin-user-search input::placeholder { color: #78837a; }
.rastorg-admin-user-search input:focus { border-color: #67df87; box-shadow: 0 0 0 3px rgba(103,223,135,.12); }
.rastorg-admin-user-period { gap: 7px; }
.rastorg-admin-user-period .rastorg-admin-picker { width: 100%; }
.rastorg-admin-user-search-submit { min-width: 96px; min-height: 44px; white-space: nowrap; }
.rastorg-admin-user-search-submit svg, .rastorg-admin-user-pagination svg { width: 16px; height: 16px; }
.rastorg-admin-user-search-submit:disabled svg, .rastorg-admin-user-pagination [aria-busy="true"] svg, .rastorg-admin-user-state.loading svg { animation: spin 1s linear infinite; }
.rastorg-admin-user-list { display: grid; gap: 8px; }
.rastorg-admin-user-list.refreshing { opacity: .58; transition: opacity .14s ease; }
.rastorg-admin-user-state { display: grid; min-height: 116px; place-content: center; justify-items: center; gap: 9px; color: var(--muted, #919b91); text-align: center; }
.rastorg-admin-user-state svg { width: 22px; height: 22px; color: #89e5a0; }
.rastorg-admin-user-error { display: flex; min-height: 44px; align-items: center; justify-content: space-between; gap: 12px; padding: 9px 11px; border: 1px solid rgba(255,113,103,.24); border-radius: 12px; color: #ffb0a9; background: rgba(141,44,37,.16); font-size: 12px; }
.rastorg-admin-user-error .button { min-height: 36px; }
.rastorg-admin-user-pagination { display: flex; justify-content: center; }
.rastorg-admin-user-pagination .rastorg-load-more { min-height: 38px; padding-inline: 14px; }
.rastorg-admin-user { display: grid; min-width: 0; grid-template-columns: 38px minmax(150px, 1fr) minmax(408px, 470px); align-items: center; gap: 11px; padding: 10px 11px; border: 1px solid rgba(255,255,255,.075); border-radius: 14px; background: rgba(255,255,255,.028); }
.rastorg-admin-user > i { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 11px; color: #aeeabb; background: rgba(89,217,139,.1); font-style: normal; }
.rastorg-admin-user > i svg { width: 18px; height: 18px; }
.rastorg-admin-user > span { display: grid; min-width: 0; gap: 3px; }
.rastorg-admin-user > span :is(strong, small) { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rastorg-admin-user > span small { color: var(--muted, #919b91); font-size: 10px; }
.rastorg-admin-user-controls { display: grid; min-width: 0; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: center; gap: 8px; }
.rastorg-admin-user .rastorg-admin-picker { width: 100%; }
.rastorg-admin-image-limit-trigger { display: grid; min-width: 0; min-height: 44px; grid-template-columns: 28px minmax(0, 1fr); align-items: center; gap: 7px; padding: 5px 9px; border: 1px solid rgba(103,223,135,.16); border-radius: 11px; color: #e5eee5; text-align: left; background: rgba(8,14,9,.54); font: inherit; cursor: pointer; }
.rastorg-admin-image-limit-trigger:hover, .rastorg-admin-image-limit-trigger[aria-expanded="true"] { border-color: rgba(103,223,135,.38); background: rgba(77,170,100,.12); }
.rastorg-admin-image-limit-trigger:focus-visible { outline: 2px solid rgba(121,226,143,.72); outline-offset: 2px; }
.rastorg-admin-image-limit-trigger:disabled { cursor: default; opacity: .58; }
.rastorg-admin-image-limit-trigger > i { display: grid; width: 28px; height: 28px; place-items: center; border-radius: 8px; color: #99e9ad; background: rgba(89,217,139,.08); font-style: normal; }
.rastorg-admin-image-limit-trigger > i svg { width: 15px; height: 15px; }
.rastorg-admin-image-limit-trigger:disabled > i svg[data-lucide="loader-2"] { animation: spin 1s linear infinite; }
.rastorg-admin-image-limit-trigger > span { display: grid; min-width: 0; gap: 2px; }
.rastorg-admin-image-limit-trigger > span :is(b, small) { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rastorg-admin-image-limit-trigger > span b { color: #dff4e3; font-size: 11px; }
.rastorg-admin-image-limit-trigger > span small { color: #8d998e; font-size: 9px; }
.rastorg-image-limit-layer { position: absolute; z-index: 80; inset: 0; display: grid; align-items: center; justify-items: end; padding: 18px; border-radius: inherit; overflow: hidden; background: rgba(0,0,0,.54); backdrop-filter: blur(5px); }
.rastorg-image-limit-dialog { display: grid; width: min(390px, 100%); max-height: min(620px, calc(100% - 12px)); grid-template-rows: auto minmax(0, 1fr); overflow: hidden; border: 1px solid rgba(112,222,139,.24); border-radius: 20px; color: #edf5ed; background: #101711; box-shadow: 0 26px 80px rgba(0,0,0,.58); }
.rastorg-image-limit-dialog > header { display: grid; min-width: 0; grid-template-columns: 42px minmax(0, 1fr) 44px; align-items: center; gap: 10px; padding: 13px 14px; border-bottom: 1px solid rgba(112,222,139,.12); background: linear-gradient(145deg, rgba(61,115,72,.15), rgba(13,20,14,.9)); }
.rastorg-image-limit-dialog > header > i { display: grid; width: 42px; height: 42px; place-items: center; border: 1px solid rgba(103,223,135,.18); border-radius: 12px; color: #9ceab0; background: rgba(89,217,139,.085); font-style: normal; }
.rastorg-image-limit-dialog > header > i svg { width: 19px; height: 19px; }
.rastorg-image-limit-dialog > header > span { display: grid; min-width: 0; gap: 2px; }
.rastorg-image-limit-dialog > header > span :is(b, small) { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rastorg-image-limit-dialog > header > span b { font-size: 15px; }
.rastorg-image-limit-dialog > header > span small { color: #94a095; font-size: 10px; }
.rastorg-image-limit-dialog > header .button { width: 44px; min-width: 44px; height: 44px; min-height: 44px; }
.rastorg-image-limit-body { display: grid; min-height: 0; align-content: start; gap: 12px; overflow-y: auto; overflow-x: hidden; padding: 13px 14px 16px; overscroll-behavior: contain; }
.rastorg-image-limit-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; }
.rastorg-image-limit-summary > span { display: grid; min-width: 0; gap: 2px; padding: 10px 8px; border: 1px solid rgba(255,255,255,.065); border-radius: 11px; background: rgba(0,0,0,.17); }
.rastorg-image-limit-summary b { color: #dff5e4; font-size: 17px; }
.rastorg-image-limit-summary small { color: #8d988e; font-size: 8px; line-height: 1.25; }
.rastorg-image-limit-presets { display: grid; gap: 8px; }
.rastorg-image-limit-presets h3 { margin: 0; font-size: 12px; }
.rastorg-image-limit-presets > div { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; }
.rastorg-image-limit-presets button { display: flex; min-width: 0; min-height: 42px; align-items: center; justify-content: center; gap: 4px; padding: 7px; border: 1px solid rgba(255,255,255,.075); border-radius: 11px; color: #dce6dc; background: rgba(0,0,0,.16); font: inherit; cursor: pointer; }
.rastorg-image-limit-presets button:first-child { grid-column: 1 / -1; justify-content: flex-start; padding-inline: 10px; }
.rastorg-image-limit-presets button:first-child > span { display: grid; min-width: 0; gap: 2px; text-align: left; }
.rastorg-image-limit-presets button:first-child svg { width: 16px; height: 16px; color: #99e9ad; }
.rastorg-image-limit-presets button:hover, .rastorg-image-limit-presets button.active { border-color: rgba(103,223,135,.35); color: #aef0bd; background: rgba(77,170,100,.12); }
.rastorg-image-limit-presets button:focus-visible { outline: 2px solid rgba(121,226,143,.72); outline-offset: 2px; }
.rastorg-image-limit-presets button:disabled { cursor: default; opacity: .55; }
.rastorg-image-limit-presets button b { font-size: 13px; }
.rastorg-image-limit-presets button small { color: #8d988e; font-size: 9px; }
.rastorg-image-limit-custom { display: grid; gap: 7px; padding: 11px; border: 1px solid rgba(255,255,255,.07); border-radius: 13px; background: rgba(255,255,255,.025); }
.rastorg-image-limit-custom > label { display: flex; align-items: center; justify-content: space-between; gap: 10px; color: #dce6dc; font-size: 11px; }
.rastorg-image-limit-custom > label small { color: #8d988e; font-size: 9px; }
.rastorg-image-limit-custom > div { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; }
.rastorg-image-limit-custom input { width: 100%; min-width: 0; min-height: 42px; box-sizing: border-box; padding: 0 11px; border: 1px solid rgba(126,218,147,.22); border-radius: 11px; color: #edf5ed; background: #090e0a; font: inherit; outline: none; appearance: textfield; }
.rastorg-image-limit-custom input:focus { border-color: #67df87; box-shadow: 0 0 0 3px rgba(103,223,135,.12); }
.rastorg-image-limit-custom input[aria-invalid="true"] { border-color: rgba(255,113,103,.48); }
.rastorg-image-limit-custom .button { min-height: 42px; }
.rastorg-image-limit-custom .button:disabled svg { animation: spin 1s linear infinite; }
.rastorg-image-limit-error { padding: 9px 10px; border: 1px solid rgba(255,113,103,.24); border-radius: 11px; color: #ffb0a9; background: rgba(141,44,37,.16); font-size: 11px; }
.rastorg-admin-empty { display: flex; min-height: 96px; align-items: center; justify-content: center; gap: 9px; color: var(--muted, #919b91); }
.rastorg-admin-empty svg { width: 20px; height: 20px; }
.rastorg-kb-file { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 11px; cursor: pointer; }
.rastorg-kb-file .button { min-height: 44px; pointer-events: none; }
.rastorg-kb-file small { min-width: 0; overflow: hidden; color: var(--muted, #919b91); font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.rastorg-kb-list { display: grid; gap: 7px; }
.rastorg-kb-list > article { display: grid; min-width: 0; grid-template-columns: 36px minmax(0, 1fr) 40px; align-items: center; gap: 10px; padding: 9px 10px; border: 1px solid rgba(255,255,255,.07); border-radius: 13px; background: rgba(255,255,255,.025); }
.rastorg-kb-list > article > i { display: grid; width: 36px; height: 36px; place-items: center; border-radius: 10px; color: #aeeabb; background: rgba(89,217,139,.085); font-style: normal; }
.rastorg-kb-list > article > i svg { width: 17px; height: 17px; }
.rastorg-kb-list span { display: grid; min-width: 0; gap: 2px; }
.rastorg-kb-list span :is(b, small) { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rastorg-kb-list span small { color: var(--muted, #919b91); font-size: 10px; }
.rastorg-kb-list span small em { color: #b3beb4; font-style: normal; font-weight: 750; }
.rastorg-kb-list span small em.status-ready { color: #80e39a; }
.rastorg-kb-list span small em.status-failed { color: #ff9f98; }
.rastorg-kb-list span small em:is(.status-uploading, .status-processing, .status-pending, .status-deleting) { color: #ebcc7a; }
.rastorg-kb-list > article:is([data-status="uploading"], [data-status="processing"], [data-status="deleting"]) > i svg { animation: spin 1s linear infinite; }
.rastorg-kb-list > article[data-status="failed"] > i { color: #ff9f96; background: rgba(150,48,40,.16); }
.rastorg-topic-kb-backdrop { position: fixed; z-index: 3085; inset: 0; display: grid; place-items: center; padding: max(18px, env(safe-area-inset-top)) 18px max(18px, env(safe-area-inset-bottom)); background: rgba(0,0,0,.58); backdrop-filter: blur(7px); }
.rastorg-topic-kb-dialog { display: grid; width: min(100%, 640px); max-height: min(760px, calc(100dvh - 36px)); grid-template-rows: auto minmax(0, 1fr); overflow: hidden; border: 1px solid rgba(112,222,139,.24); border-radius: 23px; color: #edf5ed; background: #101711; box-shadow: 0 30px 100px rgba(0,0,0,.58), inset 0 1px 0 rgba(255,255,255,.035); }
.rastorg-topic-kb-dialog > header { display: grid; min-width: 0; grid-template-columns: 44px minmax(0, 1fr) 44px; align-items: center; gap: 12px; padding: 15px 16px; border-bottom: 1px solid rgba(112,222,139,.12); background: linear-gradient(145deg, rgba(61,115,72,.15), rgba(13,20,14,.88)); }
.rastorg-topic-kb-dialog > header > i { display: grid; width: 44px; height: 44px; place-items: center; border: 1px solid rgba(103,223,135,.2); border-radius: 13px; color: #9ceab0; background: rgba(89,217,139,.09); font-style: normal; }
.rastorg-topic-kb-dialog > header > i svg { width: 21px; height: 21px; }
.rastorg-topic-kb-dialog > header > span { display: grid; min-width: 0; gap: 3px; }
.rastorg-topic-kb-dialog > header > span :is(b, small) { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rastorg-topic-kb-dialog > header > span b { font-size: 17px; }
.rastorg-topic-kb-dialog > header > span small { color: #94a095; font-size: 11px; }
.rastorg-topic-kb-dialog > header .button { width: 44px; min-width: 44px; height: 44px; min-height: 44px; }
.rastorg-topic-kb-body { display: grid; min-height: 0; align-content: start; gap: 13px; overflow: auto; padding: 15px 16px 18px; overscroll-behavior: contain; }
.rastorg-topic-kb-mode, .rastorg-topic-kb-upload, .rastorg-topic-kb-documents { display: grid; min-width: 0; gap: 11px; padding: 13px; border: 1px solid rgba(255,255,255,.075); border-radius: 16px; background: rgba(255,255,255,.028); }
.rastorg-topic-kb-mode > div:first-child { display: grid; gap: 3px; }
.rastorg-topic-kb-mode h3, .rastorg-topic-kb-documents h3 { margin: 0; font-size: 14px; }
.rastorg-topic-kb-mode p { margin: 0; color: #929e93; font-size: 11px; }
.rastorg-topic-kb-mode-options { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; }
.rastorg-topic-kb-mode-options > button { position: relative; display: grid; min-width: 0; min-height: 76px; grid-template-columns: 28px minmax(0, 1fr) 16px; align-items: start; gap: 7px; padding: 10px; border: 1px solid rgba(255,255,255,.075); border-radius: 12px; color: #e5eee5; text-align: left; background: rgba(0,0,0,.18); font: inherit; cursor: pointer; }
.rastorg-topic-kb-mode-options > button:hover, .rastorg-topic-kb-mode-options > button.active { border-color: rgba(103,223,135,.34); background: rgba(77,170,100,.12); }
.rastorg-topic-kb-mode-options > button:focus-visible { outline: 2px solid rgba(121,226,143,.75); outline-offset: 2px; }
.rastorg-topic-kb-mode-options > button:disabled { cursor: default; opacity: .55; }
.rastorg-topic-kb-mode-options > button > i { display: grid; width: 28px; height: 28px; place-items: center; border-radius: 9px; color: #9ceab0; background: rgba(89,217,139,.08); font-style: normal; }
.rastorg-topic-kb-mode-options > button > i svg { width: 15px; height: 15px; }
.rastorg-topic-kb-mode-options > button > span { display: grid; min-width: 0; gap: 3px; }
.rastorg-topic-kb-mode-options > button b { font-size: 12px; }
.rastorg-topic-kb-mode-options > button small { color: #8f9a90; font-size: 9px; line-height: 1.3; }
.rastorg-topic-kb-mode-options > button > svg { width: 15px; height: 15px; color: #80e39a; }
.rastorg-topic-kb-upload > label { display: grid; gap: 7px; color: #aab5aa; font-size: 11px; font-weight: 800; }
.rastorg-topic-kb-upload input[name="topicKbTitle"] { width: 100%; min-height: 44px; box-sizing: border-box; padding: 0 12px; border: 1px solid rgba(126,218,147,.22); border-radius: 12px; color: #edf5ed; background: #090e0a; font: inherit; outline: none; }
.rastorg-topic-kb-upload input[name="topicKbTitle"]:focus { border-color: #67df87; box-shadow: 0 0 0 3px rgba(103,223,135,.12); }
.rastorg-topic-kb-file-row { display: grid; min-width: 0; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 9px; }
.rastorg-topic-kb-file { cursor: pointer; }
.rastorg-topic-kb-file .button { min-height: 42px; pointer-events: none; }
.rastorg-topic-kb-file-row > small { min-width: 0; overflow: hidden; color: #909b91; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.rastorg-topic-kb-file-row > .button { width: 40px; min-width: 40px; height: 40px; min-height: 40px; }
.rastorg-topic-kb-upload-actions { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.rastorg-topic-kb-upload-actions > small { color: #8f9a90; font-size: 10px; line-height: 1.35; }
.rastorg-topic-kb-upload-actions > .button { min-height: 42px; white-space: nowrap; }
.rastorg-topic-kb-upload-actions > .button svg[data-lucide="loader-2"] { animation: spin 1s linear infinite; }
.rastorg-topic-kb-documents > header { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.rastorg-topic-kb-documents > header > div { display: flex; align-items: center; gap: 7px; }
.rastorg-topic-kb-documents > header > div > span { min-width: 22px; padding: 2px 6px; border-radius: 9px; color: #9ceab0; background: rgba(89,217,139,.09); font-size: 10px; text-align: center; }
.rastorg-topic-kb-documents > header .button { min-height: 36px; padding-inline: 10px; font-size: 11px; }
.rastorg-topic-kb-documents > header .button svg { width: 14px; height: 14px; }
.rastorg-topic-kb-documents > header .button:disabled svg, .rastorg-topic-kb-state.loading svg, .rastorg-topic-kb-document button:disabled svg[data-lucide="loader-2"] { animation: spin 1s linear infinite; }
.rastorg-topic-kb-list { display: grid; gap: 7px; }
.rastorg-topic-kb-list.refreshing { opacity: .58; transition: opacity .14s ease; }
.rastorg-topic-kb-document { display: grid; min-width: 0; grid-template-columns: 38px minmax(0, 1fr) 40px; align-items: center; gap: 10px; padding: 9px 10px; border: 1px solid rgba(255,255,255,.07); border-radius: 13px; background: rgba(0,0,0,.15); }
.rastorg-topic-kb-document > i { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 11px; color: #aeeabb; background: rgba(89,217,139,.085); font-style: normal; }
.rastorg-topic-kb-document > i svg { width: 17px; height: 17px; }
.rastorg-topic-kb-document > span { display: grid; min-width: 0; gap: 3px; }
.rastorg-topic-kb-document > span :is(b, small) { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rastorg-topic-kb-document > span b { font-size: 12px; }
.rastorg-topic-kb-document > span small { color: #8e998f; font-size: 10px; }
.rastorg-topic-kb-document em { color: #b3beb4; font-style: normal; }
.rastorg-topic-kb-document em.status-ready { color: #80e39a; }
.rastorg-topic-kb-document em.status-failed { color: #ff9f98; }
.rastorg-topic-kb-document em.status-processing, .rastorg-topic-kb-document em.status-uploading { color: #ebcc7a; }
.rastorg-topic-kb-document > .button { width: 40px; min-width: 40px; height: 40px; min-height: 40px; }
.rastorg-topic-kb-state { display: grid; min-height: 92px; place-content: center; justify-items: center; gap: 8px; color: #929e93; font-size: 12px; text-align: center; }
.rastorg-topic-kb-state svg { width: 22px; height: 22px; color: #8fe5a5; }
.rastorg-topic-kb-error { display: flex; min-height: 44px; align-items: center; justify-content: space-between; gap: 10px; padding: 9px 11px; border: 1px solid rgba(255,113,103,.24); border-radius: 12px; color: #ffb0a9; background: rgba(141,44,37,.16); font-size: 11px; }
.rastorg-topic-kb-error .button { min-height: 36px; }
.rastorg-dialog-backdrop { position: fixed; z-index: 3100; inset: 0; display: grid; place-items: center; padding: max(18px, env(safe-area-inset-top)) 18px max(18px, env(safe-area-inset-bottom)); background: rgba(0, 0, 0, .5); backdrop-filter: blur(5px); }
.rastorg-dialog { display: grid; width: min(100%, 460px); max-height: min(680px, calc(100dvh - 36px)); overflow: hidden; border: 1px solid rgba(112, 222, 139, .25); border-radius: 22px; background: #111a13; box-shadow: 0 28px 90px rgba(0, 0, 0, .52); }
.rastorg-dialog > header { display: flex; align-items: center; gap: 12px; padding: 16px 18px 10px; }
.rastorg-dialog h2 { min-width: 0; flex: 1; margin: 0; font-size: 19px; line-height: 1.3; }
.rastorg-dialog > header .button { width: 44px; min-width: 44px; height: 44px; }
.rastorg-dialog-body { display: grid; min-height: 0; gap: 14px; overflow: auto; padding: 4px 18px 18px; }
.rastorg-dialog-body p { margin: 0; color: var(--muted, #a9b3a9); line-height: 1.5; }
.rastorg-dialog-field { display: grid; gap: 7px; color: #dce6dc; font-size: 13px; }
.rastorg-dialog-field input, .rastorg-dialog-field textarea { width: 100%; min-height: 46px; box-sizing: border-box; padding: 11px 12px; border: 1px solid rgba(126, 218, 147, .26); border-radius: 13px; color: inherit; background: rgba(5, 10, 6, .72); font: inherit; outline: none; }
.rastorg-dialog-field textarea { min-height: 92px; resize: none; overflow-y: auto; }
.rastorg-dialog-field :is(input, textarea):focus { border-color: #67df87; box-shadow: 0 0 0 3px rgba(103, 223, 135, .13); }
.rastorg-dialog-field small { color: var(--muted, #9da89d); }
.rastorg-dialog-error { padding: 10px 12px; border: 1px solid rgba(255, 113, 103, .28); border-radius: 11px; color: #ffb0a9; background: rgba(141, 44, 37, .18); }
.rastorg-dialog > footer { display: flex; justify-content: flex-end; gap: 9px; padding: 12px 18px 18px; }
.rastorg-dialog > footer .button { min-height: 44px; }
.rastorg-dialog[aria-busy="true"] [data-rastorg-dialog-confirm] svg { animation: spin 1s linear infinite; }
.rastorg-topic-choice-dialog { width: min(100%, 520px); }
.rastorg-topic-choice-dialog > header > span { display: grid; min-width: 0; flex: 1; gap: 2px; }
.rastorg-topic-choice-dialog > header small { color: #75d990; font-size: 10px; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.rastorg-topic-choice-list { display: grid; gap: 9px; }
.rastorg-topic-choice-list > button { display: grid; min-width: 0; grid-template-columns: 46px minmax(0, 1fr) 20px; align-items: center; gap: 12px; min-height: 76px; padding: 12px 14px; border: 1px solid rgba(103,223,135,.17); border-radius: 16px; color: #e9f2e9; background: rgba(4,10,5,.4); font: inherit; text-align: left; cursor: pointer; transition: border-color .15s ease, background .15s ease, transform .15s ease; }
.rastorg-topic-choice-list > button:hover, .rastorg-topic-choice-list > button:focus-visible { border-color: rgba(103,223,135,.5); background: rgba(52,123,70,.2); outline: none; transform: translateY(-1px); }
.rastorg-topic-choice-list > button:disabled { cursor: wait; opacity: .62; transform: none; }
.rastorg-topic-choice-list > button > i { display: grid; width: 46px; height: 46px; place-items: center; border: 1px solid rgba(103,223,135,.23); border-radius: 13px; color: #9bebad; background: rgba(72,151,91,.14); }
.rastorg-topic-choice-list > button > i svg { width: 21px; height: 21px; }
.rastorg-topic-choice-list > button > span { display: grid; min-width: 0; gap: 4px; }
.rastorg-topic-choice-list > button b { font-size: 14px; }
.rastorg-topic-choice-list > button small { overflow: hidden; color: #99a69b; font-size: 11px; line-height: 1.35; text-overflow: ellipsis; }
.rastorg-topic-choice-list > button > svg { width: 18px; height: 18px; color: #819084; }
.home-rastorg-item .home-saved-icon { color: #7ce49a; background: rgba(73, 173, 100, .15); }

@media (min-width: 761px) and (max-width: 980px) {
  .rastorg-admin-user { grid-template-columns: 38px minmax(0, 1fr); align-items: start; }
  .rastorg-admin-user-controls { width: 100%; grid-column: 2 / -1; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rastorg-admin-user-controls > :last-child { grid-column: 1 / -1; }
  .rastorg-admin-user-toolbar { grid-template-columns: minmax(0, 1fr) auto; }
  .rastorg-admin-user-search { grid-column: 1 / -1; }
}

@media (hover: hover) and (pointer: fine) {
  [data-rastorg-root] [data-tooltip]:not(.rastorg-composer-expand) { position: relative; }
  [data-rastorg-root] [data-tooltip]::after { position: absolute; z-index: 3200; right: 50%; bottom: calc(100% + 9px); max-width: min(260px, calc(100vw - 28px)); padding: 7px 9px; border: 1px solid rgba(218,231,214,.14); border-radius: 9px; color: #eef5ed; background: #111713; box-shadow: 0 12px 34px rgba(0,0,0,.48); content: attr(data-tooltip); font-size: 11px; font-weight: 750; line-height: 1.25; opacity: 0; pointer-events: none; transform: translate(50%, 4px); transition: opacity .12s ease, transform .12s ease; white-space: nowrap; }
  [data-rastorg-root] [data-tooltip]:is(:hover, :focus-visible)::after { opacity: 1; transform: translate(50%, 0); }
  [data-rastorg-root] .rastorg-topic-kb-trigger[data-tooltip]::after { top: calc(100% + 8px); right: 0; bottom: auto; transform: translate(0, -4px); }
  [data-rastorg-root] .rastorg-topic-kb-trigger[data-tooltip]:is(:hover, :focus-visible)::after { transform: translate(0, 0); }
}

@media (max-width: 760px), (max-width: 960px) and (max-height: 520px) and (orientation: landscape) {
  .rastorg-root { height: 100%; min-height: 0; }
  .rastorg-root.mobile-topics { overflow-y: auto; overscroll-behavior-y: contain; }
  .rastorg-root.mobile-topics .rastorg-workspace { height: auto; min-height: 100%; overflow: visible; }
  .rastorg-root.mobile-topics .rastorg-topics { min-height: 100%; }
  .rastorg-root.mobile-chat { overflow: hidden; }
  .rastorg-workspace { height: 100%; min-height: 0; grid-template-columns: 1fr; border: 0; border-radius: 0; }
  .rastorg-topics { min-height: 0; border-right: 0; }
  .rastorg-root.mobile-topics .rastorg-chat, .rastorg-root.mobile-chat .rastorg-topics { display: none; }
  .rastorg-root.mobile-chat .rastorg-chat { display: flex; height: 100%; }
  .rastorg-mobile-back { display: inline-grid; }
  .rastorg-messages {
    padding: 16px max(12px, var(--app-safe-right, env(safe-area-inset-right))) 16px max(12px, var(--app-safe-left, env(safe-area-inset-left)));
  }
  .rastorg-messages-stage .rastorg-messages-jump { right: 14px; bottom: 12px; }
  .rastorg-message { max-width: 94%; }
  .rastorg-message.user { align-self: flex-end; grid-template-columns: minmax(0, 1fr) 34px; }
  .rastorg-message.user > :is(.avatar, .rastorg-message-avatar) { grid-column: 2; grid-row: 1; }
  .rastorg-message.user > div:last-child { grid-column: 1; grid-row: 1; border-radius: 17px 4px 17px 17px; }
  .rastorg-message-select-hit { -webkit-touch-callout: none; touch-action: manipulation; }
  .rastorg-selection-bar { margin: 7px 8px 0; padding: 6px 7px 6px 10px; }
  .rastorg-selection-bar > div { gap: 3px; }
  .rastorg-selection-bar .button { width: 40px; min-width: 40px; height: 40px; min-height: 40px; }
  .rastorg-selection-bar > span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .rastorg-composer {
    grid-template-columns: minmax(0, 1fr) 44px;
    column-gap: 4px;
    row-gap: 4px;
    padding: 9px max(10px, var(--app-safe-right, env(safe-area-inset-right))) calc(9px + env(safe-area-inset-bottom)) max(10px, var(--app-safe-left, env(safe-area-inset-left)));
  }
  .rastorg-composer-tools {
    grid-column: 1 / -1;
    max-height: 0;
    gap: 7px;
    overflow: hidden;
    opacity: 0;
    pointer-events: none;
    transform: translateY(7px);
    transition: max-height .18s ease, opacity .15s ease, transform .18s ease;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
  }
  .rastorg-composer.tools-expanded .rastorg-composer-tools {
    max-height: 44px;
    overflow-x: auto;
    overflow-y: hidden;
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
  }
  .rastorg-composer-tools::-webkit-scrollbar { display: none; }
  .rastorg-composer-input-wrap { grid-column: 1; }
  .rastorg-composer textarea { height: 44px; min-height: 44px; max-height: 112px; padding: 11px 80px 11px 12px; resize: none; }
  .rastorg-composer.expanded textarea { height: clamp(132px, 28dvh, 300px); max-height: 32dvh; }
  .rastorg-composer .button { width: 44px; min-width: 44px; height: 44px; min-height: 44px; padding: 0; }
  .rastorg-composer .rastorg-composer-tools-toggle,
  .rastorg-composer .rastorg-composer-expand { position: absolute; top: 8px; right: 8px; width: 28px; min-width: 28px; height: 28px; min-height: 28px; flex-basis: 28px; border-radius: 8px; }
  .rastorg-composer .rastorg-composer-tools-toggle {
    z-index: 2;
    right: 42px;
    display: grid;
    place-items: center;
    padding: 0;
    border-color: rgba(126,218,147,.14);
    color: #9faaa0;
    background: rgba(20,28,21,.9);
    box-shadow: 0 4px 14px rgba(0,0,0,.22);
  }
  .rastorg-composer .rastorg-composer-tools-toggle[aria-expanded="true"] {
    border-color: rgba(103,223,135,.34);
    color: #a9efba;
    background: #18251b;
  }
  .rastorg-composer-tools .button small { top: 2px; right: 1px; }
  .rastorg-composer .rastorg-composer-tools-toggle svg { width: 15px; height: 15px; }
  .rastorg-composer-submit { grid-column: 2; }
  .rastorg-topic-actions { opacity: 1; }
  .rastorg-topic-actions button { width: 44px; height: 44px; border-radius: 11px; }
  .rastorg-topic-actions svg { width: 17px; height: 17px; }
  .rastorg-chat-head {
    min-height: 62px;
    padding-right: max(10px, var(--app-safe-right, env(safe-area-inset-right)));
    padding-left: max(10px, var(--app-safe-left, env(safe-area-inset-left)));
  }
  .rastorg-chat-head .button { width: 44px; min-width: 44px; height: 44px; }
  .rastorg-chat-head-actions { gap: 3px; }
  .rastorg-pinned-summary { min-width: 40px !important; padding-inline: 8px; }
  .rastorg-pinned-panel { top: 58px; right: 8px; width: calc(100% - 16px); max-height: min(68dvh, calc(100% - 72px)); border-radius: 16px; }
  .rastorg-pinned-item { min-height: 52px; }
  .rastorg-admin-trigger { width: 44px; min-width: 44px; height: 44px; border-radius: 13px; }
  .workspace-settings-backdrop.rastorg-admin-backdrop {
    inset: 0;
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
  }
  .rastorg-admin-dialog { width: 100%; max-width: 100%; height: 100%; max-height: 100%; min-height: 0; border-radius: 18px; grid-template-rows: 74px minmax(0, 1fr); }
  .rastorg-admin-dialog :is(input:not([type="file"]), textarea),
  .rastorg-dialog-field :is(input, textarea) { font-size: 16px; }
  .rastorg-admin-dialog > .rastorg-admin-close { top: 15px; right: 12px; bottom: auto; left: auto; width: 44px; min-width: 44px; height: 44px; min-height: 44px; }
  .rastorg-admin-header { min-height: 0; height: 74px; max-height: 74px; padding: 10px 62px 10px 12px; }
  .rastorg-admin-mark { width: 46px; height: 46px; flex-basis: 46px; border-radius: 14px; font-size: 18px; }
  .rastorg-admin-overview-grid { grid-template-columns: minmax(0, 1fr); }
  .rastorg-agent-settings { grid-template-columns: minmax(0, 1fr); padding: 12px; }
  .rastorg-agent-settings > .rastorg-admin-form-actions { grid-column: auto; }
  .rastorg-agent-settings-card { padding: 13px; }
  .rastorg-agent-settings-card > header { grid-template-columns: auto minmax(0, 1fr); }
  .rastorg-agent-settings-card > header em { grid-column: 2; justify-self: start; }
  .rastorg-admin-metric-group:first-child { grid-column: auto; }
  .rastorg-admin-metric-group > div { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .rastorg-admin-user { grid-template-columns: 38px minmax(0, 1fr); }
  .rastorg-admin-user-controls { width: 100%; grid-column: 1 / -1; grid-template-columns: minmax(0, 1fr); }
  .rastorg-admin-user .rastorg-admin-picker { width: 100%; }
  .rastorg-admin-user-toolbar { grid-template-columns: minmax(0, 1fr) auto; gap: 9px; padding: 11px; }
  .rastorg-admin-user-search { grid-column: 1 / -1; }
  .rastorg-admin-user-period { min-width: 0; }
  .rastorg-admin-dialog .rastorg-admin-picker { width: 100%; min-width: 0; }
  .rastorg-admin-dialog .rastorg-admin-picker .workspace-picker-panel { width: 100%; max-width: 100%; box-sizing: border-box; }
  .rastorg-admin-user-search-submit { min-width: 92px; }
  .rastorg-admin-user-error { align-items: stretch; flex-direction: column; }
  .rastorg-admin-user-error .button { width: 100%; min-height: 44px; }
  .rastorg-admin-user-pagination .rastorg-load-more { min-height: 44px; }
  .rastorg-image-limit-layer { align-items: end; justify-items: stretch; padding: max(12px, env(safe-area-inset-top)) 0 0; }
  .rastorg-image-limit-dialog { width: 100%; max-height: min(78dvh, 620px); border-right: 0; border-bottom: 0; border-left: 0; border-radius: 20px 20px 0 0; padding-bottom: env(safe-area-inset-bottom); }
  .rastorg-image-limit-body { padding: 12px; }
  .rastorg-image-limit-presets button { min-height: 44px; }
  .rastorg-image-limit-custom > div { grid-template-columns: minmax(0, 1fr); }
  .rastorg-image-limit-custom .button { width: 100%; min-height: 44px; }
  .rastorg-admin-form-actions { align-items: stretch; flex-direction: column; }
  .rastorg-admin-form-actions .button { width: 100%; }
  .rastorg-kb-file { grid-template-columns: minmax(0, 1fr); }
  .rastorg-kb-file .button { width: 100%; }
  .rastorg-topic-kb-backdrop { inset: var(--mobile-visual-offset-top, 0px) 0 auto; width: var(--app-width, 100vw); max-width: var(--app-width, 100vw); height: var(--mobile-viewport-height, var(--app-height, 100dvh)); max-height: var(--mobile-viewport-height, var(--app-height, 100dvh)); align-items: end; padding: max(12px, var(--app-safe-top, env(safe-area-inset-top))) 0 0; backdrop-filter: none; -webkit-backdrop-filter: none; }
  .rastorg-topic-kb-dialog { width: 100%; max-height: min(88dvh, 760px, calc(var(--mobile-viewport-height, var(--app-height, 100dvh)) - max(12px, var(--app-safe-top, env(safe-area-inset-top))))); border-right: 0; border-bottom: 0; border-left: 0; border-radius: 23px 23px 0 0; padding-bottom: var(--app-safe-bottom, env(safe-area-inset-bottom)); }
  .rastorg-topic-kb-dialog > header { padding: 12px; }
  .rastorg-topic-kb-body { padding: 12px; }
  .rastorg-topic-kb-mode-options { grid-template-columns: minmax(0, 1fr); }
  .rastorg-topic-kb-mode-options > button { min-height: 62px; }
  .rastorg-topic-kb-file-row { grid-template-columns: minmax(0, 1fr) 44px; }
  .rastorg-topic-kb-file { grid-column: 1 / -1; }
  .rastorg-topic-kb-file .button { width: 100%; min-height: 44px; }
  .rastorg-topic-kb-file-row > .button { width: 44px; min-width: 44px; height: 44px; min-height: 44px; }
  .rastorg-topic-kb-upload-actions, .rastorg-topic-kb-error { align-items: stretch; flex-direction: column; }
  .rastorg-topic-kb-upload-actions > .button, .rastorg-topic-kb-error .button { width: 100%; min-height: 44px; }
  .rastorg-topic-kb-documents > header .button { min-height: 44px; }
  .rastorg-topic-kb-document > .button { width: 44px; min-width: 44px; height: 44px; min-height: 44px; }
  .rastorg-dialog-backdrop { inset: var(--mobile-visual-offset-top, 0px) 0 auto; width: var(--app-width, 100vw); max-width: var(--app-width, 100vw); height: var(--mobile-viewport-height, var(--app-height, 100dvh)); max-height: var(--mobile-viewport-height, var(--app-height, 100dvh)); align-items: end; padding: max(12px, var(--app-safe-top, env(safe-area-inset-top))) 0 0; backdrop-filter: none; -webkit-backdrop-filter: none; }
  .rastorg-dialog { width: 100%; max-height: min(82dvh, 680px, calc(var(--mobile-viewport-height, var(--app-height, 100dvh)) - max(12px, var(--app-safe-top, env(safe-area-inset-top))))); border-right: 0; border-bottom: 0; border-left: 0; border-radius: 22px 22px 0 0; padding-bottom: var(--app-safe-bottom, env(safe-area-inset-bottom)); }
  .rastorg-dialog > footer { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); }
  .rastorg-dialog > footer .button { width: 100%; white-space: normal; }
}

@media (prefers-reduced-motion: reduce) {
  .rastorg-composer-tools { transition: none; }
}
