@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600&family=Inter:wght@400;500;600;700&display=swap');
:root{--ivory:#FBF9F4;--ivory-2:#F5F1E8;--ivory-3:#EDE6D6;--onyx:#0B0B0C;--onyx-5:#53535A;--onyx-4:#7A7A82;--onyx-3:#A8A8AE;--gold:#C29A4A;--gold-7:#8C6B2F;--gold-pale:#F9F4E8;--rule:#D6CCB5;--rule-light:#EDE6D6;--red:#9A2B2B;--amber:#B8822A;--blue:#355E7A;--green:#2F7D5C;--serif:'Cormorant Garamond',Georgia,serif;--sans:'Inter',Arial,sans-serif}
*{box-sizing:border-box}html,body{min-height:100%;margin:0;background:var(--ivory);color:var(--onyx);font-family:var(--sans);-webkit-font-smoothing:antialiased}button,input,textarea{font:inherit}button{cursor:pointer}.app-shell{display:flex;min-height:100vh}.sidebar{width:210px;flex-shrink:0;height:100vh;display:flex;flex-direction:column;background:var(--gold-pale);border-right:1px solid var(--rule);position:sticky;top:0}.brand{display:flex;gap:9px;align-items:center;padding:22px 18px 16px;border-bottom:1px solid var(--rule)}.brand-mark{width:27px;height:27px;border:1px solid var(--gold);color:var(--gold-7);display:grid;place-items:center;font:600 17px var(--serif)}.brand strong{display:block;font:600 21px var(--serif);letter-spacing:0}.brand span{display:block;color:var(--onyx-4);font:500 9px var(--sans);letter-spacing:.2em;text-transform:uppercase;margin-top:2px}.workspace-select{padding:10px 18px 4px}.eyebrow{color:var(--onyx-4);font-size:8.5px;letter-spacing:.2em;text-transform:uppercase;font-weight:600}.select-btn{margin-top:5px;width:100%;display:flex;justify-content:space-between;align-items:center;border:0;background:transparent;color:var(--onyx-5);padding:6px 0;font-size:11px;text-align:left}.select-btn span{color:var(--gold)}.nav{display:grid;gap:0}.nav-item{display:flex;align-items:center;gap:8px;padding:8px 18px;width:100%;background:none;border:none;border-left:2px solid transparent;color:var(--onyx-5);font-family:var(--sans);font-size:12px;cursor:pointer;transition:all .12s;text-align:left}.nav-item:hover{background:rgba(194,154,74,.1);color:var(--onyx)}.nav-item.active{background:rgba(194,154,74,.18);border-left-color:var(--gold);color:var(--onyx);font-weight:500}.nav-item b{margin-left:auto;font-size:9.5px;background:var(--red);color:#fff;padding:1px 5px;border-radius:3px;font-weight:600}.nav-icon{width:14px;text-align:center;color:var(--gold-7);font-size:13px}.nav-divider{height:1px;background:var(--rule);margin:14px 18px}.sidebar-footer{margin-top:auto;padding:12px 18px;border-top:1px solid var(--rule);display:flex;align-items:center;gap:8px;font-size:11px}.sidebar-footer strong{display:block;font-size:11px;font-weight:600}.sidebar-footer span{display:block;color:var(--onyx-4);font-size:10px;margin-top:3px}.sidebar-footer .icon-btn{margin-left:auto}.main{flex:1;min-width:0;background:var(--ivory)}.topbar{padding:16px 26px 12px;border-bottom:1px solid var(--rule);background:var(--ivory);display:flex;align-items:flex-end;justify-content:space-between;position:sticky;top:0;z-index:20;min-height:78px}.topbar h1{font:500 30px var(--serif);letter-spacing:-.02em;line-height:1;margin:5px 0 0}.top-actions{display:flex;align-items:center;gap:18px}.connection-pill{display:flex;align-items:center;gap:7px;color:var(--onyx-5);font-size:10px;border:1px solid var(--rule);padding:7px 9px;border-radius:3px}.operator-chip{background:none;border:0;color:var(--onyx-5);display:flex;align-items:center;gap:7px;font-size:11px}.avatar{display:grid;place-items:center;width:26px;height:26px;background:var(--gold);color:#fff;border-radius:50%;font-size:11px;font-weight:600}.icon-btn{border:0;background:none;color:var(--onyx-4);font-size:16px;padding:4px}.icon-btn:hover{color:var(--onyx)}.mobile-menu{display:none}.content{padding:24px 26px 44px;max-width:1500px;margin:0 auto}.section-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:14px}.section-head h2{font:500 22px var(--serif);margin:0;letter-spacing:-.01em}.section-head p{color:var(--onyx-4);margin:4px 0 0;font-size:11px}.section-actions{display:flex;gap:7px}.btn{padding:7px 14px;background:none;border:1px solid var(--rule);border-radius:3px;font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:500;color:var(--onyx-5);cursor:pointer;transition:all .12s;white-space:nowrap}.btn:hover{border-color:var(--gold);color:var(--gold-7)}.btn.primary{padding:8px 16px;background:linear-gradient(135deg,#E8C988 0%,#C29A4A 40%,#8C6B2F 100%);color:#fff;border:none;font-weight:600}.btn.warn{border-color:#D9C28C;color:var(--amber)}.grid{display:grid;gap:14px}.stats-grid{grid-template-columns:repeat(4,1fr);margin-bottom:20px;background:#fff;border:1px solid var(--rule);border-radius:4px;overflow:hidden;gap:0}.stat{padding:14px 18px;border-right:1px solid var(--rule)}.stat:last-child{border-right:0}.stat-label{font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--onyx-4);font-weight:500}.stat-value{font:500 36px var(--serif);line-height:1;letter-spacing:-.02em;margin:5px 0 2px;background:linear-gradient(135deg,#E8C988 0%,#C29A4A 40%,#8C6B2F 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.stat-foot{font-size:11px;color:var(--onyx-4)}.up{color:var(--green)}.warn-text{color:var(--amber)}.two-col{grid-template-columns:minmax(0,1.35fr) minmax(280px,.8fr);align-items:start}.panel{background:#fff;border:1px solid var(--rule);border-radius:4px;overflow:hidden}.panel-head{padding:10px 16px;border-bottom:1px solid var(--rule);background:var(--ivory-2);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}.panel-head h3{margin:0;font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;font-weight:600;color:var(--onyx-5)}.panel-head span{font-size:10px;color:var(--onyx-3)}.panel-body{padding:14px 16px}.status-list{display:grid;gap:0}.status-row{display:flex;align-items:center;justify-content:space-between;padding:9px 0;border-bottom:1px solid var(--rule-light)}.status-row:last-child{border-bottom:0}.status-row>div:first-child{display:flex;align-items:center;gap:9px}.status-row strong{font-size:12px;font-weight:600}.status-row small{display:block;color:var(--onyx-4);font-size:10px;margin-top:3px}.status-value{font-size:10px;letter-spacing:.08em;color:var(--green)}.status-value.offline{color:var(--red)}.status-value.pending{color:var(--amber)}.status-dot{width:7px;height:7px;border-radius:50%;background:var(--onyx-3);display:inline-block}.status-dot.live{background:var(--green)}.status-dot.warn{background:var(--amber)}.status-dot.dead{background:var(--red)}.metric-line{display:flex;justify-content:space-between;border-bottom:1px solid var(--rule-light);padding:9px 0;font-size:11px}.metric-line:last-child{border:0}.metric-line span:first-child{color:var(--onyx-4)}.metric-line span:last-child{color:var(--onyx-5);font-weight:500}.handoff{border-left:2px solid var(--amber);padding:10px 12px;background:var(--amber-bg,#FFFBEB);color:var(--onyx-5);font-size:11px;line-height:1.55;margin-bottom:8px}.activity{display:grid;gap:0}.activity-row{display:grid;grid-template-columns:10px 1fr auto;gap:11px;padding:10px 0;border-bottom:1px solid var(--rule-light)}.activity-row p{margin:0;font-size:12px}.activity-row small{display:block;color:var(--onyx-4);font-size:10px;margin-top:4px}.activity-kind{font-size:10px;color:var(--blue)}.data-table{width:100%;border-collapse:collapse}.data-table th{font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--onyx-4);font-weight:500;padding:8px 10px;border-bottom:1px solid var(--rule);text-align:left}.data-table td{font-size:12.5px;color:var(--onyx-5);padding:8px 10px;border-bottom:1px solid var(--rule-light);vertical-align:middle}.data-table tr:hover td{background:var(--ivory-2)}.name-cell{color:var(--onyx)!important;font-weight:600}.name-cell small{display:block;color:var(--onyx-4);font:10px 'DM Mono',monospace;margin-top:3px}.tag{display:inline-block;padding:2px 6px;border-radius:3px;background:var(--gold-pale);color:var(--gold-7);font-size:10px;margin-right:3px}.tag.blue{background:#EFF6FF;color:var(--blue)}.tag.amber{background:#FFFBEB;color:var(--amber)}.empty{padding:20px;color:var(--onyx-3);font-size:11px;text-align:center}.table-wrap{overflow:auto}.inbox-layout{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:610px}.chat-list{border-right:1px solid var(--rule);background:var(--ivory-2)}.chat-search{padding:11px;border-bottom:1px solid var(--rule)}.input{width:100%;border:1px solid var(--rule);background:var(--ivory-2);color:var(--onyx);padding:8px 10px;border-radius:3px;outline:0;font-size:12px}.input:focus{border-color:var(--gold);background:#fff}.chat-item{padding:12px 14px;border:0;border-bottom:1px solid var(--rule-light);background:transparent;color:var(--onyx);width:100%;text-align:left}.chat-item.active{background:rgba(194,154,74,.14);border-left:2px solid var(--gold)}.chat-item strong{font-size:12px}.chat-item small{display:block;color:var(--onyx-4);margin-top:4px;font-size:10px}.chat-window{display:flex;flex-direction:column;background:#fff}.chat-window-head{padding:13px 16px;border-bottom:1px solid var(--rule);display:flex;justify-content:space-between}.chat-window-head strong{font-size:12px}.chat-window-head small{display:block;color:var(--onyx-4);font-size:10px;margin-top:3px}.chat-log{padding:18px;display:flex;flex-direction:column;gap:11px;min-height:380px;flex:1;background:var(--ivory)}.bubble{max-width:min(74%,620px);padding:9px 11px;border:1px solid var(--rule);background:#fff;border-radius:4px;font-size:12px;line-height:1.5}.bubble.out{align-self:flex-end;background:var(--gold-pale);border-color:#DCC99D}.bubble small{display:block;color:var(--onyx-4);font-size:9px;margin-top:5px}.chat-compose{padding:11px;border-top:1px solid var(--rule);display:flex;gap:8px;background:#fff}.chat-compose textarea{resize:none;min-height:40px;background:var(--ivory-2)}.qr-box{border:1px dashed #C9B98E;background:var(--gold-pale);min-height:185px;display:grid;place-items:center;text-align:center;padding:18px}.qr-placeholder{width:128px;height:128px;background:repeating-linear-gradient(45deg,#8C6B2F 0 3px,#F9F4E8 3px 6px);opacity:.18;margin-bottom:10px}.qr-box strong{display:block;font-size:12px}.qr-box p{color:var(--onyx-4);font-size:10.5px;max-width:260px;line-height:1.5;margin:6px auto 0}.toast{position:fixed;bottom:20px;right:20px;background:var(--onyx);color:#fff;padding:10px 14px;border-radius:3px;font-size:11px;box-shadow:0 5px 20px #0003;transform:translateY(18px);opacity:0;pointer-events:none;transition:.2s}.toast.show{transform:none;opacity:1}
@media(max-width:980px){.content{padding:20px}.topbar{padding:14px 20px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));border-radius:4px}.stat:nth-child(2){border-right:0}.stat:nth-child(-n+2){border-bottom:1px solid var(--rule)}.two-col{grid-template-columns:1fr}}
@media(max-width:760px){.sidebar{position:fixed;z-index:50;inset:0 auto 0 0;transform:translateX(-100%);transition:.2s;width:210px;box-shadow:8px 0 24px #0002}.sidebar.open{transform:none}.mobile-menu{display:block}.topbar{align-items:flex-start;gap:12px;flex-wrap:wrap;min-height:74px}.topbar>div:last-child{width:100%;justify-content:flex-start;overflow-x:auto;padding-bottom:2px}.topbar h1{font-size:26px}.content{padding:16px}.section-head{align-items:flex-start;gap:10px;flex-direction:column}.section-actions{width:100%}.section-actions .btn{flex:1}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stat{padding:12px}.stat-value{font-size:30px}.inbox-layout{grid-template-columns:1fr}.chat-list{display:none}.chat-log{padding:14px;min-height:340px}.bubble{max-width:88%}.panel{max-width:100%}.panel>.table-wrap{display:block;overflow-x:auto}.data-table{min-width:650px}.operator-chip>span:not(.avatar){display:none}.connection-pill span:last-child{display:none}}
/* The live pairing payload is rendered as a real QR SVG by the bridge. */
.qr-placeholder{background-image:var(--velora-qr),repeating-linear-gradient(45deg,#8C6B2F 0 3px,#F9F4E8 3px 6px);background-size:contain,auto;background-repeat:no-repeat,repeat;opacity:var(--velora-qr-opacity,.18)}
:root{--velora-qr-opacity:.18}

/* Match the operations control-plane shell: fixed viewport, scrolling work area. */
html,body{height:100%;overflow:hidden}
body{display:flex}
.app-shell{flex:1;min-width:0;height:100%;min-height:100vh}
.sidebar{position:relative;top:auto}
.main{overflow-y:auto;display:flex;flex-direction:column}
.content{width:100%}
@media(max-width:760px){
  html,body{height:auto;overflow:auto}
  body{display:block}
  .app-shell{display:block;height:auto;min-height:100vh}
  .main{width:100%;min-height:100vh;overflow:visible}
}
