/* Webfonts */

@import url("https://use.typekit.net/esf4xgy.css");


/* Variables */
:root {

  /* Accent */
  --adigi-accent-primary: #FF7582;
  --adigi-accent-secondary: #0CA4A5;
  --adigi-accent-highlight: #E4FD75;

  /* Text */
  --adigi-text-primary: #101010;
  --adigi-text-muted: #4F4F50;
  --adigi-text-on-dark: #FFFFFF;

  /* Surface */
  --adigi-surface-page: #F7F8F3;
  --adigi-surface-card: #FFFFFF;
  --adigi-surface-dark: #151515;

  /* Border */
  --adigi-border-default: #C5C6C3;

  /* Status */
  --adigi-status-amber: #FF7F51;
  --adigi-status-amber-light: #FFE9E1;
  --adigi-status-red: #E63946;
  --adigi-status-red-light: #FBE1E3;

  /* Utility tints */
  --adigi-utility-lighter-grey: #F0F0EE;
  --adigi-utility-lighter-pink: #FFE3E6;
  --adigi-utility-lighter-teal: #E6F7F7;
  --adigi-utility-pale-yellow: #F7FFD6;
  --adigi-utility-light-outline: #C5C6C3;
}


/* Global */

html {
	font-size: clamp( 14px, calc(0.5556vw + 8px), 16px); /* capped at 16px (was 20px): 16px from 1440 wide up, so screens show more, not bigger. 21 Oct 2026 */
}

body {
	background-color: #F7F8F3;
	color: #101010;
	font-family: "parabolica";
	line-height: 1.5;
}


/* Helpers */

.cursor-pointer {
	cursor: pointer;
}

.br-sm {
	border-radius: 0.875rem;
}


/* Layout */

.row {
	margin-left: -0.5rem;
	margin-right: -0.5rem;
}

.row > * {
	margin-bottom: 1rem;
	padding-left: 0.5rem;
	padding-right: 0.5rem;
}


/* Typography */

a {
	color: var(--adigi-accent-primary);
	text-decoration: none;
	transition: 0.15s ease-out;
}

a:hover {
	color: var(--adigi-accent-primary);
}

:is(h1,h2,h3,h4,h5,h6,p,ol,ul):last-child {
	margin-bottom: 0;
}

h1,h2,h3,h4,h5,h6 {
	font-weight: 500;
	line-height: 1.2;
}

h1 {
	font-size: 2rem;
}

.muted {
	color: var(--adigi-text-muted);
}

.fw-500 {
	font-weight: 500;
}

.text-xxxs {
	font-size: 0.6875rem; /*11px*/
}

.text-xxs {
	font-size: 0.75rem; /*12px*/
}

.text-xs {
	font-size: 0.8125rem; /*13px*/
}

.text-sm {
	font-size: 0.875rem; /*14px*/
}

.text-lg {
	font-size: 1.125rem; /*18px*/
}


/* Numbers */

.number.lg {
	font-size: 2rem;
	font-weight: bold;
}


/* Pills */

.pill {
	background-color: var(--adigi-utility-lighter-grey);
	border-radius: 999px;
	color: var(--adigi-text-muted);
	display: inline-flex;
	align-items: center;
	font-size: 0.75rem;
	font-weight: 500;
	line-height: 1.4;
	padding: 0.25rem 0.625rem;
	white-space: nowrap;
}

.pill.grey-outline {
	background-color: transparent;
	border: 1px solid var(--adigi-border-default);
}

.pill.pink {
	background-color: var(--adigi-utility-lighter-pink);
	color: var(--adigi-accent-primary);
}

.pill.amber {
	background-color: var(--adigi-status-amber-light);
	color: var(--adigi-status-amber);
}

.pill.red {
	background-color: var(--adigi-status-red-light);
	color: var(--adigi-status-red);
}

.pill.teal {
	background-color: var(--adigi-utility-lighter-teal);
	color: var(--adigi-accent-secondary);
}

.pill.teal-solid {
	background-color: var(--adigi-accent-secondary);
	color: var(--adigi-text-on-dark);
}

.pill.teal-outline {
	background-color: transparent;
	border: 1px solid var(--adigi-accent-secondary);
	color: var(--adigi-accent-secondary);
}

.pill.bordered {
	border: 1px solid currentColor;
}


/* Buttons */

.btn-adigi, .btn-adigi-outline {
	border-radius: 0.875rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 0.875rem;
	font-weight: 500;
	gap: 0.375rem;
	padding: 0.625rem 1rem;
	white-space: nowrap;
}

.btn-adigi {
	background-color: var(--adigi-text-primary);
	border: 1px solid var(--adigi-text-primary);
	color: var(--adigi-text-on-dark);
}

.btn-adigi:hover {
	color: var(--adigi-text-on-dark);
	opacity: 0.9;
}

.btn-adigi-outline {
	background-color: #fff;
	border: 1px solid var(--adigi-border-default);
	color: var(--adigi-text-primary);
}

.btn-adigi-outline:hover {
	border-color: var(--adigi-text-primary);
	color: var(--adigi-text-primary);
}

.btn-adigi:disabled, .btn-adigi.disabled {
	background-color: var(--adigi-utility-lighter-grey);
	border-color: var(--adigi-utility-lighter-grey);
	color: var(--adigi-border-default);
	cursor: not-allowed;
}

.btn-adigi-outline.sm, .btn-adigi.sm {
	border-radius: 0.5rem;
	font-size: 0.75rem;
	padding: 0.4375rem 0.75rem;
}

.btn-adigi-outline.teal {
	background-color: var(--adigi-utility-lighter-teal);
	border-color: var(--adigi-accent-secondary);
	color: var(--adigi-accent-secondary);
	font-weight: 500;
}

.btn-adigi-outline.teal:hover {
	border-color: var(--adigi-accent-secondary);
	color: var(--adigi-accent-secondary);
}


/* Avatars */

.avatar.sm {
	height: 1.625rem;
	width: 1.625rem;
}

.avatar-initials {
	align-items: center;
	background-color: var(--adigi-accent-secondary);
	border-radius: 50%;
	color: var(--adigi-text-on-dark);
	display: inline-flex;
	justify-content: center;
	font-size: 0.75rem;
	font-weight: 500;
	height: 2rem;
	width: 2rem;
}

.avatar-initials.james {
	background-color: var(--adigi-text-muted);
}

/* A web address shown as a short named link (notes, briefs, the Links section) */
.td-link-chip {
	align-items: center;
	background: var(--adigi-surface-card);
	border: 1px solid var(--adigi-border-default);
	border-radius: 999px;
	color: var(--adigi-text-primary);
	display: inline-flex;
	font-size: 0.8125rem;
	font-weight: 500;
	gap: 0.375rem;
	margin: 0.125rem 0;
	padding: 0.125rem 0.625rem;
	text-decoration: none !important;   /* the brief's own link style underlines */
	vertical-align: baseline;
	white-space: nowrap;
}

.td-link-chip:hover {
	border-color: var(--adigi-text-primary);
	color: var(--adigi-text-primary);
}

.td-link-chip:focus-visible {
	outline: 2px solid var(--adigi-text-primary);
	outline-offset: 2px;
}

/* A client's logo in place of their initials (ClientMark): same size as the circle it replaces */
img.client-logo {
	background: var(--adigi-surface-card);
	box-shadow: 0 0 0 1px var(--adigi-border-default);
	object-fit: cover;
}


/* Filter chips */

.filter-chip {
	background-color: #fff;
	border: 1px solid var(--adigi-border-default);
	border-radius: 999px;
	color: var(--adigi-text-muted);
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	font-size: 0.875rem;
	padding: 0.4375rem 0.875rem;
}

.filter-chip .count {
	background-color: var(--adigi-utility-lighter-grey);
	border-radius: 999px;
	color: var(--adigi-text-muted);
	font-size: 0.6875rem;
	padding: 0.0625rem 0.4375rem;
}

.filter-chip.active {
	background-color: var(--adigi-text-primary);
	border-color: var(--adigi-text-primary);
	color: var(--adigi-text-on-dark);
}

