.admin-body { min-height:100vh; }.admin-shell { min-height:100vh; display:grid; grid-template-columns:245px 1fr; }.dashboard { min-width:0; }.sidebar { background:var(--ink); color:#b9c8bf; padding:32px 25px; display:flex; flex-direction:column; }.sidebar .wordmark { color:white; }.sidebar nav { display:grid; gap:8px; margin-top:80px; }.sidebar nav a { color:#b9c8bf; text-decoration:none; border-radius:7px; padding:12px; font-size:.84rem; display:flex; justify-content:space-between; }.sidebar nav a.active { color:var(--ink); background:var(--lime); font-weight:800; }.sidebar p { margin-top:auto; font: .65rem/1.7 "DM Mono",monospace; }.dashboard { padding:clamp(28px,5vw,75px); }.dashboard-header { display:flex; align-items:flex-end; justify-content:space-between; gap:30px; }.dashboard h1 { font-size:clamp(2.4rem,4vw,4.5rem); line-height:.95; }.outline-button { color:var(--ink); background:transparent; border:1px solid #b9b8b0; border-radius:99px; padding:10px 15px; font-size:.75rem; font-weight:700; }.metric-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:15px; margin:60px 0; }.metric-grid article { background:#e6dfcf; padding:23px; min-height:150px; }.metric-grid span,.metric-grid small { display:block; font: .65rem "DM Mono",monospace; color:#607068; }.metric-grid strong { display:block; font-size:2.5rem; letter-spacing:-.08em; margin:22px 0; }.metric-grid small { font-family:Manrope,sans-serif; font-size:.7rem; }.lead-table-section { background:#fffdfa; padding:28px; }.table-heading { display:flex; justify-content:space-between; align-items:end; gap:20px; margin-bottom:27px; }.table-heading .eyebrow { margin-bottom:12px; }.table-heading h2 { margin:0; font-size:1.75rem; letter-spacing:-.06em; }.table-heading>span { color:var(--muted); font-size:.72rem; }.table-wrap { overflow-x:auto; } table { border-collapse:collapse; width:100%; min-width:650px; } th { text-align:left; color:var(--muted); font: .64rem "DM Mono",monospace; text-transform:uppercase; padding:13px 10px; border-bottom:1px solid #dddcd5; } td { padding:16px 10px; font-size:.8rem; border-bottom:1px solid #e9e8e2; vertical-align:top; } td strong,td small { display:block; }.request-cell { max-width:300px; color:#526058; }.pill { color:#305044; background:#dcebc1; border-radius:99px; padding:5px 9px; font-size:.65rem; font-weight:800; white-space:nowrap; }
@media (max-width:700px) { .admin-shell { grid-template-columns:1fr; }.sidebar { min-height:90px; padding:20px; }.sidebar nav { display:flex; margin:20px 0 0; }.sidebar p { display:none; }.dashboard-header { align-items:start; flex-direction:column; }.metric-grid { grid-template-columns:1fr; margin:35px 0; } }

.hidden{ display:none !important; }
.login-screen{ min-height:100vh; display:flex; align-items:center; justify-content:center; background:var(--ink); padding:20px; }
.login-card{ background:#fffdfa; padding:36px 32px; border-radius:14px; width:100%; max-width:340px; display:flex; flex-direction:column; gap:14px; }
.login-card h2{ font-size:1.8rem; letter-spacing:-0.04em; margin:0 0 6px; }
.login-card label{ font: 0.7rem "DM Mono", monospace; color:var(--muted); display:flex; flex-direction:column; gap:6px; }
.login-card input{ font-family:Manrope, sans-serif; font-size:0.95rem; padding:10px 12px; border:1px solid #ddd; border-radius:8px; }
.login-error{ color:#b3261e; font-size:0.78rem; min-height:1em; }

.sidebar{ position:relative; }
.sidebar #logoutBtn{ margin-top:auto; color:#b9c8bf; border-color:#3a4a41; }
.sidebar nav a{ cursor:pointer; }

.tab-panel + .tab-panel{ margin-top:0; }

.stack-form{ background:#fffdfa; padding:26px; display:flex; flex-direction:column; gap:14px; max-width:560px; margin-bottom:22px; }
.stack-form label{ font: 0.68rem "DM Mono", monospace; text-transform:uppercase; letter-spacing:0.04em; color:var(--muted); display:flex; flex-direction:column; gap:6px; }
.stack-form input, .stack-form textarea{ font-family:Manrope, sans-serif; font-size:0.9rem; padding:10px 12px; border:1px solid #ddd; border-radius:8px; resize:vertical; }
.stack-form input[type="color"]{ padding:4px; height:42px; width:80px; }
.stack-form button{ align-self:flex-start; }
.hint{ font-size:0.78rem; color:var(--muted); min-height:1em; }

.document-list{ display:flex; flex-direction:column; gap:10px; max-width:560px; }
.document-item{ display:flex; align-items:center; justify-content:space-between; background:#fffdfa; padding:14px 18px; border-radius:10px; }
.document-item strong{ display:block; font-size:0.9rem; }
.document-item small{ color:var(--muted); font: 0.68rem "DM Mono", monospace; }
.document-item .icon-button{ background:transparent; border:none; font-size:20px; color:var(--muted); cursor:pointer; line-height:1; padding:4px 8px; }
.document-item .icon-button:hover{ color:#b3261e; }

.conversations-layout{ display:grid; grid-template-columns: 280px 1fr; gap:18px; background:#fffdfa; padding:20px; border-radius:10px; min-height:420px; }
@media (max-width:800px){ .conversations-layout{ grid-template-columns:1fr; } }
.conversation-list{ display:flex; flex-direction:column; gap:8px; overflow-y:auto; max-height:520px; }
.conversation-item{ text-align:left; background:#f4f2ea; border:1px solid transparent; border-radius:8px; padding:10px 12px; cursor:pointer; display:flex; flex-direction:column; gap:4px; font-family:Manrope, sans-serif; }
.conversation-item:hover{ border-color:#ddd; }
.conversation-item.active{ background:var(--lime); }
.conversation-item-top{ display:flex; align-items:center; justify-content:space-between; gap:8px; font-size:0.78rem; }
.conversation-item small{ font: 0.68rem "DM Mono", monospace; color:var(--muted); }
.pill-warn{ background:#fde3cf; color:#7a3b13; }
.conversation-detail{ overflow-y:auto; max-height:520px; display:flex; flex-direction:column; gap:10px; padding-left:8px; }
.empty-hint{ color:var(--muted); font-size:0.85rem; }
.admin-message{ max-width:80%; padding:10px 14px; border-radius:12px; font-size:0.85rem; line-height:1.4; }
.admin-message.user{ align-self:flex-end; background:var(--ink); color:#fff; border-bottom-right-radius:4px; }
.admin-message.assistant{ align-self:flex-start; background:#eeece3; border-bottom-left-radius:4px; }

.business-switcher{ display:flex; flex-direction:column; gap:6px; margin-top:28px; font: 0.62rem "DM Mono", monospace; text-transform:uppercase; letter-spacing:0.04em; color:#b9c8bf; }
.business-switcher select{ font-family:Manrope, sans-serif; font-size:0.85rem; padding:8px 10px; border-radius:7px; border:1px solid #3a4a41; background:#1f2b25; color:white; }
.sidebar .signed-in-as{ margin-top:auto; margin-bottom:10px; font: 0.65rem/1.5 "DM Mono", monospace; color:#b9c8bf; word-break:break-all; }
.sidebar .signed-in-as + #logoutBtn{ margin-top:0; }
@media (max-width:700px) { .business-switcher{ margin-top:14px; } .sidebar .signed-in-as{ display:none; } }
.pill-row{ display:flex; gap:4px; flex-wrap:wrap; justify-content:flex-end; }
.conversation-summary{ font-size:0.78rem; line-height:1.35; color:var(--ink); }
.details-cell small{ display:block; color:var(--muted); margin-bottom:3px; }
.details-cell small strong{ display:inline; color:var(--ink); font-weight:600; }
.editing-business{ margin:-14px 0 18px; font-size:.9rem; color:var(--muted); }
.editing-business strong{ color:var(--ink); background:var(--lime); padding:3px 10px; border-radius:99px; font-weight:800; }
