@import url('https://cdn.jsdelivr.net/npm/@fontsource-variable/geist/index.css');
@import url('https://cdn.jsdelivr.net/npm/@fontsource-variable/geist-mono/index.css');

:root{
  --paper:#16130D; --paper2:#211E15; --ink:#EAE4D6; --mut:#A29B88; --mut2:#7E7868;
  --hair:#332F22; --brass:#C0A45E; --brick:#CB6A4B;
  --teams:#464775; --teams-dark:#3B3A63; --teams-tab:#6264A7;
  --teams-grey:#F3F2F1; --teams-white:#FFFFFF; --teams-line:#E1DFDD;
  --teams-ink:#242424; --teams-mut:#605E5C; --teams-mut2:#8A8886;
  --chat-bg:var(--teams-grey); --bubble-in:#FFFFFF; --bubble-out:#E2E2F0; --bubble-border:var(--teams-line);
  --sans:'Geist Variable','Geist',system-ui,sans-serif;
  --mono:'Geist Mono Variable','Geist Mono',ui-monospace,monospace;
}
*{box-sizing:border-box}
html.romy-embed.romy-teams body{margin:0;background:var(--teams-grey);color:var(--teams-ink);font-family:var(--sans);
  -webkit-font-smoothing:antialiased;padding:0}
.teams-shell{display:flex;min-height:420px;border:1px solid var(--teams-line);border-radius:6px;overflow:hidden;background:var(--teams-grey)}
.teams-rail{width:48px;flex:0 0 48px;background:var(--teams);display:flex;flex-direction:column;align-items:center;padding:10px 0;gap:4px}
.teams-rail i{width:36px;height:36px;display:grid;place-items:center;border-radius:4px;color:rgba(255,255,255,.72);font-style:normal}
.teams-rail i svg,.chat-hd .acts span svg,.compose-tools span svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.compose-tools span svg{width:16px;height:16px}
.teams-rail i.on{background:rgba(255,255,255,.14);color:#fff}
.teams-main{flex:1;min-width:0;display:flex;flex-direction:column}
.teams-top{background:var(--teams);padding:8px 12px;display:flex;align-items:center;gap:8px}
.teams-top .search{flex:1;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.08);border-radius:4px;
  padding:6px 10px;font-size:12px;color:rgba(255,255,255,.55)}
.teams-top .me{width:28px;height:28px;border-radius:50%;background:var(--brass);color:var(--paper);font-family:var(--mono);
  font-size:10px;font-weight:700;display:grid;place-items:center;position:relative;flex:0 0 auto}