.filter-chip.active .count {
	background-color: rgba(255, 255, 255, 0.2);
	color: var(--adigi-text-on-dark);
}


/* Input banner (amber, status-coded — distinct from the lime .announcement-bar) */

.input-banner {
	background-color: var(--adigi-status-amber-light);
	border-left: 3px solid var(--adigi-status-amber);
	border-radius: 0.75rem;
	padding: 0.875rem 1.125rem;
}

.input-banner .title {
	font-weight: 500;
	margin-bottom: 0;
}

.input-banner .subtitle {
	color: var(--adigi-text-muted);
	font-size: 0.75rem;
	margin-bottom: 0;
}

.input-banner .link {
	color: var(--adigi-status-amber);
	font-size: 0.75rem;
	font-weight: 500;
	white-space: nowrap;
}


/* Row card (list rows shared across Hosting / Pipeline / Clients / Schedule / Tickets) */

.row-card {
	background-color: #fff;
	border: 1px solid var(--adigi-border-default);
	border-left: 3px solid var(--adigi-border-default);
	border-radius: 0.75rem;
}

.row-card .row-card-main {
	display: flex;
	align-items: center;
	gap: 0.875rem;
	padding: 0.75rem 1rem;
}

.row-card-toggle {
	background: none;
	border: none;
	color: var(--adigi-text-muted);
	flex-shrink: 0;
}

.row-card-drawer {
	border-top: 1px solid var(--adigi-border-default);
	display: none;
	padding: 1rem;
}

.row-card.open .row-card-drawer {
	display: block;
	border-bottom-left-radius: 0.75rem;
	border-bottom-right-radius: 0.75rem;
}

.row-card.open .row-card-toggle {
	transform: rotate(180deg);
}


/* Forms */

.form-control, .form-select {
	border: 1px solid var(--adigi-border-default);
	border-radius: 0.5rem;
}

.form-control:focus, .form-select:focus {
	border-color: var(--adigi-accent-primary);
  box-shadow: 0 0 0 .25rem rgba(255,117,130,0.25);
}

.form-control.form-control-search {
	background-color: var(--adigi-surface-page);
	border: 1px solid var(--adigi-border-default)!important;
	border-radius: 1.171875rem;
	min-width: 15rem;
	padding: 0.5rem 1rem;
}


/* Topbars */

.main {
	margin-left: 16rem;
}

.announcement-bar {
	background-color: var(--adigi-accent-highlight);
	padding: 0.5rem 2rem;
}

.topbar {
	border-bottom: 1px solid var(--adigi-border-default);
	padding: 0.625rem 2rem;
}

.avatar {
	border-radius: 50%;
	flex-shrink: 0;
	height: 2rem;
	object-fit: cover;
	width: 2rem;
}

.header {
	border-bottom: 1px solid var(--adigi-border-default);
	padding: 1.5rem 2rem;
}


/* Inner */

.inner {
	padding: 1.75rem 2rem;
}

.subheader-bar {
	background-color: #fff;
	border-bottom: 1px solid var(--adigi-border-default);
	padding: 0.75rem 2rem;
}


/* Navbar */

.navbar {
	background-color: var(--adigi-surface-dark);
	padding: 0.5rem 1rem;
}


/* Sidebar */

.sidebar {
	background-color: var(--adigi-surface-dark);
	top: 0; left: 0; bottom: 0;
	width: 16rem;
}

.sidebar-logo {
	padding: 1.5rem;
}

.sidebar-logo img {
	width: 6rem;
}

.sidebar-items {
	border: 1px solid rgba(255, 255, 255, 0.10);
	border-width: 1px 0;
	overflow-y: auto;
	padding: 1rem 0.75rem;
}

.sidebar-items > a, .sidebar-settings {
	border-left: 3px solid transparent;
	color: var(--adigi-border-default);
	padding: 0.625rem 0.75rem;
	position: relative;
	transition: 0.15s ease-out;
}

.sidebar-items > a:hover, .sidebar-settings:hover {
	color: #fff;
}

.sidebar-settings {
	margin: 0.5rem 0.75rem 1.5rem;
}

/* Guide and Settings sit together, spaced like the links above */
.sidebar-foot {
	display: flex;
	flex-direction: column;
	gap: 0.125rem;
	padding: 1rem 0.75rem 1.5rem;
}

.sidebar-foot .sidebar-settings {
	margin: 0;
}

a.sidebar-logo, a.navbar-logo {
	display: block;
}

.sidebar-items > a svg, .sidebar-settings svg {
	height: 1.25rem;
	margin-right: 0.625rem;
	min-height: 1.25rem;
	position: relative;
	width: 1.5rem;
}

.sidebar-items .active, .sidebar-settings.active {
	background-color: rgba(255, 255, 255, 0.10);
	border-color: var(--adigi-accent-highlight);
	border-top-right-radius: 0.375rem;
	border-bottom-right-radius: 0.375rem;
	color: #fff;
}

.sidebar-items .active svg path, .sidebar-items .active svg circle,
.sidebar-settings.active svg path, .sidebar-settings.active svg circle {
	stroke: var(--adigi-accent-primary);
}

/* Tablets */

.tablets {
	margin-bottom: -0.5rem;
	overflow-x: auto;
	padding-right: 3rem;
	position: relative;
}

@media (pointer: coarse) {
  .tablets {
    scrollbar-width: none;
    -ms-overflow-style: none;
  }
}

.timetastic-link:after {
	background: linear-gradient(90deg, rgba(247, 248, 243, 0) 0%, rgba(247, 248, 243, 1) 80%);
	content: '';
	position: absolute;
	top: -0.375rem; bottom: -0.375rem; left: -5rem;
	width: 5rem;
}

.tablet {
	background-color: #fff;
	border: 1px solid var(--adigi-border-default);
	border-radius: 0.8125rem;
	font-size: 0.6875rem;
	line-height: 1.1;
	margin: 0 0.5rem 0.5rem 0;
	padding: 0.375rem 0.75rem;
	text-transform: uppercase;
	white-space: nowrap;
}

.tablet.amber {
	background-color: var(--adigi-status-amber-light);
	border-color: var(--adigi-status-amber-light);
	color: var(--adigi-status-amber);
	text-transform: none;
}


/* Widgets */

.widget {
	background-color: #fff;
	border: 1px solid var(--adigi-border-default);
	border-radius: 0.875rem;
	height: 100%;
	padding: 1.25rem;
	position: relative;
	transition: 0.15s ease-out;
}

.widget-alert {
	border-color: var(--adigi-accent-primary);
}

.widget-event-img, .widget-event-emoji {
	background-color: #FFE3E6;
	position: relative;
	height: 2.5rem;
	width: 2.5rem;
}

.widget-event-badge {
	background-color: #fff;
	border: 1px solid var(--adigi-border-default);
	border-radius: 50%;
	height: 1.125rem;
	width: 1.125rem;
	font-size: 0.625rem;
	position: absolute;
	right: 0; bottom: 0;
	transform: translateX(-75%) translateY(25%);
}

.widget-event-badge span {
	display: block;
	transform: translateX(1px);
}




/* Dashboard widgets */

.task-row {
	background-color: #fff;
	border: 1px solid var(--adigi-border-default);
	border-left: 3px solid var(--adigi-border-default);
	border-radius: 0.625rem;
	display: flex;
	align-items: center;
	gap: 0.875rem;
	padding: 0.875rem 0.875rem 0.875rem 1rem;
}

.task-row + .task-row {
	margin-top: 0.625rem;
}

.task-row.flagged {
	border-color: var(--adigi-accent-primary);
}

.task-row-title {
	margin-top: 0.6875rem;
}

.task-row-arrow {
	color: var(--adigi-text-muted);
	flex-shrink: 0;
	font-size: 1rem;
}

.task-row .pill img {
	height: 0.75rem;
	width: 0.75rem;
	margin-right: 0.3125rem;
}

.pipeline-row {
	border-bottom: 1px solid var(--adigi-utility-lighter-grey);
	padding: 0.625rem 0;
}

.pipeline-row:first-of-type {
	padding-top: 0;
}

