:root{--color-bg:#f4f6fb;--color-surface:#fff;--color-text:#1f2a44;--color-muted:#6b7280;--color-primary:#2f376b;--color-primary-soft:#e9edff;--color-border:#dde3ee}*{box-sizing:border-box}body{background:var(--color-bg);color:var(--color-text);margin:0;font-family:Arial,sans-serif}a{color:inherit;text-decoration:none}.app-shell{min-height:100vh}.app-shell__top{background:var(--color-primary);color:#fff}.app-shell__body{grid-template-columns:260px 1fr;min-height:calc(100vh - 72px);display:grid}.app-shell__side{border-right:1px solid var(--color-border);background:#f8f9fc;padding:12px 16px}.app-shell__content{padding:24px}.app-layout__topbar{justify-content:space-between;align-items:center;height:72px;padding:0 24px;display:flex}.top-nav{align-items:center;gap:24px;display:flex}.top-nav__brand{font-size:1.25rem;font-weight:700}.top-nav__menu{gap:12px;display:flex}.top-nav__link{color:#fff;opacity:.9;border-radius:999px;padding:10px 16px}.top-nav__link--active{color:var(--color-primary);opacity:1;background:#fff}.side-nav__title{margin-bottom:16px;font-size:1.1rem;font-weight:700}.side-nav__menu{flex-direction:column;gap:8px;display:flex}.side-nav__link{color:var(--color-text);border-radius:10px;padding:10px 12px}.side-nav__link--active{background:var(--color-primary-soft);color:var(--color-primary);font-weight:600}.user-menu{align-items:center;gap:16px;display:flex}.user-menu__meta{text-align:right}.user-menu__name{font-weight:600}.user-menu__email,.user-menu__tenant{opacity:.8;font-size:.875rem}.user-menu__logout{border:1px solid #ffffff59;border-radius:8px;padding:8px 12px}.page-header{justify-content:space-between;align-items:start;gap:16px;margin-bottom:24px;display:flex}.page-header__actions{align-items:flex-end;display:flex}.page-header__actions-group{justify-items:end;gap:8px;display:grid}.page-header__title{margin:0;font-size:2rem}.page-header__subtitle{color:var(--color-muted);margin:8px 0 0}.page-header__hint{max-width:320px;color:var(--color-muted);text-align:right;margin:0;font-size:.9rem}.page-card,.page-section>.page-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;padding:24px}.status-page{text-align:center;place-items:center;gap:12px;min-height:100vh;display:grid}.auth-page{place-items:center;min-height:100vh;padding:24px;display:grid}.auth-page__subtitle{color:#6b7280;margin-top:8px;margin-bottom:24px}.auth-form{gap:16px;display:grid}.user-form{gap:16px;max-width:520px;display:grid}.form-field{gap:8px;display:grid}.input{width:100%;font:inherit;border:1px solid #d1d5db;border-radius:10px;padding:12px 14px}.button{background:var(--color-primary);color:#fff;font:inherit;cursor:pointer;border:0;border-radius:10px;padding:12px 16px}.button:disabled{opacity:.6;cursor:not-allowed}.form-error{color:#b91c1c;margin:0}.form-success{color:#166534;margin:0}.form-notice{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;border-radius:10px;margin:0;padding:12px 14px}.auth-form__footer{margin:0;font-size:.95rem}.form-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.form-help{color:var(--color-muted);font-size:.9rem}.field{margin-bottom:16px}.field .value{color:#111827;font-size:15px;font-weight:500}.data-table-wrapper{width:100%;overflow-x:auto}.data-table{border-collapse:collapse;background:#fff;width:100%}.data-table thead th{color:#6b7280;text-align:left;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;border-bottom:1px solid #dde3ee;padding:14px 16px;font-size:12px;font-weight:700}.data-table tbody td{color:#1f2a44;vertical-align:middle;border-bottom:1px solid #eef2f7;padding:16px;font-size:14px}.data-table tbody tr:hover{background:#f8faff}.data-table-empty{text-align:center;color:#6b7280;padding:32px 16px}.status-badge{border-radius:999px;align-items:center;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.status-badge--success{color:#1f7a45;background:#e8f7ee}.status-badge--warning{color:#9a6700;background:#fff4e5}.status-badge--neutral{color:#4b5563;background:#eef2f7}.status-badge--danger{color:#b42318;background:#fdecec}.data-table-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:16px;margin-bottom:20px;display:flex}.data-table-toolbar__filters{flex-wrap:wrap;flex:1;gap:12px;display:flex}.data-table-toolbar__actions{flex-wrap:wrap;gap:12px;display:flex}.table-link{color:#2f376b;font-weight:600}.table-link:hover{text-decoration:underline}.form-field{flex-direction:column;gap:6px;min-width:220px;display:flex}.form-label{color:#6b7280;text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:600}.form-select{color:#1f2a44;background:#fff;border:1px solid #cfd7e6;border-radius:10px;height:40px;padding:0 12px;font-size:14px}.page-section{margin-bottom:24px}.field-group{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 24px;display:grid}.field{min-width:0}.field .label{color:#6b7280;text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px;font-size:12px;font-weight:600}.field .value{color:#111827;word-break:break-word;font-size:15px;font-weight:500}.page-card h2{margin-top:0;margin-bottom:20px;font-size:1.1rem}.section-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.section-header h2{margin:0}.section-hint{color:var(--color-muted);margin:0 0 16px;font-size:.95rem}.empty-state{gap:16px;display:grid}@media (width<=900px){.field-group{grid-template-columns:1fr}}
