/* Reused App State dashboard primitives. Brand and domain are adapter inputs.
Source: Campus staff design-tokens, shell, components, sheets, navigation, conversation. */
/* Campus staff design tokens.
 * Source: Alpha admin-surface/tokens.css and final compact component rules,
 * revision 62a3810261d8b645cda4cce93885e8144eda01cd. Campus gold is the brand
 * accent; semantic status and money colors retain the source meanings.
 * Component styles consume these names; legacy bindings resolve here only.
 */
[data-dashboard] {
  --safe-top: env(safe-area-inset-top, 0px);
  --safe-bottom: env(safe-area-inset-bottom, 0px);
  --safe-left: env(safe-area-inset-left, 0px);
  --safe-right: env(safe-area-inset-right, 0px);

  /* Content is separated by spacing and fill; edges belong to controls. */
  --content-edge: 0;
  --view-tools-rail: 56px;
  --view-tools-open: 232px;
  --view-gutter: 20px;
  --bg: #000000;
  --panel: #000000;
  --raised: #1c1c1c;
  --soft: #171717;
  --hover: #242424;
  --chrome: #171717b8;
  --chrome-line: #ffffff20;
  --chrome-blur: 24px;
  --ink: #f2f2f2;
  --text: var(--ink);
  --muted: #a0a0a0;
  --faint: #888888;
  --line: #ffffff14;
  --border: var(--line);
  --surface: var(--bg);
  --accent: #ffcc00;
  --accent-ink: #000000;
  --link: var(--accent);
  --tint: color-mix(in srgb, var(--accent) 12%, transparent);
  --accent-line: color-mix(in srgb, var(--accent) 25%, transparent);
  --positive: #30d158;
  --negative: #ff453a;
  --warning: #ff9f0a;
  --informative: #0a84ff;
  --refunded: #bf5af2;
  --money: var(--positive);

  --font: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --font-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  --sheet: #18181a;
  --sheet-head: #1c1c1e;
  --sheet-group: #202023;
  --sheet-field: #28282c;
  --sheet-width: 760px;
  --sheet-radius: 24px;
  --sheet-height: 640px;
  --sheet-gutter: 24px;
  --control-height: 30px;
  --input-font-size: 13px;
  --control-radius: 999px;
  --control-gap: 8px;
  --control-inset: 14px;
  --control-trailing-inset: 40px;
  --radius: var(--control-radius);
  --sidebar-width: 188px;
  --sidebar-collapsed-width: 64px;
  --topbar-height: 50px;
  --ease: cubic-bezier(.22, 1, .36, 1);
  --spring: cubic-bezier(.2, .9, .3, 1);
  --press: cubic-bezier(.3, 1.4, .5, 1);

  /* Original chart palette, independent of status semantics. */
  --chart-1: #e8ad62;
  --chart-2: #78a5d6;
  --chart-3: #c4c7ce;
  --chart-4: #777f8f;
  --chart-5: #b29a77;

  /* Existing campus handlers and renderers keep their variable bindings. */
  --cell: var(--soft);
  --cell2: var(--sheet-group);
  --fill: #ffffff12;
  --fill2: #ffffff08;
  --ink2: var(--muted);
  --ink3: var(--faint);
  --ink4: #666666;
  --sep: var(--line);
  --sep2: #ffffff26;
  --glass: var(--bg);
  --glass-line: var(--line);
  --scrim: #00000099;
  --inv: var(--ink);
  --on-inv: var(--bg);
  --gold: var(--accent);
  --gold-ink: var(--accent);
  --gold-wash: var(--tint);
  --black: var(--bg);
  --green: var(--positive);
  --green-wash: #30d15814;
  --red: var(--negative);
  --red-wash: #ff453a14;
  --orange: var(--warning);
  --orange-wash: #ff9f0a14;
  --blue: var(--informative);
  --blue-wash: #0a84ff14;
  --grey-wash: #b7bbc20c;
  --s-online: var(--informative);
  --s-register: var(--accent);
  --plate: var(--raised);
  --plate-card: #e6e6ea;
  --img-blend: normal;
  --img-filter: none;
  --sans: var(--font);
  --round: var(--font);
  --mono: var(--font-mono);
  --side: var(--sidebar-width);
  --nav: var(--topbar-height);
  --gut: var(--view-gutter);
  --sat: var(--safe-top);
  --sab: var(--safe-bottom);
  --sal: var(--safe-left);
  --sar: var(--safe-right);
  --sheet-bg: var(--sheet);
  --sheet-row: var(--sheet-group);
  --sheet-sep: var(--line);
  --menu-bg: var(--sheet-head);
  --dim: var(--scrim);
  --np-a: #3a3a3e;
  --np-b: #26262a;
  --np-line: var(--line);
  --np-ink: var(--ink);
  --np-ink2: var(--muted);
  --c1: var(--chart-1);
  --c2: var(--chart-2);
  --c3: var(--chart-3);
  --c4: var(--chart-4);
  --c5: var(--chart-5);
  --c6: var(--refunded);
  --c7: var(--informative);
  --c8: var(--warning);
  --status-ink: #b7bbc2;
  --status-fill: #b7bbc20c;
  --status-line: #b7bbc21c;
  color-scheme: dark;
}

@media (min-width: 700px) and (max-width: 1099px) {
  [data-dashboard] { --view-gutter: 16px; }
}
@media (pointer: coarse) {
  [data-dashboard] { --control-height: 44px; --input-font-size: 16px; }
}
@media (max-width: 699px) {
  [data-dashboard] {
    --view-gutter: 12px;
    --control-height: 48px;
    --input-font-size: 16px;
    --control-radius: 999px;
  }
}
/* These values are Alpha's final desktop component scale, not its older
 * larger touch-sheet defaults. Keep them in this one token source. */
@media (min-width: 800px) and (pointer: fine) {
  [data-dashboard] {
    --control-radius: 999px;
    --topbar-height: 44px;
    --sheet-width: 720px;
    --sheet-radius: 24px;
    --sheet-gutter: 32px;
  }
}
@media (prefers-contrast: more) {
  [data-dashboard] {
    --line: #ffffff4d;
    --muted: #c4c4c8;
    --faint: #b5b5ba;
  }
}

:root{--campus-enter:320ms;--campus-exit:180ms;--campus-enter-scale:.965;--campus-motion:cubic-bezier(.22,1,.36,1)}