.stage-chip {
	border-radius: 0.875rem;
	display: inline-flex;
	align-items: center;
	font-size: 0.6875rem;
	font-weight: 500;
	padding: 0.3125rem 0.625rem;
	white-space: nowrap;
}

.stage-chip.lime {
	background-color: var(--adigi-utility-pale-yellow);
	color: var(--adigi-text-primary);
}

.stage-chip.teal {
	background-color: var(--adigi-utility-lighter-teal);
	color: var(--adigi-accent-secondary);
}

.stage-chip.pink {
	background-color: var(--adigi-utility-lighter-pink);
	color: var(--adigi-text-primary);
}

.side-quest-row {
	background-color: var(--adigi-surface-page);
	border-radius: 0.625rem;
	display: flex;
	align-items: center;
	gap: 0.625rem;
	padding: 0.5625rem 0.75rem;
}

.side-quest-row + .side-quest-row {
	margin-top: 0.625rem;
}

.side-quest-row .btn-adigi-outline {
	background-color: transparent;
	border-color: var(--adigi-text-primary);
	flex-shrink: 0;
}

.event-row {
	padding: 0.5rem 0;
}

.event-date {
	background-color: var(--adigi-utility-lighter-pink);
	color: var(--adigi-accent-primary);
	border-radius: 0.5rem;
	flex-shrink: 0;
	font-size: 0.625rem;
	line-height: 1.3;
	padding: 0.375rem 0;
	text-transform: uppercase;
	width: 2.5rem;
}

.progress-track {
	background-color: var(--adigi-utility-lighter-grey);
	border-radius: 999px;
	height: 0.5625rem;
	overflow: hidden;
}

.progress-fill {
	background-color: var(--adigi-accent-secondary);
	border-radius: 999px;
	height: 100%;
}

.leaderboard-row {
	background-color: var(--adigi-surface-page);
	border-radius: 0.5rem;
	display: flex;
	align-items: center;
	gap: 0.5rem;
	font-size: 0.75rem;
	padding: 0.375rem 0.625rem;
}

.leaderboard-row + .leaderboard-row {
	margin-top: 0.375rem;
}

.leaderboard-row.you {
	background-color: var(--adigi-utility-pale-yellow);
}


/* View toggle (Studio Manager / My week segmented control) */

.view-toggle {
	background-color: var(--adigi-utility-lighter-grey);
	border-radius: 0.5rem;
	display: inline-flex;
	padding: 0.125rem;
}

.view-toggle a, .view-toggle button {
	background: none;
	border: none;
	border-radius: 0.375rem;
	color: var(--adigi-text-muted);
	font-size: 0.8125rem;
	padding: 0.375rem 0.875rem;
}

.view-toggle a.active, .view-toggle button.active {
	background-color: #fff;
	color: var(--adigi-text-primary);
	font-weight: 500;
}

.team-switcher {
	background-color: #fff;
	border: 1px solid var(--adigi-border-default);
	border-radius: 999px;
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	font-size: 0.875rem;
	padding: 0.375rem 0.5rem;
}


/* Task card (the "My week" card language — reused across Schedule/Client-profile screens) */

.task-card {
	background-color: #fff;
	border: 1px solid var(--adigi-border-default);
	border-left: 3px solid var(--adigi-border-default);
	border-radius: 0.75rem;
	padding: 1rem;
}

.task-card.active {
	border-color: var(--adigi-accent-primary);
}

.task-card .due-chip, .task-card .flag-chip {
	background-color: var(--adigi-utility-lighter-grey);
	border-radius: 999px;
	color: var(--adigi-text-muted);
	display: inline-flex;
	align-items: center;
	gap: 0.3125rem;
	font-size: 0.75rem;
	font-weight: 500;
	padding: 0.25rem 0.625rem 0.25rem 0.5625rem;
	white-space: nowrap;
}

.task-card .due-chip img {
	height: 0.875rem;
	width: 0.875rem;
}

.task-card .flag-chip {
	background-color: var(--adigi-utility-lighter-pink);
	color: var(--adigi-accent-primary);
}

.timer-btn {
	background: none;
	border: 1px solid var(--adigi-border-default);
	border-radius: 0.625rem;
	color: var(--adigi-text-primary);
	display: inline-flex;
	align-items: center;
	gap: 0.375rem;
	font-size: 0.75rem;
	font-weight: 500;
	padding: 0.4375rem 0.8125rem;
}

.timer-btn.running {
	background-color: var(--adigi-utility-lighter-pink);
	border-color: transparent;
	color: var(--adigi-accent-primary);
}


/* Side quest card (full-row variant — dashboard's .side-quest-row is the condensed one) */

.side-quest-card {
	background-color: #fff;
	border: 1px solid var(--adigi-border-default);
	border-radius: 0.625rem;
	display: flex;
	align-items: center;
	gap: 0.875rem;
	padding: 0.75rem 0.875rem;
}

.side-quest-card .type-tag {
	border: 1px solid var(--adigi-border-default);
	border-radius: 999px;
	color: var(--adigi-text-muted);
	flex-shrink: 0;
	font-size: 0.75rem;
	font-weight: 500;
	padding: 0.1875rem 0.625rem;
}


/* Schedule tabs (Triage / Schedule / Needs info / Needs attention / Project tasks) */

.schedule-tabs {
	display: flex;
	gap: 0.25rem;
}

.schedule-tabs a {
	border-radius: 0.5rem;
	color: var(--adigi-text-muted);
	display: inline-flex;
	align-items: center;
	gap: 0.375rem;
	font-size: 0.875rem;
	font-weight: 500;
	padding: 0.625rem 1rem;
}

.schedule-tabs a .count {
	background-color: rgba(0, 0, 0, 0.08);
	border-radius: 999px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 0.6875rem;
	min-width: 1.125rem;
	height: 1.125rem;
	padding: 0 0.25rem;
}

.schedule-tabs a.active {
	background-color: var(--adigi-text-primary);
	color: var(--adigi-text-on-dark);
}

.schedule-tabs a.active .count {
	background-color: rgba(255, 255, 255, 0.2);
}

/* Section tabs (underline style — Triage/Schedule/Needs info/Needs attention/Project tasks,
   lives inside .header per Figma, distinct from the segmented .schedule-tabs pill control) */

.section-tabs {
	display: flex;
}

.section-tabs a {
	border-bottom: 2px solid transparent;
	color: var(--adigi-text-muted);
	display: inline-flex;
	align-items: center;
	gap: 0.375rem;
	font-size: 0.8125rem;
	padding: 0.625rem 1rem;
}

.section-tabs a.active {
	border-bottom-color: var(--adigi-text-primary);
	color: var(--adigi-text-primary);
	font-weight: 500;
}

.section-tabs a .count {
	background-color: var(--adigi-utility-lighter-grey);
	border-radius: 999px;
	color: var(--adigi-text-muted);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 0.625rem;
	font-weight: 700;
	min-width: 1.125rem;
	height: 1.125rem;
	padding: 0 0.3125rem;
}

.section-tabs a .count.pink {
	background-color: var(--adigi-utility-lighter-pink);
	color: var(--adigi-accent-primary);
}

.stat-strip {
	display: flex;
	gap: 0.375rem;
}

.stat-strip-item {
	background-color: #fff;
	border: 1px solid var(--adigi-border-default);
	border-radius: 0.5rem;
	display: flex;
	align-items: center;
	gap: 0.5rem;
	padding: 0.4375rem 0.875rem;
}

.stat-strip-item .num {
	font-size: 1.25rem;
	font-weight: 700;
}

.stat-strip-item .label {
	color: var(--adigi-text-muted);
	font-size: 0.75rem;
}

.stat-strip-item.red { background-color: var(--adigi-status-red-light); border-color: var(--adigi-status-red); }
.stat-strip-item.red .num, .stat-strip-item.red .label { color: var(--adigi-status-red); }

.stat-strip-item.amber { background-color: var(--adigi-status-amber-light); border-color: var(--adigi-status-amber); }
.stat-strip-item.amber .num, .stat-strip-item.amber .label { color: var(--adigi-status-amber); }

