/* Shared working frame; edfy tokens and existing editors remain authoritative. */
.work-shell { --work-nav-width:220px; color:var(--color-text-strong); background:var(--color-bg); }
html.work-entry-pending body { min-height:100vh; background:var(--color-bg); }
html.work-entry-pending body > * { visibility:hidden; }
html.work-entry-pending body::before { content:'edfy wird geladen …'; position:fixed; inset:0; z-index:1000; display:grid; place-items:center; visibility:visible; color:var(--color-base-700); background:var(--color-bg); font:600 18px/1.4 var(--font-body); }
.work-shell *, .work-shell *::before, .work-shell *::after { box-sizing:border-box; }
html.work-entry-failed body > :not(#work-entry-error) { display:none !important; }
#work-entry-error { max-width:44rem; margin:10vh auto; padding:24px; display:grid; gap:20px; }
#work-entry-error .btn { justify-self:start; }
.work-shell [hidden] { display:none !important; }
.work-shell :focus-visible { outline:3px solid var(--color-text-strong); outline-offset:3px; }
.work-shell a { text-underline-offset:.2em; }
.work-header { position:sticky; top:0; z-index:30; background:var(--color-bg); display:flex; align-items:center; gap:24px; padding:16px 28px; border-bottom:1px solid var(--color-base-200); }
.work-header > a { display:inline-flex; align-items:center; justify-content:center; min-width:44px; min-height:44px; color:inherit; }
.work-header img { width:128px; height:auto; }
.work-year { flex:1; min-width:0; }
.work-year .school-year-context { margin:0; }
.work-year .school-year-row { align-items:center; gap:6px; }
.work-year .school-year-row .form-field { display:flex; flex-direction:row; align-items:center; gap:12px; flex:0 1 auto; max-width:600px; }
.work-year .select { min-height:44px; width:auto; min-width:min(22rem,60vw); max-width:100%; color:var(--color-text-strong); }
.work-year .btn { font-size:16px; min-height:44px; white-space:normal; }
.work-sidebar { position:fixed; inset:var(--work-header-height,128px) auto 0 0; width:var(--work-nav-width); padding:20px 16px; overflow-y:auto; display:flex; flex-direction:column; gap:32px; }
.work-sidebar nav { display:grid; gap:4px; }
.work-sidebar a, .work-more summary { display:flex; align-items:center; gap:12px; min-height:44px; padding:10px 12px; border-radius:12px; color:var(--color-text-strong); text-decoration:none; font-size:16px; }
.work-sidebar a:hover { background:var(--color-base-100); }
.work-sidebar a[aria-current="page"] { background:var(--color-primary); font-weight:600; }
.work-sidebar img { width:20px; height:20px; object-fit:contain; }
.work-nav-widgets { display:grid; gap:4px; margin-top:20px; }
.work-nav-widgets > p { padding-inline:12px; margin:0 0 4px; color:var(--color-text); }
.work-nav-secondary { margin-top:auto; }
.work-more summary { cursor:pointer; }
.work-more[open] summary { text-decoration:underline; }
.work-menu-button { display:none; }
.work-skip { position:absolute; left:16px; top:-100px; z-index:100; padding:12px; background:white; }
.work-skip:focus { top:8px; }
.work-shell #module-main, .work-shell #edfy-main { margin:0 0 0 var(--work-nav-width); padding:32px; max-width:none; width:auto; min-width:0; }
.work-shell .module-navigation, .work-shell .v2-workspace-navigation, .work-shell .v2-auth-layout, .work-shell .account-dashboard__head { display:none; }
.work-shell .v2-workspace-layout { display:block; }
.work-shell .account-dashboard { margin:0; padding:0; border:0; background:none; box-shadow:none; }
.work-shell .v2-workspace-content { min-width:0; }
.work-shell .account-workspace-heading { margin:0 0 24px; padding:0; }
.work-shell .account-workspace-heading .account-eyebrow, .work-shell [data-account-workspace-description] { display:none; }
.work-shell [data-account-workspace-title] { font-family:var(--font-heading); font-size:32px; line-height:1.2; margin:0; }
.work-shell .account-grid { display:block; }
.work-dashboard-intro { display:grid; gap:24px; min-width:0; }
.work-profile-card { padding:24px; background:var(--color-surface); border:1px solid var(--color-base-200); border-radius:20px; }
.work-profile-top { display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap; }
.work-profile-identity { display:flex; align-items:center; gap:16px; min-width:0; }
.work-profile-identity > div { min-width:0; }
.work-profile-identity h2 { font-size:24px; overflow-wrap:anywhere; margin:0 0 4px; }
.work-profile-identity p { margin:0; color:var(--color-base-700); }
.work-profile-initials { display:grid; place-items:center; width:64px; height:64px; flex:none; border-radius:20px; color:var(--color-text-strong); background:var(--color-highlight); font:24px/1 var(--font-heading); }
.work-profile-card a,.work-holiday-card a { display:inline-flex; align-items:center; min-height:44px; color:var(--color-base-700); text-underline-offset:.2em; }
.work-profile-facts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; margin:24px 0 0; padding-top:20px; border-top:1px solid var(--color-base-200); }
.work-profile-facts dt { color:var(--color-base-700); font-size:14px; margin-bottom:4px; }
.work-profile-facts dd { margin:0; color:var(--color-text-strong); font-weight:600; overflow-wrap:anywhere; }
.work-dashboard-moments { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); gap:24px; }
.work-mindset-card,.work-holiday-card { min-width:0; padding:24px; border-radius:20px; display:flex; flex-direction:column; align-items:start; }
.work-mindset-card { background:var(--color-highlight); color:var(--color-text-strong); }
.work-holiday-card { background:var(--color-surface); border:1px solid var(--color-base-200); }
.work-dashboard-moments h2 { font-size:20px; margin:0 0 20px; }
.work-mindset-quote { max-width:44ch; font:24px/1.4 var(--font-heading); margin:0 0 20px; text-wrap:pretty; }
.work-moment-note { color:var(--color-base-700); margin:0; font-size:14px; }
.work-mindset-card > .work-moment-note { margin-top:auto; }
.work-holiday-content { display:flex; align-items:center; flex-wrap:wrap; gap:20px; flex:1; }
.work-holiday-content h3 { font-size:24px; margin:4px 0 8px; }
.work-holiday-content p { max-width:48ch; }
.work-holiday-days { margin:0; color:var(--color-base-700); }
.work-holiday-calendar { position:relative; flex:none; display:grid; place-items:center; min-width:104px; height:104px; padding:16px; border-radius:12px; border:1px solid var(--color-base-200); border-top:12px solid var(--color-primary); color:var(--color-text-strong); background:var(--color-bg); font:48px/1 var(--font-heading); font-variant-numeric:tabular-nums; transform-origin:50% 0; animation:work-calendar-settle 650ms cubic-bezier(.16,1,.3,1) both; }
.work-holiday-icon { width:64px; height:64px; }
.work-holiday-card > a { margin-top:12px; }
.work-setup-note { max-width:65ch; }
.work-dashboard-intro dd,.work-dashboard-intro h2,.work-dashboard-intro h3,.work-profile-initials,.work-mindset-quote,.work-holiday-content p { text-transform:none; }
@keyframes work-calendar-settle { 0% { transform:perspective(500px) rotateX(-45deg); } 65% { transform:perspective(500px) rotateX(5deg); } 100% { transform:perspective(500px) rotateX(0); } }
@media (max-width:1100px) { .work-profile-facts { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:700px) {
  .work-dashboard-moments { grid-template-columns:minmax(0,1fr); gap:16px; }
  .work-profile-card,.work-mindset-card,.work-holiday-card { padding:20px; }
  .work-mindset-quote { font-size:20px; }
}
@media (max-width:380px) { .work-profile-facts { grid-template-columns:minmax(0,1fr); gap:12px; } .work-profile-initials { width:48px; height:48px; font-size:20px; } }
@media (prefers-reduced-motion:reduce) { .work-holiday-calendar { animation:none; } }
body[data-v2-motion="off"] .work-holiday-calendar { animation:none; }
.work-shell .account-grid > * + * { margin-top:28px; }
.work-shell .account-legacy-license > summary { cursor:pointer; font-weight:600; min-height:44px; padding:10px 0; }
.work-shell .account-legacy-license[open] > summary { margin-bottom:12px; }
.work-shell .work-overview { padding:0; }
.work-shell .lehrwerk-tools { grid-template-columns:repeat(3,minmax(0,1fr)); margin:0; gap:16px; }
.work-tile { display:grid; grid-template-columns:64px minmax(0,1fr); align-content:center; align-items:center; gap:4px 16px; min-height:116px; padding:16px; background:var(--color-surface); border-radius:20px; text-decoration:none; color:var(--color-text-strong); border:1px solid var(--color-base-200); cursor:pointer; transition:border-color var(--transition-base),background-color var(--transition-base),box-shadow var(--transition-base); }
.work-tile:hover { border-color:var(--color-base-500); background:var(--color-base-50); box-shadow:0 8px 18px rgba(47,29,31,.08); }
.work-tile:active { background:var(--color-base-100); }
.work-tile:focus-visible { outline:3px solid var(--color-text-strong); outline-offset:4px; }
.work-tile :is(h2,h3,p,span) { text-decoration:none; }
.work-tile > img { width:64px; height:72px; object-fit:contain; grid-row:1 / 4; }
.work-shell .work-tile :is(h2,h3) { margin:0; font:20px/1.3 var(--font-heading); }
.work-tile p { margin:0; font-size:16px; line-height:1.4; }
.work-tile-status { font-size:14px; font-weight:600; text-decoration:none; }
.work-tile-context { text-decoration:none; color:var(--color-text); }
.work-shell .work-groups { min-height:0; margin-top:0; padding:0; background:none; border:0; box-shadow:none; }
.work-groups-card { overflow:hidden; border:1px solid var(--color-base-200); border-radius:20px; background:var(--color-surface); }
.work-tools-card { overflow:hidden; border:1px solid var(--color-base-200); border-radius:20px; background:var(--color-surface); }
.work-groups-heading { margin:0; }
.work-tools-heading { margin:0; }
.work-groups-toggle { width:100%; min-height:116px; display:grid; grid-template-columns:88px minmax(0,1fr) 44px; align-items:center; gap:16px; padding:14px 20px; border:0; background:var(--color-highlight); color:var(--color-text-strong); text-align:left; cursor:pointer; font:inherit; }
.work-tools-toggle { width:100%; min-height:116px; display:grid; grid-template-columns:88px minmax(0,1fr) 44px; align-items:center; gap:16px; padding:14px 20px; border:0; background:var(--color-highlight); color:var(--color-text-strong); text-align:left; cursor:pointer; font:inherit; }
.work-groups-toggle:hover { background:var(--color-base-200); }
.work-tools-toggle:hover { background:var(--color-base-200); }
.work-groups-toggle:focus-visible { outline:3px solid var(--color-text-strong); outline-offset:-5px; }
.work-tools-toggle:focus-visible { outline:3px solid var(--color-text-strong); outline-offset:-5px; }
.work-groups-toggle--static { grid-template-columns:88px minmax(0,1fr); cursor:default; }
.work-groups-toggle--static:hover { background:var(--color-highlight); }
.work-groups-toggle > img { width:88px; height:88px; object-fit:contain; filter:grayscale(1) sepia(.45) saturate(.65); }
.work-tools-toggle > img { width:72px; height:72px; margin-inline:8px; object-fit:contain; filter:grayscale(1) sepia(.45) saturate(.65); }
.work-groups-title { min-width:0; display:grid; gap:4px; }
.work-tools-title { min-width:0; display:grid; gap:4px; }
.work-groups-title strong { font:24px/1.3 var(--font-heading); }
.work-tools-title strong { font:24px/1.3 var(--font-heading); }
.work-groups-title > span { color:var(--color-base-700); }
.work-tools-title > span { color:var(--color-base-700); }
.work-groups-chevron,.work-tools-chevron { width:12px; height:12px; border-right:2px solid currentColor; border-bottom:2px solid currentColor; transform:rotate(45deg); transition:transform var(--transition-base); }
.work-groups-card.is-open .work-groups-chevron { transform:rotate(225deg); }
.work-tools-card.is-open .work-tools-chevron { transform:rotate(225deg); }
.work-groups-content { display:grid; gap:20px; padding:20px; border-top:1px solid rgba(47,29,31,.12); }
.work-tools-content { padding:20px; border-top:1px solid rgba(47,29,31,.12); }
.work-groups-controls { display:flex; flex-wrap:wrap; align-items:end; gap:12px 20px; margin-bottom:16px; }
.work-groups-sort { display:grid; gap:6px; width:12rem; max-width:100%; font-weight:600; }
.work-groups-search { display:grid; gap:6px; width:24rem; max-width:100%; font-weight:600; }
.work-groups-search input { width:100%; min-height:44px; }
.work-groups-result { margin:0; padding:12px 0; color:var(--color-text); font-size:14px; font-variant-numeric:tabular-nums; }
.work-overview-content { min-width:0; }
.work-shell .work-overview-section { padding:0; border:0; border-radius:0; background:none; box-shadow:none; }
.work-shell .work-overview-section + .work-overview-section { margin-top:36px; }
.work-overview-section .work-groups-message { padding:20px; border:1px solid var(--color-base-200); border-radius:20px; background:var(--color-surface); }
.work-groups-sort .select { width:100%; min-height:44px; color:var(--color-text-strong); text-transform:none; }
.work-groups-list { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.work-groups-message { margin:0; }
.work-section-head { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:16px; margin-bottom:12px; }
.work-shell .work-section-head h2 { font:24px/1.3 var(--font-heading); margin:0; }
.work-section-head .btn { width:auto; min-height:44px; }
.work-continue-list { display:grid; border-block:1px solid var(--color-base-200); }
.work-continue-row { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:8px 20px; padding:16px 4px; color:var(--color-text-strong); text-decoration:none; }
.work-continue-row + .work-continue-row { border-top:1px solid var(--color-base-200); }
.work-continue-row:hover { background:var(--color-surface); }
.work-continue-row strong { font-size:18px; overflow-wrap:anywhere; }
.work-shell .work-continue-row, .work-shell .work-continue-row * { text-transform:none; }
.work-continue-row span,.work-continue-message { color:var(--color-text); }
.work-continue-message { max-width:65ch; margin:0; }
.work-group-row { min-height:120px; padding:0; border:1px solid var(--color-base-200); border-radius:20px; background:var(--color-surface); overflow:hidden; transition:border-color var(--transition-base),background-color var(--transition-base),box-shadow var(--transition-base); }
.work-group-row:hover { border-color:var(--color-base-500); background:var(--color-surface); box-shadow:0 8px 18px rgba(47,29,31,.08); }
.work-group-main { display:grid; grid-template-columns:minmax(0,1fr); align-content:center; gap:12px; width:100%; min-height:120px; padding:20px; color:inherit; text-decoration:none; }
.work-group-main:focus-visible { outline:3px solid var(--color-text-strong); outline-offset:-4px; border-radius:18px; }
.work-group-main > * { min-width:0; overflow-wrap:anywhere; text-transform:none; }
.work-group-identity { display:grid; gap:4px; }
.work-group-identity strong { font:20px/1.3 var(--font-heading); }
.work-group-count { font-variant-numeric:tabular-nums; font-size:14px; font-weight:600; color:var(--color-base-700); }
.work-profile { display:flex; flex-wrap:wrap; gap:16px; align-items:center; }
.work-shell .work-profile h2 { width:100%; margin:0; font:20px/1.3 var(--font-heading); }
.work-profile a { display:inline-flex; min-height:44px; align-items:center; }
.work-profile p { margin:0; flex:1 1 100%; overflow-wrap:anywhere; }
.work-shell #account-ai-credits { margin-bottom:24px; }
.work-shell #account-ai-credits .btn { display:inline-flex; width:auto; margin:8px 12px 8px 0; }
.work-shell .module-status { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; border:0; border-radius:0; padding:0; gap:8px 16px; }
.work-shell .module-status p { font-size:14px; }
.work-shell .module-status .btn { min-height:44px; padding:8px 12px; }
@media(max-width:700px) {
  .work-shell #module-account { display:none; }
  .work-shell .module-heading h1 { font-size:24px; }
  .work-shell #module-main { gap:12px; }
}
.work-shell .v2-footer { margin-left:var(--work-nav-width); width:auto; max-width:none; padding:24px 32px; flex-wrap:wrap; }
.work-shell .v2-footer > * { min-width:0; max-width:100%; }
.work-group-links { display:flex; flex-wrap:wrap; gap:8px 20px; margin:12px 0; }
.work-group-links a { min-height:44px; display:inline-flex; align-items:center; }
.work-group-title { display:inline-flex; align-items:center; min-height:44px; font-weight:600; }
.work-shell :target { scroll-margin-top:calc(var(--work-header-height,128px) + 16px); }
@media(min-width:1700px) { .work-shell #module-main, .work-shell #edfy-main { padding:32px 48px; } }
@media(max-width:1100px) {
  .work-shell .lehrwerk-tools { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .work-groups-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .work-header { flex-wrap:wrap; gap:12px 20px; }
  .work-year { flex-basis:60%; }
  .work-year .school-year-row .form-field { flex-basis:100%; }
}
@media(max-width:820px) {
  .work-header { padding:12px 16px; }
  .work-header { position:static; }
  .work-header > a:first-child { margin-right:auto; }
  .work-year { order:2; flex-basis:100%; }
  .work-year .school-year-row { gap:8px; }
  .work-menu-button { display:block; min-height:44px; padding:8px 16px; border:1px solid var(--color-base-400); border-radius:12px; background:var(--color-surface); color:inherit; font:inherit; }
  .work-sidebar { display:none; position:static; width:auto; padding:16px; border-bottom:1px solid var(--color-base-200); }
  .work-sidebar.is-open { display:flex; }
  .work-shell #module-main, .work-shell #edfy-main { margin:0; padding:24px 16px; }
  .work-shell .v2-footer { margin-left:0; }
  .work-group-main { grid-template-columns:minmax(0,1fr); }
}
@media(max-width:520px) {
  .work-shell .lehrwerk-tools { grid-template-columns:1fr; gap:12px; }
  .work-groups-list { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  .work-tile { min-height:104px; padding:16px; }
  .work-year .school-year-row .form-field { flex-direction:column; align-items:stretch; gap:4px; }
  .work-section-head { align-items:start; }
}

/* B-009 dashboard audit: existing artwork, harmonized tonal treatment only. */
.work-tile > img { filter:grayscale(1) sepia(.45) saturate(.65); }
.work-tile[data-lehrwerk-tool="laermampel"] > img { filter:sepia(.1) saturate(.55); }
.work-group-identity { display:grid; gap:4px; }
.work-group-subjects { font-weight:400; color:var(--color-text); }
.work-group-dot { opacity:.75; }
.work-shell .work-section-head .btn-primary,
.work-shell [data-learning-groups-add] { background:var(--color-primary); color:var(--color-text-strong); border:1px solid var(--color-base-400); border-radius:28px; box-shadow:0 4px 0 var(--color-base-400); padding:12px 20px; font:600 16px/1.4 var(--font-body); min-height:44px; }
.work-year-options { flex:none; width:44px; height:44px; display:grid; place-items:center; padding:0; border:0; border-radius:12px; background:transparent; color:inherit; cursor:pointer; }
.work-year-options:hover { background:var(--color-base-100); }
.work-year-options > img { width:22px; height:22px; object-fit:contain; }
.work-year .school-year-status:empty { display:none; }
.work-group-management { margin:12px 0; }
.work-group-management > summary, .work-group-settings > summary { cursor:pointer; }
.work-group-management > .btn { margin:8px 12px 8px 0; }
.work-selected-group .learning-group-item { border-top:0; }
.work-selected-group > h2 { font-size:28px; margin-bottom:8px; }
.work-group-context { font-weight:600; }
.work-group-links { display:flex; flex-wrap:wrap; align-items:flex-start; gap:8px 12px; }
.work-group-links a { display:inline-flex; align-items:center; justify-content:center; width:auto; max-width:100%; min-height:44px; padding:12px 20px; border:1px solid var(--color-base-300); border-radius:var(--radius-pill); background:var(--color-bg); color:var(--color-text-strong); text-decoration:none; font-weight:600; line-height:var(--lh-tight); white-space:normal; overflow-wrap:anywhere; }
.work-group-links a:hover { background:var(--color-base-100); }
.work-selected-group .form-field { max-width:420px; }
@media(max-width:820px) {
  .work-header { gap:8px 12px; padding:8px 16px; }
  .work-header img { width:104px; }
  .work-menu-button { max-width:148px; padding:8px 10px; line-height:1.2; }
  .work-year .school-year-row { flex-wrap:nowrap; align-items:center; gap:4px; }
  .work-year .school-year-row .form-field { flex:1; flex-direction:row; align-items:center; gap:0; }
  .work-year .school-year-row .form-field > label { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
  .work-year .school-year-row .ui-select-control, .work-year .school-year-row .select { width:100%; min-width:0; }
  .work-year .school-year-row--empty { flex-wrap:wrap; gap:8px; }
  .work-year .school-year-row--empty .form-field { flex-basis:100%; }
  .work-shell .account-workspace-heading { margin-bottom:16px; }
  .work-group-identity { display:grid; gap:4px; }
  .work-group-row { min-height:112px; padding:0; }
  .work-group-main { min-height:112px; padding:16px; }
  .work-group-count { white-space:nowrap; font-size:14px; }
}
@media(max-width:520px) {
  .work-shell .lehrwerk-tools { gap:10px; }
  .work-tile { grid-template-columns:48px minmax(0,1fr); min-height:88px; padding:12px; gap:2px 12px; }
  .work-tile > img { width:48px; height:56px; }
  .work-shell .work-tile :is(h2,h3) { font-size:20px; }
  .work-groups-toggle { min-height:96px; grid-template-columns:64px minmax(0,1fr) 28px; gap:12px; padding:12px; }
  .work-tools-toggle { min-height:96px; grid-template-columns:64px minmax(0,1fr) 28px; gap:12px; padding:12px; }
  .work-groups-toggle > img { width:64px; height:64px; }
  .work-tools-toggle > img { width:52px; height:52px; margin-inline:6px; }
  .work-groups-title strong { font-size:20px; }
  .work-tools-title strong { font-size:20px; }
  .work-groups-title > span { font-size:14px; }
  .work-tools-title > span { font-size:14px; }
  .work-groups-content { padding:16px 12px; }
  .work-tools-content { padding:16px 12px; }
  .work-groups-controls { align-items:end; gap:8px 12px; }
  .work-groups-search { width:100%; }
  .work-groups-sort { width:10rem; }
  .work-group-count { white-space:normal; }
}

@media(prefers-reduced-motion:reduce) {
  .work-tile,.work-group-row { transition:none; }
}

/* Keep the selected class and its work ahead of administrative controls. */
.work-selected-group > [data-learning-groups-status] { margin:0; font-size:14px; }
.work-selected-group > .learning-group-editor__actions:empty { display:none; }
.work-selected-group .learning-group-item { padding:0; border:0; }
.work-selected-group .learning-group-item > p { margin:0; }
.work-shell .learning-group-item > .btn { justify-self:start; width:fit-content !important; }
.learning-group-danger { display:grid; gap:12px; margin-top:20px; padding-top:20px; border-top:1px solid var(--color-danger); }
.learning-group-danger h4,.learning-group-danger p { margin:0; }
.learning-group-danger .btn { justify-self:start; }
.work-selected-group .work-group-links { margin:0; }
.work-selected-group .work-group-management { margin:0; }
.work-nav-foundation { display:flex; align-items:center; gap:10px; padding:10px 12px; min-height:44px; margin-block:8px 16px; border-radius:var(--radius-sm); }
.work-nav-foundation > img { width:24px; height:24px; }
.learning-groups-context > .btn { background:transparent; box-shadow:none; border-color:transparent; }
.work-selected-group .learning-group-item { display:grid; gap:32px; }
.group-detail-head,.group-section-head { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:16px; }
.group-detail-identity { display:grid; gap:8px; min-width:0; }
.group-detail-identity p,.group-section-head h2,.group-tools-section h2 { margin:0; }
.group-detail-jump { display:inline-flex; align-items:center; min-height:44px; color:var(--color-text-strong); }
.group-people-section,.group-tools-section { display:grid; gap:16px; min-width:0; }
.group-people-toolbar { display:flex; flex-wrap:wrap; align-items:end; gap:12px; }
.group-people-toolbar > .form-field { margin:0; width:14rem; max-width:100%; min-width:0; }
.group-people-toolbar > .form-field:first-child { width:24rem; }
.group-people-toolbar .input,.group-people-toolbar .select { width:100%; min-width:0; max-width:100%; }
.group-person-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr)); gap:12px; }
.group-person-card { display:flex; align-items:center; justify-content:flex-start; gap:12px; width:100%; min-width:0; min-height:84px; padding:16px; border:1px solid var(--color-base-200); border-radius:var(--radius-sm); background:var(--color-surface); color:var(--color-text-strong); text-align:left; font:500 16px/1.45 var(--font-ui); cursor:pointer; }
.group-person-card:hover,.group-tool-card:hover { background:var(--color-base-50,var(--color-bg)); }
.group-person-card:focus-visible,.group-tool-card:focus-visible,.group-tool-subjects button:focus-visible { outline:3px solid var(--color-text-strong); outline-offset:3px; }
.group-person-name { overflow-wrap:anywhere; min-width:0; }
.group-person-avatar { flex:0 0 48px; width:48px; height:48px; display:grid; place-items:center; border-radius:50%; overflow:hidden; background:var(--color-bg); }
.group-person-avatar img { width:28px; height:28px; }
.group-person-avatar[data-photo-loaded] img { width:100%; height:100%; object-fit:cover; }
.group-tool-subjects { display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
.group-tool-subjects__label { flex-basis:100%; font-weight:600; }
.group-tool-subjects button { min-height:44px; padding:8px 12px; cursor:pointer; font:500 16px/1.45 var(--font-ui); }
.group-tool-subjects button[aria-pressed=true] { outline:2px solid var(--color-text-strong); outline-offset:2px; font-weight:600; }
.group-tool-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr)); gap:12px; }
.group-tool-card { display:flex; align-items:center; gap:16px; min-height:88px; padding:16px; border:1px solid var(--color-base-200); border-radius:var(--radius-sm); background:var(--color-surface); color:var(--color-text-strong); text-decoration:none; font-weight:600; overflow-wrap:anywhere; }
.group-tool-card img { width:40px; height:40px; flex-shrink:0; }
.group-person-editor { display:grid; gap:24px; max-width:680px; padding:24px; border:1px solid var(--color-base-200); border-radius:var(--radius-md); background:var(--color-surface); }
.group-person-editor h2 { margin:0; }
.group-person-editor__fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.group-person-editor .form-field { min-width:0; width:100%; margin:0; }
.group-person-editor .input { min-width:0; width:100%; }
.group-person-gender { grid-column:1 / -1; display:flex; flex-wrap:wrap; gap:12px; padding:0; border:0; margin:0; }
.group-person-gender legend { margin-bottom:8px; font-weight:600; }
.group-person-gender label { display:inline-flex; align-items:center; min-height:44px; gap:8px; }
.group-person-gender input { accent-color:#050101; }
.group-subject-settings { min-width:0; max-width:100%; }
.group-subject-settings .module-toolbar { display:flex; flex-wrap:wrap; align-items:end; gap:12px; padding-block:16px; border-bottom:1px solid var(--color-base-200); }
.group-subject-settings .form-field { min-width:0; max-width:100%; }
.group-subject-settings .input,.group-subject-settings .select { min-width:0; max-width:100%; }
@media(max-width:600px) {
  .group-detail-head { align-items:flex-start; }
  .group-people-toolbar > .form-field:first-child { width:100%; }
  .group-person-editor { padding:16px; }
  .group-person-editor__fields { grid-template-columns:minmax(0,1fr); }
}
.work-tile > img[src$=".svg"] { filter:grayscale(1) invert(.16) sepia(.45) saturate(.65); }

/* Group actions follow the shared button geometry without turning disclosures into rows. */
[data-learning-groups-widget] details > summary {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  width:fit-content;
  max-width:100%;
  min-height:44px;
  padding:12px 20px;
  border:1px solid var(--color-base-400);
  border-radius:var(--radius-pill);
  background:var(--color-surface);
  color:var(--color-text-strong);
  font:600 16px/var(--lh-tight) var(--font-ui);
  white-space:normal;
  overflow-wrap:anywhere;
  cursor:pointer;
  list-style:none;
}
[data-learning-groups-widget] details > summary::-webkit-details-marker { display:none; }
[data-learning-groups-widget] details > summary::after {
  content:'';
  width:8px;
  height:8px;
  flex:0 0 8px;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  transform:rotate(45deg) translateY(-2px);
}
[data-learning-groups-widget] details[open] > summary::after { transform:rotate(225deg) translate(-2px,-2px); }
[data-learning-groups-widget] details > summary:hover { background:var(--color-highlight); }