/* Workspace frame; application navigation is presented by navigation.js. */
html,body{height:100%;margin:0;overflow:hidden;background:var(--bg,#000)}
[data-dashboard]{position:fixed;inset:0;isolation:isolate;overflow:hidden;background:var(--bg);color:var(--ink);font:13px/1.45 var(--font)}
[data-dashboard] #app.on{position:absolute;inset:0;display:grid;grid-template-columns:0 minmax(0,1fr);grid-template-rows:minmax(0,1fr);height:100%;overflow:hidden}
[data-dashboard] .side[hidden]{display:none}
[data-dashboard] .side{position:relative;display:flex;flex-direction:column;gap:12px;min-height:0;overflow-y:auto;padding:16px 8px 10px;border-right:var(--content-edge);background:var(--panel);scrollbar-width:none}
[data-dashboard] .side-brand{display:flex;align-items:center;gap:8px;padding:0 6px 8px}
[data-dashboard] .side-brand img{width:25px;height:29px;object-fit:contain;flex:none}
[data-dashboard] .side-brand>span{flex:1;min-width:0}
[data-dashboard] .side-brand b{display:block;font-size:14px;font-weight:500}
[data-dashboard] .side-brand small{display:block;font-size:10px;color:var(--muted)}
[data-dashboard] .side-nav,[data-dashboard] .side-foot{display:flex;flex-direction:column;gap:3px;min-width:0}
[data-dashboard] .side-foot{margin-top:auto;border-top:var(--content-edge);padding-top:12px}
[data-dashboard] .side :is(a,.me){position:relative;display:flex;align-items:center;gap:9px;min-height:32px;width:100%;padding:6px 8px;border-radius:5px;font-size:12px;color:var(--muted);text-align:left}
[data-dashboard] .side a:hover,[data-dashboard] .me:hover{background:var(--hover);color:var(--ink)}
[data-dashboard] .side a[aria-current=page]{background:var(--tint);color:var(--accent)}
[data-dashboard] .side a .ic{width:16px;height:16px;flex:none}
[data-dashboard] .side .nl{flex:1;min-width:0}
[data-dashboard] .side-h{margin:12px 8px 4px;font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--faint)}
[data-dashboard] .me-txt{min-width:0;flex:1}
[data-dashboard] .me-txt b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
[data-dashboard] .me-txt small{display:block;font-size:10px;color:var(--faint);white-space:normal;overflow:visible;text-overflow:clip;-webkit-line-clamp:unset;overflow-wrap:break-word;word-break:normal;hyphens:manual}
[data-dashboard] .avatar.lg{width:48px;height:48px;font-size:20px}
[data-dashboard] .side-tg{margin-left:auto}
[data-dashboard] .view{grid-column:2;grid-row:1;position:relative;min-width:0;min-height:0;overflow:auto;overscroll-behavior:contain;scroll-padding-top:60px;outline:none;background:var(--bg)}
[data-dashboard] .view.flush{overflow:hidden}
[data-dashboard] .sample-ribbon{grid-column:2;grid-row:1;display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;padding:0 var(--view-gutter);border-bottom:var(--content-edge);background:var(--soft);font-size:10px;letter-spacing:.02em;color:var(--muted)}
[data-dashboard] .sample-ribbon a{color:var(--accent)}
[data-dashboard] .navbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:8px;min-height:44px;padding:6px var(--view-gutter);background:color-mix(in srgb,var(--bg) 65%,transparent);backdrop-filter:blur(var(--chrome-blur)) saturate(1.5);-webkit-backdrop-filter:blur(var(--chrome-blur)) saturate(1.5);border-bottom:0}
[data-dashboard] .navbar .nt{flex:1;min-width:0;font-size:13px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
[data-dashboard] .nact{display:flex;align-items:center;gap:6px}
[data-dashboard] .lt{padding:20px var(--view-gutter) 16px}
[data-dashboard] .lt h1{font-size:22px;line-height:1.3;font-weight:500;letter-spacing:-.5px}
[data-dashboard] .lt p{font-size:12px;line-height:1.5;color:var(--muted);margin-top:6px}
[data-dashboard] .body{padding:0 var(--view-gutter) 32px;min-width:0}
[data-dashboard] .tabbar{display:none}
[data-dashboard] .only-n,[data-dashboard] .only-c{display:none!important}
[data-dashboard] .glass{background:var(--raised)}
body.reviewer-mode [data-dashboard] :is(.side,.side-open,.navbar .nact){display:none}
body.reviewer-mode [data-dashboard] .body{max-width:1000px;margin:auto}
[data-dashboard] .navbar h1.nt{font-size:18px;font-weight:500;line-height:1.4}
[data-dashboard] .view>.body{padding-top:16px}
[data-dashboard] .pane-description{margin:16px var(--view-gutter);font-size:12px;color:var(--muted)}


[data-dashboard] .view{view-transition-name:campus-view;transform-origin:50% 50%}
[data-dashboard] .workspace-dock{view-transition-name:campus-dock}
::view-transition-old(root),::view-transition-new(root){animation:none}
::view-transition-group(campus-view){animation-duration:var(--campus-enter);animation-timing-function:var(--campus-motion)}
::view-transition-old(campus-view){animation:campus-view-out var(--campus-exit) ease-out both}
::view-transition-new(campus-view){animation:campus-view-in var(--campus-enter) var(--campus-motion) both;transform-origin:center}
::view-transition-old(campus-dock),::view-transition-new(campus-dock){animation-duration:var(--campus-exit)}
@keyframes campus-view-in{from{opacity:0;transform:scale(var(--campus-enter-scale))}to{opacity:1;transform:scale(1)}}
@keyframes campus-view-out{to{opacity:0;transform:scale(1.015)}}
@media(prefers-reduced-motion:reduce){::view-transition-old(campus-view),::view-transition-new(campus-view),::view-transition-old(campus-dock),::view-transition-new(campus-dock){animation:none}}

/* Shared Alpha controls, statuses and fact rows. No view sets their geometry. */
[data-dashboard] :is(button,input,select,textarea){font-family:var(--font)}
[data-dashboard] button{text-align:center}
[data-dashboard] :is(button,a,input,textarea,select,summary):focus-visible{outline:2px solid var(--accent);outline-offset:3px}
[data-dashboard] :where(.btn,.tbtn,.chip,.seg button){display:inline-flex;align-items:center;justify-content:center;text-align:center;gap:var(--control-gap);min-height:var(--control-height);height:auto;max-width:100%;padding:5px var(--control-inset);border:1px solid transparent;border-radius:var(--control-radius);background:var(--soft);color:var(--ink);font-size:12px;font-weight:500;line-height:1.4;white-space:nowrap;cursor:pointer;box-shadow:none}
[data-dashboard] :is(.btn,.tbtn,.chip,.seg button):hover:not(:disabled){background:var(--hover)}
[data-dashboard] .btn.gold{background:var(--accent);color:var(--accent-ink)}
[data-dashboard] .btn.gold:hover:not(:disabled){filter:brightness(1.08);background:var(--accent)}
[data-dashboard] .btn.danger{background:var(--red-wash);color:var(--negative)}
[data-dashboard] .btn.plain{background:transparent;color:var(--link)}
[data-dashboard] .btn.block{width:100%}
[data-dashboard] .btn.lg,[data-dashboard] .btn.xl{min-height:44px;padding:10px 16px;font-size:15px}
[data-dashboard] .tbtn{width:var(--control-height);height:var(--control-height);padding:6px;flex:none}
[data-dashboard] .btn .ic{width:16px;height:16px}
[data-dashboard] :is(button:disabled,[aria-disabled=true]){opacity:.4;cursor:not-allowed}
[data-dashboard] .field{display:grid;gap:6px;min-width:0}
[data-dashboard] .field>span{font-size:12px;color:var(--muted)}
[data-dashboard] .field small{font-size:11px;color:var(--faint);line-height:1.5}
[data-dashboard] .inp{display:block;width:100%;min-width:0;min-height:var(--control-height);height:auto;padding:6px var(--control-inset);border:1px solid var(--line);border-radius:var(--control-radius);background:var(--soft);color:var(--ink);font-size:var(--input-font-size);line-height:1.4;box-shadow:none}
[data-dashboard] textarea.inp{min-height:96px;resize:vertical}
[data-dashboard] select.inp{appearance:none;-webkit-appearance:none;padding-right:var(--control-trailing-inset);text-overflow:ellipsis;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m6 8 4 4 4-4' fill='none' stroke='%238e8e93' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:14px 14px}
[data-dashboard] .sel{min-width:0;max-width:100%}
[data-dashboard] .search{position:relative;display:flex;align-items:center;min-width:0;border-radius:var(--control-radius)}
[data-dashboard] .search:not(:has(input)){display:none}
[data-dashboard] .search>.ic{position:absolute;left:10px;width:16px;height:16px;color:var(--faint);pointer-events:none}
[data-dashboard] .search>.inp{padding-left:34px}
[data-dashboard] .seg{display:flex;align-items:center;gap:4px;flex-wrap:wrap;padding:0;background:transparent}
[data-dashboard] .seg button[aria-selected=true],[data-dashboard] .seg button[aria-pressed=true],[data-dashboard] .chip[aria-pressed=true]{background:var(--tint);color:var(--accent)}
[data-dashboard] .seg .ct{color:var(--muted);margin-left:4px}
[data-dashboard] .toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;min-width:0}
[data-dashboard] .toolbar .grow{flex:1;min-width:0}
[data-dashboard] .toolbar .search{flex:1 1 240px}
[data-dashboard] .pill{display:inline-flex;align-items:center;justify-content:center;flex:none;align-self:center;gap:5px;width:max-content;max-width:100%;min-height:20px;height:auto;padding:2px 6px;border:var(--content-edge);border-radius:999px;background:var(--soft);color:var(--muted);font-size:11px;font-weight:500;line-height:1.3;text-align:center;white-space:nowrap;vertical-align:middle}
[data-dashboard] .pill:before{content:'';width:5px;height:5px;flex:none;border-radius:50%;background:currentColor}
[data-dashboard] .pill.plain:before{display:none}
[data-dashboard] .pill.green{background:var(--green-wash);color:var(--positive);border-color:#30d15840}
[data-dashboard] .pill.red{background:var(--red-wash);color:var(--negative);border-color:#ff453a40}
[data-dashboard] .pill.orange{background:var(--orange-wash);color:var(--warning);border-color:#ff9f0a40}
[data-dashboard] .pill.blue{background:var(--blue-wash);color:var(--blue);border-color:#0a84ff40}
[data-dashboard] .pill.gold{background:var(--tint);color:var(--accent);border-color:var(--accent-line)}
[data-dashboard] .nb{display:inline-flex;align-items:center;justify-content:center;flex:none;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--tint);color:var(--accent);font-size:10px;line-height:1;font-weight:600}
[data-dashboard] .sim{display:inline-flex;align-items:center;min-height:18px;padding:2px 5px;border-radius:4px;background:var(--tint);color:var(--accent);font-size:10px;white-space:nowrap}
[data-dashboard] .chs{display:flex;gap:6px;overflow-x:auto;min-width:0;scrollbar-width:none}
[data-dashboard] .chip{flex:none}
[data-dashboard] .sect{margin:0 0 24px}
[data-dashboard] .sect-h{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin:0;padding:0 0 10px;font-size:12px;font-weight:500;color:var(--muted);text-transform:none;letter-spacing:0}
[data-dashboard] .sect-h.big{font-size:18px;color:var(--ink)}
[data-dashboard] .sect-h :is(a,button){color:var(--link);font-size:12px}
[data-dashboard] .sect-f{padding:8px 0 0;color:var(--muted);font-size:12px;line-height:1.5}
[data-dashboard] .group{background:var(--soft);border:var(--content-edge);border-radius:8px;overflow:hidden}
[data-dashboard] .rw{position:relative;display:flex;align-items:center;gap:12px;width:100%;height:auto;min-height:48px;padding:12px 14px;text-align:left;font-size:13px;line-height:1.5;color:var(--ink)}
[data-dashboard] .rw+.rw{border-top:var(--content-edge)}
[data-dashboard] :is(a.rw,button.rw,.rw.tap):hover{background:var(--hover)}
[data-dashboard] .rw .rt{flex:1 1 0;min-width:0;overflow-wrap:break-word}
[data-dashboard] .rw .rt b{display:block;font-size:13px;font-weight:400;line-height:1.5}
[data-dashboard] .rw .rt b.bold{font-weight:600}
[data-dashboard] .rw .rt small{display:block;margin-top:3px;color:var(--muted);font-size:12px;line-height:1.45}
[data-dashboard] .rw .rv{flex:0 1 auto;min-width:0;max-width:60%;text-align:right;color:var(--muted);font-size:13px;line-height:1.5;overflow-wrap:anywhere}
[data-dashboard] .rw .rv.ink{color:var(--ink);font-weight:500}
[data-dashboard] .rw .chev{width:12px;height:12px;flex:none;color:var(--faint)}
[data-dashboard] .tl{display:grid;place-items:center;flex:none;width:28px;height:28px;border-radius:6px;background:var(--raised);color:var(--muted)}
[data-dashboard] .tl .ic{width:16px;height:16px}
[data-dashboard] .note{display:block;padding:12px 14px;border:var(--content-edge);border-radius:6px;background:var(--soft);color:var(--muted);font-size:13px;line-height:1.6}
[data-dashboard] .note>b{display:block;margin-bottom:6px;color:var(--ink);font-weight:500}
[data-dashboard] .note .ic{width:16px;height:16px;vertical-align:middle;margin-right:6px}
[data-dashboard] .note.gold{background:var(--tint);color:var(--ink)}
[data-dashboard] .note small{display:block;font-size:12px}
[data-dashboard] .errbox{padding:12px 14px;border:var(--content-edge);border-radius:6px;background:var(--red-wash);color:var(--negative);font-size:13px;line-height:1.5}
[data-dashboard] .emp{display:grid;justify-items:center;gap:8px;padding:40px 20px;text-align:center;color:var(--muted);font-size:13px}
[data-dashboard] .emp .ic{width:24px;height:24px;color:var(--faint)}
[data-dashboard] .emp b{color:var(--ink);font-size:14px;font-weight:500}
[data-dashboard] .emp span{max-width:440px;line-height:1.6}
[data-dashboard] .skel{display:block;height:12px;margin:10px 0;border-radius:3px;background:var(--raised);animation:campus-pulse 1.2s ease-in-out infinite alternate}
[data-dashboard] .toasts{position:fixed;top:44px;bottom:auto;left:50%;right:auto;transform:translateX(-50%);z-index:200;display:flex;flex-direction:column;align-items:center;gap:8px;width:max-content;max-width:calc(100vw - 32px);height:auto;pointer-events:none}
[data-dashboard] .toast{display:flex;flex:0 0 auto;align-items:center;gap:10px;width:auto;max-width:min(480px,calc(100vw - 32px));height:auto;min-height:40px;padding:10px 14px;border:var(--content-edge);border-radius:var(--sheet-radius);background:var(--raised);color:var(--ink);font-size:13px;line-height:1.5;box-shadow:0 8px 30px #0008;pointer-events:auto}
[data-dashboard] .toast>span{min-width:0;overflow-wrap:anywhere}
[data-dashboard] .toast .ic{width:18px;height:18px;flex:none;color:var(--positive)}
[data-dashboard] .toast.err .ic{color:var(--negative)}
[data-dashboard] .toast.out{opacity:0;transition:opacity .2s}
[data-dashboard] .spin{display:inline-block;flex:none;width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:rot .7s linear infinite}
@keyframes campus-pulse{to{opacity:.4}}
@media(pointer:coarse),(max-width:699px){[data-dashboard] :is(.btn,.chip,.seg button){min-width:44px}[data-dashboard] :is(.btn,.chip,.seg button,.inp){min-height:44px}[data-dashboard] .tbtn{width:44px;height:44px}}
@media(max-width:699px){[data-dashboard] :is(.btn,.chip,.seg button){min-height:48px;font-size:15px}[data-dashboard] .inp{min-height:48px}[data-dashboard] .tbtn{width:48px;height:48px}[data-dashboard] .rw{padding:14px;font-size:14px}[data-dashboard] .rw .rt b{font-size:14px}}
@media(pointer:coarse),(max-width:699px){[data-dashboard] :is(input,textarea){font-size:var(--input-font-size)}}

/* Shared data hierarchy used by Overview and Analytics. */
[data-dashboard] .stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:0;background:transparent;border-bottom:var(--content-edge);border-radius:0;margin-bottom:24px}
[data-dashboard] .stat{display:grid;align-content:start;gap:6px;min-width:0;padding:12px 16px;border-right:var(--content-edge);background:transparent;border-radius:0}
[data-dashboard] .stat:last-child{border-right:0}
[data-dashboard] .stat .sv{font-size:26px;font-weight:500;line-height:1.25;letter-spacing:-.5px;white-space:normal;overflow-wrap:normal}
[data-dashboard] .stat .sl,[data-dashboard] .stat .ss{font-size:12px;line-height:1.5;color:var(--muted);white-space:normal}
[data-dashboard] .fig{min-width:0;margin:0 0 24px;background:transparent;border-radius:0;border-top:var(--content-edge)}
[data-dashboard] .fig-head{display:flex;justify-content:space-between;gap:12px;padding:14px 0;font-size:13px}
[data-dashboard] .fig-h{font-size:13px;font-weight:500}
[data-dashboard] .fig-sub{font-size:12px;color:var(--muted)}
[data-dashboard] .fig-body{padding:0}
[data-dashboard] .switch{appearance:none;width:36px;height:22px;flex:none;border-radius:20px;background:var(--hover);position:relative;border:1px solid var(--line);cursor:pointer}
[data-dashboard] .switch:before{content:'';position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:var(--ink);transition:transform .15s}
[data-dashboard] .switch:checked{background:var(--positive)}
[data-dashboard] .switch:checked:before{transform:translateX(14px)}
@media(max-width:699px){[data-dashboard] .stats{grid-template-columns:repeat(2,minmax(0,1fr))}[data-dashboard] .stat{padding:12px 8px}[data-dashboard] .stat .sv{font-size:22px}}
/* A status label never consumes the text column beside it. */
[data-dashboard] .rw>.pill{max-width:42%;white-space:normal;text-align:center;line-height:1.5}
@media(max-width:699px){[data-dashboard] .rw:has(>.pill){flex-wrap:wrap}[data-dashboard] .rw:has(>.pill)>.rt{flex-basis:calc(100% - 48px)}[data-dashboard] .rw>.pill{margin-left:0;max-width:100%}.rw:has(>.tl)>.pill{margin-left:40px;max-width:calc(100% - 40px)}}
[data-dashboard] .source-details{margin:8px 0 20px;font-size:12px;color:var(--muted)}
[data-dashboard] .source-details summary{cursor:pointer;min-height:30px;padding:6px 0}
[data-dashboard] .source-details p{max-width:90ch;line-height:1.6;margin-top:8px}
[data-dashboard] .vgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:20px 16px;padding:0;align-items:start}
[data-dashboard] .vgrid .pt{display:flex;flex-direction:column;gap:8px;min-width:0;text-align:left}
[data-dashboard] .vgrid .plate{width:100%;height:auto;aspect-ratio:1;border-radius:14px}
[data-dashboard] .vgrid .pt-t{display:grid;gap:5px;width:100%;min-width:0}
[data-dashboard] .vgrid .pt-n{font-size:13px;font-weight:500;line-height:1.4;white-space:normal;overflow-wrap:break-word}
[data-dashboard] .vgrid .pt-m{display:flex;justify-content:space-between;gap:8px;font-size:11px;color:var(--muted)}
[data-dashboard] .upd-toast{position:fixed;inset:calc(12px + var(--safe-top)) calc(12px + var(--safe-right)) auto auto;transform:none;z-index:300;display:flex;align-items:center;justify-content:center;gap:12px;width:max-content;max-width:min(480px,calc(100vw - 24px));height:auto;min-height:44px;max-height:calc(100dvh - 24px);padding:8px 10px 8px 16px;border:var(--content-edge);border-radius:24px;background:var(--raised);box-shadow:0 8px 24px #0008;font:12px/1.5 var(--font)}
[data-dashboard] .upd-toast>span{min-width:0;overflow-wrap:anywhere}
[data-dashboard] .upd-toast [data-reload]{flex:none;padding:5px 10px;border-radius:999px;background:var(--accent);color:var(--accent-ink)}

/* A compound search field owns one focus ring, including its icon and actions. */
[data-dashboard] :is(.view-search,.pos-search,.pos-customer-field,.pos-identity,.mx-composer,.pal-in,.search:has(>input)):focus-within{outline:2px solid var(--accent);outline-offset:2px;border-color:var(--accent)}
[data-dashboard] :is(.view-search,.pos-search,.pos-customer-field,.pos-identity,.mx-composer,.pal-in,.search:has(>input)) :is(input,textarea,button):focus-visible{outline:none;box-shadow:none}

[data-dashboard] .pal-in{border-radius:var(--control-radius)}

/* Native disclosure labels keep a centered, usable touch area. */
@media(pointer:coarse),(max-width:699px){[data-dashboard] summary,[data-dashboard] .source-details summary,[data-dashboard] .ftbl summary{min-height:44px;padding-block:12px;line-height:20px}}

@media(pointer:coarse),(max-width:699px){[data-dashboard] .in-btn{min-width:44px;min-height:44px}[data-dashboard] .search:not(:where(.pos-search,.view-search *)):has(>.in-btn)>.inp{padding-right:52px}}

@media(max-width:699px){[data-dashboard] label.rw:has(>select.inp){flex-wrap:wrap;align-items:flex-start;gap:12px}[data-dashboard] label.rw:has(>select.inp)>.rt{flex:1 0 100%;min-width:0}[data-dashboard] label.rw>select.inp{flex:1 0 100%;width:100%;max-width:100%;min-width:0}}

[data-dashboard] .upd-toast [data-dismiss-update]{flex:none;background:transparent;color:var(--muted)}

[data-dashboard] .customer-directory-scope{font-size:12px;line-height:1.6;color:var(--muted);margin:0 0 16px}

[data-dashboard] .customer-profile-identity{display:flex;align-items:center;gap:12px;margin-bottom:20px;min-width:0}
[data-dashboard] .customer-profile-identity>:not(.avatar){min-width:0;overflow-wrap:anywhere;line-height:1.6;flex:1}

/* One record-sheet frame: bounded height, fixed header/actions, one body scroller. */
[data-dashboard] .ov{position:fixed;inset:0;z-index:100;background:var(--scrim);opacity:0;transition:opacity .18s}
[data-dashboard] .ov.on{opacity:1}
[data-dashboard] .sheet-w{position:fixed;inset:0;z-index:110;display:grid;place-items:center;padding:24px;pointer-events:none}
[data-dashboard] .sheet{display:flex;flex-direction:column;position:relative;pointer-events:auto;width:min(520px,100%);height:auto;min-height:0;max-height:min(var(--sheet-height),calc(var(--sheet-viewport-height,100dvh) - 64px));min-width:0;overflow:hidden;border:var(--content-edge);border-radius:var(--sheet-radius);background:var(--sheet);box-shadow:0 24px 80px #0008;opacity:0;transform:scale(var(--campus-enter-scale));transform-origin:center;transition:opacity var(--campus-exit),transform var(--campus-exit) var(--campus-motion)}
[data-dashboard] .sheet.on{opacity:1;transform:none;transition-duration:var(--campus-enter)}
[data-dashboard] .sheet.tall{width:min(var(--sheet-width),100%);height:min(var(--sheet-height),calc(var(--sheet-viewport-height,100dvh) - 64px))}
[data-dashboard] .sheet.mid{width:min(660px,100%)}
[data-dashboard] .sheet.wide{width:min(900px,100%)}
[data-dashboard] .sheet.psheet{width:min(var(--sheet-width),100%)}
[data-dashboard] .sh-top{flex:none;background:var(--sheet);border-bottom:var(--content-edge)}
[data-dashboard] .sh-h{display:flex;align-items:center;gap:8px;min-height:64px;padding:10px 16px}
[data-dashboard] .sh-h .grow{flex:1;min-width:0}
[data-dashboard] .sh-h [data-context-ask]>.ic{display:none}
[data-dashboard] .sh-h h2{font-size:18px;font-weight:600;line-height:1.35;overflow-wrap:anywhere;white-space:normal}
[data-dashboard] .sh-h p{margin-top:3px;font-size:12px;line-height:1.5;color:var(--muted)}
[data-dashboard] .sh-b{display:block;flex:1 1 auto;min-width:0;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;padding:20px;scroll-padding:20px}
[data-dashboard] .sh-b.sh-g{display:grid;align-content:start;gap:16px}
[data-dashboard] .sh-f{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;flex:none;gap:8px;padding:12px 16px;border-top:var(--content-edge);background:var(--sheet)}
[data-dashboard] .sh-f .grow{flex:1}
[data-dashboard] .sh-b .group{background:var(--sheet-group);border:0;border-radius:12px}
[data-dashboard] .sh-b :where(.inp,select,textarea){background-color:var(--sheet-field)}
[data-dashboard] .sh-b .sect{margin-bottom:20px}
[data-dashboard] .grab{display:none}
[data-dashboard] .menu{position:fixed;z-index:160;min-width:220px;max-width:min(320px,calc(100vw - 24px));padding:5px;border:var(--content-edge);border-radius:8px;background:var(--sheet-head);box-shadow:0 12px 32px #0008;opacity:0}
[data-dashboard] .menu.on{opacity:1}
[data-dashboard] .menu button{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:var(--control-gap);text-align:left;width:100%;min-height:var(--control-height);padding:8px var(--control-inset);border-radius:5px;font-size:12px}
[data-dashboard] .menu button:hover:not(:disabled){background:var(--hover)}
[data-dashboard] .menu .mi-l{min-width:0;overflow-wrap:anywhere;text-align:left;line-height:1.4;white-space:normal}
[data-dashboard] .menu kbd{justify-self:end;max-width:88px;white-space:normal;overflow-wrap:anywhere;text-align:center}
[data-dashboard] .menu .ic-sp{width:18px;height:18px}
[data-dashboard] .menu .danger{color:var(--negative)}
[data-dashboard] .menu-sep{height:1px;margin:5px;background:var(--line)}
[data-dashboard] .pal{position:fixed;left:50%;top:14vh;z-index:120;transform:translateX(-50%);width:min(620px,calc(100vw - 32px));border:var(--content-edge);border-radius:12px;background:var(--sheet);overflow:hidden;opacity:0}
[data-dashboard] .pal.on{opacity:1}
[data-dashboard] .control-sheet{position:fixed;width:min(560px,calc(100vw - 24px));max-height:80dvh;padding:0;border:var(--content-edge);border-radius:var(--sheet-radius);background:var(--sheet);color:var(--ink);overflow:hidden}
[data-dashboard] .control-sheet::backdrop{background:var(--scrim)}
[data-dashboard] .control-sheet-head{display:flex;align-items:center;justify-content:space-between;padding:16px;border-bottom:var(--content-edge)}
[data-dashboard] .control-sheet-head h2{font-size:16px}
[data-dashboard] .control-sheet-body{padding:20px;max-height:65dvh;overflow:auto}
@media(max-width:699px){
 [data-dashboard] .sheet-w{padding:var(--safe-top) 0 0;place-items:end center}
 [data-dashboard] .sheet{width:100%;max-height:min(var(--sheet-height),calc(var(--sheet-viewport-height,100dvh) * .84));border-radius:var(--sheet-radius) var(--sheet-radius) 0 0;border-inline:0;border-bottom:0}
 [data-dashboard] .sheet.tall{height:min(var(--sheet-height),calc(var(--sheet-viewport-height,100dvh) * .84))}
 [data-dashboard] .sh-h{min-height:64px;padding:10px 12px}
 [data-dashboard] .sh-h h2{font-size:17px;white-space:normal;overflow-wrap:break-word}
 [data-dashboard] .sh-h [data-context-ask]{width:44px;height:44px;min-height:44px;padding:0;flex:none}
 [data-dashboard] .sh-h [data-context-ask]>.ic{display:block}
 [data-dashboard] .sh-h [data-context-ask]>span{display:none}
 [data-dashboard] .sh-b{padding:12px;padding-bottom:max(12px,var(--safe-bottom))}
 [data-dashboard] .sh-b:has(+.sh-f:not([hidden])){padding-bottom:12px}
 [data-dashboard] .sh-f{padding:12px;padding-bottom:max(12px,var(--safe-bottom))}
}
@media(prefers-reduced-motion:reduce){[data-dashboard] :is(.sheet,.ov){transition:none}}

@media(max-width:699px){[data-dashboard] .sh-f>span.grow{flex-basis:100%;width:100%;min-width:0;margin-bottom:4px;font-size:12px;line-height:1.5}}
/* Browser-owned top-layer dialogs and popovers. */
[data-dashboard] dialog.sheet-w{width:100%;height:100%;max-width:none;max-height:none;margin:0;border:0;background:transparent;color:var(--ink);overflow:hidden}
[data-dashboard] dialog.sheet-w:not([open]){display:none}
[data-dashboard] dialog.sheet-w::backdrop{background:var(--scrim)}
[data-dashboard] .menu[popover]{inset:auto;margin:0;overflow:auto;max-height:calc(100dvh - 24px)}
[data-dashboard] .command-palette .pal-l{max-height:400px;overflow:auto;min-height:0}
[data-dashboard] .command-palette .pal-in{display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--line);border-radius:999px;background:var(--sheet-field)}
[data-dashboard] .command-palette .pal-in input{width:100%;min-width:0;min-height:36px;border:0;background:transparent;color:var(--ink)}
[data-dashboard] .command-palette .pal-foot{display:flex;gap:12px;color:var(--muted);font-size:11px}

@media(pointer:coarse),(max-width:699px){[data-dashboard] .menu button{min-height:44px}}

@media(max-width:699px){[data-dashboard] .sh-f>span.grow:empty{display:none}[data-dashboard] .sh-f.record-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}[data-dashboard] .sh-f.record-actions>.btn{width:100%;min-width:0}}



[data-dashboard] .command-results{margin-top:16px;display:grid;gap:4px}
[data-dashboard] .command-results .rw{display:flex;gap:12px;text-align:left;min-height:44px;padding:10px 12px;border:0;border-radius:12px}
[data-dashboard] .command-results .rw:focus-visible,[data-dashboard] .command-results .rw:hover{background:var(--hover)}

@media(max-width:699px){[data-dashboard] .keys{grid-template-columns:minmax(0,1fr);gap:6px}[data-dashboard] .keys kbd{justify-self:start;margin-bottom:12px;max-width:100%;white-space:normal}}

/* One application dock, one collapsible toolbar belonging to the current view. */
[data-dashboard]{--workspace-dock-height:58px;--workspace-dock-lift:0px;--local-tools-rail:var(--view-tools-rail);--local-tools-open:var(--view-tools-open)}
[data-dashboard] #app.workspace-shell.on{grid-template-columns:var(--local-tools-rail) minmax(0,1fr)}
[data-dashboard] #app.workspace-shell.local-tools-expanded.on{grid-template-columns:var(--local-tools-open) minmax(0,1fr)}
[data-dashboard] #app.workspace-shell.reviewer-tools.on,[data-dashboard] #app.workspace-shell.has-native-tools.on{grid-template-columns:0 minmax(0,1fr)}
[data-dashboard] .workspace-shell>#side[hidden],[data-dashboard] .workspace-shell>[data-side-show],[data-dashboard] .workspace-shell [data-side-open],[data-dashboard] .workspace-shell [data-local-source],[data-dashboard] .workspace-shell [data-local-source]+.seg-s,[data-dashboard] .workspace-shell [data-local-action]{display:none!important}
[data-dashboard] .workspace-shell>.view{grid-column:2;min-width:0;scroll-padding-bottom:calc(var(--workspace-dock-height) + var(--workspace-dock-lift) + 28px)}
[data-dashboard] .workspace-shell>.view>.body{padding-bottom:calc(var(--workspace-dock-height) + var(--workspace-dock-lift) + 32px + env(safe-area-inset-bottom,0px))}
[data-dashboard] .local-tools{grid-column:1;grid-row:1;display:flex;flex-direction:column;min-width:0;min-height:0;padding:6px;border-right:var(--content-edge);background:var(--bg);overflow:hidden}
[data-dashboard] .local-tools[hidden]{display:none}
[data-dashboard] .local-tools-toggle{flex:none;align-self:flex-start;width:44px;height:44px;margin-bottom:8px}
[data-dashboard] .local-tools-nav{min-width:0;min-height:0;overflow:auto;overscroll-behavior:contain;padding-bottom:12px;scrollbar-width:thin}
[data-dashboard] .local-tools-title{padding:8px 10px 16px;font-size:15px;font-weight:600}
[data-dashboard] .local-tools-group{margin:16px 10px 6px;color:var(--faint);font-size:11px}
[data-dashboard] .local-tool{display:flex;align-items:center;gap:12px;width:100%;min-width:0;min-height:44px;padding:10px 12px;border:0;border-radius:14px;background:transparent;color:var(--muted);text-align:left;font:inherit;font-size:13px;line-height:1.4}
[data-dashboard] .local-tool>.ic{flex:none}
[data-dashboard] .local-tool>span{min-width:0;overflow-wrap:break-word}
[data-dashboard] .local-tool:hover{background:var(--hover);color:var(--ink)}
[data-dashboard] .local-tool[aria-current=page]{background:var(--tint);color:var(--accent)}
[data-dashboard] .workspace-shell:not(.local-tools-expanded)>.local-tools .local-tool{padding:10px;justify-content:center}
[data-dashboard] .workspace-shell:not(.local-tools-expanded)>.local-tools :is(.local-tools-title,.local-tools-group,.local-tool>span){display:none}
[data-dashboard] .workspace-dock{position:absolute;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px) + var(--workspace-dock-lift));z-index:45;display:flex;align-items:center;gap:4px;width:min(440px,calc(100% - 24px));max-width:calc(100% - 24px);margin-inline:auto;padding:6px;border:1px solid var(--chrome-line,var(--line));border-radius:28px;background:var(--chrome);backdrop-filter:blur(var(--chrome-blur)) saturate(1.5);-webkit-backdrop-filter:blur(var(--chrome-blur)) saturate(1.5);box-shadow:0 6px 24px #0004}
[data-dashboard] .workspace-dock[hidden]{display:none}
[data-dashboard] .workspace-dock-common,[data-dashboard] .workspace-dock-context{display:flex;align-items:center;gap:6px;min-width:0}
[data-dashboard] .workspace-dock-common{flex:1}
[data-dashboard] .workspace-dock-context{flex:none}
[data-dashboard] .workspace-dock .tbtn{flex:none;width:44px;height:44px;min-height:44px;border-radius:50%}
[data-dashboard] .workspace-dock .pos-dock{display:flex;align-items:center;gap:6px;position:static;inset:auto;width:auto;max-width:none;margin:0;padding:0;border:0;background:none;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;border-radius:0}
[data-dashboard] .workspace-dock [data-search-toggle]{display:none}
[data-dashboard] .workspace-shell .pos-product-grid{padding-bottom:calc(var(--workspace-dock-height) + var(--workspace-dock-lift) + 28px + env(safe-area-inset-bottom,0px));scroll-padding-bottom:calc(var(--workspace-dock-height) + var(--workspace-dock-lift) + 28px)}
[data-dashboard] .workspace-shell [data-local-split]{display:grid!important;grid-template-columns:var(--local-tools-rail) minmax(0,1fr)!important;overflow:hidden}
[data-dashboard] .workspace-shell [data-local-split].local-tools-expanded{grid-template-columns:var(--local-tools-open) minmax(0,1fr)!important}
[data-dashboard] .workspace-shell [data-local-split]>.pane{position:relative!important;inset:auto!important;transform:none!important;filter:none!important;visibility:visible!important;min-width:0;grid-row:1;box-shadow:none!important}
[data-dashboard] .workspace-shell [data-local-split]>.pm{grid-column:1;background:var(--bg)}
[data-dashboard] .workspace-shell [data-local-split]>.pd{grid-column:2;display:block!important}
[data-dashboard] .local-tools-native>.navbar{padding:6px;align-items:center;min-height:56px}
[data-dashboard] .local-tools-native .local-tools-toggle{margin:0}
[data-dashboard] [data-local-split]:not(.local-tools-expanded)>.pm>:not(.navbar),[data-dashboard] [data-local-split]:not(.local-tools-expanded)>.pm>.navbar>:not(.local-tools-toggle){display:none}
[data-dashboard] .workspace-shell [data-local-split]>.pd>.navbar .back{display:none}
[data-dashboard] .workspace-shell [data-local-split]>.pd>.body{padding-bottom:calc(var(--workspace-dock-height) + var(--workspace-dock-lift) + 32px)}
[data-dashboard] .local-tools-native .group{border:0;background:transparent;border-radius:0}
[data-dashboard] .local-tools-native .rw{min-height:44px;border-radius:14px}
[data-dashboard] .local-tools-native .sect{margin-bottom:16px}
[data-dashboard] .view-tools-sheet{width:min(440px,100%);height:min(620px,calc(var(--sheet-viewport-height,100dvh) - 24px))}
[data-dashboard] .view-tools-sheet .local-tools-nav{overflow:visible;padding:0}
[data-dashboard] .view-tools-sheet .local-tools-title{display:none}
[data-dashboard] .view-tools-sheet>.sh-b>.body{padding:0}
[data-dashboard] .view-tools-sheet :is(.group,.sect .group){border:0;background:transparent}
/* Narrow workspaces use the dock's tool sheet instead of squeezing in a desktop sidebar. */
@media(max-width:1099px){
 [data-dashboard]{--local-tools-rail:0px}
 [data-dashboard] .workspace-shell>.local-tools,[data-dashboard] .workspace-shell [data-local-split]>.pm{display:none}
}
@media(max-width:699px){
 [data-dashboard] .workspace-shell .pos-orientation{padding-inline:12px}
 [data-dashboard] .pos-selling-context{display:none}
}
@media(prefers-reduced-motion:no-preference){[data-dashboard] .local-tool{transition:background .15s,color .15s}}


[data-dashboard] :is(.launcher-sheet,.view-tools-sheet)>.sh-b{display:block}

/* Compact native masters keep their real destination icons, never an empty gutter. */
[data-dashboard] .workspace-shell [data-local-split]:not(.local-tools-expanded)>.pm>.body{display:block;padding:2px;overflow-y:auto;scrollbar-width:none}
[data-dashboard] [data-local-split]:not(.local-tools-expanded)>.pm>.body>:not([data-list]):not(.set-nav){display:none}
[data-dashboard] [data-local-split]:not(.local-tools-expanded)>.pm .group{border:0;border-radius:0;background:transparent}
[data-dashboard] [data-local-split]:not(.local-tools-expanded)>.pm .sect{margin:0}
[data-dashboard] [data-local-split]:not(.local-tools-expanded)>.pm :is(.sect-h,.rt,.chev,.pill,.vsig){display:none}
[data-dashboard] [data-local-split]:not(.local-tools-expanded)>.pm .rw{display:flex;justify-content:center;align-items:center;width:100%;height:48px;min-height:48px;padding:4px;border:0;gap:0}
[data-dashboard] [data-local-split]:not(.local-tools-expanded)>.pm .vmark{width:36px;height:36px;flex:none}

[data-dashboard] #app.workspace-shell.no-local-tools.on{grid-template-columns:0 minmax(0,1fr)}
[data-dashboard] .workspace-shell.no-local-tools:not(.has-dock-controls) .workspace-dock-context{display:none}

/* The application launcher is a bounded Settings-style window with its own toolbar. */
[data-dashboard] .sheet.launcher-sheet{width:min(860px,100%);height:min(640px,calc(var(--sheet-viewport-height,100dvh) - 40px))}
[data-dashboard] .launcher-sheet>.sh-b.launcher-layout{display:grid;grid-template-columns:220px minmax(0,1fr);padding:0;overflow:hidden;gap:0}
[data-dashboard] .launcher-toolbar{display:flex;flex-direction:column;gap:20px;min-width:0;min-height:0;padding:16px 12px;background:var(--soft);border-right:var(--content-edge);overflow:auto}
[data-dashboard] .launcher-find{flex:none;min-width:0;width:100%}
[data-dashboard] .launcher-sections{display:grid;gap:5px}
[data-dashboard] .launcher-sections button{display:flex;align-items:center;gap:10px;width:100%;min-height:44px;padding:10px 12px;border:0;border-radius:12px;background:none;color:var(--ink);text-align:left;font:inherit;font-weight:500}
[data-dashboard] .launcher-sections button[aria-current=true]{background:var(--tint);color:var(--accent)}
[data-dashboard] .launcher-sections button:hover{background:var(--hover)}
[data-dashboard] .launcher-account{margin-top:auto;border-top:var(--content-edge);padding-top:12px}
[data-dashboard] .launcher-account .me{display:flex;align-items:center;gap:10px;width:100%;min-width:0;min-height:52px;padding:8px;border:0;border-radius:12px;background:none;color:var(--ink);text-align:left;font:inherit}
[data-dashboard] .launcher-account .me-txt small{font-size:10px;line-height:1.5}
[data-dashboard] .launcher-panel{min-width:0;min-height:0;overflow:auto;padding:24px;overscroll-behavior:contain}
[data-dashboard] .launcher-section-heading{display:flex;align-items:center;gap:14px;margin:0 0 24px}
[data-dashboard] .launcher-section-heading>span{display:grid;place-items:center;width:48px;height:48px;border:var(--content-edge);border-radius:14px;background:var(--soft);color:var(--accent)}
[data-dashboard] .launcher-section-heading .ic{width:26px;height:26px}
[data-dashboard] .launcher-section-heading h2{font-size:22px;font-weight:600;line-height:1.3}
[data-dashboard] .launcher-sheet .side{display:flex!important;position:static!important;inset:auto!important;transform:none!important;visibility:visible!important;width:100%!important;padding:0;border:0;background:transparent;overflow:visible;gap:0}
[data-dashboard] .launcher-sheet .side :is(.side-brand,.side-h){display:none}
[data-dashboard] .launcher-sheet :is(.side-nav,.side-foot){display:flex;flex-direction:column;gap:0;margin:0;padding:0;border:0}
[data-dashboard] .launcher-sheet .side a{display:flex;align-items:center;gap:12px;min-height:56px;padding:12px;border:0;border-bottom:var(--content-edge);border-radius:12px;color:var(--ink);font-size:14px}
[data-dashboard] .launcher-sheet .side a[hidden]{display:none!important}
[data-dashboard] .launcher-sheet .side a>.ic{width:28px;height:28px;padding:5px;border:var(--content-edge);border-radius:7px;background:var(--soft)}
[data-dashboard] .launcher-sheet .side a::after{content:'›';flex:none;color:var(--faint);font-size:22px;line-height:1}
[data-dashboard] .launcher-sheet .side .nl{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
[data-dashboard] .launcher-sheet .side .nb{position:static;flex:none}
[data-dashboard] .launcher-no-results{padding:20px 0;color:var(--muted);font-size:13px}
@media(max-width:600px){
 [data-dashboard] .launcher-sheet>.sh-b.launcher-layout{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr)}
 [data-dashboard] .launcher-toolbar{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:12px;padding:12px;border-right:0;border-bottom:var(--content-edge);overflow:visible}
 [data-dashboard] .launcher-find{grid-column:1;grid-row:1}
 [data-dashboard] .launcher-account{grid-column:2;grid-row:1;padding:0;margin:0;border:0}
 [data-dashboard] .launcher-account .me{width:44px;height:44px;min-height:44px;padding:8px}
 [data-dashboard] .launcher-account .me-txt{display:none}
 [data-dashboard] .launcher-sections{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}
 [data-dashboard] .launcher-sections button{justify-content:center;gap:6px;padding:8px 6px;font-size:12px;border-radius:999px}
 [data-dashboard] .launcher-sections .ic{width:16px;height:16px}
 [data-dashboard] .launcher-panel{padding:16px 12px}
 [data-dashboard] .launcher-section-heading{margin-bottom:16px}
 [data-dashboard] .launcher-section-heading>span{width:36px;height:36px;border-radius:10px}
 [data-dashboard] .launcher-section-heading h2{font-size:18px}
}

[data-dashboard] .launcher-sheet>.sh-b.launcher-layout{grid-template-rows:minmax(0,1fr);align-content:stretch}
[data-dashboard] .launcher-find{order:0}
[data-dashboard] .launcher-account{order:1;margin-top:0;padding-top:0;border-top:0}
[data-dashboard] .launcher-sections{order:2}
[data-dashboard] .launcher-sheet .side{border:var(--content-edge);border-radius:14px;overflow:hidden}
[data-dashboard] .launcher-sheet .side-foot>a:last-of-type,[data-dashboard] .launcher-sheet .side-nav>a:last-child{border-bottom:0}
@media(max-width:600px){[data-dashboard] .launcher-sheet>.sh-b.launcher-layout{grid-template-rows:auto minmax(0,1fr)}}

/* The dock and expanded surface share the exact composer DOM and thread. */
[data-dashboard] .workspace-search{min-width:0;flex:1}
[data-dashboard] .workspace-search-resume{display:flex;align-items:center;gap:10px;width:100%!important;border-radius:999px!important;color:var(--muted);padding-inline:12px!important;justify-content:flex-start}
[data-dashboard] .workspace-search:has(form)>.workspace-search-resume{display:none}
[data-dashboard] .workspace-search>.search-hub-composer{border:0;background:transparent;padding:0;gap:4px;border-radius:999px}
[data-dashboard] .workspace-search textarea{height:44px!important;min-height:44px;max-height:44px;resize:none;overflow:hidden;white-space:nowrap;line-height:24px;padding:10px 4px;font-size:15px}
[data-dashboard] .workspace-search [data-find]{display:none}
[data-dashboard] .workspace-search [data-send]{width:44px;min-width:44px;padding:10px;border-radius:50%}
[data-dashboard] .workspace-dock .pos-category{position:relative;display:block;min-width:90px;max-width:140px;flex:none}
[data-dashboard] .workspace-dock .pos-category select{min-height:44px;height:44px;font-size:13px;padding-inline:38px var(--control-trailing-inset);background-color:var(--soft);width:100%;border-radius:999px}
[data-dashboard] .workspace-dock .pos-dock [data-search-row]{display:none}
/* The register keeps the same compact two-row dock at every screen size. */
[data-dashboard] .workspace-dock.is-register{display:grid;grid-template-columns:44px minmax(0,1fr);border-radius:28px}
[data-dashboard] .workspace-dock.is-register>.workspace-dock-common{display:contents}
[data-dashboard] .workspace-dock.is-register .workspace-search{grid-column:2}
[data-dashboard] .workspace-dock.is-register>.workspace-dock-context{grid-column:1/-1;justify-content:space-between;padding-top:2px}
[data-dashboard] .workspace-dock.is-register .pos-category{flex:1;max-width:none;min-width:0}
[data-dashboard] .workspace-dock.is-register .pos-dock{flex:1;justify-content:space-between}
@media(max-width:599px){
 [data-dashboard] .workspace-dock{gap:4px;padding:5px}
 [data-dashboard] .workspace-search>.search-hub-composer>.ic{display:none}
 [data-dashboard] .workspace-dock.is-register .pos-dock-cart{min-width:72px}
 [data-dashboard] .workspace-dock .pos-category select{font-size:12px;padding-inline:38px var(--control-trailing-inset)}
}

[data-dashboard] .workspace-dock .pos-category>.ic{position:absolute;left:12px;top:50%;transform:translateY(-50%);pointer-events:none;color:var(--muted)}


/* One settings task, with a desktop sidebar and a compact native mobile picker. */
[data-dashboard] .launcher-sheet [hidden]{display:none!important}
[data-dashboard] .launcher-settings-nav{min-height:0;overflow:auto}
[data-dashboard] .launcher-settings-back{display:flex;align-items:center;gap:8px;min-height:44px;padding:8px 12px;margin-bottom:12px;border:0;border-radius:999px;background:var(--hover);color:var(--ink);font:inherit}
[data-dashboard] .launcher-settings-nav .set-nav section{margin:0 0 16px}
[data-dashboard] .launcher-settings-nav h3{margin:12px;font-size:11px;font-weight:500;color:var(--muted)}
[data-dashboard] .launcher-settings-nav a{display:flex;align-items:center;gap:10px;min-height:44px;padding:8px 12px;border:0;border-radius:12px;color:var(--ink);font-size:13px;line-height:1.4}
[data-dashboard] .launcher-settings-nav a>.ic{flex:none}
[data-dashboard] .launcher-settings-nav a[aria-current=page]{background:var(--tint);color:var(--accent)}
[data-dashboard] .launcher-settings-nav a:hover{background:var(--hover)}
[data-dashboard] .settings-picker{display:none}
[data-dashboard] .showing-settings .launcher-panel{padding:0;overflow:hidden}
[data-dashboard] .launcher-settings-pane{height:100%;overflow:auto;overscroll-behavior:contain;padding:24px;min-width:0;scroll-padding-bottom:24px}
[data-dashboard] .settings-heading{margin-bottom:24px}
[data-dashboard] .settings-heading h2{font-size:22px;line-height:1.3;font-weight:600}
[data-dashboard] .launcher-settings-pane .sect{margin-bottom:24px}
[data-dashboard] .launcher-settings-pane .group{border:0}
[data-dashboard] .launcher-settings-pane .rw{border:0}
@media(max-width:600px){
 [data-dashboard] .launcher-sections{grid-template-columns:repeat(4,minmax(0,1fr))}
 [data-dashboard] .showing-settings .launcher-toolbar{display:block;padding:8px 12px}
 [data-dashboard] .showing-settings .launcher-account{display:none}
 [data-dashboard] .launcher-settings-nav{display:flex;align-items:center;gap:12px;overflow:visible}
 [data-dashboard] .launcher-settings-back{margin:0;flex:none}
 [data-dashboard] .launcher-settings-nav .set-nav{flex:1;min-width:0}
 [data-dashboard] .launcher-settings-nav .set-nav section{display:none}
 [data-dashboard] .settings-picker{display:block}
 [data-dashboard] .settings-picker select{width:100%;min-height:44px;padding-right:var(--control-trailing-inset)}
 [data-dashboard] .launcher-settings-pane{padding:16px 12px max(24px,env(safe-area-inset-bottom))}
 [data-dashboard] .settings-heading{margin-bottom:16px}
 [data-dashboard] .settings-heading h2{font-size:20px}
}

[data-dashboard] .register-settings-title{font-size:20px;line-height:1.4;margin:16px 0}

[data-dashboard] #app.workspace-shell.no-local-rail.on{grid-template-columns:0 minmax(0,1fr)}

/* Harvested controls must not leave empty toolbar bands in the content. */
[data-dashboard] .workspace-shell .toolbar.tools-empty{display:none!important}

/* Alpha conversation hierarchy: prose, source disclosure, compact action review. */
[data-dashboard] .conversation{display:flex;flex-direction:column;min-width:0;gap:20px;max-width:960px;margin:0 auto}
[data-dashboard] .mx-context{font-size:12px;color:var(--muted);line-height:1.6}
[data-dashboard] .mx-context>a{margin-left:8px;color:var(--link)}
[data-dashboard] .mx-context p{margin-top:8px}
[data-dashboard] .chat-log{display:flex;flex-direction:column;gap:24px;min-width:0}
[data-dashboard] .message{display:block;min-width:0}
[data-dashboard] .message-body{max-width:100%;min-width:0}
[data-dashboard] .message-body>small{display:block;margin-bottom:8px;color:var(--faint);font-size:11px}
[data-dashboard] .message-text{font-size:14px;line-height:1.65;color:var(--ink);overflow-wrap:break-word}
[data-dashboard] .message.user .message-text{display:inline-block;max-width:100%;padding:10px 14px;background:var(--soft);border:var(--content-edge);border-radius:var(--sheet-radius)}
[data-dashboard] .message .group{margin-block:12px}
[data-dashboard] .message-body>.btn{margin:8px 8px 0 0}
[data-dashboard] .mx-shortcuts{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:16px 0}
[data-dashboard] .mx-composer{display:flex;align-items:center;gap:8px;padding:8px;background:var(--soft);border:1px solid var(--line);border-radius:var(--sheet-radius)}
[data-dashboard] .mx-composer textarea{flex:1;width:100%;min-width:0;min-height:max(44px,var(--control-height));max-height:160px;resize:none;padding:8px;border:0;background:transparent;color:var(--ink);font:var(--input-font-size)/1.5 var(--font)}
[data-dashboard] .mx-composer button{flex:none}
[data-dashboard] .mx-record-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
@media(max-width:699px){[data-dashboard] .mx-composer{gap:6px;padding:6px}}

/* Keep the conversation scroll separate from its persistent composer. */
[data-dashboard] .assistant-body{display:flex;overflow:hidden}
[data-dashboard] .assistant-body>.conversation{flex:1;min-height:0;width:100%;gap:12px}
[data-dashboard] .assistant-body .chat-log{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;padding-block:4px}
[data-dashboard] .assistant-body :is(.mx-context,.mx-shortcuts,.mx-composer){flex:none}
[data-dashboard] .assistant-body .mx-shortcuts{flex-wrap:nowrap;overflow-x:auto;margin:0;padding-block:2px}
[data-dashboard] .assistant-body .mx-shortcuts>.btn{flex:none}

/* A single mounted search/conversation surface; only its presentation changes. */
[data-dashboard] .sheet.search-hub-sheet{width:min(720px,100%);height:min(620px,calc(var(--sheet-viewport-height,100dvh) - 40px));background:var(--chrome);backdrop-filter:blur(var(--chrome-blur)) saturate(1.4);-webkit-backdrop-filter:blur(var(--chrome-blur)) saturate(1.4)}
[data-dashboard] .sheet-w:has(.search-hub-sheet){align-items:center;padding-bottom:max(20px,env(safe-area-inset-bottom))}
[data-dashboard] .search-hub-body.sh-b{display:flex;overflow:hidden;padding:12px}
[data-dashboard] .search-hub{display:flex;flex-direction:column;width:100%;min-width:0;min-height:0;gap:12px}
[data-dashboard] .search-hub [hidden]{display:none!important}
[data-dashboard] .search-hub-tools{display:flex;align-items:center;gap:8px;flex:none;min-height:36px}
[data-dashboard] .search-hub-tools>.btn{font-size:12px;min-height:36px;padding:6px 10px}
[data-dashboard] .search-hub-scope{flex:1;color:var(--muted);font-size:12px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
[data-dashboard] .search-hub-content{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;scroll-padding:12px;padding:4px}
[data-dashboard] .search-hub-results,[data-dashboard] .search-hub-log{min-height:0;overflow:visible;padding:0}
[data-dashboard] .search-hub-empty{display:grid;justify-items:start;align-content:center;min-height:180px;gap:10px;padding:20px;color:var(--muted);font-size:14px;line-height:1.6}
[data-dashboard] .search-hub-empty>b{font-size:20px;color:var(--ink);font-weight:500}
[data-dashboard] .search-hub-result{display:flex;align-items:center;gap:6px;border-radius:16px;padding:4px}
[data-dashboard] .search-hub-result:hover{background:var(--hover)}
[data-dashboard] .search-hub-result>a{display:flex;align-items:center;flex:1;gap:12px;min-width:0;min-height:64px;padding:8px;border-radius:12px;color:var(--ink)}
[data-dashboard] .search-hub-result>a.selected{background:var(--soft);outline:2px solid var(--accent);outline-offset:-2px}
[data-dashboard] .search-hub-result>a>span:last-child{display:grid;gap:5px;min-width:0}
[data-dashboard] .search-hub-result b{font-size:14px;font-weight:500;line-height:1.45;overflow-wrap:anywhere}
[data-dashboard] .search-hub-result small{font-size:12px;color:var(--muted);line-height:1.45;overflow-wrap:anywhere}
[data-dashboard] .search-hub-result>.tbtn{flex:none}
[data-dashboard] .search-hub-notice{flex:none;color:var(--muted);font-size:12px;line-height:1.5;padding-inline:10px;overflow-wrap:anywhere}
[data-dashboard] .search-hub-notice:empty{display:none}
[data-dashboard] .search-hub-composer{flex:none;margin:0;border-radius:28px;background:var(--sheet-field);align-items:center;padding:6px 8px;gap:6px}
[data-dashboard] .search-hub-composer>.ic{flex:none;margin-left:7px;color:var(--muted)}
[data-dashboard] .search-hub-composer textarea{font-size:16px;padding:10px 4px;line-height:1.5;min-height:44px;max-height:144px}
[data-dashboard] .search-hub-composer button{min-width:44px;min-height:44px;padding:8px 12px;border-radius:999px}
[data-dashboard] .search-hub-log .message-text{white-space:pre-wrap}
[data-dashboard] .search-hub-sources{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
[data-dashboard] .search-hub-sources a{font-size:12px;line-height:1.5;color:var(--link);background:var(--soft);border:var(--content-edge);border-radius:14px;padding:10px 12px;max-width:100%;overflow-wrap:anywhere}
[data-dashboard] .search-hub-page{height:calc(100dvh - var(--topbar-height) - 32px);min-height:320px;display:flex;max-width:900px;margin-inline:auto}
[data-dashboard] .search-hub-latest{align-self:center;min-height:36px;font-size:12px}
@media(max-width:699px){[data-dashboard] .sheet-w:has(.search-hub-sheet){padding:0;align-items:center}[data-dashboard] .sheet.search-hub-sheet{height:min(620px,calc(var(--sheet-viewport-height,100dvh) - 12px));width:100%;border-bottom-left-radius:0;border-bottom-right-radius:0}[data-dashboard] .search-hub-body.sh-b{padding:10px 12px max(12px,env(safe-area-inset-bottom))}[data-dashboard] .search-hub-tools>.btn{min-height:44px}[data-dashboard] .search-hub-composer>.ic{display:none}}
[data-dashboard] .search-hub-tools [data-results]>.ic{transform:rotate(180deg)}
[data-dashboard] .search-hub-log .message.assistant .message-text{white-space:normal}
[data-dashboard] .search-hub .message-text :is(p,ul,ol,h4){margin:0 0 14px;line-height:1.65}
[data-dashboard] .search-hub .message-text :is(ul,ol){padding-left:22px}
[data-dashboard] .search-hub .message-text h4{font-size:16px;font-weight:600}
[data-dashboard] .search-hub .message-text a{color:var(--link);text-decoration:underline;text-underline-offset:3px}
[data-dashboard] .md-table{max-width:100%;overflow-x:auto;margin-block:14px;border:var(--content-edge);border-radius:14px;overscroll-behavior-x:contain}
[data-dashboard] .md-table table{border-collapse:collapse;width:100%;min-width:300px;font-size:13px;line-height:1.5}
[data-dashboard] .md-table :is(th,td){padding:10px 12px;text-align:left;border-bottom:var(--content-edge);vertical-align:top}
[data-dashboard] .md-table th{font-weight:600;background:var(--soft)}
[data-dashboard] .md-table .num{text-align:right;font-variant-numeric:tabular-nums}
[data-dashboard] .md-table tr:last-child td{border-bottom:0}
[data-dashboard] .md-code{max-width:100%;margin-block:14px;border:var(--content-edge);border-radius:14px;overflow:hidden}
[data-dashboard] .md-code-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 12px;color:var(--muted);font-size:12px;background:var(--soft)}
[data-dashboard] .md-code-tools button{min-height:44px;padding:8px 12px;border-radius:999px}
[data-dashboard] .md-code pre{overflow:auto;margin:0;padding:14px;font:12px/1.6 var(--mono);max-height:400px}
[data-dashboard] .search-hub-sources>small{flex-basis:100%;color:var(--muted);font-size:11px}
[data-dashboard] .search-hub-activity{margin-top:14px;color:var(--muted);font-size:12px;line-height:1.6}
[data-dashboard] .search-hub-activity summary{cursor:pointer;padding:10px 0;min-height:44px}
[data-dashboard] .search-hub-activity ul{padding-left:20px;margin:0}

[data-dashboard] .search-hub[data-mode=search] .message{display:none}
[data-dashboard] .search-hub[data-mode=search] .message.assistant:last-child{display:block}
[data-dashboard] .search-hub[data-mode=search][data-overview=true] .search-hub-log{display:block;margin-bottom:24px}
[data-dashboard] .search-hub[data-mode=search][data-overview=true] .search-hub-log::before{content:'AI overview';display:block;color:var(--ink);font-size:16px;font-weight:600;margin:8px 0 16px}
[data-dashboard] .search-hub[data-mode=search] .message.assistant small:first-child{display:none}
[data-dashboard] .search-hub-composer [data-send]{min-width:44px}

/* Pending state belongs to the same send control in dock, sheet and full chat. */
[data-dashboard] .search-hub-composer [data-send]{position:relative;display:grid;place-items:center}
[data-dashboard] .search-hub-composer [data-send].is-working{opacity:1;cursor:pointer}
[data-dashboard] .search-hub-composer [data-send].is-working:disabled>.ic{opacity:0}
[data-dashboard] .search-hub-composer [data-send].is-working:disabled::after{content:'';position:absolute;width:20px;height:20px;inset:0;margin:auto;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:campus-send-wait .8s linear infinite}
@keyframes campus-send-wait{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){[data-dashboard] .search-hub-composer [data-send].is-working:disabled::after{animation:none}}

/* Shared search mode selection, used in every presentation. */
[data-dashboard] .search-hub-tools .btn[aria-pressed=true]{background:var(--tint);color:var(--accent)}
