/*
 * FormeLyo Roadmap & Activity Center
 * Design System V1 — single source of truth for visual tokens.
 *
 * IMPORTANT:
 * New UI work should consume these tokens instead of adding fixed
 * typography, radius, spacing or palette values to component CSS.
 */

:root{
  --flrac-ds-accent:#315bea;
  --flrac-ds-accent-soft:#edf3ff;
  --flrac-ds-nav:#0b1b32;
  --flrac-ds-page:#f5f7fb;
  --flrac-ds-surface:#fff;
  --flrac-ds-text:#172554;
  --flrac-ds-muted:#667085;
  --flrac-ds-border:#dce3ed;
  --flrac-ds-font-scale:1;
  --flrac-ds-planning-scale:1.16;
  --flrac-ds-planning-weight:600;
  --flrac-ds-space-scale:1;
  --flrac-ds-control-height:40px;
  --flrac-ds-radius-sm:8px;
  --flrac-ds-radius-md:12px;
  --flrac-ds-radius-lg:16px;
  --flrac-ds-sidebar-width:248px;
  --flyo-avatar-xs:20px;
  --flyo-avatar-sm:28px;
  --flyo-avatar-md:36px;
  --flyo-avatar-lg:52px;
  --flyo-badge-radius:999px;
  --flyo-badge-font-size:9px;
  --flyo-brand-primary:#0b1b32;
  --flyo-brand-accent:#315bea;
  --flyo-brand-surface:#fff;
  --flyo-identity-gap:1;
  --flyo-badge-fill:12%;
  --flyo-avatar-ring:rgba(255,255,255,.78);
  --flyo-avatar-online:#16a36a;
  --flyo-avatar-busy:#f59e0b;
  --flyo-avatar-offline:#e5484d;
  --flyo-avatar-unknown:#98a2b3;
  --flyo-user-color-1:#315bea;
  --flyo-user-color-2:#0f766e;
  --flyo-user-color-3:#6657d9;
  --flyo-user-color-4:#a86618;
  --flyo-user-color-5:#b83d59;
  --flyo-user-color-6:#2476a6;
  --flyo-user-color-7:#5b7c2a;
  --flyo-user-color-8:#7458bd;
}

/* Foundation */
.flrac-app{
  --flrac-accent:var(--flrac-ds-accent);
  --flrac-text:var(--flrac-ds-text);
  --flrac-border:var(--flrac-ds-border);
  grid-template-columns:var(--flrac-ds-sidebar-width) minmax(0,1fr)!important;
  background:var(--flrac-ds-page)!important;
  color:var(--flrac-ds-text)!important;
  font-size:calc(16px * var(--flrac-ds-font-scale));
}
.flrac-app-sidebar{background:var(--flrac-ds-nav)!important}
.flrac-app-main{background:var(--flrac-ds-page)!important}
.flrac-app-card,
.flrac-ui-kpi-card,
.flrac-today-premium,
.flrac-team-planning-shell,
.flrac-management-card,
.flrac-template-card{
  border-color:var(--flrac-ds-border)!important;
  border-radius:var(--flrac-ds-radius-lg)!important;
  background:var(--flrac-ds-surface)!important;
}
.flrac-app button,
.flrac-app input,
.flrac-app select,
.flrac-app textarea{
  border-radius:var(--flrac-ds-radius-sm)!important;
}
.flrac-btn-primary,
.flrac-app-create,
.flrac-front-primary{
  background:var(--flrac-ds-accent)!important;
}
.flrac-app-nav button.is-active,
.flrac-app-nav button[aria-current="page"]{
  background:color-mix(in srgb,var(--flrac-ds-accent) 58%,transparent)!important;
}

/* Controls / density */
.flrac-planning-toolbar input,
.flrac-planning-toolbar select,
.flrac-list-tools-premium input,
.flrac-list-tools-premium select,
.flrac-planning-view-segment,
.flrac-management-filterbar input,
.flrac-management-filterbar select{
  height:var(--flrac-ds-control-height)!important;
  border-radius:var(--flrac-ds-radius-sm)!important;
}
.flrac-app-card,
.flrac-today-premium,
.flrac-ui-kpi-card{
  padding:calc(16px * var(--flrac-ds-space-scale));
}

