@import"https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700&family=Material+Symbols+Rounded:opsz,wght,FILL,GRAD@20..48,400,0,0";:root{--color-background: #1b1e21;--color-surface: #25292d;--color-surface-raised: #2e3338;--color-surface-hover: #353b40;--color-surface-active: #3b4247;--color-border: #3e4348;--color-border-strong: #565d63;--color-text: #f2f2f2;--color-text-muted: #b6b6b6;--color-text-faint: #858b90;--color-success: #89966a;--color-success-surface: #2e3528;--color-warning: #b59c5a;--color-warning-surface: #393425;--color-error: #a85f5a;--color-error-surface: #3c2929;--color-info: #7895a7;--color-info-surface: #29373e;--color-accent: #9da873;--color-accent-strong: #b2bc82;--color-overlay: rgb(0 0 0 / 66%);--space-2xs: .25rem;--space-xs: .5rem;--space-sm: .75rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--radius-sm: .375rem;--radius-md: .625rem;--radius-lg: .875rem;--radius-round: 999rem;--shadow-sm: 0 .125rem .375rem rgb(0 0 0 / 18%);--shadow-md: 0 .625rem 1.5rem rgb(0 0 0 / 22%);--shadow-lg: 0 1.5rem 3rem rgb(0 0 0 / 32%);--font-family: "Manrope", sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-md: 1rem;--font-size-lg: 1.25rem;--font-size-xl: 1.5rem;--font-size-2xl: 2rem;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.2;--line-height-normal: 1.5;--duration-fast: .12s;--duration-medium: .2s;--duration-slow: .32s;--easing-standard: cubic-bezier(.2, 0, 0, 1);--z-sidebar: 10;--z-header: 20;--z-overlay: 30;--z-dialog: 40;--z-notification: 50;--layout-sidebar-width: 16.5rem;--layout-header-height: 4rem;--layout-content-max: 90rem;--layout-content-padding: var(--space-xl);--control-height: 2.5rem;--breakpoint-mobile: 48rem;--breakpoint-tablet: 64rem}:root{color:var(--color-text);background:var(--color-background);font-family:var(--font-family);font-size:var(--font-size-md);line-height:var(--line-height-normal);color-scheme:dark;--md-sys-color-primary: var(--color-accent);--md-sys-color-on-primary: var(--color-background);--md-sys-color-surface: var(--color-surface);--md-sys-color-on-surface: var(--color-text);--md-sys-color-surface-container-highest: var(--color-surface-raised);--md-sys-color-outline: var(--color-border);--md-sys-color-error: var(--color-error);--md-sys-color-on-surface-variant: var(--color-text-muted);--md-sys-typescale-body-large-font: var(--font-family);--md-sys-typescale-label-large-font: var(--font-family)}*{box-sizing:border-box}app-layout,page-layout,section-header,status-card,info-card,loading-overlay,empty-state,error-state,app-toolbar,data-table,dashboard-page,account-page,users-page,panel-status-card,system-status-card,zomboid-status-card,quick-access-card{display:block;break-inside:avoid;margin-bottom:var(--space-lg)}body{min-width:0;min-height:100vh;margin:0;background:var(--color-background)}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}.material-symbols-rounded{font-family:Material Symbols Rounded;font-weight:var(--font-weight-regular);font-style:normal;font-size:var(--font-size-lg);line-height:var(--line-height-tight);letter-spacing:normal;text-transform:none;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-feature-settings:"liga";-webkit-font-smoothing:antialiased}.app-shell{min-height:100vh;background:var(--color-background)}.app-header{position:sticky;top:0;z-index:var(--z-header);display:flex;align-items:center;justify-content:space-between;min-height:var(--layout-header-height);padding:0 var(--space-lg);border-bottom:var(--space-2xs) solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-sm)}.app-header__brand,.app-header__tools,.app-header__user,.base-card__title,.section-header__heading,.action-button,.status-chip,.loading-overlay,.error-state,.empty-state{display:flex;align-items:center}.app-header__brand{gap:var(--space-sm)}.app-header__brand div{display:grid;gap:var(--space-2xs)}.app-header__brand strong{font-size:var(--font-size-md);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight)}.app-header__brand span:not(.app-header__mark){color:var(--color-text-faint);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.app-header__mark,.section-header__icon{display:grid;place-items:center;width:var(--control-height);height:var(--control-height);border:var(--space-2xs) solid var(--color-border-strong);border-radius:var(--radius-md);color:var(--color-accent-strong);background:var(--color-surface-raised)}.app-header__tools{gap:var(--space-xs)}.app-header__user,.icon-button{border:0;border-radius:var(--radius-sm);color:var(--color-text-muted);background:transparent;transition:color var(--duration-fast) var(--easing-standard),background var(--duration-fast) var(--easing-standard)}.app-header__user:hover,.icon-button:hover:not(:disabled){color:var(--color-text);background:var(--color-surface-hover)}.app-header__user{gap:var(--space-xs);min-height:var(--control-height);padding:0 var(--space-sm);font-size:var(--font-size-sm)}.icon-button{display:grid;place-items:center;width:var(--control-height);height:var(--control-height)}.icon-button:disabled{color:var(--color-text-faint)}.app-header__menu{display:none}.app-shell__body{display:grid;grid-template-columns:var(--layout-sidebar-width) minmax(0,1fr);min-height:calc(100vh - var(--layout-header-height))}.app-navigation{position:sticky;top:var(--layout-header-height);z-index:var(--z-sidebar);align-self:start;height:calc(100vh - var(--layout-header-height));padding:var(--space-lg) var(--space-sm);overflow-y:auto;border-right:var(--space-2xs) solid var(--color-border);background:var(--color-surface)}.app-navigation nav{display:grid;gap:var(--space-2xs)}.app-navigation__label{margin:0;padding:var(--space-xs) var(--space-sm);color:var(--color-text-faint);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);letter-spacing:var(--space-2xs);text-transform:uppercase}.app-navigation__item{display:grid;grid-template-columns:var(--font-size-xl) minmax(0,1fr);align-items:center;gap:var(--space-2xs) var(--space-sm);width:100%;min-height:var(--control-height);padding:var(--space-xs) var(--space-sm);border:0;border-radius:var(--radius-sm);color:var(--color-text-muted);background:transparent;text-align:left;transition:color var(--duration-fast) var(--easing-standard),background var(--duration-fast) var(--easing-standard)}.app-navigation__item:hover:not(:disabled),.app-navigation__item.is-active{color:var(--color-text);background:var(--color-surface-hover)}.app-navigation__item.is-active{box-shadow:inset var(--space-2xs) 0 var(--color-accent)}.app-navigation__item:disabled{color:var(--color-text-faint)}.app-navigation__item small{grid-column:2;color:var(--color-text-faint);font-size:var(--font-size-xs)}.app-shell__content{min-width:0}.app-shell__backdrop{display:none}.page-layout,.dashboard-page,.content-page{width:min(calc(100% - var(--space-2xl)),var(--layout-content-max));margin:0 auto;padding:var(--space-xl) 0 var(--space-2xl)}.page-layout--narrow,.content-page--narrow{max-width:var(--breakpoint-mobile)}.section-header,.content-page__header,.dashboard-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-lg);margin-bottom:var(--space-xl)}.section-header__heading{gap:var(--space-md)}.section-header__heading div,.dashboard-header{display:grid;gap:var(--space-xs)}.section-header h1,.dashboard-header h1,.content-page__header h1,.login-form h1{margin:0;color:var(--color-text);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight)}.section-header p,.dashboard-header p,.content-page__header p{margin:0;color:var(--color-text-muted);font-size:var(--font-size-sm)}.section-header__actions,.base-card__actions{display:flex;align-items:center;gap:var(--space-sm)}.dashboard-grid{columns:2;gap:var(--space-lg)}.base-card{position:relative;display:grid;gap:var(--space-lg);min-width:0;padding:var(--space-lg);overflow:hidden;border:var(--space-2xs) solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised);box-shadow:var(--shadow-sm)}.base-card__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md)}.base-card__title{gap:var(--space-sm);min-width:0}.base-card__title>.material-symbols-rounded{color:var(--color-accent-strong)}.base-card h2{margin:0;color:var(--color-text);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight)}.base-card__content{min-width:0}.base-card__actions:empty{display:none}.status-card dl{display:grid;gap:var(--space-sm);margin:0}.status-card dl div{display:flex;justify-content:space-between;gap:var(--space-lg)}.status-card dt{color:var(--color-text-muted);font-size:var(--font-size-sm)}.status-card dd{max-width:var(--breakpoint-mobile);margin:0;color:var(--color-text);font-size:var(--font-size-sm);overflow-wrap:anywhere;text-align:right}.status-chip{gap:var(--space-2xs);width:max-content;min-height:var(--space-xl);padding:0 var(--space-xs);border-radius:var(--radius-round);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);white-space:nowrap}.status-chip .material-symbols-rounded{font-size:var(--font-size-sm)}.status-chip--success{color:var(--color-success);background:var(--color-success-surface)}.status-chip--warning{color:var(--color-warning);background:var(--color-warning-surface)}.status-chip--error,.status-chip--offline{color:var(--color-error);background:var(--color-error-surface)}.status-chip--info,.status-chip--busy{color:var(--color-info);background:var(--color-info-surface)}.status-chip--disabled{color:var(--color-text-muted);background:var(--color-surface-hover)}.action-button{gap:var(--space-xs);--md-filled-button-container-color: var(--color-accent);--md-filled-button-label-text-color: var(--color-background);--md-outlined-button-outline-color: var(--color-border-strong);--md-outlined-button-label-text-color: var(--color-text);--md-text-button-label-text-color: var(--color-text-muted)}.action-button .material-symbols-rounded{font-size:var(--font-size-md)}.user-list{display:grid;gap:var(--space-sm)}.user-list__row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-sm) var(--space-lg);padding:var(--space-md);border:var(--space-2xs) solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised);box-shadow:var(--shadow-sm)}.user-list__identity,.user-list__role,.user-list__actions,.account-form,.dialog-form{display:grid;gap:var(--space-sm)}.user-list__identity span,.user-list__role{color:var(--color-text-muted);font-size:var(--font-size-sm)}.user-list__role select{min-height:var(--control-height);padding:0 var(--space-sm);border:var(--space-2xs) solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);background:var(--color-surface)}.user-list__role{grid-column:1}.user-list__actions{grid-column:2;grid-row:1 / span 2;grid-template-columns:repeat(3,max-content);justify-content:end}.account-form{max-width:var(--breakpoint-mobile)}.form-error,.state-message--error{margin:0;padding:var(--space-sm);border-radius:var(--radius-sm);color:var(--color-error);background:var(--color-error-surface);font-size:var(--font-size-sm)}.dialog-form{min-width:min(100%,var(--breakpoint-mobile));padding-top:var(--space-xs)}.dialog-form p{margin:0;color:var(--color-text-muted)}.dialog-form label{display:grid;gap:var(--space-xs);color:var(--color-text-muted);font-size:var(--font-size-sm)}.dialog-form select{min-height:var(--control-height);padding:0 var(--space-sm);border:var(--space-2xs) solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);background:var(--color-surface)}md-dialog{--md-dialog-container-color: var(--color-surface-raised);--md-dialog-headline-color: var(--color-text);--md-dialog-supporting-text-color: var(--color-text-muted);--md-dialog-container-shape: var(--radius-lg);--md-dialog-container-elevation: var(--shadow-lg)}.loading-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:var(--z-overlay);justify-content:center;gap:var(--space-sm);color:var(--color-text);background:var(--color-overlay);font-size:var(--font-size-sm)}.loading-overlay__icon{animation:rotate var(--duration-slow) linear infinite}.empty-state,.error-state{gap:var(--space-md);padding:var(--space-2xl) var(--space-lg);border:var(--space-2xs) dashed var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);background:var(--color-surface)}.empty-state{flex-direction:column;justify-content:center;text-align:center}.empty-state>.material-symbols-rounded,.error-state>.material-symbols-rounded{color:var(--color-info);font-size:var(--font-size-2xl)}.error-state>.material-symbols-rounded{color:var(--color-error)}.empty-state h2,.empty-state p,.error-state h2,.error-state p{margin:0}.empty-state h2,.error-state h2{color:var(--color-text);font-size:var(--font-size-lg)}.empty-state p,.error-state p{font-size:var(--font-size-sm)}.auth-page{display:grid;place-items:center;min-height:100vh;padding:var(--space-lg);background:var(--color-background)}.login-form{display:grid;gap:var(--space-lg);width:min(100%,var(--breakpoint-mobile));padding:var(--space-xl);border:var(--space-2xs) solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-lg)}@keyframes rotate{to{transform:rotate(1turn)}}@media(max-width:48rem){.app-header{padding:0 var(--space-sm)}.app-header__menu{display:grid}.app-header__brand strong,.app-header__user span:not(.material-symbols-rounded){display:none}.app-shell__body{display:block}.app-navigation{position:fixed;left:0;width:var(--layout-sidebar-width);transform:translate(-100%);transition:transform var(--duration-medium) var(--easing-standard);box-shadow:var(--shadow-lg)}.app-navigation.is-open{transform:translate(0)}.app-shell__backdrop:not([hidden]){position:fixed;top:0;right:0;bottom:0;left:0;z-index:calc(var(--z-sidebar) - var(--space-2xs));display:block;background:var(--color-overlay)}.page-layout,.dashboard-page,.content-page{width:min(calc(100% - var(--space-lg)),var(--layout-content-max));padding:var(--space-lg) 0 var(--space-xl)}.section-header,.content-page__header,.dashboard-header{flex-direction:column;gap:var(--space-md)}.dashboard-grid,.user-list__row{grid-template-columns:1fr}.user-list__role,.user-list__actions{grid-column:auto;grid-row:auto}.user-list__actions{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:64rem){.dashboard-grid{grid-template-columns:1fr}}