.stat-strip-item.pink { background-color: var(--adigi-utility-lighter-pink); border-color: var(--adigi-accent-primary); }
.stat-strip-item.pink .num, .stat-strip-item.pink .label { color: var(--adigi-accent-primary); }

.row-card-drawer.workspace {
	background-color: var(--adigi-surface-page);
	border-top-color: var(--adigi-utility-lighter-grey);
}

.legend-bar {
	display: inline-block;
	width: 0.1875rem;
	height: 0.875rem;
	border-radius: 999px;
	margin-right: 0.3125rem;
}

.legend-swatch {
	display: inline-block;
	width: 0.5625rem;
	height: 0.5625rem;
	border-radius: 0.125rem;
	background-color: var(--adigi-surface-page);
	border: 1px solid var(--adigi-border-default);
	margin-right: 0.375rem;
}


/* Triage */

.field {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
}

.field label {
	color: var(--adigi-text-muted);
	font-size: 0.6875rem;
	font-weight: 400;
	letter-spacing: 0.0275rem;
	text-transform: uppercase;
}

.field .field-box {
	background-color: #fff;
	border: 1px solid var(--adigi-border-default);
	border-radius: 0.5rem;
	display: flex;
	align-items: center;
	gap: 0.375rem;
	min-height: 2.0625rem;
	padding: 0.4375rem 0.625rem;
}

.field input[type="number"] {
	border: none;
	font-size: 0.8125rem;
	padding: 0;
	width: 2.5rem;
}

.field input[type="date"] {
	background-color: #fff;
	border: 1px solid var(--adigi-border-default);
	border-radius: 0.5rem;
	font-size: 0.8125rem;
	min-height: 2.0625rem;
	padding: 0.4375rem 0.625rem;
	width: 8.9375rem;
}

.field > .pill {
	display: inline-flex;
	align-items: center;
	min-height: 2.0625rem;
}

.quote-row {
	border-top: 1px solid var(--adigi-utility-lighter-grey);
	padding: 0.75rem 0;
}

.quote-row:first-of-type {
	border-top: none;
	padding-top: 0;
}


/* Week grid */

.week-grid {
	background-color: #fff;
	border: 1px solid var(--adigi-border-default);
	border-radius: 0.75rem;
	overflow: hidden;
}

.week-grid-row {
	display: flex;
	border-top: 1px solid var(--adigi-border-default);
}

.week-grid-row:first-child {
	border-top: none;
	background-color: var(--adigi-surface-page);
}

.week-grid-col {
	border-right: 1px solid var(--adigi-border-default);
	flex: 1 1 0;
	min-width: 0;
	padding: 0.625rem;
}

.week-grid-row > .week-grid-col:last-child {
	border-right: none;
}

.week-grid-col.team {
	flex: 0 0 12.5rem;
}

.week-grid-col.today {
	background-color: var(--adigi-utility-pale-yellow);
}

.mini-track {
	background-color: var(--adigi-utility-lighter-grey);
	border-radius: 999px;
	height: 0.3125rem;
	overflow: hidden;
}

.mini-fill {
	background-color: var(--adigi-accent-secondary);
	border-radius: 999px;
	height: 100%;
}

.mini-fill.over {
	background-color: var(--adigi-status-red);
}

.day-chip {
	background-color: var(--adigi-utility-lighter-grey);
	border-radius: 0.375rem;
	display: flex;
	justify-content: space-between;
	font-size: 0.75rem;
	padding: 0.1875rem 0.4375rem;
}

.assign-btn {
	background: none;
	border: 1px dashed var(--adigi-border-default);
	border-radius: 0.5rem;
	color: var(--adigi-text-muted);
	font-size: 0.75rem;
	padding: 0.3125rem;
	text-align: center;
	width: 100%;
}


/* Needs info (parked cards) */

.parked-card {
	background-color: #fff;
	border: 1px solid var(--adigi-border-default);
	border-radius: 0.875rem;
	padding: 1rem 1.25rem;
}

.flag-box {
	background-color: var(--adigi-surface-page);
	border-radius: 0.625rem;
	display: flex;
	align-items: center;
	gap: 0.75rem;
	padding: 0.625rem 0.75rem;
}


/* Needs attention */

.escalation-banner {
	background-color: var(--adigi-status-red-light);
	border-left: 4px solid var(--adigi-status-red);
	border-radius: 0.875rem;
	display: flex;
	align-items: center;
	gap: 0.875rem;
	min-height: 6.25rem;
	padding: 0.875rem 1.25rem 0.875rem 1rem;
}

.escalation-banner.amber {
	background-color: var(--adigi-status-amber-light);
	border-left-color: var(--adigi-status-amber);
}

.slipped-row {
	background-color: #fff;
	border: 1px solid var(--adigi-border-default);
	border-radius: 0.875rem;
	display: flex;
	align-items: center;
	gap: 0.875rem;
	min-height: 6.25rem;
	padding: 0.75rem 1rem;
}


/* Page title bar + figures + grouped sections (Hosting, Pipeline, Client profiles) */

.titlebar {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 1.5rem;
}

.figure-card {
	background-color: #fff;
	border: 1px solid var(--adigi-border-default);
	border-radius: 0.75rem;
	padding: 0.875rem 1rem;
}

.figure-card .subtitle {
	color: var(--adigi-text-muted);
	display: block;
	font-size: 0.6875rem;
	font-weight: 500;
	letter-spacing: 0.034375rem;
	text-transform: uppercase;
}

.figure-card .num {
	color: var(--adigi-text-primary);
	display: block;
	font-size: 1.625rem;
	font-weight: 500;
}

.figure-card .label {
	color: var(--adigi-text-muted);
	display: block;
	font-size: 0.75rem;
	font-weight: 400;
}

.figure-card.amber {
	border-color: var(--adigi-status-amber);
}

.figure-card.amber .subtitle,
.figure-card.amber .label {
	color: var(--adigi-status-amber);
}

.figure-card.red {
	border-color: var(--adigi-status-red);
}

.figure-card.red .subtitle,
.figure-card.red .label {
	color: var(--adigi-status-red);
}

.grouped-section-heading {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	margin-bottom: 0.5rem;
}

.grouped-section-heading .dot {
	border-radius: 999px;
	flex-shrink: 0;
	height: 0.5rem;
	width: 0.5rem;
}

.grouped-section-heading .label {
	color: var(--tone, var(--adigi-text-primary));
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.0375rem;
	text-transform: uppercase;
}

.row-card__type {
	background-color: var(--adigi-utility-lighter-grey);
	border-radius: 999px;
	color: var(--adigi-text-muted);
	display: inline-flex;
	flex-shrink: 0;
	font-size: 0.75rem;
	font-weight: 500;
	padding: 0.1875rem 0.5625rem;
}

.row-card__type.teal {
	background-color: var(--adigi-utility-lighter-teal);
	color: var(--adigi-accent-secondary);
}

.drawer-fields {
	display: flex;
	flex-direction: column;
	gap: 0.5625rem;
	font-size: 0.75rem;
}

.drawer-fields .field-row {
	display: flex;
	gap: 0.75rem;
}

.drawer-fields .field-label {
	color: var(--adigi-text-muted);
	flex-shrink: 0;
	width: 7.5rem;
}

.row-card-contact {
	flex-shrink: 0;
	width: 18.75rem;
}


/* Pipeline */

.lead-value {
	flex-shrink: 0;
	text-align: right;
	width: 5.375rem;
}

.lead-value .amount {
	display: block;
	font-size: 0.875rem;
}

.lead-value .label {
	color: var(--adigi-text-muted);
	font-size: 0.75rem;
}

.row-card-priority-slot {
	flex-shrink: 0;
	width: 3.25rem;
}

.row-card-due-slot {
	flex-shrink: 0;
	width: 9.375rem;
}

.row-card-action-slot {
	display: flex;
	flex-shrink: 0;
	justify-content: flex-end;
	width: 8.25rem;
}

.row-card-action-slot.sm {
	width: 7.375rem;
}

.row-card-type-slot {
	flex-shrink: 0;
	width: 7rem;
}

