/* Inter 4.1, SIL OFL 1.1 — assets/fonts/README.md. One variable file serves «Inter» and «Inter Display»: the opsz axis (14–32) picks the display forms for large sizes. */
@font-face{font-family:"Inter";font-style:normal;font-weight:400 700;font-display:swap;src:url("../assets/fonts/InterVariable.woff2") format("woff2-variations"),url("../assets/fonts/InterVariable.woff2") format("woff2")}
@font-face{font-family:"Inter Display";font-style:normal;font-weight:400 700;font-display:swap;src:url("../assets/fonts/InterVariable.woff2") format("woff2-variations"),url("../assets/fonts/InterVariable.woff2") format("woff2")}
/* Metric-compatible stand-in while the file loads: Arial adjusted to Inter's metrics, so the swap moves nothing. */
@font-face{font-family:"Inter Fallback";src:local("Arial");size-adjust:107.4%;ascent-override:90.2%;descent-override:22.48%;line-gap-override:0%}
/* Generated from tokens/semantic.json. */
:root{
  --iq-font: "Inter", "Inter Fallback", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --iq-display: "Inter Display", "Inter", "Inter Fallback", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --iq-mono: ui-monospace, "SFMono-Regular", Consolas, monospace;
  --iq-radius-xs: 5px;
  --iq-radius-sm: 9px;
  --iq-radius-md: 16px;
  --iq-radius-lg: 24px;
  --iq-radius-pill: 999px;
  --iq-control-sm: 36px;
  --iq-control-md: 44px;
  --iq-control-lg: 52px;
  --iq-motion-instant: 0ms;
  --iq-motion-fast: 120ms;
  --iq-motion-standard: 180ms;
  --iq-motion-enter: 280ms;
  --iq-motion-layout: 360ms;
  --iq-motion-scene: 800ms;
  --iq-ease: cubic-bezier(.2,.7,.2,1);
  --iq-ease-spring: cubic-bezier(.16,1,.3,1);
  --iq-ease-out: cubic-bezier(.4,0,1,1);
  --iq-loading-delay: 180ms;
  --iq-loading-slow: 5000ms;
  --iq-grid-columns: 12;
  --iq-grid-gutter: 24px;
  --iq-grid-max: 1280px;
  --iq-grid-margin: clamp(20px, 4.45vw, 80px);
  --iq-space-1: 4px;
  --iq-space-2: 8px;
  --iq-space-3: 12px;
  --iq-space-4: 16px;
  --iq-space-5: 20px;
  --iq-space-6: 24px;
  --iq-space-8: 32px;
  --iq-space-10: 40px;
  --iq-space-12: 48px;
  --iq-space-16: 64px;
  --iq-space-20: 80px;
  --iq-space-24: 96px;
  --iq-space-32: 128px;
  --iq-avatar-size-xs: var(--iq-space-5);
  --iq-avatar-size-sm: var(--iq-space-6);
  --iq-avatar-size-md: 28px;
  --iq-avatar-size-base: var(--iq-space-8);
  --iq-avatar-size-lg: var(--iq-space-10);
  --iq-avatar-size-xl: var(--iq-space-12);
  --iq-avatar-initials: 0.37;
  --iq-avatar-initials-weight: 550;
  --iq-work-compact-padding: var(--iq-space-6);
  --iq-work-compact-gap: var(--iq-space-3);
  --iq-work-compact-title: 24px;
  --iq-work-compact-row: 56px;
  --iq-work-comfortable-padding: var(--iq-space-8);
  --iq-work-comfortable-gap: var(--iq-space-6);
  --iq-work-comfortable-title: 30px;
  --iq-work-comfortable-row: 72px;
  --iq-type-display-size: 4rem;
  --iq-type-display-weight: 500;
  --iq-type-display-lineHeight: 1.1;
  --iq-type-display-letterSpacing: var(--iq-tracking-display);
  --iq-type-heading1-size: 2.75rem;
  --iq-type-heading1-weight: 500;
  --iq-type-heading1-lineHeight: 1.15;
  --iq-type-heading1-letterSpacing: var(--iq-tracking-h1);
  --iq-type-heading2-size: 2rem;
  --iq-type-heading2-weight: 500;
  --iq-type-heading2-lineHeight: 1.2;
  --iq-type-heading2-letterSpacing: var(--iq-tracking-h2);
  --iq-type-heading3-size: 1.375rem;
  --iq-type-heading3-weight: 500;
  --iq-type-heading3-lineHeight: 1.3;
  --iq-type-heading3-letterSpacing: var(--iq-tracking-h3);
  --iq-type-lead-size: 1.25rem;
  --iq-type-lead-weight: 400;
  --iq-type-lead-lineHeight: 1.55;
  --iq-type-lead-letterSpacing: var(--iq-tracking-h3);
  --iq-type-body-size: 1rem;
  --iq-type-body-weight: 400;
  --iq-type-body-lineHeight: 1.6;
  --iq-type-body-letterSpacing: var(--iq-tracking-body);
  --iq-type-interface-size: .875rem;
  --iq-type-interface-weight: 400;
  --iq-type-interface-lineHeight: 1.5;
  --iq-type-interface-letterSpacing: var(--iq-tracking-body);
  --iq-type-label-size: .8125rem;
  --iq-type-label-weight: 500;
  --iq-type-label-lineHeight: 1.45;
  --iq-type-label-letterSpacing: var(--iq-tracking-body);
  --iq-type-caption-size: .75rem;
  --iq-type-caption-weight: 400;
  --iq-type-caption-lineHeight: 1.5;
  --iq-type-caption-letterSpacing: var(--iq-tracking-body);
  --iq-type-meta-size: .75rem;
  --iq-type-meta-weight: 500;
  --iq-type-meta-lineHeight: 1.35;
  --iq-type-meta-letterSpacing: var(--iq-tracking-caps);
  --iq-type-title-size: 1.125rem;
  --iq-type-title-weight: 500;
  --iq-type-title-lineHeight: 1.3;
  --iq-type-title-letterSpacing: var(--iq-tracking-h3);
  --iq-tracking-display: -0.028em;
  --iq-tracking-h1: -0.024em;
  --iq-tracking-h2: -0.018em;
  --iq-tracking-h3: -0.012em;
  --iq-tracking-body: 0;
  --iq-tracking-caps: .06em;
  --iq-choice-light-canvas: #FFFFFF;
  --iq-choice-light-panel: #F0F1F4;
  --iq-choice-light-line: #D6D9E0;
  --iq-choice-dark-canvas: #1B1D22;
  --iq-choice-dark-panel: #343842;
  --iq-choice-dark-line: #656B78;
  --iq-canvas: #FFFFFF;
  --iq-surface: #F5F5F7;
  --iq-raised: #FFFFFF;
  --iq-recessed: #EBEDF0;
  --iq-ink: #1D1D1F;
  --iq-muted: #62646B;
  --iq-subtle: #676A72;
  --iq-line: #DDDFE3;
  --iq-control: #81858D;
  --iq-field-line: #81858D;
  --iq-accent: #2453CC;
  --iq-accent-fill: #2453CC;
  --iq-accent-soft: #EDF2FF;
  --iq-on-accent: #FFFFFF;
  --iq-focus: #2453CC;
  --iq-focus-halo: #FFFFFF;
  --iq-primary: #1D1D1F;
  --iq-on-primary: #FFFFFF;
  --iq-success: #177B5B;
  --iq-success-bg: #E6F6EF;
  --iq-warning: #934900;
  --iq-warning-bg: #FFF3DF;
  --iq-danger: #D51C38;
  --iq-danger-bg: #FFF0F2;
  --iq-info: #175BCD;
  --iq-info-bg: #E9F1FF;
  --iq-shadow-color: #13171C14;
  --iq-shadow-1: 0 1px 3px #00000008;
  --iq-shadow-2: 0 8px 24px #00000012;
  --iq-shadow-3: 0 24px 72px #00000024;
  --iq-raised-edge: #CDD0D5;
  --iq-secondary-fill: #FFFFFF;
  --iq-secondary-hover-fill: #F5F5F7;
  --iq-on-white: #1D1D1F;
  --iq-white-hover: #ECEEF1;
  --iq-on-accent-line: #FFFFFF40;
  --iq-scrim: #11151D66;
  --iq-scrim-strong: #08080BCD;
  --iq-shadow-color-soft: #00000008;
  --iq-shadow-color-strong: #00000024;
  --iq-shadow-color-deep: #00000070;
  --iq-document-bed: #ECECEF;
  --iq-document-bed-ink: #505057;
  --iq-media-chip: #18181CCF;
  --iq-media-track: #FFFFFF50;
  --iq-story-surface: #17242E;
  --iq-story-ink: #F7F9FB;
  --iq-story-muted: #C5D1DB;
  --iq-story-subtle: #AABBC8;
  --iq-story-line: #40525F;
  --iq-story-line-strong: #748C9E;
  --iq-story-mark: #CBDCE9;
  --iq-completed: #E9EAED;
  --iq-danger-fill: #D51C38;
  --iq-on-danger: #FFFFFF;
  --iq-focus-fill: #E9EDFA;
  --iq-focus-text: #172B65;
  --iq-faint: #75767F;
  --iq-disabled-ink: #696A73;
  --iq-disabled-fill: #EBEDF0;
  --iq-hover: #E9EBF0;
  --iq-line-strong: #72727D;
  --iq-warning-fill: #FFB343;
  --iq-on-warning: #352006;
  --iq-planned: #A32E8C;
  --iq-planned-bg: #F3EAF8;
  --iq-avatar-ring: #FFFFFF;
  --iq-field-bg: #FFFFFF;
  --iq-success-fill: #2CB88A;
  --iq-on-success: #073529;
  --iq-info-fill: #175BCD;
  --iq-on-info: #FFFFFF;
  --iq-planned-fill: #A8318F;
  --iq-on-planned: #FFFFFF;
  --iq-neutral-fill: #686A75;
  --iq-on-neutral: #FFFFFF;
  --iq-avatar-more: #DDE0EA;
  --iq-on-avatar-more: #222537;
  --iq-menu-focus: #E7EAF2;
  --iq-sample-bg: #E7E8ED;
  --iq-sample-ink: #42444D;
  --iq-priority-neutral-bg: #EAEBEF;
  --iq-priority-neutral-ink: #50515B;
  --iq-epic: #843CA9;
  --iq-radio-selected: #EDEEF2;
  --iq-avatar-blue-bg: #E3E9F2;
  --iq-avatar-sand-ink: #66472B;
  --iq-avatar-blue-ink: #334760;
  --iq-accent-hover-fill: #1944B3;
  --iq-avatar-sand-bg: #EDE4DA;
  --iq-avatar-lilac-ink: #604D70;
  --iq-avatar-lilac-bg: #E8E4EC;
  --iq-avatar-sage-ink: #445C3D;
  --iq-avatar-sage-bg: #E4E9E1;
  --iq-white: #FFFFFF;
  --iq-task-critical-surface: #FFF3F5;
  --iq-task-high-surface: #FFF6E8;
  --iq-task-critical-text: #9E1530;
  --iq-task-high-text: #85500B;
  --iq-task-epic-text: #773391;
  --iq-task-neutral-surface: #FFFFFF;
  --iq-nav-current-bg: #E9EBF0;
  --iq-nav-current-ink: #1D1D1F;
  --iq-calendar-item-bg: #F4F5F8;
  --iq-calendar-item-hover: #E9EBF0;
  --iq-calendar-complete-bg: #E6F3ED;
  --iq-calendar-complete-ink: #196146;
  --iq-task-light-critical-core: #D51C3847;
  --iq-task-light-critical-mid: #D51C3817;
  --iq-task-light-critical-rim: #FF899933;
  --iq-task-light-high-core: #F5A22340;
  --iq-task-light-high-mid: #FFB34318;
  --iq-task-light-high-rim: #FFC87630;
  --iq-task-light-epic-core: #9458D844;
  --iq-task-light-epic-mid: #8B42B515;
  --iq-task-light-epic-rim: #CCA3F633;
  --iq-task-light-row-strength: 54%;
  --iq-task-light-meta: #54555C;
  --iq-graph-edge: #727885;
  --iq-graph-group: #F0F1F5;
  --iq-chart-series-1: #175BCD;
  --iq-chart-series-2: #934900;
  --iq-chart-series-3: #177B5B;
  --iq-chart-series-4: #A8318F;
  --iq-chart-series-5: #D51C38;
  --iq-chart-series-6: #50515B;
  --iq-tag-fill: #E8EDF6;
  --iq-tag-text: #28374F;
  --iq-graph-node: #FFFFFF;
  --iq-graph-node-border: #DDDFE3;
  --iq-calendar-adjacent-text: #62646B;
  --iq-wb-canvas: #F8F9FB;
  --iq-wb-dot: #DFE1E8;
  --iq-wb-frame: #F0F2F680;
  --iq-wb-frame-line: #D8DCE5;
  --iq-wb-sand: #FFEABB;
  --iq-wb-lavender: #E5DCFA;
  --iq-wb-mint: #D6EDE2;
  --iq-wb-sky: #DCEAF9;
  --iq-wb-rose: #F8DDE4;
  --iq-wb-note-ink: #29252D;
  --iq-wb-shape-line: #7D828C;
  --iq-wb-edge: #717782;
  --iq-wb-object-shadow: 0 2px 3px #1118280A, 0 8px 18px #11182807;
  --iq-wb-lasso: #2453CC12;
  --iq-wb-backdrop: #0C122575;
  --iq-tag-neutral-fill: #EBEDF0;
  --iq-tag-neutral-text: #62646B;
  --iq-tag-blue-fill: #E3E9F2;
  --iq-tag-blue-text: #334760;
  --iq-tag-purple-fill: #F5EEF9;
  --iq-tag-purple-text: #773391;
  --iq-tag-green-fill: #E4E9E1;
  --iq-tag-green-text: #445C3D;
  --iq-tag-amber-fill: #FFF6E8;
  --iq-tag-amber-text: #85500B;
  --iq-tag-red-fill: #FFF3F5;
  --iq-tag-red-text: #B11934;
  --iq-preference-blue: #2453CC;
  --iq-preference-violet: #6236B6;
  --iq-preference-violet-fill: #6236B6;
  --iq-preference-violet-soft: #F1EBFA;
  --iq-preference-green: #087554;
  --iq-preference-green-fill: #087554;
  --iq-preference-green-soft: #E7F4EE;
}
[data-theme="dark"]{
  --iq-canvas: #0D0D0F;
  --iq-surface: #161618;
  --iq-raised: #202023;
  --iq-recessed: #101012;
  --iq-ink: #F5F5F7;
  --iq-muted: #B1B1B9;
  --iq-subtle: #A3A7AF;
  --iq-line: #343438;
  --iq-control: #737984;
  --iq-field-line: #737984;
  --iq-accent: #A9C1FF;
  --iq-accent-fill: #3D6CEB;
  --iq-accent-soft: #202D47;
  --iq-focus: #A9C1FF;
  --iq-focus-halo: #0D0D0F;
  --iq-primary: #F4F4F6;
  --iq-on-primary: #151518;
  --iq-success: #54CDA0;
  --iq-success-bg: #10271F;
  --iq-warning: #FFB343;
  --iq-warning-bg: #302310;
  --iq-danger: #FF415C;
  --iq-danger-bg: #301018;
  --iq-info: #85BFFF;
  --iq-info-bg: #17283D;
  --iq-shadow-color: #00000050;
  --iq-shadow-1: 0 1px 3px #00000066;
  --iq-shadow-2: 0 8px 24px #00000080;
  --iq-shadow-3: 0 24px 72px #00000099;
  --iq-raised-edge: #3F3F46;
  --iq-secondary-fill: #252528;
  --iq-secondary-hover-fill: #303034;
  --iq-white-hover: #E4E6EA;
  --iq-on-accent-line: #FFFFFF4D;
  --iq-scrim: #00000099;
  --iq-scrim-strong: #000000D9;
  --iq-shadow-color-soft: #00000040;
  --iq-shadow-color-strong: #00000080;
  --iq-shadow-color-deep: #000000A6;
  --iq-document-bed: #2A2A2E;
  --iq-document-bed-ink: #B1B1B9;
  --iq-media-chip: #000000CC;
  --iq-media-track: #FFFFFF60;
  --iq-story-surface: #121C24;
  --iq-story-muted: #BFCBD6;
  --iq-story-subtle: #A6B6C4;
  --iq-story-line: #3A4A56;
  --iq-story-line-strong: #6C8496;
  --iq-story-mark: #C3D4E1;
  --iq-faint: #9898A3;
  --iq-disabled-ink: #9292A0;
  --iq-disabled-fill: #2B2B30;
  --iq-hover: #2B2B30;
  --iq-completed: #303035;
  --iq-danger-fill: #FF415C;
  --iq-on-danger: #26070D;
  --iq-focus-fill: #CCD7FF;
  --iq-focus-text: #172039;
  --iq-planned: #F0A3D6;
  --iq-planned-bg: #3A1F35;
  --iq-avatar-ring: #202022;
  --iq-field-bg: #101012;
  --iq-info-fill: #85BFFF;
  --iq-on-info: #082B53;
  --iq-planned-fill: #F0A3D6;
  --iq-on-planned: #402151;
  --iq-neutral-fill: #A0A3B2;
  --iq-on-neutral: #161820;
  --iq-avatar-more: #464653;
  --iq-on-avatar-more: #F5F5FA;
  --iq-menu-focus: #383840;
  --iq-sample-bg: #36363D;
  --iq-sample-ink: #E6E6EC;
  --iq-priority-neutral-bg: #37373F;
  --iq-priority-neutral-ink: #DEDDE5;
  --iq-epic: #D5A8EB;
  --iq-radio-selected: #303036;
  --iq-accent-hover-fill: #3362E0;
  --iq-task-critical-surface: #2B2026;
  --iq-task-high-surface: #2B261F;
  --iq-task-critical-text: #FF9BAE;
  --iq-task-high-text: #FFCF83;
  --iq-task-epic-text: #D5A8EB;
  --iq-task-neutral-surface: #202023;
  --iq-nav-current-bg: #303035;
  --iq-nav-current-ink: #F5F5F7;
  --iq-calendar-item-bg: #2A2A30;
  --iq-calendar-item-hover: #34343C;
  --iq-calendar-complete-bg: #1D302B;
  --iq-calendar-complete-ink: #85D2AD;
  --iq-task-light-critical-core: #FF415C63;
  --iq-task-light-critical-mid: #E22D4722;
  --iq-task-light-critical-rim: #FFAFBA24;
  --iq-task-light-high-core: #FFB34345;
  --iq-task-light-high-mid: #E49B3420;
  --iq-task-light-high-rim: #FFDB9826;
  --iq-task-light-epic-core: #B689F263;
  --iq-task-light-epic-mid: #8859CA24;
  --iq-task-light-epic-rim: #E8CFFF29;
  --iq-task-light-row-strength: 64%;
  --iq-task-light-meta: #C8C8D0;
  --iq-graph-edge: #989DA9;
  --iq-graph-group: #1B1B1F;
  --iq-chart-series-1: #93B9FF;
  --iq-chart-series-2: #FFB343;
  --iq-chart-series-3: #58C6A0;
  --iq-chart-series-4: #F0A3D6;
  --iq-chart-series-5: #FF687E;
  --iq-chart-series-6: #C0C4CF;
  --iq-tag-fill: #363D4C;
  --iq-tag-text: #F4F6FA;
  --iq-graph-node: #202023;
  --iq-graph-node-border: #343438;
  --iq-calendar-adjacent-text: #B1B1B9;
  --iq-wb-canvas: #111214;
  --iq-wb-dot: #2A2C31;
  --iq-wb-frame: #1A1C2070;
  --iq-wb-frame-line: #383C45;
  --iq-wb-sand: #E8D2A4;
  --iq-wb-lavender: #CBC0E5;
  --iq-wb-mint: #B7D8C9;
  --iq-wb-sky: #BFCEE6;
  --iq-wb-rose: #E4BBC8;
  --iq-wb-note-ink: #242129;
  --iq-wb-shape-line: #626974;
  --iq-wb-edge: #8B929E;
  --iq-wb-object-shadow: 0 2px 4px #00000024, 0 10px 22px #0000001F;
  --iq-wb-lasso: #A9BDFF24;
  --iq-wb-backdrop: #00000090;
  --iq-tag-neutral-fill: #1C1C1F;
  --iq-tag-neutral-text: #B1B1B9;
  --iq-tag-blue-fill: #1E2636;
  --iq-tag-blue-text: #AFC4EE;
  --iq-tag-purple-fill: #282230;
  --iq-tag-purple-text: #D5A8EB;
  --iq-tag-green-fill: #1E271F;
  --iq-tag-green-text: #A9CF9E;
  --iq-tag-amber-fill: #2B261F;
  --iq-tag-amber-text: #FFCF83;
  --iq-tag-red-fill: #2B2026;
  --iq-tag-red-text: #FF9BAE;
  --iq-preference-blue: #9CB9FF;
  --iq-preference-violet: #BDA5F5;
  --iq-preference-violet-fill: #8459E3;
  --iq-preference-violet-soft: #291E3D;
  --iq-preference-green: #78D9B5;
  --iq-preference-green-fill: #108659;
  --iq-preference-green-soft: #132E26;
}
@media (prefers-color-scheme: dark){
:root:not([data-theme="light"]){
  --iq-canvas: #0D0D0F;
  --iq-surface: #161618;
  --iq-raised: #202023;
  --iq-recessed: #101012;
  --iq-ink: #F5F5F7;
  --iq-muted: #B1B1B9;
  --iq-subtle: #A3A7AF;
  --iq-line: #343438;
  --iq-control: #737984;
  --iq-field-line: #737984;
  --iq-accent: #A9C1FF;
  --iq-accent-fill: #3D6CEB;
  --iq-accent-soft: #202D47;
  --iq-focus: #A9C1FF;
  --iq-focus-halo: #0D0D0F;
  --iq-primary: #F4F4F6;
  --iq-on-primary: #151518;
  --iq-success: #54CDA0;
  --iq-success-bg: #10271F;
  --iq-warning: #FFB343;
  --iq-warning-bg: #302310;
  --iq-danger: #FF415C;
  --iq-danger-bg: #301018;
  --iq-info: #85BFFF;
  --iq-info-bg: #17283D;
  --iq-shadow-color: #00000050;
  --iq-shadow-1: 0 1px 3px #00000066;
  --iq-shadow-2: 0 8px 24px #00000080;
  --iq-shadow-3: 0 24px 72px #00000099;
  --iq-raised-edge: #3F3F46;
  --iq-secondary-fill: #252528;
  --iq-secondary-hover-fill: #303034;
  --iq-white-hover: #E4E6EA;
  --iq-on-accent-line: #FFFFFF4D;
  --iq-scrim: #00000099;
  --iq-scrim-strong: #000000D9;
  --iq-shadow-color-soft: #00000040;
  --iq-shadow-color-strong: #00000080;
  --iq-shadow-color-deep: #000000A6;
  --iq-document-bed: #2A2A2E;
  --iq-document-bed-ink: #B1B1B9;
  --iq-media-chip: #000000CC;
  --iq-media-track: #FFFFFF60;
  --iq-story-surface: #121C24;
  --iq-story-muted: #BFCBD6;
  --iq-story-subtle: #A6B6C4;
  --iq-story-line: #3A4A56;
  --iq-story-line-strong: #6C8496;
  --iq-story-mark: #C3D4E1;
  --iq-faint: #9898A3;
  --iq-disabled-ink: #9292A0;
  --iq-disabled-fill: #2B2B30;
  --iq-hover: #2B2B30;
  --iq-completed: #303035;
  --iq-danger-fill: #FF415C;
  --iq-on-danger: #26070D;
  --iq-focus-fill: #CCD7FF;
  --iq-focus-text: #172039;
  --iq-planned: #F0A3D6;
  --iq-planned-bg: #3A1F35;
  --iq-avatar-ring: #202022;
  --iq-field-bg: #101012;
  --iq-info-fill: #85BFFF;
  --iq-on-info: #082B53;
  --iq-planned-fill: #F0A3D6;
  --iq-on-planned: #402151;
  --iq-neutral-fill: #A0A3B2;
  --iq-on-neutral: #161820;
  --iq-avatar-more: #464653;
  --iq-on-avatar-more: #F5F5FA;
  --iq-menu-focus: #383840;
  --iq-sample-bg: #36363D;
  --iq-sample-ink: #E6E6EC;
  --iq-priority-neutral-bg: #37373F;
  --iq-priority-neutral-ink: #DEDDE5;
  --iq-epic: #D5A8EB;
  --iq-radio-selected: #303036;
  --iq-accent-hover-fill: #3362E0;
  --iq-task-critical-surface: #2B2026;
  --iq-task-high-surface: #2B261F;
  --iq-task-critical-text: #FF9BAE;
  --iq-task-high-text: #FFCF83;
  --iq-task-epic-text: #D5A8EB;
  --iq-task-neutral-surface: #202023;
  --iq-nav-current-bg: #303035;
  --iq-nav-current-ink: #F5F5F7;
  --iq-calendar-item-bg: #2A2A30;
  --iq-calendar-item-hover: #34343C;
  --iq-calendar-complete-bg: #1D302B;
  --iq-calendar-complete-ink: #85D2AD;
  --iq-task-light-critical-core: #FF415C63;
  --iq-task-light-critical-mid: #E22D4722;
  --iq-task-light-critical-rim: #FFAFBA24;
  --iq-task-light-high-core: #FFB34345;
  --iq-task-light-high-mid: #E49B3420;
  --iq-task-light-high-rim: #FFDB9826;
  --iq-task-light-epic-core: #B689F263;
  --iq-task-light-epic-mid: #8859CA24;
  --iq-task-light-epic-rim: #E8CFFF29;
  --iq-task-light-row-strength: 64%;
  --iq-task-light-meta: #C8C8D0;
  --iq-graph-edge: #989DA9;
  --iq-graph-group: #1B1B1F;
  --iq-chart-series-1: #93B9FF;
  --iq-chart-series-2: #FFB343;
  --iq-chart-series-3: #58C6A0;
  --iq-chart-series-4: #F0A3D6;
  --iq-chart-series-5: #FF687E;
  --iq-chart-series-6: #C0C4CF;
  --iq-tag-fill: #363D4C;
  --iq-tag-text: #F4F6FA;
  --iq-graph-node: #202023;
  --iq-graph-node-border: #343438;
  --iq-calendar-adjacent-text: #B1B1B9;
  --iq-wb-canvas: #111214;
  --iq-wb-dot: #2A2C31;
  --iq-wb-frame: #1A1C2070;
  --iq-wb-frame-line: #383C45;
  --iq-wb-sand: #E8D2A4;
  --iq-wb-lavender: #CBC0E5;
  --iq-wb-mint: #B7D8C9;
  --iq-wb-sky: #BFCEE6;
  --iq-wb-rose: #E4BBC8;
  --iq-wb-note-ink: #242129;
  --iq-wb-shape-line: #626974;
  --iq-wb-edge: #8B929E;
  --iq-wb-object-shadow: 0 2px 4px #00000024, 0 10px 22px #0000001F;
  --iq-wb-lasso: #A9BDFF24;
  --iq-wb-backdrop: #00000090;
  --iq-tag-neutral-fill: #1C1C1F;
  --iq-tag-neutral-text: #B1B1B9;
  --iq-tag-blue-fill: #1E2636;
  --iq-tag-blue-text: #AFC4EE;
  --iq-tag-purple-fill: #282230;
  --iq-tag-purple-text: #D5A8EB;
  --iq-tag-green-fill: #1E271F;
  --iq-tag-green-text: #A9CF9E;
  --iq-tag-amber-fill: #2B261F;
  --iq-tag-amber-text: #FFCF83;
  --iq-tag-red-fill: #2B2026;
  --iq-tag-red-text: #FF9BAE;
  --iq-preference-blue: #9CB9FF;
  --iq-preference-violet: #BDA5F5;
  --iq-preference-violet-fill: #8459E3;
  --iq-preference-violet-soft: #291E3D;
  --iq-preference-green: #78D9B5;
  --iq-preference-green-fill: #108659;
  --iq-preference-green-soft: #132E26;
  color-scheme: dark;
}
}
:root[data-accent="violet"]{
  --iq-accent: #6236B6;
  --iq-accent-fill: #6236B6;
  --iq-accent-hover-fill: #552CA3;
  --iq-accent-soft: #F1EBFA;
  --iq-focus: #6236B6;
}
[data-theme="dark"][data-accent="violet"]{
  --iq-accent: #BDA5F5;
  --iq-accent-fill: #8459E3;
  --iq-accent-hover-fill: #7549D6;
  --iq-accent-soft: #291E3D;
  --iq-focus: #BDA5F5;
}
@media (prefers-color-scheme: dark){
:root:not([data-theme="light"])[data-accent="violet"]{
  --iq-accent: #BDA5F5;
  --iq-accent-fill: #8459E3;
  --iq-accent-hover-fill: #7549D6;
  --iq-accent-soft: #291E3D;
  --iq-focus: #BDA5F5;
}
}
:root[data-accent="green"]{
  --iq-accent: #087554;
  --iq-accent-fill: #087554;
  --iq-accent-hover-fill: #066347;
  --iq-accent-soft: #E7F4EE;
  --iq-focus: #087554;
}
[data-theme="dark"][data-accent="green"]{
  --iq-accent: #78D9B5;
  --iq-accent-fill: #108659;
  --iq-accent-hover-fill: #0C8058;
  --iq-accent-soft: #132E26;
  --iq-focus: #78D9B5;
}
@media (prefers-color-scheme: dark){
:root:not([data-theme="light"])[data-accent="green"]{
  --iq-accent: #78D9B5;
  --iq-accent-fill: #108659;
  --iq-accent-hover-fill: #0C8058;
  --iq-accent-soft: #132E26;
  --iq-focus: #78D9B5;
}
}
@media (prefers-contrast: more){
:root{
  --iq-line: var(--iq-line-strong);
  --iq-raised-edge: var(--iq-line-strong);
  --iq-graph-node-border: var(--iq-line-strong);
  --iq-field-line: var(--iq-line-strong);
  --iq-control: var(--iq-line-strong);
  --iq-muted: var(--iq-ink);
  --iq-subtle: var(--iq-ink);
  --iq-faint: var(--iq-ink);
  --iq-disabled-ink: var(--iq-muted);
  --iq-task-light-meta: var(--iq-ink);
}
}







:root,[data-theme="light"]{color-scheme:light;}[data-theme="dark"]{color-scheme:dark;}
/* Type scale lives in tokens/semantic.json (--iq-type-*). */
/* IQUIPAGE 04 · shared components. Opaque surfaces, explicit states, no ornamental shader. */
*,*::before,*::after{box-sizing:border-box}html{scroll-padding-top:96px}body{margin:0;background:var(--iq-canvas);color:var(--iq-ink);font:400 var(--iq-type-interface-size)/1.5 var(--iq-font);font-optical-sizing:auto;letter-spacing:var(--iq-tracking-body);-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit;color:inherit}button,a,input,textarea,summary{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit;text-underline-offset:4px}button{border:0}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{font-family:var(--iq-display);font-weight:500}h1{letter-spacing:var(--iq-tracking-display)}h2{letter-spacing:var(--iq-tracking-display)}h3{letter-spacing:var(--iq-tracking-h2)}svg{flex-shrink:0;vertical-align:middle}button svg{pointer-events:none}img,video{display:block;max-width:100%;height:auto}::selection{background:var(--iq-accent-soft);color:var(--iq-ink)}[hidden]{display:none!important}:where(button,a,input,textarea,select,summary,[tabindex]):focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){outline:2px solid var(--iq-focus);outline-offset:4px}:where(input,textarea):focus:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){outline:none}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip-link{position:fixed;top:-100px;left:20px;padding:12px 20px;background:var(--iq-raised);z-index:200}.skip-link:focus:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){top:12px}.iq-icon{display:inline-block}.iq-mark{width:30px;height:30px}.row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.row.between{justify-content:space-between}.row.end{justify-content:flex-end}.stack{display:flex;flex-direction:column;gap:20px}.stack.sm{gap:12px}.stack.lg{gap:28px}.grow{flex:1;min-width:0}.full{width:100%}.center{text-align:center}.muted,.subtle{color:var(--iq-muted)}.mono{font-family:var(--iq-mono);font-size:var(--iq-type-caption-size);letter-spacing:var(--iq-tracking-body)}.accent-text{color:var(--iq-accent)}.no-wrap{white-space:nowrap}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.divider{height:1px;background:var(--iq-line);margin:24px 0}.iq-helper{display:block;font-size:var(--iq-type-caption-size);line-height:1.5;color:var(--iq-muted);margin-top:8px}.iq-helper.error{color:var(--iq-danger)}.iq-control-label{display:block;font-size:var(--iq-type-label-size);line-height:1.45;font-weight:500;letter-spacing:var(--iq-tracking-body);margin-bottom:8px}.iq-control-label:has(+.iq-input-shell input:required)::after{content:" *";color:var(--iq-muted)}
/* Action geometry: 44px default; no size shift across states. */
.iq-btn{--h:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--h);min-width:var(--h);max-width:100%;padding:10px 17px;border:1px solid transparent;border-radius:var(--iq-radius-sm);background:transparent;text-decoration:none;font-weight:500;font-size:var(--iq-type-label-size);line-height:1.4;letter-spacing:var(--iq-tracking-body);vertical-align:middle;transition:background-color var(--iq-motion-fast),border-color var(--iq-motion-fast),transform var(--iq-motion-fast) var(--iq-ease)}.iq-btn.primary{background:var(--iq-primary);color:var(--iq-on-primary)}.iq-btn.secondary{border-color:var(--iq-control);background:var(--iq-secondary-fill)}.iq-btn.accent{background:var(--iq-accent-fill);color:var(--iq-on-accent)}.iq-btn.danger{color:var(--iq-danger);background:var(--iq-danger-bg);border-color:transparent}.iq-btn.white{background:var(--iq-white);color:var(--iq-on-white)}.iq-btn.ghost{color:var(--iq-ink)}.iq-btn.pill{border-radius:999px;padding-inline:22px}.iq-btn.sm{--h:36px;font-size:var(--iq-type-caption-size);padding:7px 12px}.iq-btn.lg{--h:52px;font-size:var(--iq-type-interface-size);padding:13px 22px}.iq-btn.icon{width:var(--h);height:var(--h);padding:0;flex-shrink:0}.iq-btn:active:not(:disabled){transform:translateY(1px)}.iq-btn[aria-pressed=true]{color:var(--iq-accent);background:var(--iq-accent-soft);border-color:var(--iq-accent)}.iq-btn:disabled{color:var(--iq-disabled-ink);background:var(--iq-disabled-fill);border-color:transparent;box-shadow:none;cursor:not-allowed}.iq-btn.ghost:disabled,.iq-btn.icon:disabled{background:transparent}.iq-btn:disabled>.iq-icon{opacity:.7}.iq-btn[aria-busy=true]{opacity:1;cursor:progress}.iq-link{display:inline-flex;gap:8px;align-items:center;color:var(--iq-accent);font-weight:500;font-size:var(--iq-type-interface-size);text-decoration:none}.iq-link:hover{text-decoration:underline}.iq-split{display:inline-flex;align-items:stretch}.iq-split>.iq-btn{border-radius:9px 0 0 9px}.iq-split iq-menu>.iq-btn{border-radius:0 9px 9px 0;border-left-color:var(--iq-on-accent-line)}.iq-btn-group{display:inline-flex;flex-wrap:wrap;border:1px solid var(--iq-raised-edge);border-radius:10px;padding:3px;gap:2px;background:var(--iq-raised)}
@media(hover:hover){.iq-btn.primary:hover{background:color-mix(in srgb,var(--iq-primary) 85%,var(--iq-on-primary))}.iq-btn.secondary:hover{background:var(--iq-secondary-hover-fill)}.iq-btn.ghost:hover{background:var(--iq-surface)}.iq-btn.accent:hover{background:var(--iq-accent-hover-fill)}.iq-btn.danger:hover{border-color:var(--iq-danger)}.iq-btn.white:hover{background:var(--iq-white-hover)}}
/* Native editing is retained for IME, selection, password managers and screen readers. */
.iq-field{min-width:0}.iq-input-shell,.iq-combo-shell{display:flex;align-items:center;gap:10px;border:1px solid var(--iq-field-line);border-radius:9px;padding:0 13px;background:var(--iq-field-bg);min-height:44px;position:relative;transition:border-color var(--iq-motion-fast),box-shadow var(--iq-motion-fast)}.iq-input-shell>svg,.iq-combo-shell>svg{color:var(--iq-muted)}.iq-input-shell input,.iq-input-shell textarea,.iq-combo-input{display:block;width:100%;min-width:0;border:0;background:transparent;outline:none;padding:11px 0;font-size:var(--iq-type-interface-size);line-height:20px;letter-spacing:var(--iq-tracking-body)}.iq-input-shell textarea{min-height:116px;resize:vertical;line-height:1.6}.iq-input-shell:focus-within,.iq-combo-shell:focus-within{border-color:var(--iq-focus);box-shadow:0 0 0 3px var(--iq-accent-soft)}.iq-input-shell input::placeholder,.iq-input-shell textarea::placeholder,.iq-combo-input::placeholder{color:var(--iq-subtle);opacity:1}.iq-input-shell .iq-btn{margin-right:-8px}.iq-field.error .iq-input-shell,.iq-input-shell:has([aria-invalid=true]){border-color:var(--iq-danger)}.iq-field.success .iq-input-shell{border-color:var(--iq-success)}.iq-input-shell:has(:disabled){background:var(--iq-surface);opacity:.65}.iq-input-shell:has([readonly]){background:var(--iq-surface)}.iq-field-foot{display:flex;justify-content:space-between;gap:16px}.iq-input-prefix,.iq-input-suffix{white-space:nowrap;color:var(--iq-muted);font-size:var(--iq-type-label-size)}.iq-search-small{display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--iq-line);border-radius:8px}.iq-search-small input{background:none;border:0;outline:none;min-width:0;width:100%}
.iq-check,.iq-radio,.iq-switch{display:inline-flex;align-items:center;gap:11px;position:relative;cursor:pointer;line-height:1.45;min-height:32px;font-size:var(--iq-type-interface-size)}.iq-check input,.iq-radio input,.iq-switch input{position:absolute;opacity:0;width:24px;height:24px;margin:0;left:0;top:50%;transform:translateY(-50%)}.iq-check-box,.iq-radio-dot{width:19px;height:19px;border:1px solid var(--iq-control);background:var(--iq-raised);display:grid;place-items:center;flex-shrink:0;transition:background var(--iq-motion-fast),border-color var(--iq-motion-fast)}.iq-check-box{border-radius:5px}.iq-check-box svg{opacity:0}.iq-check input:checked+.iq-check-box{background:var(--iq-primary);border-color:var(--iq-primary);color:var(--iq-on-primary)}.iq-check input:checked+.iq-check-box svg{opacity:1}.iq-check input:indeterminate+.iq-check-box{background:var(--iq-primary);border-color:var(--iq-primary)}.iq-check input:indeterminate+.iq-check-box::after{content:"";position:absolute;width:9px;height:2px;background:var(--iq-on-primary)}.iq-radio-dot{border-radius:50%}.iq-radio input:checked+.iq-radio-dot{border:5px solid var(--iq-primary)}.iq-check input:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"]))+.iq-check-box,.iq-radio input:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"]))+.iq-radio-dot,.iq-switch input:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"]))+.iq-switch-track{outline:2px solid var(--iq-focus);outline-offset:4px}.iq-check:has(:disabled),.iq-radio:has(:disabled),.iq-switch:has(:disabled){color:var(--iq-disabled-ink);cursor:not-allowed}.iq-check:has(:disabled) .iq-check-box,.iq-radio:has(:disabled) .iq-radio-dot,.iq-switch:has(:disabled) .iq-switch-track{background:var(--iq-disabled-fill);border-color:var(--iq-line)}.iq-switch-track{width:40px;height:24px;border-radius:20px;background:var(--iq-control);position:relative;transition:background var(--iq-motion-standard);flex-shrink:0}.iq-switch-track::before{content:"";position:absolute;width:18px;height:18px;background:var(--iq-white);border-radius:50%;left:3px;top:3px;box-shadow:0 1px 2px var(--iq-shadow-color-strong);transition:transform var(--iq-motion-standard) var(--iq-ease)}.iq-switch input:checked+.iq-switch-track{background:var(--iq-accent-fill)}.iq-switch input:checked+.iq-switch-track::before{transform:translateX(16px)}.iq-setting-row{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:16px 0;border-bottom:1px solid var(--iq-line)}.iq-setting-row b{font-weight:500;font-size:var(--iq-type-interface-size)}.iq-setting-row p{font-size:var(--iq-type-caption-size);color:var(--iq-muted);margin-top:3px}.iq-segmented{display:inline-flex;position:relative;gap:3px;padding:3px;background:var(--iq-recessed);border-radius:9px;max-width:100%;flex-wrap:wrap}.iq-segmented button{padding:8px 14px;min-height:34px;border-radius:6px;background:transparent;color:var(--iq-muted);font-size:var(--iq-type-label-size);font-weight:500}.iq-segmented button[aria-pressed=true]{background:var(--iq-raised);color:var(--iq-ink);box-shadow:0 1px 3px var(--iq-shadow-color)}
/* Popovers are native top-layer surfaces, not clipped by card overflow. */
iq-select,iq-combobox,iq-number,iq-range,iq-calendar,iq-tags,iq-upload,iq-tabs{display:block;min-width:0}iq-menu,iq-tooltip{display:inline-block}.iq-select-wrap{position:relative}.iq-select-trigger{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:44px;padding:10px 13px;border:1px solid var(--iq-field-line);border-radius:9px;background:var(--iq-field-bg);font-size:var(--iq-type-interface-size);text-align:left}.iq-select-value{display:flex;align-items:center;gap:9px;min-width:0}.iq-select-value svg{color:var(--iq-muted)}.iq-select-trigger[aria-expanded=true]{border-color:var(--iq-focus)}.iq-select-trigger:disabled{color:var(--iq-disabled-ink);background:var(--iq-disabled-fill);border-color:var(--iq-line);cursor:not-allowed}.compact-select>.iq-control-label{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden}.compact-select .iq-select-trigger{min-height:36px;padding:7px 11px;font-size:var(--iq-type-caption-size);border-color:var(--iq-line);background:transparent}.iq-popup{position:fixed;inset:auto;margin:0;padding:6px;border:1px solid var(--iq-raised-edge);border-radius:12px;background:var(--iq-raised);color:var(--iq-ink);box-shadow:var(--iq-shadow-2);max-width:calc(100vw - 16px);overflow:auto;z-index:100}.iq-popup-caption{padding:7px 10px 9px;font-size:var(--iq-type-meta-size);letter-spacing:var(--iq-tracking-caps);text-transform:uppercase;color:var(--iq-muted)}.iq-option{display:flex;align-items:center;gap:var(--iq-space-2);min-height:34px;padding:6px var(--iq-space-2);border-radius:var(--iq-radius-sm);cursor:pointer;font-size:var(--iq-type-label-size)}.iq-option-copy{flex:1;min-width:0}.iq-option-icon{flex:0 0 20px}.iq-option small{display:block;font-size:var(--iq-type-caption-size);color:var(--iq-muted);margin-top:3px}.iq-option>svg:last-child{margin-left:auto;color:var(--iq-accent)}/* One fill for the row under the pointer and the keyboard's row; never a frame (vnext.27). While the pointer is in the
   list, only the row under it is filled. */
.iq-option:hover,.iq-option.is-active{background:var(--iq-hover)}
[role=listbox]:hover>.iq-option.is-active:not(:hover){background:transparent}
.iq-option[aria-disabled=true]:hover{background:transparent}.iq-option[aria-selected=true]{color:var(--iq-accent)}.iq-option[aria-disabled=true]{color:var(--iq-disabled-ink);cursor:not-allowed}.iq-option[aria-disabled=true] small,.iq-option[aria-disabled=true] .iq-option-icon{color:var(--iq-disabled-ink)}.iq-option-icon{color:var(--iq-muted)}.iq-option-icon>.iq-select-avatar{margin:0;border:0}.iq-no-results{padding:18px 10px;color:var(--iq-muted);font-size:var(--iq-type-label-size)}.iq-menu-popup{min-width:224px}.iq-menu-popup button{display:flex;align-items:center;gap:10px;background:transparent;border-radius:6px;padding:10px;min-height:40px;width:100%;text-align:left;font-size:var(--iq-type-label-size)}.iq-menu-popup button:hover,.iq-menu-popup button:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){background:var(--iq-surface)}.iq-menu-popup button span{flex:1}.iq-menu-popup kbd{color:var(--iq-muted);font:var(--iq-type-meta-size) var(--iq-mono)}.iq-menu-popup .danger{color:var(--iq-danger)}.iq-tooltip{position:fixed;inset:auto;margin:0;padding:7px 10px;background:var(--iq-ink);color:var(--iq-canvas);border:0;border-radius:6px;font-size:var(--iq-type-caption-size);max-width:260px;box-shadow:var(--iq-shadow-1);pointer-events:none;z-index:130}
.iq-tooltip-rich:popover-open{display:grid}.iq-tooltip-rich{gap:3px;padding:10px 12px;max-width:280px;line-height:1.45}.iq-tooltip-heading{font-size:var(--iq-type-label-size);font-weight:600}.iq-tooltip-line{color:color-mix(in srgb,var(--iq-canvas) 72%,transparent)}
.iq-number{display:flex;align-items:center;border:1px solid var(--iq-control);border-radius:9px;max-width:232px;background:var(--iq-raised);overflow:hidden}.iq-number button{display:grid;place-items:center;min-width:44px;height:44px;background:transparent}.iq-number button:disabled{opacity:.35}.iq-number input{width:100%;min-width:0;text-align:center;border:0;background:none;appearance:textfield;outline:0;font-variant-numeric:tabular-nums}.iq-number input::-webkit-inner-spin-button{appearance:none}.iq-range-heading{display:flex;justify-content:space-between;gap:16px}.iq-range-heading output{font-variant-numeric:tabular-nums;font-size:var(--iq-type-label-size)}.iq-range-scale{display:flex;justify-content:space-between;font-size:var(--iq-type-caption-size);color:var(--iq-muted);margin-top:4px}iq-range input[type=range]{appearance:none;width:100%;height:5px;border-radius:8px;background:linear-gradient(90deg,var(--iq-accent) var(--range-fill,50%),var(--iq-line) var(--range-fill,50%));margin:14px 0 10px}iq-range input[type=range]::-webkit-slider-thumb{appearance:none;width:20px;height:20px;border:1px solid var(--iq-control);border-radius:50%;background:var(--iq-raised);box-shadow:0 1px 3px var(--iq-shadow-color-strong)}iq-range input[type=range]::-moz-range-thumb{width:18px;height:18px;border:1px solid var(--iq-control);border-radius:50%;background:var(--iq-raised)}.iq-calendar{max-width:340px;width:100%;border:1px solid var(--iq-raised-edge);border-radius:14px;background:var(--iq-raised);padding:18px}.iq-calendar-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.iq-calendar-heading strong,.iq-calendar-heading b{font-weight:500}.iq-calendar-heading button{background:none}.iq-calendar-week,.iq-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.iq-calendar-week span{text-align:center;font-size:var(--iq-type-meta-size);color:var(--iq-muted);padding:8px 0}.iq-calendar-grid button{height:36px;min-width:0;background:transparent;border-radius:7px;font-size:var(--iq-type-label-size);font-variant-numeric:tabular-nums}.iq-calendar-grid button:hover{background:var(--iq-surface)}.iq-calendar-grid .selected,.iq-calendar-grid [aria-selected=true]{background:var(--iq-primary);color:var(--iq-on-primary)}.iq-calendar-grid .outside{color:var(--iq-muted);opacity:.6}.iq-calendar-grid .today{box-shadow:inset 0 0 0 1px var(--iq-control)}.iq-calendar-foot{border-top:1px solid var(--iq-line);margin-top:12px;padding-top:12px;font-size:var(--iq-type-caption-size);color:var(--iq-muted)}.iq-tags-input{display:flex;align-items:center;flex-wrap:wrap;gap:6px;border:1px solid var(--iq-control);border-radius:9px;background:var(--iq-raised);padding:7px;min-height:44px}.iq-tags-input input{flex:1;width:110px;min-width:80px;padding:4px;border:0;outline:0;background:none}.iq-tag{display:inline-flex;align-items:center;gap:6px;padding:4px 7px;background:var(--iq-surface);border:1px solid var(--iq-line);border-radius:5px;font-size:var(--iq-type-caption-size)}
/* Tag tones: a tag keeps its colour everywhere it appears — board, document, settings, picker. */
.iq-tag[data-tone]{background:var(--iq-tag-tone-fill);color:var(--iq-tag-tone-text);border-color:transparent}.iq-tag[data-tone=neutral]{--iq-tag-tone-fill:var(--iq-tag-neutral-fill);--iq-tag-tone-text:var(--iq-tag-neutral-text)}.iq-tag[data-tone=blue]{--iq-tag-tone-fill:var(--iq-tag-blue-fill);--iq-tag-tone-text:var(--iq-tag-blue-text)}.iq-tag[data-tone=purple]{--iq-tag-tone-fill:var(--iq-tag-purple-fill);--iq-tag-tone-text:var(--iq-tag-purple-text)}.iq-tag[data-tone=green]{--iq-tag-tone-fill:var(--iq-tag-green-fill);--iq-tag-tone-text:var(--iq-tag-green-text)}.iq-tag[data-tone=amber]{--iq-tag-tone-fill:var(--iq-tag-amber-fill);--iq-tag-tone-text:var(--iq-tag-amber-text)}.iq-tag[data-tone=red]{--iq-tag-tone-fill:var(--iq-tag-red-fill);--iq-tag-tone-text:var(--iq-tag-red-text)}
/* Custom RGB tags: the user picks the hue; fill and text keep the palette's quiet character and stay readable in both themes. */
.iq-tag[data-tone=custom],iq-tag[data-tone=custom]{--iq-tag-tone-fill:var(--iq-tag-neutral-fill);--iq-tag-tone-text:var(--iq-tag-neutral-text)}
@supports (color:oklch(from red l c h)){.iq-tag[data-tone=custom],iq-tag[data-tone=custom]{--iq-tag-tone-fill:oklch(from var(--iq-tag-color,#62646B) .945 min(c,.045) h);--iq-tag-tone-text:oklch(from var(--iq-tag-color,#62646B) .43 min(c,.13) h)}[data-theme=dark] .iq-tag[data-tone=custom],[data-theme=dark] iq-tag[data-tone=custom]{--iq-tag-tone-fill:oklch(from var(--iq-tag-color,#62646B) .28 min(c,.05) h);--iq-tag-tone-text:oklch(from var(--iq-tag-color,#62646B) .86 min(c,.1) h)}}
/* Selectable tag: selection is shown by a check and a ring in the tone colour, never by dropping the colour. */
button.iq-tag{font:inherit;font-size:var(--iq-type-caption-size);line-height:1.3;min-height:28px;padding:4px 9px;cursor:pointer;transition:box-shadow var(--iq-motion-fast) var(--iq-ease),transform var(--iq-motion-fast) var(--iq-ease)}button.iq-tag[data-tone]:hover:not(:disabled){box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--iq-tag-tone-text) 35%,transparent)}button.iq-tag[aria-pressed=true]{box-shadow:inset 0 0 0 1.5px var(--iq-tag-tone-text,var(--iq-ink))}button.iq-tag>svg{flex:none;margin-left:-2px}button.iq-tag:disabled{cursor:default;opacity:.6}button.iq-tag:active:not(:disabled){transform:scale(.97)}@media (prefers-reduced-motion:reduce){button.iq-tag{transition:none}button.iq-tag:active:not(:disabled){transform:none}}
.iq-tag button{background:none;padding:0;display:grid;place-items:center;width:24px;height:24px;min-height:0;margin:-3px -5px -3px -4px;border-radius:var(--iq-radius-xs)}
/* Information hierarchy lives in content, not in repeated filled containers. */
.iq-badge{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;border:1px solid transparent;border-radius:5px;font-size:var(--iq-type-meta-size);font-weight:500;line-height:1.45;white-space:nowrap;background:var(--iq-surface);color:var(--iq-muted)}.iq-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:currentColor}.iq-badge.success{color:var(--iq-success);background:var(--iq-success-bg)}.iq-badge.warning{color:var(--iq-warning);background:var(--iq-warning-bg)}.iq-badge.danger{color:var(--iq-danger);background:var(--iq-danger-bg)}.iq-badge.info{color:var(--iq-info);background:var(--iq-info-bg)}.iq-badge.outline{border-color:var(--iq-line-strong);background:transparent}.iq-avatar{background:var(--iq-recessed);color:var(--iq-ink)}.iq-avatar.v1{background:var(--iq-avatar-blue-bg);color:var(--iq-avatar-blue-ink)}.iq-avatar.v2{background:var(--iq-avatar-sand-bg);color:var(--iq-avatar-sand-ink)}.iq-avatar.v3{background:var(--iq-avatar-sage-bg);color:var(--iq-avatar-sage-ink)}.iq-avatar.v4{background:var(--iq-avatar-lilac-bg);color:var(--iq-avatar-lilac-ink)}.iq-avatars{display:flex;padding-left:5px}.iq-avatars .iq-avatar{margin-left:-5px}.iq-avatar.more{background:var(--iq-surface);color:var(--iq-muted)}.iq-progress{height:4px;overflow:hidden;border-radius:2px;background:var(--iq-line);width:100%}.iq-progress span{display:block;background:var(--iq-accent);width:100%;height:100%;transform:translateX(calc(var(--progress,0%) - 100%));transition:transform var(--iq-motion-layout) var(--iq-ease-spring)}.iq-ring{position:relative;display:inline-grid;place-items:center}.iq-ring strong{position:absolute;font-size:var(--iq-type-heading3-size);font-weight:500;letter-spacing:var(--iq-tracking-display);font-variant-numeric:tabular-nums}.iq-ring-track{stroke:var(--iq-line)}.iq-ring-fill{stroke:var(--iq-accent);transform:rotate(-90deg);transform-origin:center;stroke-linecap:round;transition:stroke-dashoffset var(--iq-motion-enter)}.iq-sparkline{width:100%;height:auto;color:var(--iq-accent);overflow:visible}.iq-chart{width:100%;color:var(--iq-accent);overflow:visible}.iq-chart text{fill:var(--iq-muted);font:var(--iq-type-caption-size) var(--iq-font)}.iq-chart-grid{stroke:var(--iq-line);stroke-width:1;fill:none}.iq-metric{padding:24px;background:var(--iq-raised);border:1px solid var(--iq-raised-edge);border-radius:12px}.iq-metric b{font-size:2.25rem;font-weight:500;letter-spacing:var(--iq-tracking-display)}.iq-table-wrap{overflow:auto;width:100%;border:1px solid var(--iq-line);border-radius:10px}.iq-table{width:100%;border-collapse:collapse;font-size:var(--iq-type-label-size)}.iq-table th{text-align:left;font-size:var(--iq-type-caption-size);color:var(--iq-muted);font-weight:500;background:var(--iq-surface)}.iq-table th,.iq-table td{padding:14px 16px;border-bottom:1px solid var(--iq-line);vertical-align:middle}.iq-table th button{display:flex;align-items:center;gap:6px;background:none;padding:0;color:inherit}.iq-table tr:last-child td{border-bottom:0}.iq-table th:first-child,.iq-table td:first-child{padding-left:20px}.iq-list{border-top:1px solid var(--iq-line)}.iq-list-item{display:flex;align-items:center;gap:12px;padding:15px 0;border-bottom:1px solid var(--iq-line)}.iq-list-item>div{flex:1}.iq-list-item b{font-weight:500}.iq-list-item small{display:block;color:var(--iq-muted);font-size:var(--iq-type-caption-size)}.iq-timeline{list-style:none;padding:0;margin:0}.iq-timeline li{position:relative;padding:0 0 25px 26px;border-left:1px solid var(--iq-line);margin-left:5px}.iq-timeline li::before{content:"";position:absolute;left:-4px;top:5px;width:7px;height:7px;border-radius:50%;background:var(--iq-control)}.iq-timeline li:last-child{border:0;padding-bottom:0}.iq-timeline b{font-size:var(--iq-type-label-size);font-weight:500}.iq-timeline p,.iq-timeline small{font-size:var(--iq-type-caption-size);color:var(--iq-muted)}.iq-tree details{margin-left:12px}.iq-tree summary,.iq-tree-file{display:flex;align-items:center;gap:8px;padding:8px;font-size:var(--iq-type-label-size);cursor:pointer}.iq-tree-file{margin-left:24px}.iq-card{padding:24px;background:var(--iq-raised);border:1px solid var(--iq-raised-edge);border-radius:12px}.iq-card-head,.iq-card-foot{display:flex;align-items:center;justify-content:space-between;gap:16px}.iq-card h3{font-size:var(--iq-type-lead-size)}.iq-card p{margin:12px 0 22px}.iq-card-foot{font-size:var(--iq-type-caption-size);color:var(--iq-muted)}
.iq-alert{display:flex;align-items:flex-start;gap:12px;padding:16px;border-radius:9px;background:var(--iq-surface);border:1px solid var(--iq-line)}.iq-alert>svg{margin-top:1px}.iq-alert b{display:block;font-weight:500;font-size:var(--iq-type-label-size)}.iq-alert p{font-size:var(--iq-type-caption-size);line-height:1.6;margin-top:4px;color:var(--iq-muted)}.iq-alert.success{color:var(--iq-success);background:var(--iq-success-bg);border-color:transparent}.iq-alert.warning{color:var(--iq-warning);background:var(--iq-warning-bg);border-color:transparent}.iq-alert.danger{color:var(--iq-danger);background:var(--iq-danger-bg);border-color:transparent}.iq-alert.info{color:var(--iq-info);background:var(--iq-info-bg);border-color:transparent}.iq-inline{display:flex;align-items:center;gap:8px;font-size:var(--iq-type-label-size);color:var(--iq-muted)}.iq-inline.success{color:var(--iq-success)}.iq-inline.danger{color:var(--iq-danger)}.iq-banner{display:flex;align-items:center;gap:12px;padding:12px 16px;border-top:1px solid var(--iq-line);border-bottom:1px solid var(--iq-line);background:var(--iq-surface)}.iq-banner p{flex:1;font-size:var(--iq-type-label-size)}.iq-empty{padding:32px 16px;text-align:center;display:flex;align-items:center;flex-direction:column}.iq-empty-icon{display:grid;place-items:center;width:48px;height:48px;color:var(--iq-muted);margin-bottom:16px}.iq-empty h3{font-size:var(--iq-type-heading3-size)}.iq-empty p{font-size:var(--iq-type-interface-size);line-height:1.6;color:var(--iq-muted);max-width:350px;margin:10px 0 22px}.iq-skeleton{background:var(--iq-line);border-radius:4px;animation:iq-breathe calc(2 * var(--iq-motion-scene)) var(--iq-ease) 3 forwards}.iq-spinner{display:inline-block;width:16px;height:16px;border:1.5px solid currentColor;border-right-color:transparent;border-radius:50%;animation:iq-spin var(--iq-motion-scene) linear infinite}.iq-toasts{position:fixed;right:24px;bottom:24px;z-index:200;display:flex;flex-direction:column;gap:10px;max-width:calc(100vw - 32px);width:390px}.iq-toast{display:flex;align-items:flex-start;gap:12px;border:1px solid var(--iq-line);border-radius:12px;background:var(--iq-raised);color:var(--iq-ink);box-shadow:var(--iq-shadow-2);padding:16px;animation:iq-toast-in var(--iq-motion-standard) var(--iq-ease)}.iq-toast.leaving{opacity:0;transform:translateY(6px);transition:opacity var(--iq-motion-standard) var(--iq-ease),transform var(--iq-motion-standard) var(--iq-ease)}.iq-toast-copy{flex:1;min-width:0}.iq-toast-copy b{font-weight:500;font-size:var(--iq-type-label-size)}.iq-toast-copy p{margin-top:4px;font-size:var(--iq-type-caption-size);color:var(--iq-muted)}.iq-toast-icon{color:var(--iq-muted)}.tone-success .iq-toast-icon{color:var(--iq-success)}.tone-danger .iq-toast-icon{color:var(--iq-danger)}.iq-toast-action{background:transparent;color:var(--iq-accent);font-size:var(--iq-type-caption-size);padding:2px 0}.iq-toast>.iq-btn{margin:-6px -8px 0 0}
/* Overlay owns focus and modality; visual layer is intentionally quiet. */
iq-dialog{display:contents}.iq-dialog{padding:0;border:1px solid var(--iq-line);border-radius:18px;width:min(540px,calc(100vw - 32px));max-height:calc(100dvh - 40px);background:var(--iq-raised);color:var(--iq-ink);box-shadow:var(--iq-shadow-3);overflow:auto;overscroll-behavior:contain}.iq-dialog::backdrop{background:var(--iq-scrim)}.iq-dialog-inner{padding:30px}.iq-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:28px}.iq-dialog-head h2{font-size:1.75rem;line-height:1.2;letter-spacing:var(--iq-tracking-display)}.iq-dialog-head p{font-size:var(--iq-type-interface-size);color:var(--iq-muted);line-height:1.6;margin-top:10px}.iq-dialog-head>.iq-btn{margin:-6px -6px 0 0}.iq-dialog-footer{display:flex;justify-content:flex-end;gap:10px;margin-top:28px;padding-top:22px;border-top:1px solid var(--iq-line);flex-wrap:wrap}.iq-dialog-brand{display:none}.iq-drawer{height:100dvh;max-height:100dvh;width:min(680px,100vw);margin:0 0 0 auto;border-radius:0;border-width:0 0 0 1px;max-width:100vw}.iq-drawer .iq-dialog-inner{padding:32px 40px}.iq-accordion{border-bottom:1px solid var(--iq-line)}.iq-accordion summary{list-style:none;padding:18px 0;display:flex;justify-content:space-between;gap:20px;cursor:pointer;font-size:var(--iq-type-interface-size);font-weight:500}.iq-accordion summary::-webkit-details-marker{display:none}.iq-accordion[open] summary svg{transform:rotate(45deg)}.iq-accordion>div{font-size:var(--iq-type-interface-size);line-height:1.7;color:var(--iq-muted);padding:0 0 20px;max-width:60ch}
/* Reserve the current 4px outer focus paint; keep the underline inside layout. */
.iq-tabs-list{display:flex;gap:24px;padding:4px;background:linear-gradient(var(--iq-line),var(--iq-line)) left bottom/100% 1px no-repeat content-box;overflow:auto;scroll-padding-inline:4px;scrollbar-width:thin}
.iq-tabs-list button{flex:none;background:transparent;color:var(--iq-muted);padding:12px 0;white-space:nowrap;border-bottom:2px solid transparent;font-size:var(--iq-type-label-size)}
.iq-tabs-list button[aria-selected=true]{color:var(--iq-ink);border-color:var(--iq-ink)}
.iq-tab-panel{padding:24px 0}.iq-breadcrumb{display:flex;align-items:center;gap:9px;color:var(--iq-muted);font-size:var(--iq-type-caption-size);flex-wrap:wrap}.iq-breadcrumb a{text-decoration:none}.iq-breadcrumb a:hover{text-decoration:underline}.iq-pagination{display:flex;gap:4px;align-items:center;flex-wrap:wrap}.iq-pagination button{min-width:36px;min-height:36px;border-radius:6px;background:none;border:1px solid transparent}.iq-pagination button[aria-current=page]{border-color:var(--iq-line);background:var(--iq-raised);font-weight:600}.iq-side-nav{display:flex;flex-direction:column;gap:4px}.iq-side-nav a,.iq-side-nav button{display:flex;align-items:center;gap:10px;background:none;padding:10px 12px;border-radius:7px;text-decoration:none;font-size:var(--iq-type-label-size);color:var(--iq-muted);text-align:left}.iq-side-nav .active{background:var(--iq-surface);color:var(--iq-ink)}.iq-side-nav .count{margin-left:auto}.iq-stepper{display:flex;list-style:none;padding:0;margin:0;gap:18px}.iq-stepper li{display:flex;align-items:center;gap:9px;font-size:var(--iq-type-caption-size);color:var(--iq-muted);flex:1}.iq-step-index{display:grid;place-items:center;width:26px;height:26px;border:1px solid var(--iq-control);border-radius:50%;flex-shrink:0}.iq-stepper .current{color:var(--iq-ink)}.iq-stepper .current .iq-step-index,.iq-stepper .done .iq-step-index{background:var(--iq-primary);color:var(--iq-on-primary);border-color:var(--iq-primary)}
/* File previews never inject the uploaded file into HTML or SVG. */
.iq-dropzone{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:32px 20px;border:1px dashed var(--iq-control);border-radius:12px;background:var(--iq-raised);min-height:230px}.iq-dropzone.dragover{border-style:solid;border-color:var(--iq-focus);background:var(--iq-accent-soft)}.iq-dropzone h3,.iq-dropzone b{font-size:var(--iq-type-body-size);font-weight:500}.iq-dropzone p{font-size:var(--iq-type-caption-size);color:var(--iq-muted);margin:8px 0 18px}.iq-upload-art{width:58px;height:62px;position:relative;margin-bottom:16px;color:var(--iq-muted)}.iq-upload-sheet{position:absolute;inset:8px 13px;border:1px solid var(--iq-control);border-radius:5px;background:var(--iq-raised);display:grid;place-items:center}.iq-upload-sheet:nth-child(1){transform:translate(-4px,-3px) rotate(-8deg)}.iq-upload-circle{position:absolute;bottom:0;right:0;width:23px;height:23px;border-radius:50%;background:var(--iq-primary);color:var(--iq-on-primary);display:grid;place-items:center}.iq-file-native{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}.iq-upload-list{margin-top:16px}.iq-file-item{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid var(--iq-line);min-width:0}.iq-file-item>div{min-width:0;flex:1}.iq-file-item b{display:block;font-weight:500;font-size:var(--iq-type-label-size);overflow-wrap:anywhere}.iq-file-item small{display:block;font-size:var(--iq-type-caption-size);color:var(--iq-muted);margin-top:4px}.iq-file-icon{width:36px;height:40px;border:1px solid var(--iq-line);border-radius:5px;display:grid;place-items:center;color:var(--iq-muted)}.iq-file-check{color:var(--iq-success)}
@keyframes iq-spin{to{transform:rotate(360deg)}}@keyframes iq-breathe{from,to{opacity:.55}50%{opacity:1}}@keyframes iq-toast-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:640px){.grid-2,.grid-3,.grid-4{grid-template-columns:minmax(0,1fr)}.iq-btn{white-space:normal}.iq-dialog-inner{padding:24px}.iq-drawer .iq-dialog-inner{padding:24px}.iq-toasts{right:16px;bottom:16px}.iq-stepper{gap:10px;flex-wrap:wrap}input,textarea,select,.iq-input-shell input,.iq-input-shell textarea,.iq-combo-input{font-size:var(--iq-type-body-size)}.iq-popup{max-width:calc(100vw - 16px)}}
@media(forced-colors:active){.iq-btn,.iq-check-box,.iq-radio-dot,.iq-switch-track,.iq-input-shell,.iq-select-trigger{border:1px solid ButtonText}.iq-switch input:checked+.iq-switch-track,.iq-check input:checked+.iq-check-box,.iq-radio input:checked+.iq-radio-dot{background:Highlight;border-color:Highlight;color:HighlightText;forced-color-adjust:none}.iq-switch-track::before{background:Canvas;forced-color-adjust:none}.iq-progress span{background:Highlight;forced-color-adjust:none}.iq-btn.primary,.iq-btn.accent{background:ButtonFace;color:ButtonText}.iq-segmented button[aria-pressed=true]{outline:2px solid Highlight}.iq-dialog::backdrop{background:Canvas;opacity:.7}}
/* Nested calendar rows preserve the ARIA grid hierarchy. */
iq-calendar{max-width:340px;width:100%;border:1px solid var(--iq-raised-edge);border-radius:14px;background:var(--iq-raised);padding:18px}.iq-calendar-grid{display:block}.iq-calendar-grid>[role=row]{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;margin-bottom:3px}.iq-calendar-grid [role=gridcell]{display:block;min-width:0}.iq-calendar-grid button{width:100%}.iq-calendar-grid [role=gridcell][aria-selected=true]{background:none;color:inherit}.iq-tooltip{pointer-events:auto}.iq-dropzone>small{font-size:var(--iq-type-meta-size);color:var(--iq-muted)}

/* IQUIPAGE 04 / composition. 12-column desktop foundation; no visible design grid. */
.page-shell{width:min(calc(100% - var(--iq-grid-margin)*2),var(--iq-grid-max));margin:0 auto}.site-header{position:sticky;top:0;z-index:30;background:var(--iq-canvas);border-bottom:1px solid var(--iq-line)}.site-header-inner{width:min(calc(100% - var(--iq-grid-margin)*2),var(--iq-grid-max));min-height:76px;margin:auto;display:flex;align-items:center;gap:36px}.site-brand{display:flex;align-items:center;gap:11px;text-decoration:none;white-space:nowrap}.site-brand>.iq-mark{width:26px;height:25px}.site-brand>span{font-size:.9375rem;font-weight:600;letter-spacing:var(--iq-tracking-body)}.site-brand small{font-size:var(--iq-type-caption-size);color:var(--iq-muted);padding-left:14px;margin-left:5px;border-left:1px solid var(--iq-line)}.site-nav{display:flex;gap:27px;align-self:stretch;margin-left:auto}.site-nav a{position:relative;display:flex;align-items:center;color:var(--iq-muted);font-size:var(--iq-type-label-size);text-decoration:none;white-space:nowrap}.site-nav a[aria-current=page]{color:var(--iq-ink)}.site-nav a[aria-current=page]::after{content:"";position:absolute;height:2px;bottom:-1px;left:0;right:0;background:var(--iq-ink)}.site-nav a:hover{color:var(--iq-ink)}.header-actions{display:flex;align-items:center;gap:12px}.search-trigger{display:flex;align-items:center;gap:9px;background:transparent;padding:8px 0;font-size:var(--iq-type-caption-size);color:var(--iq-muted)}.search-trigger kbd{font-family:var(--iq-mono);font-size:var(--iq-type-meta-size);background:var(--iq-surface);padding:3px 5px;border-radius:4px}.theme-switch{--h:34px}.mobile-menu{display:none}.site-footer{width:min(calc(100% - var(--iq-grid-margin)*2),var(--iq-grid-max));margin:72px auto 0;padding:26px 0 34px;border-top:1px solid var(--iq-line);display:flex;align-items:center;gap:32px;font-size:var(--iq-type-caption-size);color:var(--iq-muted)}.site-footer>a{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--iq-ink);font-weight:600;font-size:var(--iq-type-caption-size);letter-spacing:var(--iq-tracking-body)}.site-footer .iq-mark{width:20px;height:20px}.site-footer>span{margin-left:auto}.sample-overline{display:block;font-size:var(--iq-type-meta-size);font-weight:500;letter-spacing:var(--iq-tracking-caps);line-height:1.6;text-transform:uppercase}.eyebrow{font-size:var(--iq-type-meta-size);letter-spacing:var(--iq-tracking-caps);color:var(--iq-muted);text-transform:uppercase}.home-intro{padding:36px 0 46px}.home-meta{display:flex;justify-content:space-between;gap:24px;align-items:center;color:var(--iq-muted);margin-bottom:32px}.home-meta>span:last-child{font-size:.6875rem}.home-head{display:grid;grid-template-columns:2fr 1fr;gap:48px;align-items:end}.home-head h1{font-size:clamp(46px,5.3vw,76px);line-height:var(--iq-type-heading1-lineHeight);letter-spacing:var(--iq-tracking-display);font-weight:500}.home-lead{padding:0 0 3px 10px}.home-lead p{font-size:var(--iq-type-title-size);line-height:1.55;color:var(--iq-muted);letter-spacing:var(--iq-tracking-h2);margin:0 0 22px}.home-feature{display:grid;grid-template-columns:5fr 7fr;min-height:466px;border-radius:18px;overflow:hidden;background:var(--iq-surface)}.feature-editorial{display:flex;flex-direction:column;background:var(--iq-story-surface);color:var(--iq-story-ink);padding:40px;position:relative;overflow:hidden}.feature-editorial .sample-overline{font-size:var(--iq-type-meta-size);color:var(--iq-story-muted);letter-spacing:var(--iq-tracking-caps)}.feature-editorial h2{font-size:clamp(26px,2.7vw,38px);line-height:var(--iq-type-heading2-lineHeight);letter-spacing:var(--iq-tracking-display);margin:33px 0 20px}.feature-editorial h2>span{color:var(--iq-story-muted)}.feature-editorial p{font-size:var(--iq-type-label-size);line-height:1.7;color:var(--iq-story-muted)}.text-action{display:inline-flex;align-items:center;gap:12px;text-decoration:none;font-size:var(--iq-type-label-size);font-weight:500}.text-action:hover{text-decoration:underline}.feature-editorial>.text-action{margin-top:auto;padding-top:34px;align-self:flex-start}.editorial-index{display:flex;align-items:center;gap:5px;color:var(--iq-story-subtle);font-size:var(--iq-type-meta-size);margin-top:32px}.editorial-index>span{width:22px;height:2px;background:var(--iq-story-line-strong)}.editorial-index>span:first-child{background:var(--iq-story-mark)}.editorial-index>i{font:var(--iq-type-meta-size) var(--iq-mono);margin-left:auto}.document-stage{display:flex;align-items:center;justify-content:center;padding:35px 38px;background:var(--iq-surface)}.proof-document{width:100%;max-width:570px;background:var(--iq-raised);border:1px solid var(--iq-raised-edge);box-shadow:0 12px 30px var(--iq-shadow-color-soft);border-radius:10px;overflow:hidden}.proof-bar{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:15px 24px;border-bottom:1px solid var(--iq-line);color:var(--iq-muted);font-size:.6875rem}.proof-bar span:first-child{display:flex;align-items:center;gap:7px}.proof-bar span:last-child{font-family:var(--iq-mono);font-size:.625rem}.proof-copy{padding:27px 30px 23px}.proof-tag{display:flex;align-items:center;gap:6px;font-size:.6875rem;color:var(--iq-muted);margin-bottom:15px}.proof-copy h2{font-size:1.6875rem;line-height:var(--iq-type-heading2-lineHeight);letter-spacing:var(--iq-tracking-display)}.proof-copy>p{font-size:var(--iq-type-label-size);line-height:1.7;color:var(--iq-muted);margin:14px 0 22px}.proof-checks{display:flex;flex-direction:column;gap:11px;font-size:var(--iq-type-caption-size)}.proof-checks span{display:flex;gap:9px;align-items:center}.proof-checks svg{color:var(--iq-success)}.proof-checks .pending{color:var(--iq-muted)}.proof-checks .pending svg{color:var(--iq-control)}.proof-bottom{border-top:1px solid var(--iq-line);margin-top:24px;padding-top:18px;display:flex;justify-content:space-between;align-items:center;gap:15px}.proof-bottom>div{display:flex;align-items:center;gap:9px;font-size:.625rem;color:var(--iq-muted)}.proof-bottom .iq-avatars{--avatar-size:var(--iq-avatar-size-sm)}.proof-bottom>.iq-btn{font-size:.6875rem}.home-caption{display:flex;justify-content:space-between;gap:24px;font-size:.6875rem;color:var(--iq-muted);margin:13px 0 0}.home-paths{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;padding:64px 0 60px;border-bottom:1px solid var(--iq-line)}.home-paths>a{position:relative;text-decoration:none;padding:0 20px 0 0;display:block}.home-paths>a>span{font-size:.625rem;color:var(--iq-muted);letter-spacing:var(--iq-tracking-caps)}.home-paths h2{font-size:1.5rem;line-height:1.2;letter-spacing:var(--iq-tracking-display);margin:16px 0 12px}.home-paths p{color:var(--iq-muted);font-size:var(--iq-type-interface-size);line-height:1.65}.home-paths>a>svg{position:absolute;right:0;top:0;transition:transform var(--iq-motion-fast)}.home-paths>a:hover>svg{transform:translateX(4px)}.type-statement{padding:70px 0 15px;display:grid;grid-template-columns:1fr 2fr;gap:24px}.type-statement>span{font-size:var(--iq-type-meta-size);letter-spacing:var(--iq-tracking-caps);padding-top:10px;color:var(--iq-muted)}.type-statement>p{font:500 clamp(25px,2.9vw,40px)/1.2 var(--iq-display);letter-spacing:var(--iq-tracking-display)}.type-statement em{font-style:normal;color:var(--iq-muted)}.type-statement>a{grid-column:2;justify-self:start}
/* Catalog: one entry, four clear documentation tabs; no parallel control panels. */
.library-shell{width:min(calc(100% - var(--iq-grid-margin)*2),var(--iq-grid-max));margin:0 auto;display:grid;grid-template-columns:218px minmax(0,1fr);gap:56px;align-items:start}.catalog-nav{position:sticky;top:77px;max-height:calc(100dvh - 78px);overflow:auto;padding:35px 20px 24px 0;border-right:1px solid var(--iq-line);scrollbar-width:thin}.catalog-heading{display:flex;align-items:center;justify-content:space-between;font-size:.9375rem;font-weight:500;margin-bottom:20px}.catalog-heading a{text-decoration:none}.catalog-heading>span{font:.6875rem var(--iq-mono);color:var(--iq-muted)}.catalog-search{display:flex;align-items:center;gap:7px;padding:10px 0;border-bottom:1px solid var(--iq-control);color:var(--iq-muted);margin-bottom:24px}.catalog-search input{font-size:var(--iq-type-caption-size);width:100%;min-width:0;background:transparent;border:0;outline:0}.catalog-search:focus-within{border-color:var(--iq-focus)}.catalog-group{margin-bottom:10px}.catalog-group>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px;font-size:var(--iq-type-caption-size);font-weight:500;min-height:32px;padding:4px 0}.catalog-group>summary::-webkit-details-marker{display:none}.catalog-group>summary>span{font-size:.625rem;color:var(--iq-muted);margin-left:auto;font-weight:400}.catalog-group>summary>svg{color:var(--iq-muted)}.catalog-group[open]>summary>svg{transform:rotate(180deg)}.catalog-group>div{padding:5px 0 7px}.catalog-group a{display:block;text-decoration:none;font-size:var(--iq-type-caption-size);line-height:1.45;padding:8px 10px;margin:1px 0;color:var(--iq-muted);border-radius:6px}.catalog-group a:hover{color:var(--iq-ink);background:var(--iq-surface)}.catalog-group a[aria-current=page]{color:var(--iq-ink);background:var(--iq-surface);font-weight:500}.catalog-help{display:flex;align-items:center;gap:9px;text-decoration:none;color:var(--iq-muted);font-size:.6875rem;padding-top:18px;margin-top:20px;border-top:1px solid var(--iq-line)}.catalog-empty{font-size:var(--iq-type-caption-size);color:var(--iq-muted);line-height:1.6;padding:12px 0}.catalog-toggle{display:none}.component-page{padding:34px 0 50px;min-width:0}.component-breadcrumb{font-size:var(--iq-type-meta-size);color:var(--iq-muted);display:flex;gap:10px;margin-bottom:27px}.component-breadcrumb span{color:var(--iq-control)}.component-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;margin-bottom:30px}.component-heading h1{font-size:var(--iq-type-heading1-size);line-height:1.15;font-weight:500;letter-spacing:var(--iq-tracking-display)}.component-heading p{font-size:.9375rem;color:var(--iq-muted);line-height:1.6;max-width:57ch;margin-top:13px}.component-canonical{font-size:var(--iq-type-meta-size);color:var(--iq-muted);border:1px solid var(--iq-line);padding:5px 9px;border-radius:5px;white-space:nowrap;margin-top:8px}.component-specimen .iq-tab-panel{padding:22px 0 0}.component-specimen .iq-tabs-list{gap:26px}.component-specimen .iq-tabs-list button{font-size:var(--iq-type-label-size);padding-bottom:14px}.specimen-surface{background:var(--iq-surface);border-radius:12px;padding:44px;min-height:322px;display:flex;flex-direction:column;justify-content:center;gap:18px}.specimen-surface>iq-calendar{align-self:center;width:100%}.specimen-surface>.stack{width:100%}.specimen-surface>iq-select,.specimen-surface>iq-combobox{max-width:440px}.specimen-surface>.row{max-width:100%}.specimen-dark{padding:0;overflow:hidden}.button-context{max-width:490px;margin:0 auto;width:100%;padding:5px 0}.button-context>.sample-overline{color:var(--iq-muted);font-size:var(--iq-type-meta-size)}.button-context h3{font-size:1.6875rem;line-height:var(--iq-type-heading3-lineHeight);margin:22px 0 12px;letter-spacing:var(--iq-tracking-display)}.button-context p{font-size:var(--iq-type-interface-size);line-height:1.6;color:var(--iq-muted);margin-bottom:26px;max-width:390px}.preview-options{display:flex;align-items:center;gap:16px;margin-top:18px;flex-wrap:wrap}.preview-options>span{color:var(--iq-muted);font-size:var(--iq-type-meta-size)}.preview-options>span:nth-of-type(2){margin-left:auto}.preview-options .iq-segmented{background:transparent;border:1px solid var(--iq-line);padding:2px}.preview-options .iq-segmented button{padding:6px 11px;min-height:30px;font-size:var(--iq-type-meta-size)}.preview-options .iq-segmented button[aria-pressed=true]{box-shadow:none;background:var(--iq-surface)}.preview-hint{font-size:var(--iq-type-meta-size);color:var(--iq-muted);margin-top:14px}.component-bottom{display:grid;grid-template-columns:1.15fr 1fr;gap:40px;padding-top:30px;margin-top:30px;border-top:1px solid var(--iq-line)}.component-bottom span{font-size:var(--iq-type-meta-size);letter-spacing:var(--iq-tracking-caps);color:var(--iq-muted)}.component-bottom p{font-size:var(--iq-type-label-size);line-height:1.7;color:var(--iq-muted);margin-top:10px}.related-components{margin-top:32px;display:flex;align-items:center;gap:20px;flex-wrap:wrap;font-size:var(--iq-type-caption-size)}.related-components>span{color:var(--iq-muted)}.related-components a{display:flex;align-items:center;gap:8px;text-decoration:none}.related-components a:hover{text-decoration:underline}.spec-note{font-size:var(--iq-type-caption-size);line-height:1.65;color:var(--iq-muted);margin:18px 0}.state-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--iq-line);border-radius:10px;overflow:hidden;gap:1px;background:var(--iq-line)}.state-grid>div{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;background:var(--iq-raised);min-height:146px;padding:24px 14px}.state-grid>div>span{font-size:var(--iq-type-meta-size);color:var(--iq-muted)}.visual-focus{outline:2px solid var(--iq-focus);outline-offset:4px}.field-states-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;padding:24px;background:var(--iq-surface);border-radius:10px}.contract-grid{display:grid;gap:26px;padding:28px;background:var(--iq-surface);border-radius:12px}.contract-grid h3{font-size:var(--iq-type-title-size);margin-bottom:10px}.contract-grid p{font-size:var(--iq-type-interface-size);color:var(--iq-muted);line-height:1.7;max-width:66ch}.spec-docs{max-width:68ch;padding:12px 0}.spec-docs h3{font-size:var(--iq-type-lead-size);margin:0 0 12px}.spec-docs p{font-size:.9375rem;line-height:1.7;color:var(--iq-muted);margin-bottom:32px}.code-head{display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:var(--iq-type-caption-size);color:var(--iq-muted);margin-bottom:16px}.source-code{margin:0;background:var(--iq-surface);color:var(--iq-ink);padding:24px;border-radius:9px;overflow:auto;font:var(--iq-type-caption-size)/1.7 var(--iq-mono);white-space:pre-wrap;overflow-wrap:anywhere;tab-size:2}.field-context{max-width:460px;display:flex;flex-direction:column;gap:26px;margin:0 auto;width:100%}.preference-sample{max-width:460px;margin:auto;width:100%}.preference-head{margin-bottom:18px}.preference-head>svg{color:var(--iq-muted);margin-bottom:18px}.preference-head h3{font-size:1.625rem;margin-bottom:10px}.preference-head>p{font-size:var(--iq-type-interface-size);line-height:1.65;color:var(--iq-muted);max-width:350px}.feature-sample{position:relative;padding:36px 40px;background:var(--iq-story-surface);color:var(--iq-story-ink);overflow:hidden}.feature-sample>.sample-overline{color:var(--iq-story-muted)}.feature-sample h3{font-size:2.125rem;line-height:var(--iq-type-heading3-lineHeight);letter-spacing:var(--iq-tracking-display);margin:24px 0 18px}.feature-sample p{font-size:var(--iq-type-interface-size);line-height:1.6;max-width:350px;color:var(--iq-story-muted)}.feature-sample>.text-action{margin-top:32px}.feature-lines{position:absolute;right:45px;bottom:38px;display:flex;gap:5px;align-items:flex-end;pointer-events:none}.feature-lines span{height:38px;width:3px;background:var(--iq-story-line-strong)}.feature-lines span:nth-child(2){height:58px}.feature-lines span:nth-child(3){height:82px;background:var(--iq-story-mark)}.context-layer{width:100%;max-width:430px;margin:auto;display:flex;flex-direction:column;gap:20px}.context-record{padding:26px;background:var(--iq-raised);border:1px solid var(--iq-line);border-radius:9px;display:flex;flex-direction:column;gap:10px}.context-record>span{font-size:var(--iq-type-meta-size);color:var(--iq-muted)}.context-record>b{font-size:1.4375rem;font-weight:500;letter-spacing:var(--iq-tracking-h2)}.context-record>small{color:var(--iq-muted)}.context-status{padding:18px;display:flex;gap:12px;background:var(--iq-raised);border:1px solid var(--iq-line);border-radius:9px}.context-status>svg{color:var(--iq-success)}.context-status b{font-size:var(--iq-type-label-size);font-weight:500}.context-status p{font-size:var(--iq-type-caption-size);color:var(--iq-muted);margin-top:5px;line-height:1.6}.copy-example{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--iq-line);background:var(--iq-raised);border-radius:9px;padding:10px 12px}.copy-example code{font:var(--iq-type-label-size) var(--iq-mono)}.dialog-preview{max-width:430px;width:100%;margin:auto}.dialog-preview>.sample-overline{color:var(--iq-muted)}.dialog-preview h3{font-size:1.75rem;margin:22px 0 12px}.dialog-preview p{font-size:var(--iq-type-interface-size);color:var(--iq-muted);line-height:1.7;margin-bottom:24px}.sample-appbar{display:flex;align-items:center;gap:24px;background:var(--iq-raised);border:1px solid var(--iq-line);padding:12px 20px;border-radius:9px}.sample-appbar>b{font-weight:500}.sample-appbar>nav{display:flex;gap:18px;margin-left:auto}.sample-appbar a{text-decoration:none;font-size:var(--iq-type-caption-size);color:var(--iq-muted)}.layout-demo{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.layout-demo>*{padding:16px;background:var(--iq-raised);border:1px solid var(--iq-line);border-radius:4px;text-align:center;font:var(--iq-type-caption-size) var(--iq-mono);color:var(--iq-muted)}.layout-span{grid-column:1/-1}.demo-search-results{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.demo-search-results>span{font-size:var(--iq-type-caption-size);padding:6px 10px;background:var(--iq-raised);border:1px solid var(--iq-line);border-radius:5px}.demo-progress-value{font-size:var(--iq-type-heading3-size);letter-spacing:var(--iq-tracking-h2)}.demo-skeleton-card{border:1px solid var(--iq-line);padding:24px;border-radius:12px;background:var(--iq-raised)}.preview-nav{display:flex;align-items:center;gap:24px}.preview-nav button{background:none;font-size:var(--iq-type-label-size);color:var(--iq-muted)}.preview-nav .active{color:var(--iq-ink)}
/* Examples are complete situations, not miniature marketing screenshots. */
.example-nav{display:flex;gap:26px;align-items:center;border-bottom:1px solid var(--iq-line);padding:19px 0;font-size:var(--iq-type-caption-size)}.example-nav a{color:var(--iq-muted);text-decoration:none;white-space:nowrap}.example-nav a[aria-current=page]{color:var(--iq-ink);font-weight:500}.example-nav a:first-child{margin-right:12px}.example-nav>span{margin-left:auto;font-size:var(--iq-type-meta-size);color:var(--iq-muted)}.section-intro{padding:54px 0 46px}.section-intro>.sample-overline,.object-intro>.sample-overline{color:var(--iq-muted);font-size:var(--iq-type-meta-size)}.section-intro h1,.object-intro h1{font-size:clamp(38px,4.3vw,60px);line-height:var(--iq-type-heading1-lineHeight);letter-spacing:var(--iq-tracking-display);margin:26px 0 20px}.section-intro>p,.object-intro>p{font-size:1.0625rem;line-height:1.65;color:var(--iq-muted);max-width:660px}.example-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.example-cover{display:block;text-decoration:none;min-width:0}.example-cover>div:first-child{height:310px;border-radius:12px;overflow:hidden;transition:transform var(--iq-motion-enter) var(--iq-ease)}.example-cover:hover>div:first-child{transform:translateY(-3px)}.example-cover-caption{position:relative;padding:23px 0 0}.example-cover-caption>span{font-size:var(--iq-type-meta-size);color:var(--iq-muted);letter-spacing:var(--iq-tracking-caps)}.example-cover-caption>svg{position:absolute;top:24px;right:0}.example-cover-caption h2{font-size:1.625rem;margin:17px 0 10px;letter-spacing:var(--iq-tracking-display)}.example-cover-caption p{font-size:var(--iq-type-interface-size);line-height:1.6;color:var(--iq-muted)}.cover-work{background:var(--iq-surface);padding:42px 24px}.mini-work-heading{display:flex;justify-content:space-between;gap:20px;margin-bottom:27px}.mini-work-heading>b{font-weight:500;font-size:1.5rem;letter-spacing:var(--iq-tracking-display)}.mini-work-heading>span{font-size:var(--iq-type-meta-size);color:var(--iq-muted);padding-top:6px}.cover-work>div:not(:first-child){display:flex;gap:8px;align-items:center;padding:18px 0;border-top:1px solid var(--iq-line);font-size:.6875rem}.cover-work i{font-style:normal;font-size:.5625rem;margin-left:auto;color:var(--iq-muted)}.mini-status{width:10px;height:10px;border:1px solid var(--iq-control);border-radius:50%;flex-shrink:0}.mini-status.done{background:var(--iq-control)}.cover-landing{background:var(--iq-story-surface);color:var(--iq-story-ink);padding:27px 32px;display:flex;flex-direction:column}.cover-landing>span{color:var(--iq-story-muted);font-size:.5rem;letter-spacing:var(--iq-tracking-caps)}.cover-landing strong{font:500 2.6875rem/1.02 var(--iq-display);letter-spacing:var(--iq-tracking-display);margin:27px 0 0}.cover-landing strong em{font-style:normal;color:var(--iq-story-subtle)}.cover-landing>i{display:flex;align-items:center;gap:9px;font-style:normal;font-size:.625rem;margin-top:auto}.cover-object{position:relative;display:flex;flex-direction:column;padding:25px 30px;background:var(--iq-surface);border:1px solid var(--iq-line)}.cover-object>.iq-mark{width:27px;height:27px}.cover-object>span{position:absolute;right:27px;top:30px;font-size:.5rem;letter-spacing:var(--iq-tracking-caps)}.cover-object strong{font:400 2.875rem/1.03 var(--iq-display);letter-spacing:var(--iq-tracking-display);margin-top:33px}.cover-object>div{margin-top:auto;border-top:1px solid var(--iq-line);padding-top:13px;display:flex;justify-content:space-between}.cover-object i{font:.5625rem var(--iq-mono);color:var(--iq-muted)}
/* Guides */
.rules-shell{width:min(calc(100% - var(--iq-grid-margin)*2),var(--iq-grid-max));margin:auto;display:grid;grid-template-columns:210px minmax(0,1fr);gap:80px}.rules-nav{display:flex;flex-direction:column;gap:7px;padding:42px 0;position:sticky;top:77px;align-self:start}.rules-nav>span{font-size:var(--iq-type-interface-size);font-weight:500;margin-bottom:20px}.rules-nav>a{font-size:var(--iq-type-caption-size);text-decoration:none;color:var(--iq-muted);padding:8px 0}.rules-nav>a[aria-current=page]{color:var(--iq-ink);font-weight:500}.rules-page{padding:44px 0 24px;max-width:880px;min-width:0}.rules-page>.sample-overline{font-size:var(--iq-type-meta-size);color:var(--iq-muted)}.rules-page>h1{font-size:clamp(38px,4.2vw,58px);line-height:var(--iq-type-heading1-lineHeight);letter-spacing:var(--iq-tracking-display);margin:26px 0 24px}.rules-lead{font-size:var(--iq-type-title-size);color:var(--iq-muted);line-height:1.65;max-width:62ch;margin-bottom:46px}.principle-list{border-top:1px solid var(--iq-line)}.principle-list>article{display:grid;grid-template-columns:48px 1fr;gap:16px;border-bottom:1px solid var(--iq-line);padding:30px 0}.principle-list>article>span{font:var(--iq-type-caption-size) var(--iq-mono);color:var(--iq-muted);padding-top:6px}.principle-list h2{font-size:1.625rem;line-height:1.2;letter-spacing:var(--iq-tracking-h1)}.principle-list p{font-size:.9375rem;line-height:1.65;color:var(--iq-muted);max-width:61ch;margin:12px 0 0}.principle-list small{display:block;font-size:var(--iq-type-meta-size);color:var(--iq-muted);margin-top:16px}.note-panel{border-left:2px solid var(--iq-control);padding:2px 0 2px 20px;margin:36px 0 0}.note-panel b{font-size:var(--iq-type-interface-size);font-weight:500}.note-panel p{font-size:var(--iq-type-label-size);color:var(--iq-muted);line-height:1.7;margin-top:9px;max-width:70ch}.type-hero{display:flex;align-items:center;gap:42px;padding:42px 30px;background:var(--iq-surface);border-radius:12px;font:400 8.75rem/1 var(--iq-display);letter-spacing:var(--iq-tracking-display)}.type-hero>span{font-size:2.125rem;line-height:1.15;letter-spacing:var(--iq-tracking-display)}.type-hero>small{font:var(--iq-type-meta-size)/1.7 var(--iq-font);letter-spacing:var(--iq-tracking-body);color:var(--iq-muted);margin-left:auto}.type-scale{margin-top:36px}.type-scale>div{display:grid;grid-template-columns:180px 1fr;gap:24px;border-bottom:1px solid var(--iq-line);padding:25px 0;align-items:center}.type-scale>div>span{font-size:var(--iq-type-caption-size)}.type-scale small{display:block;font:var(--iq-type-meta-size) var(--iq-mono);line-height:1.7;color:var(--iq-muted);margin-top:6px}.type-scale p{margin:0}.type-display{font:500 clamp(28px,3.5vw,48px)/var(--iq-type-display-lineHeight) var(--iq-display);letter-spacing:var(--iq-tracking-display)}.type-heading{font:500 var(--iq-type-heading2-size)/var(--iq-type-heading2-lineHeight) var(--iq-display);letter-spacing:var(--iq-tracking-display)}.type-body{font-size:var(--iq-type-body-size);line-height:1.6;letter-spacing:var(--iq-tracking-h3)}.type-interface{font-size:var(--iq-type-interface-size);line-height:1.5;letter-spacing:var(--iq-tracking-body)}.type-label{font-size:var(--iq-type-label-size);line-height:1.45;font-weight:500;letter-spacing:var(--iq-tracking-body)}.type-caption{font-size:var(--iq-type-caption-size);line-height:1.5;color:var(--iq-muted);letter-spacing:var(--iq-tracking-body)}.role-swatches{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.role-swatches>div>span{display:block;height:114px;border-radius:8px;border:1px solid var(--iq-line);margin-bottom:15px}.role-swatches b{font-size:var(--iq-type-label-size);font-weight:500;display:block}.role-swatches code{font:var(--iq-type-meta-size) var(--iq-mono);color:var(--iq-muted);display:block;margin-top:5px}.tone-demonstration{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:44px}.tone-demonstration>div{padding:26px;border-radius:10px;min-height:244px}.tone-paper{background:var(--iq-surface)}.tone-ink{background:var(--iq-story-surface);color:var(--iq-story-ink)}.tone-demonstration span{font-size:var(--iq-type-meta-size)}.tone-demonstration h2{font-size:1.5625rem;line-height:var(--iq-type-heading2-lineHeight);margin:25px 0 16px}.tone-demonstration p{font-size:var(--iq-type-label-size);line-height:1.7;opacity:.85}.rules-subheading{font-size:1.75rem;margin:44px 0 22px}.rules-copy{font-size:.9375rem;line-height:1.75;color:var(--iq-muted);margin:24px 0;max-width:68ch}.motion-settings{display:flex;align-items:center;gap:18px;flex-wrap:wrap;font-size:var(--iq-type-caption-size);color:var(--iq-muted);margin-bottom:22px}.motion-proof{background:var(--iq-surface);padding:30px;border-radius:12px}.motion-proof-head{display:flex;justify-content:space-between;gap:20px;font-size:var(--iq-type-meta-size);letter-spacing:var(--iq-tracking-caps);color:var(--iq-muted);margin-bottom:30px}.motion-result{display:flex;align-items:center;gap:20px}.result-icon{display:grid;place-items:center;width:60px;height:60px;border-radius:12px;background:var(--iq-raised);border:1px solid var(--iq-line)}.motion-result h2{font-size:1.4375rem}.motion-result p{font-size:var(--iq-type-label-size);color:var(--iq-muted);line-height:1.6;margin-top:8px;max-width:45ch}.motion-state{font-size:var(--iq-type-meta-size);color:var(--iq-muted);margin-left:auto;white-space:nowrap}.accepted .result-icon,.accepted .motion-state{color:var(--iq-success)}.motion-evidence{display:flex;align-items:center;gap:28px;margin:30px 0;padding:18px 0;border-block:1px solid var(--iq-line);font-size:var(--iq-type-caption-size);color:var(--iq-muted)}.motion-evidence>span{display:flex;align-items:center;gap:8px}.motion-contracts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:35px}.motion-contracts>div>span{font:var(--iq-type-caption-size) var(--iq-mono);color:var(--iq-muted)}.motion-contracts h3{font-size:var(--iq-type-heading3-size);margin:17px 0 10px}.motion-contracts p{font-size:var(--iq-type-label-size);color:var(--iq-muted);line-height:1.7}.icon-proof{display:grid;grid-template-columns:1fr 1.3fr;gap:24px;background:var(--iq-surface);padding:40px 24px;border-radius:12px}.large-icon{display:flex;flex-direction:column;align-items:center;gap:22px}.large-icon>span{font:var(--iq-type-meta-size) var(--iq-mono);color:var(--iq-muted)}.icon-sizes{display:flex;justify-content:center;align-items:center;gap:23px;flex-wrap:wrap}.icon-sizes>div{display:flex;flex-direction:column;align-items:center;gap:20px}.icon-sizes span{font:var(--iq-type-meta-size) var(--iq-mono);color:var(--iq-muted)}.implementation-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:30px}.implementation-grid h2{font-size:1.4375rem;margin-bottom:20px}.implementation-grid p{font-size:var(--iq-type-interface-size);line-height:1.7;color:var(--iq-muted);margin-bottom:25px}
/* Product narrative: content-driven, finite, no scroll hijack. */
.landing-intro{display:grid;grid-template-columns:1.2fr 1fr;gap:90px;padding:58px 0 62px}.landing-intro .sample-overline{color:var(--iq-muted);font-size:var(--iq-type-meta-size)}.landing-intro h1{font-size:clamp(56px,6.6vw,92px);line-height:var(--iq-type-heading1-lineHeight);font-weight:500;letter-spacing:var(--iq-tracking-display);margin:28px 0}.landing-intro h1>span{color:var(--iq-muted)}.landing-intro>div>p{font-size:var(--iq-type-title-size);line-height:1.6;color:var(--iq-muted);margin:22px 0 28px}.landing-intro .row{gap:22px}.landing-intro .text-action{font-size:var(--iq-type-caption-size)}.landing-manifest{align-self:center;border-left:1px solid var(--iq-line);padding:10px 0 10px 48px}.landing-manifest>span{font-size:var(--iq-type-meta-size);color:var(--iq-muted);letter-spacing:var(--iq-tracking-caps);text-transform:uppercase}.landing-manifest>p{font:500 2.125rem/1.2 var(--iq-display);letter-spacing:var(--iq-tracking-display);color:var(--iq-ink)!important;margin:26px 0 40px!important}.landing-manifest em{font-style:normal;color:var(--iq-muted)}.landing-manifest>div{display:flex;gap:12px;align-items:center;color:var(--iq-muted);font-size:var(--iq-type-label-size);margin-top:16px}.landing-manifest svg{color:var(--iq-success)}.narrative{border:1px solid var(--iq-line);border-radius:15px;overflow:hidden}.narrative-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 26px;border-bottom:1px solid var(--iq-line)}.narrative-toolbar>span{font-size:var(--iq-type-meta-size);letter-spacing:var(--iq-tracking-caps);color:var(--iq-muted);text-transform:uppercase}.narrative-grid{display:grid;grid-template-columns:5fr 7fr;min-height:432px}.narrative-copy{padding:30px 35px}.narrative-steps{display:flex;flex-direction:column}.narrative-steps>button{display:flex;gap:19px;align-items:center;text-align:left;width:100%;padding:20px 0;background:transparent;border-bottom:1px solid var(--iq-line);color:var(--iq-muted)}.narrative-steps>button>span{font:.6875rem var(--iq-mono);align-self:flex-start;margin-top:8px}.narrative-steps>button>div{flex:1}.narrative-steps h2{font-size:1.6875rem}.narrative-steps p{font-size:var(--iq-type-caption-size);margin-top:7px;line-height:1.6}.narrative-steps>button>svg{opacity:0}.narrative-steps>button[aria-pressed=true]{color:var(--iq-ink)}.narrative-steps>button[aria-pressed=true]>svg{opacity:1}.narrative-caption{font-size:.6875rem;color:var(--iq-muted);line-height:1.7;margin-top:24px}.narrative-stage{background:var(--iq-story-surface);padding:36px 40px 24px;color:var(--iq-story-ink);display:flex;flex-direction:column}.narrative-frame{flex:1}.narrative-card{height:100%;display:flex;flex-direction:column;align-items:flex-start}.narrative-card>.row{width:100%;color:var(--iq-story-muted);font-size:var(--iq-type-meta-size);letter-spacing:var(--iq-tracking-caps);text-transform:uppercase}.narrative-card h3{font-size:2.3125rem;line-height:var(--iq-type-heading3-lineHeight);letter-spacing:var(--iq-tracking-display);margin:28px 0 18px}.narrative-card>p{font-size:var(--iq-type-interface-size);line-height:1.65;color:var(--iq-story-muted);max-width:42ch}.narrative-card-rule{width:100%;height:1px;background:var(--iq-story-line);margin:26px 0 20px}.narrative-card-result{display:flex;gap:8px;align-items:center;font-size:var(--iq-type-caption-size);color:var(--iq-story-muted)}.narrative-card>.text-action{margin:20px 0 0;font-size:var(--iq-type-caption-size)}.narrative-fine{display:flex;justify-content:space-between;border-top:1px solid var(--iq-story-line);padding-top:18px;margin-top:30px;font-size:.5rem;color:var(--iq-story-muted);letter-spacing:var(--iq-tracking-caps)}.landing-detail{display:grid;grid-template-columns:5fr 7fr;gap:70px;align-items:center;padding:90px 0}.landing-detail h2{font-size:2.625rem;line-height:var(--iq-type-heading2-lineHeight);letter-spacing:var(--iq-tracking-display);margin:22px 0 24px}.landing-detail p{font-size:var(--iq-type-body-size);line-height:1.7;color:var(--iq-muted);max-width:42ch;margin-bottom:25px}.landing-detail>.proof-document{justify-self:end}.landing-close{display:flex;justify-content:space-between;align-items:center;gap:50px;padding:50px 0;border-top:1px solid var(--iq-line)}.landing-close h2{font-size:2.5rem;line-height:var(--iq-type-heading2-lineHeight);letter-spacing:var(--iq-tracking-display)}.landing-close p{font-size:var(--iq-type-interface-size);line-height:1.65;color:var(--iq-muted);margin-bottom:22px}
/* Everyday workspace: fewer levels, full titles and restrained metadata. */
.work-page{padding-bottom:48px}.work-heading{display:flex;justify-content:space-between;gap:40px;align-items:flex-end;padding:42px 0 30px}.work-heading>.work-title>span{font-size:var(--iq-type-meta-size);letter-spacing:var(--iq-tracking-caps);color:var(--iq-muted)}.work-heading h1{font-size:2.875rem;letter-spacing:var(--iq-tracking-display);line-height:var(--iq-type-heading1-lineHeight);margin-top:15px}.work-heading p{font-size:.9375rem;color:var(--iq-muted);margin-top:13px;line-height:1.6}.work-heading .row{padding-bottom:4px}.work-summary{display:flex;align-items:center;gap:28px;padding:20px 0 24px;border-bottom:1px solid var(--iq-line);color:var(--iq-muted);font-size:var(--iq-type-caption-size)}.work-summary>div{display:flex;align-items:center;gap:9px}.work-summary b{font-weight:500;color:var(--iq-ink)}.work-summary .iq-progress{width:100px;margin-left:5px}.work-summary>.work-summary-note{margin-left:auto;font-size:var(--iq-type-meta-size)}.workspace-views{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:25px}.workspace-views nav{display:flex;align-items:center;gap:24px}.workspace-views nav a{display:flex;align-items:center;gap:8px;padding:12px 0;color:var(--iq-muted);font-size:var(--iq-type-label-size);border-bottom:2px solid transparent;text-decoration:none}.workspace-views nav a.active{color:var(--iq-ink);border-color:var(--iq-ink)}.workspace-views>span{font-size:var(--iq-type-meta-size);color:var(--iq-muted)}.workspace-tools{display:flex;align-items:center;gap:12px;padding:20px 0}.workspace-tools .iq-search-small{max-width:300px;flex:1}.workspace-tools>iq-select{margin-left:auto}.workspace-table{border:0;border-block:1px solid var(--iq-line);border-radius:0}.workspace-table th{background:transparent;height:46px;padding-top:10px;padding-bottom:10px}.workspace-table td{height:81px;padding:17px 14px}.workspace-table th,.workspace-table td{padding-inline:14px}.workspace-table .check-col{width:36px;padding-left:0}.workspace-table .iq-check{min-height:24px}.workspace-table .iq-check-box{width:16px;height:16px;border-radius:4px}.task-title{max-width:470px;width:43%}.task-id{font:var(--iq-type-meta-size) var(--iq-mono);color:var(--iq-muted);margin-bottom:5px}.task-title>button{font-size:var(--iq-type-interface-size);background:none;padding:0;text-align:left;line-height:1.5;letter-spacing:var(--iq-tracking-h3)}.task-title>button:hover{color:var(--iq-accent)}.task-person{display:flex;align-items:center;gap:8px;font-size:var(--iq-type-caption-size)}.workspace-table .iq-badge{background:transparent;border:0;padding:0;font-size:var(--iq-type-meta-size)}.workspace-table-foot{display:flex;justify-content:space-between;gap:20px;margin-top:16px;font-size:var(--iq-type-meta-size);color:var(--iq-muted)}.bulk-bar{display:flex;gap:20px;align-items:center;padding:12px 18px;border-radius:8px;background:var(--iq-surface);font-size:var(--iq-type-caption-size);margin-bottom:14px}.kanban{display:grid;grid-template-columns:repeat(4,minmax(200px,1fr));gap:18px;overflow:auto;padding-bottom:18px}.kanban-column{min-width:0;background:var(--iq-surface);border-radius:10px;padding:14px;min-height:370px}.kanban-column-header{display:flex;align-items:center;gap:8px;font-size:var(--iq-type-meta-size);font-weight:500;margin-bottom:19px}.kanban-column-header>span{margin-left:auto;color:var(--iq-muted)}.task-card{padding:15px;background:var(--iq-raised);border:1px solid var(--iq-raised-edge);border-radius:8px;margin-bottom:10px}.task-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.task-card-id{font:var(--iq-type-meta-size) var(--iq-mono);color:var(--iq-muted)}.task-card-top .iq-btn{--h:28px}.task-card-title{background:none;text-align:left;padding:0;font-size:var(--iq-type-label-size);line-height:1.5;min-height:54px}.task-card-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px}.task-card-footer>span{font-size:var(--iq-type-meta-size);color:var(--iq-muted)}.task-card.dragging{opacity:.4}.kanban-column.drag-over{outline:2px solid var(--iq-focus);outline-offset:-2px}.planning{overflow:auto;border:1px solid var(--iq-line);border-radius:10px}.planning-inner{min-width:860px}.plan-head,.plan-row{display:grid;grid-template-columns:320px 1fr;border-bottom:1px solid var(--iq-line)}.plan-row:last-child{border:0}.plan-head{padding:16px;font-size:var(--iq-type-meta-size);color:var(--iq-muted)}.plan-months{display:grid;grid-template-columns:repeat(4,1fr);text-align:center}.plan-row>button{text-align:left;line-height:1.5;padding:16px;background:transparent;font-size:var(--iq-type-label-size);border-right:1px solid var(--iq-line);min-height:72px}.plan-track{position:relative;background:repeating-linear-gradient(to right,transparent 0,transparent calc(25% - 1px),var(--iq-line) calc(25% - 1px),var(--iq-line) 25%)}.plan-bar{position:absolute;height:26px;top:calc(50% - 13px);border-radius:4px;background:var(--iq-accent-soft);border:1px solid var(--iq-accent);color:var(--iq-accent);font-size:var(--iq-type-meta-size);min-width:3px;overflow:hidden}.plan-bar.done{background:var(--iq-success-bg);border-color:var(--iq-success);color:var(--iq-success)}.work-note{display:flex;align-items:flex-start;gap:13px;border-top:1px solid var(--iq-line);margin-top:42px;padding-top:22px;color:var(--iq-muted);max-width:800px}.work-note p{font-size:var(--iq-type-caption-size);line-height:1.7}.task-drawer-title{font-size:2.125rem;line-height:1.15;letter-spacing:var(--iq-tracking-display);margin:36px 0 24px}.task-drawer-meta{display:flex;align-items:center;gap:22px;flex-wrap:wrap;padding:17px 0;border-block:1px solid var(--iq-line)}.task-drawer-meta .task-person{font-size:var(--iq-type-caption-size)}.task-drawer-section{margin:32px 0}.task-drawer-section h3{font-size:var(--iq-type-body-size);margin:0 0 15px}.task-drawer-section>p{font-size:.9375rem;line-height:1.8;color:var(--iq-muted);max-width:63ch}.task-evidence{font-size:var(--iq-type-interface-size)}.task-evidence .iq-check{font-size:var(--iq-type-label-size)}.comment{display:flex;gap:12px;margin:24px 0}.comment>div{flex:1;min-width:0}.comment b{font-size:var(--iq-type-caption-size);font-weight:500}.comment small{font-size:var(--iq-type-meta-size);color:var(--iq-muted);margin-left:10px}.comment p{margin-top:7px;font-size:var(--iq-type-interface-size);line-height:1.7;overflow-wrap:break-word}.comments-empty{font-size:var(--iq-type-label-size);color:var(--iq-muted);padding:6px 0 18px}.comment-compose textarea{min-height:70px;font-size:var(--iq-type-interface-size)}.comment-compose .iq-input-shell{align-items:flex-end}.comment-compose .iq-btn{margin:0 -6px 6px 0}.iq-command-input{display:flex;align-items:center;gap:14px;padding:20px 24px;border-bottom:1px solid var(--iq-line)}#command-dialog .iq-dialog-inner{padding:0}#command-dialog .iq-dialog{width:min(620px,calc(100vw - 32px));margin-top:min(18vh,160px)}.iq-command-input input{background:none;min-width:0;flex:1;border:0;outline:0;font-size:var(--iq-type-body-size)}.iq-command-input kbd{font:var(--iq-type-meta-size) var(--iq-mono);color:var(--iq-muted)}.iq-command-list{padding:10px;max-height:450px;overflow:auto}.iq-command-list>button{display:flex;align-items:center;gap:13px;padding:13px;border-radius:8px;background:transparent;width:100%;text-align:left}.iq-command-list>button>span{flex:1;font-size:var(--iq-type-interface-size)}.iq-command-list small{display:block;color:var(--iq-muted);font-size:var(--iq-type-meta-size);margin-top:4px}.iq-command-list>button:hover,.iq-command-list>button:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){background:var(--iq-surface)}.iq-command-foot{padding:12px 24px;border-top:1px solid var(--iq-line);font-size:var(--iq-type-meta-size);color:var(--iq-muted)}.code-dialog{max-height:60vh;overflow:auto}.code-dialog pre{font:var(--iq-type-caption-size)/1.6 var(--iq-mono);white-space:pre-wrap;overflow-wrap:anywhere}
/* Object identity is typographic, not a low-resolution fabricated product rendering. */
.object-intro{padding:48px 0 42px}.object-layout{display:grid;grid-template-columns:1fr 1fr;gap:76px;align-items:center}.passport-sheet{min-height:488px;background:var(--iq-surface);border:1px solid var(--iq-line);border-radius:4px;display:flex;flex-direction:column;padding:30px 36px}.passport-top{display:flex;justify-content:space-between;align-items:center}.passport-top .iq-mark{width:31px;height:31px}.passport-top>span{font:var(--iq-type-meta-size) var(--iq-mono);letter-spacing:var(--iq-tracking-caps);color:var(--iq-muted)}.passport-number{font:400 4.125rem/1 var(--iq-display);letter-spacing:var(--iq-tracking-display);margin-top:43px}.passport-number>span{display:block}.passport-diagram{width:100%;padding:10px 0 0;margin:auto 0 15px;color:var(--iq-control)}.passport-diagram svg{width:100%;height:auto}.passport-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--iq-control);padding-top:16px;font:var(--iq-type-meta-size) var(--iq-mono);letter-spacing:var(--iq-tracking-caps);color:var(--iq-muted)}.object-information h2{font-size:2.25rem;line-height:var(--iq-type-heading2-lineHeight);letter-spacing:var(--iq-tracking-display);margin:24px 0 16px}.object-information>p{font-size:var(--iq-type-interface-size);line-height:1.75;color:var(--iq-muted);max-width:51ch}.object-specs{margin:26px 0}.object-specs>div{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:12px 0;border-top:1px solid var(--iq-line);font-size:var(--iq-type-caption-size)}.object-specs dt{color:var(--iq-muted)}.object-specs dd{margin:0}.object-aftercare{display:grid;grid-template-columns:1fr 1fr;gap:76px;margin-top:64px;border-top:1px solid var(--iq-line);padding-top:42px}.object-aftercare h2{font-size:1.875rem;margin-bottom:18px}.object-aftercare>div>p{font-size:.9375rem;line-height:1.7;color:var(--iq-muted);max-width:45ch}
@media(min-width:1600px){.home-feature{min-height:486px}.feature-editorial{padding:44px}.proof-copy{padding:30px 32px 27px}.proof-copy h2{font-size:1.875rem}.proof-checks{font-size:var(--iq-type-label-size)}.proof-copy>p{font-size:var(--iq-type-interface-size)}}
@media(max-width:1180px){.site-header-inner{gap:20px}.site-brand small{display:none}.site-nav{gap:22px}.home-head{gap:32px}.home-head h1{font-size:3.875rem}.home-lead{padding:0}.feature-editorial{padding:32px}.feature-editorial h2{font-size:1.9375rem}.document-stage{padding:24px}.proof-copy{padding:24px}.proof-copy h2{font-size:1.5625rem}.proof-copy>p{}.proof-bottom>div>span{display:none}.library-shell{gap:32px;grid-template-columns:194px minmax(0,1fr)}.component-heading h1{font-size:2.375rem}.component-canonical{display:none}.rules-shell{grid-template-columns:170px minmax(0,1fr);gap:44px}.home-paths h2{font-size:1.3125rem}.rules-page>h1{font-size:3rem}.landing-intro{gap:50px}.landing-manifest{padding-left:32px}.landing-intro h1{font-size:5rem}.type-hero{font-size:7.25rem;gap:26px}.type-hero>small{display:none}.object-layout{gap:45px}.example-cards{gap:22px}.cover-landing strong{font-size:2.3125rem}.cover-work{padding:35px 20px}.narrative-card h3{font-size:var(--iq-type-heading2-size)}.landing-detail{gap:40px}}
@media(max-width:900px){.site-header-inner{gap:18px}.site-nav{gap:20px}.header-actions{gap:8px}.search-trigger>span,.search-trigger>kbd{display:none}.home-head{grid-template-columns:1.5fr 1fr;gap:20px}.home-head h1{font-size:3rem}.home-lead p{}.home-feature{grid-template-columns:1fr;min-height:0}.feature-editorial{min-height:320px;padding:32px}.feature-editorial h2{font-size:2.125rem}.feature-editorial h2 br:nth-of-type(1){display:none}.feature-editorial>.text-action{margin-top:0;padding-top:24px}.editorial-index{position:absolute;right:32px;bottom:35px;min-width:110px;margin:0}.editorial-index>i{display:none}.document-stage{padding:32px}.proof-document{max-width:620px}.proof-copy h2{font-size:1.75rem}.home-caption{}.home-paths{gap:24px;padding:44px 0}.home-paths h2{font-size:var(--iq-type-lead-size)}.home-paths p{}.type-statement{grid-template-columns:1fr;gap:20px;padding-top:44px}.type-statement>a{grid-column:1}.type-statement>p{font-size:1.875rem}.library-shell{grid-template-columns:minmax(0,1fr);gap:0}.catalog-nav{position:relative;top:auto;max-height:none;padding:20px 0;border-right:0;border-bottom:1px solid var(--iq-line);overflow:visible}.catalog-heading{margin:0}.catalog-heading>span{margin-left:auto;margin-right:20px}.catalog-toggle{display:block;background:transparent;color:var(--iq-accent);font-size:var(--iq-type-caption-size);padding:7px 0}.catalog-search,.catalog-groups,.catalog-help{display:none}.catalog-nav.open .catalog-search{display:flex}.catalog-nav.open .catalog-groups{display:grid;grid-template-columns:1fr 1fr;gap:8px 32px}.catalog-nav.open .catalog-heading{margin-bottom:14px}.catalog-nav.open .catalog-help{display:flex}.component-page{padding-top:24px}.component-breadcrumb{margin-bottom:22px}.specimen-surface{padding:36px}.rules-shell{grid-template-columns:1fr;gap:0}.rules-nav{position:static;flex-direction:row;align-items:center;overflow:auto;gap:22px;padding:20px 0;border-bottom:1px solid var(--iq-line)}.rules-nav>span{display:none}.rules-nav>a{white-space:nowrap;font-size:var(--iq-type-meta-size)}.rules-page{padding-top:34px}.rules-page>h1{font-size:3rem}.rules-lead{}.example-cards{grid-template-columns:1fr}.example-cover{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center}.example-cover>div:first-child{height:260px}.example-cover-caption>svg{right:0}.cover-work>div:not(:first-child){padding:14px 0}.landing-intro{gap:35px}.landing-intro h1{font-size:4.25rem}.landing-manifest>p{font-size:1.625rem}.landing-manifest>span{font-size:var(--iq-type-meta-size)}.landing-manifest>div{}.narrative-copy{padding:24px}.narrative-stage{padding:28px}.narrative-card h3{font-size:1.75rem}.narrative-steps h2{font-size:1.5rem}.narrative-card>p{}.landing-detail h2{font-size:var(--iq-type-heading2-size)}.landing-detail{gap:28px}.landing-detail>.proof-document .proof-copy{padding:20px}.landing-detail>.proof-document h2{font-size:1.4375rem}.landing-detail>.proof-document .proof-bar{padding:14px 20px}.landing-close h2{font-size:var(--iq-type-heading2-size)}.landing-close p{}.work-heading h1{font-size:2.5rem}.work-summary{gap:18px;flex-wrap:wrap}.work-summary-note{display:none}.workspace-table td{padding-inline:10px}.workspace-table .task-person>span:last-child{display:none}.workspace-table .iq-badge{white-space:normal;font-size:var(--iq-type-meta-size)}.object-layout{gap:32px}.passport-sheet{padding:24px;min-height:430px}.passport-number{font-size:3.625rem}.passport-bottom{font-size:var(--iq-type-meta-size)}.object-information h2{font-size:1.875rem}.object-specs>div{gap:12px;font-size:var(--iq-type-meta-size)}.object-aftercare{gap:32px}.example-nav>span{display:none}}
@media(max-width:600px){:root{--iq-grid-margin:20px}.site-header-inner{min-height:99px;display:grid;grid-template-columns:1fr auto;gap:0;padding-top:10px}.site-brand>span{}.site-brand>.iq-mark{width:23px;height:23px}.site-nav{grid-row:2;grid-column:1/-1;justify-content:space-between;gap:22px;width:100%;margin:0;min-height:40px}.site-nav a{padding:10px 0}.header-actions{grid-column:2;grid-row:1;gap:16px}.theme-switch{--h:32px}.search-trigger{min-height:32px}.site-footer{margin-top:45px;flex-wrap:wrap;gap:18px;font-size:var(--iq-type-meta-size);padding-bottom:26px}.site-footer>span{margin-left:0;flex-basis:100%}.site-footer>a{font-size:var(--iq-type-meta-size)}.site-footer>p{margin-left:auto}.home-intro{padding:25px 0 30px}.home-meta{margin-bottom:26px}.home-meta>.sample-overline{font-size:var(--iq-type-meta-size);letter-spacing:var(--iq-tracking-caps)}.home-meta>span:last-child{}.home-head{grid-template-columns:1fr;gap:22px}.home-head h1{font-size:clamp(36px,9.6vw,50px);line-height:var(--iq-type-heading1-lineHeight);letter-spacing:var(--iq-tracking-h1)}.home-lead{display:block}.home-lead p{line-height:1.55;max-width:340px;margin-bottom:21px}.home-lead p br{display:none}.home-lead p br::after{content:" "}.home-head .iq-btn{font-size:var(--iq-type-caption-size);min-height:42px}.home-feature{border-radius:12px}.feature-editorial{padding:28px 25px;min-height:323px}.feature-editorial>.sample-overline,.feature-editorial .sample-overline{font-size:var(--iq-type-meta-size)}.feature-editorial h2{font-size:1.875rem;line-height:var(--iq-type-heading2-lineHeight);margin:24px 0 17px}.feature-editorial h2 br:nth-of-type(1){display:initial}.feature-editorial p{line-height:1.7}.feature-editorial .text-action{padding-top:25px}.editorial-index{right:25px;bottom:31px;min-width:50px;opacity:.6}.editorial-index>span{width:12px}.document-stage{padding:18px 14px}.proof-bar{padding:13px 17px}.proof-bar>span:last-child{font-size:.5625rem}.proof-copy{padding:22px 20px}.proof-copy h2{font-size:1.5rem;line-height:var(--iq-type-heading2-lineHeight)}.proof-copy>p{line-height:1.7;margin-bottom:20px}.proof-tag{margin-bottom:15px}.proof-checks{gap:12px}.proof-bottom{margin-top:22px;padding-top:18px;gap:10px}.proof-bottom>.iq-btn{padding-inline:9px;--h:34px}.proof-bottom>div{gap:0}.home-caption{flex-direction:column;gap:5px;line-height:1.6}.home-paths{grid-template-columns:1fr;padding:18px 0 0;gap:0;border:0}.home-paths>a{padding:25px 32px 24px 0;border-bottom:1px solid var(--iq-line)}.home-paths>a>span{}.home-paths>a>svg{top:26px}.home-paths h2{font-size:1.4375rem;margin:12px 0 10px}.home-paths p{font-size:var(--iq-type-interface-size);line-height:1.6}.home-paths p br{display:none}.type-statement{padding-top:38px}.type-statement>span{font-size:var(--iq-type-meta-size)}.type-statement>p{font-size:1.6875rem}.type-statement>a{font-size:var(--iq-type-caption-size)}.component-heading{margin-bottom:24px}.component-heading h1{font-size:2.125rem;line-height:var(--iq-type-heading1-lineHeight)}.component-heading p{line-height:1.65}.component-breadcrumb{font-size:var(--iq-type-meta-size);margin-bottom:20px}.component-specimen .iq-tabs-list{gap:22px}.component-specimen .iq-tabs-list button{}.component-specimen .iq-tab-panel{padding-top:18px}.specimen-surface{padding:24px 20px;min-height:310px}.button-context h3{font-size:1.5625rem;line-height:var(--iq-type-heading3-lineHeight);margin-top:20px}.button-context p{line-height:1.65}.button-context .row{gap:9px}.button-context .iq-btn{font-size:var(--iq-type-meta-size);padding-inline:12px}.button-context>.sample-overline{font-size:var(--iq-type-meta-size)}.preview-options{gap:12px}.preview-options>span{width:100%;margin:0!important;font-size:var(--iq-type-meta-size)}.preview-options .iq-segmented button{font-size:var(--iq-type-meta-size);padding-inline:14px}.preview-hint{font-size:var(--iq-type-meta-size);line-height:1.6}.component-bottom{grid-template-columns:1fr;gap:22px;margin-top:26px;padding-top:23px}.component-bottom p{font-size:var(--iq-type-label-size);line-height:1.75}.related-components{gap:16px;font-size:var(--iq-type-meta-size);margin-top:26px}.related-components>span{width:100%}.state-grid{grid-template-columns:1fr 1fr}.state-grid>div{padding:22px 10px;min-height:140px}.state-grid .iq-btn{font-size:var(--iq-type-meta-size);padding-inline:12px}.field-states-grid{grid-template-columns:1fr;padding:20px}.field-context{gap:24px}.contract-grid{padding:22px}.contract-grid p{}.preference-head h3{font-size:1.5rem}.preference-head p{font-size:var(--iq-type-label-size)}.iq-setting-row{gap:15px}.preference-sample .iq-switch>span:last-child{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}.feature-sample{padding:26px}.feature-sample h3{font-size:1.8125rem}.feature-sample p{max-width:25ch}.feature-lines{right:26px;bottom:30px;opacity:.6}.feature-lines span{width:2px}.feature-lines span:nth-child(3){height:46px}.feature-lines span:nth-child(2){height:34px}.feature-lines span:nth-child(1){height:22px}.specimen-dark{padding:0}.dialog-preview h3{font-size:1.5625rem}.dialog-preview p{}.sample-appbar{padding:10px;gap:12px}.sample-appbar b{font-size:var(--iq-type-caption-size)}.sample-appbar>nav{gap:10px}.sample-appbar a{}.sample-appbar>.iq-btn{--h:30px}.copy-example{gap:7px;padding:8px}.copy-example code{}.source-code{padding:18px;font-size:var(--iq-type-meta-size)}.catalog-nav.open .catalog-groups{grid-template-columns:1fr}.catalog-search input{font-size:var(--iq-type-body-size)}.catalog-group>summary{font-size:var(--iq-type-label-size);min-height:40px}.catalog-group a{font-size:var(--iq-type-label-size);padding-block:10px}.rules-nav{gap:20px;padding:14px 0}.rules-page{padding-top:28px}.rules-page>h1{font-size:2.375rem;margin:22px 0}.rules-lead{line-height:1.7;margin-bottom:32px}.rules-page>.sample-overline{font-size:var(--iq-type-meta-size)}.principle-list>article{grid-template-columns:26px 1fr;gap:12px;padding:25px 0}.principle-list h2{font-size:1.4375rem;line-height:1.22}.principle-list p{line-height:1.7}.principle-list small{font-size:var(--iq-type-meta-size);line-height:1.6}.note-panel p{}.type-hero{font-size:6.75rem;padding:30px 20px;gap:24px}.type-hero>span{font-size:1.6875rem}.type-scale>div{grid-template-columns:1fr;gap:16px;padding-block:23px}.type-scale>div>span{font-size:var(--iq-type-meta-size)}.type-scale small{display:inline-block;margin-left:10px}.type-display{font-size:2.125rem}.type-heading{font-size:1.6875rem}.role-swatches{grid-template-columns:1fr 1fr;gap:22px 16px}.role-swatches>div>span{height:92px}.role-swatches b{}.role-swatches code{font-size:var(--iq-type-meta-size)}.tone-demonstration{grid-template-columns:1fr}.tone-demonstration>div{min-height:230px}.rules-subheading{font-size:1.625rem}.rules-copy{line-height:1.7}.motion-proof{padding:24px 20px}.motion-proof-head{font-size:var(--iq-type-meta-size);gap:15px}.motion-proof-head>span:last-child{display:none}.motion-result{flex-wrap:wrap;gap:16px}.motion-result>div{flex:1}.result-icon{width:48px;height:48px}.motion-result h2{}.motion-result p{line-height:1.65}.motion-state{margin:0 0 0 64px;font-size:var(--iq-type-meta-size)}.motion-evidence{flex-wrap:wrap;gap:15px;font-size:var(--iq-type-meta-size)}.motion-proof .iq-btn{font-size:var(--iq-type-caption-size)}.motion-contracts{grid-template-columns:1fr;gap:22px}.motion-contracts h3{font-size:1.4375rem;margin-top:12px}.icon-proof{grid-template-columns:1fr;gap:40px;padding:30px 20px}.icon-sizes{gap:23px}.implementation-grid{grid-template-columns:1fr;gap:25px}.example-nav{gap:20px;overflow:auto;padding:16px 0;font-size:var(--iq-type-meta-size)}.example-nav a:first-child{margin-right:0}.section-intro,.object-intro{padding:34px 0}.section-intro h1,.object-intro h1{font-size:2.375rem;line-height:var(--iq-type-heading1-lineHeight);margin:23px 0 18px}.section-intro>.sample-overline,.object-intro>.sample-overline{font-size:var(--iq-type-meta-size)}.section-intro>p,.object-intro>p{line-height:1.65}.example-cover{grid-template-columns:1fr;gap:0}.example-cards{gap:36px}.example-cover>div:first-child{height:285px}.example-cover-caption{padding-top:20px}.example-cover-caption h2{font-size:1.6875rem}.example-cover-caption p{font-size:var(--iq-type-interface-size)}.cover-work{padding:37px 26px}.cover-work>div:not(:first-child){font-size:var(--iq-type-caption-size);padding:16px 0}.cover-landing strong{font-size:2.8125rem}.landing-intro{grid-template-columns:1fr;gap:36px;padding:33px 0 37px}.landing-intro h1{font-size:4.0625rem;line-height:var(--iq-type-heading1-lineHeight);letter-spacing:var(--iq-tracking-display)}.landing-intro>div>p{}.landing-intro .row{gap:19px}.landing-intro .iq-btn{font-size:var(--iq-type-caption-size)}.landing-manifest{padding:26px 0 0;border-left:0;border-top:1px solid var(--iq-line)}.landing-manifest>p{font-size:1.875rem;margin:20px 0 25px!important}.landing-manifest>div{font-size:var(--iq-type-label-size)}.narrative-toolbar{padding:14px 16px}.narrative-toolbar>span{font-size:var(--iq-type-meta-size);line-height:1.6;max-width:100px}.narrative-toolbar .iq-btn{padding-inline:9px}.narrative-grid{grid-template-columns:1fr}.narrative-copy{padding:12px 22px 23px}.narrative-steps>button{padding:19px 0}.narrative-steps h2{font-size:1.625rem}.narrative-steps p{font-size:var(--iq-type-caption-size)}.narrative-caption{margin-top:20px}.narrative-stage{padding:25px 26px}.narrative-card h3{font-size:var(--iq-type-heading2-size)}.narrative-card>p{font-size:var(--iq-type-interface-size)}.narrative-card-result{}.narrative-fine{gap:15px}.landing-detail{grid-template-columns:1fr;padding:49px 0;gap:32px}.landing-detail h2{font-size:2.1875rem}.landing-detail>div>p{font-size:.9375rem}.landing-detail>.proof-document .proof-copy{padding:22px}.landing-close{flex-direction:column;align-items:flex-start;gap:24px;padding:32px 0 12px}.landing-close h2{font-size:2.1875rem}.work-heading{flex-direction:column;align-items:stretch;gap:22px;padding:28px 0 15px}.work-heading h1{font-size:2.3125rem}.work-heading p{}.work-heading>.row{justify-content:space-between}.work-summary{font-size:var(--iq-type-meta-size);gap:14px;padding-bottom:20px}.work-summary>.work-summary-note{display:none}.work-summary>.work-summary-progress{flex-basis:100%}.workspace-views{margin-top:16px}.workspace-views nav{gap:20px}.workspace-views nav a{gap:6px}.workspace-views>span{display:none}.workspace-tools{flex-wrap:wrap;gap:9px;padding:15px 0 18px}.workspace-tools>.iq-search-small{flex-basis:100%;max-width:100%}.workspace-tools>.iq-search-small input{font-size:var(--iq-type-body-size)}.workspace-tools>iq-select{flex:1}.workspace-tools>.iq-btn{font-size:var(--iq-type-meta-size)}.workspace-table{overflow:visible}.workspace-table table{display:block}.workspace-table thead{display:none}.workspace-table tbody{display:block}.workspace-table tr{display:grid;grid-template-columns:24px 1fr 36px;position:relative;column-gap:9px;padding:17px 0;border-bottom:1px solid var(--iq-line)}.workspace-table tr:last-child{border:0}.workspace-table td{height:auto;border:0;padding:0;min-width:0}.workspace-table .check-col{width:24px;grid-column:1;grid-row:1;padding:3px 0 0}.workspace-table .task-title{max-width:100%;width:auto;grid-column:2;grid-row:1}.workspace-table .task-title>button{font-size:var(--iq-type-interface-size);line-height:1.5}.workspace-table td:nth-child(3){grid-column:2;grid-row:2;margin-top:9px}.workspace-table .iq-badge{font-size:var(--iq-type-meta-size)}.workspace-table td:nth-child(4){display:none}.workspace-table td:nth-child(5){grid-column:2;grid-row:3;margin-top:7px;font-size:var(--iq-type-meta-size)}.workspace-table td:nth-child(6){grid-column:3;grid-row:1}.workspace-table-foot{font-size:var(--iq-type-meta-size);line-height:1.7;flex-direction:column;gap:5px}.kanban{grid-template-columns:repeat(4,240px);gap:14px}.work-note{margin-top:26px}.work-note p{font-size:var(--iq-type-meta-size)}.task-drawer-title{font-size:1.75rem;margin:30px 0 24px}.task-drawer-meta{gap:14px}.task-drawer-meta .task-person{font-size:var(--iq-type-meta-size)}.task-drawer-section{margin:27px 0}.task-drawer-section>p{font-size:.9375rem;line-height:1.75}.comment b{font-size:var(--iq-type-meta-size)}.comment small{display:block;margin:3px 0 0}.comment p{font-size:var(--iq-type-interface-size)}.iq-command-input{padding:18px}.iq-command-input input{font-size:var(--iq-type-body-size)}.iq-command-input kbd{display:none}.iq-command-list{max-height:55vh}.iq-command-foot{font-size:var(--iq-type-meta-size);padding:12px 18px}.object-layout{grid-template-columns:1fr;gap:35px}.passport-sheet{padding:28px;min-height:452px}.passport-number{font-size:4.0625rem}.passport-bottom{font-size:var(--iq-type-meta-size)}.object-information h2{font-size:2.0625rem}.object-information>p{font-size:.9375rem}.object-specs>div{font-size:var(--iq-type-caption-size)}.object-information .iq-btn{font-size:var(--iq-type-caption-size)}.object-aftercare{grid-template-columns:1fr;gap:23px;margin-top:43px;padding-top:32px}.object-aftercare h2{font-size:1.8125rem}.object-aftercare>div>p{}.desktop-only{display:none}}
@media(prefers-reduced-motion:reduce){.example-cover:hover>div:first-child,.home-paths>a:hover>svg{transform:none}}[data-motion=reduced] .example-cover:hover>div:first-child,[data-motion=reduced] .home-paths>a:hover>svg{transform:none}
@media(forced-colors:active){.feature-editorial,.feature-sample,.narrative-stage,.cover-landing,.tone-ink{background:Canvas;color:CanvasText;border:1px solid CanvasText}.feature-editorial *,.feature-sample *,.narrative-stage *,.cover-landing *,.tone-ink *{color:CanvasText}.site-nav a[aria-current=page]::after{background:Highlight}.catalog-group a[aria-current=page]{outline:1px solid Highlight}.proof-document,.iq-card{box-shadow:none}.visual-focus{outline-color:Highlight}}

/* Route focus is announced without outlining the entire document. */
#main:focus:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){outline:none}
/* Working labels remain legible independently of display typography. */
.site-nav a{font-size:var(--iq-type-interface-size)}.catalog-group a{font-size:var(--iq-type-label-size)}.catalog-group>summary{font-size:var(--iq-type-label-size)}.catalog-search input{font-size:var(--iq-type-label-size)}.proof-checks{font-size:var(--iq-type-label-size)}.proof-bottom>.iq-btn{font-size:var(--iq-type-caption-size)}.sample-overline{font-size:var(--iq-type-meta-size);text-transform:uppercase;letter-spacing:var(--iq-tracking-caps)}.home-caption{font-size:var(--iq-type-caption-size)}.feature-editorial .sample-overline{font-size:var(--iq-type-meta-size)}.feature-editorial p{font-size:var(--iq-type-interface-size)}.component-specimen .iq-tabs-list button{font-size:var(--iq-type-label-size)}
@media(max-width:600px){.site-nav a{}.sample-overline{font-size:var(--iq-type-meta-size)}.feature-editorial .sample-overline{font-size:var(--iq-type-meta-size)}.home-caption{}.feature-editorial p{font-size:var(--iq-type-interface-size)}.proof-checks{}.proof-bottom>.iq-btn{font-size:var(--iq-type-caption-size)}.catalog-search input{font-size:var(--iq-type-body-size)}.component-specimen .iq-tabs-list button{}}

/* Type specimens use the exported scale, not independently improvised values. */
.type-display{font-size:var(--iq-type-display-size);font-weight:var(--iq-type-display-weight);line-height:var(--iq-type-display-lineHeight);letter-spacing:var(--iq-type-display-letterSpacing)}
.type-heading{font-size:var(--iq-type-heading2-size);font-weight:var(--iq-type-heading2-weight);line-height:var(--iq-type-heading2-lineHeight);letter-spacing:var(--iq-type-heading2-letterSpacing)}
@media(max-width:600px){.type-display{font-size:2.125rem}.type-heading{font-size:1.6875rem}.work-summary,.workspace-table-foot,.task-drawer-meta .task-person,.task-drawer-meta .muted,.workspace-table td:nth-child(5),.comment b,.comment small{font-size:var(--iq-type-caption-size)}.work-note p{font-size:var(--iq-type-caption-size)}.component-breadcrumb{font-size:var(--iq-type-caption-size)}.preview-hint{font-size:var(--iq-type-caption-size)}.button-context .iq-btn{font-size:var(--iq-type-label-size)}.narrative-toolbar>span{font-size:var(--iq-type-meta-size)}.narrative-fine{font-size:.625rem}}

.landing-intro>div,.object-layout>div{min-width:0}.object-specs dd{min-width:0;overflow-wrap:anywhere}.object-information>.row{flex-wrap:wrap}
@media(max-width:600px){.landing-intro h1{font-size:clamp(50px,16.6vw,65px)}.passport-number{font-size:clamp(48px,15vw,65px)}.example-nav a:first-child{display:none}.object-layout{grid-template-columns:minmax(0,1fr)}}

@media(max-width:600px){.feature-editorial h2,.type-statement>p{letter-spacing:var(--iq-tracking-h1)}}

/* Form specimens keep real working line lengths, independent of the documentation column. */
[data-component=select] .specimen-surface>.stack{max-width:460px;margin-inline:auto}[data-component=combobox] .specimen-surface>iq-combobox{width:100%;margin-inline:auto}[data-component=number-field] .specimen-surface>iq-number{width:100%;max-width:420px;margin-inline:auto}[data-component=number-field] .specimen-surface>.iq-helper{width:100%;max-width:420px;margin-inline:auto}[data-component=slider] .specimen-surface>.stack{max-width:500px;margin-inline:auto}[data-component=multi-select] .specimen-surface>iq-tags{width:100%;max-width:540px;margin-inline:auto}

/* Edition 04.1 — bounded refinements to the approved 04 composition. */
.iq-icon{display:inline-block;flex:0 0 auto;overflow:visible;shape-rendering:geometricPrecision}
.iq-btn{transition:background-color var(--iq-motion-standard) var(--iq-ease),color var(--iq-motion-standard) var(--iq-ease),transform var(--iq-motion-standard) var(--iq-ease-spring),box-shadow var(--iq-motion-standard) var(--iq-ease)}
.iq-btn>.iq-icon{transition:transform var(--iq-motion-standard) var(--iq-ease-spring)}
.iq-btn[aria-pressed=true] [data-glyph=heart],.iq-btn[aria-pressed=true] [data-glyph=star]{fill:currentColor}
.iq-btn[aria-pressed=true]{border-color:transparent}
.iq-btn:active:not(:disabled){transform:translateY(0) scale(.977);box-shadow:none}
.iq-btn[aria-busy=true]{transform:none}
.iq-switch-track{transition:background-color var(--iq-motion-standard) var(--iq-ease),box-shadow var(--iq-motion-standard) var(--iq-ease)}.iq-switch-track::before{transition:transform var(--iq-motion-standard) var(--iq-ease-spring)}
.iq-select-trigger>.iq-icon,.iq-accordion summary>.iq-icon{transition:transform var(--iq-motion-standard) var(--iq-ease-spring)}
.iq-select-trigger[aria-expanded=true]>.iq-icon{transform:rotate(180deg)}
.iq-segmented>button,.activity-filters button{transition:background-color var(--iq-motion-standard) var(--iq-ease),color var(--iq-motion-standard) var(--iq-ease),transform var(--iq-motion-standard) var(--iq-ease)}
.iq-segmented>button:active,.activity-filters button:active{transform:scale(.97)}
@media(hover:hover){
 .iq-btn:is(.primary,.secondary):not(:disabled):not([aria-busy=true]):hover{transform:translateY(-1px)}
 .iq-btn.primary:not(:disabled):hover,.iq-btn.secondary:not(:disabled):hover{box-shadow:0 4px 9px var(--iq-shadow-color)}
 .iq-btn:hover>[data-glyph=arrow],.iq-btn:hover>[data-glyph=chevron]{transform:translateX(2px)}
 .iq-btn:hover>[data-glyph=left]{transform:translateX(-2px)}
 .iq-btn:hover>[data-glyph=upRight]{transform:translate(1px,-1px)}
 .iq-btn:not(:disabled):active{transform:scale(.977);box-shadow:none}
 .navigation-list .iq-list-item:hover,.command-entry:hover{background:var(--iq-hover)}
 .navigation-list .iq-list-item:hover>.iq-icon,.command-entry:hover>.iq-icon:last-child{transform:translateX(3px)}
 .iq-calendar-grid button:not(.selected):not(:disabled):hover{background:var(--iq-hover)}
 .page-numbers button:not([aria-current]):hover{background:var(--iq-hover)}
 .tree-row:hover{background:var(--iq-hover)}
 .plan-deadline:hover,.agenda-task:hover{background:var(--iq-hover);transform:translateY(-1px)}
 .refined-feature:hover .feature-proof{transform:translateY(-3px)}
}
/* Dark materials: neutral near-black planes. Dividers are structural, not card outlines. */
[data-theme=dark] .state-grid>div{background:var(--iq-surface)}
/* Distinct error role; not a muddy rose message or a small decorative dot. */
.iq-input-shell.error{border:1.5px solid var(--iq-danger);background:var(--iq-field-bg)}
.iq-input-shell.error:focus-within{border-color:var(--iq-danger);box-shadow:none}
.iq-input-shell.error>svg{color:var(--iq-danger)}
.iq-helper.error,.iq-inline.danger{color:var(--iq-danger);font-weight:500}
.iq-badge.danger{background:var(--iq-danger-fill);color:var(--iq-on-danger);font-weight:600;gap:5px;border:0}
.iq-btn.danger{background:var(--iq-danger-bg);color:var(--iq-danger);border-color:transparent}
.iq-btn.danger:hover:not(:disabled){background:var(--iq-danger-fill);color:var(--iq-on-danger);border-color:transparent}
.message-gallery{display:flex;flex-direction:column;gap:16px;width:100%}
.iq-alert{padding:19px 22px;gap:18px;align-items:stretch;border:0;border-radius:14px;background:var(--iq-raised);color:var(--iq-ink);box-shadow:none}
.iq-alert:is(.success,.warning,.danger,.info){background:var(--iq-raised);border:0;color:var(--iq-ink)}
.message-emblem{display:flex;justify-content:center;align-items:center;align-self:stretch;width:46px;min-height:48px;flex:0 0 46px;border-radius:12px;background:var(--iq-info-bg);color:var(--iq-info)}
.iq-alert.danger .message-emblem{background:var(--iq-danger-fill);color:var(--iq-on-danger)}
.iq-alert.danger .message-copy>b{color:var(--iq-danger)}
.iq-alert.success .message-emblem,.message-emblem.success{background:var(--iq-success-bg);color:var(--iq-success)}
.iq-alert.warning .message-emblem{background:var(--iq-warning-bg);color:var(--iq-warning)}
.iq-alert .message-copy{align-self:center;min-width:0}
.iq-alert b{font-size:var(--iq-type-interface-size);font-weight:600;line-height:1.4}
.iq-alert p{font-size:var(--iq-type-label-size);margin-top:5px;line-height:1.55;color:var(--iq-muted)}
.iq-toast-icon{width:40px;height:44px;display:grid;place-items:center;flex-shrink:0;border-radius:11px;background:var(--iq-info-bg);color:var(--iq-info)}
.iq-toast.tone-danger .iq-toast-icon{background:var(--iq-danger-fill);color:var(--iq-on-danger)}
.iq-toast.tone-danger .iq-toast-copy>b{color:var(--iq-danger)}
.iq-toast.tone-success .iq-toast-icon{background:var(--iq-success-bg);color:var(--iq-success)}
.iq-toast.tone-warning .iq-toast-icon{background:var(--iq-warning-bg);color:var(--iq-warning)}
/* A meaningful step has its own state, not just a number filled black. */
.iq-stepper{gap:20px;flex-wrap:nowrap}
.iq-stepper li{position:relative;flex:1;min-width:0;display:block}
.iq-stepper li:not(:last-child)::after{content:"";height:1px;background:var(--iq-line);width:24px;position:absolute;right:-21px;top:21px}
.iq-stepper button{display:flex;align-items:center;gap:12px;text-align:left;background:none;padding:3px 6px 3px 0;border-radius:10px;min-height:48px;max-width:100%}
.iq-stepper button:disabled{cursor:default;opacity:1}
.iq-step-index{width:36px;height:36px;border:0;background:var(--iq-raised);color:var(--iq-muted);font-weight:500;font-size:var(--iq-type-interface-size);transition:background var(--iq-motion-standard),color var(--iq-motion-standard)}
.iq-stepper .current .iq-step-index{background:var(--iq-primary);color:var(--iq-on-primary)}
.iq-stepper .done .iq-step-index{background:var(--iq-completed);color:var(--iq-muted);border:0}
.step-copy{display:flex;flex-direction:column;gap:3px;min-width:0}
.step-copy>b{font-size:var(--iq-type-label-size);font-weight:500;color:var(--iq-muted)}
.current .step-copy>b{color:var(--iq-ink);font-weight:600}
.step-status{font-size:var(--iq-type-meta-size);white-space:nowrap;color:var(--iq-muted)}
.step-counter{margin:26px 0 20px}
/* Calendar variants. Selected / selected:hover are a single paired color contract. */
.calendar-variants{width:100%;max-width:370px;margin:auto}
.calendar-variants>iq-tabs>.iq-tabs-list{margin-bottom:20px;justify-content:flex-start}
.calendar-variants .iq-tab-panel{padding-top:0}
iq-calendar{max-width:370px;margin:auto;padding:24px;border:0;border-radius:18px;background:var(--iq-raised);box-shadow:0 3px 16px var(--iq-shadow-color-soft)}
.iq-calendar-heading{margin:0 0 14px;gap:12px}
.iq-calendar-heading b{font-size:.9375rem;text-transform:capitalize;font-weight:600}
.calendar-arrows{display:flex;gap:2px}
.iq-calendar-grid button{position:relative;height:38px;border-radius:50%;font-size:var(--iq-type-label-size);transition:background-color var(--iq-motion-standard),color var(--iq-motion-standard),transform var(--iq-motion-standard) var(--iq-ease)}
.iq-calendar-grid button.selected,.iq-calendar-grid button.selected:hover{background:var(--iq-primary);color:var(--iq-on-primary)}
.iq-calendar-grid button:active:not(:disabled){transform:scale(.91)}
.iq-calendar-grid .today{box-shadow:none}
.iq-calendar-grid .today::after{content:"";position:absolute;width:3px;height:3px;border-radius:50%;background:currentColor;bottom:4px;left:calc(50% - 1.5px)}
.iq-calendar-grid button:disabled{opacity:.3;cursor:default}
.iq-calendar-week span{font-size:var(--iq-type-meta-size);font-weight:500;padding:8px 0}
.iq-calendar-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:16px;padding-top:16px;font-size:var(--iq-type-caption-size);line-height:1.4;color:var(--iq-ink)}
.iq-calendar-foot>span:first-child{display:inline-flex;align-items:center;gap:8px}
.iq-calendar-foot .calendar-foot-hint{font-size:var(--iq-type-meta-size);color:var(--iq-muted)}
.iq-calendar-foot output{font-weight:600;font-variant-numeric:tabular-nums}
.calendar-time{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:18px;padding-top:18px;border-top:1px solid var(--iq-line)}
.calendar-time small{display:block;max-width:150px;font-size:var(--iq-type-meta-size);color:var(--iq-muted);line-height:1.45;margin-top:4px}
.calendar-time .iq-control-label{margin:0}
.calendar-clock{display:flex;align-items:center;gap:3px;border:1px solid var(--iq-line);border-radius:9px;background:var(--iq-surface);padding:4px}
.calendar-clock input{width:32px;padding:5px 0;min-height:32px;background:none;border:0;appearance:textfield;text-align:center;font-size:var(--iq-type-interface-size);font-variant-numeric:tabular-nums}
.calendar-clock input::-webkit-inner-spin-button{appearance:none}
.calendar-clock:focus-within{border-color:var(--iq-focus)}
.iq-pagination{gap:14px;display:inline-flex;flex-wrap:nowrap}
.page-numbers{display:flex;gap:5px}
.page-numbers button{height:38px;min-width:38px;border-radius:50%;border:0;transition:background var(--iq-motion-standard),transform var(--iq-motion-standard) var(--iq-ease)}
.iq-pagination .page-numbers button[aria-current=page]{background:var(--iq-primary);color:var(--iq-on-primary);border:0;font-weight:600}
.page-numbers button:active{transform:scale(.9)}
.pagination-count{margin-top:16px;text-align:center}
/* Whole-row entry points. No nested link/button targets. */
.command-entry{display:flex;align-items:center;gap:17px;width:100%;min-height:88px;border:0;background:var(--iq-raised);padding:20px 22px;border-radius:14px;text-align:left;transition:background var(--iq-motion-standard)}
.command-entry>span{flex:1;min-width:0}
.command-entry b{display:block;font-size:.9375rem;font-weight:500}
.command-entry small{display:block;color:var(--iq-muted);font-size:var(--iq-type-caption-size);margin-top:4px}
.command-entry kbd{color:var(--iq-muted);font-size:var(--iq-type-meta-size)}
.command-entry>.iq-icon:last-child,.navigation-list .iq-list-item>.iq-icon{transition:transform var(--iq-motion-standard) var(--iq-ease)}
.navigation-list .iq-list-item{display:flex;gap:18px;padding:22px 20px;border-bottom:1px solid var(--iq-line);border-radius:10px;text-decoration:none;transition:background var(--iq-motion-standard)}
.navigation-list .iq-list-item:last-child{border-bottom:0}
.list-symbol{width:44px;height:48px;border-radius:12px;background:var(--iq-raised);display:grid;place-items:center;flex:0 0 44px}
.list-copy{display:block;flex:1;min-width:0}
.list-copy b{font-size:var(--iq-type-interface-size);font-weight:500}
.list-copy small{display:flex;gap:16px;flex-wrap:wrap;margin-top:5px;font-size:var(--iq-type-meta-size);color:var(--iq-muted)}
/* Metric: value and target occupy different typographic roles. */
.refined-metric{border:0;border-radius:18px;padding:28px;width:min(100%,600px)}
.refined-metric>header{display:flex;justify-content:space-between;gap:16px;align-items:center}
.refined-metric h3{font-size:var(--iq-type-body-size);font-weight:600;letter-spacing:var(--iq-tracking-h2)}

.metric-measure{display:flex;align-items:center;gap:18px;margin:23px 0 24px}
.metric-measure>strong{font-size:var(--iq-type-display-size);line-height:1;font-weight:500;letter-spacing:var(--iq-tracking-display);font-variant-numeric:tabular-nums}
.metric-measure>div{display:flex;flex-direction:column;gap:2px;color:var(--iq-muted)}
.metric-measure>div>span{font-size:var(--iq-type-lead-size);letter-spacing:var(--iq-tracking-h1)}
.metric-measure>div>small{font-size:var(--iq-type-meta-size)}
.metric-glyph{margin-left:auto;width:48px;height:48px;background:var(--iq-surface);border-radius:14px;display:grid;place-items:center;color:var(--iq-muted)}
.metric-track{display:flex;gap:18px;align-items:center}
.metric-track>span{font-size:var(--iq-type-meta-size);white-space:nowrap;color:var(--iq-muted)}
.metric-track>.iq-progress{flex:1;height:4px}
.metric-foot{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:25px}
.metric-change{display:flex;align-items:center;gap:6px;font-size:var(--iq-type-meta-size);line-height:1.45;color:var(--iq-muted)}
.refined-metric .metric-change b{font-size:var(--iq-type-caption-size);font-weight:600;letter-spacing:var(--iq-tracking-body);color:var(--iq-success)}
.metric-change>.iq-icon{color:var(--iq-success)}
.metric-spark{display:block;width:105px;flex-shrink:0;color:var(--iq-ink)}
.metric-spark svg{width:100%;height:36px}
/* Grouped, typed history. Dense but not an undifferentiated timeline. */
.activity-panel{width:min(100%,760px);margin:auto}
.activity-panel>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;gap:12px}
.activity-panel h3{font-size:1.3125rem;margin-top:8px}
.activity-filters{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:28px}
.activity-filters button{padding:8px 14px;min-height:36px;border-radius:999px;background:transparent;color:var(--iq-muted);font-size:var(--iq-type-caption-size)}
.activity-filters [aria-pressed=true]{background:var(--iq-primary);color:var(--iq-on-primary)}
.activity-days>[data-event-day]{display:grid;grid-template-columns:96px minmax(0,1fr);gap:20px;margin:0 0 24px}
.activity-days h4{font-size:var(--iq-type-meta-size);font-weight:500;color:var(--iq-muted);padding-top:12px}
.activity-event{display:flex;align-items:flex-start;gap:12px;padding:10px 0 15px}
.activity-event+article{border-top:1px solid var(--iq-line);padding-top:15px}
.event-symbol{width:34px;height:36px;border-radius:10px;display:grid;place-items:center;background:var(--iq-raised);color:var(--iq-muted);flex-shrink:0}
.event-symbol.decisions{background:var(--iq-success-bg);color:var(--iq-success)}
.activity-event>div{min-width:0;flex:1}
.activity-event b{font-size:var(--iq-type-label-size);font-weight:500}
.activity-event p{font-size:var(--iq-type-caption-size);color:var(--iq-muted);margin-top:4px;line-height:1.6}
.activity-event time{font-variant-numeric:tabular-nums;font-size:var(--iq-type-meta-size);color:var(--iq-muted);padding-top:3px;white-space:nowrap}
.activity-event summary{display:flex;align-items:center;justify-content:space-between;gap:10px;list-style:none;cursor:pointer;border-radius:4px}
.activity-event summary::-webkit-details-marker{display:none}
.activity-event details[open] summary>.iq-icon{transform:rotate(180deg)}
.activity-event .event-detail{padding:12px;border-radius:10px;background:var(--iq-raised);font-size:var(--iq-type-caption-size)}
.activity-next{margin-left:116px;display:flex;align-items:center;gap:13px;border-top:1px solid var(--iq-line);padding-top:20px}
.activity-next>span{width:34px;text-align:center}
.activity-next b{font-size:var(--iq-type-label-size);font-weight:500}
.activity-next p{margin-top:3px;color:var(--iq-muted);font-size:var(--iq-type-meta-size)}
/* Searchable tree. Icon and disclosure have different jobs. */
.tree-variants{width:min(100%,570px);margin:auto}
.tree-variants .iq-tab-panel{padding-top:18px}
.tree-panel{background:var(--iq-raised);border-radius:17px;padding:22px}
.tree-top{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:19px}
.tree-top h3{font-size:var(--iq-type-title-size);margin-top:7px}
.tree-count{font-size:var(--iq-type-meta-size);color:var(--iq-muted);white-space:nowrap}
.tree-search{display:flex;align-items:center;gap:9px;background:var(--iq-surface);border:1px solid transparent;border-radius:9px;padding:9px 12px;color:var(--iq-muted);margin-bottom:16px}
.tree-search input{border:0;background:none;min-width:0;width:100%;font-size:var(--iq-type-caption-size);min-height:22px}
.tree-search:focus-within{border-color:var(--iq-focus)}
.tree-content{min-height:130px}
.tree-row{display:flex;align-items:center;gap:10px;min-height:40px;padding:7px 10px 7px calc(5px + var(--tree-level)*21px);border-radius:8px;cursor:pointer;font-size:var(--iq-type-label-size);transition:background var(--iq-motion-fast),color var(--iq-motion-fast)}
.tree-row.is-selected{background:var(--iq-accent-soft);color:var(--iq-accent)}
.tree-disclosure{display:grid;place-items:center;width:14px;height:26px;flex:0 0 14px}
.tree-disclosure>.iq-icon{transition:transform var(--iq-motion-standard) var(--iq-ease)}
.tree-row[aria-expanded=true] .tree-disclosure>.iq-icon{transform:rotate(90deg)}
.tree-node-icon{display:grid;place-items:center;color:var(--iq-muted)}
.tree-node-label{flex:1;min-width:0;overflow-wrap:anywhere}
.tree-node-count{font-size:var(--iq-type-meta-size);color:var(--iq-muted);font-variant-numeric:tabular-nums}
.tree-checkbox{width:18px;height:18px;flex:0 0 18px;display:grid;place-items:center;background:var(--iq-surface);border:1px solid var(--iq-control);border-radius:5px}
.tree-checkbox.true{border-color:transparent;background:var(--iq-primary);color:var(--iq-on-primary)}
.tree-checkbox.mixed{border-color:transparent;background:var(--iq-completed);color:var(--iq-ink)}
.tree-status{font-size:var(--iq-type-meta-size);color:var(--iq-muted);border-top:1px solid var(--iq-line);padding-top:16px;margin-top:18px}
.tree-no-results{padding:22px 0;font-size:var(--iq-type-label-size);color:var(--iq-muted)}
/* Empty, contextual and systemic states use substantial but restrained symbols. */
.empty-art{width:106px;height:95px;position:relative;margin:0 auto 28px}
.empty-sheet{position:absolute;left:14px;top:8px;width:76px;height:76px;border-radius:19px;background:var(--iq-raised);display:grid;place-items:center;color:var(--iq-muted);box-shadow:0 6px 20px var(--iq-shadow-color-soft)}
.empty-sheet.back{transform:rotate(-9deg) translate(-4px,-3px);background:var(--iq-completed);box-shadow:none}
.empty-art-plus{position:absolute;right:0;bottom:0;width:29px;height:29px;display:grid;place-items:center;border-radius:50%;background:var(--iq-primary);color:var(--iq-on-primary)}
.iq-empty{padding:36px 20px}
.iq-empty h3{font-size:1.4375rem;letter-spacing:var(--iq-tracking-display)}
.iq-empty p{font-size:var(--iq-type-interface-size);line-height:1.65;max-width:43ch;margin:12px auto 23px;color:var(--iq-muted)}
.system-notice{display:flex;align-items:center;gap:22px;padding:25px 28px;background:var(--iq-raised);border-radius:16px}
.system-notice>div{flex:1;min-width:0}
.system-notice h3{font-size:1.0625rem;margin-top:8px}
.system-notice p{font-size:var(--iq-type-caption-size);line-height:1.65;color:var(--iq-muted);margin-top:6px;max-width:60ch}
.system-symbol{display:grid;place-items:center;width:54px;height:64px;flex:0 0 54px;border-radius:14px;background:var(--iq-info-bg);color:var(--iq-info)}
.system-notice>.iq-btn{white-space:nowrap}
.refined-context{width:min(100%,650px);margin:auto}
.refined-context .context-record{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;background:var(--iq-raised);border:0;padding:30px;border-radius:17px}
.refined-context .context-record h3{margin-top:14px;font-size:1.5625rem;letter-spacing:var(--iq-tracking-display)}
.refined-context .document-symbol{width:58px;height:64px;border-radius:15px;background:var(--iq-surface);display:grid;place-items:center;color:var(--iq-muted)}
.refined-context dl{grid-column:1/-1;display:flex;gap:46px;margin:0;border-top:1px solid var(--iq-line);padding-top:20px}
.refined-context dl div{display:flex;flex-direction:column;gap:5px}
.refined-context dt{font-size:var(--iq-type-meta-size);color:var(--iq-muted)}
.refined-context dd{margin:0;font-size:var(--iq-type-label-size)}
.context-confirmation{display:flex;align-items:center;gap:28px;padding:26px 4px 0}
.context-confirmation>div{flex:1}
.context-confirmation b{font-size:var(--iq-type-interface-size);font-weight:500}
.context-confirmation p{color:var(--iq-muted);line-height:1.65;font-size:var(--iq-type-caption-size);margin-top:6px;max-width:49ch}
/* Upload: related copy is grouped; selection action and limits have their own spacing. */
.iq-dropzone{padding:36px 30px 25px;background:var(--iq-raised);border:1px dashed var(--iq-control);border-radius:17px;transition:background-color var(--iq-motion-standard),border-color var(--iq-motion-standard)}
.iq-upload-art{position:relative;width:90px;height:88px;margin:0 auto 22px;perspective:600px}
.iq-upload-sheet{position:absolute;left:10px;top:8px;width:66px;height:70px;border:0;border-radius:14px;display:grid;place-items:center;background:var(--iq-surface);color:var(--iq-muted);transform:rotate(-5deg);transition:transform var(--iq-motion-layout) var(--iq-ease-spring),background var(--iq-motion-standard),color var(--iq-motion-standard)}
.upload-back-sheet{position:absolute;left:6px;top:4px;width:66px;height:70px;background:var(--iq-completed);border-radius:14px;transform:rotate(6deg);transition:transform var(--iq-motion-layout) var(--iq-ease-spring)}
.iq-upload-circle{position:absolute;right:0;bottom:0;width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:var(--iq-primary);color:var(--iq-on-primary);transition:transform var(--iq-motion-layout) var(--iq-ease-spring)}
.upload-copy b{display:block;font-size:1.1875rem;font-weight:500;letter-spacing:var(--iq-tracking-h1)}
.upload-copy p{margin:8px auto 0;font-size:var(--iq-type-label-size);line-height:1.6;color:var(--iq-muted);max-width:38ch}
.iq-dropzone>[data-pick-file]{margin-top:24px}
.upload-limits{display:flex;flex-direction:column;align-items:center;gap:4px;margin-top:20px;font-size:var(--iq-type-meta-size);line-height:1.5;color:var(--iq-muted)}
.iq-dropzone.dragover{background:var(--iq-accent-soft);border-color:var(--iq-accent);border-style:dashed}
.iq-dropzone.dragover .iq-upload-sheet{transform:translateY(-9px) rotate(0);background:var(--iq-raised);color:var(--iq-accent)}
.iq-dropzone.dragover .upload-back-sheet{transform:translate(-6px,-2px) rotate(-11deg)}
.iq-dropzone.dragover .iq-upload-circle{transform:translateY(-5px) scale(1.12)}
@media(hover:hover){.iq-dropzone:hover .iq-upload-sheet{transform:translateY(-4px) rotate(0)}.iq-dropzone:hover .upload-back-sheet{transform:rotate(-9deg) translateX(-3px)}.iq-dropzone:hover .iq-upload-circle{transform:translateY(-2px)}}
.upload-local-note{display:flex;align-items:center;gap:8px;margin-top:20px;font-size:var(--iq-type-meta-size);line-height:1.5}
.upload-status{font-size:var(--iq-type-caption-size);color:var(--iq-muted);margin-top:12px}
.upload-status:empty{display:none}
.file-samples-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:12px}
.file-samples-head h3{font-size:1.3125rem}
.file-samples-head p{font-size:var(--iq-type-caption-size);color:var(--iq-muted);margin-top:6px}
.iq-file-item{gap:18px;padding:18px 0;align-items:center}
.iq-file-item:last-child{border-bottom:0}
.iq-file-item>.file-item-copy{flex:1;min-width:0}
.iq-file-item b{font-size:var(--iq-type-label-size);font-weight:500;line-height:1.5}
.iq-file-item small{display:flex;gap:13px;flex-wrap:wrap;font-size:var(--iq-type-meta-size);margin-top:5px}
.iq-file-item>.file-local-state{font-size:var(--iq-type-meta-size);background:var(--iq-raised);white-space:nowrap}
/* Previews are never filter-blurred or scaled up from tiny icons. */
iq-file-preview{display:block;width:82px;height:68px;flex:0 0 82px}
.file-preview-button{position:relative;display:block;overflow:hidden;width:100%;height:100%;background:var(--iq-recessed);border:0;border-radius:9px;padding:0;cursor:zoom-in}
.file-preview-button>img,.file-preview-button>canvas{width:100%;height:100%;object-fit:cover;display:block}
iq-file-preview[data-kind=pdf] .file-preview-button,iq-file-preview[data-kind=text] .file-preview-button{background:var(--iq-document-bed)}
iq-file-preview[data-kind=pdf] img,iq-file-preview[data-kind=pdf] canvas,iq-file-preview[data-kind=text] canvas{width:78%;height:auto;object-fit:contain;object-position:top;margin:6px auto 0;box-shadow:0 1px 5px var(--iq-shadow-color)}
.preview-loading{width:100%;height:100%;display:grid;place-items:center;color:var(--iq-muted);background:var(--iq-raised)}
.preview-kind{position:absolute;bottom:4px;right:4px;font-size:var(--iq-type-meta-size);font-weight:600;line-height:1;padding:3px 4px;background:var(--iq-media-chip);color:var(--iq-white);border-radius:3px;letter-spacing:var(--iq-tracking-body);pointer-events:none}
.video-scrub-track{position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--iq-media-track);opacity:0;transition:opacity var(--iq-motion-fast)}
.video-scrub-track>i{display:block;width:100%;height:100%;background:white;transform:scaleX(0);transform-origin:left}
.file-preview-button:hover .video-scrub-track{opacity:1}
.media-dialog{padding:0;border:0;border-radius:19px;background:var(--iq-raised);color:var(--iq-ink);width:min(1040px,94vw);max-height:92dvh;box-shadow:0 30px 100px var(--iq-shadow-color-deep)}
.media-dialog::backdrop{background:var(--iq-scrim-strong)}
.media-dialog>header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;gap:24px}
.media-dialog h2{font-size:var(--iq-type-title-size);margin-top:7px;overflow-wrap:anywhere}
.media-dialog>header>div{min-width:0}
.media-dialog-body{background:var(--iq-recessed);min-height:180px;max-height:70dvh;overflow:auto}
.media-dialog-body>img,.media-dialog-body>video{width:auto;max-width:100%;max-height:68dvh;margin:auto;object-fit:contain}
.media-dialog-body>object{display:block;width:100%;height:66dvh;border:0}
.media-dialog-body>pre{font:var(--iq-type-interface-size)/1.85 var(--iq-font);white-space:pre-wrap;overflow-wrap:anywhere;max-width:790px;background:var(--iq-raised);padding:36px;margin:0 auto;min-height:360px}
.media-dialog-body>p{padding:30px}
.media-dialog>footer{padding:17px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:var(--iq-type-meta-size);color:var(--iq-muted)}
/* Feature: an editorial statement and actual UI content, no artificial light bands. */
.specimen-surface:has(.refined-feature){padding:0;background:transparent;min-height:0}
.refined-feature{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:30px;padding:44px;background:var(--iq-surface);border-radius:18px;color:var(--iq-ink);width:100%}
.feature-copy h3{font-size:clamp(26px,2.6vw,38px);line-height:var(--iq-type-heading3-lineHeight);letter-spacing:var(--iq-tracking-display);margin-top:23px}
.feature-copy p{font-size:var(--iq-type-label-size);line-height:1.7;color:var(--iq-muted);margin:19px 0 27px;max-width:32ch}
.feature-proof{padding:23px;background:var(--iq-raised);border-radius:13px;box-shadow:0 10px 35px var(--iq-shadow-color-soft);transform:translateY(0);transition:transform var(--iq-motion-layout) var(--iq-ease-spring)}
.proof-mini-head{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:.625rem;color:var(--iq-muted)}

.feature-proof h4{font-size:var(--iq-type-lead-size);font-weight:500;letter-spacing:var(--iq-tracking-display);line-height:1.25;margin:21px 0 22px}
.feature-proof-row{display:flex;align-items:center;gap:11px;margin-top:16px}
.feature-proof-symbol{display:grid;place-items:center;width:33px;height:39px;border-radius:9px;background:var(--iq-surface);color:var(--iq-muted);flex-shrink:0}
.feature-proof-symbol.done{background:var(--iq-success-bg);color:var(--iq-success)}
.feature-proof-row b{display:block;font-size:.6875rem;font-weight:500}
.feature-proof-row small{display:block;font-size:.625rem;line-height:1.45;margin-top:4px;color:var(--iq-muted)}
.feature-proof-foot{display:flex;align-items:center;gap:8px;border-top:1px solid var(--iq-line);padding-top:18px;margin-top:21px;font-size:.625rem;color:var(--iq-muted)}
/* Calendar planning: a true month plus a compact date-grouped alternative. */
iq-plan{display:block;min-width:0}
.deadline-planner{border-radius:18px;background:var(--iq-surface);padding:24px;min-width:0}
.plan-toolbar{display:flex;align-items:center;gap:16px;margin-bottom:26px}
.plan-toolbar h2{font-size:1.5625rem;text-transform:capitalize;margin-top:8px;letter-spacing:var(--iq-tracking-display)}
.plan-month-controls{display:flex;gap:4px;margin-left:auto}
.plan-modes{margin-left:12px}
.plan-modes button{display:flex;align-items:center;gap:8px;font-size:var(--iq-type-meta-size)}
.plan-weekday{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));padding:0 0 12px;gap:6px}
.plan-weekday span{font-size:var(--iq-type-meta-size);color:var(--iq-muted);padding-left:12px}
.plan-weekday span:nth-last-child(-n/**/+2){color:var(--iq-subtle)}
.plan-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}
.plan-day{min-height:122px;background:var(--iq-raised);border-radius:10px;padding:9px;min-width:0}
.plan-day.outside{background:transparent}
.plan-day-head{display:flex;align-items:center;justify-content:space-between;gap:3px;margin-bottom:10px;color:var(--iq-muted)}
.plan-day-head time{font-size:var(--iq-type-caption-size);line-height:27px;width:27px;height:27px;text-align:center;font-variant-numeric:tabular-nums;border-radius:50%}
.plan-day.is-today time{background:var(--iq-primary);color:var(--iq-on-primary)}
.plan-day-head>span{font-size:var(--iq-type-meta-size);color:var(--iq-muted)}
.plan-deadline{display:block;width:100%;text-align:left;background:var(--iq-accent-soft);color:var(--iq-ink);border:0;border-radius:7px;padding:8px;transition:background var(--iq-motion-standard),transform var(--iq-motion-standard)}
.plan-deadline>span{display:flex;align-items:center;gap:4px;font-size:var(--iq-type-meta-size);color:var(--iq-accent);margin-bottom:6px}
.plan-deadline>b{display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-weight:500;line-height:1.4;font-size:var(--iq-type-meta-size)}
.plan-deadline.done{background:var(--iq-success-bg)}
.plan-deadline.done>span{color:var(--iq-success)}
.plan-deadline+button{margin-top:5px}
.plan-legend{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-top:19px;font-size:var(--iq-type-meta-size);color:var(--iq-muted)}
.plan-legend>span:first-child{display:flex;align-items:center;gap:8px}
.plan-agenda{display:none}
.deadline-planner[data-mode=agenda] .plan-month-grid{display:none}
.deadline-planner[data-mode=agenda] .plan-agenda{display:block}
.agenda-day{display:grid;grid-template-columns:90px minmax(0,1fr);gap:28px;padding:20px 0;border-top:1px solid var(--iq-line)}
.agenda-date{display:flex;gap:10px;align-items:center;padding-left:7px}
.agenda-date strong{font-size:2.125rem;line-height:1;font-weight:500;letter-spacing:var(--iq-tracking-display)}
.agenda-date span{font-size:var(--iq-type-meta-size);line-height:1.5;color:var(--iq-muted)}
.agenda-task{display:flex;align-items:center;width:100%;gap:15px;min-height:62px;padding:12px;border-radius:10px;background:var(--iq-raised);text-align:left;transition:background var(--iq-motion-standard),transform var(--iq-motion-standard)}
.agenda-task>span:nth-child(2){min-width:0;flex:1}
.agenda-task b{font-size:var(--iq-type-label-size);font-weight:500}
.agenda-task small{display:flex;flex-wrap:wrap;gap:16px;font-size:var(--iq-type-meta-size);margin-top:5px;color:var(--iq-muted)}
.agenda-task+.agenda-task{margin-top:7px}
.agenda-state{height:33px;width:33px;display:grid;place-items:center;border-radius:9px;color:var(--iq-accent);background:var(--iq-accent-soft)}
.agenda-state.done{color:var(--iq-success);background:var(--iq-success-bg)}
.agenda-empty{padding:25px 0}
.agenda-empty p{font-size:var(--iq-type-label-size);color:var(--iq-muted);margin:10px 0 20px}
/* Voice examples: context, weak text, concrete replacement. */
.voice-examples>article{display:grid;grid-template-columns:100px 1fr 1fr;gap:24px;padding:24px 0;border-top:1px solid var(--iq-line)}
.voice-examples>article>span{font-size:var(--iq-type-meta-size);color:var(--iq-muted)}
.voice-examples small{display:block;font-size:var(--iq-type-meta-size);color:var(--iq-muted);margin-bottom:9px}
.voice-examples p{font-size:var(--iq-type-label-size);line-height:1.65}
.voice-before p{color:var(--iq-muted)}
.voice-after{padding-left:18px;border-left:2px solid var(--iq-ink)}
/* Keyboard focus WITHOUT contours. Fields alone keep an input boundary.
   Filled focus and underlined labels differ from both hover and selected state. */
:where(button,a,summary,[role=treeitem]):focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])),.iq-btn.visual-focus:not(.iq-btn){outline:none;background:var(--iq-focus-fill);color:var(--iq-focus-text);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px;box-shadow:none}
.iq-btn:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])),.iq-btn.visual-focus:not(.iq-btn),.iq-calendar-grid button:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])),.iq-calendar-grid button.selected:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])),.iq-pagination .page-numbers button:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])),.activity-filters button:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])),.tree-row:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])),.iq-menu-popup button:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])),.iq-command-list>button:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])),.iq-segmented>button:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){background:var(--iq-focus-fill);color:var(--iq-focus-text);border-color:transparent;outline:none;box-shadow:none}
.iq-btn:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"]))>*,:is(.tree-row,.command-entry,.iq-list-item,.agenda-task,.plan-deadline):focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])) *{color:inherit}
.iq-select-trigger:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){background:var(--iq-focus-fill);color:var(--iq-focus-text);border-color:transparent}
.iq-check:has(input:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"]))),.iq-radio:has(input:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"]))),.iq-switch:has(input:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"]))){border-radius:5px;background:var(--iq-focus-fill);color:var(--iq-focus-text);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}
.iq-check input:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"]))+.iq-check-box,.iq-radio input:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"]))+.iq-radio-dot,.iq-switch input:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"]))+.iq-switch-track{outline:none;box-shadow:none}
.iq-tabs-list button:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){background:var(--iq-focus-fill);color:var(--iq-focus-text);border-radius:6px}
[role=tabpanel]:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){outline:none}
[role=tabpanel]:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"]))::before{content:"Фокус раздела";display:block;width:max-content;padding:3px 9px;margin-bottom:12px;border-radius:4px;background:var(--iq-focus-fill);color:var(--iq-focus-text);font-size:var(--iq-type-meta-size)}
input[type=range]:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){outline:none;background:var(--iq-focus-fill);border-radius:8px}
input[type=range]:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"]))::-webkit-slider-thumb{background:var(--iq-focus-text)}
:where(input,textarea):focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){outline:none}
#main:focus:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){background:transparent;text-decoration:none;outline:none}
.file-preview-button:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){box-shadow:none}
.file-preview-button:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"]))::after{content:"Открыть";position:absolute;inset:auto 0 0;background:var(--iq-focus-fill);color:var(--iq-focus-text);font-size:var(--iq-type-meta-size);font-weight:600;padding:5px}
@media(max-width:1000px){.refined-feature{padding:30px;gap:23px}.feature-proof{padding:20px}.plan-day{padding:6px}.plan-deadline{padding:6px}.plan-day-head>span{display:none}.activity-days>[data-event-day]{grid-template-columns:75px minmax(0,1fr);gap:15px}.activity-next{margin-left:90px}}
@media(max-width:760px){
 .plan-month-grid{display:none!important}.plan-agenda{display:block}.plan-modes{display:none}.deadline-planner{padding:19px}.plan-toolbar{margin-bottom:18px}.plan-legend{align-items:flex-start}.plan-legend .iq-badge{display:none}
 .refined-feature{grid-template-columns:1fr;padding:25px}.feature-copy h3{font-size:1.9375rem}.feature-copy p{max-width:40ch}.feature-proof{max-width:460px;width:100%;margin:auto}
 .system-notice{flex-wrap:wrap;padding:23px;gap:18px}.system-notice>div{flex-basis:60%}.system-notice>.iq-btn{margin-left:72px}
 .voice-examples>article{grid-template-columns:1fr 1fr;gap:17px}.voice-examples>article>span{grid-column:1/-1}
 .file-local-state{display:none!important}.iq-file-item{gap:13px}.iq-file-item small{gap:3px;flex-direction:column}
}
@media(max-width:460px){
 .iq-stepper{gap:12px}.iq-stepper li:not(:last-child)::after{width:13px;right:-12px;top:19px}.iq-stepper button{flex-direction:column;align-items:flex-start;gap:10px;padding-right:0}.iq-step-index{width:32px;height:32px}.step-copy>b{}.step-status{font-size:var(--iq-type-meta-size)}.step-counter{margin-top:22px}
 iq-calendar{padding:16px 12px}.calendar-variants>iq-tabs>.iq-tabs-list{gap:16px}.iq-calendar-heading b{}.calendar-arrows .iq-btn.sm{--h:30px}.iq-calendar-grid button{height:33px}.calendar-time{gap:8px}.calendar-time small{max-width:108px;font-size:var(--iq-type-meta-size)}.calendar-clock input{width:26px}.iq-calendar-foot .calendar-foot-hint{display:none}.iq-calendar-foot{font-size:var(--iq-type-meta-size)}
 .iq-pagination{gap:8px}.page-numbers{gap:1px}.page-numbers button{min-width:30px;width:30px;height:32px}.iq-pagination>.iq-btn{min-width:30px;width:30px}
 .refined-metric{padding:21px}.metric-measure{gap:12px}.metric-measure>strong{font-size:3.5rem}.metric-measure>div>span{}.metric-glyph{width:34px;height:39px}.metric-foot{gap:10px}.metric-spark{width:65px}.metric-change{flex-wrap:wrap;font-size:var(--iq-type-meta-size)}.refined-metric h3{}
 .iq-alert{padding:17px 14px;gap:13px}.message-emblem{width:38px;flex-basis:38px;min-height:44px;border-radius:10px}.message-emblem .iq-icon{width:22px;height:22px}.iq-alert b{}.iq-alert p{}
 .activity-days>[data-event-day]{display:block}.activity-days h4{margin-bottom:9px}.activity-next{margin-left:0}.activity-event{gap:10px}.activity-event time{font-size:var(--iq-type-meta-size)}.event-symbol{width:30px;height:32px}.activity-filters button{padding:7px 10px;font-size:var(--iq-type-meta-size)}
 .tree-panel{padding:16px 12px}.tree-count{display:none}.tree-top h3{}.tree-row{gap:7px;padding-left:calc(2px + var(--tree-level)*14px)}.tree-disclosure{width:12px;flex-basis:12px}.tree-node-icon .iq-icon{width:17px;height:17px}
 .iq-dropzone{padding:27px 17px 22px}.upload-copy b{}.upload-copy p{}.upload-limits{font-size:var(--iq-type-meta-size)}.upload-local-note{align-items:flex-start;font-size:var(--iq-type-meta-size)}
 .file-samples-head{align-items:flex-start}.file-samples-head h3{}.file-samples-head>.iq-badge{display:none}iq-file-preview{width:63px;height:62px;flex-basis:63px}.iq-file-item{gap:10px}.iq-file-item b{}.iq-file-item small{font-size:var(--iq-type-meta-size)}.iq-file-item>.iq-btn.sm{--h:28px}
 .navigation-list .iq-list-item{padding:16px 0;gap:11px}.list-symbol{width:36px;flex-basis:36px;height:42px}.list-copy b{}.list-copy small{gap:3px;flex-direction:column;font-size:var(--iq-type-meta-size)}.command-entry{padding:18px 16px;gap:12px}.command-entry b{}.command-entry small{font-size:var(--iq-type-meta-size)}.command-entry kbd{display:none}
 .system-notice{padding:19px;gap:14px}.system-symbol{width:40px;flex-basis:40px;height:52px;border-radius:12px}.system-notice h3{}.system-notice>.iq-btn{margin-left:0}.system-notice .sample-overline{font-size:var(--iq-type-meta-size)}
 .refined-context .context-record{padding:22px;gap:18px}.refined-context .context-record h3{font-size:var(--iq-type-heading3-size)}.refined-context .document-symbol{width:42px;height:53px}.refined-context dl{gap:24px}.context-confirmation{gap:15px}.context-confirmation p{font-size:var(--iq-type-meta-size)}
 .voice-examples>article{grid-template-columns:1fr}.voice-examples>article>span{grid-column:auto}
 .agenda-day{grid-template-columns:56px minmax(0,1fr);gap:12px}.agenda-date{padding:0;flex-direction:column;align-items:flex-start;gap:5px}.agenda-date strong{font-size:1.8125rem}.agenda-date span br{display:initial}.agenda-task{gap:9px;padding:11px}.agenda-task b{}.agenda-task small{font-size:var(--iq-type-meta-size);gap:8px}.agenda-state{width:27px;flex:0 0 27px;height:30px}.agenda-task>.iq-icon{display:none}.plan-toolbar h2{font-size:1.4375rem}
 .media-dialog>header{padding:17px}.media-dialog h2{}.media-dialog>footer{flex-wrap:wrap;padding:15px 17px}.media-dialog-body>pre{padding:22px}
}
@media(prefers-reduced-motion:reduce){.iq-btn:hover,.iq-upload-sheet,.iq-upload-circle,.upload-back-sheet,.refined-feature:hover .feature-proof{transform:none!important}}
[data-motion=reduced] .iq-btn:hover,[data-motion=reduced] .refined-feature:hover .feature-proof{transform:none}
@media(forced-colors:active){:where(button,a,summary,[role=treeitem]):focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])),.iq-btn.visual-focus:not(.iq-btn){outline:none;background:Highlight!important;color:HighlightText!important}.iq-btn.primary,.page-numbers [aria-current=page],.iq-calendar-grid button.selected{background:Highlight;color:HighlightText}.iq-input-shell,.iq-combo-shell{border:1px solid FieldText}.iq-input-shell:focus-within,.iq-combo-shell:focus-within{border:2px solid Highlight}.message-emblem,.system-symbol{forced-color-adjust:none}.iq-check:has(input:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"]))),.iq-radio:has(input:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"]))),.iq-switch:has(input:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"]))){background:Highlight;color:HighlightText}.tree-checkbox{border:1px solid ButtonText}}

/* Integration corrections: final-state precedence, icon/copy alignment and no contour focus. */
.upload-local-note{display:flex;align-items:flex-start;gap:7px}
.upload-local-note>.iq-icon{margin-top:2px}
.iq-step-index{display:grid;place-items:center;flex:0 0 auto}
button:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])),a:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])),summary:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])),[role=treeitem]:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){outline:none}
.iq-btn.visual-focus:not(.iq-btn){border-color:transparent}
@media(prefers-reduced-motion:reduce){.iq-btn,.iq-btn>.iq-icon,.iq-step-index,.iq-calendar-grid button,.tree-disclosure>.iq-icon{transition:none!important}}

.upload-privacy{display:flex;align-items:flex-start;gap:7px;margin-top:18px}
.upload-privacy>.iq-icon{margin-top:2px}
.upload-errors:not(:empty){margin-top:20px}
.media-dialog footer{flex-wrap:wrap;gap:12px}
.media-dialog footer>span{margin-right:auto}
.pdf-page-view{background:var(--iq-document-bed);padding:24px;display:flex;align-items:center;flex-direction:column;gap:16px;width:100%}
.pdf-page-view img{max-width:min(100%,680px);width:auto;height:auto;max-height:none;box-shadow:0 4px 20px var(--iq-shadow-color)}
.pdf-page-label{font-size:var(--iq-type-caption-size);color:var(--iq-document-bed-ink)}
.pdf-preview-fallback{padding:48px;max-width:600px;margin:auto}
.pdf-preview-fallback h3{font-size:var(--iq-type-heading3-size);margin-bottom:12px}
.pdf-preview-fallback p{font-size:var(--iq-type-interface-size);line-height:1.7;color:var(--iq-muted)}

/* IQUIPAGE 04.2: corrections only; approved composition and typography retained. */
.iq-toast{align-items:center}.iq-toast-copy{align-self:center;min-width:0}.iq-toast-copy>b{display:block;line-height:1.45}.iq-toast-copy p:empty{display:none}.iq-toast.summary-only{min-height:76px;padding:16px 18px}.iq-toast.summary-only .iq-toast-icon{width:36px;height:36px}.iq-toast>.iq-btn{align-self:center}
.copy-confirmation{display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap}.iq-btn[data-copy-state=success]{color:var(--iq-success);background:var(--iq-success-bg);border-color:transparent}.iq-btn[data-copy-state=error]{color:var(--iq-danger);background:var(--iq-danger-bg)}
.iq-alert.danger{background:var(--iq-danger-bg);color:var(--iq-ink)}.iq-alert.danger .message-copy>b,.iq-alert.danger .message-copy p{color:var(--iq-danger)}.iq-input-shell.error{background:var(--iq-field-bg)}.iq-toast.tone-danger .iq-toast-icon{background:var(--iq-danger-fill)}
.iq-badge.success{background:var(--iq-success-bg);color:var(--iq-success);gap:6px;font-weight:550}.iq-badge.warning{background:var(--iq-warning-bg);color:var(--iq-warning);gap:6px;font-weight:500}.iq-alert.warning .message-emblem{background:var(--iq-warning-bg);color:var(--iq-warning)}
.iq-calendar-grid [role=gridcell]{display:grid;place-items:center}.iq-calendar-grid button{width:36px;height:36px;min-width:36px;max-width:36px;min-height:36px;aspect-ratio:1;padding:0;border-radius:50%;box-sizing:border-box;display:grid;place-items:center}
.iq-calendar-grid button.selected:hover{color:var(--iq-on-primary);background:var(--iq-primary)}.iq-calendar-foot>span:first-child{display:inline-flex;align-items:center;gap:9px}.iq-calendar-grid button.selected:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){color:var(--iq-focus-text);background:var(--iq-focus-fill)}
iq-time{display:block;width:100%;margin:16px 0 0}.time-picker{padding:17px 0 0;border-top:1px solid var(--iq-line)}.time-picker-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}.time-picker-top>span{display:flex;align-items:center;gap:7px;font-size:var(--iq-type-label-size);font-weight:550}.time-picker-top small{font-size:var(--iq-type-meta-size);color:var(--iq-muted)}.time-segments{display:flex;align-items:center;gap:9px}.time-segment{display:flex;border-radius:10px;background:var(--iq-recessed);padding:4px;min-width:0}.time-segment input{width:40px;height:40px;min-width:0;font-size:1.3125rem;font-weight:500;text-align:center;line-height:1;background:transparent;border:0;outline:none;font-variant-numeric:tabular-nums;padding:0;color:var(--iq-ink)}.time-segment:focus-within{box-shadow:inset 0 0 0 1.5px var(--iq-focus)}.time-segment>div{display:flex;flex-direction:column;gap:2px}.time-segment button{width:25px;height:19px;display:grid;place-items:center;border-radius:5px;background:transparent;color:var(--iq-muted)}.time-segment button:hover{background:var(--iq-raised);color:var(--iq-ink)}.time-colon{font-size:var(--iq-type-lead-size);color:var(--iq-muted)}.time-quarter{font-size:var(--iq-type-meta-size);padding:9px 8px;border-radius:7px;background:var(--iq-surface);margin-left:auto;white-space:nowrap}.time-presets{display:flex;gap:6px;margin-top:12px}.time-presets button{flex:1;font-size:var(--iq-type-meta-size);font-variant-numeric:tabular-nums;padding:7px;border-radius:6px;background:transparent;color:var(--iq-muted)}.time-presets button:hover{background:var(--iq-recessed);color:var(--iq-ink)}
.iq-stepper{display:flex;align-items:center;gap:0}.iq-stepper li{display:flex;align-items:center;flex:1;min-width:0;position:relative}.iq-stepper li:last-child{flex:0 0 auto}.iq-stepper li:not(:last-child)::after{position:static;display:block;flex:1;width:auto;min-width:20px;margin:0 20px;height:1px;top:auto;right:auto}.iq-stepper li button{flex:0 1 auto;max-width:none}.iq-stepper li.done::after{background:var(--iq-control)}.iq-step-index{border-radius:50%;width:36px;height:36px;aspect-ratio:1}.step-copy{min-width:78px}
[data-pagination]{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;width:100%}.pagination-count{margin:0!important;line-height:36px;text-align:right}.iq-pagination{display:flex;align-items:center;gap:10px}.iq-pagination .page-numbers button{width:36px;height:36px;min-width:36px;padding:0;display:grid;place-items:center;aspect-ratio:1}.page-numbers{align-items:center}
.metric-variants{width:min(100%,600px)}.metric-042{width:100%;background:var(--iq-raised)}.metric-042 .metric-foot{justify-content:flex-start;gap:8px;flex-wrap:wrap;font-size:var(--iq-type-caption-size);color:var(--iq-muted)}.metric-delta{display:inline-flex;align-items:center;gap:5px;font-weight:600}.metric-delta.positive{color:var(--iq-success)}.metric-delta.negative{color:var(--iq-danger)}.metric-chart{margin:8px 0 24px}.metric-chart>.iq-sparkline{width:100%;height:110px;display:block}.metric-chart>div{display:flex;justify-content:space-between;font-size:var(--iq-type-meta-size);color:var(--iq-muted);margin-top:7px}
.activity-042 .activity-event{padding:15px 0;gap:12px;align-items:start;grid-template-columns:32px minmax(0,1fr) 42px}.activity-042 .event-symbol{width:30px;height:32px;border-radius:8px}.activity-042 .activity-event b{font-size:var(--iq-type-label-size);font-weight:550;line-height:1.55}.activity-042 .activity-event p{font-size:var(--iq-type-caption-size);margin:3px 0 0;line-height:1.5}.activity-042 .activity-event time{padding-top:2px;font-size:var(--iq-type-meta-size)}.activity-042 .activity-days>[data-event-day]{grid-template-columns:90px minmax(0,1fr);gap:22px}.event-files{display:grid;gap:8px;padding:12px 0 5px;font-size:var(--iq-type-caption-size)}.event-files>span{display:flex;align-items:center;gap:7px}.event-changes{margin:10px 0 6px;font-size:var(--iq-type-caption-size);display:grid;gap:7px}.event-changes>div{display:grid;grid-template-columns:105px 1fr;gap:12px}.event-changes dt{color:var(--iq-muted)}.event-changes dd{display:flex;align-items:center;gap:7px;margin:0}.event-changes del{color:var(--iq-muted)}
textarea{resize:none!important;max-height:640px;min-height:80px;overflow-y:hidden;line-height:1.65}.iq-input-shell:has(textarea){align-items:stretch}.iq-input-shell textarea{width:100%;box-sizing:border-box}.iq-dialog:focus:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])),.iq-dialog:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){outline:none;box-shadow:var(--iq-shadow-3)}
.file-samples-head{margin-bottom:16px!important}.file-samples-head p{margin:7px 0 0}.file-samples-head+iq-upload{margin-top:0}.file-samples-head+iq-upload .iq-upload-list{margin-top:0}.file-dropwell{display:flex;align-items:center;justify-content:center;gap:11px;width:100%;padding:17px 20px;margin-top:13px;border:1px dashed var(--iq-control);border-radius:12px;background:transparent;color:var(--iq-ink);font-size:var(--iq-type-label-size);line-height:1.6;transition:background-color var(--iq-motion-standard) var(--iq-ease)}.file-dropwell>span>span{color:var(--iq-muted)}.file-dropwell:hover,.file-dropwell.dragover{background:var(--iq-accent-soft);border-color:var(--iq-accent);color:var(--iq-accent)}.card-date{display:inline-flex;gap:8px;align-items:center}.feature-proof-symbol{width:36px;height:36px;flex-basis:36px;aspect-ratio:1;border-radius:9px}.feature-proof-row b{font-size:var(--iq-type-interface-size)}.feature-proof-row small{font-size:var(--iq-type-caption-size)}
.context-042 .context-record-footer{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:18px;padding-top:4px;font-size:var(--iq-type-caption-size)}.context-record-footer>span{display:flex;align-items:center;gap:7px;color:var(--iq-success)}.context-record-footer a{font-size:var(--iq-type-caption-size)}.context-042 .context-record dl{gap:48px}.context-042 .document-symbol{width:54px;height:54px}
/* Markdown has one model and three toolbar presentations. No raw HTML execution. */
iq-markdown-editor{display:block;width:100%}.editor-variants{width:100%}.markdown-editor{border:1px solid var(--iq-line);border-radius:14px;background:var(--iq-raised);overflow:hidden;min-width:0;--iq-md-text-size:var(--iq-type-interface-size);--iq-md-text-leading:1.75}.markdown-editor:focus-within{border-color:var(--iq-focus)}.md-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:3px;padding:9px 10px;background:var(--iq-surface);border-bottom:1px solid var(--iq-line)}.md-tool{display:grid;place-items:center;width:32px;height:32px;padding:0;color:var(--iq-muted);background:transparent;border-radius:6px;font-size:var(--iq-type-body-size);font-weight:550}.md-tool:hover:not(:disabled){background:var(--iq-recessed);color:var(--iq-ink)}.md-tool:disabled{opacity:.3;cursor:default}.md-tool[data-md=bold]{font-weight:700}.md-tool[data-md=italic]{font-family:Georgia,serif;font-style:italic}.md-tool[data-md=strike]{text-decoration:line-through}.md-tool[data-md=quote]{font-size:1.625rem}.md-tool[data-md=h1],.md-tool[data-md=ul],.md-tool[data-md=quote],.md-tool[data-md=link],.md-tool[data-md=undo]{margin-left:7px}.markdown-editor .md-input{display:block;width:100%;border:0;outline:none;border-radius:0;box-shadow:none;background:transparent;color:var(--iq-ink);font-family:var(--iq-font);font-size:var(--iq-md-text-size);line-height:var(--iq-md-text-leading);padding:20px 22px;min-height:160px;max-height:600px}.md-input::placeholder{color:var(--iq-muted)}.markdown-editor footer{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--iq-line);padding:10px 16px;background:var(--iq-surface);color:var(--iq-muted);font-size:var(--iq-type-meta-size)}.md-hint{display:flex;gap:12px;align-items:center}.md-count{font-variant-numeric:tabular-nums}.markdown-editor footer button{display:flex;align-items:center;gap:7px;background:transparent;color:var(--iq-muted);border-radius:6px;padding:6px 7px;font-size:var(--iq-type-meta-size)}.markdown-editor footer button[aria-pressed=true]{background:var(--iq-recessed);color:var(--iq-ink)}.md-preview{padding:22px;min-height:160px;overflow-wrap:break-word}.md-preview h1{font-size:1.75rem;margin:0 0 16px}.md-preview h2{font-size:1.4375rem;margin:0 0 14px}.md-preview h3{font-size:var(--iq-type-title-size);margin:0 0 12px}.md-preview p{margin:0 0 8px}.md-preview ul,.md-preview ol{padding-left:22px;margin:0}.md-preview pre{padding:16px;background:var(--iq-surface);border-radius:8px;white-space:pre-wrap}.md-preview blockquote{margin:12px 0;padding-left:18px;border-left:2px solid var(--iq-control);color:var(--iq-muted)}.md-task{display:flex;gap:9px}.markdown-editor.variant-compact .md-tool{width:29px;height:30px}.markdown-editor.variant-minimal .md-input{min-height:100px}.markdown-editor [hidden]{display:none!important}
@media(max-width:640px){.iq-stepper{gap:8px;align-items:start}.iq-stepper li,.iq-stepper li:last-child{flex:1}.iq-stepper button{flex-direction:column;align-items:flex-start;gap:8px}.iq-stepper li:not(:last-child)::after{margin:20px 8px 0 0;min-width:10px;align-self:flex-start}.step-copy{min-width:0}.step-copy>b{}.step-status{font-size:var(--iq-type-meta-size)}.iq-step-index{width:32px;height:32px}.activity-042 .activity-days>[data-event-day]{display:block}.activity-042 .activity-event{grid-template-columns:30px minmax(0,1fr) 34px}.event-changes>div{grid-template-columns:1fr;gap:3px}.md-toolbar{gap:2px}.md-tool{width:30px;height:32px}.md-tool[data-md=h1],.md-tool[data-md=ul],.md-tool[data-md=quote],.md-tool[data-md=link],.md-tool[data-md=undo]{margin-left:0}.markdown-editor{--iq-md-text-size:var(--iq-type-body-size)}.markdown-editor .md-input{padding:16px}.md-count{display:none}.context-042 .context-record-footer{align-items:flex-start;flex-direction:column}.time-segment input{width:32px;font-size:var(--iq-type-lead-size)}.time-quarter{font-size:var(--iq-type-meta-size);padding:9px 6px}.file-dropwell{padding:14px}.file-dropwell>span>span{display:block}}
@media(max-width:380px){.iq-calendar-grid button{width:30px;height:30px;min-width:30px;min-height:30px;max-width:30px}.iq-pagination .page-numbers button{width:30px;min-width:30px;height:30px}.time-segment input{width:27px}.time-segment button{width:20px}.time-segments{gap:6px}}
@media(prefers-reduced-motion:reduce){.copy-confirmation,.md-preview{animation:none}.iq-btn,.file-dropwell{transition:none}}

.time-segment [data-time-step$=":1"]>.iq-icon{transform:rotate(-90deg)}

.md-task-mark { flex:none; align-self:center; display:inline-grid; place-items:center; width:16px;height:16px;border:1px solid var(--iq-control);border-radius:4px; }
.md-task-mark.is-checked { background:var(--iq-ink);color:var(--iq-raised);border-color:transparent; }
.md-preview h4 {font-size:var(--iq-type-body-size);line-height:1.4;margin:0 0 12px;}
iq-markdown-editor[aria-invalid="true"] .markdown-editor {border-color:var(--iq-danger);}
iq-markdown-editor[disabled] .md-input {color:var(--iq-muted);background:var(--iq-surface);}

/* 04.4 — targeted layout and interaction corrections, no change of visual direction. */
/* A shared non-native date trigger; the popup lives in the browser top layer. */
iq-date-field{display:block;min-width:0;width:100%}
.iq-date-trigger{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:44px;padding:11px 14px;border:1px solid var(--iq-field-line);border-radius:var(--iq-radius-sm);color:var(--iq-ink);background:var(--iq-field-bg);font:inherit;text-align:left;transition:background-color var(--iq-motion-standard) var(--iq-ease)}
.iq-date-trigger.is-empty{color:var(--iq-muted)}
.iq-date-trigger:hover:not(:disabled){background:var(--iq-surface)}
.iq-date-trigger:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])),.iq-date-trigger[aria-expanded=true]{outline:none;border-color:var(--iq-focus)}
.iq-date-trigger[aria-invalid=true]{border-color:var(--iq-danger)}
.iq-date-trigger:disabled{opacity:.45;cursor:not-allowed}
.iq-date-popup{display:none;position:fixed;inset:auto;height:auto;margin:0;border:0;padding:0;background:var(--iq-raised);color:var(--iq-ink);border-radius:18px;box-shadow:0 12px 48px var(--iq-shadow-color-strong);overflow:auto;overscroll-behavior:contain;z-index:1000}
.iq-date-popup:popover-open,.iq-date-popup.is-open{display:block}
.iq-date-popup>iq-calendar{width:100%;max-width:none;margin:0;padding:20px;box-shadow:none;background:transparent}
.iq-date-popup .iq-calendar-foot{display:none}
.iq-date-actions{position:sticky;bottom:0;background:var(--iq-raised);display:flex;align-items:center;gap:8px;border-top:1px solid var(--iq-line);padding:10px 16px}
.iq-date-actions>button{font-size:var(--iq-type-caption-size);line-height:20px;min-height:36px;padding:8px;border-radius:7px;background:transparent;color:var(--iq-muted)}
.iq-date-actions>button:last-child{margin-left:auto}
.iq-date-actions>button:hover:not(:disabled){background:var(--iq-surface);color:var(--iq-ink)}
.iq-date-actions>button:disabled{opacity:.35;cursor:default}
.iq-date-actions>.primary{background:var(--iq-primary);color:var(--iq-on-primary);padding-inline:14px}
/* Field-specific errors, stable DOM and description associations. */
[data-validation-icon]{display:inline-flex;color:var(--iq-danger);align-items:center;flex:none}
[data-validation-error]{display:block;margin-top:8px;line-height:1.5}
[data-validation-error][hidden],[data-validation-icon][hidden],[data-form-message]:empty{display:none!important}
/* A compact inline status remains identical inside a table or a free layout. */
.iq-badge,.workspace-table .iq-badge{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;min-height:26px;gap:6px;padding:4px 9px;border-radius:6px;line-height:18px;font-size:var(--iq-type-meta-size);font-weight:500;white-space:nowrap;background:var(--iq-recessed);color:var(--iq-muted)}
.iq-badge>.iq-icon,.workspace-table .iq-badge>.iq-icon{width:14px;height:14px;flex:0 0 14px;vertical-align:middle}
.iq-badge>.iq-dot{flex:0 0 5px;width:5px;height:5px;margin:0}
.iq-badge.info,.workspace-table .iq-badge.info{background:var(--iq-info-bg);color:var(--iq-info)}
.iq-badge.success,.workspace-table .iq-badge.success{background:var(--iq-success-bg);color:var(--iq-success)}
.iq-badge.warning,.workspace-table .iq-badge.warning{background:var(--iq-warning-bg);color:var(--iq-warning)}
.iq-badge.danger,.workspace-table .iq-badge.danger{background:var(--iq-danger-fill);color:var(--iq-on-danger)}
.iq-badge.outline{background:transparent;border:1px solid var(--iq-line-strong)}
.iq-alert.warning .message-emblem,.iq-toast.tone-warning .iq-toast-icon{background:transparent;color:var(--iq-warning-fill)}
.iq-alert.warning .message-emblem>.iq-icon{width:30px;height:30px}
/* Form notes are content, not an extra section. Single boundary before actions. */
#invite-demo-form{gap:20px}
#invite-demo-form>.form-note{margin:0;line-height:1.6}
#invite-demo-form>.iq-dialog-footer{margin-top:0;padding-top:20px}
.iq-field-foot:has(>span:only-child:empty){display:none}
#workspace-settings>.iq-setting-row:has(+.iq-dialog-footer){border-bottom:0}
#workspace-settings>.iq-dialog-footer{margin-top:0;padding-top:20px}
/* Overflow members share the same diameter and border as named avatars. */
.iq-avatars{align-items:center}

/* Comment text and formatting share an editor; submission is in its footer, not its text area. */
.comment-compose{margin-top:20px}
.comment-compose .comment-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px}
.comment-actions .iq-helper{margin:0;font-size:var(--iq-type-meta-size);line-height:1.5}
.comment-actions>.iq-btn{flex:none;min-height:36px;padding-inline:14px}
.comment-compose .markdown-editor{--iq-md-text-size:var(--iq-type-interface-size)}.comment-compose .markdown-editor .md-input{min-height:88px}
.comment-compose .md-toolbar{padding:7px 8px;gap:2px}
.comment-compose .md-tool{width:28px;height:30px;font-size:var(--iq-type-interface-size)}
.comment-compose .md-tool[data-md=quote]{font-size:1.5rem}
.comment-compose .md-tool[data-md=h1],.comment-compose .md-tool[data-md=ul],.comment-compose .md-tool[data-md=quote],.comment-compose .md-tool[data-md=link],.comment-compose .md-tool[data-md=undo]{margin-left:4px}
.comment-compose .markdown-editor footer{padding:6px 10px}
.comment-body{font-size:var(--iq-type-interface-size);line-height:1.7;margin-top:8px;overflow-wrap:break-word}
.comment-body p{margin:0 0 8px}.comment-body ul,.comment-body ol{margin:6px 0;padding-left:22px}.comment-body pre{padding:12px;border-radius:8px;background:var(--iq-surface);white-space:pre-wrap}.comment-body h2{font-size:1.3125rem;margin:12px 0 8px}.comment-body h3{font-size:var(--iq-type-title-size);margin:12px 0 8px}.comment-body blockquote{border-left:2px solid var(--iq-control);padding-left:12px;margin:8px 0}
#comments-count{font-size:var(--iq-type-caption-size);margin-left:5px;vertical-align:middle}
@media(max-width:640px){
 .comment-compose .md-tool{width:28px;height:32px}
 .comment-compose .markdown-editor{--iq-md-text-size:var(--iq-type-body-size)}
 .comment-actions{flex-wrap:wrap}.comment-actions>.iq-btn{margin-left:auto}
 .iq-date-popup>iq-calendar{padding:16px}
}
@media(prefers-reduced-motion:reduce){.iq-date-trigger{transition:none}}
@media(forced-colors:active){.iq-date-trigger{border-color:ButtonText}.iq-date-trigger:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){border-color:Highlight}.iq-date-popup{border:1px solid CanvasText}.iq-badge{border:1px solid currentColor}}

.date-field-example{width:min(100%,320px);margin-inline:auto}.date-field-example>.iq-helper{font-size:var(--iq-type-caption-size);line-height:1.6;margin:12px 0 0}

/* 04.4 input contract: a stable neutral surface in normal, error and autofilled states. */
.iq-input-shell,.iq-combo-shell{background:var(--iq-field-bg)}
.iq-input-shell.error,.iq-field.error .iq-input-shell,.iq-input-shell:has([aria-invalid=true]){background:var(--iq-field-bg);border-color:var(--iq-danger);border-width:1px;box-shadow:none}
.iq-input-shell.error:focus-within{border-color:var(--iq-danger);box-shadow:none}
.iq-input-shell.error [data-validation-icon],.iq-input-shell.error>.iq-icon:last-child{display:none}
.iq-input-shell input,.iq-combo-input{caret-color:var(--iq-ink)}
.iq-input-shell input:-webkit-autofill,.iq-combo-input:-webkit-autofill{box-shadow:0 0 0 1000px var(--iq-field-bg) inset!important;-webkit-text-fill-color:var(--iq-ink)!important;caret-color:var(--iq-ink);background-clip:padding-box}
.iq-input-shell input:autofill,.iq-combo-input:autofill{box-shadow:0 0 0 1000px var(--iq-field-bg) inset!important;color:var(--iq-ink);caret-color:var(--iq-ink)}
.iq-input-shell:has(input:autofill){background:var(--iq-field-bg)}

/* The wrapper, label, editable value and helper use one width and one central axis. */
.number-example{align-self:center;width:min(100%,280px);margin:0 auto;display:flex;flex-direction:column;align-items:stretch;gap:8px;text-align:center}
.number-example>iq-number{width:100%;max-width:none;margin:0}
.number-example .iq-control-label{width:100%;text-align:center;margin:0 0 8px}
.number-example>.iq-helper{width:100%;margin:0;text-align:center;font-size:var(--iq-type-caption-size);line-height:1.5}
iq-number .iq-number{width:100%;max-width:none;display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:0}
.iq-number input{padding:0;width:100%;height:44px;line-height:1;text-align:center;margin:0;font-size:var(--iq-type-body-size);font-variant-numeric:tabular-nums;appearance:textfield;-moz-appearance:textfield}
.iq-number input::-webkit-inner-spin-button,.iq-number input::-webkit-outer-spin-button{appearance:none;-webkit-appearance:none;margin:0}
.iq-number button{width:44px;min-width:44px;height:44px;padding:0}

/* A three-column stepper. Labels never interrupt the connector between circle centres. */
[data-stepper]{container-type:inline-size;width:100%;--step-size:36px;--step-gap:12px}
.iq-stepper{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:0;max-width:720px;width:100%;padding:0;margin:0 auto;list-style:none}
.iq-stepper li,.iq-stepper li:last-child{position:relative;display:block;min-width:0;flex:none}
.iq-stepper li button{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:12px;min-height:0;width:100%;max-width:none;padding:0 4px;text-align:center;background:transparent;border-radius:10px}
.iq-stepper .iq-step-index{box-sizing:border-box;width:var(--step-size);height:var(--step-size);flex:0 0 var(--step-size);border:0;border-radius:50%;display:grid;place-items:center;position:relative;z-index:1}
.iq-stepper .step-copy{display:block;min-width:0;width:100%;padding:0;line-height:1.4}
.iq-stepper .step-copy>b{display:block;margin:0;line-height:1.4;white-space:normal;font-size:var(--iq-type-label-size);font-weight:500;overflow-wrap:anywhere}
.iq-stepper .current .step-copy>b{font-weight:600}
.iq-stepper li:not(:last-child)::after{content:"";position:absolute;display:block;left:calc(50% + var(--step-size)/2 + var(--step-gap));right:auto;top:calc(var(--step-size)/2 - .5px);bottom:auto;width:calc(100% - var(--step-size) - 2*var(--step-gap));height:1px;min-width:0;margin:0;background:var(--iq-line);transition:background-color var(--iq-motion-standard) var(--iq-ease)}
.iq-stepper li.done::after{background:var(--iq-control)}
.step-counter{margin:28px 0 16px}
@container(max-width:350px){[data-stepper]{--step-gap:8px}.iq-stepper .step-copy>b{font-size:var(--iq-type-caption-size)}.iq-stepper li button{gap:10px}}

/* Compact, direct time entry. No steppers, increment button, or hidden popup. */
iq-time{display:block;min-width:0}
.time-picker,iq-calendar .time-picker{padding-top:16px;margin-top:4px;border-top:1px solid var(--iq-line)}
.time-picker-top,iq-calendar .time-picker-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.time-picker-top>span,iq-calendar .time-picker-top>span{display:flex;align-items:center;gap:7px;font-size:var(--iq-type-caption-size);font-weight:550}
.time-picker-top small,iq-calendar .time-picker-top small{font-size:var(--iq-type-meta-size);color:var(--iq-muted)}
.time-entry-row{display:flex;align-items:center;justify-content:space-between;gap:12px}
.time-segments,iq-calendar .time-segments{display:flex;align-items:center;justify-content:center;gap:2px;padding:4px;border-radius:9px;border:1px solid transparent;background:var(--iq-recessed);flex:none}
.time-segments:focus-within{border-color:var(--iq-focus)}
.time-segment,iq-calendar .time-segment{display:block;min-width:0;height:32px;padding:0;background:transparent;border-radius:5px;box-shadow:none}
.time-segment:focus-within{box-shadow:none}
.time-segment input,iq-calendar .time-segment input{box-sizing:border-box;display:block;width:36px;min-width:36px;height:32px;font:500 var(--iq-type-body-size)/32px var(--iq-font);font-variant-numeric:tabular-nums;letter-spacing:var(--iq-tracking-body);text-align:center;background:transparent;border:0;margin:0;padding:0;color:var(--iq-ink);outline:none;box-shadow:none}
.time-segment input:focus:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){background:var(--iq-raised);border-radius:5px}
.time-colon,iq-calendar .time-colon{font-size:var(--iq-type-body-size);width:10px;text-align:center;line-height:32px;color:var(--iq-muted)}
.time-entry-caption{font-size:var(--iq-type-meta-size);color:var(--iq-muted);white-space:nowrap}
.time-presets,iq-calendar .time-presets{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:12px}
.time-presets button,iq-calendar .time-presets button{min-height:32px;margin:0;padding:6px 4px;font-size:var(--iq-type-meta-size);line-height:20px;font-variant-numeric:tabular-nums;background:transparent;border:0;border-radius:6px;color:var(--iq-muted)}
.time-presets button:hover:not(:disabled){background:var(--iq-surface);color:var(--iq-ink)}
.time-presets button[aria-pressed=true]{background:var(--iq-accent-soft);color:var(--iq-accent);font-weight:600}
.time-presets button:disabled{opacity:.5}

/* Settings are a compact list with one separator per boundary. */
.iq-settings-list{display:block;width:100%}
.iq-setting-row{margin:0;padding:16px 0;gap:20px;align-items:center}
.iq-setting-row>div{min-width:0}.iq-setting-row p{margin:4px 0 0;line-height:1.5}
/* Keep the native input on top of its decorative track: the whole control
   remains a real pointer target as well as a keyboard-operable switch. */
.iq-switch input{width:40px;height:32px;z-index:1;cursor:inherit}
.iq-switch-track{pointer-events:none}
.iq-setting-row .iq-switch{flex:none;margin:0;gap:0}
.iq-setting-row .iq-switch>span:not(.iq-switch-track){display:none}
.iq-settings-list>.iq-setting-row:last-child{border-bottom:0}
#workspace-settings{gap:20px}
#workspace-settings .iq-settings-list{margin:0}
#workspace-settings .iq-dialog-footer{margin-top:0;padding-top:20px}

/* Preview changes editing mode at the top; the primary action stays in the footer. */
.md-editor-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 14px;background:var(--iq-surface);border-bottom:1px solid var(--iq-line);font-size:var(--iq-type-caption-size);line-height:20px;color:var(--iq-muted)}
.md-editor-head>span{font-weight:500;color:var(--iq-ink)}
.md-view-toggle{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:4px 7px;background:transparent;color:var(--iq-muted);font-size:var(--iq-type-meta-size);border-radius:6px}
.md-view-toggle:hover:not(:disabled),.md-view-toggle[aria-pressed=true]{background:var(--iq-recessed);color:var(--iq-ink)}
.markdown-editor footer{padding:8px 12px;min-height:44px}
.markdown-editor footer>.md-submit,.comment-compose .markdown-editor footer>.md-submit{min-height:34px;--h:34px;padding:7px 12px;margin-left:auto;background:var(--iq-primary);color:var(--iq-on-primary);border:0;font-size:var(--iq-type-caption-size);line-height:20px;gap:8px}
.markdown-editor footer>.md-submit:disabled{opacity:.45;cursor:default}
.comment-compose .markdown-editor footer{padding:8px 12px}
.comment-storage{margin:10px 0 0;line-height:1.5;font-size:var(--iq-type-meta-size);color:var(--iq-muted)}
.md-submit .iq-icon{width:16px;height:16px}
@media(max-width:640px){.md-editor-head{padding:8px 10px}.md-editor-head>span{font-size:var(--iq-type-meta-size)}.markdown-editor footer>.md-submit{min-height:36px;--h:36px}.comment-storage{font-size:var(--iq-type-meta-size)}.time-segment input,iq-calendar .time-segment input{font-size:var(--iq-type-body-size)}.iq-setting-row{padding:16px 0}}

/* Status columns are comparable: one fixed cell size, centred label and icon. */
.iq-badge.planned,.workspace-table .iq-badge.planned{background:var(--iq-planned-bg);color:var(--iq-planned)}
.workspace-table .iq-badge,.iq-table .iq-badge{box-sizing:border-box;inline-size:168px;min-inline-size:168px;max-inline-size:168px;min-block-size:28px;block-size:28px;justify-content:center;padding:4px 9px;white-space:nowrap;font-size:var(--iq-type-meta-size);line-height:18px}
@media(max-width:640px){.workspace-table .iq-badge,.iq-table .iq-badge{inline-size:152px;min-inline-size:152px;max-inline-size:152px}}

/* Member rings stay distinct against both elevated surfaces and the canvas. */

.iq-avatar.more{background:var(--iq-raised);color:var(--iq-ink)}
.iq-avatars{padding-left:0;isolation:isolate}
.iq-avatars .iq-avatar:first-child{margin-left:0}

@media(forced-colors:active){.time-segments{border-color:FieldText}.time-presets button[aria-pressed=true]{background:Highlight;color:HighlightText}.iq-badge.planned{border:1px solid currentColor}.iq-alert.warning .message-emblem{color:var(--iq-warning-fill)}}
/* The progress narration and its controls share the central axis of the redesigned rail. */
[data-stepper]{max-width:720px;margin-inline:auto}
[data-stepper]>.step-counter{text-align:center}
[data-stepper]>.row{justify-content:center}
.iq-settings-list>.iq-setting-row:has(+.iq-dialog-footer){border-bottom:0}

/* IQUIPAGE 04.5. Shared component contracts; the approved editorial layout is retained. */

/* Error is one semantic red in each theme: border, helper and solid status use the same role. */
.iq-input-shell.error,
.iq-input-shell.error:focus-within,
.iq-date-trigger[aria-invalid=true]{border-color:var(--iq-danger-fill);background:var(--iq-field-bg);box-shadow:none}
.iq-helper.error,.iq-inline.danger,[data-validation-error]{color:var(--iq-danger-fill);font-weight:550}
.iq-input-shell input:-webkit-autofill{box-shadow:0 0 0 1000px var(--iq-field-bg) inset!important;-webkit-text-fill-color:var(--iq-ink)!important}

/* The centred quantity object keeps its label aligned with the left edge of the input. */
.number-example{width:min(100%,280px);margin-inline:auto}
.number-example .iq-control-label{text-align:left;margin-bottom:8px}
.number-example>.iq-helper{text-align:center;margin:0;line-height:1.5}

/* Time: purpose and display format on the left, an editable clock on the right. */
.time-picker.time-picker-045,iq-calendar .time-picker.time-picker-045{
  display:grid;grid-template-columns:minmax(86px,1fr) auto;align-items:center;column-gap:16px;
  padding-top:16px;margin-top:4px;border-top:1px solid var(--iq-line);
}
.time-settings{display:flex;flex-direction:column;align-items:flex-start;gap:9px;min-width:0}
.time-title{display:inline-flex;align-items:center;gap:8px;font-size:var(--iq-type-label-size);line-height:20px;font-weight:600;color:var(--iq-ink)}
.time-title>.iq-icon{width:17px;height:17px;flex:none}
.time-format{display:inline-flex;gap:2px;padding:2px;border-radius:7px;background:var(--iq-recessed)}
.time-format>button{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:4px 9px;border:0;border-radius:5px;font:500 var(--iq-type-meta-size)/20px var(--iq-font);white-space:nowrap;background:transparent;color:var(--iq-muted);transition:background-color var(--iq-motion-standard) var(--iq-ease),color var(--iq-motion-standard) var(--iq-ease)}
.time-format>button[aria-pressed=true]{background:var(--iq-raised);color:var(--iq-ink);box-shadow:var(--iq-shadow-1)}
.time-format>button:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){background:var(--iq-focus-fill);color:var(--iq-focus-text);text-decoration:underline;text-underline-offset:3px;outline:0}
.time-values{display:flex;align-items:center;justify-content:flex-end;gap:6px;min-width:0}
.time-picker-045 .time-segments,iq-calendar .time-picker-045 .time-segments{display:flex;gap:0;padding:4px 5px;min-height:42px;flex:none;border-radius:9px;background:var(--iq-field-bg);border:1px solid var(--iq-line)}
.time-picker-045 .time-segments:focus-within{border-color:var(--iq-focus)}
.time-picker-045 .time-segment,iq-calendar .time-picker-045 .time-segment{height:32px;padding:0;background:transparent}
.time-picker-045 .time-segment input,iq-calendar .time-picker-045 .time-segment input{width:32px;min-width:32px;height:32px;padding:0;margin:0;font:550 var(--iq-type-title-size)/32px var(--iq-font);font-variant-numeric:tabular-nums;letter-spacing:var(--iq-tracking-body);color:var(--iq-ink);background:transparent;border:0;text-align:center;outline:0;box-shadow:none}
.time-picker-045 .time-colon,iq-calendar .time-picker-045 .time-colon{width:10px;font-size:1.0625rem;line-height:32px;color:var(--iq-muted)}
.time-period{display:inline-flex;align-items:center;justify-content:center;width:38px;min-height:40px;padding:4px;font:600 var(--iq-type-meta-size)/20px var(--iq-font);border-radius:7px;background:var(--iq-recessed);color:var(--iq-ink)}
.time-period[hidden]{display:none}
.time-period:hover:not(:disabled){background:var(--iq-hover)}
.time-period:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){background:var(--iq-focus-fill);color:var(--iq-focus-text);text-decoration:underline;outline:0}
.time-format>button:disabled,.time-period:disabled{opacity:.5;cursor:default}

/* Centred pagination, with bounded page windows. No width growth for large totals. */
iq-pagination{display:block;width:100%;min-width:0}
.pagination-layout{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;width:100%;margin:0 auto}
.pagination-layout>.pagination-count{order:0;display:block;margin:0;text-align:center;font-size:var(--iq-type-caption-size);line-height:20px;color:var(--iq-muted)}
.pagination-layout>.iq-pagination{order:1;display:flex;align-items:center;justify-content:center;gap:5px;margin:0;width:auto}
.iq-pagination .page-numbers{display:flex;align-items:center;justify-content:center;gap:5px}
.pagination-layout button,.pagination-layout .page-gap{display:inline-flex;align-items:center;justify-content:center;min-width:36px;width:36px;height:36px;min-height:36px;flex:0 0 36px;padding:0;border:0;border-radius:50%;font:500 var(--iq-type-label-size)/1 var(--iq-font);font-variant-numeric:tabular-nums;background:transparent;color:var(--iq-ink)}
.pagination-layout .page-gap{min-width:20px;width:20px;flex-basis:20px;color:var(--iq-muted)}
.pagination-layout button:hover:not(:disabled):not([aria-current]){background:var(--iq-hover)}
.pagination-layout button[aria-current=page]{background:var(--iq-primary);color:var(--iq-on-primary);font-weight:600}
.pagination-layout button:disabled{opacity:.35;cursor:default}
.pagination-layout button:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){outline:none;text-decoration:underline;text-underline-offset:4px;background:var(--iq-focus-fill);color:var(--iq-focus-text)}
.pagination-variants{width:100%;max-width:720px;margin:0 auto}
.pagination-variants>iq-tabs>[data-panel]{padding:32px 0 12px}
.pagination-variants>iq-tabs>[role=tablist]{justify-content:center}
[data-stepper]>.step-counter{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
[data-stepper]>.row{margin-top:28px;justify-content:center}

/* All semantic pills are opaque, compact and typographically equivalent. */
.iq-badge,.workspace-table .iq-badge{display:inline-flex;align-items:center;justify-content:center;min-height:26px;padding:4px 10px;gap:0;border:0;border-radius:6px;font:600 var(--iq-type-meta-size)/18px var(--iq-font);white-space:nowrap;background:var(--iq-neutral-fill);color:var(--iq-on-neutral)}
.iq-badge.info,.workspace-table .iq-badge.info{background:var(--iq-info-fill);color:var(--iq-on-info)}
.iq-badge.success,.workspace-table .iq-badge.success{background:var(--iq-success-fill);color:var(--iq-on-success)}
.iq-badge.warning,.workspace-table .iq-badge.warning{background:var(--iq-warning-fill);color:var(--iq-on-warning)}
.iq-badge.danger,.workspace-table .iq-badge.danger{background:var(--iq-danger-fill);color:var(--iq-on-danger)}
.iq-badge.planned,.workspace-table .iq-badge.planned{background:var(--iq-planned-fill);color:var(--iq-on-planned)}
.iq-badge.outline{background:transparent;color:var(--iq-muted);border:1px solid var(--iq-line-strong);font-weight:500}
.iq-table .iq-badge,.workspace-table .iq-badge{inline-size:136px;min-inline-size:136px;max-inline-size:136px;block-size:28px;min-block-size:28px;font-size:var(--iq-type-meta-size);line-height:18px;padding:4px 8px}
.iq-badge>.iq-dot{display:none}.iq-badge>.iq-icon{display:none}.iq-badge:is(.success,.danger,.warning)>.iq-icon{display:inline-block}

/* The shared emblem, including warning, retains a square optical footprint. */
.iq-alert .message-emblem,.iq-toast .iq-toast-icon{box-sizing:border-box;flex:none;display:grid;place-items:center;border:0;border-radius:12px}
.iq-alert .message-emblem{width:48px;height:48px;min-width:48px;min-height:48px}
.iq-alert.success .message-emblem,.iq-toast.tone-success .iq-toast-icon,.event-symbol.decisions{background:var(--iq-success-fill);color:var(--iq-on-success)}
.iq-alert.info .message-emblem,.iq-toast.tone-info .iq-toast-icon,.system-symbol{background:var(--iq-info-fill);color:var(--iq-on-info)}
.iq-alert.warning .message-emblem,.iq-toast.tone-warning .iq-toast-icon{background:var(--iq-warning-fill);color:var(--iq-on-warning)}
.iq-alert.danger .message-emblem,.iq-toast.tone-danger .iq-toast-icon{background:var(--iq-danger-fill);color:var(--iq-on-danger)}
.iq-alert.warning .message-emblem>.iq-icon,.iq-alert .message-emblem>.iq-icon{width:24px;height:24px;flex:none}
.message-gallery .iq-alert{align-items:center}

/* A normal form gap replaces empty textarea helpers and extra settings padding. */
.iq-field-foot:empty{display:none}
#workspace-settings{gap:20px}
#workspace-settings>.iq-settings-list{margin:0}
.iq-settings-list>.iq-setting-row:first-child{padding-top:0}
.iq-settings-list>.iq-setting-row:has(+.iq-dialog-footer){padding-bottom:0;border-bottom:0}
.iq-settings-list>.iq-dialog-footer{margin-top:20px!important;padding-top:20px}

/* Avatars overlap through a separator matching their host surface, as in the reference. */
:root{--iq-avatar-separator:var(--iq-canvas);}
.iq-card,.task-card,.task-drawer-meta,.task-comments,.iq-dialog-panel,.iq-dialog,dialog{--iq-avatar-separator:var(--iq-raised)}
.specimen-surface{--iq-avatar-separator:var(--iq-surface)}
.iq-avatar{border:0;box-shadow:none}
.iq-avatars{display:inline-flex;align-items:center;gap:0;padding:0;isolation:isolate}

.iq-avatars .iq-avatar:first-child{margin-left:0}
.iq-avatar.more{background:var(--iq-surface);color:var(--iq-ink)}

/* Task metadata and board headers use real icon/text groups, never baseline whitespace. */
.task-due,.card-date,.task-card-footer>span:not(.iq-avatar),.task-drawer-meta>.task-due{display:inline-flex;align-items:center;gap:7px;margin:0;font:400 var(--iq-type-caption-size)/20px var(--iq-font);color:var(--iq-muted);white-space:nowrap}
.task-due>.iq-icon,.card-date>.iq-icon,.task-card-footer>span:not(.iq-avatar)>.iq-icon{display:block;flex:none;width:15px;height:15px}
.kanban-column-header{display:flex;align-items:center;gap:9px;min-height:28px;padding:0;margin:0 0 14px;font-size:.9375rem;line-height:22px;color:var(--iq-ink)}
.kanban-column-header>h3{margin:0;padding:0;font:600 .9375rem/22px var(--iq-font);min-width:0}
.kanban-column-header>.iq-icon{display:block;flex:none;width:18px;height:18px}
.kanban-column-header>.kanban-count{display:inline-flex;align-items:center;justify-content:center;flex:0 0 26px;width:26px;height:26px;padding:0;margin-left:auto;font:600 var(--iq-type-label-size)/1 var(--iq-font);border-radius:7px;background:var(--iq-recessed);color:var(--iq-ink)}
.task-card{display:grid;gap:12px;padding:14px;min-height:0;margin-bottom:10px}
.task-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0;min-height:26px}
.task-card-id{display:inline-flex;align-items:center;padding:3px 7px;border-radius:5px;font:500 var(--iq-type-meta-size)/18px var(--iq-mono);font-variant-numeric:tabular-nums;letter-spacing:var(--iq-tracking-body);color:var(--iq-ink);background:var(--iq-surface)}
.task-card-title{display:block;width:100%;min-height:0;margin:0;padding:0;text-align:left;font:500 var(--iq-type-interface-size)/1.5 var(--iq-font);letter-spacing:var(--iq-tracking-body)}
.task-card-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0;padding:0;min-height:28px}

/* The action is optically centred in the footer, not aligned to a text baseline. */
.markdown-editor footer,.comment-compose .markdown-editor footer{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:54px;box-sizing:border-box;padding:10px 12px}
.markdown-editor footer>.md-hint{display:inline-flex;align-items:center;gap:10px;margin:0;line-height:20px}
.markdown-editor footer>.md-submit,.comment-compose .markdown-editor footer>.md-submit{display:inline-flex;align-items:center;justify-content:center;align-self:center;min-height:34px;height:34px;--h:34px;padding:0 12px;margin:0 0 0 auto;line-height:20px;vertical-align:middle;gap:8px}
.md-submit>.iq-icon{display:block;width:16px;height:16px;flex:none}
#task-sort-menu [role=menuitemradio]{display:flex;align-items:center;gap:12px}
#task-sort-menu .sort-selected{margin-left:auto;display:inline-flex;visibility:hidden}
#task-sort-menu [aria-checked=true] .sort-selected{visibility:visible}
#task-sort-menu [aria-checked=true]{font-weight:600;background:var(--iq-surface)}
#task-sort-menu .iq-menu-popup{min-width:256px}
@media(max-width:640px){
 .time-picker.time-picker-045,iq-calendar .time-picker.time-picker-045{gap:10px}
 .pagination-layout>.iq-pagination,.iq-pagination .page-numbers{gap:3px}
 .pagination-layout button{width:32px;min-width:32px;height:36px;flex-basis:32px}
 .pagination-layout .page-gap{width:16px;min-width:16px;flex-basis:16px}
 .iq-table .iq-badge,.workspace-table .iq-badge{inline-size:136px;min-inline-size:136px;max-inline-size:136px}
 .markdown-editor footer,.comment-compose .markdown-editor footer{padding:10px;gap:8px}
 .markdown-editor footer>.md-hint{font-size:var(--iq-type-meta-size);gap:6px}
 .markdown-editor footer>.md-submit{min-height:34px;height:34px;--h:34px}
}
@media(forced-colors:active){
 .iq-badge{border:1px solid CanvasText}
 .time-picker-045 .time-segments{border-color:FieldText}.time-format>button[aria-pressed=true],.time-period:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])),.pagination-layout button[aria-current=page]{background:Highlight;color:HighlightText}
}
@media(prefers-reduced-motion:reduce){.time-format>button{transition:none}}

/* Independent member portraits remain centred; only groups have overlap separators. */

.iq-alert.danger{background:var(--iq-raised)}
.iq-alert.danger .message-copy p{color:var(--iq-ink)}


:root,[data-theme=light]{
























































}
/* 04.6: shared refinements. No per-route patch styles. */
.iq-icon[data-icon-source=lucide]{fill:currentColor;stroke:none;display:inline-block;flex-shrink:0;vertical-align:middle;shape-rendering:geometricPrecision}
/* Square icon modules keep their dimensions independent of the copy beside them. */
.system-symbol,.system-notice>.system-symbol{width:48px;height:48px;min-width:48px;min-height:48px;max-height:48px;flex:0 0 48px;aspect-ratio:1;align-self:center;border-radius:12px}
.system-symbol>.iq-icon{width:24px;height:24px}
.message-emblem,.iq-toast-icon{aspect-ratio:1;flex-shrink:0;align-self:center}
.iq-alert.warning .message-emblem,.iq-toast.tone-warning .iq-toast-icon{background:var(--iq-warning-fill);color:var(--iq-on-warning)}
.iq-alert.warning .message-emblem>.iq-icon{width:25px;height:25px;fill:currentColor;stroke:none}
/* More members must not disappear into either the canvas or an elevated card. */
.iq-avatar.more,.iq-avatars .iq-avatar.more{background:var(--iq-avatar-more);color:var(--iq-on-avatar-more)}
/* Time: one heading/preferences row, one uninterrupted editing surface. */
.time-picker.time-picker-046,iq-calendar .time-picker.time-picker-046{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;width:100%;padding:16px 0 0;margin:0;border:0}
.time-picker-046 .time-settings{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}
.time-picker-046 .time-title{display:inline-flex;align-items:center;gap:8px;font:550 var(--iq-type-label-size)/20px var(--iq-font);color:var(--iq-ink);margin:0}
.time-picker-046 .time-title>.iq-icon{width:16px;height:16px}
.time-picker-046 .time-format{display:inline-flex;align-items:center;gap:2px;padding:3px;border-radius:7px;background:var(--iq-surface);margin:0;width:auto;flex:none}
.time-picker-046 .time-format>button{display:grid;place-items:center;min-width:42px;height:28px;min-height:28px;border:0;padding:0 8px;border-radius:5px;font:500 var(--iq-type-meta-size)/1 var(--iq-font);background:transparent;color:var(--iq-muted);transition:color var(--iq-motion-fast),background var(--iq-motion-fast)}
.time-picker-046 .time-format>button[aria-pressed=true]{background:var(--iq-primary);color:var(--iq-on-primary)}
.time-picker-046 .time-values{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:46px;border:1px solid var(--iq-line);border-radius:9px;background:var(--iq-field-bg);padding:4px 8px;box-sizing:border-box}
.time-picker-046 .time-values:focus-within{border-color:var(--iq-focus)}
.time-picker-046 .time-segments,iq-calendar .time-picker-046 .time-segments{display:flex;justify-content:center;align-items:center;gap:0;min-height:34px;background:transparent;border:0;border-radius:0;padding:0;width:auto;box-shadow:none}
.time-picker-046 .time-segment,iq-calendar .time-picker-046 .time-segment{display:block;padding:0;margin:0;width:42px;height:34px;background:transparent}
.time-picker-046 .time-segment input,iq-calendar .time-picker-046 .time-segment input{display:block;width:42px;min-width:42px;height:34px;padding:0;border:0;border-radius:5px;background:transparent;box-shadow:none;outline:none;font:550 var(--iq-type-title-size)/34px var(--iq-font);font-variant-numeric:tabular-nums;letter-spacing:var(--iq-tracking-body);text-align:center;color:var(--iq-ink)}
.time-picker-046 .time-colon,iq-calendar .time-picker-046 .time-colon{font:500 1.0625rem/34px var(--iq-font);color:var(--iq-muted);width:9px;text-align:center}
.time-picker-046 .time-period{border:0;border-radius:5px;background:var(--iq-surface);color:var(--iq-ink);font:600 var(--iq-type-meta-size)/28px var(--iq-font);height:28px;min-height:28px;min-width:38px;padding:0 8px;margin:0 0 0 4px}
.time-picker-046 [data-time-live],.time-picker-046 [type=hidden]{grid-column:1}
/* Shared menu: content column and fixed trailing selection mark. */
.iq-menu-popup{width:max-content;min-width:228px;max-width:calc(100vw - 24px);padding:6px;overflow:auto;border:1px solid var(--iq-line);background:var(--iq-raised);color:var(--iq-ink);border-radius:12px;box-shadow:var(--iq-shadow-3)}
.iq-menu-popup>button,.iq-menu-popup>button:visited{display:flex;align-items:center;justify-content:flex-start;gap:10px;width:100%;min-height:40px;padding:10px 12px;border:0;border-radius:7px;background:transparent;color:var(--iq-ink);font:450 var(--iq-type-label-size)/20px var(--iq-font);text-align:left;text-decoration:none;white-space:nowrap;box-shadow:none}
.iq-menu-popup>button>.iq-icon{width:18px;height:18px;flex:0 0 18px;margin:0}
.iq-menu-popup>button>span{flex:1 1 auto;min-width:0;white-space:nowrap}
#task-sort-menu .iq-menu-popup{width:286px;min-width:0}
#task-sort-menu .iq-menu-popup>[role=menuitemradio]{display:grid;grid-template-columns:minmax(0,1fr) 18px;column-gap:12px;align-items:center;width:100%;min-height:40px;color:var(--iq-ink);text-decoration:none}
#task-sort-menu .iq-menu-popup .sort-selected{display:grid;place-items:center;margin:0;width:18px;height:18px;flex:0 0 18px;line-height:0}
.iq-menu-popup>button:is(:hover,:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"]))),#task-sort-menu .iq-menu-popup>button:is(:hover,:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"]))){background:var(--iq-menu-focus);color:var(--iq-ink);text-decoration:none;outline:0;border:0;box-shadow:none}
.iq-menu-popup>button[aria-checked=true],#task-sort-menu .iq-menu-popup>button[aria-checked=true]{background:var(--iq-surface);color:var(--iq-ink);font-weight:600;text-decoration:none}
.iq-menu-popup>button[aria-checked=true]:is(:hover,:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"]))),#task-sort-menu .iq-menu-popup>button[aria-checked=true]:is(:hover,:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"]))){background:var(--iq-menu-focus);color:var(--iq-ink);text-decoration:none}
.iq-menu-popup>button.danger{color:var(--iq-danger)}
/* Priority is a distinct semantic component, never a second status colour. */
.iq-priority{display:inline-flex;align-items:center;gap:6px;min-height:25px;padding:4px 8px;border-radius:6px;font:550 var(--iq-type-meta-size)/17px var(--iq-font);white-space:nowrap;background:var(--iq-surface);color:var(--iq-muted)}
.iq-priority>.iq-icon{width:14px;height:14px;flex:0 0 14px}
.iq-priority[data-priority=critical]{background:var(--iq-danger-fill);color:var(--iq-on-danger)}
.iq-priority[data-priority=high]{background:var(--iq-warning-fill);color:var(--iq-on-warning)}
.iq-priority[data-priority=normal]{background:var(--iq-recessed);color:var(--iq-muted)}
.iq-priority[data-priority=low]{background:var(--iq-surface);color:var(--iq-muted)}
.iq-priority.compact{font-size:var(--iq-type-meta-size);min-height:22px;padding:3px 6px;gap:5px}
.priority-specimen{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:40px;max-width:760px;margin:0 auto}
.priority-specimen h3{font-size:1.5rem;margin:14px 0}.priority-specimen p{font-size:var(--iq-type-interface-size);line-height:1.65;color:var(--iq-muted);margin-bottom:22px}
/* Board: one scroll container, all column headers remain pinned in the same row. */
.kanban.iq-board{display:grid;grid-template-columns:repeat(4,minmax(250px,1fr));align-items:stretch;gap:16px;max-height:min(660px,72dvh);overflow:auto;overscroll-behavior:contain;padding:0 0 10px;scrollbar-gutter:stable;position:relative;outline:none;scroll-behavior:auto;border-radius:12px}
.iq-board>.kanban-column{padding:0;min-height:330px;border-radius:12px;background:var(--iq-surface);position:relative;overflow:visible}
.iq-board .kanban-column-header{position:sticky;top:0;z-index:4;display:flex;align-items:center;gap:9px;margin:0;padding:16px 14px 14px;min-height:62px;box-sizing:border-box;background:var(--iq-surface);border-radius:12px 12px 0 0;transition:box-shadow var(--iq-motion-standard)}
.iq-board.is-scrolled .kanban-column-header{box-shadow:0 1px 0 var(--iq-line),0 6px 12px var(--iq-shadow-color)}
.iq-board .kanban-column-header>h3{font:600 var(--iq-type-interface-size)/22px var(--iq-font);margin:0;min-width:0;white-space:nowrap}
.iq-board .kanban-column-header>.iq-icon{width:18px;height:18px}
.iq-board .kanban-count{width:25px;height:25px;flex:0 0 25px;font-size:var(--iq-type-caption-size);background:var(--iq-raised)}
.column-cards{display:flex;flex-direction:column;gap:10px;padding:2px 12px 12px;min-height:245px}
.iq-board .task-card,.priority-specimen .task-card{position:relative;display:grid;gap:10px;margin:0;padding:12px;min-height:0;background:var(--iq-raised);border:0;border-radius:10px;box-shadow:0 1px 2px var(--iq-shadow-color);overflow:visible}
.task-card-top{margin:0;min-height:24px}.task-identity{display:flex;align-items:center;gap:5px;min-width:0}
.iq-drag-handle{width:24px;height:26px;min-width:24px;display:grid;place-items:center;padding:0;border:0;background:transparent;border-radius:5px;color:var(--iq-subtle);touch-action:none;cursor:grab}
.iq-drag-handle:hover,.iq-drag-handle:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){background:var(--iq-hover);color:var(--iq-ink);outline:0}
.iq-board .task-card-id{font:500 var(--iq-type-meta-size)/18px var(--iq-mono);padding:2px 5px;background:transparent;color:var(--iq-muted);letter-spacing:var(--iq-tracking-caps)}
.iq-board .task-card-title{font:550 var(--iq-type-label-size)/1.55 var(--iq-font);margin:0;padding:0;min-height:0;text-wrap:pretty}
.task-card-priority{display:flex;align-items:center;min-height:22px}
.iq-board .task-card-footer{margin:0;padding-top:2px;min-height:26px;gap:8px}.iq-board .task-due{font-size:var(--iq-type-meta-size);gap:6px}
.board-empty-slot{display:none;border:1px dashed var(--iq-line);border-radius:8px;padding:18px 12px;font:400 var(--iq-type-caption-size)/1.5 var(--iq-font);color:var(--iq-muted);text-align:center}
.column-cards:not(:has(.task-card:not(.is-drag-source))):not(:has(.iq-board-placeholder))>.board-empty-slot{display:block}
.iq-board .task-card.is-drag-source{display:none}
.iq-board-placeholder{flex:none;box-sizing:border-box;border-radius:10px;border:1px dashed var(--iq-accent);background:var(--iq-accent-soft);min-height:100px}
.iq-board .is-drop-column .kanban-column-header{color:var(--iq-accent)}
.iq-drag-overlay{position:fixed!important;z-index:10000;pointer-events:none;border-radius:10px;background:var(--iq-raised);box-shadow:0 18px 42px var(--iq-shadow-color);margin:0;box-sizing:border-box;will-change:transform;display:flex;flex-direction:column;justify-content:space-between;padding:14px;border:1px solid var(--iq-line)}
.iq-drag-overlay>.task-card-title{font-size:var(--iq-type-label-size);line-height:1.55}
.iq-board-dragging{user-select:none;cursor:grabbing}.iq-board-dragging *{cursor:grabbing!important}
.board-drag-help{max-width:880px;margin-top:12px;line-height:1.7;font-size:var(--iq-type-meta-size)}
.workspace-table .priority-cell{white-space:nowrap}.workspace-table .iq-badge{inline-size:124px;min-inline-size:124px;max-inline-size:124px}
.plan-deadline .iq-priority{justify-content:flex-start;font-size:var(--iq-type-meta-size);margin-top:5px;align-self:flex-start;max-width:100%}
.plan-deadline[data-priority=critical]{box-shadow:inset 2px 0 var(--iq-danger-fill)}
.agenda-task .iq-priority{margin:0;display:inline-flex;font-size:var(--iq-type-meta-size)}
/* Task panel and full-screen use the same document DOM and editor state. */
#task-drawer .iq-dialog{width:min(780px,100vw);max-width:100vw;max-height:100dvh;overflow:auto;background:var(--iq-raised);color:var(--iq-ink)}
#task-drawer .iq-dialog-inner{padding:0;min-height:100%;background:var(--iq-raised)}
.task-document-toolbar{position:sticky;top:0;z-index:8;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 30px;background:var(--iq-raised);border-bottom:1px solid var(--iq-line)}
.task-document-toolbar .row{gap:8px}.task-document-toolbar .iq-breadcrumb{min-width:0;gap:9px;font-size:var(--iq-type-caption-size);white-space:nowrap}
.task-document{display:grid;grid-template-columns:minmax(0,1fr);gap:0;padding:28px 32px 20px}
.task-document-heading{margin:0 0 24px;min-width:0}.task-document-heading .sample-overline{font-size:var(--iq-type-meta-size);color:var(--iq-muted)}
.task-document .task-drawer-title{font:550 clamp(27px,3vw,36px)/1.2 var(--iq-font);letter-spacing:var(--iq-tracking-display);margin:14px 0 0;overflow-wrap:anywhere;max-width:100%;text-wrap:pretty}
.task-document-properties{display:grid;grid-template-columns:1fr 1fr;column-gap:20px;row-gap:18px;padding:0 0 24px;border-bottom:1px solid var(--iq-line);min-width:0}
.task-document-properties>div{min-width:0}.task-document-properties .iq-control-label{margin:0 0 8px;font-size:var(--iq-type-caption-size)}
.task-document-properties .iq-select-trigger,.task-document-properties .iq-date-trigger{min-height:40px;font-size:var(--iq-type-caption-size);padding:9px 11px;background:var(--iq-field-bg);border-color:var(--iq-line);min-width:0}
.task-document-properties .iq-date-trigger [data-date-caption]{font-size:var(--iq-type-caption-size)}
.priority-detail-caption{display:none}.task-document-properties .task-person{display:flex;align-items:center;gap:9px;min-height:40px;line-height:1.45;font-size:var(--iq-type-caption-size);padding:0}
.task-detail-save{grid-column:1/-1;display:flex;align-items:center;gap:7px;font:400 var(--iq-type-meta-size)/18px var(--iq-font);color:var(--iq-muted);margin:0}
.task-document-body{min-width:0}.task-document-body .task-drawer-section{padding:0;margin:28px 0}
.task-document-body .task-drawer-section>h3{font-size:var(--iq-type-body-size);line-height:24px;margin:0 0 16px;letter-spacing:var(--iq-tracking-h3)}
.task-document-body .task-drawer-section>p{font-size:.9375rem;line-height:1.75;color:var(--iq-ink);margin:0}
.task-document-body .task-evidence{gap:12px}.task-document-body .iq-check{font-size:var(--iq-type-label-size);line-height:22px}
.task-document .task-document-footer{padding:20px 0 4px;margin:0;border-top:1px solid var(--iq-line)}
#task-drawer .iq-dialog.is-fullscreen{position:fixed;inset:0;margin:0;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border:0;border-radius:0;background:var(--iq-raised)}
#task-drawer[expanded] .task-document-toolbar{padding-inline:max(32px,calc((100vw - 1264px)/2));}
#task-drawer[expanded] .task-document{max-width:1264px;margin:0 auto;padding:48px 32px 28px;grid-template-columns:minmax(0,1fr) 260px;column-gap:64px}
#task-drawer[expanded] .task-document-heading{grid-column:1;grid-row:1}
#task-drawer[expanded] .task-drawer-title{font-size:2.5rem;line-height:1.2;max-width:850px}
#task-drawer[expanded] .task-document-properties{grid-column:2;grid-row:1/4;grid-template-columns:1fr;display:flex;flex-direction:column;gap:24px;align-self:start;position:sticky;top:100px;border:0;padding:4px 0 0}
#task-drawer[expanded] .task-document-body{grid-column:1;grid-row:2}
#task-drawer[expanded] .task-document-footer{grid-column:1;grid-row:3}
@media(max-width:900px){
 #task-drawer[expanded] .task-document{grid-template-columns:minmax(0,1fr);padding:24px;max-width:760px}
 #task-drawer[expanded] .task-document-heading{grid-column:1;grid-row:auto}
 #task-drawer[expanded] .task-document-properties{grid-column:1;grid-row:auto;position:static;display:grid;grid-template-columns:1fr 1fr;gap:18px;padding-bottom:24px;border-bottom:1px solid var(--iq-line)}
 #task-drawer[expanded] .task-document-body,#task-drawer[expanded] .task-document-footer{grid-row:auto;grid-column:1}
 #task-drawer[expanded] .task-drawer-title{font-size:1.875rem}
 .priority-specimen{grid-template-columns:1fr;gap:24px}
}
@media(max-width:640px){
 .kanban.iq-board{grid-template-columns:repeat(4,260px);max-height:68dvh;gap:12px}
 .system-symbol,.system-notice>.system-symbol{width:44px;height:44px;min-width:44px;min-height:44px;max-height:44px;flex-basis:44px}
 #task-drawer .task-document,#task-drawer[expanded] .task-document{padding:24px 20px 16px}
 .task-document-toolbar,#task-drawer[expanded] .task-document-toolbar{padding:12px 16px}
 .task-document-properties,#task-drawer[expanded] .task-document-properties{grid-template-columns:1fr;gap:16px}
 .task-document .task-drawer-title{font-size:1.75rem}
 .task-document .task-document-footer{flex-wrap:wrap;gap:10px}.task-document-footer>.iq-btn{flex:1}
 .workspace-table td:nth-child(4){display:block;grid-column:2;grid-row:3;margin-top:7px}
 .workspace-table td:nth-child(5){display:none}
 .workspace-table td:nth-child(6){grid-column:2;grid-row:4;margin-top:7px}
 .workspace-table td:nth-child(7){grid-column:3;grid-row:1}
 #task-sort-menu .iq-menu-popup{width:min(286px,calc(100vw - 24px))}
 .iq-menu-popup>button{}
}
@media(prefers-reduced-motion:reduce){.iq-drag-overlay{will-change:auto}.kanban-column-header,.time-format>button{transition:none}}
@media(forced-colors:active){.iq-priority{border:1px solid CanvasText}.task-card[data-priority=critical]::before{background:Highlight}.iq-menu-popup>button:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){background:Highlight!important;color:HighlightText!important}.system-symbol,.message-emblem{forced-color-adjust:auto}.iq-board-placeholder{border-color:Highlight}}
.time-picker.time-picker-046 .time-settings{flex-direction:row;align-items:center;justify-content:space-between;align-self:auto}
.iq-check input:checked+.iq-check-box{color:var(--iq-on-primary)}
.iq-check-box>.iq-icon{fill:currentColor;stroke:none}

/* 04.7 — Shared role and geometry corrections. No route-scoped overrides. */
/* Priorities are comparable metadata: one footprint, no glyph, one type weight. */
.iq-priority,.iq-priority.compact{box-sizing:border-box;inline-size:114px;min-inline-size:114px;max-inline-size:114px;block-size:28px;min-block-size:28px;display:inline-flex;align-items:center;justify-content:center;padding:4px 8px;gap:0;font:600 var(--iq-type-meta-size)/18px var(--iq-font);border-radius:7px;white-space:nowrap}
.iq-priority[data-priority=normal],.iq-priority[data-priority=low]{background:var(--iq-priority-neutral-bg);color:var(--iq-priority-neutral-ink)}
.iq-priority[data-priority=low]{font-weight:500}
/* Non-semantic metadata never inherits a status's light-on-solid foreground. */
.iq-badge.sample{background:var(--iq-sample-bg);color:var(--iq-sample-ink);font-size:var(--iq-type-meta-size);font-weight:550}
.feature-proof-symbol.done,.agenda-state.done,.message-emblem.success{background:var(--iq-success-fill);color:var(--iq-on-success)}
.feature-proof-symbol>.iq-icon{display:block;width:20px;height:20px;flex:none}
.plan-deadline.done,.plan-deadline.done>span{color:var(--iq-on-success)}
.iq-btn[data-copy-state=success]{background:var(--iq-success-fill);color:var(--iq-on-success)}
/* Inline disclosure: the arrow belongs to the title, while the timestamp has its own column. */
.activity-event summary{justify-content:flex-start;gap:8px;width:fit-content;max-width:100%;padding:2px 0}
.activity-event summary>b{flex:0 1 auto;min-width:0}
.activity-event summary>.iq-icon{flex:0 0 14px;margin:0}
.iq-chart-demo{display:flex;flex-direction:column;gap:0;max-width:100%}
.iq-chart-demo>.iq-chart{display:block}
.iq-chart-demo>.iq-helper{margin:0;padding-block:16px;line-height:1.6}
/* Native radios live inside a coherent choice list; fieldset supplies semantics, not a browser frame. */
.iq-choice-group,.radio-fieldset{border:0;padding:0;margin:0 auto;min-inline-size:0;width:min(100%,600px)}
.iq-choice-group>legend,.radio-fieldset>legend{padding:0;margin-bottom:16px;font:600 var(--iq-type-body-size)/1.45 var(--iq-font)}
.iq-choice-options{display:grid;gap:4px}
.iq-choice{position:relative;display:flex;align-items:center;gap:14px;padding:16px;border-radius:12px;min-height:74px;cursor:pointer;transition:background-color var(--iq-motion-fast) var(--iq-ease)}
.iq-choice input{position:absolute;inline-size:100%;block-size:100%;inset:0;margin:0;opacity:0;cursor:pointer}
.iq-choice-indicator{position:relative;inline-size:20px;block-size:20px;flex:0 0 20px;border:1.5px solid var(--iq-control);border-radius:50%;display:grid;place-items:center;background:var(--iq-raised);pointer-events:none}
.iq-choice-indicator::after{content:'';width:8px;height:8px;background:var(--iq-on-primary);border-radius:50%;transform:scale(0);transition:transform var(--iq-motion-standard) var(--iq-ease-spring)}
.iq-choice:has(:checked){background:var(--iq-radio-selected)}
.iq-choice:has(:checked) .iq-choice-indicator{background:var(--iq-primary);border-color:var(--iq-primary)}
.iq-choice:has(:checked) .iq-choice-indicator::after{transform:scale(1)}
.iq-choice-copy{display:grid;gap:3px;min-width:0;pointer-events:none}
.iq-choice-copy b{font:550 var(--iq-type-interface-size)/1.45 var(--iq-font)}
.iq-choice-copy small{color:var(--iq-muted);font:400 var(--iq-type-caption-size)/1.5 var(--iq-font)}
.iq-choice:has(input:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"]))){background:var(--iq-focus-fill);color:var(--iq-focus-text)}
.iq-choice:has(input:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"]))) .iq-choice-copy b{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:2px}
.iq-choice:has(input:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"]))) .iq-choice-copy small{color:inherit}
.iq-choice:has(input:disabled){opacity:.45;cursor:not-allowed}
@media(hover:hover){.iq-choice:not(:has(input:disabled)):hover{background:var(--iq-hover)}}
.iq-task-kind{display:inline-flex;align-items:center;font:550 var(--iq-type-meta-size)/18px var(--iq-font);color:var(--iq-epic);padding:1px 5px;border-radius:4px;white-space:nowrap}
.task-identity{flex-wrap:wrap;row-gap:2px}
[data-task-surface]{cursor:pointer}
.workspace-table tr[data-task-surface]{transition:background var(--iq-motion-fast) var(--iq-ease)}
.task-card:has(.task-card-title:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"]))){background:var(--iq-hover);box-shadow:none}
.task-card .task-card-title:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){outline:0;color:var(--iq-accent);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}

.priority-badges{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:28px}
.priority-catalog{width:100%;max-width:850px;margin:auto}
.priority-card-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:28px}
.priority-card-gallery .task-card{display:grid;padding:16px;gap:12px;border:0;box-shadow:0 1px 2px var(--iq-shadow-color);margin:0;border-radius:12px}
.priority-card-gallery .task-card-title{font-size:var(--iq-type-label-size);line-height:1.5}
.priority-card-gallery .task-card-id{color:var(--iq-muted);font:500 var(--iq-type-meta-size)/18px var(--iq-mono)}
.priority-card-gallery .task-card-footer{margin:0}
.priority-catalog>.iq-helper{margin:16px 0 0}
/* Explicit menu focus, including programmatic entry after opening. */
.iq-menu-popup>button:focus:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])),#task-sort-menu .iq-menu-popup>button:focus:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){background:var(--iq-menu-focus);color:var(--iq-ink);outline:0;text-decoration:none;box-shadow:none}
/* Palette documentation renders every theme role from the exported manifest. */
.palette-states{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px}
.palette-principle{padding:20px 24px;background:var(--iq-surface);border-radius:14px;max-width:760px}
.palette-principle b{font:600 var(--iq-type-interface-size)/1.5 var(--iq-font)}
.palette-principle p{color:var(--iq-muted);font-size:var(--iq-type-interface-size);line-height:1.65;margin-top:8px;max-width:64ch}
.palette-section{margin-top:40px}
.palette-section>h2{font-size:1.5rem;margin-bottom:20px}
.palette-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.palette-swatch{border:1px solid var(--iq-line);border-radius:12px;overflow:hidden;min-width:0}
.palette-pigment{height:76px;border-bottom:1px solid var(--iq-line)}
.palette-swatch>div:last-child{padding:16px}
.palette-swatch h3{font:550 var(--iq-type-label-size)/1.5 var(--iq-font);margin:0 0 3px}
.palette-swatch code{font:var(--iq-type-meta-size)/1.5 var(--iq-mono);overflow-wrap:anywhere;color:var(--iq-muted)}
.palette-swatch dl{margin:16px 0 0;font-size:var(--iq-type-meta-size);line-height:1.6}
.palette-swatch dl>div{display:flex;align-items:center;justify-content:space-between;gap:8px}
.palette-swatch dt{color:var(--iq-muted)}.palette-swatch dd{margin:0;font-family:var(--iq-mono)}
.palette-table-wrap{overflow:auto;border:1px solid var(--iq-line);border-radius:12px;margin-bottom:24px}
.palette-table{border-collapse:collapse;width:100%;font-size:var(--iq-type-caption-size);text-align:left}
.palette-table th,.palette-table td{padding:12px 16px;border-bottom:1px solid var(--iq-line);white-space:nowrap}
.palette-table thead{background:var(--iq-surface)}
.palette-table tbody th{font-weight:400}.palette-table tr:last-child>*{border-bottom:0}
.palette-inline{display:inline-block;vertical-align:middle;width:18px;height:18px;border:1px solid var(--iq-line);border-radius:4px;background:var(--swatch);margin-right:8px}
@media(max-width:700px){.priority-card-gallery{grid-template-columns:1fr}.palette-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.palette-swatch>div:last-child{padding:12px}.palette-table th,.palette-table td{padding:12px}.priority-specimen{grid-template-columns:1fr;gap:20px}.iq-choice{padding:14px 12px;gap:12px}}
@media(max-width:420px){.palette-grid{grid-template-columns:1fr}.palette-pigment{height:64px}}
@media(prefers-reduced-motion:reduce){.iq-choice,.iq-choice-indicator::after,[data-task-surface]{transition:none}}
[data-motion=reduced] .iq-choice,[data-motion=reduced] .iq-choice-indicator::after,[data-motion=reduced] [data-task-surface]{transition:none}
@media(forced-colors:active){.iq-priority,.iq-badge.sample{border:1px solid CanvasText;background:Canvas;color:CanvasText}.task-card::before,.task-card::after{display:none}.iq-choice:has(input:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"]))){background:Highlight;color:HighlightText}.iq-choice-indicator{border:1px solid CanvasText}.iq-choice:has(:checked) .iq-choice-indicator{background:Highlight;border-color:Highlight}.iq-choice-indicator::after{background:HighlightText}}

.palette-all>summary{cursor:pointer;padding:16px 0;font-weight:550;font-size:var(--iq-type-interface-size)}.palette-all{margin-top:8px}.palette-all .palette-table-wrap{margin-top:8px}
/* Decorative state marks never intercept the native check/radio input. */
.iq-check-box,.iq-radio-dot{pointer-events:none}

/* IQUIPAGE 04.8 — six scoped refinements; unchanged controls retain their contract. */

/* Chart spacing is measured against the surface, not just the caption's own padding. */
[data-component=chart] .specimen-surface:has(.iq-chart-demo){min-height:0;padding:28px 32px 0;display:block}
.iq-chart-demo{display:block;width:100%;margin:0;max-width:none}
.iq-chart-demo>.iq-chart{display:block;width:100%;height:auto;margin:0;color:var(--iq-accent);aspect-ratio:720 / 230}
.iq-chart .chart-axis-label{fill:var(--iq-muted);font:var(--iq-type-caption-size) var(--iq-font)}
.chart-month-labels{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));padding-left:5%;padding-right:2.5%;color:var(--iq-muted);font:400 var(--iq-type-label-size)/20px var(--iq-font);text-align:center}
.iq-chart-demo>.chart-caption{margin:0;padding:16px 0;font:400 var(--iq-type-caption-size)/20px var(--iq-font);color:var(--iq-muted);text-align:left}

/* Product navigation: identity, work, projects, and account are distinct groups. */
iq-side-navigation,iq-navigation-demo{display:block;min-width:0}
[data-component=sidebar] .specimen-surface:has(iq-navigation-demo){padding:0;min-height:0;overflow:hidden;background:var(--iq-raised);border:1px solid var(--iq-line);border-radius:16px}
.side-demo{display:grid;grid-template-columns:254px minmax(0,1fr);min-height:590px;align-items:stretch}
.side-demo:has(iq-side-navigation[collapsed]){grid-template-columns:76px minmax(0,1fr)}
.product-nav{height:100%;min-height:520px;background:var(--iq-surface);border-right:1px solid var(--iq-line);display:flex;flex-direction:column;padding:16px 12px 12px;box-sizing:border-box}
.product-nav-head{display:flex;align-items:center;justify-content:space-between;gap:6px;min-height:44px;margin:0 0 22px}
.nav-workspace{display:flex;align-items:center;gap:10px;min-width:0;color:var(--iq-ink);text-decoration:none}
.nav-workspace-monogram{display:grid;place-items:center;width:32px;height:32px;flex:none;border-radius:9px;background:var(--iq-primary);color:var(--iq-on-primary);font:600 var(--iq-type-meta-size) var(--iq-font);letter-spacing:var(--iq-tracking-display)}
.nav-workspace-copy{display:grid;gap:2px;min-width:0}
.nav-workspace-copy b{font:600 var(--iq-type-caption-size)/18px var(--iq-font);white-space:nowrap}
.nav-workspace-copy small{font:400 var(--iq-type-meta-size)/16px var(--iq-font);color:var(--iq-muted);white-space:nowrap}
.product-nav-head>.iq-btn{--h:28px;min-width:28px;padding:4px}
.product-nav-search{display:flex;align-items:center;gap:8px;padding:9px 10px;border-radius:8px;background:var(--iq-raised);margin:0 4px 24px;color:var(--iq-muted)}
.product-nav-search input{display:block;min-width:0;width:100%;background:transparent;border:0;padding:0;outline:0;font:400 var(--iq-type-caption-size)/20px var(--iq-font);color:var(--iq-ink)}
.product-nav-search:focus-within{box-shadow:inset 0 0 0 1.5px var(--iq-focus)}
.product-nav-items{flex:1;display:block;min-height:200px}
.product-nav-section{margin:0 0 24px}
.product-nav-section h3,.product-nav-group-label{margin:0 10px 8px;font:500 var(--iq-type-meta-size)/16px var(--iq-font);letter-spacing:var(--iq-tracking-caps);color:var(--iq-muted);text-transform:uppercase}
.product-nav-item{display:flex;position:relative;gap:0;align-items:center}
.product-nav-link{position:relative;display:flex;align-items:center;gap:11px;min-width:0;width:100%;min-height:40px;padding:9px 10px;border-radius:8px;font:450 var(--iq-type-caption-size)/20px var(--iq-font);color:var(--iq-muted);text-decoration:none;box-sizing:border-box}
.product-nav-link>.iq-icon{flex:none;opacity:.85}
.product-nav-link>span{min-width:0;overflow-wrap:anywhere}
.product-nav-link .nav-count{margin-left:auto;min-width:20px;text-align:center;font:500 var(--iq-type-meta-size)/20px var(--iq-font);font-variant-numeric:tabular-nums;color:inherit}
.product-nav-link[aria-current=page]{background:var(--iq-nav-current-bg);color:var(--iq-nav-current-ink);font-weight:600}
.product-nav-item:has(.nav-disclosure)>.product-nav-link{padding-right:34px}
.nav-disclosure{position:absolute;right:4px;display:grid;place-items:center;width:28px;height:32px;border:0;border-radius:6px;color:var(--iq-muted);background:transparent}
.product-nav-children{padding-left:29px;margin:3px 0 6px}
.product-nav-children>.product-nav-entry .product-nav-link{min-height:34px;padding-block:6px;font-size:var(--iq-type-meta-size);gap:9px}
.product-nav-children .iq-icon{width:16px;height:16px}
.product-nav-footer{display:grid;gap:16px;border-top:1px solid var(--iq-line);padding-top:12px}
.product-nav-person{display:flex;align-items:center;gap:10px;padding:0 8px 2px}
.product-nav-person>.iq-avatar{border:0}
.product-nav-person>span:last-child{display:grid;gap:1px}
.product-nav-person b{font:550 var(--iq-type-caption-size)/18px var(--iq-font)}
.product-nav-person small{font:400 var(--iq-type-meta-size)/16px var(--iq-font);color:var(--iq-muted)}
.nav-no-results{font:400 var(--iq-type-caption-size)/1.6 var(--iq-font);padding:12px;color:var(--iq-muted)}
.product-nav-link:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])),.nav-disclosure:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){outline:0;background:var(--iq-focus-fill);color:var(--iq-focus-text);text-decoration:underline;text-underline-offset:4px}
@media(hover:hover){.product-nav-link:hover,.nav-disclosure:hover{background:var(--iq-hover);color:var(--iq-ink)}}
iq-side-navigation[collapsed] .product-nav{padding:16px 10px 12px}
iq-side-navigation[collapsed] .product-nav-head{flex-direction:column;gap:13px;margin-bottom:15px}
iq-side-navigation[collapsed] .nav-workspace-copy,iq-side-navigation[collapsed] .product-nav-search,iq-side-navigation[collapsed] .product-nav-section h3,iq-side-navigation[collapsed] .product-nav-link>span,iq-side-navigation[collapsed] .nav-count,iq-side-navigation[collapsed] .nav-disclosure,iq-side-navigation[collapsed] .product-nav-children,iq-side-navigation[collapsed] .product-nav-person>span:last-child{display:none}
iq-side-navigation[collapsed] .product-nav-link{min-height:42px;justify-content:center;padding:10px}
iq-side-navigation[collapsed] .product-nav-section{margin-bottom:16px}
iq-side-navigation[collapsed] .product-nav-person{justify-content:center;padding:0}
.side-demo-content{padding:44px 32px;display:flex;flex-direction:column;min-width:0}
.side-demo-content>.sample-overline{font-size:var(--iq-type-meta-size);letter-spacing:var(--iq-tracking-caps);color:var(--iq-muted);margin-bottom:20px}
.side-demo-content>h3{font:550 1.875rem/var(--iq-type-heading3-lineHeight) var(--iq-display);letter-spacing:var(--iq-tracking-display);margin:0 0 14px}
.side-demo-content>p{font:400 var(--iq-type-label-size)/1.7 var(--iq-font);color:var(--iq-muted);margin:0;max-width:35ch}
.nav-demo-work{display:grid;gap:0;margin-top:38px;border-top:1px solid var(--iq-line)}
.nav-demo-work>div{display:flex;align-items:center;gap:14px;padding:18px 0;border-bottom:1px solid var(--iq-line);font:450 var(--iq-type-caption-size)/1.5 var(--iq-font)}
.nav-demo-index{font:400 var(--iq-type-meta-size) var(--iq-mono);color:var(--iq-muted)}
.nav-demo-work>div>.iq-icon{margin-left:auto;flex:none;color:var(--iq-muted)}
.nav-demo-bottom{display:flex;flex-wrap:wrap;gap:16px;margin-top:auto;padding-top:36px;align-items:center;justify-content:space-between}
.nav-demo-bottom>.text-action{font-size:var(--iq-type-meta-size);gap:6px}

/* Calendar: one stable grid and compact editorial entries; priority stays in task detail. */
.deadline-planner{padding:24px;background:var(--iq-surface);border-radius:16px}
.plan-toolbar{margin-bottom:24px}
.plan-weekday{padding:0;margin:0 0 10px;font:500 var(--iq-type-meta-size)/20px var(--iq-font);color:var(--iq-muted)}
.plan-weekday>span{padding-left:10px;text-align:left}
.plan-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;background:var(--iq-line);border:1px solid var(--iq-line);border-radius:12px;overflow:hidden}
.plan-day{border-radius:0;background:var(--iq-raised);padding:9px;min-height:126px;min-width:0}
.plan-day.outside{background:var(--iq-surface);color:var(--iq-muted)}
.plan-day.outside time{opacity:.6}
.plan-day-head{margin-bottom:11px;min-height:25px;display:flex;align-items:center;justify-content:space-between}
.plan-day-head time{font:500 var(--iq-type-meta-size)/25px var(--iq-font);width:25px;height:25px}
.plan-day-head>span{font:400 var(--iq-type-meta-size)/18px var(--iq-font);color:var(--iq-muted)}
.plan-day-entries{display:grid;gap:7px}
.plan-deadline{display:flex;flex-direction:column;gap:9px;width:100%;margin:0;background:var(--iq-calendar-item-bg);color:var(--iq-ink);padding:10px 9px;border:0;border-radius:8px;text-align:left;transition:background-color var(--iq-motion-fast) var(--iq-ease)}
.plan-deadline>.plan-entry-top{display:flex;align-items:center;justify-content:space-between;gap:6px;width:100%;margin:0;color:var(--iq-muted);font:450 var(--iq-type-meta-size)/14px var(--iq-mono)}
.plan-entry-dot{width:4px;height:4px;flex:none;border-radius:50%;background:var(--iq-muted)}
.plan-deadline>b{display:block;-webkit-line-clamp:unset;line-clamp:unset;overflow:visible;font:500 var(--iq-type-caption-size)/1.5 var(--iq-font);color:var(--iq-ink);overflow-wrap:anywhere}
.plan-deadline>.plan-entry-meta{display:flex;align-items:center;justify-content:space-between;gap:6px;width:100%;margin:0;color:var(--iq-muted);font:400 var(--iq-type-meta-size)/16px var(--iq-font)}
.plan-person{flex:none;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:var(--iq-raised);color:var(--iq-muted);font:500 var(--iq-type-meta-size)/1 var(--iq-font)}
.plan-deadline.done{background:var(--iq-calendar-complete-bg)}
.plan-deadline.done>.plan-entry-top,.plan-deadline.done>.plan-entry-meta{color:var(--iq-calendar-complete-ink)}
.plan-show-more{display:flex;align-items:center;gap:6px;justify-content:center;width:100%;min-height:28px;border:0;background:transparent;color:var(--iq-muted);font:500 var(--iq-type-meta-size)/16px var(--iq-font);padding:6px 2px;margin-top:5px;border-radius:6px}
.plan-show-more:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])),.plan-deadline:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){outline:0;background:var(--iq-focus-fill);color:var(--iq-focus-text);box-shadow:inset 0 -2px currentColor}
.plan-deadline:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])) b,.plan-deadline:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])) .plan-entry-top,.plan-deadline:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])) .plan-entry-meta{color:inherit}
@media(hover:hover){.plan-deadline:hover{background:var(--iq-calendar-item-hover);transform:none}.plan-deadline.done:hover{background:var(--iq-calendar-complete-bg);filter:brightness(.97)}.plan-show-more:hover{background:var(--iq-hover)}}
.agenda-task{grid-template-columns:32px minmax(0,1fr) auto 16px;gap:14px;padding:17px 12px;align-items:center}
.agenda-task-copy{display:grid;gap:7px;min-width:0}
.agenda-task-copy>b{font:500 var(--iq-type-label-size)/1.5 var(--iq-font)}
.agenda-task-copy>small{font:400 var(--iq-type-meta-size)/1.5 var(--iq-font);display:flex;flex-wrap:wrap;gap:5px 12px;color:var(--iq-muted)}
.agenda-state-label{font:500 var(--iq-type-meta-size)/16px var(--iq-font);color:var(--iq-muted)}
.agenda-state-label[data-status=done]{color:var(--iq-success)}
.agenda-state{width:30px;height:30px;border-radius:8px}
.plan-legend{margin-top:16px;font-size:var(--iq-type-meta-size)}
.plan-legend .iq-badge{width:auto;min-width:0}

@media(max-width:1100px){
 .side-demo{grid-template-columns:225px minmax(0,1fr)}.side-demo-content{padding:34px 22px}.nav-workspace-copy b{font-size:var(--iq-type-meta-size)}.nav-workspace-copy small{font-size:var(--iq-type-meta-size)}
 .plan-day{padding:6px}.plan-deadline{padding:8px 6px}.plan-deadline>b{font-size:var(--iq-type-meta-size)}.plan-entry-meta>span:first-child{font-size:var(--iq-type-meta-size)}
}
@media(max-width:760px){
 .side-demo:not(:has(iq-side-navigation[collapsed])){grid-template-columns:1fr;min-height:0}.side-demo:not(:has(iq-side-navigation[collapsed])) .product-nav{border-right:0;border-bottom:1px solid var(--iq-line);min-height:0}
 .side-demo-content{padding:28px 22px}.side-demo-content>h3{font-size:1.625rem}.nav-demo-work{margin-top:24px}.nav-demo-bottom{padding-top:24px}.product-nav{min-height:470px}
 .side-demo:has(iq-side-navigation[collapsed]){grid-template-columns:66px minmax(0,1fr)}
}
@media(max-width:600px){
 [data-component=chart] .specimen-surface:has(.iq-chart-demo){padding:22px 16px 0}
 .chart-month-labels{padding-left:5%;padding-right:2.5%;line-height:18px}
 .iq-chart-demo>.chart-caption{font-size:var(--iq-type-meta-size);line-height:18px;padding-block:16px}
 .workspace-table tr[data-task-surface]{padding:16px 10px;grid-template-columns:22px minmax(0,1fr) 30px;column-gap:8px;margin-bottom:8px;border:0;border-radius:10px}
 .workspace-table tr[data-task-surface]>td{padding:0;margin:0;height:auto;border:0}
 .workspace-table .task-title{width:auto;min-width:0;grid-row:1;grid-column:2}
 .workspace-table .task-title>button{}
 .workspace-table .task-row-meta{gap:7px;margin-bottom:6px}.workspace-table .task-signal-copy{font-size:var(--iq-type-meta-size)}
 .workspace-table tr>td:nth-child(3){display:block;grid-column:2;grid-row:2;margin-top:12px}
 .workspace-table tr>.task-owner-cell{display:block;grid-column:2;grid-row:3;margin-top:10px}
 .workspace-table tr>.task-date-cell{display:block;grid-column:2;grid-row:4;margin-top:8px;font-size:var(--iq-type-meta-size)}
 .workspace-table tr>.task-actions-cell{display:block;grid-column:3;grid-row:1;width:30px;margin:0}
 .workspace-table tr>.check-col{display:block;grid-column:1;grid-row:1;width:22px;margin:3px 0 0}
 .deadline-planner{padding:18px 14px}.agenda-task{grid-template-columns:28px minmax(0,1fr) 14px;gap:10px;padding:16px 4px}
 .agenda-state-label{display:none}.agenda-state{width:26px;height:26px}.agenda-day{gap:12px}.agenda-task-copy>b{}.agenda-task-copy>small{font-size:var(--iq-type-meta-size)}
 .product-nav-head>.iq-btn{--h:36px;min-width:36px}.nav-workspace-copy b{font-size:var(--iq-type-caption-size)}.nav-workspace-copy small{font-size:var(--iq-type-meta-size)}
 .side-demo-content>.sample-overline{font-size:var(--iq-type-meta-size)}.side-demo-content>p{}.nav-demo-work>div{font-size:var(--iq-type-meta-size);gap:10px}
}
@media(prefers-reduced-motion:reduce){.task-card,.plan-deadline{transition:none}}
[data-motion=reduced] .task-card,[data-motion=reduced] .plan-deadline{transition:none}
@media(forced-colors:active){
 .task-card,.workspace-table tr[data-task-surface],.plan-deadline{background:Canvas;color:CanvasText}
 .task-signal-copy,.task-epic-label{color:CanvasText}.product-nav-link[aria-current=page]{color:HighlightText;background:Highlight}
 .plan-days,.product-nav{border-color:CanvasText}.plan-deadline:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){box-shadow:inset 0 -2px Highlight}
}

iq-side-navigation[collapsed] .product-nav-link[data-contains-current]{background:var(--iq-nav-current-bg);color:var(--iq-nav-current-ink)}

/* 04.9 / Task Light. Same meaning on cards and rows, never derived from status.
   Gradients are static. No animated filter/blur, no edge stripe, no external shadow glow.
   Only the hover overlay's opacity transitions. Background layers cannot capture input. */
:where(.task-card,.workspace-table tr[data-task-surface]) {
 --task-surface:var(--iq-task-neutral-surface);
 --task-signal:var(--iq-muted);
 --task-light-core:transparent;--task-light-mid:transparent;--task-light-rim:transparent;
 --task-light-image:none;
}
[data-task-emphasis=epic] {
 --task-signal:var(--iq-task-epic-text);
 --task-light-core:var(--iq-task-light-epic-core);
 --task-light-mid:var(--iq-task-light-epic-mid);
 --task-light-rim:var(--iq-task-light-epic-rim);
}
[data-task-emphasis=high] {
 --task-signal:var(--iq-task-high-text);
 --task-light-core:var(--iq-task-light-high-core);
 --task-light-mid:var(--iq-task-light-high-mid);
 --task-light-rim:var(--iq-task-light-high-rim);
}
[data-task-emphasis=critical] {
 --task-signal:var(--iq-task-critical-text);
 --task-light-core:var(--iq-task-light-critical-core);
 --task-light-mid:var(--iq-task-light-critical-mid);
 --task-light-rim:var(--iq-task-light-critical-rim);
}
:is(.task-card,.workspace-table tr)[data-task-emphasis]:not([data-task-emphasis=none]) {
 --task-light-image:
  radial-gradient(ellipse 95% 130% at -14% -20%,var(--task-light-core) 0%,var(--task-light-core) 13%,var(--task-light-mid) 50%,transparent 82%),
  radial-gradient(ellipse 90% 82% at 35% -56%,var(--task-light-rim) 0%,transparent 88%);
}
/* Cards use the neutral opaque substrate; colour is a separate light field. The field has a fixed height anchored
   at the top, so it never grows with the card's content (expanded subtasks, long titles). */
.task-card{--task-light-extent:160px}
.iq-board .task-card,.priority-specimen .task-card,.priority-card-gallery .task-card,.task-card.iq-drag-overlay {
 position:relative;isolation:isolate;background-color:var(--task-surface);
 background-image:var(--task-light-image);background-repeat:no-repeat;background-size:100% var(--task-light-extent);
 border:0;border-radius:12px;box-shadow:none;padding:15px;gap:13px;
 transition:none;
}
.task-card::before {content:none;display:none}
.task-card::after {
 content:"";display:block;position:absolute;inset:0;border-radius:inherit;
 background:var(--task-light-image) 0 0/100% var(--task-light-extent) no-repeat;opacity:0;pointer-events:none;z-index:0;
 transition:opacity var(--iq-motion-standard) var(--iq-ease);
}
.task-card>* {position:relative;z-index:1}
.task-card .task-card-top {min-height:24px;gap:8px}
.task-identity {display:flex;flex:1;min-width:0;align-items:center;gap:7px;flex-wrap:wrap;row-gap:4px}
.iq-board .task-card-id,.priority-catalog .task-card-id {background:none;color:var(--iq-muted);font:500 var(--iq-type-meta-size)/18px var(--iq-mono);padding:0;letter-spacing:var(--iq-tracking-body)}
.task-signal-copy {display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;font:600 var(--iq-type-meta-size)/18px var(--iq-font);color:var(--task-signal);letter-spacing:var(--iq-tracking-body)}
.task-signal-copy:empty {display:none}
.task-signal-copy>span {white-space:nowrap}
.task-epic-label {color:var(--iq-task-epic-text)}
.task-signal-copy>span+span {padding-left:8px;border-left:1px solid color-mix(in srgb,var(--task-signal) 30%,transparent)}
.iq-board .task-card-title {font:550 var(--iq-type-interface-size)/1.5 var(--iq-font);color:var(--iq-ink);letter-spacing:var(--iq-tracking-h3);text-wrap:pretty}
.iq-board .task-card-footer {padding-top:3px;min-height:28px}
.iq-board .task-card-footer .task-due {font-size:var(--iq-type-meta-size);color:var(--iq-muted)}
.task-card .iq-drag-handle {flex:none}
.task-card .iq-drag-handle>.iq-icon {width:14px;height:14px}
.task-card-top iq-menu>.iq-btn {--h:26px;padding:4px}
@media(hover:hover) {
 .task-card[data-task-surface]:hover {background-color:var(--task-surface);background-image:var(--task-light-image);box-shadow:none}
 .task-card[data-task-surface]:hover::after {opacity:.3}
 .task-card[data-task-emphasis=none]:hover {background-color:var(--iq-hover)}
}
.task-card:has(.task-card-title:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"]))) {background-color:var(--task-surface);background-image:var(--task-light-image)}
.task-card .task-card-title:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])) {color:var(--iq-ink);text-decoration:underline;text-underline-offset:4px}
.priority-catalog .task-card {--iq-avatar-separator:var(--task-surface)}
/* Lists stay neutral by default, including low and normal priorities and every status.
   The three exceptional roles use a quieter field anchored to the task-name area.
   Painting at row level avoids gradient seams between table cells. */
.workspace-table tr[data-task-surface] {
 background-color:transparent;background-image:none;filter:none;
 transition:background-color var(--iq-motion-fast) var(--iq-ease);
}
.workspace-table tr[data-task-emphasis]:not([data-task-emphasis=none]) {
 background-image:
  radial-gradient(ellipse 60% 200% at 0% 0%,color-mix(in srgb,var(--task-light-core) var(--iq-task-light-row-strength),transparent) 0%,color-mix(in srgb,var(--task-light-mid) 74%,transparent) 46%,transparent 82%),
  radial-gradient(ellipse 45% 120% at 18% -70%,var(--task-light-rim),transparent 80%);
 background-repeat:no-repeat;
}
.workspace-table tr[data-task-surface]>td {background:transparent;padding-block:20px}
.workspace-table .task-row-meta {display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:7px}
.workspace-table .task-row-meta .task-id {font:500 var(--iq-type-meta-size)/18px var(--iq-mono);color:var(--iq-muted);margin:0;letter-spacing:var(--iq-tracking-caps)}
.workspace-table .task-title {width:44%;min-width:200px;max-width:none}
.workspace-table .task-title>button {font-weight:500;font-size:var(--iq-type-interface-size);line-height:1.5;text-align:left;color:var(--iq-ink)}
.workspace-table .task-date-cell {color:var(--iq-muted);font-size:var(--iq-type-caption-size);white-space:nowrap}
.workspace-table .task-actions-cell {width:44px}
.workspace-table .iq-badge {inline-size:124px;min-inline-size:124px;max-inline-size:124px}
@media(hover:hover) {.workspace-table tr[data-task-surface]:hover {background-color:var(--iq-surface);filter:none}}
.workspace-table tr[data-task-surface]:has(input:checked) {background-color:var(--iq-surface)}
@media(max-width:600px) {
 .workspace-table tr[data-task-surface]>td {padding:0;height:auto;border:0}
 .workspace-table .task-title {width:auto;min-width:0}
 .workspace-table .task-title>button {}
 .workspace-table .task-row-meta {gap:7px;margin-bottom:6px}
 .workspace-table .task-signal-copy {font-size:var(--iq-type-meta-size)}
}
@media(prefers-reduced-motion:reduce) {.task-card::after,.workspace-table tr[data-task-surface] {transition:none!important}}
[data-motion=reduced] .task-card::after,[data-motion=reduced] .workspace-table tr[data-task-surface] {transition:none}
@media(forced-colors:active) {
 .task-card,.workspace-table tr[data-task-surface] {background:Canvas!important;color:CanvasText;forced-color-adjust:auto}
 .task-card::after {display:none}
 .task-signal-copy,.task-epic-label {color:CanvasText}
}

/* Keep small identifiers readable across the brightest part of the light field. */
.task-card[data-task-emphasis]:not([data-task-emphasis=none]) .task-card-id{color:var(--iq-task-light-meta)}
.workspace-table tr[data-task-emphasis]:not([data-task-emphasis=none]) .task-row-meta .task-id{color:var(--iq-task-light-meta)}
@media(max-width:600px){
 .workspace-table tr[data-task-surface]>.task-owner-cell{margin-top:10px}
 .workspace-table tr[data-task-surface]>.task-date-cell{margin-top:8px}
}



/* IQUIPAGE 05.1 — scoped data surfaces. The approved 04.9 layer is unchanged. */
iq-roadmap,iq-graph,iq-data-chart,iq-extension-demo{
 display:block;width:100%;min-width:0;container-type:inline-size;container-name:iqpro;
}
iq-remote-combobox,iq-tag-input{display:block;width:100%;min-width:0}
[data-component] .specimen-surface:has(>iq-extension-demo){display:block;padding:0;min-height:0;background:transparent;overflow:visible}
.iq-pro,.iq-remote-control,.iq-tag-field,.iq-tag-bottom{box-sizing:border-box;font-family:var(--iq-font);color:var(--iq-ink)}
.iq-pro *,.iq-remote-control *,.iq-tag-field *{box-sizing:border-box}
.iq-pro{position:relative;isolation:isolate;min-width:0;overflow:hidden;border:1px solid var(--iq-line);border-radius:16px;background:var(--iq-canvas);font-size:var(--iq-type-interface-size);line-height:1.5;text-align:left}
.iq-pro h3,.iq-pro h4,.iq-pro p{margin:0}
.iq-pro h3{font-size:1.3125rem;line-height:1.3;font-weight:600;letter-spacing:var(--iq-tracking-h1);overflow-wrap:anywhere}
.iq-pro h4{font-size:.9375rem;line-height:1.4;font-weight:600;letter-spacing:var(--iq-tracking-h3);overflow-wrap:anywhere}
.iq-pro-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:22px 24px;border-bottom:1px solid var(--iq-line)}
.iq-pro-heading{flex:1 1 250px;min-width:0}
.iq-pro-eyebrow{display:block;margin-bottom:6px;font-size:var(--iq-type-meta-size);line-height:1.4;font-weight:600;letter-spacing:var(--iq-tracking-caps);color:var(--iq-muted);text-transform:uppercase}
.iq-pro-subtitle{display:block;margin-top:6px;font-size:var(--iq-type-label-size);line-height:1.55;color:var(--iq-muted);overflow-wrap:break-word}
.iq-pro-meta-sep{display:inline-block;width:12px}
.iq-pro-actions,.iq-pro-range{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}
.iq-pro .iq-btn{font-family:var(--iq-font);letter-spacing:var(--iq-tracking-body);gap:8px;white-space:nowrap;flex-shrink:0;vertical-align:middle}
.iq-pro .iq-btn.sm{min-height:36px;height:36px;padding:0 12px;border-radius:8px;font-size:var(--iq-type-label-size);line-height:1.2;display:inline-flex;align-items:center;justify-content:center}
.iq-pro .iq-btn.icon-only{width:36px;min-width:36px;padding:0}
.iq-pro .iq-btn:disabled,.iq-remote-control button:disabled{opacity:.5;cursor:not-allowed;transform:none}
.iq-pro .iq-btn>svg{width:16px;height:16px;flex-shrink:0}
.iq-pro .iq-btn.icon-only>svg{width:18px;height:18px}
.iq-pro button:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){outline:0!important}
.iq-pro .iq-btn:not(.primary):focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){background:var(--iq-focus-fill);color:var(--iq-focus-text);box-shadow:inset 0 -2px var(--iq-accent);text-decoration:none}
.iq-pro .iq-btn.primary:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){background:var(--iq-primary);color:var(--iq-on-primary);box-shadow:inset 0 -3px var(--iq-accent)}
.iq-pro-segment{display:inline-flex;align-items:center;gap:2px;padding:3px;background:var(--iq-surface);border-radius:10px;max-width:100%}
.iq-pro .iq-pro-segment>.iq-btn{background:transparent;color:var(--iq-muted);border:0;box-shadow:none;min-height:30px;height:30px;padding:0 10px;border-radius:7px}
.iq-pro .iq-pro-segment>.iq-btn[aria-pressed=true]{background:var(--iq-raised);color:var(--iq-ink);font-weight:600;box-shadow:var(--iq-shadow-1)}
.iq-pro .iq-pro-segment>.iq-btn:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){background:var(--iq-focus-fill);color:var(--iq-focus-text);box-shadow:inset 0 -2px var(--iq-accent)}
.iq-pro-readonly{display:flex;align-items:center;gap:9px;padding:12px 24px;background:var(--iq-surface);color:var(--iq-muted);font-size:var(--iq-type-label-size)}
.iq-pro-readonly svg{flex-shrink:0;width:16px;height:16px}
.iq-pro-state{min-height:280px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:40px 24px;text-align:center}
.iq-pro-state>p{max-width:420px;color:var(--iq-muted);font-size:var(--iq-type-interface-size)}
.iq-pro-state>h3{font-size:var(--iq-type-lead-size)}
.iq-pro-state-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:13px;background:var(--iq-surface);color:var(--iq-muted);margin-bottom:4px}
.iq-pro-state.is-error .iq-pro-state-icon{background:var(--iq-warning-fill);color:var(--iq-on-warning)}
.iq-pro-state.is-error>h3{color:var(--iq-danger)}
.iq-pro-inspector{display:flex;flex-direction:column;gap:16px;min-width:0;padding:22px 24px;background:var(--iq-surface);border-top:1px solid var(--iq-line)}
.iq-pro-inspector-title{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.iq-pro-inspector-title>div{min-width:0}
.iq-pro-inspector-title h4{font-size:1.0625rem}
.iq-pro-inspector .iq-pro-readonly{padding:10px 12px;border-radius:8px;background:var(--iq-raised)}
.iq-pro-field{display:flex;flex-direction:column;gap:7px;min-width:0;margin:0;font-size:var(--iq-type-label-size);font-weight:500;line-height:1.45;color:var(--iq-ink)}
.iq-pro-field small{font-size:var(--iq-type-caption-size);font-weight:400;color:var(--iq-muted)}
.iq-pro-field input,.iq-pro-field textarea{
 display:block;width:100%;min-width:0;border:1px solid var(--iq-control);border-radius:8px;background:var(--iq-field-bg);
 color:var(--iq-ink);font:var(--iq-type-interface-size)/1.5 var(--iq-font);padding:9px 11px;resize:none;outline:0;
}
.iq-pro-field input{height:40px}
.iq-pro-field input:focus:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])),.iq-pro-field textarea:focus:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){border-color:var(--iq-focus);box-shadow:inset 0 0 0 1px var(--iq-focus)}
.iq-pro-field input:disabled,.iq-pro-field textarea:disabled{color:var(--iq-muted);background:var(--iq-surface)}
.iq-pro-field input[type=number]{appearance:textfield;-moz-appearance:textfield}
.iq-pro-field input::-webkit-inner-spin-button,.iq-pro-field input::-webkit-outer-spin-button{appearance:none;margin:0}
.iq-pro-error{font-size:var(--iq-type-label-size);line-height:1.55;color:var(--iq-danger);padding:0;overflow-wrap:break-word}
.iq-pro-inline-error{padding:16px 24px!important}
.iq-pro-dock{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 24px;background:var(--iq-accent-soft);border-top:1px solid var(--iq-line);flex-wrap:wrap}
.iq-pro-dock[hidden]{display:none}
.iq-pro-draft{display:flex;align-items:flex-start;gap:10px;min-width:0;flex:1 1 240px}
.iq-pro-draft b{display:block;font-size:var(--iq-type-interface-size);line-height:1.45;font-weight:600}
.iq-pro-draft small{display:block;margin-top:4px;max-width:600px;color:var(--iq-muted);font-size:var(--iq-type-label-size);line-height:1.5;overflow-wrap:break-word}
.iq-pro-draft small[role=alert]{color:var(--iq-danger)}
.iq-pro-dot{width:7px;height:7px;flex-shrink:0;margin-top:7px;border-radius:50%;background:var(--iq-accent)}
.iq-pro-foot{display:flex;align-items:center;gap:12px 20px;flex-wrap:wrap;padding:12px 24px;border-top:1px solid var(--iq-line);color:var(--iq-muted);font-size:var(--iq-type-caption-size);line-height:1.5}
.iq-pro-foot>span:first-child{display:inline-flex;gap:8px;align-items:center}
.iq-pro-foot>span:first-child svg{flex-shrink:0}
.iq-pro-foot>span:nth-child(2){flex:1 1 200px}
.iq-pro-foot>.iq-btn{margin-left:auto}

/* One time geometry drives rows, bars, hit areas and relationship endpoints. */
.rm-scroll{position:relative;overflow:auto;max-height:620px;outline:none;scrollbar-width:thin;overscroll-behavior:contain}
.rm-scroll:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){box-shadow:inset 0 -3px var(--iq-focus)}
.rm-sheet{width:calc(var(--rm-width) + var(--rm-name));min-width:100%;position:relative}
.rm-head{display:flex;position:sticky;top:0;z-index:6;height:72px;background:var(--iq-raised);border-bottom:1px solid var(--iq-line)}
.rm-name-head{width:var(--rm-name);flex-shrink:0;position:sticky;left:0;z-index:7;display:flex;flex-direction:column;justify-content:center;gap:3px;padding:12px 20px;background:var(--iq-raised);border-right:1px solid var(--iq-line);font-size:var(--iq-type-label-size);font-weight:500;color:var(--iq-ink)}
.rm-name-head small{font-size:var(--iq-type-caption-size);font-weight:400;color:var(--iq-muted)}
.rm-ruler{position:relative;width:var(--rm-width);font-size:var(--iq-type-caption-size);color:var(--iq-muted);overflow:hidden}
.rm-months{height:35px;border-bottom:1px solid var(--iq-line);position:relative}
.rm-months>span{position:absolute;top:0;bottom:0;padding:8px 12px;border-right:1px solid var(--iq-line);font-size:var(--iq-type-caption-size);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rm-days{position:relative;height:36px}
.rm-days>span{position:absolute;top:8px;padding-left:8px;white-space:nowrap}
.rm-today-cap{position:absolute;bottom:5px;transform:translateX(-50%);background:var(--iq-accent-fill);color:var(--iq-on-accent);border-radius:5px;padding:3px 6px;font-size:var(--iq-type-meta-size);font-weight:600;white-space:nowrap}
.rm-body{position:relative}
.rm-row{display:flex;position:relative;border-bottom:1px solid var(--iq-line);background:var(--iq-canvas)}
.rm-row:last-child{border-bottom:0}
.rm-label{position:sticky;left:0;z-index:4;width:var(--rm-name);flex-shrink:0;display:flex;align-items:center;gap:12px;margin:0;padding:16px 20px;border:0;border-right:1px solid var(--iq-line);background:var(--iq-raised);color:var(--iq-ink);text-align:left;font-family:var(--iq-font);cursor:pointer}
.rm-label>span:last-child{min-width:0}
.rm-label b{display:block;font-size:var(--iq-type-interface-size);font-weight:500;line-height:20px;overflow-wrap:anywhere}
.rm-label small{display:block;margin-top:5px;font-size:var(--iq-type-meta-size);line-height:1.45;color:var(--iq-muted);overflow-wrap:anywhere}
.rm-label-icon{display:grid;place-items:center;width:24px;min-width:24px;height:28px;color:var(--iq-muted)}
.rm-label-icon svg{width:18px;height:18px}
.rm-label:hover{background:var(--iq-surface)}
.rm-row.selected .rm-label,.rm-label:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){background:var(--iq-focus-fill);box-shadow:inset 0 -2px var(--iq-accent)}
.rm-lane{position:relative;width:var(--rm-width);background:repeating-linear-gradient(to right,transparent 0,transparent calc(var(--rm-day) - 1px),var(--iq-surface) calc(var(--rm-day) - 1px),var(--iq-surface) var(--rm-day))}
.rm-bar{position:absolute;top:50%;translate:0 -50%;height:32px;z-index:2;isolation:isolate;overflow:hidden;display:grid;place-items:center;padding:0;border:0;border-radius:7px;border:1px solid var(--iq-info);background:var(--iq-info-bg);color:var(--iq-info);font:600 var(--iq-type-meta-size)/1 var(--iq-font);cursor:grab;touch-action:pan-y}
.rm-bar:hover{box-shadow:inset 0 0 0 1px var(--iq-info)}
.rm-bar.is-done{border-color:var(--iq-calendar-complete-ink);background:var(--iq-calendar-complete-bg);color:var(--iq-calendar-complete-ink)}
.rm-bar.is-blocked{border-color:var(--iq-control);background:var(--iq-recessed);color:var(--iq-muted);cursor:default}
.rm-bar.is-moving{opacity:.38}
.rm-bar[aria-pressed=true],.rm-bar:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){box-shadow:inset 0 -3px var(--iq-accent)}
.rm-bar-label{position:relative;z-index:1;display:block;white-space:nowrap;pointer-events:none;padding:0 12px}
.rm-bar-progress{position:absolute;inset:0;border-radius:inherit;background:currentColor;opacity:.13;transform-origin:left;pointer-events:none}
.rm-handle{position:absolute;inset-block:0;width:24px;z-index:3;cursor:ew-resize;touch-action:none}
.rm-handle::before{content:'';position:absolute;inset:-8px}
.rm-handle::after{content:'';position:absolute;top:10px;bottom:10px;width:2px;background:currentColor;opacity:.65}
.rm-handle.start{left:0}.rm-handle.end{right:0}.rm-handle.start::after{left:4px}.rm-handle.end::after{right:4px}
.rm-bar.is-milestone{background:transparent!important;box-shadow:none;overflow:visible}
.rm-diamond{display:block;width:16px;height:16px;border-radius:3px;background:var(--iq-planned-fill);transform:rotate(45deg);box-shadow:0 0 0 3px var(--iq-canvas)}
.rm-bar.is-milestone:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])) .rm-diamond{box-shadow:0 0 0 3px var(--iq-focus-fill),inset 0 -2px var(--iq-ink)}
.rm-ghost{pointer-events:none;opacity:.88;z-index:8;will-change:transform;box-shadow:var(--iq-shadow-2)}
.rm-links{position:absolute;left:var(--rm-name);top:0;z-index:1;pointer-events:none;overflow:hidden}
.rm-dependency{pointer-events:stroke;cursor:pointer;outline:none}
.rm-edge-line{stroke:var(--iq-graph-edge);stroke-width:1.5;fill:none}
.rm-edge-hit{stroke:transparent;stroke-width:14;fill:none}
.rm-dependency.has-error .rm-edge-line{stroke:var(--iq-danger);stroke-width:2;stroke-dasharray:5 3}
.rm-dependency.selected .rm-edge-line,.rm-dependency:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])) .rm-edge-line{stroke:var(--iq-accent);stroke-width:3}
.rm-today{position:absolute;top:0;bottom:0;width:1px;background:var(--iq-accent);opacity:.48;z-index:1;pointer-events:none}
.rm-outside{height:100%;display:grid;place-items:center;font-size:var(--iq-type-caption-size);color:var(--iq-muted)}
.rm-edit-fields{display:grid;grid-template-columns:1fr 1fr auto;gap:16px;align-items:end}
.rm-edit-fields iq-date-field{min-width:0}
.rm-edit-fields iq-date-field>label{font-size:var(--iq-type-label-size)}
.rm-link-editor{font-size:var(--iq-type-label-size)}
.rm-link-editor>summary,.graph-geometry-section>summary,.graph-connect-form>summary{display:flex;gap:8px;align-items:center;list-style:none;cursor:pointer;font-size:var(--iq-type-label-size);font-weight:600}
.rm-link-editor>summary::-webkit-details-marker,.graph-geometry-section>summary::-webkit-details-marker,.graph-connect-form>summary::-webkit-details-marker{display:none}
.rm-link-editor[open]>summary>svg,.graph-geometry-section[open]>summary>svg,.graph-connect-form[open]>summary>svg{transform:rotate(180deg)}
.rm-link-fields{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) auto;gap:16px;align-items:end;margin-top:16px}
.rm-link-row{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--iq-line)}
.rm-link-row:last-child{border-bottom:0}
.rm-link-row b{font-size:var(--iq-type-label-size);font-weight:500;overflow-wrap:anywhere}
.rm-link-row small{display:block;font-size:var(--iq-type-caption-size);color:var(--iq-muted);margin-top:4px}
.rm-agenda{display:none;padding:16px}
.rm-agenda-row{width:100%;border:0;border-bottom:1px solid var(--iq-line);background:transparent;color:var(--iq-ink);text-align:left;display:flex;align-items:center;gap:12px;padding:16px 0;font-family:var(--iq-font)}
.rm-agenda-row b{font-size:var(--iq-type-interface-size);font-weight:500;line-height:1.5;display:block;overflow-wrap:anywhere}
.rm-agenda-row small{font-size:var(--iq-type-caption-size);line-height:1.5;color:var(--iq-muted);display:block;margin-top:4px}
.rm-agenda-row>span:nth-child(2){flex:1;min-width:0}
.rm-agenda-row[aria-pressed=true],.rm-agenda-row:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){color:var(--iq-focus-text);background:var(--iq-focus-fill);border-radius:8px;padding-inline:10px}

/* Spatial surface. One geometry function renders idle and moving connections. */
.graph-tools{display:flex;gap:6px;align-items:center;flex-wrap:wrap;padding:12px 20px;border-bottom:1px solid var(--iq-line)}
.graph-presence-count{display:flex;align-items:center;gap:8px;margin-left:auto;font-size:var(--iq-type-caption-size);color:var(--iq-muted)}
.graph-body{display:grid;grid-template-columns:minmax(0,1fr)}
.graph-body.has-inspector{grid-template-columns:minmax(0,1fr) 288px}
.graph-main{min-width:0}
.graph-canvas{height:600px;position:relative;overflow:hidden;background:var(--iq-surface);touch-action:none;outline:none}
.graph-canvas:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){box-shadow:inset 0 -3px var(--iq-focus)}
.graph-world{position:absolute;left:0;top:0;width:1px;height:1px;transform-origin:0 0}
.graph-node{position:absolute;display:grid;grid-template-rows:auto minmax(0,1fr);padding:16px;z-index:2;background:var(--iq-raised);border:1px solid var(--iq-line);border-radius:13px;box-shadow:var(--iq-shadow-1);user-select:none;outline:none}
.graph-node.is-selected,.graph-node:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){box-shadow:inset 0 -3px var(--iq-accent),var(--iq-shadow-2)}
.graph-node.is-error{border-color:var(--iq-danger)}
.graph-node.is-disabled{background:var(--iq-recessed)}
.graph-node.is-disabled .graph-node-head{color:var(--iq-muted)}
.graph-node.is-group{z-index:0;background:var(--iq-graph-group);border:1px dashed var(--iq-control);box-shadow:none}
.graph-node.is-group.is-selected{box-shadow:inset 0 -3px var(--iq-accent)}
.graph-node-head{font-size:var(--iq-type-meta-size);line-height:1.4;color:var(--iq-muted);display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;cursor:grab;touch-action:none}
.graph-node-head>span{display:flex;align-items:center;gap:8px}
.graph-node-content{min-height:0;overflow:auto;scrollbar-width:thin;overscroll-behavior:contain;user-select:text}
.graph-node-content h4{font-size:.9375rem;line-height:1.45;letter-spacing:var(--iq-tracking-h2)}
.graph-node-content p{font-size:var(--iq-type-label-size);color:var(--iq-muted);line-height:1.55;margin-top:8px;overflow-wrap:break-word}
.graph-image-frame{height:calc(100% - 30px);min-height:36px;margin-top:10px}
.graph-image-frame img{display:block;width:100%;height:100%;max-height:100%;object-fit:contain;border-radius:6px}
.graph-image-frame img[hidden],.graph-media-empty[hidden]{display:none}
.graph-media-empty{display:flex;align-items:center;gap:10px;background:var(--iq-surface);padding:12px;border-radius:7px;margin-top:10px;color:var(--iq-muted);font-size:var(--iq-type-caption-size)}
.graph-checklist{display:grid;gap:8px;margin-top:12px}
.graph-checklist label{display:flex;gap:8px;align-items:flex-start;cursor:pointer;font-size:.78125rem;line-height:1.45}
.graph-checklist input{appearance:auto;accent-color:var(--iq-accent);width:15px;height:15px;margin:2px 0 0;flex-shrink:0}
.graph-checklist input:checked+span{text-decoration:line-through;color:var(--iq-muted)}
.graph-port{position:absolute;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:24px;height:28px;border:0;background:transparent!important;border-radius:0;color:var(--iq-muted);padding:0;z-index:5;opacity:.65;cursor:crosshair}
.graph-port::after{content:'';width:8px;height:8px;border:2px solid var(--iq-raised);border-radius:50%;background:var(--iq-graph-edge)}
.graph-port.in{left:-12px}.graph-port.out{right:-12px}
.graph-port:hover,.graph-port:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){opacity:1;box-shadow:none!important}
.graph-port:hover::after,.graph-port:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"]))::after{width:12px;height:12px;background:var(--iq-accent)}
.graph-port:disabled{opacity:.22;cursor:default}
.graph-resize{position:absolute;right:0;bottom:0;width:20px;height:20px;cursor:nwse-resize;touch-action:none}
.graph-resize::after{content:'';position:absolute;right:5px;bottom:5px;width:7px;height:7px;border-right:2px solid var(--iq-accent);border-bottom:2px solid var(--iq-accent);border-radius:0 0 2px 0}
.graph-node.dragging{z-index:5;box-shadow:var(--iq-shadow-2);will-change:transform}
.graph-edges{position:absolute;left:0;top:0;overflow:visible;pointer-events:none;z-index:1}
.graph-edge{pointer-events:stroke;cursor:pointer;outline:0}
.graph-edge-line{fill:none;stroke:var(--iq-graph-edge);stroke-width:1.7}
.graph-edge-hit{stroke:transparent;stroke-width:16;fill:none}
.graph-edge text{font:var(--iq-type-caption-size)/1 var(--iq-font);fill:var(--iq-muted);stroke:var(--iq-surface);stroke-width:6px;paint-order:stroke;stroke-linejoin:round}
.graph-edge.has-error .graph-edge-line{stroke:var(--iq-danger);stroke-dasharray:5 3}
.graph-edge.is-disabled .graph-edge-line{stroke-dasharray:3 4}
.graph-edge.selected .graph-edge-line,.graph-edge:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])) .graph-edge-line{stroke:var(--iq-accent);stroke-width:3}
.graph-viewport-controls{position:absolute;left:14px;bottom:14px;display:flex;align-items:center;gap:2px;padding:4px;border:1px solid var(--iq-line);border-radius:10px;background:var(--iq-raised);box-shadow:var(--iq-shadow-1);z-index:6}
.graph-viewport-controls .iq-btn{width:30px;min-width:30px;height:30px;min-height:30px}
.graph-viewport-controls [data-zoom-value]{font-size:var(--iq-type-meta-size);min-width:36px;text-align:center;font-variant-numeric:tabular-nums}
.graph-minimap{position:absolute;right:14px;bottom:14px;width:118px;height:72px;padding:4px;border:1px solid var(--iq-line);border-radius:10px;background:var(--iq-raised);z-index:5;cursor:crosshair}
.graph-minimap svg{display:block;width:100%;height:100%}
.graph-minimap rect{fill:var(--iq-recessed);stroke:var(--iq-control);stroke-width:1}
.graph-minimap rect.selected{fill:var(--iq-focus-fill)}
.graph-minimap .graph-minimap-view{fill:var(--iq-accent-soft);fill-opacity:.25;stroke:var(--iq-accent);stroke-width:3}
.graph-archive-cluster{position:absolute;left:14px;bottom:64px;display:flex;align-items:center;gap:8px;background:var(--iq-raised);color:var(--iq-muted);border:1px solid var(--iq-line);border-radius:8px;padding:7px 10px;font:var(--iq-type-caption-size) var(--iq-font);z-index:5}
.graph-link-notice{position:absolute;left:14px;right:14px;top:14px;z-index:8;background:var(--iq-raised);box-shadow:var(--iq-shadow-2);border:1px solid var(--iq-line);border-radius:9px;padding:10px 14px;font-size:var(--iq-type-label-size);display:flex;align-items:center;gap:10px;justify-content:space-between}
.graph-inspector.iq-pro-inspector{padding:20px;border-top:0;border-left:1px solid var(--iq-line);max-height:600px;overflow:auto;overscroll-behavior:contain;gap:18px}
.graph-inspector .iq-btn:not(.icon-only){width:100%;white-space:normal;min-height:36px;height:auto;padding-block:9px;text-align:center}
.graph-geometry{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}
.graph-geometry-section{min-width:0}
.graph-connect-form{padding-top:16px;border-top:1px solid var(--iq-line);display:block}
.graph-connect-form>iq-select,.graph-connect-form>.iq-btn{margin-top:14px}
.graph-connect-form iq-select>label{font-size:var(--iq-type-label-size)}
.graph-inspector-end{padding-top:16px;border-top:1px solid var(--iq-line)}
.graph-list{display:none;padding:18px 24px}
.graph-list-item{padding:12px 0;border-bottom:1px solid var(--iq-line)}
.graph-list-item:last-child{border-bottom:0}
.graph-list-item>button:first-child{width:100%;border:0;background:transparent;color:var(--iq-ink);display:flex;align-items:center;gap:12px;padding:10px 8px;text-align:left;font:var(--iq-type-interface-size)/1.5 var(--iq-font);border-radius:8px}
.graph-list-item>button:first-child>span{flex:1;min-width:0}
.graph-list-item small{display:block;color:var(--iq-muted);font-size:var(--iq-type-caption-size)}
.graph-list-item b{display:block;font-weight:500;overflow-wrap:anywhere}
.graph-list-item>button[aria-pressed=true],.graph-list-item>button:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){background:var(--iq-focus-fill);color:var(--iq-focus-text)}
.graph-text-edge{width:100%;border:0;background:transparent;color:var(--iq-muted);font:var(--iq-type-caption-size)/1.6 var(--iq-font);display:flex;align-items:flex-start;gap:8px;text-align:left;padding:5px 10px 5px 38px}
.graph-text-edge svg{flex-shrink:0;margin-top:3px}
.graph-archive-list{padding:18px 24px;background:var(--iq-surface);border-top:1px solid var(--iq-line)}
.graph-archive-list>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-block:10px;font-size:var(--iq-type-label-size)}
.iq-graph.force-list .graph-canvas{display:none}
.iq-graph.force-list .graph-list{display:block}
.iq-graph.is-expanded{position:fixed;inset:16px;z-index:180;width:auto;max-height:calc(100dvh - 32px);overflow:auto;box-shadow:0 0 0 100vmax #0008}
.iq-graph.is-expanded .graph-canvas{height:max(400px,calc(100dvh - 230px))}
.iq-graph.is-expanded .graph-inspector{max-height:max(400px,calc(100dvh - 230px))}
.graph-cursor{position:absolute;z-index:10;display:flex;align-items:flex-start;gap:4px;pointer-events:none;color:var(--iq-planned);white-space:nowrap}
.graph-cursor b{font-size:var(--iq-type-meta-size);background:var(--iq-planned-fill);color:var(--iq-on-planned);padding:4px 8px;border-radius:5px}
.graph-edit-presence{position:absolute;right:8px;top:-28px;display:flex;align-items:center;gap:5px;max-width:240px;background:var(--iq-planned-fill);color:var(--iq-on-planned);font-size:var(--iq-type-meta-size);line-height:1.3;padding:4px 7px;border-radius:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.graph-node-state{position:absolute;right:8px;bottom:-26px;font-size:var(--iq-type-meta-size);color:var(--iq-danger);background:var(--iq-raised);border-radius:5px;padding:3px 6px}

/* Remote search keeps the popup actions mounted while results are updated. */
.iq-remote-control{position:relative;font-size:var(--iq-type-interface-size);line-height:1.5;text-align:left}
.iq-remote-control>label{display:block;margin-bottom:8px;font-size:var(--iq-type-interface-size);font-weight:500;color:var(--iq-ink)}
.iq-remote-input{display:grid;grid-template-columns:20px minmax(0,1fr) 28px;gap:9px;align-items:center;min-height:44px;padding:0 10px 0 12px;border:1px solid var(--iq-control);border-radius:9px;background:var(--iq-field-bg)}
.iq-remote-input:focus-within{border-color:var(--iq-focus);box-shadow:inset 0 0 0 1px var(--iq-focus)}
.iq-remote-input>svg{color:var(--iq-muted)}
.iq-remote-input input{display:block;min-width:0;width:100%;height:42px;border:0;padding:0;background:transparent;color:var(--iq-ink);font:var(--iq-type-interface-size)/1.5 var(--iq-font);outline:none;box-shadow:none!important;border-radius:0}
.iq-remote-input input::placeholder{color:var(--iq-muted)}
.iq-remote-input input:disabled{color:var(--iq-muted);cursor:not-allowed}
.iq-remote-clear{display:grid;place-items:center;border:0;background:transparent;color:var(--iq-muted);padding:0;width:28px;height:28px;border-radius:5px;cursor:pointer}
.iq-remote-clear[hidden]{visibility:hidden;display:grid}
.iq-remote-clear:hover,.iq-remote-clear:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){background:var(--iq-focus-fill);color:var(--iq-focus-text);outline:0}
.iq-remote-popup{box-sizing:border-box;position:fixed;display:flex;flex-direction:column;z-index:9999;margin:0;padding:6px;border:1px solid var(--iq-line);border-radius:12px;background:var(--iq-raised);color:var(--iq-ink);box-shadow:var(--iq-shadow-3);overflow:hidden;font:var(--iq-type-interface-size)/1.5 var(--iq-font)}
.iq-remote-popup[hidden]{display:none}
.iq-remote-results{overflow-y:auto;min-height:0;overscroll-behavior:contain;scrollbar-width:thin;position:relative}
.iq-remote-option{display:grid;grid-template-columns:minmax(0,1fr) 20px;gap:12px;align-items:center;padding:10px 12px;min-height:48px;border-radius:7px;cursor:pointer;color:var(--iq-ink);background:transparent}
.iq-remote-option b{font-size:var(--iq-type-interface-size);font-weight:500;line-height:1.45;display:block;overflow-wrap:anywhere}
.iq-remote-option small{font-size:var(--iq-type-caption-size);line-height:1.5;display:block;color:var(--iq-muted);margin-top:3px;overflow-wrap:anywhere}
.iq-remote-option:hover,.iq-remote-option.active{background:var(--iq-focus-fill);color:var(--iq-focus-text)}
.iq-remote-option.active small,.iq-remote-option:hover small{color:var(--iq-focus-text)}
.iq-remote-option[aria-disabled=true]{color:var(--iq-muted);opacity:.65;cursor:not-allowed}
.iq-remote-option[aria-disabled=true]:hover{background:var(--iq-surface)}
.iq-remote-check{display:grid;place-items:center;width:20px}
.iq-remote-foot{display:flex;align-items:center;gap:12px;justify-content:space-between;min-height:54px;flex-shrink:0;padding:8px 8px 4px;border-top:1px solid var(--iq-line);font-size:var(--iq-type-caption-size);line-height:1.5;color:var(--iq-muted)}
.iq-remote-status{min-width:0;overflow-wrap:break-word;flex:1}
.iq-remote-foot .iq-btn{height:auto;min-height:34px;font-size:var(--iq-type-caption-size);gap:6px;white-space:nowrap;flex-shrink:0;display:flex;align-items:center;padding:7px 10px}
.iq-remote-foot button:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){outline:0;background:var(--iq-focus-fill);color:var(--iq-focus-text);box-shadow:inset 0 -2px var(--iq-accent)}
.iq-remote-foot button[aria-disabled=true]{opacity:.6;cursor:progress}
.iq-remote-foot [hidden]{display:none}
.iq-tag-field{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-height:48px;padding:7px 8px 7px 10px;border:1px solid var(--iq-control);border-radius:10px;background:var(--iq-field-bg)}
iq-tag-input>.iq-pro-field{margin-bottom:8px;font-size:var(--iq-type-interface-size)}
.iq-tag-field:focus-within{border-color:var(--iq-focus);box-shadow:inset 0 0 0 1px var(--iq-focus)}
.iq-tag-field.invalid{border-color:var(--iq-danger)}
.iq-tag-field.disabled{background:var(--iq-surface)}
.iq-tag-values{display:contents}
.iq-tag-token{display:inline-flex;align-items:center;gap:7px;max-width:100%;border-radius:6px;background:var(--iq-recessed);color:var(--iq-ink);padding:5px 6px 5px 10px;font-size:var(--iq-type-label-size);line-height:1.45}
.iq-tag-token>span{min-width:0;overflow-wrap:anywhere}
.iq-tag-token>button{display:grid;place-items:center;width:24px;height:24px;border:0;border-radius:4px;background:transparent;color:var(--iq-muted);padding:0;flex-shrink:0;cursor:pointer}
.iq-tag-token>button:hover,.iq-tag-token>button:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){background:var(--iq-focus-fill);color:var(--iq-focus-text);outline:0}
.iq-tag-token>button:disabled{cursor:default}
.iq-tag-field>input{flex:1 1 120px;min-width:80px;height:32px;padding:4px 2px;border:0;box-shadow:none!important;outline:0;background:transparent;color:var(--iq-ink);font:var(--iq-type-interface-size) var(--iq-font)}
.iq-tag-field>input::placeholder{color:var(--iq-muted)}
.iq-tag-field>.iq-btn{padding:0;width:32px;min-width:32px;height:32px;border:0;display:grid;place-items:center;margin-left:auto}
.iq-tag-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px;min-height:22px}
.iq-tag-help{font-size:var(--iq-type-caption-size);line-height:1.5;color:var(--iq-muted)}
.iq-tag-help.iq-pro-error{color:var(--iq-danger)}
.iq-tag-bottom>.iq-btn{font-size:var(--iq-type-caption-size);min-height:30px;height:30px;padding:0 8px}

/* Charts: labels do not inherit scaled typography from presentation examples. */
.iq-chart-legend{display:flex;align-items:center;gap:8px 16px;flex-wrap:wrap;padding:16px 24px 8px}
.iq-chart-legend>button{display:inline-flex;align-items:center;gap:8px;min-height:32px;padding:5px 7px;border:0;border-radius:6px;background:transparent;color:var(--iq-ink);font:var(--iq-type-label-size)/1.5 var(--iq-font);cursor:pointer}
.iq-chart-legend>button[aria-pressed=false]{color:var(--iq-muted)}
.iq-chart-legend>button[aria-pressed=false]>.iq-series-swatch{background:transparent;border:1px solid currentColor}
.iq-chart-legend>button:hover,.iq-chart-legend>button:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){background:var(--iq-focus-fill);color:var(--iq-focus-text)}
.iq-series-swatch{display:block;width:10px;height:10px;border-radius:50%;background:var(--series-color);flex-shrink:0}.iq-series-swatch.shape-1{border-radius:2px}.iq-series-swatch.shape-2{border-radius:0;clip-path:polygon(50% 0,100% 100%,0 100%)}.iq-series-swatch.shape-3{border-radius:0;clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}
.series-0{--series-color:var(--iq-chart-series-1)}
.series-1{--series-color:var(--iq-chart-series-2)}
.series-2{--series-color:var(--iq-chart-series-3)}
.series-3{--series-color:var(--iq-chart-series-4)}
.series-4{--series-color:var(--iq-chart-series-5)}
.series-5{--series-color:var(--iq-chart-series-6)}
.iq-chart-plot{position:relative;padding:6px 24px 4px;min-width:0}
.iq-chart-plot>svg{display:block;width:100%;height:auto;max-height:none;overflow:visible}
.iq-data-grid line{stroke:var(--iq-line);stroke-width:1}
.iq-data-grid text,.iq-data-axis{fill:var(--iq-muted);font:var(--iq-type-caption-size) var(--iq-font)}
.iq-chart-series{fill:none;stroke:var(--series-color);stroke-width:2;vector-effect:non-scaling-stroke;pointer-events:none}
.iq-chart-point{stroke:var(--series-color);stroke-width:2;fill:var(--iq-raised);vector-effect:non-scaling-stroke}
.iq-chart-mark{fill:var(--series-color)}
.iq-chart-value{cursor:pointer;outline:none}
.iq-chart-value.is-current .iq-chart-point,.iq-chart-value:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])) .iq-chart-point{r:6;fill:var(--series-color);stroke-width:3}
.iq-chart-value.is-current .iq-chart-mark,.iq-chart-value:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])) .iq-chart-mark{stroke:var(--iq-ink);stroke-width:2}
.iq-chart-value .iq-chart-hit{stroke:none;fill:transparent;pointer-events:all}
.iq-chart-tooltip{position:absolute;z-index:4;pointer-events:none;max-width:min(250px,calc(100% - 16px));padding:11px 14px;border-radius:9px;background:var(--iq-primary);color:var(--iq-on-primary);box-shadow:var(--iq-shadow-2);font:var(--iq-type-caption-size)/1.5 var(--iq-font);overflow-wrap:anywhere}
.iq-chart-tooltip[hidden]{display:none}
.iq-chart-tooltip b{display:block;font-weight:600;margin-bottom:4px}
.iq-chart-tooltip span{display:flex;gap:14px;align-items:baseline;justify-content:space-between}
.iq-chart-tooltip strong{font-size:var(--iq-type-interface-size);font-variant-numeric:tabular-nums;white-space:nowrap}
.iq-chart-bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:12px 24px;border-top:1px solid var(--iq-line)}
.iq-chart-bottom .iq-pro-subtitle{margin:0;flex:1 1 200px;font-size:var(--iq-type-caption-size)}
.iq-chart-table{overflow:auto;max-height:420px;border-top:1px solid var(--iq-line)}
.iq-chart-table[hidden]{display:none}
.iq-chart-table table{width:100%;border-collapse:collapse;font-size:var(--iq-type-label-size)}
.iq-chart-table caption{text-align:left;padding:16px 24px;font-size:var(--iq-type-label-size);font-weight:500;color:var(--iq-muted)}
.iq-chart-table th,.iq-chart-table td{padding:12px 24px;border-bottom:1px solid var(--iq-line);text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.iq-chart-table th:first-child{text-align:left}
.iq-chart-table thead th{position:sticky;top:0;background:var(--iq-raised);font-weight:500;color:var(--iq-muted)}
.iq-chart-table tbody th{font-weight:500}

/* Catalog presentation only, not a product dependency. */
.extension-demo-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding:0 0 18px;flex-wrap:wrap}
.extension-demo-head>div{display:flex;align-items:center;gap:10px;color:var(--iq-muted);font-size:var(--iq-type-caption-size)}
.extension-demo-head>iq-select{width:214px;max-width:100%}
.extension-demo-head>iq-select>label{font-size:var(--iq-type-caption-size)}
.extension-demo-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:14px 0;font-size:var(--iq-type-caption-size);line-height:1.5;color:var(--iq-muted);flex-wrap:wrap}
.extension-demo-fields{width:min(100%,640px);margin:8px auto;padding:28px;background:var(--iq-surface);border-radius:14px;min-height:0}
.extension-demo-fields h3{font-size:1.3125rem;font-weight:600;line-height:1.4;margin:0 0 10px;letter-spacing:var(--iq-tracking-h2)}
.extension-demo-fields>p{font-size:var(--iq-type-interface-size);line-height:1.65;color:var(--iq-muted);margin:0 0 24px}
.extension-demo-fields iq-remote-combobox{margin-bottom:0}
.extension-demo-fields .extension-demo-foot{margin:20px 0 0}
.extension-data-details{margin-top:14px;font-size:var(--iq-type-caption-size);color:var(--iq-muted)}
.extension-data-details>summary{cursor:pointer;padding:10px 0}
.extension-data-details pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:340px;overflow:auto;margin:12px 0;padding:16px;border-radius:9px;background:var(--iq-surface);font:var(--iq-type-meta-size)/1.6 var(--iq-mono)}
.extension-state-table{width:100%;border-collapse:collapse;font-size:var(--iq-type-interface-size)}
.extension-state-table th,.extension-state-table td{padding:14px;border-bottom:1px solid var(--iq-line);text-align:left;vertical-align:top}
.extension-state-table th{font-weight:500}
.extension-example-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.extension-example-links>a{border:1px solid var(--iq-line);border-radius:12px;padding:24px;text-decoration:none;color:var(--iq-ink)}
.extension-example-links>a>span{font-size:var(--iq-type-caption-size);color:var(--iq-muted)}
.extension-example-links h3{font-size:var(--iq-type-lead-size);margin:10px 0 16px}
@container iqpro (max-width:900px){
 .iq-pro-toolbar{gap:16px}
 .iq-pro-toolbar>.iq-pro-heading{flex-basis:100%}
 .iq-pro-toolbar>.iq-pro-actions{width:100%;justify-content:space-between}
 .graph-body.has-inspector{grid-template-columns:minmax(0,1fr) 270px}
 .graph-inspector.iq-pro-inspector{padding:16px}
 .graph-viewport-controls [data-pro-action^=pan-]{display:none}
}
@container iqpro (max-width:680px){
 .rm-scroll{display:none}.rm-agenda{display:block}
 .iq-pro-toolbar{padding:18px}
 .iq-pro-toolbar h3{font-size:var(--iq-type-lead-size)}
 .iq-pro-toolbar>.iq-pro-actions{justify-content:flex-start;gap:12px}
 .iq-pro .iq-btn.sm{font-size:var(--iq-type-caption-size)}
 .iq-pro-inspector{padding:18px}
 .rm-edit-fields{grid-template-columns:1fr 1fr;gap:12px}
 .rm-edit-fields>.iq-btn{grid-column:1/-1}
 .rm-link-fields{grid-template-columns:1fr}
 .iq-pro-dock{padding:16px 18px}
 .iq-pro-dock>.iq-pro-actions{width:100%;justify-content:flex-end}
 .iq-pro-foot{padding:12px 18px}
 .graph-body.has-inspector{grid-template-columns:minmax(0,1fr)}
 .graph-canvas{display:none}.graph-list{display:block;padding:16px}
 .graph-view-switch{display:none}
 .graph-inspector.iq-pro-inspector{border-left:0;border-top:1px solid var(--iq-line);max-height:none}
 .graph-tools{padding:12px 14px;gap:6px}
 .graph-presence-count{flex-basis:100%;margin:4px 0 0}
 .graph-presence-count:empty{display:none}
 .iq-chart-plot{padding:6px 12px}
 .iq-chart-legend{padding:14px 16px 4px}
 .iq-chart-bottom{padding:12px 16px}
 .iq-chart-table th,.iq-chart-table td{padding:10px 16px}
 .extension-demo-head{align-items:center}
 .extension-demo-head>div{flex-wrap:wrap}
 .extension-demo-fields{padding:20px}
 .extension-demo-fields h3{font-size:var(--iq-type-lead-size)}
 .extension-example-links{grid-template-columns:1fr}
}
@container iqpro (max-width:390px){
 .iq-pro h3{font-size:var(--iq-type-title-size)}
 .iq-pro-toolbar>.iq-pro-actions{gap:10px}
 .iq-pro-segment{width:100%}
 .iq-pro-segment>.iq-btn{flex:1;min-width:0}
 .rm-edit-fields{grid-template-columns:1fr}
 .iq-pro-dock>.iq-pro-actions>.iq-btn{flex:1;padding-inline:8px}
 .extension-demo-head>iq-select{width:100%}
 .extension-demo-fields{padding:18px}
 .iq-tag-token{max-width:100%}
}
@media(prefers-reduced-motion:reduce){
 .iq-pro *,.iq-remote-control *{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}
@media(forced-colors:active){
 .iq-pro button:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])),.iq-remote-option.active{outline:2px solid Highlight!important;outline-offset:-2px}
 .rm-bar,.graph-node,.iq-tag-token{border:1px solid CanvasText}
 .iq-chart-series,.iq-chart-point,.rm-edge-line,.graph-edge-line{stroke:CanvasText}
 .iq-chart-mark{fill:CanvasText}
 .graph-node.is-selected{outline:2px solid Highlight}
}

.graph-empty{position:absolute;inset:0 0 60px;pointer-events:none}

.extension-demo-commit-actions{display:flex;align-items:center;gap:10px;padding:16px 0;font-size:var(--iq-type-caption-size);color:var(--iq-muted);flex-wrap:wrap}.extension-demo-commit-actions[hidden]{display:none}

/* Selected text and annotations must use the same foreground as their focused surface. */
.rm-label[aria-pressed=true],.rm-label:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){color:var(--iq-focus-text);background:var(--iq-focus-fill)}
.rm-label[aria-pressed=true] b,.rm-label[aria-pressed=true] small,.rm-label[aria-pressed=true] .rm-label-icon,
.rm-label:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])) b,.rm-label:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])) small,.rm-label:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])) .rm-label-icon,
.rm-agenda-row[aria-pressed=true] b,.rm-agenda-row[aria-pressed=true] small,.rm-agenda-row[aria-pressed=true] .rm-label-icon,
.rm-agenda-row:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])) b,.rm-agenda-row:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])) small,.rm-agenda-row:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])) .rm-label-icon,
.graph-list-item>button[aria-pressed=true] small,.graph-list-item>button:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])) small{color:var(--iq-focus-text)}
.extension-example-links>a{min-width:0;overflow-wrap:anywhere}
.extension-scenarios{container-type:inline-size}
@container (max-width:720px){.extension-example-links{grid-template-columns:repeat(2,minmax(0,1fr))}}
@container (max-width:440px){.extension-example-links{grid-template-columns:minmax(0,1fr)}.extension-example-links>a{padding:20px}}
@media(max-width:680px){.iq-pro-inspector{scroll-margin-top:132px}}



/* 05.2 state contracts. Paired backgrounds and foregrounds deliberately win over
   the historical theme-specific rules. No consumer-side DOM/CSS patch required. */
:root .iq-btn.primary:not(:disabled):not([aria-disabled=true]),
:root .iq-btn.primary:is([aria-selected=true],[aria-pressed=true],.active):not(:disabled){background:var(--iq-primary);color:var(--iq-on-primary);border-color:transparent}
:root .iq-btn.primary:not(:disabled):not([aria-disabled=true]):is(:hover,:active){background:var(--iq-primary);color:var(--iq-on-primary)}
:root .iq-btn.secondary:not(:disabled){color:var(--iq-ink)}
:root .iq-btn.primary:not(:disabled):focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])),
:root .iq-btn.secondary:not(:disabled):focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])),
:root .iq-btn.ghost:not(:disabled):focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])),
:root .iq-btn.accent:not(:disabled):focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])),
:root .iq-btn:not(:disabled)[aria-pressed=true]:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){
 background:var(--iq-focus-fill);color:var(--iq-focus-text);border-color:transparent;
 box-shadow:inset 0 -3px var(--iq-focus);outline:0;text-decoration:none;
}
:root .iq-btn:is(.primary,.secondary,.accent,.ghost):not(:disabled):focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"]))>*{color:inherit}
:root .iq-btn.primary:disabled{background:var(--iq-primary);color:var(--iq-on-primary)}
:root .iq-btn.secondary:disabled{background:var(--iq-surface);color:var(--iq-muted)}
:root .iq-pro-segment>.iq-btn[aria-pressed=true]:not(:disabled){background:var(--iq-raised);color:var(--iq-ink);box-shadow:var(--iq-shadow-1)}
:root .iq-pro-segment>.iq-btn:not(:disabled):focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){background:var(--iq-focus-fill);color:var(--iq-focus-text);box-shadow:inset 0 -2px var(--iq-focus)}
.iq-pro-state.is-error .iq-pro-state-icon{background:var(--iq-danger-fill);color:var(--iq-on-danger)}
.iq-pro-state-icon{flex:0 0 48px;aspect-ratio:1;align-self:center}
.iq-remote-popup:not(.has-results) .iq-remote-foot{border-top:0;padding-top:8px}
:root .iq-tag-token{background:var(--iq-tag-fill);color:var(--iq-tag-text);border:1px solid var(--iq-line);min-height:32px}
:root .iq-tag-token>span,:root .iq-tag-token>button{color:var(--iq-tag-text)}
:root .iq-tag-token>button:not(:disabled):focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){color:var(--iq-focus-text);background:var(--iq-focus-fill)}
:root .plan-day.outside>.plan-day-head>time{opacity:1;color:var(--iq-calendar-adjacent-text)}
:root .plan-day.outside{opacity:1}
/* All chart instances now share one data renderer. Header and plot retain the
   editorial spacing, rounded columns and discreet axes of the established sample. */
.iq-data-chart{border:0;background:var(--iq-surface);border-radius:16px}
.iq-data-chart .iq-pro-toolbar{border-bottom:0;padding:24px 26px 10px}
.iq-data-chart .iq-pro-eyebrow{display:none}
.iq-data-chart .iq-chart-legend{padding:8px 22px}
.iq-data-chart .iq-chart-plot{padding:12px 20px 0}
.iq-data-chart .iq-chart-bottom{padding:16px 26px;min-height:64px;margin:0;gap:16px}
.iq-data-chart .iq-chart-bottom .iq-pro-subtitle{margin:0}
.iq-data-chart .iq-chart-mark{rx:7px}
.iq-data-chart .iq-data-grid line{opacity:.6}
.iq-data-chart .iq-data-axis{font-size:var(--iq-type-label-size);font-weight:400}
.iq-data-chart .iq-chart-series{stroke-width:2.5}
/* Spatial workbench: content, tools, canvas and inspector are separate regions. */
.graph-studio{background:var(--iq-raised);border:1px solid var(--iq-line);border-radius:16px}
.graph-studio-header{padding:22px 24px;background:var(--iq-raised);gap:16px}
.graph-studio-header h3{font-size:1.3125rem;line-height:1.35}
.graph-workbench{display:grid;grid-template-columns:54px minmax(0,1fr);min-height:650px;position:relative}
.graph-workbench.library-open{grid-template-columns:54px 224px minmax(0,1fr)}
.graph-toolrail{display:flex;flex-direction:column;align-items:center;padding:12px 6px;gap:6px;border-right:1px solid var(--iq-line);background:var(--iq-raised);z-index:9}
.graph-toolrail .iq-btn[aria-pressed=true]{background:var(--iq-ink);color:var(--iq-canvas)}
.graph-rail-divider{height:1px;background:var(--iq-line);width:22px;margin:6px 0}
.graph-library{padding:18px 14px;background:var(--iq-raised);border-right:1px solid var(--iq-line);z-index:8}
.graph-section-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}
.graph-library>.iq-pro-subtitle{font-size:var(--iq-type-caption-size);line-height:1.6;margin-bottom:18px}
.graph-library-item{display:flex;align-items:center;gap:10px;width:100%;min-height:66px;padding:10px 8px;border:0;border-radius:9px;text-align:left;background:transparent;color:var(--iq-ink);cursor:pointer}
.graph-library-item:hover{background:var(--iq-surface)}
.graph-library-item:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){background:var(--iq-focus-fill);color:var(--iq-focus-text)}
.graph-library-item>span:nth-child(2){flex:1;min-width:0}.graph-library-item b{display:block;font-size:var(--iq-type-label-size);font-weight:600}.graph-library-item small{display:block;font-size:var(--iq-type-meta-size);line-height:1.4;margin-top:3px;color:var(--iq-muted)}
.graph-type-icon{display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;border-radius:8px;background:var(--iq-surface);color:var(--iq-muted)}
.graph-type-icon.type-task{background:var(--iq-accent-soft);color:var(--iq-accent)}
.graph-type-icon.type-checklist{background:var(--iq-calendar-complete-bg);color:var(--iq-calendar-complete-ink)}
.graph-type-icon.type-note,.graph-type-icon.type-media{background:var(--iq-surface);color:var(--iq-ink)}
.graph-body{min-width:0;display:grid;grid-template-columns:minmax(0,1fr)}
.graph-body.has-inspector{grid-template-columns:minmax(0,1fr) 300px}
.graph-main{min-width:0}
.graph-canvas{height:650px;min-height:650px;background-color:var(--iq-surface);background-image:radial-gradient(var(--iq-line) .75px,transparent .75px);background-size:24px 24px;position:relative;overflow:hidden;isolation:isolate}
.graph-canvas.is-panning{cursor:grab}
.graph-world{position:absolute;inset:0 auto auto 0;transform-origin:0 0;will-change:auto}
.graph-canvas-caption{position:absolute;top:14px;left:18px;display:flex;gap:18px;font-size:var(--iq-type-meta-size);color:var(--iq-muted);background:var(--iq-surface);padding:4px 8px;border-radius:6px;pointer-events:none}
.graph-node{padding:0;border-radius:12px;background:var(--iq-graph-node);border:1px solid var(--iq-graph-node-border);box-shadow:0 3px 6px #00000005,0 8px 20px #00000004;display:flex;flex-direction:column;overflow:visible;transition:box-shadow var(--iq-motion-standard) var(--iq-ease),border-color var(--iq-motion-standard) var(--iq-ease)}
.graph-node:hover{border-color:var(--iq-control);box-shadow:var(--iq-shadow-1)}
.graph-node.is-selected,.graph-node:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){border-color:var(--iq-accent);box-shadow:inset 0 -2px var(--iq-accent),var(--iq-shadow-1);outline:0}
.graph-node.is-error{border-color:var(--iq-danger)}
.graph-node.is-group{background:transparent;border:1px dashed var(--iq-control);box-shadow:none;padding-top:4px}
.graph-node.is-group .graph-node-head{padding:6px 14px 0;height:28px;min-height:28px}.graph-node.is-group .graph-node-content{padding:5px 16px;overflow:hidden;flex:none}.graph-node.is-group .graph-node-content h4{font-size:var(--iq-type-label-size);color:var(--iq-muted)}
.graph-node.is-group .graph-type-icon{display:none}
.graph-node.is-group .graph-node-head>span{font-size:var(--iq-type-meta-size);letter-spacing:var(--iq-tracking-caps)}
.graph-node-head{display:flex;align-items:center;justify-content:space-between;min-height:52px;gap:12px;padding:12px 14px 6px;margin:0;flex-shrink:0;color:var(--iq-muted);font-size:var(--iq-type-meta-size);line-height:1.35;touch-action:none;cursor:grab;user-select:none}
.graph-node-head>span{display:flex;align-items:center;gap:8px}
.graph-node-head .graph-type-icon{width:24px;height:24px;flex-basis:24px;border-radius:7px}
.graph-node-more{border:0;background:none;color:var(--iq-muted);width:28px;height:28px;padding:0;display:grid;place-items:center;border-radius:6px;cursor:pointer}
.graph-node-more:hover{background:var(--iq-surface)}
.graph-node-more:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){background:var(--iq-focus-fill);color:var(--iq-focus-text)}
.graph-node-content{padding:8px 16px 16px;flex:1;min-height:0;overflow:auto}
.graph-node-content h4{font-size:.9375rem;font-weight:600;line-height:1.4;letter-spacing:var(--iq-tracking-h2)}
.graph-node-content p{font-size:var(--iq-type-label-size);line-height:1.55;margin:9px 0 0;color:var(--iq-muted)}
.graph-checklist{gap:9px;margin-top:12px}
.graph-checklist label{font-size:var(--iq-type-caption-size);line-height:1.4;align-items:flex-start;gap:8px}
.graph-checklist input{width:14px;height:14px;margin:1px 0 0}
.graph-image-frame{margin-top:12px;height:calc(100% - 32px);min-height:70px;background:var(--iq-surface);border-radius:7px;overflow:hidden}
.graph-image-frame img{height:100%;object-fit:contain;max-height:130px}
.graph-node-state{position:static;display:flex;align-items:center;gap:6px;padding:0 16px 12px;color:var(--iq-danger);font-size:var(--iq-type-meta-size);font-weight:500;background:none}
.graph-node-state.is-done{color:var(--iq-success)}
.graph-port{width:24px;height:24px;opacity:1;transform:none;border-radius:8px}
.graph-port::after{width:7px;height:7px;border:2px solid var(--iq-raised);background:var(--iq-control);outline:1px solid var(--iq-control)}
.graph-port.in{left:-12px;top:calc(50% - 12px)}.graph-port.out{left:auto;right:-12px;top:calc(50% - 12px)}
.graph-port.side-bottom{top:auto!important;bottom:-12px;right:auto!important;left:calc(50% - 12px)!important}
.graph-port.side-top{top:-12px!important;bottom:auto;right:auto!important;left:calc(50% - 12px)!important}
.graph-port.side-left{top:calc(50% - 12px)!important;left:-12px!important;right:auto!important}
.graph-port.side-right{top:calc(50% - 12px)!important;right:-12px!important;left:auto!important}
.graph-port.out:hover::after{background:var(--iq-accent)}
.graph-edge-line{stroke:var(--iq-graph-edge);stroke-width:1.4;vector-effect:non-scaling-stroke}
.graph-edge text{font:var(--iq-type-meta-size) var(--iq-font);fill:var(--iq-muted);stroke:var(--iq-surface);stroke-width:8px;paint-order:stroke;stroke-linejoin:round}
.graph-edge.selected text{fill:var(--iq-accent)}
.graph-viewport-controls{left:50%;bottom:18px;transform:translateX(-50%);border-radius:12px;padding:5px;background:var(--iq-raised);box-shadow:var(--iq-shadow-1);gap:2px}
.graph-control-divider{width:1px;height:18px;background:var(--iq-line);margin:0 3px}
.graph-minimap{right:16px;bottom:18px;width:90px;height:56px;opacity:.85}
.graph-link-notice{top:16px;background:var(--iq-raised)}.graph-link-notice>span{display:flex;align-items:center;gap:8px}
.graph-inspector.iq-pro-inspector{background:var(--iq-raised);max-height:650px;padding:20px;gap:18px}
.graph-inspector-end{margin-top:4px}
.graph-studio-footer{background:var(--iq-raised);padding:12px 20px;min-height:48px;justify-content:space-between;font-size:var(--iq-type-meta-size)}
.graph-keyboard-help{position:relative;flex:0 0 auto}.graph-keyboard-help>summary{display:flex;align-items:center;gap:6px;cursor:pointer;list-style:none}.graph-keyboard-help>div{position:absolute;bottom:30px;right:0;width:300px;max-width:80vw;padding:16px;background:var(--iq-raised);border:1px solid var(--iq-line);border-radius:10px;box-shadow:var(--iq-shadow-2);line-height:1.7;z-index:12}
.graph-studio.is-expanded{inset:12px;z-index:200;border-radius:16px}
.graph-studio.is-expanded .graph-canvas{height:calc(100dvh - 190px);min-height:500px}
.graph-studio.is-expanded .graph-inspector{max-height:calc(100dvh - 190px)}
@container iqpro (max-width:1000px){
 .graph-workbench.library-open{grid-template-columns:54px minmax(0,1fr)}
 .graph-library{position:absolute;top:0;bottom:0;left:54px;width:224px;box-shadow:var(--iq-shadow-2);overflow:auto}
 .graph-body.has-inspector{grid-template-columns:minmax(0,1fr) 260px}
 .graph-inspector.iq-pro-inspector{padding:16px}
 .graph-body.has-inspector .graph-minimap{display:none}
}
@container iqpro (max-width:680px){
 .graph-workbench,.graph-workbench.library-open{display:flex;flex-direction:column;min-height:0}
 .graph-toolrail{flex-direction:row;align-items:center;justify-content:flex-start;padding:10px 14px;border-right:0;border-bottom:1px solid var(--iq-line);gap:6px}
 .graph-toolrail [data-pro-action=pan],.graph-toolrail [data-pro-action=select-tool]{display:none}
 .graph-rail-divider{width:1px;height:20px;margin:0 6px}
 .graph-library{position:static;width:auto;box-shadow:none;border-right:0;border-bottom:1px solid var(--iq-line);padding:16px}
 .graph-library-item{min-height:58px}
 .graph-body.has-inspector{grid-template-columns:minmax(0,1fr)}
 .graph-canvas{display:none}.graph-list{display:block;padding:16px}
 .graph-inspector.iq-pro-inspector{max-height:none;border-left:0;border-top:1px solid var(--iq-line)}
 .graph-keyboard-help{display:none}
 .graph-studio-header{padding:18px;gap:14px}.graph-studio-header h3{font-size:var(--iq-type-lead-size)}
 .graph-studio-footer{padding:12px 16px}
 .iq-data-chart .iq-pro-toolbar{padding:20px 18px 10px}
 .iq-data-chart .iq-chart-plot{padding:8px 8px 0}
 .iq-data-chart .iq-chart-bottom{padding:16px 18px}
}
@media(prefers-reduced-motion:reduce){.graph-studio *{transition:none!important;animation:none!important;scroll-behavior:auto}}
.rm-label-cell{position:sticky;left:0;z-index:4;width:var(--rm-name);flex-shrink:0;display:flex;align-items:center;padding-left:calc(12px + var(--rm-indent)*16px);background:var(--iq-raised);border-right:1px solid var(--iq-line)}
.rm-label-cell>.rm-label{position:static;width:auto;flex:1;min-width:0;padding:12px 12px 12px 4px;border:0;background:transparent}
.rm-collapse,.rm-collapse-space{display:grid;place-items:center;width:24px;min-width:24px;height:30px;padding:0;border:0;background:transparent;color:var(--iq-muted);border-radius:6px}
.rm-collapse:hover{background:var(--iq-surface)}.rm-collapse:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){background:var(--iq-focus-fill);color:var(--iq-focus-text)}
.rm-row.selected .rm-label-cell{background:var(--iq-focus-fill)}
.rm-label-cell .rm-label small{font-size:var(--iq-type-meta-size);line-height:1.5}
.graph-document-preview{margin-top:12px;background:var(--iq-surface);padding:14px;border-radius:7px;font-size:var(--iq-type-caption-size);line-height:1.5;color:var(--iq-muted)}
.graph-document-preview b{font-size:var(--iq-type-meta-size);letter-spacing:var(--iq-tracking-caps);display:block;margin-bottom:6px;color:var(--iq-ink)}
.graph-relations{border-top:1px solid var(--iq-line);padding-top:16px}
.graph-relations h5{font-size:var(--iq-type-caption-size);color:var(--iq-muted);font-weight:500;margin:0 0 8px}
.graph-relation-row{display:flex;align-items:center;gap:8px;padding:9px 8px;border-radius:7px;color:var(--iq-ink);background:var(--iq-surface);width:100%;border:0;text-align:left;font-size:var(--iq-type-caption-size);margin-top:6px}
.graph-relation-row span{flex:1;min-width:0;overflow-wrap:anywhere}.graph-relation-row small{display:block;color:var(--iq-muted);font-size:var(--iq-type-meta-size)}
iq-image-crop{display:block;min-width:0;width:100%}
.iq-crop-layout{display:grid;grid-template-columns:minmax(180px,360px) minmax(180px,1fr);gap:32px;padding:28px;align-items:center}
.iq-crop-stage{position:relative;aspect-ratio:1;background:var(--iq-surface);border-radius:14px;overflow:hidden;touch-action:none;outline:0;isolation:isolate}
.iq-crop-stage.has-image{cursor:grab}.iq-crop-stage:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){box-shadow:inset 0 -3px var(--iq-focus)}
.iq-crop-stage canvas{display:block;position:absolute;inset:0;width:100%;height:100%;z-index:-1}
.iq-crop-mask{position:absolute;inset:0;border-radius:50%;box-shadow:0 0 0 100px #0008;pointer-events:none;border:1px solid #fffc}
.iq-crop-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:24px;text-align:center;font-size:var(--iq-type-label-size);color:var(--iq-muted)}
.iq-crop-placeholder b{font-size:var(--iq-type-interface-size);font-weight:500;color:var(--iq-ink)}.iq-crop-placeholder[hidden],.iq-crop-mask[hidden]{display:none}
.iq-crop-controls{display:flex;flex-direction:column;align-items:stretch;gap:22px;min-width:0}
.iq-crop-controls small{font-size:var(--iq-type-caption-size);color:var(--iq-muted);line-height:1.6}
.iq-crop-range{display:grid;gap:12px;font-size:var(--iq-type-label-size);line-height:1.5}.iq-crop-range>span{display:flex;align-items:center;justify-content:space-between;gap:12px}.iq-crop-range output{color:var(--iq-muted);font-size:var(--iq-type-caption-size);font-variant-numeric:tabular-nums}
.iq-crop-range input{width:100%;accent-color:var(--iq-accent);margin:0;cursor:pointer;min-height:24px}
.iq-crop-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 28px;border-top:1px solid var(--iq-line);flex-wrap:wrap}
.iq-crop-footer p{font-size:var(--iq-type-caption-size);color:var(--iq-muted);max-width:340px}.iq-crop-footer .iq-pro-error{color:var(--iq-danger)}
.iq-crop-footer [hidden]{display:none}
@media(max-width:700px){.iq-crop-layout{grid-template-columns:1fr;gap:24px;padding:20px}.iq-crop-stage{max-width:320px;width:100%;margin:auto}.iq-crop-footer{padding:16px 20px}.iq-crop-footer .iq-pro-actions{width:100%;justify-content:flex-end}}


:root .iq-btn.white:not(:disabled):not([aria-disabled=true]){background:var(--iq-white);color:var(--iq-on-white);border-color:transparent}
:root .iq-btn.white:not(:disabled):not([aria-disabled=true]):is(:hover,:active){background:var(--iq-white);color:var(--iq-on-white)}
:root .iq-btn.danger:not(:disabled):not([aria-disabled=true]){background:var(--iq-danger-bg);color:var(--iq-danger);border-color:transparent}
/* 05.2 final state pairing: filled actions never inherit the low-contrast
   generic pressed foreground. Focus wins as an entire pair, including hover. */
:root .iq-btn.accent:not(:disabled):not([aria-disabled=true]){background:var(--iq-accent-fill);color:var(--iq-on-accent);border-color:transparent}
:root .iq-btn.accent:not(:disabled):not([aria-disabled=true]):is(:hover,:active){background:var(--iq-accent-hover-fill);color:var(--iq-on-accent)}
:root .iq-btn:is(.primary,.secondary,.ghost,.accent,.danger,.white):not(:disabled):not([aria-disabled=true]):focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){background:var(--iq-focus-fill);color:var(--iq-focus-text);box-shadow:inset 0 -3px var(--iq-focus);outline:0;border-color:transparent;text-decoration:none}
:root .iq-btn:is(.primary,.secondary,.ghost,.accent,.danger,.white):not(:disabled):not([aria-disabled=true]):focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"]))>*{color:inherit}
.graph-canvas.is-linking .graph-port.in:not(:disabled)::after{background:var(--iq-accent);outline-color:var(--iq-accent);width:9px;height:9px}
.graph-canvas.is-linking .graph-port.in:disabled{opacity:.4}
.graph-library-item:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])) small{color:inherit}
.graph-node.is-selected .graph-port:not(:disabled)::after{outline-color:var(--iq-accent)}



/* The required remove icon uses a paired palette for every interactive state. */
:root .iq-tag-token>button:not(:disabled):is(:hover,:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])),[aria-pressed=true]){background:var(--iq-focus-fill);color:var(--iq-focus-text);outline:0}

/* Shared editor density and controlled footer controls. No product selectors. */
.markdown-editor .md-footer-actions{display:flex;align-items:center;flex-wrap:wrap;gap:var(--iq-space-2);min-width:0}
.markdown-editor .md-footer-toggle{align-items:flex-start;gap:var(--iq-space-2);min-height:32px;padding:4px 0;cursor:pointer}
.md-footer-toggle-copy{display:grid;gap:1px;line-height:1.4}
.md-footer-toggle-label{font-size:var(--iq-type-interface-size);font-weight:500;color:var(--iq-ink)}
.md-footer-toggle-hint{font-size:var(--iq-type-meta-size);color:var(--iq-muted)}
.md-footer-toggle-hint[hidden]{display:none}
.md-footer-toggle[data-tone=warning][data-checked=true] .md-footer-toggle-label{color:var(--iq-warning)}
.markdown-editor footer:has(.md-footer-actions:not([hidden])){flex-wrap:wrap}
.markdown-editor footer .md-footer-actions>.iq-btn{display:inline-flex;align-items:center;justify-content:center;min-height:var(--iq-control-sm);height:auto;padding:var(--iq-space-2) var(--iq-space-3);border:1px solid var(--iq-control);border-radius:var(--iq-radius-pill);background:transparent;color:var(--iq-muted);font-size:var(--iq-type-caption-size);line-height:18px;text-align:center;white-space:normal;user-select:none;-webkit-user-select:none}
.markdown-editor footer .md-footer-actions>.iq-btn:hover:not(:disabled){background:var(--iq-hover);color:var(--iq-ink)}
.markdown-editor footer .md-footer-actions>.iq-btn[aria-pressed=true]{background:var(--iq-primary);color:var(--iq-on-primary);border-color:var(--iq-primary)}
.markdown-editor footer .md-footer-actions>.iq-btn[aria-pressed=true][data-tone=warning]{background:var(--iq-warning-fill);color:var(--iq-on-warning);border-color:var(--iq-warning-fill)}
.markdown-editor footer .md-footer-actions>.iq-btn:disabled{opacity:.45;cursor:default}
iq-markdown-editor[density=compact] .md-editor-head{padding:var(--iq-space-2) var(--iq-space-3)}
iq-markdown-editor[density=compact] .md-toolbar{padding:var(--iq-space-1) var(--iq-space-2)}
iq-markdown-editor[density=compact] .markdown-editor .md-input{min-height:96px;padding:var(--iq-space-3) var(--iq-space-4)}
iq-markdown-editor[density=compact] .md-preview{min-height:56px;padding:var(--iq-space-3) var(--iq-space-4)}
iq-markdown-editor[density=compact] .markdown-editor footer{min-height:44px;padding:var(--iq-space-1) var(--iq-space-2)}
iq-markdown-editor[density=compact][preview-on-blur] .md-editor-head{display:none}
iq-markdown-editor[density=compact][preview-on-blur]:not([submit-label]) .markdown-editor footer:not(:has(.md-footer-actions:not([hidden]))){display:none}
@media(forced-colors:active){.markdown-editor footer .md-footer-actions>.iq-btn[aria-pressed=true]{border:2px solid Highlight;outline:1px solid Highlight}}

/* Requested neutral button focus. Keyboard behavior is unchanged; fields retain visible focus. */
:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"]):focus{outline:none}

/* ---------- Public variants for dense product surfaces (0.6.0-vnext.3) ---------- */
/* Form dialog: sticky head and footer around a scrolling body. Markup:
   <dialog class="iq-dialog" data-layout="form"><form class="iq-dialog-form"><header class="iq-dialog-head">…</header>
   <div class="iq-dialog-body">…</div><footer class="iq-dialog-footer">…</footer></form></dialog> */
.iq-dialog[data-layout=form]{display:flex;flex-direction:column;overflow:hidden}
.iq-dialog[data-layout=form][data-size=wide]{width:min(880px,calc(100vw - 32px))}
.iq-dialog-form{display:flex;flex-direction:column;min-height:0;max-height:inherit;flex:1}
.iq-dialog[data-layout=form] .iq-dialog-head{flex:none;margin:0;padding:var(--iq-space-6);gap:var(--iq-space-4);border-bottom:1px solid var(--iq-line);align-items:flex-start}
.iq-dialog[data-layout=form] .iq-dialog-head h2{font-size:var(--iq-type-heading3-size);font-weight:var(--iq-type-heading3-weight);line-height:1.25;letter-spacing:var(--iq-type-heading3-letterSpacing)}
.iq-dialog[data-layout=form] .iq-dialog-head p{max-width:65ch;margin-top:var(--iq-space-2);font-size:var(--iq-type-label-size);line-height:1.6}
.iq-dialog[data-layout=form] .iq-dialog-head>.iq-btn{margin:0;flex:none}
.iq-dialog-body{flex:1;min-height:0;overflow:auto;padding:var(--iq-space-6);display:grid;gap:var(--iq-space-5);align-content:start}
.iq-dialog[data-layout=form] .iq-dialog-footer{flex:none;margin:0;padding:var(--iq-space-5) var(--iq-space-6);border-top:1px solid var(--iq-line)}
/* Drawer density: a document title bar, not a dialog headline. */
.iq-dialog[data-layout=form].iq-drawer .iq-dialog-head{padding-block:var(--iq-space-2);align-items:center}
.iq-dialog[data-layout=form].iq-drawer .iq-dialog-head h2{font-size:var(--iq-type-title-size);font-weight:var(--iq-type-title-weight);line-height:1.4;letter-spacing:var(--iq-type-title-letterSpacing)}
@media (max-width:760px){
 .iq-dialog[data-layout=form] .iq-dialog-head,.iq-dialog-body{padding:var(--iq-space-5)}
 .iq-dialog[data-layout=form] .iq-dialog-footer{padding:var(--iq-space-4) var(--iq-space-5)}
 .iq-dialog[data-layout=form] .iq-dialog-head h2{}
}
/* Select density and a visually hidden label that stays in the accessibility tree. */
iq-select[density=compact] .iq-select-trigger{min-height:36px;padding:6px 10px;font-size:var(--iq-type-label-size)}
iq-select[label-hidden]>.iq-control-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
:is(iq-combobox,iq-date-field)[label-hidden]>.iq-control-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
/* Context switcher: a menu trigger that names the current workspace, project or sort. */
.iq-switcher{gap:var(--iq-space-2);height:36px;min-width:0;max-width:100%;padding-inline:var(--iq-space-2);font-weight:var(--iq-type-interface-weight);white-space:nowrap;line-height:1.2}
.iq-switcher>svg{flex:none}
.iq-switcher-label{min-width:0;max-width:var(--iq-switcher-max,220px);overflow:hidden;text-overflow:ellipsis}
.iq-switcher[aria-current],.iq-switcher[data-emphasis=strong]{font-weight:var(--iq-type-label-weight)}
.iq-switcher[data-tone=muted]{color:var(--iq-muted)}
@media (max-width:1100px){.iq-switcher{--iq-switcher-max:150px}}
@media (max-width:760px){.iq-switcher{--iq-switcher-max:110px;padding-inline:var(--iq-space-1);gap:var(--iq-space-1)}}
/* ---------- Menu sections (0.6.0-vnext.5): grouped actions in one dropdown ---------- */
.iq-menu-popup{max-height:min(72vh,560px);overflow:auto}
.iq-menu-popup .iq-menu-section{margin:var(--iq-space-3) 10px var(--iq-space-1);font-size:var(--iq-type-meta-size);font-weight:600;color:var(--iq-muted)}
.iq-menu-popup .iq-menu-section:first-child{margin-top:var(--iq-space-1)}
/* ---------- Command dialog (0.6.0-vnext.6): public kind="command", not tied to a demo id ---------- */
iq-dialog[kind=command] .iq-dialog-inner{padding:0}
iq-dialog[kind=command] .iq-dialog{width:min(620px,calc(100vw - 32px));margin-top:min(18vh,160px);padding:0}
iq-dialog[kind=command] .iq-command-input{padding:18px 20px}
iq-dialog[kind=command] .iq-command-input input{font-size:var(--iq-type-body-size)}
.iq-command-group{margin:var(--iq-space-2) 13px var(--iq-space-1);font-size:var(--iq-type-meta-size);font-weight:600;color:var(--iq-muted)}
.iq-command-group:first-child{margin-top:var(--iq-space-1)}
.iq-command-empty{margin:0;padding:var(--iq-space-4) 13px;color:var(--iq-muted);font-size:var(--iq-type-caption-size)}
.iq-command-list>button[aria-selected=true]{background:var(--iq-surface)}
.iq-command-list>button>kbd{font:var(--iq-type-meta-size) var(--iq-mono);color:var(--iq-muted)}
/* ---------- Tag picker (0.6.0-vnext.7): catalog tags with tone, search, creation and motion ---------- */
iq-tag-picker{display:grid;gap:var(--iq-space-2);position:relative;min-width:0}
.iq-tag-picker-field{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-height:44px;padding:6px 8px;border:1px solid var(--iq-control);border-radius:9px;background:var(--iq-raised);cursor:text}
.iq-tag-picker-field:focus-within{border-color:var(--iq-focus);box-shadow:inset 0 0 0 1px var(--iq-focus)}
.iq-tag-picker-values{display:contents}
.iq-tag-picker-field>input{flex:1 1 120px;min-width:80px;height:30px;padding:0 4px;border:0;outline:0;background:none;color:var(--iq-ink);font:inherit;font-size:var(--iq-type-label-size)}
.iq-tag-picker-field>input::placeholder{color:var(--iq-muted)}
.iq-tag-picker-field .iq-tag{cursor:default}
.iq-tag .iq-tag-remove{display:inline-grid;place-items:center;width:24px;height:24px;min-height:0;margin:-5px -8px -5px -3px;padding:0;border:0;border-radius:var(--iq-radius-xs);background:transparent;color:inherit;opacity:.7;cursor:pointer}
.iq-tag .iq-tag-remove:hover{opacity:1;background:color-mix(in srgb,currentColor 14%,transparent)}
.iq-tag .iq-tag-remove:focus-visible{outline:2px solid var(--iq-focus);outline-offset:-2px;opacity:1}
.iq-tag-picker-list{position:absolute;z-index:30;left:0;right:0;top:100%;margin-top:4px;max-height:240px;overflow:auto;padding:6px;border:1px solid var(--iq-raised-edge);border-radius:12px;background:var(--iq-raised);box-shadow:var(--iq-shadow-2)}
.iq-tag-picker-list[hidden]{display:none}
.iq-tag-picker-option{display:flex;align-items:center;gap:8px;width:100%;min-height:34px;padding:4px var(--iq-space-2);border:0;border-radius:var(--iq-radius-sm);background:transparent;color:var(--iq-ink);font:inherit;font-size:var(--iq-type-label-size);text-align:left;cursor:pointer}
.iq-tag-picker-option[aria-selected=true],.iq-tag-picker-option:hover{background:var(--iq-hover)}
.iq-tag-picker-empty{margin:0;padding:8px;color:var(--iq-muted);font-size:var(--iq-type-caption-size)}
@keyframes iq-tag-in{from{opacity:0;transform:scale(.85)}to{opacity:1;transform:none}}
@keyframes iq-tag-out{from{opacity:1;transform:none}to{opacity:0;transform:scale(.85)}}
.iq-tag[data-entering]{animation:iq-tag-in var(--iq-motion-fast) var(--iq-ease) both}
.iq-tag[data-leaving]{animation:iq-tag-out var(--iq-motion-fast) var(--iq-ease) both;pointer-events:none}
@media (prefers-reduced-motion:reduce){.iq-tag[data-entering],.iq-tag[data-leaving]{animation:none}}
/* ---------- Roadmap fill (0.6.0-vnext.8): the host gives a height, the grid is the only scroller ---------- */
iq-roadmap[fill]{display:flex;flex-direction:column;min-height:0;height:100%}
iq-roadmap[fill]>.iq-roadmap{flex:1;min-height:0;display:flex;flex-direction:column}
iq-roadmap[fill] .rm-scroll{flex:1;min-height:0;max-height:none}
/* flow: the roadmap grows to its content and the page is the only vertical scroller; the grid scrolls sideways only. */
iq-roadmap[flow] .rm-scroll{max-height:none;overflow-y:hidden;overscroll-behavior:auto}
/* ---------- Calendar entries as task cards (0.6.0-vnext.8) ---------- */
.plan-day .task-card.plan-card{display:flex;flex-direction:column;gap:var(--iq-space-1);width:100%;margin:0 0 var(--iq-space-2);padding:10px 12px;border-radius:10px;text-align:left;color:var(--iq-ink);font:inherit;cursor:pointer}
.plan-card .task-card-top{margin:0;gap:var(--iq-space-2)}
.plan-card .task-identity{display:flex;align-items:center;gap:6px;min-width:0}
.plan-card .task-identity>.task-card-id{background:none;padding:0;border-radius:0}
.plan-card .task-card-title{min-height:0;font-size:var(--iq-type-caption-size);font-weight:600;line-height:1.35;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.plan-card .task-card-footer{margin:var(--iq-space-1) 0 0;gap:var(--iq-space-2);font-size:var(--iq-type-meta-size);color:var(--iq-muted)}
.plan-card.done .task-card-title{color:var(--iq-muted);text-decoration:line-through}
/* ---------- Loading without flicker (0.6.0-vnext.8) ----------
   .iq-loading holds skeletons (iq-skeleton) and stays invisible for the first 180ms, so fast loads never flash.
   .iq-reveal fades freshly mounted content in, so skeleton → content is one smooth step. */
@keyframes iq-loading-appear{from{opacity:0}to{opacity:1}}
@keyframes iq-reveal{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
.iq-loading{display:grid;gap:var(--iq-space-3);animation:iq-loading-appear var(--iq-motion-standard) var(--iq-ease) var(--iq-loading-delay) backwards}
.iq-reveal{animation:iq-reveal var(--iq-motion-standard) var(--iq-ease) backwards}
@media (prefers-reduced-motion:reduce){.iq-reveal{animation:none}}
/* ---------- File picker (0.6.0-vnext.9): one picker for every host upload ---------- */
iq-file-picker{display:block;min-width:0}
.iq-file-picker-row{display:flex;align-items:center;gap:var(--iq-space-3);width:100%;min-height:52px;padding:var(--iq-space-3) var(--iq-space-4);border:1px dashed var(--iq-control);border-radius:10px;background:var(--iq-raised);color:var(--iq-ink);font:inherit;text-align:left;cursor:pointer;transition:background-color var(--iq-motion-fast) var(--iq-ease),border-color var(--iq-motion-fast) var(--iq-ease)}
.iq-file-picker-row>svg{flex:none;color:var(--iq-muted)}
.iq-file-picker-row:hover:not(:disabled),.iq-file-picker-row.dragover{border-color:var(--iq-focus);background:var(--iq-accent-soft)}
.iq-file-picker-row:disabled{cursor:default;opacity:.55}
.iq-file-picker-copy{display:grid;gap:2px;min-width:0}
.iq-file-picker-row .iq-file-picker-copy>span{font-size:var(--iq-type-label-size);font-weight:500;color:var(--iq-ink)}
.iq-file-picker-row.file-dropwell{justify-content:flex-start;margin:0}
.iq-file-picker-copy>small{font-size:var(--iq-type-meta-size);color:var(--iq-muted)}
iq-file-picker .iq-dropzone{min-height:0}
.iq-tag.iq-tag-add{display:inline-flex;align-items:center;gap:4px;background:transparent;border:1px dashed var(--iq-control);color:var(--iq-muted);cursor:pointer}
.iq-tag.iq-tag-add:hover{border-style:solid;border-color:var(--iq-focus);color:var(--iq-ink);background:var(--iq-accent-soft)}
/* 0.6.0-vnext.12 · Property list: a compact side panel of fields, label on the left, value on the right.
   Controls stay quiet until hover or focus, so a column of properties reads as information, not as a form. */
.iq-properties{display:grid;gap:var(--iq-space-1);align-content:start;min-width:0}
.iq-properties :is(iq-select,iq-combobox,iq-date-field){display:grid;grid-template-columns:var(--iq-properties-label,88px) minmax(0,1fr);align-items:center;column-gap:var(--iq-space-2);max-width:none;width:100%;margin:0}
.iq-properties :is(iq-select,iq-combobox,iq-date-field)>.iq-control-label{grid-column:1;margin:0;font-size:var(--iq-type-meta-size);font-weight:500;color:var(--iq-muted)}
.iq-properties :is(iq-select,iq-combobox,iq-date-field)>:not(.iq-control-label){grid-column:2;min-width:0}
.iq-properties :is(.iq-select-value,[data-date-caption],.iq-combo-shell input){white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.iq-properties :is(.iq-select-trigger,.iq-date-trigger,.iq-combo-shell){min-height:36px;border-color:transparent;background:transparent;transition:border-color var(--iq-motion-fast) var(--iq-ease),background-color var(--iq-motion-fast) var(--iq-ease)}
.iq-properties :is(.iq-select-trigger,.iq-date-trigger,.iq-combo-shell):hover{border-color:var(--iq-line);background:var(--iq-raised)}
.iq-properties :is(.iq-select-trigger,.iq-date-trigger)[aria-expanded=true],.iq-properties .iq-combo-shell:focus-within{border-color:var(--iq-control);background:var(--iq-raised)}
@media (prefers-reduced-motion:reduce){.iq-properties :is(.iq-select-trigger,.iq-date-trigger,.iq-combo-shell){transition:none}}
@media (hover:none){.iq-properties :is(.iq-select-trigger,.iq-date-trigger,.iq-combo-shell){border-color:var(--iq-line)}}
/* 0.6.0-vnext.12 · Soft badge: the same meaning on a tinted background, for dense lists where many statuses sit side by side.
   The filled badge stays the one strong signal per object (for example a release status). */
.iq-badge.soft{background:var(--iq-recessed);color:var(--iq-muted);border:0;font-weight:500}
.iq-badge.soft.info{background:var(--iq-info-bg);color:var(--iq-info)}
.iq-badge.soft.planned{background:var(--iq-planned-bg);color:var(--iq-planned)}
.iq-badge.soft.success{background:var(--iq-success-bg);color:var(--iq-success)}
.iq-badge.soft.warning{background:var(--iq-warning-bg);color:var(--iq-warning)}
.iq-badge.soft.danger{background:var(--iq-danger-bg);color:var(--iq-danger)}
/* 0.6.0-vnext.13 · Switcher hover reads like the navigation: no filled background, the label is underlined
   (also while its menu is open). Keyboard focus keeps the DS focus treatment. */
.iq-switcher.iq-btn.ghost:hover,.iq-switcher.iq-btn.ghost[aria-expanded=true]{background:transparent;color:var(--iq-ink)}
.iq-switcher .iq-switcher-label{padding-block:2px 4px;text-decoration:underline 2px transparent;text-underline-offset:4px;transition:text-decoration-color var(--iq-motion-fast) var(--iq-ease)}
.iq-switcher:hover .iq-switcher-label,.iq-switcher[aria-expanded=true] .iq-switcher-label{text-decoration-color:currentColor}
@media (prefers-reduced-motion:reduce){.iq-switcher .iq-switcher-label{transition:none}}

/* Markdown editor: host actions at the end of the toolbar (only while editing) and a quiet action in the empty preview. */
.md-toolbar-actions{display:flex;align-items:center;gap:2px;margin-left:auto;padding-left:var(--iq-space-2);border-left:1px solid var(--iq-line)}
.md-toolbar-action{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 var(--iq-space-2);border:0;border-radius:6px;background:transparent;color:var(--iq-muted);font:500 var(--iq-type-caption-size)/1 var(--iq-font);cursor:pointer}
.md-toolbar-action:hover{background:var(--iq-hover);color:var(--iq-ink)}
.md-toolbar-action:focus-visible{outline:2px solid var(--iq-focus);outline-offset:1px}
@media(max-width:560px){.md-toolbar-action>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}}
.md-empty-action{margin:var(--iq-space-1) 0 0}
.md-empty-action .iq-btn{margin-left:calc(-1 * var(--iq-space-3))}

/* Inline title: a heading that is also its own input. No frame at rest; the frame appears on hover and focus. */
.iq-inline-title{display:block;margin:0 calc(-1 * var(--iq-space-2));width:calc(100% + 2 * var(--iq-space-2));padding:var(--iq-space-1) var(--iq-space-2);border:1px solid transparent;border-radius:var(--iq-radius-sm);background:transparent;color:var(--iq-ink);font:600 var(--iq-work-compact-title)/1.3 var(--iq-font);letter-spacing:var(--iq-tracking-h3);resize:none;field-sizing:content;overflow:hidden;text-wrap:pretty}
textarea.iq-inline-title{min-height:0;max-height:none}
.iq-inline-title::placeholder{color:var(--iq-faint)}
.iq-inline-title:hover:not(:focus):not([readonly]){background:var(--iq-hover)}
.iq-inline-title:focus{outline:none;border-color:var(--iq-control);background:var(--iq-raised)}
.iq-inline-title:focus-visible{box-shadow:0 0 0 1px var(--iq-focus)}
.iq-inline-title[aria-invalid=true]{border-color:var(--iq-danger)}

/* Property strip: the few values people look for first, value-first chips with no labels (labels stay for assistive tech). */
.iq-property-strip{display:flex;flex-wrap:wrap;gap:var(--iq-space-2);align-items:center;min-width:0}
.iq-property-strip>:is(iq-select,iq-combobox,iq-date-field){display:block;flex:0 1 auto;min-width:0;width:auto;margin:0}
.iq-property-strip :is(iq-select,iq-combobox,iq-date-field)>.iq-control-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.iq-property-strip :is(.iq-select-trigger,.iq-date-trigger,.iq-combo-shell){width:auto;min-height:36px;gap:var(--iq-space-2);padding:0 var(--iq-space-3);border:1px solid transparent;border-radius:var(--iq-radius-sm);background:var(--iq-surface);color:var(--iq-ink);font:500 var(--iq-type-label-size)/1.45 var(--iq-font)}
.iq-property-strip :is(.iq-select-trigger,.iq-date-trigger,.iq-combo-shell):hover{background:var(--iq-hover)}
.iq-property-strip :is(.iq-select-trigger[aria-expanded=true],.iq-combo-shell:focus-within){border-color:var(--iq-control);background:var(--iq-raised)}
.iq-property-strip .iq-select-value{display:inline-flex;align-items:center;gap:var(--iq-space-2);white-space:nowrap}
.iq-property-strip .iq-select-trigger>.iq-icon:last-child,.iq-property-strip .iq-combo-shell>.iq-icon:last-child{opacity:0;width:12px;transition:opacity var(--iq-motion-fast) var(--iq-ease)}
.iq-property-strip :is(.iq-select-trigger,.iq-combo-shell):is(:hover,:focus-within)>.iq-icon:last-child,.iq-property-strip .iq-select-trigger[aria-expanded=true]>.iq-icon:last-child{opacity:1}
.iq-property-strip .iq-combo-shell input{field-sizing:content;min-width:7ch;max-width:24ch;padding:0;background:transparent;font:inherit}
.iq-property-strip .iq-combo-shell:has(>.iq-select-avatar):not(:focus-within)>.iq-icon:first-of-type{display:none}
.iq-property-strip .iq-combo-shell:focus-within>.iq-select-avatar{display:none}
.iq-property-strip .iq-select-avatar{margin:0;border:0}
.iq-property-strip [data-empty=true] :is(.iq-select-value,.iq-combo-shell input,[data-date-caption]){color:var(--iq-muted)}
.iq-property-strip .iq-select-trigger[data-tone=high]{background:var(--iq-task-high-surface);color:var(--iq-task-high-text)}
.iq-property-strip .iq-select-trigger[data-tone=critical]{background:var(--iq-task-critical-surface);color:var(--iq-task-critical-text)}
.iq-property-strip iq-date-field[data-tone=danger] .iq-date-trigger{background:var(--iq-danger-bg);color:var(--iq-danger)}
.iq-property-strip iq-date-field[data-tone=warning] .iq-date-trigger{background:var(--iq-task-high-surface);color:var(--iq-task-high-text)}
.iq-property-strip iq-date-field .iq-date-trigger{min-width:0}
@media(hover:none){.iq-property-strip :is(.iq-select-trigger,.iq-combo-shell)>.iq-icon:last-child{opacity:1}}

/* Colour field: palette swatches, "Свой цвет" with the native picker, and a hex value. */
.iq-color-field{display:grid;gap:var(--iq-space-3);border:0;margin:0;padding:0;min-width:0}
.iq-color-field legend{margin-bottom:var(--iq-space-2);padding:0}
.iq-color-swatches{display:flex;flex-wrap:wrap;gap:var(--iq-space-2)}
.iq-color-custom{display:flex;align-items:center;gap:var(--iq-space-3);flex-wrap:wrap}
.iq-color-custom input[type=color]{width:36px;height:36px;padding:2px;border:1px solid var(--iq-control);border-radius:var(--iq-radius-sm);background:var(--iq-raised);cursor:pointer}
.iq-color-custom input[type=color]:focus-visible{outline:2px solid var(--iq-focus);outline-offset:2px}
.iq-color-custom .iq-input-shell{width:128px}
.iq-color-custom input[type=text]{font:500 var(--iq-type-label-size)/1.4 var(--iq-mono);text-transform:uppercase}
.iq-color-preview{display:flex;gap:var(--iq-space-2);align-items:center;font-size:var(--iq-type-caption-size);color:var(--iq-muted)}

/* Property lists also take the tag picker: label on the left, a quiet field that shows its frame on hover and focus. */
.iq-properties iq-tag-picker{display:grid;grid-template-columns:var(--iq-properties-label,88px) minmax(0,1fr);column-gap:var(--iq-space-2);align-items:start;min-width:0}
.iq-properties iq-tag-picker>.iq-control-label{margin:0;padding-top:10px;font-size:var(--iq-type-meta-size);font-weight:500;color:var(--iq-muted)}
.iq-properties .iq-tag-picker-field{min-height:36px;border-color:var(--iq-line);background:transparent;border-radius:var(--iq-radius-sm)}
.iq-properties .iq-tag-picker-field:hover{border-color:var(--iq-control);background:var(--iq-raised)}
.iq-properties .iq-tag-picker-field:focus-within{border-color:var(--iq-control);background:var(--iq-raised)}
@media(hover:none){.iq-properties .iq-tag-picker-field{border-color:var(--iq-line)}}

/* Relation map «Ступица» (vnext.26): nodes lie on the host's own surface (no inset, no lanes); each side's edges bundle into a
   trunk that carries the words, blockers on the left, waiting and related tasks on the right, the parent above, subtasks below. */
iq-relation-map{display:block;min-width:0}
iq-relation-map[data-empty]{display:none}
.rm-graph{position:relative;display:grid;gap:var(--iq-space-5);min-width:0}
.rm-edges{position:absolute;left:0;top:0;overflow:visible;pointer-events:none}
.rm-edge{fill:none;stroke:var(--iq-graph-edge);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.rm-edge[data-tone=open]{stroke:var(--iq-warning);stroke-width:2}
.rm-edge[data-tone=done]{stroke:var(--iq-line-strong);stroke-dasharray:4 4}
.rm-edge[data-tone=related]{stroke-dasharray:4 4}
.rm-arrow{fill:var(--iq-graph-edge)}
.rm-arrow[data-tone=open]{fill:var(--iq-warning)}
.rm-arrow[data-tone=done]{fill:var(--iq-line-strong)}
.rm-band{display:grid;align-items:center;min-width:0}
.rm-band[data-sides=both]{grid-template-columns:minmax(0,1fr) var(--rm-gap-l,44px) auto var(--rm-gap-r,44px) minmax(0,1fr)}
.rm-band[data-sides=left]{grid-template-columns:minmax(0,1fr) var(--rm-gap-l,44px) auto}
.rm-band[data-sides=right]{grid-template-columns:auto var(--rm-gap-r,44px) minmax(0,1fr)}
.rm-band[data-sides=none]{grid-template-columns:auto;justify-content:center}
.rm-band:is([data-sides=both],[data-sides=left])>.rm-hub{grid-column:3}
.rm-band[data-sides=both]>[data-side=right]{grid-column:5}
.rm-band[data-sides=right]>[data-side=right]{grid-column:3}
.rm-hub{display:grid;justify-items:center;padding:var(--rm-rise,0px) 0 var(--rm-fall,0px)}
.rm-side{display:grid;gap:var(--iq-space-5);align-content:center;min-width:0}
.rm-group{display:grid;gap:var(--iq-space-2);min-width:0}
.rm-parent>.rm-node{width:min(100%,440px)}
.rm-parent{display:flex;justify-content:center;min-width:0}
.rm-parent[data-sides=left]{justify-content:flex-end}
.rm-parent[data-sides=right]{justify-content:flex-start}
/* The current task is the quietest node: two lines, no title (it heads the drawer), an accent frame. */
.rm-current{display:grid;justify-items:center;gap:var(--iq-space-1);padding:10px var(--iq-space-4);border:1.5px solid var(--iq-accent);border-radius:var(--iq-radius-sm);background:var(--iq-accent-soft);color:var(--iq-ink);white-space:nowrap}
.rm-current-caption{font:500 var(--iq-type-caption-size)/1.25 var(--iq-font);color:var(--iq-accent)}
.rm-current-key{font:500 var(--iq-type-label-size)/1.25 var(--iq-mono);font-variant-numeric:tabular-nums}
/* A node: the key never wraps, the title takes up to two lines; a closed task is quiet (muted title, no fill). */
.rm-node{position:relative;min-width:0;container-type:inline-size}
.rm-node-body{display:grid;gap:var(--iq-space-1);width:100%;padding:var(--iq-space-2) var(--iq-space-3);border:1px solid var(--iq-line);border-radius:var(--iq-radius-sm);background:var(--iq-raised);color:var(--iq-ink);text-align:left;font:inherit;cursor:pointer;box-shadow:var(--iq-shadow-1);transition:border-color var(--iq-motion-fast) var(--iq-ease)}
.rm-node-body:hover{border-color:var(--iq-line-strong)}
.rm-node-body:focus-visible{outline:2px solid var(--iq-focus);outline-offset:2px}
.rm-node.is-done>.rm-node-body{background:transparent;box-shadow:none}
.rm-node-meta{display:flex;align-items:center;gap:6px;min-width:0;min-height:16px}
.rm-state{flex:none;color:var(--iq-control)}
.rm-state circle{fill:none;stroke:currentColor;stroke-width:1.5}
.rm-state[data-state=doing] path{fill:currentColor}
.rm-state[data-state=done] circle{fill:currentColor;stroke:none}
.rm-state[data-state=done] path{fill:none;stroke:var(--iq-raised);stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.rm-state[data-tone=info]{color:var(--iq-info)}.rm-state[data-tone=warning]{color:var(--iq-warning)}.rm-state[data-tone=planned]{color:var(--iq-planned)}.rm-state[data-tone=success]{color:var(--iq-success)}.rm-state[data-tone=danger]{color:var(--iq-danger)}
.rm-node-kind,.rm-node-lock{display:grid;flex:none;color:var(--iq-muted)}
.rm-node-lock{color:var(--iq-warning)}
.rm-node-key{flex:none;font:500 var(--iq-type-meta-size)/1 var(--iq-mono);font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--iq-muted)}
.rm-node[data-kind=epic] :is(.rm-node-kind,.rm-node-key){color:var(--iq-epic)}
.rm-node-status{min-width:0;margin-left:auto;overflow:hidden;font:400 var(--iq-type-caption-size)/1.2 var(--iq-font);white-space:nowrap;text-overflow:ellipsis;color:var(--iq-muted);transition:opacity var(--iq-motion-fast) var(--iq-ease)}
.rm-node-title{display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow-wrap:anywhere;font:500 var(--iq-type-label-size)/1.35 var(--iq-font)}
.rm-node.is-done .rm-node-title{font-weight:400;color:var(--iq-muted)}
.rm-node[data-shape=row] .rm-node-meta{min-height:20px}
.rm-node[data-shape=row] .rm-node-title{display:block;flex:1 1 auto;min-width:0;white-space:nowrap;text-overflow:ellipsis;font-weight:400}
@container (max-width:180px){.rm-node-status{display:none}}
/* Remove sits inside the node and takes the status's place on hover and focus. */
.rm-remove{position:absolute;top:var(--iq-space-1);right:var(--iq-space-1);display:grid;place-items:center;width:24px;height:24px;padding:0;border:0;border-radius:var(--iq-radius-xs);background:transparent;color:var(--iq-muted);opacity:0;cursor:pointer;transition:opacity var(--iq-motion-fast) var(--iq-ease)}
.rm-node:is(:hover,:focus-within) .rm-remove{opacity:1}
.rm-node:has(.rm-remove):is(:hover,:focus-within) .rm-node-status{opacity:0}
.rm-remove:hover{color:var(--iq-danger);background:var(--iq-danger-bg)}
.rm-remove:focus-visible{outline:2px solid var(--iq-focus);outline-offset:1px}
@media(hover:none){.rm-remove{opacity:1}.rm-node:has(.rm-remove) .rm-node-meta{padding-right:22px}.rm-node:has(.rm-remove) .rm-node-status{opacity:1}}
/* Words on the edges: caption size; the blocker words take the tone of their state. */
.rm-words{position:absolute;inset:0;pointer-events:none}
.rm-word{position:absolute;left:0;top:0;font:500 var(--iq-type-caption-size)/1.25 var(--iq-font);white-space:nowrap;color:var(--iq-muted)}
.rm-graph[data-raised] .rm-word{white-space:normal}
.rm-word[data-for=dependsOn-state]{font-weight:400;font-variant-numeric:tabular-nums}
.rm-word[data-tone=warning]{color:var(--iq-warning)}
.rm-word[data-tone=success]{color:var(--iq-success)}
/* Subtasks hang on a rail at the left edge, one row each. */
.rm-tree{display:grid;gap:var(--iq-space-2);min-width:0;padding-left:28px}
.rm-tree-head{display:flex;align-items:center;gap:var(--iq-space-2);margin:0;font:500 var(--iq-type-caption-size)/1.25 var(--iq-font);color:var(--iq-muted)}
.rm-tree-head small{font:400 var(--iq-type-caption-size)/1.25 var(--iq-font);font-variant-numeric:tabular-nums}
.rm-tree-head .iq-progress{width:48px}
.rm-tree-nodes{display:grid;gap:6px;min-width:0}
.rm-tree-more{margin:0;font:400 var(--iq-type-caption-size)/1.25 var(--iq-font);color:var(--iq-muted)}
@media(forced-colors:active){.rm-edge{stroke:CanvasText}.rm-arrow{fill:CanvasText}.rm-current{border-color:Highlight}}

/* Avatar sizes: xs 20, sm 24, md 28 (default in groups), lg 44. The overlap in a group is a quarter of the size. */
/* Initials are a mark, not reading text (owner, 2026-10-01): at 20px they are 8/600, so the disc stays calm next to
   14px names; the 12px floor is for words. vnext.27. */








iq-tooltip:has(>.iq-avatars){display:inline-flex}

/* Section: a zone of a long surface (a task drawer, a document): a divider, a heading row with icon, count and one action. */
.iq-section{border-top:1px solid var(--iq-line);padding-block:var(--iq-space-6)}
.iq-section-head{display:flex;align-items:center;gap:var(--iq-space-2);min-height:32px;margin-bottom:var(--iq-space-3)}
.iq-section-head>.iq-icon{flex:none;color:var(--iq-muted)}
.iq-section-head h3{margin:0;font:600 var(--iq-type-body-size)/24px var(--iq-font);letter-spacing:var(--iq-tracking-h3);color:var(--iq-ink)}
.iq-section-count{font:500 var(--iq-type-caption-size)/1 var(--iq-font);font-variant-numeric:tabular-nums;color:var(--iq-muted)}
.iq-section-count:empty{display:none}
.iq-section-actions{display:flex;align-items:center;gap:var(--iq-space-1);margin-left:auto}

/* Compact editors never let content headings outgrow the surface's own section headings. */
:is(iq-markdown-editor[density=compact] .md-preview,iq-markdown-viewer[density=compact] .md-document) :is(h1,h2,h3,h4,h5,h6){margin:var(--iq-space-3) 0 var(--iq-space-1);letter-spacing:var(--iq-tracking-body)}
:is(iq-markdown-editor[density=compact] .md-preview,iq-markdown-viewer[density=compact] .md-document) :is(h1,h2){font:600 calc(1em*16/14)/1.4 var(--iq-font)}
:is(iq-markdown-editor[density=compact] .md-preview,iq-markdown-viewer[density=compact] .md-document) h3{font:600 1em/1.45 var(--iq-font)}
:is(iq-markdown-editor[density=compact] .md-preview,iq-markdown-viewer[density=compact] .md-document) h4{font:600 1em/1.45 var(--iq-font);color:var(--iq-muted)}
:is(iq-markdown-editor[density=compact] .md-preview,iq-markdown-viewer[density=compact] .md-document) :is(h5,h6){font:600 calc(1em*13/14)/1.45 var(--iq-font);color:var(--iq-muted)}
:is(iq-markdown-editor[density=compact] .md-preview,iq-markdown-viewer[density=compact] .md-document) :is(h1,h2,h3,h4,h5,h6):first-child{margin-top:0}

/* Property strip chips: 32px, no chevron (the fill reads as a button), 14px icons, 20px avatars. */
.iq-property-strip :is(.iq-select-trigger,.iq-date-trigger,.iq-combo-shell){min-height:32px}
.iq-property-strip .iq-select-trigger>.iq-icon:last-child,.iq-property-strip .iq-combo-shell>.iq-icon:last-child{display:none}
.iq-property-strip .iq-select-value .iq-icon,.iq-property-strip .iq-date-trigger .iq-icon{width:14px;height:14px}

.iq-properties{--iq-properties-label:136px}
.iq-properties :is(iq-select,iq-combobox,iq-date-field,iq-tag-picker)>.iq-control-label{font-size:var(--iq-type-caption-size);font-weight:400}
@media(max-width:640px){.iq-properties{--iq-properties-label:88px}}

/* Tag picker: the "+" that creates a tag sits at the right edge of the field (like the managed tags input). */
.iq-tag-picker-field input{flex:1 1 96px;min-width:96px}
.iq-tag-picker-add{flex:none;margin-left:auto;align-self:flex-start;--h:28px;min-width:28px;padding:4px;color:var(--iq-muted)}
.iq-tag-picker-add:hover{color:var(--iq-ink)}
.iq-tag-picker-add[hidden]{display:none}
.iq-tag-picker-values>.iq-tag[data-armed]{box-shadow:0 0 0 2px var(--iq-focus)}

/* Colour field (vnext.18): palette circles filled with each tone's text colour (distinct in both themes),
   "Свой цвет" last, one live preview on the legend row. */
.iq-color-legend{display:flex;align-items:center;justify-content:space-between;gap:var(--iq-space-3);width:100%;margin-bottom:var(--iq-space-3);padding:0}
.iq-color-legend .iq-control-label{margin:0}
.iq-color-swatches{gap:var(--iq-space-2)}
.iq-color-swatch{position:relative;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;cursor:pointer}
.iq-color-swatch::before{content:'';position:absolute;inset:4px;border-radius:50%;background:var(--iq-tag-tone-text,var(--iq-muted))}
.iq-color-swatch[data-tone=neutral]{--iq-tag-tone-text:var(--iq-tag-neutral-text)}.iq-color-swatch[data-tone=blue]{--iq-tag-tone-text:var(--iq-tag-blue-text)}.iq-color-swatch[data-tone=purple]{--iq-tag-tone-text:var(--iq-tag-purple-text)}.iq-color-swatch[data-tone=green]{--iq-tag-tone-text:var(--iq-tag-green-text)}.iq-color-swatch[data-tone=amber]{--iq-tag-tone-text:var(--iq-tag-amber-text)}.iq-color-swatch[data-tone=red]{--iq-tag-tone-text:var(--iq-tag-red-text)}
.iq-color-swatch[data-tone=custom]::before{background:var(--iq-tag-color)}
.iq-color-swatch-custom:not([data-tone=custom])::before{background:conic-gradient(#e5484d,#f5a524,#30a46c,#0090ff,#8e4ec6,#e5484d);inset:4px}
.iq-color-swatch-custom:not([data-tone=custom])::after{content:'';position:absolute;inset:8px;border-radius:50%;background:var(--iq-raised)}
.iq-color-swatch>.iq-icon{position:relative;z-index:1;color:#fff;opacity:0}
.iq-color-swatch-custom:not([data-tone=custom])>.iq-icon{opacity:1;color:var(--iq-ink);width:12px;height:12px}
.iq-color-swatch:has(:checked)>.iq-icon{opacity:1}
.iq-color-swatch:has(:checked){box-shadow:0 0 0 2px var(--iq-focus)}
.iq-color-swatch:has(:focus-visible){outline:2px solid var(--iq-focus);outline-offset:2px}
.iq-color-custom{margin-top:var(--iq-space-3)}
.iq-color-custom[hidden]{display:none}
.iq-color-custom input[type=color]{width:32px;height:32px}
.iq-color-custom .iq-input-shell{width:112px;min-height:32px}
.iq-color-counter{display:block;text-align:right}
.iq-color-counter[data-tone=danger]{color:var(--iq-danger)}
/* 0.6.0-vnext.19 inline document editor: density="compact" with preview-on-blur reads as the text itself.
   In preview the chrome disappears and the text gets an inset hover surface that bleeds 8px past the column,
   so the words stay aligned with the headings around them. A click or Enter switches to the compact editor.
   Task descriptions and map object text use the same editor. */
iq-markdown-editor[density=compact][preview-on-blur][data-previewing] .markdown-editor{border-color:transparent;background:transparent;box-shadow:none;overflow:visible}
iq-markdown-editor[density=compact][preview-on-blur][data-previewing] :is(.md-editor-head,.markdown-editor>footer){display:none}
iq-markdown-editor[density=compact][preview-on-blur][data-previewing] .md-preview{box-sizing:border-box;width:calc(100% + 2 * var(--iq-space-2));max-width:none;margin:0 calc(-1 * var(--iq-space-2));padding:var(--iq-space-2);min-height:0;border-radius:var(--iq-radius-sm);transition:background-color var(--iq-motion-fast) var(--iq-ease)}
iq-markdown-editor[density=compact][preview-on-blur][data-previewing]:not([readonly]):not([disabled]) .md-preview:hover{background:var(--iq-hover);cursor:text}
iq-markdown-editor[density=compact][preview-on-blur][data-previewing] .md-preview:focus-visible{background:var(--iq-hover);box-shadow:0 0 0 2px var(--iq-focus);outline:none}
/* ---------- Discussions (0.6.0-vnext.19) ----------
   Open questions pinned on top as framed cards; below them a flat chat timeline of comment threads and resolved
   questions (one quiet line each); a one-line composer at the bottom. Space separates items, never lines or fills. */
.iq-discussion{display:grid;gap:var(--iq-space-6);min-width:0}
.iq-discussion[aria-busy=true] .iq-discussion-timeline{opacity:.7}
.iq-discussion-questions,.iq-discussion-timeline{display:grid;min-width:0}
.iq-discussion-questions{gap:var(--iq-space-3)}
.iq-discussion-timeline{gap:var(--iq-space-6)}
.iq-discussion-questions:empty,.iq-discussion-timeline:empty,.iq-discussion-questions[hidden],.iq-discussion-timeline[hidden]{display:none}
.iq-discussion-timeline>.iq-thread[data-state=resolved]+.iq-thread[data-state=resolved]{margin-top:calc(var(--iq-space-1) - var(--iq-space-6))}
.iq-discussion-more{justify-self:start}
.iq-discussion-open-count{display:inline-flex;align-items:center;gap:var(--iq-space-2);font:400 var(--iq-type-caption-size)/1.5 var(--iq-font);color:var(--iq-warning);white-space:nowrap}
.iq-discussion-open-count::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--iq-warning-fill)}
.iq-discussion-open-count[hidden]{display:none}
.iq-discussion-empty{margin:0;font-size:var(--iq-type-caption-size);line-height:1.5;color:var(--iq-muted)}
.iq-discussion-error{display:flex;align-items:center;flex-wrap:wrap;gap:var(--iq-space-2);margin:0;font-size:var(--iq-type-caption-size);line-height:1.5;color:var(--iq-danger)}
.iq-discussion-error[hidden]{display:none}
.iq-discussion-error>.iq-btn{margin-left:auto}
.iq-thread{display:grid;gap:var(--iq-space-3);min-width:0}
.iq-thread[data-kind=question][data-state=open]{padding:var(--iq-space-4);border:1px solid var(--iq-line);border-radius:var(--iq-radius-sm);background:transparent}
.iq-thread-flag{display:flex;align-items:center;gap:var(--iq-space-2);margin:0;font:600 var(--iq-type-caption-size)/1.5 var(--iq-font);color:var(--iq-warning)}
.iq-thread-actions{display:flex;align-items:center;flex-wrap:wrap;gap:var(--iq-space-2);padding-left:calc(24px + var(--iq-space-3))}
.iq-thread-actions:empty{display:none}
.iq-thread[data-state=open] .iq-thread-actions,.iq-thread-body>.iq-thread-actions{justify-content:space-between;padding-left:0}
.iq-thread-toggle{display:inline-flex;align-items:center;gap:var(--iq-space-2);min-height:32px;padding:0 var(--iq-space-2);margin-inline:calc(-1 * var(--iq-space-2));border:0;border-radius:var(--iq-radius-sm);background:transparent;color:var(--iq-accent);font:500 var(--iq-type-label-size)/1.4 var(--iq-font);cursor:pointer;text-decoration:none}
.iq-thread-toggle:hover{background:var(--iq-hover)}
.iq-thread-toggle-meta{color:var(--iq-muted);font-weight:400;font-size:var(--iq-type-caption-size)}
.iq-thread-toggle>.iq-avatars{margin-right:var(--iq-space-1)}
.iq-thread-new{width:6px;height:6px;border-radius:50%;background:var(--iq-accent);flex:none}
.iq-thread-new[hidden]{display:none}
.iq-thread-replies,.iq-thread-reply{margin-left:calc(24px + var(--iq-space-3));min-width:0}
.iq-thread-replies{display:grid;gap:var(--iq-space-4)}
.iq-thread-replies>.iq-thread-toggle{justify-self:start}
.iq-thread-replies[hidden],.iq-thread-reply[hidden],.iq-thread-body[hidden]{display:none}
.iq-thread-line{display:grid;grid-template-columns:16px minmax(0,1fr) auto 16px;align-items:center;gap:var(--iq-space-2);box-sizing:border-box;width:calc(100% + 2 * var(--iq-space-2));min-height:var(--iq-control-sm);margin-inline:calc(-1 * var(--iq-space-2));padding:var(--iq-space-2);border:0;border-radius:var(--iq-radius-sm);background:transparent;text-align:left;color:var(--iq-muted);font:400 var(--iq-type-label-size)/1.4 var(--iq-font);cursor:pointer}
.iq-thread-line:hover{background:var(--iq-hover)}
.iq-thread-line>.iq-icon:first-child{color:var(--iq-success)}
.iq-thread-line>.iq-icon:last-child{transition:transform var(--iq-motion-fast) var(--iq-ease)}
.iq-thread-line[aria-expanded=true]>.iq-icon:last-child{transform:rotate(90deg)}
.iq-thread-line-text{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--iq-ink)}
.iq-thread-line-meta{font-size:var(--iq-type-caption-size);white-space:nowrap}
.iq-thread-body{display:grid;gap:var(--iq-space-3);padding-top:var(--iq-space-2)}
.iq-thread-resolution{font-size:var(--iq-type-caption-size);color:var(--iq-muted)}
:is(.iq-thread-toggle,.iq-thread-line):focus-visible{outline:2px solid var(--iq-focus);outline-offset:-2px}
.iq-message{display:grid;grid-template-columns:24px minmax(0,1fr);column-gap:var(--iq-space-3);align-items:start;min-width:0}
.iq-message[data-size=reply]{grid-template-columns:20px minmax(0,1fr);column-gap:var(--iq-space-2)}
.iq-message>.iq-avatar{margin-top:0}
.iq-message-main{display:grid;gap:var(--iq-space-1);min-width:0}
.iq-message-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 var(--iq-space-2);margin:0;min-height:24px}
.iq-message-author{font:600 var(--iq-type-label-size)/24px var(--iq-font);color:var(--iq-ink)}
.iq-message-time{font-size:var(--iq-type-caption-size);color:var(--iq-muted);font-variant-numeric:tabular-nums}
.iq-message[data-new] .iq-message-time::after{content:"";display:inline-block;width:6px;height:6px;margin-left:var(--iq-space-2);border-radius:50%;background:var(--iq-accent);vertical-align:middle}
.iq-message-text .md-document,.iq-message-text.md-document{font-size:var(--iq-type-interface-size);line-height:1.6}
p.iq-message-text{margin:0;font-size:var(--iq-type-interface-size);line-height:1.6;display:-webkit-box;-webkit-line-clamp:4;line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:break-word}
.iq-message[data-just-changed] .iq-message-main{border-radius:var(--iq-radius-xs);animation:iq-discussion-arrive var(--iq-motion-layout) var(--iq-ease)}
@keyframes iq-discussion-arrive{from{background:var(--iq-accent-soft)}to{background:transparent}}
.iq-message[data-state=loading] .iq-message-main{gap:var(--iq-space-2);padding-top:6px}
.iq-skeleton-line{display:block;height:10px;width:100%;border-radius:var(--iq-radius-xs)}
.iq-skeleton-line[data-width=short]{width:40%}
.iq-composer{display:grid;grid-template-columns:24px minmax(0,1fr);column-gap:var(--iq-space-3);align-items:start;min-width:0}
.iq-composer>.iq-avatar{margin-top:6px}
@media(max-width:480px){.iq-thread[data-state=open] .iq-thread-actions [data-resolve]{flex:1 0 100%}.iq-thread-line{grid-template-columns:16px minmax(0,1fr) 16px}.iq-thread-line-meta{grid-column:2;grid-row:2}}
@media(prefers-reduced-motion:reduce){.iq-message[data-just-changed] .iq-message-main{animation:none}.iq-thread-line>.iq-icon:last-child{transition:none}}
:root[data-motion=reduced] .iq-message[data-just-changed] .iq-message-main{animation:none}
@media(forced-colors:active){.iq-thread[data-kind=question][data-state=open]{border-color:CanvasText}.iq-thread-new,.iq-message[data-new] .iq-message-time::after{background:Highlight}}
/* Chat composer: iq-markdown-editor variant="chat". The short toolbar lives in the footer; idle="line" rests as one field. */
.markdown-editor.variant-chat{border-radius:var(--iq-radius-sm);background:var(--iq-field-bg,var(--iq-raised))}
.markdown-editor.variant-chat:focus{outline:none}
.markdown-editor.variant-chat>.md-editor-head,.markdown-editor.variant-chat>.md-preview{display:none}
.markdown-editor.variant-chat .md-input{min-height:72px;max-height:320px;overflow-y:auto;padding:var(--iq-space-3);font-size:var(--iq-type-interface-size);line-height:1.6}
.markdown-editor.variant-chat>footer{display:flex;align-items:center;flex-wrap:wrap;gap:var(--iq-space-2);min-height:0;padding:var(--iq-space-1) var(--iq-space-2);border-top:1px solid var(--iq-line)}
.markdown-editor.variant-chat>footer>.md-toolbar{padding:0;border:0;background:transparent;gap:0;flex-wrap:nowrap}
.markdown-editor.variant-chat>footer .md-tool{width:28px;height:28px}
.markdown-editor.variant-chat>footer>.md-hint{display:none}
.markdown-editor.variant-chat>footer>.md-cancel{margin-left:auto}
.markdown-editor.variant-chat>footer>.md-cancel~.md-submit{margin-left:0}
.markdown-editor.variant-chat>footer>.md-submit{margin-left:auto;height:32px;min-height:32px;--h:32px}
.markdown-editor.variant-chat .md-footer-hint{display:block;padding:0 var(--iq-space-3) var(--iq-space-2);font-size:var(--iq-type-caption-size);color:var(--iq-muted)}
.markdown-editor .md-footer-hint[hidden]{display:none}
.md-footer-chip{display:inline-flex;align-items:center;gap:var(--iq-space-1);height:28px;padding:0 var(--iq-space-3);border:1px solid var(--iq-line);border-radius:var(--iq-radius-pill);background:transparent;color:var(--iq-muted);font:500 var(--iq-type-label-size)/1 var(--iq-font);cursor:pointer;white-space:nowrap}
.md-footer-chip:hover:not(:disabled){background:var(--iq-hover);color:var(--iq-ink)}
.md-footer-chip:focus-visible{outline:2px solid var(--iq-focus);outline-offset:1px}
.md-footer-chip[aria-pressed=true]{background:var(--iq-accent-soft);border-color:transparent;color:var(--iq-accent)}
.md-footer-chip[aria-pressed=true][data-tone=warning]{background:var(--iq-warning-fill);color:var(--iq-on-warning)}
.md-footer-chip:disabled{opacity:.45;cursor:default}
iq-markdown-editor[variant=chat][data-idle] .markdown-editor{border-color:var(--iq-line)}
iq-markdown-editor[variant=chat][data-idle] .markdown-editor:hover{border-color:var(--iq-line-strong)}
iq-markdown-editor[variant=chat][data-idle] .md-input{min-height:0;height:var(--iq-control-sm)!important;padding:0 var(--iq-space-3);line-height:calc(var(--iq-control-sm) - 2px);overflow:hidden;resize:none;white-space:nowrap}
iq-markdown-editor[variant=chat][data-idle] .markdown-editor>footer,iq-markdown-editor[variant=chat][data-idle] .md-footer-hint{display:none}
@media(max-width:480px){.markdown-editor.variant-chat>footer>.md-toolbar{flex:1 0 100%;overflow-x:auto}}
@media(forced-colors:active){.md-footer-chip[aria-pressed=true]{border:2px solid Highlight}}
/* ---------- Property grid (0.6.0-vnext.19): .iq-properties[data-columns="2|auto"] ----------
   One grammar for an object's core facts: label and value rows in two columns (auto collapses to one below 272px
   per column, with no media query). Values are ghost triggers aligned to the column edge; icons live in values. */
.iq-properties[data-columns]{--iq-properties-label:96px;column-gap:var(--iq-space-6);row-gap:var(--iq-space-1)}
.iq-properties[data-columns="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}
.iq-properties[data-columns=auto]{grid-template-columns:repeat(auto-fit,minmax(min(100%,272px),1fr))}
.iq-properties:is([data-columns],[data-label=wide]) :is(iq-select,iq-combobox,iq-date-field){min-height:36px;column-gap:var(--iq-space-2)}
.iq-properties:is([data-columns],[data-label=wide]) :is(iq-select,iq-combobox,iq-date-field)>.iq-control-label{font-size:var(--iq-type-label-size);font-weight:400;white-space:nowrap}
.iq-properties:is([data-columns],[data-label=wide]) :is(iq-select,iq-combobox,iq-date-field)>:not(.iq-control-label){justify-self:start;max-width:calc(100% + var(--iq-space-2));margin-left:calc(-1 * var(--iq-space-2))}
.iq-properties:is([data-columns],[data-label=wide]) iq-select[appearance=pill]>:not(.iq-control-label){margin-left:0}
.iq-properties:is([data-columns],[data-label=wide]) :is(.iq-select-trigger,.iq-date-trigger,.iq-combo-shell){width:auto;max-width:100%;min-height:32px;height:32px;gap:var(--iq-space-2);padding:0 var(--iq-space-2);margin-left:0;border:1px solid transparent;border-radius:var(--iq-radius-sm);background:transparent;font-size:var(--iq-type-interface-size)}
.iq-properties:is([data-columns],[data-label=wide]) :is(.iq-select-trigger,.iq-date-trigger,.iq-combo-shell):hover{border-color:transparent;background:var(--iq-hover)}
/* An open value keeps its ghost look (vnext.27): the hover fill stays while its list is open, never a bordered pill. */
.iq-properties:is([data-columns],[data-label=wide]) :is(.iq-select-trigger,.iq-date-trigger)[aria-expanded=true],.iq-properties:is([data-columns],[data-label=wide]) .iq-combo-shell:focus-within{border-color:transparent;background:var(--iq-hover)}
.iq-properties:is([data-columns],[data-label=wide]) .iq-select-value{display:inline-flex;align-items:center;gap:var(--iq-space-2);min-width:0}
.iq-properties:is([data-columns],[data-label=wide]) .iq-select-value>.iq-icon{flex:none;color:var(--iq-muted)}
.iq-properties:is([data-columns],[data-label=wide]) .iq-select-trigger>.iq-icon:last-child,.iq-properties:is([data-columns],[data-label=wide]) .iq-combo-shell>.iq-icon:last-child{opacity:0;width:12px;flex:none;transition:opacity var(--iq-motion-fast) var(--iq-ease)}
.iq-properties:is([data-columns],[data-label=wide]) :is(.iq-select-trigger,.iq-combo-shell):is(:hover,:focus-within)>.iq-icon:last-child,.iq-properties:is([data-columns],[data-label=wide]) .iq-select-trigger[aria-expanded=true]>.iq-icon:last-child{opacity:1}
.iq-properties:is([data-columns],[data-label=wide]) .iq-combo-shell input{field-sizing:content;min-width:7ch;max-width:24ch;padding:0;background:transparent;font:inherit}
.iq-properties:is([data-columns],[data-label=wide]) .iq-combo-shell:has(>.iq-select-avatar):not(:focus-within)>.iq-icon:first-of-type{display:none}
.iq-properties:is([data-columns],[data-label=wide]) .iq-combo-shell:focus-within>.iq-select-avatar{display:none}
.iq-properties:is([data-columns],[data-label=wide]) .iq-select-avatar{margin:0;border:0}
.iq-properties:is([data-columns],[data-label=wide]) [data-empty=true] :is(.iq-select-label,.iq-combo-shell input,[data-date-caption]){color:var(--iq-muted)}
.iq-properties:is([data-columns],[data-label=wide]) .iq-select-trigger[data-tone=high]{color:var(--iq-task-high-text)}
.iq-properties:is([data-columns],[data-label=wide]) .iq-select-trigger[data-tone=critical]{color:var(--iq-task-critical-text)}
.iq-properties:is([data-columns],[data-label=wide]) :is(.iq-select-trigger[data-tone=high],.iq-select-trigger[data-tone=critical]) .iq-select-value>.iq-icon{color:inherit}
.iq-properties:is([data-columns],[data-label=wide]) iq-date-field[data-tone=danger] .iq-date-trigger{color:var(--iq-danger)}
.iq-properties:is([data-columns],[data-label=wide]) iq-date-field[data-tone=warning] .iq-date-trigger{color:var(--iq-task-high-text)}
@media(hover:none){.iq-properties:is([data-columns],[data-label=wide]) :is(.iq-select-trigger,.iq-combo-shell)>.iq-icon:last-child{opacity:1}}
/* iq-select appearance="pill": the one filled value, with a dot in the option's tone. */
iq-select[appearance=pill] .iq-select-trigger,.iq-properties:is([data-columns],[data-label=wide]) iq-select[appearance=pill] .iq-select-trigger{height:28px;min-height:28px;margin-left:0;padding:0 var(--iq-space-3);border-radius:var(--iq-radius-pill);background:var(--iq-surface);font-size:var(--iq-type-label-size);font-weight:500}
iq-select[appearance=pill] .iq-select-trigger:hover{background:var(--iq-hover)}
.iq-select-dot{width:8px;height:8px;border-radius:50%;background:var(--iq-select-tone,var(--iq-muted));flex:none}
iq-select[appearance=pill] .iq-select-trigger[data-tone=info]{--iq-select-tone:var(--iq-info)}
iq-select[appearance=pill] .iq-select-trigger[data-tone=warning]{--iq-select-tone:var(--iq-warning-fill)}
iq-select[appearance=pill] .iq-select-trigger[data-tone=success]{--iq-select-tone:var(--iq-success)}
iq-select[appearance=pill] .iq-select-trigger[data-tone=danger]{--iq-select-tone:var(--iq-danger)}
/* Option meta (a date, a count) and separators; the search field of a searchable select. */
.iq-select-meta{color:var(--iq-muted);font-size:var(--iq-type-label-size);font-variant-numeric:tabular-nums;white-space:nowrap}
.iq-option-meta{margin-left:auto;padding-left:var(--iq-space-3);color:var(--iq-muted);font-size:var(--iq-type-caption-size);font-variant-numeric:tabular-nums;white-space:nowrap}
/* A separated row (an action such as «Новый релиз», a group heading) is set apart by space, not by a rule. */
.iq-option.iq-option-separated{margin-top:6px}
.iq-option.iq-option-separated:not([aria-selected=true]){color:var(--iq-muted)}
.iq-option.iq-option-separated:not([aria-disabled=true]):is(:hover,.is-active){color:var(--iq-ink)}
.iq-select-search{display:flex;align-items:center;gap:var(--iq-space-2);height:32px;margin:0 0 var(--iq-space-1);padding:0 var(--iq-space-2);border-radius:var(--iq-radius-sm);background:var(--iq-surface);color:var(--iq-muted)}
.iq-select-search input{flex:1;min-width:0;height:100%;border:0;background:transparent;color:var(--iq-ink);font:inherit;font-size:var(--iq-type-interface-size);outline:none}
.iq-select-search input::-webkit-search-cancel-button{display:none}
/* iq-tag-picker appearance="inline": tags as a quiet footnote line. No field chrome at rest; 24px chips whose ×
   appears on hover or focus; the input is a borderless "Добавить тег" with an underline only while typing. */
iq-tag-picker[appearance=inline]>.iq-control-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
iq-tag-picker[appearance=inline] .iq-tag-picker-field{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-height:28px;padding:0;border:0;background:transparent;box-shadow:none}
iq-tag-picker[appearance=inline] .iq-tag-picker-field:focus-within{box-shadow:none}
iq-tag-picker:is([appearance=inline],[appearance=ghost]) .iq-tag-picker-values{display:contents}
iq-tag-picker:is([appearance=inline],[appearance=ghost]) .iq-tag{min-height:24px;padding:2px var(--iq-space-2);font-size:var(--iq-type-caption-size);border-radius:var(--iq-radius-xs)}
iq-tag-picker:is([appearance=inline],[appearance=ghost]) .iq-tag .iq-tag-remove{width:0;opacity:0;overflow:hidden;margin-left:0;transition:opacity var(--iq-motion-fast) var(--iq-ease)}
iq-tag-picker:is([appearance=inline],[appearance=ghost]) .iq-tag:is(:hover,:focus-within,[data-armed]) .iq-tag-remove{width:24px;opacity:1;margin-left:2px}
iq-tag-picker[appearance=inline] input{flex:0 1 150px;min-width:96px;height:24px;padding:0 var(--iq-space-1);border:0;border-bottom:1px solid transparent;border-radius:0;background:transparent;font-size:var(--iq-type-caption-size);color:var(--iq-ink)}
iq-tag-picker[appearance=inline] input::placeholder{color:var(--iq-muted)}
iq-tag-picker[appearance=inline] input:focus{outline:none;border-bottom-color:var(--iq-focus)}
iq-tag-picker[appearance=inline] .iq-tag-picker-add{width:24px;height:24px;min-width:24px;min-height:24px;padding:0;margin:0;border-radius:var(--iq-radius-xs)}
@media(hover:none),(pointer:coarse){iq-tag-picker:is([appearance=inline],[appearance=ghost]) .iq-tag .iq-tag-remove{width:24px;opacity:1;margin-left:2px}}
@media(prefers-reduced-motion:reduce){iq-tag-picker:is([appearance=inline],[appearance=ghost]) .iq-tag .iq-tag-remove{transition:none}}

.iq-properties[data-columns] .iq-date-trigger>.iq-icon{order:-1;flex:none;color:var(--iq-muted)}
/* iq-image-crop appearance="bare" (0.6.0-vnext.19): one surface inside a host dialog. The whole image stays visible
   under a scrim around a fixed frame; the stage takes the height the screen allows, so the dialog never scrolls. */
.iq-image-crop[data-appearance=bare]{display:grid;gap:var(--iq-space-3);min-width:0}
.iq-image-crop[data-appearance=bare] .iq-crop-stage{aspect-ratio:auto;width:100%;height:var(--iq-crop-stage-height,clamp(200px,calc(100dvh - 296px),440px));border-radius:var(--iq-radius-sm);background:var(--iq-recessed);cursor:default}
.iq-image-crop[data-appearance=bare] .iq-crop-stage.has-image{cursor:grab}
.iq-image-crop[data-appearance=bare] .iq-crop-stage.has-image:active{cursor:grabbing}
.iq-image-crop[data-appearance=bare] .iq-crop-mask{display:none}
.iq-crop-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:var(--iq-space-3);min-height:40px}
.iq-crop-zoom{display:flex;align-items:center;gap:var(--iq-space-1)}
.iq-crop-zoom input[type=range]{width:200px;accent-color:var(--iq-accent);margin:0;cursor:pointer}
.iq-crop-spacer{flex:1}
.iq-crop-status{margin:0;font-size:var(--iq-type-caption-size);color:var(--iq-muted)}
.iq-crop-status.iq-pro-error{color:var(--iq-danger)}
.iq-crop-status[hidden]{display:none}
@media(max-width:560px){.iq-crop-zoom input[type=range]{width:120px}.iq-crop-spacer{display:none}}
/* 0.6.0-vnext.20: unread count next to open questions, and the left group of a question card's actions. */
.iq-discussion-new-count{display:inline-flex;align-items:center;gap:var(--iq-space-2);font:400 var(--iq-type-caption-size)/1.5 var(--iq-font);color:var(--iq-accent);white-space:nowrap}
.iq-discussion-new-count::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--iq-accent)}
.iq-discussion-new-count[hidden]{display:none}
.iq-section-actions:has(>.iq-discussion-new-count:not([hidden])+.iq-discussion-open-count:not([hidden])){display:inline-flex;gap:var(--iq-space-4)}
.iq-thread-actions-group{display:inline-flex;align-items:center;flex-wrap:wrap;gap:var(--iq-space-1)}
/* Photos in avatars (0.6.0-vnext.20): the image covers the disc; the initials underneath are the fallback. */
.iq-avatar.has-image{position:relative;overflow:hidden}
.iq-avatar.has-image>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit;background:inherit}
.iq-image-crop[data-appearance=bare] .iq-crop-stage:not(.has-image){cursor:pointer}
/* iq-file-picker drop-target (0.6.0-vnext.20): the whole region shows it takes the files while they are dragged over. */
[data-file-drop]{outline:2px dashed var(--iq-accent);outline-offset:4px;border-radius:var(--iq-radius-sm);background:color-mix(in srgb,var(--iq-accent) 5%,transparent)}
iq-file-picker[variant=button]{display:inline-flex}
/* Property list: docs/control-contracts.md. */
.iq-properties[data-label=wide]{--iq-properties-label:120px;gap:0}
.iq-properties[data-label=wide] :is(iq-select,iq-combobox,iq-date-field,iq-tag-picker),.iq-properties[data-label=wide] .iq-property{display:grid;grid-template-columns:var(--iq-properties-label) minmax(0,1fr);align-items:center;column-gap:var(--iq-space-3);min-height:36px;min-width:0;max-width:none;width:100%;margin:0}
.iq-properties[data-label=wide] :is(iq-select,iq-combobox,iq-date-field,iq-tag-picker,.iq-property)>:is(.iq-control-label,.iq-property-label){grid-column:1;margin:0;font-size:var(--iq-type-label-size);font-weight:400;line-height:20px;color:var(--iq-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.iq-properties[data-label=wide] .iq-property>:not(.iq-property-label){grid-column:2;min-width:0;margin:0}
/* A static value starts where a ghost trigger's text does (inside its 1px transparent border). */
.iq-properties[data-label=wide] .iq-property>.iq-property-value{padding-inline:1px}
/* A host's own trigger in a row (e.g. a date range) is a ghost value too: its text on the column edge, the fill bleeding left. */
.iq-properties[data-label=wide] .iq-property>:is(.iq-select-trigger,.iq-date-trigger){justify-self:start;max-width:calc(100% + var(--iq-space-2));margin-left:calc(-1 * var(--iq-space-2))}
.iq-properties[data-label=wide] .iq-select-label{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.iq-properties[data-label=wide] .iq-select-value>.iq-select-meta{display:none}

.iq-properties[data-label=wide] iq-select[appearance=pill] .iq-select-trigger{height:26px;min-height:26px;padding:0 var(--iq-space-3) 0 var(--iq-space-2)}
.iq-properties[data-label=wide] iq-select[appearance=pill] .iq-select-dot{width:7px;height:7px}
.iq-properties[data-label=wide] iq-select[appearance=pill] .iq-select-trigger>.iq-icon:last-child{display:none}
.iq-properties[data-label=wide] .iq-date-trigger>.iq-icon[data-glyph=calendar]{display:none}
.iq-properties[data-label=wide] .iq-date-trigger>.iq-icon[data-glyph=down]{display:inline-block;width:12px;flex:none;color:var(--iq-muted);opacity:0;transition:opacity var(--iq-motion-fast) var(--iq-ease)}
.iq-properties[data-label=wide] .iq-date-trigger:is(:hover,:focus-visible,[aria-expanded=true])>.iq-icon[data-glyph=down]{opacity:1}
.iq-properties[data-label=wide] iq-tag-picker{align-items:start}
.iq-properties[data-label=wide] iq-tag-picker>.iq-control-label{padding-block:var(--iq-space-2)}
.iq-properties[data-label=wide] iq-tag-picker>:not(.iq-control-label){grid-column:2}
.iq-properties[data-label=wide] iq-tag-picker>.iq-tag-picker-list{left:calc(-1 * var(--iq-space-2));right:auto;width:280px;max-width:calc(100% + var(--iq-space-2))}
.iq-properties[data-label=wide] iq-tag-picker .iq-tag-picker-field{justify-self:start;max-width:calc(100% + var(--iq-space-2));margin:2px 0 2px calc(-1 * var(--iq-space-2))}
@media(hover:none){.iq-properties[data-label=wide] .iq-date-trigger>.iq-icon[data-glyph=down]{opacity:1}}
/* Static values: the same text as a trigger's value, in place; key, meta and text parts for composed values. */
.iq-property-value{display:flex;flex-wrap:wrap;align-items:center;gap:var(--iq-space-1) var(--iq-space-2);min-width:0;font-size:var(--iq-type-interface-size);line-height:20px;color:var(--iq-ink)}
.iq-property-value[data-empty=true]{color:var(--iq-muted)}
.iq-property-value[data-tone=high]{color:var(--iq-task-high-text)}
.iq-property-value[data-tone=critical]{color:var(--iq-task-critical-text)}
.iq-property-value>.iq-tag{min-height:24px;padding:2px var(--iq-space-2);font-size:var(--iq-type-caption-size);line-height:1.5;border-radius:var(--iq-radius-xs)}
.iq-property-text{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.iq-property-meta{flex:none;color:var(--iq-muted);white-space:nowrap}
:is(.iq-select-key,.iq-property-key){flex:none;font:500 var(--iq-type-label-size)/1 var(--iq-mono);color:var(--iq-muted)}
dl.iq-properties,.iq-properties dd{margin:0}
/* A service account's avatar: a square with the bot glyph, quieter than a person's disc. */
.iq-avatar.bot{border-radius:var(--iq-radius-xs);background:var(--iq-recessed);color:var(--iq-muted);box-shadow:inset 0 0 0 1px var(--iq-line)}

/* iq-date-field deadline: overdue in the critical tone, today and tomorrow in the high tone; the words come with it. */
.iq-date-trigger>.iq-icon[data-glyph=down]{display:none}
iq-date-field[deadline] .iq-date-trigger[data-deadline=overdue]{color:var(--iq-task-critical-text)}
iq-date-field[deadline] .iq-date-trigger:is([data-deadline=today],[data-deadline=tomorrow]){color:var(--iq-task-high-text)}
/* iq-tag-picker appearance="ghost": a value of a property list. Chips at rest, the hover fill and chevron of the other
   ghost triggers, a click opens the search; «Нет тегов» when empty; the search hint shows only while typing. */
iq-tag-picker[appearance=ghost] .iq-tag-picker-field{display:flex;flex-wrap:wrap;align-items:center;gap:6px var(--iq-space-2);min-height:32px;padding:3px var(--iq-space-2);border:1px solid transparent;border-radius:var(--iq-radius-sm);background:transparent;box-shadow:none;cursor:pointer;transition:background-color var(--iq-motion-fast) var(--iq-ease),border-color var(--iq-motion-fast) var(--iq-ease)}
iq-tag-picker[appearance=ghost] .iq-tag-picker-field:hover{border-color:transparent;background:var(--iq-hover)}
iq-tag-picker[appearance=ghost] .iq-tag-picker-field:focus-within{border-color:transparent;background:var(--iq-hover);box-shadow:none}
iq-tag-picker[appearance=ghost] .iq-tag-picker-field>input{flex:0 1 auto;field-sizing:content;min-width:2ch;height:24px;padding:0;border:0;background:transparent;font-size:var(--iq-type-interface-size);line-height:20px;color:var(--iq-ink);cursor:pointer}
iq-tag-picker[appearance=ghost] .iq-tag-picker-field>input:focus{cursor:text}
iq-tag-picker[appearance=ghost] .iq-tag-picker-field>input::placeholder{color:var(--iq-muted);opacity:1}
iq-tag-picker[appearance=ghost] .iq-tag-picker-values:not(:empty)+input:not(:focus){flex:0 0 0;width:0;min-width:0}
iq-tag-picker[appearance=ghost] .iq-tag-picker-chevron{display:inline-flex;flex:none;color:var(--iq-muted);opacity:0;transition:opacity var(--iq-motion-fast) var(--iq-ease)}
iq-tag-picker[appearance=ghost] .iq-tag-picker-chevron>.iq-icon{width:12px}
iq-tag-picker[appearance=ghost] .iq-tag-picker-field:is(:hover,:focus-within)>.iq-tag-picker-chevron{opacity:1}
@media(hover:none){iq-tag-picker[appearance=ghost] .iq-tag-picker-chevron{opacity:1}}

/* vnext.28 — tree rows with aligned columns (T1), status glyphs in board tones (T2), hold-to-drag (T3) and the
   «Готово» divider with muted rows (T4). Opt-in modifiers: .tree-row keeps its look without them. */
.tree-columns{--tree-columns:88px 116px 60px 64px;--tree-column-gap:16px}
.tree-row.has-columns{display:grid;grid-template-columns:minmax(0,1fr) var(--tree-columns,88px 116px 60px 64px);column-gap:var(--tree-column-gap,16px);align-items:center;min-height:40px;padding:0 8px 0 0;border-block:1px solid transparent;background-clip:padding-box;color:var(--iq-ink)}
.tree-row.has-columns:hover{background:var(--iq-hover)}
.tree-row-main{display:flex;align-items:center;gap:10px;min-width:0;padding-inline-start:calc(16px + var(--tree-level,0)*21px)}
.tree-row.has-columns .tree-node-icon{width:18px;height:18px;flex:0 0 18px}
.tree-row.has-columns .tree-node-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;overflow-wrap:normal}
.tree-row.is-branch .tree-node-label{font-weight:500}
.tree-node-crumb,.tree-node-aside{color:var(--iq-faint);font-weight:400}
.tree-node-aside{margin-inline-start:10px}
.tree-row[data-tone=critical] .tree-node-label{color:var(--iq-task-critical-text);font-weight:500}
.tree-row[data-tone=high] .tree-node-label{color:var(--iq-task-high-text);font-weight:500}
.tree-cell{min-width:0;font-size:var(--iq-type-label-size);color:var(--iq-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-variant-numeric:tabular-nums}
.tree-cell.is-end{text-align:end}
.tree-cell.is-strong{color:var(--iq-ink)}
.tree-cell.is-warning{color:var(--iq-warning)}
.tree-cell.is-faint{color:var(--iq-faint)}
.tree-cell-button{max-width:100%;margin:0;padding:0;border:0;border-bottom:1px dotted transparent;background:none;font:inherit;color:inherit;text-align:inherit;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}
.tree-row:hover .tree-cell-button.is-editable,.tree-cell-button.is-editable:focus-visible{border-bottom-color:var(--iq-control)}
.tree-row.has-columns.is-selected{background:var(--iq-accent-soft);color:var(--iq-accent)}
.tree-row.has-columns.is-selected :is(.tree-node-label,.tree-node-crumb,.tree-node-aside,.tree-cell){color:var(--iq-accent)}
.iq-status-glyph{display:inline-grid;place-items:center;width:15px;height:15px;color:var(--iq-control)}
.iq-status-glyph svg{display:block}
.iq-status-glyph[data-tone=info]{color:var(--iq-info)}
.iq-status-glyph[data-tone=warning]{color:var(--iq-warning)}
.iq-status-glyph[data-tone=planned]{color:var(--iq-planned)}
.iq-status-glyph[data-tone=success]{color:var(--iq-success)}
.iq-status-check{stroke:var(--iq-surface)}
.iq-status-word{font-size:var(--iq-type-meta-size);color:var(--iq-muted)}
.tree-cell .iq-status-word{font-size:inherit}
.tree-divider{display:flex;align-items:center;gap:12px;height:36px;margin-top:6px;padding-inline:16px 8px;font-size:var(--iq-type-caption-size);font-weight:500;color:var(--iq-faint)}
.tree-divider::after{content:"";flex:1;height:1px;background:var(--iq-line)}
.tree-row.is-muted .tree-node-label,.tree-row.is-muted[data-tone] .tree-node-label{color:var(--iq-muted);font-weight:400}
.tree-row.is-muted .tree-cell{color:var(--iq-faint)}
.tree-row[data-tree-dragging]{opacity:.35}
:root[data-tree-drag-active],:root[data-tree-drag-active] *{cursor:grabbing;user-select:none}
[data-tree-drop-target]{position:relative;box-shadow:inset 0 0 0 1.5px var(--iq-accent)}
.iq-tree-drop-line{position:absolute;inset-inline:12px;height:2px;margin-top:-1px;background:var(--iq-accent);border-radius:var(--iq-radius-pill);pointer-events:none}
.iq-tree-drop-line::before{content:"";position:absolute;inset-inline-start:-3px;top:-3px;width:8px;height:8px;border-radius:var(--iq-radius-pill);background:var(--iq-accent)}
.iq-tree-drag-ghost{position:fixed;inset:0 auto auto 0;margin:0;padding:4px 8px;overflow:visible;border:1px solid var(--iq-raised-edge);border-radius:var(--iq-radius-sm);background:var(--iq-raised);color:var(--iq-ink);box-shadow:var(--iq-shadow-3);pointer-events:none;will-change:transform;animation:iq-tree-lift var(--iq-motion-fast) var(--iq-ease)}
.iq-tree-drag-ghost .tree-row{background:transparent}
.iq-tree-drag-ghost[data-fit]{width:max-content;max-width:min(420px,calc(100vw - 32px))}
.iq-tree-drag-badge{position:absolute;inset-inline-end:-10px;top:-10px;padding:3px 9px;border-radius:var(--iq-radius-pill);background:var(--iq-primary);color:var(--iq-on-primary);font-size:var(--iq-type-meta-size);font-weight:600;white-space:nowrap}
@keyframes iq-tree-lift{from{scale:.98}}
@media(prefers-reduced-motion:reduce){.iq-tree-drag-ghost{animation:none}}

/* ---------- Mentions (0.6.0-vnext.29) ----------
   A mention is a quiet pill: accent text on the accent's soft fill at the line's own size, weight 500, never broken
   inside a name. The @ list is the calm select list of vnext.27 (34px rows, one hover fill, the active row in accent)
   with a sentence-case label above the service accounts instead of a caption. */
.md-mention{padding:0 2px;border-radius:var(--iq-radius-xs);background:var(--iq-accent-soft);color:var(--iq-accent);font-weight:500;white-space:nowrap}
.iq-mention-popup{width:280px;max-height:320px}
.iq-mention-popup .iq-option-label{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.iq-mention-popup .iq-option small{margin-top:1px}
.iq-mention-heading{margin-top:var(--iq-space-1);padding:var(--iq-space-2) var(--iq-space-2) var(--iq-space-1);font-size:var(--iq-type-caption-size);line-height:16px;color:var(--iq-muted)}
.iq-mention-heading:first-child{margin-top:0;padding-top:var(--iq-space-1)}

/* Scale (0.6.0-vnext.30): done, pending, a target mark and an overrun past it, drawn by ui.scale(). The track ends at
   the mark; only an overrun reaches beyond. lg sums up a period, md sits in an editor, sm is one row of a list. */
.iq-scale{--iq-scale-height:14px;--iq-scale-radius:var(--iq-radius-xs);--iq-scale-reach:6px;position:relative;display:block;height:var(--iq-scale-height)}
.iq-scale[data-size="lg"]{--iq-scale-height:26px;--iq-scale-radius:7px;--iq-scale-reach:7px}
.iq-scale[data-size="sm"]{--iq-scale-height:6px;--iq-scale-radius:var(--iq-radius-pill);--iq-scale-reach:5px}
.iq-scale>span{position:absolute;top:0;bottom:0;left:var(--iq-scale-from);width:calc(var(--iq-scale-to) - var(--iq-scale-from))}
.iq-scale-track{background:var(--iq-surface);border-radius:var(--iq-scale-radius)}
.iq-scale-done{background:var(--iq-ink)}
.iq-scale-pending{background:color-mix(in srgb,var(--iq-ink) 30%,transparent)}
.iq-scale[data-size="sm"] .iq-scale-done{background:color-mix(in srgb,var(--iq-ink) 62%,transparent)}
.iq-scale[data-size="sm"] .iq-scale-pending{background:color-mix(in srgb,var(--iq-ink) 22%,transparent)}
.iq-scale-over{background:var(--iq-danger)}
.iq-scale[data-over="success"] .iq-scale-over{background:var(--iq-success)}
.iq-scale>[data-start]{border-start-start-radius:var(--iq-scale-radius);border-end-start-radius:var(--iq-scale-radius)}
.iq-scale>[data-end]{border-start-end-radius:var(--iq-scale-radius);border-end-end-radius:var(--iq-scale-radius)}
.iq-scale>.iq-scale-mark{left:var(--iq-scale-at);width:2px;top:calc(-1 * var(--iq-scale-reach));bottom:calc(-1 * var(--iq-scale-reach));background:var(--iq-ink);transform:translateX(-1px)}
@media (forced-colors: active){.iq-scale-track{border:1px solid CanvasText}.iq-scale-done,.iq-scale-mark{background:CanvasText}.iq-scale-pending{background:GrayText}.iq-scale-over{background:Highlight}}
/* Amount with its unit (vnext.30): ui.amount(). */
.iq-amount input{text-align:end;font-variant-numeric:tabular-nums}
/* Tooltip figures (vnext.30): «label<TAB>value» lines of a rich tooltip. */
.iq-tooltip-row{display:flex;justify-content:space-between;align-items:baseline;gap:16px;color:color-mix(in srgb,var(--iq-canvas) 80%,transparent)}
.iq-tooltip-row strong{color:var(--iq-canvas);font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}

iq-tree[navigation] button.tree-disclosure{border:0;background:none;color:inherit;cursor:pointer;min-width:28px;height:36px;padding:0}iq-tree[navigation] button.tree-disclosure:focus-visible{outline:2px solid var(--iq-accent);outline-offset:2px;border-radius:var(--iq-radius-sm)}

/* Document compositions: docs/document.md. */
iq-tree[appearance=plain] .tree-panel{background:none;border:0;border-radius:0;padding:0}
iq-tree[appearance=plain] .tree-node-icon,iq-tree[hide-counts] .tree-node-count{display:none}
iq-tree[appearance=plain] .tree-row{padding-inline-start:calc(4px + min(var(--tree-level),5)*12px);gap:6px;align-items:flex-start}
iq-tree[density=compact] .tree-row{min-height:36px;padding-block:0}
iq-tree[density=compact] .tree-node-label{padding-block:8px;line-height:20px}
.iq-document-layout{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100%;min-width:0}
.iq-document-rail{min-width:0;padding:20px 16px;border-inline-end:1px solid var(--iq-line);background:var(--iq-surface)}
.iq-document-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:64px;padding:12px 32px;min-width:0}
.iq-document-content{width:100%;max-width:76ch;margin-inline:auto;padding:32px 40px 80px;box-sizing:border-box;min-width:0;overflow-wrap:anywhere}
.iq-document-title{min-height:1.25em;max-height:none;display:block;width:100%;box-sizing:border-box;margin:0 0 16px;padding:0;border:0;background:none;color:var(--iq-ink);font:600 var(--iq-type-heading2-size)/1.25 var(--iq-font);letter-spacing:var(--iq-tracking-h1);overflow-wrap:anywhere;resize:none}
iq-markdown-editor[variant=document] .markdown-editor{background:none;border:0;border-radius:0}
iq-markdown-editor[variant=document] .md-editor-head{justify-content:flex-end;background:none;padding:0 0 8px;border:0}
iq-markdown-editor[variant=document] .md-editor-head>span,iq-markdown-editor[variant=document] .md-hint{display:none}
iq-markdown-editor[variant=document] .md-toolbar{padding:8px 0;background:none}
iq-markdown-editor[variant=document] :is(.md-input,.md-preview){padding:20px 0;min-height:320px;max-height:none;background:none}
iq-markdown-editor[variant=document] footer{background:none;padding:8px 0;border:0}
iq-markdown-editor[variant=document] footer:not(:has(.md-footer-actions:not([hidden]),[data-md-submit],[data-md-cancel])){display:none}
@media(max-width:720px){.iq-document-layout{grid-template-columns:minmax(0,1fr)}.iq-document-rail{display:none}.iq-document-bar{padding:12px 16px}.iq-document-content{padding:24px 20px 64px}.iq-document-title{font-size:1.75rem}}
@media(pointer:coarse),(max-width:720px){iq-tree[density=compact] .tree-row{min-height:44px}.iq-menu-popup button,:is(.iq-document-bar,.iq-document-rail,.iq-dialog) .iq-btn{min-height:44px;min-width:44px}iq-tree[navigation] button.tree-disclosure{min-width:44px;height:44px}iq-tree[density=compact] .tree-node-label{padding-block:12px}iq-markdown-editor[variant=document] :is(.md-tool,.md-view-toggle){min-width:44px;min-height:44px}}

/* Generated by scripts/codemods/motion-tokens.mjs from tokens/semantic.json — do not edit by hand (npm run build keeps it in sync).
   One reduced-motion strategy (MOT-01/MOT-10): the OS preference and the product setting both zero the motion tokens, so every
   component transition and animation collapses to 0 ms while transitionend/animationend still fire and component reduced-motion
   rules keep working. Delays that gate visibility (--iq-loading-delay) are not motion and stay. */
@media (prefers-reduced-motion: reduce){:root{--iq-motion-instant:0ms;--iq-motion-fast:0ms;--iq-motion-standard:0ms;--iq-motion-enter:0ms;--iq-motion-layout:0ms;--iq-motion-scene:0ms;scroll-behavior:auto}}
:root[data-motion=reduced]{--iq-motion-instant:0ms;--iq-motion-fast:0ms;--iq-motion-standard:0ms;--iq-motion-enter:0ms;--iq-motion-layout:0ms;--iq-motion-scene:0ms;scroll-behavior:auto}
/* Theme switch (MOT-05): interaction.withoutTransitions() holds the attribute for one painted frame so a theme change lands at once. */
:root[data-theme-switching],:root[data-theme-switching] *,:root[data-theme-switching] *::before,:root[data-theme-switching] *::after{transition:none!important}
/* Loading (MOT-07): interaction.bindLoading() adds .iq-loading-slow after --iq-loading-slow and reveals the note. */
.iq-loading-note{display:none;margin:0;color:var(--iq-muted)}
.iq-loading.iq-loading-slow>.iq-loading-note{display:block}

/* IQUIPAGE whiteboard 05.4 — component layout and content primitives. */
.wb-world{position:absolute;inset:0 auto auto 0;width:0;height:0;transform-origin:0 0}.wb-stage.is-interacting .wb-world{will-change:transform}.wb-objects{position:absolute;inset:0 auto auto 0;width:0;height:0}.wb-links{position:absolute;inset:0 auto auto 0;width:1px;height:1px;overflow:visible;pointer-events:none;z-index:2}
.wb-object{position:absolute;outline:0;user-select:none;border-radius:7px;color:var(--iq-wb-note-ink);background:var(--iq-raised);box-shadow:var(--iq-wb-object-shadow);padding:20px;display:flex;flex-direction:column;gap:12px;cursor:move;min-width:0;overflow:visible;z-index:3;font:400 var(--iq-type-title-size)/1.45 var(--iq-font);letter-spacing:var(--iq-tracking-h2)}
.wb-object[data-type=sticky]{background:var(--iq-wb-sand)}.wb-object[data-color=lavender]{background:var(--iq-wb-lavender)}.wb-object[data-color=mint]{background:var(--iq-wb-mint)}.wb-object[data-color=sky]{background:var(--iq-wb-sky)}.wb-object[data-color=rose]{background:var(--iq-wb-rose)}.wb-object[data-color=neutral]{background:var(--iq-raised);color:var(--iq-ink)}
.wb-object-text{white-space:pre-wrap;overflow-wrap:anywhere;min-height:24px;flex:1;outline:none;line-height:inherit;letter-spacing:inherit}.wb-object-text:empty::before{content:attr(data-placeholder);opacity:.65;pointer-events:none}.wb-object-text[contenteditable=true]{user-select:text;cursor:text;caret-color:currentColor;min-height:1.5em}.wb-object-text[contenteditable=true]::selection{background:var(--iq-focus-fill);color:var(--iq-focus-text)}.wb-object.is-editing{cursor:text}.wb-note-meta{margin-top:auto;display:flex;justify-content:space-between;gap:8px;font-size:var(--iq-type-meta-size);font-weight:500;line-height:16px;letter-spacing:var(--iq-tracking-body);opacity:.8}.wb-vote-count{font-variant-numeric:tabular-nums}.wb-object[data-type=text]{box-shadow:none!important;background:transparent;color:var(--iq-ink);font-size:1.625rem;line-height:1.25;font-weight:600;letter-spacing:var(--iq-tracking-display);padding:6px}.wb-object[data-type=shape]{color:var(--iq-ink);align-items:stretch;justify-content:center;border:1px solid var(--iq-wb-shape-line);border-radius:12px;text-align:center;box-shadow:none;font-size:var(--iq-type-body-size)}.wb-object[data-type=shape] .wb-object-text{flex:0}.wb-object[data-shape=ellipse]{border-radius:50%}.wb-object[data-shape=diamond]{background:transparent!important;border:0;box-shadow:none!important;padding:28px 36px}.wb-object[data-shape=diamond]::before{content:'';position:absolute;inset:0;background:var(--iq-raised);clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);z-index:-1;filter:none}.wb-object[data-shape=diamond] .wb-object-text{position:relative;z-index:2}.wb-object[data-type=task]{color:var(--iq-ink);font-size:var(--iq-type-body-size);font-weight:500;border-radius:10px;border:1px solid var(--iq-line);background:var(--iq-raised)}.wb-task-label{display:flex;align-items:center;gap:7px;font-size:var(--iq-type-meta-size);letter-spacing:var(--iq-tracking-body);font-weight:500;color:var(--iq-muted)}
.wb-object[data-type=frame]{padding:0;background:var(--iq-wb-frame);border:1px solid var(--iq-wb-frame-line);box-shadow:none;z-index:0;border-radius:12px;color:var(--iq-ink);pointer-events:none}.wb-frame-head{pointer-events:auto;position:absolute;top:0;left:0;right:0;min-height:52px;display:flex;align-items:center;gap:10px;padding:14px 20px;border-bottom:1px solid var(--iq-wb-frame-line);font-size:var(--iq-type-body-size);font-weight:600;line-height:1.4;cursor:move}.wb-frame-head .wb-object-text{min-height:22px;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wb-frame-number{font:500 var(--iq-type-meta-size) var(--iq-mono);color:var(--iq-muted);letter-spacing:var(--iq-tracking-caps)}.wb-object[data-type=frame] .wb-resize{pointer-events:auto}.wb-object[data-type=image]{padding:0 0 8px;border-radius:9px;overflow:hidden;color:var(--iq-ink);background:var(--iq-raised)}.wb-object[data-type=image] img{width:100%;height:calc(100% - 24px);object-fit:contain;flex-shrink:0;pointer-events:none;border-radius:7px 7px 0 0}.wb-image-caption{font-size:var(--iq-type-meta-size);line-height:1.4;padding:0 10px;flex:0;min-height:16px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.wb-object[data-type=drawing]{padding:0;box-shadow:none;border-radius:0;background:transparent;color:var(--iq-ink)}.wb-drawing{width:100%;height:100%;overflow:visible;pointer-events:none}
.wb-object.is-selected{box-shadow:inset 0 0 0 2px var(--iq-focus),var(--iq-wb-object-shadow)}.wb-object[data-type=frame].is-selected{border-color:var(--iq-focus);box-shadow:inset 0 0 0 1px var(--iq-focus)}.wb-object[data-type=text].is-selected,.wb-object[data-type=drawing].is-selected{box-shadow:inset 0 0 0 1px var(--iq-focus)!important}.wb-object[data-shape=diamond].is-selected{box-shadow:inset 0 0 0 1px var(--iq-focus)!important}.wb-object:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){box-shadow:inset 0 -3px var(--iq-focus),var(--iq-wb-object-shadow)}.wb-object[data-locked=true]{cursor:default}.wb-resize{position:absolute;right:-5px;bottom:-5px;width:12px;height:12px;padding:0;border:2px solid var(--iq-focus);border-radius:3px;background:var(--iq-raised);cursor:nwse-resize;z-index:4}.wb-resize::before{content:'';position:absolute;inset:-9px}
.wb-edge-hit{fill:none;stroke:transparent;stroke-width:18;pointer-events:stroke;cursor:pointer}.wb-edge-line{fill:none;stroke:var(--iq-wb-edge);stroke-width:1.6;pointer-events:none}.wb-connection.is-selected .wb-edge-line,.wb-connection:focus:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])) .wb-edge-line{stroke:var(--iq-focus);stroke-width:2.5}.wb-connection{outline:none}.wb-connection text{font:500 var(--iq-type-caption-size) var(--iq-font);fill:var(--iq-muted);paint-order:stroke;stroke:var(--iq-wb-canvas);stroke-width:6px;stroke-linejoin:round;pointer-events:all;cursor:pointer}.wb-marquee{position:absolute;border:1px solid var(--iq-focus);background:var(--iq-wb-lasso);pointer-events:none;z-index:8}


/* Chrome and interaction hierarchy. Nothing is hidden behind a hover-only icon. */
iq-whiteboard{display:block;min-width:0;color:var(--iq-ink);font:var(--iq-type-interface-size)/1.5 var(--iq-font)}
iq-whiteboard *,iq-whiteboard *::before,iq-whiteboard *::after{box-sizing:border-box}
iq-whiteboard [hidden]{display:none!important}
.wb-shell{position:relative;isolation:isolate;display:flex;flex-direction:column;background:var(--iq-raised);border:1px solid var(--iq-line);border-radius:16px;overflow:hidden;text-align:left;min-width:0}
.wb-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 20px;border-bottom:1px solid var(--iq-line);min-height:82px;background:var(--iq-raised)}
.wb-heading{display:flex;align-items:center;gap:12px;min-width:0;flex:1}.wb-heading>div{min-width:0}
.wb-board-mark{display:grid;place-items:center;width:38px;height:38px;flex:none;border-radius:11px;background:var(--iq-surface);color:var(--iq-ink)}
.wb-title{font:600 .9375rem/1.5 var(--iq-font);color:var(--iq-ink);text-align:left;background:none;padding:0;border:0;max-width:100%;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;letter-spacing:var(--iq-tracking-h2)}
.wb-title:hover:not(:disabled){text-decoration:underline;text-underline-offset:4px}.wb-title:disabled{cursor:default}
.wb-save-state{font-size:var(--iq-type-meta-size);line-height:1.5;color:var(--iq-muted);margin-top:2px;overflow-wrap:anywhere}
.wb-header-actions{display:flex;align-items:center;gap:6px;flex:none}.wb-header-actions .wb-primary{margin-right:4px}
.wb-button{display:inline-flex;justify-content:center;align-items:center;gap:8px;min-height:36px;min-width:36px;padding:8px 11px;border:0;border-radius:8px;background:transparent;color:var(--iq-ink);font:500 var(--iq-type-caption-size)/1.4 var(--iq-font);text-decoration:none;cursor:pointer;white-space:nowrap;transition:background-color var(--iq-motion-fast),color var(--iq-motion-fast),transform var(--iq-motion-fast);vertical-align:middle}
.wb-button .iq-icon{flex:none;display:block}.wb-button.wb-icon-button{padding:8px}
.wb-button:hover:not(:disabled){background:var(--iq-hover);color:var(--iq-ink)}.wb-button:active:not(:disabled){transform:translateY(1px)}
.wb-button:disabled{opacity:.42;cursor:default}.wb-button.wb-primary{background:var(--iq-primary);color:var(--iq-on-primary);min-height:40px;padding:10px 15px}
.wb-button.wb-primary:hover:not(:disabled){background:var(--iq-primary);color:var(--iq-on-primary);opacity:.92}
.wb-shell :is(.wb-button,.wb-tool,.wb-title,.wb-frame-jump,.wb-command-item,.wb-color-option,.wb-search-result,.wb-template-card,.wb-outcome-title):focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){outline:0;box-shadow:inset 0 -2px var(--iq-focus);background:var(--iq-focus-fill);color:var(--iq-focus-text)}
.wb-command-row{display:flex;align-items:center;gap:12px;min-height:58px;padding:9px 16px;border-bottom:1px solid var(--iq-line);background:var(--iq-raised)}
.wb-idle-context{display:flex;align-items:center;gap:12px;flex:1;min-width:0;font-size:var(--iq-type-caption-size)}.wb-mode-name{font-weight:600;white-space:nowrap}.wb-mode-description{color:var(--iq-muted);line-height:1.45;min-width:0}.wb-idle-context .wb-button{margin-left:auto}
.wb-history{display:flex;gap:2px;flex:none;margin-left:auto;border-left:1px solid var(--iq-line);padding-left:10px}
.wb-context{display:flex;align-items:center;gap:5px;min-width:0;overflow-x:auto;scrollbar-width:thin;flex:1;min-height:38px}
.wb-context .wb-button{flex:none}.wb-selection-count{font-size:var(--iq-type-caption-size);font-weight:600;white-space:nowrap;margin-right:10px;flex:none}.wb-edit-hint{font-size:var(--iq-type-caption-size);color:var(--iq-muted);margin-right:auto}
.wb-workspace{display:grid;grid-template-columns:76px minmax(0,1fr);position:relative;min-height:0}.wb-shell.has-panel .wb-workspace{grid-template-columns:76px minmax(0,1fr) 296px}
.wb-rail{display:flex;flex-direction:column;align-items:center;gap:4px;padding:14px 7px;background:var(--iq-raised);border-right:1px solid var(--iq-line);z-index:5;min-height:0;overflow-y:auto;scrollbar-width:thin}
.wb-tool{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:54px;width:60px;padding:8px 3px;flex:none;border:0;border-radius:10px;color:var(--iq-muted);background:transparent;cursor:pointer;transition:background-color var(--iq-motion-fast),color var(--iq-motion-fast)}
.wb-tool>span{font:500 var(--iq-type-meta-size)/1.3 var(--iq-font)}.wb-tool .iq-icon{display:block;flex:none}.wb-tool:hover:not(:disabled){background:var(--iq-hover);color:var(--iq-ink)}
.wb-tool[aria-pressed=true]{background:var(--iq-primary);color:var(--iq-on-primary)}.wb-tool:disabled{opacity:.35;cursor:default}
.wb-rail>.wb-button{display:flex;flex-direction:column;gap:5px;min-height:54px;width:60px;padding:8px 2px;font-size:var(--iq-type-meta-size);margin-top:5px;border-top:1px solid var(--iq-line);border-radius:0}
.wb-center{display:flex;flex-direction:column;min-width:0;position:relative}
.wb-stage{min-height:580px;height:580px;position:relative;overflow:hidden;touch-action:none;outline:0;background-color:var(--iq-wb-canvas);background-image:radial-gradient(var(--iq-wb-dot) .8px,transparent .9px);background-size:var(--wb-dot-size,24px) var(--wb-dot-size,24px);user-select:none;cursor:default;contain:layout paint}
.wb-stage[data-canvas-tool=hand],.wb-stage.is-pan{cursor:grab}.wb-stage.is-interacting[data-canvas-tool=hand],.wb-stage.is-interacting.is-pan{cursor:grabbing}
.wb-stage:is([data-canvas-tool=sticky],[data-canvas-tool=text],[data-canvas-tool=shape],[data-canvas-tool=frame],[data-canvas-tool=pen],[data-canvas-tool=connect]){cursor:crosshair}
.wb-stage.is-file-over{box-shadow:inset 0 0 0 3px var(--iq-focus);background-color:var(--iq-focus-fill)}
.wb-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:54px;padding:8px 12px;background:var(--iq-raised);border-top:1px solid var(--iq-line)}
.wb-footer-left,.wb-zoom{display:flex;gap:2px;align-items:center}.wb-footer .wb-button{font-size:var(--iq-type-meta-size);padding:7px 8px;min-height:34px}.wb-zoom-label{font-variant-numeric:tabular-nums;min-width:46px}.wb-hint{font-size:var(--iq-type-meta-size);color:var(--iq-muted);text-align:center;line-height:1.5}
.wb-object{font-size:1.0625rem;line-height:1.45;letter-spacing:var(--iq-tracking-h3);border-radius:8px;transition:box-shadow var(--iq-motion-fast);}
.wb-object.is-connect-source{box-shadow:inset 0 0 0 3px var(--iq-focus),var(--iq-wb-object-shadow)}
.wb-frame-head{min-height:56px;padding:10px 16px;gap:10px;border-bottom:0;display:flex}.wb-frame-head .wb-object-text{font-size:var(--iq-type-body-size);font-weight:600;flex:1;white-space:normal;overflow-wrap:anywhere;line-height:1.3;max-height:none}
.wb-frame-head .wb-button{flex:none;min-width:32px;min-height:32px;padding:6px;border-radius:8px;background:var(--iq-raised);color:var(--iq-ink);pointer-events:auto}
.wb-frame-head .wb-button:hover{background:var(--iq-hover)}.wb-frame-number{font-size:var(--iq-type-meta-size)}
.wb-object[data-type=task]{font-weight:500;gap:8px;padding:16px}.wb-task-label{font-size:var(--iq-type-meta-size)}.wb-task-owner{flex-shrink:0;display:flex;align-items:center;gap:6px;font-size:var(--iq-type-meta-size);font-weight:400;line-height:1.4;color:var(--iq-muted);margin-top:auto}.wb-task-owner>span{flex:1;min-width:0;overflow-wrap:anywhere}.wb-task-check{display:grid;place-items:center;flex:none;border:0;background:var(--iq-surface);color:var(--iq-ink);border-radius:6px;width:28px;height:28px;padding:4px;cursor:pointer}
.wb-task-check[aria-pressed=true]{color:var(--iq-success)}
.wb-panel{height:634px;overflow:auto;border-left:1px solid var(--iq-line);padding:0;background:var(--iq-raised);min-width:0;scrollbar-width:thin;z-index:8}
.wb-panel>header{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px 16px 14px;background:var(--iq-raised);border-bottom:1px solid var(--iq-line)}
.wb-panel h3{font-size:var(--iq-type-interface-size);font-weight:600;line-height:1.35;margin:0}.wb-panel h4{font-size:var(--iq-type-interface-size);font-weight:600;line-height:1.45;margin:4px 0 10px}.wb-panel-content{display:flex;flex-direction:column;gap:12px;padding:16px;min-width:0}
.wb-panel p{font-size:var(--iq-type-caption-size);line-height:1.65;margin:0 0 8px;color:var(--iq-muted)}.wb-panel .wb-panel-lead{margin-bottom:6px}
.wb-panel-content>section{padding:8px 0 20px;border-bottom:1px solid var(--iq-line)}.wb-panel-kicker{font-size:var(--iq-type-meta-size);letter-spacing:var(--iq-tracking-caps);color:var(--iq-muted);text-transform:uppercase}
.wb-command-item{display:flex;align-items:center;gap:10px;width:100%;padding:12px 10px;border:0;border-radius:10px;background:var(--iq-surface);color:var(--iq-ink);text-align:left;cursor:pointer;min-height:48px}
.wb-command-item>span{min-width:0;flex:1}.wb-command-item b{display:block;font-size:var(--iq-type-caption-size);font-weight:500;line-height:1.45}.wb-command-item small{display:block;font-size:var(--iq-type-meta-size);line-height:1.5;color:var(--iq-muted);margin-top:3px}.wb-command-item>.iq-icon{flex:none}.wb-command-item>.iq-icon:last-child{transform:rotate(-90deg);color:var(--iq-muted)}.wb-command-item:hover:not(:disabled){background:var(--iq-hover)}.wb-command-item:disabled{opacity:.4;cursor:default}
.wb-outline-row{padding-bottom:10px;border-bottom:1px solid var(--iq-line)}.wb-frame-jump{display:flex;align-items:center;gap:10px;text-align:left;border:0;background:transparent;color:var(--iq-ink);width:100%;padding:10px 6px;border-radius:8px;cursor:pointer}.wb-frame-jump>span{font:var(--iq-type-meta-size) var(--iq-mono);color:var(--iq-muted)}.wb-frame-jump>div{min-width:0;flex:1}.wb-frame-jump b{font-size:var(--iq-type-label-size);line-height:1.5;font-weight:500;overflow-wrap:anywhere}.wb-frame-jump small{display:block;font-size:var(--iq-type-meta-size);color:var(--iq-muted);margin-top:3px}.wb-outline-select{font-size:var(--iq-type-meta-size);min-height:30px;margin-left:24px;color:var(--iq-muted)}
.wb-appearance-grid{display:grid;gap:8px}.wb-color-option{display:flex;align-items:center;gap:12px;border:0;background:var(--iq-surface);color:var(--iq-ink);border-radius:9px;padding:10px 12px;cursor:pointer;font:var(--iq-type-caption-size) var(--iq-font)}.wb-color-option>span{flex:1;text-align:left}.wb-color-dot{display:grid;place-items:center;flex:none;width:22px;height:22px;border-radius:6px;background:var(--iq-wb-sand);color:var(--iq-wb-note-ink)}
.wb-color-dot[data-color=lavender]{background:var(--iq-wb-lavender)}.wb-color-dot[data-color=mint]{background:var(--iq-wb-mint)}.wb-color-dot[data-color=sky]{background:var(--iq-wb-sky)}.wb-color-dot[data-color=rose]{background:var(--iq-wb-rose)}.wb-color-dot[data-color=neutral]{background:var(--iq-surface);color:var(--iq-ink)}
.wb-search-label{display:grid;gap:8px;font-size:var(--iq-type-meta-size);color:var(--iq-muted)}.wb-search-results{display:grid;gap:4px}.wb-search-count{font-size:var(--iq-type-meta-size)!important}.wb-search-result{display:flex;align-items:center;gap:10px;width:100%;padding:10px 5px;text-align:left;border:0;border-bottom:1px solid var(--iq-line);background:none;color:var(--iq-ink);cursor:pointer;border-radius:6px}
.wb-search-result>span{min-width:0;flex:1}.wb-search-result small{display:block;font-size:var(--iq-type-meta-size);color:var(--iq-muted);margin-bottom:4px}.wb-search-result b{display:block;font-size:var(--iq-type-caption-size);line-height:1.5;font-weight:500;overflow-wrap:anywhere;max-height:4.5em;overflow:hidden}.wb-search-result .iq-icon{flex:none}
.wb-template-grid{display:grid;grid-template-columns:1fr;gap:12px}.wb-template-card{display:flex;flex-direction:column;gap:8px;border:1px solid var(--iq-line);border-radius:10px;padding:12px;background:var(--iq-raised);color:var(--iq-ink);text-align:left;cursor:pointer}
.wb-template-card b{font-size:var(--iq-type-label-size);line-height:1.5;font-weight:600}.wb-template-card small{font-size:var(--iq-type-meta-size);line-height:1.65;color:var(--iq-muted)}.wb-template-card:hover:not(:disabled){background:var(--iq-surface)}.wb-template-card:disabled{opacity:.45;cursor:default}.wb-template-use{font-size:var(--iq-type-meta-size);display:flex;align-items:center;justify-content:space-between;width:100%;font-weight:500;padding-top:4px}
.wb-template-art{width:100%;border-radius:6px;background:var(--iq-wb-canvas);overflow:hidden}.wb-template-art svg{display:block;width:100%;height:auto}.wb-template-art rect{fill:var(--iq-wb-lavender)}.wb-template-art rect[data-color=sand]{fill:var(--iq-wb-sand)}.wb-template-art rect[data-color=mint]{fill:var(--iq-wb-mint)}.wb-template-art rect.is-frame{fill:var(--iq-wb-frame);stroke:var(--iq-wb-frame-line);stroke-width:.5}
.wb-help-step{padding-bottom:14px;border-bottom:1px solid var(--iq-line)}.wb-help-step>b{display:flex;align-items:center;gap:9px;font-size:var(--iq-type-label-size);margin-bottom:12px;line-height:1.5}.wb-help-step>b>span{display:grid;place-items:center;background:var(--iq-surface);color:var(--iq-ink);width:25px;height:25px;border-radius:50%;font-size:var(--iq-type-meta-size);flex:none}.wb-help-step .wb-button{background:var(--iq-surface)}
.wb-shortcut-details summary{cursor:pointer;font-size:var(--iq-type-caption-size);font-weight:500;padding:8px 0}.wb-shortcuts{display:grid;grid-template-columns:1fr;gap:3px;margin:12px 0}.wb-shortcuts dt{font-size:var(--iq-type-meta-size);font-weight:600;margin-top:8px}.wb-shortcuts dd{font-size:var(--iq-type-meta-size);color:var(--iq-muted);margin:0 0 4px}
.wb-outcome{display:flex;align-items:flex-start;gap:5px;padding:12px 0;border-bottom:1px solid var(--iq-line)}.wb-outcome .wb-button{min-height:30px;min-width:26px;padding:4px}.wb-outcome-title{flex:1;min-width:0;border:0;background:none;color:var(--iq-ink);text-align:left;padding:3px 4px;cursor:pointer;border-radius:6px}.wb-outcome-title b{font-size:var(--iq-type-caption-size);font-weight:500;line-height:1.55;display:block}.wb-outcome-title small{display:block;font-size:var(--iq-type-meta-size);color:var(--iq-muted);line-height:1.5;margin-top:5px}
.wb-timer{font:500 2.5rem/1.2 var(--iq-mono);margin:20px 0;font-variant-numeric:tabular-nums}.wb-timer-minutes{font-size:var(--iq-type-caption-size);display:grid;gap:6px;margin-bottom:12px}.wb-vote-results{padding:0;list-style:none}.wb-vote-results li{display:flex;align-items:flex-start;gap:12px;font-size:var(--iq-type-caption-size);margin:10px 0}.wb-vote-results b{font-size:var(--iq-type-body-size)}
.wb-empty{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:40px;text-align:center;pointer-events:none}.wb-empty>p{max-width:340px;font-size:var(--iq-type-interface-size);line-height:1.65;margin:0;color:var(--iq-muted)}.wb-empty h3{font-size:1.625rem;font-weight:500;letter-spacing:var(--iq-tracking-display);margin:4px 0 0;line-height:var(--iq-type-heading3-lineHeight)}.wb-empty>div{display:flex;gap:8px;margin-top:4px;flex-wrap:wrap;justify-content:center}.wb-empty button{pointer-events:auto}.wb-empty .wb-button{background:var(--iq-primary);color:var(--iq-on-primary);padding:11px 16px;min-height:42px}.wb-empty .wb-button+button{background:var(--iq-raised);color:var(--iq-ink);border:1px solid var(--iq-line)}.wb-empty-mark{display:grid;place-items:center;width:56px;height:56px;background:var(--iq-wb-sand);color:var(--iq-wb-note-ink);border-radius:12px}.wb-empty-template{margin-top:8px;display:flex;align-items:center;gap:8px;border:0;background:none;color:var(--iq-muted);font-size:var(--iq-type-caption-size);cursor:pointer}
.wb-state-surface{position:absolute;inset:0;background:var(--iq-wb-canvas);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:32px;text-align:center;z-index:12}.wb-state-surface h3{font-size:var(--iq-type-lead-size);margin:0}.wb-state-surface p{font-size:var(--iq-type-interface-size);color:var(--iq-muted);margin:0}.wb-state-error{display:grid;place-items:center;width:52px;height:52px;border-radius:12px;background:var(--iq-danger-fill);color:var(--iq-on-danger)}.wb-loading-symbol{color:var(--iq-muted)}
.wb-notice{display:flex;align-items:center;gap:12px;padding:10px 18px;background:var(--iq-surface);border-bottom:1px solid var(--iq-line);font-size:var(--iq-type-caption-size);flex-wrap:wrap}.wb-notice>span{display:flex;align-items:center;gap:8px;flex:1;min-width:150px}.wb-notice .wb-button{min-height:32px}.wb-notice [data-glyph=xCircle]{color:var(--iq-danger)}.wb-notice [data-glyph=warning]{color:var(--iq-warning)}
.wb-fullscreen{padding:0;border:0;border-radius:12px;max-width:none;max-height:none;width:calc(100vw - 24px);height:calc(100dvh - 24px);background:var(--iq-raised);color:var(--iq-ink);overflow:hidden;outline:0}.wb-fullscreen::backdrop{background:var(--iq-wb-backdrop)}.wb-fullscreen .wb-shell{height:100%;border:0}.wb-fullscreen .wb-workspace{flex:1;min-height:0}.wb-fullscreen .wb-center{min-height:0}.wb-fullscreen .wb-stage{height:auto;flex:1;min-height:180px}.wb-fullscreen .wb-panel{height:100%;min-height:0}.wb-fullscreen .wb-accessible{height:auto;flex:1;min-height:0}
.wb-sheet{width:min(530px,calc(100vw - 32px));padding:26px;border:1px solid var(--iq-line);border-radius:16px;background:var(--iq-raised);color:var(--iq-ink);box-shadow:var(--iq-shadow-3);max-height:calc(100dvh - 32px);overflow:auto;outline:0}.wb-sheet::backdrop{background:var(--iq-wb-backdrop)}.wb-sheet header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.wb-sheet h3{font-size:var(--iq-type-lead-size);line-height:1.3;letter-spacing:var(--iq-tracking-h2);margin:0;font-weight:600}.wb-sheet-content{display:grid;gap:18px}.wb-sheet p{color:var(--iq-muted);font-size:var(--iq-type-label-size);line-height:1.65;margin:0}.wb-sheet label{display:grid;gap:8px;font-size:var(--iq-type-label-size);font-weight:500}
.wb-sheet :is(textarea,input,select),.wb-panel input{display:block;resize:none;width:100%;border:1px solid var(--iq-control);background:var(--iq-field-bg);color:var(--iq-ink);font:var(--iq-type-interface-size)/1.55 var(--iq-font);padding:10px 12px;border-radius:8px;min-height:42px;max-width:100%}
.wb-sheet :is(textarea,input,select):focus:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])),.wb-panel input:focus:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){outline:0;border-color:var(--iq-focus)}.wb-sheet footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:24px}.wb-field-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px}.wb-sheet .wb-checkbox{display:flex;align-items:center}.wb-sheet .wb-checkbox input{width:18px;height:18px;min-height:18px;accent-color:var(--iq-primary)}.wb-sheet .wb-sheet-error{margin-top:16px;color:var(--iq-danger);font-size:var(--iq-type-label-size)}.wb-batch-count{font-size:var(--iq-type-caption-size);color:var(--iq-muted);margin-top:-6px}
.wb-accessible{height:580px;overflow:auto;padding:20px;background:var(--iq-wb-canvas)}.wb-list-header{display:flex;align-items:center;gap:12px;padding-bottom:16px;border-bottom:1px solid var(--iq-line)}.wb-list-header h3{font-size:1.0625rem;margin:0}.wb-list-header>span{font-size:var(--iq-type-meta-size);color:var(--iq-muted);flex:1}.wb-list-header .wb-button{background:var(--iq-raised)}.wb-list-item{display:flex;align-items:flex-start;gap:12px;padding:14px 8px;border-bottom:1px solid var(--iq-line);border-radius:8px}.wb-list-item.is-selected{background:var(--iq-focus-fill);color:var(--iq-focus-text)}.wb-list-item>div{flex:1;min-width:0}.wb-list-item small{font-size:var(--iq-type-meta-size);color:var(--iq-muted);line-height:1.5}.wb-list-item p{font-size:var(--iq-type-interface-size);line-height:1.65;margin:5px 0;white-space:pre-wrap;overflow-wrap:break-word}.wb-list-type{display:grid;place-items:center;border-radius:8px;width:30px;height:30px;background:var(--iq-surface);color:var(--iq-ink);flex:none}.wb-list-type[data-color=sand]{background:var(--iq-wb-sand);color:var(--iq-wb-note-ink)}.wb-list-type[data-color=lavender]{background:var(--iq-wb-lavender);color:var(--iq-wb-note-ink)}.wb-list-type[data-color=mint]{background:var(--iq-wb-mint);color:var(--iq-wb-note-ink)}.wb-list-relations{font-size:var(--iq-type-caption-size);color:var(--iq-muted);line-height:1.65;display:block}.wb-list-item.is-selected :is(small,.wb-list-relations,.wb-button){color:inherit}
.wb-shell[data-view=list] .wb-rail,.wb-shell[data-view=list] .wb-zoom{display:none}.wb-shell[data-view=list] .wb-workspace{grid-template-columns:minmax(0,1fr)}.wb-shell[data-view=list].has-panel .wb-workspace{grid-template-columns:minmax(0,1fr) 296px}.wb-shell[data-view=list] .wb-hint{display:none}.wb-list-item:has(.wb-list-type [data-glyph=board]){background:var(--iq-surface);margin-top:18px}.wb-list-item:has(.wb-list-type [data-glyph=board]) p{margin:0;font-weight:600}
/* Catalog: a compact scenario picker, not a second application toolbar. */
iq-whiteboard-demo{display:block;min-width:0}.wb-demo-scenarios{display:flex;align-items:center;gap:6px;overflow:auto;padding:0 0 18px;scrollbar-width:thin}.wb-demo-scenarios button{display:flex;align-items:center;gap:7px;flex:none;border:1px solid transparent;border-radius:8px;padding:9px 12px;font:500 var(--iq-type-caption-size)/1.4 var(--iq-font);background:var(--iq-raised);color:var(--iq-muted);cursor:pointer}.wb-demo-scenarios button[aria-pressed=true]{background:var(--iq-primary);color:var(--iq-on-primary)}.wb-demo-intro{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:18px}.wb-demo-intro h3{font-size:1.3125rem;font-weight:500;letter-spacing:var(--iq-tracking-display);margin:0 0 6px}.wb-demo-intro p{font-size:var(--iq-type-label-size);color:var(--iq-muted);margin:0;line-height:1.6;max-width:660px}.wb-demo-intro>span{display:none}.wb-demo-actions{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-top:12px;flex-wrap:wrap}.wb-demo-actions small{font-size:var(--iq-type-meta-size);color:var(--iq-muted);line-height:1.6}.component-stage:has(iq-whiteboard-demo){padding:24px!important;display:block;min-height:0}
@media(max-width:1200px){.wb-hint{display:none}.wb-shell.has-panel .wb-workspace{grid-template-columns:76px minmax(0,1fr) 260px}.wb-shell[data-view=list].has-panel .wb-workspace{grid-template-columns:minmax(0,1fr) 260px}.wb-mode-description{font-size:var(--iq-type-meta-size)}.wb-header{padding:14px 16px}.wb-header-actions [data-wb-action=templates]>span{display:none}}
@media(max-width:900px){.wb-panel{position:absolute;right:0;top:0;bottom:0;width:280px;max-width:calc(100% - 36px);height:auto;z-index:15;box-shadow:var(--iq-shadow-3)}.wb-shell.has-panel .wb-workspace{grid-template-columns:76px minmax(0,1fr)}.wb-shell[data-view=list].has-panel .wb-workspace{grid-template-columns:minmax(0,1fr)}.wb-header{gap:10px;flex-wrap:wrap}.wb-heading{min-width:220px}.wb-header-actions{margin-left:auto}.wb-stage{height:580px}.wb-command-row{gap:5px;padding:8px 10px}.wb-history{padding-left:4px}.wb-idle-context{gap:8px}.wb-context{gap:2px}.wb-context .wb-button{padding:7px 9px;font-size:var(--iq-type-meta-size)}}
@media(max-width:640px){.component-stage:has(iq-whiteboard-demo){padding:12px!important}.wb-header{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;padding:12px}.wb-heading{min-width:0}.wb-heading>div{flex:1;min-width:0}.wb-title{width:100%;overflow:hidden}.wb-header-actions{display:flex;width:100%;gap:4px}.wb-header-actions [data-wb-action=quick-note]{flex:1}.wb-header-actions .wb-button{min-width:36px}.wb-header-actions [data-wb-action=templates]>span{display:none}.wb-board-mark{width:32px;height:32px}.wb-command-row{min-height:52px;flex-wrap:wrap}.wb-mode-description{display:none}.wb-selection-count{margin-right:4px;font-size:var(--iq-type-meta-size)}.wb-edit-hint{display:none}.wb-context{flex-wrap:wrap;overflow:visible}.wb-context .wb-button{min-height:34px;font-size:var(--iq-type-meta-size)}.wb-history{margin-left:auto}.wb-workspace,.wb-shell.has-panel .wb-workspace{grid-template-columns:56px minmax(0,1fr)}.wb-rail{padding:10px 3px}.wb-tool{width:48px;min-height:48px}.wb-tool>span{font-size:var(--iq-type-meta-size)}.wb-rail>.wb-button{width:48px;font-size:var(--iq-type-meta-size);min-height:48px}.wb-stage{height:530px;min-height:530px}.wb-footer{padding:6px;flex-wrap:wrap;gap:6px}.wb-footer .wb-button{min-height:34px;padding:6px;font-size:var(--iq-type-meta-size)}.wb-footer-left{gap:0}.wb-zoom{margin-left:auto}.wb-accessible{height:540px;padding:12px}.wb-list-header{flex-wrap:wrap;gap:8px}.wb-list-header h3{}.wb-list-header .wb-button{padding:8px}.wb-list-item{gap:8px;padding:12px 2px}.wb-list-type{width:26px;height:26px}.wb-list-item .wb-button{min-width:32px;padding:7px}.wb-list-item p{line-height:1.65}.wb-empty{padding:24px 16px}.wb-empty h3{font-size:var(--iq-type-heading3-size)}.wb-empty>p{}.wb-empty>div{flex-direction:column}.wb-empty-template{font-size:var(--iq-type-meta-size)}.wb-panel{max-width:calc(100% - 12px);width:290px}.wb-panel-content{padding:14px}.wb-fullscreen{inset:0;margin:0;width:100vw;height:100dvh;border-radius:0}.wb-fullscreen .wb-stage{min-height:120px}.wb-fullscreen .wb-command-row{flex-shrink:0}.wb-sheet{padding:20px;max-height:calc(100dvh - 20px)}.wb-sheet :is(input,textarea,select){font-size:var(--iq-type-body-size)}.wb-sheet h3{}.wb-demo-intro h3{}.wb-demo-actions small{flex-basis:100%}.wb-demo-scenarios{padding-bottom:14px}}
@media(prefers-reduced-motion:reduce){iq-whiteboard *,iq-whiteboard *::before{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(forced-colors:active){.wb-object,.wb-button,.wb-tool,.wb-shell{border:1px solid CanvasText}.wb-object.is-selected{outline:2px solid Highlight}.wb-edge-line{stroke:CanvasText}.wb-stage{background-image:none}.wb-tool[aria-pressed=true]{background:Highlight;color:HighlightText}}
.wb-list-select{padding-top:6px;display:block;flex:none;line-height:1}.wb-list-select input{appearance:none;display:block;margin:0;border:1px solid var(--iq-control);width:18px;height:18px;border-radius:5px;background:var(--iq-raised);cursor:pointer;position:relative}.wb-list-select input:checked{background:var(--iq-primary);border-color:var(--iq-primary)}.wb-list-select input:checked::after{content:'';position:absolute;left:5px;top:2px;width:5px;height:9px;border:solid var(--iq-on-primary);border-width:0 2px 2px 0;transform:rotate(45deg)}.wb-list-select input:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){outline:0;box-shadow:inset 0 -3px var(--iq-focus)}.wb-list-item>.wb-list-actions{display:flex;flex-direction:column;gap:4px;flex:none}.wb-list-item.is-area{background:var(--iq-surface);margin-top:16px}.wb-list-item.is-area p{font-weight:600}.wb-list-item.is-area.is-selected{background:var(--iq-focus-fill);color:var(--iq-focus-text)}.wb-list-empty{padding:36px 16px;text-align:center}.wb-list-empty h3{font-size:var(--iq-type-lead-size);font-weight:500;letter-spacing:var(--iq-tracking-h2)}.wb-list-empty p{font-size:var(--iq-type-label-size);line-height:1.65;color:var(--iq-muted)}

@media(max-width:640px){.wb-footer-left{flex-wrap:wrap;min-width:0;max-width:100%}.wb-footer-left .wb-button{min-width:30px;padding:6px 5px;gap:5px;font-size:var(--iq-type-meta-size)}}

/* 05.5 — object library, canvas dock, constrained Markdown, semantic connectors. */
.wb-shell[data-studio="055"]{--wb-library-width:228px;--wb-panel-width:280px}
.wb-shell[data-studio="055"] .wb-workspace{grid-template-columns:var(--wb-library-width) minmax(0,1fr)}
.wb-shell[data-studio="055"].has-panel .wb-workspace{grid-template-columns:var(--wb-library-width) minmax(0,1fr) var(--wb-panel-width)}
.wb-shell[data-studio="055"].library-closed .wb-workspace{grid-template-columns:minmax(0,1fr)}
.wb-shell[data-studio="055"].library-closed.has-panel .wb-workspace{grid-template-columns:minmax(0,1fr) var(--wb-panel-width)}
.wb-library{padding:0 16px 20px;background:var(--iq-raised);border-right:1px solid var(--iq-line);min-width:0;overflow:auto;max-height:648px;scrollbar-width:thin;z-index:8}
.wb-library>header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:20px 0 16px}
.wb-library>header .wb-button{width:30px;min-height:30px;padding:5px;flex:none}.wb-library>header .wb-button span{display:none}
.wb-library-eyebrow{display:block;font-size:var(--iq-type-meta-size);font-weight:600;letter-spacing:var(--iq-tracking-caps);color:var(--iq-muted);line-height:1.5;margin-bottom:3px;text-transform:uppercase}.wb-library h3{font-size:1.0625rem;letter-spacing:var(--iq-tracking-h2);margin:0;line-height:1.4}
.wb-library-categories{display:flex;gap:4px;padding:3px;background:var(--iq-surface);border-radius:9px;margin-bottom:24px}
.wb-library-categories button{flex:1;min-width:0;padding:7px 4px;font:500 var(--iq-type-meta-size)/1.4 var(--iq-font);border:0;border-radius:6px;color:var(--iq-muted);background:transparent;cursor:pointer}
.wb-library-categories button[aria-pressed=true]{color:var(--iq-ink);background:var(--iq-raised);box-shadow:0 1px 3px #00000010}
.wb-library-items{display:flex;flex-direction:column;gap:8px}.wb-library-group{color:var(--iq-muted);font:500 var(--iq-type-meta-size)/1.5 var(--iq-font);margin:0 0 4px}.wb-library-group:not(:first-child){margin-top:18px}
.wb-library-item{display:flex;gap:12px;align-items:center;width:100%;min-width:0;text-align:left;padding:12px 10px;border:1px solid transparent;border-radius:10px;background:var(--iq-surface);color:var(--iq-ink);cursor:pointer;transition:background var(--iq-motion-fast) var(--iq-ease)}
.wb-library-item:hover:not(:disabled){background:var(--iq-hover);color:var(--iq-ink)}
.wb-library-item[aria-pressed=true],.wb-library-item[aria-pressed=true]:hover{border-color:var(--iq-focus);background:var(--iq-focus-fill);color:var(--iq-focus-text)}
.wb-library-item[aria-pressed=true] small{color:inherit}.wb-library-item:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])),.wb-library-categories button:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){outline:0;box-shadow:inset 0 -3px var(--iq-focus)}
.wb-library-preview{width:34px;height:34px;border-radius:7px;display:grid;place-items:center;flex:none;color:inherit}.wb-library-preview.is-note{background:var(--iq-wb-sand);color:var(--iq-wb-note-ink)}
.wb-library-item>span:last-child{min-width:0}.wb-library-item b{font-size:var(--iq-type-caption-size);font-weight:600;line-height:1.5;display:block}.wb-library-item small{font-size:var(--iq-type-meta-size);line-height:1.5;color:var(--iq-muted);display:block;margin-top:2px}.wb-library-item:disabled{opacity:.5;cursor:default}
.wb-library-tip{font-size:var(--iq-type-meta-size);line-height:1.65;color:var(--iq-muted);margin:24px 0 0}
.wb-shape-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.wb-shape-grid .wb-library-item{flex-direction:column;gap:10px;min-height:96px;justify-content:center;padding:12px 8px;text-align:center}.wb-shape-grid .wb-library-item b{font-size:var(--iq-type-meta-size)}
.wb-shape-art{display:block;width:32px;height:24px;border:1.5px solid currentColor;border-radius:4px}.wb-shape-art[data-shape=diamond]{width:22px;height:22px;transform:rotate(45deg);border-radius:3px}.wb-shape-art[data-shape=ellipse]{border-radius:50%;width:29px;height:29px}.wb-shape-art[data-shape=pill]{border-radius:20px}
.wb-shell[data-studio="055"] .wb-center{min-width:0;position:relative}
.wb-shell[data-studio="055"] .wb-stage{min-height:648px;height:648px}
.wb-shell[data-studio="055"] .wb-footer{position:absolute;inset:auto 12px 12px;pointer-events:none;justify-content:center;background:transparent;border:0;padding:0;gap:12px;min-height:48px;z-index:6;flex-wrap:wrap}
.wb-dock,.wb-shell[data-studio="055"] .wb-zoom{display:flex;align-items:center;gap:3px;background:var(--iq-raised);color:var(--iq-ink);padding:5px;border:1px solid var(--iq-line);border-radius:14px;box-shadow:var(--iq-shadow-2);pointer-events:auto}
.wb-dock .wb-button,.wb-dock .wb-tool{flex:none;width:40px;min-height:40px;height:40px;min-width:40px;display:flex;align-items:center;justify-content:center;padding:8px;border:0;border-radius:9px;gap:0;background:transparent;color:var(--iq-muted)}
.wb-dock .wb-button span,.wb-dock .wb-tool span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.wb-dock .wb-tool[aria-pressed=true],.wb-dock .wb-tool[aria-pressed=true]:hover{background:var(--iq-primary);color:var(--iq-on-primary)}
.wb-dock button:hover:not(:disabled){background:var(--iq-hover);color:var(--iq-ink)}
.wb-dock button:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){outline:0;box-shadow:inset 0 -3px var(--iq-focus);background:var(--iq-focus-fill);color:var(--iq-focus-text)}
.wb-dock-divider{display:block;height:20px;width:1px;background:var(--iq-line);margin:0 3px;flex:none}
.wb-shell[data-studio="055"] .wb-zoom{margin:0}.wb-shell[data-studio="055"] .wb-zoom .wb-button{min-height:32px;min-width:32px;padding:5px}.wb-zoom [data-wb-action=zoom-out] span,.wb-zoom [data-wb-action=zoom-in] span{display:none}
.wb-shell[data-studio="055"] .wb-panel{height:648px}
/* Every content box owns an explicit inline size; neither zoom nor the caret changes it. */
.wb-shell[data-studio="055"] .wb-object{box-sizing:border-box;font-size:var(--iq-type-body-size);line-height:1.5;letter-spacing:var(--iq-tracking-h3);gap:8px;min-width:0}
.wb-shell[data-studio="055"] .wb-object-text{box-sizing:border-box;width:100%;min-width:0;min-height:0;white-space:normal;word-break:normal;overflow-wrap:break-word;flex:1 1 auto;display:flex;flex-direction:column;justify-content:flex-start;position:relative}
.wb-shell[data-studio="055"] .wb-object-text> :is(p,ul,ol,blockquote,pre,h2,h3,h4){max-width:100%;min-width:0;margin:0 0 .35em;white-space:normal;font-size:inherit;line-height:inherit;letter-spacing:inherit;color:inherit}.wb-object-text> :last-child{margin-bottom:0!important}
.wb-shell[data-studio="055"] .wb-object-text>ul,.wb-shell[data-studio="055"] .wb-object-text>ol{padding-left:1.3em}.wb-shell[data-studio="055"] .wb-object-text>blockquote{border-left:2px solid currentColor;padding-left:10px;opacity:.9}.wb-shell[data-studio="055"] .wb-object-text pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:.86em;padding:6px;background:#00000008;border-radius:4px}.wb-object-text code{font-family:var(--iq-mono);font-size:.88em}.wb-object-text h2{font-size:1.35em!important;font-weight:650}.wb-object-text h3{font-size:1.16em!important;font-weight:650}.wb-object-text h4{font-weight:650}.wb-object-text a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.wb-shell[data-studio="055"] .wb-object[data-align=left] .wb-object-text{text-align:left}.wb-shell[data-studio="055"] .wb-object[data-align=center] .wb-object-text{text-align:center}.wb-shell[data-studio="055"] .wb-object[data-align=right] .wb-object-text{text-align:right}
.wb-shell[data-studio="055"] .wb-object[data-valign=middle] .wb-object-text{justify-content:center}.wb-shell[data-studio="055"] .wb-object[data-valign=bottom] .wb-object-text{justify-content:flex-end}
.wb-shell[data-studio="055"] .wb-object[data-type=text]{font-size:1.5rem;padding:6px}
.wb-shell[data-studio="055"] .wb-object[data-type=shape]{background:transparent!important;border:0!important;border-radius:0!important;padding:20px!important;box-shadow:none!important;justify-content:stretch}
.wb-shell[data-studio="055"] .wb-object[data-type=shape]::before{display:none}
.wb-shape-face{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:-1;fill:var(--iq-raised);stroke:var(--iq-wb-shape-line);stroke-width:1.25;vector-effect:non-scaling-stroke}
.wb-shape-face>*{vector-effect:non-scaling-stroke}
.wb-shell[data-studio="055"] .wb-object[data-type=shape] .wb-object-text{flex:1;position:relative;z-index:1}
.wb-shell[data-studio="055"] .wb-object[data-shape=diamond] .wb-object-text{position:absolute;left:25%;top:25%;width:50%;height:50%;margin:0}
.wb-shell[data-studio="055"] .wb-object[data-shape=ellipse] .wb-object-text{position:absolute;left:15%;top:15%;width:70%;height:70%;margin:0}
.wb-shell[data-studio="055"] .wb-object[data-type=frame] .wb-object-text{display:block;white-space:normal;font-weight:600}
.wb-shell[data-studio="055"] .wb-object[data-type=frame] .wb-object-text p{margin:0;line-height:1.4}
.wb-shell[data-studio="055"] .wb-frame-head{min-height:56px;height:auto;align-items:center;padding:14px 20px}
.wb-shell[data-studio="055"] .wb-inline-input{box-sizing:border-box;display:block;width:100%;max-width:100%;min-width:0;flex:none;background:transparent;color:inherit;border:0;border-radius:0;padding:0;margin:0;resize:none;outline:0;box-shadow:none;font:inherit;letter-spacing:inherit;line-height:1.5;text-align:inherit;min-height:1.5em;height:100%;max-height:100%;white-space:pre-wrap;overflow:auto;word-break:normal;overflow-wrap:break-word;user-select:text}
.wb-shell[data-studio="055"] .wb-object.is-editing{z-index:10}.wb-object-text.has-editor{overflow:hidden}
.wb-object[data-type=frame] .wb-inline-input{height:48px}.wb-object[data-type=image] .wb-inline-input{min-height:40px}
.wb-formatting{border-bottom:1px solid var(--iq-line);padding:10px 16px;background:var(--iq-raised);color:var(--iq-ink)}
.wb-format-head{display:flex;align-items:center;gap:8px;margin-bottom:8px}.wb-format-head b{font-size:var(--iq-type-caption-size);font-weight:600}.wb-format-head>[data-wb-count]{color:var(--iq-muted);font-size:var(--iq-type-meta-size);flex:1;text-align:right}.wb-format-head .wb-button{min-height:32px;padding:6px 10px;font-size:var(--iq-type-meta-size)}.wb-format-head [data-wb-action=finish-edit]{background:var(--iq-primary);color:var(--iq-on-primary)}
.wb-format-body{display:flex;gap:16px;flex-wrap:wrap;align-items:center}.wb-md-tools,.wb-alignment{display:flex;align-items:center;gap:2px;flex-wrap:wrap}
.wb-md-tools button,.wb-alignment button{border:0;background:transparent;color:var(--iq-ink);min-width:30px;width:30px;height:32px;padding:6px;display:grid;place-items:center;border-radius:6px;cursor:pointer;font:500 var(--iq-type-title-size)/1 var(--iq-font)}
.wb-md-tools button:hover,.wb-alignment button:hover{background:var(--iq-hover)}.wb-md-tools button:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])),.wb-alignment button:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])),.wb-alignment button[aria-pressed=true]{outline:0;background:var(--iq-focus-fill);color:var(--iq-focus-text);box-shadow:inset 0 -2px var(--iq-focus)}
.wb-rich-sheet{width:min(740px,calc(100vw - 24px))}.wb-rich-sheet iq-markdown-editor{display:block;width:100%;min-width:0}.wb-rich-sheet .md-toolbar{flex-wrap:wrap;gap:2px}.wb-rich-sheet .md-tool{width:30px;height:32px;min-height:32px}
/* Shape-side ports sit outside the object without changing its content box. */
.wb-shell[data-studio="055"] .wb-port{position:absolute;z-index:12;width:24px;height:24px;min-width:24px;min-height:24px;border:0;border-radius:50%;padding:0;background:transparent;display:grid;place-items:center;color:var(--iq-focus);opacity:0;cursor:crosshair;touch-action:none}
.wb-port::after{content:'';width:8px;height:8px;background:var(--iq-raised);border:1.5px solid var(--iq-focus);border-radius:50%;display:block}
.wb-port[data-port=left]{left:-12px;top:calc(50% - 12px)}.wb-port[data-port=right]{right:-12px;top:calc(50% - 12px)}.wb-port[data-port=top]{top:-12px;left:calc(50% - 12px)}.wb-port[data-port=bottom]{bottom:-12px;left:calc(50% - 12px)}
.wb-object:hover>.wb-port,.wb-object.is-selected>.wb-port,.wb-port:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])),[data-canvas-tool=connect] .wb-port{opacity:1!important}.wb-port:hover::after,.wb-port:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"]))::after{background:var(--iq-focus);width:10px;height:10px}.wb-port:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){outline:0}
.wb-object.is-link-target{box-shadow:0 0 0 2px var(--iq-focus)!important}
.wb-shell[data-studio="055"] .wb-edge-line{fill:none;stroke:var(--edge-color,var(--iq-muted));stroke-width:1.65;pointer-events:none;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.wb-shell[data-studio="055"] .wb-edge-hit{fill:none;stroke:transparent;stroke-width:18;pointer-events:stroke;vector-effect:non-scaling-stroke;cursor:pointer}
.wb-shell[data-studio="055"] .wb-connection.is-selected .wb-edge-line{stroke:var(--iq-focus);stroke-width:2.2}
.wb-shell[data-studio="055"] .wb-connection-label{cursor:pointer;pointer-events:auto}.wb-connection-label rect{fill:var(--iq-raised);stroke:var(--iq-line);stroke-width:1;vector-effect:non-scaling-stroke}.wb-shell[data-studio="055"] .wb-connection-label text{font:500 var(--iq-type-caption-size)/1.4 var(--iq-font);fill:var(--iq-ink);paint-order:normal;stroke:none}
.wb-edge-end{fill:var(--iq-raised);stroke:var(--iq-focus);stroke-width:2;vector-effect:non-scaling-stroke;pointer-events:all;cursor:crosshair;touch-action:none}
.wb-link-preview{fill:none;stroke:var(--iq-focus);stroke-width:2;stroke-dasharray:5 4;vector-effect:non-scaling-stroke;pointer-events:none}
.wb-shell[data-studio="055"] .wb-fullscreen .wb-stage{flex:1}
@media(max-width:1100px){.wb-shell[data-studio="055"]{--wb-library-width:200px}.wb-shell[data-studio="055"].has-panel .wb-workspace{grid-template-columns:var(--wb-library-width) minmax(0,1fr)}.wb-shell[data-studio="055"].has-panel .wb-panel{position:absolute;right:0;top:0;bottom:0;width:280px;height:100%;box-shadow:var(--iq-shadow-3)}.wb-shell[data-studio="055"].library-closed.has-panel .wb-workspace{grid-template-columns:minmax(0,1fr)}}
@media(max-width:760px){.wb-shell[data-studio="055"] .wb-workspace,.wb-shell[data-studio="055"].has-panel .wb-workspace{grid-template-columns:minmax(0,1fr)}.wb-library{position:absolute;left:0;top:0;bottom:0;width:230px;max-width:calc(100% - 28px);height:100%;box-shadow:var(--iq-shadow-3);z-index:20}.wb-shell[data-studio="055"] .wb-stage{height:620px;min-height:620px}.wb-shell[data-studio="055"] .wb-footer{left:6px;right:6px;bottom:8px;gap:6px}.wb-dock{gap:0;padding:4px;border-radius:12px}.wb-dock .wb-tool,.wb-dock .wb-button{width:34px;min-width:34px;height:38px;min-height:38px;padding:6px}.wb-dock-divider{margin:0 2px}.wb-shell[data-studio="055"] .wb-header-actions [data-wb-action=search]>span{display:none}.wb-shell[data-studio="055"] .wb-zoom{border-radius:10px;padding:2px}.wb-formatting{padding:8px}.wb-format-head{flex-wrap:wrap;gap:4px}.wb-format-body{gap:6px}.wb-md-tools button,.wb-alignment button{width:32px;min-width:32px}.wb-shell[data-studio="055"] .wb-command-row{min-height:44px}.wb-shell[data-studio="055"] .wb-panel{height:100%}.wb-rich-sheet{padding:16px}.wb-rich-sheet .markdown-editor{--iq-md-text-size:var(--iq-type-body-size)}.wb-rich-sheet .markdown-editor .md-input{padding:12px}.wb-rich-sheet .md-editor-head,.wb-rich-sheet .markdown-editor footer{padding:10px}.wb-rich-sheet .wb-field-pair{gap:10px}}
/* Tag deletion is a single coordinated foreground/background pair in both themes. */
iq-tag-input .iq-tag-token button:is(:hover,:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"]))){background:var(--iq-focus-fill);color:var(--iq-focus-text);outline:0;opacity:1}
.graph-domain-open{position:absolute;right:10px;top:38px;display:grid;place-items:center;width:28px;height:28px;border:0;border-radius:6px;background:var(--iq-surface);color:var(--iq-ink);cursor:pointer}.graph-node-content{position:relative}.graph-markdown p{font-size:var(--iq-type-caption-size);line-height:1.6;margin:6px 0}.graph-markdown ul,.graph-markdown ol{padding-left:16px;font-size:var(--iq-type-caption-size)}.graph-archive-clusters{display:flex;gap:8px;flex-wrap:wrap;padding:12px 0}.graph-archive-clusters .iq-btn{gap:12px}
iq-work-header{display:block;min-width:0}.iq-work-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--iq-work-header-gap,12px) var(--iq-space-6);align-items:center;padding:var(--iq-work-header-padding,20px 24px);border-bottom:var(--iq-work-header-border,1px) solid var(--iq-line);background:var(--iq-canvas);color:var(--iq-ink)}.iq-work-header-main{min-width:0}.iq-work-header h1{font:600 var(--iq-work-header-title,24px)/1.28 var(--iq-font);letter-spacing:var(--iq-tracking-display);margin:0;overflow-wrap:anywhere}.iq-work-header-eyebrow{font:500 var(--iq-type-meta-size)/1.5 var(--iq-font);color:var(--iq-muted);margin:0 0 4px;text-transform:uppercase;letter-spacing:var(--iq-tracking-caps)}.iq-work-header-description{font:400 var(--iq-type-label-size)/1.6 var(--iq-font);color:var(--iq-muted);margin:var(--iq-work-header-description-gap,6px) 0 0;max-width:75ch}.iq-work-header-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.iq-work-header-context{grid-column:1/-1;min-width:0}.iq-work-header.is-comfortable{padding-block:var(--iq-work-header-padding,32px)}.iq-work-header.is-comfortable h1{font-size:var(--iq-work-header-title,30px)}.iq-application-layout{display:flex;flex-direction:column;min-height:0;gap:0}.iq-application-layout>iq-roadmap,.iq-application-layout>iq-graph{flex:1;min-height:0}.iq-application-layout :is(iq-roadmap,iq-graph) .iq-pro-toolbar{padding:12px 20px}.iq-application-layout .iq-pro-heading :is(.iq-pro-eyebrow,.iq-pro-subtitle){display:none}.iq-application-layout .iq-pro-heading h3{font-size:.9375rem;line-height:1.5;margin:0}
@media(max-width:640px){.iq-work-header{grid-template-columns:minmax(0,1fr);padding:var(--iq-work-header-padding,16px);gap:var(--iq-work-header-gap,12px)}.iq-work-header h1,.iq-work-header.is-comfortable h1{font-size:var(--iq-work-header-title,21px)}.iq-work-header.is-comfortable{padding:var(--iq-work-header-padding,24px 16px)}.iq-work-header-actions{justify-content:flex-start}.iq-application-layout :is(iq-roadmap,iq-graph) .iq-pro-toolbar{padding:12px}}

/* 05.5 final composition and text measurement contracts. */
.wb-formatting [data-wb-count]{white-space:nowrap;flex:none;margin-left:auto}.wb-format-head b{flex:1}
.wb-vertical-align{display:flex;transform:rotate(90deg)}
.wb-measure{contain:layout style;letter-spacing:var(--iq-tracking-h3)}.wb-measure>p{min-height:1.5em}
.wb-shell[data-studio="055"] .wb-object-text.has-editor{overflow:hidden}
.wb-shell[data-studio="055"] .wb-inline-input{max-height:100%;flex:0 0 auto}
.wb-object .wb-connection-label text{font:var(--iq-type-caption-size) var(--iq-font)}
.wb-connection-label{pointer-events:none}.wb-connection-label rect{fill:var(--iq-raised);stroke:var(--iq-line);stroke-width:1}
.wb-library-item .iq-icon{flex:none}.wb-shell[data-studio="055"] .wb-object[data-type=shape]{isolation:isolate}.wb-shape-face{z-index:0}.wb-shape-face>*{stroke-width:1.5}
.wb-shell[data-studio="055"] .wb-object[data-type=shape][data-color=sand] .wb-shape-face{fill:var(--iq-wb-sand)}
.wb-shell[data-studio="055"] .wb-object[data-type=shape][data-color=lavender] .wb-shape-face{fill:var(--iq-wb-lavender)}
.wb-shell[data-studio="055"] .wb-object[data-type=shape][data-color=mint] .wb-shape-face{fill:var(--iq-wb-mint)}
.wb-library-categories button{font-size:var(--iq-type-meta-size);min-height:34px}.wb-library-item b{font-size:var(--iq-type-label-size)}.wb-library-item small,.wb-library-tip{font-size:var(--iq-type-meta-size)}
.wb-shell[data-studio="055"] .wb-shape-grid .wb-library-item b{font-size:var(--iq-type-meta-size)}
@media(max-width:760px){.wb-format-head{display:grid;grid-template-columns:1fr auto auto}.wb-format-head>[data-wb-count]{grid-column:1;grid-row:2;margin-left:0;text-align:left}.wb-format-head b{min-width:0}.wb-format-head .wb-button{min-height:36px}.wb-library{max-height:none}.wb-shell[data-studio="055"] .wb-stage{height:560px;min-height:560px}.wb-dock .wb-tool,.wb-dock .wb-button{height:40px;min-height:40px}}
.wb-fullscreen .wb-shell[data-studio="055"]{height:100%;display:flex;flex-direction:column}.wb-fullscreen .wb-shell[data-studio="055"] .wb-workspace{flex:1;min-height:0}.wb-fullscreen .wb-shell[data-studio="055"] .wb-stage{height:100%;min-height:180px}.wb-fullscreen .wb-library{max-height:none}

/* Connection end handles live above objects; unrelated SVG areas never intercept clicks. */
.wb-link-handles{position:absolute;inset:0 auto auto 0;width:1px;height:1px;overflow:visible;pointer-events:none;z-index:12}
.wb-edge-end:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){fill:var(--iq-focus);stroke:var(--iq-raised);stroke-width:3}

/* Titles and image captions have their own content regions; growing a frame title moves its children. */
.wb-shell[data-studio="055"] .wb-frame-head{height:var(--wb-header-height,56px);min-height:56px;overflow:hidden}
.wb-shell[data-studio="055"] .wb-object[data-type=frame] .wb-object-text{display:flex;flex-direction:column;align-self:stretch;overflow:auto;text-overflow:clip;min-height:0;white-space:normal}
.wb-shell[data-studio="055"] .wb-object[data-type=image]{padding-bottom:0}
.wb-shell[data-studio="055"] .wb-object[data-type=image] img{height:calc(100% - var(--wb-caption-height,32px));border-radius:7px 7px 0 0}
.wb-shell[data-studio="055"] .wb-image-caption{height:var(--wb-caption-height,32px);min-height:var(--wb-caption-height,32px);padding:10px 12px;display:flex;white-space:normal;overflow:auto;text-overflow:clip;font-size:var(--iq-type-label-size)}

/* Board title chip: the board's name and its save state float in the top right corner of an embedded board.
   A board panel (search, frames, templates) takes the chip's place while it is open. */
.iq-board-chip{position:absolute;z-index:9;top:var(--iq-space-4);right:var(--iq-space-4);max-width:min(420px,calc(100% - 120px));display:flex;align-items:center;gap:var(--iq-space-1);padding:var(--iq-space-1) var(--iq-space-1) var(--iq-space-1) var(--iq-space-3);border:1px solid var(--iq-line);border-radius:var(--iq-radius-md);background:var(--iq-raised);box-shadow:0 4px 16px var(--iq-shadow-color);transition:opacity var(--iq-motion-fast) var(--iq-ease),visibility 0s linear 0s}
.iq-board-chip[hidden]{display:none}
.iq-board-chip-title{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font:600 var(--iq-type-interface-size)/1.4 var(--iq-font)}
:has(>.wb-shell.has-panel)~.iq-board-chip,:has(.wb-shell.has-panel)>.iq-board-chip{opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--iq-motion-fast) var(--iq-ease),visibility 0s linear var(--iq-motion-fast)}
.iq-board-sync[data-state=dirty]{color:var(--iq-warning)}
.iq-board-sync:is([data-state=saving],[data-state=syncing]) .iq-icon{animation:iq-board-sync-turn var(--iq-motion-scene) linear infinite}
@keyframes iq-board-sync-turn{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.iq-board-chip{transition:none}.iq-board-sync:is([data-state=saving],[data-state=syncing]) .iq-icon{animation:none}}
.wb-demo-stage{position:relative;min-width:0;height:min(680px,78vh);border:1px solid var(--iq-line);border-radius:var(--iq-radius-md);overflow:hidden;background:var(--iq-canvas)}
.wb-demo-stage>iq-whiteboard{display:block;height:100%}

/* 05.6 — shared reading typography. Preview and viewer use precisely this class.
 * No editor chrome is supplied by the renderer. Wide regions own their own scroll.
 */
iq-markdown-viewer{display:block;min-width:0;max-width:100%;color:var(--iq-ink)}
.md-document{font:400 var(--iq-type-interface-size)/1.7 var(--iq-font);color:var(--iq-ink);overflow-wrap:break-word;word-break:normal;min-width:0;max-width:100%;text-align:start}
.md-document :where(h1,h2,h3,h4,h5,h6){font-family:var(--iq-display);font-weight:600;color:var(--iq-ink);letter-spacing:var(--iq-tracking-h1);line-height:1.3;margin:1.5em 0 .6em}
.md-document h1{font-size:1.75rem}.md-document h2{font-size:1.4375rem}.md-document h3{font-size:var(--iq-type-title-size)}.md-document h4{font-size:var(--iq-type-body-size)}.md-document h5,.md-document h6{font-size:var(--iq-type-interface-size)}
.md-document> :first-child{margin-top:0}.md-document> :last-child{margin-bottom:0}
.md-document p{margin:0 0 var(--iq-space-3)}
.md-document ul,.md-document ol{margin:0 0 var(--iq-space-4);padding-inline-start:var(--iq-space-6)}
.md-document li{margin-block:var(--iq-space-1)}.md-document li>ul,.md-document li>ol{margin-block:var(--iq-space-1)}
.md-document .md-task{display:flex;align-items:flex-start;gap:var(--iq-space-2);list-style:none}
.md-document .md-task-mark{display:inline-flex;align-items:center;justify-content:center;flex:0 0 16px;width:16px;height:16px;margin-top:4px;border:1px solid var(--iq-control);border-radius:3px;font:600 var(--iq-type-caption-size)/1 var(--iq-font);background:var(--iq-raised);color:var(--iq-ink)}
.md-document .md-task-mark.is-checked{background:var(--iq-success-fill);color:var(--iq-on-success);border-color:transparent}
.md-document blockquote{margin:var(--iq-space-4) 0;padding:var(--iq-space-2) var(--iq-space-4);border-inline-start:2px solid var(--iq-control);color:var(--iq-muted)}
.md-document blockquote> :last-child{margin-bottom:0}
.md-document :not(pre)>code{font:400 .9em/1.5 var(--iq-mono);padding:2px 5px;border-radius:var(--iq-radius-xs);color:var(--iq-ink);background:var(--iq-surface);overflow-wrap:anywhere}
.md-document pre.md-code-scroll{display:block;width:100%;max-width:100%;box-sizing:border-box;margin:var(--iq-space-4) 0;padding:var(--iq-space-4);border:1px solid var(--iq-line);border-radius:var(--iq-radius-sm);background:var(--iq-surface);color:var(--iq-ink);font:400 var(--iq-type-caption-size)/1.65 var(--iq-mono);white-space:pre;overflow:auto;overscroll-behavior-inline:contain;word-break:normal;overflow-wrap:normal;tab-size:4}
.md-document pre.md-code-scroll code{font:inherit;white-space:inherit;color:inherit;background:none;padding:0;overflow-wrap:inherit;word-break:inherit}
.md-document.md-wrap-code pre.md-code-scroll{white-space:pre-wrap;overflow-wrap:anywhere}
.md-document .md-table-scroll{width:100%;max-width:100%;min-width:0;overflow:auto;overscroll-behavior-inline:contain;margin:var(--iq-space-4) 0;border:1px solid var(--iq-line);border-radius:var(--iq-radius-sm)}
.md-document table{width:100%;border-collapse:collapse;font:400 var(--iq-type-label-size)/1.6 var(--iq-font);table-layout:auto}
.md-document th,.md-document td{padding:10px 14px;vertical-align:top;text-align:start;min-width:100px;max-width:38ch;overflow-wrap:anywhere;border:0;border-block-end:1px solid var(--iq-line)}
.md-document th{font-weight:600;background:var(--iq-surface);color:var(--iq-ink)}.md-document tbody tr:last-child td{border-block-end:0}
.md-document .md-align-right{text-align:right}.md-document .md-align-center{text-align:center}
.md-document a{color:var(--iq-accent);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;overflow-wrap:anywhere}
.md-document a:hover{color:var(--iq-ink)}
.md-document :is(a,.md-code-scroll,.md-table-scroll):focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){outline:none;background-color:var(--iq-focus-fill);color:var(--iq-focus-text);box-shadow:inset 0 -2px 0 var(--iq-focus-text)}
.md-document :is(.md-code-scroll,.md-table-scroll):focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])) code{color:inherit}
.md-document hr{border:0;border-top:1px solid var(--iq-line);margin:var(--iq-space-6) 0}
.md-document .md-image-note,.md-document .md-empty{color:var(--iq-muted)}
.md-document .md-render-error{color:var(--iq-danger);margin:0}
.iq-markdown-viewer-document{padding:0;min-height:0}
/* Core application layout contracts; scoped selectors, no mutation of product DOM. */
iq-work-layout{--iq-work-header-padding:0px;--iq-work-header-border:0px}
.iq-work-navigation{display:flex;align-items:center;gap:var(--iq-space-5);min-height:40px;border-bottom:1px solid var(--iq-line);max-width:100%;flex-wrap:wrap}
.iq-work-navigation :is(a,button){font:500 var(--iq-type-label-size)/1.5 var(--iq-font);display:inline-flex;align-items:center;min-height:40px;padding:8px 0;color:var(--iq-muted);background:transparent;border:0;border-bottom:2px solid transparent;text-decoration:none;cursor:pointer}
.iq-work-navigation [aria-current=page],.iq-work-navigation [aria-selected=true]{color:var(--iq-ink);border-bottom-color:var(--iq-ink)}
.iq-work-navigation :is(a,button):focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){outline:none;background:var(--iq-focus-fill);color:var(--iq-focus-text);border-bottom-color:var(--iq-focus-text)}
.iq-work-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--iq-space-3);flex-wrap:wrap;min-width:0}
.iq-work-toolbar>.iq-field{margin:0;flex:0 1 320px;min-width:0}.iq-work-toolbar>.iq-field .iq-input-shell{min-height:var(--iq-work-control-size,var(--iq-control-sm))}
.iq-work-toolbar>.iq-field .iq-input-shell input{min-height:0;font-size:var(--iq-type-label-size)}
.iq-work-toolbar-group{display:flex;align-items:center;gap:var(--iq-space-2);flex-wrap:wrap;min-width:0}
.iq-work-summary{display:flex;align-items:center;gap:var(--iq-space-4);flex-wrap:wrap;color:var(--iq-muted);font:400 var(--iq-type-caption-size)/1.6 var(--iq-font)}
.iq-work-summary b{color:var(--iq-ink);font-weight:600}
.iq-work-data{min-width:0;max-width:100%}.iq-work-table{width:100%;border-collapse:collapse;font:400 var(--iq-type-label-size)/1.5 var(--iq-font);table-layout:fixed}
.iq-work-table th{padding:10px 12px;text-align:left;font-weight:500;font-size:var(--iq-type-caption-size);color:var(--iq-muted);background:var(--iq-surface);border-bottom:1px solid var(--iq-line)}
.iq-work-table td{padding:var(--iq-preference-table-pad,12px) 12px;vertical-align:middle;min-height:var(--iq-work-row-min,64px);border-bottom:1px solid var(--iq-line);overflow-wrap:anywhere}
.iq-work-table .iq-work-row-title{display:flex;flex-direction:column;justify-content:center;gap:4px;min-height:calc(var(--iq-work-row-min,64px) - 24px)}
.iq-work-table .iq-work-row-title a{font-weight:500;color:var(--iq-ink);text-decoration:none;overflow-wrap:anywhere;display:block;min-height:24px}
.iq-work-table .iq-work-row-title a:hover{text-decoration:underline;text-underline-offset:3px}
.iq-work-table .iq-work-row-title small{font:400 var(--iq-type-meta-size)/1.5 var(--iq-mono);color:var(--iq-muted)}
.iq-work-table .iq-badge{font-size:var(--iq-type-meta-size);line-height:20px;min-height:24px;white-space:normal;min-width:0;max-width:100%}
.iq-work-table tbody tr:focus-within{background:var(--iq-surface)}
.iq-work-table a:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){outline:none;background:var(--iq-focus-fill);color:var(--iq-focus-text);text-decoration:underline}
.iq-work-footer{display:flex;justify-content:space-between;align-items:center;gap:var(--iq-space-3);flex-wrap:wrap;font:400 var(--iq-type-caption-size)/1.5 var(--iq-font);color:var(--iq-muted)}
@media(max-width:640px){
 .iq-work-navigation{gap:var(--iq-space-4);row-gap:0}.iq-work-navigation :is(a,button){font-size:var(--iq-type-caption-size);min-height:36px}
 .iq-work-toolbar>.iq-field{flex:1 1 180px}.iq-work-toolbar>.iq-work-toolbar-group{flex-wrap:wrap}
 .iq-work-table,.iq-work-table tbody{display:block;width:100%}.iq-work-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 .iq-work-table tr{display:grid;grid-template-columns:minmax(0,1fr) auto;padding:var(--iq-preference-mobile-pad,var(--iq-space-3)) 0;gap:8px 12px;border-bottom:1px solid var(--iq-line)}
 .iq-work-table td{display:block;padding:0;border:0;min-height:0;font-size:var(--iq-type-caption-size)}.iq-work-table td:first-child{grid-column:1/-1}
 .iq-work-table .iq-work-row-title{min-height:0;gap:4px}.iq-work-table .iq-work-row-title a{font-size:var(--iq-type-interface-size);min-height:24px}
 .iq-work-table td[data-column=person]{grid-column:1;grid-row:3}.iq-work-table td[data-column=date]{grid-column:2;grid-row:3;color:var(--iq-muted)}
 .iq-work-table td[data-column=status]{grid-column:1/-1}.iq-work-footer{font-size:var(--iq-type-meta-size)}
}

@container iq-work (max-width:640px){
 .iq-work-header{grid-template-columns:minmax(0,1fr);padding:var(--iq-work-header-padding,16px);gap:var(--iq-work-header-gap,12px)}
 .iq-work-header h1,.iq-work-header.is-comfortable h1{font-size:var(--iq-work-header-title,21px)}
 .iq-work-navigation{gap:var(--iq-space-4);row-gap:0}.iq-work-navigation :is(a,button){font-size:var(--iq-type-caption-size);min-height:36px}
 .iq-work-toolbar>.iq-field{flex:1 1 180px}.iq-work-toolbar>.iq-work-toolbar-group{flex-wrap:wrap}
 .iq-work-table,.iq-work-table tbody{display:block;width:100%}.iq-work-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 .iq-work-table tr{display:grid;grid-template-columns:minmax(0,1fr) auto;padding:var(--iq-preference-mobile-pad,var(--iq-space-3)) 0;gap:8px 12px;border-bottom:1px solid var(--iq-line)}
 .iq-work-table td{display:block;padding:0;border:0;min-height:0;font-size:var(--iq-type-caption-size)}.iq-work-table td:first-child{grid-column:1/-1}
 .iq-work-table .iq-work-row-title{min-height:0;gap:4px}.iq-work-table .iq-work-row-title a{font-size:var(--iq-type-interface-size);min-height:24px}
 .iq-work-table td[data-column=person]{grid-column:1;grid-row:3}.iq-work-table td[data-column=date]{grid-column:2;grid-row:3;color:var(--iq-muted)}
 .iq-work-table td[data-column=status]{grid-column:1/-1}.iq-work-footer{font-size:var(--iq-type-meta-size)}
}
/* Supported nesting of supplied advanced surfaces in compact work layout.
   This is a DS composition rule, not a product override or changed timeline geometry. */
iq-work-layout[density=compact] .iq-pro-toolbar{padding:12px 16px;gap:12px}
iq-work-layout[density=compact] .iq-pro-heading .iq-pro-eyebrow,iq-work-layout[density=compact] .iq-pro-heading .iq-pro-subtitle{display:none}
iq-work-layout[density=compact] .iq-pro-heading h3{font-size:.9375rem;line-height:1.5;margin:0}


/* Existing task/board/plan example uses the same public composition. */
iq-work-layout .iq-work-navigation a{gap:8px}
iq-work-layout .workspace-tools{margin:0;gap:8px}
iq-work-layout .workspace-reading-note{margin:0;padding:0;max-width:100%}
iq-work-layout[density=compact] .workspace-table .iq-table td{padding-block:12px}
iq-work-layout[density=compact] .workspace-table .iq-table th{padding-block:10px}
.workspace-layout{border:1px solid var(--iq-line);border-radius:var(--iq-radius-md)}
@media(max-width:640px){iq-work-layout .workspace-tools{display:flex;flex-wrap:wrap}iq-work-layout .workspace-tools .iq-search-small{flex:1 1 100%;width:100%}iq-work-layout .workspace-tools .compact-select{flex:1 1 140px;max-width:100%}iq-work-layout[density=compact] .workspace-table .iq-table td{padding-block:0}}

.iq-banner{flex-wrap:wrap}.iq-banner p{margin:0;flex:1 1 180px}
.iq-work-header [slot=back]{margin-bottom:var(--iq-space-2)}

/* 05.7 — workshop surface. Scope prevents application button rules from leaking
   into the object library, tool dock, connection controls and tooltips. */
.wb-shell[data-workshop]{--wb-library-width:272px;position:relative}
.wb-shell[data-workshop] .wb-workspace{grid-template-columns:var(--wb-library-width) minmax(0,1fr)}
.wb-shell[data-workshop].library-closed .wb-workspace{grid-template-columns:minmax(0,1fr)}
.wb-shell[data-workshop].has-panel .wb-workspace{grid-template-columns:var(--wb-library-width) minmax(0,1fr) 280px}
.wb-shell[data-workshop].library-closed.has-panel .wb-workspace{grid-template-columns:minmax(0,1fr) 280px}
.wb-shell[data-workshop] .wb-library{padding:18px 14px;display:flex;flex-direction:column;gap:14px;overflow:hidden;max-height:none;min-width:0;background:var(--iq-raised)}
.wb-shell[data-workshop] .wb-library[hidden]{display:none}
.wb-shell[data-workshop] .wb-library>header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin:0}
.wb-shell[data-workshop] .wb-library>header h3{font:600 .9375rem/1.4 var(--iq-font);letter-spacing:var(--iq-tracking-h2);margin:0;color:var(--iq-ink)}
.wb-shell[data-workshop] .wb-library>header p{font:400 var(--iq-type-meta-size)/1.5 var(--iq-font);color:var(--iq-muted);margin:4px 0 0}
.wb-shell[data-workshop] .wb-library>header .wb-button{width:28px;height:28px;min-width:28px;min-height:28px;padding:4px;flex:none}
.wb-shell[data-workshop] .wb-library-search{display:flex;align-items:center;gap:8px;border:1px solid var(--iq-line);background:var(--iq-surface);border-radius:8px;padding:0 10px;color:var(--iq-muted);min-height:36px}
.wb-shell[data-workshop] .wb-library-search input{width:100%;min-width:0;border:0;padding:8px 0;background:transparent;color:var(--iq-ink);font:400 var(--iq-type-caption-size)/1.5 var(--iq-font);outline:none}
.wb-shell[data-workshop] .wb-library-search:focus-within{border-color:var(--iq-focus)}
.wb-shell[data-workshop] .wb-library-categories{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;padding:3px;border-radius:8px;background:var(--iq-surface);margin:0;flex:none}
.wb-shell[data-workshop] .wb-library-categories button{width:100%;min-width:0;min-height:32px;height:32px;padding:4px 2px;font:500 var(--iq-type-caption-size)/1.4 var(--iq-font);white-space:nowrap;letter-spacing:var(--iq-tracking-body);color:var(--iq-muted);border-radius:6px;border:0;background:transparent;cursor:pointer;transition:background-color var(--iq-motion-fast),color var(--iq-motion-fast)}
.wb-shell[data-workshop] .wb-library-categories button[aria-pressed=true]{background:var(--iq-raised);color:var(--iq-ink);box-shadow:0 1px 4px #0000000b}
.wb-shell[data-workshop] .wb-library-items{overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;min-height:0;flex:1;margin:0;padding:0 2px 2px 0}
.wb-shell[data-workshop] .wb-library-item{display:flex;width:100%;align-items:center;gap:12px;margin:0 0 4px;padding:11px 8px;min-height:66px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--iq-ink);text-align:left;cursor:grab;transition:background-color var(--iq-motion-fast),border-color var(--iq-motion-fast)}
.wb-shell[data-workshop] .wb-library-item:hover:not(:disabled):not([aria-pressed=true]):not(:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"]))){background:var(--iq-hover);border-color:var(--iq-line)}
.wb-shell[data-workshop] .wb-library-item:is([aria-pressed=true],:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"]))){background:var(--iq-focus-fill);color:var(--iq-focus-text);border-color:transparent}
.wb-shell[data-workshop] .wb-library-item b{font:600 var(--iq-type-label-size)/1.4 var(--iq-font);letter-spacing:var(--iq-tracking-h3);display:block}
.wb-shell[data-workshop] .wb-library-item small{font:400 var(--iq-type-meta-size)/1.45 var(--iq-font);color:var(--iq-muted);display:block;margin-top:3px;max-width:174px}
.wb-shell[data-workshop] .wb-library-item:is([aria-pressed=true],:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"]))) small{color:inherit}
.wb-shell[data-workshop] .wb-library-preview{flex:0 0 38px;width:38px;height:38px;border-radius:9px;background:var(--iq-surface);color:var(--iq-ink);display:grid;place-items:center}
.wb-shell[data-workshop] .wb-library-preview[data-tone=sand]{background:var(--iq-wb-sand);color:var(--iq-wb-note-ink)}
.wb-shell[data-workshop] .wb-library-preview[data-tone=mint]{background:var(--iq-wb-mint);color:var(--iq-wb-note-ink)}
.wb-shell[data-workshop] .wb-library-preview[data-tone=sky]{background:var(--iq-wb-sky);color:var(--iq-wb-note-ink)}
.wb-shell[data-workshop] .wb-library-batch{display:flex;align-items:center;gap:10px;width:100%;padding:14px 8px;margin-top:14px;border:0;border-top:1px solid var(--iq-line);border-radius:0;background:transparent;color:var(--iq-ink);text-align:left;cursor:pointer}
.wb-shell[data-workshop] .wb-library-batch b{font:500 var(--iq-type-caption-size)/1.4 var(--iq-font)}
.wb-shell[data-workshop] .wb-library-batch small{display:block;font:400 var(--iq-type-meta-size)/1.5 var(--iq-font);color:var(--iq-muted);margin-top:3px}
.wb-shell[data-workshop] .wb-library-tip{font:400 var(--iq-type-meta-size)/1.5 var(--iq-font);color:var(--iq-muted);margin:0;padding-top:12px;border-top:1px solid var(--iq-line);flex:none}
.wb-shell[data-workshop] .wb-library-family{margin:0 0 16px}
.wb-shell[data-workshop] .wb-library-family h4{font:500 var(--iq-type-meta-size)/1.5 var(--iq-font);color:var(--iq-muted);margin:0 0 8px;letter-spacing:var(--iq-tracking-body)}
.wb-shell[data-workshop] .wb-shape-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.wb-shell[data-workshop] .wb-shape-choice{margin:0;min-height:83px;padding:9px 4px;gap:5px;background:var(--iq-surface);display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;min-width:0}
.wb-shell[data-workshop] .wb-shape-choice b{font:500 var(--iq-type-meta-size)/1.35 var(--iq-font);white-space:normal;overflow-wrap:normal}
.wb-library-shape{display:block;flex:none;fill:var(--iq-raised);stroke:currentColor;stroke-width:1.3;overflow:visible}
.wb-library-shape *{vector-effect:non-scaling-stroke;stroke-linejoin:round}
.wb-shape-detail{fill:none}
.wb-library-format-note,.wb-library-no-results{font:400 var(--iq-type-caption-size)/1.6 var(--iq-font);color:var(--iq-muted);padding:12px 6px;margin:0}
.wb-shell[data-workshop] .wb-command-row{padding:9px 18px;min-height:45px}
.wb-shell[data-workshop] .wb-mode-description{font-size:var(--iq-type-caption-size);line-height:1.5;white-space:normal;color:var(--iq-muted)}
.wb-shell[data-workshop] .wb-stage{height:640px;min-height:640px}
.wb-shell[data-workshop] .wb-footer{inset:auto 14px 14px;gap:12px;z-index:16;flex-wrap:nowrap}
.wb-shell[data-workshop] .wb-dock{border-radius:14px;padding:5px;gap:3px;border:1px solid var(--iq-line);background:var(--iq-raised);box-shadow:0 4px 16px #0000000c}
.wb-shell[data-workshop] .wb-dock :is(.wb-tool,.wb-button){width:42px;min-width:42px;height:42px;min-height:42px;padding:10px;border-radius:9px;color:var(--iq-muted);background:transparent;display:flex;align-items:center;justify-content:center}
.wb-shell[data-workshop] .wb-dock button[aria-pressed=true]{background:var(--iq-primary);color:var(--iq-on-primary)}
.wb-shell[data-workshop] .wb-dock button:hover:not(:disabled):not([aria-pressed=true]){background:var(--iq-hover);color:var(--iq-ink)}
.wb-shell[data-workshop] .wb-dock button:disabled{opacity:.35;cursor:default}
.wb-shell[data-workshop] :is(.wb-dock,.wb-zoom) button::after{content:none!important;display:none!important}
.wb-shell[data-workshop] .wb-dock-icon{width:20px;height:20px;flex:0 0 20px;display:block;overflow:visible;stroke-width:1.75;transform:none}
.wb-shell[data-workshop] .wb-dock-icon g{stroke-width:1.75}
.wb-shell[data-workshop] .wb-dock button:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){outline:0;background:var(--iq-focus-fill);color:var(--iq-focus-text);box-shadow:inset 0 -2px currentColor}
.wb-shell[data-workshop] .wb-zoom{padding:6px;border-radius:12px;gap:2px;box-shadow:0 4px 16px #0000000c}
.wb-shell[data-workshop] .wb-zoom .wb-button{font-size:var(--iq-type-caption-size);min-height:34px;height:34px;min-width:30px;padding:5px}
.wb-shell[data-workshop] .wb-overlay-tip{position:absolute;z-index:100;max-width:calc(100% - 16px);display:flex;align-items:center;gap:12px;padding:7px 10px;background:var(--iq-primary);color:var(--iq-on-primary);border:0;border-radius:7px;box-shadow:0 3px 10px #00000012;white-space:normal;overflow-wrap:anywhere;font:500 var(--iq-type-caption-size)/1.4 var(--iq-font);pointer-events:auto;letter-spacing:var(--iq-tracking-body);transform:none;min-height:0}
.wb-shell[data-workshop] .wb-overlay-tip[hidden]{display:none}
.wb-shell[data-workshop] .wb-overlay-tip kbd{color:inherit;opacity:.7;font:400 var(--iq-type-meta-size)/1.4 var(--iq-font);border:0;background:transparent;padding:0}
/* The same shape definition determines silhouette, content inset and connector anchors. */
.wb-shell[data-workshop] .wb-object[data-type=shape]{padding:0!important;overflow:visible}
.wb-shell[data-workshop] .wb-object[data-type=shape] .wb-object-text{position:absolute;left:var(--shape-left,12%);right:var(--shape-right,12%);top:var(--shape-top,14%);bottom:var(--shape-bottom,14%);width:auto;height:auto;min-width:0;margin:0;overflow:auto}
.wb-shell[data-workshop] .wb-shape-face>*{stroke-width:1.35;stroke-linejoin:round}
.wb-shell[data-workshop] .wb-shape-face .wb-shape-detail{fill:none}
.wb-shell[data-workshop] .wb-object[data-type=shape].is-selected .wb-shape-face{stroke:var(--iq-focus);stroke-width:1.7}
.wb-shell[data-workshop] .wb-object[data-type=shape].is-selected{box-shadow:none!important}
.wb-shell[data-workshop] .wb-port{width:28px;height:28px;min-width:28px;min-height:28px;z-index:14}
.wb-shell[data-workshop] .wb-port[data-port=left]{left:-14px;top:calc(50% - 14px)}
.wb-shell[data-workshop] .wb-port[data-port=right]{right:-14px;top:calc(50% - 14px)}
.wb-shell[data-workshop] .wb-port[data-port=top]{top:-14px;left:calc(50% - 14px)}
.wb-shell[data-workshop] .wb-port[data-port=bottom]{bottom:-14px;left:calc(50% - 14px)}
.wb-shell[data-workshop] .wb-port::after{width:7px;height:7px;border-width:1.5px;box-shadow:0 0 0 3px var(--iq-raised)}
.wb-shell[data-workshop] .wb-edge-line{stroke-width:1.7;stroke:var(--edge-color,var(--iq-muted))}
.wb-shell[data-workshop] .wb-connection.is-selected .wb-edge-line{stroke:var(--iq-focus);stroke-width:2}
.wb-shell[data-workshop] .wb-connection:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])){outline:none}
.wb-shell[data-workshop] .wb-connection:focus-visible:not(:where(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"])) .wb-edge-line{stroke:var(--iq-focus);stroke-width:2.5}
.wb-shell[data-workshop] .wb-connection-label rect{stroke:none;fill:var(--iq-wb-canvas,var(--iq-surface))}
.wb-shell[data-workshop] .wb-connection-label text{fill:var(--iq-muted);font:500 var(--iq-type-caption-size)/1.5 var(--iq-font)}
.wb-shell[data-workshop] .wb-connection.is-selected .wb-connection-label text{fill:var(--iq-focus)}
.wb-edge-style-group{display:flex;align-items:center;background:var(--iq-surface);padding:3px;gap:2px;border-radius:7px}
.wb-edge-style-group .wb-button{min-height:28px;height:28px;padding:4px 8px;font-size:var(--iq-type-meta-size)}
.wb-edge-style-group .wb-button[aria-pressed=true]{background:var(--iq-raised);color:var(--iq-ink);box-shadow:0 1px 3px #00000014}
/* Batch capture uses individually editable note cards, never an implicit wall of text. */
.wb-capture-sheet{width:min(680px,calc(100vw - 24px));padding:24px;max-height:calc(100dvh - 24px)}
.wb-capture-sheet .wb-sheet-content{gap:16px}
.wb-capture-rows{display:grid;gap:10px}
.wb-capture-row{display:grid;grid-template-columns:minmax(0,1fr) 28px;gap:8px;border:1px solid var(--iq-line);border-radius:10px;padding:10px 12px;background:var(--iq-surface)}
.wb-capture-row label{display:grid;gap:4px;min-width:0}
.wb-capture-row label>span{font:500 var(--iq-type-meta-size)/1.5 var(--iq-font);color:var(--iq-muted)}
.wb-capture-sheet .wb-capture-row textarea{border:0;background:transparent;min-height:52px;padding:2px 0;font:400 var(--iq-type-interface-size)/1.6 var(--iq-font);color:var(--iq-ink);outline:none;resize:none}
.wb-capture-row:focus-within{border-color:var(--iq-focus);background:var(--iq-raised)}
.wb-capture-row-actions{display:flex;flex-direction:column;align-items:center;gap:2px}
.wb-capture-row-actions .wb-button{min-height:26px;min-width:26px;height:26px;width:26px;padding:4px}
.wb-capture-add{justify-self:start;background:var(--iq-surface);border-radius:8px}
.wb-capture-import{border-top:1px solid var(--iq-line);padding-top:14px}
.wb-capture-import summary{font:500 var(--iq-type-caption-size)/1.5 var(--iq-font);cursor:pointer;color:var(--iq-muted);margin-bottom:12px}
.wb-capture-import label{margin:10px 0}
.wb-capture-summary{font:400 var(--iq-type-caption-size)/1.6 var(--iq-font);color:var(--iq-muted)}
.wb-capture-sheet footer{margin-top:18px;padding-top:16px;border-top:1px solid var(--iq-line);position:sticky;bottom:-24px;background:var(--iq-raised);padding-bottom:8px;z-index:2}
@media(max-width:1200px){.wb-shell[data-workshop]{--wb-library-width:252px}.wb-shell[data-workshop].has-panel .wb-workspace{grid-template-columns:var(--wb-library-width) minmax(0,1fr)}.wb-shell[data-workshop].library-closed.has-panel .wb-workspace{grid-template-columns:minmax(0,1fr)}.wb-shell[data-workshop] .wb-panel{position:absolute;right:0;top:0;width:280px;bottom:0;height:auto;z-index:22}}
@media(max-width:760px){
 .wb-shell[data-workshop] .wb-workspace,.wb-shell[data-workshop].has-panel .wb-workspace{grid-template-columns:minmax(0,1fr)}
 .wb-shell[data-workshop] .wb-library{position:absolute;inset:0 auto 0 0;width:min(280px,calc(100% - 24px));max-width:none;height:100%;box-shadow:6px 0 24px #00000016;z-index:24;padding:16px 12px}
 .wb-shell[data-workshop] .wb-stage{height:600px;min-height:600px}
 .wb-shell[data-workshop] .wb-footer{inset:auto 6px 8px;gap:6px;justify-content:center;flex-wrap:wrap}
 .wb-shell[data-workshop] .wb-dock{gap:2px;padding:4px}
 .wb-shell[data-workshop] .wb-dock :is(.wb-tool,.wb-button){width:38px;min-width:38px;height:40px;min-height:40px;padding:8px}
 .wb-shell[data-workshop] .wb-zoom{padding:2px 5px}
 .wb-shell[data-workshop] .wb-zoom .wb-button{min-height:30px;height:30px}
 .wb-shell[data-workshop] .wb-command-row{padding:8px 12px}
 .wb-capture-sheet{padding:18px}
 .wb-capture-sheet footer{bottom:-18px;flex-wrap:wrap}
 .wb-capture-row label>span{font-size:var(--iq-type-caption-size)}
 .wb-capture-sheet .wb-capture-row textarea{font-size:var(--iq-type-body-size)}
}
@media(prefers-reduced-motion:reduce){.wb-shell[data-workshop] :is(.wb-library-item,.wb-library-categories button){transition:none}}
@media(forced-colors:active){.wb-shell[data-workshop] .wb-port::after,.wb-shell[data-workshop] .wb-edge-end{border:1px solid ButtonText;fill:Canvas;stroke:ButtonText}.wb-shell[data-workshop] .wb-edge-line{stroke:CanvasText}.wb-shell[data-workshop] .wb-overlay-tip{background:Canvas;color:CanvasText;border:1px solid CanvasText}.wb-shell[data-workshop] .wb-shape-face{fill:Canvas;stroke:CanvasText}}
.wb-shell[data-workshop] .wb-library{height:640px;max-height:640px}
.wb-fullscreen .wb-shell[data-workshop] .wb-library{height:100%;max-height:100%}
@media(max-width:760px){.wb-shell[data-workshop] .wb-library{height:100%;max-height:100%}}

.wb-shell[data-workshop] .wb-library>header{padding:0}
.wb-shell[data-workshop] .wb-library-item{min-height:62px;padding:10px 6px}

.wb-shell[data-workshop] .wb-port,.wb-shell[data-workshop] .wb-resize{transform:scale(var(--wb-inv-zoom,1));transform-origin:center}
.wb-capture-sheet iq-select{display:block;min-width:0}
.wb-capture-sheet .iq-select-trigger{height:42px;min-height:42px;background:var(--iq-field-bg);font-size:var(--iq-type-label-size);border-radius:8px}
.wb-capture-sheet .iq-control-label{font-size:var(--iq-type-label-size);margin-bottom:8px}

/* Only the DOM tooltip is painted; no pseudo tooltip on inherited formatting controls. */
.wb-shell[data-workshop] :is(.wb-md-tools,.wb-alignment) button::after{content:none!important;display:none!important}
.wb-shell[data-workshop] .wb-overlay-tip kbd{flex:none;white-space:nowrap}
.wb-shell[data-workshop] .wb-library-search,.wb-shell[data-workshop] .wb-library>header{flex-shrink:0}
.wb-capture-summary{min-height:20px}
.wb-capture-import:not([open]) summary{margin-bottom:0}

iq-whiteboard[surface-mode=embedded]{height:100%;min-height:0;min-width:0;display:block}
iq-whiteboard[surface-mode=embedded]>.wb-shell{height:100%;border:0;border-radius:0;min-height:0}
iq-whiteboard[surface-mode=embedded]>.wb-shell>.wb-header{display:none}
iq-whiteboard[surface-mode=embedded] .wb-shell .wb-workspace{flex:1;min-height:0}
iq-whiteboard[surface-mode=embedded] .wb-shell .wb-center{min-height:0}
iq-whiteboard[surface-mode=embedded] .wb-shell .wb-stage{height:auto;min-height:0;flex:1}
iq-whiteboard[surface-mode=embedded] .wb-shell .wb-command-row{flex:none}
iq-whiteboard[surface-mode=embedded] .wb-shell .wb-library{min-height:0;overflow:auto}
iq-whiteboard[surface-mode=embedded] .wb-shell .wb-panel{min-height:0;overflow:auto}
@media(max-height:500px){iq-whiteboard[surface-mode=embedded] .wb-shell .wb-stage{min-height:200px}}

/* R3: no idle status strip. Contextual editing controls still have a surface. */
iq-whiteboard[surface-mode=embedded] .wb-command-row:has(.wb-context[hidden]){display:none}

/* v3 approved host editor mode: chrome overlays never resize the canvas. */
iq-whiteboard[surface-mode=embedded][editor-mode=host] .wb-shell{position:relative}
iq-whiteboard[surface-mode=embedded][editor-mode=host] .wb-workspace{position:relative}
/* The host library floats over the canvas, so it must not also reserve a grid column (the canvas collapsed to 272px). */
iq-whiteboard[surface-mode=embedded][editor-mode=host] .wb-shell[data-workshop] .wb-workspace{grid-template-columns:minmax(0,1fr)}
iq-whiteboard[surface-mode=embedded][editor-mode=host] .wb-shell[data-workshop].has-panel .wb-workspace{grid-template-columns:minmax(0,1fr) 280px}
iq-whiteboard[surface-mode=embedded][editor-mode=host] .wb-library{position:absolute;left:16px;bottom:84px;top:16px;width:min(300px,calc(100% - 32px));z-index:12;border:1px solid var(--iq-line);border-radius:var(--iq-radius-md);box-shadow:var(--iq-shadow-2)}
iq-whiteboard[surface-mode=embedded][editor-mode=host] .wb-command-row{position:absolute;top:12px;left:50%;transform:translateX(-50%);max-width:calc(100% - 380px);z-index:7;border-radius:var(--iq-radius-md);box-shadow:var(--iq-shadow-1)}
iq-whiteboard[surface-mode=embedded][editor-mode=host] .wb-footer{position:absolute;bottom:16px;left:16px;right:16px;z-index:8;pointer-events:none;background:transparent;border:0}
iq-whiteboard[surface-mode=embedded][editor-mode=host] .wb-footer>*{pointer-events:auto}
iq-whiteboard[surface-mode=embedded][editor-mode=host] .wb-stage{overscroll-behavior:contain;touch-action:none}
iq-whiteboard[surface-mode=embedded][editor-mode=host] .wb-formatting{position:absolute;top:16px;right:16px;z-index:10;width:320px}
@media(max-width:760px){iq-whiteboard[surface-mode=embedded][editor-mode=host] .wb-command-row{max-width:calc(100% - 32px)}iq-whiteboard[surface-mode=embedded][editor-mode=host] .wb-footer{bottom:8px;left:8px;right:8px}}
/* v3.2 owner-requested neutral confirmation; failure feedback remains unchanged. */
.iq-btn[data-copy-tone=neutral][data-copy-state=success]{background:var(--iq-recessed);color:var(--iq-ink);border-color:transparent}

/* ---------- Host embedding (0.6.0-vnext.7) ---------- */
/* selection-bar="none": the host edits the selection in its own side panel, so the command row and inline formatting row stay hidden. */
iq-whiteboard[selection-bar=none] :is(.wb-command-row,.wb-formatting){display:none!important}
/* library-open keeps the host's floating object library visible at start; the dock toggle still collapses it. */
/* ---------- Side dock (0.6.0-vnext.9): dock="side" ----------
   The dock is a vertical rail on the left; the object library and the host panel slide out from it to the right
   and back into it, with the same motion. Only one sheet is open at a time. */
/* Same specificity as the host-embedding footer rule (minified to an inset shorthand that resets top), and later, so the rail starts at the top edge, level with the sheets. */
iq-whiteboard[dock=side] .wb-footer,iq-whiteboard[surface-mode=embedded][editor-mode=host][dock=side] .wb-footer{top:16px;bottom:16px;left:16px;right:auto;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:var(--iq-space-3)}
iq-whiteboard[dock=side] .wb-shell[data-workshop] .wb-dock{flex-direction:column;align-items:center}
iq-whiteboard[dock=side] .wb-dock-divider{width:24px;height:1px;margin:4px auto;align-self:center}
iq-whiteboard[dock=side] .wb-host-actions{display:flex;flex-direction:column;gap:3px}
iq-whiteboard[dock=side] .wb-shell[data-workshop] .wb-zoom{flex-direction:column;align-items:center}
.wb-host-actions{display:flex;gap:3px}
.wb-host-actions:empty{display:none}
.wb-shell[data-workshop] .wb-host-actions .wb-button{width:42px;min-width:42px;height:42px;min-height:42px;padding:10px;border-radius:9px;color:var(--iq-muted);background:transparent;display:grid;place-items:center}
.wb-shell[data-workshop] .wb-host-actions .wb-button:hover,.wb-shell[data-workshop] .wb-host-actions .wb-button[aria-expanded=true]{background:var(--iq-hover);color:var(--iq-ink)}
.wb-shell[data-workshop] .wb-host-actions .wb-button>span{display:none}
iq-whiteboard[dock=side] .wb-shell :is(.wb-library,.wb-host-panel){position:absolute;left:84px;top:16px;bottom:16px;width:min(300px,calc(100% - 100px));height:auto;max-height:none;display:flex;flex-direction:column;z-index:12;border:1px solid var(--iq-line);border-radius:var(--iq-radius-lg);background:var(--iq-raised);box-shadow:0 12px 32px var(--iq-shadow-color);transform:none;opacity:1;visibility:visible;transition:transform var(--iq-motion-enter) var(--iq-ease),opacity var(--iq-motion-standard) var(--iq-ease),visibility 0s}
iq-whiteboard[dock=side] .wb-shell :is(.wb-library,.wb-host-panel)[hidden]{display:flex!important;transform:translateX(-24px);opacity:0;visibility:hidden;pointer-events:none;transition:transform var(--iq-motion-standard) var(--iq-ease),opacity var(--iq-motion-fast) var(--iq-ease),visibility 0s linear var(--iq-motion-standard)}
.wb-host-panel[hidden]{display:none}
.wb-host-panel>header{display:flex;align-items:center;justify-content:space-between;gap:var(--iq-space-2);padding:16px 14px 8px}
.wb-host-panel>header h3{font:600 .9375rem/1.4 var(--iq-font);letter-spacing:var(--iq-tracking-h2);margin:0;color:var(--iq-ink)}
.wb-host-body{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;padding:0 8px 12px}
@media (prefers-reduced-motion:reduce){iq-whiteboard[dock=side] .wb-shell :is(.wb-library,.wb-host-panel),iq-whiteboard[dock=side] .wb-shell :is(.wb-library,.wb-host-panel)[hidden]{transition:none}}
@media(max-width:760px){iq-whiteboard[dock=side] .wb-shell :is(.wb-library,.wb-host-panel){left:72px;width:calc(100% - 84px)}iq-whiteboard[surface-mode=embedded][editor-mode=host][dock=side] .wb-footer{top:8px;bottom:8px;left:8px;right:auto}}
/* dock-tools (0.6.0-vnext.13): the host lists the canvas tools it wants in the dock ("select hand connect").
   Hidden tools stay reachable in other ways: connections through object ports, panning by scroll or trackpad. */
iq-whiteboard[dock-tools]:not([dock-tools~=select]) .wb-dock [data-tool=select],
iq-whiteboard[dock-tools]:not([dock-tools~=hand]) .wb-dock [data-tool=hand],
iq-whiteboard[dock-tools]:not([dock-tools~=connect]) .wb-dock [data-tool=connect]{display:none}
/* The side rail starts at the top for every embedded board, not only for host-edited ones (the workshop footer inset would win otherwise). */
iq-whiteboard[dock=side] .wb-shell[data-workshop] .wb-footer{top:16px;bottom:16px;left:16px;right:auto;justify-content:space-between}
@media(max-width:760px){iq-whiteboard[dock=side] .wb-shell[data-workshop] .wb-footer{top:8px;bottom:8px;left:8px}}
/* 0.6.0-vnext.19: with the side dock, zoom sits directly under the tool rail (not at the bottom edge), as one column of the same width.
   "Всё" (fit) leaves the zoom group: its corner glyph read as full screen. Fit stays on Shift+1 and in the host menu. */
iq-whiteboard[dock=side] .wb-footer,iq-whiteboard[surface-mode=embedded][editor-mode=host][dock=side] .wb-footer{justify-content:flex-start;align-items:stretch;bottom:auto}
iq-whiteboard[dock=side] .wb-shell[data-workshop] .wb-zoom{padding:5px;border-radius:14px;gap:2px}
iq-whiteboard[dock=side] .wb-shell[data-workshop] .wb-zoom .wb-button{width:100%;min-width:0;height:36px;min-height:36px}
iq-whiteboard[dock=side] .wb-zoom [data-wb-action=fit]{display:none}

/* Promoted from the @iquipage/work-list candidate. */
/* Additive work-list candidate. Geometry only; values come from the host IQUIPAGE theme. */
.iq-list-drag-ghost{position:fixed;top:0;left:0;z-index:120;pointer-events:none;max-width:min(360px,80vw);padding:var(--iq-space-3) var(--iq-space-4);border-radius:var(--iq-radius-sm);background:var(--iq-raised);color:var(--iq-ink);border:1px solid var(--iq-line);box-shadow:var(--iq-shadow-2);font:var(--iq-type-label-weight) var(--iq-type-label-size)/var(--iq-type-label-lineHeight) var(--iq-font);overflow-wrap:anywhere;will-change:transform}
.iq-list-drop-marker{position:fixed;height:3px;background:var(--iq-accent);pointer-events:none;z-index:119;border-radius:var(--iq-radius-xs)}
[data-work-drag]{touch-action:none;cursor:grab}
[data-work-drag][aria-pressed=true]{cursor:grabbing}
[data-work-drop-active]>[data-work-dropzone]{background:var(--iq-accent-soft);color:var(--iq-accent)}
[data-work-dragging]{user-select:none}
.iq-work-table .iq-window-space{padding:0;border:0;display:table-row}
.iq-work-table .iq-window-space>td{padding:0;border:0;min-height:0}
@media(max-width:640px){.iq-work-table .iq-window-space{display:block}.iq-work-table .iq-window-space>td{display:block}}
@media(prefers-reduced-motion:reduce){.iq-list-drag-ghost{will-change:auto}}
@media(forced-colors:active){.iq-list-drop-marker{background:Highlight;forced-color-adjust:none}.iq-list-drag-ghost{background:Canvas;color:CanvasText;border:1px solid CanvasText;box-shadow:none}}

@keyframes iq-list-lift{from{opacity:.35}to{opacity:1}}
.iq-list-drag-ghost{animation:iq-list-lift var(--iq-motion-fast) var(--iq-ease)}
@media(prefers-reduced-motion:reduce){.iq-list-drag-ghost{animation:none}}
[data-motion=reduced] .iq-list-drag-ghost{animation:none}
/* Public native work-list composition. Uses the host IQUIPAGE tokens and controls. */
.iq-workbar{display:flex;align-items:center;flex-wrap:wrap;gap:var(--iq-space-4);padding:var(--iq-space-3) var(--iq-space-6);min-width:0;border-bottom:1px solid var(--iq-line);background:var(--iq-canvas)}
.iq-workbar h1{font:600 var(--iq-type-heading3-size)/1.3 var(--iq-font);letter-spacing:var(--iq-type-heading3-letterSpacing);margin:0}
.iq-workbar-nav{display:flex;align-items:center;gap:var(--iq-space-1)}
.iq-workbar-actions{display:flex;align-items:center;gap:var(--iq-space-2);margin-left:auto}
.iq-work-list{width:100%;table-layout:fixed;border-collapse:collapse;font:400 var(--iq-type-label-size)/1.5 var(--iq-font)}
.iq-work-list td{padding:var(--iq-space-2);vertical-align:middle;border-bottom:1px solid var(--iq-line);overflow-wrap:anywhere}
.iq-work-list td:first-child{padding-left:var(--iq-space-1)}
.iq-work-list td:last-child{padding-right:var(--iq-space-1)}
.iq-work-list tr[data-work-row]{height:var(--iq-work-compact-row)}
.iq-work-list tr[data-selected=true]{background:var(--iq-accent-soft)}
.iq-work-list-identity{display:flex;align-items:center;gap:var(--iq-space-2);min-width:0}
.iq-work-list-title{min-width:0;flex:1}
.iq-work-list-title>.iq-btn{justify-content:flex-start;text-align:left;padding-inline:0;font-size:var(--iq-type-interface-size);font-weight:500;white-space:normal;overflow-wrap:anywhere;min-width:0;max-width:100%}
.iq-work-list-id{font:400 var(--iq-type-caption-size)/1.4 var(--iq-mono);color:var(--iq-muted);white-space:nowrap;flex:none}
.iq-work-list-type{display:inline-flex;align-items:center;flex:none;color:var(--iq-muted)}
.iq-work-list-type[data-kind=epic]{color:var(--iq-epic)}
.iq-work-list .iq-work-list-context{display:block;font:400 var(--iq-type-caption-size)/1.5 var(--iq-font);color:var(--iq-muted)}
.iq-work-list tr[data-task-emphasis=critical] .iq-work-list-title>.iq-btn{color:var(--iq-task-critical-text)}
.iq-work-list tr[data-task-emphasis=high] .iq-work-list-title>.iq-btn{color:var(--iq-task-high-text)}
.iq-work-list tr[data-task-emphasis=epic] .iq-work-list-title>.iq-btn{color:var(--iq-task-epic-text)}
.iq-work-list-meta{display:flex;align-items:center;justify-content:flex-start;gap:var(--iq-space-1);min-width:0;max-width:100%;font-size:var(--iq-type-caption-size)}
@media(hover:hover){.iq-work-list tr[data-work-row]:hover:not([data-selected=true]){background:var(--iq-surface)}}
@media(max-width:700px){.iq-workbar{padding:var(--iq-space-2) var(--iq-space-4);gap:var(--iq-space-2)}.iq-workbar h1{}.iq-workbar-actions .iq-btn{padding-inline:var(--iq-space-2)}.iq-work-list colgroup{display:none}.iq-work-list,.iq-work-list tbody{display:block}.iq-work-list tr[data-work-row]{display:grid;grid-template-columns:minmax(0,1fr) auto;height:auto;min-height:var(--iq-work-compact-row);padding-block:var(--iq-space-2);border-bottom:1px solid var(--iq-line)}.iq-work-list td{border:0;padding:var(--iq-space-1)}.iq-work-list td:first-child{grid-column:1/-1}.iq-work-list td[data-column=status]{grid-column:1}.iq-work-list td[data-column=person]{grid-column:2}.iq-work-list td[data-column=date]{grid-column:1/-1}.iq-work-list td[data-column=date]:has([data-empty=true]){display:none}.iq-work-list-id{display:none}.iq-work-list-identity{gap:var(--iq-space-1)}}
@media(prefers-reduced-motion:reduce){.iq-work-list tr{scroll-behavior:auto}}
/* ---------- Visible column header (0.6.0-vnext.8) ---------- */
.iq-work-list thead th{padding:var(--iq-space-2);text-align:left;vertical-align:middle;font:500 var(--iq-type-meta-size)/1.4 var(--iq-font);color:var(--iq-muted);border-bottom:1px solid var(--iq-line);white-space:nowrap}
.iq-work-list thead th:first-child{padding-left:var(--iq-space-1)}
@media(max-width:640px){.iq-work-list thead{display:none}}

/* Credential dialog: DS fields inside a DS surface. */
.iq-auth-stage{min-height:100svh;display:grid;place-items:center;padding:var(--iq-space-6);background:var(--iq-surface)}
iq-auth-dialog{display:block;width:100%;max-width:440px}
.iq-auth-dialog{width:100%;max-width:440px;margin:auto;background:var(--iq-raised);border:1px solid var(--iq-line);border-radius:var(--iq-radius-lg);padding:var(--iq-space-10);color:var(--iq-ink)}
.iq-auth-dialog-brand{display:flex;gap:var(--iq-space-3);align-items:center;font-size:var(--iq-type-title-size);font-weight:500;margin-bottom:var(--iq-space-8)}
.iq-auth-dialog h1{font-size:var(--iq-type-heading2-size);line-height:1.2;letter-spacing:var(--iq-tracking-display);margin:0}
.iq-auth-dialog-description{color:var(--iq-muted);margin:var(--iq-space-3) 0 var(--iq-space-8);line-height:1.6}
.iq-auth-dialog form{display:grid;gap:var(--iq-space-5)}
.iq-auth-field{margin-bottom:var(--iq-space-5)}
.iq-auth-label-row{display:flex;align-items:baseline;justify-content:space-between;gap:var(--iq-space-3)}
.iq-auth-dialog a{color:var(--iq-accent);font-size:var(--iq-type-label-size);text-underline-offset:3px}
.iq-auth-password{padding-right:var(--iq-space-1)}
.iq-auth-password>.iq-btn{flex:none}
.iq-auth-remember{margin-top:calc(-1 * var(--iq-space-2))}
.iq-auth-submit{width:100%}
.iq-auth-status{margin:0;font-size:var(--iq-type-label-size);color:var(--iq-muted)}.iq-auth-status:empty{display:none}
.iq-auth-dialog-footer{margin-top:var(--iq-space-6);font-size:var(--iq-type-label-size);text-align:center;color:var(--iq-muted)}
.iq-auth-dialog .iq-auth-error{margin:0 0 var(--iq-space-5);padding:0;background:none}
@media(max-width:480px){.iq-auth-stage{padding:var(--iq-space-4)}.iq-auth-dialog{padding:var(--iq-space-6)}.iq-auth-dialog h1{font-size:var(--iq-type-heading3-size)}}
.iq-auth-label-row .iq-control-label::after{content:" *";color:var(--iq-muted)}

/* Shared authentication composition; uses the same opaque surfaces and type as the catalog. */
iq-auth-screen{display:block;min-height:100%;color:var(--iq-ink);background:var(--iq-canvas)}
.iq-auth-screen{min-height:100svh;display:flex;flex-direction:column;padding:0 var(--iq-grid-margin) var(--iq-space-8)}
.iq-auth-header{width:100%;max-width:var(--iq-grid-max);margin-inline:auto;min-height:96px;display:flex;align-items:center;justify-content:space-between;gap:var(--iq-space-4)}
.iq-auth-brand,.iq-auth-tools{display:flex;align-items:center;gap:var(--iq-space-3)}
.iq-auth-brand{font-size:var(--iq-type-title-size);font-weight:500;letter-spacing:var(--iq-tracking-h2)}
.iq-auth-main{width:100%;max-width:var(--iq-grid-max);margin:auto;flex:1;display:grid;grid-template-columns:1fr 1fr;min-height:560px}
.iq-auth-context{border-radius:var(--iq-radius-lg);background:var(--iq-surface);padding:var(--iq-space-16);display:flex;flex-direction:column;justify-content:center;gap:var(--iq-space-12);position:relative}
.iq-auth-context h2{font-size:clamp(32px,3.5vw,52px);line-height:var(--iq-type-heading2-lineHeight);letter-spacing:var(--iq-tracking-display);text-wrap:balance;max-width:12ch}
.iq-auth-context p{color:var(--iq-muted);font-size:var(--iq-type-body-size);line-height:var(--iq-type-body-lineHeight);margin-top:var(--iq-space-6);max-width:34ch}
.iq-auth-signature{color:var(--iq-muted);font-size:var(--iq-type-caption-size);letter-spacing:var(--iq-tracking-caps);position:absolute;bottom:var(--iq-space-10)}
.iq-auth-entry{display:flex;align-items:center;justify-content:center;padding:var(--iq-space-12);min-width:0}
.iq-auth-content{width:100%;max-width:360px;overflow-wrap:break-word}
.iq-auth-content h1{font-size:var(--iq-type-heading2-size);line-height:var(--iq-type-heading2-lineHeight);letter-spacing:var(--iq-type-heading2-letterSpacing)}
.iq-auth-description{margin-top:var(--iq-space-4);color:var(--iq-muted);font-size:var(--iq-type-body-size);line-height:var(--iq-type-body-lineHeight)}
.iq-auth-action{width:100%;margin-top:var(--iq-space-8);justify-content:space-between}
.iq-auth-hint{margin-top:var(--iq-space-4);color:var(--iq-muted);font-size:var(--iq-type-caption-size);line-height:1.6}
.iq-auth-form:not(:empty),.iq-auth-footer:not(:empty){margin-top:var(--iq-space-8)}
.iq-auth-error{margin-top:var(--iq-space-6);padding:var(--iq-space-4);background:var(--iq-danger-bg);color:var(--iq-danger);border-radius:var(--iq-radius-sm)}
@media(max-width:760px){.iq-auth-screen{padding-bottom:var(--iq-space-6)}.iq-auth-header{min-height:80px}.iq-auth-main{display:flex;flex-direction:column-reverse;min-height:0;flex:1;gap:var(--iq-space-8)}.iq-auth-entry{flex:1;padding:var(--iq-space-10) 0}.iq-auth-context{padding:var(--iq-space-6);gap:var(--iq-space-6)}.iq-auth-context h2{font-size:var(--iq-type-heading3-size);line-height:1.3;max-width:none}.iq-auth-context p{margin-top:var(--iq-space-3);max-width:none}.iq-auth-signature{position:static}.iq-auth-content{max-width:400px}}

/* Opt-in welcome composition. Form width and provider controls keep their established dimensions. */
iq-auth-screen[layout=welcome] .iq-auth-screen{max-width:1280px;margin-inline:auto;padding-inline:var(--iq-space-8)}
iq-auth-screen[layout=welcome] .iq-auth-header{min-height:104px}
iq-auth-screen[layout=welcome] .iq-auth-main{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--iq-space-12);min-height:0;padding-block:var(--iq-space-10)}
iq-auth-screen[layout=welcome] .iq-auth-context{background:none;border-radius:0;padding:var(--iq-space-6) 0;justify-content:center;gap:var(--iq-space-10)}
iq-auth-screen[layout=welcome] .iq-auth-context h2{margin:0;font-size:clamp(36px,4vw,56px);line-height:var(--iq-type-heading2-lineHeight);max-width:15ch;text-wrap:balance}
iq-auth-screen[layout=welcome] .iq-auth-context p{margin-top:var(--iq-space-5);max-width:42ch;font-size:var(--iq-type-body-size)}
iq-auth-screen[layout=welcome] .iq-auth-signature{position:static;font-size:var(--iq-type-meta-size)}
iq-auth-screen[layout=welcome] .iq-auth-entry{padding:var(--iq-space-8);border:1px solid var(--iq-line);border-radius:var(--iq-radius-lg);background:var(--iq-canvas);align-self:center}
iq-auth-screen[layout=welcome] .iq-auth-content{max-width:360px}
iq-auth-screen[layout=welcome] .iq-auth-content h1{margin:0;font-size:var(--iq-type-heading3-size)}
iq-auth-screen[layout=welcome] .iq-auth-description{font-size:var(--iq-type-label-size);margin-top:var(--iq-space-3)}
iq-auth-screen[layout=welcome] .iq-auth-hint:empty{display:none}
@media(max-width:900px){iq-auth-screen[layout=welcome] .iq-auth-main{gap:var(--iq-space-6)}iq-auth-screen[layout=welcome] .iq-auth-entry{padding:var(--iq-space-5)}}
@media(max-width:760px){iq-auth-screen[layout=welcome] .iq-auth-screen{padding-inline:var(--iq-space-4)}iq-auth-screen[layout=welcome] .iq-auth-header{min-height:72px}iq-auth-screen[layout=welcome] .iq-auth-main{display:flex;flex-direction:column-reverse;padding-block:var(--iq-space-3);gap:var(--iq-space-8)}iq-auth-screen[layout=welcome] .iq-auth-entry{width:100%;box-sizing:border-box;flex:none;padding:var(--iq-space-5)}iq-auth-screen[layout=welcome] .iq-auth-context{padding:var(--iq-space-4);gap:var(--iq-space-6)}iq-auth-screen[layout=welcome] .iq-auth-context h2{font-size:var(--iq-type-heading2-size);max-width:18ch}}

/* Settings workspace compositions (public, reusable). Navigation reuses the DS side navigation (.product-nav-*). */

/* Navigation head: the section name sits in a 48px row level with the page title; search is the DS nav search. */
.iq-settings-title{display:flex;align-items:center;min-height:48px;margin:0 10px var(--iq-space-3);font:600 var(--iq-type-interface-size)/1.3 var(--iq-font);color:var(--iq-ink)}
.iq-settings-nav .product-nav-section{margin:0 0 var(--iq-space-6)}
.iq-settings-nav .product-nav-section:last-child{margin-bottom:0}
.iq-settings-nav-empty{margin:0 10px;font-size:var(--iq-type-caption-size);color:var(--iq-muted)}
.product-nav-search.iq-settings-search{margin:0 0 var(--iq-space-6)}

/* Page heading: shared by every work section (board, planning, settings). The title row is 48px high, tools sit on its right. */
.iq-page-heading{display:flex;align-items:flex-start;gap:var(--iq-space-2) var(--iq-space-5);flex-wrap:wrap}
.iq-page-heading-copy{min-width:0;flex:1 1 320px}
.iq-page-heading h1{display:flex;align-items:center;min-height:48px;margin:0;font:600 var(--iq-work-compact-title)/1.3 var(--iq-font);letter-spacing:var(--iq-tracking-h3)}
.iq-page-heading-lead{max-width:64ch;margin:0;font-size:var(--iq-type-interface-size);line-height:1.55;color:var(--iq-muted)}
.iq-page-heading-tools{display:flex;align-items:center;gap:var(--iq-space-2);min-height:48px;margin-left:auto;flex-wrap:wrap}
.iq-page-heading-back{display:none}
.iq-settings-heading h1:focus{outline:none}
.iq-settings-heading h1:focus-visible{outline:2px solid var(--iq-focus);outline-offset:4px;border-radius:4px}

/* Group: an h2 with a one-line description and optional actions, then panels, facts or free content. */
/* Stack: the content column puts 40px between groups, panels and forms; a lock notice sits closer to what it explains. */
.iq-settings-stack>*+*,.iq-settings-group+.iq-settings-group{margin-top:var(--iq-space-10)}
.iq-settings-stack>[hidden]:first-child+*{margin-top:0}
.iq-settings-stack>.iq-settings-lock{margin-bottom:0}
.iq-settings-stack>.iq-settings-lock+*{margin-top:var(--iq-space-6)}
.iq-settings-group-head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--iq-space-4);margin-bottom:var(--iq-space-4)}
.iq-settings-group-head h2{display:flex;align-items:center;gap:var(--iq-space-2);margin:0;font:500 var(--iq-type-title-size)/1.4 var(--iq-display);letter-spacing:var(--iq-tracking-h3)}
.iq-settings-group-head p{max-width:64ch;margin:var(--iq-space-1) 0 0;font-size:var(--iq-type-label-size);line-height:1.55;color:var(--iq-muted)}
.iq-settings-group-actions{display:flex;align-items:center;gap:var(--iq-space-2);flex:none}
.iq-settings-group-count{font:500 var(--iq-type-label-size)/1 var(--iq-font);font-variant-numeric:tabular-nums;color:var(--iq-muted)}

/* Panel of rows: leading media, title and meta, a value or badge, then at most one visible action and a menu. */
.iq-settings-panel{display:block;margin:0;padding:0;list-style:none;border:1px solid var(--iq-line);border-radius:var(--iq-radius-md);background:var(--iq-raised);overflow:hidden}
.iq-settings-panel+.iq-settings-panel{margin-top:var(--iq-space-4)}
.iq-settings-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:var(--iq-space-4);min-height:64px;padding:var(--iq-space-3) var(--iq-space-5);color:inherit;text-decoration:none}
.iq-settings-panel>*+*{border-top:1px solid var(--iq-line)}
.iq-settings-row:not(:has(>.iq-settings-row-media)){grid-template-columns:minmax(0,1fr) auto auto}
.iq-settings-row-media{display:grid;place-items:center;min-width:32px}
.iq-settings-row-media .iq-avatar{margin:0;border:0}
.iq-settings-row-tile{display:grid;place-items:center;width:36px;height:36px;border-radius:var(--iq-radius-sm);background:var(--iq-surface);color:var(--iq-ink)}
.iq-settings-row-copy{display:grid;gap:2px;min-width:0}
.iq-settings-row-title{display:flex;align-items:center;gap:var(--iq-space-2);flex-wrap:wrap;font:500 var(--iq-type-interface-size)/1.45 var(--iq-font);overflow-wrap:anywhere}
.iq-settings-row-meta{display:flex;flex-wrap:wrap;gap:0 var(--iq-space-3);font-size:var(--iq-type-caption-size);line-height:1.5;color:var(--iq-muted)}
.iq-settings-row-aside{display:flex;align-items:center;gap:var(--iq-space-2);justify-content:flex-end;flex-wrap:wrap;font-size:var(--iq-type-label-size);color:var(--iq-muted)}
.iq-settings-row-aside iq-select{width:192px}
.iq-settings-row-actions{display:flex;align-items:center;gap:var(--iq-space-1);justify-content:flex-end}
.iq-settings-row-actions:empty,.iq-settings-row-aside:empty{display:none}
.iq-settings-row-spacer{display:inline-block;width:36px;height:1px}
.iq-settings-row[data-state=muted] .iq-settings-row-title{color:var(--iq-muted)}
.iq-settings-row[aria-busy=true]{opacity:.6;pointer-events:none}
a.iq-settings-row,button.iq-settings-row{width:100%;border:0;border-radius:0;background:none;font:inherit;text-align:left;cursor:pointer}
.iq-settings-row-chevron{color:var(--iq-muted);transition:transform var(--iq-motion-fast) var(--iq-ease)}
@media(hover:hover){a.iq-settings-row:hover,button.iq-settings-row:hover{background:var(--iq-hover)}a.iq-settings-row:hover .iq-settings-row-chevron,button.iq-settings-row:hover .iq-settings-row-chevron{transform:translateX(2px);color:var(--iq-ink)}}
a.iq-settings-row:focus-visible,button.iq-settings-row:focus-visible{outline:2px solid var(--iq-focus);outline-offset:-2px}
.iq-settings-panel-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--iq-space-3);padding:var(--iq-space-3) var(--iq-space-5);font-size:var(--iq-type-caption-size);color:var(--iq-muted);background:var(--iq-surface)}

/* Field rows: the label and help on the left, the control on the right, so a field never stretches across the page. */
.iq-settings-field-row{display:grid;grid-template-columns:minmax(180px,280px) minmax(0,var(--iq-settings-field-max,480px));align-items:start;gap:var(--iq-space-2) var(--iq-space-8);padding:var(--iq-space-5)}
.iq-settings-field-label{display:grid;gap:2px;padding-top:10px;font:500 var(--iq-type-interface-size)/1.45 var(--iq-font)}
.iq-settings-field-label small{font-weight:400;font-size:var(--iq-type-caption-size);line-height:1.5;color:var(--iq-muted)}
.iq-settings-field-row .iq-field{margin:0}
.iq-settings-field-row .iq-field>.iq-control-label,.iq-settings-field-row iq-combobox>.iq-control-label,.iq-settings-field-row iq-select>.iq-control-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.iq-settings-fields{border:0;padding:0;margin:0;min-width:0}

/* Facts: read-only values. People who cannot change a setting see facts, never a disabled form. */
.iq-settings-facts{display:block;margin:0}
.iq-settings-facts>div{display:grid;grid-template-columns:minmax(160px,280px) minmax(0,1fr);align-items:center;gap:var(--iq-space-2) var(--iq-space-8);min-height:56px;padding:var(--iq-space-3) var(--iq-space-5)}
.iq-settings-facts>div+div{border-top:1px solid var(--iq-line)}
.iq-settings-facts dt{font:500 var(--iq-type-interface-size)/1.45 var(--iq-font)}
.iq-settings-facts dt small{display:block;font-weight:400;font-size:var(--iq-type-caption-size);color:var(--iq-muted)}
.iq-settings-facts dd{display:flex;align-items:center;gap:var(--iq-space-2);flex-wrap:wrap;margin:0;font-size:var(--iq-type-interface-size);line-height:1.5;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.iq-settings-facts dd code,.iq-settings-code{font:500 var(--iq-type-label-size)/1.4 var(--iq-mono);padding:2px 6px;border-radius:var(--iq-radius-xs);background:var(--iq-surface)}
.iq-settings-facts dd .iq-btn.icon{--h:28px;min-width:28px;padding:4px}
.iq-settings-facts dd small{font-size:var(--iq-type-caption-size);color:var(--iq-muted)}

/* Lock notice under the heading for read-only visitors. */
.iq-settings-lock{display:flex;align-items:flex-start;gap:var(--iq-space-3);margin:0 0 var(--iq-space-8);padding:var(--iq-space-3) var(--iq-space-4);border-radius:var(--iq-radius-md);background:var(--iq-surface);font-size:var(--iq-type-label-size);line-height:1.55;color:var(--iq-ink)}
.iq-settings-lock>.iq-icon{flex:none;margin-top:1px;color:var(--iq-muted)}

/* Save bar: hidden while the form matches what is saved, sticky at the bottom of the column once something changes. */
.iq-settings-savebar{position:sticky;bottom:var(--iq-space-4);z-index:3;display:flex;align-items:center;justify-content:space-between;gap:var(--iq-space-4);margin-top:var(--iq-space-6);padding:var(--iq-space-3) var(--iq-space-3) var(--iq-space-3) var(--iq-space-5);border:1px solid var(--iq-line);border-radius:var(--iq-radius-md);background:var(--iq-raised);box-shadow:var(--iq-shadow-2)}
.iq-settings-savebar[hidden]{display:none}
.iq-settings-savebar-status{font-size:var(--iq-type-label-size);color:var(--iq-ink)}
.iq-settings-savebar-actions{display:flex;gap:var(--iq-space-2)}
@media(prefers-reduced-motion:no-preference){.iq-settings-savebar:not([hidden]){animation:iq-reveal var(--iq-motion-standard) var(--iq-ease) both}}

/* Compact empty state inside a panel: left-aligned, a small tile instead of an illustration. */
.iq-empty.compact{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:var(--iq-space-1) var(--iq-space-4);padding:var(--iq-space-6) var(--iq-space-5);text-align:left}
.iq-empty.compact>.iq-settings-row-tile{grid-row:span 3;width:40px;height:40px;color:var(--iq-muted)}
.iq-empty.compact h3{margin:0;font:500 var(--iq-type-interface-size)/1.45 var(--iq-font)}
.iq-empty.compact p{margin:0;max-width:56ch;font-size:var(--iq-type-label-size);line-height:1.55;color:var(--iq-muted)}
.iq-empty.compact>.iq-btn{justify-self:start;margin-top:var(--iq-space-3)}
.iq-empty.compact.success>.iq-settings-row-tile{background:var(--iq-success-bg);color:var(--iq-success)}
.iq-empty.compact.warning>.iq-settings-row-tile{background:var(--iq-warning-bg);color:var(--iq-warning)}

/* One-time secret: a read-only value with a copy button and a warning that it is shown once. */
.iq-secret{display:grid;gap:var(--iq-space-3)}
.iq-secret-value{display:flex;gap:var(--iq-space-2);align-items:center}
.iq-secret-value .iq-input-shell{flex:1;min-width:0}
.iq-secret-value input{font:500 var(--iq-type-label-size)/1.4 var(--iq-mono)}
.iq-secret-note{display:flex;gap:var(--iq-space-2);align-items:flex-start;margin:0;font-size:var(--iq-type-label-size);line-height:1.55;color:var(--iq-muted)}
.iq-secret-note>.iq-icon{flex:none;margin-top:1px;color:var(--iq-warning)}

/* Choice list with descriptions (roles, formats). */
.iq-choice-list{display:grid;gap:var(--iq-space-2);border:0;margin:0;padding:0;min-width:0}
.iq-choice-list legend{margin-bottom:var(--iq-space-2);padding:0;font:500 var(--iq-type-label-size)/1.4 var(--iq-font)}
.iq-choice-list label{display:grid;grid-template-columns:auto minmax(0,1fr);gap:2px var(--iq-space-3);align-items:start;padding:var(--iq-space-3) var(--iq-space-4);border:1px solid var(--iq-line);border-radius:var(--iq-radius-sm);cursor:pointer}
.iq-choice-list input{grid-row:span 2;margin:3px 0 0;width:16px;height:16px;accent-color:var(--iq-accent-fill)}
.iq-choice-list b{font:500 var(--iq-type-interface-size)/1.45 var(--iq-font)}
.iq-choice-list small{font-size:var(--iq-type-caption-size);line-height:1.5;color:var(--iq-muted)}
.iq-choice-list label:has(:checked){border-color:var(--iq-accent);box-shadow:inset 0 0 0 1px var(--iq-accent)}
.iq-choice-list label:has(:focus-visible){outline:2px solid var(--iq-focus);outline-offset:2px}
.iq-choice-grid{display:grid;grid-template-columns:auto repeat(2,minmax(0,1fr));gap:var(--iq-space-1) var(--iq-space-4);align-items:center;border:0;margin:0;padding:0}
.iq-choice-grid legend{grid-column:1/-1;margin-bottom:var(--iq-space-2);padding:0;font:500 var(--iq-type-label-size)/1.4 var(--iq-font)}
.iq-choice-grid>span{font-size:var(--iq-type-label-size);color:var(--iq-muted)}

/* Loading outline shaped like a settings panel. */
.iq-settings-skeleton{display:grid;gap:var(--iq-space-4)}
.iq-settings-skeleton i{display:block;height:18px;width:180px;border-radius:4px;background:var(--iq-recessed)}
.iq-settings-skeleton span{display:block;height:64px;border-radius:var(--iq-radius-md);background:var(--iq-surface)}

/* Visual choices (theme, density): three per row; the selected one gets an accent ring on the same surface. */
.iq-visual-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--iq-space-4)}
.iq-visual-choice{min-width:0;display:block;padding:var(--iq-space-3);border:1px solid var(--iq-line);border-radius:var(--iq-radius-md);cursor:pointer;background:var(--iq-raised)}
.iq-visual-choice:has(:checked){border-color:var(--iq-accent);box-shadow:inset 0 0 0 1px var(--iq-accent)}
.iq-visual-choice:has(:focus-visible){outline:2px solid var(--iq-focus);outline-offset:4px}
.iq-visual-choice:has(:disabled){opacity:.55;cursor:not-allowed}
.iq-choice-label{display:flex;gap:var(--iq-space-2);align-items:center;min-height:36px;font-weight:500;font-size:var(--iq-type-label-size)}
.iq-choice-label input{accent-color:var(--iq-accent-fill);width:16px;height:16px;flex-shrink:0;margin:0}
.iq-visual-choice small{display:block;margin-left:var(--iq-space-6);color:var(--iq-muted);font-size:var(--iq-type-caption-size)}
.iq-choice-preview{display:grid;grid-template-columns:24% 1fr;height:116px;border:1px solid var(--iq-line);border-radius:var(--iq-radius-sm);overflow:hidden;margin-bottom:var(--iq-space-3);background:var(--iq-choice-light-canvas)}
.iq-choice-preview-nav{background:var(--iq-choice-light-panel);border-right:1px solid var(--iq-choice-light-line)}
.iq-choice-preview-body{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:12px}
.iq-choice-preview-body i{grid-column:1/-1;width:64%;height:8px;border-radius:3px;background:var(--iq-choice-light-line)}
.iq-choice-preview-body b{background:var(--iq-choice-light-panel);border-radius:4px}.iq-choice-preview-body b:last-child{grid-column:1/-1}
.iq-choice-preview[data-preview=dark]{background:var(--iq-choice-dark-canvas)}
.iq-choice-preview[data-preview=dark] .iq-choice-preview-nav,.iq-choice-preview[data-preview=dark] b{background:var(--iq-choice-dark-panel)}
.iq-choice-preview[data-preview=dark] i{background:var(--iq-choice-dark-line)}
.iq-choice-preview[data-preview=system]{background:linear-gradient(90deg,var(--iq-choice-light-canvas) 50%,var(--iq-choice-dark-canvas) 50%)}
.iq-choice-preview[data-preview=system] .iq-choice-preview-body{background:linear-gradient(90deg,transparent 34%,var(--iq-choice-dark-panel) 34%);margin:12px;padding:8px;border-radius:4px}
.iq-choice-preview[data-preview=compact] .iq-choice-preview-body{grid-template-columns:1fr;grid-template-rows:8px repeat(3,12px);align-content:start;gap:5px}
.iq-choice-preview[data-preview=comfortable] .iq-choice-preview-body{grid-template-columns:1fr;grid-template-rows:8px repeat(3,18px);gap:7px}

/* Accent colour choice. */
.iq-accent-options{display:flex;gap:var(--iq-space-3);flex-wrap:wrap;border:0;padding:0;margin:0}
.iq-accent-option{display:flex;align-items:center;gap:var(--iq-space-2);padding:var(--iq-space-3) var(--iq-space-4);border:1px solid var(--iq-line);border-radius:var(--iq-radius-sm);background:var(--iq-raised);font-size:var(--iq-type-label-size);cursor:pointer;min-height:44px}
.iq-accent-option input{accent-color:var(--iq-accent-fill);margin:0}
.iq-accent-option:has(:checked){border-color:var(--iq-accent);box-shadow:inset 0 0 0 1px var(--iq-accent)}
.iq-accent-option:has(:focus-visible){outline:2px solid var(--iq-focus);outline-offset:2px}
.iq-accent-dot{width:16px;height:16px;border-radius:50%;background:var(--iq-preference-blue)}
.iq-accent-dot[data-accent=violet]{background:var(--iq-preference-violet)}.iq-accent-dot[data-accent=green]{background:var(--iq-preference-green)}

/* Phones: the host switches the layout between the section index and one section; the heading gets a back link. */
@media(max-width:760px){
 .iq-page-heading-back{display:inline-flex;margin:0 0 var(--iq-space-1) calc(-1 * var(--iq-space-3))}
 .iq-page-heading-copy{flex-basis:100%}
 .iq-page-heading h1{font-size:var(--iq-type-heading3-size);min-height:40px}
 .iq-page-heading-tools{min-height:0;margin-left:0}
 .iq-settings-row{grid-template-columns:auto minmax(0,1fr) auto;gap:var(--iq-space-2) var(--iq-space-3);padding:var(--iq-space-3) var(--iq-space-4)}
 .iq-settings-row:not(:has(>.iq-settings-row-media)){grid-template-columns:minmax(0,1fr) auto}
 .iq-settings-row-aside{grid-column:2/-1;grid-row:2;justify-content:flex-start}
 .iq-settings-row:not(:has(>.iq-settings-row-media)) .iq-settings-row-aside{grid-column:1/-1}
 .iq-settings-field-row,.iq-settings-facts>div{grid-template-columns:minmax(0,1fr);padding:var(--iq-space-4)}
 .iq-settings-field-label{padding-top:0}
 .iq-settings-savebar{bottom:max(var(--iq-space-3),env(safe-area-inset-bottom))}
 .iq-settings-group-head{align-items:flex-start;flex-direction:column}
 .iq-visual-choices{grid-template-columns:minmax(0,1fr)}
 .iq-choice-preview{height:96px}
 .iq-choice-grid{grid-template-columns:minmax(0,1fr) repeat(2,auto)}
}

/* Density: "comfortable" is the approved default look (no overrides); "compact" tightens tables and cards. */
:root[data-density=compact] .iq-table td{padding-block:var(--iq-space-2)}
:root[data-density=compact] .task-card{padding:var(--iq-space-3)}
:root[data-density=compact] .iq-work-table{--iq-work-row-min:56px;--iq-preference-table-pad:var(--iq-space-2);--iq-preference-mobile-pad:var(--iq-space-2)}
@media(min-width:701px){:root[data-density=compact] .iq-work-list tr[data-work-row]>td{padding-block:var(--iq-space-1)}}
@media(max-width:700px){:root[data-density=compact] .iq-work-list tr[data-work-row]{padding-block:var(--iq-space-2)}}
:root[data-density=compact] .iq-settings-row{min-height:52px;padding-block:var(--iq-space-2)}

/* Wave 1 typography (TYP-09, TYP-14, TYP-16, TYP-18, TYP-19). Loaded after the component sheets and before focus.css.
   The type scale is rem at a 16px root (tokens/semantic.json), so the browser's font-size preference scales text;
   spacing, controls and radii stay in px. Sizes in the sheets are produced by scripts/codemods/type-scale.mjs. */
html{font-size:100%;-webkit-text-size-adjust:100%;text-size-adjust:100%}
/* Russian prose hyphenates instead of breaking a word anywhere (Chromium, Safari and Firefox ship the ru dictionary; template.html and the products set lang="ru"). */
:lang(ru) .md-document,:lang(ru) .md-preview,:lang(ru) .iq-card p,:lang(ru) .comment-body,:lang(ru) p.iq-message-text,:lang(ru) h1,:lang(ru) h2,:lang(ru) h3{hyphens:auto;-webkit-hyphens:auto;hyphenate-limit-chars:6 3 3}
/* Reading measure for documents: the body step, its line height and a 68-character line; the container decides the alignment. */
.md-document{font-size:var(--iq-type-body-size);line-height:var(--iq-type-body-lineHeight);max-width:68ch}
/* vnext.37: an editor's preview is its source rendered, so it keeps the source's size and line height (--iq-md-text-size and
   --iq-md-text-leading on .markdown-editor, which .md-input reads too) and its full width: switching between editing and
   viewing does not move the text. A compact viewer (iq-markdown-viewer density=compact) reads like a compact editor's preview. */
iq-markdown-viewer[density=compact]{--iq-md-text-size:var(--iq-type-interface-size);--iq-md-text-leading:1.75}
.markdown-editor .md-preview,iq-markdown-viewer[density=compact] .md-document{font-size:var(--iq-md-text-size);line-height:var(--iq-md-text-leading);max-width:none}
/* Utilities: the four existing roles restated from their tokens, and the roles that had no class: every --iq-type-* token now has a consumer. */
.type-body{font-size:var(--iq-type-body-size);font-weight:var(--iq-type-body-weight);line-height:var(--iq-type-body-lineHeight);letter-spacing:var(--iq-type-body-letterSpacing)}
.type-interface{font-size:var(--iq-type-interface-size);font-weight:var(--iq-type-interface-weight);line-height:var(--iq-type-interface-lineHeight);letter-spacing:var(--iq-type-interface-letterSpacing)}
.type-label{font-size:var(--iq-type-label-size);font-weight:var(--iq-type-label-weight);line-height:var(--iq-type-label-lineHeight);letter-spacing:var(--iq-type-label-letterSpacing)}
.type-caption{font-size:var(--iq-type-caption-size);font-weight:var(--iq-type-caption-weight);line-height:var(--iq-type-caption-lineHeight);letter-spacing:var(--iq-type-caption-letterSpacing)}
.type-heading1{font-size:var(--iq-type-heading1-size);font-weight:var(--iq-type-heading1-weight);line-height:var(--iq-type-heading1-lineHeight);letter-spacing:var(--iq-type-heading1-letterSpacing)}
.type-heading3{font-size:var(--iq-type-heading3-size);font-weight:var(--iq-type-heading3-weight);line-height:var(--iq-type-heading3-lineHeight);letter-spacing:var(--iq-type-heading3-letterSpacing)}
.type-lead{font-size:var(--iq-type-lead-size);font-weight:var(--iq-type-lead-weight);line-height:var(--iq-type-lead-lineHeight);letter-spacing:var(--iq-type-lead-letterSpacing)}
.type-title{font-size:var(--iq-type-title-size);font-weight:var(--iq-type-title-weight);line-height:var(--iq-type-title-lineHeight);letter-spacing:var(--iq-type-title-letterSpacing)}
/* Meta is the uppercase kicker role: sentence case in the source, uppercase and open tracking in CSS. */
.type-meta{font-size:var(--iq-type-meta-size);font-weight:var(--iq-type-meta-weight);line-height:var(--iq-type-meta-lineHeight);letter-spacing:var(--iq-type-meta-letterSpacing);text-transform:uppercase}

/* Public compositions: docs/workspace.md. */
.iq-workspace-page{max-width:1600px;margin-inline:auto;padding:var(--iq-space-8) var(--iq-space-6) var(--iq-space-8);color:var(--iq-ink)}
.iq-workspace-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--iq-space-5);margin-bottom:var(--iq-space-6)}
.iq-workspace-heading h1{margin:0;font:600 var(--iq-type-heading1-size)/1.2 var(--iq-font);letter-spacing:var(--iq-tracking-h2)}
.iq-workspace-heading p{margin:var(--iq-space-2) 0 0;max-width:65ch;color:var(--iq-muted);font-size:var(--iq-type-label-size);line-height:1.5}
.iq-workspace-eyebrow{display:block;margin-bottom:var(--iq-space-2);font-size:var(--iq-type-meta-size);font-weight:600;letter-spacing:var(--iq-tracking-caps);text-transform:uppercase;color:var(--iq-muted)}
.iq-workspace-tools{display:flex;align-items:center;gap:var(--iq-space-2);flex-wrap:wrap}
.iq-workspace{display:grid;grid-template-columns:var(--iq-workspace-nav-width,192px) minmax(0,1fr);gap:var(--iq-space-6);align-items:start}
.iq-workspace[data-navigation=hidden]{grid-template-columns:minmax(0,1fr)}
.iq-workspace[data-navigation=hidden]>.iq-workspace-nav{display:none}
.iq-workspace-nav{display:flex;flex-direction:column;align-items:stretch;gap:var(--iq-space-1);position:sticky;top:80px;min-width:0;padding-block:var(--iq-space-2)}
.iq-workspace-nav :is(a,button){display:flex;align-items:center;gap:var(--iq-space-2);min-height:42px;width:100%;padding:var(--iq-space-2) var(--iq-space-3);border:0;border-radius:var(--iq-radius-sm);background:transparent;color:var(--iq-muted);font:500 var(--iq-type-label-size)/1.4 var(--iq-font);text-decoration:none;text-align:start;cursor:pointer;overflow-wrap:anywhere}
.iq-workspace-nav :is(a,button):hover{background:var(--iq-hover);color:var(--iq-ink)}
.iq-workspace-nav :is(a,button)[aria-current]{background:var(--iq-accent-soft);color:var(--iq-accent);font-weight:600}
.iq-workspace-nav :is(a,button):focus-visible{outline:2px solid var(--iq-focus);outline-offset:2px}
.iq-workspace-nav-label{flex:1;min-width:0}
.iq-workspace-nav-count{font-size:var(--iq-type-caption-size);font-variant-numeric:tabular-nums}
.iq-workspace-nav-note{display:block;font-weight:400;font-size:var(--iq-type-meta-size);color:var(--iq-muted);margin-top:2px}
.iq-workspace-nav-group{margin:var(--iq-space-4) var(--iq-space-3) var(--iq-space-1);font-size:var(--iq-type-meta-size);color:var(--iq-muted);font-weight:500}
.iq-workspace-nav-separator{height:1px;background:var(--iq-line);margin:var(--iq-space-3)}
.iq-workspace-body{min-width:0}
.iq-workspace-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--iq-space-3);padding-bottom:var(--iq-space-4);margin-bottom:var(--iq-space-4);border-bottom:1px solid var(--iq-line)}
.iq-workspace-search{display:flex;align-items:center;gap:var(--iq-space-2);min-width:0;width:min(100%,360px);min-height:40px;padding-inline:var(--iq-space-3);border:1px solid var(--iq-field-line);border-radius:var(--iq-radius-sm);background:var(--iq-field-bg);color:var(--iq-muted)}
.iq-workspace-search:focus-within{outline:2px solid var(--iq-focus);outline-offset:2px}
.iq-workspace-search input{min-width:0;flex:1;width:100%;height:38px;border:0;background:none;font:inherit;font-size:var(--iq-type-label-size);color:var(--iq-ink);outline:0}
.iq-workspace-search input::placeholder{color:var(--iq-muted)}
.iq-workspace-split{display:grid;grid-template-columns:minmax(0,1fr) var(--iq-workspace-aside-width,300px);gap:var(--iq-space-6);align-items:start}
.iq-workspace-primary,.iq-workspace-aside{min-width:0}
.iq-workspace-primary>[hidden],.iq-workspace [hidden]{display:none}
.iq-workspace-aside{padding:var(--iq-space-4);border:1px solid var(--iq-line);border-radius:var(--iq-radius-md);background:var(--iq-surface)}
.iq-workspace-caption{margin:0;color:var(--iq-muted);font-size:var(--iq-type-caption-size);line-height:1.5}
.iq-workspace-empty{display:grid;justify-items:start;gap:var(--iq-space-2);padding:var(--iq-space-8);border:1px dashed var(--iq-line-strong);border-radius:var(--iq-radius-md);color:var(--iq-muted);font-size:var(--iq-type-label-size)}
.iq-workspace-empty h2{color:var(--iq-ink);font-size:var(--iq-type-heading3-size);margin:0}
.iq-workspace-empty p{margin:0;max-width:52ch}

.iq-plan-panel{--tree-columns:94px 110px 72px 66px 32px;--tree-column-gap:12px;border:1px solid var(--iq-line);border-radius:var(--iq-radius-md);background:var(--iq-canvas);overflow:clip;scroll-margin-top:80px}
.iq-plan-panel[data-active=true]{border-color:var(--iq-line-strong)}
.iq-plan-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:var(--iq-space-3);padding:var(--iq-space-5);background:var(--iq-surface)}
.iq-plan-title{display:flex;align-items:center;gap:var(--iq-space-2);min-width:0}
.iq-plan-title h2{margin:0;min-width:0;overflow-wrap:anywhere;font-size:var(--iq-type-heading3-size);line-height:1.4;font-weight:600;letter-spacing:var(--iq-tracking-h2)}
.iq-plan-meta{display:flex;align-items:center;gap:var(--iq-space-2);flex-wrap:wrap;margin-bottom:var(--iq-space-2);font-size:var(--iq-type-caption-size);color:var(--iq-muted)}
.iq-plan-state{display:inline-flex;align-items:center;gap:6px;font-weight:500;color:var(--iq-muted)}
.iq-plan-panel[data-active=true] .iq-plan-state{color:var(--iq-accent)}
.iq-plan-goal{margin:var(--iq-space-2) 0 0;font-size:var(--iq-type-label-size);line-height:1.5;color:var(--iq-muted);overflow-wrap:anywhere}
.iq-plan-actions{display:flex;justify-content:flex-end;align-items:center;gap:var(--iq-space-2);flex-wrap:wrap}
.iq-plan-summary{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--iq-space-3);padding:var(--iq-space-3) var(--iq-space-5);border-top:1px solid var(--iq-line);font-size:var(--iq-type-caption-size);color:var(--iq-muted)}
.iq-plan-progress{width:100px;height:4px;accent-color:var(--iq-accent);border:0;border-radius:var(--iq-radius-pill);overflow:hidden}
.iq-plan-progress::-webkit-progress-bar{background:var(--iq-line)}
.iq-plan-progress::-webkit-progress-value{background:var(--iq-accent)}
.iq-plan-columns{display:grid;grid-template-columns:minmax(0,1fr) var(--tree-columns);gap:var(--tree-column-gap);align-items:center;padding:var(--iq-space-2) var(--iq-space-3);border-block:1px solid var(--iq-line);color:var(--iq-muted);font-size:var(--iq-type-meta-size);background:var(--iq-surface)}
.iq-plan-columns>:first-child{padding-left:var(--iq-space-3)}
.iq-plan-columns .is-end{text-align:end}
.tree-columns[data-layout=workspace] .tree-row.has-columns{min-height:56px;padding:var(--iq-space-2) var(--iq-space-3);border-bottom-color:var(--iq-line);border-radius:0}
.tree-columns[data-layout=workspace] .tree-row-main{gap:var(--iq-space-2);padding-inline-start:calc(min(var(--tree-level,0),4)*18px)}
.tree-columns[data-layout=workspace] .tree-node-label{white-space:normal;overflow:visible;overflow-wrap:anywhere;line-height:1.45}
.tree-columns[data-layout=workspace] .tree-node-crumb{display:block;font-size:var(--iq-type-meta-size)}
.tree-columns[data-layout=workspace] .tree-node-icon{flex:none}
.tree-columns[data-layout=workspace] .tree-checkbox{padding:0;cursor:pointer;font:inherit}
.tree-columns[data-layout=workspace] .tree-checkbox:focus-visible{outline:2px solid var(--iq-focus);outline-offset:3px}
.tree-columns[data-layout=workspace] .tree-cell-button{min-height:32px;white-space:normal;border-bottom:1px dotted var(--iq-control)}
.iq-plan-key{display:block;color:var(--iq-muted);font:400 var(--iq-type-meta-size)/1.5 var(--iq-mono)}
.iq-plan-add{display:flex;align-items:center;gap:var(--iq-space-2);width:100%;min-height:44px;padding:var(--iq-space-3) var(--iq-space-5);border:0;background:transparent;font:500 var(--iq-type-label-size)/1.4 var(--iq-font);color:var(--iq-muted);cursor:pointer;text-align:start}
.iq-plan-add:hover{background:var(--iq-hover);color:var(--iq-ink)}
.iq-plan-collapse[aria-expanded=false] .iq-icon{rotate:-90deg}
.iq-plan-placeholder{color:var(--iq-muted)}
@media(max-width:1250px){.iq-workspace{--iq-workspace-nav-width:170px;gap:var(--iq-space-4)}.iq-workspace-split{grid-template-columns:minmax(0,1fr)}.iq-workspace-aside{margin-top:var(--iq-space-3)}.iq-plan-panel{--tree-columns:88px 90px 64px 62px 32px;--tree-column-gap:8px}}
@media(max-width:900px){.iq-workspace{grid-template-columns:minmax(0,1fr)}.iq-workspace-nav{position:static;display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--iq-space-1);padding:0 0 var(--iq-space-4);border-bottom:1px solid var(--iq-line)}.iq-workspace-nav :is(a,button){width:auto;flex:0 1 auto;min-height:40px}.iq-workspace-nav-group,.iq-workspace-nav-separator,.iq-workspace-nav-note{display:none}.iq-workspace-heading{align-items:flex-start;flex-wrap:wrap}.iq-workspace-page{padding:var(--iq-space-5) var(--iq-space-4)}}
@media(max-width:700px){.iq-workspace-heading h1{font-size:var(--iq-type-heading2-size)}.iq-workspace-heading{gap:var(--iq-space-4)}.iq-workspace-tools{width:100%}.iq-workspace-tools>.iq-segmented{flex:1}.iq-plan-header{grid-template-columns:minmax(0,1fr);padding:var(--iq-space-4)}.iq-plan-actions{justify-content:flex-start}.iq-plan-columns{display:none}.tree-columns[data-layout=workspace] .tree-row.has-columns{grid-template-columns:minmax(0,1fr) auto auto;gap:var(--iq-space-2)}.tree-columns[data-layout=workspace] .tree-row-main{grid-column:1 / -1}.tree-columns[data-layout=workspace] .tree-cell[data-label]::before{content:attr(data-label) ' ';font-size:var(--iq-type-meta-size);color:var(--iq-muted)}.tree-columns[data-layout=workspace] .tree-cell{white-space:normal}.tree-columns[data-layout=workspace] .tree-cell.is-end{text-align:start}.iq-plan-summary{padding-inline:var(--iq-space-4)}.iq-plan-progress{width:72px}}
@media(prefers-reduced-motion:reduce){.iq-workspace *{scroll-behavior:auto}}

.tree-columns[data-layout=workspace] .tree-cell{white-space:normal;overflow-wrap:anywhere;text-overflow:clip}


.iq-summary-panel{border:1px solid var(--iq-line);border-radius:var(--iq-radius-md);padding:var(--iq-space-6);background:var(--iq-canvas);min-width:0}
.iq-summary-panel header{display:flex;align-items:baseline;justify-content:space-between;gap:var(--iq-space-3);flex-wrap:wrap;margin-bottom:var(--iq-space-5)}
.iq-summary-panel h2{margin:0;font-size:var(--iq-type-heading3-size);line-height:1.4}
.iq-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--iq-space-5);margin:0}
.iq-metric-grid>div{min-width:0}.iq-metric-grid dt{font-size:var(--iq-type-caption-size);line-height:1.5;color:var(--iq-muted)}
.iq-metric-grid dd{margin:var(--iq-space-2) 0 0;font-size:var(--iq-type-heading3-size);font-weight:600;line-height:1.3;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.iq-metric-grid small{display:block;margin-top:var(--iq-space-2);font-size:var(--iq-type-caption-size);line-height:1.5;color:var(--iq-muted)}
.iq-comparison-table{width:100%;border-collapse:collapse;font-size:var(--iq-type-label-size)}
.iq-comparison-table th{font-size:var(--iq-type-caption-size);font-weight:500;color:var(--iq-muted);text-align:start;background:var(--iq-surface)}
.iq-comparison-table :is(th,td){padding:var(--iq-space-4);border-bottom:1px solid var(--iq-line);vertical-align:top}
.iq-comparison-table [data-numeric]{text-align:end;font-variant-numeric:tabular-nums;white-space:nowrap}
.iq-comparison-table caption{text-align:start;font-size:var(--iq-type-heading3-size);font-weight:600;padding:var(--iq-space-5) var(--iq-space-4)}
.iq-feature-list{list-style:none;padding:0;margin:0;display:grid;gap:var(--iq-space-5)}
.iq-feature-list li{display:grid;grid-template-columns:32px minmax(0,1fr);gap:var(--iq-space-3);align-items:start}
.iq-feature-list strong{display:block;font-size:var(--iq-type-label-size);font-weight:600;line-height:1.5}
.iq-feature-list small{display:block;margin-top:var(--iq-space-1);font-size:var(--iq-type-label-size);line-height:1.5;color:var(--iq-muted)}
@media(max-width:900px){.iq-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:var(--iq-space-5)}}
@media(max-width:700px){.iq-summary-panel{padding:var(--iq-space-4)}.iq-comparison-table,.iq-comparison-table tbody{display:block}.iq-comparison-table caption{display:block}.iq-comparison-table thead{display:none}.iq-comparison-table tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:var(--iq-space-4);gap:var(--iq-space-3);border-bottom:1px solid var(--iq-line)}.iq-comparison-table td{padding:0;border:0;min-width:0}.iq-comparison-table td:first-child{grid-column:1 / -1}.iq-comparison-table [data-numeric]{text-align:start;white-space:normal;overflow-wrap:anywhere}.iq-comparison-table td[data-label]::before{content:attr(data-label);display:block;color:var(--iq-muted);font-size:var(--iq-type-caption-size);margin-bottom:var(--iq-space-1)}}

/* Optional page canvas and compact task signals: docs/page-canvas.md. */
.iq-workspace-page.iq-page-fluid,.iq-agent-directory.iq-page-fluid{max-width:none}
.iq-task-signals{display:flex;align-items:center;gap:12px;min-width:0}
.iq-task-signals>iq-tooltip{display:inline-flex}
.iq-task-signals>.task-signal-copy,.iq-task-blocker{height:22px}
.iq-task-blocker{display:inline-flex;align-items:center;gap:4px;box-sizing:border-box;padding:0 6px;border:1px solid var(--iq-line);border-radius:var(--iq-radius-xs);color:var(--iq-ink);font:500 var(--iq-type-meta-size)/18px var(--iq-font);white-space:nowrap}

.iq-task-blocker>.iq-icon{color:var(--iq-danger)}

/* Action feedback (0.6.0-vnext.35, feedback.js). Time decides what shows: nothing for the first 150 ms of an action, then a
   spinner in the button at the same width; a line under the top bar after 1 s; a quiet notice after 8 s or offline. */
.iq-btn[data-pending]{cursor:progress}
.iq-btn[aria-busy=true]{position:relative}
.iq-btn-pending-content{display:contents}
.iq-btn[data-pending=icon] .iq-btn-pending-content>.iq-icon:first-child{display:none}
.iq-btn[data-pending=overlay]>.iq-btn-pending-content{visibility:hidden}
.iq-btn[data-pending=overlay]>.iq-btn-spinner{position:absolute;inset:0;margin:auto}
.iq-btn[data-pending=label]>.iq-btn-pending-content{display:none}
.iq-btn-spinner{flex:none;animation:iq-spin var(--iq-motion-scene) linear infinite,iq-loading-appear var(--iq-motion-fast) var(--iq-ease)}
.iq-btn.sm>.iq-btn-spinner{width:14px;height:14px}
.iq-btn-pending-label{white-space:nowrap}
/* The line of long work: under its host (the top bar) or along the top of the window. */
.iq-activity-host{position:relative}
.iq-activity-line{position:absolute;left:0;right:0;bottom:-1px;height:2px;overflow:hidden;pointer-events:none;opacity:0;transition:opacity var(--iq-motion-standard) var(--iq-ease)}
body>.iq-activity-line{position:fixed;top:0;bottom:auto}
.iq-activity-line[data-active]{opacity:1}
.iq-activity-line>span{position:absolute;top:0;bottom:0;left:0;width:32%;border-radius:var(--iq-radius-pill);background:var(--iq-accent);animation:iq-activity-slide calc(2 * var(--iq-motion-scene)) var(--iq-ease) infinite;animation-play-state:paused}
.iq-activity-line[data-active]>span{animation-play-state:running}
@keyframes iq-activity-slide{from{transform:translateX(-100%)}to{transform:translateX(320%)}}
@media (prefers-reduced-motion: reduce){.iq-activity-line>span{animation:none;width:100%;opacity:.6}}
:root[data-motion=reduced] .iq-activity-line>span{animation:none;width:100%;opacity:.6}
/* Connection notices sit first in the toast stack and leave on their own. */
.iq-connection-notice.tone-info .iq-toast-icon{background:var(--iq-recessed);color:var(--iq-muted)}
/* What went wrong, next to the action: floating under the button, or written into a line of the form. */
.iq-action-error{display:flex;align-items:center;gap:var(--iq-space-2);color:var(--iq-danger);font-size:var(--iq-type-caption-size);line-height:1.5}
.iq-action-error>.iq-icon{flex:none}
.iq-action-error p{flex:1;min-width:0;margin:0;color:var(--iq-ink)}
.iq-action-error b{font-weight:500;color:var(--iq-danger)}
.iq-action-error>.iq-btn.sm:not(.icon){--h:28px;padding:4px 8px;color:var(--iq-accent)}
.iq-action-error>.iq-btn.icon.sm{--h:28px;color:var(--iq-muted)}
.iq-action-error[data-placement=float]{position:fixed;inset:auto;margin:0;width:max-content;max-width:min(380px,calc(100vw - 16px));padding:var(--iq-space-1) var(--iq-space-1) var(--iq-space-1) var(--iq-space-3);border:1px solid var(--iq-line);border-radius:var(--iq-radius-sm);background:var(--iq-raised);box-shadow:var(--iq-shadow-2);overflow:visible;animation:iq-loading-appear var(--iq-motion-standard) var(--iq-ease)}
.iq-action-error[data-placement=inline]{padding:var(--iq-space-1) 0}
/* Autosave line of an inline field. */
.iq-save-state{display:inline-flex;align-items:center;gap:6px;min-height:24px;font-size:var(--iq-type-caption-size);color:var(--iq-muted)}
.iq-save-state .iq-spinner{width:12px;height:12px}
.iq-save-state[data-state=saved]>.iq-icon{color:var(--iq-success)}
.iq-save-state[data-state=error]{color:var(--iq-danger)}
.iq-save-retry{padding:0;border:0;background:none;color:var(--iq-accent);font:inherit;text-decoration:underline;text-underline-offset:2px;cursor:pointer}
/* Upload progress of one file. */
.iq-upload-progress{display:grid;gap:4px;min-width:0}
.iq-upload-progress .iq-progress{height:3px}
.iq-upload-progress small{font-size:var(--iq-type-meta-size);color:var(--iq-muted);font-variant-numeric:tabular-nums}
.iq-upload-progress[data-state=error] small{color:var(--iq-danger)}

/* Switcher (0.6.0-vnext.36, ui.switcher). The current choice as a quiet text label with a small chevron, no border: the
   workspace and project in the top bar and a page title that chooses what its page shows. The trigger keeps the
   .iq-switcher look (underline on hover and while open); the menu is the DS menu with the current choice checked. */
.iq-switcher-menu{display:inline-flex;min-width:0;max-width:100%}
/* Title size: the font of the heading it sits in (a 24px/600 page title stays 24px/600). The ghost padding is shifted
   into the gutter so the title's first letter keeps its place; a relative offset, because a negative margin would
   make the button's max-width:100% cut the name by that much. */
.iq-switcher.iq-btn[data-size=title]{--iq-switcher-max:min(560px,60vw);position:relative;inset-inline-start:calc(-1 * var(--iq-space-2));height:auto;min-height:0;min-width:0;padding:0 var(--iq-space-2);gap:var(--iq-space-1);font:inherit;letter-spacing:inherit;line-height:inherit;color:inherit}
.iq-switcher[data-size=title] .iq-switcher-label{padding-block:0 2px;text-underline-offset:6px}
/* The menu: rows keep one mark column, so a choice without a glyph lines up with the checked one. */
.iq-switcher-popup>button>.iq-switcher-mark{flex:0 0 18px;width:18px;height:18px}
.iq-switcher-popup>button>.iq-switcher-meta{flex:none;margin-inline-start:var(--iq-space-4);color:var(--iq-muted);font-size:var(--iq-type-meta-size);font-weight:var(--iq-type-interface-weight)}
/* The check is the current choice's only mark, as in the top bar: no filled row, no bolder label. */
.iq-switcher-popup>button[aria-checked=true]{font-weight:450}
.iq-switcher-popup>button[aria-checked=true]:not(:hover){background:transparent}
.iq-switcher-popup>.iq-switcher-separator{height:1px;margin:var(--iq-space-1) 6px;border:0;background:var(--iq-line)}

/* Public API: docs/control-contracts.md. */
.iq-avatar{--iq-avatar-size:var(--iq-avatar-size-base);box-sizing:border-box;display:inline-block;vertical-align:middle;align-content:center;text-align:center;width:var(--iq-avatar-size);height:var(--iq-avatar-size);min-width:var(--iq-avatar-size);min-height:var(--iq-avatar-size);flex:0 0 var(--iq-avatar-size);padding:0;border-radius:50%;font-family:var(--iq-font);font-size:calc(var(--iq-avatar-size) * var(--iq-avatar-initials));font-weight:var(--iq-avatar-initials-weight);font-style:normal;letter-spacing:var(--iq-tracking-body);line-height:1;white-space:nowrap;text-box:trim-both cap alphabetic}
.iq-avatar.xs{--iq-avatar-size:var(--iq-avatar-size-xs)}
.iq-avatar.sm{--iq-avatar-size:var(--iq-avatar-size-sm)}
.iq-avatar.md{--iq-avatar-size:var(--iq-avatar-size-md)}
.iq-avatar.lg{--iq-avatar-size:var(--iq-avatar-size-lg)}
.iq-avatar.xl{--iq-avatar-size:var(--iq-avatar-size-xl)}
/* The service account's bot glyph is centred as a box, at the same share of the square at every size (11px at 20). */
.iq-avatar.bot{display:inline-grid;place-items:center}
.iq-avatar.bot>.iq-icon{width:calc(var(--iq-avatar-size) * .55);height:calc(var(--iq-avatar-size) * .55)}
/* Groups: every disc takes the group's step (28px by default); the separator ring is drawn outside the disc, so a disc in
   a group has the same diameter and the same initials as a single avatar of that step. Discs overlap by a quarter. */
.iq-avatars{--avatar-size:var(--iq-avatar-size-md)}
.iq-avatars.xs{--avatar-size:var(--iq-avatar-size-xs)}
.iq-avatars.sm{--avatar-size:var(--iq-avatar-size-sm)}
.iq-avatars.md{--avatar-size:var(--iq-avatar-size-md)}
.iq-avatars.lg{--avatar-size:var(--iq-avatar-size-lg)}
.iq-avatars .iq-avatar,.iq-avatars .iq-avatar.more{--iq-avatar-size:var(--avatar-size);border:0;box-shadow:0 0 0 2px var(--iq-avatar-separator)}
.iq-avatars .iq-avatar+.iq-avatar{margin-left:calc(var(--avatar-size) * -.25)}
.iq-avatars .iq-avatar:first-child{margin-left:0}
@media(forced-colors:active){.iq-avatar{outline:1px solid CanvasText;outline-offset:-1px}.iq-avatars .iq-avatar{box-shadow:none}}

.iq-work-story{display:grid;gap:var(--iq-space-6);min-width:0;font:400 var(--iq-type-interface-size)/1.6 var(--iq-font);color:var(--iq-ink)}
.iq-work-story p{margin:0;white-space:pre-line;overflow-wrap:break-word}
.iq-work-story h2,.iq-work-story h3{margin:0;font:500 var(--iq-type-interface-size)/1.4 var(--iq-font)}
.iq-work-story-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--iq-space-3)}
.iq-work-story-head h2{font-size:var(--iq-type-title-size)}
.iq-work-story-copy{display:grid;gap:var(--iq-space-2);min-width:0;max-width:72ch}
.iq-work-tools{display:flex;align-items:center;flex-wrap:wrap;gap:var(--iq-space-2)}
.iq-work-byline{color:var(--iq-muted);font-size:var(--iq-type-caption-size);line-height:1.5}
.iq-work-entry{display:grid;gap:var(--iq-space-1);min-width:0}
.iq-work-history{display:grid;gap:var(--iq-space-5);min-width:0}
.iq-work-details>summary{cursor:pointer;padding:var(--iq-space-3) 0;font-weight:500}
.iq-work-details[open]>summary{margin-bottom:var(--iq-space-3)}
.iq-work-step{border-bottom:1px solid var(--iq-line);min-width:0}
.iq-work-step>summary{display:flex;align-items:baseline;justify-content:space-between;gap:var(--iq-space-4);padding:var(--iq-space-3) 0;cursor:pointer;list-style:none}
.iq-work-step>summary::-webkit-details-marker{display:none}
.iq-work-step>summary>span:first-child{overflow-wrap:break-word}
.iq-work-step>summary>span:first-child:before{content:'›';display:inline-block;margin-right:var(--iq-space-2);color:var(--iq-muted)}
.iq-work-step[open]>summary>span:first-child:before{transform:rotate(90deg)}
.iq-work-step-state{flex:none;color:var(--iq-muted);font-size:var(--iq-type-caption-size)}
.iq-work-step-state[data-state=doing]{color:var(--iq-info)}
.iq-work-step-state[data-state=blocked]{color:var(--iq-warning)}
.iq-work-step-body{display:grid;gap:var(--iq-space-3);padding:0 0 var(--iq-space-4)}
.iq-work-question{display:grid;gap:var(--iq-space-3);padding:var(--iq-space-4);border:1px solid var(--iq-line);border-radius:var(--iq-radius-md);min-width:0}
.iq-work-question[data-state=answered],.iq-work-question[data-state=resolved],.iq-thread-content>.iq-work-question{border:0;padding:0}
.iq-work-options{display:grid;gap:var(--iq-space-2);margin:0;padding:0;border:0;min-width:0}
.iq-work-option{display:flex;align-items:flex-start;gap:var(--iq-space-3);padding:var(--iq-space-2);border-radius:var(--iq-radius-sm);cursor:pointer;min-width:0}
.iq-work-option:has(input:checked){background:var(--iq-surface)}
.iq-work-option>input{margin-top:var(--iq-space-1);accent-color:var(--iq-accent);flex:none}
.iq-work-option>span{display:grid;gap:var(--iq-space-1);min-width:0;overflow-wrap:break-word}
.iq-work-option-title{display:flex;align-items:baseline;flex-wrap:wrap;gap:var(--iq-space-2);font-weight:500}
.iq-work-option-description,.iq-work-recommended{color:var(--iq-muted);font-size:var(--iq-type-caption-size);font-weight:400}
.iq-work-question .iq-field{margin:0}
.iq-work-step>summary:focus-visible,.iq-work-details>summary:focus-visible{outline:2px solid var(--iq-focus);outline-offset:2px;border-radius:var(--iq-radius-xs);text-decoration:none}
.iq-agent-directory{max-width:1120px;margin-inline:auto;padding:var(--iq-space-6);display:grid;gap:var(--iq-space-6)}
.iq-agent-directory-filters{display:flex;align-items:center;gap:var(--iq-space-3);flex-wrap:wrap}
.iq-agent-directory-filters>.iq-field{flex:1;min-width:180px;margin:0}
.iq-agent-directory-filters>iq-select{min-width:180px}
@media(max-width:600px){.iq-agent-directory{padding:var(--iq-space-4)}.iq-work-story-head{align-items:flex-start}.iq-work-step>summary{flex-wrap:wrap;gap:var(--iq-space-1)}}

/* Keyboard focus for every button-like control. Pointer and touch interaction stays neutral because
   :focus-visible only matches keyboard navigation; this rule is loaded last so no component can erase it. */
/* COL-22: a 4px halo in the canvas colour sits under the ring, so the ring keeps its contrast on accent, primary and hero surfaces. */
:is(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"]):focus-visible{outline:2px solid var(--iq-focus);outline-offset:2px;box-shadow:0 0 0 4px var(--iq-focus-halo)}
/* Transparent controls (ghost and icon buttons, tags, menu and list rows, segmented options) draw the ring inside
   their own bounds: it never overlaps a neighbour or gets clipped by a scrolling container. */
:is(.iq-btn.ghost,.iq-btn.icon,.iq-tag,.iq-segmented>button,.iq-command-list>button,.iq-menu-popup button,.iq-list-item):focus-visible{outline-offset:-2px;box-shadow:inset 0 0 0 4px var(--iq-focus-halo)}
/* Search and command fields live outside .iq-input-shell, so they draw the same inset ring as the field shell on focus. */
.iq-search-small:focus-within,.iq-command-input:focus-within{box-shadow:inset 0 0 0 1.5px var(--iq-focus)}
/* The search of an open list is already where focus is (caret, the list beside it): a soft ring, not a bright frame (vnext.27). */
.iq-select-search:focus-within{box-shadow:inset 0 0 0 1px var(--iq-line)}
@media (forced-colors:active){:is(button,.iq-btn,[role="button"],input[type="button"],input[type="submit"],input[type="reset"]):focus-visible{outline-color:Highlight}}

/* Touch: coarse pointers get 44px hit areas (platform guidance, WCAG 2.5.5). Mouse density is unchanged. */
@media (pointer:coarse){
  .iq-btn,.iq-work-navigation a{min-height:44px}
  .product-nav-link{min-height:44px}
  .iq-btn.icon{min-width:44px}
  .iq-select-trigger,iq-select[density=compact] .iq-select-trigger{min-height:44px}
  .iq-check{min-height:44px;min-width:44px;justify-content:center}
  button.iq-tag{min-height:32px}
}