/* Planning typography — driven only by Design System tokens. */
.flrac-planning-grid-premium .flrac-planning-day-head{
  font-size:calc(15.5px * var(--flrac-ds-planning-scale))!important;
  font-weight:var(--flrac-ds-planning-weight)!important;
  line-height:1.15!important;
}
.flrac-planning-grid-premium .flrac-planning-person strong{
  font-size:calc(11.2px * var(--flrac-ds-planning-scale))!important;
  line-height:1.25!important;
}
.flrac-planning-grid-premium .flrac-planning-person small{
  font-size:calc(8.8px * var(--flrac-ds-planning-scale))!important;
  line-height:1.3!important;
}
.flrac-planning-card{
  border-radius:var(--flrac-ds-radius-sm)!important;
  padding:calc(7px * var(--flrac-ds-space-scale))!important;
}
.flrac-planning-priority{
  font-size:calc(8.4px * var(--flrac-ds-planning-scale))!important;
  line-height:1.15!important;
}
.flrac-planning-time{
  font-size:calc(8.6px * var(--flrac-ds-planning-scale))!important;
  line-height:1.2!important;
}
.flrac-planning-card>strong,
.flrac-planning-card-main>strong{
  font-size:calc(11.6px * var(--flrac-ds-planning-scale))!important;
  line-height:1.22!important;
  font-weight:var(--flrac-ds-planning-weight)!important;
}
.flrac-planning-card-meta span{
  font-size:calc(8.8px * var(--flrac-ds-planning-scale))!important;
  line-height:1.25!important;
}
.flrac-planning-card-footer .flrac-app-status,
.flrac-planning-session-chip{
  font-size:calc(8px * var(--flrac-ds-planning-scale))!important;
  line-height:1.15!important;
}
.flrac-planning-card-actions>button,
.flrac-planning-card-actions summary{
  font-size:calc(8.8px * var(--flrac-ds-planning-scale))!important;
  min-height:calc(27px * var(--flrac-ds-planning-scale))!important;
}
.flrac-planning-cell-empty small,
.flrac-planning-cell-add-empty small,
.flrac-planning-cell-add-compact span{
  font-size:calc(8.4px * var(--flrac-ds-planning-scale))!important;
}
.flrac-planning-toolbar-premium input,
.flrac-planning-toolbar-premium select,
.flrac-planning-view-segment button{
  font-size:calc(10.2px * var(--flrac-ds-font-scale))!important;
}

/* Day view can use the extra width. */
.flrac-planning-grid-premium.is-day-view .flrac-planning-card-main>strong{
  font-size:calc(12.6px * var(--flrac-ds-planning-scale))!important;
}
.flrac-planning-grid-premium.is-day-view .flrac-planning-time{
  font-size:calc(9.4px * var(--flrac-ds-planning-scale))!important;
}
.flrac-planning-grid-premium.is-day-view .flrac-planning-card-meta span{
  font-size:calc(9.2px * var(--flrac-ds-planning-scale))!important;
}

/* Appearance button */
.flrac-design-open{
  width:42px;height:42px;border:1px solid var(--flrac-ds-border)!important;
  background:var(--flrac-ds-surface)!important;color:#526078!important;
  display:grid!important;place-items:center!important;cursor:pointer;
}
.flrac-design-open svg{width:17px;height:17px}

