/* Visual tokens are injected on <html> by theme-engine.js — do not hardcode colors here. */
:root{
  --success:var(--accent);
  --shell-header-h:52px;
}
/* ── Shared components (token-driven) ── */
.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:var(--icon-btn-size,36px);height:var(--icon-btn-size,36px);min-width:var(--icon-btn-size,36px);padding:0;margin:0;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text-dim);cursor:pointer;font-family:inherit;line-height:1;flex-shrink:0;transition:color var(--motion-fast,var(--transition)),background var(--motion-fast,var(--transition)),box-shadow var(--motion-fast,var(--transition))}
.icon-btn svg{display:block;pointer-events:none}
.icon-btn:hover:not(:disabled),.icon-btn:focus-visible{color:var(--text);background:color-mix(in srgb,var(--surface-2) 88%,transparent);outline:none;box-shadow:var(--focus-ring)}
.icon-btn:disabled{opacity:.45;cursor:not-allowed}
.icon-btn-danger:hover:not(:disabled),.icon-btn-danger:focus-visible{color:var(--danger);background:var(--danger-soft)}
.btn-ghost{border-color:transparent;background:transparent;color:var(--text-dim)}
.btn-ghost:hover:not(:disabled){color:var(--text);background:color-mix(in srgb,var(--surface-2) 88%,transparent);border-color:transparent}
.agent-side-head .btn-accent{width:100%;background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--accent);border:var(--border-width) solid color-mix(in srgb,var(--accent) 26%,var(--border));box-shadow:none;font-size:var(--text-sm);min-height:36px;letter-spacing:.01em}
.agent-side-head .btn-accent:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 18%,var(--surface));border-color:color-mix(in srgb,var(--accent) 34%,var(--border));filter:none}
.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-6) var(--space-4);text-align:center;color:var(--text-dim);min-height:min(280px,40vh)}
.empty-state-ico{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--radius);background:color-mix(in srgb,var(--surface-2) 70%,transparent);color:var(--text-dim);opacity:.75;margin-bottom:var(--space-1)}
.empty-state-ico svg{width:22px;height:22px;display:block}
.empty-state-msg{margin:0;font-size:var(--text-body);color:var(--text);font-weight:var(--font-weight-medium);line-height:var(--lh-tight)}
.empty-state-hint{margin:0;font-size:var(--text-sm);color:var(--text-dim);line-height:var(--lh-loose);max-width:22rem}
.chat-log .empty-state{min-height:min(320px,50vh);padding:var(--space-4)}
.disc-list .empty-state{min-height:auto;padding:var(--space-5) var(--space-3)}
*{box-sizing:border-box}
html,body{height:100%;margin:0;overflow:hidden;font-family:var(--font-ui);font-size:var(--text-body);font-weight:var(--font-weight-normal);line-height:var(--lh-body);color:var(--text);background:var(--bg)}
.mono{font-family:var(--font-mono)}
.hidden{display:none!important}
.is-hidden{display:none!important}
.is-visible-flex{display:flex!important}
.is-visible-block{display:block!important}
body{display:flex}
.sidebar{width:var(--sidebar);min-width:var(--sidebar);background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;transition:width var(--transition),min-width var(--transition);position:relative;z-index:100}
body.collapsed .sidebar{width:var(--sidebar-collapsed);min-width:var(--sidebar-collapsed)}
body.collapsed .nav-label{display:none}
body.collapsed .nav-section-label{display:none}
body.collapsed .nav-section-toggle{justify-content:center;padding:var(--space-2);min-height:36px}
body.collapsed .nav-section-toggle>span:first-child{display:none}
body.collapsed .nav-section-toggle .nav-section-chevron{margin:0}
body.collapsed .nav-item{justify-content:center;padding-inline:8px}
body.collapsed .nav-item.active::before{top:4px;bottom:4px}
.sidebar-head{flex-shrink:0;border-bottom:var(--border-width) solid var(--border);min-height:calc(var(--workspace-logo-size,28px) + 52px)}
.sidebar-brand{display:flex;align-items:center;gap:10px;min-height:calc(var(--workspace-logo-size,28px) + 8px);padding:10px calc(var(--pad) + 2px) 4px;font-weight:var(--font-weight-medium);font-size:var(--text-md);box-sizing:border-box}
.sidebar-brand-logo{width:var(--workspace-logo-size,28px);height:var(--workspace-logo-size,28px);object-fit:contain;border-radius:var(--radius-sm);flex-shrink:0;display:block}
.sidebar-brand-name{line-height:1.15;letter-spacing:-.01em;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sidebar-brand.has-logo .sidebar-brand-name{font-size:var(--text-sm)}
.sidebar-user{display:flex;align-items:center;gap:7px;padding:0 calc(var(--pad) + 2px) 8px;min-width:0}
.sidebar-user-av{width:22px;height:22px;border-radius:50%;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;font-size:9px;font-weight:var(--font-weight-medium);background:color-mix(in srgb,var(--accent) 18%,var(--surface));color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 22%,var(--border));background-size:cover;background-position:center;overflow:hidden;line-height:1}
.sidebar-user-av.has-img{color:transparent}
.sidebar-user-name{font-size:11px;color:var(--text-dim);font-weight:var(--font-weight-medium);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.2}
body.collapsed .sidebar-brand{justify-content:center;padding:8px 10px 2px}
body.collapsed .sidebar-brand-name{display:none}
body.collapsed .sidebar-brand-logo{width:calc(var(--workspace-logo-size, 28px) * 1.15);height:calc(var(--workspace-logo-size, 28px) * 1.15)}
body.collapsed .sidebar-user{justify-content:center;padding:0 8px 8px}
body.collapsed .sidebar-user-name{display:none}
body.collapsed .sidebar-user-av{width:24px;height:24px;font-size:10px}
.sidebar-nav{flex:1;padding:var(--gap-sm);display:flex;flex-direction:column;gap:var(--space-1);overflow-y:auto;min-height:0}
html.nav-pending .sidebar-nav{min-height:360px;contain:layout style}
html.nav-pending .sidebar{contain:layout style}
html.nav-pending .sidebar,
html.nav-pending .sidebar-nav,
html.nav-pending .sidebar-head,
html.nav-pending .nav-item,
html.nav-pending .nav-section{transition:none!important}
.nav-skeleton{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-2) 0;min-height:420px}
html:not(.nav-pending.nav-boot) .nav-skeleton{display:none!important}
html.nav-pending.nav-boot .sidebar-nav>:not(#nav-skeleton){display:none!important}
html.nav-pending.nav-boot #nav-skeleton{display:flex!important}
html.nav-cached #nav-skeleton{display:none!important}
html.nav-boot .nav-skeleton-slot{display:none!important}
.nav-skeleton-label{height:10px;width:42%;border-radius:999px;background:color-mix(in srgb,var(--border) 55%,var(--surface-2));opacity:.75}
.nav-skeleton-block{height:40px;border-radius:var(--radius-sm);background:linear-gradient(90deg,color-mix(in srgb,var(--surface-2) 88%,transparent) 0%,color-mix(in srgb,var(--border) 40%,var(--surface-2)) 48%,color-mix(in srgb,var(--surface-2) 88%,transparent) 100%);background-size:200% 100%;animation:nav-sk-shimmer 1.2s ease-in-out infinite}
.nav-skeleton-block--sm{height:32px;width:72%;opacity:.85}
@keyframes nav-sk-shimmer{0%{background-position:100% 0}100%{background-position:-100% 0}}
@media (prefers-reduced-motion:reduce){.nav-skeleton-block{animation:none;background:var(--surface-2)}}
.content-shell-skeleton{display:none;flex:1;min-height:0;padding:var(--page-pad) calc(var(--page-pad) + 4px);flex-direction:column;gap:var(--gap);box-sizing:border-box}
html.nav-pending .content-shell-skeleton:not(.hidden){display:flex}
.shell-sk-head{height:32px;width:min(280px,55%);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--surface-2) 92%,transparent)}
.shell-sk-toolbar{height:44px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--surface-2) 88%,transparent)}
.shell-sk-card{flex:1;min-height:180px;border-radius:var(--radius);border:var(--border-width) solid color-mix(in srgb,var(--border) 70%,transparent);background:linear-gradient(90deg,color-mix(in srgb,var(--surface) 96%,transparent) 0%,color-mix(in srgb,var(--surface-2) 70%,var(--surface)) 48%,color-mix(in srgb,var(--surface) 96%,transparent) 100%);background-size:200% 100%;animation:nav-sk-shimmer 1.4s ease-in-out infinite}
.shell-sk-card--short{flex:0;min-height:120px;max-height:160px;opacity:.82}
@media (prefers-reduced-motion:reduce){.shell-sk-card{animation:none;background:var(--surface)}}
.nav-item{display:flex;align-items:center;gap:10px;padding:var(--nav-pad) 10px;border-radius:var(--radius-sm);color:var(--text-dim);text-decoration:none;transition:background var(--transition),color var(--transition);position:relative;border:0;background:transparent;font:inherit;cursor:pointer;width:100%;text-align:left}
.nav-item:hover{background:var(--surface-2);color:var(--text)}
.nav-item.active{background:var(--accent-soft);color:var(--accent)}
.nav-item.active::before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:3px;border-radius:0 3px 3px 0;background:var(--accent)}
.nav-item.nav-item-locked{cursor:not-allowed;opacity:.72}
.nav-item.nav-item-locked:hover{background:transparent;color:var(--text-dim)}
.nav-warn-badge{display:inline-flex;align-items:center;justify-content:center;margin-left:auto;flex-shrink:0;color:var(--warning,#d97706)}
body.collapsed .nav-warn-badge{margin-left:0}
.nav-item:focus:not(:focus-visible){outline:none;box-shadow:none}
.nav-item:focus-visible{outline:none;box-shadow:var(--focus-ring)}
.asst-subnav .nav-item.active,.bo-subnav .nav-item.active{z-index:1}
.nav-ico{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--ico-size);height:var(--ico-size)}
.sidebar-nav .nav-ico svg{display:block;width:18px;height:18px;flex-shrink:0}
.sidebar-nav .nav-item{--nav-icon-col:var(--ico-size,18px);padding-inline:10px}
.sidebar-nav .nav-ico{width:var(--nav-icon-col);min-width:var(--nav-icon-col);height:var(--nav-icon-col)}
.sidebar-foot{padding:0;border-top:var(--border-width) solid var(--border);flex-shrink:0}
.sidebar-foot-bar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:var(--space-2);padding:var(--space-2) 10px;min-height:44px}
.sidebar-foot-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:6px;flex-shrink:0}
.preparer-logout.theme-icon-btn{color:color-mix(in srgb,var(--danger) 82%,var(--text-dim))}
.preparer-logout.theme-icon-btn:hover{color:var(--danger);background:var(--danger-soft);border-color:color-mix(in srgb,var(--danger) 35%,var(--border))}
.sidebar-clock{min-width:0;display:flex;flex-direction:column;justify-content:center;gap:1px;line-height:1.15;user-select:none}
.sidebar-clock-time{font-variant-numeric:tabular-nums;font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--text);letter-spacing:.03em;line-height:1.2}
.sidebar-clock-date{font-size:var(--text-xs);color:var(--text-dim);text-transform:capitalize;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}
.theme-icon-btn{flex-shrink:0;width:var(--icon-btn-size,36px);height:var(--icon-btn-size,36px);padding:0;display:flex;align-items:center;justify-content:center;border:var(--border-width) solid color-mix(in srgb,var(--border) 88%,transparent);border-radius:var(--radius-sm);background:transparent;color:var(--text-dim);cursor:pointer;transition:background var(--motion-fast,var(--transition)),color var(--motion-fast,var(--transition)),border-color var(--motion-fast,var(--transition))}
.theme-icon-btn:hover{color:var(--text);background:color-mix(in srgb,var(--surface-2) 88%,transparent);border-color:var(--border)}
.theme-icon-btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}
.theme-icon-btn:disabled{opacity:.45;cursor:not-allowed}
.sidebar-foot-actions .theme-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;min-width:32px;min-height:32px;max-height:32px;padding:0;margin:0;line-height:0;box-sizing:border-box;flex:0 0 32px}
.sidebar-foot-actions .theme-icon-btn .nav-ico{display:flex;align-items:center;justify-content:center;width:16px;height:16px;min-width:16px;min-height:16px;margin:0;padding:0;line-height:0;flex:0 0 16px}
.sidebar-foot-actions .theme-icon-btn .nav-ico svg{display:block;width:16px;height:16px;margin:0;pointer-events:none;flex-shrink:0}
body.collapsed .sidebar-foot-bar{display:flex;flex-direction:column;padding:var(--space-2);gap:var(--space-2);align-items:center}
body.collapsed .sidebar-foot-actions{flex-direction:column;align-items:center;width:100%;gap:var(--space-1)}
body.collapsed #sidebar-toggle .nav-ico svg{transform:rotate(180deg)}
body.collapsed .sidebar-clock{align-items:center;text-align:center}
body.collapsed .sidebar-clock-date{display:none}
.content{flex:1;min-width:0;min-height:0;overflow:hidden;display:flex;flex-direction:column}
.page{flex:1;min-height:0;overflow:auto;padding:var(--page-pad) calc(var(--page-pad) + 4px);display:flex;flex-direction:column;gap:var(--gap)}
.page-head{flex-shrink:0;padding-bottom:var(--gap)}
.page-head h1{margin:0;font-family:var(--font-display);font-size:var(--text-h1);font-weight:var(--font-weight-medium);line-height:var(--lh-tight)}
.page-assistant .asst-page:not(.page-agent){padding:0;overflow:auto;flex:1;min-height:0}
.page-assistant .asst-page:not(.page-agent)>.page-head{height:var(--shell-header-h);min-height:var(--shell-header-h);padding:0 calc(var(--page-pad) + 4px);margin:0;border-bottom:var(--border-width) solid var(--border);display:flex;align-items:center;gap:12px;box-sizing:border-box;padding-bottom:0}
.page-assistant .asst-page:not(.page-agent)>.page-head h1{margin:0}
.page-assistant .asst-page:not(.page-agent)>:not(.page-head){padding-left:calc(var(--page-pad) + 4px);padding-right:calc(var(--page-pad) + 4px)}
.page-assistant .asst-page:not(.page-agent)>:not(.page-head):first-of-type{padding-top:var(--page-pad)}
.page-assistant .asst-page:not(.page-agent)>:last-child{padding-bottom:var(--page-pad)}
.card{background:var(--surface);border:var(--border-width) solid var(--border);border-radius:var(--radius);padding:var(--pad);box-shadow:var(--shadow-card)}
.card-title{font-size:var(--text-sm);color:var(--text-dim);margin-bottom:var(--gap-sm);letter-spacing:0;font-weight:var(--font-weight-normal)}
.section-title{margin:0 0 var(--gap-sm);font-size:var(--text-md);font-weight:var(--font-weight-medium);color:var(--text);line-height:var(--lh-tight);letter-spacing:-.01em}
.page-docs .card-title{font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;font-weight:var(--font-weight-medium)}
.metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:var(--gap-sm)}
.metric{background:var(--surface);border:var(--border-width) solid var(--border);border-radius:var(--radius);padding:var(--pad);box-shadow:var(--shadow-card)}
.metric-label{font-size:var(--text-sm);color:var(--text-dim);margin-bottom:var(--space-1);font-weight:var(--font-weight-normal)}
.metric-value{font-size:var(--text-xl);font-family:var(--font-mono);font-weight:var(--font-weight-medium)}
.metric-value.ok{color:var(--accent)}
.metric-value.bad{color:var(--danger)}
.metric-sub{font-size:var(--text-xs);color:var(--text-dim);margin-top:var(--space-1)}
.metric-value-sm{font-size:var(--text-md)}
.dash-row{display:grid;grid-template-columns:1.2fr 1fr;gap:var(--gap);min-height:var(--dash-row-min-h)}
@media(max-width:900px){.dash-row{grid-template-columns:1fr}}
.chart{display:flex;align-items:flex-end;gap:var(--space-1);height:var(--chart-h);padding-top:var(--gap-sm)}
.chart-bar{flex:1;background:var(--accent-soft);border-radius:var(--radius-sm) var(--radius-sm) 0 0;height:calc(var(--bar-pct,2) * 1%);min-height:var(--space-1);max-height:100%;align-self:flex-end;position:relative;cursor:default;transition:background var(--transition)}
.chart-bar:hover{background:var(--accent);opacity:.85}
.chart-bar span{position:absolute;bottom:100%;left:50%;transform:translateX(-50%);font-size:var(--text-xs);color:var(--text-dim);white-space:nowrap;padding-bottom:var(--space-1)}
.list-compact{display:flex;flex-direction:column;gap:var(--space-1)}
.list-row{display:flex;justify-content:space-between;padding:var(--space-2) 0;border-bottom:var(--border-width) solid var(--border);font-size:var(--text-sm)}
.list-row:last-child{border:0}
.system-line{font-size:var(--text-sm);color:var(--text-dim)}
.btn{border:var(--border-width) solid var(--border);background:transparent;color:var(--text);min-height:var(--control-h);padding:0 var(--btn-pad-x);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-sm);font-family:inherit;display:inline-flex;align-items:center;justify-content:center;flex:none;white-space:nowrap;transition:background var(--transition),color var(--transition),border-color var(--transition),box-shadow var(--transition),opacity var(--transition),transform var(--motion-fast,var(--transition))}
.btn:hover:not(:disabled):not(.btn-accent):not(.btn-danger){background:color-mix(in srgb,var(--surface-2) 88%,transparent);color:var(--text);border-color:var(--border)}
.btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}
.btn:active:not(:disabled){transform:scale(.98)}
.btn:disabled,.btn[disabled]{opacity:.55;cursor:not-allowed}
.btn.is-loading{pointer-events:none;opacity:.75}
.btn-accent{background:var(--accent);border-color:color-mix(in srgb,var(--accent) 88%,var(--border));color:var(--accent-text);font-weight:var(--font-weight-medium);box-shadow:var(--shadow-elev-1)}
.btn-accent:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover);color:var(--accent-text);filter:none}
.btn-accent:disabled{background:var(--accent);border-color:var(--accent);color:var(--accent-text);opacity:.55}
.btn-danger{border-color:color-mix(in srgb,var(--danger) 35%,var(--border));color:var(--danger);background:transparent}
.btn-danger:hover:not(:disabled){background:var(--danger-soft);filter:none}
.btn-icon{width:var(--control-h);height:var(--control-h);min-width:var(--control-h);padding:0}
.input,select,textarea.input{width:100%;min-height:var(--control-h);padding:0 var(--gap-sm);border-radius:var(--radius-sm);border:var(--border-width) solid var(--border);background:var(--surface);color:var(--text);margin:var(--field-gap) 0;font-size:var(--text-body);font-family:inherit;transition:border-color var(--transition),box-shadow var(--transition),background var(--transition)}
select:not([multiple]){appearance:none;-webkit-appearance:none;padding-right:calc(var(--gap-sm) + 18px);cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='none' stroke='%23888' stroke-width='1.5' stroke-linecap='round' d='M3 4.5 6 7.5 9 4.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:12px}
html[data-theme="dark"] select:not([multiple]){background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='none' stroke='%23aaa' stroke-width='1.5' stroke-linecap='round' d='M3 4.5 6 7.5 9 4.5'/%3E%3C/svg%3E")}
select option,select optgroup{background-color:var(--surface);color:var(--text)}
html[data-theme="light"] select{color-scheme:light}
html[data-theme="dark"] select{color-scheme:dark}
input[type=checkbox],input[type=radio]{appearance:none;-webkit-appearance:none;width:1rem;height:1rem;margin:0;flex-shrink:0;border:1.5px solid color-mix(in srgb,var(--border) 90%,var(--text-dim));border-radius:4px;background:var(--surface);display:inline-grid;place-content:center;vertical-align:middle;cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s}
input[type=checkbox]:checked,input[type=radio]:checked{background:var(--accent);border-color:var(--accent)}
input[type=checkbox]:checked::after{content:"";width:0.28rem;height:0.5rem;border:2px solid var(--accent-text);border-top:0;border-left:0;transform:rotate(45deg) translateY(-1px)}
input[type=radio]{border-radius:999px}
input[type=radio]:checked::after{content:"";width:0.38rem;height:0.38rem;border-radius:999px;background:var(--accent-text);transform:none}
input[type=checkbox]:focus-visible,input[type=radio]:focus-visible{outline:none;box-shadow:var(--focus-ring)}
label:has(>input[type=checkbox]),label:has(>input[type=radio]){display:inline-flex;align-items:center;gap:8px;cursor:pointer;line-height:1.35}
.ui-select{position:relative;display:inline-flex;min-width:0;vertical-align:middle}
.ui-select-native{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}
.ui-select-trigger{display:inline-flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-width:0;margin:0;text-align:left;cursor:pointer}
.ui-select-value{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ui-select-chevron{width:12px;height:12px;flex-shrink:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='none' stroke='%23888' stroke-width='1.5' stroke-linecap='round' d='M3 4.5 6 7.5 9 4.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;background-size:12px;transition:transform .15s}
html[data-theme="dark"] .ui-select-chevron{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='none' stroke='%23aaa' stroke-width='1.5' stroke-linecap='round' d='M3 4.5 6 7.5 9 4.5'/%3E%3C/svg%3E")}
.ui-select.is-open .ui-select-chevron{transform:rotate(180deg)}
.ui-select.is-open .ui-select-trigger{border-color:var(--accent);box-shadow:var(--focus-ring)}
.ui-select.is-disabled{opacity:.55;pointer-events:none}
.ui-select-menu{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:var(--z-dropdown,40);min-width:100%;max-height:min(280px,50vh);overflow:auto;padding:4px;border-radius:var(--radius-md);border:var(--border-width) solid color-mix(in srgb,var(--border) 88%,transparent);background:var(--surface);box-shadow:var(--shadow-elev-2,var(--shadow-modal))}
.ui-select-menu.is-floating{position:fixed;left:auto;right:auto;top:auto;bottom:auto;z-index:var(--z-popover,220);min-width:0;width:auto;max-width:min(90vw,480px);box-sizing:border-box;/* width fixed by JS on open — never max-content (scroll widen loop) */}
.ui-select.ui-select-drop-up .ui-select-menu{top:auto;bottom:calc(100% + 4px);box-shadow:var(--shadow-elev-2,var(--shadow-modal))}
.ui-select.ui-select-drop-left .ui-select-menu{left:auto;right:0}
.ui-select-opt.is-active{background:var(--surface-2)}
.ui-select.ui-select-drop-up .ui-select-chevron{transform:rotate(180deg)}
.ui-select.ui-select-drop-up.is-open .ui-select-chevron{transform:rotate(0deg)}
.ui-select-opt{display:flex;align-items:center;width:100%;padding:8px 10px;border:0;border-radius:calc(var(--radius-sm) - 1px);background:transparent;color:var(--text);font:inherit;font-size:var(--text-sm);text-align:left;cursor:pointer;transition:background .12s,color .12s}
.ui-select-opt:hover:not(:disabled){background:var(--surface-2)}
.ui-select-opt.is-selected{background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--accent);font-weight:600}
.ui-select-opt:disabled{opacity:.45;cursor:not-allowed}
.ui-select-group-label{padding:6px 10px 4px;font-size:var(--text-caption);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim)}
.ui-select.ui-select-chip .ui-select-trigger{min-height:28px;padding:3px 24px 3px 9px;font-size:var(--text-caption);font-weight:var(--font-weight-medium);box-shadow:none;width:auto;margin:0}
.ui-select.ui-select-chip-stage .ui-select-trigger{border-radius:var(--crm-r,var(--radius-sm));border:var(--border-width) solid color-mix(in srgb,var(--crm-stage-color,var(--accent)) 30%,var(--border));background:color-mix(in srgb,var(--crm-stage-color,var(--accent)) 8%,transparent);color:var(--crm-stage-color,var(--accent))}
.ui-select.ui-select-chip-stage .ui-select-menu{min-width:120px;width:max-content;max-width:min(240px,80vw)}
.ui-select.ui-select-chip-stage .ui-select-opt-stage{color:var(--crm-stage-color,var(--accent))}
.ui-select.ui-select-chip-stage .ui-select-opt-stage.is-selected{background:color-mix(in srgb,var(--crm-stage-color,var(--accent)) 12%,var(--surface-2))}
.ui-select.ui-select-chip-ghost .ui-select-trigger{min-width:96px;padding:3px 22px 3px 8px;font-size:10px;border:var(--border-width) solid color-mix(in srgb,var(--border) 80%,transparent);background:transparent;color:var(--text-dim);border-radius:var(--crm-r,var(--radius-sm))}
.ui-select.ui-select-chip-ghost .ui-select-trigger:hover{border-color:color-mix(in srgb,var(--accent) 30%,var(--border));color:var(--accent)}
.ui-select.ui-select-chip-ghost .ui-select-menu{min-width:148px;width:max-content;max-width:min(240px,80vw)}
.ui-select.ui-select-chip-ghost .ui-select-opt{white-space:nowrap}
.ui-select.mono .ui-select-trigger,.ui-select.mono .ui-select-opt{font-family:var(--font-mono);font-size:var(--text-xs)}
.crm-sort.ui-select,.cat-sort.ui-select,.cat-mod.ui-select{min-width:168px;max-width:240px}
.crm-sort.ui-select{max-width:220px}
.pw-field{position:relative;display:block;width:100%;margin:var(--field-gap) 0}
.pw-field>.input,.pw-field>input[type=password],.pw-field>input[type=text]{margin:0;padding-right:calc(var(--control-h) + var(--space-1));width:100%}
.pw-toggle{position:absolute;right:var(--space-2);top:50%;transform:translateY(-50%);width:calc(var(--control-h) - 8px);height:calc(var(--control-h) - 8px);padding:0;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text-dim);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color var(--transition),background var(--transition)}
.pw-toggle:hover{color:var(--text);background:var(--surface-2)}
.pw-toggle:focus-visible{outline:none;box-shadow:var(--focus-ring)}
textarea.input{width:100%;min-height:var(--control-h);padding:var(--gap-sm);border-radius:var(--radius-sm);border:var(--border-width) solid var(--border);background:var(--surface);color:var(--text);margin:var(--field-gap) 0;font-size:var(--text-body);font-family:inherit;resize:vertical}
.input:focus-visible,textarea.input:focus-visible,select:focus-visible{outline:none;box-shadow:var(--focus-ring);border-color:var(--accent)}
.toolbar{display:flex;flex-wrap:wrap;gap:var(--gap-sm);align-items:center;margin-bottom:var(--gap-sm)}
.seg{display:flex;gap:var(--space-1);flex-wrap:wrap}
.seg-btn{border:var(--border-width) solid var(--border);background:transparent;color:var(--text-dim);min-height:calc(var(--control-h) - 6px);padding:0 var(--gap-sm);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-sm);font-family:inherit;display:inline-flex;align-items:center;transition:background var(--transition),color var(--transition),border-color var(--transition)}
.seg-btn:hover{background:var(--surface-2);color:var(--text)}
.seg-btn.on{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}
.seg-btn[aria-pressed=true]{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}
.seg-btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}
.swatch-row{display:flex;gap:var(--gap-sm);flex-wrap:wrap;margin:var(--gap-sm) 0 var(--gap)}
.swatch{width:var(--control-h);height:var(--control-h);border-radius:var(--radius-lg);border:var(--border-width) solid var(--border);cursor:pointer;padding:0;transition:transform var(--transition),box-shadow var(--transition)}
.swatch.on{box-shadow:0 0 0 2px var(--bg),0 0 0 4px var(--accent)}
.swatch:focus-visible{outline:none;box-shadow:var(--focus-ring)}
.btn-block{width:100%}
.page-agent,.asst-page.page-agent{flex-direction:row;padding:0;gap:0;overflow:hidden;flex:1;min-height:0}
#page-agent.page-agent{flex-direction:column}
.agent-module-bar{padding:var(--gap-sm) var(--page-pad);border-bottom:var(--border-width) solid var(--border);flex-shrink:0;background:var(--bg)}
.agent-subnav .seg-btn{text-decoration:none;color:inherit}
.agent-pane{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column}
#agent-pane-projects.agent-pane:has(.dp-chat-active){overflow:hidden;padding:var(--space-2) var(--space-3);min-height:0}
.agent-pane.page-agent{overflow:hidden;padding:0;flex-direction:row;flex:1;min-height:0}
#agent-pane-dialogue.agent-pane.page-agent.dialogue-dash-mode{flex-direction:column;overflow:auto}
.dialogue-dashboard{flex:1;min-height:0;overflow:auto;padding:clamp(var(--space-4),3vw,var(--space-6));max-width:1280px;width:100%;margin:0 auto;box-sizing:border-box}
.dialogue-conversation{display:flex;flex:1;min-height:0;min-width:0;overflow:hidden;flex-direction:row}
.dialogue-conversation.hidden,.dialogue-dashboard.hidden{display:none!important}
.dd-head{margin:0 0 var(--space-5);min-width:0;padding-bottom:var(--space-1)}
.dd-page-title{margin:0;font-size:clamp(var(--text-lg,18px),2.5vw,var(--text-xl,22px));font-weight:500;line-height:1.25;color:var(--text);letter-spacing:-0.01em}
.dd-page-sub{margin:var(--space-2) 0 0;font-size:var(--text-sm,13px);font-weight:400;line-height:1.45;color:var(--text-muted,var(--text-dim))}
.dd-folds{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}
.dd-fold{border:var(--border-width) solid var(--border);border-radius:var(--radius-card,12px);background:var(--surface);overflow:hidden;min-width:0}
.dd-fold-toggle{display:flex;align-items:center;gap:var(--space-3);width:100%;min-height:44px;padding:var(--space-3) var(--space-4);border:0;background:transparent;color:var(--text);font:inherit;font-size:var(--text-md,16px);font-weight:500;cursor:pointer;text-align:left;transition:background var(--transition,150ms ease)}
.dd-fold-toggle:hover,.dd-fold-toggle:focus-visible{background:color-mix(in srgb,var(--surface-raised,var(--surface-2)) 88%,transparent);outline:none;box-shadow:var(--focus-ring)}
.dd-fold-chevron{width:8px;height:8px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(-45deg);transition:transform var(--transition,150ms ease);flex-shrink:0;opacity:.75;margin-top:-1px}
.dd-fold:not(.is-collapsed) .dd-fold-chevron{transform:rotate(45deg);margin-top:-2px}
.dd-fold-title{flex-shrink:0;font-weight:500;font-size:var(--text-md,16px);line-height:1.3;color:var(--text)}
.dd-fold-summary{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-sm,13px);font-weight:400;color:var(--text-muted,var(--text-dim));text-align:right;line-height:1.35}
.dd-fold-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--transition,200ms ease)}
.dd-fold:not(.is-collapsed) .dd-fold-body{grid-template-rows:1fr}
.dd-fold-inner{min-height:0;overflow:hidden}
.dd-fold.is-collapsed .dd-fold-inner{pointer-events:none;visibility:hidden}
.dd-fold:not(.is-collapsed) .dd-fold-inner{padding:0 var(--space-4) var(--space-4)}
.dd-quick-top{margin-bottom:var(--space-4)}
.dd-open-conversations{width:100%;justify-content:center;min-height:40px}
.dd-quick-block{margin-bottom:var(--space-4);min-width:0}
.dd-quick-block:last-of-type{margin-bottom:var(--space-3)}
.dd-subsection-title{margin:0 0 var(--space-3);font-size:var(--text-sm,13px);font-weight:500;line-height:1.35;color:var(--text);letter-spacing:0}
.dd-disc-slider-wrap{display:flex;align-items:stretch;gap:var(--space-2);min-width:0}
.dd-disc-slider{display:flex;gap:var(--space-3);overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;flex:1;min-width:0;padding:var(--space-1) 0 var(--space-2);scrollbar-width:thin}
.dd-disc-slider:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:var(--radius-el,8px)}
.dd-disc-card{flex:0 0 min(260px,calc(100% - var(--space-6)));scroll-snap-align:start;border:var(--border-width) solid var(--border);border-radius:var(--radius-card,12px);background:var(--surface-raised,var(--surface-2));padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-3);min-width:0;min-height:0}
.dd-disc-card-head{display:flex;align-items:flex-start;gap:var(--space-2);min-width:0}
.dd-disc-card-meta{flex:1;min-width:0}
.dd-disc-card-title{margin:0;font-size:var(--text-sm,13px);font-weight:500;line-height:1.35;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dd-disc-card-agent{margin:var(--space-1) 0 0;font-size:var(--text-sm,13px);font-weight:400;line-height:1.35;color:var(--text-muted,var(--text-dim));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dd-disc-card-time{flex-shrink:0;font-size:var(--text-sm,13px);font-weight:400;color:var(--text-muted,var(--text-dim));line-height:1.35;white-space:nowrap}
.dd-disc-card-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:auto}
.dd-disc-card-actions .btn{min-height:36px;flex:1;min-width:0;justify-content:center}
.dd-slider-nav{flex-shrink:0;width:36px;min-width:36px;height:36px;align-self:center;padding:0;border:var(--border-width) solid var(--border);border-radius:var(--radius-el,8px);background:var(--surface);color:var(--text);font-size:18px;line-height:1;cursor:pointer;transition:background var(--transition,150ms ease),opacity var(--transition,150ms ease)}
.dd-slider-nav:hover:not(:disabled),.dd-slider-nav:focus-visible{background:color-mix(in srgb,var(--surface-raised,var(--surface-2)) 90%,transparent);outline:none;box-shadow:var(--focus-ring)}
.dd-slider-nav:disabled{opacity:.35;cursor:not-allowed}
.dd-disc-card-skeleton{flex:0 0 min(260px,85%);min-height:120px;border-radius:var(--radius-card,12px);background:linear-gradient(90deg,color-mix(in srgb,var(--surface-2) 80%,transparent),color-mix(in srgb,var(--surface-raised) 60%,transparent),color-mix(in srgb,var(--surface-2) 80%,transparent));background-size:200% 100%;animation:dd-shimmer 1.2s ease-in-out infinite;padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2)}
.dd-disc-card-skeleton span{display:block;height:14px;border-radius:var(--radius-el,8px);background:color-mix(in srgb,var(--border) 40%,transparent)}
.dd-disc-card-skeleton span:last-child{width:55%}
.dd-skeleton-btn{display:block;width:100%;height:40px;border-radius:var(--radius-el,8px);background:linear-gradient(90deg,color-mix(in srgb,var(--surface-2) 80%,transparent),color-mix(in srgb,var(--surface-raised) 60%,transparent),color-mix(in srgb,var(--surface-2) 80%,transparent));background-size:200% 100%;animation:dd-shimmer 1.2s ease-in-out infinite}
@media(max-width:560px){
  .dd-disc-slider-wrap{align-items:stretch}
  .dd-slider-nav{display:none}
  .dd-disc-card{flex-basis:min(240px,88%)}
}
.dd-quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3);margin-bottom:var(--space-3);min-width:0}
@media(max-width:560px){.dd-quick-grid{grid-template-columns:1fr}}
.dd-quick-box{border:var(--border-width) solid var(--border);border-radius:var(--radius-el,8px);background:var(--surface-raised,var(--surface-2));padding:var(--space-3);min-width:0}
.dd-quick-box h3{margin:0 0 var(--space-2);font-size:var(--text-sm);font-weight:500;color:var(--text)}
.dd-quick-list{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}
.dd-quick-link{display:flex;align-items:center;gap:var(--space-2);width:100%;min-height:40px;padding:var(--space-1) var(--space-2);border:0;border-radius:var(--radius-el,8px);background:transparent;color:inherit;font:inherit;font-size:var(--text-sm);cursor:pointer;text-align:left;min-width:0;transition:background var(--transition,150ms ease)}
.dd-quick-link:hover,.dd-quick-link:focus-visible{background:color-mix(in srgb,var(--surface) 70%,var(--accent));outline:none;box-shadow:var(--focus-ring)}
.dd-quick-link-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dd-quick-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}
.dd-stats-toolbar{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center;justify-content:space-between;margin-bottom:var(--space-3)}
.dd-stats-meta{font-size:var(--text-sm);color:var(--text-muted,var(--text-dim))}
.dd-stats-skeleton{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}
.dd-stats-skeleton span{display:block;height:72px;border-radius:var(--radius-el,8px);background:linear-gradient(90deg,color-mix(in srgb,var(--surface-2) 80%,transparent),color-mix(in srgb,var(--surface-raised) 60%,transparent),color-mix(in srgb,var(--surface-2) 80%,transparent));background-size:200% 100%;animation:dd-shimmer 1.2s ease-in-out infinite}
.dd-section-skeleton{display:flex;flex-direction:column;gap:var(--space-2)}
.dd-section-skeleton span{display:block;height:40px;border-radius:var(--radius-el,8px);background:linear-gradient(90deg,color-mix(in srgb,var(--surface-2) 80%,transparent),color-mix(in srgb,var(--surface-raised) 60%,transparent),color-mix(in srgb,var(--surface-2) 80%,transparent));background-size:200% 100%;animation:dd-shimmer 1.2s ease-in-out infinite}
.dd-section-err{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2)}
@keyframes dd-shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}
@media(max-width:560px){.dd-stats-skeleton{grid-template-columns:1fr}}
.dd-agents-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,168px),1fr));gap:var(--space-3);min-width:0}
@media(min-width:900px){.dd-agents-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:360px){.dd-agents-grid{grid-template-columns:1fr}}
.dd-agent-card{border:var(--border-width) solid var(--border);border-radius:var(--radius-card,12px);background:var(--surface-raised,var(--surface-2));padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2);min-width:0;min-height:0}
.dd-agent-head{display:flex;align-items:flex-start;gap:var(--space-2);min-width:0}
.dd-agent-meta{flex:1;min-width:0}
.dd-agent-name{margin:0;font-size:var(--text-sm);font-weight:500;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dd-agent-desc{margin:var(--space-1) 0 0;font-size:var(--text-sm);color:var(--text-muted,var(--text-dim));line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.dd-agent-tools{font-size:var(--text-sm);color:var(--text-muted,var(--text-dim));line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.dd-agent-actions{display:flex;flex-direction:column;gap:var(--space-2);margin-top:auto}
.dd-agent-actions .btn{width:100%;min-width:0;justify-content:center}
.dd-empty{font-size:var(--text-sm);color:var(--text-muted,var(--text-dim));margin:0}
.dd-err{font-size:var(--text-sm);color:var(--error,var(--danger));margin:0}
.agent-pane-head{padding:var(--page-pad) var(--page-pad) 0;flex-shrink:0}
.agent-pane:not(.page-agent){padding:0 var(--page-pad) var(--page-pad)}
.agent-pane:not(.page-agent)>.card{margin-top:var(--gap-sm)}
.agent-agents-layout{display:grid;grid-template-columns:min(280px,34vw) 1fr;gap:var(--gap);align-items:start;padding:var(--page-pad)}
.agent-lab-wrap{display:grid;grid-template-columns:min(260px,30vw) 1fr;gap:var(--gap);align-items:start;padding:var(--page-pad);flex:1;min-height:0}
@media(max-width:900px){.agent-agents-layout,.agent-lab-wrap{grid-template-columns:1fr}}
.agent-list-card .toolbar,.agent-list-toolbar{margin-bottom:var(--gap-sm)}
.da-list-scroll{max-height:calc(100vh - 180px);overflow:auto;padding-right:2px}
.agent-edit-placeholder{display:flex;align-items:center;justify-content:center;min-height:240px;padding:var(--gap)}
.da-edit-head{display:flex;gap:12px;align-items:flex-start;padding-bottom:var(--gap-sm);border-bottom:1px solid var(--border);margin-bottom:var(--gap-sm)}
.da-edit-head-meta{flex:1;min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"title actions" "subnav subnav";gap:8px;align-items:center}
.da-edit-title-row{grid-area:title;display:flex;align-items:center;justify-content:flex-start;gap:8px;margin-bottom:0}
.da-edit-title-row .card-title{margin:0;flex:1;min-width:0}
.da-mobile-back{display:none;flex-shrink:0;min-height:40px;padding-inline:10px}
.da-edit-toolbar{display:none;align-items:center;gap:4px;flex-shrink:0;margin-left:auto}
.da-save-icon{color:var(--text-dim)}
.da-save-icon.is-dirty{color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent)}
.da-head-toggle[aria-expanded=true]{color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent)}
.da-head-actions{display:flex;gap:6px;flex-shrink:0;flex-wrap:wrap;grid-area:actions;justify-content:flex-end}
.da-head-actions .da-act-icon .nav-ico,.da-head-actions .da-act-icon .da-act-glyph{display:none}
.da-head-actions .da-act-icon .da-lbl-full{display:inline;font-size:var(--text-sm)}
.da-head-actions .da-act-icon{width:auto;height:auto;min-width:0;min-height:calc(var(--control-h) - 6px);padding:0 10px;border:var(--border-width) solid var(--border);border-radius:var(--radius-sm);background:transparent;color:inherit;font-size:var(--text-sm)}
.da-head-actions .da-act-icon.agent-star-btn.on .da-act-glyph,.da-head-actions .da-act-icon.agent-star-btn.on .da-lbl-full{color:var(--accent)}
.da-subnav{margin:0;grid-area:subnav}
.da-subnav .seg-btn{font-size:var(--text-xs);padding:6px 10px}
.da-tab-pane{padding:4px 0}
.da-edit-footer{display:flex;align-items:center;gap:12px;margin-top:var(--gap-sm);padding:var(--gap-sm) var(--page-pad,0);border-top:1px solid var(--border);position:sticky;bottom:0;z-index:6;background:color-mix(in srgb,var(--surface) 92%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.da-edit-footer{background:var(--surface)}}
.da-profil-row{align-items:flex-end;gap:12px}
.da-field-grow{flex:1;min-width:0}
.da-color-input{width:3rem;height:2.25rem;padding:2px;min-width:3rem}
.agent-icon-drop{display:flex;align-items:center;gap:12px;padding:12px;border:1px dashed color-mix(in srgb,var(--border) 80%,var(--accent));border-radius:var(--radius-md);background:color-mix(in srgb,var(--surface-2) 35%,var(--surface));cursor:pointer;transition:border-color var(--transition),background var(--transition),box-shadow var(--transition);margin-bottom:10px}
.agent-icon-drop:hover,.agent-icon-drop:focus-visible,.agent-icon-drop.drag{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--surface));outline:none;box-shadow:var(--focus-ring)}
.agent-icon-drop-hint{font-size:var(--text-xs);color:var(--text-dim);line-height:var(--lh-loose)}
.agent-icon-preview{flex-shrink:0}
.agent-icon-preview .agent-avatar-lg{width:52px;height:52px;font-size:26px}
.agent-avatar-img{position:relative;overflow:hidden}
.agent-avatar-img .agent-avatar-photo{width:100%;height:100%;object-fit:cover;border-radius:inherit;display:none}
.agent-avatar-img.has-photo .agent-avatar-photo{display:block}
.agent-avatar-img .agent-avatar-emoji{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:inherit;line-height:1}
.agent-avatar-img.has-photo .agent-avatar-emoji{opacity:0;pointer-events:none}
.agent-color-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.agent-color-preview{width:40px;height:40px;border-radius:10px;border:2px solid color-mix(in srgb,var(--border) 70%,transparent);background:var(--pick,#6366f1);box-shadow:inset 0 0 0 1px color-mix(in srgb,#000 8%,transparent);cursor:default;flex-shrink:0}
.agent-color-presets{display:flex;flex-wrap:wrap;gap:6px}
.agent-color-dot{width:24px;height:24px;border-radius:999px;border:2px solid transparent;background:var(--c);cursor:pointer;padding:0;transition:transform var(--transition),border-color var(--transition),box-shadow var(--transition)}
.agent-color-dot:hover,.agent-color-dot.on{transform:scale(1.08);border-color:var(--surface);box-shadow:0 0 0 2px var(--accent)}
.agent-color-hex{width:6.5rem;min-width:0;font-size:var(--text-xs)}
.da-cost-panel{margin-top:12px;padding:12px;border-radius:var(--radius-md);border:1px solid color-mix(in srgb,var(--border) 75%,transparent);background:color-mix(in srgb,var(--surface-2) 40%,var(--surface))}
.da-cost-title{font-size:var(--text-xs);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.05em;color:var(--text-dim);margin-bottom:8px}
.da-cost-rows{display:flex;flex-direction:column;gap:8px}
.da-cost-row{display:flex;gap:8px;align-items:flex-start}
.da-cost-icon{font-size:16px;line-height:1.2;flex-shrink:0}
.da-cost-body{flex:1;min-width:0}
.da-cost-head{display:flex;justify-content:space-between;gap:8px;align-items:baseline;flex-wrap:wrap}
.da-cost-label{font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--text)}
.da-cost-est{font-size:var(--text-xs);color:var(--accent);font-weight:var(--font-weight-medium);white-space:nowrap}
.da-cost-model{display:block;margin-top:2px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.da-cost-detail{display:block;margin-top:2px;font-size:10px;line-height:1.35}
.da-cost-foot{margin:8px 0 0;font-size:10px;line-height:1.4}
.agent-info-pop .da-cost-panel,.disc-agent-pop .da-cost-panel{margin-top:10px;padding:10px}
.agent-info-pop .da-cost-title,.disc-agent-pop .da-cost-title{font-size:10px}
.agent-icon-clear{margin-left:auto;flex-shrink:0}
@media(max-width:900px){.agent-agents-layout{grid-template-columns:1fr}}
.agent-list-card .toolbar{margin-bottom:var(--gap-sm)}
#da-list{display:flex;flex-direction:column;gap:6px}
.agent-card{display:flex;align-items:flex-start;gap:10px;padding:10px 10px 10px 8px;border-radius:var(--radius-md);border:1px solid transparent;background:transparent;cursor:pointer;transition:background var(--motion-fast,var(--transition)),border-color var(--motion-fast,var(--transition)),box-shadow var(--motion-fast,var(--transition))}
.agent-card:hover,.agent-card:focus-visible{background:color-mix(in srgb,var(--surface-2) 70%,transparent);border-color:color-mix(in srgb,var(--border) 60%,transparent);outline:none}
.agent-card.active{background:color-mix(in srgb,var(--accent) 10%,var(--surface));border-color:color-mix(in srgb,var(--accent) 35%,var(--border));box-shadow:var(--focus-ring)}
.agent-card-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}
.agent-card-head{display:flex;align-items:center;gap:6px;min-width:0}
.agent-card-name{flex:1;min-width:0;font-weight:var(--font-weight-medium);color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:var(--lh-tight)}
.agent-card.active .agent-card-name{color:var(--accent)}
.agent-card-model{font-size:var(--text-xs);color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.agent-card-actions{display:flex;gap:2px;opacity:1;transition:opacity var(--motion-fast,var(--transition))}
@media(hover:hover){.agent-card-actions{opacity:0}.agent-card:hover .agent-card-actions,.agent-card.active .agent-card-actions,.agent-card-actions:focus-within{opacity:1}}
.agent-card-actions .icon-btn{width:28px;height:28px;min-width:28px}
.agent-avatar{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:var(--radius-md);background:var(--agent-avatar-bg,color-mix(in srgb,var(--accent) 18%,var(--surface-2)));line-height:1;user-select:none}
.agent-avatar-sm{width:28px;height:28px;font-size:15px;border-radius:8px}
.agent-avatar-md{width:36px;height:36px;font-size:20px;border-radius:10px}
.agent-avatar-lg{width:44px;height:44px;font-size:24px;border-radius:12px}
.agent-skill-chips{display:flex;flex-wrap:wrap;gap:4px;align-items:center}
.agent-skill-chips.compact .agent-skill-label{display:none}
.agent-skill-chip{display:inline-flex;align-items:center;gap:3px;padding:2px 6px;border-radius:999px;font-size:11px;line-height:1.2;background:color-mix(in srgb,var(--surface-2) 80%,var(--surface));border:1px solid color-mix(in srgb,var(--border) 70%,transparent);color:var(--text-dim);white-space:nowrap}
.agent-skill-chip .agent-skill-label{font-size:10px}
.agent-emoji-grid{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}
.agent-emoji-btn{width:36px;height:36px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);font-size:20px;cursor:pointer;padding:0;line-height:1;transition:border-color var(--transition),background var(--transition),box-shadow var(--transition)}
.agent-emoji-btn:hover,.agent-emoji-btn.on{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--surface));box-shadow:var(--focus-ring)}
.agent-emoji-input{max-width:12rem;margin-top:4px}
.agent-pick-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;margin-top:8px;max-height:min(50vh,360px);overflow:auto;padding:2px}
.agent-tpl-compact-list{max-height:min(180px,40vh);overflow:auto;border:1px solid var(--border);border-radius:var(--radius-md);margin:6px 0 10px;background:var(--surface)}
.agent-tpl-row{display:flex;align-items:center;gap:8px;width:100%;padding:7px 10px;border:0;border-bottom:1px solid color-mix(in srgb,var(--border) 70%,transparent);background:transparent;cursor:pointer;text-align:left;font:inherit;color:inherit}
.agent-tpl-row:last-child{border-bottom:0}
.agent-tpl-row:hover,.agent-tpl-row.on{background:color-mix(in srgb,var(--accent) 10%,var(--surface))}
.agent-tpl-ico{flex:0 0 auto;font-size:1.1rem;line-height:1}
.agent-tpl-meta{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1}
.agent-tpl-meta strong{font-size:var(--text-sm);font-weight:var(--font-weight-medium);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.agent-tpl-meta .sub{font-size:10px;opacity:.85}
.modal-body-compact .field-label{margin-top:6px}
.bo-agent-section{margin:10px 0 14px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-md);background:color-mix(in srgb,var(--surface) 92%,var(--accent) 8%)}
.bo-tpl-compact{max-height:min(160px,35vh);overflow:auto;display:flex;flex-direction:column;gap:2px;margin:6px 0 8px;padding:4px 0}
.bo-tpl-row{display:flex;align-items:center;gap:8px;padding:3px 0;font-size:var(--text-sm);cursor:pointer}
.bo-tpl-row code{font-size:10px;opacity:.8;max-width:45%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bo-tpl-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bo-defaults-card{margin-bottom:12px;padding:12px 14px}
.bo-defaults-head{margin-bottom:10px}
.bo-defaults-head .settings-lead{margin:4px 0 0;font-size:var(--text-sm)}
.bo-defaults-sync{display:flex;flex-wrap:wrap;gap:10px 16px;margin:8px 0 6px}
.bo-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 12px;margin:8px 0}
@media(max-width:640px){.bo-form-grid{grid-template-columns:1fr}}
.bo-field{display:flex;flex-direction:column;gap:4px;min-width:0}
.bo-field .field-label{margin:0;font-size:var(--text-xs)}
.bo-agent-hint{font-size:var(--text-sm);margin:0 0 8px}
.bo-agent-hint a{color:var(--accent);text-decoration:none;font-weight:var(--font-weight-medium)}
.bo-agent-hint a:hover{text-decoration:underline}
.bo-agent-apply{margin:6px 0 8px}
.bo-agent-links{gap:6px;margin-top:4px}
.bo-section-head{margin:14px 0 8px}
.bo-section-head .settings-lead{margin:2px 0 0;font-size:var(--text-sm)}
.bo-tpl-list-card{padding:8px 10px}
.bo-tpl-item{align-items:center;gap:8px;padding:8px 6px}
.bo-tpl-item-main{flex:1;min-width:0}
.bo-tpl-item-main code{margin-left:6px}
.bo-tpl-role-chips{display:flex;flex-wrap:wrap;gap:6px 12px;margin:4px 0 8px;max-height:100px;overflow:auto}
.bo-ta-sm{min-height:3.5rem;resize:vertical}
.agent-auto-badge{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:999px;font-size:9px;font-weight:600;letter-spacing:.02em;text-transform:uppercase;background:color-mix(in srgb,var(--accent) 18%,var(--surface));color:var(--accent);vertical-align:middle}
.agent-row-compact{position:relative;display:flex;align-items:center;gap:6px;padding:3px 30px 3px 6px;min-height:30px;border-radius:var(--radius-sm);border:1px solid transparent;cursor:pointer;transition:background var(--motion-fast,var(--transition)),border-color var(--motion-fast,var(--transition))}
.agent-row-compact:hover,.agent-row-compact:focus-visible{background:color-mix(in srgb,var(--surface-2) 75%,transparent);border-color:color-mix(in srgb,var(--border) 55%,transparent);outline:none}
.agent-row-compact.active{background:color-mix(in srgb,var(--accent) 10%,var(--surface));border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}
.agent-row-compact.is-default{border-color:color-mix(in srgb,var(--accent) 30%,var(--border))}
.agent-row-name{flex:1;min-width:0;font-size:var(--text-sm);font-weight:var(--font-weight-medium);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.2;padding-right:2px}
.agent-row-compact.active .agent-row-name{color:var(--accent)}
.agent-star{position:absolute;right:4px;top:50%;transform:translateY(-50%);flex:0 0 auto;width:22px;height:22px;padding:0;border:0;background:transparent;color:var(--text-dim);font-size:14px;line-height:1;cursor:pointer;border-radius:var(--radius-sm);transition:color var(--transition),transform var(--transition);z-index:2}
.agent-star:hover,.agent-star:focus-visible{color:var(--accent);outline:none;transform:translateY(-50%) scale(1.08)}
.agent-star.on{color:var(--accent);cursor:default}
.agent-row-actions{position:absolute;right:28px;top:50%;transform:translateY(-50%);display:flex;gap:0;opacity:0;transition:opacity var(--motion-fast,var(--transition));z-index:3;padding:1px 2px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
@media(hover:hover){.agent-row-compact:hover .agent-row-actions,.agent-row-compact.active .agent-row-actions,.agent-row-actions:focus-within{opacity:1}}
.agent-row-compact .agent-row-actions .icon-btn{color:color-mix(in srgb,var(--text) 72%,var(--text-dim));background:color-mix(in srgb,var(--surface-2) 55%,transparent)}
.agent-row-compact:hover .agent-row-actions .icon-btn,.agent-row-compact.active .agent-row-actions .icon-btn,.agent-row-actions .icon-btn:focus-visible{color:var(--text);background:color-mix(in srgb,var(--surface-2) 92%,transparent)}
.agent-row-compact .agent-row-actions .icon-btn-danger:hover,.agent-row-compact .agent-row-actions .icon-btn-danger:focus-visible{color:var(--danger);background:var(--danger-soft)}
.agent-row-compact .agent-row-actions .nav-ico svg{display:block;stroke:currentColor}
.agent-row-compact .icon-btn-xs{width:22px;height:22px;min-width:22px;font-size:11px}
.agent-row-compact .agent-float-tip,.da-my-default .agent-float-tip{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.agent-tip-float{position:fixed;z-index:10050;min-width:min(240px,calc(100vw - 16px));max-width:min(280px,calc(100vw - 16px));pointer-events:none;filter:drop-shadow(0 8px 24px rgba(0,0,0,.12))}
.agent-tip-float.hidden{display:none!important;visibility:hidden}
.agent-tip-inner{padding:8px 10px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface);font-size:var(--text-xs);line-height:var(--lh-tight)}
.agent-tip-head{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;margin-bottom:4px}
.agent-tip-head strong{font-size:var(--text-sm);color:var(--text)}
.agent-tip-badge{font-size:9px;font-weight:600;color:var(--accent);white-space:nowrap}
.agent-tip-model{display:block;font-size:10px;color:var(--text-dim);margin-bottom:4px;word-break:break-all}
.agent-tip-caps{display:flex;flex-wrap:wrap;gap:3px 6px}
.agent-tip-cap{font-size:10px;color:var(--text-dim);white-space:nowrap}
.agent-tip-meta{margin-top:4px;color:var(--text-dim);font-size:10px}
.da-my-default{position:relative;flex:1;min-width:0;margin-left:4px}
.da-my-default-btn{display:flex;align-items:center;gap:5px;width:100%;max-width:100%;padding:3px 8px;border:1px solid color-mix(in srgb,var(--accent) 25%,var(--border));border-radius:var(--radius-sm);background:color-mix(in srgb,var(--accent) 6%,var(--surface));cursor:pointer;font:inherit;color:var(--text);text-align:left;transition:border-color var(--transition),background var(--transition)}
.da-my-default-btn:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:color-mix(in srgb,var(--accent) 10%,var(--surface))}
.da-my-default-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-xs)}
.da-my-default-label{font-weight:var(--font-weight-medium)}
.agent-list-toolbar{display:flex;align-items:center;gap:4px;flex-wrap:nowrap;margin-bottom:4px!important}
.da-toolbar-btn{width:32px;height:32px;min-width:32px;--icon-btn-size:32px;border:var(--border-width) solid color-mix(in srgb,var(--border) 82%,transparent);background:var(--surface)}
.da-toolbar-btn.icon-btn-accent{color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--surface));border-color:color-mix(in srgb,var(--accent) 28%,var(--border))}
.da-toolbar-btn.icon-btn-accent:hover:not(:disabled){color:var(--accent);background:color-mix(in srgb,var(--accent) 18%,var(--surface))}
.da-bulk-mode-btn.is-on{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 35%,var(--border));background:color-mix(in srgb,var(--accent) 12%,var(--surface))}
.da-bulk-del-btn{display:inline-flex;align-items:center;gap:2px;padding:0 6px;width:auto;min-width:32px}
.da-bulk-del-btn .da-bulk-count{font-size:10px;font-weight:700;line-height:1;min-width:0.65rem;text-align:center}
.agent-row-pick{display:none;align-items:center;justify-content:center;flex:0 0 auto;margin:0;padding:0;cursor:pointer}
.agent-row-pick .agent-row-check{margin:0}
.agent-list-card.is-bulk-mode .agent-row-pick{display:inline-flex}
.agent-list-card.is-bulk-mode .agent-row-actions,.agent-list-card.is-bulk-mode .agent-star{display:none!important}
.agent-row-compact.is-bulk-picked{background:color-mix(in srgb,var(--accent) 8%,var(--surface));border-color:color-mix(in srgb,var(--accent) 28%,var(--border))}
.agent-list-card.is-bulk-mode .agent-row-compact{padding-left:4px}
.da-list-loading{display:flex;flex-direction:column;gap:6px;padding:2px 0}
.da-list-skel-row{display:flex;align-items:center;gap:8px;min-height:30px;padding:3px 6px}
.da-list-skel-av{width:28px;height:28px;border-radius:8px;flex-shrink:0;background:linear-gradient(90deg,color-mix(in srgb,var(--surface-2) 88%,transparent),color-mix(in srgb,var(--border) 35%,var(--surface-2)),color-mix(in srgb,var(--surface-2) 88%,transparent));background-size:200% 100%;animation:nav-sk-shimmer 1.2s ease-in-out infinite}
.da-list-skel-name{flex:1;height:12px;border-radius:999px;background:linear-gradient(90deg,color-mix(in srgb,var(--surface-2) 88%,transparent),color-mix(in srgb,var(--border) 35%,var(--surface-2)),color-mix(in srgb,var(--surface-2) 88%,transparent));background-size:200% 100%;animation:nav-sk-shimmer 1.2s ease-in-out infinite}
.da-list-skel-row:nth-child(3n+2) .da-list-skel-name{width:72%}
.da-list-skel-row:nth-child(3n) .da-list-skel-name{width:58%}
.agent-star-btn.agent-star-btn.on,.agent-star-btn:disabled{opacity:.85;cursor:default}
.agent-star-btn.on{color:var(--accent)}
.da-default-hint{font-size:10px;color:var(--text-dim);margin:0 0 6px;line-height:1.35;padding:0 2px}
.da-default-hint a{color:var(--accent);text-decoration:none;font-weight:500}
.da-default-hint a:hover{text-decoration:underline}
#da-list{display:flex;flex-direction:column;gap:2px}
.da-list-scroll{max-height:calc(100vh - 200px);overflow:auto;padding-right:2px}
.agent-list-card{padding:8px 8px 10px}
.agent-list-card .toolbar{margin-bottom:0}

/* Agent dev — mobile UX (Mes agents, édition, skills) */
@media(max-width:960px){
  #page-agent,#page-agent .content-inner{overflow-x:clip;max-width:100%}
  #page-agent{overflow:hidden;min-height:0;min-width:0;width:100%}
  body.da-mobile-editing{overflow-x:clip}
  body.da-mobile-editing .content{overflow-x:clip;max-width:100%}
  body.da-mobile-editing .content-mobile-head{display:none!important}
  body.da-mobile-editing #page-agent .agent-module-bar{display:none!important}
  body.da-mobile-editing #page-agent.page-agent{flex:1;min-height:0}
  .agent-module-bar{padding:8px max(12px,env(safe-area-inset-left)) 8px max(12px,env(safe-area-inset-right));overflow:hidden;max-width:100%}
  .agent-module-bar .agent-subnav{display:flex;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:6px;padding-bottom:2px;max-width:100%;min-width:0;overscroll-behavior-x:contain}
  .agent-module-bar .agent-subnav::-webkit-scrollbar{display:none}
  .agent-module-bar .agent-subnav .seg-btn{flex:0 0 auto;min-height:44px;padding:0 12px;white-space:nowrap;font-size:var(--text-sm)}
  .agent-pane:not(.page-agent){padding:0;overflow:hidden;flex:1;min-height:0;display:flex;flex-direction:column;min-width:0}
  #agent-pane-catalogue.agent-pane,#agent-pane-projects.agent-pane{padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));overflow:auto}
  #agent-pane-projects.agent-pane:has(.dp-chat-active){overflow:hidden;padding:var(--space-1) var(--space-2);display:flex;flex-direction:column;min-height:0}
  #agent-pane-agents{overflow:hidden;padding:0;min-width:0;flex:1;min-height:0;display:flex;flex-direction:column}
  .agent-lab-wrap{display:flex;flex-direction:column;flex:1;min-height:0;min-width:0;overflow:hidden;max-width:100%;width:100%;padding:0;gap:0;align-items:stretch}
  .agent-lab-wrap.is-editing .agent-list-card,.agent-lab-wrap.is-editing .agent-edit-placeholder{display:none!important}
  .agent-lab-wrap:not(.is-editing) .agent-edit-card{display:none!important}
  .agent-edit-placeholder{display:none!important}
  .agent-list-card{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden;margin:0;border:0;border-radius:0;box-shadow:none;padding:10px max(12px,env(safe-area-inset-left)) 10px max(12px,env(safe-area-inset-right));min-width:0;max-width:100%;height:100%}
  .agent-list-toolbar{flex-wrap:nowrap;gap:4px;margin-bottom:6px!important}
  .agent-list-toolbar .da-toolbar-btn{min-height:36px;width:36px;min-width:36px;--icon-btn-size:36px}
  .da-my-default{flex:1 1 100%;margin-left:0!important;max-width:100%}
  .da-default-hint{padding:0 2px 8px;font-size:11px;line-height:1.4}
  .da-list-scroll{max-height:none;flex:1;min-height:0;overflow:auto;-webkit-overflow-scrolling:touch;padding-right:0}
  .agent-row-compact{min-height:48px;padding:8px 42px 8px 10px;gap:8px;touch-action:manipulation}
  .agent-row-compact .agent-star{min-width:36px;min-height:36px;display:inline-flex;align-items:center;justify-content:center;font-size:1rem;right:6px;transform:translateY(-50%)}
  .agent-row-compact .agent-star:hover,.agent-row-compact .agent-star:focus-visible{transform:translateY(-50%) scale(1.05)}
  .agent-row-actions{opacity:1;gap:2px;right:44px;transform:translateY(-50%)}
  .agent-row-compact .icon-btn-xs{width:36px;height:36px;min-width:36px;font-size:12px}
  .agent-edit-placeholder{min-height:120px;border:0;border-radius:0;box-shadow:none;margin:0}
  .agent-edit-card:not(.hidden){display:flex!important;flex-direction:column;flex:1;min-height:0;overflow:hidden;margin:0;border:0;border-radius:0;box-shadow:none;background:var(--bg);max-width:100%;min-width:0;width:100%;height:100%}
  .agent-edit-card .da-edit-head{flex-shrink:0;margin:0;padding:max(10px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) 8px max(12px,env(safe-area-inset-left));border-bottom:1px solid var(--border);gap:8px;flex-direction:column;align-items:stretch;min-width:0;max-width:100%;box-sizing:border-box}
  .agent-edit-card .da-edit-head-meta{display:flex;flex-direction:column;gap:4px;min-width:0;width:100%;max-width:100%;overflow:hidden}
  #da-preview-avatar{display:none!important}
  .da-mobile-back{display:inline-flex;align-items:center}
  .da-edit-title-row{width:100%;align-items:center;gap:6px;flex-wrap:nowrap;display:flex}
  .da-edit-title-row .card-title{font-size:var(--text-md);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1}
  .da-edit-toolbar{display:flex}
  .da-head-actions{display:none;flex-wrap:nowrap;gap:4px;width:100%;max-width:100%;padding:2px 0 4px;justify-content:flex-start;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .da-head-actions.is-open{display:flex}
  .da-head-actions::-webkit-scrollbar{display:none}
  .da-head-actions .da-act-icon{width:36px;height:36px;min-width:36px;min-height:36px;padding:0;flex:0 0 auto;border:var(--border-width) solid color-mix(in srgb,var(--border) 80%,transparent);border-radius:var(--radius-sm);background:var(--surface)}
  .da-head-actions .da-act-icon .da-lbl-full{display:none}
  .da-head-actions .da-act-icon .nav-ico,.da-head-actions .da-act-icon .da-act-glyph{display:inline-flex;align-items:center;justify-content:center;font-size:15px;line-height:1}
  .da-head-actions .da-act-icon .da-act-glyph{font-size:16px}
  .da-head-actions .da-act-icon.agent-star-btn.on{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}
  .da-subnav{display:flex;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:6px;width:100%;max-width:100%;min-width:0;padding:2px 0;overscroll-behavior-x:contain;touch-action:pan-x;box-sizing:border-box}
  .da-subnav::-webkit-scrollbar{display:none}
  .da-subnav .seg-btn{flex:0 0 auto;min-height:44px;padding:0 11px;font-size:var(--text-sm);white-space:nowrap}
  .agent-edit-card .da-tab-pane:not(.hidden){flex:1;min-height:0;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:12px max(12px,env(safe-area-inset-left)) 16px max(12px,env(safe-area-inset-right));max-width:100%;min-width:0;box-sizing:border-box}
  .da-edit-footer{flex-shrink:0;margin:0;padding:4px max(12px,env(safe-area-inset-left)) max(6px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-right));border-top:0;flex-wrap:wrap;gap:4px;max-width:100%;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;position:static}
  .da-edit-footer #da-save{display:none}
  .da-edit-footer .da-save-status,.da-edit-footer #da-msg{flex:1 1 100%;text-align:center;font-size:var(--text-xs);min-height:0;padding:0}
  .da-edit-footer .da-save-status:empty,#da-msg:empty{display:none}
  .da-profil-row{flex-direction:column;align-items:stretch}
  .da-color-input{width:100%;max-width:120px;height:44px}
  .da-memory-row{grid-template-columns:1fr}
  .da-skills-layout,.da-skill-family,.da-skill-grid,.da-skill-card,.da-skill-card-inner{min-width:0;max-width:100%}
  .da-skill-fields-row{flex-direction:column;align-items:stretch;gap:8px}
  .da-skill-field-fit,.da-skill-field-fit-sm,.da-skill-field-fit-wide{min-width:0!important;width:100%;max-width:100%;flex:1 1 100%}
  .da-skill-field-model{width:100%;max-width:100%;min-width:0}
  .da-skill-pick-bar{flex-direction:column;align-items:stretch}
  .da-skill-pick-item,.da-skill-pick-filter{min-width:0;max-width:100%;width:100%}
  #da-tab-skills .ui-select,#da-tab-skills .ui-select-fit,#da-tab-skills .ui-select-model{display:block;width:100%;max-width:100%;min-width:0}
  #da-tab-skills .ui-select-trigger{width:100%;max-width:100%;min-width:0;box-sizing:border-box}
  #da-tab-skills .input,#da-tab-skills select.input{width:100%;max-width:100%;box-sizing:border-box}
  .agent-icon-drop{padding:16px 12px;max-width:100%}
}
@media(max-width:480px){
  .agent-module-bar .agent-subnav .seg-btn{padding:0 10px;font-size:var(--text-xs)}
  .da-subnav .seg-btn{padding:0 9px;font-size:var(--text-xs)}
}

.agent-pick-card{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 10px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);cursor:pointer;text-align:center;font-family:inherit;transition:border-color var(--transition),background var(--transition),box-shadow var(--transition)}
.agent-pick-card:hover,.agent-pick-card:focus-visible{border-color:color-mix(in srgb,var(--accent) 50%,var(--border));background:color-mix(in srgb,var(--accent) 6%,var(--surface));outline:none}
.agent-pick-card.on{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--surface));box-shadow:var(--focus-ring)}
.agent-pick-name{font-weight:var(--font-weight-medium);font-size:var(--text-sm);color:var(--text);line-height:var(--lh-tight);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.agent-pick-model{font-size:10px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chat-agent-bar{display:flex;align-items:center;gap:10px;padding:8px var(--page-pad);border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--surface-2) 40%,var(--surface));flex-shrink:0}
.chat-agent-bar.hidden{display:none}
.chat-agent-meta{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}
.chat-agent-name{font-weight:var(--font-weight-medium);font-size:var(--text-sm);color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.disc .agent-avatar-sm{margin-right:2px;flex-shrink:0}
.disc{gap:6px}
.disc .disc-title{flex:1}
.cat-search{min-width:140px;max-width:100%;flex:1;margin:0}
.cat-sort,.cat-mod,.cat-pricing,.cat-cap,.cat-provider{width:auto;min-width:120px;margin:0}
.cat-cache{font-size:var(--text-xs);color:var(--text-dim);white-space:normal;line-height:1.35}
.cat-shell{display:flex;flex-direction:column;gap:var(--gap-sm);position:relative;padding-bottom:8px}
.cat-toolbar-v2{display:flex;flex-direction:column;gap:10px;margin-bottom:var(--gap-sm)}
.cat-toolbar-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.cat-toolbar-main{align-items:stretch}
.cat-toolbar-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}
.cat-presets{display:flex;flex-wrap:wrap;gap:6px}
.cat-preset-chip{display:inline-flex;align-items:center;gap:4px;padding:6px 10px;border:1px solid color-mix(in srgb,var(--border) 85%,transparent);border-radius:999px;background:var(--surface);font:inherit;font-size:11px;color:var(--text-dim);cursor:pointer;min-height:34px;transition:border-color .15s ease,background .15s ease,color .15s ease}
.cat-preset-chip:hover{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));color:var(--text)}
.cat-preset-chip.is-on{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:color-mix(in srgb,var(--accent) 10%,var(--surface));color:var(--text);font-weight:600}
.cat-active-filters{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.cat-active-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border:1px dashed color-mix(in srgb,var(--accent) 35%,var(--border));border-radius:999px;background:color-mix(in srgb,var(--accent) 6%,var(--surface));font:inherit;font-size:11px;color:var(--text);cursor:pointer;min-height:30px}
.cat-filters-panel{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;padding:12px;border:1px solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:var(--radius-md);background:color-mix(in srgb,var(--surface-2) 35%,var(--surface))}
.cat-filter-group{display:flex;flex-direction:column;gap:4px;min-width:0}
.cat-filter-group-wide{grid-column:1/-1}
.cat-filter-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-dim)}
.cat-filters-toggle.has-dot{position:relative}
.cat-filters-toggle.has-dot::after{content:"";position:absolute;top:6px;right:6px;width:6px;height:6px;border-radius:50%;background:var(--accent)}
.cat-table-wrap{overflow:auto;max-height:min(62vh,720px)}
.cat-actions{width:44px;text-align:center}
.cat-pin-btn{min-width:34px;min-height:34px;padding:0 6px;font-size:14px;line-height:1}
.cat-pin-btn.is-on{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}
.cat-cards-wrap{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:10px;max-height:min(62vh,720px);overflow:auto;padding:2px}
.cat-model-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--space-2);max-height:none;padding:0}
@media(max-width:1400px){.cat-model-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:1100px){.cat-model-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.cat-model-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.cat-model-card{padding:10px;border-radius:calc(var(--radius-md) + 2px);gap:6px;min-height:0}
.cat-model-card .cat-card-title{font-size:var(--text-xs);line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.cat-model-card .cat-card-slug{font-size:10px}
.cat-model-card .cat-card-prices{font-size:10px;line-height:1.3}
.cat-model-card .cat-card-tags{gap:3px}
.cat-model-card .profile-role-tag{font-size:9px;padding:1px 6px}
.cat-model-score{font-size:11px;font-weight:700;color:var(--accent);flex-shrink:0}
.cat-model-foot{display:flex;flex-wrap:wrap;gap:4px;margin-top:auto;padding-top:6px}
.cat-model-foot .btn{min-height:28px;padding:0 8px;font-size:11px}
.cat-model-list-wrap{display:flex;flex-direction:column;gap:2px;min-width:0;max-height:min(62vh,720px);overflow:auto;padding:1px}
.cat-model-list{display:flex;flex-direction:column;gap:2px}
.cat-model-list-head,.cat-model-row{
  display:grid;
  grid-template-columns:minmax(140px,1.6fr) minmax(72px,.7fr) minmax(48px,.45fr) minmax(52px,.5fr) minmax(120px,1fr) minmax(100px,.9fr) auto;
  gap:6px;
  align-items:center;
  box-sizing:border-box;
}
.cat-model-list-head{padding:2px 8px 6px;font-size:9px;font-weight:600;color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em;border-bottom:var(--border-width) solid var(--border);position:sticky;top:0;background:color-mix(in srgb,var(--surface) 94%,var(--surface-2));z-index:1}
.cat-model-row{padding:6px 8px;border:var(--border-width) solid color-mix(in srgb,var(--border) 85%,transparent);border-radius:calc(var(--radius-md) + 1px);background:var(--surface);cursor:pointer;min-height:44px;transition:border-color var(--motion-fast,var(--transition)),background var(--motion-fast,var(--transition)),box-shadow var(--motion-fast,var(--transition))}
.cat-model-row:hover{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));background:color-mix(in srgb,var(--accent) 4%,var(--surface))}
.cat-model-row:focus-visible{outline:none;box-shadow:var(--focus-ring)}
.cat-model-row-main{min-width:0;display:flex;flex-direction:column;gap:2px}
.cat-model-row-name{font-size:var(--text-sm);font-weight:600;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cat-model-row-slug{font-size:10px;color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cat-model-row-stat{display:flex;flex-direction:column;gap:1px;min-width:0;font-size:11px;line-height:1.2}
.cat-model-row-k{font-size:8px;text-transform:uppercase;letter-spacing:.03em;color:var(--text-dim)}
.cat-model-score-inline{font-weight:700;color:var(--accent)}
.cat-model-row-price{font-size:10px;color:var(--text-dim)}
.cat-model-row-tags{display:flex;flex-wrap:wrap;gap:3px;min-width:0}
.cat-model-row-tags .profile-role-tag{font-size:9px;padding:1px 5px}
.cat-model-row-actions{display:flex;flex-wrap:wrap;gap:4px;justify-content:flex-end}
.cat-model-row-actions .btn{min-height:28px;padding:0 8px;font-size:11px}
.cat-model-row-wrap{display:flex;flex-direction:column;gap:0}
.cat-model-row-wrap.is-expanded .cat-model-row{border-bottom-left-radius:0;border-bottom-right-radius:0;border-bottom-color:color-mix(in srgb,var(--accent) 18%,var(--border));background:color-mix(in srgb,var(--accent) 4%,var(--surface))}
.cat-model-row-detail{padding:8px 10px 10px;border:var(--border-width) solid color-mix(in srgb,var(--accent) 28%,var(--border));border-top:0;border-radius:0 0 calc(var(--radius-md) + 1px) calc(var(--radius-md) + 1px);background:color-mix(in srgb,var(--accent) 6%,var(--surface))}
.cat-model-row-detail.hidden{display:none}
.cat-model-detail-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:6px 10px;font-size:11px;line-height:1.35}
.cat-model-detail-cell{display:flex;flex-direction:column;gap:2px;min-width:0}
.cat-model-detail-span{grid-column:1/-1}
.cat-model-detail-score{display:block}
.cat-model-detail-perf{display:block;height:3px;border-radius:999px;background:color-mix(in srgb,var(--border) 55%,transparent);margin-top:4px;overflow:hidden}
.cat-model-detail-perf i{display:block;height:100%;background:var(--accent);border-radius:inherit}
.cat-model-detail-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px;padding-top:8px;border-top:1px dashed color-mix(in srgb,var(--border) 70%,transparent)}
.cat-model-detail-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.cat-open-btn.on{background:color-mix(in srgb,var(--accent) 12%,var(--surface));border-color:color-mix(in srgb,var(--accent) 35%,var(--border));color:var(--accent)}
@media(max-width:900px){
  .cat-model-list-head{display:none}
  .cat-model-row{grid-template-columns:1fr auto;grid-template-rows:auto auto auto;gap:4px 8px;padding:8px}
  .cat-model-row-main{grid-column:1/-1}
  .cat-model-row-stat,.cat-model-row-tags{display:none}
  .cat-model-row-actions{grid-column:2;grid-row:1;align-self:start}
}
.cat-card{display:flex;flex-direction:column;gap:8px;padding:12px;border:1px solid color-mix(in srgb,var(--border) 85%,transparent);border-radius:calc(var(--radius-md) + 2px);background:var(--surface);cursor:pointer;min-height:44px}
.cat-card:hover,.cat-card:focus-visible{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));outline:none;box-shadow:var(--focus-ring)}
.cat-card.is-pinned{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:color-mix(in srgb,var(--accent) 6%,var(--surface))}
.cat-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.cat-card-title{font-weight:600;font-size:var(--text-sm);line-height:1.25}
.cat-card-slug{font-size:var(--text-xs);color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cat-card-meta,.cat-card-tags{display:flex;flex-wrap:wrap;gap:4px}
.cat-card-badge{display:inline-flex;align-items:center;padding:2px 7px;border-radius:999px;font-size:10px;background:color-mix(in srgb,var(--surface-2) 70%,var(--surface));border:1px solid color-mix(in srgb,var(--border) 80%,transparent);color:var(--text-dim)}
.cat-card-prices{font-size:11px;color:var(--text-dim)}
.cat-card-foot{margin-top:auto;padding-top:4px}
.cat-cards-empty{text-align:center;color:var(--text-dim);padding:var(--space-4)}
.cat-compare-bar{position:sticky;bottom:0;z-index:4;display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 12px;margin-top:8px;border:1px solid color-mix(in srgb,var(--accent) 30%,var(--border));border-radius:var(--radius-md);background:color-mix(in srgb,var(--surface) 92%,var(--surface-2));box-shadow:0 -8px 24px rgba(0,0,0,.08)}
.cat-compare-slots{display:flex;flex-wrap:wrap;gap:6px;flex:1;min-width:0}
.cat-compare-slot{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:999px;border:1px solid var(--border);background:var(--surface);font-size:11px;max-width:100%}
.cat-compare-slot-empty{opacity:.45}
.cat-compare-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:10rem}
.cat-compare-panel-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}
.cat-compare-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:12px}
.cat-compare-card{padding:12px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface)}
.cat-compare-list{list-style:none;margin:10px 0;padding:0;display:grid;gap:6px}
.cat-compare-list li{display:flex;justify-content:space-between;gap:8px;font-size:12px;color:var(--text-dim)}
.cat-compare-list strong{color:var(--text);font-weight:600;text-align:right}
.cat-detail-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.cat-row{cursor:pointer}
.cat-row:hover{background:var(--surface-2)}
.cat-table .mono{font-size:var(--text-xs)}
.cat-name{max-width:12rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cat-slug-cell{max-width:16rem}
.copy-slug{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;padding:0;background:transparent;border:0;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-dim);transition:color var(--transition)}
.copy-slug:hover,.copy-slug:focus-visible{color:var(--accent);outline:none;text-decoration:underline;text-underline-offset:2px}
.copy-slug.is-copied{color:var(--success)}
.cat-mods{font-size:var(--text-xs);color:var(--text-dim);max-width:14rem;line-height:var(--lh-tight)}
.cat-tags{white-space:normal}
.cat-empty{text-align:center;color:var(--text-dim);padding:var(--space-4)!important}
.usage-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:10px;margin-bottom:12px}
.usage-head-meta{margin:0;font-size:var(--text-sm);color:var(--text-dim)}
.usage-head-meta strong{color:var(--text);font-weight:600}
.usage-periods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px}
.usage-stat{padding:12px 14px;border-radius:var(--radius-md);border:1px solid color-mix(in srgb,var(--border) 88%,transparent);background:color-mix(in srgb,var(--surface-2) 45%,var(--surface))}
.usage-stat-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);margin-bottom:6px}
.usage-stat-cost{font-size:1.15rem;font-weight:600;color:var(--text);line-height:1.1}
.usage-stat-sub{margin-top:6px;font-size:11px;color:var(--text-dim);line-height:1.35}
.usage-stat-sub .mono{font-size:10px}
.usage-or-panel{display:grid;gap:6px;padding:12px 14px;margin-bottom:12px;border-radius:var(--radius-md);border:1px solid color-mix(in srgb,var(--accent) 25%,var(--border));background:color-mix(in srgb,var(--accent) 6%,var(--surface))}
.usage-or-balance .usage-or-val{font-size:1.15rem;color:var(--text)}
.usage-or-subpanel{margin-top:8px;padding-top:8px;border-top:1px dashed var(--border)}
.usage-or-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:var(--text-sm)}
.usage-or-label{color:var(--text-dim);font-size:11px}
.usage-or-val{font-weight:600;font-variant-numeric:tabular-nums}
.usage-or-note{font-size:11px;color:var(--text-dim);margin:4px 0 0;line-height:1.4}
.usage-or-gap-plus{color:var(--warning)}
.usage-or-missing{font-size:11px;margin-bottom:8px}
.tag-free{background:color-mix(in srgb,#10b981 18%,var(--surface));color:#047857;border:1px solid color-mix(in srgb,#10b981 35%,transparent)}
.cat-row-free .cat-name{font-weight:600}
.cat-perf{font-weight:600;color:var(--accent)}
.da-skills-layout{display:flex;flex-direction:column;gap:var(--space-4);padding-bottom:var(--space-2)}
.da-skill-family{display:flex;flex-direction:column;gap:var(--space-2)}
.da-skill-family-title{margin:0;padding-top:var(--space-1);font-size:var(--text-xs);font-weight:var(--font-weight-medium);letter-spacing:.05em;text-transform:uppercase;color:var(--text-dim)}
.da-skill-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);align-items:stretch}
.da-skill-card{display:flex;flex-direction:column;min-width:0;height:100%;border:var(--border-width) solid var(--border);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--surface-2) 35%,var(--surface));box-shadow:none;transition:border-color var(--motion-fast,var(--transition)),background var(--motion-fast,var(--transition))}
.da-skill-card:hover{border-color:color-mix(in srgb,var(--accent) 22%,var(--border))}
.da-skill-card-rich{grid-column:1/-1}
.da-skill-card-expand-on.is-expanded{grid-column:1/-1}
.da-skill-card.is-on{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:color-mix(in srgb,var(--accent) 5%,var(--surface))}
.da-skill-card.is-expanded{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));background:color-mix(in srgb,var(--accent) 4%,var(--surface))}
.da-skill-card.is-on.is-expanded{border-color:color-mix(in srgb,var(--accent) 50%,var(--border))}
.da-skill-card-head{display:flex;align-items:center;gap:var(--space-2);padding:10px 12px;min-height:50px;flex-shrink:0}
.da-skill-card-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--accent) 10%,var(--surface));border:var(--border-width) solid color-mix(in srgb,var(--accent) 18%,var(--border));color:var(--accent);flex-shrink:0}
.da-skill-card-titles{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;cursor:pointer}
.da-skill-card-name{font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--text);line-height:var(--lh-tight,1.25)}
.da-skill-card-summary{font-size:var(--text-xs);color:var(--text-dim);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:normal;line-height:1.35;min-height:0}
.da-skill-card:not(.is-on) .da-skill-card-summary:empty{display:none}
.da-skill-card-hint-inline{display:none;font-size:var(--text-xs);line-height:1.35;color:var(--text-dim);white-space:normal;margin-top:2px}
.da-skill-card.is-expanded .da-skill-card-hint-inline{display:block}
.da-skill-expand{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-dim);cursor:pointer;transition:color var(--motion-fast,var(--transition)),background var(--motion-fast,var(--transition))}
.da-skill-expand:hover{color:var(--text);background:color-mix(in srgb,var(--surface-2) 85%,transparent)}
.da-skill-expand:focus-visible{outline:none;box-shadow:var(--focus-ring)}
.da-skill-chevron{display:block;width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin-top:-3px;transition:transform var(--motion-fast,var(--transition)),margin var(--motion-fast,var(--transition))}
.da-skill-card.is-expanded .da-skill-chevron{transform:rotate(-135deg);margin-top:3px}
.da-skill-card-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--motion-fast,var(--transition));flex:0 0 auto}
.da-skill-card.is-expanded .da-skill-card-body{grid-template-rows:1fr}
.da-skill-card-inner{overflow:hidden;min-height:0}
.da-skill-card.is-expanded .da-skill-card-inner{padding:0 12px 12px;border-top:var(--border-width) solid color-mix(in srgb,var(--border) 85%,transparent)}
.da-skill-fields-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px 10px;padding-top:8px}
.da-skill-fields-row-wrap{align-items:flex-start}
.da-skill-fields-row-options{align-items:center}
.da-skill-field-fit{display:flex;flex-direction:column;gap:4px;flex:0 0 auto;min-width:8.75rem;max-width:100%}
.da-skill-field-fit-sm{min-width:6.75rem}
.da-skill-field-fit-wide{min-width:10.5rem;flex:1 1 10.5rem;max-width:18rem}
.da-skill-field-model{display:flex;flex-direction:column;gap:4px;width:100%;min-width:0;padding-top:var(--space-2)}
.da-skill-field-switch{display:inline-flex;align-items:center;gap:var(--space-2);flex:0 0 auto;padding-top:1.25rem}
.da-skill-field-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding-top:8px}
.da-skill-field-actions-end{justify-content:flex-end;padding-top:4px}
.da-skill-badge{display:inline-flex;align-items:center;min-height:20px;padding:0 8px;border-radius:999px;border:var(--border-width) solid color-mix(in srgb,var(--border) 82%,transparent);background:color-mix(in srgb,var(--surface-2) 45%,var(--surface));font-size:9px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--text-dim);line-height:1.2;white-space:nowrap}
.da-skill-badge.is-accent{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));background:color-mix(in srgb,var(--accent) 10%,var(--surface));color:var(--accent)}
.da-skill-badge.is-muted{max-width:100%;overflow:hidden;text-overflow:ellipsis}
.da-skill-active-bar{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:8px 12px;align-items:start;padding:8px 10px;border:var(--border-width) solid color-mix(in srgb,var(--accent) 28%,var(--border));border-radius:var(--radius-sm);background:color-mix(in srgb,var(--accent) 5%,var(--surface))}
.da-skill-active-main{min-width:0;display:flex;flex-direction:column;gap:3px}
.da-skill-active-name{font-size:var(--text-sm);font-weight:600;line-height:1.25}
.da-skill-active-slug{font-size:9px;color:var(--text-dim);font-family:var(--font-mono,ui-monospace,monospace);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.da-skill-active-metrics{display:flex;flex-wrap:wrap;gap:4px;align-content:flex-start;justify-content:flex-end}
.da-skill-metric{display:inline-flex;max-width:100%}
.da-skill-metric-wide{flex:1 1 100%;justify-content:flex-end}
.da-skill-options-bar{display:grid;grid-template-columns:repeat(auto-fit,minmax(88px,1fr));gap:6px 8px;align-items:end;padding-top:6px}
.da-skill-pick-shell{display:flex;flex-direction:column;gap:6px;min-width:0}
.da-skill-pick-shell-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 10px;align-items:stretch}
.da-skill-pick-block{display:flex;flex-direction:column;gap:3px;min-width:0}
.da-skill-pick-head{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;min-height:22px}
.da-skill-pick-head-actions{justify-content:space-between}
.da-skill-pick-head-actions .btn{min-height:26px;padding:0 10px;font-size:11px;margin-left:auto;flex-shrink:0}
.da-skill-pick-hint{font-size:10px;color:var(--text-dim);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}
.da-skill-native-store{display:none!important;visibility:hidden!important;height:0!important;overflow:hidden!important;pointer-events:none!important}
.da-pick-list-wrap{max-height:min(176px,32vh);overflow:auto;border:var(--border-width) solid color-mix(in srgb,var(--border) 88%,transparent);border-radius:var(--radius-sm);background:var(--surface)}
.da-pick-list{display:flex;flex-direction:column;min-width:0}
.da-pick-list-head,.da-pick-row{display:grid;gap:4px 8px;align-items:center;padding:4px 8px;box-sizing:border-box}
.da-tts-model-list .da-pick-list-head,.da-tts-model-list .da-pick-row{grid-template-columns:minmax(0,1.6fr) minmax(42px,.45fr) minmax(68px,.65fr) 24px}
.da-video-model-list .da-pick-list-head,.da-video-model-list .da-pick-row{grid-template-columns:minmax(0,1.35fr) minmax(52px,.55fr) minmax(40px,.35fr) minmax(60px,.6fr) 24px}
.da-pick-list-head{position:sticky;top:0;z-index:1;font-size:8px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-dim);background:color-mix(in srgb,var(--surface) 92%,var(--surface-2));border-bottom:var(--border-width) solid color-mix(in srgb,var(--border) 85%,transparent);padding:3px 8px 5px}
.da-pick-row{min-height:34px;border-bottom:var(--border-width) solid color-mix(in srgb,var(--border) 55%,transparent);cursor:pointer;transition:background var(--motion-fast,var(--transition)),border-color var(--motion-fast,var(--transition))}
.da-pick-row:last-child{border-bottom:none}
.da-pick-row:hover{background:color-mix(in srgb,var(--accent) 4%,var(--surface))}
.da-pick-row:focus-visible{outline:none;box-shadow:inset var(--focus-ring)}
.da-pick-row-main{min-width:0;display:flex;flex-direction:column;gap:1px}
.da-pick-row-name{font-size:var(--text-sm);font-weight:600;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.da-pick-row-slug{font-size:9px;color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-mono,ui-monospace,monospace)}
.da-pick-row-val{font-size:10px;color:var(--text);line-height:1.2;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.da-pick-row-cost{color:var(--text-dim)}
.da-pick-row-score{font-weight:700;color:var(--accent)}
.da-pick-row-mark{display:flex;align-items:center;justify-content:center;min-width:24px}
.da-pick-row.is-selected,.da-image-pick-row.is-selected,.da-video-pick-row.is-selected{background:color-mix(in srgb,var(--accent) 10%,var(--surface));box-shadow:inset 2px 0 0 var(--accent)}
.da-pick-check{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;font-size:10px;font-weight:700;color:var(--accent-text,#fff);background:var(--accent);flex-shrink:0}
.da-voice-list{display:flex;flex-direction:column;gap:0;min-width:0}
.da-voice-group-label{padding:5px 8px 2px;font-size:8px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-dim);background:color-mix(in srgb,var(--surface-2) 40%,var(--surface));border-bottom:var(--border-width) solid color-mix(in srgb,var(--border) 60%,transparent)}
.da-pick-list-wrap .da-voice-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(48px,.45fr) auto;gap:6px;align-items:center;padding:4px 8px;min-height:32px;border:none;border-radius:0;border-bottom:var(--border-width) solid color-mix(in srgb,var(--border) 50%,transparent);background:transparent;cursor:pointer;transition:background var(--motion-fast,var(--transition))}
.da-pick-list-wrap .da-voice-row:last-child{border-bottom:none}
.da-pick-list-wrap .da-voice-row:hover{background:color-mix(in srgb,var(--accent) 4%,var(--surface))}
.da-pick-list-wrap .da-voice-row.is-selected{background:color-mix(in srgb,var(--accent) 10%,var(--surface));box-shadow:inset 2px 0 0 var(--accent)}
.da-voice-row-main{font-size:var(--text-sm);font-weight:600;line-height:1.2;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.da-voice-row-meta{font-size:10px;color:var(--text-dim);text-align:center}
.da-voice-preview-btn{min-height:26px;min-width:26px;padding:0;font-size:10px;flex-shrink:0;border-radius:var(--radius-sm)}
#da-tts-preview.is-loading{opacity:.65;pointer-events:none}
@media(max-width:820px){
  .da-skill-pick-shell-cols{grid-template-columns:1fr}
  .da-skill-active-bar{grid-template-columns:1fr}
  .da-skill-active-metrics{justify-content:flex-start}
  .da-video-model-list .da-pick-list-head,.da-video-model-list .da-pick-row{grid-template-columns:minmax(0,1fr) auto auto}
  .da-video-model-list .da-pick-row-val:nth-child(3),.da-video-model-list .da-pick-list-head span:nth-child(3){display:none}
  .da-tts-model-list .da-pick-list-head,.da-tts-model-list .da-pick-row{grid-template-columns:minmax(0,1fr) auto auto}
  .da-tts-model-list .da-pick-row-val,.da-tts-model-list .da-pick-list-head span:nth-child(n+2):nth-child(-n+3){display:none}
}
.da-skill-inline-hint{margin:0;font-size:var(--text-xs);line-height:1.35;color:var(--text-dim);flex:1;min-width:0}
.da-skill-chips{display:flex;flex-wrap:wrap;gap:6px}
.da-skill-chip{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border:var(--border-width) solid color-mix(in srgb,var(--border) 88%,transparent);border-radius:999px;background:var(--surface);color:var(--text-dim);font:inherit;font-size:var(--text-xs);cursor:pointer;transition:background var(--motion-fast,var(--transition)),border-color var(--motion-fast,var(--transition)),color var(--motion-fast,var(--transition)),box-shadow var(--motion-fast,var(--transition))}
.da-skill-chip:hover{color:var(--text);background:var(--surface-2)}
.da-skill-chip.on{background:color-mix(in srgb,var(--accent) 14%,var(--surface));border-color:color-mix(in srgb,var(--accent) 35%,var(--border));color:var(--accent);font-weight:var(--font-weight-medium)}
.da-skill-chip:focus-visible{outline:none;box-shadow:var(--focus-ring)}
.da-skill-prov-scroll{max-height:min(200px,36vh);overflow:auto;margin:var(--space-2) 0;border:var(--border-width) solid color-mix(in srgb,var(--border) 70%,transparent);border-radius:var(--radius-sm);padding:var(--space-1)}
#da-tab-skills .da-skill-field-fit .ui-select,#da-tab-skills .da-skill-field-fit select{width:100%;min-width:8.75rem;max-width:100%}
#da-tab-skills .da-skill-field-fit-sm .ui-select,#da-tab-skills .da-skill-field-fit-sm select{min-width:6.75rem}
#da-tab-skills .da-skill-field-model .ui-select{width:100%;max-width:100%}
#da-tab-skills .ui-select-fit{display:block;width:100%}
#da-tab-skills .ui-select-fit .ui-select-trigger{width:100%;min-width:0;margin:0}
#da-tab-skills .da-skill-pick-block select,
#da-tab-skills .da-skill-pick-block .ui-select{display:none!important}
#da-tab-skills .ui-select-opt{white-space:nowrap}
.ui-switch-sm .ui-switch-track{width:34px;height:18px}
.ui-switch-sm .ui-switch-thumb{width:14px;height:14px}
.ui-switch-sm .ui-switch-input:checked+.ui-switch-track .ui-switch-thumb{transform:translateX(16px)}
.da-save-status{margin-left:auto;font-size:var(--text-xs)}
.da-save-status.da-save-dirty{color:var(--warning,var(--accent))}
.da-tab-skills .sub:not(.da-skill-inline-hint){display:none}
#da-tab-skills .da-search-config,#da-tab-skills .da-media-config{padding:0}
.da-skill-card-hint{margin:0;padding:0 var(--space-3) var(--space-2);font-size:var(--text-xs);color:var(--text-dim)}
.da-skill-card-denied{opacity:.72}
.da-skill-card-denied .ui-switch{pointer-events:none;opacity:.45}
.da-skill-card-denied .da-skill-card-body{display:none!important}
.da-skill-info{display:inline-flex;align-items:center;gap:4px;font-size:var(--text-xs);color:var(--text-dim);line-height:1.4;margin:0}
.da-skill-info-ico{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;border:var(--border-width) solid color-mix(in srgb,var(--border) 80%,transparent);font-size:10px;font-weight:var(--font-weight-medium);color:var(--text-dim);flex-shrink:0}
.ui-switch{position:relative;display:inline-flex;align-items:center;flex-shrink:0;cursor:pointer}
.ui-switch-input{position:absolute;opacity:0;width:0;height:0;margin:0;padding:0;pointer-events:none}
.ui-switch-track{position:relative;display:block;width:40px;height:22px;border-radius:999px;background:color-mix(in srgb,var(--border) 55%,var(--surface-2));border:var(--border-width) solid color-mix(in srgb,var(--border) 90%,transparent);transition:background var(--motion-fast,var(--transition)),border-color var(--motion-fast,var(--transition)),box-shadow var(--motion-fast,var(--transition))}
.ui-switch-thumb{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:var(--surface);box-shadow:0 1px 2px color-mix(in srgb,var(--text) 12%,transparent);transition:transform var(--motion-fast,var(--transition)),background var(--motion-fast,var(--transition))}
.ui-switch-input:checked+.ui-switch-track{background:var(--accent);border-color:color-mix(in srgb,var(--accent) 80%,var(--border))}
.ui-switch-input:checked+.ui-switch-track .ui-switch-thumb{transform:translateX(18px);background:var(--accent-text,#fff)}
.ui-switch-input:focus-visible+.ui-switch-track{box-shadow:var(--focus-ring)}
.ui-switch-input:disabled+.ui-switch-track{opacity:.45;cursor:not-allowed}
.ui-switch-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(prefers-reduced-motion:reduce){.da-skill-card-body,.ui-switch-track,.ui-switch-thumb{transition:none}}
@media(max-width:768px){.da-skill-grid{grid-template-columns:1fr}.da-skill-card-compact,.da-skill-card-expand-on.is-expanded{grid-column:1/-1}.da-skill-field-fit,.da-skill-field-fit-sm,.da-skill-field-fit-wide{min-width:0;flex:1 1 100%}.da-skill-field-switch{padding-top:0}.da-skill-card-head{flex-wrap:wrap;align-items:flex-start;padding:var(--space-3)}.da-skill-card-titles{flex:1 1 calc(100% - 120px)}.da-search-prov-grid{grid-template-columns:1fr}}
.da-skill-pick-bar{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:6px 8px;background:color-mix(in srgb,var(--surface-2) 50%,var(--surface));border:var(--border-width) solid color-mix(in srgb,var(--border) 85%,transparent);border-radius:var(--radius-sm)}
.da-skill-pick-item{display:flex;flex-direction:column;gap:3px;min-width:8.5rem}
.da-skill-pick-lbl{font-size:.72rem;font-weight:600;color:var(--muted,#6b5f52);text-transform:uppercase;letter-spacing:.03em}
.da-skill-pick-filter{min-width:8.5rem;max-width:12rem}
.usage-table-wrap{margin-top:4px;border-radius:var(--radius-md);border:1px solid color-mix(in srgb,var(--border) 88%,transparent);overflow:hidden}
.usage-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}
.usage-table th,.usage-table td{padding:9px 12px;text-align:left;border-bottom:1px solid color-mix(in srgb,var(--border) 75%,transparent)}
.usage-table th{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);background:color-mix(in srgb,var(--surface-2) 80%,var(--surface));font-weight:600}
.usage-table tbody tr:last-child td{border-bottom:0}
.usage-table tbody tr:hover{background:var(--surface-2)}
.usage-table .mono{font-family:var(--font-mono);font-size:var(--text-xs)}
.usage-table .num{text-align:right;font-variant-numeric:tabular-nums}
.usage-pager{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin-top:12px}
.usage-pager-meta{font-size:var(--text-xs);color:var(--text-dim)}
.usage-pager-btns{display:flex;gap:6px}
.usage-pager-btns .btn{min-height:32px;padding:0 12px}
@media(max-width:768px){
  .cat-toolbar-main{display:grid;grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"search search search" "sort filters refresh"}
  .cat-search{grid-area:search;width:100%;min-height:44px}
  .cat-sort{grid-area:sort;min-width:0;flex:1;min-height:44px}
  .cat-filters-toggle{grid-area:filters;min-height:44px}
  #cat-refresh{grid-area:refresh;min-height:44px}
  .cat-presets{gap:8px}
  .cat-preset-chip{min-height:40px;padding:8px 12px;font-size:12px}
  .cat-filters-panel{grid-template-columns:1fr}
  .cat-toolbar-meta{flex-direction:column;align-items:stretch}
  .cat-compare-bar{position:fixed;left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));margin:0}
  #agent-pane-catalogue.agent-pane{padding-bottom:88px}
}
.slug-field{display:flex;gap:var(--gap-xs);align-items:center}
.slug-field .input{flex:1}
.page-assistant{padding:0;gap:0;overflow:hidden}
.agent-side{width:var(--conv-panel-w);min-width:var(--conv-panel-w);max-width:var(--conv-panel-w);flex-shrink:0;border-right:var(--border-width) solid var(--border);padding:0;display:flex;flex-direction:column;gap:0;background:var(--surface);min-height:0;overflow:hidden;position:relative}
.agent-side-head{flex-shrink:0;height:var(--shell-header-h);min-height:var(--shell-header-h);display:flex;align-items:center;padding:0 var(--panel-pad);border-bottom:var(--border-width) solid var(--border);box-sizing:border-box}
.dialogue-conversation .agent-side-head{flex-direction:column;align-items:stretch;gap:var(--space-2);height:auto;min-height:var(--shell-header-h);padding:var(--space-2) var(--panel-pad)}
.dialogue-conversation .agent-side-head .btn{width:100%;min-width:0}
.dd-back-btn{width:100%;min-height:40px;justify-content:flex-start;flex-shrink:0}
.dd-back-btn--mobile{width:auto;min-width:0;min-height:40px;padding:0 var(--space-3);flex-shrink:0}
.chat-mobile-bar .dd-back-btn--mobile{margin-right:auto}
.agent-side-head .btn{width:100%;min-width:0}
.agent-side-foot{flex-shrink:0;margin-top:auto;padding:var(--space-2) var(--panel-pad);border-top:var(--border-width) solid var(--border)}
.asst-settings-toggle{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border:var(--border-width) solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--text-dim);font:inherit;font-size:var(--text-sm);cursor:pointer;text-align:left;transition:background var(--transition),color var(--transition),border-color var(--transition)}
.asst-settings-toggle:hover,.asst-settings-toggle.is-open{color:var(--text);background:var(--surface-2);border-color:color-mix(in srgb,var(--border) 80%,transparent)}
.asst-settings-toggle-label{flex:1;min-width:0}
.asst-settings-chevron{width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);transition:transform var(--transition);flex-shrink:0;opacity:.7;margin-right:2px}
.asst-settings-toggle.is-open .asst-settings-chevron{transform:rotate(-135deg);margin-top:2px}
.asst-settings-quick{margin-top:6px;padding:10px;border:var(--border-width) solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--surface-2) 45%,var(--surface));display:flex;flex-direction:column;gap:8px}
.asst-settings-preview{margin:0;font-size:11px;line-height:1.45;color:var(--text-dim);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.asst-settings-quick-meta{font-size:10px;color:var(--text-dim);opacity:.85}
.asst-settings-open{width:100%;justify-content:center}
.asst-settings-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.asst-settings-head h1{margin:0}
.asst-settings-back{flex-shrink:0}
.disc-list{flex:1;overflow-y:auto;min-height:0;margin:0;padding:var(--panel-pad);display:flex;flex-direction:column;gap:var(--space-2);-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
.disc,.fitem{padding:var(--space-2) var(--space-2);border-radius:var(--radius-sm);cursor:pointer;display:flex;align-items:center;gap:var(--space-1);font-size:var(--text-sm);transition:background var(--motion-fast,var(--transition)),border-color var(--motion-fast,var(--transition)),box-shadow var(--motion-fast,var(--transition));min-width:0;border:var(--border-width) solid transparent;background:transparent}
.disc-title,.fitem-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:var(--lh-tight);font-weight:var(--font-weight-medium);color:var(--text)}
.disc .copy-slug{display:block;margin-top:2px;max-width:100%;font-weight:var(--font-weight-normal);color:var(--text-dim)}
.disc:hover,.fitem:hover{background:color-mix(in srgb,var(--surface-2) 88%,transparent);border-color:var(--border-subtle,var(--border))}
.disc.active{background:color-mix(in srgb,var(--accent) 10%,var(--surface));color:var(--text);border-color:color-mix(in srgb,var(--accent) 22%,var(--border))}
.disc.active .disc-title{color:var(--accent)}
.disc.has-unread .disc-title{font-weight:var(--font-weight-semibold,600)}
.disc-badge{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;min-width:1.1rem;height:1.1rem;padding:0 .3rem;border-radius:999px;font-size:10px;font-weight:600;line-height:1;color:var(--surface);background:var(--accent);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 40%,transparent)}
.disc-badge--run{width:.55rem;min-width:.55rem;height:.55rem;padding:0;border-radius:50%;background:var(--accent);box-shadow:none;animation:disc-badge-pulse 1.5s ease-in-out infinite}
.disc.active .disc-badge--done{display:none}
@keyframes disc-badge-pulse{0%,100%{opacity:.45;transform:scale(.92)}50%{opacity:1;transform:scale(1)}}
.disc-del,.disc-edit,.disc-info,.crm-icon-btn,.fitem .del,.om-card-del{display:inline-flex;align-items:center;justify-content:center;width:var(--icon-btn-size,36px);height:var(--icon-btn-size,36px);min-width:var(--icon-btn-size,36px);padding:0;margin:0;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text-dim);cursor:pointer;font-family:inherit;line-height:1;flex-shrink:0;transition:color var(--motion-fast,var(--transition)),background var(--motion-fast,var(--transition)),opacity var(--motion-fast,var(--transition)),box-shadow var(--motion-fast,var(--transition))}
.disc-del svg,.disc-edit .nav-ico svg,.disc-info .nav-ico svg{display:block;pointer-events:none}
.disc-edit .nav-ico,.disc-info .nav-ico,.disc-edit .nav-ico svg,.disc-info .nav-ico svg{width:16px;height:16px}
.disc-edit,.disc-info{opacity:0}
.disc:hover .disc-edit,.disc.active .disc-edit,.disc-edit:hover,.disc-edit:focus-visible,.disc-info:hover,.disc-info:focus-visible,.disc-info[aria-expanded=true],.disc:hover .disc-info,.disc.active .disc-info{opacity:1}
.disc-del:hover:not(:disabled),.disc-del:focus-visible,.fitem .del:hover,.fitem .del:focus-visible,.crm-icon-btn.crm-del:hover,.crm-icon-btn.crm-del:focus-visible,.om-card-del:hover,.om-card-del:focus-visible{color:var(--danger);background:var(--danger-soft);outline:none;box-shadow:var(--focus-ring)}
.disc-edit:hover:not(:disabled),.disc-edit:focus-visible,.disc-info:hover:not(:disabled),.disc-info:focus-visible,.disc-info[aria-expanded=true],.crm-icon-btn:hover:not(:disabled),.crm-icon-btn:focus-visible{color:var(--text);background:color-mix(in srgb,var(--surface-2) 88%,transparent);outline:none;box-shadow:var(--focus-ring)}
.disc-info:hover:not(:disabled),.disc-info:focus-visible,.disc-info[aria-expanded=true]{color:var(--accent)}
.disc-agent-pop{position:fixed;z-index:var(--z-popover,220);width:min(280px,calc(100vw - 1.5rem));padding:var(--space-3);background:var(--surface);border:var(--border-width) solid color-mix(in srgb,var(--border) 88%,transparent);border-radius:var(--radius);box-shadow:var(--shadow-elev-3,var(--shadow-modal))}
.disc-agent-pop.hidden{display:none!important}
.agent-info-title{font-family:var(--font-display);font-weight:var(--font-weight-medium);margin-bottom:var(--gap-xs);font-size:var(--text-sm)}
.agent-info-head{display:flex;align-items:center;gap:10px;margin-bottom:var(--gap-sm)}
.agent-info-head .agent-info-title{margin:0;flex:1;min-width:0}
.agent-info-meta{font-size:var(--text-xs);color:var(--text-dim);margin-top:var(--gap-xs);word-break:break-word}
.agent-info-section{font-size:var(--text-xs);font-weight:var(--font-weight-medium);margin-top:var(--space-3);margin-bottom:var(--gap-xs);color:var(--text-dim)}
.agent-info-tools{margin:0;padding-left:1.1em;font-size:var(--text-xs);color:var(--text-dim);line-height:var(--lh-loose)}
.agent-info-empty{margin:0;font-size:var(--text-xs);color:var(--text-dim)}
.agent-info-slug{display:block;margin-top:2px;max-width:100%}
.fitem .del{flex:none;opacity:0;font-size:var(--text-xs)}
.disc:hover .fitem .del,.fitem:hover .del,.fitem .del:focus-visible{opacity:1}
.bo-list-item:focus-visible,.db-table-item:focus-visible,.fitem:focus-visible,.disc:focus-visible,.fbreadcrumb .crumb:focus-visible{outline:none;box-shadow:var(--focus-ring)}
.att .del{min-width:var(--control-h);min-height:var(--control-h);display:inline-flex;align-items:center;justify-content:center;border:0;background:transparent;cursor:pointer;font-family:inherit;border-radius:var(--radius-sm)}
.agent-main{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--bg)}
.modal-body .field-label{margin-top:var(--gap-sm)}
.modal-body .field-label:first-child{margin-top:0}
.modal-body .modal-input{width:100%;margin-top:var(--gap-xs)}
.chat-stage{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;position:relative}
.chat-stage-inner{flex:1;min-height:0;min-width:0;width:100%;max-width:var(--chat-read-w);margin-inline:auto;padding-inline:var(--chat-inset);display:flex;flex-direction:column;box-sizing:border-box}
.chat-log{flex:1;overflow-y:auto;overflow-x:hidden;min-height:0;width:100%;box-sizing:border-box;scrollbar-gutter:stable;padding-block:var(--panel-pad);padding-inline:var(--space-2);display:flex;flex-direction:column;scroll-behavior:auto}
.chat-log:empty{display:none}
.chat-log .empty-state{margin:auto}
.chat-input,.chat-bar textarea{flex:1;min-width:0;min-height:var(--control-h);max-height:var(--chat-textarea-max-h);padding:var(--gap-sm);border-radius:var(--radius-sm);border:var(--border-width) solid var(--border);background:var(--surface);color:var(--text);resize:none;margin:0;font-family:inherit;font-size:var(--text-body);line-height:var(--lh-body)}
.chat-input:focus-visible,.chat-bar textarea:focus-visible{outline:none;box-shadow:var(--focus-ring);border-color:var(--accent)}
.msg{margin:var(--gap-sm) 0;min-width:0}
.msg.user{text-align:right}
.msg .b{display:inline-block;padding:var(--gap-sm) var(--pad);border-radius:var(--radius);max-width:min(85%,100%);text-align:left;word-break:break-word;overflow-wrap:anywhere;font-size:var(--text-body);line-height:var(--lh-loose);box-sizing:border-box}
.user .b{background:var(--accent-soft);color:var(--text)}.assistant .b{background:var(--surface-2)}
.chat-body .chat-p{margin:0 0 .55em}.chat-body .chat-p:last-child{margin-bottom:0}
.chat-body .chat-h,.chat-body .chat-h1,.chat-body .chat-h2,.chat-body .chat-h3{font-family:var(--font-display);font-weight:var(--font-weight-medium);font-size:var(--text-sm);color:var(--text);margin:.7em 0 .35em;line-height:var(--lh-tight);letter-spacing:.01em;border-left:2px solid var(--accent);padding-left:.55em}
.chat-body .chat-h:first-child,.chat-body .chat-h1:first-child,.chat-body .chat-h2:first-child,.chat-body .chat-h3:first-child{margin-top:0}
.chat-body .chat-h1{font-size:var(--text-md)}.chat-body .chat-h2{font-size:calc(var(--text-sm) + 1px)}.chat-body .chat-h3{font-size:var(--text-sm)}
.chat-body .chat-ul,.chat-body .chat-ol{margin:.35em 0 .6em;padding-left:1.35em;display:block;list-style-position:outside}
.chat-body .chat-ul li,.chat-body .chat-ol li{margin:.28em 0;padding-left:.1em;display:list-item}
.chat-body .chat-ul{list-style:disc}.chat-body .chat-ol{list-style:decimal}
.chat-body .chat-ul li::marker{color:var(--accent)}
.chat-body strong{font-weight:var(--font-weight-medium);color:var(--text)}
.chat-body em{font-style:italic;color:var(--text-dim)}
.chat-body .chat-code{font-family:var(--font-mono);font-size:.9em;background:color-mix(in srgb,var(--surface) 70%,var(--border));padding:.08em .35em;border-radius:3px}
.chat-tts-bar{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-2);padding-top:var(--space-1);flex-wrap:wrap}
.chat-tts-play{min-width:2rem;padding:2px 8px;font-size:var(--text-sm)}
.chat-tts-play.is-loading{opacity:.6;pointer-events:none}
.chat-tts-save{font-size:var(--text-xs)}
.chat-tts-ai-label{font-size:var(--text-caption);color:var(--text-dim)}
.chat-video-job{margin-top:var(--space-2);padding:var(--space-2);border:var(--border-width) solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);max-width:min(100%,420px)}
.chat-video-status{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-dim)}
.chat-video-spinner{width:1rem;height:1rem;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:chatVideoSpin .8s linear infinite}
@keyframes chatVideoSpin{to{transform:rotate(360deg)}}
.chat-video-player video{width:100%;max-height:280px;border-radius:var(--radius-sm);background:var(--media-bg,#000)}
.chat-video-actions{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap}
.chat-video-ai-label{font-size:var(--text-caption);color:var(--text-dim)}
.chat-video-saved{font-size:var(--text-xs);color:var(--accent);font-weight:600}
.chat-video-file video{max-width:min(100%,420px);max-height:280px;border-radius:var(--radius-sm);background:var(--media-bg,#000)}
.chat-conv-opts{display:flex;flex-direction:column;gap:0;margin-bottom:var(--space-2);padding:0;border-radius:var(--radius-md);border:1px solid color-mix(in srgb,var(--border) 78%,transparent);background:color-mix(in srgb,var(--surface-2) 38%,var(--surface));overflow:hidden}
.chat-conv-opts.hidden{display:none!important}
.chat-conv-opts-toggle{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:8px 12px;border:0;background:transparent;color:inherit;font:inherit;font-size:var(--text-sm);cursor:pointer;text-align:left}
.chat-conv-opts-toggle:hover{background:color-mix(in srgb,var(--surface-2) 55%,transparent)}
.chat-conv-opts-chevron{width:7px;height:7px;border-right:1.5px solid var(--text-dim);border-bottom:1.5px solid var(--text-dim);transform:rotate(-45deg);transition:transform .15s;flex-shrink:0}
.chat-conv-opts:not(.is-collapsed) .chat-conv-opts-chevron{transform:rotate(45deg);margin-top:-2px}
.chat-conv-opts-label{font-weight:600;font-size:var(--text-xs);color:var(--text-dim)}
.chat-conv-opts-summary{margin-left:auto;font-size:var(--text-xs);color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:min(58vw,22rem)}
.chat-conv-opts:not(.is-collapsed) .chat-conv-opts-summary{display:none}
.chat-conv-opts.is-collapsed .chat-conv-opts-body{display:none}
.chat-conv-opts-body{display:flex;flex-direction:column;gap:8px;padding:0 12px 10px}
.chat-vocal-wrap{margin:0;padding:0}
.chat-vocal-wrap.hidden{display:none!important}
.chat-vocal-row{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;min-width:0}
.chat-vocal-title{font-size:var(--text-xs);color:var(--text-dim);font-weight:600;flex:0 0 auto;min-width:4.5rem;line-height:1.2}
.chat-out-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;flex:1;min-width:0}
.chat-out-card{display:flex;align-items:center;justify-content:center;min-height:2rem;padding:6px 8px;margin:0;border:var(--border-width) solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-dim);font:inherit;font-size:var(--text-xs);font-weight:600;line-height:1.2;text-align:center;cursor:pointer;transition:background .15s,color .15s,border-color .15s,box-shadow .15s}
.chat-out-card:hover:not(.is-on){color:var(--text);background:color-mix(in srgb,var(--surface-2) 88%,transparent);border-color:color-mix(in srgb,var(--border) 95%,var(--text-dim))}
.chat-out-card.is-on,.chat-out-card[aria-pressed=true]{color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--surface));border-color:color-mix(in srgb,var(--accent) 45%,var(--border));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 18%,transparent)}
.chat-out-card:focus-visible{outline:none;box-shadow:var(--focus-ring)}
.chat-out-card-lbl{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
@media(max-width:520px){.chat-vocal-row{align-items:stretch}.chat-vocal-title{align-self:center}.chat-out-cards{width:100%}}
.chat-gen-wrap{margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-1)}
.chat-gen-wrap.hidden{display:none!important}
.chat-screen-share-bar{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-2);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--text-sm)}
.chat-screen-share-bar.hidden{display:none!important}
.chat-screen-share-dot{width:8px;height:8px;border-radius:50%;background:var(--danger);flex-shrink:0;animation:chat-share-pulse 1.2s ease-in-out infinite}
@keyframes chat-share-pulse{0%,100%{opacity:1}50%{opacity:.45}}
.chat-screen-share-label{font-weight:var(--font-weight-medium);margin-right:auto}
.chat-screen-save-lbl{font-size:var(--text-sm)}
.da-webcap-modes,.da-webcap-config{display:flex;flex-direction:column;gap:var(--space-2);margin:var(--space-2) 0}
.da-webcap-modes .chk-inline{margin-right:var(--space-3)}
.bo-ops-status{margin-bottom:var(--space-4)}
.bo-ops-lead{margin:0 0 var(--space-3);color:var(--text-muted);font-size:var(--text-sm)}
.bo-ops-status-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:var(--space-3);margin-top:var(--space-2)}
.bo-ops-stat{display:flex;flex-direction:column;gap:2px;padding:var(--space-2);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm)}
.bo-ops-stat-k{font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}
.bo-ops-stat-v{font-weight:var(--font-weight-medium);font-size:var(--text-sm)}
.bo-storage-cell{min-width:9rem;display:flex;flex-direction:column;gap:4px}
.bo-storage-line{font-size:var(--text-sm);white-space:nowrap}
.bo-storage-bar{height:6px;border-radius:999px;background:color-mix(in srgb,var(--border) 70%,transparent);overflow:hidden}
.bo-storage-bar-lg{height:10px;margin:8px 0 4px}
.bo-storage-fill{height:100%;background:var(--accent);border-radius:999px;transition:width .2s ease}
.bo-storage-fill.warn{background:var(--danger)}
.bo-storage-panel{margin:10px 0;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius-md);background:color-mix(in srgb,var(--surface) 94%,var(--accent) 6%)}
.bo-storage-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px 14px;margin-bottom:8px}
.bo-storage-stat .field-label{margin-bottom:2px}
.bo-storage-path-wrap{margin-top:10px}
.bo-storage-path{display:block;padding:8px 10px;border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--border);font-size:11px;word-break:break-all}
.bo-storage-path-sm{display:inline-block;padding:2px 6px;border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--border);font-size:10px;word-break:break-all}
.bo-storage-usage-strip{margin-bottom:10px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface)}
.bo-storage-usage-row{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:flex-start}
.bo-storage-measures{flex:0 1 auto;min-width:min(100%,220px)}
.bo-storage-detail{flex:1 1 240px;min-width:0}
.bo-storage-grid-compact{grid-template-columns:repeat(3,minmax(80px,1fr));gap:8px}
.bo-storage-stat-v{font-weight:var(--font-weight-medium);font-size:var(--text-sm)}
.bo-storage-path-inline{margin:0 0 4px;font-size:var(--text-xs)}
.bo-storage-path-list{margin:0;padding:0;list-style:none;font-size:10px;line-height:1.5}
.bo-storage-path-list li{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;margin-bottom:2px}
.bo-storage-path-user{font-weight:var(--font-weight-medium);font-size:11px;min-width:4rem}
.bo-storage-member{margin-top:8px;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2)}
.bo-storage-member-row{padding:6px 8px;background:transparent;border:none;border-bottom:1px solid var(--border);border-radius:0;margin-top:4px;display:flex;flex-wrap:wrap;gap:8px 12px;align-items:flex-start}
.bo-storage-member-label{font-weight:var(--font-weight-medium);font-size:var(--text-sm);min-width:5rem;padding-top:4px}
.bo-storage-member-row .bo-storage-usage-strip{flex:1;min-width:0;margin:0;padding:0;border:none;background:transparent}
.bo-storage-member-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:6px}
.bo-storage-tree{margin:4px 0 0;padding-left:14px;list-style:none;font-size:11px;line-height:1.45;color:var(--text-muted)}
.bo-storage-tree-sub{margin:2px 0 0;padding-left:12px;border-left:1px dashed color-mix(in srgb,var(--border) 80%,transparent)}
.bo-tree-dir{color:var(--text);font-family:var(--font-mono,monospace)}
.bo-tree-file{font-family:var(--font-mono,monospace)}
.bo-tree-more{padding-left:4px}
.bo-storage-tree-wrap{margin-top:4px;max-height:min(220px,40vh);overflow:auto;padding:6px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2)}
.bo-storage-tree-wrap-inline{max-height:min(180px,35vh)}
.bo-ops-section-head{margin:var(--space-5) 0 var(--space-3)}
.bo-ops-section-head h2{font-size:var(--text-h3);margin:0}
.bo-ops-block{margin-bottom:var(--space-3)}
.bo-ops-block-head{margin-bottom:var(--space-2)}
.bo-ops-block-head h3{margin:0 0 var(--space-1);font-size:var(--text-base)}
.bo-ops-filelist{margin:var(--space-2) 0;padding-left:1.2rem;max-height:160px;overflow:auto}
.bo-ops-cmd{margin-top:var(--space-2)}
.bo-ops-cmd-head{margin-bottom:var(--space-2)}
.bo-ops-pre{margin:0;padding:var(--space-3);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);overflow:auto;font-size:var(--text-xs);white-space:pre-wrap;word-break:break-all}
.bo-ops-cmd-actions{margin-top:var(--space-2)}
.bo-ops-foot{margin-top:var(--space-4);color:var(--text-muted)}
.bo-ops-tabs{margin-bottom:var(--space-4);flex-wrap:wrap;gap:var(--space-2);align-items:center}
.bo-ops-tabs .bo-ops-refresh{margin-left:auto}
.bo-ops-subtabs{margin-bottom:var(--space-4);flex-wrap:wrap;gap:var(--space-2)}
.bo-ops-subtabs .seg-btn{font-size:var(--text-sm)}
.bo-ops-subtabs-nested{margin-top:calc(-1 * var(--space-2));margin-bottom:var(--space-3);opacity:.95}
.bo-ops-subtabs-nested .seg-btn{font-size:var(--text-xs)}
.bo-ops-pwa-kpi{margin-top:var(--space-3)}
.bo-ops-pwa-icons{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:var(--space-3);margin-top:var(--space-3)}
.bo-ops-pwa-icon{display:flex;flex-direction:column;align-items:center;gap:4px;padding:var(--space-2);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);text-align:center}
.bo-ops-pwa-icon img{border-radius:var(--radius-sm);object-fit:contain;background:var(--surface-2)}
.bo-ops-pwa-icon-label{font-size:var(--text-xs);font-weight:var(--font-weight-medium)}
#bo-rel-panel{margin-top:0}
#bo-ops-root{display:flex;flex-direction:column;flex:0 1 auto;min-height:auto;min-width:0}
.bo-ops-panel{min-height:120px;display:flex;flex-direction:column;gap:0}
.bo-ops-scroll-end{flex-shrink:0;height:max(56px,var(--space-6),env(safe-area-inset-bottom,0px));pointer-events:none}
.page-backoffice:has(#page-bo-ops:not(.hidden)){padding-bottom:max(56px,calc(var(--page-pad)*2),env(safe-area-inset-bottom,0px))}
#page-bo-ops.bo-page{flex:0 0 auto;min-height:auto}
.bo-ops-stat.ok .bo-ops-stat-v{color:var(--ok)}
.bo-ops-stat.bad .bo-ops-stat-v{color:var(--danger)}
.bo-arch-flow{display:flex;flex-direction:column;gap:var(--space-3);margin-bottom:var(--space-4)}
.bo-arch-layer{border-left:3px solid var(--layer-color,var(--accent));padding-left:var(--space-3)}
.bo-arch-layer-title{font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--layer-color,var(--accent));margin-bottom:var(--space-2);text-transform:uppercase;letter-spacing:.04em}
.bo-arch-layer-nodes{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:var(--space-2)}
.bo-arch-node{padding:var(--space-2) var(--space-3);display:flex;flex-direction:column;gap:4px;font-size:var(--text-sm)}
.bo-arch-node-label{font-weight:var(--font-weight-medium)}
.bo-arch-path{font-size:var(--text-xs);word-break:break-all;color:var(--text-muted)}
.bo-arch-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:var(--space-2);margin-bottom:var(--space-3)}
.bo-arch-connections{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4)}
.bo-arch-conn{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--text-sm)}
.bo-arch-conn-from,.bo-arch-conn-to{font-weight:var(--font-weight-medium)}
.bo-arch-conn-arrow{color:var(--text-muted)}
.bo-arch-conn-label{color:var(--text-muted);font-size:var(--text-xs)}
.bo-arch-kpi-grid{margin-bottom:var(--space-4)}
.bo-arch-disks{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4)}
.bo-arch-disk{padding:var(--space-2) var(--space-3);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm)}
.bo-arch-disk.missing{color:var(--text-muted);font-size:var(--text-sm)}
.bo-arch-disk-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-2);font-size:var(--text-sm);margin-bottom:var(--space-1)}
.bo-arch-disk-bar{height:6px;background:var(--surface-2);border-radius:3px;overflow:hidden}
.bo-arch-disk-bar span{display:block;height:100%;background:var(--accent);border-radius:3px}
.bo-arch-db{margin-bottom:var(--space-4)}
.bo-arch-env{display:flex;flex-wrap:wrap;gap:var(--space-1);margin:var(--space-2) 0 var(--space-4)}
.bo-arch-paths{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4)}
.bo-arch-path-row{padding:var(--space-2) var(--space-3)}
.bo-arch-path-main{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-bottom:4px}
.bo-arch-path-code{font-size:var(--text-sm);word-break:break-all}
.bo-arch-path-meta{font-size:var(--text-xs);color:var(--text-muted)}
.bo-arch-modules{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4)}
.bo-arch-module summary{cursor:pointer;font-size:var(--text-sm)}
.bo-arch-module-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--space-2);margin-top:var(--space-2);font-size:var(--text-xs)}
.bo-arch-module-grid code{display:block;margin-top:2px;word-break:break-all}
.bo-arch-flow-compact{margin-top:var(--space-4);margin-bottom:var(--space-2)}
.bo-arch-flow-compact>summary{cursor:pointer;font-size:var(--text-sm);padding:var(--space-2) var(--space-3)}
.bo-arch-flow-mini .bo-arch-layer{margin-bottom:var(--space-2)}
.bo-arch-layer-mini{border-left-width:2px;padding-left:var(--space-2)}
.bo-arch-layer-mini .bo-arch-layer-title{font-size:var(--text-xs);margin-bottom:var(--space-1)}
.bo-arch-layer-mini .bo-arch-layer-nodes{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:var(--space-1)}
.bo-arch-node-mini{padding:var(--space-1) var(--space-2);font-size:var(--text-xs);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm)}
.bo-arch-conn-wrap{margin-top:var(--space-2)}
.bo-arch-conn-wrap>summary{cursor:pointer;font-size:var(--text-xs);padding:var(--space-1) 0}
.bo-arch-connections-mini{gap:var(--space-1)}
.bo-arch-conn-mini{padding:var(--space-1) var(--space-2);font-size:var(--text-xs)}
.bo-arch-inv-hero{margin-bottom:var(--space-4)}
.bo-arch-inv-hero h2{margin:0 0 var(--space-1);font-size:var(--text-h3)}
.bo-arch-inv-kpi{margin-top:var(--space-3)}
.bo-arch-inv-notes{margin:var(--space-3) 0 0;padding-left:1.2rem;font-size:var(--text-sm);color:var(--text-muted)}
.bo-arch-inv-notes li{margin-bottom:4px}
.bo-arch-inv-stack{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4)}
.bo-arch-inv-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2);margin-bottom:var(--space-4);align-items:start}
@media(max-width:1200px){.bo-arch-inv-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.bo-arch-inv-grid{grid-template-columns:1fr}}
.bo-arch-inv-group{padding:0;overflow:hidden;min-width:0;display:flex;flex-direction:column}
.bo-arch-bundles-wrap{margin-bottom:var(--space-4)}
.bo-arch-bundles-head{margin-bottom:var(--space-3)}
.bo-arch-bundles-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3);align-items:stretch}
@media(max-width:1200px){.bo-arch-bundles-grid{grid-template-columns:1fr}}
.bo-arch-bundle-card{display:flex;flex-direction:column;min-height:100%;padding:var(--space-3);gap:var(--space-2);border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border));background:var(--surface)}
.bo-arch-bundle-card-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}
.bo-arch-bundle-title{margin:0;font-size:var(--text-base);font-weight:var(--font-weight-medium);line-height:1.25}
.bo-arch-bundle-badge{font-size:10px;font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.06em;padding:2px 8px;border-radius:999px;background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border))}
.bo-arch-bundle-sub{margin:0;font-size:var(--text-xs);color:var(--text-muted);line-height:1.45;min-height:2.6em}
.bo-arch-bundle-chips{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px;flex:1 1 auto;font-size:var(--text-xs)}
.bo-arch-bundle-chips li{display:flex;justify-content:space-between;gap:var(--space-2);padding:4px 0;border-bottom:1px solid color-mix(in srgb,var(--border) 55%,transparent)}
.bo-arch-bundle-chips li em{font-style:normal;font-variant-numeric:tabular-nums;color:var(--text-muted);white-space:nowrap}
.bo-arch-bundle-more-line{justify-content:center;color:var(--text-muted);border-bottom:none!important}
.bo-arch-bundle-metrics{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2);margin-top:auto}
.bo-arch-bundle-metric{padding:var(--space-2);border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--border);display:flex;flex-direction:column;gap:2px}
.bo-arch-bundle-metric .k{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}
.bo-arch-bundle-metric .v{font-size:var(--text-sm);font-weight:var(--font-weight-medium);font-variant-numeric:tabular-nums}
.bo-arch-bundle-dl{display:flex;align-items:center;justify-content:center;gap:var(--space-2);width:100%;margin-top:var(--space-1);padding:var(--space-2) var(--space-3);text-decoration:none!important;border-radius:var(--radius-sm);font-weight:var(--font-weight-medium);font-size:var(--text-sm);line-height:1.2}
.bo-arch-bundle-dl:hover,.bo-arch-bundle-dl:focus{text-decoration:none!important;filter:brightness(1.05)}
.bo-arch-dl-icon{font-size:1.1em;line-height:1;opacity:.95}
.bo-arch-dl-text{flex:1;text-align:left}
.bo-arch-dl-size{font-size:var(--text-xs);opacity:.9;font-variant-numeric:tabular-nums;white-space:nowrap}
.bo-arch-bundle-detail{margin-top:var(--space-1);border-top:1px solid var(--border);padding-top:var(--space-2)}
.bo-arch-bundle-detail summary{cursor:pointer;font-size:var(--text-xs);color:var(--text-muted);list-style:none}
.bo-arch-bundle-detail summary::-webkit-details-marker{display:none}
.bo-arch-bundle-parts{margin:var(--space-2) 0 0;padding:0;list-style:none;font-size:var(--text-xs)}
.bo-arch-bundle-parts li{display:flex;justify-content:space-between;gap:var(--space-2);padding:var(--space-1) 0;border-bottom:1px solid color-mix(in srgb,var(--border) 60%,transparent)}
.bo-arch-bundle-parts li:last-child{border-bottom:none}
.bo-arch-bundle-part-name{flex:1;min-width:0}
.bo-arch-detail-section{margin-bottom:var(--space-4);padding:0;overflow:hidden}
.bo-arch-detail-summary{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-2);padding:var(--space-3);cursor:pointer;list-style:none}
.bo-arch-detail-summary::-webkit-details-marker{display:none}
.bo-arch-detail-title{font-size:var(--text-h3);font-weight:var(--font-weight-medium);margin:0}
.bo-arch-detail-inner{padding:0 var(--space-3) var(--space-3);border-top:1px solid var(--border)}
.bo-arch-zip-btn{text-decoration:none!important;display:inline-flex;align-items:center;gap:4px;white-space:nowrap;flex-shrink:0;font-size:var(--text-xs);padding:2px var(--space-2)}
.bo-arch-zip-btn:hover{text-decoration:none!important}
.bo-arch-inv-head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);width:100%}
.bo-arch-inv-head .bo-arch-inv-title{flex:1 1 8rem;min-width:0}
.bo-arch-inv-head .bo-arch-inv-total{margin-left:auto;font-weight:var(--font-weight-medium);font-variant-numeric:tabular-nums}
.bo-arch-inv-summary{display:block;padding:var(--space-2) var(--space-3);cursor:pointer;font-size:var(--text-sm);list-style:none}
.bo-arch-inv-summary::-webkit-details-marker{display:none}
.bo-arch-inv-meta{margin:var(--space-1) 0 0;font-size:var(--text-xs);line-height:1.4}
.bo-arch-inv-body{border-top:1px solid var(--border)}
.bo-arch-inv-title{font-weight:var(--font-weight-medium);font-size:var(--text-sm)}
.bo-arch-inv-total{font-weight:var(--font-weight-medium);font-variant-numeric:tabular-nums}
.bo-arch-subhead{margin-top:var(--space-2);margin-bottom:var(--space-2)}
.bo-arch-subhead h3{margin:0;font-size:var(--text-base);font-weight:var(--font-weight-medium)}
.bo-arch-inv-scroll{overflow:auto;max-height:min(320px,45vh)}
.bo-arch-inv-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}
.bo-arch-inv-table th,.bo-arch-inv-table td{padding:var(--space-2) var(--space-3);text-align:left;border-top:1px solid var(--border);vertical-align:top}
.bo-arch-inv-table th{font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;background:var(--surface-2);position:sticky;top:0;z-index:1}
.bo-arch-inv-table tbody tr:hover{background:color-mix(in srgb,var(--accent) 6%,transparent)}
.bo-arch-inv-weight{font-variant-numeric:tabular-nums;white-space:nowrap}
.bo-rel-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--space-3);margin:var(--space-3) 0}
.bo-rel-grid label{display:flex;flex-direction:column;gap:4px;font-size:var(--text-xs);color:var(--text-muted)}
.bo-rel-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center;margin:var(--space-3) 0}
.bo-rel-profiles{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-3)}
.bo-rel-prof-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--text-sm)}
.bo-rel-notes{margin:var(--space-2) 0;padding-left:1.2rem;font-size:var(--text-sm);color:var(--text-muted)}
.bo-rel-steps{margin:0;padding-left:1.2rem;font-size:var(--text-sm);line-height:1.6}
.bo-rel-steps li{margin-bottom:var(--space-2)}
.bo-rel-jobs{width:100%;margin-top:var(--space-2)}
.bo-rel-log{max-height:200px;margin-top:var(--space-2)}
.bo-rel-hero{margin-bottom:var(--space-4)}
.bo-rel-hero h2{margin:0 0 var(--space-1);font-size:var(--text-h3)}
.bo-rel-wizard-nav{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-4)}
.bo-rel-wstep{padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);font-size:var(--text-sm);cursor:pointer}
.bo-rel-wstep.on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}
.bo-rel-wstep.done{opacity:.85}
.bo-rel-warn{padding:var(--space-2);border-left:3px solid var(--warning,#d97706);background:color-mix(in srgb,var(--warning,#d97706) 8%,transparent);font-size:var(--text-sm);margin:var(--space-2) 0}
.bo-rel-checklist{margin:var(--space-2) 0;padding-left:1.2rem;font-size:var(--text-sm)}
.bo-rel-checklist li{margin-bottom:4px}
.bo-rel-progress{height:8px;background:var(--surface-2);border-radius:4px;overflow:hidden;margin:var(--space-2) 0}
.bo-rel-progress-bar{height:100%;background:var(--accent);transition:width .3s}
.bo-rel-procedure ol,.bo-rel-checks ul{padding-left:1.2rem;font-size:var(--text-sm)}
.bo-rel-procedure li,.bo-rel-checks li{margin-bottom:var(--space-2)}
.bo-rel-checks li.ok{color:var(--ok)}
.bo-rel-checks li.bad{color:var(--danger)}
.bo-rel-cmd{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-top:4px}
.bo-rel-cmd code{font-size:var(--text-xs);word-break:break-all}
.bo-rel-cursor-box{margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--border)}
.bo-rel-advanced{margin-top:var(--space-4)}
.bo-rel-advanced summary{cursor:pointer;font-weight:var(--font-weight-medium)}
.hidden{display:none!important}
.badge-ok{background:color-mix(in srgb,var(--ok) 18%,transparent);color:var(--ok)}
.ok-hint{color:var(--ok);margin:0}
.chat-gen-enable{font-size:var(--text-xs);color:var(--text-dim);display:inline-flex;align-items:center;gap:4px;white-space:nowrap}
.chat-gen-row{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;min-width:0}
.chat-gen-label{font-size:var(--text-xs);color:var(--text-dim);font-weight:600;min-width:2.75rem;flex:none}
.chat-gen-seg{display:inline-flex;align-items:center;gap:2px;flex-wrap:wrap}
.chat-gen-seg .seg-btn{min-height:1.65rem;padding:0 .45rem;font-size:var(--text-xs)}
.chat-gen-select{width:auto;min-width:3.5rem;min-height:1.65rem;padding:0 .35rem;font-size:var(--text-xs)}
.chat-gen-audio{font-size:var(--text-xs);color:var(--text-dim);display:inline-flex;align-items:center;gap:4px;white-space:nowrap}
.om-type-filter{flex-shrink:0}
.om-card-audio .om-audio-thumb{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-1);background:var(--surface-2)}
.om-card-video .om-video-thumb{position:relative;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--surface-2) 80%,#000 20%);overflow:hidden;aspect-ratio:16/9}
.om-video-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;pointer-events:none;background:#1a1a1a}
.om-video-badge{position:relative;z-index:1;font-size:1.5rem;line-height:1;opacity:.85;text-shadow:0 1px 4px rgba(0,0,0,.5)}
.om-video-dur{position:absolute;bottom:4px;right:6px;z-index:1;font-size:var(--text-caption);color:#fff;background:rgba(0,0,0,.55);padding:1px 5px;border-radius:3px}
.om-detail-preview video{width:100%;max-height:60vh;border-radius:var(--radius-sm);background:#000}
.om-audio-play.is-playing,.om-detail-play.is-playing{background:var(--accent);color:#fff}
.om-detail-audio-wrap{display:flex;flex-direction:column;gap:var(--space-2);width:100%}
.om-detail-audio-wrap audio{width:100%}
.om-audio-dur{font-size:var(--text-caption);color:var(--text-dim)}
.om-detail-preview audio{width:100%;max-width:100%}
.step{color:var(--text-dim);font-size:var(--text-xs);margin:var(--space-1) 0;width:100%;font-family:var(--font-mono)}
.chat-thinking{display:flex;flex-wrap:wrap;align-items:flex-start;gap:8px;padding:10px 14px;margin:var(--gap-sm) 0;align-self:flex-start;background:var(--surface-2);border-radius:var(--radius);border:var(--border-width) solid var(--border);width:fit-content;max-width:min(100%,520px);box-shadow:var(--shadow-card)}
.chat-thinking-preview{flex:1 1 100%;font-size:var(--text-xs);color:var(--text-dim);line-height:var(--lh-loose);max-height:4.5em;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;opacity:.92}
.chat-scroll-jump{position:absolute;left:50%;bottom:calc(var(--space-3) + env(safe-area-inset-bottom,0px));transform:translateX(-50%);z-index:3;opacity:0;pointer-events:none;transition:opacity .18s,transform .18s;box-shadow:var(--shadow-card)}
.chat-scroll-jump.is-visible{opacity:1;pointer-events:auto;transform:translateX(-50%) translateY(0)}
.chat-log.is-smooth-scroll{scroll-behavior:smooth}
.chat-thinking-hint{font-size:var(--text-sm);color:var(--text-dim);line-height:1.35}
.chat-media-status{display:flex;align-items:center;gap:var(--space-2);padding:8px 12px;margin-bottom:var(--space-2);border-radius:var(--radius-sm);border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border));background:color-mix(in srgb,var(--accent) 8%,var(--surface-2));font-size:var(--text-xs);color:var(--text-dim)}
.chat-media-status.hidden{display:none!important}
.chat-media-status-spinner{width:.875rem;height:.875rem;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:chatVideoSpin .8s linear infinite;flex-shrink:0}
.chat-media-pending-msg .chat-media-pending-hint{font-size:var(--text-sm);color:var(--text-dim);margin-bottom:var(--space-1)}
.chat-thinking-dots{display:flex;align-items:center;gap:5px}
.chat-thinking-cancel{margin:0;padding:0 2px;border:0;background:none;font:inherit;font-size:var(--text-xs,11px);line-height:1;color:var(--muted);cursor:pointer;opacity:.75;transition:color var(--motion-fast,var(--transition)),opacity var(--motion-fast,var(--transition))}
.chat-thinking-cancel:hover:not(:disabled),.chat-thinking-cancel:focus-visible{color:var(--text-dim);opacity:1;outline:none;text-decoration:underline;text-underline-offset:2px}
.chat-thinking-cancel:disabled{opacity:.35;cursor:default}
.chat-thinking-dot{width:7px;height:7px;border-radius:50%;background:var(--accent);opacity:.4;animation:chat-think 1.35s ease-in-out infinite;will-change:transform,opacity}
.chat-thinking-dots .chat-thinking-dot:nth-child(2){animation-delay:.18s}
.chat-thinking-dots .chat-thinking-dot:nth-child(3){animation-delay:.36s}
@keyframes chat-think{0%,100%{transform:translateY(0);opacity:.35}50%{transform:translateY(-5px);opacity:1}}
@media (prefers-reduced-motion:reduce){.chat-thinking-dot{animation:none;opacity:.55}}
.msg .files{font-size:var(--text-xs);color:var(--text-dim);margin-top:var(--space-1)}
.chat-bottom{flex-shrink:0;border-top:var(--border-width) solid var(--border);padding:var(--space-3) var(--chat-inset);padding-bottom:calc(var(--space-3) + env(safe-area-inset-bottom,0px));background:var(--bg)}
.chat-mobile-bar{display:none;align-items:center;gap:var(--gap-sm);padding:var(--space-2) var(--chat-inset);border-bottom:var(--border-width) solid var(--border);flex-shrink:0}
.chat-mobile-title{font-size:var(--text-sm);color:var(--text-dim)}
.chat-compose{width:100%;max-width:var(--chat-read-w);margin-inline:auto;display:flex;flex-direction:column;gap:var(--gap-sm)}
.chat-bar-shell{width:100%;padding:var(--space-2);background:var(--surface);border:var(--border-width) solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-card)}
.chat-bar{display:flex;align-items:flex-end;gap:var(--gap-sm);width:100%;min-width:0}
.chat-bar .attach{align-self:flex-end;flex:none;color:var(--text-dim)}
.chat-bar .attach:hover{color:var(--accent);border-color:var(--accent)}
.chat-bar .chat-mic-btn{align-self:flex-end;flex:none;color:var(--text-dim)}
.chat-bar .chat-mic-btn:hover{color:var(--accent);border-color:var(--accent)}
.chat-bar .chat-mic-btn.is-recording{color:var(--danger,#c0392b);border-color:var(--danger,#c0392b);animation:mic-pulse 1.2s ease-in-out infinite}
.chat-bar .chat-mic-btn.is-transcribing{opacity:.65;pointer-events:none}
.mic-level-viz{display:none;align-items:flex-end;gap:2px;height:var(--control-h);padding:0 4px;align-self:flex-end;flex:none}
.mic-level-viz.is-active{display:flex}
.mic-level-viz span{display:block;width:3px;height:14px;border-radius:2px;background:var(--danger,#c0392b);transform:scaleY(0.12);transform-origin:center bottom;will-change:transform}
@media (prefers-reduced-motion:reduce){.mic-level-viz{display:none!important}}
@keyframes mic-pulse{0%,100%{opacity:1}50%{opacity:.55}}
.chat-img-pending{position:relative;width:min(240px,70vw);aspect-ratio:1;margin:var(--gap-sm) 0;border-radius:var(--radius-sm);border:var(--border-width) solid var(--border);background:var(--surface-2);overflow:hidden;align-self:flex-start}
.chat-img-pending-shimmer{position:absolute;inset:-50%;background:linear-gradient(115deg,transparent 42%,rgba(255,255,255,.35) 50%,transparent 58%);animation:img-gen-sweep 1.8s ease-in-out infinite;opacity:.45;will-change:transform}
.chat-img-pending-label{position:absolute;bottom:8px;left:10px;font-size:var(--text-xs);color:var(--text-dim);pointer-events:none}
@keyframes img-gen-sweep{0%{transform:translate(-30%,-30%)}100%{transform:translate(30%,30%)}}
@media (prefers-reduced-motion:reduce){.chat-img-pending-shimmer{animation:none;opacity:.25}}
.chat-attach-wrap{position:relative;display:inline-block;margin-top:var(--gap-sm);max-width:min(280px,100%)}
.chat-attach-open{display:block;padding:0;border:none;background:none;cursor:zoom-in;border-radius:var(--radius-sm);overflow:hidden;line-height:0}
.chat-attach-open img{display:block;max-width:100%;max-height:220px;border-radius:var(--radius-sm);border:var(--border-width) solid var(--border);object-fit:contain;transition:box-shadow .15s,border-color .15s}
.chat-attach-open:hover img,.chat-attach-open:focus-visible img{border-color:var(--accent);box-shadow:var(--shadow-card)}
.chat-attach-dl{position:absolute;top:6px;right:6px;z-index:2;padding:2px 8px;font-size:var(--text-xs);background:var(--overlay-chip,rgba(0,0,0,.55));color:var(--on-media,#fff);border:none;border-radius:var(--radius-sm);cursor:pointer;opacity:0;transition:opacity var(--motion-fast,var(--transition))}
.chat-attach-wrap:hover .chat-attach-dl,.chat-attach-dl:focus-visible{opacity:1}
.chat-lightbox{position:fixed;inset:0;z-index:var(--z-lightbox,400);background:var(--overlay-media,rgba(0,0,0,.88));display:flex;align-items:center;justify-content:center;padding:3rem 1rem;cursor:zoom-out}
.chat-lightbox img{max-width:min(960px,95vw);max-height:85vh;object-fit:contain;border-radius:var(--radius);box-shadow:var(--shadow-elev-3,var(--shadow-modal))}
.chat-lightbox-close{position:absolute;top:1rem;right:1rem;color:var(--on-media,#fff);background:color-mix(in srgb,var(--on-media,#fff) 12%,transparent);border:none;font-size:1.5rem;line-height:1;width:2.5rem;height:2.5rem;border-radius:var(--radius-pill,50%);cursor:pointer}
.chat-lightbox-dl{position:absolute;top:1rem;left:1rem;text-decoration:none}
body.chat-lightbox-open{overflow:hidden}
.chat-send,.chat-bar .btn-accent{flex:none;min-width:var(--send-min-w);align-self:flex-end}
.attach-list{display:flex;flex-wrap:wrap;gap:var(--gap-sm);padding:0 var(--space-2) var(--space-2)}
.attach-chip{display:inline-flex;align-items:center;gap:6px;padding:2px 8px;border-radius:var(--radius-sm);background:var(--surface-2);font-size:var(--text-xs);color:var(--text-dim)}
.attach-chip button{border:0;background:transparent;color:var(--text-dim);cursor:pointer;padding:0 2px}
.asst-attach{margin-top:var(--gap-sm)}
.asst-attach img{max-width:min(280px,100%);max-height:200px;border-radius:var(--radius-sm);border:var(--border-width) solid var(--border);object-fit:contain}
#attachments{display:none;flex-wrap:wrap;gap:var(--gap-sm);width:100%}
#attachments.on{display:flex}
.att{display:flex;align-items:center;gap:var(--gap-sm);background:var(--surface-2);padding:var(--space-1) var(--gap-sm);border-radius:var(--radius-sm);font-size:var(--text-xs)}
.disc,.fitem{font-size:var(--text-sm)}.page-storage{gap:var(--gap)}
.storage-module-bar{padding:var(--gap-sm) var(--page-pad);border-bottom:var(--border-width) solid var(--border);flex-shrink:0;background:var(--bg)}
.storage-subnav .seg-btn{text-decoration:none;color:inherit}
#page-storage.page-storage{flex-direction:column;padding:0;gap:0;overflow:hidden}
.storage-pane{flex:1;min-height:0;overflow:auto;padding:var(--page-pad) calc(var(--page-pad) + 4px);display:flex;flex-direction:column;gap:var(--gap)}
.storage-banner{font-size:var(--text-sm);display:flex;flex-wrap:wrap;align-items:center;gap:var(--gap-sm)}
.storage-body{flex:1;display:flex;gap:var(--gap-sm);min-height:0}
.page-storage .storage-body.fm-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,34%);align-items:stretch;min-height:min(520px,60vh)}
.page-storage .storage-tree-panel.fm-browser{width:auto;min-width:0;max-width:none;flex-shrink:1}
.page-storage .storage-editor.fm-preview{min-width:0}
.storage-editor{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--surface);border:var(--border-width) solid var(--border);border-radius:var(--radius);padding:var(--panel-pad);box-shadow:var(--shadow-card);gap:var(--gap-sm)}
.storage-editor .ftext,.storage-editor .preview,.storage-editor .imgview{flex:1;min-height:8rem;margin:0}
.storage-editor .ftext,.storage-editor .preview,.storage-editor .imgview{display:none}
.storage-editor[data-view=code] .ftext{display:block}
.storage-editor[data-view=preview] .preview{display:block}
.storage-editor[data-view=image] .imgview{display:flex}
.storage-editor[data-view=empty] .ftext,.storage-editor[data-view=empty] .preview,.storage-editor[data-view=empty] .imgview{display:none}
.fpath{font-size:var(--text-xs);color:var(--accent);margin-bottom:var(--space-2);font-family:var(--font-mono)}
.ftext{flex:1;width:100%;background:var(--bg);color:var(--text);border:var(--border-width) solid var(--border);border-radius:var(--radius-sm);padding:var(--panel-pad);font-family:var(--font-mono);font-size:var(--text-sm);resize:none;min-height:0}
.preview{flex:1;border:var(--border-width) solid var(--border);border-radius:var(--radius-sm);background:var(--preview-iframe-bg);min-height:0}
.imgview{flex:1;align-items:center;justify-content:center;background:var(--bg);border:var(--border-width) solid var(--border);border-radius:var(--radius-sm);min-height:0}
.imgview img{max-width:100%;max-height:100%}
.om-toolbar{align-items:center;gap:var(--gap-sm)}
.om-search{flex:1;min-width:8rem;max-width:20rem}
.om-drop{border:2px dashed var(--border);padding:var(--gap);text-align:center;cursor:pointer;transition:border-color .15s,background .15s}
.om-drop.is-dragover,.om-drop:focus-visible{border-color:var(--accent);background:var(--accent-soft)}
.om-drop-title{margin:0;font-weight:var(--font-weight-bold)}
.om-drop-hint{margin:var(--space-2) 0 0;font-size:var(--text-sm);color:var(--text-dim)}
.om-upload-progress{font-size:var(--text-sm);color:var(--accent)}
.om-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:var(--gap-sm)}
.om-card{background:var(--surface);border:var(--border-width) solid var(--border);border-radius:var(--radius);overflow:hidden;cursor:pointer;transition:box-shadow .15s,border-color .15s}
.om-card:hover,.om-card:focus-visible{border-color:var(--accent);box-shadow:var(--shadow-card)}
.om-card-thumb{aspect-ratio:1;background:var(--bg);display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative}
.om-card-del{position:absolute;top:var(--space-1);right:var(--space-1);z-index:2;opacity:0;transition:opacity var(--motion-fast,var(--transition)),color var(--motion-fast,var(--transition)),background var(--motion-fast,var(--transition))}
.om-card:hover .om-card-del,.om-card-del:hover,.om-card-del:focus-visible{opacity:1}
.om-card-thumb img{width:100%;height:100%;object-fit:cover}
.om-card-foot{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);font-size:var(--text-xs)}
.om-card-slug{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.om-copy{flex-shrink:0;padding:2px 6px;font-size:var(--text-xs)}
.om-load-more{text-align:center;padding:var(--gap-sm)}
.om-detail{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:var(--z-modal,200);width:min(420px,calc(100vw - 2rem));max-height:calc(100vh - 2rem);overflow:auto;background:var(--surface);border:var(--border-width) solid var(--border);border-radius:var(--radius);padding:var(--gap);box-shadow:var(--shadow-elev-3,var(--shadow-modal));display:flex;flex-direction:column;gap:var(--gap-sm)}
.om-detail.hidden{display:none}
.om-detail-backdrop{position:fixed;inset:0;background:var(--modal-overlay);z-index:calc(var(--z-modal,200) - 1)}
.om-detail-backdrop.hidden{display:none}
.om-detail-close{position:absolute;top:var(--space-2);right:var(--space-2)}
.om-detail-preview{background:var(--bg);border-radius:var(--radius-sm);overflow:hidden;max-height:40vh;display:flex;align-items:center;justify-content:center}
.om-detail-preview img{max-width:100%;max-height:40vh;object-fit:contain}
.om-detail-label{font-size:var(--text-xs);color:var(--text-dim)}
.om-detail-actions{flex-wrap:wrap}
.om-detail-meta{font-size:var(--text-xs)}
.om-detail-url{font-size:var(--text-xs);word-break:break-all;color:var(--text-dim);margin-top:var(--space-2)}
.btn-sm{padding:2px 8px;font-size:var(--text-xs)}
.thumb{width:var(--thumb-size);height:var(--thumb-size);object-fit:cover;border-radius:var(--radius-sm);margin-right:var(--space-2);vertical-align:middle}
.page-database{gap:var(--gap)}
.db-tables{width:var(--list-panel-w);min-width:var(--list-panel-w);flex-shrink:0;overflow-y:auto}
.db-table-item:hover{background:var(--surface-2)}
.db-table-item.on{background:var(--accent-soft);color:var(--accent)}
.data-table th{color:var(--text-dim);font-weight:var(--font-weight-bold);position:sticky;top:0;background:var(--surface-2)}
.page-settings,.page-design{max-width:920px}
.settings-grid{display:flex;flex-direction:column;gap:var(--gap-sm)}
.settings-lead{font-size:var(--text-sm);color:var(--text-dim);margin:0 0 var(--gap-sm);line-height:var(--lh-loose)}
.field-label{display:block;font-size:var(--text-xs);color:var(--text-dim);margin:var(--gap-sm) 0 var(--space-1)}
.settings-actions{margin-top:var(--gap-sm)}
.profile-hero{display:flex;flex-wrap:wrap;gap:var(--gap);align-items:stretch;margin-bottom:var(--gap-sm)}
.profile-hero-main{display:flex;gap:var(--gap);align-items:center;flex:1;min-width:min(100%,280px)}
.profile-workspace-brand{flex:1;min-width:min(100%,260px);padding-left:var(--gap);border-left:var(--border-width) solid var(--border);display:flex;flex-direction:column;gap:var(--space-2)}
@media(max-width:720px){.profile-workspace-brand{padding-left:0;border-left:0;border-top:var(--border-width) solid var(--border);padding-top:var(--gap);width:100%}}
.profile-workspace-brand-title{font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--text)}
.profile-workspace-lead{margin:0;font-size:var(--text-xs);color:var(--text-dim);line-height:var(--lh-loose)}
.profile-workspace-brand-row{display:flex;gap:var(--gap-sm);align-items:flex-start}
.profile-workspace-logo-block{display:flex;flex-direction:column;align-items:center;gap:var(--space-1);flex-shrink:0}
.profile-workspace-logo{width:52px;height:52px;object-fit:contain;border-radius:var(--radius-sm);background:var(--surface-2);border:var(--border-width) solid var(--border)}
.profile-workspace-logo-ph{width:52px;height:52px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);background:var(--surface-2);border:var(--border-width) dashed var(--border);color:var(--text-dim);font-size:1.1rem}
.profile-workspace-logo-actions{display:flex;flex-wrap:wrap;gap:var(--space-1);justify-content:center}
.profile-workspace-fields{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--space-1)}
.profile-workspace-fields .field-label{margin-top:0}
.profile-workspace-size{margin-top:var(--space-1)}
.profile-workspace-size.hidden{display:none}
.profile-workspace-size-row{display:flex;align-items:center;gap:var(--space-2)}
.profile-workspace-size-range{flex:1;min-width:0;height:4px;accent-color:var(--accent);cursor:pointer}
.profile-workspace-size-val{font-size:var(--text-xs);color:var(--text-dim);min-width:2.75rem;text-align:right;font-variant-numeric:tabular-nums}
.profile-avatar-block{display:flex;flex-direction:column;align-items:center;gap:var(--gap-sm);flex-shrink:0}
.profile-avatar{width:88px;height:88px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;font-size:var(--text-xl);font-weight:var(--font-weight-medium);background-size:cover;background-position:center;border:var(--border-width) solid var(--border)}
.profile-avatar.has-img{color:transparent}
.profile-avatar-actions{display:flex;gap:var(--space-1);flex-wrap:wrap;justify-content:center}
.profile-hero-meta{flex:1;min-width:min(100%,220px)}
.profile-display-name{margin:0 0 var(--space-1);font-family:var(--font-display);font-size:var(--text-h2);font-weight:var(--font-weight-medium);line-height:var(--lh-tight)}
.profile-pseudo-line{margin:0 0 var(--gap-sm);font-size:var(--text-sm);color:var(--text-dim);font-family:var(--font-mono)}
.profile-at{opacity:.7}
.profile-role-tags{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-bottom:var(--gap-sm)}
.profile-role-tag{font-size:var(--text-xs);padding:2px 8px;border-radius:999px;background:var(--surface-2);border:var(--border-width) solid var(--border);color:var(--text-dim);text-transform:capitalize}
.profile-meta-line{margin:0;font-size:var(--text-xs);color:var(--text-dim)}
.profile-name-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--gap-sm)}
@media(max-width:560px){.profile-name-row{grid-template-columns:1fr}}
.profile-bio{min-height:6rem;resize:vertical}
.page-account .account-head{display:flex;flex-direction:column;gap:var(--gap-sm);margin-bottom:var(--gap)}
.page-account .account-subnav{flex-wrap:wrap;gap:var(--space-1)}
.page-account .account-panel{display:flex;flex-direction:column;gap:var(--gap-sm)}
.account-pro-root,.account-integ-root{display:flex;flex-direction:column;gap:var(--gap-sm)}
.account-pro-toolbar{margin-bottom:var(--space-1)}
.account-pro-list{display:flex;flex-direction:column;gap:var(--space-2)}
.account-pro-card{border:var(--border-width) solid var(--border);border-radius:var(--radius-sm);padding:var(--space-2) var(--gap-sm);background:var(--surface);transition:border-color var(--transition),box-shadow var(--transition)}
.account-pro-card:hover{border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}
.account-pro-card.editing{border-color:var(--accent);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 25%,transparent)}
.account-pro-card-head{display:flex;align-items:center;gap:var(--space-2);flex-wrap:nowrap}
.account-pro-logo{width:40px;height:40px;object-fit:contain;border-radius:var(--radius-sm);background:var(--surface-2);border:var(--border-width) solid var(--border);flex-shrink:0}
.account-pro-logo-ph{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);background:var(--surface-2);font-size:1.1rem;flex-shrink:0}
.account-pro-card-meta{flex:1;min-width:0}
.account-pro-name{font-weight:var(--font-weight-medium);font-size:var(--text-sm);line-height:1.3}
.account-pro-sub{font-size:var(--text-xs);color:var(--text-dim);margin-top:2px}
.account-pro-badge{font-size:var(--text-xs);padding:2px 8px;border-radius:999px;background:var(--accent-soft);color:var(--accent);border:var(--border-width) solid color-mix(in srgb,var(--accent) 30%,transparent);white-space:nowrap}
.account-pro-card-actions{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-top:var(--space-2)}
.account-pro-editor{margin-top:var(--space-1)}
.account-pro-lead{margin:0 0 var(--space-2);font-size:var(--text-sm);color:var(--text-dim);line-height:1.45}
.account-pro-checklist{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-bottom:var(--space-2)}
.account-pro-check{font-size:var(--text-xs);padding:3px 8px;border-radius:999px;border:var(--border-width) solid var(--border);color:var(--text-dim);background:var(--surface-2)}
.account-pro-check.ok{color:var(--success);border-color:color-mix(in srgb,var(--success) 35%,var(--border));background:color-mix(in srgb,var(--success) 8%,var(--surface))}
.account-pro-check.warn{color:var(--text-dim)}
.account-pro-section{margin-bottom:var(--space-2);padding-bottom:var(--space-2);border-bottom:var(--border-width) solid color-mix(in srgb,var(--border) 65%,transparent)}
.account-pro-section:last-of-type{border-bottom:0;margin-bottom:var(--space-1)}
.account-pro-section-title{font-size:var(--text-xs);font-weight:600;color:var(--accent);text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-1)}
.account-pro-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-1) var(--gap-sm)}
.account-pro-form-grid-2{grid-template-columns:1fr 1fr}
.account-pro-form-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}
.account-pro-field{display:flex;flex-direction:column;gap:2px;min-width:0}
.account-pro-field .field-label{margin:0;font-size:var(--text-xs);color:var(--text-dim)}
.account-pro-field .input{min-height:34px;padding:6px 10px;font-size:var(--text-sm)}
.account-pro-notes{min-height:56px;resize:vertical}
.account-pro-default-chk{margin:var(--space-1) 0}
.account-pro-lookup{margin:0}
.account-pro-lookup-row{display:flex;gap:var(--space-2);align-items:center}
.account-pro-lookup-row .input{flex:1;min-width:0}
.account-pro-lookup-results{margin-top:var(--space-1);border:var(--border-width) solid var(--border);border-radius:var(--radius-sm);background:var(--bg);max-height:10rem;overflow:auto}
.account-pro-lookup-item{display:flex;flex-direction:column;align-items:flex-start;gap:1px;width:100%;padding:6px var(--gap-sm);border:0;border-bottom:var(--border-width) solid var(--border);background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:background var(--transition)}
.account-pro-lookup-item:last-child{border-bottom:0}
.account-pro-lookup-item:hover{background:var(--surface-2)}
.account-pro-lookup-item:focus-visible{outline:none;box-shadow:inset var(--focus-ring)}
.account-pro-logo-row{margin:var(--space-1) 0}
.account-pro-grid2{display:grid;grid-template-columns:1fr 1fr;gap:var(--gap-sm)}
@media(max-width:720px){
  .account-pro-form-grid,.account-pro-form-grid-2,.account-pro-form-grid-4,.account-pro-grid2{grid-template-columns:1fr}
  .account-pro-lookup-row{flex-direction:column;align-items:stretch}
  .account-pro-lookup-row .btn{width:100%}
}
.account-integ-card+.account-integ-card{margin-top:0}
.account-secret-status{display:flex;flex-wrap:wrap;align-items:center;gap:var(--gap-sm);padding:var(--space-2) var(--gap-sm);margin-bottom:var(--gap-sm);border-radius:var(--radius-sm);background:var(--surface-2);border:var(--border-width) solid var(--border)}
.account-secret-status.ok{border-color:color-mix(in srgb,var(--success) 35%,var(--border))}
.account-secret-hint{font-family:var(--font-mono);font-size:var(--text-sm)}
.account-integ-overview .account-integ-status-row{margin-bottom:var(--gap-sm)}
.account-integ-status-row{display:flex;flex-wrap:wrap;align-items:flex-start;gap:var(--gap-sm)}
.account-integ-pill{display:inline-flex;align-items:center;padding:2px 10px;border-radius:999px;font-size:var(--text-xs);font-weight:600;letter-spacing:.02em;border:var(--border-width) solid var(--border);background:var(--surface-2)}
.account-integ-pill.ok{color:var(--success);border-color:color-mix(in srgb,var(--success) 40%,var(--border));background:color-mix(in srgb,var(--success) 8%,var(--surface))}
.account-integ-pill.warn{color:var(--warning, #b45309);border-color:color-mix(in srgb,var(--warning, #b45309) 40%,var(--border));background:color-mix(in srgb,var(--warning, #b45309) 8%,var(--surface))}
.account-integ-pill.muted{color:var(--text-muted)}
.account-integ-pill.bad{color:var(--danger,#dc2626);border-color:color-mix(in srgb,var(--danger,#dc2626) 40%,var(--border));background:color-mix(in srgb,var(--danger,#dc2626) 8%,var(--surface))}
.account-secret-status.bad{border-color:color-mix(in srgb,var(--danger,#dc2626) 35%,var(--border))}
.account-integ-steps{list-style:none;margin:var(--gap-sm) 0 0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}
.account-integ-steps li{display:flex;flex-direction:column;gap:2px;padding:var(--space-2) var(--gap-sm);border-radius:var(--radius-sm);border:var(--border-width) solid var(--border);background:var(--surface)}
.account-integ-steps li::before{content:'○';font-size:var(--text-sm);color:var(--text-muted);margin-bottom:2px}
.account-integ-steps li.done{border-color:color-mix(in srgb,var(--success) 30%,var(--border))}
.account-integ-steps li.done::before{content:'✓';color:var(--success)}
.account-integ-step-label{font-weight:600;font-size:var(--text-sm)}
.account-integ-platform-note{display:flex;flex-direction:column;gap:var(--gap-sm);padding:var(--gap-sm);border-radius:var(--radius-sm);background:var(--surface-2);border:var(--border-width) solid var(--border)}
.account-integ-platform-note p{margin:0;font-size:var(--text-sm);color:var(--text-muted)}
.agent-dev-key-banner{margin:0 0 var(--gap-sm);padding:10px 14px;border-radius:var(--radius-sm);border:var(--border-width) solid color-mix(in srgb,var(--warning, #b45309) 45%,var(--border));background:color-mix(in srgb,var(--warning, #b45309) 10%,var(--surface));font-size:var(--text-sm)}
.agent-dev-key-banner a{font-weight:600}
.dp-root{display:flex;flex-direction:column;gap:var(--space-2);width:100%;max-width:1120px;margin:0 auto;padding:var(--space-4) var(--space-4) var(--space-5);box-sizing:border-box;min-width:0}
.dp-root.dp-chat-active{flex:1;min-height:0;overflow:hidden;padding:var(--space-2) var(--space-3) var(--space-3);gap:var(--space-1)}
.dp-root.dp-chat-active .dp-detail{flex:1;min-height:0;overflow:hidden;gap:var(--space-1)}
.dp-root.dp-chat-active .dp-detail-head{margin:0;padding-bottom:var(--space-1);border-bottom:var(--border-width) solid var(--border);flex-shrink:0}
.dp-root.dp-chat-active .dp-detail-title{font-size:var(--text-md)}
.dp-root.dp-chat-active .dp-tabs{flex-shrink:0;margin:0;padding:0}
.dp-root.dp-chat-active .dp-tab-panels{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}
.dp-root.dp-chat-active .dp-tab-panel[data-dp-panel="chat"]{flex:1;min-height:0;display:flex;flex-direction:column;padding:var(--space-2);overflow:hidden;border:none;background:transparent}
.dp-root.dp-chat-active .dp-chat-panel{flex:1;min-height:0;overflow:hidden;gap:var(--space-1)}
.dp-root.dp-chat-active .dp-chat-layout{flex:1;min-height:0;align-content:stretch}
.dp-root.dp-chat-active .dp-chat-thread{flex:1;min-height:0;max-height:none;overflow:hidden}
.dp-root.dp-chat-active .dp-chat-log{flex:1;min-height:0;max-height:none;overflow-y:auto;-webkit-overflow-scrolling:touch}
/* Surfaces module projet — carte unique (design.mdc rayons 8/12) */
.dp-tab-panel,.dp-card,.dp-team-section,.dp-team-card,.dp-orch,.dp-chat-thread,.dp-fold.dp-team-org,.dp-note,.dp-out-row,.dp-val-queue,.dp-perms-fold,.dp-ws-fold,.dp-orphan-fold,.dp-task-row{border:var(--border-width) solid var(--border);border-radius:var(--radius-card);background:var(--surface)}
.dp-team-card,.dp-task-row,.dp-note{background:var(--bg)}
.dp-chat-thread{position:relative;display:flex;flex-direction:column;min-height:min(52vh,24rem);padding:var(--space-2);gap:var(--space-2);overflow:hidden}
.dp-chat-job-slot{min-height:40px;display:flex;flex-direction:column;justify-content:center;flex-shrink:0}
.dp-chat-job-slot:empty{min-height:0}
.dp-chat-msg-assistant{background:var(--surface-raised);border:var(--border-width) solid var(--border)}
.dp-chat-msg-assistant .chat-body{font-size:var(--text-sm);line-height:1.45}
.dp-chat-msg-user{background:color-mix(in srgb,var(--accent) 14%,var(--surface-raised));border:var(--border-width) solid color-mix(in srgb,var(--accent) 28%,var(--border))}
.dp-fold-title,.dp-note-sum-title{font-weight:var(--font-weight-medium)}
.dp-card{border-radius:var(--radius-card);padding:var(--space-3);gap:var(--space-2);transition:border-color .18s,box-shadow .18s}
.dp-card:focus-within{border-color:color-mix(in srgb,var(--accent) 30%,var(--border))}
.dp-detail{gap:var(--space-2)}
.dp-detail-title{font-size:var(--text-lg)}
.dp-field .input{min-height:40px;padding:var(--space-2) var(--space-3)}
.dp-section-head{margin:0 0 var(--space-2);font-size:var(--text-md);font-weight:var(--font-weight-medium);line-height:1.3}
.dp-toolbar{margin-bottom:var(--space-1)}
.dp-loading{margin:var(--space-3) 0}
.dp-skeleton{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-1) 0}
.dp-skel-block{display:block;height:40px;border-radius:var(--radius-el);background:linear-gradient(90deg,color-mix(in srgb,var(--surface-2) 88%,transparent) 0%,color-mix(in srgb,var(--border) 40%,var(--surface-2)) 48%,color-mix(in srgb,var(--surface-2) 88%,transparent) 100%);background-size:200% 100%;animation:dp-sk-shimmer 1.2s ease-in-out infinite}
.dp-skel-block:nth-child(2){width:82%;height:32px}
.dp-skel-block:nth-child(3){width:64%;height:32px}
@keyframes dp-sk-shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}
@media (prefers-reduced-motion:reduce){.dp-skel-block{animation:none;background:var(--surface-2)}}
.dp-detail-loading{padding:var(--space-3)}
.dp-empty-state{margin:var(--space-3) 0;padding:var(--space-3);border:var(--border-width) dashed var(--border);border-radius:var(--radius-card);text-align:center}
.dp-tabs{display:flex;flex-wrap:nowrap;gap:var(--space-1);overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:var(--space-1) 0;margin:0;min-width:0;overscroll-behavior-x:contain}
.dp-tabs::-webkit-scrollbar{display:none}
.dp-subnav .seg-btn{text-decoration:none;color:inherit;flex:0 0 auto;min-height:40px;padding:0 var(--space-3);white-space:nowrap;gap:var(--space-1)}
.dp-tab-badge{font-size:10px;line-height:1;padding:1px 6px;border-radius:999px;background:var(--surface-2);border:var(--border-width) solid var(--border);color:var(--text-dim)}
.dp-tab-panels{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}
.dp-tab-panel{padding:var(--space-3);min-width:0;border-radius:var(--radius-card);border:var(--border-width) solid var(--border);background:var(--surface)}
.dp-tab-panel.hidden{display:none!important}
.dp-panel-inner{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}
.dp-placeholder{padding:var(--space-4) var(--space-3);text-align:center;border-style:dashed;background:color-mix(in srgb,var(--surface) 80%,transparent)}
.dp-placeholder-title{margin:0 0 var(--space-2);font-size:var(--text-md);font-weight:var(--font-weight-medium);color:var(--text)}
.dp-placeholder-msg{margin:0;max-width:28rem;margin-inline:auto;line-height:1.45}
.dp-team-panel{display:flex;flex-direction:column;gap:var(--space-2)}
.dp-team-section{padding:var(--space-3);border-radius:var(--radius-card);border:var(--border-width) solid var(--border)}
.dp-team-section-title{margin:0 0 var(--space-2);font-size:var(--text-md);font-weight:var(--font-weight-medium)}
.dp-team-org{margin:0}
.dp-team-lead-hint{margin:0 0 var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-el);background:color-mix(in srgb,var(--accent) 8%,var(--surface));border:var(--border-width) solid color-mix(in srgb,var(--accent) 22%,var(--border))}
.dp-team-list{display:flex;flex-direction:column;gap:var(--space-2);margin:0 0 var(--space-2);min-width:0}
.dp-team-card{border:var(--border-width) solid var(--border);border-radius:var(--radius-el);background:var(--bg);overflow:hidden;transition:border-color .15s,box-shadow .15s}
.dp-team-card.is-lead{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 18%,transparent)}
.dp-team-card.is-open{border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}
.dp-team-card.is-dragging{opacity:.55}
.dp-team-card.is-drop-target{outline:2px dashed color-mix(in srgb,var(--accent) 45%,transparent);outline-offset:-2px}
.dp-team-card-head{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3);min-width:0}
.dp-team-drag{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;margin:-8px 0;border:0;border-radius:var(--radius-el);background:transparent;color:var(--text-dim);cursor:grab;font-size:12px;letter-spacing:-2px;flex-shrink:0;touch-action:none}
.dp-team-drag:hover,.dp-team-drag:focus-visible{color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent);outline:none;box-shadow:var(--focus-ring)}
.dp-team-drag:active{cursor:grabbing}
.dp-team-brief{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.dp-team-name{font-size:var(--text-sm);font-weight:var(--font-weight-medium);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dp-team-role-line{font-size:var(--text-xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dp-team-lead-badge{flex-shrink:0;font-size:10px;font-weight:var(--font-weight-medium);padding:2px 8px;border-radius:999px;background:color-mix(in srgb,var(--accent) 14%,var(--surface));color:var(--accent);border:var(--border-width) solid color-mix(in srgb,var(--accent) 35%,var(--border))}
.dp-team-head-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1);flex-shrink:0}
.dp-team-head-actions .btn{min-height:40px;padding:0 var(--space-3)}
.dp-team-del{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:0;border-radius:var(--radius-el);background:transparent;color:var(--text-dim);font-size:1.1rem;cursor:pointer;flex-shrink:0}
.dp-team-del:hover{color:var(--error);background:color-mix(in srgb,var(--error) 10%,transparent)}
.dp-team-del:focus-visible{outline:none;box-shadow:var(--focus-ring)}
.dp-team-editor{padding:0 var(--space-3) var(--space-3);border-top:var(--border-width) solid color-mix(in srgb,var(--border) 55%,transparent);display:flex;flex-direction:column;gap:var(--space-2)}
.dp-team-editor.hidden{display:none}
.dp-team-add-row{margin-bottom:var(--space-3)}
.dp-team-add-controls{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center;margin-top:var(--space-1)}
.dp-team-add-select{flex:1;min-width:min(100%,12rem);min-height:40px}
.dp-team-add-controls .btn{min-height:40px}
.dp-orch{padding:var(--space-3);border-radius:var(--radius-card);display:flex;flex-direction:column;gap:var(--space-2);min-width:0;border:var(--border-width) solid var(--border)}
.dp-orch-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2)}
.dp-orch-title{margin:0;font-size:var(--text-md);font-weight:var(--font-weight-medium)}
.dp-orch-badge{font-size:var(--text-xs);font-weight:var(--font-weight-medium);padding:2px 10px;border-radius:999px;border:var(--border-width) solid var(--border)}
.dp-orch-status-idle{color:var(--text-dim)}
.dp-orch-status-running{color:var(--teal);border-color:color-mix(in srgb,var(--teal) 35%,var(--border));background:color-mix(in srgb,var(--teal) 8%,var(--surface))}
.dp-orch-status-stopped{color:var(--error);border-color:color-mix(in srgb,var(--error) 35%,var(--border));background:color-mix(in srgb,var(--error) 8%,var(--surface))}
.dp-orch-status-waiting{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}
.dp-orch-stop{margin:0;padding:var(--space-2) var(--space-3);border-radius:var(--radius-el);background:color-mix(in srgb,var(--error) 8%,var(--surface));border:var(--border-width) solid color-mix(in srgb,var(--error) 25%,var(--border))}
.dp-orch-controls{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}
.dp-orch-controls .btn{min-height:40px}
.dp-orch-auto{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);cursor:pointer;min-height:40px;padding:0 var(--space-2)}
.dp-orch-meta{display:flex;flex-wrap:wrap;gap:var(--space-3)}
.dp-orch-journal{margin:0}
.dp-orch-log{margin:var(--space-2) 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:var(--space-1);max-height:12rem;overflow:auto}
.dp-orch-log li{font-size:var(--text-sm);padding:var(--space-1) 0;border-bottom:var(--border-width) solid color-mix(in srgb,var(--border) 40%,transparent)}
.dp-orch-log-ts{margin-right:var(--space-2)}
.dp-orch-log-kind{font-weight:var(--font-weight-medium);margin-right:var(--space-1)}
.dp-val-queue{padding:var(--space-3);border-radius:var(--radius-el);background:color-mix(in srgb,var(--accent) 6%,var(--surface));border:var(--border-width) solid color-mix(in srgb,var(--accent) 22%,var(--border))}
.dp-val-queue-tasks{margin-bottom:var(--space-2)}
.dp-val-queue-sum{margin:0 0 var(--space-2)}
.dp-val-list{margin:0 0 var(--space-3);padding:0;list-style:none;display:flex;flex-direction:column;gap:var(--space-1)}
.dp-val-item{font-size:var(--text-sm);display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:space-between}
.dp-val-action{font-weight:var(--font-weight-medium)}
.dp-tasks-panel{display:flex;flex-direction:column;gap:var(--space-2)}
.dp-tasks-global{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) 0}
.dp-tasks-section-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}
.dp-prog-badge{font-size:var(--text-xs);font-weight:var(--font-weight-medium);padding:2px 8px;border-radius:999px;background:color-mix(in srgb,var(--accent) 10%,var(--surface));border:var(--border-width) solid color-mix(in srgb,var(--accent) 25%,var(--border))}
.dp-prog-badge.is-done{background:color-mix(in srgb,var(--success) 12%,var(--surface));border-color:color-mix(in srgb,var(--success) 35%,var(--border));color:var(--success)}
.dp-perms-fold,.dp-ws-fold,.dp-orphan-fold{padding:var(--space-3)}
.dp-perm-grid{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-2)}
.dp-perm-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2)}
.dp-perm-select{min-width:10rem;min-height:40px}
.dp-ws-sum{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);cursor:pointer;list-style:none}
.dp-ws-title{font-weight:var(--font-weight-medium);flex:1;min-width:8rem}
.dp-ws-body,.dp-orphan-body{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-3);padding-top:var(--space-2);border-top:var(--border-width) solid color-mix(in srgb,var(--border) 55%,transparent)}
.dp-task-row{border:var(--border-width) solid var(--border);border-radius:var(--radius-el);background:var(--bg);overflow:hidden}
.dp-task-row.is-done{opacity:.82}
.dp-task-row.is-done .dp-task-title-line{text-decoration:line-through;color:var(--text-dim)}
.dp-task-row.is-dragging{opacity:.55}
.dp-task-row.is-drop-target{outline:2px dashed color-mix(in srgb,var(--accent) 45%,transparent);outline-offset:-2px}
.dp-task-head{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);min-width:0}
.dp-task-drag{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;margin:-4px 0;border:0;border-radius:var(--radius-el);background:transparent;color:var(--text-dim);cursor:grab;font-size:12px;flex-shrink:0;touch-action:none}
.dp-task-drag:focus-visible{outline:none;box-shadow:var(--focus-ring)}
.dp-task-check{display:inline-flex;align-items:center;min-height:40px;min-width:40px;cursor:pointer;flex-shrink:0}
.dp-task-check input{position:absolute;opacity:0;width:40px;height:40px;cursor:pointer}
.dp-task-check-ui{display:inline-flex;width:20px;height:20px;border:var(--border-width) solid var(--border);border-radius:4px;background:var(--surface)}
.dp-task-check input:checked+.dp-task-check-ui{background:var(--accent);border-color:var(--accent)}
.dp-task-brief{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.dp-task-title-line{font-size:var(--text-sm);font-weight:var(--font-weight-medium)}
.dp-task-def{font-size:var(--text-xs)}
.dp-task-actions{display:flex;flex-wrap:wrap;gap:var(--space-1);flex-shrink:0}
.dp-task-actions .btn,.dp-task-del{min-height:40px;min-width:40px}
.dp-task-del{display:inline-flex;align-items:center;justify-content:center;padding:0;border:0;border-radius:var(--radius-el);background:transparent;color:var(--text-dim);font-size:1.1rem;cursor:pointer}
.dp-task-del:hover{color:var(--error)}
.dp-task-editor{padding:0 var(--space-3) var(--space-3);display:flex;flex-direction:column;gap:var(--space-2);border-top:var(--border-width) solid color-mix(in srgb,var(--border) 55%,transparent)}
.dp-task-editor.hidden{display:none}
.dp-task-children{margin:0 0 var(--space-2) var(--space-4);padding-left:var(--space-2);border-left:2px solid color-mix(in srgb,var(--border) 70%,transparent);display:flex;flex-direction:column;gap:var(--space-2)}
.dp-ws-del,.dp-perm-lock{margin-left:var(--space-1)}
@media (max-width:480px){
  .dp-task-head{flex-wrap:wrap}
  .dp-task-actions{width:100%;justify-content:flex-end}
  .dp-task-children{margin-left:var(--space-2)}
}
.dp-chat-panel{display:flex;flex-direction:column;gap:var(--space-2);min-width:0;min-height:0}
.dp-chat-scope-fold{margin:0;border:var(--border-width) solid color-mix(in srgb,var(--accent) 18%,var(--border));border-radius:var(--radius-el);background:color-mix(in srgb,var(--accent) 4%,var(--surface));flex-shrink:0}
.dp-chat-scope-sum{display:flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);min-height:40px;font-size:var(--text-xs);cursor:pointer;list-style:none;user-select:none}
.dp-chat-scope-sum::-webkit-details-marker{display:none}
.dp-chat-scope-sum::before{content:'';width:6px;height:6px;border-right:1.5px solid var(--text-dim);border-bottom:1.5px solid var(--text-dim);transform:rotate(-45deg);flex-shrink:0;transition:transform .15s}
.dp-chat-scope-fold[open] .dp-chat-scope-sum::before{transform:rotate(45deg);margin-top:-2px}
.dp-chat-scope-label{font-weight:var(--font-weight-medium);color:var(--accent);white-space:nowrap}
.dp-chat-scope-sum-hint{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.dp-chat-scope-desk-hint{display:none;margin:0;font-size:var(--text-xs);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1}
@media (min-width:641px){
  .dp-chat-scope-fold{border:var(--border-width) solid color-mix(in srgb,var(--accent) 18%,var(--border));border-radius:var(--radius-el);background:color-mix(in srgb,var(--accent) 4%,var(--surface))}
  .dp-chat-scope-sum{cursor:default;padding:var(--space-1) var(--space-2);min-height:36px}
  .dp-chat-scope-sum::before{display:none}
  .dp-chat-scope-sum-hint{display:none}
  .dp-chat-scope-desk-hint{display:inline;flex:1}
  .dp-chat-scope-fold .dp-chat-scope-hint{display:none}
}
.dp-chat-scope-fold .dp-chat-scope-hint{margin:0;padding:0 var(--space-2) var(--space-2);font-size:11px;line-height:1.35}
.dp-chat-scope-fold:not([open]) .dp-chat-scope-hint{display:none}
/* legacy alias */
.dp-chat-scope-banner{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-2);margin:0;padding:var(--space-1) var(--space-2);border-radius:var(--radius-el);border:var(--border-width) solid color-mix(in srgb,var(--accent) 22%,var(--border));background:color-mix(in srgb,var(--accent) 5%,var(--surface));flex-shrink:0}
.dp-chat-scope-label{font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--accent);white-space:nowrap}
.dp-chat-scope-hint{font-size:var(--text-xs);line-height:1.3;margin:0}
.dp-chat-layout{display:grid;grid-template-columns:minmax(9rem,11rem) minmax(0,1fr);gap:var(--space-2);min-width:0}
.dp-chat-agents{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}
.dp-chat-agent{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2);border:var(--border-width) solid var(--border);border-radius:var(--radius-el);background:var(--bg);color:inherit;font:inherit;text-align:left;cursor:pointer;min-height:40px;min-width:0;transition:border-color .18s,background .18s,box-shadow .18s}
.dp-chat-agent:hover{border-color:color-mix(in srgb,var(--accent) 30%,var(--border));background:color-mix(in srgb,var(--accent) 4%,var(--surface))}
.dp-chat-agent:focus-visible{outline:none;box-shadow:var(--focus-ring)}
.dp-chat-agent.on{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:color-mix(in srgb,var(--accent) 8%,var(--surface))}
.dp-chat-agent.is-busy .dp-chat-agent-name{color:var(--accent)}
.dp-chat-agent-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-sm)}
.dp-chat-msg-count{font-size:var(--text-xs);margin-left:auto;min-width:1.25rem;padding:0 var(--space-1);line-height:1.35;border-radius:999px;text-align:center;background:color-mix(in srgb,var(--accent) 18%,var(--surface));border:var(--border-width) solid color-mix(in srgb,var(--accent) 35%,var(--border));color:var(--accent);font-weight:var(--font-weight-medium)}
.dp-chat-agent.on .dp-chat-msg-count{display:none}
.dp-chat-busy-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);flex-shrink:0;animation:dp-chat-pulse 1.2s ease-in-out infinite}
@keyframes dp-chat-pulse{0%,100%{opacity:.35}50%{opacity:1}}
.dp-chat-thread{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}
.dp-chat-thread-head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);padding-bottom:var(--space-1);border-bottom:var(--border-width) solid var(--border);flex-shrink:0}
.dp-chat-thread-title{margin:0;font-size:var(--text-md);font-weight:var(--font-weight-medium);flex:1;min-width:0}
.dp-chat-thread-key{font-size:var(--text-xs)}
.dp-chat-job-banner{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-el);background:color-mix(in srgb,var(--accent) 10%,var(--surface));font-size:var(--text-sm);border:var(--border-width) solid color-mix(in srgb,var(--accent) 22%,var(--border))}
.dp-chat-job-banner.is-error{background:color-mix(in srgb,var(--error) 12%,var(--surface));color:var(--error);border-color:color-mix(in srgb,var(--error) 28%,var(--border))}
.dp-chat-job-spinner{width:14px;height:14px;border:2px solid color-mix(in srgb,var(--accent) 30%,transparent);border-top-color:var(--accent);border-radius:50%;animation:dp-chat-spin .8s linear infinite;flex-shrink:0}
@keyframes dp-chat-spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.dp-chat-busy-dot,.dp-chat-job-spinner{animation:none}}
.dp-chat-log{flex:1;min-height:10rem;max-height:min(52vh,26rem);overflow:auto;display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-1) 0;min-width:0;scroll-behavior:auto}
.dp-chat-msg{max-width:92%;padding:var(--space-2) var(--space-3);border-radius:var(--radius-el);font-size:var(--text-sm);line-height:1.45;word-break:break-word}
.dp-chat-msg-user{align-self:flex-end}
.dp-chat-msg-assistant{align-self:flex-start}
.dp-chat-empty{align-self:center;text-align:center;padding:var(--space-3)}
.dp-chat-compose{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-2);padding-top:var(--space-2);border-top:var(--border-width) solid var(--border)}
.dp-chat-compose-field{flex:1;min-width:min(100%,12rem);display:flex;flex-direction:column;gap:var(--space-1)}
.dp-chat-compose-hint{margin:0;font-size:11px;line-height:1.2}
.dp-chat-bar-shell{width:100%;min-width:0}
.dp-chat-bar-shell .dp-chat-compose-hint{margin-top:var(--space-1)}
#dp-attachments{display:none;flex-wrap:wrap;gap:var(--gap-sm);width:100%}
#dp-attachments.on{display:flex}
.dp-chat-input{flex:1;min-width:0;min-height:40px;max-height:120px;resize:none;overflow-y:hidden;line-height:1.45;padding:var(--space-2) var(--space-3)}
.dp-chat-input:disabled{opacity:.62;cursor:not-allowed}
.dp-chat-compose .btn{min-height:40px;min-width:5.5rem;transition:background .18s,border-color .18s,opacity .18s,transform .12s}
.dp-chat-compose .btn:active:not(:disabled){transform:translateY(1px)}
.dp-chat-thread .chat-scroll-jump{bottom:calc(var(--space-5) + 3.5rem)}
@media (max-width:640px){
  .dp-chat-layout{grid-template-columns:1fr;gap:var(--space-1)}
  .dp-chat-agents{flex-direction:row;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:var(--space-1);padding:var(--space-1) 0;overscroll-behavior-x:contain}
  .dp-chat-agents::-webkit-scrollbar{display:none}
  .dp-chat-agent{flex:0 0 auto;width:auto;min-width:min(9.5rem,42vw);max-width:11rem;padding:var(--space-1) var(--space-2)}
  .dp-chat-agent-name{font-size:var(--text-xs)}
  .dp-chat-thread-head{display:none}
}
.dp-org-md{margin-top:var(--space-2);border:var(--border-width) solid var(--border);border-radius:var(--radius-el);padding:var(--space-2) var(--space-3);background:var(--surface-2)}
.dp-org-md-sum{cursor:pointer;font-size:var(--text-sm);font-weight:var(--font-weight-medium);min-height:40px;display:flex;align-items:center}
.dp-org-md-pre{margin:var(--space-2) 0 0;padding:var(--space-3);max-height:12rem;overflow:auto;font-size:var(--text-xs);line-height:1.45;white-space:pre-wrap;word-break:break-word;background:var(--surface-raised);border-radius:var(--radius-el);border:var(--border-width) solid var(--border);color:var(--text)}
.dp-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--space-2)}
.dp-card{border:var(--border-width) solid var(--border);border-radius:var(--radius-sm);padding:var(--space-2) var(--gap-sm);background:var(--surface);display:flex;flex-direction:column;gap:var(--space-1);transition:border-color var(--transition)}
.dp-card:hover{border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}
.dp-card-title{font-weight:var(--font-weight-medium);font-size:var(--text-sm)}
.dp-card-meta{line-height:1.3;font-size:var(--text-xs)}
.dp-card-stats{display:flex;flex-wrap:wrap;gap:var(--space-2);font-size:var(--text-xs)}
.dp-card-actions{display:flex;gap:var(--space-1);margin-top:auto}
.dp-detail{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}
.dp-detail-head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-bottom:0;padding-bottom:var(--space-1);border-bottom:var(--border-width) solid var(--border)}
.dp-detail-head-main{display:flex;align-items:center;gap:var(--space-2);flex:1;min-width:0;min-height:40px}
.dp-back-btn{flex-shrink:0;min-width:40px;min-height:40px;padding:0 var(--space-2);gap:var(--space-1)}
.dp-back-lbl{font-size:var(--text-sm)}
.dp-head-status{flex-shrink:0;font-size:10px;font-weight:var(--font-weight-medium);padding:2px 8px;border-radius:999px;border:var(--border-width) solid var(--border);color:var(--text-dim);white-space:nowrap;line-height:1.3}
.dp-head-status[data-state=connected]{color:var(--teal);border-color:color-mix(in srgb,var(--teal) 35%,var(--border));background:color-mix(in srgb,var(--teal) 8%,var(--surface))}
.dp-head-status[data-state=polling]{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}
.dp-tabs-wrap{position:relative;min-width:0;flex-shrink:0}
.dp-tabs-wrap::before,.dp-tabs-wrap::after{content:'';position:absolute;top:0;bottom:0;width:14px;pointer-events:none;z-index:1;opacity:0;transition:opacity .15s}
.dp-tabs-wrap.is-scrollable::before{left:0;opacity:1;background:linear-gradient(to right,color-mix(in srgb,var(--bg) 92%,transparent),transparent)}
.dp-tabs-wrap.is-scrollable::after{right:0;opacity:1;background:linear-gradient(to left,color-mix(in srgb,var(--bg) 92%,transparent),transparent)}
.dp-events-wrap{display:inline-flex;align-items:center;gap:var(--space-2);margin-left:auto;order:3}
.dp-events-status{font-size:var(--text-xs);color:var(--text-dim);white-space:nowrap}
.dp-head-status[data-state=reconnect],.dp-head-status[data-state=offline]{color:var(--text-dim);opacity:.9}
.dp-events-status[data-state=connected]{color:var(--teal)}
.dp-events-status[data-state=reconnect]{color:var(--text-dim)}
.dp-events-status[data-state=polling]{color:var(--accent)}
.dp-events-status[data-state=offline]{color:var(--text-dim);opacity:.85}
.dp-events-badge{min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--accent);color:var(--bg,#0A0A0C);font-size:10px;font-weight:var(--font-weight-medium);display:inline-flex;align-items:center;justify-content:center;line-height:1}
.dp-events-badge.hidden{display:none}
@media (max-width:480px){.dp-events-wrap{display:none}}
@media (max-width:640px){
  .dp-root{padding:var(--space-2);gap:var(--space-1);max-width:100%;overflow-x:clip}
  .dp-detail{gap:var(--space-1)}
  .dp-detail-head{flex-wrap:wrap;padding-bottom:var(--space-1);gap:var(--space-1);margin:0}
  .dp-detail-head-main{width:100%;gap:var(--space-1)}
  .dp-detail-title{font-size:var(--text-md);flex:1;min-width:0;margin:0}
  .dp-back-lbl{display:none}
  .dp-back-btn{min-width:40px;padding:0 var(--space-2);justify-content:center}
  .dp-save-hint{width:100%;text-align:right;margin:0;font-size:10px;line-height:1.2}
  .dp-tabs{padding:0;margin:0}
  .dp-subnav .seg-btn{min-height:40px;padding:0 10px;font-size:var(--text-sm)}
  .dp-tab-badge{font-size:9px;padding:1px 5px}
  .dp-tab-panels{gap:var(--space-1)}
  .dp-tab-panel{padding:var(--space-2);border-radius:var(--radius-el)}
  .dp-root.dp-chat-active{padding:var(--space-1) var(--space-2) var(--space-2);overflow:hidden;min-height:0;flex:1}
  .dp-root.dp-chat-active .dp-detail{min-height:0;flex:1;overflow:hidden}
  .dp-root.dp-chat-active .dp-tab-panels{flex:1;min-height:0;overflow:hidden}
  .dp-root.dp-chat-active .dp-tab-panel[data-dp-panel="chat"]{flex:1;min-height:0;padding:var(--space-1);overflow:hidden}
  .dp-root.dp-chat-active .dp-chat-panel{min-height:0;overflow:hidden}
  .dp-root.dp-chat-active .dp-chat-thread{min-height:0;flex:1;padding:var(--space-1);gap:var(--space-1)}
  .dp-root.dp-chat-active .dp-chat-log{min-height:6rem;max-height:none;flex:1;-webkit-overflow-scrolling:touch}
  .dp-root.dp-chat-active .dp-chat-compose{flex-shrink:0;padding-top:var(--space-1);background:var(--surface);position:sticky;bottom:0;z-index:2;margin:0 -var(--space-1);padding-left:var(--space-1);padding-right:var(--space-1)}
  .dp-chat-scope-fold:not([open]) .dp-chat-scope-sum{min-height:32px;padding:var(--space-1) var(--space-2)}
  .dp-chat-scope-desk-hint{display:none}
  .dp-out-agents{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:var(--space-1);padding-bottom:var(--space-1);overscroll-behavior-x:contain}
  .dp-out-agents::-webkit-scrollbar{display:none}
  .dp-out-agent{flex:0 0 auto;min-height:40px;padding:var(--space-1) var(--space-3)}
  .dp-tasks-panel,.dp-team-panel,.dp-output-panel{gap:var(--space-2)}
  .dp-perms-fold,.dp-ws-fold,.dp-orphan-fold{padding:var(--space-2)}
}
.dp-output-panel{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}
.dp-out-agents{display:flex;flex-wrap:wrap;gap:var(--space-2)}
.dp-out-agent{display:inline-flex;align-items:center;gap:var(--space-2);min-height:40px;padding:var(--space-2) var(--space-3);border:var(--border-width) solid var(--border);border-radius:var(--radius-el);background:var(--surface);color:var(--text);cursor:pointer;font:inherit}
.dp-out-agent.on{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:color-mix(in srgb,var(--accent) 8%,var(--surface))}
.dp-out-agent:focus-visible{outline:none;box-shadow:var(--focus-ring)}
.dp-out-agent-count{min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--surface-raised);font-size:10px;display:inline-flex;align-items:center;justify-content:center;color:var(--text-dim)}
.dp-out-list{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}
.dp-out-row{padding:0;overflow:hidden}
.dp-out-sum{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);width:100%;min-height:44px;padding:var(--space-2) var(--space-3);border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}
.dp-out-sum:focus-visible{outline:none;box-shadow:inset var(--focus-ring)}
.dp-out-title{flex:1;min-width:0;font-size:var(--text-sm);font-weight:var(--font-weight-medium)}
.dp-out-status{font-size:10px;padding:2px 8px;border-radius:999px;border:var(--border-width) solid var(--border)}
.dp-out-status-draft,.dp-out-status-pending_review{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}
.dp-out-status-published{color:var(--teal);border-color:color-mix(in srgb,var(--teal) 35%,var(--border))}
.dp-out-status-rejected{color:var(--error);border-color:color-mix(in srgb,var(--error) 35%,var(--border))}
.dp-out-body{padding:0 var(--space-3) var(--space-3);display:flex;flex-direction:column;gap:var(--space-3);border-top:var(--border-width) solid color-mix(in srgb,var(--border) 55%,transparent)}
.dp-out-body.hidden{display:none}
.dp-out-text,.dp-out-html{font-size:var(--text-sm);line-height:1.45;word-break:break-word}
.dp-out-code{margin:0;padding:var(--space-3);border-radius:var(--radius-el);background:var(--bg);overflow:auto;font-size:12px;line-height:1.4}
.dp-out-media{max-width:100%;height:auto;border-radius:var(--radius-el);display:block}
.dp-out-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}
.dp-out-actions .btn{min-height:40px;min-width:40px}
.dp-out-meta{margin:0}
.dp-detail-title{flex:1;min-width:0;margin:0;font-size:clamp(1rem,2.5vw,1.125rem);font-weight:var(--font-weight-medium);line-height:1.25}
.dp-save-hint{font-size:var(--text-xs);margin-left:auto}
.dp-fold{padding:0;overflow:hidden}
.dp-fold-toggle{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:8px var(--gap-sm);border:0;background:transparent;color:inherit;font:inherit;cursor:pointer;text-align:left;transition:background var(--transition)}
.dp-fold-toggle:hover{background:var(--surface-2)}
.dp-fold-toggle:focus-visible{outline:none;box-shadow:inset var(--focus-ring)}
.dp-fold-chevron{width:7px;height:7px;border-right:1.5px solid var(--text-dim);border-bottom:1.5px solid var(--text-dim);transform:rotate(-45deg);transition:transform .15s;flex-shrink:0;margin-left:2px}
.dp-fold:not(.is-collapsed) .dp-fold-chevron{transform:rotate(45deg);margin-top:-2px}
.dp-fold-title{flex:1;font-size:var(--text-sm);font-weight:600;color:var(--text)}
.dp-fold-badge{font-size:var(--text-xs);padding:1px 7px;border-radius:999px;background:var(--surface-2);color:var(--text-dim);border:var(--border-width) solid var(--border);min-width:1.25rem;text-align:center}
.dp-fold-badge:empty{display:none}
.dp-fold-body{padding:0 var(--gap-sm) var(--space-2);border-top:var(--border-width) solid color-mix(in srgb,var(--border) 55%,transparent)}
.dp-fold.is-collapsed .dp-fold-body{display:none}
.dp-hint{margin:var(--space-1) 0;font-size:var(--text-xs);color:var(--text-dim);line-height:1.35}
.dp-empty{margin:var(--space-1) 0;font-size:var(--text-xs);color:var(--text-dim)}
.dp-section-actions{margin:var(--space-1) 0}
.dp-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-1) var(--gap-sm)}
.dp-field{display:flex;flex-direction:column;gap:1px;min-width:0}
.dp-field-full{margin-top:var(--space-1)}
.dp-field .field-label{margin:0;font-size:var(--text-xs);color:var(--text-dim)}
.dp-field .input{min-height:32px;padding:5px 9px;font-size:var(--text-sm)}
.dp-objective{min-height:52px;resize:vertical}
.dp-agent-pick{margin:var(--space-1) 0;max-width:100%}
.dp-agents{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-top:var(--space-1)}
.dp-agent-chip{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:3px 6px 3px 4px;border-radius:999px;background:color-mix(in srgb,var(--accent) 6%,var(--surface));border:var(--border-width) solid color-mix(in srgb,var(--accent) 18%,var(--border));font-size:var(--text-xs);line-height:1.2}
.dp-agent-chip .dp-agent-av,.dp-agent-chip .agent-avatar-sm{width:22px;height:22px;font-size:.75rem;flex-shrink:0}
.dp-agent-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:var(--font-weight-medium)}
.dp-agent-unlink{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:0;border-radius:999px;background:transparent;color:var(--text-dim);font-size:1rem;line-height:1;cursor:pointer;flex-shrink:0;transition:color var(--transition),background var(--transition)}
.dp-agent-unlink:hover{color:var(--danger);background:color-mix(in srgb,var(--danger) 10%,transparent)}
.dp-agent-unlink:focus-visible{outline:none;box-shadow:var(--focus-ring)}
.dp-notes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(10.5rem,1fr));gap:var(--space-2);margin-top:var(--space-1);align-items:start}
.dp-note{border:var(--border-width) solid var(--border);border-radius:var(--radius-sm);background:var(--bg);overflow:hidden;transition:border-color .15s,box-shadow .15s}
.dp-note.is-open{grid-column:1/-1;border-color:color-mix(in srgb,var(--accent) 40%,var(--border));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 20%,transparent)}
.dp-note-sum{display:flex;align-items:flex-start;gap:var(--space-1);padding:8px 10px;min-height:4rem}
.dp-note-reorder{display:flex;flex-direction:column;gap:1px;flex-shrink:0}
.dp-note-reorder .btn{padding:0 4px;min-height:20px;font-size:10px;line-height:1}
.dp-note-brief{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.dp-note-sum-title{display:block;font-size:var(--text-sm);font-weight:600;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.dp-note-sum-line{font-size:var(--text-xs);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.dp-note-actions{display:flex;flex-direction:column;align-items:flex-end;gap:2px;flex-shrink:0}
.dp-note-edit{padding:2px 7px;font-size:10px;line-height:1.2}
.dp-note-del{width:18px;height:18px;padding:0;border:0;border-radius:999px;background:transparent;color:var(--text-dim);font-size:.85rem;cursor:pointer;line-height:1}
.dp-note-del:hover{color:var(--danger)}
.dp-note-editor{padding:0 10px 10px;border-top:var(--border-width) solid color-mix(in srgb,var(--border) 55%,transparent)}
.dp-note-editor.hidden{display:none}
.dp-note-title{font-size:var(--text-sm);margin-bottom:var(--space-1)}
.dp-note-body{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}
.dp-note-md{min-height:7rem;font-size:var(--text-sm)}
.dp-note-preview{min-height:7rem;max-height:12rem;overflow:auto;font-size:var(--text-xs);line-height:1.4;padding:0}
.dp-note-preview-inner{padding:var(--space-1) var(--space-2)}
.emb-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));gap:var(--space-2);margin-top:var(--space-2)}
.emb-card{border:var(--border-width) solid var(--border);border-radius:var(--radius-sm);padding:var(--space-2);background:var(--bg)}
.emb-card-wide{grid-column:1/-1}
.emb-card-title{font-size:var(--text-sm);font-weight:600;margin:0 0 var(--space-1)}
.emb-status{font-size:var(--text-sm);padding:8px 10px;border-radius:var(--radius-sm);margin-bottom:var(--space-1)}
.emb-status-ok{background:color-mix(in srgb,var(--success) 12%,var(--bg));color:var(--success)}
.emb-status-warn{background:color-mix(in srgb,var(--warning) 12%,var(--bg));color:var(--warning)}
.emb-token-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1);margin-top:var(--space-1)}
.emb-token{font-size:11px;word-break:break-all;flex:1;min-width:8rem}
.emb-form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(10rem,1fr));gap:var(--space-2)}
.emb-field-full{grid-column:1/-1}
.emb-preview-wrap{margin-top:var(--space-2)}
.emb-preview-stage{position:relative;height:140px;border:var(--border-width) dashed var(--border);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--bg) 90%,#888)}
.emb-preview-panel{position:absolute;width:120px;height:80px;left:12px;top:12px;border:1px solid var(--border);overflow:hidden;font-size:10px}
.emb-preview-head{color:#fff;padding:4px 6px;font-size:10px}
.emb-preview-body{padding:4px 6px}
.emb-preview-bubble{position:absolute;width:40px;height:40px;border:0;border-radius:50%;color:#fff;font-size:16px;cursor:default}
.emb-preview-stage[data-pos*="right"] .emb-preview-bubble{right:12px}
.emb-preview-stage[data-pos*="left"] .emb-preview-bubble{left:12px}
.emb-preview-stage[data-pos*="bottom"] .emb-preview-bubble{bottom:12px}
.emb-preview-stage[data-pos*="top"] .emb-preview-bubble{top:12px}
.emb-preview-bubble[data-shape=pill]{width:auto;height:auto;padding:6px 12px;border-radius:999px;font-size:11px}
.emb-code-block{margin-top:var(--space-2)}
.emb-code-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px;font-size:var(--text-sm)}
.emb-code{background:var(--bg-elevated);border:var(--border-width) solid var(--border);border-radius:var(--radius-sm);padding:10px;font-size:11px;overflow:auto;max-height:8rem;white-space:pre-wrap;word-break:break-all}
.emb-kb-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(10rem,1fr));gap:var(--space-1);margin-top:var(--space-1)}
.emb-kb-note{border:var(--border-width) solid var(--border);border-radius:var(--radius-sm);padding:8px}
.emb-kb-note.is-open{grid-column:1/-1}
.emb-kb-sum{display:flex;flex-wrap:wrap;align-items:flex-start;gap:4px}
.emb-kb-title{font-size:var(--text-sm);font-weight:600;flex:1}
.emb-kb-editor{margin-top:6px;display:flex;flex-direction:column;gap:4px}
.emb-kb-editor.hidden{display:none}
.emb-save-row{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-2);padding-top:var(--space-2);border-top:var(--border-width) solid var(--border)}
.emb-style-block{margin-bottom:var(--space-2)}
.emb-style-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}
.emb-emoji-wrap{margin-top:var(--space-1)}
.emb-icon-upload-row{display:flex;flex-wrap:wrap;gap:var(--space-1);align-items:center}
.emb-icon-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(2.8rem,1fr));gap:6px}
.emb-icon-btn{display:block;width:100%;padding:0;border:var(--border-width) solid var(--border);border-radius:var(--radius-sm);background:var(--bg);cursor:pointer;overflow:hidden}
.emb-icon-btn.on{border-color:var(--accent);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 35%,transparent)}
.emb-icon-tile{display:flex;align-items:center;justify-content:center;aspect-ratio:1;padding:8px;border-radius:calc(var(--radius-sm) - 1px)}
.emb-icon-svg,.emb-icon-emoji{display:flex;align-items:center;justify-content:center;width:100%;height:100%}
.emb-icon-svg svg{display:block;width:22px;height:22px}
.emb-icon-emoji{font-size:20px}
.emb-icon-color-row,.emb-color-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.emb-icon-auto-btn{padding:4px 8px;font-size:10px;border:var(--border-width) solid var(--border);border-radius:var(--radius-sm);background:var(--bg);cursor:pointer}
.emb-icon-auto-btn.on{border-color:var(--accent);color:var(--accent);font-weight:600}
.emb-icon-color-dot,.emb-color-dot{width:22px;height:22px;border-radius:50%;border:2px solid transparent;background:var(--c);cursor:pointer;padding:0}
.emb-icon-color-dot.on,.emb-color-dot.on{border-color:var(--text);box-shadow:0 0 0 2px var(--bg)}
.emb-icon-color-picker,.emb-color-picker{width:32px;height:32px;padding:0;border:var(--border-width) solid var(--border);border-radius:var(--radius-sm);cursor:pointer;background:transparent}
.emb-color-hex{max-width:6.5rem;min-height:32px;font-size:var(--text-xs)}
.emb-preview-head{display:flex;align-items:center;gap:6px;padding:6px 8px;font-size:11px}
.emb-preview-head-ico{width:22px;height:22px;border-radius:6px;color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.emb-preview-head-ico .embed-head-ico,.emb-preview-head-ico .embed-head-emoji{display:flex;width:14px;height:14px;font-size:12px}
.emb-preview-head-ico svg{width:14px;height:14px}
.emb-preview-bubble{display:flex;align-items:center;justify-content:center;gap:6px;color:#fff;border:0;cursor:default}
.emb-preview-bubble .ma-embed-ico,.emb-preview-bubble .embed-head-ico{display:flex;width:22px;height:22px}
.emb-preview-bubble .ma-embed-emoji,.emb-preview-bubble .embed-head-emoji{font-size:20px}
.emb-preview-bubble svg{width:100%;height:100%}
.emb-preview-pill-lbl{font-size:11px;font-weight:600}
.emb-appearance-card{padding:var(--space-2)}
.emb-appearance-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,300px);gap:var(--space-2);align-items:start}
.emb-appearance-form{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}
.emb-live-preview{position:sticky;top:var(--space-2);border:var(--border-width) solid var(--border);border-radius:var(--radius-sm);padding:var(--space-2);background:var(--bg-elevated)}
.emb-preview-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin-bottom:var(--space-1)}
.emb-preview-viewport{min-height:280px;border-radius:var(--radius-sm);overflow:hidden;background:repeating-conic-gradient(color-mix(in srgb,var(--border) 25%,var(--bg)) 0% 25%,var(--bg) 0% 50%) 50%/16px 16px}
.emb-preview-hint{margin:8px 0 0;font-size:10px}
.emb-zone{margin:0}
.emb-zone-title{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin:0 0 6px}
.emb-details{border:var(--border-width) solid var(--border);border-radius:var(--radius-sm);padding:8px 10px;background:var(--bg)}
.emb-details+.emb-details{margin-top:6px}
.emb-details>summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:6px}
.emb-details>summary::-webkit-details-marker{display:none}
.emb-details>summary::before{content:'▸';font-size:10px;color:var(--text-muted);transition:transform .15s}
.emb-details[open]>summary::before{transform:rotate(90deg)}
.emb-details[open]>.emb-zone-grid,.emb-details[open]>.emb-hint{margin-top:8px}
.emb-zone-grid{display:grid;gap:8px}
.emb-zone-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.emb-zone-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.emb-field-compact{display:flex;flex-direction:column;gap:4px;min-width:0}
.emb-field-compact-span{grid-column:1/-1}
.emb-field-full{grid-column:1/-1}
.emb-field-lbl{font-size:10px;font-weight:600;color:var(--text-muted);line-height:1.2}
.emb-mini-color{display:flex;align-items:center;gap:6px}
.emb-mini-auto{padding:3px 7px;font-size:10px;border:var(--border-width) solid var(--border);border-radius:var(--radius-sm);background:var(--bg);cursor:pointer;white-space:nowrap}
.emb-mini-auto.on{border-color:var(--accent);color:var(--accent);font-weight:600}
.emb-mini-picker{width:32px;height:28px;padding:0;border:var(--border-width) solid var(--border);border-radius:var(--radius-sm);cursor:pointer;background:transparent}
.emb-range-wrap{display:flex;align-items:center;gap:8px}
.emb-range{flex:1;min-width:0}
.emb-range-val{font-size:10px;color:var(--text-muted);min-width:2rem}
.seg-sm .seg-btn{padding:4px 8px;font-size:10px}
.input-sm{min-height:30px;padding:4px 8px;font-size:var(--text-xs)}
.emb-mock-stage{position:relative;width:100%;height:100%;min-height:280px}
.emb-mock-stage--bubble{display:flex;align-items:flex-end;justify-content:flex-end;padding:16px}
.emb-mock-stage--open{padding:12px}
.emb-mock-stage[data-pos*="left"].emb-mock-stage--bubble{justify-content:flex-start}
.emb-mock-stage[data-pos*="top"].emb-mock-stage--bubble{align-items:flex-start}
.emb-mock-stage[data-pos*="left"].emb-mock-stage--open .emb-mock-bubble{left:16px;right:auto}
.emb-mock-stage[data-pos*="top"].emb-mock-stage--open .emb-mock-bubble{top:16px;bottom:auto}
.emb-mock-shell{width:100%;max-width:260px;margin:0 auto;height:340px;display:flex;flex-direction:column;border-radius:var(--emb-mock-radius,12px);overflow:hidden;background:var(--emb-mock-panel,#fff);border:var(--emb-mock-panel-border,none);box-shadow:0 10px 36px rgba(0,0,0,.18);color:var(--emb-mock-text,#111)}
.emb-mock-head{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:var(--emb-mock-divider,1px solid #e8e8ec);background:var(--emb-mock-header,#eef2ff)}
.emb-mock-head-main{display:flex;align-items:center;gap:8px;min-width:0}
.emb-mock-badge{width:32px;height:32px;border-radius:8px;background:var(--emb-mock-accent,#6366f1);color:var(--emb-mock-icon,#fff);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.emb-mock-badge .embed-head-ico,.emb-mock-badge .embed-head-emoji,.emb-mock-badge .ma-embed-ico{display:flex;width:18px;height:18px;font-size:14px}
.emb-mock-badge svg{width:18px;height:18px}
.emb-mock-title{display:block;font-size:13px;line-height:1.25;color:var(--emb-mock-text,#111)}
.emb-mock-sub{font-size:11px;color:var(--emb-mock-muted,#555);margin-top:2px}
.emb-mock-msgs{flex:1;padding:10px 12px;background:var(--emb-mock-chat,#fff);overflow:auto}
.emb-mock-msg{max-width:88%;padding:8px 10px;border-radius:12px;font-size:12px;line-height:1.4}
.emb-mock-msg-asst{background:var(--emb-mock-asst,#f1f3f6);color:var(--emb-mock-text,#111);border-bottom-left-radius:4px}
.emb-mock-form{display:flex;align-items:center;gap:6px;padding:8px 10px;border-top:var(--emb-mock-divider,1px solid #e8e8ec);background:var(--emb-mock-input,#fafafa)}
.emb-mock-input{flex:1;font-size:11px;color:var(--emb-mock-muted,#555);padding:8px 10px;border:1px solid var(--emb-mock-border-color,#e8e8ec);border-radius:8px;background:var(--emb-mock-panel,#fff)}
.emb-mock-send{width:32px;height:32px;border-radius:8px;background:var(--emb-mock-accent,#6366f1);color:var(--emb-mock-bubble-icon,#fff);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.emb-mock-send svg{width:16px;height:16px}
.emb-mock-bubble{position:absolute;right:16px;bottom:16px;width:52px;height:52px;border:0;border-radius:50%;display:flex;align-items:center;justify-content:center;gap:6px;box-shadow:0 4px 18px rgba(0,0,0,.22);cursor:default}
.emb-mock-stage--bubble .emb-mock-bubble{position:relative;right:auto;bottom:auto}
.emb-mock-bubble[data-shape=pill]{width:auto;height:auto;padding:10px 16px;border-radius:999px;font-size:12px}
.emb-mock-bubble .ma-embed-ico,.emb-mock-bubble .embed-head-ico{display:flex;width:24px;height:24px}
.emb-mock-bubble .ma-embed-emoji{font-size:22px}
.emb-mock-bubble svg{width:100%;height:100%}
.emb-mock-pill-lbl{font-weight:600;font-size:12px}
.emb-mock-stage--open .emb-mock-bubble{width:44px;height:44px}
@media(max-width:960px){.emb-appearance-layout{grid-template-columns:1fr}.emb-live-preview{position:static}}
@media(max-width:720px){.emb-style-row,.emb-zone-grid-2,.emb-zone-grid-3{grid-template-columns:1fr}}
.dp-doc-list{list-style:none;margin:var(--space-1) 0 0;padding:0;display:flex;flex-direction:column;gap:2px}
.dp-doc-item{display:flex;align-items:center;gap:var(--space-2);padding:4px var(--space-2);border-radius:var(--radius-sm);background:var(--surface-2);font-size:var(--text-xs)}
.dp-doc-item .mono{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}
.dp-doc-del{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text-dim);font-size:1rem;cursor:pointer;flex-shrink:0}
.dp-doc-del:hover{color:var(--danger);background:color-mix(in srgb,var(--danger) 8%,transparent)}
@media(max-width:720px){
  .dp-root{padding:var(--space-4) var(--space-4) var(--space-5)}
  .dp-subnav .seg-btn{min-height:44px;padding:0 var(--space-3)}
  .dp-tab-panel{padding:var(--space-4)}
  .dp-team-card-head{flex-wrap:wrap}
  .dp-team-head-actions{width:100%;justify-content:flex-end}
  .dp-form-grid,.dp-note-body{grid-template-columns:1fr}
  .dp-notes-grid{grid-template-columns:repeat(auto-fill,minmax(9rem,1fr))}
  .dp-list{grid-template-columns:1fr}
  .dp-detail-head{align-items:flex-start}
  .dp-save-hint{margin-left:0;width:100%}
}
@media(min-width:721px){
  .dp-root{padding:var(--space-5) var(--space-6) var(--space-6)}
}
.da-memory-lead{margin:0 0 var(--space-2)}
.da-memory-settings{margin-top:var(--space-2)}
.da-memory-mode-row{display:flex;flex-direction:column;gap:var(--space-1);margin-bottom:var(--space-2)}
.da-memory-mode-seg{align-self:flex-start}
.da-memory-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap-sm)}
.da-memory-manager{margin-top:var(--space-3);padding-top:var(--space-2);border-top:var(--border-width) solid var(--border)}
.da-mem-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--gap-sm);margin-bottom:var(--space-2)}
.da-mem-disc-field{flex:1;min-width:min(100%,12rem);max-width:100%}
.da-mem-disc-field .ui-select{display:flex;width:100%;max-width:100%;min-width:0}
.da-mem-disc-field .ui-select-trigger{width:100%;min-width:0;margin:0;min-height:var(--control-h);box-sizing:border-box}
.da-mem-disc-field .ui-select-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.da-mem-toolbar-actions{display:flex;flex-wrap:wrap;gap:var(--space-1)}
.da-mem-notes{max-height:min(56vh,32rem);overflow:auto;padding-right:2px}
.da-mem-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(10.5rem,1fr));gap:var(--space-2);align-items:start}
.da-mem-card{border:var(--border-width) solid var(--border);border-radius:var(--radius-sm);background:var(--bg);overflow:hidden;transition:border-color .15s,box-shadow .15s}
.da-mem-card.is-open{grid-column:1/-1;border-color:color-mix(in srgb,var(--accent) 40%,var(--border));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 20%,transparent)}
.da-mem-card-sum{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-1);padding:8px 10px;min-height:4.2rem;cursor:default}
.da-mem-card-brief{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.da-mem-card-title{display:block;font-size:var(--text-sm);font-weight:600;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.da-mem-card-line{font-size:var(--text-xs);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.da-mem-card-actions{display:flex;flex-direction:column;align-items:flex-end;gap:2px;flex-shrink:0}
.da-mem-card-by{font-size:10px}
.da-mem-card-edit{padding:2px 7px;font-size:10px;line-height:1.2}
.da-mem-card-del{width:18px;height:18px;padding:0;border:0;border-radius:999px;background:transparent;color:var(--text-dim);font-size:.85rem;cursor:pointer;line-height:1}
.da-mem-card-del:hover{color:var(--danger)}
.da-mem-card-editor{padding:0 10px 10px;display:flex;flex-direction:column;gap:var(--space-1);border-top:var(--border-width) solid color-mix(in srgb,var(--border) 55%,transparent)}
.da-mem-card-editor.hidden{display:none}
.da-mem-note-title,.da-mem-note-subject{font-size:var(--text-sm)}
.da-mem-note-body{display:grid;grid-template-columns:1fr 1fr;gap:var(--gap-sm)}
.da-mem-note-md{min-height:8rem;font-size:var(--text-sm);resize:vertical}
.da-mem-note-preview{min-height:8rem;max-height:12rem;overflow:auto;padding:var(--space-2);background:var(--surface-2);border-radius:var(--radius-sm);font-size:var(--text-sm);line-height:1.45}
.chat-memory-wrap{border-bottom:var(--border-width) solid var(--border);background:var(--surface)}
.chat-memory-wrap.hidden{display:none}
.chat-memory-toggle{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:6px var(--gap-sm);border:0;background:transparent;color:inherit;font:inherit;cursor:pointer;text-align:left}
.chat-memory-toggle:hover{background:var(--surface-2)}
.chat-memory-chevron{width:7px;height:7px;border-right:1.5px solid var(--text-dim);border-bottom:1.5px solid var(--text-dim);transform:rotate(-45deg);transition:transform .15s;flex-shrink:0}
.chat-memory-wrap:not(.is-collapsed) .chat-memory-chevron{transform:rotate(45deg);margin-top:-2px}
.chat-memory-label{font-size:var(--text-sm);font-weight:600}
.chat-memory-badge{font-size:var(--text-xs);padding:1px 7px;border-radius:999px;background:var(--surface-2);color:var(--text-dim);border:var(--border-width) solid var(--border);min-width:1.1rem;text-align:center}
.chat-memory-badge:empty{display:none}
.chat-memory-wrap.is-collapsed .chat-memory-panel{display:none}
.chat-memory-panel{max-height:11rem;overflow:auto;padding:var(--space-1) var(--gap-sm) var(--space-2);border-top:var(--border-width) solid color-mix(in srgb,var(--border) 55%,transparent)}
.mem-panel-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-bottom:6px}
.mem-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(5.5rem,1fr));gap:5px}
.mem-tile{display:flex;flex-direction:column;align-items:stretch;justify-content:space-between;aspect-ratio:1;min-height:0;padding:5px 6px;border:var(--border-width) solid color-mix(in srgb,var(--border) 75%,transparent);border-radius:var(--radius-sm);background:var(--bg);color:inherit;font:inherit;font-size:10px;text-align:left;cursor:pointer;transition:border-color .12s,background .12s,transform .12s}
.mem-tile:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:color-mix(in srgb,var(--accent) 5%,var(--bg));transform:translateY(-1px)}
.mem-tile-title{font-weight:600;font-size:10px;line-height:1.2;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}
.mem-tile-line{font-size:9px;line-height:1.2;color:var(--text-dim);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-top:2px}
.mem-tile-by{align-self:flex-end;font-size:8px;padding:1px 4px;border-radius:999px;background:var(--surface-2);color:var(--text-dim);margin-top:auto}
.mem-update-confirm{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-top:var(--space-2);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);border:var(--border-width) solid color-mix(in srgb,var(--accent) 35%,var(--border));background:color-mix(in srgb,var(--accent) 6%,var(--surface))}
.mem-update-label{font-size:var(--text-sm);font-weight:500}
.pn-update-confirm{display:flex;flex-direction:column;gap:var(--space-1);margin-top:var(--space-2);padding:var(--space-2);border-radius:var(--radius-sm);border:var(--border-width) solid color-mix(in srgb,var(--accent) 30%,var(--border));background:color-mix(in srgb,var(--accent) 5%,var(--surface))}
.pn-update-label{font-size:var(--text-sm);font-weight:600}
.pn-update-sum{margin:0;font-size:var(--text-xs)}
.pn-update-list{margin:0;padding-left:1.1rem;font-size:var(--text-xs)}
.pn-update-btns{display:flex;gap:var(--space-1)}
.da-project-notes-wrap{margin-top:var(--space-2);padding-top:var(--space-2);border-top:var(--border-width) solid color-mix(in srgb,var(--border) 60%,transparent)}
.da-project-notes-hint{margin:var(--space-1) 0 0;font-size:var(--text-xs)}
.da-project-notes-settings{margin-top:var(--space-2)}
.da-agent-mgmt-settings{margin-top:var(--space-2)}
.da-agent-mgmt-actions{display:flex;flex-wrap:wrap;gap:var(--space-3) var(--space-4)}
.da-agent-mgmt-delete-hint{margin-top:var(--space-2);color:var(--text-muted)}
.da-agent-mgmt-delete-row .field-label{max-width:12rem}
.da-pn-confirm-seg{align-self:flex-start}
.da-pn-confirm-seg{align-self:flex-start}
.mem-update-label{font-size:var(--text-sm);font-weight:500}
.mem-empty{margin:0;grid-column:1/-1}
@media(max-width:720px){
  .da-memory-row,.da-mem-note-body{grid-template-columns:1fr}
  .da-mem-grid{grid-template-columns:repeat(auto-fill,minmax(9rem,1fr))}
  .mem-tiles{grid-template-columns:repeat(auto-fill,minmax(4.8rem,1fr))}
  .chat-memory-panel{max-height:9.5rem}
  .da-mem-notes{max-height:42vh}
}
.bad-text{color:var(--danger)}
.conn-soon-grid{display:flex;flex-direction:column;gap:var(--space-2)}
.conn-soon-item{display:flex;align-items:center;justify-content:space-between;gap:var(--gap-sm);padding:var(--space-2) var(--gap-sm);border:var(--border-width) dashed var(--border);border-radius:var(--radius-sm);background:var(--bg);opacity:.85}
.conn-soon-name{font-size:var(--text-sm);color:var(--text-dim)}
.conn-soon-badge{font-size:var(--text-xs);padding:2px 8px;border-radius:999px;background:var(--surface-2);color:var(--text-dim)}
.settings-soon .settings-lead{margin-bottom:var(--gap-sm)}
.settings-info .ok{color:var(--accent)}
.settings-info .bad{color:var(--danger)}
.query-meta.bad{color:var(--danger)}
.settings-info strong{color:var(--text);font-weight:var(--font-weight-medium)}
.logout-btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;margin:0;min-width:min(100%,320px)}
.settings-foot{margin-top:var(--gap);display:flex;justify-content:center}
.db-body{flex:1;display:flex;gap:var(--gap-sm);min-height:0}
.db-table-item{padding:var(--space-2);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-sm);border-bottom:var(--border-width) solid var(--border);transition:background var(--transition),color var(--transition)}
.db-table-item .sub{font-size:var(--text-caption);color:var(--text-dim);font-family:var(--font-mono)}
.db-main{flex:1;display:flex;flex-direction:column;gap:var(--gap-sm);min-width:0;overflow:auto}
.data-table-wrap{overflow:auto;max-height:var(--data-table-max-h)}
.data-table{width:100%;border-collapse:collapse;font-size:var(--text-xs);font-family:var(--font-mono)}
.data-table th,.data-table td{padding:var(--space-2);text-align:left;border-bottom:var(--border-width) solid var(--border);white-space:nowrap;max-width:15rem;overflow:hidden;text-overflow:ellipsis}
.sql-input{width:100%;min-height:5rem;background:var(--bg);border:var(--border-width) solid var(--border);border-radius:var(--radius-sm);padding:var(--panel-pad);color:var(--text);font-size:var(--text-sm);resize:vertical;font-family:var(--font-mono)}
.write-toggle{display:block;font-size:var(--text-xs);color:var(--danger);margin-bottom:var(--space-2)}
.query-meta{font-size:var(--text-xs);color:var(--text-dim);margin:var(--space-2) 0;font-family:var(--font-mono)}
.settings-info{font-size:var(--text-sm);line-height:var(--lh-loose);color:var(--text-dim)}
.settings-block{margin-bottom:var(--gap-sm)}
.settings-density-seg{margin-top:var(--gap-sm)}
.msg-hint{font-size:var(--text-xs);margin-top:var(--space-2);color:var(--text-dim)}
.msg-hint.ok{color:var(--success)}
.msg-hint.bad{color:var(--danger)}
.preview-input{max-width:10rem;margin:0}
.preview-chat{flex-direction:column;align-items:flex-start}
.design-layout{display:grid;grid-template-columns:minmax(0,1fr) min(100%,var(--design-preview-w));gap:var(--space-5);align-items:start;padding:var(--page-pad);max-width:1280px;margin:0 auto;min-width:0}
@media(max-width:860px){.design-layout{grid-template-columns:1fr;padding:var(--space-4)}}
.design-group{margin-bottom:var(--space-4)}
.design-label{font-size:var(--text-sm);color:var(--text-dim);margin-bottom:var(--space-2);font-weight:var(--font-weight-medium)}
.design-field{display:flex;flex-direction:column;gap:var(--space-1);margin-bottom:var(--space-3);min-width:0;position:relative}
.design-field label{font-size:var(--text-sm);color:var(--text-dim);font-weight:var(--font-weight-medium)}
.design-field input[type=text],.design-field input[type=number],.design-field select{width:100%;min-height:var(--control-h);padding:var(--space-2) var(--space-3);border:var(--border-w) solid var(--border);border-radius:var(--radius-el,8px);background:var(--surface);color:var(--text);font:inherit;font-size:var(--text-body);margin:0;-webkit-appearance:none;appearance:none}
.design-field input[type=color]{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.design-color-field{display:flex;flex-direction:column;gap:var(--space-2)}
.design-color-trigger{display:flex;align-items:center;gap:var(--space-2);width:100%;min-height:var(--control-h);padding:var(--space-2) var(--space-3);border:var(--border-w) solid var(--border);border-radius:var(--radius-el,8px);background:var(--surface);color:var(--text);font:inherit;cursor:pointer;text-align:left}
.design-color-trigger:focus-visible{outline:none;box-shadow:var(--focus-ring);border-color:var(--accent)}
.design-color-swatch{width:24px;height:24px;border-radius:var(--radius-el,8px);border:var(--border-width) solid color-mix(in srgb,var(--border) 80%,transparent);flex-shrink:0}
.design-color-hex{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text-dim)}
.design-color-pop{position:absolute;z-index:var(--z-popover,220);min-width:220px;max-width:min(280px,92vw);padding:var(--space-3);border-radius:var(--radius-card,12px);border:var(--border-width) solid var(--border);background:var(--surface);box-shadow:var(--shadow-elev-2)}
.design-color-swatches{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--space-2);margin-bottom:var(--space-2)}
.design-color-swatch-btn{width:100%;aspect-ratio:1;border-radius:var(--radius-el,8px);border:var(--border-width) solid transparent;cursor:pointer;padding:0}
.design-color-swatch-btn.is-on,.design-color-swatch-btn:focus-visible{outline:none;box-shadow:var(--focus-ring);border-color:var(--accent)}
.design-color-hex-row{display:flex;gap:var(--space-2);align-items:center}
.design-color-hex-row input{flex:1;min-width:0}
.design-color-contrast{font-size:var(--text-sm);margin-top:var(--space-2);color:var(--text-dim)}
.design-color-contrast.is-bad{color:var(--error,var(--danger))}
/* Magic Color Picker Premium (Mon style, CRM, agents…) */
.magic-color-pop{position:fixed;z-index:var(--z-popover,220);display:none}
.magic-color-pop.is-fixed{display:block}
.magic-color-pop.mcp-pop{min-width:min(380px,96vw);max-width:min(420px,98vw);padding:0;border-radius:16px;border:1px solid color-mix(in srgb,#f97316 35%,#2a2a30);background:linear-gradient(180deg,#1a1a1f 0%,#121215 100%);box-shadow:0 24px 64px rgba(0,0,0,.55),0 0 0 1px rgba(255,255,255,.04) inset;color:#eceef3;overflow:hidden}
.mcp-premium{display:flex;flex-direction:column;gap:0}
.mcp-toolbar{display:flex;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid rgba(255,255,255,.06);background:rgba(0,0,0,.2);flex-wrap:wrap}
.mcp-mode-seg{display:inline-flex;padding:3px;border-radius:999px;background:#0d0d10;border:1px solid rgba(255,255,255,.08)}
.mcp-mode-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:0;border-radius:999px;background:transparent;color:#9ca3af;font:inherit;font-size:12px;cursor:pointer}
.mcp-mode-btn.is-on{background:#25252b;color:#f3f4f6;box-shadow:0 1px 4px rgba(0,0,0,.35)}
.mcp-mode-ico{font-size:11px;opacity:.85}
.mcp-style-bubbles{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.mcp-style-bubble{width:34px;height:34px;border-radius:50%;border:2px solid transparent;padding:0;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.35);transition:transform .12s ease,border-color .12s ease}
.mcp-style-bubble:hover{transform:scale(1.06)}
.mcp-style-bubble.is-on{border-color:#fff;box-shadow:0 0 0 2px #f97316,0 4px 12px rgba(0,0,0,.4)}
.mcp-style-bubble-rainbow{background:conic-gradient(from 180deg,#3b82f6,#22c55e,#eab308,#ef4444,#8b5cf6,#3b82f6)}
.mcp-tool-btn{width:34px;height:34px;border-radius:50%;border:1px solid rgba(255,255,255,.12);background:#1f1f24;color:#e5e7eb;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-size:15px;padding:0}
.mcp-tool-btn:hover{border-color:rgba(249,115,22,.5);color:#f97316}
.mcp-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 14px 8px}
.mcp-tok-select,.mcp-title-wrap select{flex:1;min-width:0;font-size:13px;font-weight:600;color:#f9fafb;background:#1f1f24;border:1px solid rgba(255,255,255,.12);border-radius:9px;padding:7px 10px;font:inherit}
.mcp-title{font-size:15px;font-weight:600;color:#f9fafb}
.mcp-head-actions{display:flex;align-items:center;gap:6px}
.mcp-close{width:32px;height:32px;border:0;border-radius:8px;background:transparent;color:#9ca3af;font-size:22px;line-height:1;cursor:pointer}
.mcp-close:hover{color:#fff;background:rgba(255,255,255,.06)}
.mcp-tabs{display:flex;gap:4px;padding:0 12px 10px;border-bottom:1px solid rgba(255,255,255,.06)}
.mcp-tab{flex:1;padding:8px 6px;border:0;border-radius:8px;background:transparent;color:#9ca3af;font:inherit;font-size:12px;font-weight:500;cursor:pointer}
.mcp-tab.is-on{background:rgba(249,115,22,.18);color:#fb923c}
.mcp-panels{padding:12px 14px;min-height:220px}
.mcp-panel{display:none}
.mcp-panel.is-on{display:block}
.mcp-sl-wrap{position:relative;width:100%;aspect-ratio:280/160;border-radius:10px;overflow:hidden;touch-action:none;cursor:crosshair;margin-bottom:10px}
.mcp-sl,.magic-color-sl{display:block;width:100%;height:100%}
.mcp-sl-cursor,.magic-color-sl-cursor{position:absolute;width:16px;height:16px;margin:-8px 0 0 -8px;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px rgba(0,0,0,.45);pointer-events:none}
.mcp-hue-wrap,.magic-color-hue-wrap{padding:4px 0 10px}
.mcp-hue,.magic-color-hue{width:100%;height:12px;margin:0;-webkit-appearance:none;appearance:none;border-radius:999px;background:linear-gradient(90deg,#f00,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,#f00)}
.mcp-hue::-webkit-slider-thumb,.magic-color-hue::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px rgba(0,0,0,.3);background:transparent;cursor:pointer}
.mcp-native-label{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:#9ca3af;cursor:pointer}
.mcp-native{width:36px;height:36px;padding:0;border:1px solid rgba(255,255,255,.12);border-radius:8px;background:transparent;cursor:pointer}
.mcp-section-label{font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#6b7280;margin:8px 0 8px}
.mcp-palette-grid,.mcp-fav-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}
.mcp-palette-swatch{aspect-ratio:1;border-radius:10px;border:2px solid transparent;padding:0;cursor:pointer;min-height:36px}
.mcp-palette-swatch.is-on{border-color:#f97316;box-shadow:0 0 0 1px #f97316}
.mcp-fav-empty{grid-column:1/-1;font-size:12px;color:#6b7280;margin:0}
.mcp-fav-hint{font-size:11px;color:#4b5563;margin:6px 0 0}
.mcp-grad-preview{height:72px;border-radius:10px;border:1px solid rgba(255,255,255,.08);margin-bottom:12px}
.mcp-grad-angle-row{display:flex;align-items:center;gap:10px;margin-bottom:10px;font-size:12px;color:#9ca3af}
.mcp-grad-angle{flex:1;height:6px;-webkit-appearance:none;appearance:none;border-radius:999px;background:rgba(255,255,255,.12)}
.mcp-grad-angle-val{min-width:36px;text-align:right;color:#e5e7eb;font-variant-numeric:tabular-nums}
.mcp-grad-bar-wrap{position:relative;height:28px;margin-bottom:10px}
.mcp-grad-bar{height:100%;border-radius:8px;border:1px solid rgba(255,255,255,.1)}
.mcp-grad-stops{position:absolute;inset:0;pointer-events:none}
.mcp-grad-stop-handle{position:absolute;top:50%;width:18px;height:18px;margin:-9px 0 0 -9px;border-radius:50%;border:2px solid #fff;box-shadow:0 2px 6px rgba(0,0,0,.4);pointer-events:auto;cursor:pointer;padding:0}
.mcp-grad-stop-handle.is-on{box-shadow:0 0 0 2px #f97316,0 2px 6px rgba(0,0,0,.4)}
.mcp-grad-actions{display:flex;gap:8px;margin-bottom:12px}
.mcp-grad-add,.mcp-grad-remove{padding:6px 10px;border-radius:8px;border:1px solid rgba(255,255,255,.1);background:#1f1f24;color:#d1d5db;font:inherit;font-size:12px;cursor:pointer}
.mcp-grad-presets{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.mcp-grad-preset{height:36px;border-radius:8px;border:1px solid rgba(255,255,255,.08);padding:0;cursor:pointer}
.mcp-match-preview{height:56px;border-radius:10px;margin-bottom:12px;border:1px solid rgba(255,255,255,.08)}
.mcp-match-modes{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.mcp-match-mode{padding:6px 11px;border-radius:999px;border:1px solid rgba(255,255,255,.1);background:#1f1f24;color:#9ca3af;font:inherit;font-size:11px;cursor:pointer}
.mcp-match-mode.is-on{background:linear-gradient(135deg,#f97316,#ea580c);border-color:transparent;color:#fff}
.mcp-match-harmonies{display:flex;gap:8px;margin-bottom:10px;flex-wrap:wrap}
.mcp-harm-chip{flex:1;min-width:72px;height:48px;border-radius:10px;border:1px solid rgba(255,255,255,.1);padding:0;cursor:pointer;position:relative;overflow:hidden}
.mcp-harm-chip span{position:absolute;left:0;right:0;bottom:4px;font-family:var(--font-mono,monospace);font-size:9px;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.7);text-align:center}
.mcp-harm-chip.is-base{box-shadow:0 0 0 2px #f97316}
.mcp-style-bubbles-host .paldot{width:34px;height:34px}
.mcp-style-bubbles-host .paldot.bleu{background:linear-gradient(135deg,#3b82f6,#22d3ee)}
.mcp-style-bubbles-host .paldot.feu{background:linear-gradient(135deg,#f0451c,#facc15)}
.mcp-style-bubbles-host .paldot.foret{background:linear-gradient(135deg,#047857,#a3e635)}
.mcp-style-bubbles-host .paldot.multi{background:linear-gradient(135deg,#8b5cf6,#ec4899 45%,#f59e0b 75%,#06b6d4)}
.mcp-match-row{display:flex;justify-content:space-between;gap:8px;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.05);font-size:12px;color:#9ca3af}
.mcp-match-row.is-ok strong{color:#4ade80}
.mcp-match-row.is-bad strong{color:#f87171}
.mcp-foot{padding:12px 14px 14px;border-top:1px solid rgba(255,255,255,.06);background:rgba(0,0,0,.15)}
.mcp-foot-color{display:flex;align-items:center;gap:8px;margin-bottom:10px}
.mcp-foot-chip{width:40px;height:40px;border-radius:10px;border:1px solid rgba(255,255,255,.12);flex-shrink:0}
.mcp-hex{flex:1;min-width:0;height:40px;padding:0 12px;border-radius:10px;border:1px solid rgba(255,255,255,.1);background:#0f0f12;color:#f3f4f6;font:inherit;font-size:14px}
.mcp-contrast-badge{min-width:40px;padding:4px 8px;border-radius:999px;font-size:12px;font-weight:600;text-align:center;background:#374151;color:#d1d5db}
.mcp-contrast-badge.is-ok{background:rgba(34,197,94,.2);color:#4ade80}
.mcp-contrast-badge.is-warn{background:rgba(234,179,8,.2);color:#facc15}
.mcp-contrast-badge.is-bad{background:rgba(239,68,68,.2);color:#f87171}
.mcp-fav-star{width:40px;height:40px;border-radius:10px;border:1px solid rgba(255,255,255,.1);background:#1f1f24;color:#9ca3af;font-size:18px;cursor:pointer;padding:0}
.mcp-fav-star:hover{color:#fbbf24;border-color:rgba(251,191,36,.4)}
.mcp-foot-actions{display:flex;gap:8px}
.mcp-reset,.mcp-apply{flex:1;min-height:42px;border-radius:10px;font:inherit;font-size:13px;font-weight:600;cursor:pointer}
.mcp-reset{border:1px solid rgba(255,255,255,.1);background:#1f1f24;color:#d1d5db}
.mcp-apply{border:0;background:linear-gradient(135deg,#f97316,#ea580c);color:#fff;box-shadow:0 4px 14px rgba(249,115,22,.35)}
.mcp-style-bubbles-host .mcp-toolbar{padding:0;border:0;background:transparent}
.mcp-style-bubbles-host{margin-bottom:var(--space-3)}
.magic-color-backdrop{position:fixed;inset:0;z-index:calc(var(--z-popover,220) - 1);background:rgba(0,0,0,.55);opacity:0;transition:opacity var(--transition);pointer-events:auto}
.magic-color-backdrop.is-visible{opacity:1}
.magic-color-pop.is-mobile-sheet{left:0!important;right:0!important;bottom:0!important;top:auto!important;width:100%;max-width:none;border-radius:16px 16px 0 0;padding-bottom:calc(var(--space-4) + env(safe-area-inset-bottom,0px))}
.magic-color-inline{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}
.magic-color-preview{width:32px;height:32px;border-radius:var(--radius-sm);border:var(--border-width) solid var(--border);background:var(--pick,#6366f1);cursor:pointer;padding:0;flex-shrink:0}
.magic-color-presets{display:flex;flex-wrap:wrap;gap:6px}
.magic-color-dot{width:22px;height:22px;border-radius:50%;border:2px solid transparent;background:var(--c);cursor:pointer;padding:0}
.magic-color-dot.is-on{border-color:var(--accent);box-shadow:var(--focus-ring)}
.magic-color-inline-hex{max-width:7.5rem}
.design-magic-color-pop{z-index:calc(var(--z-popover,220) + 2)}
@media(max-width:640px){.mcp-palette-grid,.mcp-fav-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.mcp-grad-presets{grid-template-columns:repeat(2,minmax(0,1fr))}}
.design-field-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3);min-width:0}
@media(max-width:560px){.design-field-row{grid-template-columns:1fr}}
.design-derived{font-size:var(--text-caption);color:var(--text-dim);margin-top:var(--space-1)}
.design-warn{font-size:var(--text-caption);color:var(--warning);margin-top:var(--space-1)}
.design-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-3)}
.design-actions-divider{flex-basis:100%;height:0;border-top:var(--border-width) solid var(--border-subtle,var(--border));margin:var(--space-1) 0}
.design-presets{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-3)}
.design-preset-btn{font-size:var(--text-label)}
.design-preview{position:sticky;top:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-card,12px);border:var(--border-width) solid var(--border);background:var(--surface);box-shadow:var(--shadow-card);min-width:0}
.preview-nav{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-pill,999px);background:var(--accent-soft);color:var(--accent);margin-bottom:0;font-size:var(--text-body);font-weight:var(--weight-medium)}
.design-form{display:flex;flex-direction:column;gap:var(--space-2)}
.design-fold{border:var(--border-width) solid var(--border-subtle,var(--border));border-radius:var(--radius-sm);background:color-mix(in srgb,var(--surface) 96%,var(--surface-2));overflow:hidden}
.design-fold+.design-fold{margin-top:0}
.design-fold-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--space-2) var(--space-3);border:0;background:transparent;color:var(--text);font:inherit;font-size:var(--text-sm);font-weight:var(--font-weight-medium);cursor:pointer;text-align:left;transition:background var(--motion-fast,var(--transition))}
.design-fold-toggle:hover,.design-fold-toggle:focus-visible{background:color-mix(in srgb,var(--surface-2) 88%,transparent);outline:none;box-shadow:var(--focus-ring)}
.design-fold-title{flex:1;min-width:0}
.design-fold-chevron{width:8px;height:8px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);transition:transform var(--motion-fast,var(--transition));flex-shrink:0;margin-right:2px;opacity:.7}
.design-fold.is-open .design-fold-chevron{transform:rotate(-135deg);margin-top:2px}
.design-fold-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--transition)}
.design-fold.is-open .design-fold-body{grid-template-rows:1fr}
.design-fold-body>.design-fold-inner{overflow:hidden;padding:0 var(--space-3)}
.design-fold.is-open .design-fold-body>.design-fold-inner{padding:0 var(--space-3) var(--space-3)}
.design-fold-body .design-group{margin-bottom:var(--space-3)}
.design-fold-body .design-group:last-child{margin-bottom:0}
.design-fold-body .design-field-row,.design-fold-body .design-field{margin-bottom:var(--space-2)}
.design-actions{margin-top:var(--space-3);padding-top:var(--space-3);border-top:var(--border-width) solid var(--border-subtle,var(--border))}
.preview-nav .nav-ico{display:flex}
.preview-card{border:var(--border-w) solid var(--border);border-radius:var(--radius);padding:var(--panel-pad);background:var(--surface)}
.preview-card h3{font-family:var(--font-display);font-size:var(--text-h3);margin:0 0 var(--space-2)}
.preview-card p{margin:0;font-size:var(--text-body);color:var(--text-dim)}
.preview-table{width:100%;border-collapse:collapse;font-size:var(--text-label);margin-top:var(--space-2)}
.preview-table th,.preview-table td{padding:var(--space-2) var(--space-3);border-bottom:var(--border-w) solid var(--border);text-align:left}
.preview-row{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center;margin-top:var(--space-2)}
.preview-bubble{max-width:85%;padding:var(--space-2) var(--space-3);border-radius:var(--radius);background:var(--surface-2);font-size:var(--text-body)}
.preview-bubble.user{align-self:flex-end;background:var(--accent-soft);color:var(--accent-text)}
.drop-overlay{position:fixed;inset:0;background:color-mix(in srgb,var(--accent) 15%,transparent);display:none;align-items:center;justify-content:center;font-size:var(--text-h3);z-index:100;border:var(--border-w) dashed var(--accent);color:var(--text)}
.drop-overlay.is-visible{display:flex}
.skip-link{position:absolute;left:var(--space-3);top:calc(-100px - var(--space-4));z-index:500;padding:var(--space-2) var(--space-3);background:var(--accent);color:var(--accent-text);border-radius:var(--radius-sm);text-decoration:none;font-size:var(--text-sm)}
.skip-link:focus{top:var(--space-3);outline:none;box-shadow:var(--focus-ring)}
.app-backdrop{display:none;position:fixed;inset:0;background:var(--modal-overlay);z-index:var(--z-backdrop,150)}
body.sidebar-open .app-backdrop,body.conv-open .app-backdrop{display:block}
.mobile-nav-btn{display:none}
.modal-input{margin:0}
.nav-section-toggle:focus-visible{outline:none;box-shadow:var(--focus-ring)}
.sql-input:focus-visible,.ftext:focus-visible,.write-toggle input:focus-visible,.chk input:focus-visible{outline:none;box-shadow:var(--focus-ring);border-color:var(--accent)}
.chart-bar-val{display:block;font-size:var(--text-caption);color:var(--text-dim);margin-top:var(--space-1)}
.kb-list{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-2)}
.kb-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2);border:var(--border-width) solid var(--border);border-radius:var(--radius-sm);font-size:var(--text-sm)}
.kb-item .sub{font-size:var(--text-caption);color:var(--text-dim);margin-right:auto}
.badge{display:inline-block;padding:var(--space-1) var(--space-2);border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:var(--text-caption);margin:var(--space-1);font-weight:var(--font-weight-medium)}
.btn-sm{min-height:var(--control-h);padding:0 var(--space-3);font-size:var(--text-xs)}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
.nav-section{margin-top:var(--space-4);padding-top:var(--space-3);border-top:var(--border-width) solid var(--border-subtle,var(--border))}
.sidebar-nav > .nav-section:first-child{margin-top:0;padding-top:0;border-top:0}
.sidebar-nav > .nav-item[data-page="settings"]{margin-top:var(--space-4);padding-top:var(--space-2);border-top:var(--border-width) solid var(--border-subtle,var(--border))}
.nav-section-inner{margin-top:var(--space-2);padding-top:var(--space-2);border-top:var(--border-width) solid var(--border-subtle,var(--border))}
.nav-section-label{font-size:var(--text-caption);color:var(--text-dim);letter-spacing:.02em;padding:0 var(--space-3) var(--space-2)}
.nav-section-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--space-2) var(--space-3);border:0;background:transparent;color:var(--text-dim);font-size:var(--text-caption);letter-spacing:.02em;cursor:pointer;font-family:inherit}
.nav-section-toggle:hover{color:var(--text);background:var(--surface-2);border-radius:var(--radius-sm)}
.nav-section-chevron{display:inline-block;width:8px;height:8px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);transition:transform var(--transition);margin-right:4px}
.nav-section-toggle.open .nav-section-chevron{transform:rotate(-135deg)}
.nav-owner-body{overflow:hidden;transition:max-height var(--transition)}
#nav-owner.collapsed-section .nav-owner-body{display:none}
.asst-subnav .nav-item,.bo-subnav .nav-item{padding-left:var(--space-3)}
.page-assistant,.asst-page{display:flex;flex-direction:column;min-height:0;flex:1}
.asst-settings-layout{display:grid;grid-template-columns:1fr 1fr;gap:var(--gap);align-items:start}
@media(max-width:900px){.asst-settings-layout{grid-template-columns:1fr}}
.page-backoffice{display:flex;flex-direction:column;gap:var(--gap);min-height:0}
.bo-page{display:flex;flex-direction:column;gap:var(--gap);min-height:0;flex:1}
.bo-toolbar{display:flex;flex-wrap:wrap;gap:var(--gap-sm);align-items:center}
.bo-toolbar .input{max-width:220px;margin:0}
.bo-filter-bar{display:flex;flex-wrap:wrap;gap:var(--gap-sm);align-items:center;flex:1 1 320px}
.bo-search{min-width:180px;flex:1 1 180px;max-width:260px;min-height:34px}
.bo-filter-select{min-width:150px;max-width:200px}
.bo-perm-tools{margin-bottom:var(--space-2)}
.badge-ok{background:color-mix(in srgb,var(--accent,#2563eb) 12%,transparent);color:var(--accent,#2563eb)}
.badge-muted{opacity:.55}
.perm-group.hidden,.chk.hidden{display:none}
.toolbar .input{margin:0}
.bo-split{display:grid;grid-template-columns:minmax(200px,240px) 1fr;gap:var(--space-3);min-height:0;flex:1;align-items:stretch}
@media(max-width:900px){.bo-split{grid-template-columns:1fr}}
.bo-list{overflow:auto;max-height:var(--bo-list-max-h, calc(100vh - 160px))}
.bo-list-item{padding:8px 10px;border-bottom:var(--border-width) solid var(--border);cursor:pointer;font-size:var(--text-sm);transition:background var(--transition);line-height:1.25;min-height:44px;display:flex;flex-direction:column;justify-content:center;gap:2px}
.bo-list-item .sub{font-size:var(--text-caption);color:var(--text-dim);margin-top:0;opacity:.9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bo-list-item .bo-list-item-top{display:flex;align-items:center;gap:6px;min-width:0}
.bo-list-item .bo-list-item-top strong{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bo-list-item:hover{background:var(--surface-2)}
.bo-list-item.on{background:var(--accent-soft);color:var(--accent)}
.bo-editor{overflow:auto;max-height:var(--bo-list-max-h, calc(100vh - 160px));padding:var(--space-3)}
.bo-editor>.card-title{margin:0 0 var(--space-2);font-size:var(--text-h3)}
.bo-editor>.input,.bo-editor>textarea.input{margin:0 0 var(--space-2);min-height:34px}
.bo-editor>textarea.input{min-height:64px;resize:vertical}
.perm-matrix{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px 14px;margin:var(--space-2) 0;align-items:start}
.perm-group{margin:0;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);min-height:100%;display:flex;flex-direction:column;gap:4px}
.perm-group-title{font-size:10px;font-weight:700;color:var(--accent);margin:0 0 2px;text-transform:uppercase;letter-spacing:.04em;line-height:1.2}
.perm-group-hint{margin:0 0 var(--space-2);font-size:var(--text-xs);color:var(--text-dim);line-height:1.45}
.chk{display:flex;align-items:center;gap:6px;font-size:var(--text-xs);color:var(--text-dim);cursor:pointer;min-height:22px;line-height:1.2}
.chk input{flex:none;width:14px;height:14px;margin:0}
.bo-role-tabs{display:flex;gap:0;border-bottom:var(--border-width) solid var(--border);margin:var(--space-2) 0 var(--space-2)}
.bo-role-tab{appearance:none;background:none;border:0;border-bottom:2px solid transparent;padding:7px 12px;font-size:var(--text-sm);color:var(--text-dim);cursor:pointer;font-weight:600;min-height:34px}
.bo-role-tab:hover{color:var(--text)}
.bo-role-tab.on{color:var(--accent);border-bottom-color:var(--accent)}
.bo-role-pane{min-height:0}
.bo-menu-intro{font-size:var(--text-xs);color:var(--text-dim);line-height:1.4;margin:0 0 var(--space-2)}
.bo-menu-enable{margin:0 0 var(--space-2);font-size:var(--text-sm);color:var(--text);min-height:28px}
.bo-menu-list{display:flex;flex-direction:column;gap:6px}
.bo-menu-group{border:var(--border-width) solid var(--border);border-radius:var(--radius-sm);padding:6px 8px;background:var(--surface)}
.bo-menu-group.is-off{opacity:.55}
.bo-menu-group-head{display:flex;align-items:center;gap:8px;min-height:28px}
.bo-menu-group-name{font-size:var(--text-sm);color:var(--text);font-weight:600;flex:1;min-width:0;margin:0}
.bo-menu-order{display:inline-flex;gap:2px;flex:none}
.bo-menu-order .btn{padding:0;width:26px;height:26px;min-height:26px;line-height:1;display:inline-flex;align-items:center;justify-content:center}
.bo-menu-order .btn:disabled{opacity:.35;cursor:default}
.bo-menu-items{display:flex;flex-wrap:wrap;gap:4px 10px;margin:6px 0 0;padding:6px 0 0;border-top:var(--border-width) dashed var(--border)}
.bo-menu-items .chk{min-height:22px}
.bo-menu-labels-toggle{appearance:none;background:none;border:0;padding:0;margin:6px 0 0;font-size:var(--text-xs);color:var(--accent);cursor:pointer;font-weight:600;min-height:22px;text-align:left}
.bo-menu-labels-toggle:hover{text-decoration:underline}
.bo-menu-labels{margin:6px 0 0;padding:6px 0 0;border-top:var(--border-width) dashed var(--border);display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:6px 10px}
.bo-menu-labels.hidden{display:none}
.bo-menu-labels-title{grid-column:1/-1;font-size:10px;font-weight:700;color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em;margin:0}
.bo-menu-label-field{display:flex;flex-direction:column;gap:2px;min-width:0}
.bo-menu-label-field-name{font-size:10px;color:var(--text-dim);line-height:1.2}
.bo-menu-label-input{min-height:30px;height:30px;padding:0 .5rem;font-size:var(--text-xs)}
.bo-editor .toolbar{margin-top:var(--space-3);gap:var(--space-2);align-items:center}
.badge-sys{background:var(--surface-2);color:var(--text-dim);border:var(--border-width) solid var(--border)}
.badge-active{background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent)}
.badge-suspended{background:var(--danger-soft);color:var(--danger);border:var(--border-width) solid var(--danger-border)}
.badge-row,.action-row{display:inline-flex;flex-wrap:wrap;gap:var(--space-1);align-items:center}
.bo-users-wrap .data-table.bo-users-table{table-layout:fixed;width:100%;font-size:12px;border-collapse:separate;border-spacing:0}
.bo-users-wrap .data-table.bo-users-table th,.bo-users-wrap .data-table.bo-users-table td{padding:0 10px;vertical-align:middle;line-height:1.3;max-width:none;height:3.25rem;max-height:3.25rem;overflow:hidden}
.bo-users-wrap .data-table.bo-users-table tbody tr:has(.bo-roles-cell.is-editing) td{height:auto;max-height:none;overflow:visible}
.bo-users-wrap .data-table.bo-users-table th{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-dim);background:var(--surface-2);position:sticky;top:0;z-index:1}
.bo-users-wrap .data-table.bo-users-table th:nth-child(1),.bo-users-wrap .data-table.bo-users-table td:nth-child(1){width:14%}
.bo-users-wrap .data-table.bo-users-table th:nth-child(2),.bo-users-wrap .data-table.bo-users-table td:nth-child(2){width:24%}
.bo-users-wrap .data-table.bo-users-table th:nth-child(3),.bo-users-wrap .data-table.bo-users-table td:nth-child(3){width:9%}
.bo-users-wrap .data-table.bo-users-table th:nth-child(4),.bo-users-wrap .data-table.bo-users-table td:nth-child(4){width:8%}
.bo-users-wrap .data-table.bo-users-table th:nth-child(5),.bo-users-wrap .data-table.bo-users-table td:nth-child(5){width:12%}
.bo-users-wrap .data-table.bo-users-table th:nth-child(6),.bo-users-wrap .data-table.bo-users-table td:nth-child(6){width:12%}
.bo-users-wrap .data-table.bo-users-table th:nth-child(7),.bo-users-wrap .data-table.bo-users-table td:nth-child(7){width:11%;text-align:right}
.bo-users-wrap .data-table.bo-users-table td:nth-child(2){white-space:nowrap}
.bo-users-wrap .data-table.bo-users-table td:nth-child(3),.bo-users-wrap .data-table.bo-users-table td:nth-child(5),.bo-users-wrap .data-table.bo-users-table td:nth-child(6){white-space:nowrap;font-variant-numeric:tabular-nums;font-size:11px;color:var(--text-dim)}
.bo-users-wrap .data-table.bo-users-table .badge{margin:0}
.bo-users-toolbar{margin-bottom:10px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--border) 78%,transparent);border-radius:var(--radius-md);background:color-mix(in srgb,var(--surface-2) 28%,var(--surface))}
.bo-users-pager-wrap{margin-top:8px}
.bo-mini-chip{display:inline-flex;align-items:center;justify-content:center;gap:2px;border:1px solid var(--border);border-radius:6px;background:color-mix(in srgb,var(--surface-2) 75%,var(--surface));color:var(--text);font-size:10px;line-height:1.2;padding:2px 7px;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis;font-weight:500}
.bo-mini-chip-role{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));background:color-mix(in srgb,var(--accent) 10%,var(--surface));color:color-mix(in srgb,var(--accent) 85%,var(--text))}
.bo-mini-chip-status{text-transform:capitalize;font-size:10px;padding:2px 8px;min-width:4.5rem;text-align:center}
.bo-mini-chip-status.badge-active{border-color:color-mix(in srgb,var(--accent) 40%,var(--border));background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--accent)}
.bo-mini-chip-status.badge-suspended{border-color:color-mix(in srgb,var(--danger) 40%,var(--border));background:color-mix(in srgb,var(--danger) 10%,var(--surface));color:var(--danger)}
.bo-mini-chip-storage{font-variant-numeric:tabular-nums;cursor:default;min-width:3rem;justify-content:center}
.bo-mini-chip.warn{border-color:color-mix(in srgb,var(--warning,#d97706) 45%,var(--border));color:var(--warning,#d97706)}
.bo-mini-chip-muted{opacity:.45;cursor:default}
.bo-mini-chip.bo-roles-more{border-style:dashed;opacity:.85;font-variant-numeric:tabular-nums}
.bo-mini-chips{display:flex;flex-wrap:nowrap;gap:4px;align-items:center;min-width:0;overflow:hidden;max-width:100%}
.bo-mini-action{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;min-width:28px;padding:0;border:1px solid var(--border);border-radius:6px;background:color-mix(in srgb,var(--surface-2) 70%,var(--surface));color:var(--text-muted);cursor:pointer;flex-shrink:0;font-size:10px;font-weight:700;line-height:1;transition:border-color var(--transition),background var(--transition),color var(--transition)}
.bo-mini-action:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--border));color:var(--text);background:color-mix(in srgb,var(--accent) 6%,var(--surface))}
.bo-mini-action svg{width:14px;height:14px;display:block}
.bo-mini-action-danger:hover{border-color:color-mix(in srgb,var(--danger) 45%,var(--border));color:var(--danger);background:color-mix(in srgb,var(--danger) 8%,var(--surface))}
.bo-mini-action-warn:hover{border-color:color-mix(in srgb,var(--warning,#d97706) 45%,var(--border));color:var(--warning,#d97706)}
.bo-mini-action-ok:hover{border-color:color-mix(in srgb,var(--ok,#16a34a) 45%,var(--border));color:var(--ok,#16a34a)}
.bo-action-chips{display:inline-flex;flex-wrap:nowrap;gap:4px;align-items:center;justify-content:flex-end}
.bo-user-cell{display:flex;flex-direction:column;justify-content:center;gap:2px;min-width:0;line-height:1.2;max-width:100%;height:100%}
.bo-user-pseudo{font-weight:600;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bo-user-name{font-size:10px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-height:1em}
.bo-roles-cell{display:flex;flex-wrap:nowrap;align-items:center;gap:6px;min-width:0;max-width:100%;height:100%}
.bo-users-wrap .data-table.bo-users-table tbody tr.bo-users-row:hover td{background:color-mix(in srgb,var(--accent) 4%,var(--surface))}
.bo-users-wrap .data-table.bo-users-table tbody tr.bo-users-row:nth-child(even) td{background:color-mix(in srgb,var(--surface-2) 35%,var(--surface))}
.bo-users-wrap .data-table.bo-users-table tbody tr.bo-users-row:hover:nth-child(even) td{background:color-mix(in srgb,var(--accent) 5%,var(--surface))}
.bo-roles-editor{display:flex;flex-wrap:wrap;gap:2px;align-items:center;flex:1 1 auto;min-width:0}
.bo-mini-chip-toggle{cursor:pointer;font:inherit;font-family:var(--font-mono);font-size:8px;padding:1px 4px}
.bo-mini-chip-toggle.on{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));background:color-mix(in srgb,var(--accent) 18%,var(--surface));color:var(--accent);opacity:1}
.bo-mini-chip-toggle:not(.on){opacity:.4}
.bo-roles-editor-actions{display:inline-flex;gap:2px;flex-shrink:0;align-self:center}
.confirm-pw{display:flex;gap:var(--space-2);align-items:center;margin:var(--space-3) 0}
.confirm-pw .input{margin:0;flex:1;font-family:var(--font-mono);font-size:var(--text-sm)}
.confirm-note{font-size:var(--text-xs);color:var(--text-dim);margin:var(--space-2) 0 var(--space-3);line-height:var(--lh-loose)}
.pager{display:flex;justify-content:space-between;align-items:center;margin-top:var(--space-2);font-size:var(--text-xs);color:var(--text-dim)}
.pager-btns{display:flex;gap:var(--space-2)}
.content-mobile-head{display:none;align-items:center;gap:var(--gap-sm);padding:var(--space-2) var(--page-pad);border-bottom:var(--border-width) solid var(--border);flex-shrink:0;background:var(--surface)}
.modal{position:fixed;inset:0;background:var(--modal-overlay);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal,200);padding:var(--space-4)}
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.modal{backdrop-filter:none;-webkit-backdrop-filter:none}}
.modal.hidden{display:none!important}
.modal-box{width:min(480px,96vw);max-height:90vh;overflow:auto;box-shadow:var(--shadow-elev-3,var(--shadow-modal))}
.modal-title{font-family:var(--font-display);font-size:var(--text-h3);font-weight:var(--font-weight-medium);margin:0 0 var(--space-3);line-height:var(--lh-tight)}
.modal-body{font-size:var(--text-body);color:var(--text-dim);line-height:var(--lh-loose)}
.modal-body p{margin:0}
.modal-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--gap-sm);margin-top:var(--space-4)}
.toast-root{position:fixed;bottom:calc(var(--space-4) + env(safe-area-inset-bottom,0px));right:var(--space-4);z-index:var(--z-toast,300);display:flex;flex-direction:column;gap:var(--space-2);pointer-events:none;max-width:min(360px,90vw)}
.toast{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--surface);border:var(--border-width) solid var(--border);box-shadow:var(--shadow-modal);font-size:var(--text-sm);opacity:0;transform:translateY(var(--space-2));transition:opacity var(--transition),transform var(--transition);pointer-events:auto}
.toast.is-visible{opacity:1;transform:translateY(0)}
.toast-ok{border-color:var(--success)}
.toast-err{border-color:var(--danger);color:var(--danger)}
.data-table-wrap.card{padding:0;overflow:auto;max-height:calc(100vh - 240px)}
.data-table-wrap.card .data-table th{background:var(--surface-2)}
@media(hover:none){.chat-attach-dl{opacity:1}}
@media(max-width:768px){
  .sidebar{position:fixed;left:0;top:0;bottom:0;z-index:200;transform:translateX(-100%);transition:transform var(--transition);max-width:min(88vw,var(--sidebar))}
  body.sidebar-open .sidebar{transform:translateX(0)}
  body.sidebar-open{overflow:hidden}
  .mobile-nav-btn,.content-mobile-head{display:flex}
  .content-mobile-head .page-title{font-family:var(--font-display);font-size:var(--text-md);font-weight:var(--font-weight-medium)}
  .page-agent,.asst-page.page-agent{flex-direction:column}
  .agent-side{position:fixed;left:0;top:0;bottom:0;z-index:180;width:min(88vw,var(--conv-panel-w));max-width:min(88vw,var(--conv-panel-w));transform:translateX(-100%);transition:transform var(--transition);box-shadow:var(--shadow-modal)}
  body.conv-open .agent-side{transform:translateX(0)}
  body.conv-open{overflow:hidden}
  .chat-mobile-bar{display:flex}
  .chat-bar{gap:4px}
  .chat-bar .chat-mic-btn,.chat-bar .attach{min-width:36px;padding-inline:8px}
  .chat-send,.chat-bar .btn-accent{min-width:auto;padding-inline:12px;font-size:var(--text-sm)}
  .mic-level-viz{display:none!important}
  .chat-attach-dl{opacity:1}
  .chat-lightbox{padding:max(1rem,env(safe-area-inset-top,0px)) max(1rem,env(safe-area-inset-right,0px)) max(1rem,env(safe-area-inset-bottom,0px)) max(1rem,env(safe-area-inset-left,0px))}
  .chat-lightbox-close{top:max(1rem,env(safe-area-inset-top,0px));right:max(1rem,env(safe-area-inset-right,0px))}
  .chat-lightbox-dl{top:max(1rem,env(safe-area-inset-top,0px));left:max(1rem,env(safe-area-inset-left,0px))}
  .om-grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:var(--space-2)}
  .om-toolbar{flex-wrap:wrap}
  .om-search{flex:1 1 100%;max-width:none}
  .om-detail{width:calc(100vw - 1rem);max-height:calc(100dvh - 1rem);padding:var(--space-3)}
  .storage-body{flex-direction:column}
  .page-storage .storage-body.fm-body{grid-template-columns:1fr}
  .page-storage .storage-tree-panel.fm-browser{max-height:40vh}
  .db-body{flex-direction:column}
  .db-tables{width:100%;min-width:0;max-height:35vh}
  .design-layout{grid-template-columns:1fr}
  body.collapsed .sidebar{width:min(88vw,var(--sidebar));min-width:0}
}

/* CRM Contacts */
.page-crm{max-width:min(1280px,100%);--radius-md:var(--radius);--crm-r:var(--radius-sm);--crm-r-box:var(--radius)}
.crm-eyebrow{margin:0 0 4px;font-size:11px;font-weight:var(--font-weight-medium);letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim)}
.crm-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--gap);flex-wrap:wrap;margin-bottom:clamp(10px,1.8vw,16px)}
.crm-head-actions{display:flex;align-items:center;gap:var(--gap-sm);flex-wrap:wrap}
.crm-toolbar-bar{margin-bottom:10px;padding:10px 12px;border:var(--border-width) solid color-mix(in srgb,var(--border) 72%,transparent);border-radius:var(--radius-md);background:color-mix(in srgb,var(--surface-2) 28%,var(--surface));box-shadow:0 1px 0 color-mix(in srgb,var(--text) 3%,transparent)}
.crm-search-wrap{position:relative;display:flex;align-items:center;flex:1 1 240px;min-width:180px;max-width:420px;margin:0}
.crm-search-wrap .crm-search-ico{position:absolute;left:11px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;color:var(--text-dim);pointer-events:none;z-index:1}
.crm-search-wrap .crm-search-ico svg{width:16px;height:16px;display:block}
.crm-search-wrap .crm-search{padding-left:36px;padding-right:10px;margin:0;width:100%;min-height:var(--control-h);border-radius:999px;background:var(--surface);border-color:color-mix(in srgb,var(--border) 82%,transparent);-webkit-appearance:none;appearance:none}
.crm-search-wrap .crm-search:focus{border-color:color-mix(in srgb,var(--accent) 42%,var(--border));box-shadow:var(--focus-ring)}
.crm-search-wrap .crm-search::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none;height:14px;width:14px;background:linear-gradient(45deg,transparent 43%,var(--text-dim) 43%,var(--text-dim) 57%,transparent 57%),linear-gradient(-45deg,transparent 43%,var(--text-dim) 43%,var(--text-dim) 57%,transparent 57%);cursor:pointer;opacity:.55}
.crm-toolbar .icon-btn{width:36px;height:36px;min-width:36px;border-radius:999px;border:var(--border-width) solid color-mix(in srgb,var(--border) 82%,transparent);background:var(--surface);transition:border-color .15s ease,background .15s ease,color .15s ease,box-shadow .15s ease}
.crm-toolbar .icon-btn:hover,.crm-toolbar .icon-btn:focus-visible{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 30%,var(--border));outline:none;box-shadow:var(--focus-ring)}
.crm-io-modal{width:min(820px,94vw);max-height:min(90vh,920px);display:flex;flex-direction:column;padding:0;border-radius:var(--radius-md);overflow:hidden;border:var(--border-width) solid color-mix(in srgb,var(--border) 72%,transparent);box-shadow:var(--shadow-modal,0 24px 64px color-mix(in srgb,var(--text) 18%,transparent))}
.modal-box.crm-io-modal{overflow:hidden;width:min(820px,94vw)}
.crm-io-modal-wide{width:min(960px,96vw)}
.modal-box.crm-io-modal-wide{width:min(960px,96vw)}
.crm-io-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--gap);padding:18px 18px 14px;border-bottom:var(--border-width) solid color-mix(in srgb,var(--border) 55%,transparent);background:color-mix(in srgb,var(--surface-2) 22%,var(--surface))}
.crm-io-head-text{min-width:0;flex:1}
.crm-io-eyebrow{display:block;margin:0 0 6px;font-size:10px;font-weight:var(--font-weight-medium);letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim)}
.crm-io-head .modal-title{margin:0;font-size:clamp(1.15rem,2.2vw,1.35rem);font-weight:var(--font-weight-medium);letter-spacing:-.02em;line-height:1.2}
.crm-io-head-tools{display:flex;align-items:center;gap:6px;flex-shrink:0}
.crm-io-close{width:34px;height:34px;min-width:34px;border-radius:999px}
.crm-io-lead{margin:6px 0 0;font-size:.9em;color:var(--text-dim);line-height:1.45;max-width:52ch}
.crm-io-template{flex-shrink:0;white-space:nowrap}
.crm-io-body{flex:1;overflow:auto;padding:18px;min-height:0;background:var(--surface)}
.crm-io-foot{padding:12px 18px;border-top:var(--border-width) solid color-mix(in srgb,var(--border) 55%,transparent);gap:var(--gap-sm);background:color-mix(in srgb,var(--surface-2) 18%,var(--surface))}
.crm-io-hub{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px}
.crm-io-card{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:18px 16px;border:var(--border-width) solid color-mix(in srgb,var(--border) 70%,transparent);border-radius:var(--radius-md);background:color-mix(in srgb,var(--surface-2) 30%,var(--surface));cursor:pointer;text-align:left;font:inherit;color:inherit;transition:border-color var(--motion-fast,var(--transition)),background var(--motion-fast,var(--transition)),box-shadow var(--motion-fast,var(--transition)),transform .12s ease}
.crm-io-card:hover,.crm-io-card:focus-visible{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:color-mix(in srgb,var(--accent-soft,var(--surface-2)) 55%,var(--surface));outline:none;box-shadow:var(--focus-ring);transform:translateY(-1px)}
.crm-io-card-ico-wrap{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:14px;background:color-mix(in srgb,var(--accent) 12%,var(--surface));border:var(--border-width) solid color-mix(in srgb,var(--accent) 22%,var(--border));color:var(--accent)}
.crm-io-card-ico-wrap svg{width:22px;height:22px}
.crm-io-card-title{font-weight:600;font-size:1.02em}
.crm-io-card-hint{font-size:.85em;color:var(--text-dim);line-height:1.45}
.crm-io-template-block{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:var(--radius-md);border:var(--border-width) solid color-mix(in srgb,var(--accent) 18%,var(--border));background:color-mix(in srgb,var(--accent) 5%,var(--surface))}
.crm-io-template-ico{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:12px;background:color-mix(in srgb,var(--accent) 14%,var(--surface));color:var(--accent);font-size:14px;font-weight:700;flex-shrink:0}
.crm-io-template-text{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}
.crm-io-fmt-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--gap-sm)}
.crm-io-fmt-card{display:flex;flex-direction:column;gap:4px;padding:14px 16px;border:var(--border-width) solid color-mix(in srgb,var(--border) 70%,transparent);border-radius:var(--radius-sm);cursor:pointer;transition:border-color var(--motion-fast,var(--transition)),background var(--motion-fast,var(--transition))}
.crm-io-fmt-card:hover,.crm-io-fmt-card.is-selected{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:color-mix(in srgb,var(--accent-soft,var(--surface-2)) 45%,var(--surface))}
.crm-io-fmt-label{font-weight:600;font-size:.95em}
.crm-io-fmt-hint{font-size:.82em;color:var(--text-dim)}
.crm-io-export-note{margin-top:var(--gap-sm)}
.crm-imp-drop{display:flex;flex-direction:column;align-items:center;gap:10px;padding:52px 24px;border:2px dashed color-mix(in srgb,var(--border) 70%,transparent);border-radius:var(--radius-md);cursor:pointer;background:color-mix(in srgb,var(--surface-2) 24%,var(--surface));transition:border-color var(--motion-fast,var(--transition)),background var(--motion-fast,var(--transition))}
.crm-imp-drop:hover,.crm-imp-drop.is-dragover{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:color-mix(in srgb,var(--accent-soft,var(--surface-2)) 40%,var(--surface))}
.crm-imp-drop-ico-wrap{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:16px;background:color-mix(in srgb,var(--accent) 10%,var(--surface));border:var(--border-width) solid color-mix(in srgb,var(--accent) 20%,var(--border));color:var(--accent)}
.crm-imp-drop-ico-wrap svg{width:24px;height:24px}
.crm-imp-drop-title{font-weight:600;font-size:1.05em}

/* ——— Modales CRM partagées (Import/Export + Prospection) ——— */
#app-modal-root.modal:has(.crm-io-modal),#app-modal-root.modal:has(.crm-prosp-modal){padding:clamp(8px,2vw,20px);align-items:center}
.modal-box.crm-io-modal,.modal-box.crm-prosp-modal{display:flex;flex-direction:column;padding:0;max-height:min(90vh,920px);overflow:hidden;border-radius:var(--radius-md);border:var(--border-width) solid color-mix(in srgb,var(--border) 72%,transparent);box-shadow:var(--shadow-modal,0 24px 64px color-mix(in srgb,var(--text) 18%,transparent));background:var(--surface)}
.modal-box.crm-prosp-modal{width:min(920px,96vw);max-width:min(920px,96vw)}
.modal-box.crm-prosp-modal.is-premium{border-color:color-mix(in srgb,var(--accent) 14%,var(--border));box-shadow:0 28px 80px color-mix(in srgb,var(--text) 16%,transparent),0 0 0 1px color-mix(in srgb,var(--accent) 8%,transparent)}
.crm-io-foot,.crm-prosp-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px;padding:12px 18px;border-top:var(--border-width) solid color-mix(in srgb,var(--border) 55%,transparent);background:color-mix(in srgb,var(--surface-2) 18%,var(--surface))}
.crm-io-foot .btn,.crm-prosp-foot .btn{min-height:36px}
.crm-io-close,.crm-prosp-close-x{width:34px;height:34px;min-width:34px;border-radius:999px;flex-shrink:0}

/* Prospection IA — premium quick view */
.crm-prosp-eyebrow{display:block;margin:0 0 6px;font-size:10px;font-weight:var(--font-weight-medium);letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim)}
.crm-prosp-head-row{display:flex;align-items:flex-start;gap:10px}
.crm-prosp-head-text{flex:1;min-width:0}
.crm-prosp-head .modal-title{margin:0;line-height:1.2}
.crm-prosp-lead{margin:6px 0 0;font-size:.9em;color:var(--text-dim);line-height:1.45;max-width:62ch}
.crm-prosp-settings-btn,.crm-prosp-back{width:34px;height:34px;min-width:34px;border-radius:999px;flex-shrink:0;border:var(--border-width) solid color-mix(in srgb,var(--border) 82%,transparent);background:var(--surface)}
.crm-prosp-pane{display:flex;flex-direction:column;min-height:0;flex:1}
.crm-prosp-controls{display:flex;flex-direction:column}
.crm-prosp-search-wrap{position:relative;display:flex;align-items:center;width:100%}
.crm-prosp-search-ico{position:absolute;top:50%;transform:translateY(-50%);display:inline-flex;pointer-events:none}
.crm-prosp-search-ico svg{width:16px;height:16px;display:block}
.crm-prosp-search{width:100%;margin:0;border:var(--border-width) solid color-mix(in srgb,var(--border) 82%,transparent);color:var(--text);font:inherit;-webkit-appearance:none;appearance:none}
.crm-prosp-search:focus{outline:none;border-color:color-mix(in srgb,var(--accent) 42%,var(--border));box-shadow:var(--focus-ring)}
.crm-prosp-inline{display:grid;gap:8px;align-items:center}
.crm-prosp-zone-input,.crm-prosp-scope-select{margin:0}
.crm-prosp-action-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.crm-prosp-durations{margin:0;flex:1 1 auto;min-width:0}
.crm-prosp-durations .seg-btn{display:inline-flex;align-items:center;gap:5px;min-height:36px;padding:0 10px;font-size:12px}
.crm-prosp-dur-ico{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px}
.crm-prosp-dur-ico svg{width:14px;height:14px;display:block}
.crm-prosp-run{display:inline-flex;align-items:center;gap:6px;border-radius:999px;flex-shrink:0}
.crm-prosp-run-ico{display:inline-flex;align-items:center;justify-content:center}
.crm-prosp-run-ico svg{width:16px;height:16px;display:block}
.crm-prosp-foot-stat{margin:0;font-size:12px;color:var(--text-dim);flex:1 1 auto;min-width:0}
.crm-prosp-foot-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px;margin-left:auto}
.crm-prosp-status{margin:10px 0 0;padding:10px 12px;border-radius:var(--radius-sm);font-size:var(--text-sm);line-height:1.45;background:color-mix(in srgb,var(--surface-2) 50%,var(--surface));border:var(--border-width) solid color-mix(in srgb,var(--border) 70%,transparent)}
.crm-prosp-status.is-running{border-color:color-mix(in srgb,var(--accent) 28%,var(--border));background:color-mix(in srgb,var(--accent) 6%,var(--surface))}
.crm-prosp-status.is-done{border-color:color-mix(in srgb,#22c55e 30%,var(--border));background:color-mix(in srgb,#22c55e 6%,var(--surface))}
.crm-prosp-status.is-error{border-color:color-mix(in srgb,var(--danger) 35%,var(--border));background:color-mix(in srgb,var(--danger) 8%,var(--surface))}
.crm-prosp-progress-bar{height:6px;border-radius:999px;background:color-mix(in srgb,var(--border) 60%,transparent);overflow:hidden;margin-top:8px}
.crm-prosp-progress-bar span{display:block;height:100%;background:var(--accent);transition:width .3s}
.crm-prosp-warnings{margin:6px 0 0;padding-left:1.2em;font-size:var(--text-xs);color:var(--warning,#E9A23B)}
.crm-prosp-section-title{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim)}
.crm-prosp-bulk{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 10px;padding:8px 10px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--surface-2) 45%,var(--surface));border:var(--border-width) solid color-mix(in srgb,var(--border) 65%,transparent)}
.crm-prosp-card{border:var(--border-width) solid color-mix(in srgb,var(--border) 72%,transparent)}
.crm-prosp-card-top{display:flex;align-items:flex-start;gap:10px}
.crm-prosp-avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:color-mix(in srgb,var(--accent) 14%,var(--surface));color:var(--accent);font-weight:700;flex-shrink:0}
.crm-prosp-card-main{flex:1;min-width:0}
.crm-prosp-card-title{margin:0;font-weight:var(--font-weight-medium)}
.crm-prosp-badges{display:flex;flex-wrap:wrap}
.crm-prosp-badge{display:inline-flex;flex-direction:column;gap:1px;background:color-mix(in srgb,var(--surface-2) 60%,var(--surface));border:var(--border-width) solid color-mix(in srgb,var(--border) 70%,transparent);font-size:10px;max-width:100%}
.crm-prosp-badge-lbl{color:var(--text-dim);font-size:9px;text-transform:uppercase;letter-spacing:.04em}
.crm-prosp-badge-val{color:var(--text);font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.crm-prosp-badge.is-empty .crm-prosp-badge-val{opacity:.45}
.crm-prosp-badge-link{text-decoration:none;color:inherit}
.crm-prosp-empty{margin:0;font-size:var(--text-sm);color:var(--text-dim);line-height:1.45;text-align:center}
.crm-prosp-details{margin-top:8px;font-size:12px}
.crm-prosp-details-body{margin-top:6px;color:var(--text-dim);line-height:1.45}
.crm-prosp-head{padding:20px 20px 16px;border-bottom:var(--border-width) solid color-mix(in srgb,var(--border) 55%,transparent);background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 7%,var(--surface)) 0%,color-mix(in srgb,var(--surface-2) 18%,var(--surface)) 100%)}
.crm-prosp-head .modal-title{font-family:var(--font-serif,ui-serif,Georgia,"Times New Roman",serif);font-size:clamp(1.35rem,2.4vw,1.55rem);font-weight:600;letter-spacing:-.025em}
.crm-prosp-mode-chip{display:inline-flex;align-items:center;gap:6px;margin:10px 0 0;padding:4px 10px;border-radius:999px;font-size:11px;color:var(--text-dim);background:color-mix(in srgb,var(--surface) 72%,var(--accent));border:var(--border-width) solid color-mix(in srgb,var(--border) 70%,transparent)}
.crm-prosp-pane-main{max-height:min(calc(90vh - 120px),820px)}
.crm-prosp-controls{position:sticky;top:0;z-index:2;padding:16px 20px 14px;gap:12px;background:color-mix(in srgb,var(--surface) 92%,transparent);backdrop-filter:blur(10px);border-bottom:var(--border-width) solid color-mix(in srgb,var(--border) 50%,transparent)}
.crm-prosp-search{min-height:46px;padding:0 14px 0 42px;border-radius:14px;font-size:15px;background:color-mix(in srgb,var(--surface-2) 28%,var(--surface));box-shadow:inset 0 1px 0 color-mix(in srgb,var(--text) 4%,transparent)}
.crm-prosp-search-ico{left:14px;color:color-mix(in srgb,var(--accent) 55%,var(--text-dim))}
.crm-prosp-inline{grid-template-columns:1fr minmax(150px,210px)}
.crm-prosp-zone-input,.crm-prosp-scope-select{min-height:42px;border-radius:12px}
.crm-prosp-durations .seg-btn{border-radius:999px;transition:transform .15s ease,background .15s ease,border-color .15s ease}
.crm-prosp-durations .seg-btn.on{transform:translateY(-1px);box-shadow:0 4px 14px color-mix(in srgb,var(--accent) 18%,transparent)}
.crm-prosp-run{min-height:42px;padding:0 18px;font-weight:600;box-shadow:0 8px 22px color-mix(in srgb,var(--accent) 22%,transparent)}
#crm-prosp-status{padding:0 20px}
.crm-prosp-scroll{flex:1;min-height:140px;max-height:min(48vh,520px);overflow:auto;padding:14px 20px 18px;scroll-behavior:smooth}
.crm-prosp-results{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:10px}
.crm-prosp-card{padding:14px 14px 12px;border-radius:14px;background:linear-gradient(180deg,color-mix(in srgb,var(--surface-2) 34%,var(--surface)) 0%,color-mix(in srgb,var(--surface-2) 16%,var(--surface)) 100%);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}
.crm-prosp-card:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 24%,var(--border));box-shadow:0 10px 28px color-mix(in srgb,var(--text) 8%,transparent)}
.crm-prosp-card.is-added{border-style:dashed;opacity:.82}
.crm-prosp-avatar{width:40px;height:40px;font-size:13px;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 18%,transparent)}
.crm-prosp-card-title{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:14px;line-height:1.25}
.crm-prosp-qchip{display:inline-flex;align-items:center;padding:2px 7px;border-radius:999px;font-size:10px;font-weight:600;letter-spacing:.02em;vertical-align:middle}
.crm-prosp-qchip.is-full{color:#166534;background:color-mix(in srgb,#22c55e 16%,var(--surface));border:1px solid color-mix(in srgb,#22c55e 28%,transparent)}
.crm-prosp-qchip.is-partial{color:#92400e;background:color-mix(in srgb,#f59e0b 14%,var(--surface));border:1px solid color-mix(in srgb,#f59e0b 26%,transparent)}
.crm-prosp-qchip.is-site{color:var(--text-dim);background:color-mix(in srgb,var(--surface-2) 55%,var(--surface));border:1px solid color-mix(in srgb,var(--border) 75%,transparent)}
.crm-prosp-badges{gap:5px;margin-top:8px}
.crm-prosp-badge{padding:5px 8px;border-radius:10px;min-width:0}
.crm-prosp-badge-val{max-width:140px}
.crm-prosp-check{display:inline-flex;align-items:flex-start;padding-top:2px;cursor:pointer}
.crm-prosp-check input{width:16px;height:16px;margin:0;accent-color:var(--accent)}
.crm-prosp-added-badge{display:inline-flex;align-items:center;gap:4px;padding:6px 10px;border-radius:999px;font-size:11px;font-weight:600;color:#166534;background:color-mix(in srgb,#22c55e 10%,var(--surface));border:1px solid color-mix(in srgb,#22c55e 24%,transparent);white-space:nowrap}
.crm-prosp-add-btn{white-space:nowrap;border-radius:999px}
.crm-prosp-agent-plan{margin:8px 20px 0;padding:10px 12px;border-radius:12px;font-size:12px;line-height:1.45;color:var(--text-dim);background:color-mix(in srgb,var(--accent) 5%,var(--surface));border:var(--border-width) solid color-mix(in srgb,var(--accent) 16%,var(--border))}
.crm-prosp-agent-plan p{margin:0 0 6px}
.crm-prosp-agent-plan p:last-child{margin-bottom:0}
.crm-prosp-section-title{display:flex;align-items:center;gap:6px;margin:0 0 10px}
.crm-prosp-empty-wrap{padding:36px 16px;border:1px dashed color-mix(in srgb,var(--border) 80%,transparent);border-radius:16px;background:color-mix(in srgb,var(--surface-2) 24%,var(--surface))}
.crm-prosp-foot{padding:12px 20px}
.crm-prosp-select-all-label{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:var(--text-dim);cursor:pointer}
.crm-prosp-pane-settings .crm-prosp-settings-body{padding:16px 18px;display:flex;flex-direction:column;gap:14px;overflow:auto;max-height:min(52vh,480px)}
.crm-prosp-set-block{border:0;padding:0;margin:0}
.crm-prosp-set-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-dim)}
.crm-prosp-set-desc{margin:6px 0 0;font-size:12px;color:var(--text-dim);line-height:1.4}
.crm-prosp-set-field{display:flex;flex-direction:column;gap:6px}
.crm-prosp-set-field .input{margin:0;min-height:40px}
.crm-prosp-set-hint{margin:0;font-size:12px;color:var(--warning,#E9A23B)}
.crm-prosp-foot-settings{margin-top:auto}
.crm-imp-status{margin:8px 0;font-size:.9em;color:var(--text-dim)}
.crm-imp-parse-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--gap-sm);margin-bottom:var(--gap-sm)}
.crm-imp-map-wrap{max-height:min(320px,40vh);overflow:auto;border:var(--border-width) solid color-mix(in srgb,var(--border) 60%,transparent);border-radius:var(--radius-sm)}
.crm-imp-map-table{width:100%;border-collapse:collapse;font-size:.9em}
.crm-imp-map-table th,.crm-imp-map-table td{padding:10px 12px;text-align:left;border-bottom:var(--border-width) solid color-mix(in srgb,var(--border) 50%,transparent)}
.crm-imp-map-table th{font-weight:600;color:var(--text-dim);position:sticky;top:0;background:var(--surface);z-index:1}
.crm-imp-col-src{font-weight:500;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.crm-imp-col-prev{color:var(--text-dim);font-size:.85em;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.crm-imp-preview-details{margin-top:var(--gap-sm);font-size:.88em}
.crm-imp-preview-scroll{max-height:160px;overflow:auto;margin-top:6px}
.crm-imp-preview-table{width:100%;border-collapse:collapse;font-size:.85em}
.crm-imp-preview-table td{padding:6px 10px;border-bottom:var(--border-width) solid color-mix(in srgb,var(--border) 40%,transparent)}
.crm-imp-progress-wrap{margin:24px 0}
.crm-imp-progress-bar{height:10px;border-radius:5px;background:color-mix(in srgb,var(--surface-2) 80%,transparent);overflow:hidden}
.crm-imp-progress-fill{height:100%;background:var(--accent);border-radius:5px;transition:width .4s ease}
.crm-imp-summary{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,1fr);gap:var(--gap-sm)}
.crm-imp-summary li{display:flex;flex-direction:column;align-items:center;gap:4px;padding:16px 12px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--surface-2) 60%,transparent)}
.crm-imp-stat-val{font-size:1.5em;font-weight:700;line-height:1}
.crm-imp-stat-lbl{font-size:.82em;color:var(--text-dim)}
.crm-imp-error{color:var(--danger);margin:0 0 var(--gap-sm)}
.crm-head-left h1{margin:0;font-family:var(--font-display);font-size:var(--text-h1);font-weight:var(--font-weight-medium);line-height:var(--lh-tight);letter-spacing:0}
.crm-subtitle{margin:4px 0 0;font-size:var(--text-sm);color:var(--text-dim);line-height:1.4}
.crm-subtitle{margin:4px 0 0;color:var(--text-dim);font-size:var(--text-sm)}
.crm-toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:0}
.crm-toolbar-actions{display:flex;align-items:center;gap:6px;margin-left:auto;flex-shrink:0}
.crm-add-btn{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding-inline:14px}
.crm-add-btn .crm-add-ico{display:none}
.crm-adv-toggle{display:inline-flex;align-items:center;gap:6px;border-radius:999px}
.crm-adv-toggle .crm-filter-ico{display:none}
.crm-search{flex:1 1 240px;min-width:180px;max-width:420px;margin:0}
.crm-sort{width:auto;min-width:168px;max-width:220px;margin:0;border-radius:999px;background:var(--surface)}
.crm-toolbar .btn-sm{margin:0;min-height:var(--control-h);border-radius:999px}
#crm-business-ops-btn{border-radius:999px;background:var(--surface)}
.crm-pinned{display:flex;flex-wrap:nowrap;align-items:center;gap:6px;margin-bottom:var(--space-2);overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding-bottom:2px}
.crm-pinned::-webkit-scrollbar{display:none}
.crm-pinned-label{font-size:var(--text-xs);color:var(--text-dim);margin-right:4px;flex-shrink:0}
.crm-chip{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:var(--crm-r);padding:5px 12px;font-size:var(--text-xs);cursor:pointer;transition:border-color .15s,color .15s}
.crm-chip.on,.crm-chip:hover{border-color:var(--accent);color:var(--accent)}
.crm-chip-ghost{opacity:.8}
.crm-quick-filters{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);padding:var(--space-1) 0;min-height:40px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.crm-quick-filters::-webkit-scrollbar{display:none}
.crm-qchip{border:var(--border-width) solid var(--border);background:var(--surface);color:var(--text-dim);border-radius:999px;padding:var(--space-2) var(--space-3);min-height:36px;font-size:var(--text-sm);cursor:pointer;white-space:nowrap;flex-shrink:0;transition:border-color var(--motion-fast,var(--transition)),color var(--motion-fast,var(--transition)),background var(--motion-fast,var(--transition))}
.crm-qchip:focus-visible{outline:none;box-shadow:var(--focus-ring)}
.crm-qchip.on,.crm-qchip:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));color:var(--text);background:color-mix(in srgb,var(--accent) 6%,var(--surface))}
.crm-qchip-all{font-weight:var(--font-weight-medium)}
.crm-qchip-stage{background:color-mix(in srgb,var(--crm-stage-color,var(--accent)) 10%,var(--surface));border-color:color-mix(in srgb,var(--crm-stage-color,var(--accent)) 24%,var(--border));color:var(--crm-stage-color,var(--accent))}
.crm-qchip-stage.on{background:color-mix(in srgb,var(--crm-stage-color,var(--accent)) 16%,var(--surface));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--crm-stage-color,var(--accent)) 28%,transparent)}
.crm-qchip-skeleton{pointer-events:none;border-color:transparent;background:var(--surface-2);color:transparent;min-width:72px;animation:nav-sk-shimmer 1.2s ease-in-out infinite;background-size:200% 100%}
.crm-qchip-sep{width:1px;height:22px;background:var(--border);margin:0 2px;flex-shrink:0;align-self:center}
.crm-list-tabs{display:flex;gap:6px;padding:0 0 var(--space-3);flex-wrap:wrap;align-items:center}
.crm-list-tab{appearance:none;border:var(--border-width) solid var(--border);background:var(--surface);color:var(--text-dim);border-radius:999px;padding:7px 16px;font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:background var(--transition),color var(--transition),border-color var(--transition),box-shadow var(--transition);display:inline-flex;align-items:center;gap:6px;line-height:1.2}
.crm-list-tab:hover{color:var(--text);border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}
.crm-list-tab.on{background:color-mix(in srgb,var(--accent) 14%,var(--surface));border-color:color-mix(in srgb,var(--accent) 45%,var(--border));color:var(--text);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 20%,transparent)}
.crm-tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:1.35rem;height:1.35rem;padding:0 6px;border-radius:999px;font-size:11px;font-weight:700;font-variant-numeric:tabular-nums;background:color-mix(in srgb,var(--accent) 18%,var(--surface));border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border));color:color-mix(in srgb,var(--accent) 88%,var(--text))}
.crm-list-tab.on .crm-tab-count{background:color-mix(in srgb,var(--accent) 28%,var(--surface));border-color:color-mix(in srgb,var(--accent) 50%,var(--border))}
.page-crm.is-clients-view{max-width:min(1440px,100%)}
.page-crm.is-clients-view .crm-list-pane{width:100%}
.page-crm.is-clients-view .crm-clients-filters-bar{width:100%}
.page-crm.is-woo-detail{max-width:min(1440px,100%)}
.page-crm.is-woo-detail .crm-contact-root{max-width:none}
.page-crm.is-clients-view .crm-list-tabs{padding-bottom:8px}
.page-crm.is-clients-view .crm-list-meta{margin-bottom:6px}
.crm-clients-filters-bar.crm-clients-filters-row{flex-direction:row;flex-wrap:nowrap;gap:6px 10px;padding:7px 12px;margin-bottom:10px;overflow-x:auto;-webkit-overflow-scrolling:touch}
.crm-clients-filters-row .crm-woo-filter-label{min-width:0;flex-shrink:0;font-size:9px;letter-spacing:.07em;margin:0}
.crm-clients-filters-row .crm-clients-filter-chips{display:inline-flex;flex-wrap:nowrap;align-items:center;gap:4px;min-width:0;flex-shrink:0}
.crm-clients-filters-row .crm-clients-filter-sep{width:1px;height:18px;margin:0 2px;flex-shrink:0}
.crm-clients-filters-row .crm-qchip{padding:2px 8px;min-height:24px;font-size:10px;line-height:1.2}
.crm-clients-filters-inline{flex-direction:row;flex-wrap:wrap;align-items:center;gap:10px 14px;padding:10px 12px;margin-bottom:10px}
.crm-clients-filter-sep{width:1px;height:24px;background:color-mix(in srgb,var(--border) 85%,transparent);flex-shrink:0}
.crm-clients-filters-inline .crm-clients-filter-group{flex:1 1 auto;min-width:0;margin:0}
.crm-clients-filters-bar{display:flex;flex-direction:column;gap:10px;margin-bottom:var(--space-3);padding:12px 14px;border:var(--border-width) solid color-mix(in srgb,var(--border) 80%,transparent);border-radius:var(--radius-md);background:color-mix(in srgb,var(--surface-2) 32%,var(--surface));box-shadow:0 1px 0 color-mix(in srgb,var(--text) 2%,transparent)}
.crm-clients-filter-group{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0}
.crm-clients-filter-chips{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-width:0}
.crm-woo-filters{margin-bottom:0;padding:0;border:none;background:transparent}
.crm-woo-filters.hidden{display:none!important}
.crm-woo-filter-label{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);font-weight:700;min-width:72px;flex-shrink:0}
.crm-qchip-inactive.on{background:color-mix(in srgb,var(--warn,#E9A23B) 14%,var(--surface));border-color:color-mix(in srgb,var(--warn,#E9A23B) 35%,var(--border))}
.crm-woo-hero-badges{display:flex;flex-wrap:wrap;gap:4px;margin:4px 0 6px}
.crm-woo-chart-wrap{padding:var(--space-2) var(--space-3) var(--space-3)}
.crm-woo-pill{display:inline-flex;align-items:center;padding:1px 7px;border-radius:999px;font-size:11px;line-height:1.4;border:var(--border-width) solid var(--border);background:color-mix(in srgb,var(--surface-2) 70%,transparent);color:var(--text-dim);white-space:nowrap}
.crm-woo-pill.ok{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 30%,var(--border));background:var(--accent-soft)}
.crm-woo-pill.warn{color:var(--warning,#d97706);border-color:color-mix(in srgb,var(--warning,#d97706) 30%,var(--border))}
.crm-woo-pill.bad{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 30%,var(--border));background:var(--danger-soft)}
.crm-woo-status-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2);padding:var(--space-2) var(--space-3)}
.crm-woo-stat{display:flex;flex-direction:column;gap:2px;padding:var(--space-2);border-radius:var(--radius-el,8px);background:var(--surface-2);border:1px solid var(--border);font-size:var(--text-sm)}
.crm-woo-stat span{color:var(--text-dim);font-size:11px}
.crm-woo-stat strong{font-size:var(--text-md)}
.crm-woo-orders-foot{padding:var(--space-2) var(--space-3);border-top:1px solid var(--border);display:flex;justify-content:center}
.crm-woo-section-head{display:flex;justify-content:space-between;align-items:center;gap:var(--space-2)}
.crm-qchip-woo{background:color-mix(in srgb,var(--crm-woo-color,#6366f1) 10%,var(--surface));border-color:color-mix(in srgb,var(--crm-woo-color,#6366f1) 28%,var(--border));color:color-mix(in srgb,var(--crm-woo-color,#6366f1) 88%,var(--text))}
.crm-qchip-woo.on{background:color-mix(in srgb,var(--crm-woo-color,#6366f1) 18%,var(--surface));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--crm-woo-color,#6366f1) 32%,transparent)}
.crm-qchip-woo-all{font-weight:var(--font-weight-medium)}
.crm-woo-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:500;background:color-mix(in srgb,var(--crm-woo-color,#6366f1) 14%,var(--surface));border:1px solid color-mix(in srgb,var(--crm-woo-color,#6366f1) 30%,var(--border));color:color-mix(in srgb,var(--crm-woo-color,#6366f1) 90%,var(--text));white-space:nowrap;line-height:1.25}
.crm-woo-badge-sm{padding:1px 6px;font-size:10px;font-weight:600;line-height:1.2}
.crm-catalog-badges{display:inline-flex;flex-wrap:nowrap;gap:3px;align-items:center;margin-left:6px;vertical-align:middle}
.crm-name-block{display:inline-flex;flex-wrap:wrap;align-items:center;gap:4px;min-width:0;max-width:100%}
.crm-woo-table-head,.crm-woo-row{display:grid;grid-template-columns:minmax(200px,2.2fr) minmax(220px,2.4fr) minmax(118px,1fr) minmax(108px,.85fr) 48px 76px 96px;gap:10px 14px;align-items:center;padding:0 16px;height:var(--crm-row-h,48px);max-height:var(--crm-row-h,48px);border-bottom:1px solid color-mix(in srgb,var(--border) 75%,transparent);box-sizing:border-box;width:100%}
.crm-table.crm-woo-table{min-width:1180px;width:max(100%,1180px)}
.crm-woo-table-head{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);font-weight:600;background:color-mix(in srgb,var(--surface-2) 80%,var(--surface));white-space:nowrap;position:sticky;top:0;z-index:2}
.crm-woo-table-head>span{overflow:visible;text-overflow:clip;min-width:0}
.crm-woo-row{width:100%;text-align:left;background:var(--surface);border:0;cursor:pointer;color:inherit;font:inherit;transition:background .12s}
.crm-woo-row:hover{background:color-mix(in srgb,var(--accent) 4%,var(--surface))}
.crm-woo-row:last-child{border-bottom:0}
.crm-woo-col-ch{display:flex;flex-wrap:wrap;gap:3px;align-items:center;min-width:0}
.crm-woo-col-name,.crm-woo-col-email,.crm-woo-col-phone{min-width:0}
.crm-woo-name{display:block;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.crm-woo-col-email .crm-coord-link,.crm-woo-col-phone .crm-coord-link{max-width:100%;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.crm-woo-suspect{color:var(--warn,#E9A23B)}
.crm-woo-hero{padding:var(--space-3) var(--space-4);display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:space-between;align-items:flex-start}
.crm-woo-hero-name{font-size:var(--text-lg);font-weight:600;margin-bottom:4px}
.crm-woo-hero-meta{display:flex;flex-wrap:wrap;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-dim)}
.crm-woo-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;width:100%}
.crm-woo-kpi{min-width:0;padding:var(--space-2) var(--space-3);border-radius:var(--radius-el,8px);background:var(--surface-2);border:1px solid var(--border);text-align:center}
.crm-woo-kpi-accent{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));background:color-mix(in srgb,var(--accent) 8%,var(--surface))}
.crm-woo-kpi-v{font-size:var(--text-md);font-weight:600}
.crm-woo-kpi-l{font-size:11px;color:var(--text-dim);margin-top:2px}
.crm-woo-grid .crm-woo-section-head{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border);cursor:default}
.crm-woo-ch-list,.crm-woo-orders-list{padding:var(--space-2) var(--space-3)}
.crm-woo-ch-row,.crm-woo-order-row{display:grid;grid-template-columns:minmax(90px,auto) 1fr auto auto;gap:var(--space-2);align-items:center;padding:8px 0;border-bottom:1px solid color-mix(in srgb,var(--border) 70%,transparent);font-size:var(--text-sm)}
.crm-woo-order-row{grid-template-columns:minmax(80px,auto) auto auto 1fr auto auto;cursor:pointer}
.crm-woo-order-row:hover{background:color-mix(in srgb,var(--accent) 4%,transparent)}
.crm-woo-order-num{font-variant-numeric:tabular-nums;color:var(--text-dim)}
.crm-woo-order-meta{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center;padding:0 var(--space-3) var(--space-2)}
.crm-woo-order-lines{padding:0 var(--space-3);max-height:280px;overflow:auto}
.crm-woo-order-line{display:flex;gap:var(--space-2);align-items:center;padding:6px 0;border-bottom:1px solid var(--border);font-size:var(--text-sm)}
.crm-woo-order-qty{color:var(--text-dim);font-size:11px}
.crm-woo-profile-cover{--crm-profile-accent:var(--accent)}
.crm-woo-client-grid{align-items:start}
.crm-woo-main-split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:stretch;margin-top:10px}
.crm-woo-split-card{display:flex;flex-direction:column;min-height:240px;height:100%;margin:0}
.crm-woo-split-card .crm-fold-head{flex-shrink:0}
.crm-woo-split-card .crm-woo-ch-list,.crm-woo-split-card .crm-woo-fiche{flex:1;display:flex;flex-direction:column;justify-content:flex-start}
.crm-woo-fiche{padding:var(--space-2) var(--space-3);display:flex;flex-direction:column;gap:10px;font-size:var(--text-sm)}
.crm-woo-fiche-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:baseline;padding:6px 0;border-bottom:1px solid color-mix(in srgb,var(--border) 65%,transparent)}
.crm-woo-fiche-row:last-child{border-bottom:0}
.crm-woo-fiche-row span{color:var(--text-dim);font-size:11px;text-transform:uppercase;letter-spacing:.04em}
.crm-woo-fiche-row strong{text-align:right;font-weight:600;font-size:var(--text-sm);max-width:58%;word-break:break-word}
.crm-woo-kpi-strip .crm-woo-kpis{padding:var(--space-2) var(--space-3);width:100%}
.crm-woo-profile-header .crm-hero-coords{display:flex;flex-wrap:wrap;gap:8px;width:100%}
.crm-woo-profile-header .crm-hero-chip{max-width:min(420px,calc(50% - 4px));flex:1 1 220px}
.crm-woo-detail-root .crm-profile-body{padding-left:16px;padding-right:16px}
.crm-woo-side-panel{padding:0;overflow:hidden;border-radius:var(--radius-card,12px)}
.crm-woo-side-switch{display:grid;grid-template-columns:1fr 1fr;gap:0;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--surface-2) 55%,var(--surface))}
.crm-woo-side-btn{border:0;background:transparent;padding:10px 12px;font:inherit;font-size:var(--text-sm);font-weight:500;color:var(--text-dim);cursor:pointer;transition:background var(--transition,150ms ease),color var(--transition,150ms ease)}
.crm-woo-side-btn.on{color:var(--text);background:var(--surface);box-shadow:inset 0 -2px 0 var(--accent)}
.crm-woo-side-body{min-height:320px}
.crm-woo-side-mobile{margin-top:var(--space-3)}
.crm-woo-period-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:var(--space-2) var(--space-3) 0}
.crm-woo-period-chips{display:flex;flex-wrap:wrap;gap:6px}
.crm-woo-period-chip{border:1px solid var(--border);background:var(--surface);border-radius:999px;padding:4px 10px;font-size:11px;font-weight:500;color:var(--text-dim);cursor:pointer}
.crm-woo-period-chip.on{background:color-mix(in srgb,var(--surface-2) 88%,var(--surface));color:var(--text);border-color:color-mix(in srgb,var(--border) 80%,var(--text-dim))}
.crm-woo-month-pick{min-width:108px;max-width:140px;margin:0;font-size:var(--text-sm)}
.crm-woo-stats-card{margin:var(--space-2) var(--space-3) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-el,8px);overflow:hidden;background:var(--surface)}
.crm-woo-stats-tabs{display:flex;align-items:center;gap:4px;padding:8px 10px;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--surface-2) 40%,var(--surface))}
.crm-woo-stats-tab{border:0;background:transparent;padding:4px 8px;border-radius:999px;font-size:11px;color:var(--text-dim);cursor:pointer}
.crm-woo-stats-tab.on{background:var(--surface);color:var(--text);box-shadow:inset 0 0 0 1px var(--border)}
.crm-woo-stats-pager{margin-left:auto;display:inline-flex;align-items:center;gap:2px;font-size:11px;color:var(--text-dim)}
.crm-woo-stats-page{min-width:28px;text-align:center;font-variant-numeric:tabular-nums}
.crm-woo-stats-chart-wrap{padding:var(--space-3) var(--space-2) var(--space-2)}
.crm-woo-stat-chart{display:grid;grid-template-columns:36px minmax(0,1fr);gap:8px;min-height:180px;align-items:stretch}
.crm-woo-stat-chart-y{display:flex;flex-direction:column;justify-content:space-between;font-size:10px;color:var(--text-dim);padding:4px 0 22px;text-align:right;font-variant-numeric:tabular-nums}
.crm-woo-stat-chart-main{display:flex;flex-direction:column;min-width:0}
.crm-woo-stat-bars{display:flex;align-items:flex-end;gap:10px;min-height:150px;padding:0 4px;border-bottom:1px solid color-mix(in srgb,var(--border) 80%,transparent)}
.crm-woo-stat-bar-wrap{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:6px;height:150px;justify-content:flex-end}
.crm-woo-stat-bar{width:100%;max-width:48px;height:var(--bar-h,20%);border-radius:6px 6px 2px 2px;background:var(--bar-color,var(--accent));transition:height var(--transition,150ms ease)}
.crm-woo-stat-bar-lbl{font-size:10px;color:var(--text-dim);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.crm-woo-history-head{display:flex;align-items:center;gap:8px;padding:var(--space-2) var(--space-3);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);border-bottom:1px solid var(--border)}
.crm-woo-hist-list{padding:var(--space-2) var(--space-3);display:flex;flex-direction:column;gap:8px;max-height:min(62vh,520px);overflow:auto}
.crm-woo-hist-card{border:1px solid var(--border);border-radius:var(--radius-el,8px);padding:10px 12px;background:var(--surface);cursor:pointer;transition:background var(--transition,150ms ease),border-color var(--transition,150ms ease)}
.crm-woo-hist-card:hover{background:color-mix(in srgb,var(--accent) 4%,var(--surface));border-color:color-mix(in srgb,var(--accent) 18%,var(--border))}
.crm-woo-hist-top{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px}
.crm-woo-hist-id{font-weight:600;font-size:var(--text-sm);margin-right:auto}
.crm-woo-hist-amt{margin-left:auto;font-size:var(--text-sm);font-variant-numeric:tabular-nums}
.crm-woo-hist-sub{margin-top:6px;font-size:11px;color:var(--text-dim);line-height:1.35}
.crm-woo-history-panel .crm-woo-orders-foot{flex-direction:column;align-items:stretch;gap:8px}
@media(max-width:900px){
  .crm-clients-filters-bar{padding:10px 12px;gap:8px}
  .crm-clients-filters-row{flex-wrap:wrap;padding:8px 10px}
  .crm-clients-filter-group{align-items:flex-start;flex-direction:column;gap:6px}
  .crm-woo-filter-label{min-width:0}
  .crm-list-tabs{padding-bottom:var(--space-2)}
  .crm-woo-table-head{display:none}
  .crm-woo-row{grid-template-columns:1fr 1fr;gap:6px 10px;padding:14px var(--space-3);border-radius:var(--radius-el,8px);margin:0 8px 8px;border:1px solid color-mix(in srgb,var(--border) 80%,transparent);background:color-mix(in srgb,var(--surface-2) 24%,var(--surface))}
  .crm-woo-row .crm-woo-col-name{grid-column:1/-1}
  .crm-woo-row [data-label]::before{content:attr(data-label);display:block;font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-dim);font-weight:600;margin-bottom:2px}
  .crm-woo-col-orders,.crm-woo-col-total,.crm-woo-col-date{text-align:left}
  .crm-woo-ch-row,.crm-woo-order-row{grid-template-columns:1fr 1fr;gap:4px}
  .crm-woo-main-split{grid-template-columns:1fr}
  .crm-woo-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .crm-woo-profile-header .crm-hero-chip{max-width:none;flex:1 1 100%}
}
.crm-stages-manage-group{grid-column:1/-1}
.crm-stages-manage-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-bottom:var(--space-2)}
.crm-stages-manage{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}
.crm-stage-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:var(--space-2);align-items:center;padding:var(--space-2);border:var(--border-width) solid var(--border);border-radius:var(--radius-el,8px);background:var(--surface);min-width:0}
.crm-stage-row.is-dragging{opacity:.55}
.crm-stage-row.is-drop-target{box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--accent) 35%,transparent)}
.crm-stage-grip{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:0;background:transparent;color:var(--text-dim);cursor:grab;border-radius:var(--radius-el,8px)}
.crm-stage-grip:focus-visible{outline:none;box-shadow:var(--focus-ring)}
.crm-stage-label{margin:0;min-height:var(--control-h)}
.crm-stage-color-btn{display:inline-flex;align-items:center;gap:var(--space-2);min-height:var(--control-h);padding:0 var(--space-2);border:var(--border-width) solid color-mix(in srgb,var(--crm-stage-color,var(--accent)) 28%,var(--border));border-radius:var(--radius-el,8px);background:color-mix(in srgb,var(--crm-stage-color,var(--accent)) 8%,var(--surface));cursor:pointer;position:relative}
.crm-stage-color-btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}
.crm-stage-color-dot{width:18px;height:18px;border-radius:var(--radius-el,8px);background:var(--crm-stage-color,var(--accent));border:var(--border-width) solid color-mix(in srgb,var(--border) 70%,transparent)}
.crm-stage-color-hex{font-size:var(--text-sm);color:var(--text-dim)}
.crm-stage-color-pop{position:absolute;right:0;top:calc(100% + var(--space-1));z-index:var(--z-popover,220);min-width:220px;padding:var(--space-3);border-radius:var(--radius-card,12px);border:var(--border-width) solid var(--border);background:var(--surface);box-shadow:var(--shadow-elev-2)}
.crm-stage-swatches{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2);margin-bottom:var(--space-2)}
.crm-stage-swatch{width:100%;aspect-ratio:1;border-radius:var(--radius-el,8px);border:var(--border-width) solid transparent;cursor:pointer;padding:0}
.crm-stage-swatch.is-on,.crm-stage-swatch:focus-visible{outline:none;box-shadow:var(--focus-ring);border-color:var(--accent)}
.crm-stage-hex-row{display:flex;gap:var(--space-2);align-items:center}
.crm-stage-hex-row .input{min-width:0;margin:0}
.crm-stage-contrast{font-size:var(--text-sm);color:var(--text-dim);margin:var(--space-2) 0 0}
.crm-stage-contrast.is-bad{color:var(--error,var(--danger))}
@media(max-width:560px){.crm-stage-row{grid-template-columns:auto minmax(0,1fr);grid-template-areas:"grip label" "color color" "del del"}.crm-stage-grip{grid-area:grip}.crm-stage-label{grid-area:label}.crm-stage-color-btn{grid-area:color;width:100%;justify-content:flex-start}.crm-stage-del{grid-area:del;justify-self:end}}
.crm-active-filters{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);padding:var(--space-3);background:color-mix(in srgb,var(--surface-2) 70%,transparent);border:var(--border-width) solid color-mix(in srgb,var(--border) 85%,transparent);border-radius:var(--radius-el,8px)}
.crm-achip{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:var(--crm-r);font-size:11px;background:var(--surface);border:1px solid var(--border)}
.crm-achip button{border:0;background:transparent;color:var(--text-dim);cursor:pointer;padding:0 2px;line-height:1}
.crm-achip-clear{margin-left:auto;border:0;background:transparent;color:var(--accent);font-size:11px;cursor:pointer;padding:4px 6px}
.crm-list-meta{font-size:var(--text-xs);color:var(--text-dim);margin:0 0 8px;min-height:16px}
.crm-bulk-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 8px;padding:8px 12px;border-radius:var(--radius-md);background:color-mix(in srgb,var(--accent) 8%,var(--surface));border:1px solid color-mix(in srgb,var(--accent) 22%,var(--border));position:relative;z-index:4;overflow:visible}
.crm-bulk-bar.is-share-open{align-items:flex-start;padding-bottom:10px}
.crm-bulk-bar.hidden{display:none}
.crm-bulk-count{font-size:var(--text-sm);font-weight:600;margin-right:auto;order:0}
#crm-bulk-edit{order:1}
#crm-bulk-share-btn{order:2}
#crm-bulk-del{order:3}
#crm-bulk-cancel{order:4}
.crm-bulk-share-pop{flex:1 1 100%;width:100%;min-width:0;order:10;padding:8px 0 0;margin:2px 0 0;border-top:1px solid color-mix(in srgb,var(--border) 80%,transparent)}
.crm-bulk-edit-form{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.crm-bulk-edit-form .crm-field{margin:0}
@media(max-width:560px){.crm-bulk-edit-form{grid-template-columns:1fr}}
.crm-filter-foot{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid color-mix(in srgb,var(--border) 85%,transparent)}
.crm-filter-value-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.crm-filter-manager-lead{margin:0 0 10px}
.crm-sf-row{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:8px;padding:10px 0;border-bottom:1px solid color-mix(in srgb,var(--border) 85%,transparent)}
.crm-sf-row:last-child{border-bottom:0}
.crm-sf-main{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}
.crm-sf-main strong{font-size:var(--text-sm)}
.crm-sf-actions{display:flex;flex-wrap:wrap;gap:4px;justify-content:flex-end}
.crm-advanced{margin-bottom:8px;padding:14px 16px;border-radius:var(--radius-md)}
.crm-advanced .card-title{margin-bottom:12px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:600}
.crm-filter-group .crm-field{margin:0}
.crm-filter-group .crm-field .input{margin:0;min-height:36px;background:var(--surface)}
.crm-filter-foot .btn{min-height:36px;border-radius:var(--radius-sm)}
.crm-filter-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-3)}
.crm-filter-group{display:flex;flex-direction:column;gap:8px}
.crm-filter-label{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-dim);font-weight:600}
.crm-filter-chips{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.crm-filter-pill{position:relative;display:inline-flex;cursor:pointer;user-select:none}
.crm-filter-cb{position:absolute;opacity:0;width:1px;height:1px;margin:0;padding:0;pointer-events:none}
.crm-filter-pill-text{display:inline-flex;align-items:center;padding:6px 12px;border-radius:var(--crm-r);font-size:11px;font-weight:600;line-height:1.2;border:1.5px solid color-mix(in srgb,var(--crm-pill-color,var(--accent)) 30%,var(--border));background:color-mix(in srgb,var(--crm-pill-color,var(--accent)) 8%,var(--surface));color:var(--crm-pill-color,var(--accent));transition:border-color .15s,background .15s,box-shadow .15s,transform .12s}
.crm-filter-pill:hover .crm-filter-pill-text{border-color:color-mix(in srgb,var(--crm-pill-color,var(--accent)) 45%,var(--border));background:color-mix(in srgb,var(--crm-pill-color,var(--accent)) 14%,var(--surface))}
.crm-filter-pill:has(.crm-filter-cb:checked) .crm-filter-pill-text{background:color-mix(in srgb,var(--crm-pill-color,var(--accent)) 18%,var(--surface));border-color:var(--crm-pill-color,var(--accent));box-shadow:0 0 0 2px color-mix(in srgb,var(--crm-pill-color,var(--accent)) 16%,transparent)}
.crm-filter-pill:has(.crm-filter-cb:focus-visible) .crm-filter-pill-text{box-shadow:var(--focus-ring)}
.crm-check{display:inline-flex;align-items:center;gap:8px;font-size:var(--text-sm);cursor:pointer}
.crm-check-tag{align-items:center}
.crm-filter-tag{display:inline-block;padding:3px 10px;border-radius:var(--crm-r);font-size:var(--text-xs);font-weight:600;background:color-mix(in srgb,var(--crm-tag-color,var(--accent)) 14%,transparent);color:var(--crm-tag-color,var(--accent));border:1px solid color-mix(in srgb,var(--crm-tag-color,var(--accent)) 28%,transparent)}
.crm-filter-stages{display:flex;flex-wrap:wrap;gap:8px}
.crm-list-pane{padding:0;overflow:hidden;border-radius:var(--radius-md);border:var(--border-width) solid color-mix(in srgb,var(--border) 72%,transparent);background:var(--surface);box-shadow:0 1px 0 color-mix(in srgb,var(--text) 3%,transparent)}
.crm-table-scroll{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch}
.crm-table{min-width:1040px}
.crm-table-head:not(.crm-woo-table-head),.crm-row:not(.crm-woo-row){
  display:grid;
  grid-template-columns:32px 36px minmax(120px,1.25fr) minmax(108px,1.05fr) minmax(92px,.85fr) minmax(88px,.9fr) minmax(72px,.7fr) minmax(64px,.65fr) minmax(76px,.72fr);
  gap:8px;align-items:center;padding:0 14px;
  height:var(--crm-row-h,48px);max-height:var(--crm-row-h,48px);
  border-bottom:1px solid color-mix(in srgb,var(--border) 75%,transparent);
  box-sizing:border-box;
}
.crm-table.crm-has-share-col .crm-table-head:not(.crm-woo-table-head),
.crm-table.crm-has-share-col .crm-row:not(.crm-woo-row){
  grid-template-columns:32px 36px minmax(110px,1.15fr) minmax(56px,72px) minmax(100px,1fr) minmax(88px,.82fr) minmax(84px,.85fr) minmax(68px,.68fr) minmax(60px,.62fr) minmax(72px,.7fr);
}
.crm-table-head{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);background:color-mix(in srgb,var(--surface-2) 80%,var(--surface));position:sticky;top:0;z-index:2;white-space:nowrap}
.crm-table-head span{text-align:left;overflow:hidden;text-overflow:ellipsis}
.crm-row{width:100%;text-align:left;background:var(--surface);border:0;cursor:pointer;color:inherit;font:inherit;transition:background .12s}
.crm-row:last-child{border-bottom:0}
.crm-row:hover{background:var(--surface-2)}
.crm-row.is-selected{background:color-mix(in srgb,var(--accent) 6%,var(--surface))}
.crm-col-sel{display:flex;align-items:center;justify-content:center;cursor:default;align-self:stretch;border:0;background:transparent;padding:0;margin:0}
.crm-col-sel input[type=checkbox]{margin:0;cursor:pointer;flex-shrink:0}
.crm-coord-link{display:inline-flex;align-items:center;max-width:100%;border:0;background:transparent;padding:0;margin:0;font:inherit;color:var(--text);cursor:pointer;text-align:left;min-width:0}
.crm-coord-link:hover .crm-coord-link-text{color:var(--accent);text-decoration:underline;text-underline-offset:2px}
.crm-coord-link-text{display:block;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.25}
.crm-cell-empty{color:var(--text-dim);font-size:var(--text-sm)}
.crm-cell-clamp{
  display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;
  line-height:1.25;max-height:calc(1.25em * 2);word-break:break-word;
}
.crm-col-av{display:flex;align-items:center;justify-content:center;flex-shrink:0;align-self:center}
.crm-row small{display:inline;color:var(--text-dim);font-size:var(--text-xs)}
.crm-row .crm-col-name strong{font-weight:600}
.crm-row-shares{display:inline-flex;align-items:center;gap:2px;vertical-align:middle;flex-wrap:nowrap}
.crm-col-share{display:flex;align-items:center;justify-content:flex-start;min-width:0;gap:2px}
.crm-edit-by--titular{box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 35%,transparent);border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}
.crm-bulk-share-slot{display:contents}
.crm-bulk-share-wrap{display:contents}
.crm-bulk-share-pop.hidden{display:none}
.crm-bulk-share-users{display:flex;flex-wrap:wrap;gap:6px;max-height:min(160px,38vh);overflow-y:auto;margin-bottom:8px;-webkit-overflow-scrolling:touch}
.crm-bulk-share-foot{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}
@media(max-width:560px){
  .crm-bulk-bar{gap:6px;padding:8px 10px}
  .crm-bulk-share-users{gap:5px;max-height:none}
  .crm-bulk-share-foot{justify-content:stretch}
  .crm-bulk-share-foot .btn{flex:1;min-width:0}
  .crm-bulk-share-pop .crm-share-chip{padding:4px 10px 4px 4px;font-size:11px}
  .crm-bulk-share-pop .crm-share-chip-av{width:20px;height:20px;font-size:8px}
}
.crm-share-more{font-size:9px;color:var(--text-dim);margin-left:2px}
.crm-field-lbl{display:inline-flex;align-items:center;gap:5px;flex-wrap:wrap}
.crm-edit-by{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;font-size:8px;font-weight:700;line-height:1;color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,var(--surface));border:1px solid color-mix(in srgb,var(--accent) 22%,var(--border));overflow:hidden;flex-shrink:0}
.crm-edit-by--lg{width:22px;height:22px;font-size:9px}
.crm-edit-by.has-img{padding:0;background:var(--surface-2)}
.crm-edit-by.has-img img{width:100%;height:100%;object-fit:cover;display:block}
.crm-share-block{margin:8px 0 4px;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid color-mix(in srgb,var(--border) 82%,transparent);background:color-mix(in srgb,var(--surface-2) 55%,var(--surface))}
.crm-share-kicker{display:block;font-size:10px;font-weight:var(--font-weight-medium);letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);margin-bottom:8px}
.crm-share-hint{display:block;margin-top:6px;font-size:var(--text-caption);color:var(--text-dim)}
.crm-share-chips{display:flex;flex-wrap:wrap;gap:6px}
.crm-share-chip{display:inline-flex;align-items:center;gap:5px;padding:3px 8px 3px 3px;border-radius:999px;border:1px solid color-mix(in srgb,var(--border) 85%,transparent);background:var(--surface);cursor:pointer;font:inherit;font-size:var(--text-xs);color:var(--text-dim);transition:border-color .12s,background .12s,color .12s}
.crm-share-chip:hover{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));color:var(--text)}
.crm-share-chip.on{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--surface));color:var(--accent);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 18%,transparent)}
.crm-share-chip-av{width:22px;height:22px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:9px;font-weight:700;background:color-mix(in srgb,var(--accent) 12%,var(--surface));overflow:hidden;flex-shrink:0}
.crm-share-chip-av img{width:100%;height:100%;object-fit:cover}
.crm-share-chip-lbl{max-width:5.5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.crm-profile-shares{display:flex;align-items:center;gap:4px;margin-top:6px;flex-wrap:wrap}
.crm-profile-shares-lbl{font-size:10px;color:var(--text-dim);letter-spacing:.04em;text-transform:uppercase;margin-left:4px}
.crm-row .crm-col-email,.crm-row .crm-col-phone,.crm-row .crm-col-co,.crm-row .crm-col-value,.crm-row .crm-col-date{text-align:left;min-width:0}
.crm-col-mobile-sub{display:none}
.crm-col-phone-d{display:none}
.crm-row-skeleton{height:var(--crm-row-h,48px);border:0;pointer-events:none;background:linear-gradient(90deg,var(--surface-2),var(--surface),var(--surface-2));background-size:200% 100%;animation:crm-shimmer 1.2s infinite}
.crm-empty{padding:var(--space-6) var(--space-3);text-align:center;color:var(--text-dim)}
.crm-empty p{margin:0 0 6px;font-size:var(--text-md);color:var(--text)}
@keyframes crm-shimmer{0%{background-position:100% 0}100%{background-position:-100% 0}}
.crm-avatar{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:color-mix(in srgb,var(--accent) 18%,var(--surface));color:var(--accent);font-size:10px;font-weight:700;overflow:hidden;flex-shrink:0;border:1px solid color-mix(in srgb,var(--accent) 22%,var(--border))}
.crm-avatar img{width:100%;height:100%;object-fit:cover}
.crm-avatar-lg{width:72px;height:72px;font-size:22px;border:2px solid var(--border)}
.crm-stage-badge{display:inline-block;padding:3px 10px;border-radius:var(--crm-r);font-size:var(--text-xs);font-weight:600;background:color-mix(in srgb,var(--crm-stage-color,var(--accent)) 16%,transparent);color:var(--crm-stage-color,var(--accent))}
.crm-sentinel{height:2px}
.crm-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}
.crm-form-grid-2{grid-template-columns:1fr 1fr}
.crm-create-form .crm-form-grid{margin-bottom:var(--space-2)}
.crm-field{display:flex;flex-direction:column;gap:4px;font-size:var(--text-xs);color:var(--text-dim)}
.crm-field .input,.crm-field textarea,.crm-field select{width:100%}
.crm-view-contact{animation:crm-fade-in .2s ease}
@keyframes crm-fade-in{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
.crm-contact-root{max-width:min(1280px,100%);--crm-compact-gap:10px;--crm-compact-pad:12px}
.crm-contact-root .card{border-color:color-mix(in srgb,var(--border) 85%,transparent);box-shadow:none}
.crm-contact-root .input,.crm-contact-root select.input,.crm-contact-root textarea.input{margin:0;min-height:34px;padding:0 10px;font-size:var(--text-sm)}
.crm-company-panel{display:flex;flex-direction:column;gap:12px}
.crm-company-subhead{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);padding:2px 0 0;border-top:1px solid color-mix(in srgb,var(--border) 78%,transparent);margin-top:4px}
.crm-company-panel .crm-company-subhead:first-child{border-top:0;margin-top:0;padding-top:0}
.crm-company-panel textarea.input.crm-inline{padding:8px 10px;line-height:1.4;resize:vertical;min-height:72px}
.crm-contact-root textarea.input{padding:8px 10px;line-height:1.4}
.crm-channels-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;align-items:start;margin-bottom:8px}
.crm-fold-contact .crm-fold-inner{padding:14px var(--crm-compact-pad) 16px}
.crm-fold-contact:not(.is-closed){overflow:visible}
.crm-fold-contact:not(.is-closed) .crm-fold-body{overflow:visible}
.crm-contact-coords{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px;row-gap:14px;align-items:start}
.crm-coords-col,.crm-coords-social{min-width:0}
.crm-coords-col{container-type:inline-size;container-name:coords-col}
.crm-coords-social{grid-column:1/-1;padding-top:12px;border-top:1px solid color-mix(in srgb,var(--border) 72%,transparent);overflow:visible}
.crm-coords-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px;min-height:22px}
.crm-coords-label{font-size:11px;font-weight:600;color:var(--text-dim);letter-spacing:.01em}
.crm-coords-add{border:0;background:transparent;color:var(--accent);font:inherit;font-size:11px;font-weight:500;padding:2px 4px;cursor:pointer;opacity:.9;white-space:nowrap;transition:opacity .12s}
.crm-coords-add:hover{opacity:1;text-decoration:underline}
.crm-coords-add.is-busy{opacity:.45;pointer-events:none}
.crm-coords-list{display:flex;flex-direction:column;gap:0;min-width:0}
.crm-coords-empty{margin:0;padding:4px 0 2px;font-size:11px;color:var(--text-dim);opacity:.55}
.crm-coords-list:not(.is-empty) .crm-coords-empty{display:none}
.crm-socials-list{display:flex;flex-direction:column;gap:0;min-width:0;overflow:visible}
.crm-socials-list .crm-coords-empty{width:100%}
.crm-fold-contact .crm-channel{display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:5px;align-items:center;padding:6px 0;border:0;border-radius:0;background:transparent;border-bottom:1px solid color-mix(in srgb,var(--border) 68%,transparent);min-width:0}
.crm-fold-contact .crm-channel-social{grid-template-columns:minmax(92px,108px) minmax(0,1fr) auto}
.crm-fold-contact .crm-channel:last-child{border-bottom-color:transparent}
.crm-fold-contact .crm-channel-main{display:flex;gap:6px;align-items:center;min-width:0;width:100%}
.crm-fold-contact .crm-channel-main .crm-inline[data-part=value]{flex:1 1 auto;min-width:72px;max-width:100%}
.crm-fold-contact .crm-channel .input.crm-inline{min-height:32px;padding:6px 8px;font-size:var(--text-sm)}
.crm-fold-contact .crm-channel-label{flex:0 0 52px;width:52px;max-width:72px;font-size:10px;color:var(--text-dim);min-height:30px;padding:5px 6px;opacity:.45;border-color:color-mix(in srgb,var(--border) 55%,transparent);background:color-mix(in srgb,var(--surface-2) 35%,transparent);transition:opacity .12s,border-color .12s,background .12s}
.crm-fold-contact .crm-channel-label:focus,.crm-fold-contact .crm-channel-label:not(:placeholder-shown){opacity:1;border-color:var(--border);background:var(--surface)}
@container coords-col (max-width:220px){
  .crm-coords-col .crm-channel-label{display:none}
  .crm-coords-col .crm-channel-main .crm-inline[data-part=value]{min-width:0;flex:1 1 100%}
}
@container coords-col (max-width:160px){
  .crm-coords-col .crm-channel-actions .crm-copy{display:none}
}
.crm-fold-contact .crm-channel-actions{display:flex;gap:1px;flex-shrink:0;align-items:center}
.crm-fold-contact .crm-primary{font-size:13px;color:var(--text-dim);opacity:.55}
.crm-fold-contact .crm-channel.is-primary .crm-primary,.crm-fold-contact .crm-primary[aria-pressed="true"]{color:var(--accent);opacity:1}
.crm-fold-contact .crm-channel-social .crm-social-net{min-width:0;width:100%;min-height:32px;padding:6px 28px 6px 8px;font-size:11px}
.crm-fold-contact .crm-channel-social .ui-select{min-width:0;width:100%;max-width:108px;z-index:2}
.crm-coords-social .crm-channel-social{width:100%;max-width:100%}
.crm-fold-contact .crm-channel-social .ui-select-trigger{min-height:32px;padding:5px 26px 5px 8px;font-size:11px}
.crm-fold-contact .crm-channel-social .ui-select-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.crm-fold-contact .crm-channel-social .ui-select.ui-select-drop-up .ui-select-menu,.crm-fold-contact .crm-channel-social .ui-select-drop-up .ui-select-menu{z-index:50}
.crm-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:var(--icon-btn-size,36px);height:var(--icon-btn-size,36px);padding:0;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text-dim);font-size:14px;line-height:1;cursor:pointer;transition:color var(--motion-fast,var(--transition)),background var(--motion-fast,var(--transition)),box-shadow var(--motion-fast,var(--transition))}
.crm-icon-btn.crm-del{font-size:17px}
@media(max-width:820px){.crm-contact-coords{grid-template-columns:1fr}}
@media(max-width:520px){
  .crm-fold-contact .crm-channel-social{grid-template-columns:minmax(88px,96px) minmax(0,1fr) auto}
  .crm-fold-contact .crm-channel-social .ui-select{max-width:96px}
}
.crm-co-lookup-wrap{margin-bottom:8px}
.crm-co-lookup-toggle{display:flex;align-items:center;gap:8px;width:100%;padding:7px 10px;border:1px solid color-mix(in srgb,var(--border) 85%,transparent);border-radius:var(--crm-r-box);background:var(--surface);color:var(--text-dim);font:inherit;cursor:pointer;text-align:left;transition:border-color .12s,color .12s,background .12s}
.crm-co-lookup-toggle:hover{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));color:var(--accent);background:color-mix(in srgb,var(--accent) 5%,var(--surface))}
.crm-co-lookup-wrap:not(.is-collapsed) .crm-co-lookup-toggle{border-style:solid;margin-bottom:8px}
.crm-co-lookup-ico{width:16px;height:16px;flex-shrink:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Ccircle cx='7' cy='7' r='4.5' stroke='%23666' stroke-width='1.5'/%3E%3Cpath stroke='%23666' stroke-width='1.5' stroke-linecap='round' d='M10.5 10.5 14 14'/%3E%3C/svg%3E") no-repeat center/contain}
.crm-co-lookup-toggle:hover .crm-co-lookup-ico{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Ccircle cx='7' cy='7' r='4.5' stroke='%23228' stroke-width='1.5'/%3E%3Cpath stroke='%23228' stroke-width='1.5' stroke-linecap='round' d='M10.5 10.5 14 14'/%3E%3C/svg%3E")}
.crm-co-lookup-label{flex:1;font-size:11px;font-weight:600;color:inherit}
.crm-co-lookup-hint{font-size:10px;color:var(--text-dim);letter-spacing:.02em;white-space:nowrap}
.crm-co-lookup-chevron{width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(-45deg);transition:transform .15s;margin-left:2px;flex-shrink:0;opacity:.75}
.crm-co-lookup-wrap:not(.is-collapsed) .crm-co-lookup-chevron{transform:rotate(45deg);margin-top:2px}
.crm-co-lookup-wrap.is-collapsed .crm-co-lookup-hint{display:none}
.crm-co-lookup-card{margin-bottom:0;padding:12px 14px;border-radius:var(--radius-md);border:1px solid color-mix(in srgb,var(--accent) 22%,var(--border));background:color-mix(in srgb,var(--accent) 5%,var(--surface))}
.crm-co-lookup{display:flex;flex-direction:column;gap:8px}
.crm-co-lookup-row{display:grid;grid-template-columns:minmax(110px,.35fr) minmax(0,1fr);gap:8px;align-items:end}
.crm-co-search-field{margin:0}
.crm-co-suggest{display:flex;flex-direction:column;gap:2px;padding:4px;border:1px solid color-mix(in srgb,var(--border) 88%,transparent);border-radius:var(--radius-md);background:var(--surface);box-shadow:0 6px 20px color-mix(in srgb,var(--text) 8%,transparent);max-height:220px;overflow:auto}
.crm-co-suggest-item{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:8px 10px;border:0;border-radius:calc(var(--radius-sm) - 1px);background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:background .12s}
.crm-co-suggest-item:hover,.crm-co-suggest-item:focus-visible{background:var(--surface-2);outline:none}
.crm-co-suggest-item strong{font-size:var(--text-sm);font-weight:600}
.crm-co-suggest-sub{font-size:11px;color:var(--text-dim)}
.crm-co-lookup-foot{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.crm-co-source{flex:1;font-size:11px;color:var(--text-dim);min-width:120px}
.crm-co-vat-badge{font-size:11px;font-weight:600;padding:3px 10px;border-radius:var(--crm-r)}
.crm-co-vat-badge.is-valid{background:color-mix(in srgb,#2a9 14%,var(--surface));color:#1a7a5c;border:1px solid color-mix(in srgb,#2a9 35%,transparent)}
.crm-co-vat-badge.is-invalid{background:color-mix(in srgb,var(--danger) 12%,var(--surface));color:var(--danger);border:1px solid color-mix(in srgb,var(--danger) 30%,transparent)}
.crm-co-msg{margin:0;font-size:11px}
@media(max-width:560px){.crm-co-lookup-row{grid-template-columns:1fr}}
.crm-contact-topbar{display:flex;justify-content:space-between;align-items:center;gap:var(--space-2);margin-bottom:10px;flex-wrap:wrap}
.crm-topbar-name{display:none;margin:0;font-family:var(--font-display);font-size:var(--text-md);font-weight:var(--font-weight-medium);line-height:1.2;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.crm-back-icon,.crm-del-icon{flex-shrink:0}
.crm-layout-controls{display:flex;align-items:center;gap:8px;flex:1;justify-content:center;min-width:0;padding:4px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2)}
.crm-layout-label{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);white-space:nowrap}
.crm-layout-presets{display:flex;gap:4px}
.crm-layout-btn{border:1px solid var(--border);background:var(--surface);color:var(--text-dim);border-radius:var(--crm-r);padding:2px 10px;font-size:11px;cursor:pointer;transition:border-color .12s,color .12s,background .12s}
.crm-layout-btn.on,.crm-layout-btn:hover{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--surface))}
.crm-col-range{width:min(120px,22vw);height:4px;accent-color:var(--accent);cursor:pointer}
.crm-contact-hero{padding:14px 16px;margin-bottom:10px;background:var(--surface);border-radius:var(--crm-r-box)}
.crm-profile-header{padding:0!important;margin-bottom:10px;overflow:hidden;border-radius:var(--crm-r-box);border:1px solid color-mix(in srgb,var(--border) 88%,transparent);background:var(--surface);box-shadow:var(--shadow-card)}
.crm-profile-cover{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-2);min-height:56px;padding:var(--space-3) var(--space-4) 40px;background:linear-gradient(180deg,color-mix(in srgb,var(--crm-profile-accent,var(--accent)) 20%,var(--surface-2)) 0%,var(--surface) 72%);box-shadow:inset 4px 0 0 var(--crm-profile-accent,var(--accent));transition:background var(--motion-fast,var(--transition)),box-shadow var(--motion-fast,var(--transition))}
.crm-profile-cover::after{content:'';position:absolute;inset:auto 0 0 0;height:1px;background:color-mix(in srgb,var(--border) 55%,transparent)}
.crm-profile-back,.crm-profile-del{position:relative;z-index:2;width:34px;height:34px;min-width:34px;padding:0;border-radius:50%;border:1px solid color-mix(in srgb,#fff 28%,var(--border));background:color-mix(in srgb,var(--surface) 78%,transparent);backdrop-filter:blur(10px);color:var(--text);box-shadow:0 1px 4px color-mix(in srgb,var(--text) 10%,transparent)}
.crm-profile-back:hover,.crm-profile-del:hover,.crm-profile-back:focus-visible,.crm-profile-del:focus-visible{background:color-mix(in srgb,var(--surface) 94%,transparent);outline:none}
.crm-profile-cover-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}
.crm-profile-cover .crm-layout-controls{border-color:color-mix(in srgb,#fff 22%,var(--border));background:color-mix(in srgb,var(--surface) 70%,transparent);backdrop-filter:blur(8px)}
.crm-profile-body{padding:0 14px 12px;margin-top:-28px;position:relative;z-index:1}
.crm-profile-identity{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto;gap:2px 12px;align-items:end}
.crm-profile-avatar-wrap{grid-row:1/span 2;align-self:end}
.crm-profile-avatar-wrap .crm-hero-avatar-wrap{margin:0}
.crm-profile-avatar-wrap .crm-avatar-drop{width:68px;height:68px;border:3px solid var(--surface);border-radius:50%;box-shadow:0 2px 12px color-mix(in srgb,var(--text) 14%,transparent)}
.crm-profile-avatar-wrap .crm-avatar-drop .crm-avatar-lg{width:100%;height:100%;font-size:22px;border:0}
.crm-profile-name{margin:0;font-family:var(--font-display);font-size:1.2rem;font-weight:var(--font-weight-medium);line-height:1.15;letter-spacing:-.01em;align-self:end;padding-bottom:1px}
.crm-profile-sub{margin:0;font-size:var(--text-xs);color:var(--text-dim);line-height:1.35;align-self:start}
.crm-profile-identity:has(.crm-profile-text--solo){grid-template-rows:auto;align-items:center}
.crm-profile-identity:has(.crm-profile-text--solo) .crm-profile-avatar-wrap{grid-row:auto;align-self:center}
.crm-profile-text--solo .crm-profile-name{align-self:center;padding-bottom:0}
.crm-profile-quick{margin-top:8px}
.crm-profile-quick .crm-hero-coords{display:flex;flex-wrap:wrap;gap:6px;width:100%;margin:0}
.crm-profile-meta{margin-top:6px}
.crm-profile-meta .crm-hero-meta{margin-top:0;gap:6px;align-items:flex-start}
.crm-sections-sortable{display:flex;flex-direction:column;gap:0}
.crm-fold-drag{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;margin:-6px 4px -6px -4px;border:0;border-radius:var(--crm-r);background:transparent;color:var(--text-dim);cursor:grab;touch-action:none;flex-shrink:0;transition:color .12s,background .12s}
.crm-fold-drag:hover,.crm-fold-drag:focus-visible{color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent);outline:none}
.crm-fold-drag:active{cursor:grabbing}
.crm-fold-drag .nav-ico,.crm-grip-ico{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;opacity:.72}
.crm-fold-drag .nav-ico svg{display:block;width:16px;height:16px}
.crm-fold.is-dragging{opacity:.65;transform:scale(.99);box-shadow:0 10px 28px color-mix(in srgb,var(--text) 14%,transparent);z-index:2;position:relative;user-select:none;-webkit-user-select:none}
.crm-fold.is-drop-target{outline:2px dashed color-mix(in srgb,var(--accent) 42%,transparent);outline-offset:-2px}
.crm-hero-grid{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px 14px;align-items:center}
.crm-hero-id{align-self:center}
.crm-hero-body{min-width:0;display:flex;flex-direction:column;gap:0}
.crm-hero-headline{display:flex;align-items:center;justify-content:space-between;gap:10px 12px;flex-wrap:wrap}
.crm-hero-titles{min-width:0;flex:1 1 160px}
.crm-hero-coords{display:flex;flex-wrap:wrap;gap:4px;align-items:center;flex:0 1 auto;min-width:0;margin-left:auto;padding:0;border:0;background:transparent}
.crm-hero-chip{display:inline-flex;align-items:stretch;gap:0;max-width:min(220px,38vw);min-height:32px;padding:0;border:1px solid color-mix(in srgb,var(--border) 78%,transparent);border-radius:var(--crm-r);background:var(--surface);color:inherit;font:inherit;cursor:pointer;overflow:hidden;transition:border-color .12s,background .12s}
.crm-hero-chip:hover,.crm-hero-chip:focus-visible{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));background:color-mix(in srgb,var(--accent) 3%,var(--surface));outline:none}
.crm-hero-chip.is-copied{border-color:color-mix(in srgb,#3a9 40%,var(--border));background:color-mix(in srgb,#3a9 6%,var(--surface))}
.crm-hero-chip.is-empty{opacity:.75;border-style:solid;background:var(--surface-2)}
.crm-hero-chip-k{display:inline-flex;align-items:center;padding:0 8px;font-size:10px;font-weight:600;color:var(--text-dim);flex-shrink:0;background:color-mix(in srgb,var(--surface-2) 70%,transparent);border-right:1px solid color-mix(in srgb,var(--border) 72%,transparent)}
.crm-hero-chip-v{display:inline-flex;align-items:center;padding:0 8px;font-size:12px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.crm-hero-chip-ico{display:inline-flex;align-items:center;padding:0 6px 0 0;font-size:11px;color:var(--text-dim);opacity:0;flex-shrink:0;transition:opacity .12s}
.crm-hero-chip:hover .crm-hero-chip-ico,.crm-hero-chip:focus-visible .crm-hero-chip-ico{opacity:.75}
.crm-hero-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:8px;padding:0;border:0;background:transparent}
.crm-hero-meta .ui-select{width:auto;max-width:min(200px,100%);flex:0 0 auto}
.crm-hero-meta .ui-select-trigger.input{width:auto;max-width:min(200px,100%);margin:0}
.crm-hero-stage-wrap{display:inline-flex;align-items:center;min-width:0;flex:0 0 auto}
.crm-hero-stage-wrap .ui-select{min-width:84px;max-width:140px;width:auto}
.crm-hero-pills{display:inline-flex;flex-wrap:wrap;align-items:center;gap:4px;min-width:0}
.crm-hero-pill{display:inline-flex;align-items:center;gap:2px;padding:3px 8px;border-radius:var(--crm-r);font-size:10px;line-height:1.35;white-space:nowrap;background:color-mix(in srgb,var(--crm-tag-color,var(--accent)) 10%,transparent);border:1px solid color-mix(in srgb,var(--crm-tag-color,var(--accent)) 22%,transparent);color:var(--crm-tag-color,var(--accent))}
.crm-hero-pill[data-kind="tag"]{background:color-mix(in srgb,var(--crm-tag-color,var(--accent)) 6%,var(--surface-2));border-color:color-mix(in srgb,var(--crm-tag-color,var(--accent)) 18%,var(--border))}
.crm-hero-pill-x{border:0;background:transparent;color:inherit;cursor:pointer;padding:0 2px;opacity:.6;font-size:12px;line-height:1}
.crm-hero-pill-x:hover{opacity:1}
.crm-hero-meta .crm-hero-add-pick.ui-select{min-width:88px;max-width:180px;width:auto}
.crm-hero-value{font-size:11px;font-weight:600;color:var(--text);padding:3px 9px;border-radius:var(--crm-r);background:transparent;border:1px solid color-mix(in srgb,var(--border) 78%,transparent);white-space:nowrap;flex-shrink:0;margin-left:auto}
.crm-hero-avatar-wrap{display:flex;flex-shrink:0}
.crm-avatar-drop{position:relative;width:48px;height:48px;border-radius:50%;overflow:hidden;flex-shrink:0}
.crm-avatar-drop .crm-avatar-lg{width:48px;height:48px;font-size:16px;border:0}
.crm-avatar-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;border:0;padding:0;background:color-mix(in srgb,var(--text) 58%,transparent);color:#fff;font:inherit;font-size:9px;font-weight:600;line-height:1.1;opacity:0;cursor:pointer;transition:opacity .14s,background .14s}
.crm-avatar-overlay-ico{font-size:14px;line-height:1;font-weight:400}
.crm-avatar-drop:hover .crm-avatar-overlay,.crm-avatar-drop:focus-within .crm-avatar-overlay,.crm-avatar-drop.is-dragover .crm-avatar-overlay{opacity:1}
.crm-avatar-drop.is-dragover{outline:2px dashed color-mix(in srgb,var(--accent) 55%,transparent);outline-offset:2px}
.crm-avatar-drop.is-dragover .crm-avatar-overlay{background:color-mix(in srgb,var(--accent) 72%,transparent)}
.crm-hero-name{margin:0;font-family:var(--font-display);font-size:1.25rem;font-weight:var(--font-weight-medium);line-height:1.2;letter-spacing:-.01em}
.crm-hero-sub{margin:2px 0 0;color:var(--text-dim);font-size:var(--text-sm);line-height:1.35}
.crm-contact-grid{display:grid;grid-template-columns:minmax(0,1fr) 6px minmax(240px,var(--crm-side,34%));gap:0;align-items:start}
.crm-contact-main,.crm-contact-panel{min-width:0}
.crm-col-resizer{position:relative;cursor:col-resize;touch-action:none;align-self:stretch;min-height:120px;border-radius:999px;transition:background .12s}
.crm-col-resizer::before{content:'';position:absolute;inset:0 2px;background:transparent;border-radius:999px;transition:background .12s}
.crm-col-resizer:hover::before,.crm-col-resizer:focus-visible::before{background:color-mix(in srgb,var(--accent) 18%,transparent)}
.crm-col-resizer:focus-visible{outline:none}
.crm-col-resizer:focus-visible::before{box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 35%,transparent)}
body.crm-col-dragging{cursor:col-resize;user-select:none}
body.crm-col-dragging .crm-col-resizer::before{background:color-mix(in srgb,var(--accent) 28%,transparent)}
.crm-section{padding:0;margin-bottom:8px}
.crm-fold{padding:0;overflow:hidden;border-radius:var(--radius-md);border:1px solid color-mix(in srgb,var(--border) 88%,transparent);background:var(--surface)}
.crm-fold-head{display:flex;align-items:center;gap:8px;width:100%;padding:10px var(--crm-compact-pad);border:0;background:color-mix(in srgb,var(--surface-2) 65%,var(--surface));color:inherit;font:inherit;cursor:pointer;text-align:left;border-bottom:1px solid color-mix(in srgb,var(--border) 78%,transparent)}
.crm-fold-head:hover{background:var(--surface-2)}
.crm-fold-title{flex:1;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim)}
.crm-fold-head .crm-fold-action{margin-left:auto;margin-right:2px;min-height:30px;border-radius:var(--crm-r)}
.crm-fold-channels.is-channels-empty .crm-fold-body{grid-template-rows:0fr}
.crm-fold-channels.is-channels-empty .crm-fold-head{border-bottom-color:transparent}
.crm-fold-channels.is-channels-empty .crm-fold-inner{padding:0}
.crm-fold-action-add{border:1px solid color-mix(in srgb,var(--accent) 22%,var(--border));background:color-mix(in srgb,var(--accent) 5%,transparent);color:var(--accent);font-weight:600;border-radius:var(--crm-r)}
.crm-fold-action-add:hover{background:color-mix(in srgb,var(--accent) 12%,var(--surface));border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}
.crm-fold-channels:not(.is-channels-empty) .crm-fold-action-add{border-style:solid;border-color:var(--border);background:var(--surface);color:var(--text-dim);font-weight:500}
.crm-fold-channels:not(.is-channels-empty) .crm-fold-action-add:hover{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}
.crm-channels.is-empty:empty{display:none}
.crm-channels:not(.is-empty){padding-top:2px}
.crm-fold-chevron{width:7px;height:7px;border-right:1.5px solid var(--text-dim);border-bottom:1.5px solid var(--text-dim);transform:rotate(45deg);transition:transform .15s;margin-left:2px;flex-shrink:0;opacity:.85}
.crm-fold.is-closed .crm-fold-chevron{transform:rotate(-45deg);margin-top:3px}
.crm-fold-body{display:grid;grid-template-rows:1fr;transition:grid-template-rows .22s cubic-bezier(.4,0,.2,1)}
.crm-fold.is-closed .crm-fold-body{grid-template-rows:0fr}
.crm-fold-inner{overflow:visible;min-height:0;padding:12px var(--crm-compact-pad) 16px}
.crm-fold.is-closed .crm-fold-inner{overflow:hidden;padding-top:0;padding-bottom:0}
.crm-fold.is-closed .crm-fold-head{border-bottom-color:transparent}
.crm-fold-action{flex-shrink:0;min-height:28px;padding:0 10px;font-size:11px}
.crm-fold-action.is-busy,.crm-int-actions .is-busy{opacity:.65;pointer-events:none}
.crm-empty-inline{margin:0;font-size:var(--text-sm);padding:8px 0 4px;color:var(--text-dim)}
.crm-contact-root .crm-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--crm-compact-gap)}
.crm-contact-root .crm-field{display:flex;flex-direction:column;gap:3px;font-size:10px;color:var(--text-dim);letter-spacing:.02em}
.crm-contact-root .crm-field>span{font-weight:600;text-transform:uppercase;letter-spacing:.04em}
.crm-field-span2{grid-column:1/-1}
.crm-section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.crm-contact-side .crm-fold:not(.is-closed){position:sticky;top:8px}
.crm-channels{display:flex;flex-direction:column;gap:10px}
.crm-channel{display:grid;grid-template-columns:minmax(0,1fr) 72px auto;gap:8px;align-items:center;padding:8px 10px;border:1px solid color-mix(in srgb,var(--border) 88%,transparent);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--surface-2) 50%,transparent);transition:border-color .15s,box-shadow .15s,opacity .15s,transform .15s}
.crm-channel-social{grid-template-columns:minmax(92px,.42fr) minmax(0,1fr) auto}
.crm-social-net{min-width:0;padding-right:calc(var(--gap-sm) + 14px);font-size:11px}
.crm-channel-new{animation:crm-channel-in .35s ease}
.crm-channel-out{opacity:0;transform:translateX(6px)}
.crm-channel.is-saving{border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}
.crm-channel.is-saved{border-color:color-mix(in srgb,#3a9 40%,var(--border));box-shadow:0 0 0 1px color-mix(in srgb,#3a9 12%,transparent)}
@keyframes crm-channel-in{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}
.crm-channel-actions{display:flex;gap:4px;align-items:center}
.crm-channel .btn-sm{min-height:30px;padding:0 8px;font-size:11px}
.crm-channel .crm-del{min-width:30px;padding:0;color:var(--text-dim)}
.crm-inline-label{max-width:72px}
.crm-tag-row{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:8px;min-height:24px}
.crm-tag{display:inline-flex;align-items:center;gap:3px;padding:2px 8px;border-radius:var(--crm-r);font-size:11px;line-height:1.35;background:color-mix(in srgb,var(--crm-tag-color,var(--accent)) 10%,transparent);border:1px solid color-mix(in srgb,var(--crm-tag-color,var(--accent)) 24%,transparent)}
.crm-tag-kind{opacity:.55;font-size:9px;text-transform:uppercase;letter-spacing:.04em}
.crm-tag button,.crm-tag-del{border:0;background:transparent;color:inherit;cursor:pointer;padding:0 1px;line-height:1;opacity:.65;font-size:13px}
.crm-tag button:hover,.crm-tag-del:hover{opacity:1}
.crm-tag-add{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-bottom:10px;align-items:center}
.crm-tag-add .btn-sm{min-height:34px;white-space:nowrap}
.crm-contact-root .crm-field>.ui-select{display:flex;width:100%;max-width:min(280px,100%)}
.crm-contact-root .crm-field>.ui-select .ui-select-trigger{width:100%;max-width:100%;margin:0}
.crm-tag-lib-panel{margin-top:10px;padding-top:10px;border-top:1px solid color-mix(in srgb,var(--border) 85%,transparent)}
.crm-tag-lib-toggle{width:100%;justify-content:space-between;min-height:36px;font-size:11px;color:var(--text-dim);border-style:dashed}
.crm-tag-lib-toggle:hover,.crm-tag-lib-toggle[aria-expanded=true]{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 35%,var(--border));background:color-mix(in srgb,var(--accent) 5%,transparent)}
.crm-tag-lib-toggle::after{content:'';width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);transition:transform .15s;flex-shrink:0;margin-left:8px}
.crm-tag-lib-toggle[aria-expanded=true]::after{transform:rotate(-135deg);margin-top:3px}
.crm-tag-manage{margin-top:8px}
.crm-tag-manage.is-collapsed{display:none}
.crm-tag-manage-head{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-bottom:8px}
.crm-tag-manage-label{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-dim);font-weight:600}
.crm-tag-manage-actions{display:flex;gap:4px;flex-wrap:wrap}
.crm-tag-lib{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.crm-tag-lib-col{display:flex;flex-direction:column;gap:5px;padding:8px;border:1px solid color-mix(in srgb,var(--border) 80%,transparent);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--surface-2) 40%,transparent);min-height:52px}
.crm-tag-lib-label{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-dim);font-weight:600;margin-bottom:2px}
.crm-tag-lib-item .crm-tag-del{margin-left:1px}
.crm-timeline{display:flex;flex-direction:column;gap:6px;margin-top:10px;max-height:min(52vh,520px);overflow:auto;padding-right:2px}
.crm-int-item{padding:8px 10px;border:1px solid color-mix(in srgb,var(--border) 85%,transparent);border-radius:var(--radius-sm);background:var(--surface-2)}
.crm-int-meta{display:flex;justify-content:space-between;gap:8px;font-size:10px;color:var(--text-dim);margin-bottom:4px}
.crm-int-type{font-weight:600;color:var(--text);text-transform:uppercase;letter-spacing:.03em}
.crm-int-title{display:block;font-size:var(--text-sm);margin-bottom:2px}
.crm-int-body{margin:0;font-size:var(--text-sm);color:var(--text);line-height:1.4;white-space:pre-wrap}
.crm-int-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:6px}
.crm-int-form{display:flex;flex-direction:column;gap:6px;padding-bottom:10px;border-bottom:1px solid color-mix(in srgb,var(--border) 85%,transparent)}
.crm-int-actions{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}
.crm-int-att{font-size:10px;color:var(--text-dim)}
.crm-int-new{animation:crm-channel-in .35s ease}
.crm-int-out{opacity:0;transform:translateY(-4px);transition:opacity .16s,transform .16s}
.crm-contact-skeleton .crm-sk-top{display:flex;justify-content:space-between;gap:12px;margin-bottom:10px}
.crm-contact-skeleton .crm-sk-hero{display:flex;gap:14px;padding:16px;margin-bottom:10px}
.crm-contact-skeleton .crm-sk-avatar{width:56px;height:56px;border-radius:50%;flex-shrink:0;background:linear-gradient(90deg,var(--surface-2),var(--surface),var(--surface-2));background-size:200% 100%;animation:crm-shimmer 1.1s infinite}
.crm-contact-skeleton .crm-sk-lines{flex:1;display:flex;flex-direction:column;gap:8px;padding-top:6px}
.crm-contact-skeleton .crm-sk-line{display:block;height:12px;border-radius:999px;background:linear-gradient(90deg,var(--surface-2),var(--surface),var(--surface-2));background-size:200% 100%;animation:crm-shimmer 1.1s infinite}
.crm-contact-skeleton .crm-sk-lg{width:55%;height:18px}
.crm-contact-skeleton .crm-sk-md{width:38%}
.crm-contact-skeleton .crm-sk-sm{width:90px;height:28px;border-radius:var(--radius-sm)}
.crm-contact-skeleton .crm-sk-grid{display:grid;grid-template-columns:1fr 6px 34%;gap:0}
.crm-contact-skeleton .crm-sk-col,.crm-contact-skeleton .crm-sk-side{display:flex;flex-direction:column;gap:8px}
.crm-contact-skeleton .crm-sk-block{height:52px;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-2),var(--surface),var(--surface-2));background-size:200% 100%;animation:crm-shimmer 1.1s infinite}
.crm-contact-skeleton .crm-sk-tall{height:220px}
.crm-contact-skeleton .crm-sk-grid>div:nth-child(2){width:6px;border-radius:999px;background:var(--surface-2)}
.crm-contact-root .btn-ghost{border-color:transparent;background:transparent;color:var(--text-dim)}
.crm-contact-root .btn-ghost:hover{color:var(--text);background:var(--surface-2)}
.crm-list-pane{-webkit-overflow-scrolling:touch}
.crm-contact-loading{padding:var(--space-6);text-align:center}
@media(max-width:900px){
  .page-crm{max-width:none;overflow-x:clip;width:100%}
  .crm-head{align-items:stretch}
  .crm-filter-groups{grid-template-columns:1fr}
  .crm-table-head:not(.crm-woo-table-head),.crm-row:not(.crm-woo-row){grid-template-columns:32px 36px minmax(0,1.4fr) minmax(0,1fr) minmax(0,.9fr);min-width:0}
  .crm-col-phone,.crm-col-co,.crm-col-value,.crm-col-date,.crm-table-head .crm-col-phone,.crm-table-head .crm-col-co,.crm-table-head .crm-col-value,.crm-table-head .crm-col-date{display:none}
  .crm-contact-grid{grid-template-columns:1fr}
  .crm-contact-grid.is-mobile-stack .crm-col-resizer,.crm-contact-grid.is-mobile-stack .crm-contact-side{display:none!important}
  .crm-col-resizer{display:none}
  .crm-layout-controls{display:none}
  .crm-contact-root .crm-form-grid{grid-template-columns:1fr}
  .crm-tag-lib{grid-template-columns:1fr}
  .crm-contact-side .crm-fold{position:static}
  .crm-contact-skeleton .crm-sk-grid{grid-template-columns:1fr}
  .crm-contact-skeleton .crm-sk-grid>div:nth-child(2){display:none}
  .crm-contact-skeleton .crm-sk-side .crm-sk-tall{height:140px}
}
@media(max-width:768px){
  .page-crm{padding-left:max(12px,env(safe-area-inset-left,0px));padding-right:max(12px,env(safe-area-inset-right,0px));padding-bottom:max(var(--page-pad),env(safe-area-inset-bottom,0px));overflow-x:clip}
  body.crm-mobile-contact{overflow-x:clip}
  body.crm-mobile-contact .content{overflow-x:clip;max-width:100%}
  body.crm-mobile-contact .content-mobile-head{display:none!important}
  .crm-head{display:none}
  .crm-toolbar-bar{padding:8px;margin-bottom:8px}
  .crm-toolbar{display:grid;grid-template-columns:1fr auto auto auto auto auto;gap:6px;margin-bottom:0;align-items:center}
  .crm-search-wrap{order:1;grid-column:1/-1;max-width:none;min-width:0}
  .crm-search-wrap .crm-search{min-height:40px}
  #crm-business-ops-btn{order:2;grid-column:1/-1;min-height:40px;justify-self:stretch;width:100%}
  .crm-sort{order:3;grid-column:1/span 2;min-width:0;min-height:40px;font-size:var(--text-sm)}
  .crm-adv-toggle{order:4;width:40px;height:40px;min-height:40px;padding:0;justify-content:center;grid-column:3;border-radius:999px}
  .crm-adv-toggle .crm-filter-ico{display:inline-flex}
  .crm-adv-toggle .crm-adv-lbl{display:none}
  .crm-toolbar-actions{display:contents}
  #crm-prospect-btn{order:5;width:40px;height:40px;min-width:40px;grid-column:4}
  #crm-io-btn{order:6;width:40px;height:40px;min-width:40px;grid-column:5}
  .crm-add-btn{order:7;width:40px;height:40px;min-height:40px;padding:0;justify-content:center;border-radius:999px;grid-column:6}
  .crm-add-btn .crm-add-ico{display:inline-flex}
  .crm-add-btn .crm-add-lbl{display:none}
  .crm-quick-filters{margin-bottom:6px;padding-bottom:4px}
  .crm-qchip{padding:5px 10px;font-size:11px}
  .crm-list-meta{margin-bottom:6px}
  .crm-table-scroll{overflow:visible}
  .crm-table{min-width:0}
  .crm-table-head{display:none}
  .crm-list-pane{border:0;background:transparent;padding:0;overflow:visible}
  .crm-row{
    grid-template-columns:28px 40px minmax(0,1fr) auto;
    grid-template-areas:"sel av name stage" "sel av email email" "sel av share share";
    gap:2px 10px;
    padding:10px 12px;
    height:auto;max-height:none;min-height:0;
    align-items:center;
    border:1px solid color-mix(in srgb,var(--border) 82%,transparent);
    border-radius:var(--radius-md);
    margin-bottom:8px;
    box-shadow:0 1px 2px color-mix(in srgb,var(--text) 4%,transparent);
  }
  .crm-row:last-child{margin-bottom:0}
  .crm-row .crm-col-sel{grid-area:sel;align-self:start;margin-top:4px}
  .crm-row .crm-col-av{grid-area:av;align-self:start}
  .crm-row .crm-col-name{grid-area:name;min-width:0}
  .crm-row .crm-col-name strong{display:block;font-size:var(--text-sm)}
  .crm-row .crm-col-name small{display:block;margin-top:1px}
  .crm-row .crm-col-email{grid-area:email;display:block!important;font-size:var(--text-xs);color:var(--text-dim);line-height:1.35}
  .crm-row .crm-col-stage{grid-area:stage;justify-self:end;align-self:start}
  .crm-row .crm-col-share{grid-area:share;display:flex!important;align-items:center;gap:4px;min-height:18px}
  .crm-row .crm-col-mobile-sub{grid-area:sub;display:block;font-size:11px;color:var(--text-dim);line-height:1.35}
  .crm-row .crm-col-phone,.crm-row .crm-col-co,.crm-row .crm-col-value,.crm-row .crm-col-date{display:none!important}
  body.crm-mobile-contact .crm-profile-header{margin-bottom:6px;border-radius:var(--radius-md)}
  body.crm-mobile-contact .crm-profile-cover{min-height:46px;padding:max(6px,env(safe-area-inset-top,0px)) 10px 30px}
  body.crm-mobile-contact .crm-profile-body{margin-top:-24px;padding:0 10px 10px}
  body.crm-mobile-contact .crm-profile-identity:has(.crm-profile-text--solo) .crm-profile-avatar-wrap .crm-avatar-drop{width:54px;height:54px}
  body.crm-contact-mobile-stack .crm-fold-drag{width:38px;height:38px;margin:-9px 2px -9px -2px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--surface-2) 80%,transparent)}
  body.crm-contact-mobile-stack .crm-fold-drag:active{background:color-mix(in srgb,var(--accent) 12%,var(--surface-2))}
  body.crm-contact-mobile-stack .crm-fold.is-drop-target{outline-width:2px;background:color-mix(in srgb,var(--accent) 4%,var(--surface))}
  body.crm-mobile-contact .crm-profile-avatar-wrap .crm-avatar-drop{width:58px;height:58px}
  body.crm-mobile-contact .crm-profile-avatar-wrap .crm-avatar-drop .crm-avatar-lg{font-size:18px}
  body.crm-mobile-contact .crm-profile-name{font-size:1.05rem}
  body.crm-mobile-contact .crm-profile-sub{font-size:11px}
  body.crm-mobile-contact .crm-profile-quick .crm-hero-coords{display:grid;grid-template-columns:1fr 1fr;gap:6px}
  body.crm-mobile-contact .crm-profile-quick .crm-hero-chip{max-width:none;width:100%;min-height:34px;flex:none}
  body.crm-mobile-contact .crm-profile-quick .crm-hero-chip-v{font-size:11px}
  body.crm-mobile-contact .crm-profile-meta .crm-hero-meta{gap:4px}
  body.crm-mobile-contact .crm-profile-meta .crm-hero-pills{width:100%;flex-wrap:wrap}
  body.crm-mobile-contact .crm-profile-meta .crm-hero-value{margin-left:0;width:auto;max-width:100%}
  body.crm-mobile-contact .crm-profile-meta .crm-hero-add-pick,body.crm-mobile-contact .crm-profile-meta .ui-select{max-width:100%;width:auto;min-width:0}
  body.crm-mobile-contact .crm-fold-drag{width:36px;height:36px;margin:-8px 2px -8px -2px}
  #crm-prospect-btn .nav-ico,.crm-prospect-ico{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px}
  #crm-prospect-btn .nav-ico svg,.crm-prospect-ico svg{display:block;width:18px;height:18px;pointer-events:none}
  .crm-prosp-modal{max-width:min(640px,96vw);width:100%}
  .crm-prosp-lead{margin:4px 0 0;font-size:var(--text-sm);color:var(--text-dim)}
  .crm-prosp-body{display:flex;flex-direction:column;gap:12px;max-height:min(70vh,560px);overflow:auto;padding:4px 0}
  .crm-prosp-field{display:flex;flex-direction:column;gap:4px;font-size:var(--text-sm)}
  .crm-prosp-field .input{margin:0}
  .crm-prosp-row{display:flex;flex-wrap:wrap;gap:8px}
  .crm-prosp-field-grow{flex:1;min-width:160px}
  .crm-prosp-durations{margin:0}
  .crm-prosp-progress{margin-top:4px}
  .crm-prosp-progress-bar{height:6px;border-radius:999px;background:color-mix(in srgb,var(--border) 60%,transparent);overflow:hidden}
  .crm-prosp-progress-bar span{display:block;height:100%;background:var(--accent);transition:width .3s}
  .crm-prosp-progress-meta{margin:6px 0 0;font-size:var(--text-xs);color:var(--text-dim)}
  .crm-prosp-warnings{margin:6px 0 0;padding-left:1.2em;font-size:var(--text-xs);color:var(--warning,#E9A23B)}
  .crm-prosp-results{display:flex;flex-direction:column;gap:8px;margin-top:8px}
  .crm-prosp-card{padding:10px 12px;border:var(--border-width) solid var(--border-subtle,var(--border))}
  .crm-prosp-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
  .crm-prosp-card-title{margin:0;font-size:var(--text-sm);font-weight:var(--font-weight-medium)}
  .crm-prosp-source{font-size:var(--text-xs);white-space:nowrap}
  .crm-prosp-meta{margin:4px 0 0;font-size:var(--text-xs);color:var(--text-dim)}
  .crm-prosp-meta span{color:var(--text);font-weight:var(--font-weight-medium);margin-right:4px}
  .crm-prosp-summary{margin:8px 0 0;font-size:var(--text-xs);font-style:italic;color:var(--text-dim)}
  .crm-prosp-empty{margin:8px 0;text-align:center}
  .crm-prosp-foot .modal-foot-spacer{flex:1}
  #crm-io-btn .nav-ico,.crm-io-ico{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px}
  #crm-io-btn .nav-ico svg,.crm-io-ico svg{display:block;width:18px;height:18px;pointer-events:none}
  .crm-adv-toggle .nav-ico,.crm-add-btn .nav-ico{display:inline-flex;align-items:center;justify-content:center}
  .crm-adv-toggle .nav-ico svg,.crm-add-btn .nav-ico svg{display:block;width:18px;height:18px;pointer-events:none}
  .crm-advanced{padding:12px;margin-bottom:6px}
  .crm-filter-foot .btn{min-height:40px}
}
@media(max-width:768px){
  .crm-toolbar{align-items:stretch}
  .crm-fold-head{min-height:44px;padding-top:11px;padding-bottom:11px}
  .crm-fold-action{min-height:36px;padding:0 12px}
  .crm-int-actions .btn{min-height:40px;flex:1 1 calc(50% - 3px)}
  .crm-int-actions .btn-accent{flex:1 1 100%}
  .crm-tag-add{grid-template-columns:1fr}
  .crm-tag-add .btn-sm{width:100%;min-height:40px}
  .crm-filter-value-row{grid-template-columns:1fr}
  .crm-sf-row{flex-direction:column}
  .crm-sf-actions{width:100%;justify-content:flex-start}
}
@media(max-width:560px){
  .crm-io-hub{grid-template-columns:1fr}
  .crm-io-fmt-grid{grid-template-columns:1fr}
  .crm-io-head{align-items:flex-start;flex-wrap:wrap;padding:14px}
  .crm-io-head-tools{width:100%;justify-content:space-between}
  .crm-io-head-tools .crm-io-template{display:none}
  .crm-io-template-block{flex-direction:column;align-items:stretch;gap:10px}
  .crm-io-template-block .btn{width:100%;justify-content:center}
  #app-modal-root.modal:has(.crm-io-modal),#app-modal-root.modal:has(.crm-prosp-modal){padding:0;align-items:flex-end}
  .modal-box.crm-io-modal,.modal-box.crm-prosp-modal{width:100vw;max-width:100vw;max-height:min(92dvh,92vh);border-radius:16px 16px 0 0;border-left:0;border-right:0;border-bottom:0}
  .crm-prosp-inline{grid-template-columns:1fr}
  .crm-prosp-action-row{align-items:stretch}
  .crm-prosp-durations{width:100%}
  .crm-prosp-run{width:100%;justify-content:center}
  .crm-prosp-foot{flex-direction:column;align-items:stretch;gap:10px}
  .crm-prosp-foot-actions{width:100%;justify-content:stretch}
  .crm-prosp-foot-actions .btn{flex:1 1 auto;justify-content:center}
  .crm-imp-summary{grid-template-columns:1fr 1fr}
  .crm-fold-contact .crm-channel{grid-template-columns:22px minmax(0,1fr) auto;padding:8px 0}
  .crm-fold-contact .crm-channel-actions{width:auto;justify-content:flex-start;gap:2px}
  .crm-fold-contact .crm-icon-btn{width:32px;height:32px}
  .crm-inline-label{max-width:none}
  .crm-chip{padding:7px 14px;font-size:var(--text-sm)}
  .crm-advanced .crm-check{min-height:36px;align-items:center}
}
.page-docs{flex-direction:column;padding:0!important;gap:0;overflow:hidden;flex:1;min-height:0}
.docs-module-bar{padding:var(--gap-sm) calc(var(--page-pad) + 4px);border-bottom:var(--border-width) solid var(--border);flex-shrink:0;background:var(--bg);margin:0}
.docs-subnav .seg-btn{text-decoration:none;color:inherit}
.docs-pane{flex:1;min-height:0;overflow:auto;padding:var(--page-pad) calc(var(--page-pad) + 4px);display:flex;flex-direction:column;gap:var(--gap-sm);padding-bottom:max(var(--page-pad),env(safe-area-inset-bottom,0px))}

/* ── Documents dashboard ── */
#page-asst-docs-dashboard .docs-pane{gap:var(--gap)}
.docs-dash-stats{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:var(--gap-sm);
}
.docs-dash-stat{
  display:flex;
  flex-direction:column;
  gap:6px;
  min-width:0;
  text-decoration:none;
  color:inherit;
  padding:var(--gap-sm) var(--gap);
  transition:border-color var(--motion-fast,var(--transition)),background var(--motion-fast,var(--transition)),transform var(--motion-fast,var(--transition));
}
a.docs-dash-stat-link:hover{
  border-color:color-mix(in srgb,var(--accent) 45%,var(--border));
  background:color-mix(in srgb,var(--surface-2) 55%,var(--surface));
}
a.docs-dash-stat-link:focus-visible{outline:none;box-shadow:var(--focus-ring)}
.docs-dash-stat.is-disabled{opacity:.55;cursor:default}
.docs-dash-stat-label{
  font-size:var(--text-xs);
  font-weight:var(--font-weight-medium);
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--text-dim);
}
.docs-dash-stat-value{
  font-family:var(--font-display);
  font-size:clamp(1.6rem,2.4vw,2rem);
  font-weight:var(--font-weight-medium);
  line-height:1.1;
  font-variant-numeric:tabular-nums;
  color:var(--text);
}
.docs-dash-stat-sub{
  font-size:var(--text-xs);
  color:var(--text-dim);
  line-height:1.35;
}
.docs-dash-quota{
  display:flex;
  flex-direction:column;
  gap:8px;
}
.docs-dash-quota-link{
  align-self:flex-start;
  font-size:var(--text-sm);
  color:var(--accent);
  text-decoration:none;
  font-weight:var(--font-weight-medium);
}
.docs-dash-quota-link:hover{text-decoration:underline}
.docs-dash-quick-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:var(--gap-sm);
}
.docs-dash-quick{
  display:flex;
  flex-direction:column;
  gap:8px;
  min-width:0;
  text-decoration:none;
  color:inherit;
  padding:var(--gap-sm) var(--gap);
  transition:border-color var(--motion-fast,var(--transition)),background var(--motion-fast,var(--transition));
}
.docs-dash-quick:hover{
  border-color:color-mix(in srgb,var(--accent) 45%,var(--border));
  background:color-mix(in srgb,var(--surface-2) 55%,var(--surface));
}
.docs-dash-quick:focus-visible{outline:none;box-shadow:var(--focus-ring)}
.docs-dash-quick-ico{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:36px;height:36px;
  border-radius:var(--radius-sm);
  background:color-mix(in srgb,var(--accent) 12%,var(--surface-2));
  color:var(--accent);
}
.docs-dash-quick-ico svg{width:18px;height:18px;display:block}
.docs-dash-quick strong{
  font-size:var(--text-md);
  font-weight:var(--font-weight-medium);
  color:var(--text);
  line-height:1.25;
}
.docs-dash-quick-desc{
  font-size:var(--text-sm);
  color:var(--text-dim);
  line-height:1.4;
}
@media(max-width:960px){
  .docs-dash-stats,.docs-dash-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){
  .docs-dash-stats,.docs-dash-quick-grid{grid-template-columns:1fr}
}
.page-assistant .page-docs>.page-head{height:auto;min-height:0;padding:0;margin:0;border:0;display:flex;align-items:center;flex-shrink:0}
.page-assistant .page-docs .page-head h1{margin:0;font-family:var(--font-display);font-size:var(--text-h1);font-weight:var(--font-weight-medium);line-height:var(--lh-tight)}
.page-docs .storage-body{flex:1;min-height:0}
/* ── File manager (Mes fichiers) ── */
.fm-body{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,34%);gap:var(--gap);
  align-items:stretch;min-height:min(520px,60vh);
}
.fm-body.is-panel-closed{grid-template-columns:1fr}
.fm-body.is-panel-closed .fm-preview{display:none}
.fm-browser{
  position:relative;display:flex;flex-direction:column;min-width:0;min-height:0;
  background:var(--surface);border:var(--border-width) solid color-mix(in srgb,var(--border) 88%,transparent);
  border-radius:var(--radius);padding:var(--panel-pad);box-shadow:var(--shadow-card);
}
.fm-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;flex-shrink:0}
.fm-toolbar-spacer{flex:1;min-width:8px}
.fm-view-toggle{display:inline-flex;border:var(--border-width) solid var(--border);border-radius:var(--radius-sm);overflow:hidden;background:var(--bg)}
.fm-view-btn{
  border:0;background:transparent;color:var(--text-dim);padding:6px 12px;cursor:pointer;
  font-size:var(--text-xs);font-weight:var(--font-weight-medium);line-height:1.2;
  transition:background var(--motion-fast,var(--transition)),color var(--motion-fast,var(--transition));
}
.fm-view-btn.on,.fm-view-btn:hover{background:var(--surface-2);color:var(--text)}
.fm-view-btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}
.fm-nav-row{display:flex;align-items:center;gap:8px;margin-bottom:10px;flex-shrink:0;min-width:0}
.fm-back-btn{flex-shrink:0}
.fm-path-crumb{
  flex:1;min-width:0;display:flex;align-items:center;flex-wrap:nowrap;gap:0;
  font-size:var(--text-sm);color:var(--text-dim);overflow:hidden;
}
.fm-path-crumb .fm-crumb-link{
  border:0;background:transparent;padding:0;color:var(--text-dim);cursor:pointer;
  font:inherit;max-width:10rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  transition:color var(--motion-fast,var(--transition));
}
.fm-path-crumb .fm-crumb-link:hover,.fm-path-crumb .fm-crumb-link:focus-visible{color:var(--text);text-decoration:underline;outline:none;box-shadow:var(--focus-ring)}
.fm-path-crumb .fm-crumb-current{color:var(--text);font-weight:var(--font-weight-medium);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fm-path-crumb .fm-crumb-sep{color:var(--border);margin:0 6px;user-select:none}
.fm-grid{flex:1;overflow:auto;min-height:0;display:grid;gap:8px;align-content:start;padding:2px}
.fm-grid[data-view=grid]{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}
.fm-grid[data-view=list]{grid-template-columns:1fr;gap:2px}
.fm-welcome{
  grid-column:1/-1;display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:12px;padding:var(--gap-lg) var(--gap);text-align:center;color:var(--text-dim);min-height:12rem;
}
.fm-welcome-title{margin:0;font-family:var(--font-display);font-size:var(--text-h3);font-weight:var(--font-weight-medium);color:var(--text);line-height:var(--lh-tight)}
.fm-welcome-lead{margin:0;font-size:var(--text-sm);max-width:28rem;line-height:var(--lh-loose)}
.fm-welcome-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:4px}
.fm-grid.is-media-gallery,.fm-grid.is-media-gallery[data-view=grid],.fm-grid.is-media-gallery[data-view=list]{
  display:flex;flex-direction:column;grid-template-columns:unset;gap:var(--gap);padding:0;flex:1;min-height:0;overflow:visible;align-self:stretch;width:100%;
}
.me-media-gallery{display:flex;flex-direction:column;gap:var(--gap);width:100%;min-width:0;flex:1;align-self:stretch}
.me-media-gallery .om-toolbar.me-media-toolbar{
  flex-wrap:wrap;align-items:center;gap:var(--gap-sm);padding:0;flex-shrink:0;width:100%;
}
.me-media-gallery .om-search{flex:1;min-width:min(100%,12rem);max-width:none}
.me-media-gallery .om-banner{font-size:var(--text-sm);display:flex;flex-wrap:wrap;align-items:center;gap:var(--gap-sm);padding:var(--space-2) var(--gap-sm);flex-shrink:0;width:100%}
.me-media-gallery .om-drop{flex-shrink:0;width:100%}
.me-media-gallery .om-grid{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:var(--gap-sm);
  width:100%;min-width:0;flex:unset;min-height:0;
}
.fm-browser.is-media-gallery .fm-toolbar,
.fm-browser.is-media-gallery .fm-nav-row{display:none!important}
.fm-browser.is-media-gallery{border:0;box-shadow:none;padding:0;background:transparent;width:100%!important;min-width:0!important;max-width:none!important;flex:1}
.fm-body.is-media-only{
  display:flex;flex-direction:column;grid-template-columns:unset;
  flex:1;min-height:0;gap:var(--gap);align-items:stretch;
}
.fm-body.is-media-only .fm-browser{max-width:none;width:100%;flex:1;min-height:0;display:flex;flex-direction:column}
.fm-body.is-media-only .fm-preview{display:none!important}
.fm-browser.is-media-gallery .fm-drop-overlay{display:none!important}
.page-docs.is-media-mode{overflow:hidden}
.page-docs.is-media-mode .docs-pane{
  flex:1;min-height:0;overflow:auto;
  display:flex;flex-direction:column;gap:var(--gap);
  padding:var(--page-pad) calc(var(--page-pad) + 4px);
  padding-bottom:max(var(--page-pad),env(safe-area-inset-bottom,0px));
}
.page-docs.is-media-mode .page-head{
  padding:0;margin:0 0 var(--gap-sm);flex-shrink:0;
}
.page-docs.is-media-mode .storage-body,
.page-docs.is-media-mode .fm-body{
  flex:1;min-height:0;padding:0;margin:0;
}
.page-docs.is-media-mode .fm-quota-banner{display:none}
.page-docs.is-media-mode .fm-browser.storage-tree-panel{
  width:100%!important;min-width:0!important;max-width:none!important;flex-shrink:1;
}
.me-media-hint{margin:0;padding:0 var(--space-1);font-size:var(--text-sm);line-height:var(--lh-loose)}
@media(max-width:768px){
  .me-media-gallery .om-toolbar.me-media-toolbar{align-items:stretch}
  .me-media-gallery .om-type-filters{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .me-media-gallery .om-search{width:100%;flex:1 1 100%}
  .me-media-gallery .om-grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr))}
}
.fm-browser.is-file-drag{
  border-color:color-mix(in srgb,var(--accent) 55%,var(--border));
  box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 18%,transparent),var(--shadow-card);
}
.fm-loading{
  display:grid;gap:8px;align-content:start;padding:4px 2px;
  grid-template-columns:repeat(auto-fill,minmax(120px,1fr));
}
.fm-grid[data-view=list] .fm-loading{grid-template-columns:1fr;gap:6px}
.fm-skel-item{
  display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 8px;border-radius:var(--radius-md);
  background:color-mix(in srgb,var(--surface-2) 45%,transparent);
  animation:fm-pulse 1.1s ease-in-out infinite;
}
.fm-grid[data-view=list] .fm-skel-item{
  flex-direction:row;align-items:center;padding:10px 12px;border-radius:var(--radius-sm);
}
.fm-skel-ico{
  width:52px;height:52px;border-radius:var(--radius-sm);flex-shrink:0;
  background:linear-gradient(90deg,color-mix(in srgb,var(--surface-2) 80%,transparent),color-mix(in srgb,var(--border) 35%,var(--surface-2)),color-mix(in srgb,var(--surface-2) 80%,transparent));
  background-size:200% 100%;
}
.fm-grid[data-view=list] .fm-skel-ico{width:40px;height:40px}
.fm-skel-lines{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px;width:100%}
.fm-skel-lines span{
  display:block;height:10px;border-radius:999px;
  background:linear-gradient(90deg,color-mix(in srgb,var(--surface-2) 80%,transparent),color-mix(in srgb,var(--border) 35%,var(--surface-2)),color-mix(in srgb,var(--surface-2) 80%,transparent));
  background-size:200% 100%;
}
.fm-skel-lines span:last-child{width:55%}
.fm-grid.fm-view-switch .fm-item{animation:fm-fade-in .2s ease both}
@keyframes fm-pulse{0%,100%{opacity:.72}50%{opacity:1}}
@keyframes fm-fade-in{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
.fm-item{
  position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;
  padding:10px 8px 8px;border-radius:var(--radius-md);border:var(--border-width) solid color-mix(in srgb,var(--border) 55%,transparent);
  background:color-mix(in srgb,var(--surface) 96%,var(--surface-2));
  cursor:pointer;user-select:none;
  transition:background .16s,border-color .16s,box-shadow .16s,transform .16s;
  min-width:0;text-align:center;
}
.fm-grid[data-view=list] .fm-item{
  flex-direction:row;align-items:center;gap:12px;padding:10px 12px;text-align:left;border-radius:var(--radius-sm);
}
.fm-item:hover,.fm-item.is-selected{
  background:color-mix(in srgb,var(--surface-2) 90%,transparent);
  border-color:color-mix(in srgb,var(--border) 75%,transparent);
}
.fm-item.is-selected{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 35%,transparent)}
.fm-item.is-drop-target{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--surface));box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 18%,transparent)}
.fm-item.is-dragging{opacity:.45}
.fm-item.fm-item-out{opacity:0;transform:scale(.98);pointer-events:none;transition:opacity .12s,transform .12s}
.fm-item-ico{width:52px;height:52px;display:flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:var(--radius-sm);overflow:hidden;background:color-mix(in srgb,var(--surface-2) 80%,var(--surface))}
.fm-grid[data-view=list] .fm-item-ico{width:40px;height:40px}
.fm-item-ico svg{width:28px;height:28px;color:var(--accent)}
.fm-grid[data-view=list] .fm-item-ico svg{width:22px;height:22px}
.fm-item-ico.is-folder svg{color:color-mix(in srgb,var(--accent) 80%,#c9a227)}
.fm-thumb{width:100%;height:100%;object-fit:cover;display:block}
.fm-thumb-frame{width:100%;height:100%;overflow:hidden;position:relative;background:var(--preview-iframe-bg,var(--surface))}
.fm-thumb-frame iframe{position:absolute;top:0;left:0;width:420px;height:594px;border:0;transform-origin:top left;pointer-events:none;transform:scale(.124)}
.fm-grid[data-view=list] .fm-thumb-frame iframe{transform:scale(.095)}
.fm-item-body{min-width:0;flex:1;display:flex;flex-direction:column;gap:2px;align-items:center;width:100%}
.fm-grid[data-view=list] .fm-item-body{align-items:flex-start}
.fm-item-name{
  font-size:var(--text-xs);font-weight:var(--font-weight-medium);line-height:1.3;
  max-width:100%;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;
  word-break:break-word;color:var(--text);
}
.fm-grid[data-view=list] .fm-item-name{font-size:var(--text-sm);-webkit-line-clamp:1}
.fm-item-meta{font-size:10px;color:var(--text-dim);line-height:1.2}
.fm-grid[data-view=list] .fm-item-meta{font-size:var(--text-xs)}
.fm-grid[data-view=grid] .fm-item-meta{display:none}
.fm-grid[data-view=grid] .fm-project-chip{margin-top:2px;max-width:100%}
.fm-project-chip{
  display:inline-flex;align-items:center;max-width:100%;padding:2px 8px;border-radius:999px;
  font-size:10px;font-weight:var(--font-weight-medium);line-height:1.3;
  color:color-mix(in srgb,var(--teal,#1D9E75) 90%,var(--text));
  background:color-mix(in srgb,var(--teal,#1D9E75) 12%,var(--surface));
  border:var(--border-width) solid color-mix(in srgb,var(--teal,#1D9E75) 28%,var(--border));
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.fm-grid[data-view=list] .fm-project-chip{font-size:var(--text-xs)}
.fm-project-filter-wrap{flex:0 1 auto;min-width:0;max-width:min(220px,42vw)}
.fm-project-filter{width:auto;min-width:140px;max-width:220px;margin:0}
.om-card-foot{align-items:flex-start}
.om-card-foot-text{min-width:0;flex:1;display:flex;flex-direction:column;gap:4px}
.om-card-tags{display:flex;flex-wrap:wrap;gap:4px}
.om-detail-project{margin:8px 0 0}
.fm-project-tag-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-width:0}
.fm-project-tag-row.hidden{display:none}
.fm-project-pick-hint{margin:0 0 8px;font-size:var(--text-sm);color:var(--text-dim)}
.fm-project-pick-list{display:flex;flex-direction:column;gap:4px;max-height:min(50vh,320px);overflow:auto;margin:0}
.fm-project-pick-item{
  display:flex;align-items:center;width:100%;border:var(--border-width) solid color-mix(in srgb,var(--border) 70%,transparent);
  border-radius:var(--radius-sm);background:var(--surface);color:var(--text);padding:10px 12px;
  font:inherit;font-size:var(--text-sm);text-align:left;cursor:pointer;transition:background .12s,border-color .12s;
}
.fm-project-pick-item:hover,.fm-project-pick-item:focus-visible{background:var(--surface-2);outline:none;box-shadow:var(--focus-ring)}
.fm-project-pick-item.is-on{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:color-mix(in srgb,var(--accent) 8%,var(--surface))}
.fm-item-menu-btn{
  position:absolute;top:6px;right:6px;width:28px;height:28px;border:0;border-radius:var(--radius-sm);
  background:color-mix(in srgb,var(--surface) 94%,transparent);color:var(--text-dim);cursor:pointer;
  font-size:16px;line-height:1;opacity:0;transition:opacity .12s,background .12s,color .12s;
}
.fm-grid[data-view=list] .fm-item-menu-btn{position:static;opacity:1;flex-shrink:0;margin-left:auto}
.fm-item:hover .fm-item-menu-btn,.fm-item:focus-within .fm-item-menu-btn,.fm-item.is-selected .fm-item-menu-btn,.fm-item-menu-btn:focus-visible{opacity:1}
.fm-item-menu-btn:hover,.fm-item-menu-btn:focus-visible{color:var(--text);background:var(--surface-2);outline:none;box-shadow:var(--focus-ring)}
.fm-menu{
  position:fixed;z-index:var(--z-popover,220);min-width:11rem;padding:6px;
  background:var(--surface);border:var(--border-width) solid color-mix(in srgb,var(--border) 88%,transparent);
  border-radius:var(--radius-sm);box-shadow:var(--shadow-elev-2,var(--shadow-modal));
}
.fm-menu.hidden{display:none}
.fm-menu-item{
  display:flex;align-items:center;gap:8px;width:100%;border:0;background:transparent;
  padding:8px 10px;border-radius:var(--radius-sm);font-size:var(--text-sm);color:var(--text);
  cursor:pointer;text-align:left;transition:background .12s;
}
.fm-menu-item:hover,.fm-menu-item:focus-visible{background:var(--surface-2);outline:none;box-shadow:var(--focus-ring)}
.fm-menu-item.is-danger{color:var(--danger)}
.fm-menu-item.is-danger:hover{background:var(--danger-soft)}
.fm-drop-overlay{
  position:absolute;inset:0;z-index:5;display:flex;align-items:center;justify-content:center;
  border:2px dashed var(--accent);border-radius:var(--radius-md);
  background:color-mix(in srgb,var(--accent) 14%,var(--surface));pointer-events:none;
  animation:fm-drop-pulse .9s ease-in-out infinite;
}
@keyframes fm-drop-pulse{0%,100%{border-color:color-mix(in srgb,var(--accent) 70%,var(--border))}50%{border-color:var(--accent)}}
.fm-drop-overlay.hidden{display:none}
.fm-drop-overlay-inner{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;padding:var(--gap);color:var(--accent)}
.fm-drop-overlay-inner strong{font-size:var(--text-base)}
.fm-drop-overlay-inner span{font-size:var(--text-sm);color:var(--text);max-width:20rem}
.fm-preview{
  min-width:0;display:flex;flex-direction:column;min-height:0;
  background:var(--surface);border:var(--border-width) solid color-mix(in srgb,var(--border) 88%,transparent);
  border-radius:var(--radius);padding:var(--panel-pad);box-shadow:var(--shadow-card);gap:8px;
}
.fm-preview-head{display:flex;flex-direction:column;gap:8px;flex-shrink:0;min-width:0}
.fm-preview-title{font-size:var(--text-sm);font-weight:var(--font-weight-medium);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}
.fm-preview-actions{display:flex;flex-wrap:wrap;gap:6px}
.fm-preview-actions .btn{font-size:var(--text-xs);padding:5px 10px;min-height:32px}
.fm-preview-body{
  flex:1;min-height:12rem;max-height:min(56vh,520px);display:flex;flex-direction:column;
  align-items:stretch;justify-content:flex-start;overflow:hidden;border-radius:var(--radius-sm);
  background:var(--preview-iframe-bg,color-mix(in srgb,var(--surface-2) 55%,var(--surface)));
  border:var(--border-width) solid color-mix(in srgb,var(--border) 70%,transparent);
}
.fm-preview-body.hidden{display:none}
.fm-preview-body img{max-width:100%;max-height:100%;object-fit:contain;align-self:center;margin:auto}
.fm-preview-body iframe.fm-doc-frame,.fm-preview-body iframe{width:100%;flex:1;min-height:12rem;border:0;background:var(--preview-iframe-bg,#fff)}
.fm-preview-body pre.fm-text-preview{
  margin:0;padding:var(--gap-sm);overflow:auto;font-family:var(--font-mono,monospace);
  font-size:var(--text-xs);line-height:1.45;color:var(--text);white-space:pre-wrap;word-break:break-word;flex:1;
}
.fm-preview-body video,.fm-preview-body audio{width:100%;max-height:100%;align-self:center;margin:auto}
.fm-preview-meta-card{
  flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;
  padding:var(--gap);text-align:center;color:var(--text-dim);
}
.fm-preview-meta-card .fm-meta-ico svg{width:48px;height:48px;color:var(--accent)}
.fm-preview-meta-card strong{color:var(--text);font-size:var(--text-sm);word-break:break-word}
.fm-preview-edit{flex:1;min-height:0;display:flex;flex-direction:column;gap:8px}
.fm-preview-edit.hidden{display:none}
.fm-ftext{flex:1;min-height:10rem;resize:none;font-family:var(--font-mono,monospace);font-size:var(--text-xs);line-height:1.45}
.fm-edit-bar{display:flex;gap:8px;justify-content:flex-end;flex-shrink:0}
.fm-preview[data-mode=edit] #me-preview{display:none!important}
.fm-preview[data-mode=edit] #me-preview-edit{display:flex!important}
.fm-preview[data-mode=edit] #me-edit-btn{display:none!important}
.fm-preview[data-mode=edit] #me-preview-btn{display:inline-flex!important}
.fm-preview[data-has-file="1"][data-editable="1"] #me-edit-btn{display:inline-flex}
.fm-preview-empty{
  flex:0 0 auto;display:flex;align-items:center;justify-content:center;padding:var(--gap-sm);
  color:var(--text-dim);text-align:center;border-radius:var(--radius-sm);
  background:color-mix(in srgb,var(--surface-2) 50%,transparent);min-height:4rem;
}
.fm-preview-empty p{margin:0;font-size:var(--text-xs);line-height:var(--lh-loose)}
.fm-preview[data-has-file="1"] .fm-preview-empty{display:none}
.fm-preview[data-has-file="1"] #me-preview-actions{display:flex!important}
.fm-expand-backdrop{position:fixed;inset:0;background:var(--modal-overlay);z-index:calc(var(--z-modal,200) - 1)}
.fm-expand-backdrop.hidden{display:none}
.fm-expand-modal{
  position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:var(--z-modal,200);
  width:min(960px,calc(100vw - 2rem));max-height:calc(100vh - 2rem);
  display:flex;flex-direction:column;background:var(--surface);
  border:var(--border-width) solid var(--border);border-radius:var(--radius);
  box-shadow:var(--shadow-elev-3,var(--shadow-modal));overflow:hidden;
}
.fm-expand-modal.hidden{display:none}
.fm-expand-head{display:flex;align-items:center;gap:12px;padding:var(--gap-sm) var(--gap);border-bottom:var(--border-width) solid var(--border);flex-shrink:0}
.fm-expand-title{margin:0;flex:1;font-size:var(--text-base);font-weight:var(--font-weight-medium);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fm-expand-actions{display:flex;flex-wrap:wrap;gap:6px;flex-shrink:0}
.fm-expand-body{flex:1;min-height:min(60vh,640px);overflow:hidden;display:flex;background:var(--preview-iframe-bg,var(--bg))}
.fm-expand-body iframe,.fm-expand-body img,.fm-expand-body video{width:100%;height:100%;border:0;object-fit:contain}
.fm-expand-body pre{margin:0;padding:var(--gap);overflow:auto;flex:1;font-family:var(--font-mono,monospace);font-size:var(--text-sm);white-space:pre-wrap}
.fm-quota-banner{flex-direction:column;align-items:stretch;gap:8px;padding:var(--gap-sm) var(--gap)}
.fm-quota-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}
.fm-quota-label{font-size:var(--text-sm);color:var(--text-dim)}
.fm-quota-label strong{color:var(--text)}
.fm-quota-track{height:8px;border-radius:999px;background:color-mix(in srgb,var(--surface-2) 80%,var(--border));overflow:hidden}
.fm-quota-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--accent),color-mix(in srgb,var(--accent) 70%,#6ec6ff));transition:width .25s ease}
.fm-quota-fill.is-warn{background:linear-gradient(90deg,var(--warning,#e6a817),#f0c040)}
.fm-quota-fill.is-full{background:linear-gradient(90deg,var(--danger),#ff7b7b)}
.fm-upload-progress{flex:1 1 100%;display:flex;align-items:center;gap:10px;min-width:12rem}
.fm-upload-progress.hidden{display:none}
.fm-upload-bar{flex:1;height:6px;border-radius:999px;background:var(--surface-2);overflow:hidden}
.fm-upload-bar-fill{height:100%;width:0;background:var(--accent);transition:width .15s ease}
.fm-upload-status{font-size:var(--text-xs);color:var(--text-dim);white-space:nowrap}
@media(hover:none){
  .fm-item-menu-btn{opacity:1}
}
@media(max-width:900px){
  .fm-body{grid-template-columns:1fr}
  .fm-preview{min-height:min(38vh,420px)}
  .fm-preview-body{max-height:min(42vh,480px)}
}
@media(max-width:768px){
  .fm-body.is-mobile-preview .fm-browser{display:none}
  .fm-body.is-mobile-preview .fm-preview{display:flex;min-height:min(70vh,100%)}
  .fm-preview-actions .fm-panel-close{display:none}
  .fm-toolbar .btn{min-height:40px}
  .fm-view-btn{min-height:36px}
  .fm-grid[data-view=grid]{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}
}
@media(max-width:560px){
  .fm-preview-actions .btn{padding:5px 8px}
  .fm-path-crumb .fm-crumb-link{max-width:5rem}
}
.docs-list-card{padding:var(--gap);overflow:visible;flex:1;min-height:0;display:flex;flex-direction:column}
#docs-list-toolbar{display:grid;grid-template-columns:minmax(120px,1fr) minmax(120px,1fr) minmax(160px,2fr) auto;gap:var(--gap-sm);align-items:center;margin-bottom:var(--gap-sm);flex-shrink:0}
#docs-list-toolbar .input,#docs-list-toolbar .ui-select{width:100%;min-width:0;margin:0}
#docs-list-toolbar #docs-new{white-space:nowrap}
#docs-table-wrap{margin:0;border-radius:var(--radius-sm);border:var(--border-width) solid color-mix(in srgb,var(--border) 70%,transparent);overflow:auto;flex:1;min-height:12rem;max-height:calc(100vh - 300px)}
#docs-table-wrap .query-meta{padding:var(--gap)}
#docs-table-wrap .empty-state{min-height:min(240px,35vh)}
#docs-table-wrap .data-table th,#docs-table-wrap .data-table td{padding:10px 12px;vertical-align:middle}
#docs-table-wrap .data-table th:last-child,#docs-table-wrap .data-table td:last-child{width:1%;white-space:nowrap;text-align:right}
#docs-table-wrap .data-table td:nth-child(4){text-align:right;font-variant-numeric:tabular-nums}
#docs-table-wrap .badge{margin:0}
#docs-table-wrap tbody tr.docs-row-click{cursor:pointer}
#docs-table-wrap tbody tr.docs-row-click:hover td{background:color-mix(in srgb,var(--surface-2) 70%,transparent)}
#docs-pager{padding-top:var(--gap-sm);flex-shrink:0}
.docs-row-actions{display:inline-flex;align-items:center;gap:4px;justify-content:flex-end}
.docs-row-actions .docs-act-quick{width:32px;height:32px;min-width:32px}
.docs-client-cell{display:inline-flex;align-items:center;gap:6px;max-width:100%;min-width:0;position:relative}
.docs-client-go{display:inline-flex;align-items:center;gap:6px;min-width:0;color:inherit;text-decoration:none;border-radius:var(--radius-sm)}
.docs-client-go:hover .docs-client-name{color:var(--accent)}
.docs-client-go:hover .docs-client-av{box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 35%,transparent)}
.docs-client-av{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;min-width:22px;border-radius:50%;background:color-mix(in srgb,var(--accent) 14%,var(--surface-2));color:var(--accent);font-size:9px;font-weight:700;line-height:1;overflow:hidden;flex-shrink:0}
.docs-client-av img{width:100%;height:100%;object-fit:cover;display:block}
.docs-client-av-muted{opacity:.65;background:var(--surface-2);color:var(--text-dim)}
.docs-client-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.docs-crm-tip{position:absolute;left:0;top:calc(100% + 6px);z-index:var(--z-popover,220);display:none;min-width:10rem;max-width:16rem;padding:8px 10px;font-size:var(--text-xs);line-height:1.45;color:var(--text);background:var(--surface);border:var(--border-width) solid color-mix(in srgb,var(--border) 88%,transparent);border-radius:var(--radius-sm);box-shadow:var(--shadow-elev-2,var(--shadow-modal));white-space:pre-line;pointer-events:none;text-align:left}
.docs-client-cell.has-crm-tip:hover .docs-crm-tip,.docs-client-cell.has-crm-tip:focus-within .docs-crm-tip{display:block}
#docs-table-wrap .data-table td:nth-child(3){max-width:14rem;overflow:visible;position:relative}
#docs-table-wrap .data-table td:nth-child(3) .docs-client-cell{max-width:14rem}
.docs-card-client{margin-bottom:6px}
.docs-act-menu{position:relative;display:inline-flex}
.docs-act-panel,.float-menu-panel{min-width:200px;padding:4px;border-radius:var(--radius-md);border:var(--border-width) solid color-mix(in srgb,var(--border) 88%,transparent);background:var(--surface);box-shadow:var(--shadow-elev-2,var(--shadow-modal))}
#docs-table-wrap .data-table tr.float-menu-row-open{position:relative;z-index:3}
#docs-table-wrap .data-table tr.float-menu-row-open td{background:color-mix(in srgb,var(--surface-2) 55%,var(--surface))}
.docs-card.float-menu-row-open{position:relative;z-index:3}
.docs-act-item{display:block;width:100%;padding:8px 12px;border:0;border-radius:calc(var(--radius-sm) - 1px);background:transparent;color:var(--text);font:inherit;font-size:var(--text-sm);text-align:left;cursor:pointer;white-space:nowrap}
.docs-act-item:hover,.docs-act-item:focus-visible{background:var(--surface-2);outline:none;box-shadow:var(--focus-ring)}
.docs-act-item-danger{color:var(--danger)}
.docs-act-item-danger:hover{background:var(--danger-soft)}
.docs-editor-head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--gap-sm);width:100%}
.docs-btn-back{flex-shrink:0;text-decoration:none}
.docs-editor-head h1{flex:1;min-width:8rem;margin:0}
.docs-editor-head-actions{margin-left:auto;display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}
.docs-pane-editor{gap:var(--gap-sm)}
.docs-pane-editor .docs-editor-layout{flex:1;min-height:0}
.docs-editor-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--gap);align-items:start}
.docs-editor-form{max-height:calc(100vh - 160px);overflow:auto;padding:var(--gap-sm)}
.docs-editor-guide{margin-bottom:var(--gap-sm);padding:var(--gap-sm);border:var(--border-width) solid color-mix(in srgb,var(--border) 70%,transparent);border-radius:var(--radius);background:color-mix(in srgb,var(--accent) 6%,var(--surface))}
.docs-guide-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}
.docs-guide-title{font-size:var(--text-sm);font-weight:var(--font-weight-medium)}
.docs-guide-progress{font-size:var(--text-xs);color:var(--text-dim);font-variant-numeric:tabular-nums}
.docs-guide-steps{display:flex;flex-direction:column;gap:4px}
.docs-guide-step{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border:var(--border-width) solid transparent;border-radius:var(--radius-sm);background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:background var(--motion-fast,var(--transition)),border-color var(--motion-fast,var(--transition))}
.docs-guide-step:hover,.docs-guide-step:focus-visible{background:var(--surface-2);outline:none;box-shadow:var(--focus-ring)}
.docs-guide-step.is-current{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));background:color-mix(in srgb,var(--accent) 8%,transparent)}
.docs-guide-step.is-done .docs-guide-num{color:var(--accent)}
.docs-guide-num{width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--surface-2);font-size:var(--text-xs);font-weight:600;flex-shrink:0}
.docs-guide-label{font-size:var(--text-sm);font-weight:var(--font-weight-medium);min-width:72px}
.docs-guide-hint{flex:1;font-size:var(--text-xs);color:var(--text-dim);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.docs-fold{margin-bottom:var(--gap-sm)}
.docs-fold.is-done .design-fold-toggle{color:var(--text)}
.docs-fold-summary{flex:1;min-width:0;margin:0 10px;font-size:var(--text-xs);color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:right}
.docs-fold-inner .docs-field:last-child{margin-bottom:0}
.docs-line-des{min-height:52px;resize:vertical;line-height:1.4;white-space:pre-wrap}
.docs-line-des-cell{min-width:180px;vertical-align:top}
.docs-line-des-cell .docs-line-des{min-width:160px;width:100%}
.docs-line-table .docs-line-des{min-height:40px;font-size:var(--text-sm)}
.docs-editor-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--gap-sm);margin-bottom:var(--gap-sm)}
.docs-editor-form .form-row.docs-form-row-3{grid-template-columns:repeat(3,1fr)}
.docs-editor-form .docs-field{min-width:0;margin-bottom:var(--gap-sm)}
.docs-editor-form .docs-field-span2{grid-column:1/-1}
.docs-editor-form .docs-field>.input,.docs-editor-form .docs-field>.ui-select,.docs-editor-form .docs-field>.ui-combobox{width:100%}
.docs-editor-form .ui-select{display:flex;width:100%}
.docs-editor-form .ui-select-trigger{width:100%;margin:0}
.docs-preview-pane{position:sticky;top:var(--gap);max-height:calc(100vh - 120px);overflow:hidden;padding:var(--gap-sm);background:color-mix(in srgb,var(--surface-2) 60%,transparent);border-radius:var(--radius);display:flex;flex-direction:column;gap:var(--gap-sm)}
.docs-preview-pane.is-zoomed{overflow:auto}
.docs-preview-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-shrink:0}
.docs-preview-toolbar .seg-btn{min-height:32px;padding:0 12px;font-size:var(--text-xs)}
.docs-preview-scale{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:4px;position:relative}
.docs-preview-scale .ps-doc{width:210mm;margin:0;transform-origin:center center;transition:transform var(--motion-fast,var(--transition))}
.docs-preview-scale.is-loading .ps-doc{opacity:.35}
.docs-preview-skeleton{position:absolute;inset:12px;border-radius:var(--radius);background:linear-gradient(90deg,var(--surface-2),var(--surface),var(--surface-2));background-size:200% 100%;animation:crm-shimmer 1.1s infinite;pointer-events:none}
.ui-combobox{position:relative;display:flex;width:100%;min-width:0}
.ui-combobox-control{position:relative;display:flex;align-items:center;width:100%;min-width:0}
.ui-combobox-input{width:100%;min-width:0;padding-right:36px;margin:0}
.ui-combobox-input:focus-visible{outline:none;box-shadow:var(--focus-ring);border-color:var(--accent)}
.ui-combobox-clear{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:28px;height:28px;font-size:18px;line-height:1}
.ui-combobox-menu{min-width:100%;width:max-content;max-width:min(90vw,420px);max-height:min(280px,50vh);overflow:auto;padding:4px;border-radius:var(--radius-md);border:var(--border-width) solid color-mix(in srgb,var(--border) 88%,transparent);background:var(--surface);box-shadow:var(--shadow-elev-2,var(--shadow-modal))}
.ui-combobox-menu.is-floating{position:fixed;z-index:var(--z-popover,220)}
.ui-combobox-opt{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:8px 10px;border:0;border-radius:calc(var(--radius-sm) - 1px);background:transparent;color:var(--text);font:inherit;font-size:var(--text-sm);text-align:left;cursor:pointer;transition:background var(--motion-fast,var(--transition))}
.ui-combobox-opt:hover:not(:disabled),.ui-combobox-opt.is-active{background:var(--surface-2)}
.ui-combobox-opt-main{max-width:100%;line-height:1.35}
.ui-combobox-opt-co{color:var(--text-dim);font-weight:var(--font-weight-medium)}
.ui-combobox-opt-sub{font-size:var(--text-xs);color:var(--text-dim);max-width:100%}
.ui-combobox-mark{background:color-mix(in srgb,var(--accent) 28%,transparent);color:inherit;border-radius:2px;padding:0 1px}
.ui-combobox-state{padding:10px 12px;font-size:var(--text-sm);color:var(--text-dim)}
.ui-combobox-action{margin:4px 8px 8px;width:calc(100% - 16px)}
.ui-combobox-more{padding:8px 10px;font-size:var(--text-xs);color:var(--text-dim);border-top:var(--border-width) solid color-mix(in srgb,var(--border) 60%,transparent)}
.ui-combobox-skeleton{height:44px;margin:4px 0;border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--surface-2),var(--surface),var(--surface-2));background-size:200% 100%;animation:crm-shimmer 1.1s infinite}
.ui-combobox.is-disabled{opacity:.55;pointer-events:none}
@media(prefers-reduced-motion:reduce){.docs-preview-scale .ps-doc{transition:none}.ui-combobox-skeleton,.docs-preview-skeleton{animation:none}}
.docs-line-table{font-size:var(--text-sm)}
.docs-line-table .input{min-height:32px;padding:4px 8px;font-size:var(--text-sm)}
.docs-line-table td{vertical-align:middle}
.docs-line-actions{display:flex;gap:2px;white-space:nowrap}
.docs-field{margin-bottom:var(--gap-sm)}
.badge-draft{background:var(--surface-2);color:var(--text-dim)}
.badge-issued{background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent)}
.badge-paid{background:color-mix(in srgb,#15803d 18%,transparent);color:#15803d}
.badge-cancelled{background:var(--danger-soft);color:var(--danger)}
@media print{
  body.docs-printing aside,body.docs-printing .content-mobile-head,body.docs-printing .docs-editor-form,body.docs-printing .docs-editor-head,body.docs-printing .sidebar,body.docs-printing .docs-module-bar{display:none!important}
  body.docs-printing .content{margin:0;padding:0}
  body.docs-printing .docs-editor-layout{display:block}
  body.docs-printing .docs-preview-pane{background:none;padding:0;max-height:none;overflow:visible;position:static}
  body.docs-printing .docs-preview-toolbar{display:none!important}
  body.docs-printing .docs-preview-scale .ps-doc{transform:none;width:auto}
}
@media(max-width:960px){
  .docs-editor-layout{grid-template-columns:1fr}
  .docs-editor-layout[data-pane=form] .docs-preview-pane{display:none}
  .docs-editor-layout[data-pane=preview] .docs-editor-form{display:none}
  .docs-preview-pane{position:static;max-height:none;padding:var(--gap-sm)}
  .docs-mobile-tabs{display:flex;gap:6px;margin:0 0 var(--gap-sm)}
  .docs-mobile-tabs .seg-btn{flex:1;min-height:44px}
  .docs-totals-bar{display:flex;justify-content:space-between;gap:12px;padding:10px var(--gap);margin:0 0 var(--gap-sm);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);font-size:var(--text-sm)}
  .docs-totals-bar.hidden{display:none!important}
  .docs-line-table-desktop{display:none}
  .docs-line-cards{display:flex;flex-direction:column;gap:var(--gap-sm)}
  .docs-line-card{padding:var(--gap-sm);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}
  .docs-line-actions .icon-btn{min-width:44px;min-height:44px}
  .docs-editor-head-actions{flex-wrap:wrap;width:100%;justify-content:flex-end}
  .docs-editor-form .form-row,.docs-editor-form .form-row.docs-form-row-3{grid-template-columns:1fr}
  .docs-guide-hint{display:none}
  .docs-guide-step{padding:10px 12px}
  .docs-fold-summary{display:none}
  .docs-editor-head-actions .btn{min-height:44px}
  #docs-list-toolbar{grid-template-columns:1fr;gap:8px}
  #docs-list-toolbar #docs-new{width:100%}
.docs-cgv-panel{margin-bottom:var(--gap)}
.docs-cgv-head{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--gap-sm);margin-bottom:var(--gap-sm)}
.docs-cgv-list{display:flex;flex-direction:column;gap:8px;margin-top:var(--gap-sm)}
.docs-cgv-card{padding:10px 12px;border:var(--border-width) solid var(--border);border-radius:var(--radius);background:var(--surface)}
.docs-cgv-card.drag-over{outline:2px solid color-mix(in srgb,var(--accent) 40%,transparent)}
.docs-cgv-card-head{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:6px}
.docs-cgv-drag{cursor:grab;color:var(--text-dim);user-select:none}
.docs-cgv-badge{font-size:.72rem;padding:2px 6px;border-radius:999px;background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent)}
.docs-cgv-preview{font-size:var(--text-sm);color:var(--text-dim);margin:0 0 8px;line-height:1.4}
.docs-cgv-card-actions{display:flex;flex-wrap:wrap;gap:6px}
.docs-cgv-editor{margin-bottom:var(--gap-sm)}
.docs-cgv-type-grid{display:flex;flex-wrap:wrap;gap:8px 12px;margin:6px 0 10px}
.docs-cgv-pick-row{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:end;margin-bottom:var(--gap-sm)}
.docs-cgv-pick-actions{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}
  #docs-table-wrap{max-height:none}
  .docs-editor-head-actions{width:100%;margin-left:0}
  .docs-editor-head-actions .btn{min-height:40px}
  .docs-card-list{display:flex;flex-direction:column;gap:var(--gap-sm)}
  .docs-card{padding:var(--gap-sm);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);cursor:pointer}
  .docs-card-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px}
  .docs-card-meta{font-size:var(--text-sm);color:var(--text-dim);margin-bottom:4px}
  .docs-card-ttc{font-size:var(--text-lg);font-weight:600;margin-bottom:8px}
  .docs-card .docs-row-actions{flex-wrap:wrap;margin-top:4px}
}
@media(min-width:961px){
  .docs-mobile-tabs{display:none}
  .docs-line-cards{display:none}
  .docs-totals-bar{display:none!important}
}

.search-subnav{margin-bottom:var(--gap-md)}
.search-filter-row{display:flex;flex-wrap:wrap;gap:var(--gap-sm);align-items:center}
.search-tool-form,.search-fetch-form{margin-bottom:var(--gap-md)}
.search-tool-head{display:flex;gap:8px;align-items:stretch}
.search-tool-head .input{flex:1;min-width:0;margin:0}
.search-tool-head .btn{flex-shrink:0;margin:0}
.search-tool-filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:8px}
.search-tool-filters .input,.search-tool-filters select{margin:0;flex:1 1 auto;min-width:0;max-width:11rem}
.search-tool-limit{max-width:4.5rem!important;flex:0 0 4.5rem!important}
.search-fetch-head{display:flex;flex-direction:column;gap:6px}
.search-fetch-row{display:flex;gap:8px;align-items:stretch}
.search-fetch-row .input{flex:1;min-width:0;margin:0}
.search-fetch-row .btn{flex-shrink:0;margin:0}
.search-fetch-lbl{font-size:var(--text-sm);font-weight:600;color:var(--text)}
.search-tool-results,.search-fetch-result{margin-bottom:var(--gap-md)}
.search-result-list{margin:0;padding-left:1.2rem}
.search-result-item{margin-bottom:var(--gap-sm)}
.search-fetch-pre{white-space:pre-wrap;word-break:break-word;max-height:420px;overflow:auto;font-size:var(--text-xs);margin:0}

.media-subnav{margin-bottom:var(--gap-md)}
.page-head-sub{margin:4px 0 0;font-size:var(--text-sm)}
.media-tool-form{margin-bottom:var(--gap-md)}
.media-tool-row{display:flex;flex-wrap:wrap;gap:var(--gap-sm);align-items:center;margin-top:var(--gap-sm)}
.media-tool-results{margin-bottom:var(--gap-md)}
.media-result-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--gap-md)}
.media-result-card{display:flex;flex-direction:column;overflow:hidden;padding:0}
.media-result-thumb{width:100%;aspect-ratio:4/3;object-fit:cover;background:var(--surface-2)}
.media-result-thumb-ph{display:flex;align-items:center;justify-content:center;font-size:var(--text-h2);color:var(--muted);font-weight:600}
.media-result-body{padding:var(--gap-sm) var(--gap-md) var(--gap-md);display:flex;flex-direction:column;gap:4px;flex:1}
.media-result-title{margin:0;font-size:var(--text-sm);font-weight:600;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.media-result-lic{font-size:var(--text-xs);color:var(--accent)}
.media-result-attrib{font-size:var(--text-xs);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.media-result-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:8px}
.da-media-config{margin-top:10px;padding-top:10px;border-top:1px solid var(--border,#e8dfd0)}
.da-media-summary{margin:0 0 8px;padding:8px 10px;background:var(--surface-2,#f5f0e8);border-radius:8px;font-size:var(--text-sm)}
.da-media-hint{margin:0 0 10px;font-size:.78rem}
.da-media-types{display:flex;flex-wrap:wrap;gap:10px 16px;margin:6px 0 12px}
@media (max-width:640px){
  .media-tool-row .input,.media-tool-row .btn,.media-tool-row select{flex:1 1 100%;min-width:0}
  .media-filters .search-filter-row{flex-direction:column;align-items:stretch}
  .media-filters .search-filter-row .input{width:100%}
  .media-result-grid,.owner-catalog-grid{grid-template-columns:1fr}
  .da-media-config .da-skill-pick-bar{flex-direction:column}
}

.da-search-config{margin-top:10px;padding-top:10px;border-top:1px solid var(--border,#e8dfd0)}
.da-search-summary{margin:0 0 8px;padding:8px 10px;background:var(--surface-2,#f5f0e8);border-radius:8px;font-size:var(--text-sm)}
.da-search-hint{margin:0 0 10px;font-size:.78rem}
.da-search-prov-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--space-3);margin:var(--space-3) 0;max-height:360px;overflow:auto;padding:2px}
.da-search-prov-card{display:flex;flex-direction:column;gap:var(--space-2);text-align:left;min-height:112px;padding:var(--space-3);border:var(--border-width) solid var(--border-subtle,var(--border));border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-elev-1);cursor:pointer;transition:border-color var(--motion-fast,var(--transition)),box-shadow var(--motion-fast,var(--transition)),background var(--motion-fast,var(--transition));width:100%}
.da-search-prov-card:hover{box-shadow:var(--shadow-elev-2,var(--shadow-elev-1));border-color:color-mix(in srgb,var(--accent) 12%,var(--border-subtle,var(--border)))}
.da-search-prov-card.on{border-color:color-mix(in srgb,var(--accent) 45%,var(--border-subtle,var(--border)));box-shadow:var(--shadow-elev-2,var(--shadow-elev-1));background:color-mix(in srgb,var(--accent) 6%,var(--surface))}
.da-search-prov-card.is-disabled{opacity:.62;cursor:pointer}
.da-search-prov-card:focus-visible{outline:none;box-shadow:var(--focus-ring)}
.da-search-detail{margin:0 0 14px}
.da-search-detail-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px;margin:10px 0}
.da-search-detail-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.da-search-prov-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}
.da-search-prov-head strong{font-size:var(--text-sm);font-weight:600}
.da-search-prov-desc{font-size:var(--text-xs);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.da-search-prov-meta{display:flex;flex-wrap:wrap;gap:6px;font-size:.72rem;color:var(--text-dim)}
.da-search-prov-tags{display:flex;flex-wrap:wrap;gap:4px}
.da-search-types{display:flex;flex-wrap:wrap;gap:10px 16px;margin:6px 0 12px}
.da-search-type-chk{font-size:var(--text-sm)}

/* Image gen skill — catalogue premium picker */
.da-image-shell{display:flex;flex-direction:column;gap:8px;min-width:0}
.da-image-hero{padding:0;border:none;background:transparent;box-shadow:none;margin:0 0 4px}
.da-image-hero .da-skill-active-bar{margin:0}
.da-image-hero-inner{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:flex-start;justify-content:space-between}
.da-image-hero-main{min-width:min(100%,200px);flex:1}
.da-image-hero-k{display:block;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);margin-bottom:4px}
.da-image-hero-name{display:block;font-size:var(--text-md);font-weight:600;line-height:1.25;margin-bottom:2px}
.da-image-hero-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;flex:1 1 280px}
.da-image-stat{padding:8px 10px;border-radius:var(--radius-sm);border:1px solid color-mix(in srgb,var(--border) 80%,transparent);background:color-mix(in srgb,var(--surface) 88%,var(--surface-2))}
.da-image-stat-wide{grid-column:1/-1}
.da-image-stat-k{display:block;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-dim);margin-bottom:4px}
.da-image-stat-v{display:block;font-size:var(--text-sm);font-weight:600;color:var(--text);line-height:1.3}
.da-image-stat-v.is-high{color:var(--success,#16a34a)}
.da-image-stat-v.is-mid{color:var(--accent)}
.da-image-toolbar-meta{display:flex;flex-direction:column;gap:6px}
.da-image-meta-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}
.da-image-meta{margin:0;font-size:var(--text-xs);color:var(--text-dim);flex:1;min-width:0}
.da-image-refresh{flex-shrink:0}
.da-image-model-card .cat-card-title{font-size:var(--text-xs);line-height:1.2}
.da-image-model-card .cat-card-slug{font-size:10px}
.da-image-model-card .cat-card-tags{gap:3px}
.da-image-model-card .profile-role-tag{font-size:9px;padding:1px 6px}
.da-image-model-list.cat-model-list-wrap{max-height:min(52vh,520px);margin:0}
.da-image-model-list .cat-model-row.is-selected{border-color:color-mix(in srgb,var(--accent) 50%,var(--border));background:color-mix(in srgb,var(--accent) 10%,var(--surface));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 18%,transparent)}
.da-image-grid-loading{display:flex;flex-direction:column;gap:8px;padding:var(--space-2)}
.da-image-detail-btn.on{background:color-mix(in srgb,var(--accent) 12%,var(--surface));border-color:color-mix(in srgb,var(--accent) 35%,var(--border));color:var(--accent)}
.da-image-model-card{position:relative;overflow:hidden;text-align:left;width:100%;cursor:pointer;min-height:118px;padding:10px;gap:6px;border-radius:calc(var(--radius-md) + 2px)}
.da-image-model-card.is-selected,.da-image-model-card.is-selected:hover{border-color:color-mix(in srgb,var(--accent) 58%,var(--border));background:color-mix(in srgb,var(--accent) 11%,var(--surface));box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 22%,transparent),var(--shadow-elev-1)}
.da-image-pick-mark{position:absolute;top:8px;right:8px;z-index:2;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:var(--accent-text,#fff);background:var(--accent);box-shadow:0 1px 4px color-mix(in srgb,var(--text) 18%,transparent)}
.da-image-card-accent{position:absolute;top:0;left:0;right:0;height:3px;background:var(--border)}
.da-image-card-accent.is-high{background:var(--success,#16a34a)}
.da-image-card-accent.is-mid{background:var(--accent)}
.da-image-card-accent.is-low{background:color-mix(in srgb,var(--text-dim) 55%,var(--border))}
.da-image-score-ring{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;min-width:38px;height:38px;border-radius:50%;border:2px solid color-mix(in srgb,var(--border) 80%,transparent);background:color-mix(in srgb,var(--surface-2) 60%,var(--surface));flex-shrink:0;line-height:1}
.da-image-score-ring strong{font-size:13px;font-weight:700}
.da-image-score-ring small{font-size:9px;color:var(--text-dim);margin-top:-2px}
.da-image-score-ring.is-high{border-color:color-mix(in srgb,var(--success,#16a34a) 45%,var(--border));color:var(--success,#16a34a)}
.da-image-score-ring.is-mid{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));color:var(--accent)}
.da-image-model-perf{height:4px;border-radius:999px;background:color-mix(in srgb,var(--border) 60%,transparent);overflow:hidden;margin:2px 0 4px}
.da-image-perf-fill{display:block;height:100%;border-radius:inherit;background:var(--accent);opacity:.9}
.da-image-perf-fill.is-high{background:var(--success,#16a34a)}
.da-image-perf-fill.is-mid{background:var(--accent)}
.da-image-perf-fill.is-low{background:color-mix(in srgb,var(--text-dim) 70%,var(--border))}
.da-image-card-quality{margin:0;font-size:11px;line-height:1.35;color:var(--text-dim);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.da-image-badge-price{font-variant-numeric:tabular-nums}
.da-image-detail{margin:var(--space-2) 0;padding:var(--space-3);border:var(--border-width) solid color-mix(in srgb,var(--accent) 25%,var(--border));border-radius:var(--radius-md);background:color-mix(in srgb,var(--surface-2) 40%,var(--surface))}
.da-image-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.da-image-detail-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;margin:12px 0}
.da-image-detail-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.da-image-perf-label{display:inline-block;margin-bottom:4px;font-size:var(--text-sm)}
.da-image-grid-empty{grid-column:1/-1;text-align:center;padding:var(--space-4);color:var(--text-dim)}
@media(max-width:768px){.da-image-model-grid{max-height:none}.da-image-hero-stats{grid-template-columns:1fr 1fr}}

/* Landing owner — compact pro layout */
#page-landing.page-landing,#page-web-pages.page-landing{display:flex;flex-direction:column;min-height:0;overflow:hidden;padding:0}
#page-landing.page-landing>.landing-owner-root,#page-web-pages.page-landing>.landing-owner-root{flex:1;min-height:0;overflow:auto;padding:var(--gap-sm) var(--page-pad) var(--page-pad)}
.landing-owner-root{max-width:1280px;margin:0 auto;width:100%}
.landing-owner-shell{display:grid;grid-template-columns:minmax(200px,220px) minmax(0,1fr);gap:10px;align-items:start;min-width:0}
.landing-owner-shell.is-sidebar-collapsed{grid-template-columns:48px minmax(0,1fr)}
.landing-owner-sidebar{display:flex;flex-direction:column;gap:6px;min-width:0;position:sticky;top:0;max-height:calc(100vh - 100px)}
.landing-sidebar-head{display:flex;align-items:center;justify-content:space-between;gap:4px;padding:0 2px}
.landing-sidebar-title{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim)}
.landing-sidebar-toggle{min-width:28px;height:28px;padding:0}
.landing-owner-shell.is-sidebar-collapsed .landing-sidebar-title{display:none}
.landing-pages-list{display:flex;flex-direction:column;gap:4px;overflow:auto;max-height:calc(100vh - 130px)}
.landing-new-page{margin:0;width:100%;align-self:stretch;flex:none}
.landing-owner-shell.is-sidebar-collapsed .landing-new-page{display:none}
.landing-owner-shell.is-sidebar-collapsed .landing-sidebar-toggle{min-width:32px}
.landing-page-pick{display:flex;align-items:center;gap:8px;width:100%;text-align:left;padding:7px 8px;border:1px solid color-mix(in srgb,var(--border) 80%,transparent);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;transition:border-color .12s,background .12s}
.landing-page-pick:hover{background:var(--surface-2)}
.landing-page-pick.on{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 6%,var(--surface))}
.landing-page-pick-dot{width:26px;height:26px;border-radius:7px;background:var(--surface-2);display:flex;align-items:center;justify-content:center;font-size:.68rem;font-weight:700;flex:none}
.landing-page-pick-body{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1}
.landing-page-pick-title{font-weight:600;font-size:var(--text-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}
.landing-page-pick-path{font-size:.68rem;line-height:1.2}
.landing-owner-shell.is-sidebar-collapsed .landing-page-pick-body{display:none}
.landing-owner-shell.is-sidebar-collapsed .landing-page-pick{justify-content:center;padding:6px}
.landing-workspace{display:flex;flex-direction:column;gap:8px;min-width:0}
.landing-workspace-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:10px 16px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface)}
.landing-workspace-head .wp-back-browse{flex:none;margin-right:4px}
.landing-workspace-head .landing-head-main{flex:1;min-width:min(100%,200px)}
.landing-head-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.landing-head-title{margin:0;font-family:var(--font-display);font-size:var(--text-md);font-weight:var(--font-weight-medium);line-height:1.2}
.landing-head-url{display:block;margin-top:3px;font-size:.76rem;color:var(--text-dim);text-decoration:none;word-break:break-all;line-height:1.35}
.landing-head-url:hover{color:var(--accent)}
.landing-head-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px;font-size:.7rem;color:var(--text-dim)}
.landing-head-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:center;flex-shrink:0;max-width:100%}
.landing-head-actions .btn{white-space:nowrap}
.landing-editor-pane{min-height:0}
.landing-owner-shell.is-preview-mode .landing-editor-pane{display:none}
.landing-editor-card{display:flex;flex-direction:column;gap:8px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);padding:10px 12px}
.landing-editor-section{display:flex;flex-direction:column;gap:6px}
.landing-editor-section--split{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:8px}
.landing-html-field{margin:0;gap:4px}
.landing-html-input{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.8rem;line-height:1.42;width:100%;min-height:220px;max-height:42vh;resize:vertical;margin:0}
.landing-panel{border:1px solid color-mix(in srgb,var(--border) 75%,transparent);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--surface-2) 35%,var(--surface));overflow:hidden}
.landing-panel>summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:6px;padding:8px 10px;font-size:var(--text-sm);font-weight:600;user-select:none}
.landing-panel>summary::-webkit-details-marker{display:none}
.landing-panel>summary::before{content:'▸';font-size:10px;color:var(--text-dim);transition:transform .12s}
.landing-panel[open]>summary::before{transform:rotate(90deg)}
.landing-panel-body{padding:0 10px 10px;display:flex;flex-direction:column;gap:8px}
.landing-panel-hint{margin:0;font-size:var(--text-xs);color:var(--text-dim);line-height:1.4}
.landing-widget-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:5px}
.landing-widget-list li{display:grid;gap:1px}
.landing-widget-code{font-size:.72rem;word-break:break-all;padding:4px 6px;border-radius:4px;background:var(--surface-2)}
.landing-meta-form{display:flex;flex-direction:column;gap:8px}
.landing-meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px 10px;margin:0}
.landing-meta-grid .field{margin:0;gap:3px}
.landing-meta-grid .field-span2{grid-column:1/-1}
.landing-meta-grid .field-label{font-size:var(--text-xs)}
.landing-favicon-field{display:flex;flex-direction:column;gap:4px}
.landing-favicon-drop{display:flex;align-items:center;gap:10px;padding:8px 10px;max-width:420px;border:1px dashed color-mix(in srgb,var(--border) 80%,transparent);border-radius:var(--radius-sm);background:var(--surface);transition:border-color .12s,background .12s}
.landing-favicon-drop.is-drag{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 7%,var(--surface))}
.landing-favicon-preview-wrap{width:48px;height:48px;border-radius:8px;border:1px solid var(--border);background:var(--surface-2);display:flex;align-items:center;justify-content:center;overflow:hidden;flex:none}
.landing-favicon-preview{width:100%;height:100%;object-fit:contain}
.landing-favicon-empty{font-size:.62rem;color:var(--text-dim);text-align:center;line-height:1.2;padding:2px}
.landing-favicon-body{min-width:0;flex:1}
.landing-favicon-hint{margin:0 0 6px;font-size:var(--text-xs);color:var(--text-dim);line-height:1.35}
.landing-favicon-actions{display:flex;flex-wrap:wrap;gap:4px}
.landing-preview-shell{display:none;flex-direction:column;gap:8px;min-height:calc(100vh - 120px)}
.landing-owner-shell.is-preview-mode .landing-workspace-head{display:none}
.landing-owner-shell.is-preview-mode .landing-preview-shell{display:flex;flex:1}
.landing-preview-shell.is-fullscreen{position:fixed;inset:0;z-index:var(--z-modal,300);background:var(--surface);padding:12px;min-height:100vh}
.landing-preview-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;padding:7px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);flex-shrink:0}
.landing-preview-toolbar-left{display:flex;flex-wrap:wrap;align-items:center;gap:10px;min-width:0}
.landing-preview-close{white-space:nowrap;font-weight:600}
.landing-preview-label{font-size:var(--text-sm);font-weight:600;color:var(--text-dim)}
.landing-preview-tools{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.landing-preview-devices{display:flex;gap:3px}
.landing-preview-viewport{position:relative;flex:1;min-height:320px;overflow:auto;padding:12px;background:color-mix(in srgb,var(--surface-2) 55%,#d8dce2);border:1px solid var(--border);border-radius:var(--radius-sm);display:flex;justify-content:center;align-items:flex-start}
.landing-preview-viewport[data-device=desktop] .landing-preview-frame{width:100%;max-width:1040px}
.landing-preview-viewport[data-device=tablet] .landing-preview-frame{width:768px;max-width:100%}
.landing-preview-viewport[data-device=mobile] .landing-preview-frame{width:390px;max-width:100%}
.landing-preview-frame{display:block;width:100%;min-height:480px;border:0;border-radius:6px;background:#fff;box-shadow:0 6px 24px rgba(0,0,0,.14)}
.landing-empty-hint{padding:8px 4px;line-height:1.45}
.landing-preview-shell.is-loading .landing-preview-frame{opacity:.5}
.landing-preview-skeleton{display:none;position:absolute;inset:12px;border-radius:6px;background:linear-gradient(90deg,var(--surface-2),var(--surface),var(--surface-2));background-size:200% 100%;animation:crm-shimmer 1.1s infinite;pointer-events:none}
.landing-preview-shell.is-loading .landing-preview-skeleton{display:block}
.landing-storage-picker{min-width:0}
.landing-storage-tabs{display:flex;gap:4px;margin-bottom:10px}
.modal-box.landing-storage-modal-box{width:min(920px,96vw);max-height:88vh}
.landing-storage-modal-box .landing-storage-grid--wide{grid-template-columns:repeat(auto-fill,minmax(108px,1fr));gap:8px;max-height:min(58vh,480px);overflow:auto;margin:8px 0}
.landing-storage-shortcuts{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}
.landing-storage-more{display:flex;justify-content:center;margin:8px 0}
.landing-storage-crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin:0 0 8px}
.landing-storage-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:6px;max-height:min(48vh,320px);overflow:auto;margin:6px 0}
.landing-storage-item{display:flex;flex-direction:column;gap:3px;padding:6px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;text-align:left;font:inherit}
.landing-storage-item:hover{border-color:var(--accent)}
.landing-storage-item img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:4px;background:var(--surface-2)}
.landing-storage-item span{font-size:.68rem;word-break:break-all;line-height:1.25}
.landing-storage-item.is-dir{align-items:center;justify-content:center;min-height:64px;font-weight:600;font-size:var(--text-sm)}
@media(max-width:900px){
  .landing-owner-shell,.landing-owner-shell.is-sidebar-collapsed{grid-template-columns:1fr}
  .landing-owner-sidebar{position:static;max-height:none}
  .landing-pages-list{max-height:140px;flex-direction:row;overflow-x:auto}
  .landing-page-pick{min-width:160px;flex:none}
  .landing-editor-section--split{grid-template-columns:1fr}
  .landing-meta-grid{grid-template-columns:1fr}
  .landing-favicon-drop{max-width:none}
  .landing-preview-viewport[data-device=tablet] .landing-preview-frame,.landing-preview-viewport[data-device=mobile] .landing-preview-frame{width:100%}
}
@media(max-width:600px){
  #page-landing.page-landing>.landing-owner-root,#page-web-pages.page-landing>.landing-owner-root{padding:var(--gap-sm)}
  .landing-workspace-head{flex-direction:column;align-items:stretch}
  .landing-head-actions{justify-content:flex-end}
}

/* Web pages module — tabs, folders, section library */
.wp-module{display:flex;flex-direction:column;gap:8px;min-height:0;flex:1}
.wp-module-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;padding-bottom:8px;border-bottom:1px solid var(--border);flex-shrink:0}
.wp-module-title{margin:0;font-family:var(--font-display);font-size:var(--text-md);font-weight:var(--font-weight-medium);line-height:1.2}
.wp-module-lead{margin:0;font-size:var(--text-sm);color:var(--text-dim);line-height:1.35}
.wp-module-tabs{flex-wrap:wrap;flex-shrink:0}
.wp-tab-panel{min-height:0;flex:1;display:flex;flex-direction:column}
.wp-tab-panel.hidden{display:none!important}
.wp-folders-panel{gap:6px;overflow:hidden}
.wp-folders-head{align-items:flex-start;flex-shrink:0}
.wp-folders-head-text{min-width:0;flex:1}
.wp-folders-hint{margin:2px 0 0;font-size:.68rem;color:var(--text-dim);line-height:1.3}
.wp-folder-list{display:flex;flex-direction:column;gap:4px;overflow:auto;max-height:calc(100vh - 220px);min-width:0}
.wp-folder-row-wrap{display:flex;align-items:stretch;gap:2px;min-width:0}
.wp-folder-row{display:flex;align-items:center;gap:8px;flex:1;min-width:0;text-align:left;padding:7px 9px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;font:inherit;color:inherit;transition:border-color .12s,background .12s}
.wp-folder-row:hover{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));background:var(--surface-2)}
.wp-folder-row.on{border-color:color-mix(in srgb,var(--accent) 50%,var(--border));background:color-mix(in srgb,var(--accent) 8%,var(--surface))}
.wp-folder-row-icon{flex:none;font-size:14px;line-height:1}
.wp-folder-row-body{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1}
.wp-folder-row-name{font-size:var(--text-sm);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.2}
.wp-folder-row-meta{font-size:.65rem;color:var(--text-dim);line-height:1.2}
.wp-folder-row-menu{display:flex;flex-direction:row;gap:2px;flex:none;align-self:center;opacity:0;transition:opacity .12s}
.wp-folder-row-wrap:hover .wp-folder-row-menu,.wp-folder-row-wrap:focus-within .wp-folder-row-menu{opacity:1}
.wp-folder-row-menu .btn{min-width:26px;height:26px;padding:0;font-size:.72rem}
.wp-folders-empty{margin:6px 2px 0;font-size:.68rem;color:var(--text-dim);line-height:1.35}
.wp-browse-path{display:flex;flex-direction:column;gap:1px;min-width:0}
.wp-browse-kicker{font-size:.62rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-dim);line-height:1}
.landing-owner-shell.is-sidebar-collapsed .landing-owner-sidebar{overflow:hidden;width:100%;max-width:48px;align-items:stretch}
.landing-owner-shell.is-sidebar-collapsed .wp-folders-head,.landing-owner-shell.is-sidebar-collapsed .landing-sidebar-head{flex-direction:column;align-items:center;gap:4px;padding:2px 0}
.landing-owner-shell.is-sidebar-collapsed .wp-folders-head-text,.landing-owner-shell.is-sidebar-collapsed .wp-folders-hint,.landing-owner-shell.is-sidebar-collapsed .wp-folder-row-body,.landing-owner-shell.is-sidebar-collapsed .wp-folder-row-menu,.landing-owner-shell.is-sidebar-collapsed .wp-folders-empty{display:none}
.landing-owner-shell.is-sidebar-collapsed .landing-sidebar-tools{flex-direction:column;width:100%;align-items:center;gap:4px}
.landing-owner-shell.is-sidebar-collapsed .landing-sidebar-tools .btn{width:32px;height:32px;min-width:32px;padding:0;display:flex;align-items:center;justify-content:center}
.landing-owner-shell.is-sidebar-collapsed .wp-folder-list{align-items:center;padding:0 2px;gap:4px}
.landing-owner-shell.is-sidebar-collapsed .wp-folder-row-wrap{width:100%;justify-content:center}
.landing-owner-shell.is-sidebar-collapsed .wp-folder-row{width:36px;height:36px;min-width:36px;padding:0;flex:none;justify-content:center;border-radius:8px}
.landing-sidebar-tools{display:flex;gap:2px;align-items:center;flex-shrink:0}
.wp-pages-browse{display:flex;flex-direction:column;gap:8px;min-width:0;flex:1}
.wp-browse-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 10px;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface)}
.wp-browse-title{margin:0;font-size:var(--text-sm);font-weight:600;line-height:1.2}
.wp-browse-actions{display:flex;gap:6px;flex-wrap:wrap;flex-shrink:0}
.wp-pages-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:8px}
.wp-page-card{display:flex;flex-direction:column;text-align:left;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;padding:0;overflow:hidden;font:inherit;color:inherit;transition:border-color .12s,box-shadow .12s}
.wp-page-card:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--border));box-shadow:0 2px 6px rgba(0,0,0,.05)}
.wp-page-card-preview{min-height:52px;max-height:52px;background:linear-gradient(135deg,var(--surface-2),color-mix(in srgb,var(--surface-2) 55%,#fff));display:flex;align-items:center;justify-content:center;padding:6px 8px;font-size:.72rem;color:var(--text-dim);line-height:1.25;text-align:center}
.wp-page-card-preview span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.wp-page-card-meta{padding:6px 8px;display:flex;flex-direction:column;gap:2px}
.wp-page-card-meta strong{font-size:var(--text-sm);line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wp-page-card-path{font-size:.65rem;color:var(--text-dim)}
.wp-sections-toolbar{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:10px 16px;margin-bottom:12px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);flex-shrink:0}
.wp-sections-toolbar-main{display:flex;flex-direction:column;gap:8px;min-width:0;flex:1}
.wp-sections-toolbar h2{margin:0;font-size:var(--text-sm);font-weight:600;line-height:1.2}
.wp-section-filters{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:2px 0}
.wp-cat-chip{border:1px solid color-mix(in srgb,var(--border) 88%,transparent);border-radius:var(--radius-sm);padding:5px 10px;font-size:.68rem;background:var(--surface);cursor:pointer;font:inherit;line-height:1.25;color:var(--text-dim);min-height:28px;display:inline-flex;align-items:center;gap:4px}
.wp-section-filter{border:1px solid color-mix(in srgb,var(--border) 88%,transparent);border-radius:var(--radius-sm);padding:5px 10px;font-size:.68rem;background:var(--surface);cursor:pointer;font:inherit;line-height:1.25;color:var(--text-dim);min-height:28px;display:inline-flex;align-items:center;gap:4px}
.wp-cat-chip.on,.wp-section-filter.on{color:var(--text);border-color:var(--wp-cat,var(--accent));background:color-mix(in srgb,var(--wp-cat,var(--accent)) 10%,var(--surface));box-shadow:0 0 0 1px color-mix(in srgb,var(--wp-cat,var(--accent)) 18%,transparent)}
.wp-cat-count{opacity:.8;font-size:.62rem}
.wp-cat-chip:hover:not(.on),.wp-section-filter:hover:not(.on){border-color:color-mix(in srgb,var(--wp-cat,var(--accent)) 45%,var(--border));color:var(--text);background:var(--surface-2)}
.wp-sections-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(196px,1fr));gap:10px;align-content:start;padding:2px 0}
.wp-section-card{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);overflow:hidden;display:flex;flex-direction:column;min-height:0;border-top:2px solid var(--wp-accent,#888)}
.wp-section-card-open{display:flex;flex-direction:column;width:100%;padding:0;border:0;background:transparent;cursor:pointer;font:inherit;color:inherit;text-align:left}
.wp-section-card-open:hover .wp-section-card-preview{background:#eef0f4}
.wp-section-card-head{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:6px 8px;border-bottom:1px solid color-mix(in srgb,var(--border) 70%,transparent);min-height:32px}
.wp-section-card-title{font-size:var(--text-sm);font-weight:600;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.wp-section-cat-badge{flex:none;font-size:.62rem;color:var(--text-dim);padding:2px 6px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--wp-accent,#888) 10%,var(--surface));border:1px solid color-mix(in srgb,var(--wp-accent,#888) 22%,var(--border));white-space:nowrap}
.wp-section-card-preview{background:#f4f5f7;height:86px;overflow:hidden;position:relative;border-bottom:1px solid color-mix(in srgb,var(--border) 65%,transparent)}
.wp-section-card-preview-inner{transform:scale(.52);transform-origin:top left;width:192.31%;pointer-events:none;user-select:none}
.wp-section-card-preview .landing-wrap{width:100%;max-width:none;padding:0;margin:0}
.wp-section-card-preview .wp-sec-header{border-bottom:1px solid #e5e7eb;padding:.45rem 0;margin:0}
.wp-section-card-preview .wp-sec-header-inner{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:nowrap;padding:0 .75rem}
.wp-section-card-preview .wp-sec-brand{font-weight:700;font-size:.85rem}
.wp-section-card-preview .wp-sec-nav{display:flex;gap:.5rem;flex-wrap:nowrap}
.wp-section-card-preview .wp-sec-nav a{color:#374151;text-decoration:none;font-size:.72rem;white-space:nowrap}
.wp-section-card-preview .wp-sec-footer{border-top:1px solid #e5e7eb;padding:.55rem .75rem;color:#6b7280;font-size:.72rem;text-align:center;margin:0}
.wp-section-card-preview .wp-sec-one-col,.wp-section-card-preview .wp-sec-two-col,.wp-section-card-preview .wp-sec-form{padding:.65rem .75rem;margin:0}
.wp-section-card-preview .wp-sec-one-col h2,.wp-section-card-preview .wp-sec-form h2,.wp-section-card-preview .wp-sec-two-col h3{font-size:.85rem;margin:0 0 .25rem;line-height:1.2}
.wp-section-card-preview .wp-sec-one-col p,.wp-section-card-preview .wp-sec-col p{font-size:.72rem;margin:0;line-height:1.35;color:#4b5563}
.wp-section-card-preview .wp-sec-two-col-grid{display:grid;grid-template-columns:1fr 1fr;gap:.4rem}
.wp-section-card-preview .wp-sec-col{padding:.45rem;border:1px solid #e5e7eb;border-radius:6px;background:#fff}
.wp-section-card-preview .wp-sec-form-inner{display:flex;flex-direction:column;gap:.35rem}
.wp-section-card-preview .wp-sec-field{display:flex;flex-direction:column;gap:.15rem;font-size:.68rem}
.wp-section-card-preview .wp-sec-field input,.wp-section-card-preview .wp-sec-field textarea{padding:.25rem .35rem;border:1px solid #d1d5db;border-radius:4px;font:inherit;font-size:.68rem}
.wp-section-card-preview .landing-features h2,.wp-section-card-preview .landing-content h2{font-size:.85rem;margin:0 0 .35rem}
.wp-section-card-preview .landing-feature-list{margin:0;padding-left:1rem;font-size:.68rem}
.wp-section-card-preview .wp-form-section{padding:.35rem .5rem;margin:0}
.wp-section-card-preview .wp-form-section h2{font-size:.78rem;margin:0 0 .3rem}
.wp-section-card-preview .wp-form-card{padding:.45rem .55rem;max-width:none;margin:0;border-radius:6px}
.wp-section-card-preview .wp-form-field{margin-bottom:.28rem}
.wp-section-card-preview .wp-form-field label{font-size:.62rem;gap:.1rem}
.wp-section-card-preview .wp-form-field input,.wp-section-card-preview .wp-form-field textarea,.wp-section-card-preview .wp-form-field select{padding:.18rem .28rem;font-size:.6rem;border-radius:4px}
.wp-section-card-preview .wp-form-submit{margin-top:.2rem;padding:.28rem .4rem;font-size:.62rem;min-height:22px;width:100%;opacity:1}
.wp-section-card-preview .wp-form-success-msg{display:none!important}
.wp-section-card-preview-inner script{display:none!important}
.wp-section-card-actions{padding:6px 8px;display:flex;gap:6px;justify-content:flex-end;min-height:34px;align-items:center;border-top:1px solid color-mix(in srgb,var(--border) 65%,transparent)}
.wp-section-card-actions .btn{font-size:.68rem;padding:2px 8px;min-height:24px}
.wp-section-card{transition:opacity .22s ease,transform .22s ease,box-shadow .22s ease}
.wp-section-card.is-entering{animation:wpSectionIn .28s ease both}
.wp-section-card.is-removing{opacity:0;transform:scale(.96);pointer-events:none}
.wp-section-card.is-busy{opacity:.72;pointer-events:none}
@keyframes wpSectionIn{from{opacity:0;transform:translateY(6px) scale(.98)}to{opacity:1;transform:none}}
.wp-sections-empty{padding:20px 12px;text-align:center;color:var(--text-dim)}
.wp-empty-grid{padding:16px;text-align:center}
@media(max-width:900px){
  .landing-owner-sidebar.wp-folders-panel{position:static;max-height:none;flex-direction:column}
  .wp-folder-list{flex-direction:row;flex-wrap:nowrap;overflow-x:auto;max-height:none;padding-bottom:4px;gap:6px}
  .wp-folder-row-wrap,.wp-folder-row{flex:none}
  .wp-folder-row{min-width:132px}
  .wp-folder-row-menu{opacity:1}
  .wp-sections-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}
}

/* Section editor — type picker, HTML + preview */
.wp-section-editor{display:flex;flex-direction:column;gap:8px;min-height:0;flex:1}
.wp-sec-edit-head{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);flex-shrink:0}
.wp-sec-edit-meta{display:flex;flex-wrap:wrap;gap:8px;flex:1;min-width:min(100%,240px)}
.wp-sec-edit-name-field{flex:1;min-width:140px;margin:0;gap:3px}
.wp-sec-edit-cat-field{min-width:120px;margin:0;gap:3px;max-width:160px}
.wp-sec-edit-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}
.wp-sec-edit-status{font-size:.68rem;color:var(--text-dim);min-width:4.5rem;text-align:right}
.wp-sec-edit-status.is-err{color:var(--danger)}
.wp-sec-edit-status.is-ok{color:var(--accent)}
.wp-sec-type-picker{display:flex;flex-direction:column;gap:8px;min-height:0;flex:1}
.wp-sec-type-lead{margin:0;font-size:var(--text-sm);color:var(--text-dim)}
.wp-sec-type-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:10px;align-content:start;padding:4px 0}
.wp-sec-type-card{display:flex;flex-direction:column;gap:4px;text-align:left;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;font:inherit;color:inherit;border-top:3px solid var(--wp-accent,var(--accent));transition:border-color .12s,background .12s}
.wp-sec-type-card:hover{border-color:color-mix(in srgb,var(--wp-accent,var(--accent)) 45%,var(--border));background:var(--surface-2)}
.wp-sec-type-card-label{font-size:var(--text-sm);font-weight:600}
.wp-sec-type-card-hint{font-size:.65rem;color:var(--text-dim)}
.wp-sec-edit-workspace{display:flex;flex-direction:column;gap:6px;min-height:0;flex:1}
.wp-sec-edit-mobile-tabs{display:none;flex-shrink:0}
.wp-sec-edit-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;min-height:0;flex:1;align-items:stretch}
.wp-sec-edit-code,.wp-sec-edit-preview{display:flex;flex-direction:column;min-height:0;min-width:0;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);overflow:hidden}
.wp-sec-html-field{margin:0;gap:4px;padding:8px;height:100%;display:flex;flex-direction:column;min-height:0}
.wp-sec-html-input{flex:1;min-height:220px;max-height:none;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem;line-height:1.45;resize:vertical}
.wp-sec-preview-bar{display:flex;align-items:center;padding:6px 8px;border-bottom:1px solid var(--border);font-size:.68rem;font-weight:600;color:var(--text-dim);flex-shrink:0}
.wp-sec-preview-frame{flex:1;width:100%;min-height:220px;border:0;background:#fff;display:block}
.wp-sec-preview-frame.is-loading{opacity:.55}
@media(max-width:820px){
  .wp-sec-edit-mobile-tabs{display:flex}
  .wp-sec-edit-split{grid-template-columns:1fr;flex:1}
  .wp-sec-edit-workspace[data-mobile-pane=code] .wp-sec-edit-preview{display:none}
  .wp-sec-edit-workspace[data-mobile-pane=preview] .wp-sec-edit-code{display:none}
  .wp-sec-edit-head{align-items:stretch}
  .wp-sec-edit-actions{width:100%;justify-content:flex-end}
  .wp-sec-html-input{min-height:180px}
  .wp-sec-preview-frame{min-height:240px}
  .wp-form-builder-body{grid-template-columns:1fr}
  .wp-form-builder-split{grid-template-columns:1fr}
  .wp-form-palette{max-height:none}
  .wp-form-canvas-wrap{max-height:36vh}
  .wp-links-ext-layout{grid-template-columns:1fr}
  .wp-form-cond-grid{grid-template-columns:1fr}
  .wp-module-tabs .seg-btn{font-size:.72rem;padding:5px 8px}
}

/* Form builder + link library */
.wp-sec-form-mount{min-height:0;flex:1;display:flex;flex-direction:column}
.wp-form-builder{display:flex;flex-direction:column;gap:8px;min-height:0;flex:1}
.wp-form-builder-tabs{flex-shrink:0}
.wp-form-builder-body{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:10px;min-height:0;flex:1}
.wp-form-builder-main{min-height:0;display:flex;flex-direction:column}
.wp-form-panel{min-height:0;flex:1;display:flex;flex-direction:column}
.wp-form-builder-split{display:grid;grid-template-columns:168px minmax(0,1fr);gap:8px;min-height:0;flex:1}
.wp-form-palette{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);padding:8px;overflow:auto;max-height:min(62vh,520px)}
.wp-form-palette-title{margin:0 0 8px;font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-dim)}
.wp-form-field-types{display:flex;flex-direction:column;gap:4px}
.wp-form-type-btn{display:flex;align-items:center;justify-content:space-between;gap:6px;width:100%;text-align:left;padding:6px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);cursor:pointer;font:inherit;font-size:.72rem}
.wp-form-type-btn:hover{border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}
.wp-form-canvas-wrap{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);min-height:0;overflow:auto;max-height:min(62vh,520px)}
.wp-form-canvas{padding:8px;display:flex;flex-direction:column;gap:8px;min-height:120px}
.wp-form-empty{margin:0;padding:16px;text-align:center;color:var(--text-dim);font-size:var(--text-sm)}
.wp-form-field-card{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);overflow:hidden}
.wp-form-field-card.is-drag{opacity:.55}
.wp-form-field-card.is-over{box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 35%,transparent)}
.wp-form-field-card-head{display:flex;align-items:center;gap:6px;padding:6px 8px;border-bottom:1px solid color-mix(in srgb,var(--border) 70%,transparent);background:var(--surface-2)}
.wp-form-field-card-head strong{flex:1;font-size:var(--text-sm)}
.wp-form-field-type{font-size:.62rem;color:var(--text-dim);padding:2px 6px;border-radius:var(--radius-sm);border:1px solid var(--border)}
.wp-form-drag{cursor:grab;color:var(--text-dim);user-select:none}
.wp-form-field-card-body{padding:8px;display:flex;flex-direction:column;gap:6px}
.wp-form-req{flex-direction:row!important;align-items:center;gap:6px!important}
.wp-form-cond summary{cursor:pointer;font-size:.72rem;color:var(--text-dim);padding:4px 0}
.wp-form-cond-grid{display:grid;grid-template-columns:1fr 88px 1fr;gap:6px;padding-top:6px}
.wp-form-panel-lead{margin:0 0 8px;font-size:var(--text-sm);color:var(--text-dim)}
.wp-form-presets{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:8px;margin-bottom:10px}
.wp-form-preset{display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;font:inherit;font-size:.68rem}
.wp-form-preset.on{box-shadow:0 0 0 2px var(--wp-preset-accent,var(--accent))}
.wp-form-preset-swatch{width:100%;height:28px;border-radius:6px;background:var(--wp-preset-accent,#888)}
.wp-form-design-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px}
.wp-form-builder-preview{display:flex;flex-direction:column;min-height:0;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);overflow:hidden}
.wp-form-preview-bar{justify-content:space-between;gap:8px}
.wp-form-preview-toggle{flex-shrink:0}
.wp-form-preview-toggle .seg-btn{min-height:24px;padding:0 8px;font-size:.65rem}
.wp-form-preview-panes{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}
.wp-form-preview-html-pane{flex:1;display:flex;flex-direction:column;gap:4px;min-height:0;padding:6px 8px;overflow:hidden}
.wp-form-preview-html-pane .field-label{font-size:.65rem;margin:0}
.wp-form-preview-html-input{flex:1;min-height:160px;max-height:100%;resize:none;font-size:.72rem;line-height:1.45;margin:0!important}
.wp-form-builder-preview .wp-sec-preview-frame{flex:1;min-height:200px;border:0;background:#fff}
.wp-form-builder-preview .wp-sec-preview-frame.hidden{display:none}
.wp-links-toolbar{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:10px 16px;margin-bottom:12px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface)}
.wp-links-toolbar-main{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}
.wp-links-toolbar h2{margin:0;font-size:var(--text-sm);font-weight:600}
.wp-links-lead{margin:0;font-size:.72rem;color:var(--text-dim)}
.wp-links-mode-tabs{flex-shrink:0}
.wp-links-panel{min-height:0;flex:1;overflow:auto}
.wp-links-folder-block{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);margin-bottom:10px;overflow:hidden}
.wp-links-folder-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;border-bottom:1px solid color-mix(in srgb,var(--border) 70%,transparent);background:var(--surface-2);font-size:var(--text-sm)}
.wp-links-folder-head span{font-size:.68rem;color:var(--text-dim)}
.wp-links-page-list{margin:0;padding:0;list-style:none}
.wp-links-page-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;border-bottom:1px solid color-mix(in srgb,var(--border) 60%,transparent)}
.wp-links-page-row:last-child{border-bottom:0}
.wp-links-page-meta{display:flex;flex-direction:column;gap:2px;min-width:0}
.wp-links-page-meta span{font-size:.68rem;color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wp-links-ext-layout{display:grid;grid-template-columns:minmax(160px,220px) minmax(0,1fr);gap:10px;min-height:min(50vh,480px)}
.wp-links-ext-folders{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);padding:8px;overflow:auto;display:flex;flex-direction:column;gap:4px}
.wp-links-ext-folders-head{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:4px;font-size:var(--text-sm)}
.wp-links-ext-folder{display:flex;align-items:center;justify-content:space-between;gap:6px;width:100%;text-align:left;padding:6px 8px;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;cursor:pointer;font:inherit;font-size:.72rem;color:inherit}
.wp-links-ext-folder.on{background:color-mix(in srgb,var(--accent) 8%,var(--surface));border-color:color-mix(in srgb,var(--accent) 30%,var(--border))}
.wp-links-ext-folder span{font-size:.62rem;color:var(--text-dim)}
.wp-links-ext-main{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);display:flex;flex-direction:column;min-height:0}
.wp-links-ext-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;border-bottom:1px solid color-mix(in srgb,var(--border) 70%,transparent)}
.wp-links-ext-toolbar h3{margin:0;font-size:var(--text-sm)}
.wp-links-ext-list{margin:0;padding:0;list-style:none;overflow:auto;flex:1}
.wp-links-ext-row{display:flex;align-items:center;gap:8px;padding:8px 10px;border-bottom:1px solid color-mix(in srgb,var(--border) 60%,transparent)}
.wp-links-ext-row.is-drag{opacity:.55}
.wp-links-ext-row.is-over{background:var(--surface-2)}
.wp-links-ext-meta{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.wp-links-ext-meta span{font-size:.68rem;color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wp-links-ext-actions{display:flex;gap:4px;flex-shrink:0}
.wp-links-empty{padding:16px!important}

/* Page composer (Lego) */
.landing-editor-card--compose{padding:12px 14px}
.wp-page-compose{min-height:0}
.wp-compose-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.85fr);gap:12px;min-height:320px}
.wp-compose-panel{display:flex;flex-direction:column;gap:8px;min-height:0;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);padding:10px 12px}
.wp-compose-head{display:flex;flex-direction:column;gap:6px}
.wp-compose-head h3{margin:0;font-size:.92rem}
.wp-compose-filters{flex-wrap:wrap}
.wp-compose-drop{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:20px 12px;border:1px dashed var(--border);border-radius:var(--radius-sm);color:var(--text-dim);text-align:center;transition:border-color .15s,background .15s}
.wp-compose-drop.is-over{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent)}
.wp-compose-drop.hidden{display:none}
.wp-compose-drop-icon{font-size:1.4rem;line-height:1;opacity:.5}
.wp-compose-stack{display:flex;flex-direction:column;gap:6px;min-height:0;overflow:auto;max-height:48vh}
.wp-compose-stack-card{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);cursor:grab}
.wp-compose-stack-card.is-drag{opacity:.55}
.wp-compose-stack-card.is-over{border-color:var(--accent)}
.wp-compose-drag{color:var(--text-dim);cursor:grab;user-select:none}
.wp-compose-stack-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.wp-compose-stack-main strong{font-size:.82rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wp-compose-stack-actions{display:flex;gap:2px;flex-shrink:0}
.wp-compose-library{display:flex;flex-direction:column;gap:6px;overflow:auto;max-height:52vh;padding-right:2px}
.wp-compose-lib-card{display:flex;align-items:center;gap:8px;padding:7px 9px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);cursor:grab}
.wp-compose-lib-card.is-drag{opacity:.55}
.wp-compose-lib-accent{width:4px;align-self:stretch;border-radius:2px;background:var(--wp-accent,#888);flex-shrink:0}
.wp-compose-lib-body{flex:1;min-width:0;display:flex;align-items:center;gap:6px}
.wp-compose-lib-body strong{font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wp-compose-empty{padding:8px 0!important}

/* Form submissions panel */
.wp-form-sub-toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:8px}
.wp-form-sub-toolbar .input{flex:1;min-width:140px}
.wp-form-sub-filters{flex-shrink:0}
.wp-form-sub-list{display:flex;flex-direction:column;gap:6px;max-height:42vh;overflow:auto}
.wp-form-sub-card{border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px 10px;background:var(--bg)}
.wp-form-sub-head{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-bottom:4px}
.wp-form-sub-status{font-size:.62rem;text-transform:uppercase;padding:2px 6px;border-radius:var(--radius-sm);border:1px solid var(--border)}
.wp-form-sub-status--new{background:color-mix(in srgb,var(--accent) 12%,transparent);border-color:color-mix(in srgb,var(--accent) 30%,var(--border))}
.wp-form-sub-body{font-size:.78rem;color:var(--text-dim);line-height:1.4}
.wp-form-sub-actions{display:flex;gap:4px;margin-top:6px}
.wp-form-sub-empty{text-align:center;padding:24px 12px;color:var(--text-dim)}
.wp-form-sub-empty p{margin:0 0 4px;font-weight:600;color:var(--text)}
.wp-form-sub-field{display:flex;gap:8px;justify-content:space-between;padding:2px 0;border-bottom:1px solid color-mix(in srgb,var(--border) 50%,transparent)}
.wp-form-sub-field strong{font-weight:600;color:var(--text);min-width:72px}
.wp-form-sub-form{font-size:.62rem;padding:2px 6px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--accent) 10%,transparent);border:1px solid color-mix(in srgb,var(--accent) 25%,var(--border))}
.wp-form-sub-linked{margin-top:6px}
.wp-form-sub-contact{font-size:.75rem;color:var(--accent);text-decoration:none;font-weight:600}
.wp-form-sub-crm{margin-top:8px;font-size:.78rem}
.wp-form-sub-crm summary{cursor:pointer;color:var(--text-dim);font-weight:600}
.wp-form-sub-crm-body{margin-top:8px;display:flex;flex-direction:column;gap:6px}
.wp-form-int-grid{display:flex;flex-direction:column;gap:10px}
.wp-form-int-block{border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px 10px;background:var(--bg)}
.wp-form-int-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}
.wp-form-int-code{font-size:.68rem;line-height:1.35;min-height:72px;resize:vertical}
.wp-form-int-meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between}
.wp-form-options{margin-top:4px}
.wp-form-options-list{display:flex;flex-direction:column;gap:4px;margin:6px 0}
.wp-form-opt-row{display:grid;grid-template-columns:1fr 1fr auto;gap:4px;align-items:center}

@media(max-width:820px){
  .wp-compose-layout{grid-template-columns:1fr}
  .wp-compose-stack,.wp-compose-library{max-height:none}
  .wp-form-sub-toolbar{flex-direction:column;align-items:stretch}
}

/* Mail module */
.page-mail,.mail-root{min-width:0}
.mail-module{max-width:1080px;margin:0 auto;padding:var(--space-4) var(--space-4) var(--space-6);display:flex;flex-direction:column;gap:var(--space-4)}
@media(min-width:768px){.mail-module{padding:var(--space-5) var(--space-6) var(--space-7)}}
.mail-head-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}
.mail-wip-badge{font-size:var(--text-xs);padding:3px 10px;border-radius:999px;border:var(--border-width) solid color-mix(in srgb,var(--accent) 35%,var(--border));color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--surface));white-space:nowrap}
.mail-subnav{display:flex;flex-wrap:wrap;gap:var(--space-1);max-width:100%}
.mail-pane{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}
.mail-empty{padding:var(--space-5);text-align:center}
.mail-state{padding:var(--space-4);text-align:center}
.mail-card-badges{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-top:var(--space-1)}
.mail-card-hosts{margin-top:var(--space-1);word-break:break-word}
.mail-pill,.mail-proto{font-size:var(--text-xs);padding:2px 8px;border-radius:999px;border:var(--border-width) solid var(--border);white-space:nowrap}
.mail-pill.ok,.mail-proto.ok{color:var(--success);border-color:color-mix(in srgb,var(--success) 35%,var(--border))}
.mail-pill.bad,.mail-proto.bad{color:var(--error);border-color:color-mix(in srgb,var(--error) 35%,var(--border))}
.mail-pill.muted,.mail-proto.muted{color:var(--text-dim)}
.mail-test-result{margin-top:var(--space-2);padding:var(--space-2);border-radius:var(--radius-sm);background:var(--surface-2);border:var(--border-width) solid var(--border);display:flex;flex-direction:column;gap:var(--space-1)}
.mail-presets{display:flex;flex-wrap:wrap;gap:var(--space-1);margin:0 0 var(--space-2)}
.mail-compose-body{min-height:160px;resize:vertical;max-width:100%}
.mail-compose .settings-actions{margin-top:var(--space-3)}

.mail-editor{margin-top:var(--space-2)}

/* User messaging (LOT 1) */
.page-messaging{padding:0;gap:0;overflow:hidden;font-family:var(--font-ui);letter-spacing:-.01em}
.page-messaging,.msg-module-root{min-width:0;height:100%;display:flex;flex-direction:column;width:100%}
.msg-module{flex:1;min-height:0;display:flex;flex-direction:column;padding:var(--space-2);gap:var(--space-1);max-width:min(100%,1400px);margin:0 auto;width:100%;font-family:var(--font-ui);font-feature-settings:"kern" 1,"liga" 1;letter-spacing:-.008em}
@media(min-width:768px){.msg-module{padding:var(--space-2) var(--space-3)}}
.msg-ws-slot{max-height:0;overflow:hidden;transition:max-height .18s ease}
.msg-ws-slot.is-visible{max-height:40px;margin-bottom:var(--space-1)}
.msg-ws-banner{padding:var(--space-2) var(--space-3);border-radius:var(--radius-el);background:color-mix(in srgb,var(--accent) 12%,var(--surface));border:1px solid color-mix(in srgb,var(--accent) 30%,var(--border));color:var(--accent);font-size:var(--text-sm);text-align:center;line-height:1.3}
/* minmax(0,1fr) : évite que le panneau thread déborde (1fr=minmax(auto,1fr) → « Séle… » collé à droite au 1er paint). */
.msg-layout{flex:1;min-height:0;min-width:0;width:100%;max-width:100%;display:grid;grid-template-columns:minmax(248px,320px) minmax(0,1fr);gap:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-card);overflow:hidden;background:var(--surface);transition:grid-template-columns .2s ease}
.msg-title,.msg-conv-peer,.msg-user-name{font-family:var(--font-display);font-weight:var(--font-weight-medium);letter-spacing:-.015em}
.msg-carnet-item-title{font-family:var(--font-ui);font-weight:var(--font-weight-medium);letter-spacing:-.01em}
.msg-layout.list-collapsed{grid-template-columns:0 minmax(0,1fr);gap:0}
.msg-panel-list.is-collapsed{opacity:0;pointer-events:none;overflow:hidden;border:none}
.msg-list-head{--msg-ctl-h:28px;--msg-ctl-r:7px;align-items:center;gap:6px;flex-wrap:nowrap;padding:6px 8px;min-height:calc(var(--msg-ctl-h) + 12px)}
.msg-list-view-scroll{flex:1;min-width:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.msg-list-view-scroll::-webkit-scrollbar{display:none}
.msg-list-view-switch{display:inline-flex;align-items:stretch;flex-shrink:0;height:var(--msg-ctl-h);border:1px solid color-mix(in srgb,var(--border) 92%,transparent);border-radius:var(--msg-ctl-r);overflow:hidden;background:var(--surface)}
.msg-list-view-btn{display:inline-flex;align-items:center;justify-content:center;height:var(--msg-ctl-h);min-width:42px;padding:0 11px;margin:0;border:none;border-radius:0;background:transparent;color:var(--text-dim);font:inherit;font-size:11px;font-weight:var(--font-weight-medium);line-height:1;white-space:nowrap;cursor:pointer;user-select:none;transition:background .16s ease,color .16s ease,box-shadow .16s ease;-webkit-tap-highlight-color:transparent;border-right:1px solid color-mix(in srgb,var(--border) 55%,transparent)}
.msg-list-view-btn:last-child{border-right:none}
.msg-list-view-btn:hover:not(:disabled){color:var(--text);background:color-mix(in srgb,var(--accent) 6%,var(--surface))}
.msg-list-view-btn:focus-visible{outline:none;box-shadow:var(--focus-ring);position:relative;z-index:1}
.msg-list-view-btn.is-active,.msg-list-view-btn.on{color:var(--text);background:color-mix(in srgb,var(--accent) 13%,var(--surface));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 20%,transparent)}
.msg-list-head-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}
.msg-list-head-actions .msg-icon-btn,.msg-list-head-actions .msg-head-btn{min-width:var(--msg-ctl-h);width:var(--msg-ctl-h);height:var(--msg-ctl-h);min-height:var(--msg-ctl-h);padding:0;border-radius:var(--msg-ctl-r);border:1px solid color-mix(in srgb,var(--border) 92%,transparent);background:var(--surface);font-size:0;line-height:1}
.msg-list-head-actions .msg-icon-btn .msg-icon-svg{width:15px;height:15px}
.msg-head-btn-accent{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 35%,var(--border));background:color-mix(in srgb,var(--accent) 8%,var(--surface))}
.msg-head-btn-accent:hover{color:var(--text);border-color:color-mix(in srgb,var(--accent) 55%,var(--border));background:color-mix(in srgb,var(--accent) 14%,var(--surface))}
.msg-head-btn-plain{color:var(--text);border-color:color-mix(in srgb,var(--border) 92%,transparent);background:transparent}
.msg-head-btn-plain .msg-icon-svg{width:14px;height:14px}
.msg-head-btn-plain:hover{color:#fff;border-color:color-mix(in srgb,var(--text) 30%,var(--border));background:color-mix(in srgb,var(--text) 6%,var(--surface))}
.msg-head-btn-plain.is-active{color:#fff;border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:color-mix(in srgb,var(--accent) 12%,var(--surface))}
.msg-convs-shell.is-new-conv-mode .msg-list-search{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:color-mix(in srgb,var(--accent) 6%,var(--surface))}
.msg-convs-shell{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;--msg-ctl-h:28px;--msg-ctl-r:10px}
.msg-list-search-wrap{flex-shrink:0;padding:6px 8px 4px;border-bottom:1px solid color-mix(in srgb,var(--border) 70%,transparent)}
.msg-list-search{display:flex;align-items:center;gap:6px;min-height:30px;padding:0 10px;border-radius:10px;border:1px solid color-mix(in srgb,var(--border) 92%,transparent);background:color-mix(in srgb,var(--surface-raised) 88%,var(--surface));transition:border-color .16s ease,background .16s ease;overflow:hidden}
.msg-list-search:focus-within{border-color:color-mix(in srgb,var(--accent) 42%,var(--border));background:var(--surface)}
.msg-list-search-icon{display:inline-flex;align-items:center;justify-content:center;color:var(--text-dim);flex-shrink:0}
.msg-list-search-icon .msg-icon-svg{width:13px;height:13px}
.msg-list-search-input{flex:1;min-width:0;border:none;background:transparent;color:var(--text);font:inherit;font-size:11px;line-height:1.2;padding:7px 0;outline:none}
.msg-list-search-input::placeholder{color:var(--text-dim)}
.msg-list-search-input::-webkit-search-cancel-button{-webkit-appearance:none;height:14px;width:14px;border-radius:50%;background:color-mix(in srgb,var(--text-dim) 35%,transparent);cursor:pointer}
.msg-list-search-hits{flex-shrink:0;max-height:min(34vh,220px);overflow-y:auto;border-bottom:1px solid color-mix(in srgb,var(--border) 70%,transparent);padding:2px 4px 4px}
.msg-list-search-hits-label{margin:0 0 2px 6px;font-size:9px;color:var(--text-dim);letter-spacing:.03em;text-transform:uppercase}
.msg-list-search-user{display:flex;align-items:center;gap:6px;width:100%;padding:4px 6px;border:none;border-radius:8px;background:transparent;color:var(--text);cursor:pointer;text-align:left;font:inherit;min-height:28px}
.msg-list-search-user:hover{background:color-mix(in srgb,var(--accent) 8%,var(--surface))}
.msg-list-search-user-text{display:flex;flex-direction:column;gap:0;min-width:0;flex:1}
.msg-list-search-user-name{font-size:11px;font-family:var(--font-ui);font-weight:var(--font-weight-medium);color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;letter-spacing:-.01em}
.msg-list-search-user-pseudo{font-size:10px;font-family:var(--font-ui);color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.msg-avatar-search{width:20px;height:20px;min-width:20px;font-size:9px;flex-shrink:0}
.msg-avatar-search img{width:100%;height:100%;object-fit:cover;border-radius:50%}
.msg-avatar-xs{width:24px;height:24px;font-size:10px}
.msg-convs-shell.has-side-chat .msg-conv-list{flex:0 1 38%;max-height:38%;min-height:96px;border-bottom:1px solid color-mix(in srgb,var(--border) 70%,transparent)}
.msg-convs-shell.has-side-chat.is-side-collapsed .msg-conv-list{flex:1;max-height:none;min-height:0;border-bottom:none}
.msg-list-side-chat{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;background:color-mix(in srgb,var(--surface-raised) 35%,var(--surface))}
.msg-list-side-chat.is-collapsed{flex:0 0 auto;min-height:0}
.msg-list-side-head{display:flex;align-items:center;gap:8px;min-height:32px;padding:5px 8px;border-bottom:1px solid color-mix(in srgb,var(--border) 70%,transparent);flex-shrink:0}
.msg-list-side-head-text{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1}
.msg-list-side-peer{font-size:12px;font-weight:var(--font-weight-medium);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-ui);letter-spacing:-.01em}
.msg-list-side-status{font-size:10px;color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-ui)}
.msg-list-side-status.typing{color:var(--accent)}
.msg-list-side-toggle{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:24px;height:24px;padding:0;border:1px solid color-mix(in srgb,var(--border) 92%,transparent);border-radius:6px;background:transparent;color:var(--text-dim);cursor:pointer;position:relative;z-index:2}
.msg-list-side-toggle .msg-icon-svg,.msg-list-side-toggle svg{width:14px;height:14px;pointer-events:none;display:block}
.msg-list-side-toggle:hover{color:var(--text);border-color:color-mix(in srgb,var(--accent) 35%,var(--border));background:color-mix(in srgb,var(--accent) 6%,var(--surface))}
.msg-list-side-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain}
.msg-list-side-chat .msg-side-compose{flex-shrink:0}
@media(max-width:767px){.msg-list-side-chat{display:none!important}.msg-convs-shell.has-side-chat .msg-conv-list{flex:1;max-height:none;min-height:0;border-bottom:none}}
.msg-note-panel{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}
.msg-note-card{--msg-ctl-h:28px;--msg-ctl-r:7px}
.msg-note-toolbar{display:flex;align-items:center;gap:8px;min-height:var(--msg-ctl-h);flex-shrink:0;padding:6px 8px 4px}
.msg-note-toolbar-end{display:flex;align-items:center;gap:4px;margin-left:auto;flex-shrink:0}
.msg-note-card .msg-list-view-switch.msg-note-mode-seg{gap:0;flex-shrink:0;height:var(--msg-ctl-h);border-radius:var(--msg-ctl-r)}
.msg-note-card .msg-list-view-switch .msg-list-view-btn{min-width:38px;padding:0 10px}
.msg-note-head .msg-ctl-save{flex-shrink:0}
.msg-ctl-save{display:inline-flex;align-items:center;justify-content:center;height:var(--msg-ctl-h);min-height:var(--msg-ctl-h);padding:0 12px;border:1px solid color-mix(in srgb,var(--border) 92%,transparent);border-radius:var(--msg-ctl-r);background:var(--surface);color:var(--text-dim);font:inherit;font-size:11px;font-weight:var(--font-weight-medium);cursor:pointer;white-space:nowrap;transition:background .16s ease,border-color .16s ease,color .16s ease}
.msg-ctl-save:hover{color:var(--text);border-color:color-mix(in srgb,var(--accent) 38%,var(--border));background:color-mix(in srgb,var(--accent) 6%,var(--surface))}
.msg-ctl-chat{display:inline-flex;align-items:center;justify-content:center;height:var(--msg-ctl-h);min-width:var(--msg-ctl-h);padding:0 10px;border:1px solid color-mix(in srgb,var(--border) 92%,transparent);border-radius:var(--msg-ctl-r);background:var(--surface);color:var(--text-dim);font:inherit;font-size:11px;font-weight:var(--font-weight-medium);cursor:pointer;white-space:nowrap;flex-shrink:0;gap:4px}
.msg-ctl-chat.is-live{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 40%,var(--border));background:color-mix(in srgb,var(--accent) 10%,var(--surface))}
.msg-carnet-title-input,.msg-carnet-detail-head .msg-carnet-title-input{font-family:var(--font-ui);font-weight:var(--font-weight-medium);letter-spacing:-.01em}
.msg-list-collapse-btn,.msg-list-expand-btn{padding:0}
.msg-list-expand-btn{position:absolute;left:0;top:50%;transform:translateY(-50%);z-index:4;width:32px;height:48px;border-radius:0 var(--radius-el) var(--radius-el) 0;border:1px solid var(--border);border-left:none;background:var(--surface);color:var(--text-muted);cursor:pointer;display:none;align-items:center;justify-content:center;padding:0}
.msg-layout.list-collapsed .msg-list-expand-btn{display:inline-flex}
.msg-list-body{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}
.msg-list-body>.msg-conv-list[hidden],.msg-list-body>.msg-convs-shell[hidden],.msg-list-body>.msg-tasks-panel[hidden],.msg-list-body>.msg-note-panel[hidden],.msg-list-body>.msg-carnet-panel[hidden]{display:none!important;flex:0 0 auto!important;min-height:0!important;overflow:hidden!important}
.msg-list-body>.msg-convs-shell{flex:1;min-height:0;overflow:hidden}
.msg-list-body>.msg-convs-shell:not([hidden]) .msg-conv-list{flex:1;min-height:0;overflow-y:auto}
.msg-tasks-panel,.msg-note-panel,.msg-carnet-panel{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}
.msg-tasks-shell{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}
.msg-tasks-mount{flex:1;min-height:0;min-width:0;display:flex;flex-direction:column;overflow:hidden;--qv-fs-k:11px;--qv-fs-s:12px;--qv-fs-m:13px;--qv-fs-b:14px;--qv-fs-h:22px;--qv-btn-h:32px;--qv-btn-h-sm:28px;--qv-icon-btn:30px;--qv-pad-w:6px 8px 8px;--qv-gap-w:5px}
.msg-tasks-mount .qv-tasks-widget{flex:1;min-height:0;border-radius:0;background:transparent}
.msg-tasks-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);min-height:32px;padding:var(--space-1) var(--space-2);border-bottom:1px solid var(--border);flex-shrink:0}
.msg-tasks-title{display:inline-flex;align-items:center;gap:6px;font-weight:500;font-size:var(--text-sm);min-width:0;flex:1;font-family:var(--font-display);letter-spacing:-.01em}
.msg-tasks-title .msg-icon-svg,.msg-tasks-title .msg-type-svg{width:15px;height:15px;flex-shrink:0;color:var(--accent)}
.msg-tasks-tools{display:flex;align-items:center;gap:3px;flex-shrink:0}
.msg-tasks-mode-btn{display:inline-flex;align-items:center;gap:4px;min-height:26px;padding:0 8px;border-radius:999px;border:1px solid var(--border);background:color-mix(in srgb,var(--surface-raised) 80%,transparent);color:var(--text-muted);cursor:pointer;font-size:10px;line-height:1;white-space:nowrap;font-family:var(--font-ui);transition:background .15s ease,border-color .15s ease,color .15s ease}
.msg-tasks-mode-btn .msg-icon-svg,.msg-tasks-mode-btn .msg-type-svg{width:13px;height:13px;flex-shrink:0}
.msg-tasks-mode-btn:hover{color:var(--text);border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}
.msg-tasks-mode-btn.is-live{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 40%,var(--border));background:color-mix(in srgb,var(--accent) 10%,var(--surface));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 12%,transparent)}
.msg-tasks-shell{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}
.msg-tasks-mount{flex:1;min-height:0;min-width:0;display:flex;flex-direction:column;overflow:hidden}
.msg-tasks-mount .qv-tasks-widget.is-msg-embed{flex:1;min-height:0;border-radius:0;background:transparent}
.msg-tasks-mount .qv-tasks-widget.is-msg-embed .qv-tasks-body{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}
.msg-tasks-shell.has-side-chat:not(.is-chat-collapsed) .msg-tasks-mount{flex:0 1 52%;max-height:52%;min-height:120px;border-bottom:1px solid color-mix(in srgb,var(--border) 70%,transparent)}
.msg-tasks-side-chat{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;background:color-mix(in srgb,var(--surface-raised) 35%,var(--surface))}
.msg-tasks-side-chat.is-collapsed{flex:0 0 auto;min-height:0}
.msg-tasks-chat-head{display:flex;align-items:center;gap:8px;min-height:32px;padding:5px 8px;border-top:1px solid color-mix(in srgb,var(--border) 70%,transparent);flex-shrink:0}
.msg-tasks-shell.has-side-chat.is-chat-collapsed .msg-tasks-chat-head{border-top:1px solid color-mix(in srgb,var(--border) 70%,transparent)}
.msg-tasks-chat-head-text{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1}
.msg-tasks-chat-peer{font-size:12px;font-weight:var(--font-weight-medium);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-ui);letter-spacing:-.01em}
.msg-tasks-chat-status{font-size:10px;color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-ui)}
.msg-tasks-chat-status.typing{color:var(--accent)}
.msg-tasks-side-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain}
.msg-tasks-side-chat .msg-side-compose{flex-shrink:0}
.msg-tasks-loading{flex:1;min-height:0;padding:8px;overflow:hidden}
.msg-tasks-loading .qv-tasks-body-skel{height:100%}
.msg-note-card{flex:1;min-height:0;display:flex;flex-direction:column;gap:6px;padding:0 0 8px}
.msg-note-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);min-height:32px;flex-wrap:wrap}
.msg-note-title{display:inline-flex;align-items:center;gap:6px;font-weight:500;font-size:var(--text-sm);min-width:0;flex:1;font-family:var(--font-display);letter-spacing:-.01em}
.msg-note-title .msg-icon-svg{width:15px;height:15px;flex-shrink:0;color:var(--accent)}
.msg-note-tools{display:flex;align-items:center;gap:3px;flex-shrink:0;flex-wrap:wrap;justify-content:flex-end}
.msg-note-tool{min-height:26px;padding:0 8px;border-radius:999px;border:1px solid var(--border);background:transparent;color:var(--text-muted);cursor:pointer;font-size:10px;line-height:1;white-space:nowrap;font-family:var(--font-ui)}
.msg-note-tool.is-active{background:color-mix(in srgb,var(--accent) 14%,var(--surface));color:var(--accent);border-color:color-mix(in srgb,var(--accent) 30%,var(--border))}
.msg-note-save-btn{margin-left:0}
.msg-note-draft-chip{font-size:10px;color:var(--text-muted);max-width:72px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.2}
.msg-note-flash{font-size:10px;font-weight:600;padding:2px 7px;border-radius:999px;line-height:1.2;white-space:nowrap}
.msg-note-flash.is-ok{color:var(--teal);background:color-mix(in srgb,var(--teal) 12%,var(--surface));border:1px solid color-mix(in srgb,var(--teal) 28%,var(--border))}
.msg-note-flash.is-err{color:var(--error);background:color-mix(in srgb,var(--error) 10%,var(--surface));border:1px solid color-mix(in srgb,var(--error) 30%,var(--border))}
.msg-note-mode-btn{display:inline-flex;align-items:center;gap:4px;min-height:26px;padding:0 8px;border-radius:999px;border:1px solid var(--border);background:color-mix(in srgb,var(--surface-raised) 80%,transparent);color:var(--text-muted);cursor:pointer;font-size:10px;line-height:1;white-space:nowrap;font-family:var(--font-ui);transition:background .15s ease,border-color .15s ease,color .15s ease}
.msg-note-mode-btn .msg-icon-svg,.msg-note-mode-btn .msg-type-svg{width:13px;height:13px;flex-shrink:0}
.msg-note-mode-btn:hover{color:var(--text);border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}
.msg-note-mode-btn.is-live{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 40%,var(--border));background:color-mix(in srgb,var(--accent) 10%,var(--surface));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 12%,transparent)}
.msg-note-editor{flex:1;min-height:0;resize:none;border-radius:var(--msg-ctl-r);border:1px solid color-mix(in srgb,var(--border) 92%,transparent);background:var(--surface-raised);color:var(--text);padding:8px;margin:0 8px;font:inherit;font-size:var(--text-sm);line-height:1.45;font-family:var(--font-ui);letter-spacing:.005em}
.msg-note-editor:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.msg-note-preview{flex:1;min-height:0;overflow:auto;padding:8px;margin:0 8px;border-radius:var(--msg-ctl-r);border:1px solid color-mix(in srgb,var(--border) 92%,transparent);background:var(--bg);font-size:var(--text-sm);line-height:1.45}
.msg-note-preview code{padding:1px 4px;border-radius:4px;background:var(--surface-raised);font-size:.92em}
.msg-note-preview .msg-md-h{margin:.4em 0;font-size:var(--text-md)}
.msg-note-preview .msg-md-ul{margin:.4em 0;padding-left:1.2em}
.msg-note-status{margin:0;font-size:10px;color:var(--text-muted);min-height:0;line-height:1.2;padding:0 8px}
.msg-note-empty-wrap{padding:var(--space-4);text-align:center}
.msg-note-empty{color:var(--text-muted);font-size:var(--text-sm)}
.msg-note-save-row{display:flex;align-items:center;gap:4px;padding:0 8px}
.msg-ctl-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--msg-ctl-h);height:var(--msg-ctl-h);min-width:var(--msg-ctl-h);min-height:var(--msg-ctl-h);padding:0;border:1px solid color-mix(in srgb,var(--border) 92%,transparent);border-radius:var(--msg-ctl-r);background:var(--surface);color:var(--text-dim);cursor:pointer;font-size:0;line-height:1}
.msg-ctl-icon .msg-icon-svg{width:14px;height:14px}
.msg-ctl-icon:hover{color:var(--text);border-color:color-mix(in srgb,var(--accent) 35%,var(--border));background:color-mix(in srgb,var(--accent) 6%,var(--surface))}
.msg-note-title-input{flex:1;min-width:0;height:var(--msg-ctl-h);min-height:var(--msg-ctl-h);border-radius:var(--msg-ctl-r);border:1px solid color-mix(in srgb,var(--border) 92%,transparent);background:var(--surface-raised);color:var(--text);padding:0 10px;font:inherit;font-size:11px;font-family:var(--font-ui)}
.msg-note-title-input:focus-visible{outline:none;border-color:color-mix(in srgb,var(--accent) 42%,var(--border))}
.msg-note-save-confirm{color:var(--accent)}
.msg-note-save-cancel{color:var(--text-dim)}
.msg-carnet-filter-bar{display:flex;align-items:center;gap:6px;padding:6px 8px;border-bottom:1px solid color-mix(in srgb,var(--border) 65%,transparent);min-height:32px;flex-wrap:wrap}
.msg-carnet-filter-label{font-size:var(--text-sm);font-family:var(--font-ui);font-weight:var(--font-weight-medium);color:var(--text);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.msg-side-chat{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}
.msg-side-chat-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain}
.msg-side-thread{padding:var(--space-2);gap:var(--space-1);max-width:100%;margin:0}
.msg-side-compose{padding:var(--space-2);border-top:1px solid var(--border);background:var(--surface);gap:var(--space-1)}
.msg-side-compose .msg-compose-input{min-height:36px;font-size:var(--text-sm)}
.msg-side-compose .msg-compose-btn{width:36px;height:36px}
.msg-row.is-compact .msg-bubble-wrap{max-width:96%}
.msg-row.is-compact .msg-bubble{font-size:var(--text-sm);padding:var(--space-1) var(--space-2)}
.msg-row.is-compact .msg-avatar-sm,.msg-row.is-compact .msg-avatar-spacer{width:28px;height:28px;min-width:28px}
.msg-row.is-compact .msg-meta{font-size:10px}
.msg-row.is-compact.grouped .msg-avatar-spacer{display:none}
.msg-icon-btn{display:inline-flex;align-items:center;justify-content:center;padding:0}
.msg-icon-btn .msg-icon-svg{width:18px;height:18px;display:block}
.msg-icon-btn-sm{min-width:32px;min-height:32px;width:32px;height:32px;font-size:0}
.msg-carnet-list{flex:1;overflow-y:auto;min-height:0;padding:0}
.msg-carnet-card{border-bottom:none}
.msg-carnet-card.is-delete-pending{background:color-mix(in srgb,var(--error) 6%,var(--surface))}
.msg-carnet-card-main{display:flex;align-items:center;gap:0;min-height:40px;border-bottom:1px solid color-mix(in srgb,var(--border) 65%,transparent);transition:background .12s ease}
.msg-carnet-card-main:hover{background:color-mix(in srgb,var(--accent) 8%,var(--surface))}
.msg-carnet-item-open{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px;padding:6px 4px 6px 10px;border:none;background:transparent;color:var(--text);text-align:left;cursor:pointer}
.msg-carnet-item-open:hover,.msg-carnet-item-open:focus-visible{background:transparent}
.msg-carnet-item-open:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.msg-carnet-card-del{margin:0 6px 0 2px;opacity:.55;border-color:transparent;background:transparent}
.msg-carnet-card-del:hover{opacity:1;color:var(--error);background:transparent;border-color:transparent}
.msg-carnet-item-top{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;line-height:1.2}
.msg-carnet-item-title{font-weight:var(--font-weight-medium);font-size:12px;font-family:var(--font-ui);letter-spacing:-.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}
.msg-carnet-item-time{font-size:10px;color:var(--text-dim);flex-shrink:0;line-height:1.2}
.msg-carnet-item-preview{font-size:11px;color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.25}
.msg-carnet-item-meta{font-size:10px;color:var(--text-dim);opacity:.85;line-height:1.2}
.msg-carnet-del-bar{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3) var(--space-4)}
.msg-carnet-del-label{font-size:var(--text-sm);color:var(--text);line-height:1.35}
.msg-carnet-del-actions{display:flex;align-items:center;gap:6px}
.msg-carnet-del-btn{min-height:30px;padding:0 12px;border-radius:999px;border:1px solid var(--border);background:var(--surface-raised);color:var(--text-muted);cursor:pointer;font-size:11px;line-height:1}
.msg-carnet-del-confirm{color:var(--error);border-color:color-mix(in srgb,var(--error) 40%,var(--border));background:color-mix(in srgb,var(--error) 10%,var(--surface))}
.msg-carnet-del-cancel:hover{background:var(--surface)}
.msg-carnet-new-btn{margin-top:var(--space-3);min-height:40px;padding:0 var(--space-4);border-radius:var(--radius-el);border:1px solid var(--border);background:var(--surface-raised);color:var(--text);cursor:pointer;font-size:var(--text-sm)}
.msg-carnet-detail{flex:1;min-height:0;display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3)}
.msg-carnet-detail-head{display:flex;align-items:center;gap:6px;min-width:0;min-height:36px}
.msg-carnet-back{flex-shrink:0;color:var(--text-muted)}
.msg-carnet-back:hover{color:var(--text)}
.msg-carnet-title-input{flex:1;min-width:0;height:32px;border:none;border-bottom:1px solid transparent;background:transparent;color:var(--text);font:inherit;font-size:var(--text-sm);font-weight:500;padding:0 var(--space-1)}
.msg-carnet-title-input:focus-visible{outline:none;border-bottom-color:var(--accent)}
.msg-carnet-del{flex-shrink:0;color:var(--text-muted)}
.msg-carnet-del:hover{color:var(--error);border-color:color-mix(in srgb,var(--error) 35%,var(--border))}
.msg-carnet-head-del{display:flex;align-items:center;gap:4px;flex-shrink:0}
.msg-carnet-link{margin:0;font-size:11px;color:var(--text-muted);padding-left:38px}
.msg-carnet-tools{padding:0 0 0 2px}
.msg-carnet-scroll{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}
.msg-carnet-editor,.msg-carnet-preview{flex:1;min-height:0}
.msg-carnet-preview{overflow:auto}
.msg-conv-note-flag{margin-left:4px;font-size:11px;opacity:.85}
.msg-panel{min-width:0;display:flex;flex-direction:column;min-height:0}
.msg-panel-list{border-right:1px solid var(--border);background:var(--surface)}
.msg-panel-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);min-height:56px}
.msg-title{margin:0;font-size:var(--text-lg);font-weight:500}
.msg-icon-btn{min-width:40px;min-height:40px;padding:0;border-radius:var(--radius-el);border:1px solid var(--border);background:var(--surface-raised);color:var(--text);cursor:pointer;font-size:20px;line-height:1;display:inline-flex;align-items:center;justify-content:center}
.msg-icon-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.msg-conv-list{flex:1;overflow-y:auto;min-height:0;padding:var(--space-1) var(--space-2) var(--space-2)}
.msg-conv-item{display:flex;gap:var(--space-3);width:100%;padding:var(--space-2) var(--space-3);border:var(--border-width) solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--text);text-align:left;cursor:pointer;min-height:58px;align-items:center;transition:background var(--transition),border-color var(--transition)}
.msg-conv-item:hover{background:var(--surface-2)}
.msg-conv-item.is-active{background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 32%,var(--border))}
.msg-conv-item.has-unread .msg-conv-name{font-weight:600;color:var(--text)}
.msg-conv-item.has-unread .msg-conv-preview{color:var(--text);font-weight:500}
.msg-conv-item:focus-visible{outline:none;box-shadow:var(--focus-ring)}
.msg-avatar{flex-shrink:0;width:44px;height:44px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;border:var(--border-width) solid color-mix(in srgb,var(--border) 85%,transparent);background:color-mix(in srgb,var(--accent) 12%,var(--surface-raised));color:var(--accent);font-size:var(--text-sm);font-weight:500;line-height:1;letter-spacing:.02em}
.msg-avatar.has-img{padding:0;background:var(--surface-2);color:transparent}
.msg-avatar.has-img img{width:100%;height:100%;object-fit:cover;display:block;border-radius:50%}
.msg-avatar-sm{width:36px;height:36px;font-size:11px}
.msg-avatar-spacer{width:36px;flex-shrink:0}
.msg-conv-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--space-1)}
.msg-conv-top,.msg-conv-bottom{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);min-width:0}
.msg-conv-name,.msg-conv-preview{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.msg-conv-preview{color:var(--text-muted);font-weight:400;flex:1}
.msg-conv-time,.msg-empty-sub{color:var(--text-muted);font-size:var(--text-sm);flex-shrink:0}
.msg-unread-badge{min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--accent);color:#0A0A0C;font-size:11px;font-weight:500;display:inline-flex;align-items:center;justify-content:center}
.msg-panel-thread{background:var(--bg);display:flex;flex-direction:column;min-width:0;max-width:100%;overflow:hidden}
.msg-conv-head{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border);min-height:56px;background:var(--surface)}
.msg-back-btn{display:none;min-width:40px;min-height:40px;border:1px solid transparent;border-radius:12px;background:transparent;color:var(--text);cursor:pointer;font-size:var(--text-lg);align-items:center;justify-content:center;transition:background .15s ease,border-color .15s ease,color .15s ease}
.msg-back-btn:hover{background:color-mix(in srgb,var(--surface-raised) 85%,transparent);border-color:color-mix(in srgb,var(--border) 75%,transparent)}
.msg-back-btn .msg-icon-svg{width:20px;height:20px}
.msg-conv-head-text{min-width:0;display:flex;flex-direction:column;gap:2px;flex:1}
.msg-conv-peer{font-weight:500;font-size:var(--text-md);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.msg-conv-status{font-size:var(--text-sm);color:var(--text-muted)}
.msg-conv-status.typing{color:var(--teal)}
.msg-thread-wrap{flex:1;min-height:0;position:relative;display:flex;flex-direction:column}
.msg-thread-scroll{flex:1;overflow-y:auto;min-height:0;overscroll-behavior:contain}
.msg-thread{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-2) var(--space-3);justify-content:flex-end;min-height:min(100%,100%);max-width:100%;margin:0;width:100%}
.msg-thread-empty,.msg-thread-placeholder,.msg-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-5);text-align:center;color:var(--text-muted);gap:var(--space-2);width:100%;max-width:100%;min-width:0;box-sizing:border-box}
.msg-thread-placeholder p,.msg-thread-empty p,.msg-empty p{max-width:100%;overflow-wrap:anywhere}
.msg-error{color:var(--error)}
.msg-date-sep{text-align:center;font-size:var(--text-sm);color:var(--text-muted);padding:var(--space-2) 0}
.msg-row{display:flex;gap:var(--space-2);align-items:flex-end;max-width:100%;margin-bottom:2px}
.msg-row.mine{flex-direction:row-reverse}
.msg-row.grouped .msg-avatar-spacer{display:none}
.msg-row.grouped{margin-top:-4px}
.msg-bubble-wrap{max-width:min(78%,420px);min-width:0;display:flex;flex-direction:column;gap:var(--space-1);align-items:flex-end}
.msg-row.mine .msg-bubble-wrap{max-width:min(82%,440px)}
.msg-row.theirs .msg-bubble-wrap{align-items:flex-start}
.msg-bubble{display:flex;align-items:flex-start;gap:var(--space-2);padding:10px 14px;border-radius:18px;word-break:break-word;font-size:var(--text-md);line-height:1.45;font-family:var(--font-ui);letter-spacing:.003em;box-shadow:0 1px 2px color-mix(in srgb,var(--text) 4%,transparent)}
.msg-bubble-icon{flex-shrink:0;width:16px;height:16px;margin-top:3px;opacity:.5;color:var(--text-muted)}
.msg-row.mine .msg-bubble-icon{color:color-mix(in srgb,var(--accent) 70%,var(--text-muted))}
.msg-type-svg{width:14px;height:14px;display:block}
.msg-bubble-inner{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-end;gap:3px;width:100%}
.msg-row.theirs .msg-bubble-inner{align-items:flex-start}
.msg-bubble-text{display:block;width:100%;word-break:break-word}
.msg-bubble-voice .msg-bubble-inner{flex-direction:row;align-items:center;gap:var(--space-2)}
.msg-bubble-voice .msg-bubble-icon{display:none}
.msg-row.mine .msg-bubble{background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 22%,var(--surface-raised)),color-mix(in srgb,var(--accent) 12%,var(--surface)));border:1px solid color-mix(in srgb,var(--accent) 32%,var(--border));border-bottom-right-radius:6px;box-shadow:0 2px 10px color-mix(in srgb,var(--accent) 10%,transparent)}
.msg-row.theirs .msg-bubble{background:linear-gradient(180deg,color-mix(in srgb,var(--surface-raised) 96%,var(--surface)),var(--surface-raised));border:1px solid color-mix(in srgb,var(--border) 88%,transparent);border-bottom-left-radius:6px}
.msg-row.pending .msg-bubble{opacity:.7}
.msg-row.failed .msg-bubble{border-color:var(--error)}
.msg-panel-thread{position:relative}
@media(min-width:768px){
  .msg-list-collapse-btn{display:inline-flex}
}
@media(max-width:767px){
  .msg-list-collapse-btn{display:none}
  .msg-list-expand-btn{display:none!important}
}
.msg-meta{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:var(--text-muted);white-space:nowrap;flex-shrink:0;margin:0;line-height:1}
.msg-ticks{font-size:10px;letter-spacing:-2px}
.msg-ticks.read{color:var(--teal)}
.msg-ticks.failed{color:var(--error)}
.msg-retry{font-size:var(--text-sm);color:var(--accent);background:none;border:none;cursor:pointer;padding:var(--space-1);min-height:40px}
.msg-compose{display:flex;align-items:flex-end;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-top:1px solid var(--border);background:var(--surface)}
.msg-compose-input{flex:1;min-height:40px;max-height:120px;padding:var(--space-2) var(--space-3);border-radius:20px;border:1px solid var(--border);background:var(--surface-raised);color:var(--text);resize:none;font:inherit;font-family:var(--font-ui);line-height:1.4;letter-spacing:.005em}
.msg-compose-input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.msg-compose-btn{flex-shrink:0;width:40px;height:40px;border-radius:50%;border:none;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;color:var(--text-muted);background:transparent}
.msg-compose-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.msg-compose-btn .msg-icon-svg{width:22px;height:22px;display:block}
.msg-mic-btn.is-recording{color:var(--error);background:color-mix(in srgb,var(--error) 12%,var(--surface))}
.msg-send-btn{background:var(--accent);color:#0A0A0C}
.msg-send-btn .msg-icon-svg{width:18px;height:18px;margin-left:1px}
.msg-send-btn:hover{filter:brightness(1.05)}
.msg-compose.is-voice-active .msg-compose-input{opacity:.55}
.msg-voice-panel{border-top:1px solid var(--border);background:var(--surface)}
.msg-voice-rec-bar,.msg-voice-preview-bar{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;padding:var(--space-2) var(--space-3);font-size:var(--text-sm);color:var(--text)}
.msg-voice-rec-bar{background:color-mix(in srgb,var(--error) 8%,var(--surface));border-bottom:1px solid color-mix(in srgb,var(--error) 18%,var(--border))}
.msg-voice-preview-bar{background:color-mix(in srgb,var(--accent) 8%,var(--surface));border-bottom:1px solid color-mix(in srgb,var(--accent) 22%,var(--border))}
.msg-voice-ctl{min-height:36px;padding:0 var(--space-3);border-radius:999px;border:1px solid var(--border);background:var(--surface-raised);color:var(--text);cursor:pointer;font-size:var(--text-sm);white-space:nowrap}
.msg-voice-ctl:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.msg-voice-confirm{background:var(--accent);color:#0A0A0C;border-color:transparent;font-weight:500}
.msg-voice-stop{font-weight:700;min-width:36px;padding:0}
.msg-voice-dur-draft{font-variant-numeric:tabular-nums;color:var(--text-muted);margin:0 var(--space-1)}
.msg-bubble-wrap{position:relative}
.msg-del-btn{position:absolute;top:-6px;right:-6px;z-index:2;width:22px;height:22px;border-radius:50%;border:1px solid var(--border);background:var(--surface-raised);color:var(--text-muted);cursor:pointer;font-size:14px;line-height:1;padding:0;opacity:0;transition:opacity .12s ease,background .12s ease,color .12s ease}
.msg-row.mine .msg-bubble-wrap:hover .msg-del-btn,.msg-row.mine .msg-bubble-wrap:focus-within .msg-del-btn,.msg-row.mine .msg-del-btn:focus-visible{opacity:1}
.msg-del-btn:hover{background:var(--error);color:#fff;border-color:transparent}
@media(max-width:767px){.msg-row.mine .msg-del-btn{opacity:1}}
.msg-voice-dot{width:8px;height:8px;border-radius:50%;background:var(--error);animation:msg-voice-pulse 1s ease infinite}
@keyframes msg-voice-pulse{0%,100%{opacity:1}50%{opacity:.35}}
.msg-voice-timer{font-variant-numeric:tabular-nums;font-weight:500;min-width:2.5rem}
.msg-voice-hint{color:var(--text-muted);font-size:var(--text-xs)}
.msg-bubble-voice{padding:var(--space-2) var(--space-3);min-width:min(220px,72vw)}
.msg-voice-bubble{display:flex;align-items:center;gap:var(--space-2);min-width:0}
.msg-voice-play{width:32px;height:32px;border-radius:50%;border:none;background:color-mix(in srgb,var(--accent) 18%,var(--surface-raised));color:var(--accent);cursor:pointer;flex-shrink:0;font-size:12px;line-height:1;padding:0}
.msg-voice-play.is-playing{background:var(--accent);color:#0A0A0C}
.msg-voice-track{flex:1;height:4px;border-radius:999px;background:color-mix(in srgb,var(--border) 80%,transparent);overflow:hidden;min-width:48px}
.msg-voice-fill{display:block;height:100%;width:0;background:var(--accent);border-radius:999px;transition:width .1s linear}
.msg-voice-dur{font-size:11px;color:var(--text-muted);font-variant-numeric:tabular-nums;flex-shrink:0}
.msg-voice-bubble audio{display:none}
.msg-call-btn .msg-icon-svg{width:20px;height:20px}
@keyframes msg-call-head-pulse{0%,100%{box-shadow:0 0 0 3px color-mix(in srgb,var(--error) 22%,transparent)}50%{box-shadow:0 0 0 6px color-mix(in srgb,var(--error) 10%,transparent)}}
.msg-conv-head-actions{display:flex;align-items:center;gap:var(--space-1);margin-left:auto;flex-shrink:0}
.msg-call-btn{margin-left:0;flex-shrink:0;transition:background .15s ease,color .15s ease,box-shadow .15s ease}
.msg-conv-head .msg-call-btn{color:var(--teal)}
.msg-conv-head .msg-call-btn#msg-btn-vcall{color:var(--accent)}
.msg-conv-head .msg-call-btn.is-active{color:#fff;background:var(--error);border-color:color-mix(in srgb,var(--error) 55%,var(--border));box-shadow:0 0 0 3px color-mix(in srgb,var(--error) 22%,transparent);animation:msg-call-head-pulse 1.4s ease infinite}
.msg-call-overlay{position:fixed;inset:0;z-index:30000;display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:rgba(0,0,0,.72);backdrop-filter:blur(6px);box-sizing:border-box}
.msg-call-overlay[hidden],.msg-call-overlay.hidden{display:none!important;visibility:hidden!important;pointer-events:none!important}
.msg-call-overlay.is-video:not(.is-incoming){padding:0;margin:0;width:100vw;height:100dvh;max-width:100vw;max-height:100dvh;background:#000;align-items:stretch;justify-content:stretch;overflow:hidden}
.msg-call-overlay.is-incoming,.msg-call-overlay.is-audio{display:flex;align-items:center;justify-content:center;padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}
.msg-call-audio-shell{display:flex;align-items:center;justify-content:center;width:100%;min-height:min(100%,100dvh);box-sizing:border-box}
.msg-call-audio-shell[hidden]{display:none!important}
.msg-call-video-shell.is-fullscreen{position:fixed;inset:0;width:100vw;height:100dvh;overflow:hidden;background:#000;z-index:1}
.msg-panel-thread{display:flex;flex-direction:column;min-height:0;min-width:0;max-width:100%;overflow:hidden}
.msg-panel-thread.is-video-embedded .msg-thread-wrap,.msg-panel-thread.is-video-embedded .msg-voice-panel,.msg-panel-thread.is-video-embedded .msg-compose,.msg-panel-thread.is-video-embedded .msg-thread-empty{display:none!important}
.msg-panel-thread.is-screen-embedded .msg-thread-wrap,.msg-panel-thread.is-screen-embedded .msg-voice-panel,.msg-panel-thread.is-screen-embedded .msg-compose,.msg-panel-thread.is-screen-embedded .msg-thread-empty{display:none!important}
.msg-panel-thread.is-video-embedded .msg-video-embed-host{flex:1;min-height:0;max-height:none;display:flex!important}
.msg-panel-thread.is-screen-embedded .msg-screen-embed-host{flex:1;min-height:0;max-height:none;display:flex!important}
.msg-panel-thread.is-dual-media .msg-video-embed-host{flex:0.55;min-height:160px}
.msg-panel-thread.is-dual-media .msg-screen-embed-host{flex:0.45;min-height:140px;border-top:1px solid var(--border)}
.msg-panel-thread.is-dual-screen-share .msg-screen-embed-host{flex:0.55;min-height:220px}
.msg-call-screen-shell.is-screen-stack .msg-screen-pane{flex:1;min-height:0;position:relative}
.msg-call-screen-shell.is-screen-stack{display:flex;flex-direction:column}
.msg-call-screen-shell.is-screen-stack .msg-screen-pane-local{border-bottom:1px solid rgba(255,255,255,.14)}
.msg-call-screen-shell.is-screen-focus-local .msg-screen-pane-remote,.msg-call-screen-shell.is-screen-focus-remote .msg-screen-pane-local{display:none!important}
.msg-call-screen-shell.is-screen-dual:not(.is-screen-stack):not(.is-screen-split) .msg-screen-pane{display:none!important}
.msg-call-screen-shell.is-screen-dual.is-screen-focus-local .msg-screen-pane-local,.msg-call-screen-shell.is-screen-dual.is-screen-focus-remote .msg-screen-pane-remote{display:flex!important}
.msg-call-screen-shell.is-screen-split .msg-screen-pane{display:flex!important}
.msg-call-screen-float-wrap .msg-screen-pane,.msg-call-screen-split-float .msg-screen-pane{display:flex!important;visibility:visible}
.msg-call-screen-float-wrap .msg-call-screen-video,.msg-call-screen-split-float .msg-call-screen-video{opacity:1;visibility:visible;background:#0a0a0a}
.msg-screen-pane{display:flex;flex-direction:column;min-height:0;flex:1;position:relative}
.msg-screen-pane[hidden]{display:none!important}
.msg-screen-pane-lbl{position:absolute;top:6px;left:8px;z-index:3;font-size:10px;font-weight:600;color:rgba(255,255,255,.82);background:rgba(0,0,0,.42);padding:2px 7px;border-radius:999px;pointer-events:none}
.msg-screen-pane .msg-call-screen-video{position:relative;inset:auto;flex:1;min-height:120px;width:100%;height:100%;object-fit:contain}
.msg-call-global-float{position:fixed;z-index:30040;right:20px;bottom:24px;width:min(360px,calc(100vw - 24px));display:flex;align-items:center;gap:10px;padding:12px 12px 12px 10px;border-radius:16px;background:color-mix(in srgb,var(--surface) 92%,#000);border:1px solid var(--border);box-shadow:0 16px 40px rgba(0,0,0,.38);backdrop-filter:blur(12px)}
.msg-call-global-float[hidden]{display:none!important}
.msg-call-global-drag{width:10px;align-self:stretch;border:none;border-radius:6px;background:color-mix(in srgb,var(--border) 70%,transparent);cursor:grab;flex-shrink:0;padding:0}
.msg-call-global-avatar{width:44px;height:44px;flex-shrink:0;border-radius:50%;overflow:hidden}
.msg-call-global-body{flex:1;min-width:0}
.msg-call-global-name{margin:0;font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.msg-call-global-sub{margin:2px 0 0;font-size:12px;color:var(--text-muted)}
.msg-call-global-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}
body.msg-call-global-mode .sidebar,body.msg-call-global-mode .content-mobile-head,body.msg-call-global-mode .mobile-nav-btn{pointer-events:auto}
body.msg-call-global-mode .msg-call-overlay[hidden]{display:none!important}
.msg-panel-thread.is-video-floating .msg-video-embed-host{display:none!important}
.msg-panel-thread.is-screen-floating .msg-screen-embed-host{display:none!important}
.msg-screen-embed-host{flex:1;min-width:0;position:relative;min-height:0;background:#000;border-bottom:1px solid var(--border);overflow:hidden;display:none}
.msg-screen-reopen-bar{display:flex;align-items:center;justify-content:center;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--teal) 8%,var(--surface))}
.msg-screen-reopen-bar[hidden]{display:none!important}
.msg-call-screen-float-wrap{z-index:30002;min-width:280px;min-height:200px;max-width:min(calc(100vw - 16px),1400px);max-height:min(calc(100vh - 16px),900px)}
.msg-call-screen-split-float{display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(255,255,255,.18);box-shadow:0 12px 40px rgba(0,0,0,.45)}
.msg-call-screen-split-float .msg-split-float-head{flex:0 0 auto;display:flex;align-items:center;gap:8px;padding:6px 10px 6px 34px;background:rgba(12,12,14,.92);color:#fff;font-size:11px;font-weight:600;border-bottom:1px solid rgba(255,255,255,.1);cursor:default}
.msg-call-screen-split-float .msg-split-float-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.msg-call-screen-split-float .msg-split-float-body{flex:1;min-height:0;position:relative;background:#0a0a0a}
.msg-call-screen-split-float .msg-screen-pane{position:absolute;inset:0;display:flex!important;flex-direction:column;min-height:0}
.msg-call-screen-split-float .msg-screen-pane-lbl{top:8px;left:8px}
.msg-call-screen-split-float .msg-call-screen-video{position:absolute;inset:0;width:100%;height:100%;min-height:0;object-fit:contain}
.msg-call-screen-split-bar{position:fixed;left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 18px);transform:translateX(-50%);z-index:30040;display:flex;flex-wrap:wrap;justify-content:center;gap:6px;padding:8px 10px;border-radius:14px;background:rgba(10,10,12,.88);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(10px);box-shadow:0 10px 28px rgba(0,0,0,.35);max-width:min(96vw,720px)}
body.msg-screen-split .msg-call-screen-shell{display:none!important}
body.msg-screen-split .msg-screen-embed-host{display:none!important}
.msg-call-screen-shell.is-embedded,.msg-call-screen-shell.is-floating{position:absolute;inset:0;width:100%;height:100%;overflow:hidden;background:#000;border-radius:14px}
.msg-call-screen-shell.is-fullscreen{position:fixed;inset:0;width:100vw;height:100dvh;overflow:hidden;background:#000;z-index:2}
.msg-call-screen-video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#0a0a0a;z-index:0;pointer-events:none}
.msg-call-screen-top{position:absolute;top:0;left:0;right:0;z-index:5;padding:calc(env(safe-area-inset-top,0px) + 10px) 12px 16px;background:linear-gradient(rgba(0,0,0,.62),transparent);color:#fff;pointer-events:none}
.msg-call-screen-top .msg-call-screen-chrome,.msg-call-screen-top .msg-call-chrome-pill{pointer-events:auto}
.msg-call-screen-name{margin:0;font-size:12px;font-weight:500;text-shadow:0 1px 8px rgba(0,0,0,.45);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}
.msg-call-screen-sub{margin:4px 0 0;font-size:11px;color:rgba(255,255,255,.82)}
.msg-call-screen-top-row{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}
.msg-call-screen-bar{position:absolute;bottom:0;left:0;right:0;z-index:6;padding:8px;display:flex;justify-content:center;gap:6px;pointer-events:auto;background:linear-gradient(transparent,rgba(0,0,0,.55))}
.msg-call-action-screen.is-active .msg-call-action-icon{background:color-mix(in srgb,var(--teal) 45%,rgba(255,255,255,.14));color:#fff}
body.msg-screen-floating{overflow:auto}
body.msg-screen-floating .sidebar,body.msg-screen-floating .content-mobile-head,body.msg-screen-floating .mobile-nav-btn{pointer-events:auto}
.msg-video-embed-host{flex:1;min-width:0;position:relative;min-height:0;background:#000;border-bottom:1px solid var(--border);overflow:hidden;display:none}
.msg-call-video-shell.is-embedded{position:relative;width:100%;height:100%;min-height:0;flex:1;overflow:hidden;background:#000}
.msg-call-float-wrap{position:fixed;z-index:30001;width:280px;height:210px;min-width:220px;min-height:165px;max-width:calc(100vw - 16px);max-height:calc(100vh - 16px);border-radius:14px;overflow:hidden;box-shadow:0 14px 42px rgba(0,0,0,.52);border:1px solid rgba(255,255,255,.12);background:#000;touch-action:none;isolation:isolate}
.msg-call-float-wrap.is-dragging,.msg-call-float-wrap.is-resizing{user-select:none}
.msg-float-drag{position:absolute;top:8px;left:8px;z-index:24;width:30px;height:30px;padding:0;border:none;border-radius:9px;background:rgba(0,0,0,.42);color:rgba(255,255,255,.88);cursor:grab;opacity:0;transition:opacity .16s ease,background .16s ease;display:flex;align-items:center;justify-content:center;pointer-events:auto;backdrop-filter:blur(6px)}
.msg-float-drag svg{width:14px;height:14px;display:block}
.msg-float-drag:hover,.msg-float-drag:focus-visible{background:rgba(255,255,255,.16);outline:none}
.msg-float-drag:active{cursor:grabbing}
.msg-call-float-wrap:hover .msg-float-drag,.msg-call-float-wrap.is-dragging .msg-float-drag,.msg-call-float-wrap.is-resizing .msg-float-drag{opacity:1}
.msg-float-resize{position:absolute;width:16px;height:16px;z-index:23;opacity:0;transition:opacity .16s ease}
.msg-call-float-wrap:hover .msg-float-resize,.msg-call-float-wrap.is-resizing .msg-float-resize{opacity:1}
.msg-float-resize-se{right:0;bottom:0;cursor:nwse-resize}
.msg-float-resize-sw{left:0;bottom:0;cursor:nesw-resize}
.msg-float-resize-ne{right:0;top:0;cursor:nesw-resize}
.msg-float-resize-nw{left:0;top:0;cursor:nwse-resize}
.msg-float-resize::after{content:"";position:absolute;inset:4px;border-radius:3px;border-right:2px solid rgba(255,255,255,.55);border-bottom:2px solid rgba(255,255,255,.55);opacity:.85}
.msg-float-resize-sw::after,.msg-float-resize-ne::after{border-right:none;border-left:2px solid rgba(255,255,255,.55)}
.msg-float-resize-ne::after,.msg-float-resize-nw::after{border-bottom:none;border-top:2px solid rgba(255,255,255,.55)}
body.msg-video-floating{overflow:auto}
body.msg-video-floating .sidebar,body.msg-video-floating .content-mobile-head,body.msg-video-floating .mobile-nav-btn{pointer-events:auto}
.msg-call-overlay{z-index:30000}
.msg-call-video-chrome{display:flex;align-items:center;gap:4px;flex-shrink:0;pointer-events:auto}
.msg-call-chrome-pill{width:32px;height:32px;min-height:32px;padding:0;border-radius:10px;border:1px solid rgba(255,255,255,.22);background:rgba(0,0,0,.42);color:#fff;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:4px;backdrop-filter:blur(6px);transition:background .15s ease,border-color .15s ease}
.msg-call-chrome-pill.has-lbl{width:auto;min-width:32px;padding:0 8px 0 6px;border-radius:999px}
.msg-call-chrome-pill.is-active{background:rgba(56,189,248,.28);border-color:rgba(125,211,252,.55)}
.msg-call-chrome-pill:hover{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.34)}
.msg-call-chrome-ico{display:flex;align-items:center;justify-content:center;line-height:0}
.msg-call-chrome-ico svg{width:15px;height:15px;display:block}
.msg-call-chrome-lbl{font-size:10px;font-weight:650;letter-spacing:.01em;line-height:1;white-space:nowrap;opacity:.95}
.msg-call-action-screen-view.is-active{outline:2px solid rgba(125,211,252,.7);outline-offset:1px}
.msg-call-action-dock .msg-call-action-icon{background:color-mix(in srgb,var(--accent) 42%,rgba(255,255,255,.12));color:#fff}
.msg-call-video-shell.is-embedded .msg-call-local-pip{right:14px;top:14px;width:min(26%,120px);aspect-ratio:3/4;border-radius:12px}
.msg-call-video-shell.is-embedded .msg-call-video-bar{padding:12px 10px 14px;gap:8px}
.msg-call-video-shell.is-embedded .msg-call-action{min-width:48px}
.msg-call-video-shell.is-embedded .msg-call-action-icon{width:42px;height:42px;font-size:17px}
.msg-call-video-shell.is-embedded .msg-call-action.is-primary-end .msg-call-action-icon{width:46px;height:46px}
.msg-call-video-shell.is-embedded .msg-call-action-dock .msg-call-action-icon{width:46px;height:46px;font-size:16px}
.msg-call-video-shell.is-floating .msg-call-local-pip{right:8px;top:40px;width:min(28%,72px);border-radius:8px}
.msg-call-video-shell.is-floating .msg-call-video-bar{padding:8px 6px 10px;gap:5px;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;justify-content:center;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.msg-call-video-shell.is-floating .msg-call-video-bar::-webkit-scrollbar{display:none}
.msg-call-video-shell.is-floating .msg-call-action{min-width:0;flex:0 0 auto;padding:1px;color:rgba(255,255,255,.95)}
.msg-call-video-shell.is-floating .msg-call-action-icon{width:34px;height:34px;font-size:14px;background:rgba(255,255,255,.24);color:#fff;border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(10px);box-shadow:0 2px 10px rgba(0,0,0,.35)}
.msg-call-video-shell.is-floating .msg-call-action.is-primary-end .msg-call-action-icon{width:38px;height:38px;background:var(--error);border-color:transparent}
.msg-call-video-shell.is-floating .msg-call-action-mute.is-muted .msg-call-action-icon,.msg-call-video-shell.is-floating .msg-call-action-cam.is-muted .msg-call-action-icon{background:rgba(255,180,80,.42);color:#ffd27a;border-color:rgba(255,210,120,.35)}
.msg-call-video-shell.is-floating .msg-call-action-screen.is-active .msg-call-action-icon{background:color-mix(in srgb,var(--teal) 55%,rgba(255,255,255,.18));color:#fff;border-color:rgba(126,232,216,.35)}
.msg-call-video-shell.is-embedded .msg-call-video-bar .msg-call-action{color:rgba(255,255,255,.95)}
.msg-call-video-shell.is-embedded .msg-call-video-bar .msg-call-action-icon{background:rgba(255,255,255,.22);color:#fff;border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(10px)}
.msg-call-video-shell.is-embedded .msg-call-video-bar .msg-call-action-decline .msg-call-action-icon{background:var(--error);border-color:transparent}
.msg-call-video-shell.is-floating .msg-call-action.is-icon-only .msg-call-action-lbl{display:none}
.msg-call-video-shell.is-floating{position:absolute;inset:0;width:100%;height:100%;overflow:hidden;background:#000;border-radius:14px}
.msg-call-video-shell.is-floating .msg-call-video-top{cursor:default}
.msg-call-video-shell.is-floating .msg-call-video-name{font-size:12px;max-width:calc(100% - 88px)}
.msg-call-action.is-icon-only .msg-call-action-lbl{display:none}
.msg-call-action-icon svg{width:18px;height:18px;display:block}
.msg-call-video-shell.is-floating .msg-call-action-icon svg{width:16px;height:16px}
.msg-call-action.is-primary-end .msg-call-action-icon svg{width:20px;height:20px}
.msg-video-reopen-bar{display:flex;align-items:center;justify-content:center;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--accent) 8%,var(--surface))}
.msg-video-reopen-bar[hidden]{display:none!important}
.msg-video-reopen-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:36px;padding:0 var(--space-4);border-radius:999px;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border));background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--accent);cursor:pointer;font-size:var(--text-sm);font-weight:500}
.msg-video-reopen-btn .msg-icon-svg{width:18px;height:18px}
.msg-video-embed-host[hidden]{display:none!important}
.msg-call-video-top-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);min-width:0}
@media(min-width:769px){
  body.msg-in-call.msg-video-desktop .msg-compose,body.msg-in-call.msg-video-hidden .msg-compose,body.msg-in-call.msg-video-floating .msg-compose{opacity:1;pointer-events:auto}
  body.msg-in-call.msg-video-desktop .msg-thread-wrap,body.msg-in-call.msg-video-hidden .msg-thread-wrap,body.msg-in-call.msg-video-floating .msg-thread-wrap{pointer-events:auto}
  body.msg-in-call .msg-side-compose{opacity:1;pointer-events:auto}
}
.msg-call-video-shell[hidden]{display:none!important}
.msg-call-remote-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center;background:#111;z-index:0;pointer-events:none}
.msg-call-remote-video.is-preview.is-front{transform:scaleX(-1);-webkit-transform:scaleX(-1)}
.msg-call-video-shell.is-floating .msg-call-remote-video{object-fit:cover;transform:translateZ(0);-webkit-transform:translateZ(0);will-change:transform}
.msg-call-video-shell.is-floating .msg-call-remote-video.is-preview.is-front{transform:scaleX(-1) translateZ(0);-webkit-transform:scaleX(-1) translateZ(0)}
.msg-call-video-shell.is-embedded .msg-call-remote-video{object-fit:cover}
.msg-call-local-pip{position:absolute;right:max(12px,env(safe-area-inset-right));top:calc(env(safe-area-inset-top,0px) + 56px);width:min(28vw,108px);aspect-ratio:3/4;border-radius:14px;object-fit:cover;object-position:center center;border:2px solid rgba(255,255,255,.28);box-shadow:0 10px 28px rgba(0,0,0,.5);z-index:4;background:#1a1a1a;pointer-events:none}
.msg-call-local-pip.is-front{transform:scaleX(-1)}
.msg-call-local-pip.is-off{opacity:0;visibility:hidden}
.msg-call-video-top{position:absolute;top:0;left:0;right:0;z-index:5;padding:calc(env(safe-area-inset-top,0px) + 10px) 12px 20px;background:linear-gradient(rgba(0,0,0,.62),transparent);color:#fff;pointer-events:none}
.msg-call-video-top .msg-call-video-chrome,.msg-call-video-top .msg-call-chrome-pill{pointer-events:auto}
.msg-call-video-name{margin:0;font-size:var(--text-md);font-weight:500;text-shadow:0 1px 8px rgba(0,0,0,.45);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}
.msg-call-video-sub{margin:4px 0 0;font-size:var(--text-sm);color:rgba(255,255,255,.82)}
.msg-call-video-sub.msg-call-sub-ok{color:#7ee8d8}
.msg-call-video-sub.msg-call-sub-warn{color:#ffd27a}
.msg-call-video-bar{position:absolute;bottom:0;left:0;right:0;z-index:10;padding:16px 8px calc(env(safe-area-inset-bottom,0px) + 20px);background:linear-gradient(transparent,rgba(0,0,0,.78));display:flex;align-items:flex-end;justify-content:center;gap:clamp(12px,4vw,24px);pointer-events:auto;transform:translateZ(0);isolation:isolate}
.msg-call-overlay.is-video .msg-call-video-bar .msg-call-action{min-width:68px;color:rgba(255,255,255,.92);padding:4px;position:relative;z-index:11;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.msg-call-overlay.is-video .msg-call-action-icon{background:rgba(255,255,255,.16);color:#fff;backdrop-filter:blur(8px);pointer-events:none}
.msg-call-overlay.is-video .msg-call-action-lbl{pointer-events:none}
.msg-call-overlay.is-video .msg-call-action-mute.is-muted .msg-call-action-icon,.msg-call-overlay.is-video .msg-call-action-cam.is-muted .msg-call-action-icon{background:rgba(255,180,80,.32);color:#ffd27a}
.msg-call-overlay.is-video .msg-call-action-decline .msg-call-action-icon{background:var(--error);color:#fff}
.msg-call-overlay.is-video .msg-call-action.is-primary-end .msg-call-action-icon{width:60px;height:60px}
@media (max-width:768px){
  .msg-call-overlay.is-video .msg-call-action{min-width:60px}
  .msg-call-overlay.is-video .msg-call-action-icon{width:50px;height:50px;font-size:20px}
  .msg-call-overlay.is-video .msg-call-action.is-primary-end .msg-call-action-icon{width:56px;height:56px}
  .msg-call-local-pip{width:88px;top:calc(env(safe-area-inset-top,0px) + 48px)}
  .msg-call-video-bar{gap:10px;padding-bottom:calc(env(safe-area-inset-bottom,0px) + 16px)}
}
.msg-call-card{position:relative;display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-6) var(--space-5);border-radius:var(--radius-card);background:var(--surface);border:1px solid var(--border);width:min(360px,calc(100vw - 32px));min-width:0;box-shadow:0 12px 40px rgba(0,0,0,.45);z-index:1;margin:auto}
@media (max-width:768px){
  .msg-call-card{width:calc(100vw - 24px);padding:var(--space-5) var(--space-4)}
}
.msg-call-pulse{position:absolute;inset:-8px;border-radius:calc(var(--radius-card) + 8px);border:2px solid color-mix(in srgb,var(--teal) 45%,transparent);animation:msg-call-ring 1.6s ease infinite;pointer-events:none}
@keyframes msg-call-ring{0%,100%{opacity:.25;transform:scale(1)}50%{opacity:.9;transform:scale(1.02)}}
.msg-call-name{margin:0;font-size:var(--text-lg);font-weight:500}
.msg-call-sub{margin:0;font-size:var(--text-sm);color:var(--text-muted)}
.msg-call-sub-ok{color:var(--teal)}
.msg-call-sub-warn{color:var(--warning,var(--accent))}
.msg-call-audio-hint{margin:0}
.msg-call-unlock-btn{min-height:40px;padding:0 var(--space-4);border-radius:999px;border:1px solid color-mix(in srgb,var(--teal) 40%,var(--border));background:color-mix(in srgb,var(--teal) 14%,var(--surface));color:var(--teal);cursor:pointer;font-size:var(--text-sm)}
.msg-call-actions{display:flex;align-items:flex-end;justify-content:center;gap:var(--space-5);margin-top:var(--space-2);width:100%;position:relative;z-index:3}
.msg-call-action{min-width:84px;display:flex;flex-direction:column;align-items:center;gap:6px;border:none;background:transparent;cursor:pointer;padding:8px 4px;color:var(--text-muted);position:relative;z-index:1;touch-action:manipulation;-webkit-tap-highlight-color:transparent;user-select:none;-webkit-user-select:none}
.msg-call-action-icon{pointer-events:none}
.msg-call-action-lbl{pointer-events:none}
.msg-call-card audio{position:absolute;width:0;height:0;opacity:0;pointer-events:none;overflow:hidden}
.msg-call-action-icon{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:22px;transition:transform .12s ease,box-shadow .12s ease,background .12s ease}
.msg-call-action-icon svg{width:22px;height:22px;display:block}
.msg-call-action.is-primary-end .msg-call-action-icon svg{width:24px;height:24px}
.msg-call-action-lbl{font-size:11px;line-height:1.2}
.msg-call-action-accept .msg-call-action-icon{background:var(--teal);color:#0A0A0C}
.msg-call-action-decline .msg-call-action-icon{background:var(--error);color:#fff}
.msg-call-action:hover .msg-call-action-icon{transform:scale(1.05)}
.msg-call-action:active .msg-call-action-icon{transform:scale(.96)}
.msg-call-action-mute .msg-call-action-icon{background:color-mix(in srgb,var(--teal) 16%,var(--surface-raised));color:var(--teal)}
.msg-call-action-mute.is-muted .msg-call-action-icon{background:color-mix(in srgb,var(--warning,var(--accent)) 20%,var(--surface));color:var(--warning,var(--accent))}
.msg-call-action-cam.is-muted .msg-call-action-icon{background:color-mix(in srgb,var(--warning,var(--accent)) 20%,var(--surface));color:var(--warning,var(--accent))}
.msg-call-action-cam.is-muted .msg-call-action-lbl{color:var(--warning,var(--accent))}
.msg-call-action.is-primary-end .msg-call-action-icon{width:64px;height:64px;font-size:24px}
.msg-call-action.is-live:not(.msg-call-action-decline) .msg-call-action-icon{box-shadow:0 0 0 4px color-mix(in srgb,var(--error) 28%,transparent)}
.msg-call-action-decline.is-live .msg-call-action-icon{box-shadow:0 0 0 4px rgba(255,255,255,.42)}
body.msg-in-call:not(.msg-screen-hidden){overflow:hidden}
body.msg-in-call.msg-screen-hidden .msg-compose,body.msg-in-call.msg-screen-hidden .msg-thread-wrap{opacity:1;pointer-events:auto}
body.msg-in-call.msg-screen-hidden .sidebar,body.msg-in-call.msg-screen-hidden .content-mobile-head,body.msg-in-call.msg-screen-hidden .mobile-nav-btn{pointer-events:auto}
body.msg-incoming-call{overflow:hidden}
body.msg-incoming-call .msg-call-overlay{z-index:30050}
body.msg-incoming-call .sidebar,body.msg-incoming-call .content-mobile-head,body.msg-incoming-call .mobile-nav-btn,body.msg-incoming-call .content{pointer-events:none}
body.msg-incoming-call .msg-call-overlay,.msg-incoming-call .msg-call-overlay *{pointer-events:auto}
.msg-call-screen-bar .msg-call-action{min-width:44px}
.msg-call-screen-shell.is-fullscreen .msg-call-screen-bar{padding-bottom:calc(env(safe-area-inset-bottom,0px) + 12px)}
body.msg-in-call .msg-compose{opacity:.45;pointer-events:none}
/* Side chat + modes non-fullscreen : toujours saisissable pendant un appel */
body.msg-in-call .msg-list-side-chat,
body.msg-in-call .msg-tasks-side-chat{pointer-events:auto}
body.msg-in-call .msg-side-compose,
body.msg-in-call .msg-list-side-chat .msg-compose,
body.msg-in-call .msg-tasks-side-chat .msg-compose,
body.msg-in-call.msg-video-desktop .msg-compose,
body.msg-in-call.msg-video-hidden .msg-compose,
body.msg-in-call.msg-video-floating .msg-compose,
body.msg-in-call.msg-screen-hidden .msg-compose,
body.msg-in-call.msg-screen-floating .msg-compose,
body.msg-in-call.msg-call-global-mode .msg-compose{opacity:1;pointer-events:auto}
body.msg-in-call .msg-list-search-wrap,
body.msg-in-call .msg-list-search-hits,
body.msg-in-call .msg-list-search-input{pointer-events:auto;opacity:1;position:relative;z-index:3}
body.msg-in-call .msg-module{pointer-events:auto}
body.msg-in-video-call.msg-video-fullscreen .sidebar,body.msg-in-video-call .content-mobile-head,body.msg-in-video-call .mobile-nav-btn{pointer-events:none}
.msg-new-scroll{position:absolute;bottom:var(--space-3);left:50%;transform:translateX(-50%);z-index:2;padding:var(--space-2) var(--space-4);border-radius:999px;border:1px solid var(--border);background:var(--surface-raised);color:var(--text);cursor:pointer;min-height:40px;font-size:var(--text-sm);box-shadow:0 4px 16px rgba(0,0,0,.35)}
.msg-dialog{border:none;border-radius:var(--radius-card);padding:0;background:var(--surface);color:var(--text);max-width:min(400px,92vw);width:100%}
.msg-dialog::backdrop{background:rgba(0,0,0,.55)}
.msg-dialog-head{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border)}
.msg-dialog-head h2{margin:0;font-size:var(--text-md);font-weight:500}
.msg-new-modal{padding:var(--space-2);max-height:min(60vh,400px);overflow-y:auto}
.msg-directory{list-style:none;margin:0;padding:0}
.msg-dir-item{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3);border:none;background:transparent;color:var(--text);cursor:pointer;text-align:left;min-height:56px}
.msg-dir-item:hover{background:var(--surface-raised)}
.msg-dir-pseudo{display:block;font-size:var(--text-sm);color:var(--text-muted)}
.msg-skeleton .msg-skel-row{height:72px;margin:var(--space-2) var(--space-4);border-radius:var(--radius-el);background:linear-gradient(90deg,var(--surface-raised),var(--surface),var(--surface-raised));background-size:200% 100%;animation:msg-skel 1.2s ease infinite}
@keyframes msg-skel{0%{background-position:100% 0}100%{background-position:-100% 0}}
@media(max-width:767px){
  .page-messaging{padding:0;gap:0}
  .msg-module{padding:0;max-width:none;margin:0;width:100%}
  .msg-module-root{width:100%}
  .msg-ws-slot.is-visible{margin-bottom:0}
  .msg-ws-banner{border-radius:0;border-left:0;border-right:0}
  .msg-layout{grid-template-columns:1fr;border:none;border-radius:0;gap:0;min-height:100%;height:100%}
  .msg-panel-list{display:flex}
  .msg-layout.mobile-show-conv .msg-panel-list{display:none}
  .msg-layout:not(.mobile-show-conv) .msg-panel-thread{display:none}
  .msg-back-btn{display:inline-flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--surface-raised) 72%,transparent);border-color:color-mix(in srgb,var(--border) 70%,transparent)}
  body.msg-mobile-conv{overflow:hidden}
  body.msg-mobile-conv .content-mobile-head{display:none!important}
  body.msg-mobile-conv .msg-tabs{display:none!important}
  body.msg-mobile-conv .mobile-nav-btn{display:none!important}
  body.msg-mobile-conv #content,
  body.msg-mobile-conv .page-messaging{height:100dvh;max-height:100dvh;overflow:hidden;display:flex;flex-direction:column}
  body.msg-mobile-conv .msg-module{flex:1;min-height:0;overflow:hidden;height:100%}
  body.msg-mobile-conv .msg-body{flex:1;min-height:0;overflow:hidden}
  body.msg-mobile-conv .msg-layout{flex:1;min-height:0;height:100%;contain:layout style}
  body.msg-in-video-call.msg-video-desktop .msg-body.mobile-show-conv,body.msg-in-video-call.msg-video-desktop .msg-layout.mobile-show-conv{flex:1;min-height:0;height:100%}
  body.msg-in-video-call.msg-video-desktop .msg-panel-thread.is-video-embedded{flex:1;min-height:0;height:100%}
  .msg-panel-thread.is-video-embedded .msg-video-embed-host{border-bottom:none}
  body.msg-video-floating .msg-call-float-wrap,body.msg-screen-floating .msg-call-float-wrap{z-index:30050}
  .msg-call-float-wrap{max-width:calc(100vw - 16px);max-height:calc(100dvh - 80px);min-height:200px}
  .msg-thread{padding:8px 10px;gap:6px}
  .msg-row{gap:6px;margin-bottom:1px}
  .msg-row.mine .msg-avatar-spacer{display:none;width:0;min-width:0}
  .msg-bubble-wrap{max-width:min(92%,calc(100% - 40px))}
  .msg-row.mine .msg-bubble-wrap{max-width:min(96%,100%)}
  .msg-row.theirs .msg-bubble-wrap{max-width:min(90%,calc(100% - 38px))}
  .msg-row.theirs .msg-avatar-sm{width:32px;height:32px}
  .msg-bubble{font-size:var(--text-sm);padding:9px 13px;border-radius:16px}
  .msg-compose{padding:8px 10px}
}
@media(min-width:768px){
  .msg-back-btn{display:none!important}
}
.msg-avatar-wrap{position:relative;flex-shrink:0;display:inline-flex;line-height:0;border-radius:50%}
.msg-avatar-wrap>.msg-avatar{width:44px;height:44px}
.msg-avatar-wrap>.msg-avatar-sm{width:36px;height:36px}
.msg-avatar-lg{width:48px;height:48px;font-size:var(--text-sm)}
.msg-avatar-wrap>.msg-avatar-lg{width:48px;height:48px}
.msg-online-dot{position:absolute;bottom:1px;right:1px;width:11px;height:11px;border-radius:50%;background:var(--teal);border:2px solid var(--surface);box-shadow:0 0 0 1px color-mix(in srgb,var(--teal) 35%,transparent);z-index:2}
.msg-online-pill{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:999px;font-size:10px;font-weight:600;line-height:1.2;color:var(--teal);background:color-mix(in srgb,var(--teal) 12%,var(--surface));border:1px solid color-mix(in srgb,var(--teal) 28%,var(--border));white-space:nowrap;flex-shrink:0}
.msg-online-pill::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--teal);flex-shrink:0}
.msg-conv-head .msg-avatar-wrap,.msg-conv-item .msg-avatar-wrap{align-self:center}
.msg-user-row{position:relative;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border);min-height:60px}
.msg-user-row-main{display:flex;align-items:center;gap:var(--space-3);min-width:0;flex:1}
.msg-user-row-text{min-width:0;display:flex;flex-direction:column;gap:1px;line-height:1.3}
.msg-user-name{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.35}
.msg-user-status{font-size:var(--text-sm);color:var(--text-muted);line-height:1.25}
.msg-row-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--space-2);flex-shrink:0}
.msg-btn-sm{min-height:40px;padding:0 var(--space-3);border-radius:var(--radius-el);border:1px solid var(--border);background:var(--surface-raised);color:var(--text);cursor:pointer;font-size:var(--text-sm)}
.msg-btn-sm.msg-btn-accent{background:color-mix(in srgb,var(--accent) 18%,var(--surface));border-color:color-mix(in srgb,var(--accent) 35%,var(--border));color:var(--accent)}
.msg-btn-sm.msg-btn-ghost{background:transparent}
.msg-btn-sm.msg-btn-danger{color:var(--error);border-color:color-mix(in srgb,var(--error) 35%,var(--border))}
.msg-tabs{display:flex;gap:var(--space-1);padding:var(--space-2) var(--space-4);overflow-x:auto;border-bottom:1px solid var(--border);flex-shrink:0}
.msg-tab{min-height:calc(var(--control-h) - 4px);padding:0 var(--space-3);border:var(--border-width) solid var(--border);border-radius:var(--radius-sm);background:transparent;color:var(--text-dim);cursor:pointer;font-size:var(--text-sm);font-family:inherit;white-space:nowrap;position:relative;transition:background var(--transition),color var(--transition),border-color var(--transition)}
.msg-tab:hover{background:var(--surface-2);color:var(--text)}
.msg-tab.is-active{background:var(--accent-soft);color:var(--accent);border-color:var(--accent);font-weight:var(--font-weight-medium)}
.msg-tab:focus-visible{outline:none;box-shadow:var(--focus-ring)}
.msg-tab-badge{position:absolute;top:4px;right:4px;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:var(--accent);color:#0A0A0C;font-size:10px;line-height:16px}
.msg-body{flex:1;min-height:0;min-width:0;max-width:100%;display:flex;flex-direction:column;overflow:hidden}
.msg-body-single .msg-side-panel{flex:1;overflow-y:auto;min-height:0}
.msg-side-inner{padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}
.msg-search-input{width:100%;min-height:40px;padding:0 var(--space-3);border-radius:var(--radius-el);border:1px solid var(--border);background:var(--surface-raised);color:var(--text)}
.msg-search-label{font-size:var(--text-sm);color:var(--text-muted)}
.msg-subtabs{display:flex;gap:var(--space-1);flex-wrap:wrap}
.msg-subtab{min-height:40px;padding:0 var(--space-3);border-radius:var(--radius-el);border:1px solid var(--border);background:transparent;color:var(--text-muted);cursor:pointer;font-size:var(--text-sm)}
.msg-subtab.is-active{background:var(--surface-raised);color:var(--text)}
.msg-side-h3{margin:var(--space-3) 0 var(--space-1);font-size:var(--text-sm);font-weight:500;color:var(--text-muted)}
.msg-settings{display:flex;flex-direction:column;gap:var(--space-3);max-width:480px}
.msg-settings-avatar{display:flex;align-items:center;gap:var(--space-4)}
.msg-toggle-row{display:flex;align-items:flex-start;gap:var(--space-3);cursor:pointer;min-height:40px}
.msg-toggle-row input{margin-top:10px;min-width:20px;min-height:20px}
.msg-field-label{font-size:var(--text-sm);color:var(--text-muted)}
.msg-pending-lbl{font-size:var(--text-sm);color:var(--text-muted)}
.msg-avatar-upload{cursor:pointer}
@media(max-width:767px){.msg-tabs{padding:var(--space-2)}}
.msg-team-list{padding-bottom:var(--space-2)}
.msg-team-group{padding:0}
.msg-team-group-title{margin:0;padding:var(--space-3) var(--space-4) var(--space-1);font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);line-height:1.2}
.msg-team-group-list{display:flex;flex-direction:column}
.msg-team-group-list .msg-team-row{min-height:56px;padding:var(--space-2) var(--space-4);border-bottom:1px solid color-mix(in srgb,var(--border) 65%,transparent)}
.msg-team-group-list .msg-team-row:last-child{border-bottom:none}
.msg-team-row .msg-user-row-text{gap:0}
.msg-team-row .msg-user-meta{margin-top:1px}
.msg-team-row.is-online .msg-user-name{color:var(--text)}
.msg-team-row .msg-row-actions{gap:var(--space-2)}
.msg-team-row .msg-btn-sm{min-height:36px;padding:0 var(--space-3)}
.msg-user-meta{font-size:11px;color:var(--text-dim);line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.msg-role-badge{display:inline-flex;align-items:center;margin-left:6px;padding:1px 6px;border-radius:999px;font-size:10px;font-weight:600;background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--text-dim);vertical-align:middle}
.msg-role-self{color:var(--accent)}
/* ── Owner modules (Recherche / Médiathèque) — layout compact type Tâches ── */
.page-owner-module{padding:0;overflow:hidden;display:flex;flex-direction:column;min-height:0}
.page-owner-module .own-root-wrap{flex:1;min-height:0;overflow:auto;padding:var(--page-pad) calc(var(--page-pad) + 4px);display:flex;flex-direction:column;gap:var(--space-2);box-sizing:border-box}
.own-head{display:flex;align-items:center;gap:var(--space-2);flex-wrap:nowrap;min-width:0;padding-bottom:2px;border-bottom:var(--border-width) solid color-mix(in srgb,var(--border) 65%,transparent)}
.own-head-left{display:flex;flex-direction:column;gap:2px;min-width:0;flex-shrink:0}
.own-h1{margin:0;font-size:var(--text-lg);font-weight:var(--font-weight-medium);letter-spacing:.01em;line-height:1.2}
.own-sub{margin:0;font-size:11px;color:var(--text-dim);line-height:1.3}
.own-module-nav.seg{flex:0 1 auto;margin-left:auto;min-width:0;flex-wrap:nowrap}
.own-module-nav .seg-btn{font-size:var(--text-sm);padding:5px 12px;min-height:30px;text-decoration:none;color:var(--text);display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}
.own-module-nav .seg-btn.on{color:var(--accent);font-weight:var(--font-weight-medium)}
.own-pane{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}
.own-sticky{position:sticky;top:0;z-index:3;display:flex;flex-direction:column;gap:6px;padding:6px 0 8px;margin:0 0 2px;background:color-mix(in srgb,var(--bg) 94%,transparent);backdrop-filter:blur(8px);border-bottom:var(--border-width) solid color-mix(in srgb,var(--border) 55%,transparent)}
.own-sticky-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}
.own-search{flex:1;min-width:min(100%,200px);max-width:320px;margin:0!important;height:2rem;min-height:2rem;font-size:var(--text-sm);padding:0 10px}
.own-density-wrap{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;padding:0 2px}
.own-density-lbl{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);white-space:nowrap}
.own-density.seg{gap:0;flex-wrap:nowrap;border-radius:var(--radius-sm);overflow:hidden}
.own-density .seg-btn{min-width:0;padding:0 10px;min-height:28px;font-size:10px;font-weight:var(--font-weight-medium);letter-spacing:.01em}
.own-filter-btn{flex-shrink:0;height:28px;min-height:28px;padding:0 10px;font-size:11px}
.own-filter-btn.on{background:var(--accent-soft);color:var(--accent);border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}
.own-count{margin:0 0 0 auto;font-size:11px;color:var(--text-dim);white-space:nowrap;font-variant-numeric:tabular-nums;padding:2px 8px;border-radius:999px;background:color-mix(in srgb,var(--surface-2) 50%,var(--surface));border:var(--border-width) solid color-mix(in srgb,var(--border) 70%,transparent)}
.own-filters{display:flex;flex-direction:column;gap:0;transition:max-height .2s ease,opacity .16s ease,margin .16s ease,padding .16s ease}
.own-filters.is-collapsed{max-height:0;opacity:0;overflow:hidden;margin:0;padding:0;pointer-events:none}
.own-filters:not(.is-collapsed){max-height:140px;opacity:1;padding:6px 8px;border-radius:var(--radius-sm);border:var(--border-width) solid color-mix(in srgb,var(--border) 70%,transparent);background:color-mix(in srgb,var(--surface-2) 35%,var(--surface))}
.own-filter-row{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.own-filter-row .input,.own-filter-row select{margin:0!important;flex:1 1 auto;min-width:0;max-width:10.5rem;min-height:30px;font-size:var(--text-xs);background:var(--surface)}
.own-grid{display:grid;gap:4px;align-items:stretch;padding:2px 0}
.own-grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.own-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.own-grid.cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}
.own-empty{grid-column:1/-1;text-align:center;color:var(--text-dim);font-size:var(--text-sm);padding:var(--space-4) var(--space-2);border:var(--border-width) dashed color-mix(in srgb,var(--border) 80%,transparent);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--surface-2) 30%,var(--surface))}
.own-empty small{display:block;margin-top:8px;font-size:11px;opacity:.9;line-height:1.45}
.own-empty-link{color:var(--accent);text-decoration:none;font-weight:var(--font-weight-medium)}
.own-empty-link:hover{text-decoration:underline}
.own-card{border:var(--border-width) solid var(--border);border-left:3px solid color-mix(in srgb,var(--accent) 35%,var(--border));border-radius:var(--radius-sm);background:var(--surface);overflow:hidden;transition:border-color var(--transition),box-shadow var(--transition),opacity .16s ease;height:100%;min-height:48px}
.own-card:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--border));box-shadow:0 1px 0 color-mix(in srgb,var(--accent) 8%,transparent)}
.own-card.is-ready{border-left-color:color-mix(in srgb,var(--success,#16a34a) 70%,var(--accent))}
.own-card.is-warn{border-left-color:var(--warning,#d97706)}
.own-card.is-soon{border-left-color:color-mix(in srgb,var(--text-dim) 55%,var(--border));opacity:.9}
.own-card.is-open{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 18%,transparent)}
.own-card-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center;padding:7px 10px 7px 8px;cursor:pointer;min-height:48px}
.own-card-head:focus-visible{outline:none;box-shadow:inset var(--focus-ring)}
.own-card-body{min-width:0;display:flex;flex-direction:column;gap:2px}
.own-card-title{font-size:var(--text-sm);font-weight:var(--font-weight-medium);line-height:1.3;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.own-card-pills{display:flex;flex-wrap:wrap;gap:3px;align-items:center}
.own-pill{display:inline-flex;align-items:center;padding:1px 7px;border-radius:999px;font-size:10px;line-height:1.4;border:var(--border-width) solid var(--border);background:color-mix(in srgb,var(--surface-2) 65%,var(--surface));color:var(--text-dim);white-space:nowrap;max-width:8.5rem;overflow:hidden;text-overflow:ellipsis}
.own-pill-status{max-width:none;flex-shrink:0;font-weight:var(--font-weight-medium)}
.own-pill-ready{color:var(--success,#16a34a);border-color:color-mix(in srgb,var(--success,#16a34a) 30%,var(--border));background:color-mix(in srgb,var(--success,#16a34a) 10%,var(--surface))}
.own-pill-warn{color:var(--warning,#d97706);border-color:color-mix(in srgb,var(--warning,#d97706) 30%,var(--border));background:color-mix(in srgb,var(--warning,#d97706) 10%,var(--surface))}
.own-pill-soon{color:var(--text-dim);border-color:var(--border)}
.own-pill-meta{font-variant-numeric:tabular-nums}
.own-pill-perf{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 35%,var(--border));background:var(--accent-soft);font-weight:var(--font-weight-medium);font-variant-numeric:tabular-nums;max-width:none}
.own-card-chevron{color:var(--text-dim);font-size:13px;line-height:1;opacity:.4;align-self:center;transition:transform .16s ease,opacity .16s ease;flex-shrink:0}
.own-card.is-open .own-card-chevron{transform:rotate(90deg);opacity:.7}
.own-card-detail{display:none;padding:6px 10px 8px 34px;border-top:var(--border-width) solid color-mix(in srgb,var(--border) 65%,transparent);background:color-mix(in srgb,var(--surface-2) 25%,var(--surface))}
.own-card.is-open .own-card-detail{display:block}
.own-card-desc{margin:0 0 6px;font-size:11px;color:var(--text-dim);line-height:1.4}
.own-card-id{font-size:10px;color:var(--text-dim);opacity:.85}
.own-skel{display:flex;flex-direction:column;gap:4px;grid-column:1/-1}
.own-skel-row{height:48px;border-radius:var(--radius-sm);background:linear-gradient(90deg,color-mix(in srgb,var(--surface-2) 80%,var(--surface)),color-mix(in srgb,var(--surface-2) 40%,var(--surface)),color-mix(in srgb,var(--surface-2) 80%,var(--surface)));background-size:200% 100%;animation:own-shimmer 1.1s ease infinite}
@keyframes own-shimmer{0%{background-position:100% 0}100%{background-position:-100% 0}}
.own-tool-wrap{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}
.own-sticky--tool{position:static;backdrop-filter:none;background:transparent;padding:0;border-bottom:none;gap:8px}
.own-quick{display:flex;gap:6px;align-items:stretch}
.own-quick-input{flex:1;min-width:0;font-size:16px;height:2.5rem;min-height:2.5rem;margin:0!important;padding:6px 12px;box-sizing:border-box}
.own-quick-btn{flex-shrink:0;width:2.5rem;height:2.5rem;padding:0;display:inline-flex;align-items:center;justify-content:center;font-size:1.2rem;line-height:1;border:none;border-radius:var(--radius-sm);background:var(--accent);color:#fff;cursor:pointer;transition:background var(--transition),opacity var(--transition)}
.own-quick-btn:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 88%,#000)}
.own-quick-btn:disabled{opacity:.55;cursor:default}
.own-tool-bar{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:6px 8px;border-radius:var(--radius-sm);border:var(--border-width) solid color-mix(in srgb,var(--border) 70%,transparent);background:color-mix(in srgb,var(--surface-2) 30%,var(--surface))}
.own-tool-bar .input,.own-tool-bar select{margin:0!important;flex:1 1 auto;min-width:0;max-width:11rem;min-height:30px;font-size:var(--text-xs)}
.own-tool-limit{max-width:4rem!important;flex:0 0 4rem!important}
.own-tool-dest{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:6px;padding:8px 10px;border-radius:var(--radius-sm);border:var(--border-width) solid color-mix(in srgb,var(--border) 75%,transparent);background:color-mix(in srgb,var(--surface-2) 40%,var(--surface))}
.own-tool-dest-field{display:flex;flex-direction:column;gap:2px;min-width:0}
.own-tool-lbl{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-dim)}
.own-tool-dest .input{margin:0!important;min-height:30px;font-size:var(--text-xs)}
.own-tool-hint{margin:0;font-size:11px;color:var(--text-dim);line-height:1.35;padding:0 2px}
.own-tool-hint code{font-size:10px}
.own-results{min-width:0}
.own-fetch{margin-top:var(--space-1);padding:10px 12px;display:flex;flex-direction:column;gap:6px;border:var(--border-width) solid color-mix(in srgb,var(--border) 75%,transparent);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--surface-2) 25%,var(--surface))}
.own-fetch-lbl{font-size:var(--text-sm);font-weight:var(--font-weight-medium)}
.own-fetch-row{display:flex;gap:6px;align-items:stretch}
.own-fetch-row .input{flex:1;min-width:0;margin:0!important}
.own-fetch-row .btn{flex-shrink:0;margin:0}
.owner-results-head,.media-results-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 12px;margin:2px 0 8px;padding:4px 8px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--surface-2) 35%,var(--surface));border:var(--border-width) solid color-mix(in srgb,var(--border) 70%,transparent)}
.owner-results-count,.media-results-count{font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--text)}
.owner-results-meta,.media-results-meta{font-size:11px;color:var(--text-dim)}
.owner-results-empty,.media-results-empty{margin:8px 2px}
.media-hit-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px}
.media-hit-card{display:flex;flex-direction:column;min-height:220px;border:var(--border-width) solid color-mix(in srgb,var(--border) 78%,transparent);border-radius:var(--radius-sm);background:var(--surface);overflow:hidden;transition:box-shadow var(--motion-fast,.12s ease),border-color var(--motion-fast,.12s ease)}
.media-hit-card:hover{box-shadow:0 2px 10px color-mix(in srgb,var(--text) 6%,transparent);border-color:color-mix(in srgb,var(--accent) 22%,var(--border))}
.media-hit-thumb-wrap{position:relative;aspect-ratio:4/3;background:color-mix(in srgb,var(--surface-2) 70%,var(--surface));flex-shrink:0;overflow:hidden}
.media-hit-thumb{width:100%;height:100%;object-fit:cover;display:block}
.media-hit-thumb-wrap.is-placeholder{display:flex;align-items:center;justify-content:center}
.media-hit-ph{font-size:1.5rem;line-height:1;color:var(--text-dim);opacity:.5}
.media-hit-type{position:absolute;left:6px;bottom:6px;padding:2px 6px;border-radius:999px;font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text);background:color-mix(in srgb,var(--surface) 90%,transparent);border:1px solid color-mix(in srgb,var(--border) 70%,transparent)}
.media-hit-body{flex:1;display:flex;flex-direction:column;gap:4px;min-height:0;padding:8px 10px 6px}
.media-hit-title{margin:0;font-size:12px;font-weight:var(--font-weight-medium);line-height:1.35;color:var(--text);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.media-hit-meta{margin:0;font-size:10px;line-height:1.35;color:var(--text-dim);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.media-hit-foot{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:8px 10px;border-top:var(--border-width) solid color-mix(in srgb,var(--border) 70%,transparent);margin-top:auto}
.media-hit-foot .btn,.media-dl-btn{margin:0!important;min-height:28px;padding:0 10px;font-size:11px}
.search-result-list{margin:0;padding-left:1.2rem}
.search-result-item{margin-bottom:var(--gap-sm);line-height:1.4}
.search-fetch-pre{white-space:pre-wrap;word-break:break-word;max-height:420px;overflow:auto;font-size:var(--text-xs);margin:0}
@media(min-width:721px){
  .own-card-head{align-items:center}
  .own-card-body{flex-direction:row;align-items:center;gap:10px}
  .own-card-title{flex:1;min-width:0}
  .own-card-pills{flex-shrink:0;justify-content:flex-end;max-width:58%}
  .own-grid.cols-2 .own-card-body{flex-direction:column;align-items:flex-start}
  .own-grid.cols-2 .own-card-pills{justify-content:flex-start;max-width:none}
}
@media (max-width:1100px){.own-grid.cols-5{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:860px){
  .own-grid.cols-3,.own-grid.cols-5{grid-template-columns:repeat(2,minmax(0,1fr))}
  .own-head{flex-wrap:wrap}
  .own-module-nav{margin-left:0;width:100%}
  .own-module-nav .seg-btn{flex:1;justify-content:center}
  .own-count{margin-left:0}
}
@media (max-width:640px){
  .own-grid.cols-2,.own-grid.cols-3,.own-grid.cols-5{grid-template-columns:1fr}
  .own-sticky-top{gap:6px}
  .own-search{max-width:none;flex:1 1 100%}
  .own-density-wrap{width:100%;justify-content:space-between}
  .own-density{flex:1;justify-content:flex-end}
  .own-density .seg-btn{flex:1}
  .own-filter-row .input,.own-filter-row select,.own-tool-bar .input,.own-tool-bar select{max-width:none;flex:1 1 100%}
  .own-tool-limit{max-width:none!important;flex:1 1 100%!important}
  .own-tool-dest{grid-template-columns:1fr}
  .media-hit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .own-fetch-row{flex-direction:column}
  .own-fetch-row .btn{width:100%}
}
@media (prefers-reduced-motion:reduce){.own-skel-row{animation:none!important}}

/* ── Notes module layout (restored transcript e293e93c) ── */
/* Notes module */
.notes-root,.agent-pane-notes{min-width:0;height:100%;display:flex;flex-direction:column}
.notes-module{max-width:min(1040px,calc(100vw - 20px));margin:0 auto;padding:var(--notes-pad,8px 10px 10px);display:flex;flex-direction:column;gap:var(--notes-gap,6px);width:100%;box-sizing:border-box;flex:1;min-height:0;--notes-k:11px;--notes-s:13px;--notes-m:14px;--notes-gap:6px;--notes-btn-h:36px;--notes-btn-h-sm:32px;--notes-lbl-w:52px;--notes-pad:8px 10px 10px;--notes-r:8px}
.notes-k,.notes-agent-k{display:block;font-size:var(--notes-k);font-weight:var(--font-weight-medium);letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);line-height:1.2}
.notes-pool{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:var(--notes-btn-h-sm);padding:0 10px;border:var(--border-width) solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:999px;background:var(--surface);font:inherit;font-size:var(--notes-s);font-weight:var(--font-weight-medium);cursor:pointer;color:var(--text-dim);white-space:nowrap;user-select:none;transition:border-color .14s ease,background .14s ease,color .14s ease}
.notes-pool:hover:not(:disabled){border-color:color-mix(in srgb,var(--accent) 25%,var(--border));color:var(--text)}
.notes-pool.is-on{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));color:var(--text);background:color-mix(in srgb,var(--accent) 12%,var(--surface))}
.notes-pool:disabled{opacity:.45;cursor:not-allowed}
.notes-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}
.notes-title{margin:0;font-family:var(--font-display);font-size:var(--text-h1)}
.notes-lead{margin:var(--space-1) 0 0}
.notes-dash-list{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--notes-gap);flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;align-content:start}
.notes-dash-card{display:flex;flex-direction:column;gap:var(--notes-gap);min-height:0;padding:8px 10px;border-radius:var(--notes-r);transition:box-shadow .15s ease,border-color .15s ease}
.notes-dash-card:hover{border-color:color-mix(in srgb,var(--accent) 30%,var(--border));box-shadow:0 1px 0 color-mix(in srgb,var(--border) 40%,transparent)}
.notes-dash-card-main{width:100%;text-align:left;background:transparent;border:0;padding:0;cursor:pointer;color:inherit;font:inherit;display:flex;flex-direction:column;gap:3px}
.notes-dash-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--notes-gap)}
.notes-dash-card-title{margin:0;font-size:var(--notes-s);font-weight:var(--font-weight-medium);line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.notes-dash-card-meta{margin:0;font-size:var(--notes-k);color:var(--text-dim)}
.notes-dash-card-projects{display:flex;flex-wrap:wrap;gap:4px;margin-top:2px}
.notes-dash-card-project{font-size:10px;padding:1px 6px;border-radius:999px;background:var(--surface-2);border:var(--border-width) solid color-mix(in srgb,var(--border) 50%,transparent);color:var(--text-dim);max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.notes-dash-card-more{opacity:.7}
.notes-dash-card-actions{display:flex;align-items:center;gap:4px;flex-wrap:wrap;margin-top:auto;padding-top:6px;border-top:var(--border-width) solid color-mix(in srgb,var(--border) 40%,transparent)}
.notes-dash-head{margin:0;padding-bottom:4px}
.notes-dash-head h1{margin:0;font-family:var(--font-ui);font-size:clamp(1.25rem,2.4vw,1.55rem);font-weight:800;letter-spacing:-.03em;line-height:var(--lh-tight)}
.notes-quick-pad{padding:8px 10px;flex-shrink:0;border-radius:var(--notes-r)}
.notes-quick-pad-label{display:block;font-size:var(--notes-k);font-weight:var(--font-weight-medium);letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);margin-bottom:6px}
.notes-quick-pad-input{resize:none;min-height:var(--notes-btn-h);max-height:88px;font-size:var(--notes-m);line-height:1.35;overflow-y:auto;border-radius:var(--notes-r);padding:0 10px;border-color:color-mix(in srgb,var(--border) 82%,transparent);background:var(--surface-2)}
.notes-quick-pad-input:focus{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));background:var(--surface)}
.notes-dash-toolbar{display:flex;gap:var(--notes-gap);flex-shrink:0}
.notes-dash-toolbar .input{flex:1;min-width:0;height:var(--notes-btn-h);border-radius:var(--notes-r);font-size:var(--notes-m);padding:0 10px}
.notes-load-more-btn{align-self:center}
.notes-fab{position:fixed;bottom:calc(var(--space-4) + env(safe-area-inset-bottom,0px));left:50%;transform:translateX(-50%);z-index:50;width:56px;height:56px;border-radius:50%;border:0;background:var(--accent);color:var(--accent-fg,#fff);font-size:1.75rem;line-height:1;cursor:pointer;box-shadow:0 4px 20px color-mix(in srgb,var(--accent) 45%,#000 25%);display:flex;align-items:center;justify-content:center;transition:transform .15s ease,box-shadow .15s ease}
.notes-fab:hover,.notes-fab:focus-visible{transform:translateX(-50%) scale(1.06);box-shadow:0 6px 24px color-mix(in srgb,var(--accent) 55%,#000 30%)}
.notes-dash-module{padding-bottom:calc(var(--space-6) + 56px + env(safe-area-inset-bottom,0px))}
@media(max-width:599px){.notes-dash-list{grid-template-columns:1fr}}
@media(min-width:600px) and (max-width:959px){.notes-dash-list{grid-template-columns:repeat(2,1fr)}}
.notes-dash-project{margin:0;font-size:var(--text-h3)}
.notes-agent-pill{font-size:var(--text-xs);padding:2px 8px;border-radius:999px;border:var(--border-width) solid var(--border);color:var(--text-dim)}
.notes-agent-pill.on{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}
.notes-dash-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:auto}
.notes-subhead{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1);flex-shrink:0;padding:var(--space-1) 0}
.notes-subhead h1{margin:0;flex:1;font-size:var(--text-h3);line-height:1.2}
.notes-capture-layout{display:flex;flex-direction:column;gap:10px;flex:1;min-height:0;height:100%;overflow:hidden;padding-bottom:0}
.notes-timeline{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column;gap:3px;padding:8px 10px;border:var(--border-width) solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:12px;background:color-mix(in srgb,var(--surface-2) 18%,var(--surface));overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.notes-capture-main{display:flex;flex-direction:column;gap:8px;min-height:0;min-width:0;flex:1;overflow:hidden}
.notes-entry{padding:5px 8px;border-radius:var(--notes-r);background:color-mix(in srgb,var(--surface-2) 20%,var(--surface));border:var(--border-width) solid color-mix(in srgb,var(--border) 78%,transparent);min-width:0}
.notes-entry-meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin-bottom:3px;font-size:var(--notes-k);color:var(--text-dim)}
.notes-entry-body{font-size:var(--notes-s);line-height:1.35;word-break:break-word}
.notes-compose-dock{padding:0;flex-shrink:0;background:transparent;border:0;box-shadow:none;margin-top:2px}
.notes-compose-box{display:flex;flex-direction:column;gap:8px;padding:10px;border:var(--border-width) solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:12px;background:var(--surface);box-shadow:0 1px 0 color-mix(in srgb,var(--border) 35%,transparent);position:relative;transition:border-color .2s ease,box-shadow .2s ease}
.notes-compose-box.is-mic-recording{border-color:color-mix(in srgb,var(--error) 35%,var(--border));box-shadow:0 0 0 1px color-mix(in srgb,var(--error) 12%,transparent)}
.notes-compose-box.is-mic-transcribing{border-color:color-mix(in srgb,var(--accent) 40%,var(--border));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 14%,transparent)}
.notes-transcribe-hint{display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:8px;background:color-mix(in srgb,var(--accent) 10%,var(--surface));border:var(--border-width) solid color-mix(in srgb,var(--accent) 28%,var(--border));font-size:var(--notes-s);color:var(--text);line-height:1.2}
.notes-transcribe-hint[hidden]{display:none!important}
.notes-transcribe-pulse{width:8px;height:8px;border-radius:50%;background:var(--accent);flex-shrink:0;animation:notes-transcribe-pulse 1s ease-in-out infinite}
.notes-transcribe-label{font-weight:var(--font-weight-medium)}
@keyframes notes-transcribe-pulse{0%,100%{transform:scale(.85);opacity:.55}50%{transform:scale(1.15);opacity:1}}
.notes-compose-input{width:100%;min-height:76px;max-height:148px;font-size:var(--notes-m);border:var(--border-width) solid color-mix(in srgb,var(--border) 78%,transparent);border-radius:10px;padding:12px 14px;box-sizing:border-box;line-height:1.45;margin:0;resize:vertical;background:color-mix(in srgb,var(--surface-2) 16%,var(--surface));transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}
.notes-compose-input:focus{outline:none;border-color:color-mix(in srgb,var(--accent) 38%,var(--border));background:var(--surface);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 12%,transparent)}
.notes-compose-box.is-mic-transcribing .notes-compose-input{background:linear-gradient(110deg,color-mix(in srgb,var(--surface) 92%,var(--accent)) 0%,color-mix(in srgb,var(--accent) 8%,var(--surface)) 45%,color-mix(in srgb,var(--surface) 92%,var(--accent)) 90%);background-size:220% 100%;animation:notes-transcribe-shimmer 1.4s ease-in-out infinite;border-color:color-mix(in srgb,var(--accent) 32%,var(--border))}
@keyframes notes-transcribe-shimmer{0%{background-position:100% 0}100%{background-position:-100% 0}}
.notes-compose-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0;margin:0;border:0;background:transparent}
.notes-compose-foot-main{display:flex;align-items:center;gap:6px;min-width:0;flex:1;overflow:hidden}
.notes-send-btn{width:38px;height:38px;min-width:38px;border:0;border-radius:999px;background:var(--accent);color:var(--accent-text,#fff);font:inherit;line-height:1;cursor:pointer;padding:0;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;box-sizing:border-box;transition:transform .14s ease,box-shadow .14s ease,opacity .14s ease;box-shadow:0 2px 10px color-mix(in srgb,var(--accent) 38%,transparent)}
.notes-send-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 14px color-mix(in srgb,var(--accent) 48%,transparent)}
.notes-send-btn:active:not(:disabled){transform:translateY(0) scale(.97)}
.notes-send-ico-wrap{display:inline-flex;align-items:center;justify-content:center;line-height:0}
.notes-send-ico{display:block}
.notes-compose-foot .chat-mic-btn.is-recording{color:var(--error);border-color:color-mix(in srgb,var(--error) 42%,var(--border));background:color-mix(in srgb,var(--error) 8%,var(--surface));animation:mic-pulse 1.2s ease-in-out infinite}
.notes-compose-foot .chat-mic-btn.is-transcribing{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 42%,var(--border));background:color-mix(in srgb,var(--accent) 10%,var(--surface));pointer-events:none}
.notes-compose-foot .mic-level-viz{display:none;align-items:flex-end;gap:2px;height:32px;padding:0 2px;flex:none}
.notes-compose-foot .mic-level-viz.is-active{display:flex}
.notes-compose-foot .mic-level-viz span{display:block;width:3px;height:14px;border-radius:2px;background:var(--error);transform:scaleY(0.12);transform-origin:center bottom;will-change:transform}
.notes-compose-icon{display:inline-flex;align-items:center;justify-content:center;width:var(--notes-btn-h-sm);height:var(--notes-btn-h-sm);min-width:var(--notes-btn-h-sm);border:var(--border-width) solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:var(--notes-r);background:var(--surface);color:var(--text-dim);cursor:pointer;padding:0;flex-shrink:0;transition:border-color .14s ease,color .14s ease,background .14s ease}
.notes-compose-icon:hover{color:var(--text);border-color:color-mix(in srgb,var(--accent) 28%,var(--border));background:color-mix(in srgb,var(--accent) 6%,var(--surface))}
@media (prefers-reduced-motion:reduce){.notes-compose-box.is-mic-transcribing .notes-compose-input{animation:none}.notes-transcribe-pulse{animation:none}}
.notes-input{resize:none;min-height:var(--notes-btn-h);max-height:96px;margin:0;font-size:var(--notes-m)}
.notes-chat-bar{display:flex;align-items:center;gap:var(--notes-gap);margin-top:var(--notes-gap);flex-wrap:nowrap;min-width:0}
.notes-pending-files{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 6px;padding:0 2px}
.notes-pending-chip{font-size:var(--text-sm);padding:2px 8px;border-radius:999px;background:var(--surface-2);border:var(--border-width) solid var(--border)}
.notes-agent-panel{align-self:start;position:sticky;top:var(--space-2);max-height:min(70vh,640px);overflow:auto}
.notes-agent-panel.is-collapsed .notes-agent-body{display:none}
.notes-agent-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-2);background:transparent;border:0;color:inherit;cursor:pointer;font:inherit}
.notes-agent-body{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3)}
.notes-agent-state{font-size:10px;padding:2px 7px;border-radius:999px;border:var(--border-width) solid var(--border);font-weight:var(--font-weight-medium)}
.notes-agent-state.on{color:var(--success);border-color:color-mix(in srgb,var(--success) 35%,var(--border))}
.notes-caps{border:0;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:5px}
.notes-agent-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);position:sticky;bottom:0;background:var(--surface);padding-top:var(--space-2);margin-top:var(--space-1);border-top:var(--border-width) solid color-mix(in srgb,var(--border) 50%,transparent)}
.notes-status{font-size:var(--text-xs);padding:1px 6px;border-radius:999px;border:var(--border-width) solid var(--border)}
.notes-status.pending,.notes-status.processing{color:var(--accent)}
.notes-status.done{color:var(--success)}
.notes-status.error{color:var(--error)}
.notes-status.muted{color:var(--text-dim)}
.notes-document{display:flex;flex-direction:column;gap:var(--space-1);flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding-bottom:var(--space-2)}
.notes-doc-section{padding:var(--space-3)}
.notes-doc-section-head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2)}
.notes-doc-editor{display:grid;grid-template-columns:1fr;gap:var(--space-2)}
.notes-doc-preview{padding:var(--space-2);border:var(--border-width) solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);min-height:120px;overflow:auto}
.notes-md-h1,.notes-md-h2,.notes-md-h{display:block;margin:.35em 0}
.notes-att{margin:var(--space-2) 0;max-width:100%}
.notes-att img,.notes-att video,.notes-att audio,.notes-att-img,.notes-att-vid,.notes-att-aud,.notes-att-file{max-width:100%;height:auto;border-radius:var(--radius-sm)}
.notes-raw-details{margin-top:var(--space-2)}
.notes-raw-pre{white-space:pre-wrap;font-size:var(--text-sm);padding:var(--space-2);background:var(--surface-2);border-radius:var(--radius-sm);max-height:200px;overflow:auto}
.notes-empty{padding:var(--space-4);text-align:center}
.notes-projects-wrap{margin-bottom:0;flex-shrink:0}
.notes-projects-chips{display:flex;flex-wrap:wrap;gap:var(--space-1);align-items:center;min-width:0}
.notes-project-chip{display:inline-flex;align-items:center;gap:2px;font-size:var(--text-xs);padding:2px 8px;border-radius:999px;background:var(--surface-2);border:var(--border-width) solid color-mix(in srgb,var(--border) 55%,transparent);max-width:10rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.notes-chip-rm{width:16px;height:16px;padding:0;border:0;background:transparent;color:var(--text-dim);cursor:pointer;font-size:.9rem;line-height:1;flex-shrink:0}
.dp-module-notes-list{display:flex;flex-direction:column;gap:var(--space-3)}
.page-notes .notes-root,.notes-root{min-width:0;height:100%;display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}
.notes-loading{min-height:min(60vh,480px);display:flex;align-items:center;justify-content:center}
.notes-loading-inner{display:flex;flex-direction:column;align-items:center;gap:var(--space-3)}
.notes-loading-spinner{width:28px;height:28px;border-radius:50%;border:2px solid color-mix(in srgb,var(--border) 70%,transparent);border-top-color:var(--accent);animation:notes-spin .75s linear infinite}
@keyframes notes-spin{to{transform:rotate(360deg)}}
.page-notes{overflow:hidden;padding:0;display:flex;flex-direction:column;min-height:0;flex:1}
.page-notes .notes-root{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}
.notes-load-older{align-self:center;margin:0 auto var(--space-1)}
.notes-timeline-hint{text-align:center;margin:0;padding:var(--space-1)}
/* Notes module */
.page-notes{overflow:hidden;padding:0}
.notes-head-compact{gap:var(--space-2)}
.notes-head-top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);width:100%}
.notes-dash-module{gap:var(--space-2);overflow:hidden}
.notes-dash-groups{display:flex;flex-direction:column;gap:var(--space-2);flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.notes-dash-group{padding:var(--space-2)}
.notes-dash-group-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-bottom:var(--space-1)}
.notes-dash-group-title{margin:0;font-size:var(--text-base);font-weight:600}
.notes-dash-group-count{font-size:var(--text-xs);padding:1px 7px;border-radius:999px;background:var(--surface-2);border:var(--border-width) solid var(--border);color:var(--text-dim)}
.notes-dash-rows{display:flex;flex-direction:column}
.notes-dash-row{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) 0;border-top:var(--border-width) solid color-mix(in srgb,var(--border) 45%,transparent)}
.notes-dash-rows .notes-dash-row:first-child{border-top:0}
.notes-dash-row-main{flex:1;min-width:0;text-align:left;background:transparent;border:0;padding:var(--space-1);cursor:pointer;color:inherit;font:inherit;display:flex;flex-direction:column;gap:1px}
.notes-dash-row-title{font-size:var(--text-sm);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.notes-dash-row-meta{font-size:var(--text-xs)}
.notes-dash-row-actions{display:flex;align-items:center;gap:var(--space-1);flex-shrink:0}
.notes-dash-zero{margin:0;padding:var(--space-1);font-size:var(--text-sm)}
.notes-subhead-compact{padding:0;gap:var(--space-2)}
.notes-capture-body{display:flex;flex-direction:column;gap:var(--notes-gap);flex:1;min-height:0;overflow:hidden}
.notes-doc-layout{overflow:hidden}
.notes-doc-row{padding:0;overflow:hidden}
.notes-doc-row-head{width:100%;display:flex;align-items:center;gap:var(--space-1);padding:var(--space-2)}
.notes-doc-row-head .notes-status{flex-shrink:0}
.notes-doc-row-date{flex-shrink:0;font-size:var(--text-xs);min-width:5.5rem}
.notes-doc-row-preview{flex:1;min-width:0;font-size:var(--text-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-dim)}
.notes-doc-row-chevron,.notes-doc-outline-chevron{flex-shrink:0;color:var(--text-dim);font-size:var(--text-xs);width:1rem;text-align:center}
.notes-doc-row-body{padding:0 var(--space-2) var(--space-2)}
.notes-doc-row-toolbar{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-bottom:var(--space-1)}
.notes-doc-edit{min-height:80px;font-size:var(--text-sm)}
.notes-doc-preview-compact{min-height:48px;max-height:160px;font-size:var(--text-sm)}
.notes-view-head{display:flex;flex-direction:column;gap:var(--space-2);flex-shrink:0;padding:0}
.notes-view-title{margin:0;font-size:var(--text-h3);line-height:1.2;min-width:0}
.notes-view-actions{display:flex;align-items:center;gap:var(--space-1);flex-shrink:0;margin-left:auto}
.notes-view-back{flex-shrink:0;padding-inline:var(--space-2)}
.notes-projects-inline{margin:0;display:flex;align-items:center;gap:var(--space-2);min-width:0;flex:1}
.notes-projects-inline .notes-projects-label{flex-shrink:0;font-size:var(--text-xs);margin:0}
.notes-projects-inline .notes-projects-chips{margin:0;min-width:0}
.notes-projects-empty{font-size:var(--text-xs)}
.notes-agent-open-btn{display:inline-flex;align-items:center;gap:var(--space-1);padding-inline:var(--space-2)}
.notes-agent-open-ico{display:inline-flex}
.notes-agent-open-state{font-size:var(--text-xs);padding:1px 6px;border-radius:999px;border:var(--border-width) solid var(--border);color:var(--text-dim)}
.notes-agent-open-state.on{color:var(--success);border-color:color-mix(in srgb,var(--success) 35%,var(--border))}
.notes-agent-modal{position:fixed;inset:0;z-index:300;display:none;align-items:center;justify-content:center;padding:10px}
.notes-agent-modal.is-open{display:flex}
body.notes-agent-modal-open{overflow:hidden}
.notes-agent-modal-backdrop{position:absolute;inset:0;border:0;padding:0;margin:0;background:color-mix(in srgb,var(--bg) 8%,#000 58%);backdrop-filter:blur(3px);cursor:pointer}
.notes-agent-modal-panel{position:relative;z-index:1;width:min(440px,calc(100vw - 16px));max-height:min(90vh,680px);overflow:hidden;display:flex;flex-direction:column;margin:0;box-shadow:0 16px 48px color-mix(in srgb,#000 28%,transparent);border-radius:12px;border:var(--border-width) solid color-mix(in srgb,var(--border) 82%,transparent);--notes-k:11px;--notes-s:13px;--notes-m:14px;--notes-gap:6px;--notes-btn-h:36px;--notes-btn-h-sm:32px;--notes-r:8px}
.notes-agent-modal-body{overflow-y:auto;flex:1;min-height:0;padding:8px 10px;-webkit-overflow-scrolling:touch}
.notes-agent-modal-body .input,.notes-agent-modal-body select.input,.notes-agent-field{width:100%;height:var(--notes-btn-h-sm);min-height:var(--notes-btn-h-sm);border-radius:var(--notes-r);font-size:var(--notes-s);padding:0 10px;border:var(--border-width) solid color-mix(in srgb,var(--border) 82%,transparent);background:var(--surface);box-sizing:border-box}
.notes-agent-modal-body .input:focus,.notes-agent-field:focus{outline:none;border-color:color-mix(in srgb,var(--accent) 38%,var(--border));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 10%,transparent)}
.notes-agent-modal .ui-select-menu.is-floating{z-index:350}
.notes-agent-modal-head{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:var(--border-width) solid color-mix(in srgb,var(--border) 72%,transparent);background:var(--surface);flex-shrink:0}
.notes-agent-modal-head-main{display:flex;align-items:center;gap:8px;flex:1;min-width:0}
.notes-agent-modal-ico{width:18px;height:18px;color:var(--accent);flex-shrink:0}
.notes-agent-modal-title{margin:0;font-size:var(--notes-m);font-weight:var(--font-weight-medium);line-height:1.2}
.notes-agent-modal-close{flex-shrink:0;width:28px;height:28px;min-width:28px;padding:0;border:var(--border-width) solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:var(--notes-r);background:var(--surface);font-size:1rem;line-height:1;display:inline-flex;align-items:center;justify-content:center;color:var(--text-dim);cursor:pointer}
.notes-agent-modal-close:hover{color:var(--text);border-color:color-mix(in srgb,var(--accent) 28%,var(--border))}
.notes-agent-modal-foot{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:10px 12px;border-top:var(--border-width) solid color-mix(in srgb,var(--border) 72%,transparent);background:color-mix(in srgb,var(--surface-2) 35%,var(--surface));flex-shrink:0}
.notes-agent-foot-hint{display:none}
.notes-agent-foot-actions{display:flex;gap:6px;flex-shrink:0;width:100%;justify-content:flex-end}
.notes-modal-btn{min-height:var(--notes-btn-h-sm);padding:0 14px;border:var(--border-width) solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:999px;background:var(--surface);font:inherit;font-size:var(--notes-s);font-weight:var(--font-weight-medium);cursor:pointer;color:var(--text);transition:border-color .14s ease,background .14s ease}
.notes-modal-btn:hover{border-color:color-mix(in srgb,var(--accent) 28%,var(--border))}
.notes-modal-btn--accent{border-color:var(--accent);background:var(--accent);color:var(--accent-text,#fff)}
.notes-modal-btn--accent:hover{filter:brightness(1.04)}
.notes-agent-sheet{display:flex;flex-direction:column;gap:6px;min-width:0;width:100%}
.notes-agent-block{display:flex;flex-direction:column;gap:5px;width:100%;padding:7px 9px;border:var(--border-width) solid color-mix(in srgb,var(--border) 78%,transparent);border-radius:10px;background:color-mix(in srgb,var(--surface-2) 22%,var(--surface));box-sizing:border-box}
.notes-agent-block-h{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}
.notes-agent-block .notes-k{margin:0;line-height:1.2}
.notes-agent-block--switch{gap:3px;padding-block:6px}
.notes-agent-switch-copy{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1}
.notes-agent-split{display:grid;grid-template-columns:1fr 1fr;gap:6px;width:100%}
.notes-agent-switch-label{margin:0;font-size:var(--notes-s);font-weight:var(--font-weight-medium);line-height:1.25}
.notes-agent-switch{position:relative;display:inline-flex;flex-shrink:0;cursor:pointer}
.notes-agent-switch input{position:absolute;opacity:0;width:0;height:0}
.notes-agent-switch-ui{display:block;width:38px;height:22px;border-radius:999px;background:color-mix(in srgb,var(--border) 55%,var(--surface-2));border:var(--border-width) solid var(--border);transition:background .18s ease,border-color .18s ease;position:relative}
.notes-agent-switch-ui::after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:var(--surface);box-shadow:0 1px 2px color-mix(in srgb,#000 16%,transparent);transition:transform .18s ease}
.notes-agent-switch input:checked+.notes-agent-switch-ui{background:color-mix(in srgb,var(--accent) 78%,var(--surface));border-color:color-mix(in srgb,var(--accent) 55%,var(--border))}
.notes-agent-switch input:checked+.notes-agent-switch-ui::after{transform:translateX(16px);background:#fff}
.notes-agent-search{width:100%;margin:0}
.notes-agent-pick-count{font-size:var(--notes-k);color:var(--text-dim);font-variant-numeric:tabular-nums;padding:0 2px;flex-shrink:0}
.notes-agent-scroll{display:flex;gap:6px;overflow-x:auto;overflow-y:hidden;padding:2px 0 4px;-webkit-overflow-scrolling:touch;scrollbar-width:none;width:100%;min-width:0}
.notes-agent-scroll::-webkit-scrollbar{display:none}
.notes-agent-chip{flex:0 0 72px;display:flex;flex-direction:column;align-items:center;gap:3px;padding:7px 4px;border:var(--border-width) solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:var(--notes-r);background:var(--surface);cursor:pointer;font:inherit;text-align:center;min-width:0;transition:border-color .14s ease,background .14s ease,box-shadow .14s ease}
.notes-agent-chip:hover{border-color:color-mix(in srgb,var(--accent) 28%,var(--border))}
.notes-agent-chip.is-on{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:color-mix(in srgb,var(--accent) 10%,var(--surface));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 16%,transparent)}
.notes-agent-chip[hidden]{display:none!important}
.notes-agent-chip-av{width:30px;height:30px;border-radius:50%;overflow:hidden;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;font-size:10px;font-weight:var(--font-weight-semibold);color:var(--accent);background:var(--accent-soft)}
.notes-agent-chip-av .agent-av,.notes-agent-chip-av img{width:100%;height:100%;object-fit:cover;display:block}
.notes-agent-chip-name{font-size:10px;font-weight:var(--font-weight-medium);line-height:1.15;max-width:100%;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--text)}
.notes-agent-chip-model{font-size:8px;color:var(--text-dim);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.notes-agent-empty{margin:0;padding:6px 0;font-size:var(--notes-s);text-align:center;color:var(--text-dim)}
.notes-agent-block--instr .notes-agent-instruction{width:100%;height:auto;min-height:72px;max-height:160px;font-size:var(--notes-s);line-height:1.4;padding:7px 9px;border-radius:var(--notes-r);resize:vertical}
.notes-agent-block--agent{gap:4px}
.notes-agent-gen-wrap{display:flex;flex-direction:column;gap:4px;margin-top:2px;padding-top:5px;border-top:var(--border-width) solid color-mix(in srgb,var(--border) 55%,transparent)}
.notes-agent-gen-preview{display:flex;gap:5px;flex-wrap:wrap;width:100%}
.notes-agent-gen-pill{font-size:10px;padding:0 8px;min-height:24px;pointer-events:none;cursor:default;border-style:solid}
.notes-agent-gen-pill.is-live{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--text);opacity:1}
.notes-agent-gen-pill.is-pending{border-color:color-mix(in srgb,var(--accent) 28%,var(--border));border-style:dashed;background:color-mix(in srgb,var(--accent) 5%,var(--surface));color:var(--text-dim);opacity:1}
.notes-agent-gen-pill.is-off{opacity:.42;border-color:color-mix(in srgb,var(--border) 82%,transparent);background:var(--surface)}
.notes-agent-gen-hint{margin:0;font-size:10px;color:var(--text-dim);line-height:1.35}
.notes-agent-gen-glyph{font-size:11px;line-height:1}
.notes-agent-caps{display:flex;flex-wrap:wrap;gap:5px;width:100%}
.notes-agent-cap{font-size:10px;padding:0 8px;min-height:24px}
.notes-agent-bound{margin:0;font-size:10px;color:var(--text-dim);line-height:1.3}
body.notes-capture-view .lang-switcher{bottom:max(132px,calc(env(safe-area-inset-bottom,0px) + 120px));z-index:18}
@media(min-width:721px){body.notes-capture-view .lang-switcher{bottom:max(96px,calc(env(safe-area-inset-bottom,0px) + 84px))}}
body.notes-agent-modal-open .lang-switcher{z-index:280}
.visually-hidden{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}
.notes-cap-chk{font-size:var(--notes-s)}
.notes-compose-actions{display:flex;align-items:center;gap:4px;flex-shrink:0;margin-left:auto}
.notes-gen-modes{display:flex;align-items:center;gap:5px;flex-shrink:1;min-width:0;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.notes-gen-modes::-webkit-scrollbar{display:none}
.notes-gen-btn{font-size:10px;padding:0 8px;min-height:var(--notes-btn-h-sm);flex:0 0 auto}
.notes-gen-btn .notes-gen-label{display:inline}
.notes-gen-glyph{font-size:11px;line-height:1}
.notes-doc-outline{padding:0;flex-shrink:0}
.notes-doc-outline-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:transparent;border:0;color:inherit;font:inherit;cursor:pointer;font-weight:600;font-size:var(--text-sm)}
.notes-doc-outline-body{padding:0 var(--space-2) var(--space-2)}
.notes-doc-outline-toolbar{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-bottom:var(--space-1)}
.notes-doc-outline-edit{min-height:64px;font-size:var(--text-sm);resize:vertical}
.notes-doc-outline-preview{font-size:var(--text-sm);padding:var(--space-2);border:var(--border-width) solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);max-height:140px;overflow:auto}
.notes-doc-outline-preview a{color:var(--accent);text-decoration:underline}
.notes-doc-group{margin-bottom:var(--space-1)}
.notes-doc-group-head{display:flex;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-3);border-bottom:var(--border-width) solid color-mix(in srgb,var(--border) 45%,transparent)}
.notes-doc-group-title,.notes-doc-group-title-static{flex:1;min-width:0;font-weight:600;font-size:var(--text-sm)}
.notes-doc-group-count{flex-shrink:0}
.notes-doc-group-intro{font-size:var(--text-sm);padding:var(--space-2) var(--space-3);color:var(--text-dim)}
.notes-doc-group-rows{display:flex;flex-direction:column;gap:1px}
.notes-doc-group-empty{margin:0;padding:var(--space-2) var(--space-3);font-size:var(--text-sm)}
.notes-doc-html-preview{font-size:var(--text-sm);line-height:1.45;word-break:break-word}
.notes-doc-group-select{max-width:8.5rem;flex-shrink:0}
.notes-del-btn,.notes-entry-del{width:22px;height:22px;padding:0;border:0;background:transparent;color:var(--text-dim);cursor:pointer;font-size:1.1rem;line-height:1;border-radius:var(--radius-sm);flex-shrink:0;display:inline-flex;align-items:center;justify-content:center}
.notes-del-btn:hover,.notes-del-btn:focus-visible,.notes-entry-del:hover,.notes-entry-del:focus-visible{color:var(--error)}
.notes-doc-row-head .notes-del-btn,.notes-doc-row-head .notes-entry-del{margin-left:0}
.notes-entry-meta .notes-del-btn,.notes-entry-meta .notes-entry-del{margin-left:auto}
.notes-doc-group-head .notes-del-btn,.notes-doc-group-head .notes-entry-del{margin-left:var(--space-1)}
.notes-doc-row-toggle{flex:1;min-width:0;display:flex;align-items:center;gap:var(--space-2);padding:0;background:transparent;border:0;cursor:pointer;color:inherit;font:inherit;text-align:left}
.notes-doc-row-toggle .notes-status{flex-shrink:0}
.notes-view-head{display:flex;flex-direction:column;gap:8px;flex-shrink:0;padding:0;background:transparent;border:0}
.notes-view-head-top{display:flex;align-items:center;gap:8px;min-width:0;width:100%}
.notes-view-head-text{flex:1;min-width:0}
.notes-eyebrow{margin:0 0 2px;font-size:var(--notes-k);font-weight:var(--font-weight-medium);letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);line-height:1.2}
.notes-view-title-input{width:100%;font-family:var(--font-ui);font-size:clamp(1.15rem,2.2vw,1.45rem);font-weight:800;letter-spacing:-.03em;line-height:1.15;padding:0;border:0;border-radius:0;background:transparent;color:var(--text);min-height:0;height:auto}
.notes-view-title-input:hover{background:transparent}
.notes-view-title-input:focus{outline:none;box-shadow:none;border-color:transparent;background:transparent}
.notes-view-head-tools{display:flex;align-items:center;gap:6px;min-width:0;flex-wrap:wrap}
.notes-head-icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;min-width:34px;padding:0;border:var(--border-width) solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:999px;background:var(--surface);color:var(--text-dim);cursor:pointer;transition:border-color .14s ease,color .14s ease,background .14s ease;flex-shrink:0}
.notes-head-icon:hover{color:var(--text);border-color:color-mix(in srgb,var(--accent) 28%,var(--border))}
.notes-view-head-row{display:flex;align-items:center;gap:6px;min-width:0;width:100%}
.notes-seg{display:inline-flex;flex-shrink:0;border:var(--border-width) solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:var(--notes-r);overflow:hidden;background:var(--surface);height:var(--notes-btn-h-sm)}
.notes-seg-btn{border:0;background:transparent;color:var(--text-dim);font:inherit;font-size:var(--notes-s);font-weight:var(--font-weight-medium);padding:0 10px;min-height:var(--notes-btn-h-sm);cursor:pointer;white-space:nowrap;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:background .14s ease,color .14s ease}
.notes-seg-btn.is-on{background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--text);border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}
.notes-seg-btn:focus-visible{outline:none;box-shadow:var(--focus-ring);z-index:1;position:relative}
.notes-view-mode{font-size:var(--text-xs);padding:2px 8px;border-radius:999px;border:var(--border-width) solid var(--border);color:var(--text-dim);flex-shrink:0;white-space:nowrap}
.notes-view-meta-row{display:flex;align-items:center;min-width:0;padding-top:var(--space-1);border-top:var(--border-width) solid color-mix(in srgb,var(--border) 40%,transparent)}
.notes-dash-rename-input{flex:1;min-width:0;max-width:12rem;font-size:var(--text-sm);font-weight:500}
.notes-icon-btn{width:22px;height:22px;padding:0;border:0;background:transparent;color:var(--text-dim);cursor:pointer;font-size:.85rem;line-height:1;border-radius:var(--radius-sm);flex-shrink:0;display:inline-flex;align-items:center;justify-content:center}
.notes-icon-btn:hover{color:var(--accent)}
.notes-doc-group-move{display:flex;flex-direction:column;gap:1px;flex-shrink:0}
.notes-move-btn{width:20px;height:16px;padding:0;border:0;background:transparent;color:var(--text-dim);cursor:pointer;font-size:9px;line-height:1;border-radius:2px;display:flex;align-items:center;justify-content:center}
.notes-move-btn:hover:not(:disabled){color:var(--accent);background:var(--surface-2)}
.notes-move-btn:disabled{opacity:.25;cursor:default}
.notes-chip-rm:hover{color:var(--error)}
@media(min-width:768px){.notes-module{padding:var(--space-5) var(--space-6)}}
@media(min-width:960px){.notes-capture-layout{grid-template-columns:1fr min(320px,32vw)}}
@media(min-width:768px){.notes-doc-editor{grid-template-columns:1fr 1fr}}
@media(min-width:768px){.notes-module{padding:var(--space-4) var(--space-5)}}
@media(min-width:960px){.notes-capture-layout{grid-template-columns:1fr min(300px,30vw);gap:var(--space-4)}}
@media(min-width:960px){.notes-timeline{max-height:min(62vh,560px)}}
@media(max-width:959px){
  .notes-capture-layout{display:flex;flex-direction:column}
  .notes-agent-panel{position:relative;top:0;max-height:none;order:3}
  .notes-capture-main{order:1;flex:1}
  .notes-compose{position:sticky;bottom:0;z-index:2;box-shadow:0 -4px 16px color-mix(in srgb,var(--bg) 80%,transparent)}
  .notes-head-actions{flex-direction:column;width:100%}
  .notes-head-actions .input,.notes-head-actions .btn{width:100%}
  .notes-dash-list{grid-template-columns:repeat(2,1fr)}
}
@media(min-width:960px){.notes-capture-body{display:grid;grid-template-columns:1fr min(300px,30vw);gap:var(--space-3);align-items:start}}
@media(max-width:959px){
  .notes-capture-body{flex:1}
  .notes-agent-panel{position:relative;top:0;max-height:min(36vh,320px);overflow:auto;order:2;flex-shrink:0}
  .notes-agent-panel.is-collapsed{max-height:none}
  .notes-capture-main{order:1;flex:1}
  .notes-compose-dock{position:sticky;bottom:0;z-index:3;box-shadow:0 -4px 16px color-mix(in srgb,var(--bg) 80%,transparent);border-radius:var(--radius) var(--radius) 0 0;margin-top:auto}
  #notes-voice-record.is-recording{color:var(--error);border-color:color-mix(in srgb,var(--error) 40%,var(--border))}
  .notes-head-actions{flex-direction:column;width:100%}
  .notes-head-actions .input,.notes-head-actions .btn{width:100%}
  .notes-dash-list{grid-template-columns:repeat(2,1fr)}
}
@media(min-width:768px){
  .notes-view-head{flex-wrap:nowrap;gap:var(--space-3)}
  .notes-view-title{flex:0 1 auto;max-width:14rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .notes-projects-inline{flex:1;min-width:0}
}
@media(max-width:767px){
  .notes-agent-split{grid-template-columns:1fr}
  .notes-agent-modal-panel{width:min(440px,calc(100vw - 12px))}
}
@media(max-width:767px){
  .notes-view-head{gap:var(--space-1)}
  .notes-view-title{flex:1 1 100%;order:1;margin-left:calc(var(--space-2) + 4rem)}
  .notes-view-back{order:0}
  .notes-view-actions{order:2;margin-left:auto}
  .notes-projects-inline{order:3;flex:1 1 100%;padding-left:calc(var(--space-2) + 4rem)}
  .notes-compose-dock{padding:var(--space-2) var(--space-2) calc(var(--space-2) + env(safe-area-inset-bottom,0px))}
  #notes-voice-record.is-recording{color:var(--error);border-color:color-mix(in srgb,var(--error) 40%,var(--border))}
  .notes-head-actions{flex-direction:column;width:100%}
  .notes-head-actions .input,.notes-head-actions .btn{width:100%}
  .notes-dash-list{grid-template-columns:repeat(2,1fr)}
}
@media(min-width:480px){.notes-gen-btn .notes-gen-label{display:inline}}
@media(max-width:767px){
  .notes-view-head{
    display:grid;
    grid-template-columns:auto 1fr auto;
    grid-template-areas:"back title actions" "projects projects projects";
    align-items:center;
    gap:var(--space-1) var(--space-2);
  }
  .notes-view-back{grid-area:back}
  .notes-view-title{grid-area:title;font-size:var(--text-base);max-width:none}
  .notes-view-actions{grid-area:actions}
  .notes-projects-inline{grid-area:projects;padding-left:0}
  .notes-capture-layout{padding-bottom:0;gap:var(--space-1)}
  .notes-capture-main{display:grid;grid-template-rows:minmax(0,1fr) auto;min-height:0;gap:var(--space-1)}
  .notes-timeline{min-height:0;border-radius:var(--radius-sm)}
  .notes-compose-dock{
    position:sticky;bottom:0;z-index:20;margin:0 calc(-1 * var(--space-3));
    padding:var(--space-2) var(--space-3) calc(var(--space-2) + env(safe-area-inset-bottom,0px));
    border-radius:var(--radius) var(--radius) 0 0;
    box-shadow:0 -6px 18px color-mix(in srgb,var(--bg) 78%,transparent);
  }
  .notes-doc-outline-toggle{padding:var(--space-2)}
  .notes-doc-group-head{padding:var(--space-2)}
  .notes-doc-row-head{padding:var(--space-2) var(--space-1)}
  #notes-voice-record.is-recording{color:var(--error);border-color:color-mix(in srgb,var(--error) 40%,var(--border))}
  .notes-head-actions{flex-direction:column;width:100%}
  .notes-head-actions .input,.notes-head-actions .btn{width:100%}
  .notes-dash-list{grid-template-columns:repeat(2,1fr)}
}
@media(min-width:768px){
  .notes-view-head-row{flex-wrap:nowrap;gap:var(--space-3)}
  .notes-view-title-input{font-size:var(--text-lg)}
  .notes-projects-inline{flex:1;min-width:0}
}

/* ── Notes module layout supplement (transcript f3dda703) ── */
#notes-send{all:unset;box-sizing:border-box}
.notes-view-top{display:flex;align-items:center;gap:var(--space-2);min-width:0;width:100%}
.notes-view-mode-switch .notes-mode-btn{min-height:34px;padding:0 var(--space-2);font-size:var(--text-xs);white-space:nowrap}
.notes-view-mode-switch .notes-mode-btn.is-on{background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--accent);border-color:color-mix(in srgb,var(--accent) 28%,var(--border))}
.notes-toolbar{display:flex;align-items:center;gap:6px;min-width:0;padding:0;flex-wrap:nowrap}
.notes-agent-btn{flex-shrink:0;width:34px;height:34px;min-width:34px;color:var(--text-dim);position:relative;border-radius:999px;border:var(--border-width) solid color-mix(in srgb,var(--border) 82%,transparent);background:var(--surface)}
.notes-agent-btn.is-active{color:var(--accent)}
.notes-agent-btn.is-active::after{content:"";position:absolute;top:5px;right:5px;width:5px;height:5px;border-radius:50%;background:var(--success);box-shadow:0 0 0 2px var(--surface)}
.notes-meta-line{display:flex;align-items:center;min-width:0;padding:0 10px 8px;min-height:28px;border-top:var(--border-width) solid color-mix(in srgb,var(--border) 35%,transparent)}
.notes-voice-ico{display:inline-block}

/* ── Notes fiche UX (ctl, 4 col, inline actions) ── */
.notes-ctl{
  display:inline-flex;align-items:center;justify-content:center;gap:4px;
  height:var(--notes-btn-h-sm,32px);min-width:var(--notes-btn-h-sm,32px);padding:0 10px;margin:0;
  border:var(--border-width) solid color-mix(in srgb,var(--border) 82%,transparent);
  border-radius:var(--notes-r,8px);background:var(--surface);color:var(--text-dim);
  font:inherit;font-size:var(--notes-s,13px);font-weight:var(--font-weight-medium);line-height:1;
  white-space:nowrap;cursor:pointer;user-select:none;
  transition:background .14s ease,border-color .14s ease,color .14s ease
}
.notes-ctl:hover:not(:disabled){color:var(--text);border-color:color-mix(in srgb,var(--accent) 38%,var(--border));background:color-mix(in srgb,var(--accent) 6%,var(--surface))}
.notes-ctl.is-on{color:var(--text);border-color:color-mix(in srgb,var(--accent) 52%,var(--border));background:color-mix(in srgb,var(--accent) 13%,var(--surface))}
.notes-ctl:disabled{opacity:.4;cursor:not-allowed}
.notes-ctl-ico{width:28px;min-width:28px;padding:0;font-size:13px}
.notes-ctl-danger:hover:not(:disabled){color:var(--error);border-color:color-mix(in srgb,var(--error) 40%,var(--border))}
.notes-ctl-seg{display:inline-flex;align-items:stretch;height:28px;border:1px solid color-mix(in srgb,var(--border) 92%,transparent);border-radius:7px;overflow:hidden;background:var(--surface);flex-shrink:0}
.notes-ctl-seg .notes-ctl{border:none;border-radius:0;min-width:36px;box-shadow:none;border-right:1px solid color-mix(in srgb,var(--border) 55%,transparent)}
.notes-ctl-seg .notes-ctl:last-child{border-right:none}
.notes-ctl-xs{height:26px;min-width:26px;padding:0 8px;font-size:10px}
.notes-doc-grp-sel{max-width:7rem;padding:0 6px;font-size:10px;height:26px;min-width:0}
.notes-projects-inline{display:flex;align-items:center;gap:4px;flex-shrink:0;max-width:min(38%,220px);min-width:0}
.notes-projects-inline .notes-projects-chips{display:flex;align-items:center;gap:4px;min-width:0;overflow:hidden}
.notes-projects-inline .notes-project-chip{font-size:10px;padding:1px 6px;max-width:5.5rem}
.notes-project-add{width:26px;height:26px;min-width:26px;padding:0;flex-shrink:0}
.notes-project-pop-wrap{position:fixed;inset:0;z-index:var(--z-popover,220);pointer-events:none}
.notes-project-pop{position:fixed;pointer-events:auto;min-width:180px;max-width:min(92vw,260px);padding:4px;box-shadow:var(--shadow-elev-2)}
.notes-project-pop-opt{display:flex;width:100%;padding:8px 10px;border:0;border-radius:6px;background:transparent;color:inherit;font:inherit;font-size:var(--text-sm);text-align:left;cursor:pointer}
.notes-project-pop-opt:hover{background:var(--surface-2)}
.notes-doc-outline-strip{padding:var(--space-2) var(--space-3);flex-shrink:0}
.notes-doc-outline-bar{display:flex;align-items:center;gap:6px;flex-wrap:wrap;min-width:0}
.notes-doc-outline-label{font-size:var(--text-xs);font-weight:600;color:var(--text-dim);flex-shrink:0;margin-right:2px}
.notes-doc-outline-snippet{font-size:var(--text-xs);color:var(--text-dim);margin-top:var(--space-1);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:var(--surface-2);max-height:48px;overflow:hidden;line-height:1.35}
.notes-doc-outline-editor{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2);margin-top:var(--space-2)}
.notes-doc-outline-edit{min-height:72px;max-height:140px;font-size:var(--text-sm);resize:vertical}
.notes-doc-outline-preview{font-size:var(--text-sm);padding:var(--space-2);border:var(--border-width) solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);min-height:72px;max-height:140px;overflow:auto}
.notes-doc-body{display:flex;flex-direction:column;gap:var(--space-3);flex:1;min-height:0;overflow-y:auto}
.notes-doc-sec{display:flex;flex-direction:column;gap:var(--space-2)}
.notes-doc-sec-head{display:flex;align-items:center;gap:var(--space-2);padding:0 var(--space-1);min-width:0}
.notes-doc-sec-title,.notes-doc-sec-title-static{flex:1;min-width:0;font-size:var(--text-sm);font-weight:600;padding:var(--space-1) var(--space-2);border-color:transparent;background:transparent}
.notes-doc-sec-title:hover,.notes-doc-sec-title:focus{border-color:color-mix(in srgb,var(--border) 70%,transparent);background:var(--surface-2)}
.notes-doc-sec-count{font-size:10px;padding:1px 6px;border-radius:999px;background:var(--surface-2);border:var(--border-width) solid var(--border);color:var(--text-dim);flex-shrink:0}
.notes-doc-sec-actions{display:flex;align-items:center;gap:2px;flex-shrink:0;margin-left:auto}
.notes-doc-sec-intro{font-size:var(--text-sm);padding:0 var(--space-2);color:var(--text-dim);line-height:1.4}
.notes-doc-entries-4col{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-2);align-content:start}
.notes-doc-sec-empty{grid-column:1/-1;margin:0;padding:var(--space-2);text-align:center}
.notes-doc-entry{padding:0;overflow:hidden;display:flex;flex-direction:column;min-height:0}
.notes-doc-entry-head{display:flex;align-items:center;gap:4px;padding:var(--space-1) var(--space-2);border-bottom:var(--border-width) solid color-mix(in srgb,var(--border) 40%,transparent);min-width:0}
.notes-doc-entry-toggle{display:flex;align-items:center;gap:4px;flex:1;min-width:0;padding:0;border:0;background:transparent;color:inherit;font:inherit;cursor:pointer;text-align:left}
.notes-doc-entry-date{font-size:10px;color:var(--text-dim);white-space:nowrap;flex-shrink:0}
.notes-doc-entry-actions{display:flex;align-items:center;gap:2px;flex-shrink:0;flex-wrap:wrap;justify-content:flex-end}
.notes-doc-entry-preview-btn{width:100%;padding:var(--space-1) var(--space-2);border:0;background:transparent;color:var(--text-dim);font:inherit;font-size:var(--text-xs);text-align:left;cursor:pointer;line-height:1.35}
.notes-doc-entry-preview-btn:hover{color:var(--text);background:color-mix(in srgb,var(--surface-2) 60%,transparent)}
.notes-doc-entry-preview{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}
.notes-doc-entry.is-open .notes-doc-entry-preview-btn{display:none}
.notes-doc-entry-body{padding:var(--space-2);display:flex;flex-direction:column;gap:var(--space-2)}
.notes-doc-entry-editor{display:grid;grid-template-columns:1fr;gap:var(--space-2)}
.notes-doc-edit{min-height:72px;max-height:160px;font-size:var(--text-sm);resize:vertical}
.notes-doc-entry-preview-pane{font-size:var(--text-sm);padding:var(--space-2);border:var(--border-width) solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);min-height:48px;max-height:120px;overflow:auto;line-height:1.4;word-break:break-word}
@media(min-width:900px){.notes-doc-entry-editor{grid-template-columns:1fr 1fr}}
@media(max-width:1199px){.notes-doc-entries-4col{grid-template-columns:repeat(3,1fr)}}
@media(max-width:899px){.notes-doc-entries-4col{grid-template-columns:repeat(2,1fr)}.notes-doc-outline-editor{grid-template-columns:1fr}}
@media(max-width:599px){
  .notes-doc-entries-4col{grid-template-columns:1fr}
  .notes-doc-entry-actions{width:100%;justify-content:flex-start;padding-bottom:var(--space-1)}
  .notes-doc-entry-head{flex-wrap:wrap}
  .notes-projects-inline{max-width:100%;order:3;flex:1 1 100%}
  .notes-view-head-row{flex-wrap:wrap}
}

/* ── Truncation recovery from prod snapshot 20260624 (qv, da-dash, chat-response, dp-sheet, crm, docs-tab) ── */
.da-dashboard{flex:1;min-height:0;overflow:auto;padding:clamp(var(--space-3),2vw,var(--space-4)) clamp(var(--space-3),3vw,var(--space-5));max-width:880px;width:100%;margin:0 auto;box-sizing:border-box;font-size:var(--text-sm);line-height:1.45}
.da-dashboard.hidden,.agent-lab-wrap.hidden{display:none!important}
#agent-pane-agents.da-dash-mode{display:flex;flex-direction:column;min-height:0;overflow:hidden;padding:0}
.da-dash-head{margin:0 0 var(--space-3);min-width:0}
.da-dash-page-title{margin:0;font-size:var(--text-lg);font-weight:var(--font-weight-medium,500);line-height:1.25;color:var(--text);letter-spacing:-0.01em}
.da-dash-page-sub{margin:var(--space-1) 0 0;font-size:var(--text-sm);color:var(--text-dim);line-height:1.4}
.da-dash-toolbar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-bottom:var(--space-3);min-width:0}
.da-dash-toolbar .da-dash-act{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:40px;padding:6px 4px;font-size:11px;font-weight:var(--font-weight-medium,500);line-height:1.2;text-align:center;text-decoration:none;white-space:normal;border-radius:var(--radius-el);width:100%}
.da-dash-toolbar .da-dash-act:hover,.da-dash-toolbar .da-dash-act:focus-visible{text-decoration:none}
.da-dash-act-ico{font-size:14px;line-height:1;font-weight:600}
.da-dash-act-lbl{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.da-dash-sections{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}
.da-dash-section-wrap{border:var(--border-width) solid var(--border);border-radius:var(--radius-el);background:var(--surface);padding:0;margin:0;min-width:0;transition:border-color var(--transition,150ms ease),box-shadow var(--transition,150ms ease)}
.da-dash-section-wrap.is-dragging{opacity:.72;box-shadow:0 8px 24px color-mix(in srgb,#000 12%,transparent)}
.da-dash-section-wrap.is-drop-target{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 18%,transparent)}
.da-dash-section-wrap .da-dash-section-head{display:flex;align-items:center;gap:6px;margin:0;padding:8px 10px;border-bottom:var(--border-width) solid color-mix(in srgb,var(--border) 65%,transparent);min-width:0}
.da-dash-section-wrap.is-collapsed .da-dash-section-head{border-bottom:0}
.da-dash-section-wrap.is-collapsed .da-dash-section-body{display:none}
.da-dash-section-drag{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:22px;height:28px;margin:0;padding:0;border:0;border-radius:6px;background:transparent;color:var(--text-dim);cursor:grab;touch-action:none;transition:color var(--transition,150ms ease),background var(--transition,150ms ease)}
.da-dash-section-drag:hover,.da-dash-section-drag:focus-visible{color:var(--text);background:color-mix(in srgb,var(--border) 35%,transparent);outline:none;box-shadow:var(--focus-ring)}
.da-dash-section-drag:active{cursor:grabbing}
.da-dash-grip-ico{display:flex;align-items:center;justify-content:center;opacity:.75}
.da-dash-section-toggle{display:flex;align-items:center;gap:6px;flex:1;min-width:0;margin:0;padding:2px 4px;border:0;border-radius:6px;background:transparent;color:inherit;font:inherit;cursor:pointer;text-align:left;transition:background var(--transition,150ms ease)}
.da-dash-section-toggle:hover,.da-dash-section-toggle:focus-visible{background:color-mix(in srgb,var(--border) 28%,transparent);outline:none;box-shadow:var(--focus-ring)}
.da-dash-section-chevron{flex-shrink:0;width:14px;height:14px;position:relative;color:var(--text-dim);transition:transform var(--transition,150ms ease)}
.da-dash-section-chevron::before{content:'';position:absolute;left:4px;top:2px;width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(-45deg);transform-origin:50% 50%}
.da-dash-section-wrap:not(.is-collapsed) .da-dash-section-chevron{transform:rotate(90deg)}
.da-dash-section-wrap .da-dash-section-body{padding:var(--space-3);min-width:0}
.da-dash-section-wrap .da-dash-section-title{margin:0;flex:1;min-width:0;font-size:var(--text-sm);font-weight:var(--font-weight-medium,500);color:var(--text)}
.da-dash-section-count{flex-shrink:0;font-size:var(--text-xs);font-weight:var(--font-weight-medium,500);color:var(--text-dim);padding:2px 8px;border-radius:var(--radius-el);background:var(--bg);border:var(--border-width) solid color-mix(in srgb,var(--border) 70%,transparent)}
.da-dash-section-link{flex-shrink:0;margin-left:auto;text-decoration:none!important}
.da-dash-empty{margin:0;font-size:var(--text-sm);color:var(--text-dim);line-height:1.45}
.da-dash-empty.sub{font-size:var(--text-xs)}
.da-dash-agents-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,148px),1fr));gap:6px;min-width:0}
.da-dash-agent-chip{display:flex;align-items:center;gap:6px;min-height:36px;padding:5px 8px;border:var(--border-width) solid color-mix(in srgb,var(--border) 80%,transparent);border-radius:var(--radius-el);background:var(--bg);color:inherit;font:inherit;font-size:var(--text-xs);cursor:pointer;text-align:left;min-width:0;transition:border-color var(--transition,150ms ease),background var(--transition,150ms ease)}
.da-dash-agent-chip:hover,.da-dash-agent-chip:focus-visible{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));background:color-mix(in srgb,var(--accent) 4%,var(--bg));outline:none;box-shadow:var(--focus-ring)}
.da-dash-agent-chip.is-response{border-color:color-mix(in srgb,var(--accent) 28%,var(--border))}
.da-dash-agent-chip .agent-avatar-sm{flex-shrink:0;width:24px;height:24px;font-size:13px;border-radius:6px}
.da-dash-chip-ico{flex-shrink:0;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;font-size:13px;border-radius:6px;background:var(--surface-2)}
.da-dash-chip-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:var(--font-weight-medium,500);color:var(--text)}
.da-dash-chip-tag{flex-shrink:0;font-size:9px;font-weight:600;padding:1px 5px;border-radius:999px;background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border))}
.da-dash-chip-star{color:var(--accent);font-size:10px;flex-shrink:0;line-height:1}
.da-dash-proj-list{display:flex;flex-direction:column;gap:6px;min-width:0}
.da-dash-proj-block{border:var(--border-width) solid color-mix(in srgb,var(--border) 75%,transparent);border-radius:var(--radius-el);background:var(--bg);overflow:hidden;min-width:0}
.da-dash-proj-block+.da-dash-proj-block{margin-top:6px}
.da-dash-proj-block .da-dash-proj-card{display:flex;align-items:center;gap:var(--space-2);min-height:44px;padding:6px 8px 6px 6px;border:0;border-radius:0;background:transparent;min-width:0}
.da-dash-proj-block .da-dash-proj-card:hover{background:color-mix(in srgb,var(--accent) 3%,var(--bg))}
.da-dash-proj-team-toggle{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:24px;height:28px;margin:0;padding:0;border:0;border-radius:6px;background:transparent;color:var(--text-dim);cursor:pointer;transition:color var(--transition,150ms ease),background var(--transition,150ms ease)}
.da-dash-proj-team-toggle:hover,.da-dash-proj-team-toggle:focus-visible{color:var(--text);background:color-mix(in srgb,var(--border) 35%,transparent);outline:none;box-shadow:var(--focus-ring)}
.da-dash-proj-chevron{flex-shrink:0;width:12px;height:12px;position:relative;color:var(--text-dim);transition:transform var(--transition,150ms ease)}
.da-dash-proj-chevron::before{content:'';position:absolute;left:3px;top:2px;width:5px;height:5px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(-45deg);transform-origin:50% 50%}
.da-dash-proj-block:not(.is-agents-collapsed) .da-dash-proj-chevron{transform:rotate(90deg)}
.da-dash-proj-link{flex:1;min-width:0;display:flex;align-items:baseline;gap:var(--space-2);text-decoration:none!important;color:inherit}
.da-dash-proj-link:hover,.da-dash-proj-link:focus-visible{text-decoration:none!important;color:inherit}
.da-dash-proj-name{font-size:var(--text-sm);font-weight:var(--font-weight-medium,500);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1}
.da-dash-proj-count{flex-shrink:0;font-size:var(--text-xs);color:var(--text-dim);white-space:nowrap}
.da-dash-proj-pending{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;font-size:10px;font-weight:700;font-variant-numeric:tabular-nums;line-height:1;text-decoration:none!important;background:color-mix(in srgb,var(--accent) 16%,var(--surface));color:color-mix(in srgb,var(--accent) 92%,var(--text));border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border))}
.da-dash-proj-pending:hover{background:color-mix(in srgb,var(--accent) 24%,var(--surface))}
.da-dash-proj-avs{display:flex;align-items:center;flex-shrink:0;min-width:0;padding-left:2px}
.da-dash-proj-av{display:inline-flex;padding:0;margin:0;border:0;background:transparent;cursor:pointer;border-radius:6px;line-height:0;transition:transform var(--transition,150ms ease)}
.da-dash-proj-av:not(:first-child){margin-left:-8px}
.da-dash-proj-av .agent-avatar-sm{width:24px;height:24px;font-size:12px;border-radius:6px;box-shadow:0 0 0 2px var(--bg)}
.da-dash-proj-av.is-lead .agent-avatar-sm{box-shadow:0 0 0 2px var(--bg),0 0 0 3px color-mix(in srgb,var(--accent) 45%,transparent)}
.da-dash-proj-av:hover,.da-dash-proj-av:focus-visible{transform:translateY(-1px);outline:none;z-index:1}
.da-dash-proj-av-more{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;margin-left:-4px;padding:0 4px;font-size:10px;font-weight:var(--font-weight-medium,500);color:var(--text-dim);background:var(--surface);border:var(--border-width) solid var(--border);border-radius:6px;box-shadow:0 0 0 2px var(--bg)}
.da-dash-proj-av-empty{font-size:var(--text-xs)}
.da-dash-proj-open{flex-shrink:0;min-height:32px;padding:0 8px;text-decoration:none!important}
.da-dash-proj-agents-wrap{border-top:var(--border-width) solid color-mix(in srgb,var(--border) 60%,transparent);min-width:0}
.da-dash-proj-block.is-agents-collapsed .da-dash-proj-agents-wrap{display:none}
.da-dash-proj-agent-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;padding:8px;min-width:0}
.da-dash-proj-agent-tile{display:flex;flex-direction:column;align-items:stretch;gap:3px;min-width:0;padding:6px;border:var(--border-width) solid color-mix(in srgb,var(--border) 78%,transparent);border-radius:8px;background:var(--surface);position:relative;transition:border-color var(--transition,150ms ease),background var(--transition,150ms ease),transform var(--transition,150ms ease)}
.da-dash-proj-agent-tile:hover{border-color:color-mix(in srgb,var(--accent) 30%,var(--border));background:color-mix(in srgb,var(--accent) 3%,var(--surface))}
.da-dash-proj-agent-tile.is-lead{border-color:color-mix(in srgb,var(--accent) 28%,var(--border));background:color-mix(in srgb,var(--accent) 4%,var(--surface))}
.da-dash-proj-agent-top{display:flex;align-items:flex-start;justify-content:space-between;gap:4px;min-width:0}
.da-dash-proj-agent-main,.da-dash-proj-agent-name{display:flex;align-items:center;border:0;background:transparent;padding:0;margin:0;color:inherit;font:inherit;cursor:pointer;text-align:left;min-width:0}
.da-dash-proj-agent-main .agent-avatar-sm{width:28px;height:28px;font-size:14px;border-radius:7px}
.da-dash-proj-agent-info{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:18px;height:18px;padding:0;border:0;border-radius:999px;background:color-mix(in srgb,var(--border) 40%,transparent);color:var(--text-dim);cursor:pointer;transition:color var(--transition,150ms ease),background var(--transition,150ms ease)}
.da-dash-proj-agent-info svg{width:11px;height:11px}
.da-dash-proj-agent-info:hover,.da-dash-proj-agent-info:focus-visible{color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--surface));outline:none;box-shadow:var(--focus-ring)}
.da-dash-proj-agent-name{font-size:11px;font-weight:var(--font-weight-medium,500);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);line-height:1.25}
.da-dash-proj-agent-role{font-size:10px;color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.2}
.da-dash-proj-agent-outs{align-self:flex-start;display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;margin-top:1px;border-radius:999px;font-size:10px;font-weight:700;font-variant-numeric:tabular-nums;line-height:1;text-decoration:none!important;background:color-mix(in srgb,var(--accent) 16%,var(--surface));color:color-mix(in srgb,var(--accent) 92%,var(--text));border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border))}
.da-dash-proj-agent-outs:hover{background:color-mix(in srgb,var(--accent) 24%,var(--surface))}
.da-dash-proj-agent-outs.is-zero{opacity:0;pointer-events:none;min-width:0;width:0;height:0;padding:0;margin:0;border:0;overflow:hidden}
.da-dash-proj-empty{margin:0;padding:4px 2px}
.da-dash-agent-tip-src{display:none}
.da-dash-tip-role{font-weight:600;color:var(--text)}
.da-dash-tip-role-desc{line-height:1.35;max-height:4.5em;overflow:hidden}
.da-dash-tip-outs{color:color-mix(in srgb,var(--accent) 88%,var(--text));font-weight:600}
@media(min-width:720px){
  .da-dash-toolbar .da-dash-act{flex-direction:row;gap:6px;font-size:var(--text-xs);padding:0 10px}
  .da-dash-agents-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px}
}
@media(max-width:720px){
  .da-dash-proj-agent-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:480px){
  .da-dash-proj-agent-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;padding:6px}
}
@media(max-width:400px){
  .da-dash-toolbar{gap:4px}
  .da-dash-toolbar .da-dash-act{font-size:10px;padding:5px 2px;min-height:38px}
  .da-dash-proj-open{display:none}
  .da-dash-proj-block .da-dash-proj-card{padding-right:6px}
}
.dp-tab-panel,.dp-card,.dp-team-section,.dp-team-card,.dp-orch,.dp-chat-thread,.dp-fold.dp-team-org,.dp-sheet-card,.dp-out-row,.dp-val-queue,.dp-perms-fold,.dp-ws-fold,.dp-orphan-fold,.dp-task-row{border:var(--border-width) solid var(--border);border-radius:var(--radius-card);background:var(--surface)}
.dp-team-card,.dp-task-row,.dp-sheet-card{background:var(--bg)}
.dp-fold-title,.dp-sheet-card-title{font-weight:var(--font-weight-medium)}
.dp-sheets-wrap{margin-top:var(--space-1)}
.dp-sheets-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(11.5rem,1fr));gap:var(--space-2);align-items:start}
.dp-sheet-card{position:relative;display:grid;grid-template-columns:auto 1fr auto;gap:6px;align-items:start;padding:8px 8px 8px 6px;border:var(--border-width) solid var(--border);border-radius:var(--radius-sm);background:var(--bg);transition:border-color .15s,box-shadow .15s}
.dp-sheet-card:hover{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));box-shadow:0 1px 0 color-mix(in srgb,var(--accent) 8%,transparent)}
.dp-sheet-card-reorder{display:flex;flex-direction:column;gap:1px;opacity:.55}
.dp-sheet-card:hover .dp-sheet-card-reorder{opacity:1}
.dp-sheet-card-reorder .btn{padding:0 4px;min-height:18px;font-size:10px;line-height:1}
.dp-sheet-card-open{display:block;width:100%;min-width:0;padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}
.dp-sheet-card-title{display:block;font-size:var(--text-sm);font-weight:600;line-height:1.35;word-break:break-word}
.dp-sheet-group-tag{display:block;font-size:10px;font-weight:500;color:var(--text-dim);margin-bottom:2px;text-transform:uppercase;letter-spacing:.03em}
.dp-sheet-badge{display:inline-block;margin-top:4px;padding:1px 5px;border-radius:999px;font-size:9px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent)}
.dp-sheet-del{width:20px;height:20px;padding:0;border:0;border-radius:999px;background:transparent;color:var(--text-dim);font-size:.9rem;line-height:1;cursor:pointer}
.dp-sheet-del:hover{color:var(--danger)}
body.dp-sheet-modal-open{overflow:hidden}
.dp-sheet-modal{position:fixed;inset:0;z-index:var(--z-modal,1200);display:flex;align-items:center;justify-content:center;padding:var(--space-3)}
.dp-sheet-modal.hidden{display:none}
.dp-sheet-modal-backdrop{position:absolute;inset:0;background:color-mix(in srgb,var(--bg) 35%,#000 65%);opacity:.72}
.dp-sheet-modal-box{position:relative;z-index:1;width:min(52rem,calc(100vw - 2rem));max-height:min(88vh,52rem);display:flex;flex-direction:column;overflow:hidden;padding:0}
.dp-sheet-modal-head{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center;padding:var(--space-2) var(--space-3);border-bottom:var(--border-width) solid var(--border)}
.dp-sheet-modal-title{flex:1 1 12rem;font-size:var(--text-lg);font-weight:600;border:0;background:transparent;padding:0}
.dp-sheet-modal-head-actions{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}
.dp-sheet-modes .seg-btn{font-size:var(--text-xs);padding:4px 10px}
.dp-sheet-modal-body{flex:1;min-height:0;overflow:auto;padding:var(--space-3)}
.dp-sheet-pane-view{font-size:var(--text-sm);line-height:1.55}
.dp-sheet-pane-view table{width:100%;border-collapse:collapse;margin:.5rem 0;font-size:var(--text-sm)}
.dp-sheet-pane-view th,.dp-sheet-pane-view td{border:var(--border-width) solid var(--border);padding:6px 8px;text-align:left}
.dp-sheet-pane-view a{color:var(--accent)}
.dp-sheet-pane-view .btn,.dp-sheet-pane-view button:not(.dp-md-task input){cursor:pointer}
.dp-md-task{display:flex;align-items:flex-start;gap:6px;margin:2px 0}
.dp-sheet-pane-text,.dp-sheet-pane-html{width:100%;min-height:min(52vh,28rem);resize:vertical;font-size:var(--text-sm)}
.dp-sheet-modal-foot{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:flex-end;justify-content:space-between;padding:var(--space-2) var(--space-3);border-top:var(--border-width) solid var(--border)}
.dp-sheet-group-field{flex:1 1 10rem;min-width:8rem}
.dp-sheet-modal-foot-actions{display:flex;flex-wrap:wrap;gap:var(--space-1);justify-content:flex-end}
@media(max-width:720px){
  .dp-root{padding:var(--space-4) var(--space-4) var(--space-5)}
  .dp-subnav .seg-btn{min-height:44px;padding:0 var(--space-3)}
  .dp-tab-panel{padding:var(--space-4)}
  .dp-team-card-head{flex-wrap:wrap}
  .dp-team-head-actions{width:100%;justify-content:flex-end}
  .dp-form-grid{grid-template-columns:1fr}
  .dp-sheets-grid{grid-template-columns:repeat(auto-fill,minmax(10rem,1fr))}
  .dp-sheet-modal{padding:var(--space-2)}
  .dp-sheet-modal-box{width:100%;max-height:92vh}
  .dp-list{grid-template-columns:1fr}
  .dp-detail-head{align-items:flex-start}
  .dp-save-hint{margin-left:0;width:100%}
}
.crm-row .crm-col-email,.crm-row .crm-col-phone,.crm-row .crm-col-co,.crm-row .crm-col-value,.crm-row .crm-col-date,.crm-row .crm-col-tags{text-align:left;min-width:0;overflow:hidden}
.crm-col-tags{display:flex;flex-wrap:nowrap;gap:2px;align-items:center;min-width:0;overflow:hidden}
.crm-tags-cell{display:flex;flex-wrap:nowrap;gap:2px;align-items:center;min-width:0;overflow:hidden}
@media(max-width:768px){
  .page-crm{padding-left:max(12px,env(safe-area-inset-left,0px));padding-right:max(12px,env(safe-area-inset-right,0px));padding-bottom:max(var(--page-pad),env(safe-area-inset-bottom,0px));overflow-x:clip}
  body.crm-mobile-contact{overflow-x:clip}
  body.crm-mobile-contact .content{overflow-x:clip;max-width:100%}
  body.crm-mobile-contact .content-mobile-head{display:none!important}
  .crm-head{display:none}
  .crm-toolbar-bar{padding:8px;margin-bottom:8px}
  .crm-toolbar{display:grid;grid-template-columns:1fr auto auto auto auto auto;gap:6px;margin-bottom:0;align-items:center}
  .crm-search-wrap{order:1;grid-column:1/-1;max-width:none;min-width:0}
  .crm-search-wrap .crm-search{min-height:40px}
  #crm-business-ops-btn{order:2;grid-column:1/-1;min-height:40px;justify-self:stretch;width:100%}
  .crm-sort{order:3;grid-column:1/span 2;min-width:0;min-height:40px;font-size:var(--text-sm)}
  .crm-adv-toggle{order:4;width:40px;height:40px;min-height:40px;padding:0;justify-content:center;grid-column:3;border-radius:999px}
  .crm-adv-toggle .crm-filter-ico{display:inline-flex}
  .crm-adv-toggle .crm-adv-lbl{display:none}
  .crm-toolbar-actions{display:contents}
  #crm-prospect-btn{order:5;width:40px;height:40px;min-width:40px;grid-column:4}
  #crm-io-btn{order:6;width:40px;height:40px;min-width:40px;grid-column:5}
  .crm-add-btn{order:7;width:40px;height:40px;min-height:40px;padding:0;justify-content:center;border-radius:999px;grid-column:6}
  .crm-add-btn .crm-add-ico{display:inline-flex}
  .crm-add-btn .crm-add-lbl{display:none}
  .crm-quick-filters{margin-bottom:6px;padding-bottom:4px}
  .crm-qchip{padding:5px 10px;font-size:11px}
  .crm-list-meta{margin-bottom:6px}
  .crm-table-scroll{overflow:visible}
  .crm-table{min-width:0}
  .crm-table-head{display:none}
  .crm-list-pane{border:0;background:transparent;padding:0;overflow:visible}
  .crm-row{
    grid-template-columns:28px 40px minmax(0,1fr) auto;
    grid-template-areas:"sel av name stage" "sel av email email" "sel av share share";
    gap:2px 10px;
    padding:10px 12px;
    height:auto;max-height:none;min-height:0;
    align-items:center;
    border:1px solid color-mix(in srgb,var(--border) 82%,transparent);
    border-radius:var(--radius-md);
    margin-bottom:8px;
    box-shadow:0 1px 2px color-mix(in srgb,var(--text) 4%,transparent);
  }
  .crm-row:last-child{margin-bottom:0}
  .crm-row .crm-col-sel{grid-area:sel;align-self:start;margin-top:4px}
  .crm-row .crm-col-av{grid-area:av;align-self:start}
  .crm-row .crm-col-name{grid-area:name;min-width:0}
  .crm-row .crm-col-name strong{display:block;font-size:var(--text-sm)}
  .crm-row .crm-col-name small{display:block;margin-top:1px}
  .crm-row .crm-col-email{grid-area:email;display:block!important;font-size:var(--text-xs);color:var(--text-dim);line-height:1.35}
  .crm-row .crm-col-stage{grid-area:stage;justify-self:end;align-self:start}
  .crm-row .crm-col-share{grid-area:share;display:flex!important;align-items:center;gap:4px;min-height:18px}
  .crm-row .crm-col-mobile-sub{grid-area:sub;display:block;font-size:11px;color:var(--text-dim);line-height:1.35}
  .crm-row .crm-col-phone,.crm-row .crm-col-co,.crm-row .crm-col-value,.crm-row .crm-col-date,.crm-row .crm-col-tags,.crm-table-head .crm-col-tags{display:none!important}
  body.crm-mobile-contact .crm-profile-header{margin-bottom:6px;border-radius:var(--radius-md)}
  body.crm-mobile-contact .crm-profile-cover{min-height:46px;padding:max(6px,env(safe-area-inset-top,0px)) 10px 30px}
  body.crm-mobile-contact .crm-profile-body{margin-top:-24px;padding:0 10px 10px}
  body.crm-mobile-contact .crm-profile-identity:has(.crm-profile-text--solo) .crm-profile-avatar-wrap .crm-avatar-drop{width:54px;height:54px}
  body.crm-contact-mobile-stack .crm-fold-drag{width:38px;height:38px;margin:-9px 2px -9px -2px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--surface-2) 80%,transparent)}
  body.crm-contact-mobile-stack .crm-fold-drag:active{background:color-mix(in srgb,var(--accent) 12%,var(--surface-2))}
  body.crm-contact-mobile-stack .crm-fold.is-drop-target{outline-width:2px;background:color-mix(in srgb,var(--accent) 4%,var(--surface))}
  body.crm-mobile-contact .crm-profile-avatar-wrap .crm-avatar-drop{width:58px;height:58px}
  body.crm-mobile-contact .crm-profile-avatar-wrap .crm-avatar-drop .crm-avatar-lg{font-size:18px}
  body.crm-mobile-contact .crm-profile-name{font-size:1.05rem}
  body.crm-mobile-contact .crm-profile-sub{font-size:11px}
  body.crm-mobile-contact .crm-profile-quick .crm-hero-coords{display:grid;grid-template-columns:1fr 1fr;gap:6px}
  body.crm-mobile-contact .crm-profile-quick .crm-hero-chip{max-width:none;width:100%;min-height:34px;flex:none}
  body.crm-mobile-contact .crm-profile-quick .crm-hero-chip-v{font-size:11px}
  body.crm-mobile-contact .crm-profile-meta .crm-hero-meta{gap:4px}
  body.crm-mobile-contact .crm-profile-meta .crm-hero-pills{width:100%;flex-wrap:wrap}
  body.crm-mobile-contact .crm-profile-meta .crm-hero-value{margin-left:0;width:auto;max-width:100%}
  body.crm-mobile-contact .crm-profile-meta .crm-hero-add-pick,body.crm-mobile-contact .crm-profile-meta .ui-select{max-width:100%;width:auto;min-width:0}
  body.crm-mobile-contact .crm-fold-drag{width:36px;height:36px;margin:-8px 2px -8px -2px}
  #crm-prospect-btn .nav-ico,.crm-prospect-ico{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px}
  #crm-prospect-btn .nav-ico svg,.crm-prospect-ico svg{display:block;width:18px;height:18px;pointer-events:none}
  .crm-prosp-modal{max-width:min(640px,96vw);width:100%}
  .crm-prosp-lead{margin:4px 0 0;font-size:var(--text-sm);color:var(--text-dim)}
  .crm-prosp-body{display:flex;flex-direction:column;gap:12px;max-height:min(70vh,560px);overflow:auto;padding:4px 0}
  .crm-prosp-field{display:flex;flex-direction:column;gap:4px;font-size:var(--text-sm)}
  .crm-prosp-field .input{margin:0}
  .crm-prosp-row{display:flex;flex-wrap:wrap;gap:8px}
  .crm-prosp-field-grow{flex:1;min-width:160px}
  .crm-prosp-durations{margin:0}
  .crm-prosp-progress{margin-top:4px}
  .crm-prosp-progress-bar{height:6px;border-radius:999px;background:color-mix(in srgb,var(--border) 60%,transparent);overflow:hidden}
  .crm-prosp-progress-bar span{display:block;height:100%;background:var(--accent);transition:width .3s}
  .crm-prosp-progress-meta{margin:6px 0 0;font-size:var(--text-xs);color:var(--text-dim)}
  .crm-prosp-warnings{margin:6px 0 0;padding-left:1.2em;font-size:var(--text-xs);color:var(--warning,#E9A23B)}
  .crm-prosp-results{display:flex;flex-direction:column;gap:8px;margin-top:8px}
  .crm-prosp-card{padding:10px 12px;border:var(--border-width) solid var(--border-subtle,var(--border))}
  .crm-prosp-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
  .crm-prosp-card-title{margin:0;font-size:var(--text-sm);font-weight:var(--font-weight-medium)}
  .crm-prosp-source{font-size:var(--text-xs);white-space:nowrap}
  .crm-prosp-meta{margin:4px 0 0;font-size:var(--text-xs);color:var(--text-dim)}
  .crm-prosp-meta span{color:var(--text);font-weight:var(--font-weight-medium);margin-right:4px}
  .crm-prosp-summary{margin:8px 0 0;font-size:var(--text-xs);font-style:italic;color:var(--text-dim)}
  .crm-prosp-empty{margin:8px 0;text-align:center}
  .crm-prosp-foot .modal-foot-spacer{flex:1}
  #crm-io-btn .nav-ico,.crm-io-ico{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px}
  #crm-io-btn .nav-ico svg,.crm-io-ico svg{display:block;width:18px;height:18px;pointer-events:none}
  .crm-adv-toggle .nav-ico,.crm-add-btn .nav-ico{display:inline-flex;align-items:center;justify-content:center}
  .crm-adv-toggle .nav-ico svg,.crm-add-btn .nav-ico svg{display:block;width:18px;height:18px;pointer-events:none}
  .crm-advanced{padding:12px;margin-bottom:6px}
  .crm-filter-foot .btn{min-height:40px}
}
.docs-subnav .docs-tab-short{display:none}
@media (max-width:720px){
  .docs-subnav .docs-tab-long{display:none}
  .docs-subnav .docs-tab-short{display:inline}
}
.crm-row .crm-copyable{display:inline-block;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:bottom}
.page-quick-view{display:flex;flex-direction:column;min-height:0;height:100%;background:
  radial-gradient(120% 90% at 100% -10%, color-mix(in srgb,var(--accent) 12%,transparent) 0%, transparent 42%),
  radial-gradient(90% 70% at -10% 0%, color-mix(in srgb,var(--surface) 40%,transparent) 0%, transparent 40%),
  color-mix(in srgb,var(--bg) 92%,var(--accent) 8%)}
#content:has(#page-quick-view:not(.hidden)) .content-mobile-head{display:none!important}
.qv-root{flex:1;min-height:0;overflow:auto;-webkit-overflow-scrolling:touch;--qv-fs-k:12px;--qv-fs-s:13px;--qv-fs-m:14px;--qv-fs-b:15px;--qv-fs-h:26px;--qv-btn-h:36px;--qv-btn-h-sm:32px;--qv-icon-btn:34px;--qv-pad-w:8px 10px 10px;--qv-gap-w:6px}
.qv-layout{max-width:min(1040px,calc(100vw - 20px));margin:0 auto;padding:var(--space-3) 10px calc(var(--space-5) + env(safe-area-inset-bottom,0px));display:flex;justify-content:center}
.qv-board{width:100%;min-width:0}
.qv-grid-wrap{width:100%}
.qv-main{min-width:0}
.qv-rail{display:none}
.qv-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-bottom:clamp(10px,1.8vw,16px)}
.qv-head-text{min-width:0;flex:1}
.qv-head-tools{display:flex;align-items:center;gap:8px;flex-shrink:0}
.qv-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:var(--border-width) solid var(--border);border-radius:999px;background:var(--surface);color:var(--text-dim);cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease,box-shadow .15s ease}
.qv-icon-btn svg{width:16px;height:16px}
.qv-icon-btn:hover,.qv-icon-btn:focus-visible{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 30%,var(--border));outline:none;box-shadow:var(--focus-ring)}
.qv-edit-lbl{margin-left:2px}
.qv-eyebrow{margin:0 0 4px;font-size:11px;font-weight:var(--font-weight-medium);letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim)}
.qv-title{margin:0;font-family:var(--font-ui);font-size:clamp(1.35rem,2.8vw,1.85rem);font-weight:800;letter-spacing:-.03em;line-height:var(--lh-tight)}
.qv-edit-btn{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 14px;border:var(--border-width) solid var(--border);border-radius:999px;background:var(--surface);color:var(--text);font:inherit;font-size:var(--text-xs);font-weight:var(--font-weight-medium);cursor:pointer;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease,transform .12s ease}
.qv-edit-btn svg{width:14px;height:14px;opacity:.75}
.qv-edit-btn:hover,.qv-edit-btn:focus-visible{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));outline:none;box-shadow:var(--focus-ring)}
.qv-edit-btn.is-on{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}
.qv-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(6px,1.2vw,12px);margin:0 auto var(--space-2);width:100%;align-items:stretch;grid-auto-rows:minmax(128px,auto)}
.qv-grid--5{grid-template-columns:repeat(5,minmax(0,1fr))}
.qv-grid--edit .qv-tile:hover,.qv-grid--edit .qv-tile:focus-visible{transform:none;box-shadow:0 1px 0 color-mix(in srgb,var(--border) 40%,transparent)}
.qv-grid-hole{display:flex;align-items:center;justify-content:center;min-height:124px;padding:0;border:var(--border-width) dashed color-mix(in srgb,var(--border) 82%,transparent);border-radius:16px;background:color-mix(in srgb,var(--surface-2) 35%,transparent);color:var(--text-dim);cursor:pointer;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}
.qv-grid-hole:hover,.qv-grid-hole:focus-visible{border-color:color-mix(in srgb,var(--accent) 28%,var(--border));background:color-mix(in srgb,var(--accent) 5%,var(--surface));outline:none}
.qv-grid-hole.is-drop-target{box-shadow:0 0 0 2px var(--accent);border-color:var(--accent)}
.qv-grid-hole-ico{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:12px;background:color-mix(in srgb,var(--surface) 80%,transparent)}
.qv-grid-hole-ico svg{width:18px;height:18px;opacity:.65}
.qv-grid-more{display:flex;justify-content:center;padding:4px 0 var(--space-2)}
.qv-grid-more-btn{min-height:34px;padding:0 14px;border:var(--border-width) solid var(--border);border-radius:999px;background:var(--surface);color:var(--text-dim);font:inherit;font-size:var(--text-xs);font-weight:var(--font-weight-medium);cursor:pointer}
.qv-tile--tasks-pick{align-items:stretch;justify-content:stretch;gap:0;padding:0;min-height:124px;cursor:default;overflow:hidden;height:100%}
.qv-tile--catalog-pick{align-items:stretch;justify-content:stretch;gap:0;padding:0;min-height:124px;cursor:default;overflow:hidden;height:100%}
.qv-tile--stats-pick{align-items:stretch;justify-content:stretch;gap:0;padding:0;min-height:124px;cursor:default;overflow:hidden;height:100%}
.qv-tile--catalog-pick:hover,.qv-tile--catalog-pick:focus-visible{transform:none;box-shadow:0 1px 0 color-mix(in srgb,var(--border) 40%,transparent)}
.qv-tile--catalog-pick .qv-drag-handle{z-index:3}
.qv-tile--catalog-pick .qv-tile-del{z-index:3}
.qv-tile--tasks-pick:hover,.qv-tile--tasks-pick:focus-visible{transform:none;box-shadow:0 1px 0 color-mix(in srgb,var(--border) 40%,transparent)}
.qv-tile--tasks-pick .qv-drag-handle{z-index:3}
.qv-tile--tasks-pick .qv-tile-del{z-index:3}
.qv-tile--stats-pick:hover,.qv-tile--stats-pick:focus-visible{transform:none;box-shadow:0 1px 0 color-mix(in srgb,var(--border) 40%,transparent)}
.qv-tile--stats-pick .qv-drag-handle{z-index:3}
.qv-tile--stats-pick .qv-tile-del{z-index:3}
.qv-tile--catalog-pick.qv-tile--widget-collapsed,
.qv-tile--tasks-pick.qv-tile--widget-collapsed,
.qv-tile--stats-pick.qv-tile--widget-collapsed{align-self:stretch;min-height:0}
.qv-tile--catalog-pick.qv-tile--widget-collapsed .qv-cat-mount,
.qv-tile--tasks-pick.qv-tile--widget-collapsed .qv-tasks-mount,
.qv-tile--stats-pick.qv-tile--widget-collapsed .qv-stats-mount{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}
.qv-cat-widget.is-collapsed,.qv-tasks-widget.is-collapsed,.qv-stats-widget.is-collapsed{flex:1 1 auto;min-height:0;height:100%;justify-content:flex-start}
.qv-cat-widget.is-collapsed .qv-wstat-panel,.qv-tasks-widget.is-collapsed .qv-wstat-panel{flex:0 0 auto;min-height:0}
.qv-stats-widget.is-collapsed .qv-stats-collapsed{flex:0 0 auto;min-height:0;justify-content:flex-start}
.qv-cat-mount{flex:1;min-height:0;min-width:0;display:flex;flex-direction:column;overflow:hidden}
.qv-tasks-mount{flex:1;min-height:0;min-width:0;display:flex;flex-direction:column;overflow:hidden}
.qv-stats-mount{flex:1;min-height:0;min-width:0;display:flex;flex-direction:column;overflow:hidden}
.qv-cat-widget{display:flex;flex-direction:column;gap:var(--qv-gap-w);min-height:0;flex:1;padding:var(--qv-pad-w);overflow:hidden}
.qv-cat-widget.is-collapsed{gap:8px}
.qv-cat-widget.is-loading{justify-content:center;align-items:center}
.qv-cat-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-height:28px;flex-shrink:0}
.qv-cat-title{font-size:var(--qv-fs-k);font-weight:var(--font-weight-medium);letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}
.qv-cat-toolbar-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}
.qv-cat-pop-wrap{position:relative}
.qv-cat-icon-btn{height:var(--qv-icon-btn);width:var(--qv-icon-btn);border:var(--border-width) solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:8px;background:var(--surface);color:var(--text-dim);font:inherit;font-size:14px;line-height:1;cursor:pointer;padding:0;display:inline-flex;align-items:center;justify-content:center;transition:border-color .15s ease,color .15s ease,background .15s ease;flex-shrink:0}
.qv-cat-icon-btn:hover,.qv-cat-icon-btn.is-on{border-color:color-mix(in srgb,var(--accent) 28%,var(--border));color:var(--text);background:color-mix(in srgb,var(--accent) 6%,var(--surface))}
.qv-cat-icon-btn.has-dot{position:relative}
.qv-cat-icon-btn.has-dot::after{content:"";position:absolute;top:4px;right:4px;width:5px;height:5px;border-radius:50%;background:var(--accent)}
.qv-cat-icon-btn--size{font-size:15px;font-weight:600}
.qv-cat-pop{position:absolute;top:calc(100% + 6px);right:0;z-index:12;min-width:196px;padding:10px;border:var(--border-width) solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:12px;background:var(--surface);box-shadow:0 10px 28px rgba(0,0,0,.18)}
.qv-cat-pop-head{font-size:10px;font-weight:var(--font-weight-medium);letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);margin-bottom:8px}
.qv-cat-size-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin-bottom:8px}
.qv-cat-size-pick{min-height:30px;padding:0 6px;border:var(--border-width) solid color-mix(in srgb,var(--border) 80%,transparent);border-radius:8px;background:var(--surface-2);font:inherit;font-size:11px;font-weight:var(--font-weight-medium);cursor:pointer;color:var(--text-dim)}
.qv-cat-size-pick:hover{border-color:color-mix(in srgb,var(--accent) 25%,var(--border));color:var(--text)}
.qv-cat-size-pick.is-on{background:color-mix(in srgb,var(--accent) 12%,var(--surface));border-color:color-mix(in srgb,var(--accent) 35%,var(--border));color:var(--text)}
.qv-cat-size-custom{display:flex;align-items:center;gap:6px;padding-top:8px;border-top:var(--border-width) solid color-mix(in srgb,var(--border) 72%,transparent)}
.qv-cat-size-lbl{display:flex;align-items:center;gap:4px;font-size:10px;color:var(--text-dim)}
.qv-cat-size-lbl select{min-height:28px;padding:0 6px;font:inherit;font-size:11px;border-radius:8px;border:var(--border-width) solid var(--border);background:var(--surface)}
.qv-cat-size-apply{min-height:28px;padding:0 10px;border:var(--border-width) solid color-mix(in srgb,var(--accent) 35%,var(--border));border-radius:8px;background:color-mix(in srgb,var(--accent) 10%,var(--surface));font:inherit;font-size:11px;font-weight:var(--font-weight-medium);cursor:pointer;margin-left:auto}
.qv-cat-search-row{min-width:0;width:100%;flex-shrink:0}
.qv-cat-search{width:100%;height:var(--qv-btn-h);min-height:var(--qv-btn-h);max-height:var(--qv-btn-h);font-size:var(--qv-fs-m);border-radius:8px;padding:0 10px;box-sizing:border-box;line-height:var(--qv-btn-h)}
.qv-cat-body-skel{display:flex;flex-direction:column;gap:8px;flex:1;min-height:96px}
.qv-cat-body-skel-search{height:32px;border-radius:9px;background:linear-gradient(90deg,color-mix(in srgb,var(--surface-2) 65%,transparent) 25%,color-mix(in srgb,var(--surface-2) 90%,transparent) 50%,color-mix(in srgb,var(--surface-2) 65%,transparent) 75%);background-size:200% 100%;animation:qv-shimmer 1.2s ease-in-out infinite}
.qv-cat-body-skel-hint{height:48px;border-radius:9px;background:linear-gradient(90deg,color-mix(in srgb,var(--surface-2) 55%,transparent) 25%,color-mix(in srgb,var(--surface-2) 80%,transparent) 50%,color-mix(in srgb,var(--surface-2) 55%,transparent) 75%);background-size:200% 100%;animation:qv-shimmer 1.2s ease-in-out infinite;flex:1}
.qv-cat-filters{display:flex;flex-direction:column;gap:8px;padding:10px;border:var(--border-width) solid color-mix(in srgb,var(--border) 78%,transparent);border-radius:12px;background:color-mix(in srgb,var(--surface-2) 35%,var(--surface));max-height:min(36vh,180px);overflow:auto}
.qv-cat-filter-block{display:flex;flex-direction:column;gap:4px}
.qv-cat-filter-k{font-size:10px;font-weight:var(--font-weight-medium);letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim)}
.qv-cat-filter-row{display:flex;flex-wrap:wrap;gap:4px}
.qv-cat-filter-scroll{max-height:72px;overflow:auto}
.qv-cat-filter-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border:var(--border-width) solid color-mix(in srgb,var(--border) 80%,transparent);border-radius:999px;font-size:10px;cursor:pointer;background:var(--surface)}
.qv-cat-filter-chip input{margin:0;accent-color:var(--accent)}
.qv-cat-collapsed-hint{font-size:var(--qv-fs-s);color:var(--text-dim);padding:2px 0 0}
.qv-tasks-widget{display:flex;flex-direction:column;gap:var(--qv-gap-w);min-height:0;flex:1;padding:var(--qv-pad-w);overflow:hidden}
.qv-tasks-widget.is-collapsed{gap:8px}
.qv-tasks-widget.is-loading{justify-content:center;align-items:center}
.qv-tasks-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-height:28px;padding-bottom:0;flex-shrink:0}
.qv-tasks-title{font-size:var(--qv-fs-k);font-weight:var(--font-weight-medium);letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}
.qv-tasks-toolbar-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}
.qv-tasks-pop-wrap{position:relative}
.qv-tasks-icon-btn{height:var(--qv-icon-btn);width:var(--qv-icon-btn);border:var(--border-width) solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:8px;background:var(--surface);color:var(--text-dim);font:inherit;font-size:14px;line-height:1;cursor:pointer;padding:0;display:inline-flex;align-items:center;justify-content:center;transition:border-color .15s ease,color .15s ease,background .15s ease;flex-shrink:0}
.qv-tasks-icon-btn:hover,.qv-tasks-icon-btn.is-on{border-color:color-mix(in srgb,var(--accent) 28%,var(--border));color:var(--text);background:color-mix(in srgb,var(--accent) 6%,var(--surface))}
.qv-tasks-icon-btn--size{font-size:15px;font-weight:600;line-height:1}
.qv-tasks-pop{position:absolute;top:calc(100% + 6px);right:0;z-index:12;min-width:196px;padding:10px;border:var(--border-width) solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:12px;background:var(--surface);box-shadow:0 10px 28px rgba(0,0,0,.18)}
.qv-tasks-pop-head{font-size:10px;font-weight:var(--font-weight-medium);letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);margin-bottom:8px}
.qv-tasks-size-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin-bottom:8px}
.qv-tasks-size-pick{min-height:30px;padding:0 6px;border:var(--border-width) solid color-mix(in srgb,var(--border) 80%,transparent);border-radius:8px;background:var(--surface-2);font:inherit;font-size:11px;font-weight:var(--font-weight-medium);cursor:pointer;color:var(--text-dim)}
.qv-tasks-size-pick:hover{border-color:color-mix(in srgb,var(--accent) 25%,var(--border));color:var(--text)}
.qv-tasks-size-pick.is-on{background:color-mix(in srgb,var(--accent) 12%,var(--surface));border-color:color-mix(in srgb,var(--accent) 35%,var(--border));color:var(--text)}
.qv-tasks-size-custom{display:flex;align-items:center;gap:6px;padding-top:8px;border-top:var(--border-width) solid color-mix(in srgb,var(--border) 72%,transparent)}
.qv-tasks-size-lbl{display:flex;align-items:center;gap:4px;font-size:10px;color:var(--text-dim)}
.qv-tasks-size-lbl select{min-height:28px;padding:0 6px;font:inherit;font-size:11px;border-radius:8px;border:var(--border-width) solid var(--border);background:var(--surface)}
.qv-tasks-size-apply{min-height:28px;padding:0 10px;border:var(--border-width) solid color-mix(in srgb,var(--accent) 35%,var(--border));border-radius:8px;background:color-mix(in srgb,var(--accent) 10%,var(--surface));font:inherit;font-size:11px;font-weight:var(--font-weight-medium);cursor:pointer;margin-left:auto}
.qv-tasks-body{flex:1;min-height:0;min-width:0;display:flex;flex-direction:column;gap:8px;overflow:hidden}
.qv-tasks-quick{display:flex;flex-direction:column;gap:6px;flex-shrink:0}
.qv-tasks-quick-row{display:grid;grid-template-columns:minmax(0,1fr) var(--qv-btn-h);gap:6px;align-items:center}
.qv-tasks-input{width:100%;height:var(--qv-btn-h);min-height:var(--qv-btn-h);max-height:var(--qv-btn-h);font-size:var(--qv-fs-m);border-radius:8px;padding:0 10px;box-sizing:border-box;line-height:1.2;margin:0}
.qv-tasks-submit{width:var(--qv-btn-h);height:var(--qv-btn-h);min-width:var(--qv-btn-h);max-height:var(--qv-btn-h);border:var(--border-width) solid color-mix(in srgb,var(--accent) 35%,var(--border));border-radius:8px;background:color-mix(in srgb,var(--accent) 12%,var(--surface));font:inherit;font-size:17px;font-weight:600;line-height:1;cursor:pointer;color:var(--accent);padding:0;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;box-sizing:border-box}
.qv-tasks-submit:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 18%,var(--surface))}
.qv-tasks-submit:disabled{opacity:.55;cursor:default}
.qv-tasks-assign-row,.qv-tasks-member-row,.qv-tasks-pool-row{display:grid;grid-template-columns:68px minmax(0,1fr);align-items:center;gap:12px;min-width:0}
.qv-tasks-pool-btns{display:flex;gap:6px;flex-wrap:wrap}
.qv-tasks-pool{min-height:var(--qv-btn-h-sm);padding:0 10px;border:var(--border-width) solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:999px;background:var(--surface);font:inherit;font-size:var(--qv-fs-s);font-weight:var(--font-weight-medium);cursor:pointer;color:var(--text-dim)}
.qv-tasks-pool.is-on{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--surface))}
.qv-tasks-row-k{font-size:var(--qv-fs-k);font-weight:var(--font-weight-medium);letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);line-height:1.2;padding-top:1px;padding-right:2px}
.qv-tasks-mem-scroll{display:flex;align-items:center;gap:6px;min-width:0;overflow-x:auto;overflow-y:visible;flex:1;padding:3px 2px 3px 4px;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.qv-tasks-mem-scroll::-webkit-scrollbar{display:none}
.qv-tasks-mem-btn{border:0;background:transparent;padding:2px;cursor:pointer;border-radius:50%;flex-shrink:0;opacity:.78;transition:opacity .15s ease,transform .15s ease;display:inline-flex;align-items:center;justify-content:center}
.qv-tasks-mem-btn:hover{opacity:1}
.qv-tasks-mem-btn.is-on{opacity:1;transform:scale(1.04)}
.qv-tasks-mem-btn.is-on .qv-tasks-mem{box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 50%,transparent)}
.qv-tasks-mem{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;font-size:9px;font-weight:var(--font-weight-semibold);letter-spacing:.02em;color:var(--accent);background:var(--accent-soft);border:2px solid var(--surface);overflow:hidden;pointer-events:none;flex-shrink:0;box-sizing:border-box}
.qv-tasks-mem.has-img{padding:0;background:var(--surface-2)}
.qv-tasks-mem.has-img img{width:100%;height:100%;object-fit:cover;display:block}
.qv-tasks-status-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;width:100%;flex-shrink:0}
.qv-tasks-status{min-height:var(--qv-btn-h-sm);padding:0 8px;border:var(--border-width) solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:999px;background:var(--surface);font:inherit;font-size:var(--qv-fs-s);font-weight:var(--font-weight-medium);cursor:pointer;color:var(--text-dim);white-space:nowrap;display:flex;align-items:center;justify-content:center;gap:6px;text-align:center}
.qv-tasks-status:hover{border-color:color-mix(in srgb,var(--accent) 25%,var(--border));color:var(--text)}
.qv-tasks-status.is-on{background:color-mix(in srgb,var(--accent) 12%,var(--surface));border-color:color-mix(in srgb,var(--accent) 35%,var(--border));color:var(--text)}
.qv-tasks-status-lbl{min-width:0;overflow:hidden;text-overflow:ellipsis}
.qv-tasks-status-n{flex:0 0 auto;min-width:18px;height:18px;padding:0 5px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;line-height:1;font-variant-numeric:tabular-nums;background:color-mix(in srgb,var(--text) 10%,transparent);color:var(--text-dim)}
.qv-tasks-status.is-on .qv-tasks-status-n{background:color-mix(in srgb,var(--accent) 22%,transparent);color:var(--accent)}
.qv-tasks-status-n:empty,.qv-tasks-status-n[data-empty="1"]{display:none}
.qv-tasks-list-wrap{flex:1;min-height:124px;overflow:hidden;display:flex;flex-direction:column;gap:4px;padding-top:0}
.qv-tasks-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:3px;width:100%;flex:1;min-height:0;overflow:auto;-webkit-overflow-scrolling:touch}
.qv-tasks-item{display:grid;grid-template-columns:minmax(0,1fr) 98px;gap:6px;align-items:center;width:100%;padding:5px 8px;border:var(--border-width) solid color-mix(in srgb,var(--border) 78%,transparent);border-radius:8px;background:color-mix(in srgb,var(--surface-2) 20%,var(--surface));min-width:0;min-height:var(--qv-btn-h-sm);box-sizing:border-box}
.qv-tasks-item-title{font-size:var(--qv-fs-s);font-weight:var(--font-weight-medium);line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.qv-tasks-item-side{display:grid;grid-template-columns:38px 22px 30px;gap:3px;align-items:center;justify-items:end;width:98px;flex-shrink:0}
.qv-tasks-slot{display:flex;align-items:center;justify-content:flex-end;min-width:0;height:100%}
.qv-tasks-slot--due{grid-column:1;justify-content:flex-end}
.qv-tasks-slot--who{grid-column:2;width:18px;height:18px;justify-content:center}
.qv-tasks-slot--act{grid-column:3;width:26px;height:26px;justify-content:center}
.qv-tasks-due{font-size:var(--qv-fs-k);color:var(--text-dim);white-space:nowrap;font-variant-numeric:tabular-nums;line-height:1}
.qv-tasks-who{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;font-size:7px;font-weight:var(--font-weight-semibold);color:var(--accent);background:var(--accent-soft);overflow:hidden;flex-shrink:0;border:1px solid var(--surface);box-sizing:border-box}
.qv-tasks-who img{width:100%;height:100%;object-fit:cover;display:block}
.qv-tasks-act{min-width:30px;width:30px;height:30px;border-radius:7px;border:var(--border-width) solid color-mix(in srgb,var(--border) 82%,transparent);background:var(--surface);font:inherit;font-size:var(--qv-fs-s);font-weight:600;line-height:1;cursor:pointer;padding:0;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:border-color .15s ease,background .15s ease,color .15s ease;box-sizing:border-box}
.qv-tasks-act--start{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 28%,var(--border));background:color-mix(in srgb,var(--accent) 6%,var(--surface))}
.qv-tasks-act--start:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 12%,var(--surface))}
.qv-tasks-act--done{color:#22c55e;border-color:color-mix(in srgb,#22c55e 32%,var(--border));background:color-mix(in srgb,#22c55e 8%,var(--surface))}
.qv-tasks-act--done:hover:not(:disabled){background:color-mix(in srgb,#22c55e 14%,var(--surface))}
.qv-tasks-act--del{color:#ef4444;border-color:color-mix(in srgb,#ef4444 30%,var(--border));background:color-mix(in srgb,#ef4444 8%,var(--surface));font-size:14px}
.qv-tasks-act--del:hover:not(:disabled){background:color-mix(in srgb,#ef4444 14%,var(--surface))}
.qv-tasks-act:disabled{opacity:.45;cursor:default}
.qv-tasks-pager{display:flex;align-items:center;justify-content:center;gap:8px;padding-top:2px;flex-shrink:0}
.qv-tasks-pager-btn{min-width:26px;height:26px;border:var(--border-width) solid color-mix(in srgb,var(--border) 80%,transparent);border-radius:7px;background:var(--surface);font:inherit;font-size:var(--qv-fs-s);cursor:pointer;padding:0;color:var(--text-dim)}
.qv-tasks-pager-btn:hover:not(:disabled){border-color:color-mix(in srgb,var(--accent) 25%,var(--border));color:var(--text)}
.qv-tasks-pager-btn:disabled{opacity:.35;cursor:default}
.qv-tasks-pager-info{font-size:var(--qv-fs-k);color:var(--text-dim);font-variant-numeric:tabular-nums;min-width:28px;text-align:center}
.qv-tasks-hint{font-size:var(--qv-fs-s);color:var(--text-dim);text-align:center;padding:8px 4px}
.qv-tasks-collapsed-hint{font-size:var(--qv-fs-s);color:var(--text-dim);padding:2px 0 0}
.qv-wstat-panel{display:flex;flex-direction:column;gap:8px;min-height:0;flex:1;justify-content:center;padding:2px 0 4px}
.qv-wstat-panel--skel{gap:10px}
.qv-wstat-head,.qv-wstat-stock{display:flex;align-items:baseline;gap:6px;line-height:1}
.qv-wstat-num{font-size:var(--qv-fs-h);font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums;color:var(--text);letter-spacing:-.02em}
.qv-wstat-num--warn{color:#f59e0b}
.qv-wstat-lbl{font-size:var(--qv-fs-k);font-weight:var(--font-weight-medium);letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim)}
.qv-wstat-members{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-height:32px;padding:2px 0}
.qv-wstat-mem{position:relative;display:inline-flex;flex-shrink:0}
.qv-wstat-av{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;font-size:9px;font-weight:var(--font-weight-semibold);color:var(--accent);background:var(--accent-soft);border:2px solid var(--surface);overflow:hidden;box-sizing:border-box}
.qv-wstat-av img{width:100%;height:100%;object-fit:cover;display:block}
.qv-wstat-badge{position:absolute;top:-4px;right:-5px;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:color-mix(in srgb,var(--accent) 88%,#000);color:#fff;font-size:9px;font-weight:var(--font-weight-semibold);line-height:16px;text-align:center;box-shadow:0 0 0 2px var(--surface);font-variant-numeric:tabular-nums}
.qv-wstat-empty{font-size:10px;color:var(--text-dim);line-height:1.3}
.qv-wstat-top-wrap{display:flex;flex-direction:column;gap:4px;min-width:0}
.qv-wstat-top-k{font-size:var(--qv-fs-k);font-weight:var(--font-weight-medium);letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim)}
.qv-wstat-top{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:3px;min-width:0}
.qv-wstat-top-item{display:grid;grid-template-columns:16px minmax(0,1fr) auto;gap:6px;align-items:center;min-height:22px;font-size:var(--qv-fs-s);line-height:1.25}
.qv-wstat-top-rank{font-size:var(--qv-fs-k);font-weight:var(--font-weight-semibold);color:var(--text-dim);text-align:center;font-variant-numeric:tabular-nums}
.qv-wstat-top-name{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text)}
.qv-wstat-top-qty{font-size:var(--qv-fs-k);font-weight:var(--font-weight-semibold);color:var(--accent);font-variant-numeric:tabular-nums;white-space:nowrap}
.qv-wstat-skel-line{height:10px;border-radius:6px;background:linear-gradient(90deg,color-mix(in srgb,var(--surface-2) 70%,transparent) 25%,color-mix(in srgb,var(--surface-2) 95%,transparent) 50%,color-mix(in srgb,var(--surface-2) 70%,transparent) 75%);background-size:200% 100%;animation:qv-shimmer 1.2s ease-in-out infinite}
.qv-wstat-skel-line--lg{height:18px;width:42%}
.qv-wstat-skel-line--short{width:55%}
.qv-wstat-skel-members{display:flex;gap:8px}
.qv-wstat-skel-av{width:28px;height:28px;border-radius:50%;background:color-mix(in srgb,var(--surface-2) 80%,transparent);animation:qv-shimmer 1.2s ease-in-out infinite}
.qv-tasks-body-skel{display:flex;flex-direction:column;gap:8px;flex:1;min-height:124px}
.qv-tasks-body-skel-row{border-radius:8px;background:linear-gradient(90deg,color-mix(in srgb,var(--surface-2) 65%,transparent) 25%,color-mix(in srgb,var(--surface-2) 90%,transparent) 50%,color-mix(in srgb,var(--surface-2) 65%,transparent) 75%);background-size:200% 100%;animation:qv-shimmer 1.2s ease-in-out infinite}
.qv-tasks-body-skel-row--input{height:32px}
.qv-tasks-body-skel-row--tabs{height:28px;width:100%}
.qv-tasks-body-skel-list{display:flex;flex-direction:column;gap:3px;flex:1}
.qv-tasks-body-skel-item{height:26px;border-radius:8px;background:linear-gradient(90deg,color-mix(in srgb,var(--surface-2) 55%,transparent) 25%,color-mix(in srgb,var(--surface-2) 80%,transparent) 50%,color-mix(in srgb,var(--surface-2) 55%,transparent) 75%);background-size:200% 100%;animation:qv-shimmer 1.2s ease-in-out infinite}
.qv-widget-body-skel{display:flex;flex-direction:column;gap:8px;flex:1;min-height:108px;padding:4px 0}
.qv-widget-body-skel-line{height:34px;border-radius:10px;background:linear-gradient(90deg,color-mix(in srgb,var(--surface-2) 65%,transparent) 25%,color-mix(in srgb,var(--surface-2) 90%,transparent) 50%,color-mix(in srgb,var(--surface-2) 65%,transparent) 75%);background-size:200% 100%;animation:qv-shimmer 1.2s ease-in-out infinite}
.qv-widget-body-skel-line--short{width:72%;height:28px}
.qv-tasks-widget.is-collapsed,.qv-cat-widget.is-collapsed{gap:8px}
@keyframes qv-shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}
@media (max-width:520px){
  .qv-tasks-widget{padding:var(--qv-pad-w);gap:var(--qv-gap-w)}
  .qv-tasks-item{padding:4px 7px}
  .qv-tasks-act,.qv-tasks-submit{width:var(--qv-icon-btn);height:var(--qv-icon-btn);min-width:var(--qv-icon-btn);font-size:var(--qv-fs-s)}
  .qv-stats-widget{padding:var(--qv-pad-w)}
}
.qv-stats-widget{display:flex;flex-direction:column;gap:var(--qv-gap-w);min-height:0;flex:1;padding:var(--qv-pad-w);overflow:hidden;max-width:100%;box-sizing:border-box}
.qv-stats-widget.is-collapsed{padding-bottom:10px}
.qv-stats-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;min-height:var(--qv-btn-h-sm);flex-shrink:0}
.qv-stats-title{font-size:var(--qv-fs-k);font-weight:var(--font-weight-medium);letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.qv-stats-toolbar-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}
.qv-stats-icon-btn{height:var(--qv-icon-btn);width:var(--qv-icon-btn);border:var(--border-width) solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:8px;background:var(--surface);color:var(--text-dim);font:inherit;font-size:14px;line-height:1;cursor:pointer;padding:0;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
.qv-stats-icon-btn:hover,.qv-stats-icon-btn.is-on{border-color:color-mix(in srgb,var(--accent) 30%,var(--border));color:var(--accent)}
.qv-stats-pop-wrap{position:relative}
.qv-stats-pop{position:absolute;top:calc(100% + 6px);right:0;z-index:12;display:flex;flex-wrap:wrap;gap:4px;min-width:120px;padding:8px;border:var(--border-width) solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:12px;background:var(--surface);box-shadow:0 10px 28px rgba(0,0,0,.18)}
.qv-stats-size-pick{min-height:28px;padding:0 8px;border:var(--border-width) solid color-mix(in srgb,var(--border) 80%,transparent);border-radius:8px;background:var(--surface-2);font:inherit;font-size:10px;cursor:pointer;color:var(--text-dim)}
.qv-stats-size-pick.is-on{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));background:color-mix(in srgb,var(--accent) 10%,var(--surface));color:var(--text)}
.qv-stats-body{flex:1;min-height:120px;display:flex;flex-direction:column;gap:8px;overflow:hidden;justify-content:flex-start;max-width:100%;box-sizing:border-box}
.qv-stats-collapsed{flex:1;min-height:96px;display:flex;flex-direction:column;gap:5px;overflow:hidden;justify-content:flex-start}
.qv-stats-collapsed--skel{gap:10px;justify-content:center;padding:6px 0}
.qv-stats-slider-wrap{display:flex;align-items:stretch;gap:8px;min-width:0;flex:1;min-height:0;max-width:100%;box-sizing:border-box;overflow:hidden}
.qv-stats-slider-wrap--exp{min-height:0}
.qv-stats-slider{display:flex;gap:0;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;flex:1;min-width:0;scrollbar-width:none}
.qv-stats-slider::-webkit-scrollbar{display:none}
.qv-stats-slider--exp{min-height:0}
.qv-stats-slide{flex:0 0 100%;min-width:100%;scroll-snap-align:start;display:flex;flex-direction:column;gap:6px;min-height:0;overflow:hidden;padding:0 2px;box-sizing:border-box;align-items:stretch}
.qv-stats-slide--exp{min-height:0}
.qv-stats-slide-head{display:flex;align-items:center;justify-content:center;min-height:18px;flex-shrink:0}
.qv-stats-slide-title{font-size:var(--qv-fs-k);font-weight:var(--font-weight-semibold);letter-spacing:.05em;text-transform:uppercase;color:var(--text)}
.qv-stats-slide-body{flex:1;min-height:0;overflow:auto;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column;justify-content:center}
.qv-stats-nav{flex-shrink:0;width:32px;min-width:32px;height:32px;align-self:center;padding:0;border:var(--border-width) solid color-mix(in srgb,var(--accent) 35%,var(--border));border-radius:10px;background:color-mix(in srgb,var(--accent) 8%,var(--surface));color:var(--accent);font:inherit;font-size:18px;font-weight:600;line-height:1;cursor:pointer;box-shadow:0 1px 0 color-mix(in srgb,var(--border) 50%,transparent)}
.qv-stats-nav:hover:not(:disabled){border-color:color-mix(in srgb,var(--accent) 55%,var(--border));background:color-mix(in srgb,var(--accent) 14%,var(--surface));color:var(--text)}
.qv-stats-nav:disabled{opacity:.3;cursor:default}
.qv-stats-dots{display:flex;align-items:center;justify-content:center;gap:7px;flex-shrink:0;padding-top:4px}
.qv-stats-dot{width:7px;height:7px;border-radius:50%;border:0;padding:0;background:color-mix(in srgb,var(--border) 90%,transparent);cursor:pointer;transition:transform .15s ease,background .15s ease}
.qv-stats-dot.is-on{background:var(--accent);transform:scale(1.2)}
.qv-stats-table{width:100%;border-collapse:collapse;font-size:var(--qv-fs-s);line-height:1.35;margin:0 auto}
.qv-stats-table th,.qv-stats-table td{padding:5px 6px;text-align:right;vertical-align:middle}
.qv-stats-table th:first-child,.qv-stats-table td:first-child{text-align:left;padding-left:4px}
.qv-stats-table th{font-size:var(--qv-fs-k);font-weight:var(--font-weight-semibold);letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim);border-bottom:var(--border-width) solid color-mix(in srgb,var(--border) 70%,transparent)}
.qv-stats-td-name{display:flex;align-items:center;gap:5px;min-width:0;max-width:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text);font-weight:var(--font-weight-medium)}
.qv-stats-td-n{font-variant-numeric:tabular-nums;color:var(--text);white-space:nowrap;font-size:var(--qv-fs-s);font-weight:var(--font-weight-medium)}
.qv-stats-tr--total td{font-weight:var(--font-weight-semibold);border-top:var(--border-width) solid color-mix(in srgb,var(--border) 65%,transparent);padding-top:6px}
.qv-stats-tr--total .qv-stats-td-n{color:var(--accent);font-size:var(--qv-fs-m)}
.qv-stats-ch-dot{display:inline-block;width:8px;height:8px;border-radius:50%;flex-shrink:0}
.qv-stats-filters{display:flex;flex-direction:column;gap:5px;flex-shrink:0;max-width:100%}
.qv-stats-filters-row{min-width:0;max-width:100%}
.qv-stats-filters-row--channels{padding-top:1px}
.qv-stats-types{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}
.qv-stats-type{min-height:var(--qv-btn-h-sm);padding:0 4px;border:var(--border-width) solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:6px;background:var(--surface);font:inherit;font-size:var(--qv-fs-k);font-weight:var(--font-weight-semibold);cursor:pointer;color:var(--text-dim);white-space:nowrap;display:flex;align-items:center;justify-content:center;min-width:0;overflow:hidden;text-overflow:ellipsis;letter-spacing:-.01em}
.qv-stats-type.is-on{background:color-mix(in srgb,var(--accent) 12%,var(--surface));border-color:color-mix(in srgb,var(--accent) 38%,var(--border));color:var(--text)}
.qv-stats-periods{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;flex-shrink:0;max-width:100%}
.qv-stats-period{min-height:var(--qv-btn-h-sm);padding:0 4px;border:var(--border-width) solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:6px;background:var(--surface);font:inherit;font-size:var(--qv-fs-k);font-weight:var(--font-weight-semibold);cursor:pointer;color:var(--text-dim);white-space:nowrap;display:flex;align-items:center;justify-content:center;min-width:0;overflow:hidden;text-overflow:ellipsis}
.qv-stats-period-compact{display:none}
.qv-stats-period.is-on{background:color-mix(in srgb,var(--accent) 12%,var(--surface));border-color:color-mix(in srgb,var(--accent) 35%,var(--border));color:var(--text)}
.qv-stats-ch-scroll{display:flex;align-items:center;justify-content:flex-start;gap:4px;overflow-x:auto;overflow-y:hidden;flex-shrink:0;padding:0;-webkit-overflow-scrolling:touch;scrollbar-width:none;max-width:100%}
.qv-stats-ch-scroll::-webkit-scrollbar{display:none}
.qv-stats-ch-btn{display:inline-flex;align-items:center;gap:4px;min-height:var(--qv-btn-h-sm);padding:0 8px;border:var(--border-width) solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:6px;background:var(--surface);font:inherit;font-size:var(--qv-fs-k);font-weight:var(--font-weight-semibold);cursor:pointer;color:var(--text-dim);white-space:nowrap;flex-shrink:0}
.qv-stats-ch-btn.is-on{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));background:color-mix(in srgb,var(--accent) 10%,var(--surface));color:var(--text)}
.qv-stats-chart{display:flex;flex-direction:column;gap:8px;min-height:0;justify-content:center}
.qv-stats-bar-row{display:grid;grid-template-columns:minmax(72px,1fr) minmax(48px,2fr) auto;gap:8px;align-items:center;min-height:28px}
.qv-stats-bar-label{display:flex;align-items:center;gap:5px;min-width:0;font-size:var(--qv-fs-s);font-weight:var(--font-weight-medium);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.qv-stats-bar-track{height:10px;border-radius:999px;background:color-mix(in srgb,var(--surface-2) 70%,transparent);overflow:hidden;min-width:0}
.qv-stats-bar-fill{height:100%;border-radius:999px;min-width:3px;opacity:.9}
.qv-stats-bar-val{font-size:var(--qv-fs-s);font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums;color:var(--text);white-space:nowrap;min-width:2.5em;text-align:right}
.qv-stats-pipe-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:6px;margin-top:8px}
.qv-stats-pipe-card{display:flex;flex-direction:column;gap:3px;padding:8px 10px;border:var(--border-width) solid color-mix(in srgb,var(--border) 75%,transparent);border-radius:10px;background:color-mix(in srgb,var(--surface-2) 22%,var(--surface));min-width:0;text-align:center}
.qv-stats-pipe-name{font-size:11px;font-weight:var(--font-weight-medium);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.qv-stats-pipe-nums{font-size:11px;color:var(--text-dim);line-height:1.35}
.qv-stats-pipe-nums b{font-weight:var(--font-weight-semibold);color:var(--accent)}
.qv-stats-alert{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--warning,#e8a020);margin-right:6px;vertical-align:middle;flex-shrink:0;animation:qv-stats-alert-pulse 1.2s ease-in-out infinite}
.qv-stats-widget.has-pipeline-alert .qv-stats-title{color:var(--text)}
@keyframes qv-stats-alert-pulse{0%,100%{opacity:1;transform:scale(1);box-shadow:0 0 0 0 color-mix(in srgb,var(--warning,#e8a020) 0%,transparent)}50%{opacity:.85;transform:scale(1.15);box-shadow:0 0 0 4px color-mix(in srgb,var(--warning,#e8a020) 28%,transparent)}}
@keyframes qv-stats-num-pulse{0%,100%{transform:scale(1)}35%{transform:scale(1.1)}65%{transform:scale(1.04)}}
@keyframes qv-stats-num-glow-r{0%,100%{color:var(--text);text-shadow:none}50%{color:var(--accent);text-shadow:0 0 12px color-mix(in srgb,var(--accent) 45%,transparent)}}
@keyframes qv-stats-num-glow-a{0%,100%{color:var(--text);text-shadow:none}50%{color:var(--warning,#e8a020);text-shadow:0 0 12px color-mix(in srgb,var(--warning,#e8a020) 45%,transparent)}}
.qv-stats-td-n--big{font-size:var(--qv-fs-b);font-weight:var(--font-weight-semibold)}
.qv-stats-table--pipeline .qv-stats-tr--total .qv-stats-td-n--big{font-size:var(--qv-fs-h);color:var(--accent)}
.qv-stats-td-n.is-pulse,.qv-stats-pipe-stat-n.is-pulse,.qv-stats-pipe-mini-n.is-pulse{animation:qv-stats-num-pulse .85s ease-in-out 4}
.qv-stats-td-n.is-pulse-r,.qv-stats-pipe-stat--received .qv-stats-pipe-stat-n.is-pulse-r,.qv-stats-pipe-mini--received .qv-stats-pipe-mini-n.is-pulse-r{animation:qv-stats-num-pulse .85s ease-in-out 4,qv-stats-num-glow-r 1.7s ease-in-out 2}
.qv-stats-td-n.is-pulse-a,.qv-stats-pipe-stat--awaiting .qv-stats-pipe-stat-n.is-pulse-a,.qv-stats-pipe-mini--awaiting .qv-stats-pipe-mini-n.is-pulse-a{animation:qv-stats-num-pulse .85s ease-in-out 4,qv-stats-num-glow-a 1.7s ease-in-out 2}
.qv-stats-pipeline{display:flex;flex-direction:column;gap:10px;min-height:0;justify-content:center}
.qv-stats-pipe-hero{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.qv-stats-pipe-stat{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:10px 8px;border-radius:12px;border:var(--border-width) solid color-mix(in srgb,var(--border) 75%,transparent);background:color-mix(in srgb,var(--surface-2) 24%,var(--surface));min-width:0}
.qv-stats-pipe-stat--received{border-color:color-mix(in srgb,var(--accent) 22%,var(--border))}
.qv-stats-pipe-stat--awaiting{border-color:color-mix(in srgb,var(--warning,#e8a020) 22%,var(--border))}
.qv-stats-pipe-stat-n{font-size:26px;font-weight:var(--font-weight-bold);font-variant-numeric:tabular-nums;line-height:1.1;color:var(--text)}
.qv-stats-pipe-stat--received .qv-stats-pipe-stat-n{color:color-mix(in srgb,var(--accent) 88%,var(--text))}
.qv-stats-pipe-stat--awaiting .qv-stats-pipe-stat-n{color:color-mix(in srgb,var(--warning,#e8a020) 88%,var(--text))}
.qv-stats-pipe-stat-l{font-size:10px;font-weight:var(--font-weight-semibold);letter-spacing:.05em;text-transform:uppercase;color:var(--text-dim)}
.qv-stats-pipe-list{display:flex;flex-direction:column;gap:5px;max-height:100%;overflow:auto}
.qv-stats-pipe-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:7px 8px;border-radius:10px;border:var(--border-width) solid color-mix(in srgb,var(--border) 70%,transparent);background:color-mix(in srgb,var(--surface-2) 16%,var(--surface))}
.qv-stats-pipe-row.is-hot{border-color:color-mix(in srgb,var(--warning,#e8a020) 30%,var(--border));background:color-mix(in srgb,var(--warning,#e8a020) 6%,var(--surface))}
.qv-stats-pipe-row-name{display:flex;align-items:center;gap:5px;min-width:0;font-size:11px;font-weight:var(--font-weight-medium);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.qv-stats-pipe-row-nums{display:flex;align-items:center;gap:10px;flex-shrink:0}
.qv-stats-pipe-mini{display:flex;flex-direction:column;align-items:center;gap:0;min-width:2.4em}
.qv-stats-pipe-mini-n{font-size:16px;font-weight:var(--font-weight-bold);font-variant-numeric:tabular-nums;line-height:1.1;color:var(--text)}
.qv-stats-pipe-mini--received .qv-stats-pipe-mini-n{color:color-mix(in srgb,var(--accent) 85%,var(--text))}
.qv-stats-pipe-mini--awaiting .qv-stats-pipe-mini-n{color:color-mix(in srgb,var(--warning,#e8a020) 85%,var(--text))}
.qv-stats-pipe-mini-l{font-size:8px;font-weight:var(--font-weight-semibold);letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim);line-height:1.2}
.qv-stats-metrics{display:flex;flex-direction:column;gap:10px;min-height:0;justify-content:center}
.qv-stats-metric-hero{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:12px 10px;border-radius:12px;border:var(--border-width) solid color-mix(in srgb,var(--accent) 22%,var(--border));background:color-mix(in srgb,var(--accent) 6%,var(--surface));text-align:center}
.qv-stats-metric-hero-n{font-size:28px;font-weight:var(--font-weight-bold);font-variant-numeric:tabular-nums;line-height:1.05;color:color-mix(in srgb,var(--accent) 90%,var(--text))}
.qv-stats-metric-hero-l{font-size:10px;font-weight:var(--font-weight-semibold);letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim)}
.qv-stats-metric-list{display:flex;flex-direction:column;gap:5px;max-height:100%;overflow:auto}
.qv-stats-metric-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:7px 8px;border-radius:10px;border:var(--border-width) solid color-mix(in srgb,var(--border) 70%,transparent);background:color-mix(in srgb,var(--surface-2) 16%,var(--surface))}
.qv-stats-metric-row.is-hot{border-color:color-mix(in srgb,var(--accent) 28%,var(--border));background:color-mix(in srgb,var(--accent) 5%,var(--surface))}
.qv-stats-metric-row-name{display:flex;align-items:center;gap:5px;min-width:0;font-size:11px;font-weight:var(--font-weight-medium);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.qv-stats-metric-row-n{font-size:17px;font-weight:var(--font-weight-bold);font-variant-numeric:tabular-nums;color:var(--text);white-space:nowrap}
.qv-stats-metric-row.is-hot .qv-stats-metric-row-n{color:color-mix(in srgb,var(--accent) 88%,var(--text))}
.qv-stats-hint{font-size:12px;color:var(--text-dim);text-align:center;padding:14px 8px;line-height:1.4}
.qv-stats-body-skel{display:flex;flex-direction:column;gap:6px;flex:1;min-height:108px}
.qv-stats-body-skel-row{height:26px;border-radius:8px;background:linear-gradient(90deg,color-mix(in srgb,var(--surface-2) 65%,transparent) 25%,color-mix(in srgb,var(--surface-2) 90%,transparent) 50%,color-mix(in srgb,var(--surface-2) 65%,transparent) 75%);background-size:200% 100%;animation:qv-shimmer 1.2s ease-in-out infinite}
.qv-stats-body-skel-row--tabs{height:28px}
.qv-stats-body-skel-row--short{width:68%;height:22px}
.qv-wstat-stock-block{display:flex;flex-direction:column;gap:5px;min-width:0}
.qv-wstat-stock-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px}
.qv-wstat-stock-tab{min-height:24px;padding:0 6px;border:var(--border-width) solid color-mix(in srgb,var(--border) 80%,transparent);border-radius:999px;background:var(--surface);font:inherit;font-size:9px;font-weight:var(--font-weight-medium);cursor:pointer;color:var(--text-dim);display:flex;align-items:center;justify-content:center;gap:4px;white-space:nowrap}
.qv-wstat-stock-tab.is-on{background:color-mix(in srgb,var(--accent) 10%,var(--surface));border-color:color-mix(in srgb,var(--accent) 32%,var(--border));color:var(--text)}
.qv-wstat-tab-n{font-size:8px;font-variant-numeric:tabular-nums;opacity:.85}
.qv-wstat-stock-scroll{max-height:56px;overflow-y:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin;padding-right:2px}
.qv-wstat-stock-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}
.qv-wstat-stock-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;align-items:center;min-height:18px;font-size:9px;line-height:1.2;padding:1px 0}
.qv-wstat-stock-name{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text)}
.qv-wstat-stock-qty{font-size:8px;font-weight:var(--font-weight-semibold);color:#f59e0b;font-variant-numeric:tabular-nums;white-space:nowrap}
.qv-wstat-stock-pager,.qv-wstat-pager{display:flex;align-items:center;justify-content:center;gap:6px;padding-top:1px}
.qv-wstat-pager-btn{min-width:22px;height:22px;border:var(--border-width) solid color-mix(in srgb,var(--border) 80%,transparent);border-radius:6px;background:var(--surface);font:inherit;font-size:11px;cursor:pointer;padding:0;color:var(--text-dim)}
.qv-wstat-pager-btn:hover:not(:disabled){border-color:color-mix(in srgb,var(--accent) 25%,var(--border));color:var(--text)}
.qv-wstat-pager-btn:disabled{opacity:.35;cursor:default}
.qv-wstat-pager-info{font-size:var(--qv-fs-k);color:var(--text-dim);font-variant-numeric:tabular-nums;min-width:24px;text-align:center}
.qv-cat-body{flex:1;min-height:96px;min-width:0;display:flex;flex-direction:column;overflow:hidden}
.qv-cat-hint{font-size:var(--qv-fs-k);color:var(--text-dim);text-align:center;padding:14px 8px;line-height:1.35}
.qv-cat-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;flex:1;min-height:0;overflow:hidden;align-items:stretch}
.qv-cat-split--dual{align-items:start}
.qv-cat-pane{min-width:0;min-height:0;display:flex;flex-direction:column;overflow:auto;-webkit-overflow-scrolling:touch}
.qv-cat-pane--pick{border:var(--border-width) dashed color-mix(in srgb,var(--border) 78%,transparent);border-radius:12px;background:color-mix(in srgb,var(--surface-2) 28%,var(--surface));padding:8px}
.qv-cat-pick-pane{display:flex;flex-direction:column;gap:8px;min-height:0;flex:1}
.qv-cat-pick-head{display:flex;flex-direction:column;gap:2px;padding:0 2px 4px;border-bottom:var(--border-width) solid color-mix(in srgb,var(--border) 70%,transparent)}
.qv-cat-pick-title{font-size:var(--qv-fs-k);font-weight:var(--font-weight-medium);letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim)}
.qv-cat-pick-sub{font-size:var(--qv-fs-k);color:var(--text-dim);opacity:.85}
.qv-cat-card-slot-k{font-size:var(--qv-fs-k);font-weight:var(--font-weight-medium);letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);margin-bottom:2px}
.qv-cat-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-height:0;overflow:auto;align-content:start;flex:1}
.qv-cat-results--compact{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;overflow:auto;align-content:start}
.qv-cat-results--compact .qv-cat-res{gap:5px;padding:7px}
.qv-cat-results--compact .qv-cat-res-main{gap:6px}
.qv-cat-results--compact .qv-cat-res-thumb{width:40px;height:40px}
.qv-cat-results--compact .qv-cat-res-name{font-size:11px;-webkit-line-clamp:3}
.qv-cat-results--compact .qv-cat-res-sub{font-size:9px;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.qv-cat-results--compact .qv-cat-res-badges{display:grid;grid-template-columns:1fr 1fr;gap:4px;width:100%}
.qv-cat-results--compact .qv-cat-status-seg{grid-column:1/-1;justify-content:center}
.qv-cat-results--compact .qv-cat-badge{min-height:20px;font-size:9px;padding:0 6px;width:100%}
.qv-cat-res{display:flex;flex-direction:column;gap:6px;padding:8px;border:var(--border-width) solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:12px;background:color-mix(in srgb,var(--surface) 92%,var(--surface-2));min-width:0}
.qv-cat-res:hover{border-color:color-mix(in srgb,var(--accent) 24%,var(--border))}
.qv-cat-res-main{display:flex;align-items:flex-start;gap:8px;width:100%;padding:0;border:0;background:transparent;font:inherit;text-align:left;cursor:pointer;color:inherit}
.qv-cat-res-main:hover .qv-cat-res-name{color:var(--accent)}
.qv-cat-res-thumb{width:44px;height:44px;border-radius:9px;overflow:hidden;flex-shrink:0;background:color-mix(in srgb,var(--surface-2) 60%,var(--surface));display:flex;align-items:center;justify-content:center;border:var(--border-width) solid color-mix(in srgb,var(--border) 70%,transparent)}
.qv-cat-res-thumb img{width:100%;height:100%;object-fit:cover}
.qv-cat-res-ph{opacity:.4;font-size:18px}
.qv-cat-res-body{min-width:0;display:flex;flex-direction:column;gap:3px;flex:1;padding-top:1px}
.qv-cat-res-name{font-size:var(--qv-fs-s);font-weight:var(--font-weight-medium);line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;transition:color .15s ease}
.qv-cat-res-sub{font-size:var(--qv-fs-k);color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}
.qv-cat-res-badges{display:flex;flex-wrap:wrap;align-items:center;gap:4px;padding-top:2px}
.qv-cat-badge{display:inline-flex;align-items:center;justify-content:center;gap:2px;min-height:24px;padding:0 8px;border-radius:999px;font-size:var(--qv-fs-k);font-weight:var(--font-weight-medium);line-height:1;border:var(--border-width) solid transparent;white-space:nowrap;font-variant-numeric:tabular-nums}
.qv-cat-badge-u{font-size:var(--qv-fs-k);opacity:.75;margin-left:1px}
.qv-cat-badge--price{background:color-mix(in srgb,#6366f1 12%,var(--surface));border-color:color-mix(in srgb,#6366f1 22%,var(--border));color:color-mix(in srgb,#6366f1 88%,var(--text))}
.qv-cat-badge--stock{background:color-mix(in srgb,#14b8a6 12%,var(--surface));border-color:color-mix(in srgb,#14b8a6 22%,var(--border));color:color-mix(in srgb,#14b8a6 88%,var(--text))}
.qv-cat-badge--pub{background:color-mix(in srgb,#22c55e 12%,var(--surface));border-color:color-mix(in srgb,#22c55e 22%,var(--border));color:color-mix(in srgb,#22c55e 90%,var(--text))}
.qv-cat-badge--priv{background:color-mix(in srgb,#f59e0b 12%,var(--surface));border-color:color-mix(in srgb,#f59e0b 22%,var(--border));color:color-mix(in srgb,#f59e0b 90%,var(--text))}
.qv-cat-badge--draft{background:color-mix(in srgb,var(--text-dim) 10%,var(--surface));border-color:color-mix(in srgb,var(--border) 85%,transparent);color:var(--text-dim)}
.qv-cat-status-seg{display:inline-flex;align-items:stretch;border:var(--border-width) solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:999px;overflow:hidden;background:var(--surface)}
.qv-cat-status-seg--card{width:100%;margin-top:2px}
.qv-cat-status-opt{min-height:24px;padding:0 8px;border:0;border-right:var(--border-width) solid color-mix(in srgb,var(--border) 72%,transparent);background:transparent;font:inherit;font-size:var(--qv-fs-k);font-weight:var(--font-weight-medium);color:var(--text-dim);cursor:pointer;line-height:1}
.qv-cat-status-seg--card .qv-cat-status-opt{flex:1;min-height:var(--qv-btn-h-sm);font-size:var(--qv-fs-k);padding:0 8px}
.qv-cat-status-opt:last-child{border-right:0}
.qv-cat-status-opt:hover{background:color-mix(in srgb,var(--accent) 6%,var(--surface));color:var(--text)}
.qv-cat-status-opt.is-on{background:color-mix(in srgb,var(--accent) 14%,var(--surface));color:var(--text);font-weight:700}
.qv-cat-card{display:flex;flex-direction:column;gap:8px;min-height:0;overflow:auto;padding:0;border:0;background:transparent;box-shadow:none;flex:1}
.qv-cat-card-head{display:flex;align-items:flex-start;gap:10px}
.qv-cat-thumb{width:56px;height:56px;border-radius:10px;object-fit:cover;flex-shrink:0;background:color-mix(in srgb,var(--surface-2) 60%,var(--surface));border:var(--border-width) solid color-mix(in srgb,var(--border) 70%,transparent)}
.qv-cat-thumb-ph{display:flex;align-items:center;justify-content:center;width:56px;height:56px;font-size:20px;color:var(--text-dim);border-radius:10px;border:var(--border-width) solid color-mix(in srgb,var(--border) 70%,transparent)}
.qv-cat-card-meta{flex:1;min-width:0;padding-top:2px}
.qv-cat-card-name{font-size:var(--qv-fs-m);font-weight:var(--font-weight-medium);line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.qv-cat-card-sku,.qv-cat-card-cat{font-size:var(--qv-fs-k);color:var(--text-dim);line-height:1.35;margin-top:2px}
.qv-cat-card-close{width:28px;height:28px;border:0;border-radius:8px;background:color-mix(in srgb,var(--surface-2) 70%,var(--surface));color:var(--text-dim);cursor:pointer;flex-shrink:0;font-size:16px;line-height:1}
.qv-cat-card-section{display:flex;flex-direction:column;gap:4px}
.qv-cat-card-section-k{font-size:var(--qv-fs-k);font-weight:var(--font-weight-medium);letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim)}
.qv-tile--catalog-pick .cat-grid-stocks,.qv-tile--catalog-pick .cat-grid-prices,.qv-tile--catalog-pick .cat-grid-statuses{display:flex;flex-wrap:wrap;gap:4px;align-items:center}
.qv-tile--catalog-pick .cat-card-grid{min-height:0}
.qv-tile--catalog-pick .cat-grid-chip{font-size:10px;min-height:26px}
@media(min-width:560px){
  .qv-cat-results:not(.qv-cat-results--compact){grid-template-columns:repeat(4,minmax(0,1fr))}
}
.qv-tile{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:8px;min-height:128px;padding:14px 12px;border:var(--border-width) solid color-mix(in srgb,var(--border) 88%,transparent);border-radius:16px;background:linear-gradient(180deg,var(--surface),color-mix(in srgb,var(--surface-2) 55%,var(--surface)));color:inherit;font:inherit;cursor:pointer;text-align:left;box-shadow:0 1px 0 color-mix(in srgb,var(--border) 40%,transparent);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;-webkit-tap-highlight-color:transparent;overflow:hidden}
.qv-tile::after{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(120% 90% at 100% 0%,color-mix(in srgb,var(--qv-accent,var(--accent)) 14%,transparent),transparent 55%);opacity:0;transition:opacity .18s ease;pointer-events:none}
.qv-tile:hover,.qv-tile:focus-visible{outline:none;border-color:color-mix(in srgb,var(--qv-accent,var(--accent)) 32%,var(--border));box-shadow:0 8px 24px color-mix(in srgb,var(--qv-accent,var(--accent)) 10%,transparent);transform:translateY(-2px)}
.qv-tile:hover::after,.qv-tile:focus-visible::after{opacity:1}
.qv-tile:active:not(.qv-tile--add){transform:translateY(0) scale(.99)}
.qv-tile-icon{display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:13px;color:var(--qv-accent,var(--accent));background:color-mix(in srgb,var(--qv-accent,var(--accent)) 12%,var(--surface));border:1px solid color-mix(in srgb,var(--qv-accent,var(--accent)) 24%,var(--border));position:relative;z-index:1;flex-shrink:0}
.qv-tile-icon svg{width:22px;height:22px}
.qv-tile-text{display:flex;flex-direction:column;gap:2px;min-width:0;position:relative;z-index:1}
.qv-tile-label{font-size:var(--qv-fs-m);line-height:1.25;font-weight:var(--font-weight-medium);max-width:100%;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word;color:var(--text)}
.qv-tile-sub{font-size:var(--qv-fs-s);line-height:1.3;color:var(--text-dim);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.qv-tile-pin{position:absolute;top:8px;left:8px;width:6px;height:6px;border-radius:50%;background:var(--qv-accent,var(--accent));box-shadow:0 0 0 2px color-mix(in srgb,var(--qv-accent,var(--accent)) 20%,var(--surface))}
.qv-accent-chat{--qv-accent:#3b82f6}
.qv-accent-doc,.qv-accent-notes{--qv-accent:#8b5cf6}
.qv-accent-projects{--qv-accent:#f59e0b}
.qv-accent-agent{--qv-accent:#06b6d4}
.qv-accent-crm{--qv-accent:#10b981}
.qv-accent-catalog{--qv-accent:#f59e0b}
.qv-accent-tasks{--qv-accent:#6eb5ff}
.qv-accent-costs{--qv-accent:#a78bfa}
.qv-accent-mail{--qv-accent:#ec4899}
.qv-accent-storage{--qv-accent:#64748b}
.qv-accent-video{--qv-accent:#ef4444}
.qv-accent-settings{--qv-accent:#94a3b8}
.qv-accent-default{--qv-accent:var(--accent)}
.qv-tile--add{border-style:dashed;background:color-mix(in srgb,var(--surface-2) 50%,transparent);color:var(--text-dim);box-shadow:none;align-items:center;text-align:center}
.qv-tile--add:hover{transform:none}
.qv-tile--add .qv-tile-icon{background:transparent;color:var(--text-dim);border-color:color-mix(in srgb,var(--border) 80%,transparent)}
.qv-tile.is-dragging{opacity:.58;z-index:2;box-shadow:0 8px 24px rgba(0,0,0,.12)}
.qv-tile.is-drop-target{box-shadow:0 0 0 2px var(--accent)}
.qv-drag-handle{position:absolute;top:2px;left:2px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;touch-action:none;cursor:grab;color:var(--text-dim);border-radius:10px;background:color-mix(in srgb,var(--surface) 85%,transparent)}
.qv-drag-handle svg{width:14px;height:14px;opacity:.7}
.qv-drag-handle:active{cursor:grabbing}
.qv-tile-del{position:absolute;top:4px;right:4px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:0;border-radius:10px;background:color-mix(in srgb,#ef4444 12%,var(--surface));color:#dc2626;cursor:pointer}
.qv-tile-del svg{width:14px;height:14px}
.qv-tile-del:hover{background:color-mix(in srgb,#ef4444 18%,var(--surface))}
.qv-tile--chat{grid-column:1/-1;grid-row:span 2;aspect-ratio:auto;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;align-items:stretch;justify-content:stretch;gap:6px;padding:8px 10px;cursor:default;text-align:left}
.qv-tile--chat:hover,.qv-tile--chat:focus-visible{transform:none;box-shadow:0 1px 0 color-mix(in srgb,var(--border) 40%,transparent)}
.qv-tile--chat .qv-drag-handle{top:2px;left:2px;width:32px;height:32px}
.qv-tile--chat .qv-tile-del{top:4px;right:4px;width:28px;height:28px}
.qv-chat-head{display:flex;align-items:center;gap:6px;min-height:0;padding:0 2px 0 0}
.qv-tile--chat .qv-chat-agent-av,.qv-tile--chat .agent-avatar-sm{width:22px;height:22px;font-size:12px;border-radius:6px;flex-shrink:0}
.qv-chat-agent-name{flex:1;min-width:0;font-size:12px;font-weight:var(--font-weight-medium);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text)}
.qv-chat-preview{flex:1;display:flex;align-items:center;justify-content:center;font-size:11px;color:var(--text-dim);border-radius:10px;background:color-mix(in srgb,var(--surface-2) 50%,var(--surface));border:var(--border-width) dashed color-mix(in srgb,var(--border) 70%,transparent)}
.qv-chat-log{min-height:0;overflow:auto;display:flex;flex-direction:column;gap:5px;padding:8px;border-radius:10px;background:color-mix(in srgb,var(--surface-2) 42%,var(--surface));border:var(--border-width) solid color-mix(in srgb,var(--border) 72%,transparent)}
.qv-chat-empty{margin:0;padding:0;font-size:11px;color:var(--text-dim);text-align:center}
.qv-chat-msg{display:flex}
.qv-chat-msg--user{justify-content:flex-end}
.qv-chat-msg--bot{justify-content:flex-start}
.qv-chat-bubble{max-width:94%;padding:6px 9px;border-radius:10px;font-size:12px;line-height:1.4;word-break:break-word}
.qv-chat-msg--user .qv-chat-bubble{background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--text)}
.qv-chat-msg--bot .qv-chat-bubble{background:color-mix(in srgb,var(--surface) 88%,var(--surface-2));color:var(--text);border:var(--border-width) solid color-mix(in srgb,var(--border) 65%,transparent)}
.qv-chat-thinking{opacity:.5;font-style:italic}
.qv-chat-foot{display:flex;flex-direction:column;gap:4px;min-height:0}
.qv-chat-att{min-height:0;font-size:10px;line-height:1.2;color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 2px}
.qv-chat-att:empty{display:none}
.qv-chat-bar{display:grid;grid-template-columns:auto auto 1fr auto;align-items:center;gap:5px;width:100%}
.qv-chat-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:var(--border-width) solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:9px;background:var(--surface);color:var(--text-dim);cursor:pointer;padding:0}
.qv-chat-btn .nav-ico,.qv-chat-btn svg{width:15px;height:15px;display:block}
.qv-chat-btn:hover{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 22%,var(--border))}
.qv-chat-btn input.hidden{position:absolute;width:0;height:0;opacity:0;pointer-events:none}
.qv-chat-input{width:100%;min-height:32px;max-height:64px;padding:6px 10px;font-size:12px;resize:none;line-height:1.35;border-radius:9px}
.qv-chat-send{min-width:32px;width:32px;height:32px;padding:0;border-radius:9px;font-size:15px;line-height:1;display:flex;align-items:center;justify-content:center}
.qv-main.is-editing .qv-tile:hover,.qv-main.is-editing .qv-tile:focus-visible,.qv-board.is-editing .qv-tile:hover,.qv-board.is-editing .qv-tile:focus-visible{transform:none;box-shadow:0 1px 0 color-mix(in srgb,var(--border) 40%,transparent)}
.qv-nav-btn{display:none;flex-shrink:0;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:var(--border-width) solid var(--border);border-radius:12px;background:var(--surface);color:var(--text);cursor:pointer}
.qv-nav-btn .nav-ico svg{width:18px;height:18px}
.qv-sheet.hidden,.qv-sheet-backdrop.hidden{display:none}
.qv-home-row{display:flex;align-items:center;gap:10px;width:100%;padding:12px 14px;border:var(--border-width) solid color-mix(in srgb,var(--border) 88%,transparent);border-radius:14px;background:var(--surface);color:inherit;font:inherit;cursor:pointer;text-align:left;box-shadow:0 1px 0 color-mix(in srgb,var(--border) 35%,transparent)}
.qv-home-row:hover{border-color:color-mix(in srgb,var(--accent) 25%,var(--border))}
.qv-home-ico{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;background:color-mix(in srgb,var(--accent) 10%,var(--surface));color:var(--accent)}
.qv-home-ico svg{width:16px;height:16px}
.qv-home-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}
.qv-home-label{font-size:11px;color:var(--text-dim)}
.qv-home-val{font-size:var(--text-sm);font-weight:var(--font-weight-medium);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.qv-home-chev{display:flex;transform:rotate(180deg);color:var(--text-dim);opacity:.7}
.qv-home-chev svg{width:16px;height:16px}
.qv-empty{text-align:center;padding:var(--space-5) var(--space-2)}
.qv-empty-title{margin:0 0 var(--space-1);font-size:var(--text-md);font-weight:var(--font-weight-medium)}
.qv-empty-sub{margin:0 0 var(--space-3);font-size:var(--text-sm);color:var(--text-dim)}
.qv-suggest{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:var(--space-3)}
.qv-suggest-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border:var(--border-width) solid var(--border);border-radius:999px;background:var(--surface);font:inherit;font-size:var(--text-xs);font-weight:var(--font-weight-medium);cursor:pointer}
.qv-empty-cta{min-width:140px}
.qv-widgets-kicker{margin:0 0 10px;font-size:10px;font-weight:var(--font-weight-semibold);letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim)}
.qv-com-dash{position:relative;margin:0 0 clamp(14px,2.4vw,20px);border-radius:18px;overflow:hidden;border:1px solid color-mix(in srgb,var(--accent) 22%,var(--border));box-shadow:0 8px 32px color-mix(in srgb,var(--accent) 8%,transparent)}
.qv-com-dash-bg{position:absolute;inset:0;background:
  radial-gradient(ellipse 80% 60% at 100% 0%,color-mix(in srgb,var(--accent) 18%,transparent),transparent 55%),
  radial-gradient(ellipse 50% 40% at 0% 100%,color-mix(in srgb,var(--accent) 8%,transparent),transparent 50%),
  linear-gradient(165deg,color-mix(in srgb,var(--surface-2) 55%,var(--surface)),var(--surface));
  pointer-events:none}
.qv-com-dash-inner{position:relative;padding:clamp(12px,2.2vw,18px);display:flex;flex-direction:column;gap:12px}
.qv-com-dash-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;flex-wrap:wrap}
.qv-com-dash-id{display:flex;align-items:center;gap:10px;min-width:0;flex:1}
.qv-com-avatar{flex-shrink:0;width:48px;height:48px;border-radius:14px;overflow:hidden;display:flex;align-items:center;justify-content:center;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border));background:color-mix(in srgb,var(--accent) 10%,var(--surface));box-shadow:0 2px 12px color-mix(in srgb,var(--accent) 12%,transparent)}
.qv-com-avatar-img{width:100%;height:100%;object-fit:cover}
.qv-com-avatar-init{font-size:14px;font-weight:800;color:color-mix(in srgb,var(--accent) 85%,var(--text))}
.qv-com-dash-titles{min-width:0}
.qv-com-dash-kicker{margin:0 0 2px;font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:color-mix(in srgb,var(--accent) 75%,var(--text-dim))}
.qv-com-dash-name{margin:0;font-size:clamp(1.05rem,2.4vw,1.35rem);font-weight:800;letter-spacing:-.02em;line-height:1.15}
.qv-com-dash-role{margin:2px 0 0;font-size:11px}
.qv-com-dash-link{flex-shrink:0;align-self:flex-start}
.qv-com-dash-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.qv-com-stat{padding:10px 8px;border-radius:12px;text-align:center;background:color-mix(in srgb,var(--surface) 72%,transparent);border:1px solid color-mix(in srgb,var(--border) 70%,transparent);backdrop-filter:blur(4px)}
.qv-com-stat-lbl{display:block;font-size:8px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-dim);margin-bottom:2px}
.qv-com-stat-val{display:block;font-size:15px;font-weight:800;font-variant-numeric:tabular-nums;line-height:1.1}
.qv-com-stat-val .sub{font-size:10px;font-weight:600;color:var(--text-dim)}
.qv-com-stat-bar{display:block;height:3px;margin-top:6px;border-radius:999px;background:color-mix(in srgb,var(--border) 55%,transparent);overflow:hidden}
.qv-com-stat-bar i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 70%,var(--text)),var(--accent))}
.qv-com-dash-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.qv-com-card{padding:10px 11px;border-radius:12px;border:1px solid color-mix(in srgb,var(--border) 72%,transparent);background:color-mix(in srgb,var(--surface) 80%,transparent);min-height:0;display:flex;flex-direction:column;gap:6px}
.qv-com-card--accent{border-color:color-mix(in srgb,var(--accent) 24%,var(--border));background:color-mix(in srgb,var(--accent) 6%,var(--surface))}
.qv-com-card--wide{grid-column:1/-1}
.qv-com-card-kicker{margin:0;font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-dim)}
.qv-com-card-body{font-size:12px;line-height:1.4;color:var(--text);min-height:0}
.qv-com-obj-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.qv-com-obj-list li{padding:6px 8px;border-radius:8px;border:1px solid color-mix(in srgb,var(--accent) 12%,var(--border));background:color-mix(in srgb,var(--accent) 4%,var(--surface))}
.qv-com-obj-list strong{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);margin-bottom:2px}
.qv-com-obj-list p{margin:0;font-size:11px}
.qv-com-task-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;max-height:120px;overflow:auto;-webkit-overflow-scrolling:touch}
.qv-com-task{padding:6px 8px;border-radius:8px;font-size:11px;background:color-mix(in srgb,var(--surface-2) 40%,var(--surface));border:1px solid color-mix(in srgb,var(--border) 65%,transparent)}
.qv-com-task.prog{border-color:color-mix(in srgb,var(--accent) 22%,var(--border))}
.qv-com-task.done{opacity:.55;text-decoration:line-through}
.qv-com-empty{margin:0;font-size:11px}
.qv-com-dash--loading .qv-com-skel{min-height:180px;border-radius:12px;background:linear-gradient(90deg,var(--surface-2) 25%,var(--surface) 50%,var(--surface-2) 75%);background-size:200% 100%;animation:qv-shimmer 1.2s infinite}
@media(max-width:640px){
  .qv-com-dash-grid{grid-template-columns:1fr}
  .qv-com-dash-stats{gap:6px}
  .qv-com-stat{padding:8px 6px}
  .qv-com-stat-val{font-size:13px}
}
.qv-skeleton{aspect-ratio:1;border-radius:16px;background:linear-gradient(90deg,var(--surface-2) 25%,var(--surface) 50%,var(--surface-2) 75%);background-size:200% 100%;animation:qv-shimmer 1.2s infinite}
.qv-sheet-backdrop{position:fixed;inset:0;background:rgba(8,10,16,.42);backdrop-filter:blur(2px);z-index:900}
.qv-sheet{position:fixed;left:0;right:0;bottom:0;z-index:901;max-height:min(78vh,480px);border-radius:18px 18px 0 0;background:var(--surface);box-shadow:0 -12px 40px rgba(0,0,0,.18);display:flex;flex-direction:column;overflow:hidden;padding-bottom:env(safe-area-inset-bottom,0px)}
body.qv-sheet-open{overflow:hidden}
.qv-sheet-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:12px 14px;border-bottom:var(--border-width) solid color-mix(in srgb,var(--border) 80%,transparent);flex-shrink:0}
.qv-sheet-title{font-family:var(--font-ui);font-size:var(--text-sm);font-weight:var(--font-weight-medium);letter-spacing:-.01em}
.qv-sheet-close{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:var(--border-width) solid var(--border);border-radius:10px;background:var(--surface-2);color:var(--text-dim);cursor:pointer;padding:0;flex-shrink:0}
.qv-sheet-close svg{width:16px;height:16px}
.qv-sheet-close:hover{color:var(--text);border-color:color-mix(in srgb,var(--accent) 25%,var(--border))}
.qv-sheet-body{flex:1;overflow:auto;padding:12px 14px 16px;-webkit-overflow-scrolling:touch}
.qv-sheet-body--compact{padding-top:10px}
.qv-sheet-sub{margin:0 0 8px;font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:var(--text-dim);font-weight:var(--font-weight-medium)}
.qv-sheet-sub:not(:first-child){margin-top:12px}
.qv-pick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:10px}
.qv-pick-grid--compact{grid-template-columns:repeat(3,minmax(0,1fr))}
.qv-pick-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:72px;padding:8px 6px;border:var(--border-width) solid color-mix(in srgb,var(--border) 86%,transparent);border-radius:12px;background:var(--surface);font:inherit;font-size:10px;font-weight:var(--font-weight-medium);line-height:1.2;cursor:pointer;text-align:center;transition:border-color .15s ease,background .15s ease}
.qv-pick-tile:hover,.qv-pick-tile:focus-visible{border-color:color-mix(in srgb,var(--accent) 28%,var(--border));background:color-mix(in srgb,var(--accent) 5%,var(--surface));outline:none}
.qv-pick-ico{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:10px;background:color-mix(in srgb,var(--accent) 10%,var(--surface));color:var(--accent)}
.qv-pick-ico svg{width:16px;height:16px}
.qv-pick-tile--entity .qv-pick-ico{background:color-mix(in srgb,#8b5cf6 12%,var(--surface));color:#8b5cf6}
.qv-choice-list{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}
.qv-choice-row{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:var(--border-width) solid color-mix(in srgb,var(--border) 86%,transparent);border-radius:12px;background:var(--surface);font:inherit;text-align:left;cursor:pointer}
.qv-choice-row:hover,.qv-choice-row:focus-visible{border-color:color-mix(in srgb,var(--accent) 25%,var(--border));outline:none}
.qv-choice-row--accent{border-color:color-mix(in srgb,var(--accent) 22%,var(--border));background:color-mix(in srgb,var(--accent) 6%,var(--surface))}
.qv-choice-row--widget{border-color:color-mix(in srgb,var(--accent) 28%,var(--border));background:color-mix(in srgb,var(--accent) 8%,var(--surface))}
.qv-sheet-sub-note{font-weight:400;opacity:.75}
.qv-suggest-btn--widget{border-color:color-mix(in srgb,var(--accent) 30%,var(--border));background:color-mix(in srgb,var(--accent) 8%,var(--surface))}
.qv-choice-ico{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;background:color-mix(in srgb,var(--accent) 10%,var(--surface));color:var(--accent);flex-shrink:0}
.qv-choice-ico svg{width:16px;height:16px}
.qv-choice-text{display:flex;flex-direction:column;gap:1px;min-width:0}
.qv-choice-text strong{font-size:var(--text-sm);font-weight:var(--font-weight-medium)}
.qv-choice-text span{font-size:11px;color:var(--text-dim)}
.qv-sheet-search{margin-bottom:10px;min-height:38px;font-size:var(--text-sm)}
.qv-entity-list{display:flex;flex-direction:column;gap:2px;max-height:min(36vh,220px);overflow:auto;border:var(--border-width) solid color-mix(in srgb,var(--border) 80%,transparent);border-radius:12px;background:color-mix(in srgb,var(--surface-2) 35%,var(--surface))}
.qv-entity-row{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:9px 12px;border:0;border-bottom:var(--border-width) solid color-mix(in srgb,var(--border) 65%,transparent);background:transparent;font:inherit;text-align:left;cursor:pointer}
.qv-entity-row:last-child{border-bottom:0}
.qv-entity-row:hover,.qv-entity-row:focus-visible{background:color-mix(in srgb,var(--accent) 6%,var(--surface))}
.qv-entity-title{font-size:var(--text-sm);font-weight:var(--font-weight-medium)}
.qv-entity-sub{font-size:11px;color:var(--text-dim)}
.qv-note-view-pick{margin-top:10px}
.qv-seg{margin-top:6px}
.qv-home-pick{display:flex;flex-direction:column;gap:4px}
.qv-home-opt{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:10px;cursor:pointer;border:var(--border-width) solid transparent}
.qv-home-opt:hover{background:var(--surface-2)}
.qv-home-opt.is-selected{border-color:color-mix(in srgb,var(--accent) 22%,var(--border));background:color-mix(in srgb,var(--accent) 6%,var(--surface))}
.qv-home-opt input{accent-color:var(--accent);margin:0}
.qv-home-opt-label{flex:1;font-size:var(--text-sm);font-weight:var(--font-weight-medium)}
.qv-home-opt-check{display:flex;color:var(--accent)}
.qv-home-opt-check svg{width:14px;height:14px}
@media(min-width:960px){
  .qv-layout{max-width:min(1040px,calc(100vw - 32px));padding:var(--space-4) 16px calc(var(--space-5) + env(safe-area-inset-bottom,0px))}
  .qv-tile{min-height:132px}
  .qv-grid-hole{min-height:132px}
  .qv-sheet{left:50%;right:auto;bottom:auto;top:50%;transform:translate(-50%,-50%);width:min(480px,calc(100vw - 32px));max-height:min(72vh,560px);border-radius:16px;box-shadow:0 20px 50px rgba(0,0,0,.22)}
  .qv-pick-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(min-width:768px) and (max-width:959px){
  .qv-layout{max-width:min(920px,calc(100vw - 28px))}
}
@media(max-width:767px){
  .qv-grid,.qv-grid--5{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;grid-auto-rows:minmax(96px,auto)}
  .qv-tile--catalog-pick,.qv-tile--tasks-pick,.qv-tile--stats-pick{grid-column:1/-1!important;max-width:100%;min-width:0;width:100%!important}
  .qv-tile--catalog-pick .qv-cat-mount,.qv-tile--catalog-pick .qv-cat-widget,.qv-tile--catalog-pick .qv-cat-body{width:100%;max-width:100%;min-width:0}
  .qv-tile--link{grid-column:span 1!important;width:100%;min-width:0;box-sizing:border-box;flex-direction:column;align-items:flex-start;justify-content:space-between;min-height:100px;padding:10px 10px;gap:6px}
  .qv-tile--link .qv-tile-pin{display:none}
  .qv-tile--link .qv-tile-icon{width:34px;height:34px;border-radius:10px;flex-shrink:0}
  .qv-tile--link .qv-tile-icon svg{width:17px;height:17px}
  .qv-tile--link .qv-tile-text{width:100%;min-width:0;gap:2px}
  .qv-tile--link .qv-tile-label{font-size:var(--qv-fs-s);font-weight:var(--font-weight-semibold);line-height:1.2;-webkit-line-clamp:2}
  .qv-tile--link .qv-tile-sub{font-size:var(--qv-fs-k);line-height:1.2;-webkit-line-clamp:2;display:-webkit-box}
  .qv-grid-hole{min-height:96px;grid-column:1/-1}
  .qv-layout{max-width:100%;padding:var(--space-2) 10px calc(var(--space-4) + env(safe-area-inset-bottom,0px))}
  .qv-edit-btn .qv-edit-lbl{display:none}
  .qv-pick-grid,.qv-pick-grid--compact{grid-template-columns:repeat(2,minmax(0,1fr))}
  .qv-nav-btn{display:inline-flex}
  .qv-tasks-widget{padding:8px 8px 10px}
  .qv-tasks-status-row{display:flex;flex-wrap:nowrap;gap:4px}
  .qv-tasks-status{flex:1;min-width:0;font-size:var(--qv-fs-k);min-height:var(--qv-btn-h-sm);padding:0 4px}
  .qv-tasks-assign-row,.qv-tasks-member-row{grid-template-columns:56px minmax(0,1fr);gap:10px}
  .qv-cat-widget{padding:6px 4px 8px;gap:5px;width:100%}
  .qv-cat-toolbar{gap:6px;padding:0 2px}
  .qv-cat-search{font-size:var(--qv-fs-m);height:var(--qv-btn-h);min-height:var(--qv-btn-h);line-height:var(--qv-btn-h);border-radius:8px}
  .qv-cat-body{min-height:0;width:100%;padding:0}
  .qv-cat-split,.qv-cat-split--dual{grid-template-columns:minmax(0,1fr)!important;gap:6px;overflow:visible;width:100%}
  .qv-cat-pane{width:100%;min-width:0;max-width:100%;box-sizing:border-box}
  .qv-cat-pane--card{width:100%;max-width:100%;border:var(--border-width) solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:8px;background:color-mix(in srgb,var(--surface) 94%,var(--surface-2));padding:8px;box-sizing:border-box;margin:0}
  .qv-cat-pane--pick{width:100%;max-width:100%;padding:8px;border-style:solid;border-color:color-mix(in srgb,var(--border) 65%,transparent);background:color-mix(in srgb,var(--surface-2) 18%,var(--surface));border-radius:8px;box-sizing:border-box}
  .qv-cat-pick-head{padding:0 0 6px}
  .qv-cat-pick-title,.qv-cat-pick-sub{text-align:left}
  .qv-cat-card{gap:6px;align-items:stretch;width:100%;max-width:100%;box-sizing:border-box;padding:0}
  .qv-cat-card-slot-k{text-align:left;font-size:var(--qv-fs-k);margin-bottom:0}
  .qv-cat-card-head{gap:8px;align-items:flex-start;width:100%}
  .qv-cat-thumb,.qv-cat-thumb-ph{width:52px;height:52px;border-radius:8px;flex-shrink:0}
  .qv-cat-card-name{font-size:var(--qv-fs-m);text-align:left;line-height:1.3}
  .qv-cat-card-sku,.qv-cat-card-cat{font-size:var(--qv-fs-k)}
  .qv-cat-card-close{width:32px;height:32px;font-size:16px;border-radius:6px}
  .qv-cat-card-section{align-items:stretch;width:100%;gap:4px}
  .qv-cat-card-section-k{text-align:left;font-size:var(--qv-fs-k);letter-spacing:.05em}
  .qv-cat-card-section--channels .qv-cat-card-section-k{margin-bottom:1px}
  .qv-cat-status-seg--card{width:100%;margin:0;border-radius:6px}
  .qv-cat-status-seg--card .qv-cat-status-opt{flex:1;min-height:var(--qv-btn-h-sm);font-size:var(--qv-fs-k);padding:0 6px}
  .qv-cat-hint{padding:8px 2px;font-size:var(--qv-fs-s)}
  .qv-cat-results:not(.qv-cat-results--compact),.qv-cat-results--compact{grid-template-columns:minmax(0,1fr);gap:6px;width:100%}
  .qv-cat-res{width:100%;max-width:100%;box-sizing:border-box;padding:8px;border-radius:8px}
  .qv-cat-res-main{gap:8px;width:100%}
  .qv-cat-res-thumb{width:44px;height:44px;border-radius:6px;flex-shrink:0}
  .qv-cat-res-name{font-size:var(--qv-fs-s)}
  .qv-cat-res-badges{display:flex;flex-wrap:wrap;align-items:center;gap:4px;width:100%;padding-top:2px}
  .qv-cat-res-badges .qv-cat-status-seg{width:auto;flex:0 1 auto;border-radius:6px}
  .qv-cat-res-badges .qv-cat-status-opt{min-height:24px;padding:0 6px;font-size:var(--qv-fs-k)}
  .qv-cat-res-badges .qv-cat-badge{min-height:24px;height:auto;padding:0 7px;font-size:var(--qv-fs-k);width:auto;flex:0 1 auto}
  .qv-tile--catalog-pick .cat-grid-statuses{display:flex;flex-wrap:wrap;align-items:center;gap:4px;width:100%;padding:0}
  .qv-tile--catalog-pick .cat-grid-statuses .cat-grid-chip,.qv-tile--catalog-pick .cat-grid-statuses .cat-grid-status,.qv-tile--catalog-pick .cat-grid-statuses button.cat-grid-status{width:auto!important;min-width:0;min-height:24px;height:auto;padding:2px 7px;font-size:var(--qv-fs-k);font-weight:700;line-height:1.2;border-radius:5px;justify-content:center;flex:0 0 auto}
  .qv-tile--catalog-pick .cat-grid-stocks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;width:100%;padding:0;align-items:stretch}
  .qv-tile--catalog-pick .cat-grid-reserve-row{display:flex;flex-wrap:wrap;align-items:center;gap:5px;width:100%;padding:0;margin-top:2px}
  .qv-tile--catalog-pick .cat-grid-reserve-row .cat-grid-chip-reserve,.qv-tile--catalog-pick .cat-grid-reserve-row .cat-grid-inline-reserve{flex:1;min-width:0;min-height:var(--qv-btn-h-sm);padding:4px 8px;font-size:var(--qv-fs-k);border-radius:6px;justify-content:center;box-sizing:border-box}
  .qv-tile--catalog-pick .cat-grid-reserve-row .cat-grid-transfer-btn{min-width:var(--qv-icon-btn);min-height:var(--qv-icon-btn);border-radius:6px;font-size:var(--qv-fs-s)}
  .qv-tile--catalog-pick .cat-grid-reserve-row .cat-stock-transfer{flex:0 0 100%;width:100%;margin-top:2px;padding:8px 10px;box-sizing:border-box}
  .qv-tile--catalog-pick .cat-grid-stocks .cat-grid-chip-global,.qv-tile--catalog-pick .cat-grid-stocks .cat-grid-inline-global{grid-column:1/-1;width:100%}
  .qv-tile--catalog-pick .cat-grid-prices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;width:100%;padding:0;align-items:stretch}
  .qv-tile--catalog-pick .cat-grid-prices .cat-grid-chip-global,.qv-tile--catalog-pick .cat-grid-prices .cat-grid-inline-global{display:none!important}
  .qv-tile--catalog-pick .cat-grid-stocks .cat-grid-chip-ch,.qv-tile--catalog-pick .cat-grid-prices .cat-grid-chip-ch,.qv-tile--catalog-pick .cat-grid-stocks .cat-grid-inline-ch,.qv-tile--catalog-pick .cat-grid-prices .cat-grid-inline-ch{width:100%;min-height:var(--qv-btn-h-sm);padding:4px 6px;font-size:var(--qv-fs-k);border-radius:6px;justify-content:center;box-sizing:border-box}
  .qv-tile--catalog-pick .cat-grid-stocks .cat-grid-chip-global,.qv-tile--catalog-pick .cat-grid-stocks .cat-grid-inline-global{min-height:var(--qv-btn-h-sm);padding:4px 8px;font-size:var(--qv-fs-k);border-radius:6px;justify-content:center;box-sizing:border-box}
  .qv-tile--catalog-pick .cat-grid-inline{display:flex;align-items:center;gap:4px}
  .qv-tile--catalog-pick .cat-grid-inline-input{width:100%;flex:1;min-width:0;min-height:var(--qv-btn-h-sm);font-size:var(--qv-fs-m);padding:0 6px;border-radius:5px}
  .qv-tile--catalog-pick .cat-grid-inline-ok,.qv-tile--catalog-pick .cat-grid-inline-x{min-width:var(--qv-icon-btn);min-height:var(--qv-icon-btn);flex-shrink:0;border-radius:6px;font-size:var(--qv-fs-s)}
  .qv-stats-widget{padding:8px 10px 10px;gap:5px;overflow:hidden;max-width:100%}
  .qv-stats-mount{overflow:hidden;max-width:100%}
  .qv-stats-body,.qv-stats-collapsed{overflow:hidden;gap:5px;max-width:100%}
  .qv-stats-period-full{display:none}
  .qv-stats-period-compact{display:inline}
  .qv-stats-types,.qv-stats-periods{gap:3px}
  .qv-stats-type,.qv-stats-period{min-height:var(--qv-btn-h-sm);font-size:var(--qv-fs-k);padding:0 3px;border-radius:5px}
  .qv-stats-ch-btn{min-height:var(--qv-btn-h-sm);font-size:var(--qv-fs-k);padding:0 7px;border-radius:5px;flex-shrink:0}
  .qv-stats-filters{gap:4px}
  .qv-stats-ch-scroll{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;gap:4px;padding:0;max-width:100%;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .qv-stats-ch-scroll::-webkit-scrollbar{display:none}
  .qv-stats-ch-btn{min-height:var(--qv-btn-h-sm);font-size:var(--qv-fs-k);padding:0 7px;flex-shrink:0}
  .qv-stats-slider-wrap{gap:2px;max-width:100%;width:100%}
  .qv-stats-nav{width:28px;min-width:28px;height:28px;font-size:16px;flex-shrink:0;padding:0}
  .qv-stats-slide{padding:0;overflow:hidden;max-width:100%}
  .qv-stats-slide-body{overflow-x:hidden;overflow-y:auto;justify-content:flex-start;padding-top:2px}
  .qv-stats-bar-row{grid-template-columns:minmax(0,1fr) minmax(48px,64px);grid-template-rows:auto auto;gap:3px 6px;min-height:32px;max-width:100%}
  .qv-stats-bar-label{grid-column:1/-1;font-size:var(--qv-fs-k);max-width:100%}
  .qv-stats-bar-track{grid-column:1;height:10px;max-width:100%}
  .qv-stats-bar-val{grid-column:2;grid-row:2;font-size:var(--qv-fs-k);align-self:center;text-align:right}
  .qv-stats-table{font-size:var(--qv-fs-k)}
  .qv-stats-table th,.qv-stats-table td{padding:4px 3px}
  .qv-stats-td-name{max-width:46%}
  .qv-stats-metric-hero-n{font-size:22px}
  .qv-stats-metric-row-n{font-size:15px}
  .qv-stats-pipe-mini-n{font-size:14px}
  .qv-stats-td-n--big{font-size:var(--qv-fs-b)}
  .qv-stats-table--pipeline .qv-stats-tr--total .qv-stats-td-n--big{font-size:var(--qv-fs-h)}
  .qv-stats-body{min-height:0;flex:1 1 auto}
  .qv-stats-chart{gap:6px;padding-bottom:2px}
  .qv-stats-slider-wrap--exp{min-height:0;flex:1 1 auto}
  .qv-wstat-panel--tasks{padding:4px 0 2px}
  .qv-wstat-members{min-height:28px}
  .qv-wstat-top-wrap{margin-top:2px}
}
@media(max-width:380px){
  .qv-tile--link{min-height:96px;padding:9px 8px}
  .qv-stats-period{font-size:var(--qv-fs-k);min-height:var(--qv-btn-h-sm)}
  .qv-stats-nav{width:28px;min-width:28px;height:28px;font-size:16px}
}
.chat-response-wrap{margin-top:4px;padding-top:6px;border-top:1px solid color-mix(in srgb,var(--border) 65%,transparent)}
.chat-response-wrap.hidden{display:none!important}
.chat-response-wrap.is-collapsed .chat-response-body{display:none}
.chat-response-card{display:flex;flex-direction:column;gap:8px;padding:8px 10px;border-radius:var(--radius-sm);border:1px solid color-mix(in srgb,var(--accent) 16%,var(--border));background:linear-gradient(165deg,color-mix(in srgb,var(--surface) 94%,var(--accent) 6%),color-mix(in srgb,var(--surface-2) 55%,var(--surface)));box-shadow:inset 0 1px 0 color-mix(in srgb,#fff 8%,transparent)}
.chat-response-wrap:not(.is-enabled) .chat-response-body{opacity:.72}
.chat-response-wrap.is-enabled .chat-response-card{border-color:color-mix(in srgb,var(--accent) 32%,var(--border));background:linear-gradient(165deg,color-mix(in srgb,var(--surface) 88%,var(--accent) 12%),color-mix(in srgb,var(--surface) 96%,var(--surface-2)));box-shadow:0 1px 10px color-mix(in srgb,var(--accent) 8%,transparent),inset 0 1px 0 color-mix(in srgb,#fff 10%,transparent)}
.chat-response-head{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:nowrap;min-width:0}
.chat-response-head-toggle{display:inline-flex;align-items:center;gap:6px;min-width:0;flex:1;padding:0;margin:0;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}
.chat-response-head-toggle:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:var(--radius-sm)}
.chat-response-chevron{width:10px;height:10px;flex-shrink:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 10 10'%3E%3Cpath fill='none' stroke='%23888' stroke-width='1.5' stroke-linecap='round' d='M2 3.5 5 6.5 8 3.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;background-size:10px;transition:transform .18s}
html[data-theme="dark"] .chat-response-chevron{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 10 10'%3E%3Cpath fill='none' stroke='%23bbb' stroke-width='1.5' stroke-linecap='round' d='M2 3.5 5 6.5 8 3.5'/%3E%3C/svg%3E")}
.chat-response-wrap:not(.is-collapsed) .chat-response-chevron{transform:rotate(180deg)}
.chat-response-head-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}
.chat-response-ico{display:inline-flex;align-items:center;justify-content:center;width:1.35rem;height:1.35rem;border-radius:999px;background:color-mix(in srgb,var(--accent) 14%,var(--surface));color:color-mix(in srgb,var(--accent) 88%,var(--text));font-size:11px;font-weight:700;line-height:1;flex-shrink:0}
.chat-response-title{font-size:var(--text-xs);font-weight:700;color:var(--text);letter-spacing:.01em;white-space:nowrap}
.chat-response-status{font-size:10px;font-weight:600;padding:2px 7px;border-radius:999px;background:color-mix(in srgb,var(--text-dim) 12%,var(--surface));color:var(--text-dim);white-space:nowrap;line-height:1.3}
.chat-response-status.is-on{background:color-mix(in srgb,var(--accent) 16%,var(--surface));color:color-mix(in srgb,var(--accent) 90%,var(--text))}
.chat-response-status.is-working{background:color-mix(in srgb,var(--accent) 22%,var(--surface));color:var(--accent);animation:chat-resp-pulse 1.4s ease-in-out infinite}
.chat-response-used{font-size:10px;color:var(--text-dim);font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}
.chat-response-used.is-limit{color:var(--warning,#d97706)}
.chat-response-toggle{display:inline-flex;align-items:center;gap:6px;cursor:pointer;user-select:none;flex-shrink:0}
.chat-response-toggle input{position:absolute;opacity:0;width:0;height:0;pointer-events:none}
.chat-response-toggle-track{position:relative;width:2rem;height:1.15rem;border-radius:999px;background:color-mix(in srgb,var(--border) 70%,var(--surface-2));border:1px solid color-mix(in srgb,var(--border) 85%,transparent);transition:background .18s,border-color .18s;flex-shrink:0}
.chat-response-toggle-thumb{position:absolute;top:50%;left:2px;width:.85rem;height:.85rem;border-radius:50%;background:#fff;box-shadow:0 1px 3px color-mix(in srgb,#000 18%,transparent);transform:translateY(-50%);transition:transform .18s}
.chat-response-toggle input:checked+.chat-response-toggle-track{background:color-mix(in srgb,var(--accent) 78%,#fff 22%);border-color:color-mix(in srgb,var(--accent) 65%,var(--border))}
.chat-response-toggle input:checked+.chat-response-toggle-track .chat-response-toggle-thumb{transform:translate(11px,-50%)}
.chat-response-toggle-lbl{font-size:10px;font-weight:600;color:var(--text-dim);letter-spacing:.02em}
.chat-response-toggle input:checked~.chat-response-toggle-lbl{color:color-mix(in srgb,var(--accent) 85%,var(--text))}
.chat-response-body{display:flex;flex-direction:column;gap:8px;min-width:0}
.chat-response-grid{display:grid;grid-template-columns:minmax(0,1fr) 4.5rem;gap:8px;align-items:end;min-width:0}
.chat-response-field{display:flex;flex-direction:column;gap:4px;min-width:0;margin:0}
.chat-response-field-compact{min-width:0}
.chat-response-field-label{font-size:10px;font-weight:600;color:var(--text-dim);letter-spacing:.04em;text-transform:uppercase;line-height:1.2}
.chat-response-field-hint{font-style:normal;font-weight:500;text-transform:none;letter-spacing:0;color:color-mix(in srgb,var(--text-dim) 88%,var(--accent))}
.chat-response-select,.chat-response-max{width:100%;min-height:2rem;padding:0 8px;font:inherit;font-size:var(--text-xs);color:var(--text);border:1px solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:var(--radius-sm);background:var(--surface);box-sizing:border-box;transition:border-color .15s,box-shadow .15s;-webkit-appearance:none;appearance:none}
.chat-response-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='none' stroke='%23888' stroke-width='1.5' stroke-linecap='round' d='M3 4.5 6 7.5 9 4.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;background-size:12px;padding-right:26px}
html[data-theme="dark"] .chat-response-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='none' stroke='%23aaa' stroke-width='1.5' stroke-linecap='round' d='M3 4.5 6 7.5 9 4.5'/%3E%3C/svg%3E")}
.chat-response-select:focus-visible,.chat-response-max:focus-visible,.chat-response-instruction:focus-visible{outline:none;border-color:color-mix(in srgb,var(--accent) 45%,var(--border));box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 16%,transparent)}
.chat-response-max{text-align:center;font-variant-numeric:tabular-nums;padding:0 4px}
.chat-response-instr{display:flex;flex-direction:column;gap:4px;margin:0;min-width:0}
.chat-response-instruction{width:100%;min-height:2.75rem;max-height:5.5rem;padding:7px 9px;font:inherit;font-size:var(--text-xs);line-height:1.45;color:var(--text);border:1px solid color-mix(in srgb,var(--border) 78%,transparent);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--surface) 96%,var(--bg));resize:none;box-sizing:border-box;transition:border-color .15s,box-shadow .15s,background .15s}
.chat-response-instruction::placeholder{color:color-mix(in srgb,var(--text-dim) 78%,transparent);font-style:italic}
.chat-response-instruction:not(:placeholder-shown){border-color:color-mix(in srgb,var(--accent) 28%,var(--border));background:var(--surface)}
.chat-response-badge{display:inline-block;font-size:10px;font-weight:600;padding:2px 7px;border-radius:999px;background:color-mix(in srgb,var(--accent) 14%,var(--surface));color:color-mix(in srgb,var(--accent) 88%,var(--text));line-height:1.3}
.msg.user .chat-response-badge{margin-bottom:4px}
@media(max-width:520px){
  .chat-response-card{padding:7px 8px;gap:6px}
  .chat-response-grid{grid-template-columns:1fr;gap:6px}
  .chat-response-field-compact{width:100%}
  .chat-response-head-actions{gap:6px}
  .chat-response-toggle-lbl{display:none}
}