.due-chip {
	background-color: var(--adigi-utility-lighter-grey);
	border-radius: 999px;
	color: var(--adigi-text-muted);
	display: inline-flex;
	align-items: center;
	gap: 0.3125rem;
	flex-shrink: 0;
	font-size: 0.75rem;
	font-weight: 500;
	padding: 0.25rem 0.625rem;
	white-space: nowrap;
}

.due-chip.amber { background-color: var(--adigi-status-amber-light); color: var(--adigi-status-amber); }
.due-chip.red { background-color: var(--adigi-status-red-light); color: var(--adigi-status-red); }

.pipeline-board-col {
	display: flex;
	flex-direction: column;
	gap: 0.625rem;
}

.pipeline-board-col-header {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	font-size: 0.75rem;
}

.pipeline-board-col-header .dot {
	border-radius: 999px;
	height: 0.4375rem;
	width: 0.4375rem;
}

.board-card {
	background-color: #fff;
	border: 1px solid var(--adigi-border-default);
	border-left: 3px solid var(--adigi-border-default);
	border-radius: 0.625rem;
	padding: 0.6875rem 0.75rem;
}

.board-dropzone {
	border: 1px dashed var(--adigi-border-default);
	border-radius: 0.625rem;
	color: var(--adigi-text-muted);
	font-size: 0.75rem;
	padding: 1.125rem;
	text-align: center;
}

.board-dropzone.won {
	border-color: var(--adigi-accent-secondary);
	color: var(--adigi-accent-secondary);
}


/* Clients table */

.clients-table-wrap {
	background-color: #fff;
	border: 1px solid var(--adigi-border-default);
	border-radius: 0.75rem;
	overflow-x: auto;
}

.clients-table {
	width: 100%;
	border-collapse: collapse;
	white-space: nowrap;
}

.clients-table th {
	color: var(--adigi-text-muted);
	font-size: 0.75rem;
	font-weight: 500;
	padding: 0.75rem 1.25rem;
	text-align: left;
	border-bottom: 1px solid var(--adigi-border-default);
}

.clients-table td {
	padding: 0.75rem 1.25rem;
	border-bottom: 1px solid var(--adigi-border-default);
	vertical-align: middle;
}

.clients-table tr:last-child td {
	border-bottom: none;
}

.clients-table tr.flagged {
	background-color: #fffbfb;
}

.clients-table td.arrow {
	color: var(--adigi-border-default);
	font-size: 1rem;
	text-align: right;
	width: 2.5rem;
}

.clients-table .pill.teal {
	border: 1px solid var(--adigi-accent-secondary);
}

.health-pill {
	border-radius: 0.375rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 0.75rem;
	font-weight: 500;
	min-width: 1.875rem;
	padding: 0.1875rem 0.5rem;
}

.health-pill.good { background-color: var(--adigi-utility-lighter-teal); color: var(--adigi-accent-secondary); }
.health-pill.fair { background-color: var(--adigi-status-amber-light); color: var(--adigi-status-amber); }
.health-pill.attention { background-color: var(--adigi-status-red-light); color: var(--adigi-status-red); }

.ticket-count-pill {
	background-color: var(--adigi-utility-lighter-grey);
	border-radius: 999px;
	color: var(--adigi-text-muted);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 0.75rem;
	font-weight: 500;
	height: 1.375rem;
	min-width: 1.375rem;
	padding: 0 0.375rem;
}

.usage-track {
	background-color: var(--adigi-utility-lighter-grey);
	border-radius: 999px;
	height: 0.1875rem;
	margin-top: 0.3125rem;
	overflow: hidden;
	width: 4.5rem;
}

.usage-fill {
	background-color: var(--adigi-accent-secondary);
	border-radius: 999px;
	height: 100%;
}

.usage-fill.over { background-color: var(--adigi-status-red); }
.usage-fill.under { background-color: var(--adigi-status-amber); }

.usage-badge {
	border-radius: 999px;
	font-size: 0.625rem;
	font-weight: 500;
	padding: 0.125rem 0.4375rem;
}

.usage-badge.over { background-color: var(--adigi-status-red-light); color: var(--adigi-status-red); }
.usage-badge.under { background-color: var(--adigi-status-amber-light); color: var(--adigi-status-amber); }

.month-nav {
	background-color: #fff;
	border: 1px solid var(--adigi-border-default);
	border-radius: 0.5rem;
	display: flex;
	align-items: center;
}

.month-nav-btn {
	background: none;
	border: none;
	color: var(--adigi-text-muted);
	padding: 0.375rem 0.625rem;
}

.month-nav-btn:hover {
	color: var(--adigi-text-primary);
}

.month-nav-label {
	border-left: 1px solid var(--adigi-utility-lighter-grey);
	border-right: 1px solid var(--adigi-utility-lighter-grey);
	padding: 0.375rem 0.625rem;
	white-space: nowrap;
}

.sort-select {
	background-color: #fff;
	border: 1px solid var(--adigi-border-default);
	border-radius: 0.5rem;
	color: var(--adigi-text-muted);
	display: inline-flex;
	align-items: center;
	justify-content: space-between;
	gap: 1.5rem;
	font-size: 0.8125rem;
	padding: 0.375rem 0.625rem;
}


/* Ticket detail */

.ticket-card {
	background-color: #fff;
	border: 1px solid var(--adigi-border-default);
	border-radius: 0.875rem;
	padding: 1.25rem;
}

.mini-avatar {
	background-color: #E0EEEE;
	border: 1px solid #B8DEDE;
	border-radius: 999px;
	color: var(--adigi-accent-secondary);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	font-size: 0.625rem;
	font-weight: 500;
	height: 1.75rem;
	width: 1.75rem;
}

.ticket-client-header {
	border-bottom: 1px solid var(--adigi-utility-lighter-grey);
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	padding: 1rem 1.25rem 0.875rem;
}

.ticket-client-header .name {
	color: var(--adigi-text-primary);
	font-size: 0.8125rem;
	font-weight: 700;
}

.client-mark {
	align-items: center;
	background-color: var(--adigi-core-black);
	border-radius: 0.375rem;
	color: var(--adigi-text-on-dark);
	display: inline-flex;
	flex-shrink: 0;
	font-size: 0.8125rem;
	font-weight: 700;
	height: 1.75rem;
	justify-content: center;
	width: 1.75rem;
}

.priority-chip {
	border-radius: 0.375rem;
	display: inline-flex;
	align-items: center;
	font-size: 0.6875rem;
	font-weight: 700;
	padding: 0.25rem 0.5rem;
	white-space: nowrap;
}

.priority-chip.red { background-color: var(--adigi-status-red-light); color: var(--adigi-status-red); }
.priority-chip.amber { background-color: var(--adigi-status-amber-light); color: var(--adigi-status-amber); }
.priority-chip.grey { background-color: var(--adigi-utility-lighter-grey); color: var(--adigi-text-muted); }

.audit-log {
	position: relative;
}

.audit-log .audit-line {
	background-color: var(--adigi-utility-lighter-grey);
	bottom: 0.75rem;
	left: 0.3125rem;
	position: absolute;
	top: 0.25rem;
	width: 1px;
}

.audit-row {
	display: flex;
	gap: 0.875rem;
	padding: 0 0 0.75rem;
	position: relative;
}

.audit-row:last-child {
	padding-bottom: 0;
}

.audit-row .node {
	background-color: #fff;
	border: 1px solid var(--adigi-border-default);
	border-radius: 50%;
	flex-shrink: 0;
	height: 0.6875rem;
	margin-top: 0.1875rem;
	position: relative;
	width: 0.6875rem;
	z-index: 1;
}

.attachment-row {
	background-color: var(--adigi-surface-page);
	border: 1px solid var(--adigi-utility-lighter-grey);
	border-radius: 0.5rem;
	display: flex;
	align-items: center;
	gap: 0.625rem;
	padding: 0.5rem 0.625rem;
}

.ticket-comment {
	display: flex;
	gap: 0.75rem;
	padding: 0.875rem 0;
	border-top: 1px solid var(--adigi-utility-lighter-grey);
}

