/* Agency OS 1.2.4 - canonical design stylesheet. Do not add component styling inline. */

/* ===== tokens.css ===== */
/* Agency OS 1.0 design tokens. Theme/site colors may override --wp--preset--color--primary. */
.agency-os-frontend{
 --os-accent:var(--wp--preset--color--primary,var(--ao-yellow,#f3df18));
 --os-bg:var(--ao-bg,#050505);--os-surface:var(--ao-card,#111214);--os-surface-2:var(--ao-card2,#18191b);
 --os-text:var(--ao-text,#fff);--os-muted:var(--ao-muted,#aaa);--os-control:#242527;
 --os-radius:16px;--os-radius-sm:12px;--os-control-h:54px;--os-gap:16px;--os-pad:18px;
 --os-font:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
 font-family:var(--os-font)!important;
}

/* ===== components.css ===== */
/* One visual contract per component. Module CSS must not redefine geometry on interaction. */
.agency-os-frontend :where(button,.aof-btn,.agency-btn,input,select,textarea){font-family:var(--os-font)!important;box-sizing:border-box}
.agency-os-frontend :where(input:not([type=checkbox]):not([type=radio]),select,textarea){background:var(--os-control)!important;color:var(--os-text)!important;border:0!important;outline:0!important;box-shadow:none!important;border-radius:var(--os-radius-sm)!important;min-height:var(--os-control-h);padding:0 16px!important}
.agency-os-frontend textarea{padding:14px 16px!important;min-height:110px}
.agency-os-frontend :where(.aof-btn,.agency-btn,button:not(.aof-v3-side-toggle)){min-height:var(--os-control-h);border:0!important;outline:0!important;box-shadow:none!important;border-radius:var(--os-radius-sm)!important;transform:none!important}
.agency-os-frontend :where(a,button,.aof-btn,.agency-btn):hover,.agency-os-frontend :where(a,button,.aof-btn,.agency-btn):focus{transform:none!important;text-decoration:none!important}
.agency-os-frontend :where(.aof-panel,.aof-card,.aof-widget){border:0!important;outline:0!important;box-shadow:none!important}
.agency-os-frontend :where(.aof-icon-btn,.aof-utility-icon,[data-aof-theme],[data-aos-dashboard-tools]){width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;aspect-ratio:1/1!important;border-radius:50%!important;padding:0!important}


/* 1.0.2: explicit contrast for AJAX search results. Never inherit generic button text colors. */
.agency-os-frontend .aof-hybrid-search-results .aof-job-suggestion,
.agency-os-frontend .aof-job-suggestions .aof-job-suggestion{
  display:block!important;width:100%!important;min-height:0!important;
  padding:12px 14px!important;margin:0!important;text-align:left!important;
  background:var(--os-surface-2)!important;color:var(--os-text)!important;
  -webkit-text-fill-color:var(--os-text)!important;border:0!important;outline:0!important;
  border-radius:12px!important;box-shadow:none!important;transform:none!important;
  font-family:var(--os-font)!important;font-size:14px!important;font-weight:700!important;line-height:1.25!important;
}
.agency-os-frontend .aof-hybrid-search-results .aof-job-suggestion :is(strong,small),
.agency-os-frontend .aof-job-suggestions .aof-job-suggestion :is(strong,small){
  color:inherit!important;-webkit-text-fill-color:inherit!important;font-family:inherit!important;
}
.agency-os-frontend .aof-hybrid-search-results .aof-job-suggestion small,
.agency-os-frontend .aof-job-suggestions .aof-job-suggestion small{opacity:.68!important;font-size:12px!important;font-weight:600!important;margin-top:3px!important}
.agency-os-frontend .aof-hybrid-search-results .aof-job-suggestion:is(:hover,:focus,:active),
.agency-os-frontend .aof-job-suggestions .aof-job-suggestion:is(:hover,:focus,:active){
  background:var(--os-accent)!important;color:#111!important;-webkit-text-fill-color:#111!important;
  transform:none!important;font-size:14px!important;font-weight:700!important;padding:12px 14px!important;
}

/* 1.0.2 privacy mode: v3/hybrid dashboard was not covered by legacy privacy selectors. */
.agency-os-frontend.privacy-mode .aof-hybrid-main [data-widget],
body.aof-privacy-mode .agency-os-frontend .aof-hybrid-main [data-widget]{
  filter:blur(7px)!important;user-select:none!important;transition:filter .16s ease!important;
}
.agency-os-frontend.privacy-mode .aof-hybrid-main [data-widget] *,
body.aof-privacy-mode .agency-os-frontend .aof-hybrid-main [data-widget] *{pointer-events:none!important}
.agency-os-frontend .aof-privacy-toggle.is-on,
.agency-os-frontend [data-aof-privacy].is-on{background:var(--os-accent)!important;color:#111!important;-webkit-text-fill-color:#111!important}


/* 1.0.4 interaction + task page contract */
/* Search result contrast: covers both the modular search renderer and the legacy inline renderer. */
.agency-os-frontend .aof-hybrid-search-results button,
.agency-os-frontend .aof-job-suggestions button{
  color:var(--os-text)!important;-webkit-text-fill-color:var(--os-text)!important;
  background:var(--os-surface-2)!important;
}
.agency-os-frontend .aof-hybrid-search-results button :is(strong,small),
.agency-os-frontend .aof-job-suggestions button :is(strong,small){color:inherit!important;-webkit-text-fill-color:inherit!important}
.agency-os-frontend .aof-hybrid-search-results button:is(:hover,:focus,:active,.is-active,.is-selected,[aria-selected="true"]),
.agency-os-frontend .aof-job-suggestions button:is(:hover,:focus,:active,.is-active,.is-selected,[aria-selected="true"]){
  background:var(--os-accent)!important;color:#111!important;-webkit-text-fill-color:#111!important;
}
.agency-os-frontend .aof-hybrid-search-results button:is(:hover,:focus,:active,.is-active,.is-selected,[aria-selected="true"]) *,
.agency-os-frontend .aof-job-suggestions button:is(:hover,:focus,:active,.is-active,.is-selected,[aria-selected="true"]) *{color:#111!important;-webkit-text-fill-color:#111!important}

/* Privacy mode also covers planner activity teaser/dialog and task sidebar. */
.agency-os-frontend.privacy-mode :is(.aof-planner-activity-teaser,.aof-planner-activity-dialog,.aof-tasks-main,.aof-tasks-aside),
body.aof-privacy-mode .agency-os-frontend :is(.aof-planner-activity-teaser,.aof-planner-activity-dialog,.aof-tasks-main,.aof-tasks-aside){
  filter:blur(7px)!important;user-select:none!important;transition:filter .16s ease!important;
}
.agency-os-frontend.privacy-mode :is(.aof-planner-activity-teaser,.aof-planner-activity-dialog,.aof-tasks-main,.aof-tasks-aside) *,
body.aof-privacy-mode .agency-os-frontend :is(.aof-planner-activity-teaser,.aof-planner-activity-dialog,.aof-tasks-main,.aof-tasks-aside) *{pointer-events:none!important}

.agency-os-frontend .aof-tasks-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:20px;align-items:start}
.agency-os-frontend .aof-tasks-main,.agency-os-frontend .aof-tasks-aside{display:grid;gap:20px;min-width:0}
.agency-os-frontend .aof-task-page-list>.aof-row{background:var(--os-surface-2);border-radius:var(--os-radius-sm);padding:14px 16px;gap:14px;align-items:center}
.agency-os-frontend .aof-task-side-card{padding:18px!important}
.agency-os-frontend .aof-task-side-value{font-size:42px;line-height:1;font-weight:800;margin:10px 0 4px;color:var(--os-text)}
.agency-os-frontend .aof-mini-list{display:grid;gap:8px;margin-top:12px}
.agency-os-frontend .aof-mini-job{display:grid;gap:3px;padding:11px 12px;border-radius:12px;background:var(--os-surface-2);color:var(--os-text)!important;-webkit-text-fill-color:var(--os-text)!important;text-decoration:none!important}
.agency-os-frontend .aof-mini-job strong{font-size:13px!important;line-height:1.25!important;color:inherit!important}
.agency-os-frontend .aof-mini-job small,.agency-os-frontend .aof-mini-job span{font-size:11px!important;line-height:1.35!important;color:var(--os-muted)!important;-webkit-text-fill-color:var(--os-muted)!important}
.agency-os-frontend .aof-mini-job:hover{background:var(--os-control)!important;transform:none!important}
.agency-os-frontend .aof-mini-job.is-overdue{background:color-mix(in srgb,#ff5b67 14%,var(--os-surface-2));}
.agency-os-frontend .aof-mini-job.is-overdue strong{color:#ff7a84!important;-webkit-text-fill-color:#ff7a84!important}
.agency-os-frontend .aof-danger-badge{background:#ff6b76!important;color:#111!important;-webkit-text-fill-color:#111!important}
@media(max-width:1100px){.agency-os-frontend .aof-tasks-layout{grid-template-columns:1fr}.agency-os-frontend .aof-tasks-aside{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.agency-os-frontend .aof-tasks-aside{grid-template-columns:1fr}}


/* 1.0.7 global form contract: selects must be visually identifiable and match every other control. */
.agency-os-frontend select{
  -webkit-appearance:none!important;appearance:none!important;
  height:var(--os-control-h)!important;min-height:var(--os-control-h)!important;
  padding:0 46px 0 16px!important;
  background-color:var(--os-control)!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3C/svg%3E")!important;
  background-repeat:no-repeat!important;background-position:right 16px center!important;background-size:16px!important;
  border-radius:var(--os-radius-sm)!important;color:var(--os-text)!important;-webkit-text-fill-color:var(--os-text)!important;
}
.agency-os-frontend select:is(:hover,:focus,:active){
  height:var(--os-control-h)!important;min-height:var(--os-control-h)!important;padding:0 46px 0 16px!important;
  background-color:color-mix(in srgb,var(--os-control) 88%,white)!important;
  font-family:var(--os-font)!important;font-size:inherit!important;font-weight:inherit!important;transform:none!important;
}
.agency-os-frontend select option{background:var(--os-surface-2)!important;color:var(--os-text)!important;-webkit-text-fill-color:var(--os-text)!important}

/* 1.0.11 interaction, forms and time-tracking layout */
/* Hover is color-only: never change geometry of cards/list rows/controls. */
.agency-os-frontend :is(.aof-row,.aof-panel,.aof-mini-job,.aof-task-page-list>.aof-row,.aof-job-suggestion,.aof-job-assignee-choice,.aof-btn,button,a){
  transition:background-color .16s ease,color .16s ease,border-color .16s ease,filter .16s ease,opacity .16s ease!important;
}
.agency-os-frontend :is(.aof-row,.aof-panel,.aof-mini-job,.aof-task-page-list>.aof-row,.aof-job-suggestion,.aof-job-assignee-choice,.aof-btn,button,a):is(:hover,:focus,:active){
  transform:none!important;
}
/* Controls must be visibly separate from widget surfaces at rest. */
.agency-os-frontend :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea){
  background-color:color-mix(in srgb,var(--os-control) 82%,white)!important;
  border:1px solid color-mix(in srgb,var(--os-control) 65%,white)!important;
  color:var(--os-text)!important;-webkit-text-fill-color:var(--os-text)!important;
  box-shadow:none!important;
}
.agency-os-frontend :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea):is(:hover,:focus){
  background-color:color-mix(in srgb,var(--os-control) 72%,white)!important;
  border-color:color-mix(in srgb,var(--os-control) 45%,white)!important;
  transform:none!important;outline:none!important;
}
.agency-os-frontend .aof-time-widget-title{font-size:18px;font-weight:850;color:var(--os-text);margin:0 0 16px}
/* Desktop: New tracking | Backfill | Running clock in one row. */
@media(min-width:1181px){
 .agency-os-frontend .aof-time-workspace{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(320px,.9fr)!important;gap:20px!important;align-items:stretch!important}
 .agency-os-frontend .aof-time-setup{grid-column:1!important;grid-row:1!important}
 .agency-os-frontend .aof-time-backfill{grid-column:2!important;grid-row:1!important;margin:0!important;height:100%!important}
 .agency-os-frontend .aof-time-live{grid-column:3!important;grid-row:1!important}
 .agency-os-frontend .aof-time-backfill>.aof-row{padding-bottom:14px!important;margin-bottom:14px!important}
 .agency-os-frontend .aof-time-backfill .aof-job-launcher{grid-template-columns:1fr!important;gap:12px!important}
 .agency-os-frontend .aof-time-backfill .aof-job-launcher form{grid-template-columns:1fr!important;gap:10px!important}
 .agency-os-frontend .aof-time-backfill .aof-inline-times{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important;gap:8px!important}
 .agency-os-frontend .aof-time-backfill .aof-inline-times input[type=date]{grid-column:1/-1!important}
 .agency-os-frontend .aof-time-backfill .aof-btn{width:100%!important;justify-self:stretch!important}
}
/* Time history cells and controls share one vertical axis. */
.agency-os-frontend .aof-time-inline-table td{vertical-align:middle!important}
.agency-os-frontend .aof-time-inline-table td :is(input,select,button,.aof-btn){margin-top:0!important;margin-bottom:0!important}

/* 1.0.13: Planner drag/drop and strict geometry contract */
.agency-os-frontend .aof-board-cards{min-height:88px;border-radius:var(--os-radius-sm);transition:background-color .14s ease!important}
.agency-os-frontend .aof-board-cards.is-drop-target{background:color-mix(in srgb,var(--os-accent) 10%,transparent)!important}
.agency-os-frontend .aof-planner-draggable{cursor:grab!important}
.agency-os-frontend .aof-planner-draggable.is-dragging{opacity:.42!important}
.agency-os-frontend :is(.aof-task-card,.aof-task-page-list>.aof-row,.aof-mini-job,.aof-time-inline-table tr):is(:hover,:focus-within){transform:none!important;scale:1!important;font-size:inherit!important;line-height:inherit!important;letter-spacing:inherit!important}
/* Existing hover control shade is now the resting control shade; focus/hover is only a small color change. */
.agency-os-frontend :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea){background-color:color-mix(in srgb,var(--os-control) 72%,white)!important;border-color:color-mix(in srgb,var(--os-control) 45%,white)!important}
.agency-os-frontend :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea):is(:hover,:focus){background-color:color-mix(in srgb,var(--os-control) 64%,white)!important;border-color:color-mix(in srgb,var(--os-control) 34%,white)!important}

/* ===== navigation.css ===== */
/* Single sidebar geometry for every view. */
.agency-os-frontend .aof-v3-side{width:244px!important;padding:20px!important;box-sizing:border-box!important}
.agency-os-frontend .aof-v3-logo{padding:4px 0 24px!important}
.agency-os-frontend .aof-v3-nav{width:100%!important;display:flex!important;flex-direction:column!important;gap:4px!important;padding:0!important;margin:0!important}
.agency-os-frontend .aof-v3-nav details,.agency-os-frontend .aof-v3-direct{width:100%!important;margin:0!important;padding:0!important}
.agency-os-frontend .aof-v3-nav summary,.agency-os-frontend .aof-v3-direct{width:100%!important;min-height:46px!important;padding:0 8px!important;margin:0!important;grid-template-columns:20px minmax(0,1fr) 18px!important;gap:12px!important;border-radius:10px!important;background:transparent!important;color:#fff!important;font-family:var(--os-font)!important;font-size:15px!important;font-weight:700!important;line-height:1.2!important;letter-spacing:0!important;white-space:nowrap!important}
.agency-os-frontend .aof-v3-direct{grid-template-columns:20px minmax(0,1fr)!important}
.agency-os-frontend .aof-v3-nav summary:hover,.agency-os-frontend .aof-v3-nav summary:focus,.agency-os-frontend .aof-v3-direct:hover,.agency-os-frontend .aof-v3-direct:focus,.agency-os-frontend .aof-v3-direct.current{background:transparent!important;color:var(--os-accent)!important}
.agency-os-frontend .aof-v3-subwrap{width:100%!important;margin:0!important;padding:0!important}
.agency-os-frontend .aof-v3-sub{width:100%!important;box-sizing:border-box!important;padding:2px 0 8px 32px!important;gap:2px!important}
.agency-os-frontend .aof-v3-sub a{min-height:38px!important;padding:0 8px!important;margin:0!important;font-family:var(--os-font)!important;font-size:14px!important;font-weight:600!important;line-height:1.2!important;white-space:nowrap!important;background:transparent!important;color:#aaa!important}
.agency-os-frontend .aof-v3-sub a:hover,.agency-os-frontend .aof-v3-sub a:focus,.agency-os-frontend .aof-v3-sub a.current{background:transparent!important;color:var(--os-accent)!important}
.agency-os-frontend .aof-v3-side-toggle{right:20px!important;bottom:18px!important}
.agency-os-frontend.aof-v3-collapsed>.aof-v3-side,.aof-hybrid.is-collapsed>.aof-v3-side{width:72px!important;padding-left:14px!important;padding-right:14px!important}
/* 1.0.1 stability: one geometry for every level-1 item. */
.agency-os-frontend .aof-v3-side{padding-left:20px!important;padding-right:20px!important}
.agency-os-frontend .aof-v3-nav{gap:2px!important}
.agency-os-frontend .aof-v3-nav details,.agency-os-frontend .aof-v3-direct{margin:0!important;padding:0!important}
.agency-os-frontend .aof-v3-nav summary,.agency-os-frontend .aof-v3-direct{min-height:48px!important;padding:0!important;gap:12px!important}
.agency-os-frontend .aof-v3-sub{padding:2px 0 8px 32px!important;gap:2px!important}
.agency-os-frontend .aof-v3-sub a{min-height:38px!important;padding:0!important}

/* 1.0.3 sidebar rhythm: one axis, compact level-1 rows, space only for open submenus. */
.agency-os-frontend .aof-v3-side{padding-left:20px!important;padding-right:20px!important}
.agency-os-frontend .aof-v3-nav{display:flex!important;flex-direction:column!important;gap:2px!important;width:100%!important}
.agency-os-frontend .aof-v3-nav>details,.agency-os-frontend .aof-v3-nav>.aof-v3-direct{width:100%!important;margin:0!important;padding:0!important}
.agency-os-frontend .aof-v3-nav summary,.agency-os-frontend .aof-v3-direct{width:100%!important;min-height:46px!important;padding:0 4px!important;margin:0!important;grid-template-columns:20px minmax(0,1fr) 18px!important;gap:12px!important}
.agency-os-frontend .aof-v3-direct{grid-template-columns:20px minmax(0,1fr)!important}
.agency-os-frontend .aof-v3-subwrap{margin:0!important;padding:0!important}
.agency-os-frontend .aof-v3-nav details:not([open])>.aof-v3-subwrap{height:0!important;min-height:0!important;overflow:hidden!important}
.agency-os-frontend .aof-v3-nav details[open]>.aof-v3-subwrap{height:auto!important}
.agency-os-frontend .aof-v3-sub{padding:2px 0 8px 32px!important;gap:2px!important}
.agency-os-frontend .aof-v3-sub a{min-height:36px!important;padding:0 4px!important;margin:0!important}

/* ===== modules/worktime.css ===== */
/* Agency OS 1.0.6 – Arbeitszeit / Soll-Ist system */
.aof-worktime-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 14px}.aof-worktime-kpis article{background:var(--ao-card);border-radius:18px;padding:18px;display:grid;gap:6px}.aof-worktime-kpis small,.aof-worktime-kpis span{color:var(--ao-muted)}.aof-worktime-kpis strong{font-size:28px}.aof-worktime-kpis b,.aof-balance-red,.aof-balance-yellow{justify-self:start;padding:5px 9px;border-radius:999px;color:#111!important}.aof-worktime-kpis .is-red,.aof-balance-red{background:#ff8e8e!important}.aof-worktime-kpis .is-yellow,.aof-balance-yellow{background:#ffe500!important}.aof-worktime-days{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:14px}.aof-worktime-day{border-radius:15px;padding:14px;display:flex;justify-content:space-between;gap:10px;align-items:flex-start;background:var(--ao-card2)}.aof-worktime-day>div{display:grid;gap:5px}.aof-worktime-day small{color:var(--ao-muted)}.aof-worktime-day.is-red{background:#5a2323;color:#fff}.aof-worktime-day.is-red small{color:#ffd1d1!important}.aof-worktime-day.is-yellow{background:#ffe500;color:#111}.aof-worktime-day.is-yellow *{color:#111!important}.aof-worktime-day.is-neutral{opacity:.6}.aof-worktime-month-list,.aof-worktime-requests{display:grid;gap:8px;margin-top:14px}.aof-worktime-month-row{display:grid;grid-template-columns:150px 1fr 1fr 120px;gap:12px;align-items:center;padding:12px 14px;background:var(--ao-card2);border-radius:14px}.aof-worktime-month-row.is-red strong{color:#ff9b9b!important}.aof-worktime-month-row.is-yellow strong{color:#ffe500!important}.aof-worktime-adjust{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,1fr);gap:18px;align-items:end}.aof-worktime-adjust form{display:grid;grid-template-columns:170px minmax(0,1fr) auto;gap:10px;align-items:end}.aof-worktime-adjust label{display:grid;gap:6px;color:var(--ao-muted);font-weight:700}.aof-worktime-adjust input,.aof-worktime-user select{height:54px;border:0;border-radius:14px;background:var(--ao-card2);color:var(--ao-text);padding:0 14px}.aof-worktime-request{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;background:var(--ao-card2);border-radius:14px;padding:14px}.aof-worktime-request>div:first-child{display:grid;gap:4px}.aof-worktime-request small{color:var(--ao-muted)}.aof-request-status{padding:6px 10px;border-radius:999px;color:#111!important;font-weight:800}.aof-request-status.pending{background:#ffe500}.aof-request-status.approved{background:#8cf0bd}.aof-request-status.rejected{background:#ff9b9b}.aof-request-actions{display:flex;gap:8px}.aof-request-actions form{margin:0}.aof-hybrid-ring.is-deficit{background:conic-gradient(#ff6b6b 0 100%,#333 0)!important}.aof-hybrid-ring.is-target{background:conic-gradient(#ffe500 0 100%,#333 0)!important}.aof-hybrid-bar b.is-deficit{background:#ff6b6b!important}.aof-hybrid-bar b.is-target{background:#ffe500!important}
@media(max-width:1100px){.aof-worktime-kpis{grid-template-columns:1fr}.aof-worktime-days{grid-template-columns:1fr 1fr}.aof-worktime-adjust{grid-template-columns:1fr}.aof-worktime-adjust form{grid-template-columns:1fr 1fr}.aof-worktime-adjust form .aof-btn{grid-column:1/-1}.aof-worktime-month-row{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.aof-worktime-days,.aof-worktime-adjust form,.aof-worktime-month-row{grid-template-columns:1fr}.aof-worktime-request{grid-template-columns:1fr}.aof-request-actions{width:100%}.aof-request-actions form,.aof-request-actions button{width:100%}}

/* ===== modules/jobs.css ===== */
/* Agency OS 1.0.7 – Jobs / Planner editor */
.agency-os-frontend .aos-project-editor{max-width:none}
.agency-os-frontend .aof-project-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}
.agency-os-frontend .aof-project-form>label{display:grid;gap:7px;min-width:0;color:var(--os-muted);font-size:12px;font-weight:800}
.agency-os-frontend .aof-project-form>.full{grid-column:1/-1}
.agency-os-frontend .aof-project-form :where(input,select,textarea){width:100%;min-width:0;margin:0!important}
.agency-os-frontend .aof-project-form textarea{resize:vertical}
.agency-os-frontend .aof-job-assignees-editor{grid-column:1/-1;border:0!important;outline:0!important;padding:0!important;margin:2px 0 0!important;min-width:0}
.agency-os-frontend .aof-job-assignees-editor legend{font-size:12px;font-weight:900;color:var(--os-muted);margin-bottom:8px}
.agency-os-frontend .aof-job-assignees-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.agency-os-frontend .aof-job-assignee-choice{display:flex!important;align-items:center!important;gap:12px!important;padding:12px 14px!important;margin:0!important;border-radius:var(--os-radius-sm)!important;background:var(--os-surface-2)!important;min-width:0;cursor:pointer}
.agency-os-frontend .aof-job-assignee-choice:hover{background:color-mix(in srgb,var(--os-surface-2) 88%,white)!important;transform:none!important}
.agency-os-frontend .aof-job-assignee-choice>input{width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;padding:0!important;margin:0!important;accent-color:var(--os-accent)}
.agency-os-frontend .aof-job-assignee-person{display:flex;align-items:center;gap:10px;min-width:0;color:var(--os-text)!important}
.agency-os-frontend .aof-job-assignee-person>.aof-avatar{width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;flex:0 0 34px!important;border-radius:50%!important}
.agency-os-frontend .aof-job-assignee-person>span:last-child{display:grid;gap:2px;min-width:0}
.agency-os-frontend .aof-job-assignee-person strong{font-size:13px!important;line-height:1.2!important;color:var(--os-text)!important;-webkit-text-fill-color:var(--os-text)!important}
.agency-os-frontend .aof-job-assignee-person small{font-size:11px!important;line-height:1.2!important;color:var(--os-muted)!important;-webkit-text-fill-color:var(--os-muted)!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.agency-os-frontend .aof-job-assignees-editor>.agency-mini{display:block;margin-top:9px;color:var(--os-muted)!important}
.agency-os-frontend .aof-planner-detail-block{padding:16px!important;border-radius:var(--os-radius)!important;background:var(--os-surface-2)!important;border:0!important;outline:0!important;box-shadow:none!important}
@media(max-width:800px){.agency-os-frontend .aof-project-form,.agency-os-frontend .aof-job-assignees-grid{grid-template-columns:1fr}}

/* ===== responsive.css ===== */
@media (max-width:900px){.agency-os-frontend .aof-v3-side{display:none!important}}


/* 1.0.9 mobile work mode */
@media (max-width: 760px){
  /* Mobile is deliberately read/stop focused: do not start or restart Planner jobs here. */
  .agency-os-frontend [data-aos-job-start-form],
  .agency-os-frontend .aof-continue-job-form,
  .agency-os-frontend .aof-job-launcher,
  .agency-os-frontend form:has(input[name="action"][value="agency_os_start_job_work"]),
  .agency-os-frontend [data-hybrid-job-search],
  .agency-os-frontend [data-hybrid-search-shell]{display:none!important}
  .agency-os-frontend .aof-hybrid-kpis,
  .agency-os-frontend .aof-hybrid-quick-grid,
  .agency-os-frontend .aof-worktime-kpis{grid-template-columns:1fr!important}
  .agency-os-frontend [data-widget="kpi-time"],
  .agency-os-frontend [data-widget="kpi-news"]{display:flex!important}
  .agency-os-frontend .aof-mobile-notify-enable{
    position:fixed;right:16px;bottom:82px;z-index:99997;width:46px;height:46px;min-width:46px;min-height:46px;
    border:0!important;border-radius:50%!important;background:var(--os-accent,#f1df00)!important;color:#111!important;
    display:grid;place-items:center;padding:0!important;font:800 20px/1 Arial,sans-serif!important
  }
  .agency-os-frontend .aof-mobile-notify-enable:hover,
  .agency-os-frontend .aof-mobile-notify-enable:focus{opacity:.9!important;transform:none!important}
}

/* 1.0.10 mobile shell: sticky logo/navigation + sticky time/profile; no Job/Planner UI. */
@media (max-width:760px){
  /* Remove controls that are intentionally no longer part of the shell. */
  .agency-os-frontend .aof-privacy-toggle,
  .agency-os-frontend .aof-dashboard-settings-shell,
  .agency-os-frontend .aof-hybrid-customize{display:none!important}

  /* Mobile dashboard contains no Job/Planner task surfaces or empty placeholders. */
  .agency-os-frontend[data-aof-view="hybrid-dashboard"] [data-widget="kpi-jobs"],
  .agency-os-frontend[data-aof-view="hybrid-dashboard"] [data-widget="quick-planner"],
  .agency-os-frontend[data-aof-view="hybrid-dashboard"] [data-widget="quick-empty"],
  .agency-os-frontend[data-aof-view="hybrid-dashboard"] [data-widget="bottom-empty"],
  .agency-os-frontend[data-aof-view="hybrid-dashboard"] [data-widget-group="task"],
  .agency-os-frontend[data-aof-view="hybrid-dashboard"] .aof-hybrid-taskcols{display:none!important}

  /* The logo and reduced navigation stay at the top on phones. */
  .agency-os-frontend .aof-v3-side,
  .aof-hybrid>.aof-v3-side{
    display:flex!important;position:fixed!important;left:0!important;right:0!important;top:0!important;bottom:auto!important;
    width:100%!important;height:116px!important;min-height:116px!important;padding:10px 12px!important;margin:0!important;
    background:#08090a!important;z-index:2147481000!important;overflow:visible!important;flex-direction:column!important
  }
  .agency-os-frontend .aof-v3-logo{
    display:flex!important;align-items:baseline!important;gap:6px!important;height:42px!important;min-height:42px!important;
    padding:4px 96px 6px 4px!important;margin:0!important;white-space:nowrap!important
  }
  .agency-os-frontend .aof-v3-logo strong{display:inline!important;font-size:23px!important;line-height:1!important}
  .agency-os-frontend .aof-v3-logo span{display:inline!important;font-size:15px!important;line-height:1!important;color:var(--os-accent,#f3df18)!important}
  .agency-os-frontend .aof-v3-nav{
    display:flex!important;flex-direction:row!important;align-items:center!important;gap:4px!important;width:100%!important;
    padding:0!important;margin:0!important;overflow-x:auto!important;overflow-y:visible!important;scrollbar-width:none!important
  }
  .agency-os-frontend .aof-v3-nav::-webkit-scrollbar{display:none!important}
  .agency-os-frontend .aof-v3-nav>details,
  .agency-os-frontend .aof-v3-nav>.aof-v3-direct{display:block!important;position:relative!important;flex:0 0 auto!important;width:auto!important}
  .agency-os-frontend .aof-v3-nav summary,
  .agency-os-frontend .aof-v3-direct{
    min-height:44px!important;height:44px!important;width:auto!important;padding:0 10px!important;gap:8px!important;
    grid-template-columns:18px auto 14px!important;font-size:13px!important;white-space:nowrap!important
  }
  .agency-os-frontend .aof-v3-direct{grid-template-columns:18px auto!important}
  .agency-os-frontend .aof-v3-subwrap{
    position:absolute!important;left:0!important;top:48px!important;min-width:190px!important;width:max-content!important;max-width:85vw!important;
    padding:6px!important;border-radius:14px!important;background:#141516!important;z-index:2147481200!important
  }
  .agency-os-frontend .aof-v3-nav details:not([open])>.aof-v3-subwrap{display:none!important}
  .agency-os-frontend .aof-v3-nav details[open]>.aof-v3-subwrap{display:block!important;height:auto!important}
  .agency-os-frontend .aof-v3-sub{padding:0!important;display:grid!important;gap:2px!important}
  .agency-os-frontend .aof-v3-sub a{min-height:40px!important;padding:0 10px!important;font-size:13px!important;border-radius:9px!important}
  .agency-os-frontend .aof-v3-side-toggle{display:none!important}

  /* Content starts below the fixed mobile shell. */
  .agency-os-frontend,
  .agency-os-frontend:not([data-aof-view="hybrid-dashboard"]){padding-top:128px!important;padding-left:12px!important;padding-right:12px!important}
  .agency-os-frontend[data-aof-view="hybrid-dashboard"]{padding-top:0!important}
  .aof-hybrid{--hybrid-side:0px!important;padding-top:116px!important}
  .aof-hybrid-main{margin-left:0!important;width:100%!important;padding:12px!important}

  /* Only time + profile remain sticky. The dashboard header itself scrolls normally. */
  .aof-hybrid-sticky-user{display:none!important}
  .agency-os-frontend .aof-sticky-timer{
    position:fixed!important;right:10px!important;top:8px!important;left:auto!important;bottom:auto!important;z-index:2147481300!important;
    max-width:min(58vw,250px)!important;margin:0!important
  }
  .agency-os-frontend .aof-sticky-timer .aof-sticky-assign,
  .agency-os-frontend .aof-sticky-timer .aof-sticky-job-search,
  .agency-os-frontend .aof-sticky-timer [data-aos-sticky-assign]{display:none!important}

  /* Dashboard tiles reflow after removing restricted widgets. */
  .agency-os-frontend[data-aof-view="hybrid-dashboard"] .aof-hybrid-kpis,
  .agency-os-frontend[data-aof-view="hybrid-dashboard"] .aof-hybrid-quickgrid,
  .agency-os-frontend[data-aof-view="hybrid-dashboard"] .aof-hybrid-bottom-metrics{grid-template-columns:1fr!important}
}

/* 1.0.12 mobile dashboard shell: logo + profile/time only, no OS navigation. */
@media (max-width:760px){
  /* Respect iPhone notch / Dynamic Island and Android display cutouts. */
  .agency-os-frontend .aof-v3-side,
  .aof-hybrid>.aof-v3-side{
    top:0!important;
    height:calc(64px + env(safe-area-inset-top, 0px))!important;
    min-height:calc(64px + env(safe-area-inset-top, 0px))!important;
    padding:calc(env(safe-area-inset-top, 0px) + 10px) 14px 8px!important;
    justify-content:flex-start!important;
    overflow:hidden!important;
  }

  /* Phones are a dashboard/work-status surface, not a full OS navigation surface. */
  .agency-os-frontend .aof-v3-nav,
  .agency-os-frontend .aof-v3-side-toggle{display:none!important}

  .agency-os-frontend .aof-v3-logo{
    height:44px!important;
    min-height:44px!important;
    padding:0 92px 0 2px!important;
    margin:0!important;
    align-items:center!important;
  }

  /* Timer/profile aligns with the logo and receives the same notch clearance. */
  .agency-os-frontend .aof-sticky-timer{
    top:calc(env(safe-area-inset-top, 0px) + 10px)!important;
    right:12px!important;
    min-height:44px!important;
    max-height:48px!important;
  }

  /* Dashboard content begins below the safe mobile header. */
  .agency-os-frontend,
  .agency-os-frontend:not([data-aof-view="hybrid-dashboard"]){
    padding-top:calc(76px + env(safe-area-inset-top, 0px))!important;
  }
  .agency-os-frontend[data-aof-view="hybrid-dashboard"]{padding-top:0!important}
  .aof-hybrid{padding-top:calc(64px + env(safe-area-inset-top, 0px))!important}

  /* Meeting recording is intentionally desktop/tablet only. */
  .agency-os-frontend[data-aof-view="hybrid-dashboard"] [data-widget="quick-record"]{display:none!important}

  /* Roulette: headline remains at the top; animation is centered in the usable card body. */
  .agency-os-frontend[data-aof-view="hybrid-dashboard"] [data-widget="quick-roulette"]{
    display:grid!important;
    grid-template-rows:auto minmax(150px,1fr)!important;
    align-items:stretch!important;
    min-height:250px!important;
  }
  .agency-os-frontend[data-aof-view="hybrid-dashboard"] [data-widget="quick-roulette"]>div{
    align-self:start!important;
    width:100%!important;
  }
  .agency-os-frontend[data-aof-view="hybrid-dashboard"] [data-widget="quick-roulette"] .aof-mini-roulette{
    align-self:center!important;
    justify-self:center!important;
    place-self:center!important;
    width:160px!important;
    height:140px!important;
    margin:0!important;
  }

  /* After removing mobile-only widgets, keep the remaining quick cards in one clean column. */
  .agency-os-frontend[data-aof-view="hybrid-dashboard"] .aof-hybrid-quickgrid{
    grid-template-columns:1fr!important;
  }
}

/* 1.2.2 Microsoft employee login */
.aof-auth-card .aof-auth-microsoft{margin-top:28px!important}
.aof-auth-card .aof-auth-hint{margin-top:18px!important;color:#8f8f8f!important;font-size:12px!important;line-height:1.55!important}
.aof-auth-ms{min-height:54px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:12px!important;width:100%!important}
.aof-auth-ms-mark{display:grid!important;grid-template-columns:repeat(2,8px)!important;grid-template-rows:repeat(2,8px)!important;gap:2px!important;width:18px!important;height:18px!important;flex:0 0 18px!important}
.aof-auth-ms-mark i{display:block!important;background:#0b0b0b!important;width:8px!important;height:8px!important}

/* 1.2.3 global UI normalization ------------------------------------------------ */
:root{
  --os-control-bg:#303234;
  --os-control-hover:#3a3c3f;
  --os-control-text:#fff;
  --os-panel-bg:#151617;
  --os-row-bg:#232526;
  --os-danger:#ff5b5b;
  --os-warning:#ffe500;
}

/* One global form language: same height, readable contrast, one select arrow. */
.agency-os-frontend :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea),
.agency-os-admin :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea){
  box-sizing:border-box!important;
  min-height:52px!important;
  border:0!important;
  outline:0!important;
  border-radius:14px!important;
  background-color:var(--os-control-bg)!important;
  color:var(--os-control-text)!important;
  -webkit-text-fill-color:var(--os-control-text)!important;
  padding:0 16px!important;
  font:inherit!important;
  line-height:1.2!important;
  box-shadow:none!important;
}
.agency-os-frontend textarea,.agency-os-admin textarea{min-height:112px!important;padding:14px 16px!important;resize:vertical!important}
.agency-os-frontend :is(input,select,textarea):hover,
.agency-os-frontend :is(input,select,textarea):focus,
.agency-os-admin :is(input,select,textarea):hover,
.agency-os-admin :is(input,select,textarea):focus{background-color:var(--os-control-hover)!important;box-shadow:none!important;outline:0!important}
.agency-os-frontend select,.agency-os-admin select{
  appearance:none!important;-webkit-appearance:none!important;
  padding-right:46px!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3C/svg%3E")!important;
  background-repeat:no-repeat!important;background-position:right 15px center!important;background-size:18px!important;
}
.agency-os-frontend :is(input[type="date"],input[type="time"]),.agency-os-admin :is(input[type="date"],input[type="time"]){color-scheme:dark!important}
.agency-os-frontend :is(button,.aof-btn,a,.aof-panel,.aof-row,.aof-task-card,.aof-team-card,.aof-mini-job),
.agency-os-admin :is(button,.agency-btn,a,.agency-card){
  transform:none!important;
}
.agency-os-frontend :is(button,.aof-btn,a,.aof-panel,.aof-row,.aof-task-card,.aof-team-card,.aof-mini-job):hover,
.agency-os-frontend :is(button,.aof-btn,a,.aof-panel,.aof-row,.aof-task-card,.aof-team-card,.aof-mini-job):focus,
.agency-os-admin :is(button,.agency-btn,a,.agency-card):hover,
.agency-os-admin :is(button,.agency-btn,a,.agency-card):focus{
  transform:none!important;font-size:inherit!important;letter-spacing:inherit!important;line-height:inherit!important;
}

/* Primary/secondary contrast: never two identical yellow actions next to each other. */
.agency-os-frontend .aof-card-actions{display:flex!important;gap:10px!important;align-items:stretch!important;flex-wrap:wrap!important}
.agency-os-frontend .aof-card-actions>.aof-btn:not(.ghost):nth-of-type(n+2),
.agency-os-frontend .aof-card-actions>form:nth-of-type(n+2) .aof-btn:not(.ghost){background:#303234!important;color:#fff!important;-webkit-text-fill-color:#fff!important}
.agency-os-frontend .aof-card-actions>.aof-btn:not(.ghost):nth-of-type(n+2):hover,
.agency-os-frontend .aof-card-actions>form:nth-of-type(n+2) .aof-btn:not(.ghost):hover{background:#3a3c3f!important}

/* Details summaries use a large plus; browser disclosure triangle is removed. */
.agency-os-frontend .aof-create-task>summary{display:flex!important;align-items:center!important;gap:12px!important;list-style:none!important;min-height:64px!important;cursor:pointer!important}
.agency-os-frontend .aof-create-task>summary::-webkit-details-marker{display:none!important}
.agency-os-frontend .aof-create-task>summary::marker{content:""!important}
.agency-os-frontend .aof-big-plus{font-size:34px!important;line-height:1!important;font-weight:400!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;width:28px!important}

/* Calendar */
.agency-os-frontend .aof-check-field{display:flex!important;align-items:center!important;gap:12px!important;min-height:52px!important;font-weight:700!important}
.agency-os-frontend .aof-check-field input[type="checkbox"]{appearance:none!important;width:26px!important;height:26px!important;min-width:26px!important;border:2px solid #707277!important;border-radius:7px!important;background:#242628!important;display:grid!important;place-items:center!important;margin:0!important}
.agency-os-frontend .aof-check-field input[type="checkbox"]:checked{background:var(--os-accent)!important;border-color:var(--os-accent)!important}
.agency-os-frontend .aof-check-field input[type="checkbox"]:checked::after{content:"✓";color:#111;font-size:18px;font-weight:900;line-height:1}
.agency-os-frontend .aof-calendar-event{position:relative!important;padding-left:25px!important}
.agency-os-frontend .aof-calendar-event::before{content:"";position:absolute;left:10px;top:50%;width:8px;height:8px;border-radius:50%;transform:translateY(-50%)!important;background:#34a4ff}
.agency-os-frontend .aof-calendar-event-tone-1::before{background:#8d6bff}.agency-os-frontend .aof-calendar-event-tone-2::before{background:#48d7a7}.agency-os-frontend .aof-calendar-event-tone-3::before{background:#ffb53b}

/* Privacy must cover all job/planner/timeline/task data, including tables and board cards. */
.agency-os-frontend.privacy-mode :is(.aof-board,.aof-planner-tabs,.aof-task-card,.aof-table-wrap,.aof-gantt,.aof-task-page-list,.aof-tasks-aside,.aof-planner-activity-teaser,.aof-planner-activity-dialog),
body.aof-privacy-mode .agency-os-frontend :is(.aof-board,.aof-planner-tabs,.aof-task-card,.aof-table-wrap,.aof-gantt,.aof-task-page-list,.aof-tasks-aside,.aof-planner-activity-teaser,.aof-planner-activity-dialog){filter:blur(8px)!important;user-select:none!important;pointer-events:none!important}

/* Dashboard: embedded large time is mobile-only; desktop gets the normal sticky timer again. */
.agency-os-frontend .aof-dashboard-timebox-mobile{display:none!important}
@media(min-width:761px){
  .agency-os-frontend[data-aof-view="hybrid-dashboard"]>.aof-sticky-timer{display:grid!important;position:fixed!important;right:22px!important;top:18px!important;z-index:2147481500!important}
}
@media(max-width:760px){
  .agency-os-frontend .aof-dashboard-timebox-mobile{display:flex!important}
  .agency-os-frontend[data-aof-view="hybrid-dashboard"]>.aof-sticky-timer{display:none!important}
}

/* Team cards: tighter identity block, no large vertical dead space. */
.agency-os-frontend .aof-team-card{display:grid!important;gap:14px!important;padding:22px!important}
.agency-os-frontend .aof-team-card .aof-team-profile-link{display:block!important;text-decoration:none!important}
.agency-os-frontend .aof-team-card .aof-user{display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;align-items:center!important;gap:16px!important}
.agency-os-frontend .aof-team-card .aof-user>div{display:grid!important;gap:3px!important}
.agency-os-frontend .aof-team-card .aof-user br{display:none!important}
.agency-os-frontend .aof-team-card .aof-user strong{font-size:20px!important;line-height:1.15!important}
.agency-os-frontend .aof-team-card .aof-user small{font-size:14px!important;line-height:1.25!important;color:#aaa!important}

/* News typography */
.agency-os-frontend .aof-news-page-grid{gap:18px!important}
.agency-os-frontend .aof-news-page-card h3{font-size:clamp(24px,2vw,34px)!important;line-height:1.1!important;margin:14px 0 12px!important;font-weight:550!important}
.agency-os-frontend .aof-news-page-copy{font-size:16px!important;line-height:1.55!important}

/* Resources */
.agency-os-frontend .aof-resource-person{display:grid!important;gap:8px!important;padding:10px 0!important;border-bottom:1px solid #2a2b2d!important}
.agency-os-frontend .aof-resource-person:last-child{border-bottom:0!important}
.agency-os-frontend .aof-resource-person .aof-user{display:flex!important;align-items:center!important;gap:9px!important}.agency-os-frontend .aof-resource-person .aof-user>span{display:grid!important;gap:2px!important}
.agency-os-frontend .aof-resource-person small{display:block!important;color:#949494!important;font-size:11px!important}
.agency-os-frontend .aof-resource-metrics{display:flex!important;gap:12px!important;flex-wrap:wrap!important;color:#aaa!important;font-size:11px!important}.agency-os-frontend .aof-resource-metrics b{color:#fff!important}

/* Dependencies */
.agency-os-frontend .aof-gantt-row.critical .aof-gantt-bar{background:#a92828!important;color:#fff!important}
.agency-os-frontend .aof-dependency-warning{color:#ff6868!important;font-weight:800!important}
.agency-os-frontend .aof-gantt-links path.is-critical{stroke:#ff5252!important}

/* Briefing admin helper */
.agency-os-frontend .aof-briefing-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:18px!important}.agency-os-frontend .aof-briefing-steps{display:grid!important;gap:10px!important;padding-left:20px!important}.agency-os-frontend .aof-briefing-link{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important;margin-top:18px!important}

/* Planner / job creation inputs */
.agency-os-frontend .aof-create-task-form{align-items:end!important}.agency-os-frontend .aof-create-task-form label{display:grid!important;gap:8px!important}.agency-os-frontend .aof-create-task-form .aof-btn{min-height:52px!important;height:52px!important}
.agency-os-frontend .aof-inline-sync{display:inline-flex!important;margin:0!important}

/* Dialog close button: true circle, stable on hover. */
.agency-os-frontend .aof-hybrid-close,
.agency-os-frontend dialog button[aria-label*="schließen" i]{width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;border-radius:50%!important;padding:0!important;display:grid!important;place-items:center!important;font-size:24px!important;line-height:1!important;background:#27292b!important;color:#fff!important;transform:none!important}
.agency-os-frontend .aof-hybrid-close:hover{background:#343638!important;transform:none!important}

/* Kitchen week/month/year */
.agency-os-frontend .aof-segmented{display:inline-flex!important;gap:4px!important;padding:4px!important;border-radius:14px!important;background:#1d1f20!important}.agency-os-frontend .aof-segmented button{height:42px!important;padding:0 16px!important;border:0!important;border-radius:10px!important;background:transparent!important;color:#c8c8c8!important}.agency-os-frontend .aof-segmented button.is-active{background:var(--os-accent)!important;color:#111!important}
.agency-os-frontend .aof-kitchen-alt{display:grid!important;gap:14px!important}.agency-os-frontend .aof-kitchen-mini-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))!important;gap:10px!important}.agency-os-frontend .aof-kitchen-mini{display:flex!important;align-items:center!important;gap:10px!important;background:#232526!important;border-radius:14px!important;padding:12px!important}.agency-os-frontend .aof-kitchen-mini>div{display:grid!important}.agency-os-frontend .aof-kitchen-year-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))!important;gap:8px!important}.agency-os-frontend .aof-kitchen-year-item{display:flex!important;justify-content:space-between!important;gap:12px!important;background:#232526!important;border-radius:12px!important;padding:10px 12px!important}

@media(max-width:900px){.agency-os-frontend .aof-briefing-grid{grid-template-columns:1fr!important}.agency-os-frontend .aof-briefing-link{grid-template-columns:1fr!important}}
.agency-os-frontend .aof-card-actions>form+.aof-btn:not(.ghost){background:#303234!important;color:#fff!important;-webkit-text-fill-color:#fff!important}
.agency-os-frontend .aof-card-actions>form+.aof-btn:not(.ghost):hover{background:#3a3c3f!important}

/* 1.2.4 final global select contract. Keep this at the end so module rules cannot
   hide the dropdown indicator. The arrow is part of the same background layer. */
.agency-os-frontend select,
.agency-os-admin select{
  -webkit-appearance:none!important;
  appearance:none!important;
  min-height:var(--os-control-h,54px)!important;
  height:var(--os-control-h,54px)!important;
  padding:0 48px 0 16px!important;
  color:var(--os-control-text,var(--os-text,#fff))!important;
  -webkit-text-fill-color:var(--os-control-text,var(--os-text,#fff))!important;
  background:var(--os-control-bg,var(--os-control,#2a2b2d)) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3C/svg%3E") no-repeat right 16px center/18px 18px!important;
  border:0!important;
  border-radius:14px!important;
  box-shadow:none!important;
  outline:0!important;
}
.agency-os-frontend select:is(:hover,:focus),
.agency-os-admin select:is(:hover,:focus){
  background:var(--os-control-hover,var(--os-control-bg,var(--os-control,#303134))) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3C/svg%3E") no-repeat right 16px center/18px 18px!important;
  height:var(--os-control-h,54px)!important;
  padding:0 48px 0 16px!important;
  transform:none!important;
  font-size:inherit!important;
  font-weight:inherit!important;
}


/* 1.2.6 Jobs overview: four equal dashboard cards in one desktop row. */
.agency-os-frontend .aof-jobs-overview-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:16px!important;
  width:100%!important;
  align-items:stretch!important;
}
.agency-os-frontend .aof-jobs-overview-grid>.aof-panel{
  width:100%!important;
  min-width:0!important;
  height:100%!important;
  margin:0!important;
}
@media (max-width:1100px){
  .agency-os-frontend .aof-jobs-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media (max-width:680px){
  .agency-os-frontend .aof-jobs-overview-grid{grid-template-columns:1fr!important}
}

/* 1.2.7 Jobs layout refinement */
.agency-os-frontend .aof-jobs-title{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:20px!important;
}
.agency-os-frontend .aof-jobs-create-top{
  position:relative!important;
  margin:0!important;
  flex:0 0 auto!important;
}
.agency-os-frontend .aof-jobs-create-top>summary{
  list-style:none!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:10px!important;
  min-height:52px!important;
  padding:0 18px!important;
  border-radius:14px!important;
  background:#26282a!important;
  color:#fff!important;
  cursor:pointer!important;
  font-weight:800!important;
}
.agency-os-frontend .aof-jobs-create-top>summary::-webkit-details-marker{display:none!important}
.agency-os-frontend .aof-jobs-create-top>summary:hover{background:#303235!important;color:#fff!important;transform:none!important}
.agency-os-frontend .aof-jobs-create-top .aof-big-plus{font-size:30px!important;line-height:1!important;font-weight:500!important}
.agency-os-frontend .aof-jobs-create-top[open] .aof-create-task-form{
  position:absolute!important;
  right:0!important;
  top:calc(100% + 10px)!important;
  z-index:2000!important;
  width:min(980px,80vw)!important;
  padding:18px!important;
  background:#171819!important;
  border-radius:18px!important;
  display:grid!important;
  grid-template-columns:2fr 1.2fr 1fr 1fr 1.2fr auto!important;
  gap:12px!important;
}
.agency-os-frontend .aof-jobs-overview-grid{gap:20px!important;margin-bottom:20px!important}
.agency-os-frontend .aof-jobs-filter-panel{padding:20px!important}
.agency-os-frontend .aof-jobs-filter-panel .aof-card-head{margin-bottom:14px!important}
.agency-os-frontend .aof-jobs-filterbar{
  display:grid!important;
  grid-template-columns:minmax(180px,1.4fr) minmax(170px,1fr) minmax(190px,1.2fr) minmax(145px,.8fr) minmax(145px,.8fr) auto 52px!important;
  gap:12px!important;
  align-items:end!important;
}
.agency-os-frontend .aof-jobs-filterbar>label{min-width:0!important;margin:0!important}
.agency-os-frontend .aof-jobs-filterbar :is(input,select,.aof-btn,.aof-icon-btn){height:52px!important;min-height:52px!important}
.agency-os-frontend .aof-jobs-filterbar .aof-btn{min-width:150px!important;margin:0!important}
.agency-os-frontend .aof-icon-btn{
  width:52px!important;
  height:52px!important;
  min-width:52px!important;
  min-height:52px!important;
  border:0!important;
  border-radius:50%!important;
  background:#2c2e30!important;
  color:#fff!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  text-decoration:none!important;
  font-size:24px!important;
  line-height:1!important;
  font-weight:700!important;
}
.agency-os-frontend .aof-icon-btn:hover{background:#383a3d!important;color:#fff!important;transform:none!important}
.agency-os-frontend .aof-select-field{position:relative!important}
.agency-os-frontend .aof-select-field::after{
  content:"⌄"!important;
  position:absolute!important;
  right:16px!important;
  bottom:15px!important;
  z-index:3!important;
  color:#fff!important;
  pointer-events:none!important;
  font-size:20px!important;
  line-height:1!important;
  font-weight:800!important;
}
.agency-os-frontend .aof-select-field select{
  background-image:none!important;
  padding-right:46px!important;
}
@media(max-width:1250px){
  .agency-os-frontend .aof-jobs-filterbar{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .agency-os-frontend .aof-jobs-filterbar>.aof-btn{width:100%!important}
}
@media(max-width:760px){
  .agency-os-frontend .aof-jobs-title{display:grid!important;grid-template-columns:1fr!important}
  .agency-os-frontend .aof-jobs-create-top{justify-self:start!important}
  .agency-os-frontend .aof-jobs-create-top[open] .aof-create-task-form{position:fixed!important;left:16px!important;right:16px!important;top:80px!important;width:auto!important;max-height:calc(100vh - 100px)!important;overflow:auto!important;grid-template-columns:1fr!important}
  .agency-os-frontend .aof-jobs-filterbar{grid-template-columns:1fr!important}
  .agency-os-frontend .aof-jobs-filterbar .aof-reset-filter{justify-self:start!important}
}

/* ===== Agency OS 1.2.11 Jobs definitive layout ===== */
.agency-os-frontend .aof-jobs-title{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:18px!important;align-items:start!important;width:100%!important}
.agency-os-frontend .aof-jobs-create-top{grid-column:2!important;width:auto!important;margin:0!important;position:static!important}
.agency-os-frontend .aof-jobs-create-top>summary{justify-self:end!important;white-space:nowrap!important}
.agency-os-frontend .aof-jobs-create-top[open]{grid-column:1/-1!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;width:100%!important;gap:14px!important}
.agency-os-frontend .aof-jobs-create-top[open]>summary{grid-column:2!important;grid-row:1!important;justify-self:end!important}
.agency-os-frontend .aof-jobs-create-top[open] .aof-create-task-form{position:static!important;grid-column:1/-1!important;grid-row:2!important;width:100%!important;max-width:none!important;min-width:0!important;padding:20px!important;margin:0!important;background:var(--os-surface)!important;border-radius:18px!important;display:grid!important;grid-template-columns:minmax(260px,2fr) minmax(180px,1.2fr) minmax(150px,1fr) minmax(150px,1fr) minmax(190px,1.2fr) minmax(150px,.8fr)!important;gap:14px!important;align-items:end!important;z-index:auto!important}
.agency-os-frontend .aof-jobs-overview-grid{margin-top:18px!important}
.agency-os-frontend .aof-jobs-table{width:100%!important;min-width:1280px!important;table-layout:fixed!important}
.agency-os-frontend .aof-jobs-table col.aof-col-job{width:24%!important}.agency-os-frontend .aof-jobs-table col.aof-col-client{width:9%!important}.agency-os-frontend .aof-jobs-table col.aof-col-status{width:8%!important}.agency-os-frontend .aof-jobs-table col.aof-col-owner{width:20%!important}.agency-os-frontend .aof-jobs-table col.aof-col-period{width:17%!important}.agency-os-frontend .aof-jobs-table col.aof-col-budget{width:7%!important}.agency-os-frontend .aof-jobs-table col.aof-col-actions{width:15%!important}
.agency-os-frontend .aof-jobs-table th,.agency-os-frontend .aof-jobs-table td{white-space:nowrap!important;word-break:keep-all!important;overflow-wrap:normal!important;vertical-align:middle!important}.agency-os-frontend .aof-jobs-table th{overflow:hidden!important;text-overflow:ellipsis!important}
.agency-os-frontend .aof-jobs-table td:first-child strong,.agency-os-frontend .aof-jobs-table td:first-child small{display:block!important;max-width:100%!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.agency-os-frontend .aof-jobs-table .aof-card-actions{display:grid!important;grid-template-columns:minmax(0,1fr) 52px!important;align-items:center!important;gap:10px!important;width:100%!important;min-width:0!important;white-space:nowrap!important}
.agency-os-frontend .aof-jobs-table .aof-job-start-form{display:block!important;width:100%!important;min-width:0!important;margin:0!important}.agency-os-frontend .aof-jobs-table .aof-job-start-form button{width:100%!important;min-width:0!important;margin:0!important;padding-inline:14px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.agency-os-frontend .aof-jobs-table .aof-job-edit-icon{width:52px!important;min-width:52px!important;max-width:52px!important;height:52px!important;min-height:52px!important;padding:0!important;display:grid!important;place-items:center!important;border-radius:14px!important;color:var(--os-text)!important}.agency-os-frontend .aof-jobs-table .aof-job-edit-icon svg{width:21px!important;height:21px!important;fill:none!important;stroke:currentColor!important;stroke-width:2!important;stroke-linecap:round!important;stroke-linejoin:round!important;pointer-events:none!important}
.agency-os-frontend .aof-jobs-table :is(tr,td,.aof-card-actions,.aof-card-actions>*,.aof-job-start-form,.aof-job-start-form button,.aof-job-edit-icon):is(:hover,:focus,:active){transform:none!important;scale:1!important;font-size:inherit!important;letter-spacing:inherit!important}
@media(max-width:1180px){.agency-os-frontend .aof-jobs-create-top[open] .aof-create-task-form{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:760px){.agency-os-frontend .aof-jobs-title{grid-template-columns:1fr!important}.agency-os-frontend .aof-jobs-create-top,.agency-os-frontend .aof-jobs-create-top[open]{grid-column:1!important;width:100%!important}.agency-os-frontend .aof-jobs-create-top>summary,.agency-os-frontend .aof-jobs-create-top[open]>summary{grid-column:1!important;justify-self:start!important}.agency-os-frontend .aof-jobs-create-top[open] .aof-create-task-form{position:static!important;grid-template-columns:1fr!important;width:100%!important;max-height:none!important;overflow:visible!important}}

/* Team presence status: same visual language as Dashboard Team live */
.agency-person-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px}
.agency-person-identity{min-width:0}
.agency-presence{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;font-weight:800;font-size:13px;line-height:1}
.agency-presence.is-online{color:#49d79f}
.agency-presence.is-offline{color:#ff6677}
@media (max-width:640px){.agency-person-head{grid-template-columns:auto minmax(0,1fr)}.agency-presence{grid-column:2;justify-self:start;margin-top:2px}}

/* 1.2.13 Team presence + stable visibility */
.agency-person-head .agency-presence{justify-self:end;display:inline-flex!important;align-items:center;gap:7px;font-weight:800;white-space:nowrap;opacity:1!important;visibility:visible!important}
.agency-presence-dot{width:10px;height:10px;border-radius:50%;display:inline-block;flex:0 0 10px;background:currentColor}
.agency-presence.is-online{color:#49d79f!important}
.agency-presence.is-offline{color:#ff6677!important}
.agency-team-meta .agency-presence{display:none!important}
@media (max-width:640px){.agency-person-head .agency-presence{grid-column:2;justify-self:start;margin-top:3px}.agency-team-meta .agency-presence{display:none!important}}

/* 1.2.14 Frontend Team presence — same visual language as Dashboard Team live */
.agency-os-frontend .aof-team-card .aof-team-identity{display:grid!important;gap:3px!important;min-width:0}
.agency-os-frontend .aof-team-card .aof-team-name-row{display:flex!important;align-items:center!important;gap:10px!important;min-width:0;flex-wrap:wrap}
.agency-os-frontend .aof-team-card .aof-team-name-row>strong{min-width:0}
.agency-os-frontend .aof-team-presence{display:inline-flex!important;align-items:center!important;gap:6px!important;white-space:nowrap!important;font-size:13px!important;line-height:1!important;font-weight:800!important;margin-left:auto!important}
.agency-os-frontend .aof-team-presence-dot{width:9px!important;height:9px!important;border-radius:50%!important;background:currentColor!important;flex:0 0 9px!important}
.agency-os-frontend .aof-team-presence.is-online{color:#49d79f!important}
.agency-os-frontend .aof-team-presence.is-offline{color:#ff6677!important}
@media (max-width:720px){.agency-os-frontend .aof-team-presence{margin-left:0!important}}

/* 1.2.15 compact sticky assignment + yellow contrast contract */
.agency-os-frontend .aof-sticky-timer.is-unassigned{width:min(760px,calc(100vw - 44px))!important}
.agency-os-frontend .aof-sticky-assign{
  grid-template-columns:minmax(240px,1.6fr) minmax(170px,.7fr) auto!important;
  gap:10px!important;align-items:center!important
}
.agency-os-frontend .aof-sticky-search-wrap{position:relative!important;min-width:0!important}
.agency-os-frontend .aof-sticky-job-search,.agency-os-frontend .aof-sticky-filter,.agency-os-frontend .aof-sticky-assign>button[type="submit"]{
  height:44px!important;min-height:44px!important;margin:0!important
}
.agency-os-frontend .aof-sticky-job-results{position:absolute!important;left:0!important;right:0!important;top:calc(100% + 6px)!important;z-index:80!important}
.agency-os-frontend .aof-sticky-filter{min-width:0!important}
.agency-os-frontend .aof-sticky-assign>button[type="submit"]{white-space:nowrap!important}
@media(max-width:760px){
  .agency-os-frontend .aof-sticky-timer.is-unassigned{width:min(390px,calc(100vw - 20px))!important}
  .agency-os-frontend .aof-sticky-assign{grid-template-columns:1fr!important}
}

/* Every yellow/brand-filled interactive surface uses dark text, including nested counters/icons. */
.agency-os-frontend :is(
  .aof-planner-tabs a.current,
  .aof-nav a.current,
  .aof-nav a:hover,
  .aof-segmented button.is-active,
  .aof-jobs-team-filter.is-active,
  .aof-privacy-toggle.is-on,
  [data-aof-privacy].is-on,
  .aof-tag:not(.green):not(.amber):not(.red),
  .aof-sticky-stop,
  .aof-sticky-open,
  .aof-sticky-assign>button[type="submit"]
),
.agency-os-frontend :is(
  .aof-planner-tabs a.current,
  .aof-nav a.current,
  .aof-nav a:hover,
  .aof-segmented button.is-active,
  .aof-jobs-team-filter.is-active,
  .aof-privacy-toggle.is-on,
  [data-aof-privacy].is-on,
  .aof-tag:not(.green):not(.amber):not(.red),
  .aof-sticky-stop,
  .aof-sticky-open,
  .aof-sticky-assign>button[type="submit"]
) *{
  color:#111!important;-webkit-text-fill-color:#111!important;text-shadow:none!important
}

/* 1.2.16 kitchen availability controls */
.agency-os-frontend .aof-kitchen-title-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.agency-os-frontend .aof-kitchen-check-form{margin:0!important;display:inline-flex!important}
.agency-os-frontend .aof-kitchen-check-form .aof-btn{min-height:50px!important;white-space:nowrap!important}
@media(max-width:760px){
  .agency-os-frontend .aof-title{align-items:flex-start!important;flex-direction:column!important}
  .agency-os-frontend .aof-kitchen-title-actions{width:100%!important;justify-content:flex-start!important}
  .agency-os-frontend .aof-kitchen-check-form,.agency-os-frontend .aof-kitchen-check-form .aof-btn{width:100%!important}
}
