/* Shared control contract. Preview artwork, semantic tints and drag geometry stay local. */
:root{
  --ui-canvas:#000;--ui-sidebar:#0b0b0b;--ui-panel:#111;--ui-raised:#191919;
  --ui-hover:#222;--ui-selected:#2b2b2b;--ui-text:#ededed;--ui-muted:#a0a0a0;--ui-faint:#777;
  --ui-border:#292929;--ui-border-hover:#3a3a3a;--ui-focus:#858585;
  --ui-primary:#1a23ce;--ui-primary-hover:#3039dc;--ui-danger:#e29a9a;--ui-danger-bg:#382020;
  --ui-radius:6px;--ui-panel-radius:8px;--ui-control:34px;--ui-field:38px;
  --ui-fast:120ms;--ui-motion:160ms;--ui-ease:cubic-bezier(.2,.7,.2,1);
  --ui-menu-shadow:0 14px 40px #0008;
  --bg:var(--ui-canvas);--bg2:var(--ui-sidebar);--panel:var(--ui-panel);--panel2:var(--ui-raised);--panel3:var(--ui-hover);
  --border:var(--ui-border);--border2:var(--ui-border-hover);--text:var(--ui-text);--text2:var(--ui-muted);--text3:var(--ui-faint);
  --ml-panel:var(--ui-panel);--ml-panel-raised:var(--ui-raised);--ml-panel-hover:var(--ui-hover);
  --ds-surface:var(--ui-panel);--ds-raised:var(--ui-raised);--ds-hover:var(--ui-hover);--ds-text:var(--ui-text);--ds-muted:var(--ui-muted);--ds-faint:var(--ui-faint);
  --control-h:var(--ui-control);--control-h-sm:var(--ui-control);--control-r:var(--ui-radius);
  --control-bg:var(--ui-raised);--control-bg-hover:var(--ui-hover);--control-bg-active:var(--ui-selected);
  --control-border:var(--ui-border);--control-border-hover:var(--ui-border-hover);--control-text:var(--ui-muted);--control-text-hover:var(--ui-text);
  --menu-bg:var(--ui-raised);--menu-shadow:var(--ui-menu-shadow);
  --ml-field-focus-border:var(--ui-focus);--ml-field-focus-surface:var(--ui-raised);
}
body.light{
  --ui-canvas:#fff;--ui-sidebar:#f6f6f6;--ui-panel:#f5f5f5;--ui-raised:#eee;--ui-hover:#e4e4e4;--ui-selected:#d8d8d8;
  --ui-text:#202020;--ui-muted:#555;--ui-faint:#6a6a6a;--ui-border:#d4d4d4;--ui-border-hover:#aaa;--ui-focus:#666;
  --ui-danger:#ac3333;--ui-danger-bg:#fbeaea;--ui-menu-shadow:0 14px 40px #0002;
  --ml-field-focus-border:var(--ui-focus);--ml-field-focus-surface:var(--ui-raised);
}
body:not(.light) :is(.main,.content,.topbar,.tfbar){background-color:var(--ui-canvas)}
body:not(.light) aside.sb{background:var(--ui-sidebar)!important;border-right:0!important}
body:not(.light) .sbaccount{background:transparent!important;box-shadow:none!important}

