.portal-work{margin:var(--spacing-xl) 0;padding:var(--spacing-xl);background:var(--surface-primary);border:1px solid var(--border-soft);border-radius:var(--radius-medium)}.portal-work-values{display:flex;align-items:center;gap:var(--spacing-2xl);flex-wrap:wrap}.portal-work-values span{font-size:var(--font-small);color:var(--text-muted)}.portal-work-values strong{display:block;margin-top:var(--spacing-xs);font-size:var(--font-section);color:var(--text-primary)}.portal-work .portal-clock{margin-left:auto;min-height:48px;padding:var(--spacing-sm) var(--spacing-xl);border:0;border-radius:var(--radius-small);background:var(--accent-primary);color:var(--text-inverse);font:inherit;font-weight:var(--weight-heading);cursor:pointer}.portal-work .portal-clock:disabled{opacity:.5;cursor:default}.portal-work .portal-hr-links{margin:var(--spacing-lg) 0 0;padding:var(--spacing-md) 0 0;border:0;border-top:1px solid var(--border-soft)}.portal-work-message{margin:var(--spacing-md) 0 0;font-size:var(--font-small)}
body.team-portal-shell{--portal-nav-width:200px;padding-left:var(--portal-nav-width) !important;background:var(--bg-panel);color:var(--text-primary)}
body.team-portal-shell.portal-nav-collapsed{--portal-nav-width:64px}
#team-portal-nav{position:fixed;inset:0 auto 0 0;width:var(--portal-nav-width);z-index:1040;background:var(--surface-primary);border-right:1px solid var(--border-soft);display:flex;flex-direction:column;padding:var(--spacing-md) var(--spacing-sm);font-size:var(--font-body);overflow-y:auto}
#team-portal-nav .portal-brand{display:flex;gap:var(--spacing-md);align-items:center;padding:var(--spacing-md) var(--spacing-sm) var(--spacing-xl);color:var(--text-primary);text-decoration:none;white-space:nowrap}#team-portal-nav .portal-brand b{color:var(--accent-primary);font-size:var(--font-title)}#team-portal-nav small{display:block;color:var(--text-muted);font-size:var(--font-meta)}
#team-portal-nav button{background:none;border:0;border-radius:var(--radius-small);text-align:left;padding:var(--spacing-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap}
#team-portal-nav nav{display:flex;flex-direction:column;gap:var(--spacing-xs);margin-top:var(--spacing-lg)}#team-portal-nav nav a{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-sm);border-radius:var(--radius-small);color:var(--text-secondary);text-decoration:none;white-space:nowrap}#team-portal-nav nav a:hover{background:var(--bg-panel)}#team-portal-nav nav a[aria-current=page]{background:var(--accent-soft);color:var(--accent-primary);box-shadow:var(--shadow-selection)}#team-portal-nav i{font-style:normal;min-width:21px;font-size:var(--font-section);text-align:center}
.portal-nav-bottom{margin-top:auto;display:flex;flex-direction:column;padding-top:var(--spacing-xl)}.portal-user{padding:var(--spacing-sm);font-size:var(--font-meta);color:var(--text-muted);overflow:hidden;text-overflow:ellipsis}.portal-nav-collapsed #team-portal-nav span{display:none}.portal-nav-collapsed #team-portal-nav .portal-brand{padding-left:var(--spacing-sm)}
body.team-portal-shell>.navbar,body.team-portal-shell>footer,body.team-portal-shell .web-footer{display:none!important}
body.team-portal-shell .container,body.team-portal-shell .page-container{max-width:none!important;width:100%!important}body.team-portal-shell .page-content-wrapper{padding:0 !important}body.team-portal-shell .mail-shell,body.team-portal-shell .cal,body.team-portal-shell .bs-shell{max-width:none!important;width:100%!important;margin:0 !important;padding:var(--spacing-lg) !important}
body.team-portal-shell .mail-grid{min-height:calc(100vh - 105px)}body.team-portal-shell .mail-head>a[href="/"],body.team-portal-shell .mail-head>a[href="/team-kalender"],body.team-portal-shell .cal header>a[href="/"],body.team-portal-shell .cal header>a[href="/mail-beta"]{display:none}
.portal-overview{padding:var(--spacing-xl);max-width:1600px}.portal-overview h1{font-size:var(--font-title);margin:0 0 var(--spacing-sm)}.portal-overview h2{font-size:var(--font-section);margin:0 0 var(--spacing-lg)}.portal-overview .muted{color:var(--text-muted);font-size:var(--font-small)}.portal-summary-line{display:flex;gap:var(--spacing-2xl);padding:var(--spacing-xl) 0;border-bottom:1px solid var(--border-soft);flex-wrap:wrap}.portal-summary-line a{color:var(--text-secondary)}.portal-summary-line strong{color:var(--accent-primary);font-size:var(--font-section);margin-right:var(--spacing-sm)}.portal-today-columns{display:grid;grid-template-columns:repeat(3,minmax(200px,1fr));gap:var(--spacing-2xl);margin-top:var(--spacing-xl)}.portal-today-columns section p{padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--border-soft)}.portal-hr-links{display:flex;gap:var(--spacing-lg);margin:0 0 var(--spacing-lg);padding:var(--spacing-sm);border-bottom:1px solid var(--border-soft);flex-wrap:wrap}.portal-hr-links a{color:var(--accent-primary)}
@media(max-width:850px){body.team-portal-shell{--portal-nav-width:64px}#team-portal-nav span{display:none}.portal-today-columns{grid-template-columns:1fr}.portal-overview{padding:var(--spacing-lg)}}

/* Mail Beta visual alignment, 2026-09-30. Presentation only; no grid/flow changes. */
.mail-shell{--ink:var(--text-primary);--muted:var(--text-muted);--line:var(--border-soft);--blue:var(--accent-primary);--pale:var(--bg-panel);--active:var(--accent-soft);font-family:var(--font-family);font-size:var(--font-body);line-height:1.5}
.mail-shell :is(button,input,select,textarea),body:has(.mail-shell)>dialog :is(button,input,select,textarea){font-family:var(--font-family);font-size:var(--font-small);line-height:1.4;box-sizing:border-box}
.mail-shell :is(button,select),body:has(.mail-shell)>dialog :is(button,select){min-height:34px;border:1px solid var(--border-soft);border-radius:var(--radius-small);background:var(--surface-primary);color:var(--text-secondary);padding:var(--spacing-xs) var(--spacing-sm);box-shadow:none;vertical-align:middle}
.mail-shell button,body:has(.mail-shell)>dialog button{cursor:pointer;font-weight:var(--weight-medium)}
.mail-shell button:hover:not(:disabled),body:has(.mail-shell)>dialog button:hover:not(:disabled){background:var(--bg-panel);border-color:var(--border-soft)}
.mail-shell :is(button,input,select,textarea):focus-visible,body:has(.mail-shell)>dialog :is(button,input,select,textarea):focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}
.mail-shell button:disabled,body:has(.mail-shell)>dialog button:disabled{opacity:.5;cursor:not-allowed}
.mail-shell .mail-head{gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.mail-shell .mail-head h1{font-size:var(--font-title);font-weight:var(--weight-heading);letter-spacing:-.4px}.mail-shell #userline{font-size:var(--font-meta);color:var(--muted);margin-top:var(--spacing-2xs)}
.mail-shell .beta-badge{background:var(--accent-soft);border:0;border-radius:var(--radius-small);color:var(--accent-primary);padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-meta)}
.mail-shell .mail-grid{border-color:var(--line);box-shadow:none;border-radius:var(--radius-medium)}
.mail-shell .folders{padding:var(--spacing-lg) var(--spacing-md);background:var(--pale)}
.mail-shell .account{display:block;margin:0 0 var(--spacing-sm);padding:0 var(--spacing-2xs);font-size:var(--font-meta);font-weight:var(--weight-heading);color:var(--muted)}
.mail-shell #account-select{width:100%;height:36px;margin-top:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);color:var(--ink);font-weight:var(--weight-medium);overflow:hidden;text-overflow:ellipsis}
.mail-shell .folders>button{display:flex;align-items:center;justify-content:flex-start;width:100%;text-align:left;min-height:36px;margin:var(--spacing-2xs) 0;padding:var(--spacing-sm) var(--spacing-sm);border:0;border-radius:var(--radius-small);background:transparent;white-space:normal;line-height:1.4}
.mail-shell .folders>button:hover:not(:disabled){background:var(--bg-panel)}
.mail-shell .folders>button[onclick="settingsDialog()"]{color:var(--text-muted);font-size:var(--font-meta);margin:0 0 var(--spacing-md);min-height:30px;padding:var(--spacing-xs) var(--spacing-sm)}
.mail-shell .folders>button.compose{background:var(--accent-primary);color:var(--text-inverse);justify-content:center;font-size:var(--font-body);font-weight:var(--weight-heading);margin:var(--spacing-xs) 0 var(--spacing-lg);min-height:38px}
.mail-shell .folders>button.compose:hover:not(:disabled){background:var(--accent-primary);color:var(--text-inverse)}
.mail-shell :is(#my-work,#my-work+button){font-size:var(--font-small);color:var(--text-secondary);font-weight:var(--weight-medium)}
.mail-shell #my-work .count{margin-left:auto;padding-left:var(--spacing-sm);font-size:var(--font-meta);font-variant-numeric:tabular-nums;color:var(--text-muted)}
.mail-shell #folders{margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--border-soft)}
.mail-shell .folder{min-height:36px;align-items:center;gap:var(--spacing-sm);margin:var(--spacing-2xs) 0;padding:var(--spacing-sm) var(--spacing-sm);font-size:var(--font-small);line-height:1.4;color:var(--text-secondary);border:0;border-radius:var(--radius-small)}
.mail-shell .folder:hover{background:var(--bg-panel)}.mail-shell .folder.active{background:var(--accent-soft);color:var(--accent-primary);font-weight:var(--weight-heading);box-shadow:var(--shadow-selection)}
.mail-shell .folder .count{margin-left:auto;min-width:22px;text-align:right;font-size:var(--font-meta);font-weight:var(--weight-medium);font-variant-numeric:tabular-nums;color:var(--text-muted)}
.mail-shell .folder.active .count{color:var(--accent-primary)}
.mail-shell #work-notice{font-size:var(--font-meta);line-height:1.5;color:var(--text-muted);padding:0 var(--spacing-sm)}.mail-shell #work-notice:empty{display:none}
.mail-shell .folders>details{margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid var(--border-soft);color:var(--text-muted);font-size:var(--font-meta)}.mail-shell .folders summary{padding:var(--spacing-sm) var(--spacing-sm);cursor:pointer}
.mail-shell #work-targets>[data-worker]{border-radius:var(--radius-small);font-size:var(--font-meta)}.mail-shell #work-targets>[data-worker]:hover{background:var(--bg-panel)}
.mail-shell .search{padding:var(--spacing-md);border-color:var(--border-soft)}.mail-shell .search input{height:36px;background:var(--bg-panel);border-color:var(--border-soft);border-radius:var(--radius-small);font-size:var(--font-small)}
.mail-shell .message{border-color:var(--border-soft);padding:var(--spacing-md);box-shadow:var(--shadow-selection)}.mail-shell .message:hover{background:var(--bg-panel)}.mail-shell .message.active{background:var(--accent-soft);border-left:0;box-shadow:var(--shadow-selection)}
.mail-shell .subject{font-size:var(--font-body);line-height:1.45;color:var(--text-primary);margin:var(--spacing-xs) 0}.mail-shell .message.unread .subject{font-weight:var(--weight-heading)}.mail-shell .from{font-size:var(--font-meta);color:var(--text-muted)}.mail-shell .when{font-size:var(--font-meta);color:var(--text-muted)}
.mail-shell .viewer h2{font-size:var(--font-section);line-height:1.35;font-weight:var(--weight-heading);letter-spacing:-.3px;overflow-wrap:anywhere}.mail-shell .meta{font-size:var(--font-meta);line-height:1.65;color:var(--text-muted);border-color:var(--border-soft);padding-bottom:var(--spacing-md);overflow-wrap:anywhere}
.mail-shell .toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:var(--spacing-xs);margin:var(--spacing-lg) 0 var(--spacing-lg)}.mail-shell .toolbar :is(button,select){height:34px;min-height:34px;font-size:var(--font-meta);padding:var(--spacing-xs) var(--spacing-sm);background:var(--bg-panel);border:1px solid var(--border-soft);border-radius:var(--radius-small);max-width:100%}.mail-shell .toolbar button{white-space:nowrap}
.mail-shell .attachment{display:inline-block;padding:var(--spacing-sm) var(--spacing-sm);border:1px solid var(--border-soft);border-radius:var(--radius-small);background:var(--bg-panel);font-size:var(--font-meta);color:var(--text-secondary);margin:var(--spacing-2xs) var(--spacing-xs) var(--spacing-2xs) 0}
.mail-shell .customer{margin-top:var(--spacing-xl);padding:var(--spacing-md) var(--spacing-lg);background:var(--bg-panel);border:0;border-radius:var(--radius-small);color:var(--text-muted);font-size:var(--font-small);line-height:1.6}.mail-shell .customer :is(b,strong){color:var(--text-secondary);font-weight:var(--weight-heading)}
.mail-shell #mail-work-detail{margin-top:var(--spacing-lg) !important;padding:var(--spacing-lg) !important;border:0 !important;border-radius:var(--radius-small);background:var(--bg-panel);font-size:var(--font-small);color:var(--text-muted);line-height:1.6}
.mail-shell #mail-work-detail h3{font-size:var(--font-body);font-weight:var(--weight-heading);color:var(--text-secondary);margin:var(--spacing-xs) 0 var(--spacing-md)}.mail-shell #mail-work-detail h4{font-size:var(--font-small);font-weight:var(--weight-heading);color:var(--text-secondary);margin:var(--spacing-lg) 0 var(--spacing-sm)}.mail-shell #mail-work-detail small{font-size:var(--font-meta);color:var(--text-muted)}.mail-shell #mail-work-detail>button{margin:0 var(--spacing-xs) var(--spacing-sm) 0;font-size:var(--font-meta)}.mail-shell #mail-work-detail label{display:block;font-size:var(--font-meta)}
.mail-shell #mail-work-detail textarea{min-height:76px;background:var(--surface-primary);border:1px solid var(--border-soft);border-radius:var(--radius-small);padding:var(--spacing-sm);margin:var(--spacing-xs) 0 var(--spacing-sm);color:var(--text-secondary)}
body:has(.mail-shell)>dialog{font-family:var(--font-family);color:var(--text-secondary);font-size:var(--font-body);line-height:1.5;border-color:var(--border-soft) !important;box-shadow:var(--shadow-raised)}
body:has(.mail-shell)>dialog h2{font-size:var(--font-section);font-weight:var(--weight-heading)}body:has(.mail-shell)>dialog h3{font-size:var(--font-body);font-weight:var(--weight-heading);margin:var(--spacing-xl) 0 var(--spacing-sm)}body:has(.mail-shell)>dialog :is(input:not([type=checkbox]),textarea){border:1px solid var(--border-soft);border-radius:var(--radius-small);padding:var(--spacing-sm) var(--spacing-sm);color:var(--text-secondary)}body:has(.mail-shell)>dialog input:not([type=checkbox]){min-height:34px}body:has(.mail-shell)>dialog::backdrop{background:color-mix(in srgb, var(--surface-inverse) 33.33%, transparent)}