/* Design modal */
.flrac-design-modal{position:fixed;inset:0;z-index:10080;display:grid;place-items:center;padding:20px}
.flrac-design-modal[hidden]{display:none!important}
.flrac-design-backdrop{position:absolute;inset:0;background:rgba(10,21,40,.50);backdrop-filter:blur(3px)}
.flrac-design-panel{
  position:relative;width:min(760px,calc(100vw - 32px));max-height:min(820px,calc(100dvh - 32px));
  display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;
  background:var(--flrac-ds-surface);border:1px solid var(--flrac-ds-border);
  border-radius:18px;box-shadow:0 28px 80px rgba(15,23,42,.22);color:var(--flrac-ds-text)
}
.flrac-design-header{display:grid;grid-template-columns:1fr 40px;gap:18px;padding:22px 24px 18px;border-bottom:1px solid var(--flrac-ds-border)}
.flrac-design-kicker{font-size:10px;font-weight:850;letter-spacing:.12em;color:#f06a32}
.flrac-design-header h2{margin:4px 0 0;font-size:23px;letter-spacing:-.025em}
.flrac-design-header p{margin:5px 0 0;color:var(--flrac-ds-muted);font-size:12px}
.flrac-design-close{width:36px;height:36px;border:0;background:#f3f6fa;font-size:22px;color:#5f6b7c;cursor:pointer}
.flrac-design-body{overflow:auto;padding:6px 24px 22px}
.flrac-design-section{padding:18px 0;border-bottom:1px solid #edf0f4}
.flrac-design-section:last-child{border-bottom:0}
.flrac-design-section-head{margin-bottom:12px}
.flrac-design-section-head strong{display:block;font-size:14px}
.flrac-design-section-head small{display:block;margin-top:2px;color:var(--flrac-ds-muted);font-size:10px}
.flrac-theme-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.flrac-theme-card{
  position:relative;display:grid;grid-template-columns:76px 1fr;gap:11px;align-items:center;
  min-height:84px;padding:10px;border:1px solid var(--flrac-ds-border);border-radius:12px;cursor:pointer;background:#fff
}
.flrac-theme-card:has(input:checked){border-color:var(--flrac-ds-accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--flrac-ds-accent) 13%,transparent)}
.flrac-theme-card>input{position:absolute;opacity:0;pointer-events:none}
.flrac-theme-card strong{display:block;font-size:12px}
.flrac-theme-card small{display:block;margin-top:3px;color:#78869a;font-size:9px;line-height:1.35}
.flrac-theme-preview{height:58px;border-radius:9px;overflow:hidden;background:var(--p-page);display:grid;grid-template-columns:20px 1fr;grid-template-rows:12px 1fr;gap:4px;padding:5px;border:1px solid var(--p-border)}
.flrac-theme-preview i{grid-row:1/3;background:var(--p-nav);border-radius:4px}
.flrac-theme-preview b{display:block;background:var(--p-accent);border-radius:4px}
.flrac-theme-preview em{display:block;background:#fff;border:1px solid var(--p-border);border-radius:4px}
.flrac-design-controls,.flrac-design-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.flrac-design-form-grid>label,.flrac-range-control{display:grid;gap:7px;color:#48566b;font-size:10px;font-weight:750}
.flrac-design-form-grid select,.flrac-design-form-grid input[type=color]{
  width:100%;height:40px;border:1px solid var(--flrac-ds-border);background:#fff;padding:0 10px
}
.flrac-design-form-grid input[type=color]{padding:5px}
.flrac-range-control>span{display:flex;justify-content:space-between;align-items:center;gap:10px}
.flrac-range-control output{font-size:10px;color:var(--flrac-ds-accent);font-weight:800}
.flrac-range-control input[type=range]{width:100%;accent-color:var(--flrac-ds-accent)}
.flrac-design-scope{display:flex;gap:10px;flex-wrap:wrap}
.flrac-design-scope label{display:flex;align-items:center;gap:7px;padding:9px 12px;border:1px solid var(--flrac-ds-border);border-radius:9px;font-size:10px;font-weight:700}
.flrac-design-feedback{min-height:18px;margin:12px 0 0;color:#536075;font-size:10px}
.flrac-design-footer{display:flex;justify-content:space-between;gap:12px;padding:14px 24px;border-top:1px solid var(--flrac-ds-border);background:#fbfcfe}
.flrac-design-footer>div{display:flex;gap:8px}
.flrac-design-footer button{min-height:38px;padding:0 14px;border:1px solid var(--flrac-ds-border);background:#fff;font-weight:750;cursor:pointer}
.flrac-design-save{background:var(--flrac-ds-accent)!important;color:#fff!important;border-color:var(--flrac-ds-accent)!important}
.flrac-design-reset{color:#b42318!important}

@media(max-width:700px){
  .flrac-design-modal{padding:0;align-items:end}
  .flrac-design-panel{width:100%;max-height:92dvh;border-radius:18px 18px 0 0}
  .flrac-design-header{padding:18px 16px 14px}
  .flrac-design-body{padding:4px 16px 18px}
  .flrac-design-footer{padding:12px 16px}
  .flrac-theme-grid,.flrac-design-controls,.flrac-design-form-grid{grid-template-columns:1fr}
  .flrac-theme-card{grid-template-columns:66px 1fr}
}


/* E.2 — Planning typography governance */
.flrac-planning-grid-premium .flrac-planning-person strong,
.flrac-planning-priority,
.flrac-planning-card-footer .flrac-app-status,
.flrac-planning-session-chip{
  font-weight:var(--flrac-ds-planning-weight)!important;
}
.flrac-planning-time,
.flrac-planning-card-meta span,
.flrac-planning-card-actions>button,
.flrac-planning-card-actions summary{
  font-weight:500!important;
}
.flrac-design-select-control{display:grid;gap:7px;color:#48566b;font-size:10px;font-weight:750}
.flrac-design-select-control>span{display:grid;gap:2px}
.flrac-design-select-control small{font-size:9px;color:var(--flrac-ds-muted);font-weight:500}
.flrac-design-select-control select{width:100%;height:40px;border:1px solid var(--flrac-ds-border);background:#fff;padding:0 10px}


/* RC1.4.0-F.5.1 — Identity primitives ---------------------------------- */
.flrac-avatar{--flyo-avatar-size:var(--flyo-avatar-sm);position:relative;isolation:isolate;width:var(--flyo-avatar-size);height:var(--flyo-avatar-size);border-radius:50%;display:inline-grid;place-items:center;flex:0 0 auto;overflow:visible;background:var(--flyo-user-color-1);color:#fff;border:2px solid var(--flyo-avatar-ring);box-shadow:0 0 0 1px rgba(15,23,42,.07),0 5px 14px rgba(15,23,42,.12);font-weight:650;line-height:1;transition:transform .16s ease,box-shadow .16s ease}
.flrac-avatar::after{content:"";position:absolute;inset:2px;border-radius:inherit;border:1px solid rgba(255,255,255,.16);pointer-events:none;z-index:2}
.flrac-avatar:hover{transform:translateY(-1px);box-shadow:0 0 0 1px rgba(15,23,42,.08),0 7px 18px rgba(15,23,42,.15)}
.flrac-avatar-xs{--flyo-avatar-size:var(--flyo-avatar-xs);font-size:calc(var(--flyo-avatar-xs)*.38);border-width:1px}
.flrac-avatar-sm{--flyo-avatar-size:var(--flyo-avatar-sm);font-size:calc(var(--flyo-avatar-sm)*.37)}
.flrac-avatar-md{--flyo-avatar-size:var(--flyo-avatar-md);font-size:calc(var(--flyo-avatar-md)*.36)}
.flrac-avatar-lg{--flyo-avatar-size:var(--flyo-avatar-lg);font-size:calc(var(--flyo-avatar-lg)*.35)}
.flrac-avatar-color-1{background:linear-gradient(145deg,color-mix(in srgb,var(--flyo-user-color-1) 88%,#fff),var(--flyo-user-color-1))}.flrac-avatar-color-2{background:linear-gradient(145deg,color-mix(in srgb,var(--flyo-user-color-2) 88%,#fff),var(--flyo-user-color-2))}.flrac-avatar-color-3{background:linear-gradient(145deg,color-mix(in srgb,var(--flyo-user-color-3) 88%,#fff),var(--flyo-user-color-3))}.flrac-avatar-color-4{background:linear-gradient(145deg,color-mix(in srgb,var(--flyo-user-color-4) 88%,#fff),var(--flyo-user-color-4))}.flrac-avatar-color-5{background:linear-gradient(145deg,color-mix(in srgb,var(--flyo-user-color-5) 88%,#fff),var(--flyo-user-color-5))}.flrac-avatar-color-6{background:linear-gradient(145deg,color-mix(in srgb,var(--flyo-user-color-6) 88%,#fff),var(--flyo-user-color-6))}.flrac-avatar-color-7{background:linear-gradient(145deg,color-mix(in srgb,var(--flyo-user-color-7) 88%,#fff),var(--flyo-user-color-7))}.flrac-avatar-color-8{background:linear-gradient(145deg,color-mix(in srgb,var(--flyo-user-color-8) 88%,#fff),var(--flyo-user-color-8))}
.flrac-avatar-initials{position:relative;z-index:1;letter-spacing:-.025em;text-shadow:0 1px 1px rgba(15,23,42,.12)}
.flrac-avatar>img{position:absolute;inset:-2px;width:calc(100% + 4px);height:calc(100% + 4px);object-fit:cover;border-radius:inherit;z-index:2;background:#fff;border:2px solid var(--flyo-avatar-ring)}
.flrac-avatar-presence{position:absolute;right:-2px;bottom:-1px;z-index:5;width:clamp(8px,calc(var(--flyo-avatar-size)*.25),11px);height:clamp(8px,calc(var(--flyo-avatar-size)*.25),11px);border-radius:50%;border:2px solid #fff;background:var(--flyo-avatar-unknown);box-shadow:0 0 0 1px rgba(15,23,42,.08)}
.flrac-avatar[data-presence="available"] .flrac-avatar-presence{background:var(--flyo-avatar-online)}.flrac-avatar[data-presence="busy"] .flrac-avatar-presence{background:var(--flyo-avatar-busy)}.flrac-avatar[data-presence="unavailable"] .flrac-avatar-presence{background:var(--flyo-avatar-offline)}.flrac-avatar[data-presence="unknown"] .flrac-avatar-presence{background:var(--flyo-avatar-unknown)}.flrac-avatar[data-presence="none"] .flrac-avatar-presence{display:none}
.flrac-avatar-calendar{position:absolute;top:-4px;right:-4px;z-index:6;display:grid;place-items:center;width:14px;height:14px;border-radius:50%;border:2px solid #fff;background:#fff;color:#4285f4;font-size:7px;font-weight:800;line-height:1;box-shadow:0 1px 4px rgba(15,23,42,.16)}
.flrac-avatar-xs .flrac-avatar-calendar{display:none}.flrac-avatar-sm .flrac-avatar-calendar{width:12px;height:12px;font-size:6px;top:-4px;right:-4px}
.flrac-avatar-group{display:inline-flex;align-items:center;padding-left:4px}.flrac-avatar-group>.flrac-avatar{margin-left:-6px;box-shadow:0 0 0 2px #fff,0 3px 9px rgba(15,23,42,.10)}.flrac-avatar-group>.flrac-avatar:hover{z-index:9}.flrac-avatar-group-more{margin-left:-5px;width:var(--flyo-avatar-sm);height:var(--flyo-avatar-sm);border-radius:50%;display:grid;place-items:center;background:#edf2f8;color:#526078;border:2px solid #fff;font-size:8px;font-weight:700;box-shadow:0 1px 4px rgba(15,23,42,.08)}

.flrac-brand{display:inline-flex;align-items:center;gap:10px;min-width:0}.flrac-brand-icon{position:relative;width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(145deg,var(--flyo-brand-accent),color-mix(in srgb,var(--flyo-brand-accent) 78%,#6f8cff));color:#fff;box-shadow:0 8px 20px color-mix(in srgb,var(--flyo-brand-accent) 25%,transparent);font-size:17px;font-weight:800;letter-spacing:-.05em;overflow:hidden}.flrac-brand-icon i{position:absolute;width:13px;height:3px;left:7px;top:7px;border-radius:2px;background:rgba(255,255,255,.32);transform:rotate(-8deg)}.flrac-brand-copy{display:grid;gap:2px;min-width:0}.flrac-brand-copy strong{font-size:18px!important;line-height:1.05;letter-spacing:-.025em;color:#fff!important}.flrac-brand-copy small{font-size:9px;color:#91a5c3;line-height:1.2}.flrac-brand-icon-only .flrac-brand-icon{width:34px;height:34px;border-radius:10px}
.flrac-app-brand{padding:4px 7px 24px!important}.flrac-app-brand>.flrac-brand{width:100%}

.flrac-user-summary-badge{display:flex;align-items:center;gap:calc(9px * var(--flyo-identity-gap));min-width:0;padding:4px 5px;border-radius:10px;transition:background .16s ease}.flrac-user-summary-badge:hover{background:color-mix(in srgb,var(--flrac-ds-accent-soft) 48%,transparent)}.flrac-user-summary-main{display:grid;min-width:0}.flrac-user-summary-main>strong{font-size:12px!important;color:var(--flrac-ds-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.flrac-user-role{font-size:8px!important;color:#718096;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px}.flrac-user-summary-main>small{font-size:8.5px!important;color:#8793a5!important;margin-top:4px!important}.flrac-user-mini-chips{display:flex;gap:4px;flex-wrap:wrap;margin-top:5px}.flrac-user-mini-chips span{min-height:18px;display:inline-flex;align-items:center;padding:1px 6px;border-radius:var(--flyo-badge-radius);font-size:7.5px;font-weight:600;background:#f2f5f9;color:#536075}.flrac-user-mini-chips .is-progress{background:#edf3ff;color:#2455dc}.flrac-user-mini-chips .is-blocked{background:#fff1f2;color:#b4233b}.flrac-user-mini-chips .is-overdue{background:#fff7ed;color:#b45309}
.flrac-user-inline{display:inline-flex!important;align-items:center;gap:6px!important;padding:2px 7px 2px 3px!important;border:1px solid var(--flrac-ds-border);border-radius:var(--flyo-badge-radius);background:#fff;color:#536075!important;white-space:nowrap}

.flrac-status-chip,.flrac-app-status,.flrac-priority-chip,.flrac-task-priority-badge,.flrac-source-chip{border-radius:var(--flyo-badge-radius)!important;font-size:var(--flyo-badge-font-size)!important;font-weight:600!important;line-height:1.15;letter-spacing:0!important}.flrac-status-chip,.flrac-app-status{border:1px solid color-mix(in srgb,var(--chip-color,#718096) 24%,transparent)!important;background:color-mix(in srgb,var(--chip-color,#718096) var(--flyo-badge-fill),#fff)!important;color:var(--chip-color,#526078)!important;padding:3px 7px!important}.flrac-app-status[data-status="todo"]{--chip-color:#64748b}.flrac-app-status[data-status="planned"]{--chip-color:#7c3aed}.flrac-app-status[data-status="in_progress"]{--chip-color:#2563eb}.flrac-app-status[data-status="waiting"]{--chip-color:#c47a12}.flrac-app-status[data-status="blocked"]{--chip-color:#d62f4b}.flrac-app-status[data-status="to_validate"]{--chip-color:#e56a22}.flrac-app-status[data-status="done"]{--chip-color:#15965d}.flrac-app-status[data-status="cancelled"]{--chip-color:#7b8494}
.flrac-priority-chip,.flrac-task-priority-badge{border:1px solid color-mix(in srgb,var(--priority-color,#64748b) 20%,transparent)!important;background:color-mix(in srgb,var(--priority-color,#64748b) var(--flyo-badge-fill),#fff)!important;color:var(--priority-color,#64748b)!important;padding:2px 6px!important}.flrac-task-priority-badge[data-priority="low"]{--priority-color:#64748b}.flrac-task-priority-badge[data-priority="normal"]{--priority-color:#526078}.flrac-task-priority-badge[data-priority="high"]{--priority-color:#d97706}.flrac-task-priority-badge[data-priority="urgent"]{--priority-color:#dc2626}
.flrac-source-chip{display:inline-flex;align-items:center;gap:5px;min-height:22px;padding:2px 7px;border:1px solid #d9d3fb;background:#f3f0ff;color:#5b3cc4}.flrac-source-chip b{width:16px;height:16px;border-radius:5px;display:grid;place-items:center;background:#fff;color:#4285f4;font-size:9px;box-shadow:0 1px 2px rgba(15,23,42,.08)}.flrac-source-chip.is-compact span{display:none}.flrac-source-chip.is-compact{padding:2px 4px}.flrac-google-source-badge{border-radius:var(--flyo-badge-radius)!important;font-weight:600!important;background:#f3f0ff!important;color:#5b3cc4!important;border:1px solid #d9d3fb!important}

/* Existing view integration */
.flrac-planning-grid-premium .flrac-planning-person{gap:10px!important}.flrac-planning-grid-premium .flrac-planning-person>.flrac-user-summary-badge{width:100%}.flrac-planning-grid-premium .flrac-planning-person .flrac-user-summary-main>strong{font-size:calc(11px * var(--flrac-ds-planning-scale))!important}.flrac-planning-grid-premium .flrac-planning-person .flrac-user-mini-chips{gap:3px}.flrac-team-member-cell>.flrac-avatar,.flrac-board-owner>.flrac-avatar,.flrac-kanban-owner>.flrac-avatar{margin-right:1px}.flrac-board-owner,.flrac-kanban-owner{align-items:center!important}.flrac-app-task-meta .flrac-user-inline{font-size:8.5px!important}.flrac-management-owner-table .flrac-avatar{vertical-align:middle}
.flrac-app-sidebar-foot .flrac-avatar{box-shadow:0 0 0 2px rgba(255,255,255,.08),0 5px 15px rgba(0,0,0,.16)}.flrac-profile-top-avatar.flrac-avatar{box-shadow:none}.flrac-app-profile-btn{display:grid!important;place-items:center!important}
.flrac-profile-avatar.flrac-avatar{width:var(--flyo-avatar-lg)!important;height:var(--flyo-avatar-lg)!important;border-radius:50%!important;background:var(--flyo-user-color-1)!important;padding:0!important;font-size:calc(var(--flyo-avatar-lg)*.34)!important}

@media(max-width:700px){.flrac-brand-copy small{display:none}.flrac-user-mini-chips{display:none}.flrac-source-chip:not(.is-compact) span{max-width:92px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}

/* Identity conflict guards against legacy component rules. */
.flrac-app-sidebar-foot .flrac-avatar{width:var(--flyo-avatar-md)!important;height:var(--flyo-avatar-md)!important;border-radius:50%!important;color:#fff!important;font-size:calc(var(--flyo-avatar-md)*.35)!important;background-color:transparent}
.flrac-app-sidebar-foot .flrac-avatar .flrac-avatar-initials{color:#fff!important;font-size:inherit!important;line-height:1!important}
.flrac-app-sidebar-foot .flrac-avatar .flrac-avatar-presence{font-size:0!important;color:transparent!important}
.flrac-profile-top-avatar.flrac-avatar{width:var(--flyo-avatar-sm)!important;height:var(--flyo-avatar-sm)!important;border-radius:50%!important;color:#fff!important;font-size:calc(var(--flyo-avatar-sm)*.36)!important;background-color:inherit!important}
.flrac-profile-top-avatar.flrac-avatar .flrac-avatar-initials{font-size:inherit!important;color:#fff!important}
.flrac-profile-top-avatar.flrac-avatar .flrac-avatar-presence{font-size:0!important;color:transparent!important}

/* RC1.5.0-F.2 — Button System Harmonization & Work Request Toolbar Pixel Perfect */
:root{
  --flrac-ds-button-primary-height:42px;
  --flrac-ds-filter-height:38px;
  --flrac-ds-segmented-height:34px;
  --flrac-ds-card-action-height:32px;
}

.flrac-ds-control{
  box-sizing:border-box!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px;
  min-width:0;
  margin:0;
  padding:0 14px!important;
  border:1px solid var(--flrac-ds-border)!important;
  border-radius:var(--flrac-ds-radius-sm)!important;
  background:var(--flrac-ds-surface)!important;
  color:var(--flrac-ds-text)!important;
  font:inherit;
  font-size:12px!important;
  font-weight:700!important;
  line-height:1!important;
  text-decoration:none!important;
  white-space:nowrap;
  cursor:pointer;
  vertical-align:middle;
}
.flrac-ds-control svg{width:16px;height:16px;flex:0 0 16px}
.flrac-ds-control--primary{height:var(--flrac-ds-button-primary-height)!important;background:var(--flrac-ds-accent)!important;border-color:var(--flrac-ds-accent)!important;color:#fff!important}
.flrac-ds-control--secondary,.flrac-ds-control--filter,.flrac-ds-control--save{height:var(--flrac-ds-filter-height)!important}
.flrac-ds-control--save{background:var(--flrac-ds-accent)!important;border-color:var(--flrac-ds-accent)!important;color:#fff!important}
.flrac-ds-control--segment{height:var(--flrac-ds-segmented-height)!important;padding-inline:12px!important}
.flrac-ds-control--card{height:var(--flrac-ds-card-action-height)!important;padding-inline:10px!important;font-size:11px!important}
.flrac-ds-control:focus-visible{outline:3px solid color-mix(in srgb,var(--flrac-ds-accent) 28%,transparent);outline-offset:2px}
.flrac-ds-control:disabled,.flrac-ds-control[aria-disabled="true"]{opacity:.5;cursor:not-allowed}
.flrac-ds-control.is-loading{pointer-events:none;position:relative}

/* Work Request toolbar: fixed geometry, existing JS selectors unchanged. */
.flrac-work-request-hub .flrac-wr-new{
  box-sizing:border-box!important;height:var(--flrac-ds-button-primary-height)!important;min-height:var(--flrac-ds-button-primary-height)!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;line-height:1!important;padding:0 14px!important;
}
.flrac-work-request-hub .flrac-wr-toolbar input,
.flrac-work-request-hub .flrac-wr-toolbar select,
.flrac-work-request-hub .flrac-wr-toolbar .flrac-wr-reset,
.flrac-work-request-hub .flrac-wr-advanced-filters select,
.flrac-work-request-hub .flrac-wr-advanced-filters button:not(.flrac-wr-view-switch button){
  box-sizing:border-box!important;height:var(--flrac-ds-filter-height)!important;min-height:var(--flrac-ds-filter-height)!important;line-height:1!important;
}
.flrac-work-request-hub .flrac-wr-reset{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:0 12px!important;
}
.flrac-work-request-hub .flrac-wr-view-switch{align-items:center!important}
.flrac-work-request-hub .flrac-wr-view-switch button{
  box-sizing:border-box!important;height:var(--flrac-ds-segmented-height)!important;min-height:var(--flrac-ds-segmented-height)!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;line-height:1!important;padding:0 12px!important;
}
.flrac-work-request-hub .flrac-wr-template-actions button,
.flrac-work-request-hub .flrac-wr-actions button,
.flrac-work-request-hub .flrac-wr-drawer-panel .flrac-wr-people-actions button{
  box-sizing:border-box!important;height:var(--flrac-ds-card-action-height)!important;min-height:var(--flrac-ds-card-action-height)!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;line-height:1!important;
}
.flrac-work-request-hub .flrac-wr-create-form>footer .flrac-wr-save-draft{
  box-sizing:border-box!important;height:var(--flrac-ds-filter-height)!important;min-height:var(--flrac-ds-filter-height)!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;line-height:1!important;
}
.flrac-work-request-hub .flrac-wr-create-form>footer .flrac-wr-send{
  box-sizing:border-box!important;height:var(--flrac-ds-button-primary-height)!important;min-height:var(--flrac-ds-button-primary-height)!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;line-height:1!important;
}

@media(max-width:760px){
  .flrac-work-request-hub .flrac-wr-toolbar>*{min-width:0}
  .flrac-work-request-hub .flrac-wr-new{width:100%}
}
.flrac-design-reset,.flrac-design-save,.flrac-profile-primary{
  box-sizing:border-box!important;height:var(--flrac-ds-filter-height)!important;min-height:var(--flrac-ds-filter-height)!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;line-height:1!important;
}
.flrac-app-create{box-sizing:border-box!important;height:var(--flrac-ds-button-primary-height)!important;min-height:var(--flrac-ds-button-primary-height)!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;line-height:1!important}

/* RC1.5.0-F.2.1 — Work Request Toolbar Pixel Perfect Closure
 * Screenshot-driven closure: saved views and List/Kanban use the FormeLyo
 * Design System instead of browser-default button geometry.
 */
.flrac-work-request-hub .flrac-wr-secondary-toolbar{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  min-width:0;
  margin-top:0!important;
}
.flrac-work-request-hub .flrac-wr-advanced-filters{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  flex:1 1 auto;
  min-width:0;
  margin-top:0!important;
}
.flrac-work-request-hub .flrac-wr-filter-impact{
  flex:0 1 150px;
  min-width:118px;
}
.flrac-work-request-hub .flrac-wr-filter-assignee{
  flex:0 1 175px;
  min-width:135px;
}
.flrac-work-request-hub .flrac-wr-saved-views{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  flex:0 0 auto;
  margin-left:auto!important;
  min-width:0;
}
.flrac-work-request-hub .flrac-wr-saved-view-select,
.flrac-work-request-hub .flrac-wr-save-view{
  box-sizing:border-box!important;
  height:var(--flrac-ds-filter-height)!important;
  min-height:var(--flrac-ds-filter-height)!important;
  margin:0!important;
  border:1px solid var(--flrac-ds-border)!important;
  border-radius:9px!important;
  background:#fff!important;
  color:#344054!important;
  box-shadow:none!important;
  font-family:inherit!important;
  font-size:10px!important;
  font-weight:650!important;
  line-height:1!important;
  vertical-align:middle!important;
}
.flrac-work-request-hub .flrac-wr-saved-view-select{
  width:178px!important;
  min-width:160px!important;
  padding:0 30px 0 10px!important;
  cursor:pointer;
}
.flrac-work-request-hub .flrac-wr-save-view{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:84px!important;
  padding:0 12px!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  cursor:pointer!important;
}
.flrac-work-request-hub .flrac-wr-save-view:hover,
.flrac-work-request-hub .flrac-wr-saved-view-select:hover{
  border-color:#b9c6d8!important;
  background:#fbfcfe!important;
}
.flrac-work-request-hub .flrac-wr-save-view:focus-visible,
.flrac-work-request-hub .flrac-wr-saved-view-select:focus-visible{
  outline:3px solid color-mix(in srgb,var(--flrac-ds-accent) 22%,transparent)!important;
  outline-offset:2px!important;
}
.flrac-work-request-hub .flrac-wr-view-switch{
  box-sizing:border-box!important;
  display:inline-flex!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  flex:0 0 auto!important;
  gap:0!important;
  height:var(--flrac-ds-segmented-height)!important;
  min-height:var(--flrac-ds-segmented-height)!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  border:0!important;
  border-radius:9px!important;
  background:#fff!important;
  box-shadow:inset 0 0 0 1px var(--flrac-ds-border)!important;
}
.flrac-work-request-hub .flrac-wr-view-switch button{
  box-sizing:border-box!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 auto!important;
  height:var(--flrac-ds-segmented-height)!important;
  min-height:var(--flrac-ds-segmented-height)!important;
  min-width:56px!important;
  margin:0!important;
  padding:0 11px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#667085!important;
  font-family:inherit!important;
  font-size:9.5px!important;
  font-weight:700!important;
  line-height:1!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  cursor:pointer!important;
}
.flrac-work-request-hub .flrac-wr-view-switch button+button{
  box-shadow:inset 1px 0 0 var(--flrac-ds-border)!important;
}
.flrac-work-request-hub .flrac-wr-view-switch button:hover{
  background:#f7f9fc!important;
  color:#344054!important;
}
.flrac-work-request-hub .flrac-wr-view-switch button.is-active,
.flrac-work-request-hub .flrac-wr-view-switch button[aria-pressed="true"]{
  background:var(--flrac-ds-accent-soft)!important;
  color:var(--flrac-ds-accent)!important;
}
.flrac-work-request-hub .flrac-wr-view-switch button:focus-visible{
  position:relative;
  z-index:1;
  outline:2px solid color-mix(in srgb,var(--flrac-ds-accent) 45%,transparent)!important;
  outline-offset:-2px!important;
}

/* Prevent native control chrome from changing the measured toolbar geometry. */
.flrac-work-request-hub .flrac-wr-toolbar input,
.flrac-work-request-hub .flrac-wr-toolbar select,
.flrac-work-request-hub .flrac-wr-toolbar button,
.flrac-work-request-hub .flrac-wr-advanced-filters select,
.flrac-work-request-hub .flrac-wr-saved-views button{
  box-sizing:border-box!important;
  box-shadow:none!important;
}
.flrac-work-request-hub .flrac-wr-toolbar button,
.flrac-work-request-hub .flrac-wr-saved-views button{
  appearance:none!important;
  -webkit-appearance:none!important;
}

@media(max-width:1100px){
  .flrac-work-request-hub .flrac-wr-secondary-toolbar{flex-wrap:wrap!important}
  .flrac-work-request-hub .flrac-wr-advanced-filters{flex:1 1 100%;flex-wrap:wrap!important}
  .flrac-work-request-hub .flrac-wr-saved-views{margin-left:auto!important}
  .flrac-work-request-hub .flrac-wr-view-switch{margin-left:auto!important}
}
@media(max-width:760px){
  .flrac-work-request-hub .flrac-wr-secondary-toolbar,
  .flrac-work-request-hub .flrac-wr-advanced-filters{align-items:stretch!important}
  .flrac-work-request-hub .flrac-wr-filter-impact,
  .flrac-work-request-hub .flrac-wr-filter-assignee{flex:1 1 150px;min-width:0}
  .flrac-work-request-hub .flrac-wr-saved-views{flex:1 1 100%;margin-left:0!important}
  .flrac-work-request-hub .flrac-wr-saved-view-select{width:auto!important;min-width:0!important;flex:1 1 auto}
  .flrac-work-request-hub .flrac-wr-view-switch{margin-left:0!important}
}


/* RC1.5.0-F.2.2 — Search Button Centering & Direct Mailbox Button */
.flrac-app-top-actions .flrac-app-search-btn,
.flrac-app-top-actions .flrac-app-mailbox-btn{
  box-sizing:border-box!important;
  width:42px!important;
  min-width:42px!important;
  height:42px!important;
  min-height:42px!important;
  padding:0!important;
  margin:0!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 42px!important;
  line-height:1!important;
  vertical-align:middle!important;
  border:1px solid #d7dfeb!important;
  border-radius:10px!important;
  background:#fff!important;
  color:var(--flrac-ds-text)!important;
  text-decoration:none!important;
  box-shadow:none!important;
  cursor:pointer;
}
.flrac-app-top-actions .flrac-app-search-btn .flrac-icon,
.flrac-app-top-actions .flrac-app-mailbox-btn .flrac-icon{
  display:block!important;
  width:18px!important;
  height:18px!important;
  flex:0 0 18px!important;
  margin:0!important;
  transform:none!important;
}
.flrac-app-top-actions .flrac-app-search-btn:hover,
.flrac-app-top-actions .flrac-app-mailbox-btn:hover{background:#f8fafc!important;border-color:#c8d2e1!important}
.flrac-app-top-actions .flrac-app-search-btn:focus-visible,
.flrac-app-top-actions .flrac-app-mailbox-btn:focus-visible{outline:3px solid color-mix(in srgb,var(--flrac-ds-accent) 28%,transparent);outline-offset:2px}
.flrac-app-top-actions .flrac-app-mailbox-btn{position:relative}
.flrac-profile-mailbox-field{grid-column:1/-1}
.flrac-profile-mailbox-field small{font-size:9px;font-weight:500;line-height:1.45;color:#7b879a}