.ticket-comment:first-child {
	border-top: none;
	padding-top: 0;
}

.ticket-comment.client {
	background-color: #F4FBFB;
	border: 1px solid #CCE8E8;
	border-radius: 0.625rem;
	padding: 0.625rem 0.75rem;
	margin: 0.4375rem 0;
}

.ticket-comment.client:first-child {
	margin-top: 0;
}

/* Ticket brief card: Brief, then Team note / Files / Links only once they have
   something in them; anything still empty is a quiet add at the foot (Sam, 6 Nov 2026) */
.cb-head { display: flex; justify-content: space-between; align-items: center; gap: 1rem; margin-bottom: 0.5rem; min-height: 1.5rem; }
.cb-eyebrow { font-size: 0.75rem; font-weight: 500; text-transform: uppercase; letter-spacing: 0.04em; color: var(--adigi-text-muted); }
.cb-eyebrow-note { text-transform: none; letter-spacing: 0; font-weight: 400; }
.cb-add {
	border: 0; background: none; padding: 0; flex-shrink: 0;
	font-size: 0.75rem; font-weight: 500; color: var(--adigi-text-muted);
	text-decoration: underline; text-underline-offset: 0.2em; text-decoration-color: var(--adigi-border-default);
}
.cb-add:hover { color: var(--adigi-text-primary); text-decoration-color: currentColor; }
.cb-add:focus-visible, .cb-add-chip:focus-visible { outline: 2px solid var(--adigi-text-primary); outline-offset: 2px; border-radius: 0.25rem; }
.cb-section { margin-top: 1rem; padding-top: 0.875rem; border-top: 1px solid var(--adigi-utility-lighter-grey); }
.cb-adds { display: flex; flex-wrap: wrap; gap: 0.5rem; margin-top: 1rem; padding-top: 0.875rem; border-top: 1px solid var(--adigi-utility-lighter-grey); }
.cb-add-chip {
	border: 1px dashed var(--adigi-border-default); border-radius: 999px; background: none;
	padding: 0.25rem 0.75rem; font-size: 0.75rem; font-weight: 500; color: var(--adigi-text-muted);
}
.cb-add-chip:hover { border-style: solid; color: var(--adigi-text-primary); }

/* Edit / Delete on your own activity: quiet until you need them */
/* Hidden until you hover the reply (or tab to them); always shown on touch screens */
.comment-own-actions { margin-left: auto; display: inline-flex; gap: 0; opacity: 0; transition: opacity 0.12s ease; }
.ticket-comment:hover .comment-own-actions,
.ticket-comment:focus-within .comment-own-actions { opacity: 1; }
@media (hover: none) { .comment-own-actions { opacity: 1; } }
.comment-action {
	display: inline-flex; align-items: center; justify-content: center;
	width: 1.375rem; height: 1.375rem; border: 0; border-radius: 0.3125rem; background: none; padding: 0;
	color: var(--adigi-text-muted); opacity: 0.7; /* still 3:1+ on the amber tint (WCAG non-text) */
}
.comment-action:hover { color: var(--adigi-text-primary); opacity: 1; background: color-mix(in srgb, var(--adigi-text-primary) 6%, transparent); }
.comment-action:focus-visible { opacity: 1; }
.comment-action:focus-visible { outline: 2px solid var(--adigi-text-primary); outline-offset: 2px; }
.comment-action.is-danger:hover { color: var(--adigi-status-red); }
.comment-edit { margin-top: 0.375rem; }
.comment-edit .adigi-editor { min-height: 4rem; }
.comment-edit-row { display: flex; gap: 0.5rem; align-items: center; flex-wrap: wrap; margin-top: 0.5rem; }
.comment-edit-note { font-size: 0.75rem; color: var(--adigi-text-muted); margin: 0; }
/* Team-only activity: quiet grey with a dark edge (Sam, 10 Nov 2026), padded both
   sides so Edit / Delete clear the edge. Orange is kept for blockers only. */
.ticket-comment.is-internal {
	border-left: 3px solid var(--adigi-text-muted);
	padding-left: 0.75rem;
	padding-right: 0.875rem;
	margin-left: 0.25rem;
	background: var(--adigi-utility-lighter-grey);
	border-radius: 0.5rem;
}
.comment-badge.is-internal { display: inline-flex; align-items: center; gap: 0.25rem; background: none; padding-left: 0; padding-right: 0; color: var(--adigi-text-muted); font-weight: 400; }
/* A blocker: a question still waiting on someone, a teammate or the client */
.ticket-comment.is-blocker {
	border-left: 3px solid var(--adigi-status-amber);
	padding-left: 0.75rem;
	padding-right: 0.875rem;
	margin-left: 0.25rem;
	background: var(--adigi-status-amber-light);
	border-radius: 0.5rem;
}

/* An answer: indented under its question, on its own light-teal card with an elbow
   joining it to the question, so it reads as a reply at a glance */
