:root{font-family:system-ui,sans-serif;color-scheme:light;--color-bg: #f6f7f9;--color-surface: #ffffff;--color-border: #d8dde3;--color-text: #1f2933;--color-muted: #6b7785;--color-primary: #2f6f4f;--color-danger: #b3261e}*{box-sizing:border-box}body{margin:0;background:var(--color-bg);color:var(--color-text)}.app-shell{display:flex;flex-direction:column;min-height:100vh}.app-header{display:flex;align-items:center;gap:1.5rem;padding:.75rem 1.5rem;background:var(--color-surface);border-bottom:1px solid var(--color-border);flex-wrap:wrap}.app-header h1{font-size:1.1rem;margin:0}.app-header nav{display:flex;gap:1rem}.app-header nav a{color:var(--color-text);text-decoration:none}.app-header nav a.active{color:var(--color-primary);font-weight:600}.app-header-user{margin-left:auto;display:flex;align-items:center;gap:.75rem;color:var(--color-muted)}.app-main{flex:1;padding:1.5rem;max-width:1100px;width:100%;margin:0 auto}.auth-page{display:flex;align-items:center;justify-content:center;min-height:100vh}.auth-page form{display:flex;flex-direction:column;gap:.75rem;width:320px;padding:2rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px}.auth-page label{display:flex;flex-direction:column;gap:.25rem;font-size:.9rem}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;padding:1rem 1.25rem;margin-bottom:1rem}.card h2{margin-top:0}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:1rem}.stat{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;padding:1rem}.stat .stat-label{color:var(--color-muted);font-size:.8rem;text-transform:uppercase;letter-spacing:.05em}.stat .stat-value{font-size:1.5rem;font-weight:600}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.5rem .75rem;border-bottom:1px solid var(--color-border)}form.inline-form{display:flex;flex-wrap:wrap;gap:.75rem;align-items:end;margin-top:1rem}form.inline-form label{display:flex;flex-direction:column;gap:.25rem;font-size:.85rem}.grid-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem}.grid-form label{display:flex;flex-direction:column;gap:.25rem;font-size:.85rem}input,select,button{font:inherit;padding:.4rem .6rem;border:1px solid var(--color-border);border-radius:4px}button{background:var(--color-primary);color:#fff;border-color:var(--color-primary);cursor:pointer}button.secondary{background:transparent;color:var(--color-text)}button.danger{background:var(--color-danger);border-color:var(--color-danger)}button:disabled{opacity:.6;cursor:not-allowed}.error{color:var(--color-danger);font-size:.85rem}.hint{color:var(--color-muted);font-size:.75rem;font-weight:400;margin:0}.member-row{display:flex;flex-wrap:wrap;gap:.75rem;align-items:end;margin-bottom:.75rem}.member-row label,.member-super-access{display:flex;flex-direction:column;gap:.25rem;font-size:.85rem}.member-super-access p{margin:0;padding:.4rem 0}.progress-bar{height:10px;border-radius:5px;background:var(--color-border);overflow:hidden}.progress-bar-fill{height:100%;background:var(--color-primary)}.progress-bar-fill.over-cap{background:var(--color-danger)}.actions{display:flex;gap:.5rem}
