:root { --bg:#07131f; --panel:#0d2333; --panel-2:#102d41; --border:rgba(143,183,211,.18); --text:#ecf6fc; --muted:#97b3c5; --gold:#f2c45f; --blue:#52b8ec; --green:#4ec778; --red:#f17f7f; --shadow:0 20px 55px rgba(0,0,0,.26); }
* { box-sizing:border-box; }
body { margin:0; font-family:"Plus Jakarta Sans",system-ui,sans-serif; background:radial-gradient(circle at 8% 0,rgba(39,113,157,.37),transparent 29%),radial-gradient(circle at 100% 100%,rgba(23,104,92,.18),transparent 27%),var(--bg); color:var(--text); }
a { color:inherit; }
.console-body { min-height:100vh; }
.console-shell { min-height:100vh; display:grid; grid-template-columns:256px minmax(0,1fr); }
.console-sidebar { position:sticky; top:0; height:100vh; display:flex; flex-direction:column; padding:1.5rem 1rem; border-right:1px solid var(--border); background:rgba(5,17,27,.78); backdrop-filter:blur(18px); }
.console-brand { display:flex; align-items:center; gap:.65rem; font-size:1.2rem; font-weight:800; text-decoration:none; letter-spacing:.04em; padding:.35rem .55rem 2.1rem; }
.console-brand__mark { width:2rem; height:2rem; display:grid; place-items:center; color:#182632; background:linear-gradient(145deg,#ffe193,#c89628); border-radius:.65rem; font-size:.85rem; }
.console-sidebar__label,.console-eyebrow { margin:0; font-size:.68rem; letter-spacing:.12em; font-weight:800; color:var(--gold); }
.console-sidebar__label { padding:.1rem .7rem .6rem; color:var(--muted); }
.console-nav { display:grid; gap:.3rem; }
.console-nav a { padding:.7rem .75rem; border-radius:.7rem; text-decoration:none; color:#b5cad8; font-size:.88rem; font-weight:600; }
.console-nav a:hover,.console-nav a.is-active { color:var(--text); background:linear-gradient(90deg,rgba(82,184,236,.18),rgba(82,184,236,.04)); }
.console-nav a.is-active { box-shadow:inset 3px 0 var(--gold); }
.console-user { margin-top:auto; display:grid; gap:.28rem; padding:1rem .7rem .2rem; border-top:1px solid var(--border); font-size:.77rem; }
.console-user strong { font-size:.87rem; }.console-user span { color:var(--muted); }.console-user a { margin-top:.35rem; color:var(--gold); }
.console-main { width:min(100%,1540px); padding:2rem clamp(1.1rem,3vw,3.2rem) 3.5rem; margin:0 auto; }
.console-topbar { display:flex; justify-content:space-between; align-items:flex-start; gap:1rem; margin:0 0 2rem; }.console-topbar h1 { margin:.4rem 0 0; font-size:clamp(1.45rem,2.3vw,2rem); letter-spacing:-.045em; }.console-topbar__public { color:var(--gold); font-size:.82rem; text-decoration:none; font-weight:700; padding:.7rem 0; }
.metric-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; margin-bottom:1.2rem; }.metric-card,.content-card { border:1px solid var(--border); background:linear-gradient(145deg,rgba(24,57,77,.92),rgba(8,28,42,.9)); box-shadow:var(--shadow); border-radius:1rem; }.metric-card { padding:1.2rem; display:grid; gap:.35rem; }.metric-card span,.metric-card small { color:var(--muted); font-size:.76rem; }.metric-card strong { font-size:2rem; line-height:1.1; letter-spacing:-.06em; color:var(--gold); }.metric-card small { min-height:1.8rem; }
.content-card { padding:clamp(1rem,2vw,1.45rem); }.section-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:1rem; margin-bottom:1rem; }.section-heading h2 { margin:.4rem 0 0; font-size:1.15rem; letter-spacing:-.035em; }.section-copy { color:var(--muted); font-size:.84rem; line-height:1.65; margin:0 0 1.2rem; }
.button { appearance:none; display:inline-flex; align-items:center; justify-content:center; border:1px solid transparent; border-radius:.65rem; padding:.68rem .9rem; font:700 .76rem inherit; cursor:pointer; text-decoration:none; }.button--primary { color:#12212b; background:linear-gradient(145deg,#f9d77d,#d9a835); }.button--secondary { color:var(--text); background:rgba(82,184,236,.09); border-color:rgba(82,184,236,.22); }.button:hover { filter:brightness(1.08); }
.table-wrap { overflow:auto; } table { width:100%; border-collapse:collapse; min-width:650px; } th,td { padding:.85rem .55rem; border-bottom:1px solid var(--border); text-align:left; font-size:.78rem; vertical-align:top; } th { color:var(--muted); font-size:.68rem; letter-spacing:.07em; text-transform:uppercase; } td strong,td small { display:block; } td small { margin-top:.18rem; color:var(--muted); font-size:.68rem; }.inline-link { border:0; padding:0; background:none; color:var(--gold); font:700 .75rem inherit; cursor:pointer; text-decoration:none; }
.status,.pill { display:inline-flex; align-items:center; width:max-content; border-radius:99px; padding:.25rem .47rem; background:rgba(151,179,197,.12); color:#c6dce8; font-size:.64rem; font-weight:700; text-transform:capitalize; }.status--new,.status--open,.status--bot { background:rgba(82,184,236,.15); color:#91d7fa; }.status--assigned { background:rgba(242,196,95,.15); color:#ffe09c; }.status--waiting { background:rgba(165,137,236,.16); color:#cdbcff; }.status--resolved,.status--closed,.pill--success { background:rgba(78,199,120,.16); color:#9eecba; }.pill--muted { background:rgba(151,179,197,.1); color:var(--muted); }
.empty-state { display:grid; gap:.35rem; padding:1.4rem .2rem; color:var(--muted); font-size:.8rem; }.empty-state strong { color:var(--text); }.empty-state--large { height:100%; place-content:center; text-align:center; }
.split-grid { display:grid; grid-template-columns:minmax(290px,.9fr) minmax(360px,1.1fr); gap:1.2rem; align-items:start; }.form-stack { display:grid; gap:.85rem; }.form-stack label { display:grid; gap:.4rem; color:#cde0ea; font-size:.76rem; font-weight:700; }.form-stack input,.form-stack select,.form-stack textarea,.compact-form select { width:100%; border:1px solid rgba(151,179,197,.22); border-radius:.6rem; background:rgba(4,16,25,.58); color:var(--text); padding:.68rem .75rem; font:400 .84rem inherit; outline:none; }.form-stack textarea { min-height:5.7rem; resize:vertical; line-height:1.5; }.form-stack input:focus,.form-stack select:focus,.form-stack textarea:focus { border-color:var(--blue); box-shadow:0 0 0 3px rgba(82,184,236,.12); }.alert { margin:0 0 1rem; padding:.75rem .85rem; border-radius:.65rem; font-size:.78rem; line-height:1.45; }.alert--success { background:rgba(78,199,120,.13); color:#b7f4cc; border:1px solid rgba(78,199,120,.25); }.alert--error { background:rgba(241,127,127,.13); color:#ffc0c0; border:1px solid rgba(241,127,127,.25); }
.stack-list { display:grid; gap:.75rem; }.list-card { padding:.9rem; border:1px solid var(--border); border-radius:.8rem; background:rgba(4,18,28,.33); }.list-card header { display:flex; gap:.4rem; }.list-card h3 { margin:.7rem 0 .3rem; font-size:.9rem; }.list-card p,.list-card small { color:var(--muted); font-size:.75rem; line-height:1.55; }.list-card p { margin:.25rem 0 .5rem; }.list-card form { margin-top:.65rem; }
.inbox-grid { position:relative; display:grid; grid-template-columns:minmax(250px,340px) minmax(0,1fr); height:calc(100vh - 10rem); min-height:540px; overflow:hidden; border:1px solid var(--border); border-radius:1rem; background:rgba(8,27,40,.85); box-shadow:var(--shadow); }.inbox-alert { position:absolute; top:1rem; left:50%; transform:translateX(-50%); z-index:3; max-width:80%; }.inbox-list { min-height:0; overflow:auto; border-right:1px solid var(--border); background:rgba(5,18,28,.45); }.inbox-list__head { display:flex; justify-content:space-between; padding:1rem; border-bottom:1px solid var(--border); font-size:.8rem; }.inbox-list__head span { color:var(--gold); }.conversation-row { display:grid; gap:.45rem; padding:.85rem 1rem; border-bottom:1px solid rgba(151,179,197,.1); text-decoration:none; }.conversation-row:hover,.conversation-row.is-selected { background:rgba(82,184,236,.1); }.conversation-row > div { display:flex; justify-content:space-between; gap:.5rem; }.conversation-row strong { font-size:.77rem; }.conversation-row span,.conversation-row small { color:var(--muted); font-size:.65rem; }.conversation-row small { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }.conversation-row footer { display:flex; justify-content:space-between; align-items:center; }.chat-panel { min-width:0; min-height:0; overflow:hidden; display:grid; grid-template-rows:auto minmax(0,1fr) auto; }.chat-head { display:flex; justify-content:space-between; gap:1rem; align-items:center; padding:1rem 1.2rem; border-bottom:1px solid var(--border); }.chat-head h2 { margin:0; font-size:1rem; }.chat-head p { margin:.25rem 0 0; color:var(--muted); font-size:.68rem; }.chat-head__actions { display:flex; gap:.45rem; align-items:center; }.compact-form { display:flex; gap:.4rem; }.compact-form select { width:auto; padding:.53rem; font-size:.7rem; }.message-list { min-height:0; overflow:auto; padding:1.25rem; display:flex; flex-direction:column; gap:.75rem; background:radial-gradient(circle at 50% 0,rgba(82,184,236,.06),transparent 40%); }.message { max-width:min(76%,560px); padding:.7rem .8rem; border-radius:.75rem; font-size:.79rem; line-height:1.55; }.message p { margin:0; }.message small { display:block; margin-top:.38rem; font-size:.62rem; opacity:.74; }.message--inbound { align-self:flex-start; background:#19384c; border-bottom-left-radius:.12rem; }.message--outbound { align-self:flex-end; background:#285d4c; border-bottom-right-radius:.12rem; }.reply-box { display:grid; grid-template-columns:1fr auto; gap:.7rem; padding:1rem; border-top:1px solid var(--border); }.reply-box textarea { min-height:2.8rem; max-height:8rem; resize:vertical; border:1px solid rgba(151,179,197,.22); border-radius:.65rem; padding:.65rem .75rem; color:var(--text); background:rgba(4,16,25,.58); font:400 .8rem inherit; }.reply-box .button { align-self:end; }
.integration-state { display:grid; gap:.38rem; padding:.9rem; border-radius:.75rem; font-size:.8rem; line-height:1.45; margin-bottom:1rem; }.integration-state--ok { background:rgba(78,199,120,.14); color:#b7f4cc; }.integration-state--warn { background:rgba(242,196,95,.13); color:#ffe6a5; }.info-list { display:grid; gap:.8rem; margin:0; }.info-list div { display:grid; gap:.28rem; padding-bottom:.8rem; border-bottom:1px solid var(--border); }.info-list dt { color:var(--muted); font-size:.7rem; }.info-list dd { margin:0; font-size:.77rem; }.info-list code { display:block; overflow:auto; color:#aee2ff; white-space:nowrap; }
.auth-shell { width:min(100% - 2rem,520px); min-height:100vh; display:grid; place-items:center; margin:auto; }.auth-card { width:100%; padding:clamp(1.3rem,5vw,2.3rem); border:1px solid var(--border); border-radius:1.2rem; background:linear-gradient(145deg,rgba(23,57,78,.94),rgba(8,27,41,.94)); box-shadow:var(--shadow); }.auth-card h1 { margin:.55rem 0 .55rem; font-size:1.65rem; letter-spacing:-.05em; }.auth-card > p:not(.console-eyebrow) { margin:0 0 1.4rem; color:var(--muted); font-size:.83rem; line-height:1.65; }
@media (max-width: 980px) { .console-shell { grid-template-columns:1fr; }.console-sidebar { position:static; height:auto; padding:.8rem 1rem; border-right:0; border-bottom:1px solid var(--border); }.console-brand { padding:.2rem .3rem .8rem; }.console-sidebar__label,.console-user { display:none; }.console-nav { grid-template-columns:repeat(auto-fit,minmax(108px,1fr)); }.console-nav a { text-align:center; padding:.5rem .35rem; font-size:.7rem; }.metric-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.inbox-grid { height:calc(100vh - 14rem); }.split-grid { grid-template-columns:1fr; } }
@media (max-width: 620px) { .console-main { padding:1.3rem 1rem 2rem; }.console-topbar { margin-bottom:1.25rem; }.console-topbar__public { font-size:.68rem; }.metric-grid { grid-template-columns:1fr 1fr; gap:.65rem; }.metric-card { padding:.85rem; }.metric-card strong { font-size:1.55rem; }.inbox-grid { grid-template-columns:1fr; height:auto; min-height:0; }.inbox-list { max-height:320px; border-right:0; border-bottom:1px solid var(--border); }.chat-panel { min-height:560px; }.chat-head { align-items:flex-start; flex-direction:column; }.chat-head__actions { width:100%; flex-wrap:wrap; }.reply-box { grid-template-columns:1fr; }.reply-box .button { width:100%; }.compact-form { flex:1; }.compact-form select { flex:1; }.split-grid { gap:.8rem; } }
.reply-box { grid-template-columns:1fr; }.reply-box__composer { display:grid; grid-template-columns:1fr auto; gap:.7rem; }.reply-template-picker { display:grid; grid-template-columns:1fr auto; gap:.65rem; align-items:end; padding:.7rem; border:1px solid rgba(151,179,197,.16); border-radius:.75rem; background:rgba(4,16,25,.28); }.reply-template-picker[hidden] { display:none; }.reply-template-picker label { display:grid; gap:.35rem; color:#cde0ea; font-size:.72rem; font-weight:700; }.reply-template-picker select { width:100%; border:1px solid rgba(151,179,197,.22); border-radius:.6rem; background:rgba(4,16,25,.58); color:var(--text); padding:.62rem .7rem; font:400 .8rem inherit; outline:none; }.template-edit-form { margin-top:.8rem; }.template-edit-form textarea { min-height:6.5rem; }.template-toggle-form { margin-top:.7rem; }@media (max-width: 620px) { .reply-box__composer,.reply-template-picker { grid-template-columns:1fr; }.reply-box .button { width:100%; } }
.live-status { display:inline-flex; align-items:center; gap:.35rem; margin-top:.35rem; color:#9eecba; font-size:.66rem; font-weight:700; }.live-status::before { content:""; width:.45rem; height:.45rem; border-radius:999px; background:#4ec778; box-shadow:0 0 0 .2rem rgba(78,199,120,.12); }
.conversation-row small.has-unread { color:#ecf6fc; font-weight:800; }.unread-badge { display:inline-grid; place-items:center; min-width:1.25rem; height:1.25rem; padding:0 .35rem; border-radius:999px; background:linear-gradient(145deg,#f9d77d,#d9a835); color:#10202b !important; font-size:.64rem !important; font-weight:900; box-shadow:0 0 0 .22rem rgba(242,196,95,.11); }.conversation-row.has-unread-row { background:rgba(242,196,95,.07); }.conversation-row.has-unread-row:hover,.conversation-row.has-unread-row.is-selected { background:rgba(82,184,236,.12); }
