/* Implementation Management — minimal Web Awesome Default application theme. */
:root{
  --im-accent:#1677ff;--im-accent-hover:#0967d8;
  --im-bg:#f5f6f7;--im-surface:#fff;--im-surface-raised:#fff;--im-surface-muted:#eef1f3;
  --im-ink:#171a1f;--im-muted:#66707a;--im-border:#d9dee3;--im-border-strong:#b9c1c9;
  --im-radius-xs:6px;--im-radius-sm:8px;--im-radius:10px;--im-radius-lg:12px;
  --im-shadow:none;--im-shadow-hover:none;
  --brand:var(--im-accent);--ink:var(--im-ink);--muted:var(--im-muted);--line:var(--im-border);--paper:var(--im-bg);
  --wa-font-family-body:var(--im-font-family);
  --wa-font-family-heading:var(--wa-font-family-body);--wa-border-radius-scale:1;
  --wa-focus-ring-color:rgba(22,119,255,.3);--wa-focus-ring-width:2px;
  --wa-form-control-border-radius:8px;--wa-form-control-border-color:var(--im-border);--wa-form-control-activated-color:var(--im-accent);
  --wa-color-brand-fill-loud:var(--im-accent);--wa-color-brand-border-loud:var(--im-accent);--wa-color-brand-on-loud:#fff;
}
:root[data-theme=dark]{
  --im-bg:#0f1115;--im-surface:#15181e;--im-surface-raised:#191d24;--im-surface-muted:#20252d;
  --im-ink:#f2f4f7;--im-muted:#9ba4af;--im-border:#2d333c;--im-border-strong:#464e59;--sidebar:#0b0d11;
}
html,body{background:var(--im-bg);color:var(--im-ink)}
body{font-size:14px;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
h1,h2,h3,strong{color:var(--im-ink)}p,small,.muted{color:var(--im-muted)}
button,input,select,textarea{color:var(--im-ink)}

/* Remove decoration while retaining layout and semantic fills. */
:where(.panel,.project-card,.compact-project,.overview-item,.analytics-panel,.analytics-stat,.quarter-card,.csx-card,.materials-card,.stock-card,.stock-hub,.stock-product,.cal-board,.cal-day-panel,.cal-forecast,.cal-chip,.cal-project,.admin-group,.admin-user,.admin-inactive,.login-panel,.fy-admin-card,.request-card,.archive-table,.ui-lab-hero,.ui-component-card,.ui-project-card,.profile-menu,.save-bar,.sort-options,.calendar-popover,.time-popover,.app-confirm){
  background-image:none!important;box-shadow:none!important;backdrop-filter:none!important;filter:none!important
}
:where(.project-card,.compact-project,.overview-item,.analytics-panel,.analytics-stat,.quarter-card,.csx-card,.materials-card,.stock-card,.stock-hub,.stock-product,.cal-chip,.cal-project,.admin-group,.admin-user,.ui-project-card):hover{transform:none!important;box-shadow:none!important}

/* Web Awesome controls. */
wa-button,wa-input,wa-select,wa-checkbox,wa-switch{font-family:var(--wa-font-family-body)}
wa-button::part(base){font-weight:600;letter-spacing:0;border-radius:var(--im-radius-sm);box-shadow:none;transition:background-color .14s ease,border-color .14s ease,color .14s ease}
wa-button:not([disabled]):active::part(base){transform:none}
wa-button[variant=brand]::part(base){background:var(--im-accent);border-color:var(--im-accent);color:#fff}
wa-button[variant=brand]:hover::part(base){background:var(--im-accent-hover);border-color:var(--im-accent-hover)}
wa-input::part(base),wa-select::part(combobox){background:var(--im-surface);border-color:var(--im-border);border-radius:var(--im-radius-sm);box-shadow:none;transition:border-color .14s ease}
wa-input:focus-within::part(base),wa-select:focus-within::part(combobox){border-color:var(--im-accent);box-shadow:0 0 0 2px rgba(22,119,255,.12)}
wa-card::part(base),wa-callout::part(base),wa-dialog::part(panel){background:var(--im-surface);border-color:var(--im-border);border-radius:var(--im-radius);box-shadow:none}

/* App shell and navigation. */
.sidebar{background:#11161b;border-right:1px solid #252c32;color:#b9c1c8;padding-top:24px}
:root[data-theme=dark] .sidebar{background:#0b0d11;border-color:#242930}
.wordmark{font-size:30px;font-weight:720;letter-spacing:-1.2px;color:#fff}
.product-label{padding-top:7px;color:#8f9aa3;font-size:10px;letter-spacing:2px}
.workspace{background:transparent;border-color:#303941;border-radius:var(--im-radius-sm)}
.workspace-symbol{background:#252c33;border-radius:var(--im-radius-xs)}
.nav-label{color:#77828b;font-size:10px;letter-spacing:1.25px}
.nav-item{border:1px solid transparent;border-radius:var(--im-radius-sm);transition:background-color .14s ease,border-color .14s ease,color .14s ease}
.nav-item.active{background:#252a2f!important;border-color:#363d44!important;color:#fff!important}.nav-item.active .icon{color:var(--im-accent)!important}
.nav-item:not(.active):hover{background:#1a2025;color:#eef1f3}
.user{border-color:#2b333a}.avatar{box-shadow:none!important}.main-shell{background:var(--im-bg)}
.topbar{height:60px;background:var(--im-surface);border-color:var(--im-border);color:var(--im-muted)}
.demo-strip,.cloud-strip{background:var(--im-surface-muted)!important;border-color:var(--im-border)!important;color:var(--im-muted)!important}
:root[data-theme=dark] .demo-strip,:root[data-theme=dark] .cloud-strip{background:var(--im-surface)!important;border-color:var(--im-border)!important;color:var(--im-muted)!important}
.demo-strip b,.cloud-strip b{background:rgba(22,119,255,.1)!important;color:#1765c5!important}
:root[data-theme=dark] .demo-strip b,:root[data-theme=dark] .cloud-strip b{background:rgba(22,119,255,.16)!important;color:#8fbeff!important}
main{padding-top:30px}.page-footer{border-top:1px solid var(--im-border)}
.profile-trigger,.top-profile-trigger{border-radius:var(--im-radius-sm)!important}
.profile-menu{background:var(--im-surface)!important;border:1px solid var(--im-border)!important;border-radius:var(--im-radius)!important}

/* Typography and page headings. */
.page-heading,.compact-heading{margin-bottom:22px!important}
.heading-dot{color:var(--im-accent)!important}
.eyebrow,.admin-eyebrow{color:var(--im-muted)!important;font-size:10px!important;font-weight:650!important;letter-spacing:.12em!important}
.panel-title h2,.dash-panel-heading h2,.section-heading h2,.csx-section-heading h2{font-size:16px!important;font-weight:620!important;letter-spacing:-.2px!important}

/* Shared actions and fields. */
.primary,.secondary,.danger-button,.back-link,.sort-trigger,.filter-reset,.icon-button,.text-button{
  border-radius:var(--im-radius-sm)!important;box-shadow:none!important;transform:none!important;
  transition:background-color .14s ease,border-color .14s ease,color .14s ease!important
}
.primary{background:var(--im-accent)!important;border:1px solid var(--im-accent)!important;color:#fff!important}
.primary:hover{background:var(--im-accent-hover)!important;border-color:var(--im-accent-hover)!important}
.secondary,.back-link,.sort-trigger,.filter-reset,.icon-button{background:var(--im-surface)!important;border:1px solid var(--im-border)!important;color:var(--im-ink)!important}
.secondary:hover,.back-link:hover,.sort-trigger:hover,.filter-reset:hover:not(:disabled),.icon-button:hover{background:var(--im-surface-muted)!important;border-color:var(--im-border-strong)!important}
.text-button{color:var(--im-accent-hover)!important}.filter-reset:disabled{background:var(--im-surface-muted)!important;opacity:.48}
.search,.field input,.field select,.field textarea,.select-trigger,.projects-section>.filters select,.stock-toolbar input,.stock-item input{
  background:var(--im-surface)!important;color:var(--im-ink)!important;border:1px solid var(--im-border)!important;
  border-radius:var(--im-radius-sm)!important;box-shadow:none!important
}
.search:focus-within,.field input:focus,.field select:focus,.field textarea:focus,.select-trigger:focus,.select-trigger[aria-expanded=true],.projects-section>.filters select:focus{
  outline:0!important;border-color:var(--im-accent)!important;box-shadow:0 0 0 2px rgba(22,119,255,.12)!important
}
.field input[readonly],.field textarea[readonly],.field select:disabled{background:var(--im-surface-muted)!important;color:var(--im-muted)!important;-webkit-text-fill-color:var(--im-muted)!important}
.sort-options,.select-options,.calendar-popover,.time-popover{background:var(--im-surface)!important;border:1px solid var(--im-border)!important;border-radius:var(--im-radius)!important}
.sort-options button:hover,.select-options button:hover{background:var(--im-surface-muted)!important}
.sort-options button[aria-pressed=true],.select-options button[aria-selected=true]{background:#eaf3ff!important;color:#145fae!important}
:root[data-theme=dark] .sort-options button[aria-pressed=true],:root[data-theme=dark] .select-options button[aria-selected=true]{background:#172c48!important;color:#92c1ff!important}

/* Reusable surfaces and feedback. */
.panel,.analytics-panel,.cal-board,.cal-day-panel,.cal-forecast,.admin-page .panel,.admin-inactive,.login-panel,.fy-admin-card,.request-card,.archive-table{
  background:var(--im-surface)!important;border:1px solid var(--im-border)!important;border-radius:var(--im-radius)!important;box-shadow:none!important
}
.section-icon{background:var(--im-surface-muted);color:var(--im-muted);border-radius:var(--im-radius-sm)}
.save-bar{background:var(--im-surface)!important;border:1px solid var(--im-border)!important;border-radius:var(--im-radius)!important}
.info-banner,.installation-warning,.progress-warning,.printer-warning,.compact-alert{
  background:#fff8e8!important;border:1px solid #ead69a!important;border-left:3px solid #d5a22f!important;
  color:#795a13!important;border-radius:var(--im-radius-sm)!important
}
:root[data-theme=dark] .info-banner,:root[data-theme=dark] .installation-warning,:root[data-theme=dark] .progress-warning,:root[data-theme=dark] .printer-warning,:root[data-theme=dark] .compact-alert{
  background:#292313!important;border-color:#5b4d22!important;border-left-color:#d5a22f!important;color:#ecd582!important
}

/* Projects overview and filters. */
#main .compact-heading{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:20px;align-items:center}
#main .compact-heading .project-overview{display:grid;grid-template-columns:repeat(6,92px);gap:8px;width:max-content;max-width:100%;overflow-x:auto;padding:0;scrollbar-width:none}
#main .compact-heading .overview-item{width:92px;min-width:92px;height:58px;min-height:58px;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;align-content:center;align-items:baseline;column-gap:5px;padding:8px 9px;border:1px solid var(--im-border);border-radius:var(--im-radius-sm);background:var(--im-surface)}
#main .compact-heading .overview-item strong{grid-row:1/-1;align-self:center;font-size:22px;font-weight:650;color:var(--console-ink,var(--im-ink))}
#main .compact-heading .overview-item>span{font-size:10px;line-height:1.15;color:var(--im-muted)}
.stock-page .project-overview{grid-template-columns:repeat(2,132px)!important}
#main .stock-page .overview-item{width:132px!important;min-width:132px!important;max-width:132px!important;grid-template-columns:auto minmax(0,1fr)}
.projects-section>.filters{display:grid;grid-template-columns:minmax(220px,1.55fr) repeat(3,minmax(128px,.72fr)) 104px 43px;gap:8px;padding:8px;border:1px solid var(--im-border);border-radius:var(--im-radius);background:var(--im-surface)}
.projects-section>.filters .search,.projects-section>.filters select,.sort-trigger,.filter-reset{height:42px}
.projects-section>.results-meta{margin:12px 2px 10px;color:var(--im-muted)}.projects-section>.cards{gap:12px}

/* Project cards: flat, with a single semantic state rail. */
.compact-project{--card-tone:var(--state-rgb);position:relative;padding:16px 16px 0!important;border:1px solid var(--im-border)!important;border-left:3px solid rgb(var(--state-rgb))!important;border-radius:var(--im-radius)!important;background:var(--im-surface)!important;isolation:isolate}
.compact-project:before{display:none!important}
.compact-project:hover{border-color:var(--im-border-strong)!important;border-left-color:rgb(var(--state-rgb))!important}
.compact-project .badge{border:0;border-radius:var(--im-radius-xs);background:rgba(var(--state-rgb),.12);color:var(--state-ink);backdrop-filter:none}
.compact-project h3{font-size:17px;font-weight:620;letter-spacing:-.25px;margin-bottom:5px}
.compact-project .location,.compact-project .location>span,.compact-project .track-caption,.compact-project .card-people small{color:var(--im-muted)}
.compact-project .compact-date{background:transparent!important;border-color:var(--im-border)!important;border-radius:0!important}
.compact-project .compact-date>.icon,.compact-project .track-caption>.icon{color:rgb(var(--state-rgb))}
.compact-project .due-tag{border:0;border-radius:var(--im-radius-xs);background:rgba(var(--state-rgb),.10);color:var(--state-ink)}
.compact-project .card-track>span{height:4px;background:var(--im-surface-muted)}
.compact-project .card-track>span.filled{background:rgb(var(--state-rgb))}
.compact-project .card-track-row.is-ready .card-track>span.filled{background:#3da77b}
.compact-project .compact-alert{margin:2px -2px 9px;padding:7px 9px 7px 11px}.compact-project .compact-alert:before{display:none}
.compact-project .card-people{margin-inline:-16px;padding:10px 16px 12px;border-color:var(--im-border);background:transparent}
.compact-project .project-vendor{border-color:var(--im-border)}
.project-status-archive{margin-top:14px!important;padding:0!important;border:1px solid var(--im-border);border-radius:var(--im-radius);background:var(--im-surface);box-shadow:none;overflow:hidden}
.project-status-archive>summary{min-height:50px;padding:13px 16px;color:var(--im-ink)}
.project-status-archive>summary:hover{background:var(--im-surface-muted)}.project-status-archive .archive-content{border-color:var(--im-border)}

/* Semantic project states remain identical in both themes. */
:is(.compact-project.tone-working,.project-detail-heading .badge.working){--state-rgb:100,116,139;--state-ink:#52647a}:is(.compact-project.tone-scheduled,.project-detail-heading .badge.scheduled){--state-rgb:79,143,216;--state-ink:#356da9}:is(.compact-project.tone-installed,.project-detail-heading .badge.installed){--state-rgb:61,167,123;--state-ink:#257454}:is(.compact-project.tone-prechurn,.project-detail-heading .badge.prechurn){--state-rgb:235,143,72;--state-ink:#a5551c}:is(.compact-project.tone-churn,.project-detail-heading .badge.churn){--state-rgb:228,71,85;--state-ink:#b82f3d}:is(.compact-project.tone-stalled,.project-detail-heading .badge.stalled){--state-rgb:202,153,42;--state-ink:#86620e}
:root[data-theme=dark] :is(.compact-project.tone-working,.project-detail-heading .badge.working){--state-ink:#b8c7da}:root[data-theme=dark] :is(.compact-project.tone-scheduled,.project-detail-heading .badge.scheduled){--state-ink:#9bc8f4}:root[data-theme=dark] :is(.compact-project.tone-installed,.project-detail-heading .badge.installed){--state-ink:#8fd5b5}:root[data-theme=dark] :is(.compact-project.tone-prechurn,.project-detail-heading .badge.prechurn){--state-ink:#f5b987}:root[data-theme=dark] :is(.compact-project.tone-churn,.project-detail-heading .badge.churn){--state-ink:#ff9aa5}:root[data-theme=dark] :is(.compact-project.tone-stalled,.project-detail-heading .badge.stalled){--state-ink:#f1ce77}
.badge.working{background:#eef2f6;color:#52647a}.badge.scheduled{background:#edf5ff;color:#356da9}.badge.installed{background:#eaf8f1;color:#257454}.badge.prechurn{background:#fff0e4;color:#a5551c}.badge.churn{background:#ffedf0;color:#b82f3d}.badge.stalled{background:#fff6d8;color:#86620e}
:root[data-theme=dark] .badge.working{background:#202936;color:#b8c7da}:root[data-theme=dark] .badge.scheduled{background:#172a3d;color:#9bc8f4}:root[data-theme=dark] .badge.installed{background:#173127;color:#8fd5b5}:root[data-theme=dark] .badge.prechurn{background:#382518;color:#f5b987}:root[data-theme=dark] .badge.churn{background:#391b20;color:#ff9aa5}:root[data-theme=dark] .badge.stalled{background:#332b16;color:#f1ce77}
.project-state-control{--status-bg:#eef2f6;--status-ink:#52647a;--status-border:#bbc7d4}.project-state-control.state-scheduled{--status-bg:#edf5ff;--status-ink:#356da9;--status-border:#a9c8eb}.project-state-control.state-installed{--status-bg:#eaf8f1;--status-ink:#257454;--status-border:#9bcdb7}.project-state-control.state-prechurn{--status-bg:#fff0e4;--status-ink:#a5551c;--status-border:#efbd94}.project-state-control.state-churn{--status-bg:#ffedf0;--status-ink:#b82f3d;--status-border:#eda6ad}.project-state-control.state-stalled{--status-bg:#fff6d8;--status-ink:#86620e;--status-border:#e1c66d}

/* Project detail. */
#main>.back-link{min-height:36px;margin-bottom:14px;padding:7px 10px}
#main>.detail-heading{min-height:116px;margin:0 0 16px;padding:20px 22px;border:1px solid var(--im-border);border-radius:var(--im-radius);background:var(--im-surface)}
#main>.detail-heading .detail-status{gap:8px}.information-layout{gap:16px!important}
.information-layout .panel{padding:20px!important;border-radius:var(--im-radius)!important}
.information-layout .field input,.information-layout .field select,.information-layout .field textarea{min-height:42px}
.information-layout .stage{border-color:var(--im-border)!important}.information-layout .stage.checked{color:#2b825a}
.information-layout .advancement-row{border-color:var(--im-border)!important}.information-layout .state-options>button{border-radius:var(--im-radius-sm)}

/* Dashboard. */
.dashboard-design{color:var(--im-ink)}
.dashboard-design .dash-view-switch,.calendar-page .dash-view-switch,.admin-tabs{padding:3px!important;border:1px solid var(--im-border)!important;border-radius:var(--im-radius-sm)!important;background:var(--im-surface-muted)!important;box-shadow:none!important;backdrop-filter:none!important}
.dashboard-design .dash-view-switch button,.calendar-page .dash-view-switch button,.admin-tabs button{border-radius:var(--im-radius-xs)!important;color:var(--im-muted)!important}
.dashboard-design .dash-view-switch button[aria-pressed=true],.calendar-page .dash-view-switch button[aria-pressed=true],.admin-tabs button[aria-pressed=true]{background:var(--im-surface)!important;color:var(--im-ink)!important;border:1px solid var(--im-border)!important;box-shadow:none!important}
.dashboard-design .fiscal-quarter-group{border-color:var(--im-border)}.dashboard-design .fiscal-quarter-group.is-current{border-color:var(--im-accent)}
.dashboard-design .fiscal-month{background:var(--im-surface)!important;border-color:var(--im-border)!important;border-radius:var(--im-radius-sm)!important;color:var(--im-muted)!important;box-shadow:none!important}
.dashboard-design .fiscal-month:hover{background:var(--im-surface-muted)!important;border-color:var(--im-border-strong)!important}
.dashboard-design .fiscal-month[aria-pressed=true]{background:#eaf3ff!important;border-color:#9bc5ff!important;color:#145fae!important}
:root[data-theme=dark] .dashboard-design .fiscal-month[aria-pressed=true]{background:#172c48!important;border-color:#315f96!important;color:#92c1ff!important}
.dashboard-design .analytics-panel{padding:20px}
.dashboard-design .analytics-stat,.dashboard-design .annual-stats .analytics-stat{background:var(--im-surface)!important;border:1px solid var(--im-border)!important;border-radius:var(--im-radius)!important;box-shadow:none!important}
.dashboard-design .analytics-stat:hover{border-color:var(--im-border-strong)!important}
.dashboard-design .analytics-stat.stat-green{--stat-ink:#2b825a}.dashboard-design .analytics-stat.stat-blue{--stat-ink:#447ec6}.dashboard-design .analytics-stat.stat-red{--stat-ink:#c55262}.dashboard-design .analytics-stat.stat-amber{--stat-ink:#9a742e}
.dashboard-design .metric-accent{height:2px;background:var(--stat-ink)}
.dashboard-design .monthly-analysis-layout>.period-progress,.dashboard-design .annual-analysis-layout>.analytics-panel:first-child,.dashboard-design .monthly-analysis-layout .analytics-panel:last-child{background:var(--im-surface)!important}
.dashboard-design .target-ring{filter:none}
.dashboard-design .quarter-card,.dashboard-design .quarter-card:last-child{background:var(--im-surface)!important;border:1px solid var(--im-border)!important;border-radius:var(--im-radius)!important;box-shadow:none!important}
.dashboard-design .quarter-card.selected{background:#f1f7ff!important;border-color:#9bc5ff!important}
:root[data-theme=dark] .dashboard-design .quarter-card.selected{background:#281c15!important;border-color:#71432a!important}
.dashboard-design .fiscal-table thead th,.dashboard-design .monthly-analysis-layout .fiscal-table thead th{background:var(--im-surface-muted)!important;box-shadow:none!important;color:var(--im-muted)}
.dashboard-design .fiscal-table tbody tr:hover{background:var(--im-surface-muted)!important}.dashboard-design .fiscal-table tfoot{background:var(--im-surface-muted)!important}
.analytics-avatar{background:var(--im-surface-muted)!important;border-radius:var(--im-radius-xs)!important;color:var(--im-muted)!important}
.dashboard-design .analytics-method[open]{background:var(--im-surface-muted)!important;border-radius:var(--im-radius-sm)}
#main .dashboard-design .fy-chart{background:none!important}
#main .dashboard-design .fy-chart:after{background:var(--im-border-strong)!important;box-shadow:none!important}
#main .dashboard-design .fy-chart-month:before{background:none!important;border-color:var(--im-border)!important}
#main .dashboard-design .fy-chart-month.selected{background:var(--im-surface-muted)!important}
#main .dashboard-design .fy-chart-month:hover{background:color-mix(in srgb,var(--im-surface-muted),transparent 35%)!important}
#main .dashboard-design .fy-column{filter:none!important}
.dashboard-design .chart-tooltip{background:var(--im-ink);border:0;border-radius:var(--im-radius-sm);color:var(--im-bg);box-shadow:none}

/* Calendar. */
.cal-board{overflow:hidden}.cal-weekday{background:var(--im-surface-muted);border-color:var(--im-border);color:var(--im-muted)}
.cal-day{border-color:var(--im-border);background:var(--im-surface)}.cal-day.weekend,.cal-day.outside{background:color-mix(in srgb,var(--im-surface-muted),var(--im-surface) 45%)}
.cal-day.selected{background:#f1f7ff!important;box-shadow:inset 0 0 0 1px #9bc5ff!important}
:root[data-theme=dark] .cal-day.selected{background:#281c15!important;box-shadow:inset 0 0 0 1px #71432a!important}
.cal-day-button.today{background:var(--im-accent);color:#fff}.cal-day-button:hover{background:var(--im-surface-muted);box-shadow:none}
.cal-chip,.cal-project{background:var(--cal-bg)!important;border:1px solid var(--cal-border)!important;border-radius:var(--im-radius-xs)!important}
:root[data-theme=dark] .cal-scheduled{--cal-ink:#9bc8f4;--cal-bg:#172a3d;--cal-border:#284969}:root[data-theme=dark] .cal-installed{--cal-ink:#8fd5b5;--cal-bg:#173127;--cal-border:#285442}:root[data-theme=dark] .cal-churn{--cal-ink:#ff9aa5;--cal-bg:#391b20;--cal-border:#673039}
.cal-forecast{background:var(--im-surface)!important}.cal-more{background:var(--im-surface-muted)!important;color:var(--im-muted)!important;border-radius:var(--im-radius-xs)!important}

/* Operational pages and stock. */
.csx-card,.materials-card,.stock-card,.stock-hub{background:var(--im-surface)!important;border:1px solid var(--im-border)!important;border-radius:var(--im-radius)!important}
.csx-card{border-left:3px solid var(--csx-color)!important}.csx-segments i{background:var(--im-surface-muted)}.csx-segments .filled{background:var(--csx-color)!important}
.materials-card{border-left:3px solid var(--material-ink)!important}.materials-seller{background:var(--im-surface-muted)!important;border-color:var(--im-border)!important}
.materials-seller>small,.materials-missing li{background:var(--im-surface-muted)!important;border:1px solid var(--im-border);color:var(--material-ink)!important;border-radius:var(--im-radius-xs)!important}
.materials-project,.materials-missing{border-color:var(--im-border)!important}
.stock-hub{border-top:3px solid rgb(var(--hub-rgb))!important}
.stock-hub-header b,.stock-hub-icon{background:rgba(var(--hub-rgb),.12)!important;color:var(--hub-ink);border-radius:var(--im-radius-sm)}
.stock-hub-body{border-color:var(--im-border)!important}
.stock-product{background:var(--im-surface)!important;border:1px solid var(--im-border)!important;border-radius:var(--im-radius-sm)!important}
.stock-product.has-stock{background:var(--im-surface-muted)!important;border-color:rgba(var(--hub-rgb),.42)!important}
.stock-stepper button,.stock-stepper button[data-delta="1"]{background:var(--im-surface)!important;border:1px solid var(--im-border)!important;color:var(--hub-ink)!important}
.stock-stepper button:hover:not(:disabled){background:var(--im-surface-muted)!important;border-color:var(--im-border-strong)!important}
.stock-hub-footer .primary{background:var(--im-accent)!important;border-color:var(--im-accent)!important;color:#fff!important}

/* Administration, preferences and super admin. */
.admin-page{--admin-surface:var(--im-surface)!important;--admin-ink:var(--im-ink)!important;--admin-muted:var(--im-muted)!important;--admin-line:var(--im-border)!important;--admin-soft:var(--im-surface-muted)!important}
.admin-tabs{position:static!important;width:fit-content!important;margin-bottom:14px!important;overflow-x:auto}
.admin-tabs wa-button::part(base){min-height:34px;padding-inline:13px;border-radius:var(--im-radius-xs)}
.admin-tabs wa-button[aria-pressed=true]::part(base){background:var(--im-surface)!important;border-color:var(--im-border-strong)!important;color:var(--im-ink)!important}
.admin-group,.admin-user{background:var(--im-surface)!important;border:1px solid var(--im-border)!important;border-radius:var(--im-radius)!important}
.admin-group>header{background:var(--im-surface-muted)!important;border-color:var(--im-border)!important;padding:15px 17px!important}
.admin-person{border-color:var(--im-border)!important}.admin-person:hover{background:var(--im-surface-muted)!important}
.admin-access,.admin-status.inactive,.planned-feature{background:var(--im-surface-muted)!important;border-radius:var(--im-radius-xs)}
.admin-access.is-admin{background:#eaf3ff!important;color:#145fae!important}
:root[data-theme=dark] .admin-access.is-admin{background:#172c48!important;color:#92c1ff!important}
.hub-assignment,.hub-check-grid label{background:var(--im-surface)!important;border-color:var(--im-border)!important;border-radius:var(--im-radius-sm)!important}
.hub-check-grid label:has(input:checked){background:#f1f7ff!important;border-color:#9bc5ff!important;box-shadow:none!important}
:root[data-theme=dark] .hub-check-grid label:has(input:checked){background:#281c15!important;border-color:#71432a!important}
.admin-danger{background:var(--im-surface)!important;border:1px solid #df9aa0!important;border-left:3px solid #cf5c64!important;border-radius:var(--im-radius)!important}

/* Login, archives, dialogs and feedback. */
.login-page{background:var(--im-bg)!important;background-image:none!important}
.login-panel,.login-intro{background:var(--im-surface)!important;background-image:none!important;box-shadow:none!important;border-color:var(--im-border)!important}
.login-brand{color:var(--im-accent)!important}
.app-confirm{background:var(--im-surface)!important;border:1px solid var(--im-border)!important;border-radius:var(--im-radius)!important;box-shadow:none!important}
#toast{background:var(--im-ink);color:var(--im-bg);border:1px solid var(--im-border);border-radius:var(--im-radius-sm);box-shadow:none}
#toast.error{background:#a73540;color:#fff;border-color:#a73540}.archive-year-badge,.archive-edit-badge{border-radius:var(--im-radius-xs)!important}

/* UI Lab documents the same flat system used by the product. */
.ui-lab{display:grid;gap:24px;padding-bottom:30px}
.ui-lab-hero{min-height:auto;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:28px;padding:30px;border:1px solid var(--im-border);border-radius:var(--im-radius-lg);background:var(--im-surface)!important}
.ui-lab-hero:before{display:none}.ui-lab-hero h2{max-width:720px;font-size:clamp(30px,4vw,48px);line-height:1.02;letter-spacing:-.045em;font-weight:650;margin:10px 0 16px}.ui-lab-hero h2 span{color:var(--im-accent)}.ui-lab-hero p{max-width:650px;color:var(--im-muted);line-height:1.65}
.ui-lab-orbit{width:120px;height:120px;display:grid;place-items:center;border:1px solid var(--im-border);border-radius:var(--im-radius);box-shadow:none}.ui-lab-orbit:before,.ui-lab-orbit:after,.ui-lab-orbit i{display:none}.ui-lab-orbit span{font-size:22px;font-weight:650}
.ui-lab-section{display:grid;gap:12px}.ui-lab-title{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.ui-lab-title>div{display:flex;align-items:center;gap:9px}.ui-lab-title span{font-size:10px;font-weight:700;color:var(--im-accent);letter-spacing:.1em}.ui-lab-title h3{font-size:17px}.ui-lab-title>p{font-size:11px;color:var(--im-muted)}
.ui-component-card::part(base){padding:20px;background:var(--im-surface);border-color:var(--im-border);border-radius:var(--im-radius);box-shadow:none}
.ui-button-row{display:flex;flex-wrap:wrap;gap:9px}.ui-control-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:end}.ui-state-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.ui-project-card{padding:17px;border:1px solid var(--im-border);border-left:3px solid rgb(var(--ui-tone));border-radius:var(--im-radius);background:var(--im-surface)!important}
.ui-project-card h4{font-size:16px;margin:15px 0 4px}.ui-project-card>p{color:var(--im-muted)}.ui-feedback-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ui-lab-footer{border-color:var(--im-border)}

@media(max-width:1200px){#main .compact-heading{grid-template-columns:auto minmax(0,1fr)}#main .compact-heading>.primary{grid-column:2;grid-row:1;justify-self:end}#main .compact-heading .project-overview{grid-column:1/-1;grid-row:2}.projects-section>.filters{grid-template-columns:minmax(190px,1.35fr) repeat(3,minmax(115px,.8fr)) 96px 43px}}
@media(max-width:900px){.projects-section>.filters{grid-template-columns:minmax(0,1fr) repeat(2,minmax(125px,.7fr))}.projects-section>.filters>.search{grid-column:1/-1}.information-layout{grid-template-columns:1fr!important}.information-layout .detail-main>.panel:first-child{grid-column:1;grid-row:1}.information-layout>.advancement{grid-column:1;grid-row:2}.information-layout .detail-main>.panel:nth-child(2){grid-column:1;grid-row:3}}
@media(max-width:760px){
  #main .compact-heading{grid-template-columns:1fr auto;gap:13px 9px}#main .compact-heading>.primary{grid-column:2;grid-row:1;margin:0;padding-inline:12px}
  #main .compact-heading .project-overview{grid-column:1/-1;grid-row:2;display:flex;width:calc(100vw - 36px);overflow-x:auto}
  #main .compact-heading .overview-item{flex:0 0 88px;width:88px;min-width:88px;height:56px;min-height:56px}
  .projects-section>.filters{grid-template-columns:1fr 1fr;padding:7px}.projects-section>.filters>.search{grid-column:1/-1}
  .projects-section>.cards{gap:10px}.compact-project h3{min-height:0;font-size:18px}
  #main>.detail-heading{min-height:0;align-items:stretch;flex-direction:column;padding:18px}.information-layout .panel{padding:17px!important}
  .ui-lab-hero{grid-template-columns:1fr;padding:24px 20px}.ui-lab-orbit{display:none}.ui-state-grid,.ui-feedback-grid,.ui-control-grid{grid-template-columns:1fr}
  .admin-tabs{width:100%!important;display:flex;flex-wrap:wrap}.admin-tabs wa-button{flex:1 1 100px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.compact-project,.primary,.secondary,.nav-item,wa-button::part(base){transition:none!important}}
