/* Task-oriented layouts for administration, account, data, and assistant pages. */
.workspace-sections { display: flex; flex-wrap: wrap; gap: .5rem; padding: .8rem; border: 1px solid var(--border-color); border-radius: .75rem; background: var(--surface-primary); }
.workspace-sections a { color: var(--text-main); text-decoration: none; padding: .6rem .8rem; border-radius: .4rem; font-weight: 600; }
.workspace-sections a:hover, .workspace-sections a[aria-current] { background: var(--surface-accent); color: var(--text-strong); }
.workspace-sections .badge { color: inherit; margin-left: .4rem; }
.app-main .admin-index-layout { grid-template-columns: minmax(0, 1fr); gap: 1rem; }
.app-main .admin-index-sidebar { position: static; width: auto; max-height: none; }
.app-main .admin-index-main { min-width: 0; }
.admin-page-shell [id], .admin-page [id] { scroll-margin-top: 6rem; }
.app-main .admin-summary-strip { grid-template-columns: repeat(auto-fit,minmax(min(100%,170px),1fr)); gap: .8rem; }
.app-main .admin-summary-tile { padding: 1rem; min-height: 0; }
.app-main .admin-summary-tile strong { font-size: 1.5rem; overflow-wrap: anywhere; }
.app-main .admin-section__title { font-size: 1.15rem; }
.app-main .admin-section .card-header { padding: 1rem 1.2rem; }
.app-main .admin-section .card-body { padding: 1.2rem; }
.app-main .admin-submit-panel { position: sticky; bottom: .6rem; z-index: 20; border-color: var(--brand-accent); box-shadow: var(--shadow-soft); }
[data-save-status]:not(:empty) { display: block; color: var(--text-strong); font-weight: 700; margin-bottom: .25rem; }
.workspace-disclosure { padding: 1rem 1.2rem; cursor: pointer; font-weight: 700; }
.app-main .notifications-grid { grid-template-columns: minmax(0,1fr) minmax(320px, .9fr); align-items: start; }
.app-main .attack-create-disclosure__summary { padding: 1rem; }
.app-main .attack-health__grid { grid-template-columns: repeat(auto-fit,minmax(min(100%,160px),1fr)); }
.app-main .ai-ops-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
.account-workspace { max-width: 520px; margin: 2rem auto; width: 100%; }
.account-card { padding: 1.6rem; }
.account-card h2 { font-size: 1.4rem; }
.password-field { position: relative; display: flex; gap: .5rem; align-items: center; }
.password-field input { min-width: 0; }
.password-field button { flex-shrink: 0; }
.workspace-start { display:flex; justify-content: space-between; align-items:center; gap:1.5rem; padding:1.5rem; }
.workspace-start h2 { font-size:1.4rem; }
.workspace-start p { color:var(--text-muted); margin-bottom:0; max-width:65ch; }
.workspace-start .btn { flex-shrink:0; }
.workspace-launch-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.workspace-launch { display:flex; flex-direction:column; gap:.8rem; padding:1.4rem; color:var(--text-main); text-decoration:none; min-width:0; }
.workspace-launch:hover { border-color:var(--brand-accent); color:var(--text-strong); }
.workspace-launch > i { font-size:1.35rem; color:var(--brand-accent); }
.workspace-launch h2 { font-size:1.1rem; margin:0; overflow-wrap:anywhere; }
.workspace-launch p { color:var(--text-muted); margin:0; }
.workspace-launch > span { margin-top:auto; font-weight:600; }
.workspace-inline-form { display:flex; gap:.7rem; align-items:center; flex-wrap:wrap; }
.workspace-inline-form select { width:auto; }
[data-table-search] { flex:1; max-width:400px; }
.data-workspace td { max-width:36rem; overflow-wrap:anywhere; }
.data-full-value { white-space:pre-wrap; margin-top:.75rem; max-height:20rem; overflow:auto; }
.app-main .investigation-hero { padding:1.2rem; min-height:0; }
.app-main .investigation-hero .cs-entity-value { overflow-wrap:anywhere; font-size:1.6rem; }
.assistant-layout { max-width:1100px; margin:auto; }
.app-main .ai-chat-shell__body { height:auto; min-height:240px; max-height:55dvh; overflow:auto; padding:1.2rem; }
.assistant-suggestions { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.75rem; }
.assistant-suggestions button { text-align:left; justify-content:flex-start !important; }
.assistant-message { margin:1rem 0; padding:1rem; border:1px solid var(--border-color); border-radius:.75rem; background:var(--surface-secondary); overflow-wrap:anywhere; }
.assistant-message--user { margin-left:10%; background:var(--surface-accent); }
.assistant-message > strong { display:block; font-size:.8rem; margin-bottom:.5rem; color:var(--text-muted); }
.assistant-message pre { white-space:pre-wrap; }
.assistant-message table { display:block; overflow:auto; max-width:100%; }
.assistant-message--error { border-color:var(--danger); }
.assistant-composer { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:.75rem; align-items:end; }
.assistant-composer textarea { resize:vertical; min-height:80px; max-height:240px; }
.assistant-status { color:var(--text-muted); font-size:.85rem; min-height:1.4em; }
@media (max-width:1100px) { .workspace-launch-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .app-main .notifications-grid, .app-main .ai-ops-grid { grid-template-columns:minmax(0,1fr); } }
@media (max-width:575px) { .workspace-launch-grid, .assistant-suggestions { grid-template-columns:minmax(0,1fr); } .workspace-start { align-items:stretch; flex-direction:column; padding:1rem; } .account-workspace { margin:0 auto; } .account-card { padding:1.1rem; } .workspace-sections { flex-wrap:nowrap; overflow:auto; } .workspace-sections a { white-space:nowrap; } .assistant-composer { grid-template-columns:minmax(0,1fr); } .app-main .admin-submit-panel { position:static; } }
.workspace-launch[hidden], .workspace-sections[hidden] { display: none !important; }
.route-admin-users table { min-width: 850px; }
.route-admin-activity table, .route-admin-ai-operations table { min-width: 760px; }
.route-admin-users .table-responsive, .route-admin-activity .table-responsive, .route-admin-ai-operations .table-responsive { border:1px solid var(--border-color); border-radius:.6rem; }
.route-admin-users td, .route-admin-activity td, .route-admin-ai-operations td { padding:.85rem; }
.route-admin-users .admin-index-main, .route-admin-activity .admin-index-main { display:grid; gap:1rem; }
.app-main :is(.notifications-webhook-card, .notifications-toggle, .notifications-preview, .notifications-empty-state) { background: var(--surface-secondary); border-color: var(--border-color); color: var(--text-main); }
.app-main :is(.notifications-webhook-card__meta, .notifications-form-group__header p, .notifications-toggle small, .notifications-empty-state p) { color: var(--text-muted); }
.app-main .notifications-webhook-card__head { flex-wrap: wrap; }
.app-main .notifications-webhook-card__meta { overflow-wrap: anywhere; }
html[data-theme="dark"] .app-main :is(.status-enabled, .status-immediate, .status-success) { color: #79dac0; }
.attack-scenario-row[hidden] { display:none !important; }