/* Commands: one height, typography and feedback, with primary/destructive exceptions below. */
body :is(.gbtn,.addbtn,.bsave,.bghst,.boutl,.bcanc,.bdel,.workspace-add,.workspace-task-primary,.workspace-task-secondary,
  .operation-add,.operation-primary,.operation-secondary,.goal-add,.goal-primary,.goal-secondary,
  .activity-button,.access-save,.access-quickbtn,.talent-create-btn,.talent-save-btn,.talent-mini-btn,
  .mockups-btn,.mockups-search-btn,.mockups-settings-btn,.mockups-history-trigger,.health-refresh,
  .task-board-new,.task-board-archive,.home-new-task,.home-card-link,.li-btn,.saved-primary,.saved-quiet){
  box-sizing:border-box;height:var(--ui-control)!important;min-height:var(--ui-control)!important;
  padding:0 12px!important;border:1px solid transparent!important;border-radius:var(--ui-radius)!important;
  background:var(--ui-raised)!important;color:var(--ui-muted)!important;box-shadow:none!important;
  font-family:Geist,Arial,sans-serif;font-size:12px!important;font-weight:500!important;line-height:1.2!important;letter-spacing:0!important;
  display:inline-flex;align-items:center;justify-content:center;gap:7px;max-width:100%;
  transition:background-color var(--ui-fast) var(--ui-ease),color var(--ui-fast) var(--ui-ease),border-color var(--ui-fast) var(--ui-ease)!important;
}
body :is(.gbtn,.addbtn,.bsave,.bghst,.boutl,.bcanc,.bdel,.workspace-add,.workspace-task-primary,.workspace-task-secondary,
  .operation-add,.operation-primary,.operation-secondary,.goal-add,.goal-primary,.goal-secondary,.activity-button,.access-save,
  .access-quickbtn,.talent-create-btn,.talent-save-btn,.talent-mini-btn,.mockups-btn,.mockups-search-btn,.mockups-settings-btn,
  .mockups-history-trigger,.health-refresh,.task-board-new,.task-board-archive,.home-new-task,.home-card-link,.li-btn,.saved-primary,.saved-quiet):enabled:hover{
  background:var(--ui-hover)!important;color:var(--ui-text)!important;transform:none!important;filter:none!important;
}
body :is(.gbtn:not(.subtle),.addbtn,.bsave,.workspace-add,.workspace-task-primary,.operation-add,.operation-primary,
  .goal-add,.goal-primary,.activity-button.primary,.access-save,.talent-create-btn,.talent-save-btn,
  .mockups-btn.primary,.task-board-new,.home-new-task,.li-btn[data-primary],.saved-primary){background:var(--ui-primary)!important;color:#fff!important}
body :is(.gbtn:not(.subtle),.addbtn,.bsave,.workspace-add,.workspace-task-primary,.operation-add,.operation-primary,
  .goal-add,.goal-primary,.activity-button.primary,.access-save,.talent-create-btn,.talent-save-btn,
  .mockups-btn.primary,.task-board-new,.home-new-task,.li-btn[data-primary],.saved-primary):enabled:hover{background:var(--ui-primary-hover)!important;color:#fff!important}
body :is(.bdel,.li-btn[data-action="delete"],.li-btn[data-action="remove-media"],.li-btn[data-action="delete-version"],.activity-icon-button.danger){color:var(--ui-danger)!important;background:transparent!important}
body :is(.bdel,.li-btn[data-action="delete"],.li-btn[data-action="remove-media"],.li-btn[data-action="delete-version"],.activity-icon-button.danger):enabled:hover{color:var(--ui-danger)!important;background:var(--ui-danger-bg)!important}

/* Square toolbar buttons; avatars, swatches and tiny attachment actions retain their geometry. */
body :is(.zbtn,.rbtn,.thtogbtn,.themetog,.sbtog,.mx,.mclose,.task-mclose,.goal-close,.operation-close,
  .activity-icon-button,.access-refresh,.seldeselect,.mockups-search-clear,.mockups-settings-btn,.saved-tools .saved-icon,
  .li-editor-top .li-icon-btn,.li-library-heading .li-icon-btn,.li-search-row .li-icon-btn,.li-menu>summary){
  display:inline-flex;align-items:center;justify-content:center;width:var(--ui-control)!important;min-width:var(--ui-control)!important;
  height:var(--ui-control)!important;min-height:var(--ui-control)!important;padding:0!important;flex:none;
  border:0!important;border-radius:var(--ui-radius)!important;background:transparent!important;color:var(--ui-muted)!important;box-shadow:none!important;
  transition:background-color var(--ui-fast),color var(--ui-fast)!important;
}
body :is(.zbtn,.rbtn,.thtogbtn,.themetog,.sbtog,.mx,.mclose,.task-mclose,.goal-close,.operation-close,
  .activity-icon-button,.access-refresh,.seldeselect,.mockups-search-clear,.mockups-settings-btn,.saved-tools .saved-icon,
  .li-editor-top .li-icon-btn,.li-library-heading .li-icon-btn,.li-search-row .li-icon-btn,.li-menu>summary):not(:disabled):hover{background:var(--ui-hover)!important;color:var(--ui-text)!important;transform:none!important}

/* Segments retain their selected surface on hover. Their children never resize the group. */
body :is(.workspace-tabs,.operations-tabs,.goals-tabs,.activity-tabs,.analytics-range,.workspace-task-filters,
  .mockups-mode-segment,.li-buckets,.saved-tabs,.home-private-tabs,.client360-tabs){
  display:flex;align-items:center;gap:3px!important;padding:3px!important;border:0!important;border-radius:8px!important;
  min-height:36px;background:var(--ui-panel)!important;box-shadow:none!important;
}
body :is(.workspace-tabs,.operations-tabs,.goals-tabs,.activity-tabs,.analytics-range,.workspace-task-filters,
  .mockups-mode-segment,.li-buckets,.saved-tabs,.home-private-tabs,.client360-tabs)>button{
  height:30px!important;min-height:30px!important;width:auto!important;min-width:max-content;flex-shrink:0;padding:0 11px!important;border:0!important;border-radius:5px!important;
  background:transparent!important;color:var(--ui-muted)!important;font:500 12px/1.2 Geist,Arial,sans-serif!important;
  letter-spacing:0!important;box-shadow:none!important;transform:none!important;transition:background-color var(--ui-fast),color var(--ui-fast)!important;
}
body :is(.workspace-tabs,.operations-tabs,.goals-tabs,.activity-tabs,.analytics-range,.workspace-task-filters,
  .mockups-mode-segment,.li-buckets,.saved-tabs,.home-private-tabs,.client360-tabs)>button:enabled:hover{background:var(--ui-hover)!important;color:var(--ui-text)!important}
body :is(.workspace-tabs,.operations-tabs,.goals-tabs,.activity-tabs,.analytics-range,.workspace-task-filters,
  .mockups-mode-segment,.li-buckets,.saved-tabs,.home-private-tabs,.client360-tabs)>button:not(:disabled):is(.on,[aria-pressed="true"],[aria-selected="true"]){background:var(--ui-selected)!important;color:var(--ui-text)!important}

/* Text fields: one neutral focus treatment; composite searches get exactly one outline. */
body :is(.field,.goal-field,.operation-field,.talent-field,.workspace-task-field,.mockups-modal-grid,.li-popover,.saved-dialog) :is(input:not([type="checkbox"]):not([type="radio"]):not([type="color"]):not([type="range"]):not([type="file"]):not([type="hidden"]),textarea,select),
body :is(.mockups-select,.analytics-header-controls select,.crm-filters select){
  box-sizing:border-box;min-height:var(--ui-field)!important;border:1px solid var(--ui-border)!important;border-radius:var(--ui-radius)!important;
  padding:8px 10px!important;background-color:var(--ui-raised)!important;color:var(--ui-text)!important;
  font:400 13px/1.4 Geist,Arial,sans-serif!important;letter-spacing:0!important;box-shadow:none!important;
}
body :is(.field,.goal-field,.operation-field,.talent-field,.workspace-task-field,.mockups-modal-grid,.li-popover,.saved-dialog) :is(input,textarea,select):focus,
body :is(.mockups-select,.analytics-header-controls select,.crm-filters select):focus{border-color:var(--ui-focus)!important;outline:0!important;box-shadow:none!important;caret-color:var(--ui-text)!important}
body :is(.sbox,.workspace-search,.task-board-search,.saved-search,.li-search,.saved-import,.mockups-import-input-wrap){
  border:1px solid transparent!important;border-radius:var(--ui-radius)!important;background:var(--ui-panel)!important;color:var(--ui-faint)!important;box-shadow:none!important;
  transition:background-color var(--ui-fast),border-color var(--ui-fast)!important;
}
body :is(.sbox,.workspace-search,.task-board-search,.saved-search,.li-search,.saved-import,.mockups-import-input-wrap):focus-within{border-color:var(--ui-focus)!important;background:var(--ui-raised)!important;outline:0!important;box-shadow:none!important}
body :is(.sbox,.workspace-search,.task-board-search,.saved-search,.li-search,.saved-import,.mockups-import-input-wrap) input,
body :is(.sbox,.workspace-search,.task-board-search,.saved-search,.li-search,.saved-import,.mockups-import-input-wrap) input:focus{
  border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;color:var(--ui-text)!important;caret-color:var(--ui-text)!important;
}
body :is(.task-title-inp,.task-notes-inp,.li-body):focus{caret-color:var(--ui-text)!important}

/* Menus, calendars and dialogs share surfaces, not content-specific layouts. */
body :is(.ctxmenu,.li-context,.li-popover,.mockups-age-menu,.mockups-history-menu,.client-channel-results,.ui-choice-popover){
  border:1px solid var(--ui-border)!important;border-radius:var(--ui-panel-radius)!important;background:var(--ui-raised)!important;
  color:var(--ui-text);box-shadow:var(--ui-menu-shadow)!important;backdrop-filter:none!important;
}
body :is(.ctxmenu-item,.mockups-age-option,.li-context-actions>.li-btn,.li-context>.li-btn,.ui-choice-option){
  min-height:34px!important;padding:7px 10px!important;border:0!important;border-radius:var(--ui-radius)!important;
  background:transparent!important;color:var(--ui-muted)!important;box-shadow:none!important;font:500 12px/1.4 Geist,Arial,sans-serif!important;letter-spacing:0!important;
}
body :is(.ctxmenu-item,.mockups-age-option,.li-context-actions>.li-btn,.li-context>.li-btn,.ui-choice-option):not(:disabled):is(:hover,:focus-visible,[data-active="true"]){background:var(--ui-hover)!important;color:var(--ui-text)!important;transform:none!important}
body .ctxmenu-item.danger{color:var(--ui-danger)!important}body .ctxmenu-item.danger:hover{background:var(--ui-danger-bg)!important}
body :is(.li-context,.li-context-actions)>.li-btn:is([data-action="delete"],[data-action="delete-version"]){color:var(--ui-danger)!important}
body :is(.li-context,.li-context-actions)>.li-btn:is([data-action="delete"],[data-action="delete-version"]):enabled:hover{background:var(--ui-danger-bg)!important}
body .li-review-thread .li-review-actions>.li-btn{width:28px!important;min-width:28px!important;height:28px!important;min-height:28px!important;padding:0!important;font-size:0!important;gap:0!important;flex:none;background:transparent!important}
body .li-review-thread .li-review-actions>.li-btn:enabled:hover{background:var(--ui-hover)!important}
body :is(.modal,.mmod,.task-modal,.goal-modal,.operations-modal,.workspace-task-modal,.confbox,.saved-dialog,.mockups-settings-modal){
  border:1px solid var(--ui-border)!important;border-radius:var(--ui-panel-radius)!important;background:var(--ui-panel)!important;box-shadow:0 24px 70px #0009!important;
  transition:opacity var(--ui-motion) var(--ui-ease),transform var(--ui-motion) var(--ui-ease)!important;
}
body :is(.mhead,.mfoot,.task-mhead,.task-mfoot,.goal-modal-head,.goal-modal-foot,.operation-modal-head,.operation-modal-foot){background:transparent!important;border-color:transparent!important}
body :is(.home-card,.project-row,.goal-card,.access-card,.health-row,.trash-row,.saved-inspiration .saved-card){border-radius:var(--ui-panel-radius)!important;background-color:var(--ui-panel)!important;box-shadow:none!important}
body :is(.li-library,.mockups-panel:not(.preview)){border-radius:var(--ui-panel-radius)!important}
body .task-date-pop{border-color:var(--ui-border)!important;border-radius:8px!important;background:var(--ui-raised)!important;box-shadow:var(--ui-menu-shadow)!important}
body .task-date-cell{border-radius:5px!important;transition:background-color var(--ui-fast),color var(--ui-fast)!important}
body .task-date-cell:not(:disabled):hover{background:var(--ui-hover)!important;color:var(--ui-text)!important}
body .task-date-cell:is(.sel,.active,[aria-pressed="true"]){background:var(--ui-primary)!important;color:#fff!important}

/* Keyboard focus and disabled states are independent of mouse hover. */
body :is(button,summary,[role="button"]):focus-visible{outline:2px solid var(--ui-focus)!important;outline-offset:2px!important;box-shadow:none!important}
body :is(button,summary,[role="button"]):active:not(:disabled){filter:none}
body button:is(:disabled,[aria-disabled="true"]){opacity:.45!important;cursor:not-allowed!important;transform:none!important;filter:none!important}
body :is(input,textarea,select):disabled{opacity:.5!important;cursor:not-allowed!important}
body :is(button,summary){-webkit-tap-highlight-color:transparent}
body :is(.ctxmenu.on,.li-context,.ui-choice-popover:popover-open){animation:ui-menu-in var(--ui-fast) var(--ui-ease)}
@keyframes ui-menu-in{from{opacity:0}to{opacity:1}}
.ui-choice-popover{position:fixed;inset:auto;margin:0;padding:5px;max-width:calc(100vw - 24px);max-height:320px;overflow:auto;overscroll-behavior:contain;z-index:1000}
.ui-choice-popover::backdrop{background:transparent}
.ui-choice-option{display:flex;width:100%;align-items:center;gap:10px;text-align:left;cursor:pointer}
.ui-choice-option>span{min-width:0;flex:1;overflow-wrap:anywhere}.ui-choice-option>b{width:16px;flex:none;text-align:center;font-weight:500}
.ui-choice-group{padding:8px 10px 4px;font-size:11px;color:var(--ui-faint)}
.ui-choice-calendar{width:286px;padding:12px}.ui-choice-calendar .task-date-pop{position:static!important;display:block!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:none!important;border:0!important;box-shadow:none!important;width:100%!important;padding:0!important}
.ui-choice-calendar .task-date-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;min-height:0}.ui-choice-calendar .task-date-cell{width:100%;height:32px;min-height:32px;padding:0;border:0;background:transparent;color:var(--ui-text);font-size:12px;cursor:pointer}
.ui-choice-calendar .task-date-cell.muted{color:var(--ui-faint)}.ui-choice-calendar .task-date-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.ui-choice-calendar .task-date-month{font-size:13px;letter-spacing:0}.ui-choice-calendar .task-date-nav{width:30px;height:30px;border:0;border-radius:5px;background:transparent;color:var(--ui-muted);cursor:pointer}.ui-choice-calendar .task-date-weekdays{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;margin-bottom:6px;color:var(--ui-faint);font-size:10px}
.ui-choice-calendar .ui-choice-clear{margin-top:8px}
@media(pointer:coarse){:root{--ui-control:40px;--ui-field:44px}body :is(.ctxmenu-item,.mockups-age-option,.ui-choice-option){min-height:44px!important}body :is(.workspace-tabs,.operations-tabs,.goals-tabs,.activity-tabs,.analytics-range,.workspace-task-filters,.mockups-mode-segment,.li-buckets,.saved-tabs,.home-private-tabs,.client360-tabs)>button{min-height:36px!important;height:36px!important}}
@media(max-width:820px){body :is(.field,.goal-field,.operation-field,.talent-field,.workspace-task-field,.mockups-modal-grid,.li-popover,.saved-dialog) :is(input,textarea,select){font-size:16px!important}}
@media(prefers-reduced-motion:reduce){:root{--ui-fast:0ms;--ui-motion:0ms}body :is(.panel.on,.ctxmenu.on,.li-context,.ui-choice-popover,.li-post,.saved-card,.modal,.mmod,.task-modal,.goal-modal,.operations-modal,.workspace-task-modal,.confbox,.saved-dialog){animation:none!important;transition:none!important}}