.comment-group { position: relative; }
/* Each group starts with its own comment, so undo the card's first-child trim there */
.comment-group > .ticket-comment:first-child { padding-top: 0.875rem; border-top: 1px solid var(--adigi-utility-lighter-grey); }
.comment-group > .ticket-comment.is-internal:first-child { border-top: 0; }
.comment-group + .comment-group { margin-top: 0.5rem; }
.ticket-card > .comment-group:first-of-type { margin-top: 0.75rem; }
.ticket-card > .comment-group:first-of-type > .ticket-comment:not(.is-internal):not(.client) { border-top: 0; padding-top: 0; }
.ticket-comment.is-answer {
	position: relative;
	margin: 0.5rem 0 0 2.75rem;
	padding: 0.75rem 0.875rem;
	border: 1px solid color-mix(in srgb, var(--adigi-accent-secondary) 30%, transparent);
	border-radius: 0.625rem;
	background: color-mix(in srgb, var(--adigi-accent-secondary) 7%, #fff);
}
.ticket-comment.is-answer::before {
	content: ''; position: absolute; left: -1.75rem; top: -0.5rem; width: 1.375rem; height: 1.75rem;
	border-left: 1.5px solid var(--adigi-border-default); border-bottom: 1.5px solid var(--adigi-border-default);
	border-bottom-left-radius: 0.5rem;
}
.comment-badge.is-answer { background: color-mix(in srgb, var(--adigi-accent-secondary) 22%, #fff); color: var(--adigi-text-primary); }

/* A plain reply (Sam, 10 Nov 2026): indented with the same elbow, no card or tint */
.ticket-comment.is-reply { position: relative; margin: 0.5rem 0 0 2.75rem; padding: 0.25rem 0 0.25rem 0; border: 0; background: none; }
.ticket-comment.is-reply::before {
	content: ''; position: absolute; left: -1.75rem; top: -0.5rem; width: 1.375rem; height: 1.75rem;
	border-left: 1.5px solid var(--adigi-border-default); border-bottom: 1.5px solid var(--adigi-border-default);
	border-bottom-left-radius: 0.5rem;
}
.comment-reply-link { border: 0; background: none; padding: 0; font: inherit; font-size: 0.75rem; color: var(--adigi-text-muted); text-decoration: underline; text-underline-offset: 0.2em; cursor: pointer; opacity: 0; transition: opacity 0.12s ease; }
.ticket-comment:hover .comment-reply-link, .comment-reply-link:focus-visible { opacity: 1; }
.comment-reply-link:hover { color: var(--adigi-text-primary); }
@media (hover: none) { .comment-reply-link { opacity: 1; } }
.comment-reply-box { margin: 0.5rem 0 0 2.75rem; }
/* A team-only answer: the same quiet grey as team notes, not the light-teal card
   (teal read as client-visible, Sam 10 Nov 2026) */
.ticket-comment.is-answer.is-internal { border: 0; border-left: 3px solid var(--adigi-text-muted); background: var(--adigi-utility-lighter-grey); border-radius: 0.5rem; padding: 0.625rem 0.875rem 0.625rem 0.75rem; margin: 0.5rem 0 0 2.75rem; }
/* A team-only reply: the same quiet grey as the note it answers */
.ticket-comment.is-reply.is-internal { padding: 0.625rem 0.875rem 0.625rem 0.75rem; background: var(--adigi-utility-lighter-grey); border-left: 3px solid var(--adigi-text-muted); border-radius: 0.5rem; }
/* Ask for something: who from, above the reply box */
.comment-ask-who { display: flex; align-items: center; gap: 0.5rem; flex-wrap: wrap; margin-bottom: 0.5rem; }
.comment-ask-who .form-select { width: auto; min-width: 12rem; }

/* Where a question stands: waiting (amber, as Needs discussion) or answered (light teal) */
.comment-status { display: inline-flex; align-items: center; padding: 0.0625rem 0.5rem; border-radius: 999px; font-size: 0.6875rem; font-weight: 500; color: var(--adigi-text-primary); }
.comment-status.is-waiting { border: 1px solid var(--adigi-status-amber); background: color-mix(in srgb, var(--adigi-status-amber) 14%, #fff); }
.comment-status.is-answered { background: color-mix(in srgb, var(--adigi-accent-secondary) 22%, #fff); }
.comment-input.is-internal { border-color: var(--adigi-text-muted); background: var(--adigi-utility-lighter-grey); }
.comment-confirm { display: flex; gap: 0.5rem; align-items: center; flex-wrap: wrap; margin-top: 0.5rem; font-size: 0.8125rem; }

/* HTML body rendered from Monday.com imports */
.comment-body p { margin: 0 0 0.5rem; font-size: 0.875rem; }
.comment-body p:last-child { margin-bottom: 0; }
.comment-body a[data-mention-user-id] {
	background: color-mix(in srgb, var(--adigi-accent-primary) 12%, transparent);
	border-radius: 0.2rem;
	color: var(--adigi-accent-primary);
	font-weight: 500;
	padding: 0 0.2em;
	text-decoration: none;
}

.comment-badge {
	background-color: #E0EEEE;
	border-radius: 0.25rem;
	color: var(--adigi-accent-secondary);
	font-size: 0.625rem;
	font-weight: 500;
	padding: 0.0625rem 0.4375rem;
}

.comment-badge.latest {
	background-color: var(--adigi-utility-lighter-teal);
	border-radius: 999px;
}

.timelogged-entry {
	border-top: 1px solid var(--adigi-utility-lighter-grey);
	padding: 0.625rem 0;
}

.timelogged-entry:first-child {
	border-top: none;
	padding-top: 0;
}

.ticket-detail-row {
	border-top: 1px solid var(--adigi-utility-lighter-grey);
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.3125rem;
	padding: 0.875rem 0 0;
}

.ticket-detail-row:first-child {
	border-top: none;
	padding-top: 0;
}

.ticket-detail-row .label {
	color: var(--adigi-text-muted);
	font-size: 0.6875rem;
	font-weight: 500;
	letter-spacing: 0.0275rem;
	line-height: 1.5;
	text-transform: uppercase;
}

.ticket-detail-row .value {
	color: var(--adigi-text-primary);
	font-size: 0.8125rem;
	line-height: 1.5;
	text-align: left;
}

.cost-input {
	border: 1px solid var(--adigi-border-default);
	border-radius: 0.5rem;
	display: inline-flex;
	align-items: center;
	gap: 0.1875rem;
	padding: 0.375rem 0.625rem;
	max-width: 10rem;
	width: 100%;
	font-size: 0.8125rem;
}

.cost-input input {
	border: none;
	outline: none;
	flex: 1 1 auto;
	min-width: 0;
	font-size: 0.8125rem;
	text-align: left;
}

.subticket-row {
	border-top: 1px solid var(--adigi-utility-lighter-grey);
	display: flex;
	align-items: center;
	gap: 0.625rem;
	padding: 0.5rem 0;
}

.subticket-row:first-child {
	border-top: none;
	padding-top: 0;
}

.subticket-row .tag {
	background-color: var(--adigi-utility-lighter-grey);
	border-radius: 0.25rem;
	color: var(--adigi-text-muted);
	flex-shrink: 0;
	font-size: 0.625rem;
	padding: 0.125rem 0.375rem;
}

.related-ticket-row {
	border-top: 1px solid var(--adigi-utility-lighter-grey);
	display: block;
	padding: 0.625rem 0;
}

.related-ticket-row:first-child {
	border-top: none;
	padding-top: 0;
}


/* Invoicing */

.invoice-avatar {
	background-color: var(--adigi-core-black);
	border-radius: 0.375rem;
	color: var(--adigi-text-on-dark);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	font-size: 0.625rem;
	font-weight: 700;
	height: 1.75rem;
	width: 1.75rem;
	margin-right: 0.625rem;
}

.invoice-avatar.teal {
	background-color: var(--adigi-accent-secondary);
}

.invoice-avatar.blue {
	background-color: #3d5a99;
}

.invoice-avatar.olive {
	background-color: #6b7c4e;
}

.invoice-avatar.brown {
	background-color: #7c5c3a;
}

.invoice-avatar.dark-green {
	background-color: #2e4a35;
}

.invoice-avatar.purple {
	background-color: #5a4073;
}

.renewal-soon {
	background-color: var(--adigi-status-amber-light);
	border-radius: 999px;
	color: var(--adigi-status-amber);
	display: inline-flex;
	align-items: center;
	flex-shrink: 0;
	font-size: 0.625rem;
	font-weight: 500;
	padding: 0.125rem 0.4375rem;
}

.renewal-progress-track {
	background-color: var(--adigi-utility-lighter-grey);
	border-radius: 99px;
	height: 0.25rem;
	margin-top: 0.3125rem;
	overflow: hidden;
	width: 4rem;
}

.renewal-progress-fill {
	background-color: var(--adigi-accent-secondary);
	border-radius: 99px;
	height: 100%;
}

.renewal-progress-fill.amber {
	background-color: var(--adigi-status-amber);
}

.pill .dot {
	background-color: currentColor;
	border-radius: 50%;
	display: inline-block;
	flex-shrink: 0;
	height: 0.375rem;
	margin-right: 0.3125rem;
	width: 0.375rem;
}

.tab-switcher {
	background-color: var(--adigi-core-white);
	border: 1px solid var(--adigi-border-default);
	border-radius: 0.75rem;
	display: inline-flex;
	gap: 0.25rem;
	padding: 0.25rem;
}

.tab-switcher a {
	border: 1px solid transparent;
	border-radius: 0.5625rem;
	color: var(--adigi-text-muted);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 0.8125rem;
	font-weight: 400;
	padding: 0.4375rem 1rem;
}

.tab-switcher a.active {
	background-color: var(--adigi-surface-page);
	border-color: var(--adigi-border-default);
	color: var(--adigi-text-primary);
	font-weight: 500;
}


/* Time tracking */

.month-switcher {
	align-items: stretch;
	background-color: var(--adigi-core-white);
	border: 1px solid var(--adigi-border-default);
	border-radius: 0.5rem;
	display: inline-flex;
	overflow: hidden;
}

.month-switcher button {
	background: none;
	border: none;
	color: var(--adigi-text-muted);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.5rem 0.75rem;
}

.month-switcher-current {
	align-items: center;
	border-left: 1px solid #e8e9e4;
	border-right: 1px solid #e8e9e4;
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-width: 8rem;
	padding: 0.5rem 1rem;
}

.month-switcher-current .month {
	color: var(--adigi-text-primary);
	font-size: 0.875rem;
	font-weight: 500;
}

.month-switcher-current .sub {
	color: var(--adigi-accent-secondary);
	font-size: 0.625rem;
	font-weight: 500;
}

.winners-grid {
	display: flex;
	gap: 0.25rem;
	padding-top: 0.875rem;
}

.winner-month {
	align-items: center;
	border: 1px solid transparent;
	border-radius: 0.625rem;
	display: flex;
	flex-direction: column;
	gap: 0.375rem;
	min-width: 3.625rem;
	padding: 0.5rem 0.625rem;
}

.winner-month .avatar-wrap {
	position: relative;
}

.winner-month .avatar-wrap img {
	height: 1.875rem;
	width: 1.875rem;
}

.winner-month .avatar-placeholder {
	background-color: var(--adigi-utility-lighter-grey);
	border-radius: 50%;
	height: 1.875rem;
	width: 1.875rem;
}

.winner-month .month {
	color: #717173;
	font-size: 0.6875rem;
}

.winner-month .name {
	color: var(--adigi-text-muted);
	font-size: 0.625rem;
	font-weight: 500;
}

.winner-month.live {
	background-color: #f9faf5;
	border-color: var(--adigi-border-default);
}

.winner-month.live .month {
	color: var(--adigi-text-primary);
	font-weight: 500;
}

.winner-month.live .name {
	color: var(--adigi-accent-secondary);
	font-style: italic;
}

.winner-month.live .avatar-wrap::after {
	background-color: var(--adigi-core-yellow);
	border: 2px solid #fff;
	border-radius: 50%;
	bottom: 0;
	content: "";
	height: 0.5625rem;
	position: absolute;
	right: 0;
	width: 0.5625rem;
}

.winner-month.future {
	opacity: 0.3;
}

.member-leaderboard {
	background-color: #fff;
	border: 1px solid var(--adigi-border-default);
	border-radius: 0.875rem;
	overflow: hidden;
}

.member-leaderboard-header {
	align-items: center;
	background-color: #f9faf5;
	border-bottom: 1px solid #e8e9e4;
	display: flex;
	justify-content: space-between;
	padding: 0.6875rem 1rem;
}

.member-leaderboard-header span {
	color: var(--adigi-text-muted);
	font-size: 0.6875rem;
	font-weight: 500;
	letter-spacing: 0.034375rem;
	text-transform: uppercase;
}

.leaderboard-member-row {
	align-items: center;
	border-bottom: 1px solid var(--adigi-utility-lighter-grey);
	border-left: 3px solid transparent;
	display: flex;
	gap: 0.75rem;
	padding: 0.75rem 1rem;
}

.leaderboard-member-row:last-child {
	border-bottom: none;
}

.leaderboard-member-row.rank-1 {
	background-color: #f9faf5;
	border-left-color: var(--adigi-accent-secondary);
}

.leaderboard-member-row img.avatar {
	height: 2.125rem;
	width: 2.125rem;
}

.rank-badge {
	align-items: center;
	border-radius: 0.5rem;
	display: inline-flex;
	flex-shrink: 0;
	font-size: 0.75rem;
	font-weight: 700;
	height: 1.875rem;
	justify-content: center;
	width: 1.875rem;
}

.rank-badge.gold, .rank-badge.silver, .rank-badge.bronze {
	font-size: 0.9375rem;
}

.rank-badge.gold {
	background-color: var(--adigi-core-yellow);
	color: #5a6800;
}

.rank-badge.silver {
	background-color: #e8e9e4;
	color: var(--adigi-text-muted);
}

.rank-badge.bronze {
	background-color: var(--adigi-status-amber-light);
	color: var(--adigi-status-amber);
}

.rank-badge.plain {
	background-color: var(--adigi-utility-lighter-grey);
	color: #717173;
}

.leaderboard-member-row .name {
	color: var(--adigi-text-primary);
	font-size: 0.875rem;
	font-weight: 500;
}

.leaderboard-member-row .client-tag {
	background-color: var(--adigi-utility-lighter-grey);
	border-radius: 999px;
	color: var(--adigi-text-muted);
	font-size: 0.6875rem;
	font-weight: 500;
	padding: 0.0625rem 0.4375rem;
}

.leaderboard-member-row .most-time {
	color: #717173;
	font-size: 0.6875rem;
	font-weight: 500;
}

.leaderboard-member-row .hrs-value {
	color: var(--adigi-text-primary);
	font-size: 1.25rem;
	font-weight: 700;
	text-align: right;
}

.leaderboard-member-row .hrs-label {
	color: #717173;
	font-size: 0.6875rem;
	text-align: right;
}

.time-tracking-profile {
	align-items: center;
	border-bottom: 1px solid var(--adigi-utility-lighter-grey);
	display: flex;
	gap: 0.875rem;
	padding: 1.25rem;
}

.time-tracking-profile img {
	border-radius: 50%;
	height: 2.75rem;
	width: 2.75rem;
}

.time-tracking-profile .role {
	color: var(--adigi-text-muted);
	font-size: 0.8125rem;
}

.time-tracking-profile .meta {
	color: var(--adigi-text-muted);
	font-size: 0.75rem;
}

.section-subtitle {
	color: var(--adigi-text-muted);
	display: block;
	font-size: 0.6875rem;
	font-weight: 500;
	letter-spacing: 0.04125rem;
	text-transform: uppercase;
}

.donut-chart {
	border-radius: 50%;
	flex-shrink: 0;
	height: 8.125rem;
	position: relative;
	width: 8.125rem;
}

.donut-chart::after {
	background-color: #fff;
	border-radius: 50%;
	content: "";
	height: 60%;
	left: 20%;
	position: absolute;
	top: 20%;
	width: 60%;
}

.time-breakdown-legend {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	gap: 0.4375rem;
}

.time-breakdown-legend-row {
	align-items: center;
	display: flex;
	gap: 0.5rem;
}

.time-breakdown-legend-row .swatch {
	border-radius: 0.125rem;
	flex-shrink: 0;
	height: 0.5rem;
	width: 0.5rem;
}

.time-breakdown-legend-row .cat {
	color: var(--adigi-text-muted);
	flex: 1 1 auto;
	font-size: 0.75rem;
}

.time-breakdown-legend-row .hrs {
	color: var(--adigi-text-primary);
	font-size: 0.75rem;
	font-weight: 500;
}

.time-breakdown-legend-row .pct {
	color: #717173;
	font-size: 0.6875rem;
	min-width: 1.875rem;
	text-align: right;
}

.capacity-widget-row {
	align-items: baseline;
	display: flex;
	justify-content: space-between;
}

.capacity-widget-row .label {
	color: var(--adigi-text-muted);
	font-size: 0.8125rem;
}

.capacity-widget-row .value {
	color: var(--adigi-text-primary);
	font-size: 1.375rem;
	font-weight: 700;
}

.capacity-widget-row .value .of {
	color: #717173;
	font-size: 0.8125rem;
	font-weight: 400;
}

.capacity-dual-track {
	background-color: var(--adigi-utility-lighter-grey);
	border-radius: 999px;
	height: 0.5rem;
	margin-top: 0.5rem;
	overflow: hidden;
	position: relative;
}

.capacity-dual-track .expected-fill, .capacity-dual-track .actual-fill {
	border-radius: 999px;
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
}

.capacity-dual-track .expected-fill {
	background-color: #e8e9e4;
}

.capacity-dual-track .actual-fill {
	background-color: var(--adigi-accent-secondary);
}

.capacity-widget-footer {
	display: flex;
	justify-content: space-between;
	margin-top: 0.5rem;
}

.capacity-widget-footer span {
	color: #717173;
	font-size: 0.6875rem;
}

.capacity-widget-footer .ahead {
	color: var(--adigi-accent-secondary);
	font-weight: 500;
}


/* Media Queries */

/* 1200px */
@media (max-width: 1199.98px) {
	.main {margin-left: 12rem;}
	.sidebar {width: 12rem;}
}

/* 960px */
@media (max-width: 959.98px) {
	:is(.announcement-bar,.topbar,.header,.inner) {padding-left: 1rem; padding-right: 1rem;}
	.main {margin-left: 0;}
}

/* 480px */
@media (max-width: 479.98px) {
	.row {margin-left: -0.25rem;margin-right: -0.25rem;}
	.row > * {margin-bottom: 0.5rem;padding-left: 0.25rem;padding-right: 0.25rem;}
	.form-control.form-control-search {min-width: 0;}
}
/* Client sidebar icons drawn with <Icon> (CSS mask) rather than inline SVG */
.sidebar-items > a .sidebar-mask {
	display: inline-flex;
	justify-content: center;
	margin-right: 0.625rem;
	width: 1.5rem;
}

.sidebar-items .active .sidebar-mask {
	color: var(--adigi-accent-primary);
}