.teams-top .me::after{content:"";position:absolute;bottom:0;right:0;width:8px;height:8px;border-radius:50%;
  background:#6BB700;border:2px solid var(--teams)}
.chat-hd{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid var(--teams-line);background:var(--teams-white)}
.chat-hd .av{width:36px;height:36px;border-radius:50%;background:var(--teams);color:#fff;font-family:var(--mono);
  font-size:12px;font-weight:700;display:grid;place-items:center;position:relative;flex:0 0 auto}
.chat-hd .av::after{content:"";position:absolute;bottom:0;right:0;width:9px;height:9px;border-radius:50%;
  background:#6BB700;border:2px solid var(--teams-white)}
.chat-hd .info{flex:1;min-width:0}
.chat-hd .nm{font-size:14px;font-weight:600;line-height:1.2;color:var(--teams-ink)}
.chat-hd .st{font-size:11px;color:var(--teams-mut);margin-top:1px}
.chat-hd .acts{display:flex;gap:4px;color:var(--teams-mut)}
.chat-hd .acts span{width:32px;height:32px;display:grid;place-items:center;border-radius:4px;font-size:14px}
.chat-hd .acts span:hover{background:rgba(0,0,0,.05)}
.tabs{display:flex;gap:0;padding:0 14px;border-bottom:1px solid var(--teams-line);background:var(--teams-white)}
.tab{font-size:12px;font-weight:600;color:var(--teams-mut);padding:10px 12px;border-bottom:2px solid transparent;cursor:default}
.tab.on{color:var(--teams-ink);border-bottom-color:var(--teams-tab)}
.ctx{display:flex;flex-wrap:wrap;gap:8px;padding:8px 14px;font-family:var(--mono);font-size:9px;text-transform:uppercase;
  letter-spacing:.06em;color:var(--teams-mut2);border-bottom:1px solid var(--teams-line);background:var(--teams-grey)}
.ctx .ok{color:#8B6914}
.stream{flex:1;display:flex;flex-direction:column;gap:14px;min-height:140px;max-height:240px;overflow-y:auto;padding:14px;background:var(--teams-grey)}
.msg{display:flex;gap:8px;max-width:92%}
.msg.u{align-self:flex-end;flex-direction:row-reverse}
.msg .col{min-width:0}
.msg .meta-line{display:flex;align-items:baseline;gap:8px;margin-bottom:4px;font-size:11px}
.msg .meta-line.end{justify-content:flex-end}
.msg .name{font-weight:600;color:var(--teams-ink)}
.msg .time{color:var(--teams-mut2)}
.msg .av{width:32px;height:32px;border-radius:50%;background:var(--teams);color:#fff;font-family:var(--mono);
  font-size:11px;font-weight:700;display:grid;place-items:center;flex:0 0 auto;align-self:flex-end}
.msg .bubble{font-size:13px;line-height:1.55;padding:8px 12px;border-radius:6px;word-break:break-word;color:var(--teams-ink)}
.msg.a .bubble{background:var(--bubble-in);border:1px solid var(--bubble-border);box-shadow:0 1px 2px rgba(0,0,0,.04)}
.msg.u .bubble{background:var(--bubble-out);border:0}
.msg.sys{align-self:center;width:100%;max-width:100%}
.msg.sys .sys-line{font-family:var(--mono);font-size:9px;color:var(--teams-mut);text-align:center;
  border-top:1px solid var(--teams-line);border-bottom:1px solid var(--teams-line);padding:6px 0;text-transform:uppercase;letter-spacing:.06em;width:100%}
.act{margin-top:10px;display:flex;gap:8px;flex-wrap:wrap}
.act button{font-family:var(--mono);font-size:10px;font-weight:600;color:#fff;background:var(--teams-tab);
  border:0;border-radius:3px;padding:7px 12px;cursor:pointer;text-transform:uppercase;letter-spacing:.04em}
.act button.ghost{background:var(--teams-white);color:var(--teams-mut);border:1px solid var(--teams-line)}
.act button:disabled{opacity:.55;background:var(--brass)}
.compose{border-top:1px solid var(--teams-line);background:var(--teams-grey);padding:10px 14px 12px}
.talk-hd{font-family:var(--mono);font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;
  color:#8B6914;margin-bottom:8px}
.chip-list{display:flex;flex-direction:column;gap:5px;margin-bottom:10px}
.qchip{display:flex;align-items:flex-start;gap:8px;width:100%;font-family:var(--sans);font-size:12px;font-weight:600;
  color:var(--teams-ink);background:var(--teams-white);border:1px solid var(--teams-line);border-radius:4px;padding:8px 10px;cursor:pointer;
  text-align:left;line-height:1.35;transition:border-color .15s,background .15s;box-shadow:0 1px 2px rgba(0,0,0,.04)}
.qchip .arr{font-family:var(--mono);font-size:13px;font-weight:700;color:var(--teams-tab);flex:0 0 auto}
.qchip:hover,.qchip:focus-visible{border-color:var(--teams-tab);background:#FAFAFA;outline:none}
.compose-box{background:var(--teams-white);border:1px solid var(--teams-line);border-radius:4px;padding:10px 12px;
  font-size:13px;color:var(--teams-mut2);min-height:40px}
.compose-tools{display:flex;gap:2px;margin-top:6px;color:var(--teams-mut)}
.compose-tools span{width:28px;height:28px;display:grid;place-items:center;border-radius:4px;font-size:13px}
.compose-tools span:hover{background:rgba(0,0,0,.05)}
.typing{display:flex;gap:4px;padding:2px 0}
.typing i{width:4px;height:4px;background:var(--teams-mut);border-radius:50%;animation:bl 1.2s infinite}
.typing i:nth-child(2){animation-delay:.2s}.typing i:nth-child(3){animation-delay:.4s}
@keyframes bl{0%,60%,100%{opacity:.25}30%{opacity:1}}
