:root {
  color-scheme: light;
  --bg:#eef3ed; --surface:#fff; --surface-2:#f5f8f4; --surface-3:#e5ede7;
  --text:#12201c; --muted:#68756e; --line:#dbe4de;
  --brand:#173f36; --brand-2:#28604f; --accent:#b9ee45; --accent-ink:#173000;
  --shadow:0 16px 50px rgba(19,50,42,.10);
}
html[data-theme="parana"] {
  --bg:#edf3f8; --surface:#fff; --surface-2:#f3f7fb; --surface-3:#e1ebf4;
  --text:#102333; --muted:#617181; --line:#d8e3ec;
  --brand:#16496c; --brand-2:#20709b; --accent:#79e4ca; --accent-ink:#063c32;
}
html[data-theme="tierra"] {
  --bg:#f5efe6; --surface:#fffdf9; --surface-2:#faf5ed; --surface-3:#eee2d2;
  --text:#332118; --muted:#7c6b60; --line:#e6dbce;
  --brand:#783c2a; --brand-2:#a45438; --accent:#f5b85b; --accent-ink:#4c2502;
}
html[data-theme="lapacho"] {
  --bg:#f4eff8; --surface:#fff; --surface-2:#faf6fc; --surface-3:#ebe0f1;
  --text:#281b33; --muted:#766a80; --line:#e3d9e9;
  --brand:#593078; --brand-2:#8050a1; --accent:#ff8a7a; --accent-ink:#4c0d08;
}
html[data-theme="azul_oro"] {
  --bg:#eef3f8; --surface:#fff; --surface-2:#f3f6fa; --surface-3:#e2e9f1;
  --text:#12243a; --muted:#66758a; --line:#d7e0ea;
  --brand:#123f6b; --brand-2:#1b5a91; --accent:#e5b94c; --accent-ink:#2b2106;
}
html[data-theme="esmeralda_roja"] {
  --bg:#f8edf1; --surface:#fffafd; --surface-2:#fdf3f6; --surface-3:#f0dce3;
  --text:#32151f; --muted:#80626c; --line:#ead6dd;
  --brand:#861936; --brand-2:#ad294b; --accent:#38b98a; --accent-ink:#073b2b;
  --shadow:0 16px 50px rgba(92,16,42,.12);
}
html[data-theme="esmeralda_verde"] {
  --bg:#eaf5f0; --surface:#fbfffd; --surface-2:#f1faf6; --surface-3:#d9ece4;
  --text:#102a21; --muted:#60786e; --line:#d2e5dd;
  --brand:#07644e; --brand-2:#0c8466; --accent:#dfbd58; --accent-ink:#352803;
  --shadow:0 16px 50px rgba(5,72,54,.11);
}
html[data-mode="dark"] {
  color-scheme:dark;
  --bg:#111815; --surface:#17201c; --surface-2:#1d2823; --surface-3:#26332d;
  --text:#eef6f1; --muted:#9eada5; --line:#2c3a33;
  --brand:#b9ee45; --brand-2:#d1fa75; --accent:#b9ee45; --accent-ink:#122000;
  --shadow:0 20px 60px rgba(0,0,0,.35);
}
html[data-mode="dark"][data-theme="parana"] {
  --bg:#0a1720; --surface:#10232f; --surface-2:#172d3b; --surface-3:#1e3a49;
  --text:#eef9fa; --muted:#9fb7bf; --line:#294451;
  --brand:#79e4ca; --brand-2:#a7f1df; --accent:#55c9ef;
}
html[data-mode="dark"][data-theme="tierra"] {
  --bg:#17110e; --surface:#211713; --surface-2:#2a1e19; --surface-3:#392720;
  --text:#fff5e8; --muted:#c2aa9b; --line:#453129;
  --brand:#f5b85b; --brand-2:#ffd58e; --accent:#df895e; --accent-ink:#2c160b;
}
html[data-mode="dark"][data-theme="lapacho"] {
  --bg:#17111b; --surface:#211827; --surface-2:#2b2032; --surface-3:#392a42;
  --text:#fbf4ff; --muted:#bcabc5; --line:#493552;
  --brand:#d5a7f4; --brand-2:#ebccff; --accent:#ff8a7a;
}
html[data-mode="dark"][data-theme="azul_oro"] {
  --bg:#08131f; --surface:#0e1d2c; --surface-2:#142638; --surface-3:#1c3145;
  --text:#f4f7fb; --muted:#a7b5c4; --line:#263c52;
  --brand:#f0c85b; --brand-2:#ffdc7b; --accent:#e6b94e; --accent-ink:#162035;
}
html[data-mode="dark"][data-theme="esmeralda_roja"] {
  --bg:#17090e; --surface:#241017; --surface-2:#30151f; --surface-3:#421c2a;
  --text:#fff2f6; --muted:#c9a8b3; --line:#533040;
  --brand:#ff809f; --brand-2:#ffadc1; --accent:#45d5a0; --accent-ink:#062d21;
  --shadow:0 20px 60px rgba(0,0,0,.42);
}
html[data-mode="dark"][data-theme="esmeralda_verde"] {
  --bg:#061812; --surface:#0b241b; --surface-2:#102f24; --surface-3:#173e30;
  --text:#effbf6; --muted:#9fc0b2; --line:#28513f;
  --brand:#54d5a6; --brand-2:#8ce9c6; --accent:#e5c460; --accent-ink:#2d2305;
  --shadow:0 20px 60px rgba(0,0,0,.4);
}
html[data-mode="dark"]:is([data-theme="esmeralda_roja"],[data-theme="esmeralda_verde"]) :is(
  .step-confirm,
  .concierge-staff-filters button.is-active,
  .capability-picker input:checked + span,
  .assignment-actions button,
  .operation-actions button,
  .vehicle-card button,
  .resolve-submit,
  .resolve-inbox-link > span,
  .resolve-chat-send,
  .resolve-message-context > a,
  .concierge-template-card > button
) { color:var(--bg); }

* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body {
  margin:0; min-width:320px; min-height:100vh; background:var(--bg); color:var(--text);
  font:15px/1.45 Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
button,input { font:inherit; }
button,a { -webkit-tap-highlight-color:transparent; }
button { color:inherit; }
a { color:inherit; text-decoration:none; }
button:focus-visible,a:focus-visible,input:focus-visible { outline:3px solid color-mix(in srgb,var(--accent) 72%,transparent); outline-offset:2px; }
.skip-link {
  position:fixed; z-index:120; left:16px; top:12px; padding:10px 14px;
  border-radius:11px; background:var(--text); color:var(--surface);
  font-weight:850; transform:translateY(-160%); transition:transform .15s;
}
.skip-link:focus { transform:translateY(0); }
.sr-only { position:absolute !important; width:1px !important; height:1px !important; padding:0 !important; margin:-1px !important; overflow:hidden !important; clip:rect(0,0,0,0) !important; white-space:nowrap !important; border:0 !important; }

.topbar {
  position:sticky; z-index:30; top:0; height:76px; padding:12px 26px;
  display:grid; grid-template-columns:220px minmax(300px,680px) 1fr; gap:28px; align-items:center;
  background:color-mix(in srgb,var(--bg) 86%,transparent); backdrop-filter:blur(22px);
  border-bottom:1px solid color-mix(in srgb,var(--line) 78%,transparent);
}
.brand { display:flex; align-items:center; gap:11px; width:max-content; }
.brand-mark {
  width:42px; height:42px; display:grid; place-items:center; border-radius:14px;
  background:var(--accent); color:var(--accent-ink); font-size:19px; font-weight:950;
  box-shadow:inset 0 -5px 12px rgba(0,0,0,.08);
}
.brand-name { color:var(--brand); font-size:22px; font-weight:950; letter-spacing:.09em; }
.global-search {
  height:48px; padding:0 14px; display:flex; align-items:center; gap:11px;
  background:var(--surface); border:1px solid var(--line); border-radius:16px;
}
.global-search:focus-within { border-color:var(--brand); box-shadow:0 0 0 4px color-mix(in srgb,var(--brand) 12%,transparent); }
.global-search > span { color:var(--brand); font-size:21px; }
.global-search input { width:100%; border:0; outline:0; background:none; color:var(--text); }
kbd { padding:2px 7px; border:1px solid var(--line); border-radius:7px; background:var(--surface-2); color:var(--muted); font-size:11px; white-space:nowrap; }
.top-actions { display:flex; justify-content:flex-end; align-items:center; gap:8px; }
.auth-links { display:flex; align-items:center; gap:8px; font-size:12px; font-weight:850; }
.auth-links a { padding:9px 11px; border-radius:11px; }
.auth-links .auth-create { background:var(--accent); color:var(--accent-ink); }
.round-button,.avatar {
  width:42px; height:42px; display:grid; place-items:center; border:1px solid var(--line);
  border-radius:14px; background:var(--surface); cursor:pointer;
}
.notification-button { position:relative; color:#d55d54; font-size:10px; }
.notification-button b { position:absolute; right:-4px; top:-5px; min-width:18px; height:18px; padding:0 4px; display:grid; place-items:center; border-radius:99px; background:#d7554d; color:#fff; font-size:9px; }
.avatar { border-radius:50%; background:var(--brand); color:var(--bg); font-weight:900; }

.desktop-shell {
  width:min(1600px,100%); margin:auto; display:grid; grid-template-columns:210px minmax(0,1fr) 315px;
  gap:28px; padding:28px 26px 100px;
}
.left-rail,.right-rail { position:sticky; top:104px; align-self:start; }
.left-rail nav { display:grid; gap:7px; }
.rail-link {
  min-height:50px; padding:0 15px; display:flex; align-items:center; gap:13px;
  border-radius:15px; color:var(--muted); font-weight:780;
}
.rail-link span { width:24px; text-align:center; font-size:19px; }
.rail-link:hover,.rail-link.is-active { background:var(--surface); color:var(--brand); box-shadow:0 8px 24px rgba(30,50,42,.05); }
.rail-location { margin-top:32px; padding:14px; display:flex; align-items:center; gap:12px; color:var(--muted); }
.rail-location > span { font-size:22px; color:var(--brand); }
.rail-location strong,.rail-location small { display:block; }
.rail-location small { font-size:11px; }
.workspace { min-width:0; }
.hero { display:grid; grid-template-columns:minmax(0,1.28fr) minmax(270px,.72fr); gap:18px; }
.hero-copy {
  min-height:282px; padding:40px; position:relative; overflow:hidden; border-radius:31px;
  background:linear-gradient(135deg,var(--brand),var(--brand-2)); color:#fff; box-shadow:var(--shadow);
}
html[data-mode="dark"] .hero-copy { color:#122018; }
.hero-copy::after {
  content:""; position:absolute; width:260px; height:260px; right:-75px; bottom:-150px;
  border:48px solid color-mix(in srgb,var(--accent) 52%,transparent); border-radius:50%;
}
.eyebrow { margin:0 0 8px; color:var(--brand); font-size:11px; font-weight:950; letter-spacing:.13em; text-transform:uppercase; }
.hero-copy .eyebrow { color:inherit; opacity:.74; }
h1,h2,h3,p { margin-top:0; }
h1 { margin-bottom:12px; font-size:clamp(35px,3.5vw,58px); line-height:1.02; letter-spacing:-.045em; }
h2 { margin-bottom:0; font-size:21px; line-height:1.2; letter-spacing:-.02em; }
.hero-copy > p:not(.eyebrow) { max-width:620px; margin-bottom:0; opacity:.82; font-size:16px; }
.hero-actions { position:relative; z-index:1; margin-top:26px; display:flex; flex-wrap:wrap; gap:9px; }
.button {
  min-height:45px; padding:0 17px; border:1px solid transparent; border-radius:14px;
  display:inline-flex; align-items:center; justify-content:center; gap:8px; cursor:pointer; font-weight:850;
}
.button:hover { transform:translateY(-2px); }
.button.primary { background:var(--accent); color:var(--accent-ink); }
.button.secondary { background:color-mix(in srgb,var(--surface) 13%,transparent); border-color:color-mix(in srgb,currentColor 28%,transparent); }
.hero-status { padding:24px; display:flex; flex-direction:column; border:1px solid var(--line); border-radius:31px; background:var(--surface); box-shadow:var(--shadow); }
.status-top { display:flex; align-items:center; justify-content:space-between; gap:10px; color:var(--muted); font-size:10px; font-weight:900; letter-spacing:.08em; }
.status-top i { color:#3d8a65; font-style:normal; letter-spacing:0; }
.hero-status > strong { margin-top:23px; font-size:34px; line-height:1; letter-spacing:-.04em; }
.hero-status > p { margin:5px 0 20px; color:var(--muted); font-size:12px; }
.space-switcher { margin-top:auto; display:grid; grid-template-columns:repeat(5,1fr); gap:5px; }
.space-button { min-width:0; padding:9px 3px; border:0; border-radius:12px; background:var(--surface-2); color:var(--muted); cursor:pointer; font-size:9px; font-weight:850; }
.space-button span { display:block; font-size:15px; margin-bottom:2px; }
.space-button.is-active { background:var(--brand); color:var(--bg); }
html[data-mode="dark"] .space-button.is-active { color:#122018; }
.content-section { margin-top:31px; }
.section-heading,.side-heading { display:flex; align-items:end; justify-content:space-between; gap:20px; margin-bottom:14px; }
.section-heading p { margin:4px 0 0; color:var(--muted); font-size:12px; }
.section-heading a,.section-heading button,.side-heading a { color:var(--brand); font-size:12px; font-weight:850; }
.text-button { border:0; background:none; cursor:pointer; }
.matter-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.matter-card {
  min-height:164px; padding:17px; display:flex; flex-direction:column; text-align:left;
  border:1px solid var(--line); border-radius:21px; background:var(--surface); cursor:pointer;
}
.matter-card:hover { transform:translateY(-3px); box-shadow:var(--shadow); }
.matter-top { display:flex; justify-content:space-between; gap:10px; align-items:center; }
.mini-icon { width:36px; height:36px; display:grid; place-items:center; border-radius:12px; background:var(--surface-2); font-weight:900; }
.badge,.pilot-badge { padding:5px 8px; border-radius:999px; background:var(--surface-3); color:var(--brand); font-size:10px; font-weight:900; }
.matter-card h3 { margin:15px 0 4px; font-size:14px; }
.matter-card p { margin-bottom:13px; color:var(--muted); font-size:11px; }
.progress { height:5px; margin-top:auto; overflow:hidden; border-radius:99px; background:var(--surface-3); }
.progress span { display:block; height:100%; border-radius:inherit; background:var(--accent); }
.app-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:10px; }
.app-card {
  position:relative; min-height:137px; padding:13px 7px 11px; text-align:center;
  border:1px solid transparent; border-radius:20px; background:var(--surface); cursor:pointer;
}
.app-card:hover { transform:translateY(-4px); border-color:var(--line); box-shadow:0 14px 35px rgba(30,50,42,.09); }
.app-icon {
  width:58px; height:58px; margin:0 auto 10px; display:grid; place-items:center; border-radius:19px;
  color:var(--app-color); background:color-mix(in srgb,var(--app-color) 15%,var(--surface-2));
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--app-color) 18%,transparent);
  font-size:23px; font-weight:950;
}
.app-card strong { display:block; font-size:12px; line-height:1.15; }
.app-card small { display:block; margin-top:3px; color:var(--muted); font-size:9px; }
.pin-button { position:absolute; top:6px; right:6px; width:27px; height:27px; border:0; border-radius:50%; background:transparent; color:var(--muted); cursor:pointer; opacity:0; }
.app-card:hover .pin-button,.pin-button.is-pinned { opacity:1; }
.pin-button.is-pinned { color:var(--brand); background:var(--surface-2); }
.right-rail { display:grid; gap:15px; }
.balance-card { padding:22px; border-radius:25px; background:linear-gradient(145deg,var(--brand),var(--brand-2)); color:#fff; box-shadow:var(--shadow); }
html[data-mode="dark"] .balance-card { color:#112018; }
.balance-card > span { opacity:.75; font-size:10px; text-transform:uppercase; letter-spacing:.1em; font-weight:850; }
.balance-card > strong { display:block; margin:7px 0 15px; font-size:28px; letter-spacing:-.04em; }
.balance-card > div { display:flex; justify-content:space-between; align-items:center; gap:10px; }
.balance-card button,.balance-card a { padding:8px 10px; border:0; border-radius:10px; background:var(--accent); color:var(--accent-ink); font-weight:850; cursor:pointer; text-decoration:none; }
.side-card,.activity-panel { padding:19px; border:1px solid var(--line); border-radius:24px; background:var(--surface); }
.side-heading { align-items:center; margin-bottom:15px; }
.side-heading h3 { margin:0; font-size:14px; }
.activity-item { display:grid; grid-template-columns:36px 1fr auto; gap:10px; align-items:start; }
.activity-item + .activity-item { margin-top:14px; }
.activity-item .mini-icon { width:36px; height:36px; }
.activity-item strong { display:block; font-size:11px; }
.activity-item p { margin:2px 0 0; color:var(--muted); font-size:9px; }
.activity-item time { color:var(--muted); font-size:9px; }
.system-stat { display:flex; align-items:baseline; gap:8px; padding:10px 0; border-top:1px solid var(--line); }
.system-stat strong { font-size:20px; }
.system-stat span { color:var(--muted); font-size:10px; }
.page-heading { max-width:760px; padding:24px 0 12px; }
.page-heading > p:not(.eyebrow) { color:var(--muted); }
.search-page-input { max-width:840px; height:64px; padding:0 19px; display:flex; align-items:center; gap:12px; border:1px solid var(--line); border-radius:20px; background:var(--surface); box-shadow:var(--shadow); }
.search-page-input span { font-size:25px; color:var(--brand); }
.search-page-input input { width:100%; border:0; outline:0; background:none; color:var(--text); font-size:17px; }
.search-suggestions { display:flex; flex-wrap:wrap; gap:7px; margin:15px 0 25px; }
.search-suggestions button { padding:8px 12px; border:1px solid var(--line); border-radius:999px; background:var(--surface-2); color:var(--muted); cursor:pointer; font-size:11px; }
.search-grid { grid-template-columns:repeat(5,1fr); }
.activity-panel { max-width:900px; margin-top:18px; }
.activity-panel .activity-item { grid-template-columns:44px 1fr auto; padding:10px; }
.profile-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:13px; margin-top:18px; }
.profile-card { min-height:190px; padding:22px; display:flex; flex-direction:column; text-align:left; border:1px solid var(--line); border-radius:24px; background:var(--surface); cursor:pointer; }
.profile-card > span { width:44px; height:44px; display:grid; place-items:center; border-radius:14px; background:var(--surface-2); color:var(--brand); font-size:20px; }
.profile-card strong { margin-top:auto; }
.profile-card p { margin:5px 0 0; color:var(--muted); font-size:11px; }
.account-panel { margin-top:18px; padding:24px; border:1px solid var(--line); border-radius:25px; background:var(--surface); }
.form-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:13px; }
.form-grid.compact { gap:9px; }
.account-panel label,.place-form label,.auth-form label { display:grid; gap:6px; color:var(--muted); font-size:11px; font-weight:780; }
.account-panel input,.place-form input,.place-form textarea,.auth-form input {
  width:100%; min-height:45px; padding:10px 12px; border:1px solid var(--line); border-radius:12px; outline:0; background:var(--surface-2); color:var(--text);
}
.place-form textarea { resize:vertical; }
.account-panel input:focus,.place-form input:focus,.place-form textarea:focus,.auth-form input:focus { border-color:var(--brand); box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 10%,transparent); }
.form-actions { display:flex; align-items:center; gap:12px; margin-top:16px; }
.signed-out-panel { max-width:760px; }
.signed-out-panel > p { color:var(--muted); }
.button.outline { border-color:var(--line); background:var(--surface-2); color:var(--text); }
.places-layout { display:grid; grid-template-columns:minmax(280px,390px) minmax(0,1fr); gap:17px; align-items:start; }
.place-form,.place-list-panel { padding:22px; border:1px solid var(--line); border-radius:24px; background:var(--surface); }
.place-form { display:grid; gap:13px; }
.place-kind { display:grid; grid-template-columns:repeat(3,1fr); gap:7px; }
.place-kind label { position:relative; min-width:0; display:block; }
.place-kind input { position:absolute; width:1px; height:1px; inset:50% auto auto 50%; opacity:0; pointer-events:none; }
.place-kind span { min-height:42px; display:grid; place-items:center; border:1px solid var(--line); border-radius:12px; background:var(--surface-2); cursor:pointer; }
.place-kind input:checked + span { border-color:var(--brand); background:var(--surface-3); color:var(--brand); }
.check-row { grid-template-columns:auto 1fr !important; align-items:center; }
.check-row input { width:18px; min-height:18px; }
.place-list { display:grid; gap:9px; }
.place-item { padding:15px; display:grid; grid-template-columns:42px 1fr auto; gap:12px; align-items:start; border:1px solid var(--line); border-radius:16px; background:var(--surface-2); }
.place-item > span { width:42px; height:42px; display:grid; place-items:center; border-radius:13px; background:var(--surface); color:var(--brand); font-size:18px; }
.place-item strong { display:block; }
.place-item p { margin:3px 0 0; color:var(--muted); font-size:10px; }
.place-item button { border:0; background:none; color:#c65d55; cursor:pointer; }
.empty-state { padding:30px 15px; text-align:center; color:var(--muted); border:1px dashed var(--line); border-radius:16px; }
.notification-actions { display:flex; justify-content:flex-end; margin-bottom:10px; }
.notification-list { display:grid; gap:8px; }
.notification-item { padding:14px; display:grid; grid-template-columns:39px 1fr auto; gap:11px; align-items:start; border:1px solid var(--line); border-radius:15px; background:var(--surface-2); }
.notification-item.is-unread { border-color:color-mix(in srgb,var(--brand) 38%,var(--line)); background:color-mix(in srgb,var(--accent) 8%,var(--surface)); }
.notification-item .mini-icon { width:39px; height:39px; }
.notification-item strong { display:block; font-size:12px; }
.notification-item p { margin:3px 0 0; color:var(--muted); font-size:10px; }
.notification-item button { border:0; background:none; color:var(--brand); cursor:pointer; font-size:10px; font-weight:850; }
.bottom-nav { display:none; }
.dialog-backdrop { position:fixed; z-index:70; inset:0; display:grid; place-items:end center; background:rgba(8,15,12,.43); backdrop-filter:blur(5px); }
.dialog-backdrop[hidden] { display:none; }
.dialog { width:min(960px,calc(100% - 24px)); max-height:84vh; padding:25px; overflow:auto; border-radius:28px 28px 0 0; background:var(--surface); box-shadow:0 -20px 70px rgba(0,0,0,.24); }
.dialog > header { position:sticky; top:-25px; z-index:2; padding:5px 0 15px; display:flex; align-items:center; justify-content:space-between; gap:15px; background:var(--surface); }
.dialog > header h2 { font-size:25px; }
.dialog-close { width:40px; height:40px; border:1px solid var(--line); border-radius:13px; background:var(--surface-2); cursor:pointer; font-size:20px; }
.category-filter { display:flex; flex-wrap:wrap; gap:7px; margin-bottom:18px; }
.category-filter button { padding:8px 12px; border:1px solid var(--line); border-radius:999px; background:var(--surface-2); color:var(--muted); cursor:pointer; font-size:11px; }
.category-filter button.is-active { background:var(--brand); color:var(--bg); border-color:var(--brand); }
.dialog-grid { grid-template-columns:repeat(6,1fr); }
.appearance-dialog { max-width:680px; }
.palette-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(135px,1fr)); gap:11px; }
.palette-option { padding:12px; text-align:left; border:2px solid var(--line); border-radius:18px; background:var(--surface-2); cursor:pointer; }
.palette-option.is-active { border-color:var(--brand); }
.palette-swatches { display:grid; grid-template-columns:1.4fr 1fr 1fr; height:38px; overflow:hidden; border-radius:11px; margin-bottom:8px; }
.palette-option strong,.palette-option small { display:block; }
.palette-option small { color:var(--muted); font-size:9px; }
.mode-toggle { width:100%; margin-top:18px; padding:17px 0 3px; display:flex; align-items:center; justify-content:space-between; border:0; border-top:1px solid var(--line); background:none; cursor:pointer; font-weight:850; }
.mode-toggle i { width:54px; height:30px; padding:3px; border-radius:99px; background:var(--surface-3); }
.mode-toggle i::after { content:"☀"; width:24px; height:24px; display:grid; place-items:center; border-radius:50%; background:var(--surface); color:var(--brand); font-size:11px; box-shadow:0 2px 7px rgba(0,0,0,.15); }
html[data-mode="dark"] .mode-toggle i::after { content:"☾"; transform:translateX(24px); }
.toast { position:fixed; z-index:90; left:50%; bottom:25px; padding:11px 16px; border-radius:13px; background:var(--text); color:var(--surface); opacity:0; visibility:hidden; transform:translate(-50%,14px); transition:.2s; font-size:11px; font-weight:850; box-shadow:var(--shadow); }
.toast.is-visible { opacity:1; visibility:visible; transform:translate(-50%,0); }

.module-body { min-height:100vh; display:grid; place-items:center; padding:24px; }
.module-shell { width:min(720px,100%); padding:40px; border:1px solid var(--line); border-radius:32px; background:var(--surface); box-shadow:var(--shadow); }
.back-link { display:inline-block; margin-bottom:35px; color:var(--brand); font-weight:850; }
.module-icon { width:92px; height:92px; display:grid; place-items:center; border-radius:27px; background:color-mix(in srgb,var(--module-color) 16%,var(--surface-2)); color:var(--module-color); font-size:40px; font-weight:950; }
.module-status { display:inline-block; margin-top:24px; padding:5px 9px; border-radius:999px; background:var(--surface-3); color:var(--brand); font-size:10px; font-weight:900; text-transform:uppercase; }
.module-shell h1 { margin-top:12px; }
.module-shell > p { color:var(--muted); font-size:17px; }
.module-capabilities { display:flex; flex-wrap:wrap; gap:7px; margin:22px 0; }
.module-capabilities span { padding:8px 10px; border-radius:10px; background:var(--surface-2); font-size:11px; }
.module-note { padding:18px; border-radius:17px; background:var(--surface-2); }
.module-note p { margin:4px 0 0; color:var(--muted); font-size:12px; }

.auth-body { min-height:100vh; display:grid; place-items:center; padding:24px; }
.auth-shell { width:min(1080px,100%); min-height:650px; display:grid; grid-template-columns:1fr 1fr; overflow:hidden; border:1px solid var(--line); border-radius:32px; background:var(--surface); box-shadow:var(--shadow); }
.auth-brand-panel { padding:42px; display:flex; flex-direction:column; justify-content:space-between; background:linear-gradient(145deg,var(--brand),var(--brand-2)); color:#fff; }
html[data-mode="dark"] .auth-brand-panel { color:#102018; }
.auth-brand-panel .brand-name { color:inherit; }
.auth-brand-panel .eyebrow { color:inherit; opacity:.7; }
.auth-brand-panel h1 { font-size:51px; }
.auth-brand-panel > div > p:last-child { max-width:470px; opacity:.78; }
.auth-brand-panel > small { opacity:.65; }
.auth-form-panel { padding:48px; align-self:center; }
.auth-form-panel h2 { font-size:34px; }
.auth-note { color:var(--muted); }
.auth-form { display:grid; gap:13px; margin-top:24px; }
.form-errors,.field-error { color:#c5524d; font-size:10px; }
.password-tools { display:flex; flex-wrap:wrap; gap:7px; }
.password-tools button { border:0; background:var(--surface-2); color:var(--brand); padding:8px 10px; border-radius:9px; cursor:pointer; font-size:10px; font-weight:850; }
.password-feedback { margin:0; color:var(--muted); font-size:10px; }
.password-feedback[data-score="4"] { color:#32845e; }
.auth-submit { width:100%; margin-top:5px; }
.auth-switch { margin:18px 0 0; color:var(--muted); font-size:11px; text-align:center; }
.auth-switch a { color:var(--brand); font-weight:850; }
.demo-access { margin-top:16px; border:1px solid var(--line); border-radius:18px; background:var(--surface-2); overflow:hidden; }
.demo-access > summary { min-height:58px; padding:10px 14px; display:flex; align-items:center; justify-content:space-between; gap:12px; cursor:pointer; list-style:none; color:var(--brand); }
.demo-access > summary::-webkit-details-marker { display:none; }
.demo-access > summary span,.demo-access > summary b,.demo-access > summary small { display:block; }
.demo-access > summary b { font-size:11px; }
.demo-access > summary small { margin-top:2px; color:var(--muted); font-size:8px; font-weight:700; }
.demo-access > summary i { font-style:normal; transition:transform .18s ease; }
.demo-access[open] > summary i { transform:rotate(180deg); }
.demo-access-note { margin:0 12px 9px; padding:9px 10px; display:flex; align-items:center; gap:9px; border-radius:12px; background:color-mix(in srgb,var(--accent) 13%,var(--surface)); }
.demo-access-note span { flex:0 0 auto; color:var(--brand); font-size:7px; font-weight:950; letter-spacing:.08em; }
.demo-access-note p { margin:0; color:var(--muted); font-size:8px; line-height:1.4; }
.demo-account-grid { max-height:286px; padding:0 12px 2px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; overflow:auto; overscroll-behavior:contain; }
.demo-account-card { min-width:0; padding:10px; display:grid; grid-template-columns:35px minmax(0,1fr); gap:8px; align-items:center; border:1px solid var(--line); border-radius:14px; background:var(--surface); }
.demo-account-card.is-superadmin { border-color:color-mix(in srgb,#d49a32 52%,var(--line)); background:color-mix(in srgb,#ffefc8 30%,var(--surface)); }
.demo-account-icon { display:grid; place-items:center; width:35px; height:35px; border-radius:50%; background:var(--brand); color:var(--surface); font-size:10px; font-weight:950; }
.demo-account-copy { min-width:0; }
.demo-account-copy strong,.demo-account-copy small,.demo-account-copy em { display:block; overflow:hidden; text-overflow:ellipsis; }
.demo-account-copy strong { font-size:10px; white-space:nowrap; }
.demo-account-copy small { color:var(--brand); font-size:7px; }
.demo-account-copy em { height:24px; margin-top:3px; color:var(--muted); font-size:7px; line-height:1.35; font-style:normal; }
.demo-account-card button { grid-column:1/-1; min-height:38px; border:0; border-radius:10px; background:var(--surface-2); color:var(--brand); font:inherit; font-size:8px; font-weight:900; cursor:pointer; }
.demo-account-card button:hover { background:var(--brand); color:var(--surface); }
.demo-admin-warning { margin:9px 14px 12px; color:var(--muted); font-size:7px; line-height:1.4; }

.is-concierge-app .topbar { height:64px; padding-block:8px; grid-template-columns:220px 1fr; }
.is-concierge-app .topbar .global-search { display:none; }
.is-concierge-app .desktop-shell { width:100%; grid-template-columns:72px minmax(0,1fr); gap:12px; padding:12px 14px 28px; }
.is-concierge-app .right-rail { display:none; }
.is-concierge-app .rail-link { padding:0; justify-content:center; font-size:0; }
.is-concierge-app .rail-link span { font-size:21px; }
.is-concierge-app .rail-location { display:none; }
.concierge-app-view { --chat-green:#17845b; --chat-green-soft:#e6f7ef; min-width:0; }
.concierge-appbar { min-height:58px; padding:0 4px 10px; display:flex; align-items:center; justify-content:space-between; gap:16px; }
.concierge-app-brand { display:flex; align-items:center; gap:11px; min-width:0; }
.concierge-app-brand > span,.concierge-owner-avatar { position:relative; display:grid; place-items:center; flex:0 0 44px; width:44px; height:44px; border-radius:50%; background:linear-gradient(145deg,var(--brand),var(--brand-2)); color:#fff; font-size:11px; font-weight:950; box-shadow:0 7px 20px color-mix(in srgb,var(--brand) 22%,transparent); }
.concierge-app-brand strong,.concierge-app-brand small { display:block; }
.concierge-app-brand strong { font-size:15px; }
.concierge-app-brand small { margin-top:2px; color:var(--muted); font-size:9px; }
.concierge-appbar-actions { display:flex; align-items:center; gap:13px; }
.concierge-live { display:flex; align-items:center; gap:7px; color:var(--brand); font-size:10px; font-weight:900; }
.concierge-live i,.concierge-owner-avatar i { width:8px; height:8px; border-radius:50%; background:#36ad6f; box-shadow:0 0 0 4px color-mix(in srgb,#36ad6f 16%,transparent); }
.concierge-owner-avatar i { position:absolute; right:1px; bottom:2px; border:2px solid var(--surface); box-shadow:none; }
.concierge-layout { position:relative; height:clamp(630px,calc(100dvh - 162px),860px); min-height:0; display:grid; grid-template-columns:minmax(275px,320px) minmax(390px,1fr) minmax(300px,350px); overflow:hidden; border:1px solid var(--line); border-radius:24px; background:var(--surface); box-shadow:0 20px 60px rgba(20,44,36,.12); }
.concierge-inbox,.concierge-chat,.concierge-plan-panel { min-width:0; min-height:0; background:var(--surface); }
.concierge-inbox { position:relative; display:flex; flex-direction:column; border-right:1px solid var(--line); }
.concierge-inbox-head { min-height:76px; padding:16px 18px 9px; display:flex; justify-content:space-between; align-items:center; }
.concierge-inbox-head h1 { margin:0; font-size:24px; line-height:1.1; letter-spacing:-.04em; }
.concierge-inbox-head > span { display:grid; place-items:center; min-width:26px; height:26px; padding:0 7px; border-radius:999px; background:var(--chat-green); color:#fff; font-size:9px; font-weight:900; }
.concierge-search { height:43px; margin:5px 13px 9px; padding:0 13px; display:flex; align-items:center; gap:8px; border:1px solid transparent; border-radius:999px; background:var(--surface-2); color:var(--muted); }
.concierge-search:focus-within { border-color:color-mix(in srgb,var(--chat-green) 55%,var(--line)); box-shadow:0 0 0 3px color-mix(in srgb,var(--chat-green) 12%,transparent); }
.concierge-search input { width:100%; min-width:0; border:0; outline:0; background:transparent; color:var(--text); font:inherit; font-size:11px; }
.concierge-filters { display:flex; gap:6px; padding:0 13px 10px; overflow:auto; scrollbar-width:none; }
.concierge-filters::-webkit-scrollbar { display:none; }
.inbox-filter { min-height:34px; padding:0 12px; border:1px solid var(--line); border-radius:999px; background:var(--surface); color:var(--muted); font:inherit; font-size:9px; font-weight:850; white-space:nowrap; cursor:pointer; }
.inbox-filter.is-active { border-color:transparent; color:#0f6346; background:var(--chat-green-soft); }
html[data-mode="dark"] .inbox-filter.is-active { color:var(--brand); background:color-mix(in srgb,var(--brand) 18%,var(--surface)); }
.concierge-inbox-list { flex:1; min-height:0; overflow:auto; padding:2px 8px 12px; }
.concierge-thread { position:relative; width:100%; min-height:72px; display:grid; grid-template-columns:48px minmax(0,1fr) auto; gap:10px; align-items:center; padding:10px; border:0; border-radius:15px; background:transparent; color:var(--text); text-align:left; cursor:pointer; }
.concierge-thread:hover,.concierge-thread.is-active { background:var(--surface-2); }
.concierge-thread.is-active::before { content:""; position:absolute; left:0; top:20%; bottom:20%; width:3px; border-radius:99px; background:var(--chat-green); }
.concierge-thread-icon { position:relative; display:grid; place-items:center; width:48px; height:48px; border-radius:50%; background:linear-gradient(145deg,color-mix(in srgb,var(--brand) 85%,#fff),var(--brand)); color:#fff; font-size:10px; font-weight:950; }
.concierge-thread-icon i { position:absolute; right:1px; bottom:2px; width:11px; height:11px; border:2px solid var(--surface); border-radius:50%; background:var(--chat-green); }
.concierge-thread > span:nth-child(2) { min-width:0; }
.concierge-thread small,.concierge-thread strong,.concierge-thread em { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.concierge-thread small { color:var(--muted); font-size:7px; font-weight:850; text-transform:uppercase; letter-spacing:.04em; }
.concierge-thread strong { margin:3px 0 2px; font-size:11px; }
.concierge-thread.is-unread strong { font-weight:950; }
.concierge-thread em { color:var(--muted); font-size:9px; font-style:normal; }
.concierge-thread time { align-self:start; padding-top:6px; color:var(--muted); font-size:7px; }
.concierge-thread.is-unread time { color:var(--chat-green); font-weight:900; }
.concierge-thread-aside { align-self:stretch; display:flex; flex-direction:column; align-items:flex-end; justify-content:space-between; }
.concierge-thread-aside > b { min-width:20px; height:20px; padding:0 5px; display:grid; place-items:center; border-radius:999px; background:var(--chat-green); color:#fff; font-size:8px; }
.thread-receipt { margin-right:4px; color:var(--muted); font-size:8px; font-weight:950; letter-spacing:-.12em; }
.thread-receipt.is-read { color:#1685e5; }
.thread-labels { display:flex; gap:3px; margin-top:5px; }
.thread-labels b { padding:2px 6px; border-radius:999px; background:var(--chat-green-soft); color:#0f6346; font-size:6px; }
.concierge-mobile-new { display:none; }
.concierge-chat { position:relative; display:flex; flex-direction:column; background-color:color-mix(in srgb,var(--bg) 62%,var(--surface)); background-image:radial-gradient(color-mix(in srgb,var(--brand) 7%,transparent) .8px,transparent .8px); background-size:18px 18px; }
.concierge-chat-head,.concierge-detail-head { min-height:68px; padding:10px 14px; display:flex; align-items:center; gap:11px; border-bottom:1px solid var(--line); background:color-mix(in srgb,var(--surface) 95%,transparent); backdrop-filter:blur(18px); }
.concierge-chat-head .concierge-owner-avatar { width:42px; height:42px; flex-basis:42px; }
.concierge-chat-identity { min-width:0; flex:1; }
.concierge-chat-identity strong,.concierge-chat-identity small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.concierge-chat-identity strong { font-size:12px; }
.concierge-chat-identity small { margin-top:2px; color:var(--chat-green); font-size:8px; }
.concierge-head-action,.concierge-pane-back { display:grid; place-items:center; width:44px; height:44px; flex:0 0 44px; border:0; border-radius:50%; background:transparent; color:var(--brand); font:inherit; font-size:17px; cursor:pointer; }
.concierge-head-action:hover,.concierge-pane-back:hover { background:var(--surface-2); }
.concierge-pane-back { display:none; font-size:30px; line-height:1; }
.concierge-messages { flex:1; min-height:0; overflow:auto; padding:20px clamp(16px,4vw,42px); display:flex; flex-direction:column; gap:8px; }
.concierge-trust { max-width:520px; margin:8px auto 0; display:flex; gap:11px; align-items:center; padding:13px 15px; border:1px solid color-mix(in srgb,var(--chat-green) 22%,var(--line)); border-radius:18px; background:color-mix(in srgb,var(--surface) 93%,transparent); box-shadow:0 8px 24px rgba(20,44,36,.06); }
.concierge-trust > span { display:grid; place-items:center; flex:0 0 36px; height:36px; border-radius:50%; background:var(--chat-green); color:#fff; }
.concierge-trust p { margin:0; color:var(--muted); font-size:10px; line-height:1.45; }
.concierge-trust strong { color:var(--text); }
.concierge-empty { margin:auto; max-width:370px; padding:22px; text-align:center; color:var(--muted); }
.concierge-empty > span { display:grid; place-items:center; width:50px; height:50px; margin:0 auto 12px; border-radius:50%; background:var(--chat-green-soft); color:var(--chat-green); font-size:20px; }
.concierge-empty strong { display:block; color:var(--text); font-size:16px; }
.concierge-empty p { margin:7px 0 12px; font-size:10px; }
.concierge-empty button { min-height:38px; padding:0 13px; border:0; border-radius:999px; background:var(--surface); color:var(--chat-green); font:inherit; font-size:9px; font-weight:900; cursor:pointer; box-shadow:0 5px 18px rgba(20,44,36,.08); }
.concierge-message { position:relative; max-width:min(76%,520px); padding:9px 12px 7px; border-radius:18px 18px 18px 5px; background:var(--surface); font-size:11px; line-height:1.52; box-shadow:0 3px 12px rgba(20,44,36,.07); }
.concierge-message.is-user { align-self:flex-end; border-radius:18px 18px 5px 18px; background:#dff7ea; color:#10271f; }
html[data-mode="dark"] .concierge-message.is-user { background:color-mix(in srgb,var(--brand) 34%,var(--surface)); color:var(--text); }
.concierge-message.is-system { align-self:center; max-width:92%; padding:7px 11px; border-radius:999px; background:color-mix(in srgb,var(--surface) 88%,transparent); color:var(--muted); font-size:8px; text-align:center; box-shadow:none; }
.concierge-message small { display:block; margin-bottom:3px; color:var(--chat-green); font-size:7px; font-weight:900; }
.concierge-message-time { display:block; margin-top:3px; opacity:.58; font-size:7px; text-align:right; }
.concierge-message-meta { margin-top:4px; display:flex; align-items:center; justify-content:flex-end; gap:5px; }
.concierge-message-meta .concierge-message-time { margin:0; }
.concierge-message-reply { width:24px; height:24px; padding:0; display:grid; place-items:center; border:0; border-radius:50%; background:transparent; color:var(--muted); cursor:pointer; opacity:.58; }
.concierge-message:hover .concierge-message-reply,.concierge-message-reply:focus-visible { background:color-mix(in srgb,var(--surface-3) 75%,transparent); opacity:1; }
.concierge-reply-quote { margin:1px 0 7px; padding:6px 8px; border:0; border-left:3px solid var(--chat-green); border-radius:7px; background:color-mix(in srgb,var(--surface-2) 72%,transparent); color:var(--muted); font-size:9px; line-height:1.35; }
.concierge-reply-quote small { margin:0 0 2px; }
.concierge-receipt { display:inline-flex; align-items:center; gap:3px; color:color-mix(in srgb,var(--muted) 82%,transparent); font-size:9px; font-weight:950; letter-spacing:-.12em; }
.concierge-receipt b { width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.concierge-receipt.is-read { color:#1685e5; }
.concierge-receipt.is-sending { letter-spacing:0; }
.concierge-receipt.is-failed { color:#bc3c35; letter-spacing:0; }
.concierge-message.is-failed { outline:1px solid color-mix(in srgb,#bc3c35 45%,transparent); }
.concierge-message-retry { padding:2px 5px; border:0; border-radius:999px; background:transparent; color:#a6342f; font:850 8px/1 system-ui; cursor:pointer; }
.concierge-day-divider { align-self:stretch; display:flex; justify-content:center; margin:6px 0 2px; }
.concierge-day-divider span { padding:5px 9px; border-radius:999px; background:color-mix(in srgb,var(--surface) 88%,transparent); color:var(--muted); box-shadow:0 2px 8px rgba(20,44,36,.05); font-size:7px; font-weight:850; text-transform:capitalize; }
.concierge-typing { align-self:flex-start; min-width:55px; min-height:34px; padding:0 13px; display:flex; align-items:center; gap:4px; border-radius:18px 18px 18px 5px; background:var(--surface); box-shadow:0 3px 12px rgba(20,44,36,.07); }
.concierge-typing span { width:6px; height:6px; border-radius:50%; background:var(--muted); animation:concierge-typing 1.1s infinite ease-in-out; }
.concierge-typing span:nth-child(2) { animation-delay:.16s; }.concierge-typing span:nth-child(3) { animation-delay:.32s; }
@keyframes concierge-typing { 0%,60%,100%{transform:translateY(0);opacity:.45}30%{transform:translateY(-4px);opacity:1} }
.concierge-network-state { padding:6px 12px; background:#fff1cf; color:#73530e; font-size:9px; font-weight:800; text-align:center; }
.concierge-network-state[hidden] { display:none; }
.concierge-jump-latest { position:absolute; z-index:5; left:50%; bottom:84px; min-height:38px; padding:0 13px; display:flex; align-items:center; gap:7px; transform:translateX(-50%); border:1px solid var(--line); border-radius:999px; background:var(--surface); color:var(--brand); box-shadow:0 9px 24px rgba(20,44,36,.16); font:850 9px/1 system-ui; cursor:pointer; }
.concierge-jump-latest[hidden] { display:none; }
.concierge-jump-latest span { display:grid; place-items:center; width:22px; height:22px; border-radius:50%; background:var(--chat-green); color:#fff; }
.concierge-form { position:relative; padding:10px 12px max(10px,env(safe-area-inset-bottom)); display:grid; grid-template-columns:auto auto minmax(0,1fr) auto; gap:8px; align-items:end; border-top:1px solid var(--line); background:color-mix(in srgb,var(--surface) 94%,transparent); backdrop-filter:blur(18px); }
.concierge-reply-preview { grid-column:1/-1; min-width:0; padding:8px 9px; display:grid; grid-template-columns:28px minmax(0,1fr) 32px; align-items:center; gap:8px; border-left:3px solid var(--chat-green); border-radius:10px; background:var(--surface-2); }
.concierge-reply-preview[hidden] { display:none; }
.concierge-reply-preview > span { color:var(--chat-green); text-align:center; }
.concierge-reply-preview small,.concierge-reply-preview strong { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.concierge-reply-preview small { color:var(--chat-green); font-size:7px; }.concierge-reply-preview strong { margin-top:2px; font-size:9px; }
.concierge-reply-preview button { width:32px; height:32px; border:0; border-radius:50%; background:var(--surface); color:var(--muted); cursor:pointer; }
.concierge-input-wrap { min-width:0; }
.concierge-form textarea { width:100%; min-height:44px; max-height:132px; resize:none; overflow:auto; padding:12px 15px; border:1px solid var(--line); border-radius:22px; background:var(--surface-2); color:var(--text); font:inherit; font-size:11px; outline:none; }
.concierge-form textarea:focus { border-color:var(--chat-green); box-shadow:0 0 0 3px color-mix(in srgb,var(--chat-green) 13%,transparent); }
.concierge-form > small { grid-column:3; margin:0 4px; color:var(--muted); font-size:7px; }
.concierge-photo-preview { grid-column:1/-1; min-width:0; padding:7px; display:grid; grid-template-columns:42px minmax(0,1fr) 34px; align-items:center; gap:8px; border:1px solid var(--line); border-radius:14px; background:var(--surface-2); }
.concierge-photo-preview[hidden] { display:none; }
.concierge-photo-preview img { width:42px; height:42px; object-fit:cover; border-radius:10px; }
.concierge-photo-preview strong,.concierge-photo-preview small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.concierge-photo-preview strong { font-size:9px; }.concierge-photo-preview small { color:var(--muted); font-size:7px; }
.concierge-photo-preview button { width:32px; height:32px; border:0; border-radius:50%; background:var(--surface); color:var(--muted); cursor:pointer; }
.concierge-attachment-preview { padding:4px; display:flex; gap:6px; overflow-x:auto; scroll-snap-type:x proximity; }
.concierge-attachment-preview[hidden] { display:none; }
.concierge-attachment-preview article { min-width:min(210px,78vw); padding:6px; display:grid; grid-template-columns:42px minmax(0,1fr) 32px; align-items:center; gap:7px; border:1px solid var(--line); border-radius:12px; background:var(--surface-2); scroll-snap-align:start; }
.concierge-attachment-preview article > span { width:42px; height:42px; display:grid; place-items:center; border-radius:10px; background:var(--chat-green-soft); color:var(--chat-green); font-size:17px; }
.concierge-share-sheet { position:absolute; z-index:12; left:8px; right:8px; bottom:calc(100% + 8px); max-height:min(430px,62dvh); padding:12px; overflow:auto; border:1px solid var(--line); border-radius:20px; background:var(--surface); box-shadow:0 22px 60px rgba(13,31,25,.24); }
.concierge-share-sheet[hidden] { display:none; }
.concierge-share-sheet > header { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:11px; }
.concierge-share-sheet > header small,.concierge-share-sheet > header strong { display:block; }.concierge-share-sheet > header small { color:var(--chat-green); font-size:7px; font-weight:900; }.concierge-share-sheet > header strong { margin-top:2px; font-size:12px; }
.concierge-share-sheet > header button { width:34px; height:34px; border:0; border-radius:50%; background:var(--surface-2); color:var(--muted); cursor:pointer; }
.concierge-share-actions { display:grid; grid-template-columns:repeat(3,1fr); gap:7px; }
.concierge-share-actions label,.concierge-share-actions button { min-width:0; min-height:96px; padding:10px 7px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:3px; border:1px solid var(--line); border-radius:16px; background:var(--surface-2); color:var(--text); text-align:center; cursor:pointer; }
.concierge-share-actions label > span,.concierge-share-actions button > span { width:38px; height:38px; display:grid; place-items:center; margin-bottom:3px; border-radius:50%; color:#fff; font-size:16px; }.concierge-share-actions .is-gallery{background:#8b5cf6}.concierge-share-actions .is-location{background:#2386e7}.concierge-share-actions .is-place{background:#25a56d}
.concierge-share-actions strong { font-size:8px; }.concierge-share-actions small { color:var(--muted); font-size:7px; }
.concierge-maps-field { margin-top:8px; padding:7px 8px 7px 11px; display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:8px; border:1px solid var(--line); border-radius:14px; background:var(--surface-2); }
.concierge-maps-field > span { color:var(--muted); font-size:7px; font-weight:850; }.concierge-maps-field input { min-width:0; border:0; outline:0; background:transparent; color:var(--text); font:inherit; font-size:9px; }.concierge-maps-field button { min-height:34px; border:0; border-radius:999px; padding:0 11px; background:var(--chat-green); color:#fff; font:850 8px/1 system-ui; cursor:pointer; }
.concierge-place-picker { margin-top:8px; display:grid; gap:5px; }.concierge-place-picker[hidden]{display:none}.concierge-place-picker > button { padding:8px; display:grid; grid-template-columns:34px minmax(0,1fr); align-items:center; gap:8px; border:1px solid var(--line); border-radius:12px; background:var(--surface-2); color:var(--text); text-align:left; cursor:pointer; }.concierge-place-picker > button > span { width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--chat-green-soft);color:var(--chat-green)}.concierge-place-picker strong,.concierge-place-picker small{display:block}.concierge-place-picker strong{font-size:9px}.concierge-place-picker small{margin-top:2px;color:var(--muted);font-size:7px}.concierge-place-picker p{margin:4px;color:var(--muted);font-size:8px}.concierge-place-picker a{color:var(--chat-green);font-size:8px;font-weight:850}
.concierge-message-attachments { display:grid; gap:5px; margin:1px -4px 7px; }.concierge-message-attachments.is-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.concierge-media { min-width:0; overflow:hidden; border-radius:13px; background:#101612; }.concierge-media img,.concierge-media video { display:block; width:100%; max-height:300px; object-fit:cover; }.concierge-media.is-video small { padding:5px 7px; color:#fff; font-size:7px; }.concierge-location-card { min-width:230px; padding:9px; display:grid; grid-template-columns:40px minmax(0,1fr) 18px; align-items:center; gap:8px; border:1px solid color-mix(in srgb,var(--chat-green) 28%,var(--line)); border-radius:13px; background:var(--surface-2); color:var(--text); text-decoration:none; }.concierge-location-card > span { width:40px;height:40px;display:grid;place-items:center;border-radius:50%;background:#2386e7;color:#fff;font-size:17px}.concierge-location-card.is-place > span{background:#25a56d}.concierge-location-card small,.concierge-location-card strong,.concierge-location-card em{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.concierge-location-card small{color:var(--chat-green);font-size:6px;font-weight:900}.concierge-location-card strong{margin-top:2px;font-size:9px}.concierge-location-card em{margin-top:2px;color:var(--muted);font-size:7px;font-style:normal}.concierge-location-card>b{color:var(--muted);font-size:17px}
.voice-button,.concierge-send { display:grid; place-items:center; min-width:44px; width:44px; height:44px; padding:0; border:0; border-radius:50%; background:var(--surface-2); color:var(--chat-green); font:inherit; font-size:14px; font-weight:900; cursor:pointer; }
.voice-button span { display:none; }
.voice-button.is-listening { background:#fbe6e3; color:#a4312a; }
.concierge-send { background:var(--chat-green); color:#fff; box-shadow:0 6px 16px color-mix(in srgb,var(--chat-green) 28%,transparent); }
.concierge-plan-panel { padding:0 16px 18px; overflow:auto; border-left:1px solid var(--line); }
.concierge-detail-head { position:sticky; z-index:2; top:0; margin:0 -16px 14px; justify-content:space-between; }
.concierge-detail-head > strong { font-size:11px; }
.concierge-detail-head .concierge-pane-back { display:none; }
.concierge-owner-card { padding:10px 4px 16px; display:flex; align-items:center; gap:12px; }
.concierge-owner-card .concierge-owner-avatar { width:52px; height:52px; flex-basis:52px; }
.concierge-owner-card h2 { margin:2px 0; font-size:15px; }
.concierge-owner-card small { color:var(--muted); font-size:8px; }
.concierge-status-card { padding:13px; display:flex; align-items:center; justify-content:space-between; gap:10px; border-radius:16px; background:var(--surface-2); }
.concierge-status-card small,.concierge-status-card strong { display:block; }
.concierge-status-card small { color:var(--muted); font-size:7px; text-transform:uppercase; }
.concierge-status-card strong { margin-top:3px; font-size:10px; }
.concierge-status-card > span { color:var(--brand); font-size:11px; font-weight:900; }
.concierge-progress { display:grid; grid-template-columns:repeat(6,1fr); gap:4px; margin:12px 1px 16px; }
.concierge-progress span { height:4px; border-radius:999px; background:var(--line); }
.concierge-progress span.is-done { background:var(--chat-green); }
.concierge-organize { display:grid; gap:7px; margin:0 0 18px; padding:10px; border-radius:14px; background:var(--surface-2); }
.concierge-organize > div { display:flex; gap:5px; flex-wrap:wrap; }
.concierge-organize button { min-height:32px; border:0; border-radius:999px; padding:0 10px; background:var(--surface); color:var(--brand); font:inherit; font-size:7px; font-weight:900; cursor:pointer; }
.concierge-labels small { color:var(--muted); font-size:8px; }
.concierge-plan-heading { margin:0 2px 10px; }
.concierge-plan-heading h2 { font-size:16px; }
.concierge-plan { display:grid; gap:9px; }
.concierge-task { border:1px solid var(--line); border-radius:17px; padding:13px; background:var(--surface-2); }
.concierge-task header { display:flex; gap:9px; align-items:center; }
.concierge-task .app-icon { width:36px; height:36px; flex:0 0 36px; border-radius:11px; font-size:14px; }
.concierge-task h3 { margin:0; font-size:12px; }
.concierge-task p { margin:8px 0; color:var(--muted); font-size:9px; line-height:1.45; }
.concierge-quote { display:flex; justify-content:space-between; gap:8px; margin:8px 0; font-size:8px; }
.concierge-quote strong { color:var(--brand); }
.step-actions { display:flex; gap:7px; }
.step-actions button { border:0; border-radius:10px; padding:8px 10px; cursor:pointer; font-size:9px; font-weight:900; }
.step-confirm { background:var(--brand); color:white; }
.step-skip { background:var(--surface); color:var(--muted); }
.step-status { display:inline-flex; padding:6px 9px; border-radius:999px; background:color-mix(in srgb,var(--accent) 18%,var(--surface)); color:var(--brand); font-size:9px; font-weight:900; }
.concierge-safety { margin:16px 0 0; padding:12px; display:flex; gap:8px; border-radius:14px; background:var(--chat-green-soft); color:#315e4d; font-size:8px; line-height:1.5; }
.concierge-safety span { font-weight:950; }
.client-work-project { margin:0 0 16px; padding:13px; border:1px solid color-mix(in srgb,var(--brand) 26%,var(--line)); border-radius:18px; background:linear-gradient(145deg,color-mix(in srgb,var(--brand) 8%,var(--surface)),var(--surface)); }
.client-work-project[hidden] { display:none; }
.client-work-head { display:flex; align-items:start; justify-content:space-between; gap:10px; }.client-work-head h3{margin:2px 0 0;font-size:14px}.client-work-head>span{padding:5px 8px;border-radius:999px;background:var(--chat-green-soft);color:var(--chat-green);font-size:7px;font-weight:900;white-space:nowrap}.client-work-summary{margin:8px 0;color:var(--muted);font-size:9px;line-height:1.45}.client-work-progress{padding:9px;border-radius:13px;background:var(--surface-2)}.client-work-progress>div{display:flex;justify-content:space-between;font-size:8px}.client-work-progress>i,.client-workstreams article>span{display:block;height:6px;margin:7px 0;border-radius:999px;background:var(--line);overflow:hidden}.client-work-progress>i>b,.client-workstreams article>span>i{display:block;height:100%;border-radius:inherit;background:var(--chat-green)}.client-work-progress>small{color:var(--muted);font-size:7px}.client-work-next{margin-top:8px;padding:9px;border-left:3px solid var(--brand);border-radius:11px;background:var(--surface-2)}.client-work-next small,.client-work-next strong,.client-work-next span{display:block}.client-work-next small{color:var(--brand);font-size:6px;font-weight:900}.client-work-next strong{margin-top:3px;font-size:9px}.client-work-next span{margin-top:2px;color:var(--muted);font-size:7px}.client-work-decision{margin-top:9px;padding:10px;border:1px solid color-mix(in srgb,var(--accent) 45%,var(--line));border-radius:14px;background:var(--surface)}.client-work-decision>header{display:flex;gap:8px}.client-work-decision>header>span{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--accent);color:#18200f;font-weight:950}.client-work-decision header small,.client-work-decision header strong{display:block}.client-work-decision header small{color:var(--brand);font-size:6px;font-weight:900}.client-work-decision header strong{margin-top:2px;font-size:9px}.client-work-decision>p{margin:7px 0;color:var(--muted);font-size:8px}.client-work-decision>a{display:inline-block;margin-bottom:7px;color:var(--brand);font-size:8px;font-weight:850}.client-work-actions,.client-work-options{display:flex;flex-wrap:wrap;gap:5px}.client-work-actions button,.client-work-options button{min-height:34px;padding:6px 10px;border:1px solid var(--line);border-radius:999px;background:var(--surface-2);color:var(--text);font:850 8px/1.15 system-ui;cursor:pointer}.client-work-actions button.is-approve{border-color:var(--chat-green);background:var(--chat-green);color:#fff}.client-work-options button{flex:1 1 120px;border-radius:11px;text-align:left}.client-work-options span,.client-work-options small{display:block}.client-work-options small{margin-top:2px;color:var(--muted);font-weight:500}.client-workstreams{margin-top:9px}.client-workstreams summary{color:var(--brand);font-size:8px;font-weight:850;cursor:pointer}.client-workstreams>div{display:grid;gap:5px;margin-top:7px}.client-workstreams article{display:grid;grid-template-columns:42px minmax(0,1fr);gap:2px 7px;align-items:center}.client-workstreams article>span{grid-row:1/3;margin:0}.client-workstreams strong{font-size:8px}.client-workstreams small{color:var(--muted);font-size:7px}.client-work-budget{margin-top:9px;padding-top:8px;display:grid;grid-template-columns:1fr auto;border-top:1px solid var(--line)}.client-work-budget span,.client-work-budget strong{font-size:8px}.client-work-budget small{grid-column:1/-1;margin-top:2px;color:var(--muted);font-size:7px}
.concierge-staff { margin-top:22px; padding:18px; border:1px solid var(--line); border-radius:25px; background:var(--surface); }
.concierge-staff > header { display:flex; justify-content:space-between; align-items:center; }
.concierge-staff > header > div:last-child { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:7px; }
.concierge-staff h2 { margin:3px 0; }
.concierge-staff > header p { margin:3px 0; color:var(--muted); font-size:10px; }
.staff-offline-intake { margin-top:12px; padding:10px 12px; border:1px solid var(--line); border-radius:14px; background:var(--surface-2); }
.staff-offline-intake summary { color:var(--brand); font-size:9px; font-weight:900; cursor:pointer; }
.staff-offline-intake form { display:grid; grid-template-columns:130px 1fr 1fr; gap:7px; margin-top:9px; }
.staff-offline-intake input,.staff-offline-intake select,.staff-offline-intake textarea { min-height:39px; border:1px solid var(--line); border-radius:10px; background:var(--surface); color:var(--text); padding:8px; font:inherit; }
.staff-offline-intake textarea,.staff-offline-intake button { grid-column:1/-1; }
.concierge-staff-grid { display:grid; grid-template-columns:270px minmax(0,1fr); gap:14px; margin-top:15px; }
.concierge-staff-filters { display:flex; gap:4px; margin-bottom:7px; overflow:auto; }
.concierge-staff-filters button { border:0; border-radius:999px; padding:7px 9px; background:var(--surface-2); color:var(--muted); font-size:8px; font-weight:900; cursor:pointer; }
.concierge-staff-filters button.is-active { background:var(--brand); color:white; }
.concierge-staff-queue { display:grid; gap:5px; max-height:700px; overflow:auto; }
.staff-case { display:grid; padding:11px; border:1px solid transparent; border-radius:14px; background:var(--surface-2); color:var(--text); text-align:left; cursor:pointer; }
.staff-case.is-active { border-color:var(--accent); }
.staff-case small,.staff-case span { color:var(--muted); font-size:8px; }
.staff-case strong { margin:4px 0; font-size:10px; }
.staff-case.is-unread strong::after { content:' · nuevo'; color:#c54d45; }
.concierge-staff-detail { min-height:310px; padding:15px; border-radius:17px; background:var(--surface-2); }
.concierge-staff-detail > header { display:flex; justify-content:space-between; gap:15px; }
.concierge-staff-detail h3 { margin:4px 0; }
.concierge-staff-detail p { color:var(--muted); font-size:9px; line-height:1.45; }
.staff-case-actions { display:flex; gap:7px; margin:10px 0; }
.staff-case-actions select,.staff-message-form textarea,.staff-task-form input,.staff-task-form select,.staff-task-form textarea { min-height:40px; border:1px solid var(--line); border-radius:10px; background:var(--surface); color:var(--text); padding:9px; font:inherit; }
.staff-conversation { max-height:250px; overflow:auto; display:grid; gap:6px; margin:10px 0; }
.staff-conversation > div { padding:8px 10px; border-radius:11px; background:var(--surface); }
.staff-conversation > div.is-internal { border-left:3px solid #d9a425; background:#fff8dd; }
.staff-conversation small { color:var(--muted); font-size:7px; font-weight:900; }
.staff-conversation p { margin:3px 0 0; }
.staff-message-meta { margin-top:5px; display:flex; align-items:center; justify-content:flex-end; gap:5px; color:var(--muted); font-size:7px; }
.staff-message-meta button { width:26px; height:26px; border:0; border-radius:50%; background:transparent; color:var(--muted); cursor:pointer; }
.staff-message-meta button:hover,.staff-message-meta button:focus-visible { background:var(--surface-2); color:var(--brand); }
.staff-reply-quote { margin:5px 0 3px; padding:6px 8px; border-left:3px solid var(--brand); border-radius:7px; background:var(--surface-2); color:var(--muted); font-size:8px; }
.staff-reply-quote small { display:block; margin-bottom:2px; color:var(--brand); }
.staff-reply-preview { grid-column:1/-1; min-width:0; padding:7px 9px; display:grid; grid-template-columns:minmax(0,1fr) 30px; align-items:center; gap:8px; border-left:3px solid var(--brand); border-radius:9px; background:var(--surface-2); }
.staff-reply-preview[hidden] { display:none; }
.staff-reply-preview small,.staff-reply-preview strong { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.staff-reply-preview small { color:var(--brand); font-size:7px; }.staff-reply-preview strong { margin-top:2px; font-size:9px; }
.staff-reply-preview button { width:30px; height:30px; border:0; border-radius:50%; background:var(--surface); color:var(--muted); cursor:pointer; }
.staff-customer-typing p { display:flex; gap:4px; }
.staff-customer-typing p span { width:6px; height:6px; border-radius:50%; background:var(--muted); animation:concierge-typing 1.1s infinite ease-in-out; }
.staff-customer-typing p span:nth-child(2) { animation-delay:.16s; }.staff-customer-typing p span:nth-child(3) { animation-delay:.32s; }
.staff-message-form { display:grid; grid-template-columns:minmax(0,1fr) auto auto; gap:7px; align-items:end; }
.staff-message-form label { font-size:8px; }
.staff-task-list { margin-top:14px; }
.staff-task-list article { display:flex; justify-content:space-between; gap:12px; padding:8px 0; border-top:1px solid var(--line); }
.staff-task-list article strong,.staff-task-list article small,.staff-task-list article p { display:block; margin:2px 0; font-size:8px; }
.staff-task-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; margin-top:9px; }
.staff-task-form textarea,.staff-task-form button { grid-column:1/-1; }
.staff-collaboration,.staff-rag-panel,.staff-shared-work,.staff-payment-panel { margin-top:14px; padding:13px; border:1px solid var(--line); border-radius:15px; background:var(--surface); }
.staff-collaboration > header,.staff-rag-panel > header,.staff-shared-work > header,.staff-payment-panel > header { display:flex; justify-content:space-between; align-items:start; gap:10px; margin-bottom:9px; }
.staff-collaboration header small,.staff-rag-panel header small,.staff-shared-work header small,.staff-payment-panel header small { color:var(--brand); font-size:7px; font-weight:950; letter-spacing:.1em; }
.staff-collaboration h4,.staff-rag-panel h4,.staff-shared-work h4,.staff-payment-panel h4 { margin:2px 0; }
.staff-collaboration header > span,.staff-rag-panel header > span,.staff-payment-panel header > span { max-width:210px; color:var(--muted); font-size:8px; text-align:right; }
.staff-assignment-form,.staff-rag-form { display:grid; grid-template-columns:180px minmax(0,1fr) auto; gap:7px; margin-top:8px; }
.staff-action-form,.staff-payment-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; }
.staff-assignment-form input,.staff-assignment-form select,.staff-rag-form input,.staff-rag-form select,.staff-action-form input,.staff-action-form select,.staff-action-form textarea,.staff-payment-form input,.staff-payment-form select { min-height:40px; padding:9px; border:1px solid var(--line); border-radius:10px; background:var(--surface-2); color:var(--text); font:inherit; }
.staff-action-form textarea,.staff-action-form button,.staff-payment-form button { grid-column:1/-1; }
.staff-payment-form label { display:flex; align-items:center; gap:6px; min-height:40px; padding:8px; border-radius:10px; background:var(--surface-2); font-size:8px; }
.staff-assignment-list article,.staff-payment-row { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:8px 0; border-top:1px solid var(--line); }
.staff-assignment-list article b { max-width:45%; color:var(--muted); font-size:8px; font-weight:500; }
.staff-assignment-list strong,.staff-assignment-list small,.staff-assignment-list p,.staff-payment-row strong,.staff-payment-row small,.staff-payment-row p { display:block; margin:2px 0; font-size:8px; }
.staff-ai-draft { margin-top:9px; padding:11px; border:1px solid color-mix(in srgb,var(--brand) 35%,var(--line)); border-radius:13px; background:var(--surface-2); }
.staff-ai-draft > header { display:flex; justify-content:space-between; gap:12px; }
.staff-ai-draft > header small,.staff-ai-draft > header strong { display:block; font-size:8px; }
.staff-ai-draft > header span { color:var(--brand); font-size:8px; font-weight:900; white-space:nowrap; }
.staff-ai-evidence { display:grid; grid-template-columns:1fr 1fr; gap:7px; margin:8px 0; }
.staff-ai-evidence > div { padding:8px; border-radius:10px; background:var(--surface); }
.staff-ai-evidence b,.staff-ai-evidence span { display:block; font-size:7px; }
.staff-ai-evidence span { margin-top:3px; color:var(--muted); }
.staff-ai-draft details { margin:7px 0; font-size:8px; }
.staff-ai-draft textarea { width:100%; min-height:92px; padding:9px; border:1px solid var(--line); border-radius:10px; background:var(--surface); color:var(--text); font:inherit; }
.staff-ai-draft > div:last-child { display:flex; gap:7px; margin-top:7px; }
.staff-selection { margin:9px 0; padding:10px; border-radius:12px; background:var(--surface-2); }
.staff-selection header { display:flex; justify-content:space-between; gap:10px; }
.staff-selection small,.staff-selection strong { display:block; font-size:8px; }
.staff-selection p { margin:7px 0; }
.concierge-shared-action { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:10px; padding:12px; border:1px solid var(--line); border-radius:17px; background:var(--surface-2); }
.concierge-shared-action small,.concierge-shared-action strong { display:block; font-size:9px; }
.concierge-shared-action p { margin:4px 0 0; }
.concierge-shared-action a { padding:8px 10px; border-radius:10px; background:var(--brand); color:var(--bg); font-size:8px; font-weight:900; }
.concierge-message:has(.concierge-interactive-card) { width:min(94%,620px); max-width:min(94%,620px); padding:8px; background:color-mix(in srgb,var(--surface) 96%,var(--chat-green-soft)); }
.concierge-interactive-card { overflow:hidden; border:1px solid color-mix(in srgb,var(--chat-green) 28%,var(--line)); border-radius:19px; background:var(--surface); color:var(--text); box-shadow:0 12px 34px rgba(20,44,36,.11); text-align:left; }
.concierge-interactive-card > header { min-height:62px; display:grid; grid-template-columns:42px minmax(0,1fr) auto; align-items:center; gap:10px; padding:11px 13px; background:linear-gradient(135deg,color-mix(in srgb,var(--chat-green-soft) 70%,var(--surface)),var(--surface)); }
.concierge-interactive-card .app-icon { width:42px; height:42px; display:grid; place-items:center; border-radius:14px; background:color-mix(in srgb,var(--app-color) 14%,var(--surface)); color:var(--app-color); font-size:14px; font-weight:950; }
.concierge-interactive-card > header small,.concierge-interactive-card > header h3 { display:block; margin:0; }
.concierge-interactive-card > header small { color:var(--chat-green); font-size:7px; letter-spacing:.06em; }
.concierge-interactive-card > header h3 { margin-top:2px; font-size:13px; line-height:1.25; }
.concierge-interactive-card > header > b { width:27px; height:27px; display:grid; place-items:center; border-radius:50%; background:var(--chat-green-soft); color:var(--chat-green); font-size:11px; }
.concierge-interactive-card > p { margin:0; padding:0 13px 10px; color:var(--muted); font-size:9px; line-height:1.45; }
.concierge-card-form { display:grid; gap:12px; padding:0 13px 12px; }
.concierge-card-field { min-width:0; margin:0; padding:0; border:0; }
.concierge-card-field legend,.concierge-card-field > strong { display:block; margin-bottom:6px; color:var(--text); font-size:9px; font-weight:900; }
.concierge-card-field legend b { color:var(--chat-green); font-size:7px; }
.concierge-card-field > small { margin:5px 2px 0; color:var(--muted); font-size:7px; line-height:1.35; }
.concierge-card-field :is(input:not([type="radio"]):not([type="checkbox"]),textarea) { width:100%; min-height:40px; padding:9px 11px; border:1px solid var(--line); border-radius:11px; background:var(--surface-2); color:var(--text); font:inherit; font-size:9px; outline:none; box-sizing:border-box; }
.concierge-card-field textarea { min-height:72px; resize:vertical; }
.concierge-card-field :is(input,textarea):focus { border-color:var(--chat-green); box-shadow:0 0 0 3px color-mix(in srgb,var(--chat-green) 12%,transparent); }
.concierge-card-choices { display:flex; flex-wrap:wrap; gap:6px; }
.concierge-card-choices label { position:relative; cursor:pointer; }
.concierge-card-choices input { position:absolute; opacity:0; pointer-events:none; }
.concierge-card-choices span { min-height:33px; display:inline-flex; align-items:center; padding:0 10px; border:1px solid var(--line); border-radius:999px; background:var(--surface-2); color:var(--muted); font-size:8px; font-weight:850; transition:.16s ease; }
.concierge-card-choices input:checked + span { border-color:var(--chat-green); background:var(--chat-green-soft); color:#0e6546; box-shadow:inset 0 0 0 1px var(--chat-green); }
html[data-mode="dark"] .concierge-card-choices input:checked + span { color:var(--text); background:color-mix(in srgb,var(--chat-green) 22%,var(--surface)); }
.concierge-card-choices input:focus-visible + span { outline:3px solid color-mix(in srgb,var(--chat-green) 32%,transparent); outline-offset:2px; }
.concierge-card-actions { display:flex; align-items:center; gap:7px; padding-top:2px; }
.concierge-card-actions button,.concierge-card-actions a { min-height:39px; display:inline-flex; align-items:center; justify-content:center; padding:0 13px; border-radius:11px; font:900 8px/1 system-ui; text-decoration:none; cursor:pointer; }
.concierge-card-actions button { flex:1; border:0; background:var(--chat-green); color:#fff; }
.concierge-card-actions button:disabled { opacity:.58; cursor:wait; }
.concierge-card-actions a { border:1px solid var(--line); color:var(--brand); background:var(--surface-2); }
.concierge-interactive-card > footer { display:flex; align-items:center; gap:6px; padding:8px 12px; border-top:1px solid var(--line); background:var(--surface-2); color:var(--muted); }
.concierge-interactive-card > footer small { flex:1; margin:0; color:inherit; font-size:7px; font-weight:600; }
.concierge-interactive-card > footer em { color:var(--chat-green); font-size:7px; font-style:normal; font-weight:900; }
.concierge-interactive-card.is-completed { border-color:color-mix(in srgb,#3e9c71 55%,var(--line)); }
.concierge-card-summary { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; padding:0 13px 12px; }
.concierge-card-summary span { padding:9px; border-radius:11px; background:var(--surface-2); }
.concierge-card-summary small,.concierge-card-summary strong { display:block; margin:0; }
.concierge-card-summary small { color:var(--muted); font-size:7px; }.concierge-card-summary strong { margin-top:2px; font-size:9px; }
.staff-url-field { grid-column:1/-1; display:grid; gap:4px; color:var(--muted); font-size:8px; font-weight:850; }
.staff-card-preview { grid-column:1/-1; min-height:58px; padding:10px; border:1px dashed var(--line); border-radius:13px; background:var(--surface-2); color:var(--muted); }
.staff-card-preview.is-loading { opacity:.65; }
.staff-card-preview.is-ready { border-style:solid; border-color:color-mix(in srgb,var(--chat-green) 35%,var(--line)); background:color-mix(in srgb,var(--chat-green-soft) 45%,var(--surface-2)); }
.staff-card-preview.is-error { border-style:solid; border-color:#d38d82; background:#fff2ef; color:#873e36; }
html[data-mode="dark"] .staff-card-preview.is-error { background:#3b2725; color:#ffd6cf; }
.staff-card-preview > header { display:grid; grid-template-columns:34px minmax(0,1fr) auto; align-items:center; gap:8px; }
.staff-card-preview > header > span { width:34px; height:34px; display:grid; place-items:center; border-radius:10px; background:color-mix(in srgb,var(--app-color) 16%,var(--surface)); color:var(--app-color); font-weight:950; }
.staff-card-preview > header small,.staff-card-preview > header strong,.staff-card-preview.is-error > * { display:block; }
.staff-card-preview > header small { color:var(--chat-green); font-size:7px; }.staff-card-preview > header strong { font-size:9px; }
.staff-card-preview > p { margin:7px 0; font-size:8px; }.staff-card-preview > div { display:flex; flex-wrap:wrap; gap:4px; }.staff-card-preview > div span { padding:4px 7px; border-radius:999px; background:var(--surface); color:var(--muted); font-size:7px; }
.concierge-payment-card { padding:13px; border:1px solid color-mix(in srgb,var(--brand) 40%,var(--line)); border-radius:17px; background:var(--surface); }
.concierge-payment-card.is-paid { border-color:#4c9873; }
.concierge-payment-card > header { display:flex; justify-content:space-between; gap:12px; }
.concierge-payment-card > header small,.concierge-payment-card > header h3 { display:block; margin:2px 0; font-size:9px; }
.concierge-payment-card > header > strong { color:var(--brand); font-size:15px; }
.concierge-payment-breakdown { display:grid; margin:9px 0; border-block:1px solid var(--line); }
.concierge-payment-breakdown span { display:flex; justify-content:space-between; gap:10px; padding:6px 0; font-size:8px; }
.concierge-payment-breakdown i { color:var(--muted); font-style:normal; }
.concierge-payment-foot { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.concierge-payment-foot button { min-height:36px; padding:0 11px; border:0; border-radius:10px; background:var(--brand); color:var(--bg); cursor:pointer; font-size:8px; font-weight:900; }
html[data-mode="dark"] .staff-conversation > div.is-internal { background:#3a321d; color:#fff3c4; }

/* R32 · CRM de Encargos: cockpit inspirado en la jerarquía de Meta */
.staff-crm-mode .concierge-layout { display:none; }
.staff-crm-mode .concierge-app-view { height:auto; }
.crm-cockpit { height:calc(100dvh - 126px); min-height:0; margin-top:0; padding:10px; display:flex; flex-direction:column; overflow:hidden; border-radius:22px; }
.crm-cockpit-head { flex:0 0 auto; }
.crm-cockpit-head h2 { font-size:20px; letter-spacing:-.025em; }
.crm-pro-head { min-height:52px; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:0 3px 8px; }
.crm-pro-head>div { display:flex; align-items:center; gap:9px; }.crm-pro-head>div:first-child { min-width:0; }.crm-pro-head>div:last-child { justify-content:flex-end; }
.crm-pro-mark { width:38px; height:38px; display:grid; place-items:center; border-radius:13px; background:linear-gradient(145deg,var(--brand),var(--brand-2)); color:#fff; font-size:9px; font-weight:950; }
.crm-pro-head h2,.crm-pro-head p { margin:0; }.crm-pro-head h2 { margin-top:1px; font-size:16px; }.crm-pro-head p:last-child { margin-top:1px; color:var(--muted); font-size:7px; }
.crm-pro-head .button { min-height:34px; padding:0 10px; font-size:8px; }
.crm-human-state { display:flex; align-items:center; gap:5px; color:var(--text); font-size:7px; font-weight:850; }.crm-human-state i { width:8px; height:8px; border-radius:50%; background:var(--chat-green); box-shadow:0 0 0 4px color-mix(in srgb,var(--chat-green) 15%,transparent); }
.crm-insights { flex:0 0 auto; margin-bottom:7px; border:1px solid var(--line); border-radius:14px; background:var(--surface-2); }
.crm-insights>summary { min-height:36px; display:flex; align-items:center; justify-content:space-between; padding:0 11px; list-style:none; cursor:pointer; }.crm-insights>summary::-webkit-details-marker { display:none; }.crm-insights>summary span,.crm-insights>summary b,.crm-insights>summary small { display:block; }.crm-insights>summary b { font-size:8px; }.crm-insights>summary small { margin-top:1px; color:var(--muted); font-size:6px; }.crm-insights>summary>i { color:var(--muted); font-size:11px; font-style:normal; transition:transform .18s ease; }.crm-insights[open]>summary>i { transform:rotate(180deg); }
.crm-insights .crm-metrics { margin:0; padding:7px 8px 0; }.crm-insights .crm-pipeline { margin:6px 8px 8px; }
.crm-metrics { flex:0 0 auto; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:8px; margin-top:12px; }
.crm-metrics article { min-height:72px; padding:11px 13px; display:flex; flex-direction:column; justify-content:center; border:1px solid var(--line); border-radius:15px; background:var(--surface-2); }
.crm-metrics span,.crm-metrics small { color:var(--muted); font-size:7px; font-weight:800; }
.crm-metrics strong { margin:3px 0; font-size:16px; letter-spacing:-.03em; }
.crm-metrics article:nth-child(2) strong { color:#26785a; }
.crm-metrics article:nth-child(3) strong { color:#c45145; }
.crm-pipeline { flex:0 0 auto; display:flex; gap:5px; margin:9px 0; overflow:auto; scrollbar-width:thin; }
.crm-pipeline button { min-width:max-content; min-height:34px; display:flex; align-items:center; gap:7px; padding:0 10px; border:1px solid var(--line); border-radius:999px; background:var(--surface); color:var(--muted); font:850 8px/1 system-ui; cursor:pointer; }
.crm-pipeline button b { min-width:20px; height:20px; display:grid; place-items:center; border-radius:999px; background:var(--surface-2); color:var(--text); font-size:7px; }
.crm-pipeline button.is-active { border-color:var(--brand); background:color-mix(in srgb,var(--brand) 9%,var(--surface)); color:var(--brand); }
.crm-toolbar { flex:0 0 auto; min-height:47px; display:grid; grid-template-columns:minmax(220px,1fr) auto auto auto; align-items:center; gap:8px; padding:7px; border:1px solid var(--line); border-radius:16px; background:var(--surface-2); }
.crm-search { height:35px; display:flex; align-items:center; gap:7px; padding:0 10px; border:1px solid var(--line); border-radius:11px; background:var(--surface); }
.crm-search span { color:var(--muted); }
.crm-search input { width:100%; border:0; outline:0; background:transparent; color:var(--text); font:inherit; font-size:9px; }
.crm-smart-queues { display:flex; gap:3px; max-width:540px; overflow:auto; }
.crm-smart-queues button { min-width:max-content; min-height:31px; padding:0 9px; border:0; border-radius:9px; background:transparent; color:var(--muted); font:850 7px system-ui; cursor:pointer; }
.crm-smart-queues button.is-active { background:var(--surface); color:var(--brand); box-shadow:0 2px 8px rgba(20,40,34,.07); }
.crm-mine { min-width:max-content; display:flex; align-items:center; gap:5px; color:var(--muted); font-size:8px; font-weight:850; }
.crm-toolbar .staff-offline-intake { position:relative; margin:0; padding:0; border:0; background:transparent; }
.crm-toolbar .staff-offline-intake summary { min-height:34px; display:grid; place-items:center; padding:0 10px; border-radius:10px; background:var(--brand); color:var(--bg); list-style:none; }
.crm-toolbar .staff-offline-intake form { position:absolute; z-index:20; right:0; top:42px; width:min(560px,80vw); padding:12px; border:1px solid var(--line); border-radius:15px; background:var(--surface); box-shadow:var(--shadow); }
.crm-cockpit .concierge-staff-grid { flex:1; min-height:0; grid-template-columns:300px minmax(0,1fr); margin-top:7px; }
.crm-queue-panel { min-height:0; display:flex; flex-direction:column; overflow:hidden; border:1px solid var(--line); border-radius:17px; background:var(--surface-2); }
.crm-queue-panel>header { min-height:48px; display:flex; align-items:center; justify-content:space-between; padding:9px 11px; border-bottom:1px solid var(--line); }
.crm-queue-panel>header strong,.crm-queue-panel>header small { display:block; font-size:8px; }
.crm-queue-panel>header small { margin-top:2px; color:var(--muted); }
.crm-queue-panel>header>span { color:#2d956e; font-size:8px; }
.crm-cockpit .concierge-staff-queue { flex:1; min-height:0; max-height:none; padding:6px; overflow:auto; }
.crm-cockpit .staff-case { position:relative; min-height:86px; grid-template-columns:44px minmax(0,1fr); gap:9px; padding:9px; border-radius:13px; background:transparent; }
.crm-cockpit .staff-case:hover,.crm-cockpit .staff-case.is-active { background:var(--surface); }
.crm-cockpit .staff-case.is-active { border-color:color-mix(in srgb,var(--brand) 32%,var(--line)); box-shadow:0 4px 14px rgba(20,40,34,.07); }
.staff-case-avatar { width:44px; height:44px; display:grid; place-items:center; border-radius:50%; background:linear-gradient(145deg,var(--brand),var(--brand-2)); color:#fff; font-size:11px; font-weight:950; }
.staff-case-copy { min-width:0; display:block; }
.staff-case-top { display:flex; align-items:center; justify-content:space-between; gap:5px; }
.staff-case-top small { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.staff-health { min-width:max-content; padding:3px 5px; border-radius:999px; background:var(--surface-3); font-size:6px!important; font-style:normal; font-weight:950; }
.staff-health.is-overdue { background:#ffe5e1; color:#a83e35; }
.staff-health.is-needs_reply,.staff-health.is-due_soon { background:#fff1cc; color:#80601d; }
html[data-mode="dark"] .staff-health.is-overdue { background:#48221f; color:#ffaaa0; }
html[data-mode="dark"] .staff-health.is-needs_reply,html[data-mode="dark"] .staff-health.is-due_soon { background:#45391d; color:#f4ce74; }
.crm-cockpit .staff-case strong { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.crm-cockpit .staff-case span { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.staff-case-next { margin-top:5px; color:var(--brand)!important; font-weight:850; }
.crm-cockpit .concierge-staff-detail { min-height:0; padding:0; overflow:hidden; border:1px solid var(--line); border-radius:17px; background:var(--surface-2); }
.staff-case-workspace { height:100%; min-height:0; display:grid; grid-template-columns:minmax(420px,1fr) 280px; }
.staff-case-center,.staff-case-sidebar { min-height:0; overflow:auto; padding:14px; }
.staff-case-sidebar { border-left:1px solid var(--line); background:var(--surface); }
.staff-case-title { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; padding-bottom:11px; border-bottom:1px solid var(--line); }
.staff-case-title h3 { font-size:16px; letter-spacing:-.02em; }
.staff-case-title>span { min-width:max-content; padding:6px 8px; border-radius:999px; background:var(--surface); font-size:7px; font-weight:850; }
.staff-primary-action { margin:10px 0; padding:11px; display:flex; align-items:center; justify-content:space-between; gap:10px; border-radius:14px; background:color-mix(in srgb,var(--brand) 9%,var(--surface)); }
.staff-primary-action small,.staff-primary-action strong { display:block; font-size:8px; }
.staff-primary-action strong { margin-top:3px; color:var(--brand); font-size:11px; }
.staff-conversation { max-height:280px; }
.staff-message-form { position:sticky; bottom:-14px; z-index:3; padding:8px; margin:0 -8px; border:1px solid var(--line); border-radius:15px; background:color-mix(in srgb,var(--surface) 94%,transparent); backdrop-filter:blur(18px); }
.crm-section-tabs { display:flex; gap:5px; margin:12px 0 5px; }
.crm-section-tabs button { min-height:31px; padding:0 9px; border:1px solid var(--line); border-radius:9px; background:var(--surface); color:var(--muted); font:850 7px system-ui; cursor:pointer; }
.crm-section-tabs button.is-active { background:var(--brand); color:var(--bg); }
.staff-case-center .crm-work-section[hidden] { display:none; }
.staff-work-empty{padding:20px;display:grid;grid-template-columns:54px minmax(0,1fr);gap:14px;border:1px dashed color-mix(in srgb,var(--brand) 45%,var(--line));border-radius:18px;background:var(--surface-2)}.staff-work-empty>span{width:54px;height:54px;display:grid;place-items:center;border-radius:17px;background:var(--brand);color:#fff;font-size:20px}.staff-work-empty h4{margin:3px 0;font-size:16px}.staff-work-empty p{margin:0;color:var(--muted);font-size:9px;line-height:1.5}.staff-work-project-create{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:7px}.staff-work-project-create textarea{grid-column:1/-1}.staff-work-project-create>div{display:grid;grid-template-columns:1fr 1fr;gap:7px}.staff-work-project-create button{grid-column:1/-1}.staff-work-project-create input,.staff-work-project-create textarea,.staff-work-project-create label input,.staff-work-project-update input,.staff-work-project-update textarea,.staff-work-project-update select,.staff-workstream-form input,.staff-workstream-form select,.staff-workstream-form textarea,.staff-work-item-form input,.staff-work-item-form select,.staff-work-item-form textarea{width:100%;min-height:38px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text);font:inherit;font-size:8px}.staff-workbench{display:grid;gap:10px}.staff-workbench-head{padding:13px;display:flex;justify-content:space-between;gap:15px;border-radius:16px;background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 18%,var(--surface)),var(--surface-2))}.staff-workbench-head h4{margin:2px 0;font-size:15px}.staff-workbench-head p{margin:3px 0 0;color:var(--muted);font-size:8px}.staff-work-progress{min-width:125px;text-align:right}.staff-work-progress>strong{font-size:22px}.staff-work-progress>span{display:block;width:125px;height:7px;margin:4px 0 4px auto;overflow:hidden;border-radius:999px;background:var(--line)}.staff-work-progress>span>i{display:block;height:100%;border-radius:inherit;background:var(--chat-green)}.staff-work-progress small{color:var(--muted);font-size:7px}.staff-work-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.staff-work-metrics article{padding:9px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.staff-work-metrics span,.staff-work-metrics strong{display:block}.staff-work-metrics span{color:var(--muted);font-size:7px}.staff-work-metrics strong{margin-top:3px;font-size:10px}.staff-work-settings{padding:9px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.staff-work-settings summary,.staff-work-events summary{font-size:8px;font-weight:850;cursor:pointer}.staff-work-project-update{margin-top:8px;display:grid;grid-template-columns:1.2fr 1.2fr repeat(4,1fr);gap:6px}.staff-work-project-update textarea{grid-column:1/3}.staff-work-project-update button{grid-column:5/7}.staff-work-board{display:grid;grid-template-columns:repeat(4,minmax(170px,1fr));gap:7px;overflow-x:auto}.staff-work-column{min-width:170px;padding:7px;border-radius:13px;background:var(--surface-2)}.staff-work-column>header{display:flex;justify-content:space-between;padding:3px 3px 7px;font-size:8px}.staff-work-column>header span{padding:2px 6px;border-radius:999px;background:var(--surface);color:var(--muted)}.staff-work-column>div{display:grid;gap:6px}.staff-work-card{padding:8px;border-left:3px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:0 3px 10px rgba(15,30,24,.06)}.staff-work-card.is-high,.staff-work-card.is-critical{border-left-color:#d05249}.staff-work-card div small,.staff-work-card div strong{display:block}.staff-work-card div small{color:var(--brand);font-size:6px;font-weight:900}.staff-work-card div strong{margin-top:2px;font-size:8px}.staff-work-card>p{margin:5px 0;color:var(--muted);font-size:7px;line-height:1.35}.staff-work-card>em{display:block;margin:4px 0;color:#a33c36;font-size:7px;font-style:normal}.staff-work-card>span{display:block;height:4px;margin:6px 0;border-radius:999px;background:var(--line);overflow:hidden}.staff-work-card>span>i{display:block;height:100%;background:var(--chat-green)}.staff-work-card footer{display:flex;align-items:center;justify-content:space-between;gap:5px}.staff-work-card footer small{color:var(--muted);font-size:6px}.staff-work-card footer select{max-width:90px;min-height:28px;border:1px solid var(--line);border-radius:7px;background:var(--surface-2);color:var(--text);font-size:6px}.staff-work-column-empty{margin:10px;color:var(--muted);font-size:7px;text-align:center}.staff-work-builders{display:grid;grid-template-columns:.75fr 1.25fr;gap:8px}.staff-workstream-form,.staff-work-item-form{padding:10px;display:grid;gap:6px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.staff-workstream-form header small,.staff-workstream-form header strong,.staff-work-item-form header small,.staff-work-item-form header strong{display:block}.staff-workstream-form header small,.staff-work-item-form header small{color:var(--brand);font-size:6px;font-weight:900}.staff-workstream-form header strong,.staff-work-item-form header strong{margin-top:2px;font-size:10px}.staff-work-item-form>.three{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.staff-work-item-form select[multiple]{min-height:75px}.staff-work-checks{display:flex;gap:12px}.staff-work-checks label{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:7px}.staff-work-checks input{width:auto;min-height:0}.staff-work-events{padding:9px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.staff-work-events ol{display:grid;gap:6px;margin:9px 0 0;padding:0;list-style:none}.staff-work-events li{display:grid;grid-template-columns:24px 1fr;gap:7px}.staff-work-events li>span{width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:var(--chat-green-soft);color:var(--chat-green)}.staff-work-events strong,.staff-work-events small{display:block}.staff-work-events strong{font-size:8px}.staff-work-events small{margin-top:2px;color:var(--muted);font-size:7px}
.staff-case-sidebar h4 { margin:3px 0 0; }
.crm-health-card { padding:11px; border-radius:14px; background:var(--surface-2); }
.crm-health-card>span { display:inline-flex; padding:4px 7px; border-radius:999px; background:var(--surface); color:var(--brand); font-size:7px; font-weight:950; }
.crm-health-card strong,.crm-health-card small { display:block; }
.crm-health-card strong { margin:7px 0 3px; font-size:11px; }
.crm-health-card small { color:var(--muted); font-size:8px; }
.crm-case-form { display:grid; gap:8px; margin-top:10px; }
.crm-case-form label { display:grid; gap:4px; color:var(--muted); font-size:7px; font-weight:850; }
.crm-case-form input,.crm-case-form select,.crm-case-form textarea { width:100%; min-height:38px; box-sizing:border-box; padding:8px; border:1px solid var(--line); border-radius:10px; background:var(--surface-2); color:var(--text); font:inherit; font-size:9px; }
.crm-case-form textarea { min-height:70px; resize:vertical; }
.crm-360 { margin-top:13px; padding-top:12px; border-top:1px solid var(--line); }
.crm-360-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:6px; }
.crm-360-grid div { padding:9px; border-radius:11px; background:var(--surface-2); }
.crm-360-grid span,.crm-360-grid strong { display:block; font-size:7px; }
.crm-360-grid strong { margin-top:3px; font-size:11px; }
.crm-360-list { display:flex; flex-wrap:wrap; gap:4px; margin-top:8px; }
.crm-360-list span { padding:5px 7px; border-radius:999px; background:var(--surface-2); color:var(--muted); font-size:7px; font-weight:800; }
.crm-capacity { margin-top:13px; padding-top:12px; border-top:1px solid var(--line); }
.crm-capacity-row { display:flex; align-items:center; justify-content:space-between; gap:8px; padding:7px 0; border-bottom:1px solid var(--line); }
.crm-capacity-row div { min-width:0; }
.crm-capacity-row strong,.crm-capacity-row small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:7px; }
.crm-capacity-row small { color:var(--muted); }
.crm-capacity-row b { min-width:25px; height:25px; display:grid; place-items:center; border-radius:50%; background:var(--surface-2); color:var(--brand); font-size:8px; }
.mission-control-head { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:10px; }
.mission-control-head>span { min-width:max-content; padding:5px 8px; border-radius:999px; background:color-mix(in srgb,var(--brand) 10%,var(--surface-2)); color:var(--brand); font-size:7px; font-weight:950; }
.mission-brief { padding:13px; border:1px solid color-mix(in srgb,var(--brand) 16%,var(--line)); border-radius:16px; background:linear-gradient(145deg,color-mix(in srgb,var(--brand) 8%,var(--surface)),var(--surface-2)); }
.mission-brief>small,.mission-brief>strong { display:block; }
.mission-brief>small { color:var(--brand); font-size:7px; font-weight:950; letter-spacing:.08em; }
.mission-brief>strong { margin-top:5px; font-size:12px; line-height:1.25; }
.mission-brief>div { display:grid; grid-template-columns:1fr 1fr; gap:6px; margin-top:12px; }
.mission-brief>div>span { min-width:0; padding-top:8px; border-top:1px solid var(--line); }
.mission-brief>div small,.mission-brief>div b { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.mission-brief>div small { color:var(--muted); font-size:7px; }
.mission-brief>div b { margin-top:2px; font-size:8px; }
.mission-control-form { gap:6px; margin-top:8px; }
.mission-panel { border:1px solid var(--line); border-radius:13px; background:var(--surface); overflow:hidden; }
.mission-panel summary { position:relative; min-height:48px; display:flex; align-items:center; padding:7px 34px 7px 11px; cursor:pointer; list-style:none; }
.mission-panel summary::-webkit-details-marker { display:none; }
.mission-panel summary::after { content:"⌄"; position:absolute; right:12px; top:50%; color:var(--muted); font-size:13px; transform:translateY(-50%); transition:transform .18s ease; }
.mission-panel[open] summary::after { transform:translateY(-50%) rotate(180deg); }
.mission-panel summary span,.mission-panel summary b,.mission-panel summary small { display:block; min-width:0; }
.mission-panel summary b { color:var(--text); font-size:9px; }
.mission-panel summary small { margin-top:2px; overflow:hidden; color:var(--muted); font-size:7px; text-overflow:ellipsis; white-space:nowrap; }
.mission-panel[open] summary { border-bottom:1px solid var(--line); background:var(--surface-2); }
.mission-fields { display:grid; gap:8px; padding:10px; }
.mission-fields .button { width:100%; min-height:36px; }
.mission-reference { margin-top:6px; }
.mission-reference .crm-360,.mission-reference .crm-capacity { margin:0; padding:10px; border-top:0; }
.mission-reference .crm-capacity-row:last-child { border-bottom:0; }
.staff-case-center { padding:0; display:grid; grid-template-rows:auto auto minmax(0,1fr); overflow:hidden; background:var(--surface-2); }
.staff-center-context { min-height:66px; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:9px 13px; border-bottom:1px solid var(--line); background:var(--surface); }
.staff-context-person { min-width:0; display:grid; grid-template-columns:42px minmax(0,1fr); align-items:center; gap:10px; }
.staff-context-person>span { width:42px; height:42px; display:grid; place-items:center; border-radius:50%; background:linear-gradient(145deg,var(--brand),var(--brand-2)); color:#fff; font-size:11px; font-weight:950; }
.staff-context-person small,.staff-context-person strong,.staff-context-person p { display:block; overflow:hidden; margin:0; text-overflow:ellipsis; white-space:nowrap; }
.staff-context-person small { color:var(--chat-green); font-size:7px; font-weight:850; }
.staff-context-person strong { margin-top:2px; font-size:11px; }
.staff-context-person p { margin-top:2px; color:var(--muted); font-size:8px; }
.staff-context-actions { display:flex; align-items:center; gap:7px; }
.staff-context-actions select { min-height:34px; max-width:150px; padding:0 8px; border:1px solid var(--line); border-radius:10px; background:var(--surface-2); color:var(--text); font-size:8px; font-weight:800; }
.staff-context-actions>span { width:32px; height:32px; display:grid; place-items:center; border-radius:50%; background:var(--brand); color:#fff; font-size:8px; font-weight:950; }
.staff-act-as { position:relative; }
.staff-act-as>summary { min-height:34px; display:flex; align-items:center; padding:0 12px; border:1px solid color-mix(in srgb,var(--brand) 35%,var(--line)); border-radius:10px; background:color-mix(in srgb,var(--brand) 8%,var(--surface)); color:var(--brand); font-size:8px; font-weight:900; list-style:none; cursor:pointer; white-space:nowrap; }
.staff-act-as>summary::-webkit-details-marker { display:none; }
.staff-act-as>summary::before { content:"↪"; margin-right:5px; font-size:10px; }
.staff-act-as[open]>summary { background:var(--brand); color:#fff; }
.staff-act-as-menu { position:absolute; z-index:70; top:42px; right:0; width:min(410px,calc(100vw - 34px)); max-height:min(510px,calc(100vh - 100px)); padding:12px; overflow:auto; border:1px solid var(--line); border-radius:17px; background:var(--surface); box-shadow:0 18px 60px rgba(9,29,23,.22); }
.staff-act-as-menu>header { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.staff-act-as-menu>header strong,.staff-act-as-menu>header small { display:block; }
.staff-act-as-menu>header strong { font-size:11px; }
.staff-act-as-menu>header small { margin-top:3px; color:var(--muted); font-size:7px; }
.staff-act-as-menu>header em { padding:4px 7px; border-radius:999px; background:color-mix(in srgb,var(--chat-green) 12%,var(--surface-2)); color:var(--chat-green); font-size:6px; font-style:normal; font-weight:900; white-space:nowrap; }
.staff-act-as-menu>p { margin:9px 0; color:var(--muted); font-size:8px; }
.staff-act-as-apps { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; }
.staff-act-as-apps button { min-width:0; display:grid; grid-template-columns:32px minmax(0,1fr); grid-template-rows:auto auto; column-gap:8px; padding:8px; border:1px solid var(--line); border-radius:12px; background:var(--surface-2); color:var(--text); text-align:left; cursor:pointer; }
.staff-act-as-apps button:hover,.staff-act-as-apps button:focus-visible { border-color:var(--brand); background:color-mix(in srgb,var(--brand) 7%,var(--surface)); outline:0; }
.staff-act-as-apps button:disabled { opacity:.55; cursor:wait; }
.staff-act-as-apps button>span { grid-row:1/3; width:32px; height:32px; display:grid; place-items:center; border-radius:10px; background:var(--assist-color); color:#fff; font-size:10px; font-weight:950; }
.staff-act-as-apps button>b,.staff-act-as-apps button>small { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.staff-act-as-apps button>b { align-self:end; font-size:8px; }
.staff-act-as-apps button>small { align-self:start; color:var(--muted); font-size:6px; }
.provider-network { min-height:100%; display:grid; grid-template-rows:auto auto auto minmax(340px,1fr); gap:8px; }
.provider-network-head { display:grid; grid-template-columns:minmax(0,1fr) minmax(230px,330px); gap:12px; padding:12px; border:1px solid var(--line); border-radius:17px; background:var(--surface); }
.provider-network-head>div>small { color:var(--chat-green); font-size:8px; font-weight:950; letter-spacing:.08em; }.provider-network-head h4{margin:3px 0;font-size:14px}.provider-network-head p{margin:0;color:var(--muted);font-size:10px}
.provider-outreach-new { align-self:start; border:1px solid var(--line); border-radius:13px; background:var(--surface-2); }.provider-outreach-new>summary{min-height:38px;display:flex;align-items:center;justify-content:center;padding:0 12px;color:var(--brand);font-size:8px;font-weight:900;list-style:none;cursor:pointer}.provider-outreach-new>summary::-webkit-details-marker{display:none}.provider-outreach-new[open]>summary{justify-content:flex-start;border-bottom:1px solid var(--line)}
.provider-outreach-form{display:grid;gap:7px;padding:9px}.provider-outreach-form>div{display:grid;grid-template-columns:1fr 1fr;gap:6px}.provider-outreach-form input,.provider-outreach-form select,.provider-outreach-form textarea{width:100%;min-height:38px;padding:7px 8px;box-sizing:border-box;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--text);font-size:10px}.provider-outreach-form textarea{min-height:58px;resize:vertical}.provider-outreach-form .button{width:100%}
.provider-directory-filters{display:grid;grid-template-columns:150px minmax(120px,1fr) 175px auto;gap:6px;padding:7px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2)}.provider-directory-filters input,.provider-directory-filters select{min-width:0;min-height:36px;padding:0 8px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--text);font-size:10px}.provider-directory-filters button{min-height:36px;padding:0 12px;border:0;border-radius:9px;background:var(--brand);color:var(--bg);font-size:9px;font-weight:900;cursor:pointer}
.provider-availability-summary{display:flex;align-items:center;gap:6px;padding:0 2px;overflow:auto}.provider-availability-summary span{display:flex;align-items:center;gap:4px;padding:5px 8px;border-radius:999px;background:var(--surface);color:var(--muted);font-size:7px;white-space:nowrap}.provider-availability-summary span b{color:var(--chat-green);font-size:9px}.provider-availability-summary small{margin-left:auto;color:var(--muted);font-size:6px;white-space:nowrap}
.provider-command{min-height:0;display:grid;grid-template-columns:235px minmax(0,1fr);overflow:hidden;border:1px solid var(--line);border-radius:17px;background:var(--surface)}.provider-directory{min-height:0;display:flex;flex-direction:column;border-right:1px solid var(--line);background:var(--surface-2)}.provider-directory>header{display:flex;justify-content:space-between;gap:6px;padding:9px 10px 6px}.provider-directory>header strong{font-size:8px}.provider-directory>header small{color:var(--muted);font-size:6px}.provider-directory>div{max-height:185px;padding:0 5px 6px;overflow:auto}.provider-directory>div:nth-of-type(2){flex:1;max-height:none}
.provider-live-card{margin:3px 0}.provider-live-card>button{width:100%;display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:7px;padding:7px;border:0;border-radius:12px;background:transparent;color:var(--text);text-align:left;cursor:pointer}.provider-live-card>button:hover{background:var(--surface)}.provider-live-card span:nth-child(2){min-width:0}.provider-live-card strong,.provider-live-card small,.provider-live-card em{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.provider-live-card strong{font-size:10px}.provider-live-card small{margin-top:2px;color:var(--muted);font-size:8px}.provider-live-card em{margin-top:3px;color:var(--muted);font-size:8px;font-style:normal;font-weight:800}.provider-live-card.is-success em{color:var(--chat-green)}.provider-live-card.is-warning em{color:#b37216}.provider-live-card>button>b{color:var(--muted);font-size:8px}.provider-avatar,.provider-channel>span:first-child,.provider-thread>header>span{position:relative;width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:var(--brand);color:#fff;font-size:8px;font-weight:950}.provider-avatar i,.provider-channel i,.provider-thread>header>span i{position:absolute;right:-2px;bottom:-2px;width:9px;height:9px;border:2px solid var(--surface);border-radius:50%;background:#89958f}.provider-avatar i.is-online,.provider-channel i.is-online,.provider-thread>header>span i.is-online{background:#35b879}
.provider-channel{width:100%;display:grid;grid-template-columns:34px minmax(0,1fr);gap:7px;margin:3px 0;padding:7px;border:0;border-radius:12px;background:transparent;color:var(--text);text-align:left;cursor:pointer}.provider-channel.is-active{background:var(--surface);box-shadow:0 3px 12px rgba(15,35,27,.06)}.provider-channel>span:nth-child(2){min-width:0}.provider-channel strong,.provider-channel small,.provider-channel em{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.provider-channel strong{font-size:10px}.provider-channel small{margin-top:2px;color:var(--muted);font-size:8px}.provider-channel em{margin-top:3px;color:var(--chat-green);font-size:8px;font-style:normal;font-weight:850}.provider-directory-zero{padding:12px;color:var(--muted);font-size:9px}
.provider-thread{min-width:0;min-height:0;display:grid;grid-template-rows:auto minmax(120px,1fr) auto auto}.provider-thread>header{min-height:54px;display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 11px;border-bottom:1px solid var(--line)}.provider-thread>header strong,.provider-thread>header small{display:block}.provider-thread>header strong{font-size:11px}.provider-thread>header small{margin-top:3px;color:var(--muted);font-size:8px}.provider-thread>header small.is-success{color:var(--chat-green)}.provider-thread>header>div:last-child{display:flex;gap:5px}.provider-thread>header a{padding:6px 8px;border:1px solid var(--line);border-radius:8px;color:var(--text);font-size:8px;font-weight:850;text-decoration:none}.provider-thread-messages{min-height:0;display:flex;flex-direction:column;gap:6px;padding:10px;overflow:auto;background:color-mix(in srgb,var(--brand) 3%,var(--surface))}.provider-thread-messages>p{margin:auto;color:var(--muted);font-size:10px}.provider-message{width:min(82%,480px);padding:8px 10px;border:1px solid var(--line);border-radius:13px 13px 13px 5px;background:var(--surface)}.provider-message.is-staff{align-self:flex-end;border:0;border-radius:13px 13px 5px 13px;background:color-mix(in srgb,var(--chat-green) 12%,var(--surface))}.provider-message.is-system{align-self:center;width:auto;border:0;background:transparent;color:var(--muted);text-align:center}.provider-message header{display:flex;justify-content:space-between;gap:8px}.provider-message header strong,.provider-message header time{font-size:8px}.provider-message header time,.provider-message small{color:var(--muted)}.provider-message p{margin:4px 0;font-size:10px;line-height:1.4}.provider-message small{display:block;font-size:7px;text-align:right}
.provider-quote{display:grid;grid-template-columns:repeat(3,1fr) auto;gap:5px;padding:7px;border-top:1px solid var(--line);background:var(--surface)}.provider-quote>div{padding:6px;border-radius:9px;background:var(--surface-2)}.provider-quote span,.provider-quote strong{display:block}.provider-quote span{color:var(--muted);font-size:5px}.provider-quote strong{margin-top:2px;font-size:7px}.provider-quote>p{grid-column:1/-1;margin:0;color:var(--muted);font-size:7px}.provider-quote>.button,.provider-selected{align-self:stretch;display:grid;place-items:center;min-height:32px;padding:0 9px;font-size:6px}.provider-selected{border-radius:9px;background:color-mix(in srgb,var(--chat-green) 12%,var(--surface));color:var(--chat-green)}
.provider-message-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;padding:7px;border-top:1px solid var(--line)}.provider-message-form textarea{min-height:42px;max-height:90px;padding:8px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2);color:var(--text);font:inherit;font-size:10px;resize:vertical}.provider-message-form button{min-width:68px;border:0;border-radius:10px;background:var(--brand);color:var(--bg);font-size:9px;font-weight:900;cursor:pointer}.provider-manual-response{padding:6px 8px;border-top:1px solid var(--line)}.provider-manual-response>summary{color:var(--muted);font-size:8px;font-weight:800;cursor:pointer}.provider-manual-response form{display:grid;gap:5px;margin-top:6px}.provider-manual-response form>div{display:grid;grid-template-columns:1fr 1fr;gap:5px}.provider-manual-response input,.provider-manual-response textarea{width:100%;min-height:34px;padding:6px;box-sizing:border-box;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);font-size:9px}.provider-manual-response textarea{min-height:44px}.provider-manual-response .button{min-height:34px;font-size:8px}
.provider-thread-empty,.provider-empty{display:grid;place-items:center;padding:24px;color:var(--muted);text-align:center}.provider-thread-empty>span{font-size:22px;color:var(--chat-green)}.provider-thread-empty strong,.provider-empty strong{margin-top:6px;color:var(--text);font-size:10px}.provider-thread-empty p,.provider-empty p{max-width:360px;margin:4px 0 0;font-size:8px}.provider-directory-loading{display:grid!important;gap:6px}.provider-directory-loading span{height:44px;border-radius:11px;background:linear-gradient(90deg,var(--surface),var(--surface-2),var(--surface));background-size:200% 100%;animation:provider-loading 1.3s infinite}@keyframes provider-loading{to{background-position:-200% 0}}
.staff-workspace-tabs { min-width:0; display:flex; gap:3px; padding:7px 10px; overflow-x:auto; border-bottom:1px solid var(--line); background:var(--surface); scrollbar-width:none; }
.staff-workspace-tabs::-webkit-scrollbar { display:none; }
.staff-workspace-tabs button { min-width:max-content; min-height:34px; display:flex; align-items:center; gap:5px; padding:0 10px; border:0; border-radius:10px; background:transparent; color:var(--muted); font:850 8px system-ui; cursor:pointer; }
.staff-workspace-tabs button>span { font-size:8px; color:var(--chat-green); }
.staff-workspace-tabs button>b { min-width:18px; height:18px; display:grid; place-items:center; border-radius:999px; background:var(--surface-2); font-size:6px; }
.staff-workspace-tabs button.is-active { background:color-mix(in srgb,var(--brand) 10%,var(--surface-2)); color:var(--brand); }
.staff-workspace-tabs button.is-active>b { background:var(--surface); }
.staff-case-center>.crm-work-section { min-height:0; padding:12px; overflow:auto; }
.staff-case-center>.crm-work-section[hidden] { display:none; }
.staff-client-workspace { display:grid; grid-template-rows:auto minmax(0,1fr) auto; gap:8px; overflow:hidden!important; }
.staff-client-workspace .staff-primary-action { margin:0; padding:9px 11px; }
.staff-client-workspace .staff-primary-action>div:last-child { display:flex; gap:6px; }
.staff-client-workspace .staff-conversation { min-height:0; max-height:none; margin:0; padding:12px; align-content:start; overflow:auto; border:1px solid var(--line); border-radius:16px; background:linear-gradient(155deg,color-mix(in srgb,var(--brand) 4%,var(--surface-2)),var(--surface)); }
.staff-client-workspace .staff-conversation>div { width:min(78%,520px); box-sizing:border-box; border:1px solid var(--line); border-radius:15px 15px 15px 5px; box-shadow:0 2px 7px rgba(15,35,27,.04); }
.staff-client-workspace .staff-conversation>div.is-concierge { justify-self:end; border:0; border-radius:15px 15px 5px 15px; background:color-mix(in srgb,var(--chat-green) 14%,var(--surface)); }
.staff-client-workspace .staff-conversation>div.is-system { width:auto; justify-self:center; padding:5px 9px; border:0; border-radius:999px; background:var(--surface-2); color:var(--muted); text-align:center; }
.staff-client-workspace .staff-conversation>div.is-system p { font-size:7px; }
.staff-client-workspace .staff-message-form { position:relative; bottom:auto; grid-template-columns:minmax(0,1fr) auto; margin:0; padding:7px; }
.staff-client-workspace .staff-message-form textarea { min-height:42px; max-height:100px; resize:vertical; border:0; outline:0; background:transparent; }
.specialist-workspace { min-height:100%; display:grid; grid-template-columns:210px minmax(0,1fr); overflow:hidden; border:1px solid var(--line); border-radius:17px; background:var(--surface); }
.specialist-channels { min-height:0; display:flex; flex-direction:column; padding:8px; overflow:auto; border-right:1px solid var(--line); background:var(--surface-2); }
.specialist-channels>header { display:flex; align-items:center; justify-content:space-between; padding:5px 4px 9px; }
.specialist-channels>header small,.specialist-channels>header strong { display:block; }
.specialist-channels>header small { color:var(--brand); font-size:6px; font-weight:950; letter-spacing:.08em; }
.specialist-channels>header strong { margin-top:2px; font-size:11px; }
.specialist-channels>header>span { min-width:22px; height:22px; display:grid; place-items:center; border-radius:50%; background:var(--surface); color:var(--brand); font-size:7px; font-weight:900; }
.specialist-channel { width:100%; display:grid; grid-template-columns:34px minmax(0,1fr); gap:7px; padding:8px; border:0; border-radius:12px; background:transparent; color:var(--text); text-align:left; cursor:pointer; }
.specialist-channel>span:first-child { width:34px; height:34px; display:grid; place-items:center; border-radius:11px; background:var(--brand); color:#fff; font-size:7px; font-weight:950; }
.specialist-channel strong,.specialist-channel small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.specialist-channel strong { font-size:8px; }.specialist-channel small { margin-top:2px; color:var(--muted); font-size:6px; }
.specialist-channel>i { grid-column:2; color:var(--brand); font-size:6px; font-style:normal; font-weight:850; }
.specialist-channel.is-active { background:var(--surface); box-shadow:0 3px 10px rgba(15,35,27,.06); }
.specialist-empty { padding:14px 6px; color:var(--muted); font-size:8px; line-height:1.5; }
.specialist-add { margin-top:auto; padding-top:8px; }.specialist-add summary { padding:8px; color:var(--brand); font-size:8px; font-weight:900; cursor:pointer; }
.specialist-add .staff-assignment-form { display:grid; grid-template-columns:1fr; gap:6px; padding:5px; }
.specialist-thread { min-width:0; min-height:0; display:grid; grid-template-rows:auto minmax(0,1fr) auto; }
.specialist-thread-head { min-height:56px; display:flex; align-items:center; justify-content:space-between; gap:10px; padding:8px 12px; border-bottom:1px solid var(--line); }
.specialist-thread-head>div { min-width:0; display:flex; align-items:center; gap:8px; }.specialist-thread-head>div>span { width:34px; height:34px; display:grid; place-items:center; border-radius:11px; background:color-mix(in srgb,var(--brand) 12%,var(--surface-2)); color:var(--brand); font-size:7px; font-weight:950; }
.specialist-thread-head strong,.specialist-thread-head small { display:block; }.specialist-thread-head strong { font-size:9px; }.specialist-thread-head small,.specialist-thread-head em { color:var(--muted); font-size:7px; font-style:normal; }
.specialist-thread-messages { min-height:0; display:flex; flex-direction:column; gap:7px; padding:12px; overflow:auto; background:color-mix(in srgb,var(--brand) 3%,var(--surface)); }
.specialist-message { width:min(82%,500px); padding:9px 11px; border:1px solid var(--line); border-radius:14px 14px 14px 5px; background:var(--surface); }
.specialist-message.is-specialist { align-self:flex-start; }.specialist-message.is-generalist { align-self:flex-end; border:0; border-radius:14px 14px 5px 14px; background:color-mix(in srgb,var(--brand) 11%,var(--surface)); }
.specialist-message header { display:flex; justify-content:space-between; gap:8px; }.specialist-message header strong,.specialist-message header time { font-size:7px; }.specialist-message header time { color:var(--muted); }.specialist-message p { margin:5px 0 0; font-size:9px; line-height:1.45; }
.staff-specialist-message-form { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:7px; padding:8px; border-top:1px solid var(--line); }.staff-specialist-message-form textarea { min-height:42px; max-height:100px; resize:vertical; padding:9px; border:1px solid var(--line); border-radius:11px; background:var(--surface-2); color:var(--text); font:inherit; }
.specialist-empty-state { min-height:100%; display:grid; place-content:center; justify-items:center; padding:24px; color:var(--muted); text-align:center; }.specialist-empty-state>span { width:48px; height:48px; display:grid; place-items:center; border-radius:16px; background:var(--surface-2); color:var(--brand); font-size:18px; }.specialist-empty-state strong { margin-top:10px; color:var(--text); font-size:11px; }.specialist-empty-state p { max-width:280px; margin:5px 0 0; font-size:8px; line-height:1.5; }
.miniapps-workspace { display:grid; gap:10px; }.miniapps-head { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:13px; border-radius:17px; background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 14%,var(--surface)),var(--surface)); }.miniapps-head h4 { margin:2px 0; font-size:14px; }.miniapps-head p { margin:3px 0 0; color:var(--muted); font-size:8px; }
.miniapps-rail { display:flex; gap:6px; padding:3px 1px 7px; overflow-x:auto; scrollbar-width:thin; }.miniapps-rail button { min-width:64px; display:grid; justify-items:center; gap:4px; padding:7px 5px; border:1px solid var(--line); border-radius:13px; background:var(--surface); color:var(--muted); cursor:pointer; }.miniapps-rail button:hover { border-color:var(--brand); color:var(--brand); }.miniapps-rail button span { width:32px; height:32px; display:grid; place-items:center; border-radius:10px; background:color-mix(in srgb,var(--miniapp-color) 14%,var(--surface-2)); color:var(--miniapp-color); font-size:12px; }.miniapps-rail button small { max-width:58px; overflow:hidden; font-size:6px; font-weight:800; text-overflow:ellipsis; white-space:nowrap; }
.miniapps-live { padding:11px; border:1px solid var(--line); border-radius:16px; background:var(--surface); }.miniapps-live>header { display:flex; justify-content:space-between; padding:0 2px 9px; }.miniapps-live>header strong { font-size:10px; }.miniapps-live>header span { color:var(--muted); font-size:7px; }.miniapps-live>div { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; }
.miniapp-live-card { min-width:0; padding:10px; border:1px solid var(--line); border-radius:14px; background:var(--surface-2); }.miniapp-live-card>header { display:grid; grid-template-columns:36px minmax(0,1fr) auto; align-items:center; gap:8px; }.miniapp-live-card>header>span { width:36px; height:36px; display:grid; place-items:center; border-radius:11px; background:color-mix(in srgb,var(--miniapp-color) 14%,var(--surface)); color:var(--miniapp-color); font-weight:950; }.miniapp-live-card header small,.miniapp-live-card header strong { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.miniapp-live-card header small { color:var(--muted); font-size:6px; }.miniapp-live-card header strong { margin-top:2px; font-size:9px; }.miniapp-live-card header i { padding:4px 6px; border-radius:999px; background:var(--surface); color:var(--brand); font-size:6px; font-style:normal; font-weight:900; }.miniapp-live-card>p { margin:8px 0; color:var(--muted); font-size:8px; line-height:1.4; }.miniapp-live-card>footer { display:flex; justify-content:space-between; gap:8px; padding-top:7px; border-top:1px solid var(--line); }.miniapp-live-card footer span,.miniapp-live-card footer a { overflow:hidden; font-size:7px; text-overflow:ellipsis; white-space:nowrap; }.miniapp-live-card footer a { color:var(--brand); font-weight:900; }
.miniapps-empty { grid-column:1/-1; display:grid; justify-items:center; padding:22px; color:var(--muted); text-align:center; }.miniapps-empty>span { font-size:22px; color:var(--brand); }.miniapps-empty strong { margin-top:5px; color:var(--text); font-size:10px; }.miniapps-empty p { margin:4px 0; font-size:8px; }.miniapp-builder,.miniapps-responses { padding:10px; border:1px solid var(--line); border-radius:14px; background:var(--surface); }.miniapp-builder>summary,.miniapps-responses>summary { font-size:8px; font-weight:900; cursor:pointer; }.miniapp-builder .staff-action-form { margin-top:9px; }
.staff-load-error { min-height:150px; display:grid; place-content:center; justify-items:center; gap:6px; padding:18px; color:var(--muted); text-align:center; }
.staff-load-error strong { color:var(--text); font-size:10px; }.staff-load-error small { max-width:280px; font-size:7px; line-height:1.45; }.staff-load-error button { min-height:34px; margin-top:5px; padding:0 12px; border:0; border-radius:10px; background:var(--brand); color:var(--bg); font-size:8px; font-weight:900; cursor:pointer; }

.skills-workspace { display:grid; gap:12px; }.skills-workspace>header { display:flex; justify-content:space-between; align-items:flex-start; gap:14px; padding:15px; border:1px solid color-mix(in srgb,var(--brand) 20%,var(--line)); border-radius:18px; background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 10%,var(--surface)),var(--surface)); }.skills-workspace>header h4 { margin:3px 0; font-size:16px; }.skills-workspace>header p { margin:0; color:var(--muted); font-size:10px; }.skills-workspace>header>span { padding:7px 10px; border-radius:999px; background:var(--surface); color:var(--brand); font-size:8px; font-weight:900; white-space:nowrap; }
.skill-columns { display:grid; grid-template-columns:minmax(250px,.85fr) minmax(320px,1.15fr); gap:12px; }.skill-columns>section { min-width:0; }.skill-columns h5 { margin:0 0 8px; color:var(--muted); font-size:9px; letter-spacing:.05em; text-transform:uppercase; }.skill-suggestions,.skill-runs { display:grid; gap:8px; }
.skill-suggestion,.skill-run { padding:12px; border:1px solid var(--line); border-radius:16px; background:var(--surface); }.skill-suggestion header { display:grid; grid-template-columns:36px minmax(0,1fr); gap:8px; align-items:center; }.skill-suggestion header>span { width:36px; height:36px; display:grid; place-items:center; border-radius:11px; background:color-mix(in srgb,var(--brand) 10%,var(--surface-2)); color:var(--brand); }.skill-suggestion strong,.skill-suggestion small { display:block; }.skill-suggestion strong { margin-top:2px; font-size:10px; }.skill-suggestion small { color:var(--muted); font-size:7px; }.skill-suggestion>p { margin:8px 0; color:var(--muted); font-size:8px; line-height:1.45; }.skill-suggestion>div { display:flex; flex-wrap:wrap; gap:4px; margin-bottom:9px; }.skill-suggestion>div span { padding:4px 6px; border-radius:7px; background:var(--surface-2); color:var(--muted); font-size:6px; }.skill-suggestion .button { min-height:34px; }
.skill-run { border-left:3px solid var(--brand); }.skill-run>header { display:flex; justify-content:space-between; gap:10px; }.skill-run header strong,.skill-run header small { display:block; }.skill-run header strong { margin-top:2px; font-size:11px; }.skill-run header small,.skill-run header>span { color:var(--muted); font-size:7px; }.skill-run ol { margin:10px 0; padding-left:20px; color:var(--muted); font-size:8px; line-height:1.6; }.skill-run footer { display:flex; gap:6px; }.skill-run .button { min-height:34px; }.skill-missing,.skill-result { padding:8px; border-radius:10px; font-size:8px; }.skill-missing { background:#fff4d9; color:#765116; }.skill-result { display:grid; gap:3px; background:#e8f5ee; color:#275e4b; }.skill-completion-form { display:grid; grid-template-columns:1fr 1fr; gap:6px; margin-top:10px; padding-top:10px; border-top:1px solid var(--line); }.skill-completion-form input,.skill-completion-form select { min-height:38px; padding:0 9px; border:1px solid var(--line); border-radius:10px; background:var(--surface-2); color:var(--text); font:inherit; font-size:8px; }.skill-completion-form label { display:flex; align-items:center; gap:6px; color:var(--muted); font-size:8px; }.skill-completion-form .button { min-height:38px; }.skills-empty { display:grid; justify-items:center; padding:28px; border:1px dashed var(--line); border-radius:16px; color:var(--muted); text-align:center; }.skills-empty>span { font-size:22px; color:var(--brand); }.skills-empty strong { margin-top:7px; color:var(--text); font-size:10px; }.skills-empty p { max-width:260px; margin:4px 0 0; font-size:8px; line-height:1.45; }
@media(max-width:900px){.skill-columns{grid-template-columns:1fr}.skill-suggestions{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.skills-workspace>header{padding:11px}.skills-workspace>header>span{display:none}.skill-suggestions{grid-template-columns:1fr}.skill-completion-form{grid-template-columns:1fr}.skill-suggestion,.skill-run{padding:11px}}

@media(max-width:1200px){.crm-toolbar{grid-template-columns:minmax(200px,1fr) auto auto}.crm-smart-queues{grid-column:1/-1;grid-row:2}.crm-cockpit{height:calc(100dvh - 140px)}.staff-case-workspace{grid-template-columns:minmax(350px,1fr) 270px}}
@media(max-width:900px){.crm-metrics{grid-template-columns:repeat(3,1fr)}.crm-metrics article:nth-child(n+4){display:none}.crm-cockpit .concierge-staff-grid{grid-template-columns:220px minmax(0,1fr)}.staff-case-workspace{grid-template-columns:1fr}.staff-case-sidebar{border-left:0;border-top:1px solid var(--line);max-height:280px}}
@media(max-width:760px){.staff-crm-mode .concierge-app-view{height:100dvh;overflow:hidden}.staff-crm-mode .crm-cockpit{height:100dvh;min-height:0;margin:0;padding:8px;border:0;border-radius:0}.crm-cockpit-head{display:none!important}.crm-metrics{grid-template-columns:repeat(3,1fr);margin-top:0}.crm-metrics article{min-height:57px;padding:7px}.crm-metrics strong{font-size:13px}.crm-pipeline{margin:6px 0}.crm-toolbar{grid-template-columns:1fr auto;min-height:auto;padding:5px}.crm-search{min-width:0}.crm-mine{display:none}.crm-toolbar .staff-offline-intake form{position:fixed;inset:10px;width:auto}.crm-smart-queues{grid-column:1/-1;grid-row:2}.crm-cockpit .concierge-staff-grid{grid-template-columns:1fr;grid-template-rows:142px minmax(0,1fr);gap:7px;margin-top:6px}.crm-queue-panel>header{min-height:35px;padding:5px 9px}.crm-cockpit .concierge-staff-queue{display:flex;gap:5px;overflow:auto}.crm-cockpit .staff-case{min-width:210px;min-height:84px}.crm-cockpit .concierge-staff-detail{min-height:0}.staff-case-workspace{height:100%;grid-template-columns:1fr}.staff-case-center,.staff-case-sidebar{padding:10px}.staff-case-sidebar{max-height:none}.staff-conversation{max-height:220px}.staff-message-form{grid-template-columns:1fr auto!important}.staff-message-form label{display:none}.crm-section-tabs{overflow:auto}.crm-section-tabs button{min-width:max-content}}
.concierge-marketplace-card{display:grid;gap:10px;padding:13px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2)}.concierge-marketplace-card>header{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:9px;align-items:center}.concierge-marketplace-card>header>span{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--surface-3);color:var(--brand)}.concierge-marketplace-card>header div{display:grid}.concierge-marketplace-card small{color:var(--muted)}.concierge-marketplace-card>header b{font-size:10px;text-transform:uppercase;color:var(--muted)}.concierge-market-quote{display:flex;justify-content:space-between;gap:12px;padding:10px;border:1px solid var(--line);border-radius:10px;background:var(--surface);text-decoration:none}.concierge-market-payment,.concierge-market-return{display:grid;gap:3px;padding:10px;border-radius:10px;background:var(--surface-3)}.concierge-market-payment strong{font-size:18px}.concierge-market-note{font-size:12px;color:var(--muted)}
@media(max-width:760px){.client-work-project{padding:12px}.client-work-head h3{font-size:16px}.client-work-summary{font-size:12px}.client-work-progress>div,.client-work-next strong,.client-work-decision header strong,.client-work-budget span,.client-work-budget strong{font-size:12px}.client-work-progress>small,.client-work-next span,.client-work-decision>p,.client-work-actions button,.client-work-options button,.client-workstreams summary,.client-workstreams strong,.client-workstreams small,.client-work-budget small{font-size:10px}.staff-work-empty{grid-template-columns:1fr;padding:14px}.staff-work-project-create,.staff-work-project-create>div,.staff-work-builders{grid-template-columns:1fr}.staff-work-project-update{grid-template-columns:1fr 1fr}.staff-work-project-update>*{grid-column:auto!important}.staff-workbench-head{flex-direction:column}.staff-work-progress{width:100%;text-align:left}.staff-work-progress>span{width:100%;margin-left:0}.staff-work-metrics{grid-template-columns:repeat(2,1fr)}.staff-work-board{grid-template-columns:repeat(4,230px)}.staff-work-item-form>.three{grid-template-columns:1fr}.staff-work-checks{flex-direction:column}.staff-work-project-create input,.staff-work-project-create textarea,.staff-work-project-update input,.staff-work-project-update textarea,.staff-work-project-update select,.staff-workstream-form input,.staff-workstream-form select,.staff-workstream-form textarea,.staff-work-item-form input,.staff-work-item-form select,.staff-work-item-form textarea{min-height:44px;font-size:11px}}
@media(max-width:760px){.staff-case-center{padding:0!important}.staff-center-context{min-height:58px;padding:7px 9px}.staff-context-person{grid-template-columns:36px minmax(0,1fr)}.staff-context-person>span{width:36px;height:36px}.staff-context-person p{display:none}.staff-context-actions select{display:none}.staff-context-actions>span{display:none}.staff-act-as>summary{min-height:32px;padding:0 9px}.staff-act-as-menu{position:fixed;top:68px;right:8px;left:8px;width:auto;max-height:calc(100dvh - 84px)}.staff-act-as-apps{grid-template-columns:1fr 1fr}.staff-workspace-tabs{padding:5px 7px}.staff-workspace-tabs button{min-height:32px;padding:0 8px}.staff-case-center>.crm-work-section{padding:7px}.staff-client-workspace .staff-primary-action{padding:7px}.staff-client-workspace .staff-primary-action>div:last-child .secondary{display:none}.staff-client-workspace .staff-conversation{padding:8px}.staff-client-workspace .staff-conversation>div{width:88%}.specialist-workspace{grid-template-columns:1fr;grid-template-rows:auto minmax(260px,1fr)}.specialist-channels{max-height:132px;border-right:0;border-bottom:1px solid var(--line)}.specialist-channels>div{display:flex;gap:5px;overflow:auto}.specialist-channel{min-width:185px}.specialist-add{margin-top:4px}.specialist-thread-head em{display:none}.miniapps-head{padding:10px}.miniapps-head p{display:none}.miniapps-live>div{grid-template-columns:1fr}.miniapps-rail button{min-width:60px}.miniapp-builder .staff-action-form{grid-template-columns:1fr}.miniapp-builder .staff-action-form>*{grid-column:1!important}}
@media(max-width:920px){.provider-network-head{grid-template-columns:1fr}.provider-command{grid-template-columns:205px minmax(0,1fr)}.provider-directory-filters{grid-template-columns:1fr 1fr}.provider-directory-filters button{grid-column:2}}
@media(max-width:560px){.provider-network{grid-template-rows:auto auto auto minmax(420px,1fr)}.provider-network-head{padding:9px}.provider-outreach-form>div{grid-template-columns:1fr}.provider-directory-filters{grid-template-columns:1fr 1fr}.provider-directory-filters select{grid-column:1/-1}.provider-command{grid-template-columns:1fr;grid-template-rows:150px minmax(260px,1fr)}.provider-directory{border-right:0;border-bottom:1px solid var(--line)}.provider-directory>header:nth-of-type(2),.provider-directory>div:nth-of-type(2){display:none}.provider-directory>div:first-of-type{display:flex;gap:4px;max-height:none;overflow:auto}.provider-live-card{min-width:205px}.provider-thread>header>div:last-child a:first-child{display:none}.provider-quote{grid-template-columns:1fr 1fr}.provider-quote>.button,.provider-selected{grid-column:1/-1}.provider-availability-summary small{display:none}}

.wallet-overview { display:grid; grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr); gap:16px; margin-bottom:18px; }
.wallet-total-card { min-height:190px; padding:25px; border-radius:27px; background:linear-gradient(145deg,var(--brand),var(--brand-2)); color:white; box-shadow:var(--shadow); display:flex; flex-direction:column; justify-content:center; }
html[data-mode="dark"] .wallet-total-card { color:#112018; }
.wallet-total-card > span { opacity:.72; font-size:9px; font-weight:900; letter-spacing:.12em; }
.wallet-total-card > strong { margin:10px 0 6px; font-size:38px; letter-spacing:-.05em; }
.wallet-total-card p { margin:0; opacity:.7; font-size:10px; }
.wallet-pocket-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:10px; }
.wallet-pocket { padding:17px; border:1px solid var(--line); border-radius:20px; background:var(--surface); box-shadow:var(--shadow-soft); }
.wallet-pocket span { display:block; color:var(--muted); font-size:9px; font-weight:850; text-transform:uppercase; letter-spacing:.07em; }
.wallet-pocket strong { display:block; margin-top:8px; font-size:20px; }
.money-layout { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr); gap:18px; align-items:start; }
.money-panel { padding:20px; border:1px solid var(--line); border-radius:25px; background:var(--surface); box-shadow:var(--shadow-soft); }
.movement-list { display:grid; }
.movement-item { display:grid; grid-template-columns:42px minmax(0,1fr) auto; gap:11px; align-items:center; padding:13px 0; border-bottom:1px solid var(--line); }
.movement-item:last-child { border-bottom:0; }
.movement-sign { display:grid; place-items:center; width:40px; height:40px; border-radius:13px; background:var(--surface-2); color:var(--brand); font-weight:950; }
.movement-item strong,.movement-item p { margin:0; }
.movement-item p { margin-top:3px; color:var(--muted); font-size:9px; }
.movement-amount { text-align:right; font-size:12px; }
.movement-amount.is-positive { color:#27845e; }
.movement-amount.is-negative { color:#bd514b; }
.movement-amount small { display:block; margin-top:3px; color:var(--muted); font-size:8px; font-weight:700; }
.tariff-panel { position:sticky; top:94px; }
.tariff-row { display:flex; justify-content:space-between; gap:14px; padding:11px 0; border-bottom:1px solid var(--line); font-size:10px; }
.tariff-row strong { font-size:11px; }
.money-rule { margin-top:15px; padding:14px; border-radius:16px; background:color-mix(in srgb,var(--accent) 13%,var(--surface)); }
.money-rule strong { font-size:11px; }
.money-rule p { margin:5px 0 0; color:var(--muted); font-size:9px; line-height:1.5; }

.earn-heading { max-width:850px; }
.earn-status-bar { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-bottom:16px; padding:16px 18px; border:1px solid var(--line); border-radius:20px; background:var(--surface); box-shadow:var(--shadow-soft); }
.earn-status-bar > div:first-child { display:grid; grid-template-columns:auto 1fr; align-items:center; column-gap:9px; }
.earn-status-bar span { grid-row:1/3; width:11px; height:11px; border-radius:50%; background:#9ba59e; box-shadow:0 0 0 5px color-mix(in srgb,#9ba59e 15%,transparent); }
.earn-status-bar span.is-available { background:#37a16f; box-shadow:0 0 0 5px color-mix(in srgb,#37a16f 15%,transparent); }
.earn-status-bar strong { font-size:12px; }
.earn-status-bar small { color:var(--muted); font-size:9px; }
.earning-profile-panel { margin-bottom:20px; padding:20px; border:1px solid var(--line); border-radius:25px; background:var(--surface); box-shadow:var(--shadow-soft); }
.earning-profile-panel select { width:100%; border:1px solid var(--line); border-radius:12px; background:var(--surface-2); color:var(--text); padding:11px; font:inherit; }
.capability-picker { display:flex; flex-wrap:wrap; gap:8px; margin:14px 0 18px; }
.capability-picker label { cursor:pointer; }
.capability-picker input { position:absolute; opacity:0; pointer-events:none; }
.capability-picker span { display:block; padding:9px 12px; border:1px solid var(--line); border-radius:999px; color:var(--muted); font-size:10px; font-weight:850; }
.capability-picker input:checked + span { border-color:var(--brand); background:var(--brand); color:white; }
.opportunity-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.opportunity-card { padding:17px; border:1px solid var(--line); border-radius:22px; background:var(--surface); box-shadow:var(--shadow-soft); display:flex; flex-direction:column; }
.opportunity-top { display:flex; justify-content:space-between; gap:10px; align-items:center; }
.opportunity-kind { padding:6px 8px; border-radius:999px; background:var(--surface-2); color:var(--brand); font-size:8px; font-weight:900; text-transform:uppercase; }
.compatibility-badge { color:#27845e; font-size:8px; font-weight:900; }
.compatibility-badge.is-blocked { color:#bd514b; }
.opportunity-card h3 { margin:14px 0 6px; font-size:15px; }
.opportunity-card > p { min-height:45px; margin:0 0 13px; color:var(--muted); font-size:10px; line-height:1.5; }
.opportunity-place { margin-bottom:13px; color:var(--muted); font-size:9px; }
.income-breakdown { display:grid; grid-template-columns:repeat(3,1fr); gap:5px; padding:10px; border-radius:15px; background:var(--surface-2); }
.income-breakdown div { min-width:0; }
.income-breakdown span { display:block; color:var(--muted); font-size:7px; text-transform:uppercase; font-weight:850; }
.income-breakdown strong { display:block; margin-top:3px; font-size:10px; }
.income-net { margin:9px 0 13px; display:flex; justify-content:space-between; align-items:center; color:var(--brand); }
.income-net span { font-size:9px; font-weight:850; }
.income-net strong { font-size:17px; }
.opportunity-card .button { margin-top:auto; width:100%; }
.opportunity-note { min-height:32px; margin:8px 0 0; color:#bd514b; font-size:8px; line-height:1.4; }
.assignment-list { display:grid; gap:10px; }
.assignment-card { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:15px; padding:16px; border:1px solid var(--line); border-radius:20px; background:var(--surface); box-shadow:var(--shadow-soft); }
.assignment-card h3,.assignment-card p { margin:0; }
.assignment-card p { margin-top:5px; color:var(--muted); font-size:9px; }
.assignment-meta { display:flex; flex-wrap:wrap; gap:7px; margin-top:10px; }
.assignment-meta span { padding:6px 8px; border-radius:999px; background:var(--surface-2); font-size:8px; font-weight:850; }
.assignment-actions { display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:7px; max-width:280px; }
.assignment-actions button { border:0; padding:8px 10px; border-radius:10px; background:var(--brand); color:white; font-size:8px; font-weight:900; cursor:pointer; }
.assignment-actions .secondary-action { background:var(--surface-2); color:var(--brand); }
.earn-toolbar { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:7px; }
.form-subtitle { margin:16px 0 0; color:var(--muted); font-size:9px; font-weight:900; text-transform:uppercase; letter-spacing:.08em; }
.operation-metrics { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:9px; margin-bottom:18px; }
.operation-metric { padding:14px; border:1px solid var(--line); border-radius:17px; background:var(--surface); box-shadow:var(--shadow-soft); }
.operation-metric span { display:block; color:var(--muted); font-size:8px; line-height:1.35; }
.operation-metric strong { display:block; margin-top:7px; font-size:20px; }
.operation-columns { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; align-items:start; }
.operation-list { display:grid; gap:9px; }
.operation-item { padding:14px; border:1px solid var(--line); border-radius:17px; background:var(--surface-2); }
.operation-item h3,.operation-item p { margin:0; }
.operation-item h3 { font-size:12px; }
.operation-item p { margin-top:5px; color:var(--muted); font-size:9px; line-height:1.45; }
.operation-item .income-net { margin-bottom:8px; }
.operation-actions { display:flex; flex-wrap:wrap; gap:6px; margin-top:10px; }
.operation-actions button { border:0; padding:8px 9px; border-radius:9px; background:var(--brand); color:white; font-size:8px; font-weight:900; cursor:pointer; }
.operation-actions button.is-danger { background:#a94e4a; }
.operation-actions button.is-neutral { background:var(--surface); color:var(--brand); }
.operation-wide { grid-column:span 2; }
.dispatch-builder { display:grid; gap:10px; }
.dispatch-builder select { width:100%; padding:10px; border:1px solid var(--line); border-radius:10px; background:var(--surface); color:var(--ink); font-size:9px; }
.dispatch-check { display:flex; align-items:flex-start; gap:8px; padding:8px; border-radius:10px; background:var(--surface-2); font-size:8px; }
.batch-route-preview { display:flex; flex-wrap:wrap; gap:5px; margin-top:8px; }
.batch-route-preview span { padding:5px 7px; border-radius:999px; background:var(--surface-2); color:var(--muted); font-size:7px; }
.publication-status { display:inline-flex; margin-top:8px; padding:6px 8px; border-radius:999px; background:var(--surface-2); color:var(--brand); font-size:8px; font-weight:900; }
.delivery-heading { max-width:850px; }
.delivery-status {
  display:flex; justify-content:space-between; align-items:center; gap:18px; margin-bottom:18px;
  padding:17px 20px; border:1px solid var(--line); border-radius:22px; background:var(--surface);
}
.delivery-status > div:first-child { display:grid; grid-template-columns:auto 1fr; align-items:center; column-gap:9px; }
.delivery-status strong { font-size:13px; }
.delivery-status small { grid-column:2; margin-top:3px; color:var(--muted); font-size:9px; }
.delivery-live-dot { width:10px; height:10px; border-radius:50%; background:var(--muted); box-shadow:0 0 0 5px var(--surface-2); }
.delivery-status.is-active .delivery-live-dot { background:#2eb67d; box-shadow:0 0 0 5px color-mix(in srgb,#2eb67d 15%,transparent); }
.delivery-layout { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:17px; margin-bottom:20px; }
.compact-form { display:grid; gap:14px; }
.vehicle-list { display:grid; gap:8px; margin-top:16px; }
.vehicle-card {
  display:flex; align-items:center; justify-content:space-between; gap:10px; padding:12px;
  border:1px solid var(--line); border-radius:15px; background:var(--surface-2);
}
.vehicle-card.is-active { border-color:var(--brand); }
.vehicle-card strong { font-size:11px; }
.vehicle-card p,.vehicle-card small { margin-top:3px; color:var(--muted); font-size:8px; }
.vehicle-card button { border:0; padding:8px 10px; border-radius:9px; background:var(--brand); color:white; font-size:8px; font-weight:900; cursor:pointer; }
.vehicle-card > span { color:var(--brand); font-size:8px; font-weight:900; text-transform:uppercase; }
.delivery-stops { display:flex; flex-wrap:wrap; gap:6px; margin-top:10px; }
.delivery-stops span { padding:6px 8px; border-radius:999px; background:var(--surface-2); color:var(--muted); font-size:8px; font-weight:800; }
.delivery-stops span.is-done { background:color-mix(in srgb,var(--brand) 14%,var(--surface)); color:var(--brand); }
.delivery-card .income-net { margin-top:16px; }
.commercial-delivery-panel { border:1px solid color-mix(in srgb,var(--brand) 28%,var(--line)); }
.second-store-details { padding:13px; border:1px solid var(--line); border-radius:15px; background:var(--surface-2); }
.second-store-details summary { cursor:pointer; color:var(--brand); font-size:9px; font-weight:900; }
.second-store-details[open] summary { margin-bottom:13px; }
.commercial-tags { display:flex; flex-wrap:wrap; gap:5px; margin-top:8px; }
.commercial-tags span { padding:5px 7px; border-radius:999px; background:color-mix(in srgb,var(--brand) 11%,var(--surface)); color:var(--brand); font-size:7px; font-weight:850; }

.status-body { min-height:100vh; }
.status-header {
  width:min(1180px,calc(100% - 40px)); min-height:82px; margin:auto;
  display:flex; align-items:center; justify-content:space-between; gap:18px;
}
.status-shell { width:min(1180px,calc(100% - 40px)); margin:18px auto 70px; }
.status-hero {
  min-height:260px; padding:42px; display:flex; justify-content:space-between;
  align-items:flex-start; gap:30px; border-radius:31px;
  background:linear-gradient(135deg,var(--brand),var(--brand-2)); color:#fff;
  box-shadow:var(--shadow);
}
html[data-mode="dark"] .status-hero { color:#122018; }
.status-hero .eyebrow { color:inherit; opacity:.72; }
.status-hero h1 { max-width:700px; }
.status-hero p:last-child { max-width:680px; margin:0; opacity:.78; }
.readiness-badge {
  flex:0 0 auto; padding:9px 13px; border:1px solid currentColor;
  border-radius:999px; font-size:11px; font-weight:900;
}
.readiness-badge.is-ready { background:var(--accent); border-color:transparent; color:var(--accent-ink); }
.status-metrics { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; margin-top:18px; }
.status-metrics article {
  min-height:130px; padding:22px; display:flex; flex-direction:column;
  justify-content:flex-end; border:1px solid var(--line); border-radius:23px;
  background:var(--surface); box-shadow:var(--shadow-soft);
}
.status-metrics strong { font-size:36px; line-height:1; }
.status-metrics span { margin-top:7px; color:var(--muted); font-size:11px; }
.status-grid { display:grid; grid-template-columns:1.25fr .75fr; gap:17px; margin-top:17px; }
.status-panel { padding:24px; border:1px solid var(--line); border-radius:25px; background:var(--surface); }
.service-checks { display:grid; gap:9px; margin:0; padding:0; list-style:none; }
.service-checks li { display:flex; align-items:center; gap:12px; padding:14px; border-radius:16px; background:var(--surface-2); }
.service-checks strong,.service-checks small { display:block; }
.service-checks small { margin-top:3px; color:var(--muted); font-size:10px; }
.service-dot { width:11px; height:11px; flex:0 0 auto; border-radius:50%; background:#c05c54; box-shadow:0 0 0 5px color-mix(in srgb,#c05c54 13%,transparent); }
.service-dot.is-ready { background:#2f8a63; box-shadow:0 0 0 5px color-mix(in srgb,#2f8a63 13%,transparent); }
.release-details { display:grid; gap:2px; margin:0; }
.release-details div { display:flex; justify-content:space-between; gap:20px; padding:13px 0; border-bottom:1px solid var(--line); }
.release-details dt { color:var(--muted); }
.release-details dd { margin:0; font-weight:850; text-align:right; overflow-wrap:anywhere; }
.status-note { margin:18px 0 0; padding:16px 18px; border-radius:16px; background:var(--surface-3); color:var(--muted); font-size:11px; }

@media (max-width:1250px) {
  .desktop-shell { grid-template-columns:82px minmax(0,1fr) 285px; }
  .rail-link { justify-content:center; padding:0; }
  .rail-link span { font-size:21px; }
  .rail-link { font-size:0; }
  .rail-location { display:none; }
  .app-grid { grid-template-columns:repeat(5,1fr); }
}
@media (max-width:1020px) {
  .topbar { grid-template-columns:170px 1fr auto; }
  .desktop-shell { grid-template-columns:76px minmax(0,1fr); }
  .right-rail { display:none; }
  .is-concierge-app .desktop-shell { grid-template-columns:72px minmax(0,1fr); }
  .concierge-layout { grid-template-columns:minmax(260px,300px) minmax(0,1fr); }
  .concierge-plan-panel { position:absolute; z-index:6; right:0; top:0; bottom:0; width:min(360px,88%); transform:translateX(102%); transition:transform .2s ease; box-shadow:-18px 0 40px rgba(18,40,32,.16); }
  .concierge-layout.is-detail-open .concierge-plan-panel { transform:translateX(0); }
  .concierge-detail-head .concierge-pane-back { display:grid; }
  .concierge-staff-grid { grid-template-columns:230px minmax(0,1fr); }
  .wallet-overview { grid-template-columns:1fr; }
  .opportunity-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .operation-metrics { grid-template-columns:repeat(3,1fr); }
  .delivery-layout { grid-template-columns:1fr; }
}
@media (max-width:760px) {
  .topbar { height:auto; min-height:67px; padding:10px 14px; grid-template-columns:auto 1fr; gap:9px; }
  .brand-mark { width:39px; height:39px; border-radius:13px; }
  .brand-name { font-size:19px; }
  .global-search { grid-column:1/-1; grid-row:2; height:46px; }
  .global-search kbd { display:none; }
  .top-actions { position:absolute; right:13px; top:9px; }
  .notification-button,.avatar { display:none; }
  .auth-links { gap:3px; }
  .auth-links a { display:block; padding:8px 7px; font-size:10px; }
  .auth-links .auth-create { padding:8px 8px; }
  .desktop-shell { display:block; padding:19px 14px 105px; }
  .left-rail { display:none; }
  .hero { grid-template-columns:1fr; }
  .hero-copy { min-height:252px; padding:28px 24px; border-radius:27px; }
  h1 { font-size:37px; }
  .hero-status { padding:18px; border-radius:25px; }
  .hero-status > strong { margin-top:13px; font-size:28px; }
  .matter-grid { grid-template-columns:1fr; }
  .matter-card { min-height:135px; }
  .app-grid,.search-grid { grid-template-columns:repeat(4,1fr); gap:8px; }
  .app-card { min-height:118px; padding:10px 4px; border-radius:18px; }
  .app-icon { width:52px; height:52px; border-radius:17px; font-size:20px; }
  .app-card small { display:none; }
  .pin-button { opacity:1; }
  .profile-grid { grid-template-columns:1fr; }
  .form-grid,.places-layout { grid-template-columns:1fr; }
  .profile-card { min-height:145px; }
  body.is-concierge-app { background:var(--surface); }
  .is-concierge-app .topbar,.is-concierge-app .left-rail,.is-concierge-app .bottom-nav { display:none; }
  .is-concierge-app .desktop-shell { display:block; min-height:100dvh; padding:0; }
  .is-concierge-app .workspace,.concierge-app-view { height:100dvh; }
  .concierge-appbar { display:none; }
  .concierge-layout { height:100dvh; border:0; border-radius:0; grid-template-columns:1fr; box-shadow:none; }
  .concierge-layout > .concierge-inbox,.concierge-layout > .concierge-chat,.concierge-layout > .concierge-plan-panel { display:none; grid-area:1/1; width:100%; transform:none; }
  .concierge-layout[data-mobile-pane="inbox"] > .concierge-inbox { display:flex; }
  .concierge-layout[data-mobile-pane="chat"] > .concierge-chat { display:flex; }
  .concierge-layout[data-mobile-pane="details"] > .concierge-plan-panel { display:block; position:relative; inset:auto; overflow:auto; }
  .concierge-inbox { border-right:0; }
  .concierge-inbox-head { min-height:76px; padding:calc(14px + env(safe-area-inset-top)) 17px 8px; }
  .concierge-inbox-head h1 { font-size:27px; }
  .concierge-search { margin-inline:14px; min-height:44px; }
  .inbox-filter { min-height:38px; }
  .concierge-inbox-list { padding:4px 8px calc(88px + env(safe-area-inset-bottom)); }
  .concierge-thread { min-height:76px; grid-template-columns:52px minmax(0,1fr) auto; padding:11px 10px; }
  .concierge-thread-icon { width:52px; height:52px; }
  .concierge-thread strong { font-size:12px; }
  .concierge-thread em { font-size:10px; }
  .concierge-mobile-new { position:absolute; z-index:4; right:18px; bottom:calc(18px + env(safe-area-inset-bottom)); display:grid; place-items:center; width:56px; height:56px; border:0; border-radius:19px; background:var(--chat-green); color:#fff; font-size:24px; box-shadow:0 12px 28px color-mix(in srgb,var(--chat-green) 35%,transparent); cursor:pointer; }
  .concierge-chat-head { min-height:64px; padding:calc(7px + env(safe-area-inset-top)) 8px 7px; }
  .concierge-pane-back { display:grid; }
  .concierge-messages { padding:14px 12px; }
  .concierge-message { max-width:92%; }
  .concierge-form { padding-inline:8px; }
  .concierge-form > small { display:none; }
  .concierge-plan-panel { padding:0 15px calc(24px + env(safe-area-inset-bottom)); border-left:0; box-shadow:none; }
  .concierge-detail-head { min-height:64px; margin:0 -15px 14px; padding:calc(7px + env(safe-area-inset-top)) 8px 7px; }
  .concierge-owner-card { padding-top:14px; }
  .concierge-staff-grid { grid-template-columns:1fr; }
  .concierge-staff-detail > header,.staff-message-form { grid-template-columns:1fr; flex-direction:column; }
  .staff-task-form { grid-template-columns:1fr; }
  .staff-task-form > * { grid-column:1 !important; }
  .staff-assignment-form,.staff-rag-form,.staff-action-form,.staff-payment-form { grid-template-columns:1fr; }
  .staff-action-form > *,.staff-payment-form > * { grid-column:1 !important; }
  .staff-ai-evidence { grid-template-columns:1fr; }
  .staff-offline-intake form { grid-template-columns:1fr; }
  .staff-offline-intake form > * { grid-column:1 !important; }
  .money-layout { grid-template-columns:1fr; }
  .tariff-panel { position:static; }
  .wallet-pocket-grid { grid-template-columns:repeat(2,1fr); }
  .wallet-total-card { min-height:160px; }
  .wallet-total-card > strong { font-size:32px; }
  .earn-status-bar { align-items:flex-start; }
  .opportunity-grid { grid-template-columns:1fr; }
  .assignment-card { grid-template-columns:1fr; }
  .assignment-actions { justify-content:flex-start; max-width:none; }
  .earn-status-bar { flex-direction:column; }
  .earn-toolbar { justify-content:flex-start; }
  .operation-columns { grid-template-columns:1fr; }
  .operation-wide { grid-column:auto; }
  .operation-metrics { grid-template-columns:repeat(2,1fr); }
  .delivery-status { align-items:flex-start; flex-direction:column; }
  .bottom-nav {
    position:fixed; z-index:40; left:10px; right:10px; bottom:max(9px,env(safe-area-inset-bottom));
    min-height:68px; padding:7px; display:grid; grid-template-columns:repeat(4,1fr);
    border:1px solid var(--line); border-radius:22px; background:color-mix(in srgb,var(--surface) 93%,transparent);
    backdrop-filter:blur(20px); box-shadow:var(--shadow);
  }
  .bottom-nav a { display:grid; place-items:center; align-content:center; border-radius:16px; color:var(--muted); font-size:9px; font-weight:850; }
  .bottom-nav span { display:block; font-size:18px; }
  .bottom-nav a.is-active { background:var(--surface-3); color:var(--brand); }
  .dialog { width:100%; max-height:88vh; padding:21px 14px calc(23px + env(safe-area-inset-bottom)); border-radius:26px 26px 0 0; }
  .dialog > header { top:-21px; }
  .dialog-grid { grid-template-columns:repeat(3,1fr); }
  .palette-grid { grid-template-columns:repeat(2,1fr); }
  .toast { bottom:94px; white-space:nowrap; }
  .auth-body { padding:0; }
  .auth-shell { min-height:100vh; grid-template-columns:1fr; border:0; border-radius:0; }
  .auth-brand-panel { min-height:235px; padding:25px 22px; }
  .auth-brand-panel h1 { font-size:36px; }
  .auth-brand-panel > small { display:none; }
  .auth-form-panel { padding:28px 20px 42px; }
  .demo-account-grid { grid-template-columns:1fr; max-height:330px; }
  .demo-account-card { grid-template-columns:38px minmax(0,1fr) auto; }
  .demo-account-card button { grid-column:auto; width:70px; min-height:44px; }
  .status-header,.status-shell { width:min(100% - 28px,1180px); }
  .status-header { min-height:72px; }
  .status-header .button { min-height:40px; padding:0 11px; font-size:11px; }
  .status-hero { min-height:0; padding:28px 22px; display:block; border-radius:26px; }
  .status-hero h1 { font-size:38px; }
  .readiness-badge { display:inline-flex; margin-top:22px; }
  .status-metrics { grid-template-columns:repeat(2,1fr); }
  .status-metrics article { min-height:115px; padding:17px; }
  .status-grid { grid-template-columns:1fr; }
  .status-panel { padding:18px; }
}
@media (max-width:390px) {
  .app-grid { grid-template-columns:repeat(3,1fr); }
  .space-button { font-size:8px; }
  .hero-actions .button { flex:1; }
}
@media (prefers-reduced-motion:reduce) {
  *,*::before,*::after { scroll-behavior:auto !important; transition:none !important; }
}

/* R28 · La portada es el punto de entrada a IKATU Te Lo Resuelve. */
.resolve-home-header { max-width:820px; margin:7px auto 27px; text-align:center; }
.resolve-home-header .eyebrow { color:var(--brand); }
.resolve-home-header h1 { margin:8px 0 10px; font-size:clamp(42px,6vw,76px); line-height:.94; letter-spacing:-.065em; text-wrap:balance; }
.resolve-home-header > p:last-child { max-width:670px; margin:0 auto; color:var(--muted); font-size:clamp(14px,1.5vw,18px); line-height:1.55; text-wrap:balance; }
.resolve-stage { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(285px,.65fr); gap:18px; align-items:start; }
.resolve-main-column { min-width:0; }
.resolve-composer { padding:22px; border:1px solid color-mix(in srgb,var(--brand) 20%,var(--line)); border-radius:28px; background:var(--surface); box-shadow:0 20px 60px color-mix(in srgb,var(--brand) 12%,transparent); }
.resolve-composer-head { display:flex; align-items:center; gap:12px; margin-bottom:15px; }
.resolve-composer-head > div { min-width:0; }
.resolve-composer-head strong,.resolve-composer-head small { display:block; }
.resolve-composer-head strong { font-size:15px; }
.resolve-composer-head small { margin-top:3px; color:var(--muted); font-size:11px; }
.resolve-avatar,.resolve-owner-avatar { position:relative; display:grid; place-items:center; flex:0 0 auto; background:linear-gradient(145deg,var(--brand),color-mix(in srgb,var(--brand) 58%,#1877f2)); color:#fff; font-weight:950; box-shadow:0 8px 20px color-mix(in srgb,var(--brand) 25%,transparent); }
.resolve-avatar { width:48px; height:48px; border-radius:17px; }
.resolve-avatar i,.resolve-owner-avatar i { position:absolute; right:-1px; bottom:-1px; width:13px; height:13px; border:3px solid var(--surface); border-radius:50%; background:#31b86b; }
.resolve-composer textarea { width:100%; min-height:138px; padding:18px; resize:vertical; border:1px solid var(--line); border-radius:20px; outline:0; background:var(--surface-2); color:var(--text); font:inherit; font-size:17px; line-height:1.5; transition:border-color .18s,box-shadow .18s,background .18s; }
.resolve-composer textarea::placeholder { color:color-mix(in srgb,var(--muted) 76%,transparent); }
.resolve-composer textarea:focus { border-color:color-mix(in srgb,var(--brand) 55%,var(--line)); background:var(--surface); box-shadow:0 0 0 4px color-mix(in srgb,var(--brand) 11%,transparent); }
.resolve-composer-actions { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-top:13px; }
.resolve-entry-modes { display:flex; gap:7px; }
.resolve-entry-modes button,.resolve-entry-modes label { min-width:82px; min-height:44px; padding:0 13px; display:inline-flex; align-items:center; justify-content:center; gap:7px; border:1px solid transparent; border-radius:14px; background:var(--surface-2); color:var(--muted); font-size:11px; font-weight:850; cursor:pointer; }
.resolve-entry-modes button:hover,.resolve-entry-modes label:hover,.resolve-entry-modes .is-active { border-color:color-mix(in srgb,var(--brand) 25%,var(--line)); background:color-mix(in srgb,var(--brand) 9%,var(--surface)); color:var(--brand); }
.resolve-entry-modes .is-listening span { animation:resolvePulse 1s infinite; color:#d84545; }
.resolve-submit { min-height:48px; padding:0 21px; border:0; border-radius:15px; background:var(--brand); color:#fff; font-size:12px; font-weight:900; box-shadow:0 10px 24px color-mix(in srgb,var(--brand) 28%,transparent); cursor:pointer; }
.resolve-submit:hover { transform:translateY(-1px); filter:brightness(1.06); }
.resolve-submit:disabled { opacity:.68; cursor:wait; }
.resolve-trust { display:flex; align-items:center; gap:7px; margin:12px 3px 0; color:var(--muted); font-size:10px; }
.resolve-trust span { display:grid; place-items:center; width:18px; height:18px; border-radius:50%; background:color-mix(in srgb,#31b86b 14%,transparent); color:#238050; font-weight:950; }
.resolve-photo-preview { margin-top:10px; padding:10px; display:grid; grid-template-columns:54px 1fr 36px; align-items:center; gap:11px; border:1px solid var(--line); border-radius:16px; background:var(--surface-2); }
.resolve-photo-preview[hidden] { display:none; }
.resolve-photo-preview img { width:54px; height:54px; border-radius:12px; object-fit:cover; }
.resolve-photo-preview strong,.resolve-photo-preview small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.resolve-photo-preview small { margin-top:4px; color:var(--muted); font-size:9px; }
.resolve-photo-preview button { width:36px; height:36px; border:0; border-radius:50%; background:var(--surface); color:var(--muted); font-size:20px; cursor:pointer; }
.resolve-story-heading { margin:22px 4px 12px; display:flex; justify-content:space-between; gap:15px; align-items:end; }
.resolve-story-heading strong { font-size:14px; }
.resolve-story-heading span { color:var(--muted); font-size:10px; }
.resolve-story-strip { display:grid; grid-template-columns:repeat(6,minmax(92px,1fr)); gap:9px; overflow-x:auto; padding:2px 2px 8px; scrollbar-width:thin; }
.resolve-story { min-width:92px; padding:4px 4px 10px; border:0; border-radius:20px; background:var(--surface); color:var(--text); box-shadow:inset 0 0 0 1px var(--line); cursor:pointer; }
.resolve-story:hover { transform:translateY(-2px); box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--brand) 42%,var(--line)),0 9px 20px rgba(22,43,35,.08); }
.resolve-story-visual { width:100%; aspect-ratio:.86; display:grid; place-items:center; border-radius:16px; background-size:cover; background-position:center; color:#fff; font-size:25px; font-weight:900; }
.resolve-story-visual.has-photo { align-items:end; justify-items:end; padding:9px; font-size:0; }
.resolve-story-resuelve { background:linear-gradient(145deg,#6847d9,#a678ff); }
.resolve-story-eats { background:linear-gradient(145deg,#e26a32,#ffb34f); }
.resolve-story-envios { background:linear-gradient(145deg,#1671c5,#52bcec); }
.resolve-story-campo { background:linear-gradient(145deg,#3d7a3c,#9abe47); }
.resolve-story-vive { background:linear-gradient(145deg,#b04e6c,#f291a5); }
.resolve-story-salud { background:linear-gradient(145deg,#0b8f81,#5acabc); }
.resolve-story > strong { display:block; margin:9px 3px 0; font-size:9px; line-height:1.25; }
.resolve-owner-panel { position:sticky; top:90px; padding:20px; border-radius:28px; background:linear-gradient(155deg,color-mix(in srgb,var(--brand) 9%,var(--surface)),var(--surface) 43%); border:1px solid var(--line); }
.resolve-owner-top { display:flex; align-items:center; gap:13px; padding-bottom:17px; border-bottom:1px solid var(--line); }
.resolve-owner-avatar { width:58px; height:58px; border-radius:20px; }
.resolve-owner-top small,.resolve-owner-top strong,.resolve-owner-top p { display:block; margin:0; }
.resolve-owner-top small { color:var(--muted); font-size:8px; font-weight:900; letter-spacing:.1em; }
.resolve-owner-top strong { margin:3px 0 5px; font-size:15px; }
.resolve-owner-top p { color:var(--muted); font-size:9px; }
.resolve-owner-top p i { display:inline-block; width:7px; height:7px; margin-right:4px; border-radius:50%; background:#31b86b; }
.resolve-how { display:grid; gap:13px; margin:18px 0; padding:0; list-style:none; }
.resolve-how li { display:flex; align-items:center; gap:11px; }
.resolve-how li > span { display:grid; place-items:center; width:29px; height:29px; flex:0 0 auto; border-radius:10px; background:color-mix(in srgb,var(--brand) 11%,var(--surface)); color:var(--brand); font-size:10px; font-weight:950; }
.resolve-how strong,.resolve-how small { display:block; }
.resolve-how strong { font-size:11px; }
.resolve-how small { margin-top:2px; color:var(--muted); font-size:9px; line-height:1.35; }
.resolve-inbox-link { min-height:62px; padding:11px; display:grid; grid-template-columns:34px 1fr auto; align-items:center; gap:10px; border-radius:17px; background:var(--surface-2); color:var(--text); }
.resolve-inbox-link > span { display:grid; place-items:center; width:34px; height:34px; border-radius:11px; background:var(--brand); color:#fff; }
.resolve-inbox-link strong,.resolve-inbox-link small { display:block; }
.resolve-inbox-link strong { font-size:11px; }
.resolve-inbox-link small { margin-top:3px; color:var(--muted); font-size:8px; }
.resolve-inbox-link b { color:var(--muted); font-size:22px; }
.resolve-space-context { margin-top:13px; padding-top:13px; border-top:1px solid var(--line); }
.resolve-space-context > div:first-child { display:grid; grid-template-columns:1fr auto; gap:3px; align-items:center; }
.resolve-space-context span { grid-column:1/-1; color:var(--muted); font-size:8px; font-weight:900; letter-spacing:.09em; }
.resolve-space-context strong { font-size:12px; }
.resolve-space-context small { color:var(--muted); font-size:8px; }
.resolve-space-context .space-switcher { margin-top:10px; }
.concierge-attachment { display:block; margin-top:8px; padding:8px 10px; border-radius:10px; background:color-mix(in srgb,var(--brand) 8%,var(--surface)); font-size:9px; font-weight:800; }
@keyframes resolvePulse { 50% { opacity:.35; transform:scale(.8); } }

@media (max-width:1100px) {
  .resolve-stage { grid-template-columns:minmax(0,1fr) 280px; }
  .resolve-story-strip { grid-template-columns:repeat(6,96px); }
}
@media (max-width:850px) {
  .resolve-stage { grid-template-columns:1fr; }
  .resolve-owner-panel { position:static; display:grid; grid-template-columns:1fr 1fr; gap:12px 20px; }
  .resolve-owner-top { border-bottom:0; }
  .resolve-how { margin:0; }
  .resolve-inbox-link,.resolve-space-context { grid-column:1/-1; }
}
@media (max-width:760px) {
  .resolve-home-header { margin:1px auto 18px; text-align:left; }
  .resolve-home-header h1 { max-width:360px; margin-top:6px; font-size:44px; }
  .resolve-home-header > p:last-child { font-size:13px; }
  .resolve-composer { margin-inline:-2px; padding:15px; border-radius:24px; }
  .resolve-composer-head small { font-size:10px; }
  .resolve-composer textarea { min-height:128px; padding:15px; border-radius:17px; font-size:15px; }
  .resolve-composer-actions { align-items:stretch; flex-direction:column; }
  .resolve-entry-modes { display:grid; grid-template-columns:1fr 1fr; }
  .resolve-entry-modes button,.resolve-entry-modes label,.resolve-submit { width:100%; min-height:48px; }
  .resolve-story-heading { align-items:start; flex-direction:column; gap:3px; }
  .resolve-story-strip { margin-right:-14px; grid-template-columns:repeat(6,103px); padding-right:14px; }
  .resolve-owner-panel { grid-template-columns:1fr; padding:17px; border-radius:24px; }
  .resolve-owner-top,.resolve-how,.resolve-inbox-link,.resolve-space-context { grid-column:1; }
  .resolve-owner-panel .space-switcher { overflow-x:auto; flex-wrap:nowrap; }
}
@media (prefers-reduced-motion:reduce) {
  .resolve-entry-modes .is-listening span { animation:none; }
  .resolve-submit:hover,.resolve-story:hover { transform:none; }
}

/* R29 · Inicio conversacional: el Encargado es el producto. */
body.is-home-chat { height:100dvh; overflow:hidden; }
.is-home-chat .right-rail { display:none; }
.is-home-chat .desktop-shell { width:100%; height:calc(100dvh - 76px); min-height:0; grid-template-columns:190px minmax(0,1fr); gap:16px; padding:16px 20px 24px; overflow:hidden; }
.is-home-chat .workspace,.resolve-message-home { min-width:0; min-height:0; height:100%; }
.resolve-message-shell { height:100%; min-height:0; display:grid; grid-template-columns:280px minmax(420px,1fr) 270px; overflow:hidden; border:1px solid var(--line); border-radius:26px; background:var(--surface); box-shadow:0 18px 55px rgba(20,47,38,.11); }
.resolve-message-inbox { min-width:0; display:flex; flex-direction:column; border-right:1px solid var(--line); background:var(--surface); }
.resolve-message-inbox > header { min-height:82px; padding:17px 17px 10px; display:flex; justify-content:space-between; align-items:center; }
.resolve-message-inbox > header p { margin:0; color:var(--brand); font-size:9px; font-weight:950; letter-spacing:.13em; }
.resolve-message-inbox > header h1 { margin:2px 0 0; font-size:27px; letter-spacing:-.04em; }
.resolve-message-inbox > header a { width:39px; height:39px; display:grid; place-items:center; border-radius:50%; background:color-mix(in srgb,var(--brand) 11%,var(--surface)); color:var(--brand); font-size:21px; font-weight:700; }
.resolve-message-inbox > label { min-height:43px; margin:0 13px 11px; padding:0 12px; display:flex; align-items:center; gap:8px; border-radius:13px; background:var(--surface-2); color:var(--muted); }
.resolve-message-inbox > label input { min-width:0; width:100%; border:0; outline:0; background:transparent; color:var(--text); font-size:11px; }
.resolve-message-inbox nav { display:grid; gap:3px; padding:0 7px; }
.resolve-message-inbox nav a { min-height:70px; padding:9px; display:grid; grid-template-columns:48px minmax(0,1fr) auto; align-items:center; gap:10px; border-radius:15px; }
.resolve-message-inbox nav a:hover,.resolve-message-inbox nav a.is-active { background:color-mix(in srgb,var(--brand) 7%,var(--surface)); }
.resolve-message-inbox nav strong,.resolve-message-inbox nav p { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.resolve-message-inbox nav strong { font-size:11px; }
.resolve-message-inbox nav p { margin:3px 0 0; color:var(--muted); font-size:9px; }
.resolve-message-inbox nav time,.resolve-message-inbox nav b { align-self:start; margin-top:5px; color:var(--muted); font-size:8px; font-style:normal; }
.resolve-thread-icon { width:48px; height:48px; display:grid; place-items:center; border-radius:16px; background:color-mix(in srgb,var(--brand) 11%,var(--surface-2)); color:var(--brand); }
.resolve-inbox-note { margin:auto 13px 15px; padding:13px; display:flex; gap:9px; border-radius:15px; background:var(--surface-2); }
.resolve-inbox-note > span { width:23px; height:23px; flex:0 0 auto; display:grid; place-items:center; border-radius:50%; background:#dff4e8; color:#228252; font-size:10px; font-weight:950; }
.resolve-inbox-note p { margin:0; color:var(--muted); font-size:9px; line-height:1.5; }
.resolve-inbox-note strong { color:var(--text); }
.resolve-chat-avatar { position:relative; width:48px; height:48px; display:grid; place-items:center; flex:0 0 auto; border-radius:50%; background:linear-gradient(145deg,var(--brand),color-mix(in srgb,var(--brand) 58%,#1877f2)); color:#fff; font-size:12px; font-weight:950; box-shadow:0 6px 16px color-mix(in srgb,var(--brand) 22%,transparent); }
.resolve-chat-avatar i,.resolve-context-avatar i { position:absolute; right:0; bottom:0; width:13px; height:13px; border:3px solid var(--surface); border-radius:50%; background:#2fb969; }
.resolve-chat-avatar.small { width:30px; height:30px; align-self:end; font-size:8px; box-shadow:none; }
.resolve-message-chat { min-width:0; min-height:0; display:grid; grid-template-rows:auto minmax(0,1fr) auto; background:color-mix(in srgb,var(--surface-2) 70%,var(--surface)); }
.resolve-message-chat-head { min-height:72px; padding:10px 16px; display:flex; align-items:center; gap:11px; border-bottom:1px solid var(--line); background:color-mix(in srgb,var(--surface) 96%,transparent); }
.resolve-message-chat-head > div { min-width:0; }
.resolve-message-chat-head strong,.resolve-message-chat-head small { display:block; }
.resolve-message-chat-head strong { font-size:13px; }
.resolve-message-chat-head small { margin-top:3px; color:var(--muted); font-size:9px; }
.resolve-message-chat-head small i { display:inline-block; width:7px; height:7px; margin-right:4px; border-radius:50%; background:#2fb969; }
.resolve-message-chat-head > a { width:40px; height:40px; margin-left:auto; display:grid; place-items:center; border-radius:50%; color:var(--brand); background:var(--surface-2); font-size:18px; }
.resolve-message-timeline { min-height:0; overflow-y:auto; padding:18px clamp(16px,4vw,54px) 20px; scroll-behavior:smooth; }
.resolve-chat-day { width:max-content; margin:0 auto 17px; padding:5px 9px; display:block; border-radius:99px; background:color-mix(in srgb,var(--surface) 86%,transparent); color:var(--muted); font-size:8px; font-weight:850; }
.resolve-chat-row { max-width:650px; display:flex; align-items:end; gap:8px; }
.resolve-chat-row.is-followup { margin-top:5px; padding-left:38px; }
.resolve-chat-bubble { width:max-content; max-width:min(540px,88%); padding:11px 13px 7px; border-radius:8px 18px 18px 18px; background:var(--surface); box-shadow:0 2px 7px rgba(20,45,36,.06); }
.resolve-chat-bubble p { margin:0; font-size:12px; line-height:1.5; }
.resolve-chat-bubble time { margin-top:5px; display:block; color:var(--muted); font-size:7px; text-align:right; }
.resolve-promise-bubble { padding:14px 15px; background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 92%,#234c77),var(--brand-2)); color:#fff; }
html[data-mode="dark"] .resolve-promise-bubble { color:#122018; }
.resolve-promise-bubble > span { display:block; margin-bottom:5px; font-size:10px; font-weight:950; letter-spacing:.07em; }
.resolve-promise-bubble p { opacity:.88; }
.resolve-ideas-bubble { width:min(590px,95%); max-width:590px; padding:13px; }
.resolve-chat-ideas { width:100%; margin-top:10px; display:grid; grid-template-columns:repeat(6,78px); gap:7px; overflow-x:auto; padding-bottom:3px; scrollbar-width:thin; }
.resolve-chat-ideas button { width:78px; padding:3px 3px 8px; border:1px solid var(--line); border-radius:14px; background:var(--surface); cursor:pointer; }
.resolve-chat-ideas button:hover { border-color:color-mix(in srgb,var(--brand) 48%,var(--line)); transform:translateY(-1px); }
.resolve-chat-ideas .resolve-story-visual { aspect-ratio:1; border-radius:11px; }
.resolve-chat-ideas strong { display:block; margin-top:6px; overflow:hidden; color:var(--text); font-size:8px; line-height:1.2; text-overflow:ellipsis; white-space:nowrap; }
.resolve-all-templates { width:100%; min-height:40px; margin-top:9px; padding:0 12px; display:flex; align-items:center; justify-content:center; gap:8px; border:1px solid color-mix(in srgb,var(--brand) 22%,var(--line)); border-radius:12px; background:color-mix(in srgb,var(--brand) 7%,var(--surface)); color:var(--brand); font-size:9px; font-weight:900; cursor:pointer; }
.resolve-all-templates:hover { background:color-mix(in srgb,var(--brand) 12%,var(--surface)); }
.resolve-chat-composer { padding:8px 12px 10px; border-top:1px solid var(--line); background:var(--surface); }
.resolve-chat-compose-row { min-height:52px; display:flex; align-items:end; gap:7px; }
.resolve-chat-attach,.resolve-chat-voice,.resolve-chat-send { width:43px; height:43px; display:grid; place-items:center; flex:0 0 auto; border:0; border-radius:50%; cursor:pointer; }
.resolve-chat-attach,.resolve-chat-voice { background:var(--surface-2); color:var(--brand); font-size:18px; }
.resolve-chat-attach.is-active,.resolve-chat-voice.is-active { background:color-mix(in srgb,var(--brand) 13%,var(--surface)); box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--brand) 30%,transparent); }
.resolve-chat-voice { font-size:11px; }
.resolve-chat-voice.is-listening span { color:#dc4d4d; animation:resolvePulse 1s infinite; }
.resolve-chat-send { background:var(--brand); color:#fff; font-size:17px; box-shadow:0 7px 18px color-mix(in srgb,var(--brand) 24%,transparent); }
html[data-mode="dark"] .resolve-chat-send { color:#122018; }
.resolve-chat-send:disabled { opacity:.65; cursor:wait; }
.resolve-chat-input { min-width:0; min-height:43px; padding:8px 13px; display:flex; align-items:center; flex:1; border:1px solid var(--line); border-radius:20px; background:var(--surface-2); }
.resolve-chat-input:focus-within { border-color:color-mix(in srgb,var(--brand) 45%,var(--line)); box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 8%,transparent); }
.resolve-chat-input textarea { width:100%; max-height:112px; resize:none; overflow-y:auto; border:0; outline:0; background:transparent; color:var(--text); font:inherit; font-size:12px; line-height:1.5; }
.resolve-chat-input textarea::placeholder { color:var(--muted); }
.resolve-chat-composer > small { display:block; margin-top:5px; color:var(--muted); font-size:7px; text-align:center; }
.resolve-chat-composer .resolve-photo-preview { max-width:520px; margin:0 0 8px 50px; padding:7px; grid-template-columns:42px 1fr 32px; }
.resolve-chat-composer .resolve-photo-preview img { width:42px; height:42px; }
.resolve-message-context { min-width:0; padding:27px 20px; border-left:1px solid var(--line); text-align:center; background:var(--surface); overflow-y:auto; }
.resolve-context-avatar { position:relative; width:74px; height:74px; margin:0 auto 13px; display:grid; place-items:center; border-radius:27px; background:linear-gradient(145deg,var(--brand),color-mix(in srgb,var(--brand) 58%,#1877f2)); color:#fff; font-weight:950; box-shadow:0 12px 25px color-mix(in srgb,var(--brand) 22%,transparent); }
.resolve-message-context h2 { font-size:16px; }
.resolve-context-online { margin:5px 0 18px; color:var(--muted); font-size:9px; }
.resolve-context-online i { display:inline-block; width:7px; height:7px; margin-right:4px; border-radius:50%; background:#2fb969; }
.resolve-message-context > p:not(.resolve-context-online) { color:var(--muted); font-size:10px; line-height:1.55; }
.resolve-message-context ol { margin:20px 0; padding:17px 0; display:grid; gap:14px; border-block:1px solid var(--line); list-style:none; text-align:left; }
.resolve-message-context li { display:flex; align-items:center; gap:10px; }
.resolve-message-context li > span { width:28px; height:28px; display:grid; place-items:center; flex:0 0 auto; border-radius:9px; background:color-mix(in srgb,var(--brand) 10%,var(--surface)); color:var(--brand); font-size:9px; font-weight:950; }
.resolve-message-context li strong,.resolve-message-context li small { display:block; }
.resolve-message-context li strong { font-size:10px; }
.resolve-message-context li small { margin-top:2px; color:var(--muted); font-size:8px; }
.resolve-message-context > a { min-height:42px; padding:0 13px; display:flex; align-items:center; justify-content:space-between; border-radius:13px; background:var(--brand); color:#fff; font-size:10px; font-weight:900; }
html[data-mode="dark"] .resolve-message-context > a { color:#122018; }
.resolve-context-space { margin-top:19px; padding-top:16px; display:grid; text-align:left; border-top:1px solid var(--line); }
.resolve-context-space > span { color:var(--muted); font-size:7px; font-weight:900; letter-spacing:.1em; }
.resolve-context-space > strong { margin-top:3px; font-size:12px; }
.resolve-context-space > small { color:var(--muted); font-size:8px; }
.resolve-context-space .space-switcher { margin-top:9px; }
.resolve-context-space .space-button { padding:6px 2px; font-size:0; }
.resolve-context-space .space-button span { margin:0; font-size:12px; }

.concierge-templates-dialog { width:min(1180px,calc(100% - 24px)); max-height:90dvh; }
.concierge-templates-dialog > header { align-items:flex-start; }
.concierge-templates-dialog > header p:last-child { margin:4px 0 0; color:var(--muted); font-size:10px; }
.concierge-template-toolbar { position:sticky; z-index:2; top:76px; margin-bottom:14px; padding:5px 0 10px; display:flex; align-items:center; gap:12px; background:var(--surface); }
.concierge-template-toolbar label { min-height:44px; padding:0 13px; display:flex; align-items:center; gap:9px; flex:1; border:1px solid var(--line); border-radius:14px; background:var(--surface-2); color:var(--muted); }
.concierge-template-toolbar label:focus-within { border-color:var(--brand); box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 9%,transparent); }
.concierge-template-toolbar input { min-width:0; width:100%; border:0; outline:0; background:transparent; color:var(--text); font-size:11px; }
.concierge-template-toolbar > span { min-width:106px; color:var(--muted); font-size:9px; font-weight:850; text-align:right; }
.concierge-template-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.concierge-template-card { min-width:0; padding:13px; display:flex; flex-direction:column; border:1px solid var(--line); border-radius:20px; background:var(--surface-2); }
.concierge-template-card > header { display:grid; grid-template-columns:76px minmax(0,1fr); align-items:center; gap:11px; }
.concierge-template-cover { width:76px; height:62px; aspect-ratio:auto; border-radius:14px; background:linear-gradient(145deg,var(--template-color),color-mix(in srgb,var(--template-color) 52%,#202a33)); font-size:20px; }
.concierge-template-card > header small { display:block; color:var(--template-color); font-size:8px; font-weight:900; }
.concierge-template-card > header h3 { margin:3px 0 0; font-size:13px; line-height:1.25; }
.concierge-template-conversation { margin-top:12px; padding:10px; display:grid; gap:7px; border-radius:16px; background:color-mix(in srgb,var(--surface) 72%,var(--bg)); }
.concierge-template-message { max-width:88%; padding:8px 10px; border-radius:12px; }
.concierge-template-message small { display:block; margin-bottom:3px; font-size:7px; font-weight:900; }
.concierge-template-message p { margin:0; font-size:9px; line-height:1.45; }
.concierge-template-message.is-user { justify-self:end; border-radius:12px 4px 12px 12px; background:color-mix(in srgb,var(--brand) 14%,var(--surface)); }
.concierge-template-message.is-user small { color:var(--brand); }
.concierge-template-message.is-staff { border-radius:4px 12px 12px 12px; background:var(--surface); box-shadow:0 2px 7px rgba(20,45,36,.06); }
.concierge-template-message.is-staff small { color:var(--template-color); }
.concierge-template-details { margin:11px 0; display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.concierge-template-details > div { min-width:0; padding:9px; border:1px solid var(--line); border-radius:12px; background:var(--surface); }
.concierge-template-details small { display:block; margin-bottom:5px; color:var(--muted); font-size:7px; font-weight:900; text-transform:uppercase; letter-spacing:.06em; }
.concierge-template-details span { display:block; padding:2px 0; overflow:hidden; color:var(--text); font-size:8px; text-overflow:ellipsis; white-space:nowrap; }
.concierge-template-details span::before { content:"✓"; margin-right:5px; color:var(--template-color); font-weight:950; }
.concierge-template-card > button { min-height:43px; margin-top:auto; padding:0 13px; display:flex; align-items:center; justify-content:space-between; border:0; border-radius:13px; background:var(--brand); color:#fff; font-size:9px; font-weight:900; cursor:pointer; }
html[data-mode="dark"] .concierge-template-card > button { color:#122018; }
.concierge-template-card > button:hover { filter:brightness(1.08); }
.concierge-template-note { margin:14px 0 0; padding:12px; display:flex; align-items:center; justify-content:center; gap:8px; border-radius:13px; background:color-mix(in srgb,#2fb969 9%,var(--surface)); color:var(--muted); font-size:9px; text-align:center; }
.concierge-template-note span { color:#238354; font-weight:950; }

@media (max-width:1320px) {
  .resolve-message-shell { grid-template-columns:255px minmax(390px,1fr); }
  .resolve-message-context { display:none; }
}
@media (max-width:1020px) {
  .is-home-chat .desktop-shell { grid-template-columns:76px minmax(0,1fr); }
  .resolve-message-shell { grid-template-columns:235px minmax(360px,1fr); }
}
@media (max-width:820px) {
  .resolve-message-shell { grid-template-columns:1fr; }
  .resolve-message-inbox { display:none; }
  .concierge-template-grid { grid-template-columns:1fr; }
}
@media (max-width:760px) {
  body.is-home-chat { background:var(--surface); }
  .is-home-chat .topbar { min-height:61px; height:61px; padding:8px 12px; display:flex; }
  .is-home-chat .topbar .global-search { display:none; }
  .is-home-chat .topbar .top-actions { position:static; margin-left:auto; }
  .is-home-chat .brand-mark { width:39px; height:39px; }
  .is-home-chat .desktop-shell { height:calc(100dvh - 61px); min-height:0; padding:0 0 calc(78px + env(safe-area-inset-bottom)); }
  .is-home-chat .workspace,.resolve-message-home { height:100%; min-height:0; }
  .resolve-message-shell { height:100%; min-height:0; border:0; border-radius:0; box-shadow:none; }
  .resolve-message-chat-head { min-height:62px; padding:7px 12px; }
  .resolve-message-chat-head .resolve-chat-avatar { width:43px; height:43px; }
  .resolve-message-timeline { padding:14px 10px 17px; }
  .resolve-chat-row { max-width:100%; }
  .resolve-chat-bubble { max-width:88%; }
  .resolve-chat-row.is-followup { padding-left:38px; }
  .resolve-ideas-bubble { width:calc(100% - 4px); max-width:none; }
  .resolve-chat-ideas { grid-template-columns:repeat(6,75px); }
  .resolve-chat-ideas button { width:75px; }
  .resolve-chat-composer { padding:7px 8px 8px; }
  .resolve-chat-attach,.resolve-chat-voice,.resolve-chat-send { width:44px; height:44px; }
  .resolve-chat-composer > small { display:none; }
  .resolve-chat-composer .resolve-photo-preview { margin-left:0; }
  .concierge-templates-dialog { max-height:92dvh; }
  .concierge-template-toolbar { top:69px; align-items:stretch; flex-direction:column; gap:5px; }
  .concierge-template-toolbar > span { min-width:0; text-align:left; }
  .concierge-template-card { padding:11px; }
  .concierge-template-details { grid-template-columns:1fr; }
}
@media (max-width:390px) {
  .resolve-message-timeline { padding-inline:8px; }
  .resolve-chat-compose-row { gap:4px; }
}
@media (min-width:761px) and (max-height:760px) {
  .is-home-chat .topbar { height:64px; padding-block:8px; }
  .is-home-chat .desktop-shell { height:calc(100dvh - 64px); padding:9px 14px 12px; }
  .resolve-message-shell { border-radius:21px; }
  .resolve-message-inbox > header { min-height:66px; padding-block:10px 7px; }
  .resolve-message-inbox > header h1 { font-size:23px; }
  .resolve-message-inbox > label { min-height:39px; margin-bottom:7px; }
  .resolve-message-inbox nav a { min-height:62px; }
  .resolve-inbox-note { margin-bottom:9px; padding:9px; }
  .resolve-message-chat-head { min-height:60px; padding-block:6px; }
  .resolve-message-chat-head .resolve-chat-avatar { width:43px; height:43px; }
  .resolve-message-timeline { padding-block:11px 12px; }
  .resolve-chat-day { margin-bottom:10px; }
  .resolve-chat-bubble { padding-block:9px 6px; }
  .resolve-chat-ideas .resolve-story-visual { max-height:62px; }
  .resolve-chat-composer { padding-block:6px 7px; }
  .resolve-message-context { padding-block:16px; }
  .resolve-context-avatar { width:60px; height:60px; margin-bottom:9px; border-radius:21px; }
  .resolve-context-online { margin-bottom:10px; }
  .resolve-message-context ol { margin:12px 0; padding:11px 0; gap:9px; }
  .resolve-context-space { margin-top:12px; padding-top:10px; }
}
@media (min-width:761px) and (max-height:620px) {
  .resolve-inbox-note,.resolve-message-context > p:not(.resolve-context-online) { display:none; }
  .resolve-message-context ol { margin-top:8px; }
  .resolve-chat-bubble p { font-size:11px; }
  .resolve-chat-row.is-followup { margin-top:3px; }
  .resolve-chat-ideas .resolve-story-visual { max-height:52px; }
  .resolve-chat-composer > small { display:none; }
}
@media (prefers-reduced-motion:reduce) {
  .resolve-message-timeline { scroll-behavior:auto; }
  .resolve-chat-ideas button:hover { transform:none; }
}

/* R36 · Inicio móvil con patrón de app de mensajería. */
@media (max-width:760px) {
  body { font-size:16px; }
  .topbar {
    position:sticky; z-index:45; top:0; width:100%; min-height:58px; height:58px;
    padding:7px 12px; display:flex; gap:8px; border-bottom:1px solid var(--line);
    background:color-mix(in srgb,var(--surface) 94%,transparent);
  }
  .brand { min-width:0; gap:9px; }
  .brand-mark { width:40px; height:40px; border-radius:50%; }
  .brand-name { font-size:20px; letter-spacing:.055em; }
  .global-search { display:none; }
  .top-actions { position:static; margin-left:auto; }
  .round-button,.avatar { width:40px; height:40px; border-radius:50%; }
  .avatar { display:grid; font-size:12px; }
  .notification-button { display:none; }
  .auth-links { gap:0; }
  .auth-links a { min-height:40px; padding:0 15px; display:flex; align-items:center; border-radius:999px; background:var(--brand); color:var(--bg); font-size:13px; }
  .auth-links .auth-create { display:none; }
  body.is-concierge-app { min-height:100dvh; overflow:hidden; }
  .is-concierge-app .topbar {
    position:sticky; z-index:45; top:0; width:100%; min-height:58px; height:58px;
    padding:7px 12px; display:flex; gap:8px; border-bottom:1px solid var(--line);
    background:color-mix(in srgb,var(--surface) 94%,transparent);
    box-shadow:0 1px 0 color-mix(in srgb,var(--line) 65%,transparent);
  }
  .is-concierge-app .brand { min-width:0; gap:9px; }
  .is-concierge-app .brand-mark { width:40px; height:40px; border-radius:50%; }
  .is-concierge-app .brand-name { font-size:20px; letter-spacing:.055em; }
  .is-concierge-app .global-search { display:none; }
  .is-concierge-app .top-actions { position:static; margin-left:auto; }
  .is-concierge-app .round-button,.is-concierge-app .avatar { width:40px; height:40px; border-radius:50%; }
  .is-concierge-app .avatar { display:grid; font-size:12px; }
  .is-concierge-app .notification-button { display:none; }
  .is-concierge-app .auth-links { gap:0; }
  .is-concierge-app .auth-links a { min-height:40px; padding:0 15px; display:flex; align-items:center; border-radius:999px; background:var(--brand); color:var(--bg); font-size:13px; }
  .is-concierge-app .auth-links .auth-create { display:none; }
  .is-concierge-app .desktop-shell {
    width:100%; height:calc(100dvh - 58px); min-height:0;
    padding:0 0 calc(76px + env(safe-area-inset-bottom)); overflow:hidden;
  }
  .is-concierge-app .workspace,.is-concierge-app .concierge-app-view { height:100%; min-height:0; }
  .is-concierge-app .concierge-layout { height:100%; min-height:0; }
  .is-concierge-app .bottom-nav { display:grid; }
  .concierge-inbox-head { min-height:67px; padding:10px 16px 7px; }
  .concierge-inbox-head .eyebrow { display:none; }
  .concierge-inbox-head h1 { margin:0; font-size:25px; }
  .concierge-search { min-height:48px; margin:7px 12px; padding-inline:13px; }
  .concierge-search input { font-size:16px; }
  .concierge-filters { padding:0 12px 7px; gap:6px; overflow-x:auto; }
  .inbox-filter { min-width:max-content; min-height:42px; padding-inline:15px; font-size:12px; }
  .concierge-inbox-list { padding:3px 7px 14px; }
  .concierge-thread { min-height:82px; grid-template-columns:54px minmax(0,1fr) auto; padding:12px 10px; border-radius:17px; }
  .concierge-thread-icon { width:54px; height:54px; }
  .concierge-thread strong { font-size:14px; }
  .concierge-thread em { margin-top:3px; font-size:12px; line-height:1.35; }
  .concierge-thread small { font-size:10px; }
  .concierge-chat-head { min-height:60px; padding:7px 8px; }
  .concierge-chat-identity { min-width:0; }
  .concierge-chat-identity strong { overflow:hidden; font-size:14px; text-overflow:ellipsis; white-space:nowrap; }
  .concierge-chat-identity small { font-size:10px; }
  .concierge-pane-back,.concierge-head-action { width:44px; height:44px; flex:0 0 44px; }
  .concierge-owner-avatar { width:42px; height:42px; flex:0 0 42px; }
  .concierge-messages { padding:13px 10px 16px; gap:10px; }
  .concierge-trust { display:none; }
  .concierge-message { max-width:90%; padding:10px 12px 8px; font-size:14px; line-height:1.46; }
  .concierge-message.is-system { font-size:11px; }
  .concierge-message small,.concierge-message-time { font-size:10px; }
  .concierge-message-meta { gap:6px; }
  .concierge-receipt { font-size:11px; }
  .concierge-message-retry { min-height:32px; padding-inline:8px; font-size:11px; }
  .concierge-day-divider span { font-size:10px; }
  .concierge-typing { min-width:62px; min-height:40px; }
  .concierge-network-state { font-size:11px; }
  .concierge-jump-latest { bottom:76px; min-height:42px; font-size:11px; }
  .concierge-empty { max-width:330px; padding:18px 14px; }
  .concierge-empty > span { font-size:28px; }
  .concierge-empty strong { font-size:20px; }
  .concierge-empty p { margin:7px 0 14px; font-size:13px; line-height:1.45; }
  .concierge-empty button { min-height:44px; padding-inline:14px; font-size:12px; }
  .concierge-empty button + button { margin-top:7px; }
  .concierge-form { gap:6px; padding:7px 8px calc(8px + env(safe-area-inset-bottom)); }
  .concierge-input-wrap textarea { min-height:48px; max-height:116px; padding:13px 12px; font-size:16px; line-height:1.35; }
  .voice-button,.concierge-send { width:48px; height:48px; flex:0 0 48px; }
  .voice-button span { display:none; }
  .bottom-nav {
    left:0; right:0; bottom:0; min-height:calc(68px + env(safe-area-inset-bottom));
    padding:5px max(7px,env(safe-area-inset-right)) calc(5px + env(safe-area-inset-bottom)) max(7px,env(safe-area-inset-left));
    border-width:1px 0 0; border-radius:0; background:color-mix(in srgb,var(--surface) 96%,transparent);
    box-shadow:0 -7px 24px rgba(20,40,34,.08);
  }
  .bottom-nav a,.bottom-nav button {
    min-width:0; min-height:56px; padding:4px 2px; display:grid; place-items:center; align-content:center; gap:2px;
    border:0; border-radius:14px; background:transparent; color:var(--muted);
    font:850 11px/1.1 Inter,ui-sans-serif,system-ui,sans-serif; cursor:pointer;
  }
  .bottom-nav span { font-size:21px; line-height:1; }
  .bottom-nav a.is-active,.bottom-nav button.is-active { background:var(--surface-3); color:var(--brand); }
  .dialog { max-height:calc(100dvh - 22px); }
  .dialog > header { padding-bottom:13px; }
  .dialog > header h2 { font-size:23px; }
  .dialog-grid,.app-grid.dialog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
  .dialog-grid .app-card { min-height:126px; padding:12px 6px; }
  .dialog-grid .app-card strong { font-size:13px; }
  .category-filter { flex-wrap:nowrap; overflow-x:auto; padding-bottom:4px; }
  .category-filter button { min-width:max-content; min-height:42px; font-size:12px; }
  .auth-shell { min-height:100dvh; }
  .auth-brand-panel { min-height:190px; padding:24px 20px; }
  .auth-brand-panel h1 { font-size:32px; }
  .auth-brand-panel p { max-width:34ch; margin-bottom:0; font-size:14px; line-height:1.45; }
  .auth-form-panel { padding:25px 20px calc(34px + env(safe-area-inset-bottom)); }
  .auth-form-panel h2 { font-size:29px; }
  .auth-form-panel > p { font-size:14px; }
  .auth-form label { gap:7px; font-size:13px; }
  .auth-form input { min-height:50px; font-size:16px; }
  .auth-form .button { min-height:50px; font-size:14px; }
  .back-link { margin-bottom:20px; }
}
@media (max-width:390px) {
  .brand-name,.is-concierge-app .brand-name { font-size:18px; }
  .concierge-message { max-width:94%; }
  .dialog-grid,.app-grid.dialog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

/* R46 · Control de misión usable: bandeja, conversación y contexto bajo demanda. */
body.staff-crm-mode { height:100dvh; overflow:hidden; }
.staff-crm-mode .topbar { height:58px; padding:7px 20px; grid-template-columns:190px 1fr; }
.staff-crm-mode .brand-mark { width:40px; height:40px; border-radius:13px; }
.staff-crm-mode .brand-name { font-size:20px; }
.staff-crm-mode .round-button,.staff-crm-mode .avatar { width:40px; height:40px; }
.staff-crm-mode .desktop-shell { width:100%; height:calc(100dvh - 58px); min-height:0; grid-template-columns:58px minmax(0,1fr); gap:8px; padding:8px; overflow:hidden; }
.staff-crm-mode .left-rail { position:static; min-height:0; overflow:hidden; }
.staff-crm-mode .left-rail nav { gap:6px; }
.staff-crm-mode .rail-link { min-height:46px; justify-content:center; padding:0; }
.staff-crm-mode .rail-link span { width:auto; font-size:18px; }
.staff-crm-mode .rail-link:not(.is-active) { background:transparent; box-shadow:none; }
.staff-crm-mode .rail-link { font-size:0; }
.staff-crm-mode .rail-location { display:none; }
.staff-crm-mode .workspace,.staff-crm-mode #conciergeView,.staff-crm-mode .concierge-app-view { height:100%; min-height:0; overflow:hidden; }
.staff-crm-mode .concierge-appbar { display:none; }
.staff-crm-mode :is(.ikatu-natural-trigger,.ikatu-charm-dock,.ikatu-cat-habitat,.ikatu-cat-restore,.ikatu-conversation-bridge) { display:none!important; }

.staff-crm-mode .crm-cockpit { height:100%; box-sizing:border-box; padding:8px; border-radius:18px; }
.staff-crm-mode .crm-pro-head { min-height:43px; padding:0 2px 6px; }
.staff-crm-mode .crm-pro-mark { width:34px; height:34px; border-radius:11px; }
.staff-crm-mode .crm-pro-head .eyebrow,.staff-crm-mode .crm-pro-head p:last-child { display:none; }
.staff-crm-mode .crm-pro-head h2 { font-size:15px; }
.staff-crm-mode .crm-pro-head .button { min-height:38px; font-size:11px; }
.staff-crm-mode .crm-human-state { font-size:10px; }
.staff-crm-mode .crm-insights { margin-bottom:6px; border-radius:12px; }
.staff-crm-mode .crm-insights>summary { min-height:34px; padding:0 10px; }
.staff-crm-mode .crm-insights>summary b { font-size:11px; }
.staff-crm-mode .crm-insights>summary small { font-size:9px; }

.staff-crm-mode .crm-toolbar { min-height:48px; grid-template-columns:minmax(250px,1fr) auto auto auto; gap:6px; padding:6px; border-radius:14px; }
.staff-crm-mode .crm-search { height:38px; }
.staff-crm-mode .crm-search input { font-size:12px; }
.staff-crm-mode .crm-smart-queues { overflow:visible; }
.staff-crm-mode .crm-smart-queues button,.staff-crm-mode .crm-more-filters>summary { min-height:36px; padding:0 11px; font:850 11px/1 system-ui; }
.staff-crm-mode .crm-more-filters { position:relative; }
.staff-crm-mode .crm-more-filters>summary { display:flex; align-items:center; gap:7px; border:1px solid var(--line); border-radius:10px; background:var(--surface); list-style:none; cursor:pointer; }
.staff-crm-mode .crm-more-filters>summary::-webkit-details-marker { display:none; }
.staff-crm-mode .crm-more-filters>summary span { color:var(--muted); }
.staff-crm-mode .crm-more-filters>div { position:absolute; z-index:60; right:0; top:43px; width:220px; display:grid; gap:4px; padding:8px; border:1px solid var(--line); border-radius:13px; background:var(--surface); box-shadow:var(--shadow); }
.staff-crm-mode .crm-more-filters button { min-height:38px; padding:0 10px; border:0; border-radius:9px; background:transparent; color:var(--muted); text-align:left; font-size:11px; font-weight:800; cursor:pointer; }
.staff-crm-mode .crm-more-filters button:hover,.staff-crm-mode .crm-more-filters button.is-active { background:var(--surface-2); color:var(--brand); }
.staff-crm-mode .crm-mine { min-height:38px; padding:0 10px; font-size:11px; }
.staff-crm-mode .crm-toolbar .staff-offline-intake summary { min-height:38px; font-size:11px; }

.staff-crm-mode .crm-cockpit .concierge-staff-grid { position:relative; grid-template-columns:318px minmax(0,1fr); gap:8px; margin-top:6px; }
.staff-crm-mode .crm-queue-panel,.staff-crm-mode .crm-cockpit .concierge-staff-detail { border-radius:14px; }
.staff-crm-mode .crm-queue-panel>header { min-height:48px; padding:8px 11px; }
.staff-crm-mode .crm-queue-panel>header strong { font-size:12px; }
.staff-crm-mode .crm-queue-panel>header small { font-size:10px; }
.staff-crm-mode .crm-cockpit .concierge-staff-queue { padding:5px; }
.staff-crm-mode .crm-cockpit .staff-case { min-height:94px; grid-template-columns:46px minmax(0,1fr); gap:10px; padding:10px; }
.staff-crm-mode .staff-case-avatar { width:46px; height:46px; font-size:12px; }
.staff-crm-mode .staff-case small,.staff-crm-mode .staff-case span { font-size:10px; }
.staff-crm-mode .crm-cockpit .staff-case strong { margin:4px 0; font-size:12px; }
.staff-crm-mode .staff-health { font-size:8px!important; }

.staff-crm-mode .staff-case-workspace { position:relative; grid-template-columns:minmax(460px,1fr) 300px; }
.staff-crm-mode .staff-case-center { grid-template-rows:auto auto minmax(0,1fr); overflow:hidden; }
.staff-crm-mode .staff-case-sidebar { padding:14px; overflow:auto; }
.staff-crm-mode .staff-center-context { min-height:64px; padding:8px 12px; }
.staff-crm-mode .staff-context-person small { font-size:10px; }
.staff-crm-mode .staff-context-person strong { font-size:14px; }
.staff-crm-mode .staff-context-person p { font-size:11px; }
.staff-crm-mode .staff-context-actions select { min-height:38px; font-size:11px; }
.staff-crm-mode .staff-context-actions>span { width:36px; height:36px; font-size:10px; }
.staff-crm-mode .staff-act-as>summary { min-height:38px; font-size:11px; }
.staff-crm-mode .staff-unassigned { color:var(--muted); font-size:10px; font-style:normal; font-weight:800; white-space:nowrap; }
.staff-mobile-back,.staff-mission-toggle { display:none; }
.staff-mission-toggle { min-height:38px; padding:0 11px; border:1px solid var(--line); border-radius:10px; background:var(--surface-2); font-size:11px; font-weight:850; cursor:pointer; }
.staff-crm-mode .staff-workspace-tabs { min-height:44px; gap:4px; padding:5px 8px; }
.staff-crm-mode .staff-workspace-tabs button { min-height:36px; padding:0 11px; font-size:11px; }
.staff-crm-mode .staff-workspace-tabs button>b { min-width:20px; height:20px; font-size:9px; }
.staff-crm-mode .staff-case-center>.crm-work-section { padding:10px; }
.staff-crm-mode .staff-client-workspace { grid-template-rows:auto minmax(0,1fr) auto; gap:7px; }
.staff-crm-mode .staff-client-workspace .staff-primary-action { min-height:52px; padding:7px 10px; }
.staff-crm-mode .staff-primary-action small { font-size:9px; }
.staff-crm-mode .staff-primary-action strong { font-size:13px; }
.staff-crm-mode .staff-primary-action>.button { min-height:40px; min-width:150px; font-size:12px; }
.staff-crm-mode .staff-client-workspace .staff-conversation { padding:13px; gap:9px; border-radius:14px; scroll-behavior:smooth; }
.staff-crm-mode .staff-client-workspace .staff-conversation>div { width:min(82%,680px); padding:10px 12px; }
.staff-crm-mode .staff-conversation small { font-size:10px; }
.staff-crm-mode .staff-conversation p { margin-top:4px; font-size:13px; line-height:1.45; }
.staff-crm-mode .staff-message-meta { font-size:10px; }
.staff-crm-mode .staff-client-workspace .staff-message-form { min-height:58px; padding:7px 8px; border-radius:14px; }
.staff-crm-mode .staff-client-workspace .staff-message-form textarea { min-height:44px; padding:10px; font-size:14px; resize:none; }
.staff-crm-mode .staff-client-workspace .staff-message-form .button { min-height:44px; min-width:88px; font-size:12px; }

.staff-crm-mode .mission-control-head>div:last-child { display:flex; align-items:center; gap:6px; }
.staff-crm-mode .mission-control-head>div:last-child>span { padding:5px 8px; border-radius:999px; background:color-mix(in srgb,var(--brand) 10%,var(--surface-2)); color:var(--brand); font-size:9px; font-weight:950; }
.staff-crm-mode [data-mission-close] { display:none; width:36px; height:36px; border:0; border-radius:50%; background:var(--surface-2); font-size:20px; cursor:pointer; }
.staff-crm-mode .mission-brief>small,.staff-crm-mode .mission-brief>div small { font-size:9px; }
.staff-crm-mode .mission-brief>strong { font-size:14px; }
.staff-crm-mode .mission-brief>div b { font-size:10px; }
.staff-crm-mode .mission-panel summary b { font-size:11px; }
.staff-crm-mode .mission-panel summary small,.staff-crm-mode .crm-case-form label { font-size:9px; }
.staff-crm-mode .crm-case-form input,.staff-crm-mode .crm-case-form select,.staff-crm-mode .crm-case-form textarea { font-size:12px; }

@media (max-width:1180px) {
  .staff-crm-mode .staff-case-workspace { grid-template-columns:1fr; overflow:hidden; }
  .staff-crm-mode .staff-mission-toggle,.staff-crm-mode [data-mission-close] { display:grid; place-items:center; }
  .staff-crm-mode .staff-case-sidebar { position:absolute; z-index:50; top:0; right:0; bottom:0; width:min(360px,92%); box-sizing:border-box; border-left:1px solid var(--line); border-top:0; background:var(--surface); box-shadow:-18px 0 42px rgba(8,28,21,.18); transform:translateX(105%); transition:transform .2s ease; }
  .staff-crm-mode .staff-case-workspace.is-mission-open .staff-case-sidebar { transform:translateX(0); }
  .staff-crm-mode .crm-cockpit .concierge-staff-grid { grid-template-columns:288px minmax(0,1fr); }
}

@media (max-width:760px) {
  body.staff-crm-mode { min-height:100dvh; }
  .staff-crm-mode .topbar { display:flex; height:58px; min-height:58px; padding:7px 11px; }
  .staff-crm-mode .topbar .notification-button { display:none; }
  .staff-crm-mode .desktop-shell { display:block; height:calc(100dvh - 58px); padding:0; }
  .staff-crm-mode .left-rail,.staff-crm-mode .bottom-nav { display:none!important; }
  .staff-crm-mode .crm-cockpit { height:100%; padding:6px; border:0; border-radius:0; }
  .staff-crm-mode .crm-pro-head,.staff-crm-mode .crm-insights { display:none!important; }
  .staff-crm-mode .crm-toolbar { grid-template-columns:minmax(0,1fr) auto auto; gap:5px; padding:5px; }
  .staff-crm-mode .crm-search { grid-column:1; grid-row:1; }
  .staff-crm-mode .crm-smart-queues { grid-column:1/-1; grid-row:2; overflow-x:auto; }
  .staff-crm-mode .crm-more-filters { grid-column:2; grid-row:1; }
  .staff-crm-mode .crm-toolbar .staff-offline-intake { grid-column:3; grid-row:1; }
  .staff-crm-mode .crm-toolbar .staff-offline-intake summary { width:42px; padding:0; overflow:hidden; font-size:0; }
  .staff-crm-mode .crm-toolbar .staff-offline-intake summary::first-letter { font-size:18px; }
  .staff-crm-mode .crm-toolbar .staff-offline-intake form { position:fixed; inset:66px 8px 8px; width:auto; overflow:auto; }
  .staff-crm-mode .crm-more-filters>div { position:fixed; top:116px; right:8px; width:min(260px,calc(100vw - 16px)); }
  .staff-crm-mode .crm-cockpit .concierge-staff-grid { grid-template-columns:1fr; grid-template-rows:minmax(0,1fr); gap:0; margin-top:6px; }
  .staff-crm-mode .crm-queue-panel { display:flex; }
  .staff-crm-mode .concierge-staff-detail { display:none; }
  .staff-crm-mode .concierge-staff-grid.has-active-case .crm-queue-panel { display:none; }
  .staff-crm-mode .concierge-staff-grid.has-active-case .concierge-staff-detail { display:block; }
  .staff-crm-mode .crm-cockpit .concierge-staff-queue { display:grid; gap:5px; overflow:auto; }
  .staff-crm-mode .crm-cockpit .staff-case { min-width:0; min-height:88px; }
  .staff-crm-mode .staff-mobile-back { width:42px; height:42px; flex:0 0 42px; display:grid; place-items:center; border:0; border-radius:50%; background:var(--surface-2); font-size:25px; cursor:pointer; }
  .staff-crm-mode .staff-center-context { min-height:58px; padding:7px; gap:7px; }
  .staff-crm-mode .staff-context-person { grid-template-columns:38px minmax(0,1fr); gap:7px; }
  .staff-crm-mode .staff-context-person>span { width:38px; height:38px; }
  .staff-crm-mode .staff-context-person small { font-size:9px; }
  .staff-crm-mode .staff-context-person strong { font-size:12px; }
  .staff-crm-mode .staff-context-actions select,.staff-crm-mode .staff-context-actions>span,.staff-crm-mode .staff-unassigned { display:none; }
  .staff-crm-mode .staff-act-as>summary { width:42px; padding:0; justify-content:center; overflow:hidden; font-size:0; }
  .staff-crm-mode .staff-act-as>summary::before { margin:0; font-size:17px; }
  .staff-crm-mode .staff-mission-toggle { width:42px; padding:0; font-size:0; }
  .staff-crm-mode .staff-mission-toggle::before { content:"ⓘ"; font-size:18px; }
  .staff-crm-mode .staff-workspace-tabs { min-height:46px; padding:5px 6px; }
  .staff-crm-mode .staff-workspace-tabs button { min-height:38px; font-size:11px; }
  .staff-crm-mode .staff-case-center>.crm-work-section { padding:6px; }
  .staff-crm-mode .staff-client-workspace .staff-primary-action { min-height:48px; }
  .staff-crm-mode .staff-primary-action strong { max-width:50vw; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:12px; }
  .staff-crm-mode .staff-primary-action>.button { min-width:0; min-height:40px; padding:0 11px; font-size:11px; }
  .staff-crm-mode .staff-client-workspace .staff-conversation { padding:9px; }
  .staff-crm-mode .staff-client-workspace .staff-conversation>div { width:91%; }
  .staff-crm-mode .staff-conversation p { font-size:14px; }
  .staff-crm-mode .staff-client-workspace .staff-message-form { min-height:58px; }
  .staff-crm-mode .staff-client-workspace .staff-message-form textarea { min-height:46px; font-size:16px; }
  .staff-crm-mode .staff-client-workspace .staff-message-form .button { min-width:70px; min-height:46px; }
  .staff-crm-mode .staff-case-sidebar { position:absolute; top:auto; left:0; right:0; bottom:0; width:100%; height:min(78%,620px); border:1px solid var(--line); border-radius:20px 20px 0 0; box-shadow:0 -20px 50px rgba(8,28,21,.22); transform:translateY(105%); }
  .staff-crm-mode .staff-case-workspace.is-mission-open .staff-case-sidebar { transform:translateY(0); }
}

/* R47 · Identidad progresiva: visitante → contacto → cuenta reclamada. */
.identity-panel { margin-top:8px; border-color:color-mix(in srgb,var(--chat-green) 28%,var(--line)); }
.identity-panel>summary { gap:8px; }
.identity-state { margin-left:auto; padding:4px 7px; border-radius:999px; background:var(--surface-2); color:var(--muted); font-size:8px; font-style:normal; font-weight:900; white-space:nowrap; }
.identity-state:is(.is-verified,.is-linked,.is-claimed) { background:color-mix(in srgb,var(--chat-green) 14%,var(--surface)); color:var(--chat-green); }
.identity-state.is-assisted { background:color-mix(in srgb,var(--brand-2) 18%,var(--surface)); color:var(--brand); }
.identity-panel-body { display:grid; gap:9px; padding:10px; }
.identity-account { min-width:0; display:grid; grid-template-columns:34px minmax(0,1fr); align-items:center; gap:8px; padding:8px; border-radius:11px; background:var(--surface-2); }
.identity-account>span { width:34px; height:34px; display:grid; place-items:center; border-radius:50%; background:var(--surface); color:var(--muted); font-weight:950; }
.identity-account.is-active>span { background:var(--chat-green); color:#fff; }
.identity-account.is-assisted>span { background:var(--brand); color:#fff; }
.identity-account strong,.identity-account small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.identity-account strong { font-size:11px; }.identity-account small { margin-top:2px; color:var(--muted); font-size:9px; }
.identity-contact-list { display:grid; gap:5px; }
.identity-contact-list>p { margin:0; color:var(--muted); font-size:10px; }
.identity-contact { display:grid; grid-template-columns:54px minmax(0,1fr) auto; align-items:center; gap:6px; padding:7px 8px; border:1px solid var(--line); border-radius:9px; background:var(--surface); font-size:9px; }
.identity-contact b { color:var(--muted); font-size:8px; }.identity-contact i { color:var(--muted); font-size:7px; font-style:normal; }.identity-contact.is-verified i { color:var(--chat-green); font-weight:900; }
.staff-identity-form { display:grid; gap:6px; }
.staff-identity-form label { display:grid; gap:3px; color:var(--muted); font-size:9px; font-weight:800; }
.staff-identity-form input { width:100%; min-height:38px; box-sizing:border-box; padding:8px; border:1px solid var(--line); border-radius:9px; background:var(--surface-2); color:var(--text); font-size:11px; }
.staff-identity-form .button { min-height:38px; font-size:10px; }
.identity-matches { display:grid; gap:5px; padding-top:8px; border-top:1px solid var(--line); }
.identity-matches>header strong,.identity-matches>header small { display:block; }.identity-matches>header strong { font-size:10px; }.identity-matches>header small { color:var(--muted); font-size:8px; }
.identity-match { min-width:0; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:6px; align-items:center; padding:8px; border:1px solid var(--line); border-radius:10px; background:var(--surface); }
.identity-match strong,.identity-match small,.identity-match em { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.identity-match strong { font-size:10px; }.identity-match small,.identity-match em { margin-top:2px; color:var(--muted); font-size:8px; font-style:normal; }
.identity-match button { min-height:34px; padding:0 8px; border:0; border-radius:8px; background:var(--brand); color:var(--bg); font-size:8px; font-weight:900; cursor:pointer; }
.identity-match button[disabled] { background:var(--surface-2); color:var(--muted); cursor:not-allowed; }
.identity-actions { display:grid; grid-template-columns:1fr 1fr; gap:6px; }.identity-actions .button { min-width:0; min-height:38px; padding:0 7px; font-size:9px; }.identity-actions .button:only-child { grid-column:1/-1; }.identity-actions .button[disabled] { opacity:.45; cursor:not-allowed; }
.identity-claim-ready { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:5px; padding:8px; border-radius:11px; background:color-mix(in srgb,var(--chat-green) 11%,var(--surface-2)); }
.identity-claim-ready small { grid-column:1/-1; color:var(--chat-green); font-size:7px; font-weight:950; }.identity-claim-ready input { min-width:0; height:34px; padding:0 7px; border:1px solid var(--line); border-radius:8px; background:var(--surface); color:var(--text); font-size:8px; }.identity-claim-ready button { border:0; border-radius:8px; background:var(--chat-green); color:#fff; font-size:8px; font-weight:900; cursor:pointer; }
.identity-safety { margin:0; color:var(--muted); font-size:8px; line-height:1.45; }

.identity-claim-page { min-height:100dvh; background:radial-gradient(circle at 15% 12%,color-mix(in srgb,var(--accent) 18%,transparent),transparent 34%),var(--bg); }
.identity-claim-shell { width:min(520px,calc(100% - 28px)); min-height:100dvh; margin:auto; display:grid; align-content:center; gap:18px; padding:28px 0; box-sizing:border-box; }
.identity-claim-brand { width:max-content; display:flex; align-items:center; gap:10px; color:var(--brand); font-size:20px; letter-spacing:.08em; }
.identity-claim-brand span { width:42px; height:42px; display:grid; place-items:center; border-radius:14px; background:var(--accent); color:var(--accent-ink); font-weight:950; }
.identity-claim-card { padding:clamp(24px,6vw,42px); border:1px solid var(--line); border-radius:28px; background:var(--surface); box-shadow:var(--shadow); }
.identity-claim-icon { width:56px; height:56px; display:grid; place-items:center; margin-bottom:18px; border-radius:18px; background:color-mix(in srgb,var(--chat-green) 15%,var(--surface-2)); color:var(--chat-green); font-size:24px; font-weight:950; }
.identity-claim-card h1 { margin:5px 0 10px; font-size:clamp(27px,7vw,38px); line-height:1.05; }
.identity-claim-card>p { color:var(--muted); font-size:14px; line-height:1.55; }
.identity-claim-proof { margin:18px 0; padding:12px 14px; border-radius:13px; background:var(--surface-2); }.identity-claim-proof small,.identity-claim-proof strong { display:block; }.identity-claim-proof small { color:var(--muted); font-size:10px; }.identity-claim-proof strong { margin-top:3px; font-size:14px; }
.identity-claim-form { display:grid; gap:10px; }.identity-claim-form label { display:grid; gap:5px; color:var(--muted); font-size:11px; font-weight:850; }.identity-claim-form input { min-height:48px; padding:0 13px; border:1px solid var(--line); border-radius:12px; background:var(--surface-2); color:var(--text); font-size:16px; }.identity-claim-form .button,.identity-claim-card>form .button,.identity-claim-card>a.button { width:100%; min-height:50px; display:grid; place-items:center; margin-top:4px; }
.identity-claim-error { padding:10px 12px; border-radius:11px; background:#ffe2de; color:#9c3029!important; font-weight:800; }
.identity-claim-safety { margin:14px 0 0!important; font-size:10px!important; }
@media(max-width:760px){.identity-panel-body{padding:9px}.identity-actions{grid-template-columns:1fr}.identity-actions .button{grid-column:1}.identity-claim-shell{align-content:start;padding-top:20px}.identity-claim-card{border-radius:22px}.identity-claim-card h1{font-size:30px}}

/* R51 · Shell móvil confiable: una tarea, un scroll y controles alcanzables. */
.concierge-inbox-title { min-width:0; display:flex; align-items:center; gap:8px; }
.concierge-inbox-home { display:none; }
.operation-jump { display:none; }

@media (max-width:760px) {
  body.is-concierge-app:not(.staff-crm-mode) {
    width:100%;
    height:100dvh;
    min-height:100dvh;
    overflow:hidden;
  }
  body.is-concierge-app:not(.staff-crm-mode) .topbar,
  body.is-concierge-app:not(.staff-crm-mode) .left-rail,
  body.is-concierge-app:not(.staff-crm-mode) .bottom-nav {
    display:none!important;
  }
  body.is-concierge-app:not(.staff-crm-mode) .desktop-shell {
    width:100%;
    max-width:none;
    height:100dvh;
    min-height:0;
    margin:0;
    padding:0!important;
    overflow:hidden;
  }
  body.is-concierge-app:not(.staff-crm-mode) :is(.workspace,.concierge-app-view,.concierge-layout) {
    width:100%;
    max-width:100%;
    height:100%;
    min-width:0;
    min-height:0;
    margin:0;
    overflow:hidden;
  }
  .concierge-inbox-title { gap:5px; }
  .concierge-inbox-home {
    width:42px;
    height:42px;
    flex:0 0 42px;
    display:grid;
    place-items:center;
    border-radius:50%;
    color:var(--brand);
    font-size:29px;
    line-height:1;
  }
  .concierge-inbox-home:active { background:var(--surface-2); }
  .concierge-inbox-head { min-width:0; }
  .concierge-inbox-head .eyebrow { display:none; }
  .concierge-inbox-head h1 { font-size:23px; }
  .concierge-inbox-list,.concierge-messages,.concierge-plan-panel { overscroll-behavior:contain; }
  .concierge-empty { max-width:340px; padding:16px 14px; }
  .concierge-empty > span { width:44px; height:44px; margin-bottom:10px; }
  .concierge-empty strong { font-size:19px; }
  .concierge-empty p { font-size:13px; }
  .concierge-form {
    width:100%;
    min-width:0;
    grid-template-columns:44px 44px minmax(0,1fr) 44px;
    align-items:end;
    gap:6px;
  }
  .concierge-form :is(.voice-button,.concierge-send) { width:44px; height:44px; min-width:44px; }
  .concierge-input-wrap,.concierge-input-wrap textarea { min-width:0; max-width:100%; }
  .concierge-input-wrap textarea { min-height:44px; padding:11px 12px; }
  .concierge-share-sheet { max-height:min(520px,72dvh); }
  .concierge-templates-dialog { width:100%; max-width:100%; }
  .concierge-template-grid { grid-template-columns:1fr; }
  .concierge-template-card > button { min-height:48px; font-size:13px; }

  .operation-app-view { width:100%; min-width:0; padding-bottom:24px; }
  .operation-app-view > .page-heading { max-width:100%; margin-bottom:14px; }
  .operation-app-view > .page-heading h1 {
    max-width:100%;
    margin-bottom:9px;
    font-size:clamp(29px,8.5vw,38px);
    line-height:1.02;
    overflow-wrap:anywhere;
  }
  .operation-app-view > .page-heading > p:last-child { max-width:36ch; font-size:15px; line-height:1.45; }
  .operation-jump {
    position:sticky;
    z-index:22;
    top:58px;
    margin:0 -14px 12px;
    padding:8px 14px;
    display:flex;
    gap:7px;
    overflow-x:auto;
    overscroll-behavior-inline:contain;
    scrollbar-width:none;
    border-block:1px solid var(--line);
    background:color-mix(in srgb,var(--bg) 94%,transparent);
    backdrop-filter:blur(18px);
  }
  .operation-jump::-webkit-scrollbar { display:none; }
  .operation-jump button {
    min-width:max-content;
    min-height:42px;
    padding:0 14px;
    border:1px solid var(--line);
    border-radius:999px;
    background:var(--surface);
    color:var(--muted);
    font-size:12px;
    font-weight:850;
  }
  .operation-jump button.is-active { border-color:var(--brand); background:var(--brand); color:var(--bg); }
  .operation-metrics {
    margin:0 -14px 16px;
    padding:0 14px 5px;
    display:flex;
    gap:9px;
    overflow-x:auto;
    overscroll-behavior-inline:contain;
    scroll-snap-type:x proximity;
    scrollbar-width:none;
  }
  .operation-metrics::-webkit-scrollbar { display:none; }
  .operation-metric {
    min-width:136px;
    min-height:92px;
    padding:13px;
    flex:0 0 136px;
    scroll-snap-align:start;
  }
  .operation-metric span { font-size:11px; }
  .operation-metric strong { font-size:24px; }
  .operation-columns { grid-template-columns:1fr; gap:12px; }
  .operation-columns > .money-panel { min-width:0; scroll-margin-top:118px; }
  .operation-columns .section-heading h2 { font-size:19px; }
  .operation-columns .section-heading p { font-size:12px; }
  .operation-item h3 { font-size:15px; }
  .operation-item p { font-size:12px; }
  .operation-actions button { min-height:44px; padding-inline:13px; font-size:12px; }
}

/* En pantallas compactas Control de Misión deja de competir con la conversación. */
@media (max-width:1180px), (max-height:760px) {
  .staff-crm-mode .staff-mission-toggle,
  .staff-crm-mode [data-mission-close] {
    display:grid;
    place-items:center;
  }
  .staff-crm-mode .staff-case-sidebar {
    position:fixed;
    z-index:130;
    inset:0;
    width:100%;
    height:100dvh;
    max-width:none;
    max-height:none;
    padding:0 clamp(14px,3vw,28px) calc(28px + env(safe-area-inset-bottom));
    overflow-y:auto;
    overscroll-behavior:contain;
    border:0;
    border-radius:0;
    background:var(--surface);
    box-shadow:none;
    transform:translateY(102%);
    visibility:hidden;
    pointer-events:none;
    transition:transform .22s ease,visibility 0s linear .22s;
  }
  .staff-crm-mode .staff-case-workspace.is-mission-open .staff-case-sidebar {
    transform:translateY(0);
    visibility:visible;
    pointer-events:auto;
    transition:transform .22s ease;
  }
  .staff-crm-mode .mission-control-head {
    position:sticky;
    z-index:3;
    top:0;
    min-height:64px;
    margin:0 calc(clamp(14px,3vw,28px) * -1) 14px;
    padding:calc(8px + env(safe-area-inset-top)) clamp(14px,3vw,28px) 8px;
    border-bottom:1px solid var(--line);
    background:color-mix(in srgb,var(--surface) 96%,transparent);
    backdrop-filter:blur(18px);
  }
  .staff-crm-mode .mission-control-head h4 { font-size:20px; }
  .staff-crm-mode [data-mission-close] {
    width:44px;
    height:44px;
    display:grid;
    place-items:center;
    flex:0 0 44px;
    border:0;
    border-radius:50%;
    background:var(--surface-2);
    font-size:24px;
  }
  .staff-crm-mode .mission-brief { padding:16px; }
  .staff-crm-mode .mission-brief > strong { font-size:17px; }
  .staff-crm-mode .mission-brief > div small,
  .staff-crm-mode .mission-brief > div b { font-size:12px; }
  .staff-crm-mode .mission-panel { margin-top:10px; border-radius:16px; }
  .staff-crm-mode .mission-panel summary { min-height:58px; padding:10px 42px 10px 13px; }
  .staff-crm-mode .mission-panel summary b { font-size:14px; }
  .staff-crm-mode .mission-panel summary small { font-size:11px; }
  .staff-crm-mode .mission-fields { padding:12px; }
  .staff-crm-mode .mission-fields label { font-size:12px; }
  .staff-crm-mode .mission-fields :is(input,select,textarea) { min-height:48px; font-size:16px; }
  .staff-crm-mode .mission-fields .button { min-height:48px; font-size:13px; }
}

body.mission-overlay-open { overflow:hidden!important; }

@media (prefers-reduced-motion:reduce) {
  .staff-crm-mode .staff-case-sidebar { transition:none!important; }
}
.app-release-badge{display:inline-flex;align-items:center;min-height:20px;margin-top:7px;padding:0 7px;border-radius:999px;background:color-mix(in srgb,var(--app-color) 12%,var(--surface));color:var(--app-color);font-size:8px;font-weight:900;letter-spacing:.04em;text-transform:uppercase}
