:root{--aios-color-bg: #ffffff;--aios-color-bg-subtle: #f6f7f9;--aios-color-fg: #14171a;--aios-color-fg-muted: #55606b;--aios-color-border: #d6dbe1;--aios-color-primary: #185ee0;--aios-color-primary-fg: #ffffff;--aios-color-primary-hover: #124bb8;--aios-color-danger: #b3261e;--aios-color-danger-bg: #fbeceb;--aios-color-success: #1e6b3c;--aios-color-success-bg: #eaf6ee;--aios-color-focus-ring: #185ee0;--aios-space-1: 4px;--aios-space-2: 8px;--aios-space-3: 12px;--aios-space-4: 16px;--aios-space-5: 24px;--aios-space-6: 32px;--aios-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--aios-font-size-sm: .875rem;--aios-font-size-base: 1rem;--aios-font-size-lg: 1.25rem;--aios-font-weight-normal: 400;--aios-font-weight-medium: 500;--aios-font-weight-bold: 700;--aios-line-height-base: 1.5;--aios-radius: 6px;--aios-shadow-sm: 0 1px 2px rgba(20, 23, 26, .08);--aios-shadow-md: 0 4px 16px rgba(20, 23, 26, .16);--aios-motion-duration: .15s;--aios-motion-easing: ease}:root[data-theme=dark]{--aios-color-bg: #14171a;--aios-color-bg-subtle: #1d2126;--aios-color-fg: #f2f4f6;--aios-color-fg-muted: #aab2bb;--aios-color-border: #333a42;--aios-color-primary: #6ea3ff;--aios-color-primary-fg: #0a1120;--aios-color-primary-hover: #8fb8ff;--aios-color-danger: #ff8b83;--aios-color-danger-bg: #3a1613;--aios-color-success: #7fd9a0;--aios-color-success-bg: #12331d;--aios-color-focus-ring: #6ea3ff}@media (prefers-reduced-motion: reduce){:root{--aios-motion-duration: 0ms}}.aios-button{font-family:var(--aios-font-family);font-size:var(--aios-font-size-base);font-weight:var(--aios-font-weight-medium);padding:var(--aios-space-2) var(--aios-space-4);border-radius:var(--aios-radius);border:1px solid transparent;cursor:pointer;transition:background-color var(--aios-motion-duration) var(--aios-motion-easing)}.aios-button:focus-visible{outline:2px solid var(--aios-color-focus-ring);outline-offset:2px}.aios-button:disabled{cursor:not-allowed;opacity:.6}.aios-button--primary{background:var(--aios-color-primary);color:var(--aios-color-primary-fg)}.aios-button--primary:hover:not(:disabled){background:var(--aios-color-primary-hover)}.aios-button--secondary{background:var(--aios-color-bg);color:var(--aios-color-fg);border-color:var(--aios-color-border)}.aios-button--secondary:hover:not(:disabled){background:var(--aios-color-bg-subtle)}.aios-button--danger{background:var(--aios-color-danger-bg);color:var(--aios-color-danger);border-color:var(--aios-color-danger)}.aios-input,.aios-select{font-family:var(--aios-font-family);font-size:var(--aios-font-size-base);color:var(--aios-color-fg);background:var(--aios-color-bg);border:1px solid var(--aios-color-border);border-radius:var(--aios-radius);padding:var(--aios-space-2) var(--aios-space-3)}.aios-input:focus-visible,.aios-select:focus-visible{outline:2px solid var(--aios-color-focus-ring);outline-offset:1px}.aios-input--invalid,.aios-select--invalid{border-color:var(--aios-color-danger)}.aios-form-field{display:flex;flex-direction:column;gap:var(--aios-space-1);margin-bottom:var(--aios-space-4)}.aios-form-field__label{font-size:var(--aios-font-size-sm);font-weight:var(--aios-font-weight-medium);color:var(--aios-color-fg)}.aios-form-field__optional{font-weight:var(--aios-font-weight-normal);color:var(--aios-color-fg-muted)}.aios-form-field__hint{font-size:var(--aios-font-size-sm);color:var(--aios-color-fg-muted);margin:0}.aios-form-field__error{font-size:var(--aios-font-size-sm);color:var(--aios-color-danger);margin:0}.aios-table{width:100%;border-collapse:collapse;font-size:var(--aios-font-size-base)}.aios-table__caption{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.aios-table th,.aios-table td{text-align:left;padding:var(--aios-space-2) var(--aios-space-3);border-bottom:1px solid var(--aios-color-border)}.aios-table th{font-weight:var(--aios-font-weight-medium);color:var(--aios-color-fg-muted)}.aios-table__empty{text-align:center;color:var(--aios-color-fg-muted);padding:var(--aios-space-5)}.aios-dialog__overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#14171a66}.aios-dialog__content{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--aios-color-bg);color:var(--aios-color-fg);border-radius:var(--aios-radius);box-shadow:var(--aios-shadow-md);padding:var(--aios-space-5);max-width:480px;width:calc(100vw - var(--aios-space-6))}.aios-dialog__title{font-size:var(--aios-font-size-lg);font-weight:var(--aios-font-weight-bold);margin:0 0 var(--aios-space-2)}.aios-dialog__description{color:var(--aios-color-fg-muted);margin:0 0 var(--aios-space-4)}.aios-dialog__close{position:absolute;top:var(--aios-space-3);right:var(--aios-space-3);background:transparent;border:none;font-size:var(--aios-font-size-lg);cursor:pointer;color:var(--aios-color-fg-muted)}.aios-dialog__close:focus-visible{outline:2px solid var(--aios-color-focus-ring)}.aios-nav__list{display:flex;gap:var(--aios-space-4);list-style:none;margin:0;padding:0}.aios-nav__link{font-family:var(--aios-font-family);color:var(--aios-color-fg-muted);text-decoration:none;padding:var(--aios-space-2) 0;border-bottom:2px solid transparent}.aios-nav__link[aria-current=page]{color:var(--aios-color-fg);border-bottom-color:var(--aios-color-primary);font-weight:var(--aios-font-weight-medium)}.aios-nav__link:focus-visible{outline:2px solid var(--aios-color-focus-ring)}.aios-card{background:var(--aios-color-bg);border:1px solid var(--aios-color-border);border-radius:var(--aios-radius);box-shadow:var(--aios-shadow-sm);padding:var(--aios-space-4)}.aios-card__title{font-size:var(--aios-font-size-lg);font-weight:var(--aios-font-weight-bold);margin:0 0 var(--aios-space-3)}.aios-card__actions{margin-top:var(--aios-space-4);display:flex;gap:var(--aios-space-2)}.aios-badge{display:inline-flex;align-items:center;font-size:var(--aios-font-size-sm);font-weight:var(--aios-font-weight-medium);padding:2px var(--aios-space-2);border-radius:var(--aios-radius)}.aios-badge--neutral{background:var(--aios-color-bg-subtle);color:var(--aios-color-fg-muted)}.aios-badge--success{background:var(--aios-color-success-bg);color:var(--aios-color-success)}.aios-badge--danger{background:var(--aios-color-danger-bg);color:var(--aios-color-danger)}.aios-badge--warning{background:var(--aios-color-bg-subtle);color:var(--aios-color-fg)}body{margin:0;background:var(--aios-color-bg-subtle);color:var(--aios-color-fg);font-family:var(--aios-font-family)}.portal-layout{min-height:100vh;display:flex;flex-direction:column}.portal-header{display:flex;align-items:center;gap:var(--aios-space-5);padding:var(--aios-space-3) var(--aios-space-5);background:var(--aios-color-bg);border-bottom:1px solid var(--aios-color-border)}.portal-header__brand{font-weight:var(--aios-font-weight-bold);font-size:var(--aios-font-size-lg)}.portal-header__brand a{color:inherit;text-decoration:none}.portal-header__brand a:hover{text-decoration:underline}.portal-header__brand a:focus-visible{outline:2px solid var(--aios-color-focus-ring);outline-offset:2px;border-radius:var(--aios-radius)}.portal-header__email{color:var(--aios-color-fg-muted);font-size:var(--aios-font-size-sm)}.portal-header__account{margin-left:auto;display:flex;align-items:center;gap:var(--aios-space-3)}.portal-header__tenant{display:flex;align-items:center;gap:var(--aios-space-2);color:var(--aios-color-fg-muted)}.portal-main{flex:1;padding:var(--aios-space-5)}.portal-page h1{font-size:var(--aios-font-size-lg);margin:0 0 var(--aios-space-4)}.portal-page>.aios-card{margin-bottom:var(--aios-space-4)}.portal-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--aios-space-4)}.portal-centered-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--aios-color-bg-subtle)}.portal-centered-page .aios-card{width:360px}.portal-centered-page--wide .aios-card{width:440px}.portal-centered-page form .aios-button{width:100%;margin-top:var(--aios-space-2)}.portal-auth-panel{width:400px;display:flex;flex-direction:column;align-items:center;gap:var(--aios-space-4)}.portal-auth-panel__brand{margin:0;font-size:var(--aios-font-size-lg);font-weight:var(--aios-font-weight-bold);color:var(--aios-color-fg)}.portal-auth-footnote{margin:var(--aios-space-4) 0 0;font-size:var(--aios-font-size-sm);color:var(--aios-color-fg-muted)}.portal-notice{width:440px;padding:var(--aios-space-5);border:1px solid var(--aios-color-border);border-radius:var(--aios-radius);background:var(--aios-color-bg);box-shadow:var(--aios-shadow-sm)}.portal-notice p{margin:0;color:var(--aios-color-fg-muted);line-height:var(--aios-line-height-base)}.portal-notice--error{border-color:var(--aios-color-danger);background:var(--aios-color-danger-bg)}.portal-notice__title{margin:0 0 var(--aios-space-3);font-size:var(--aios-font-size-lg);font-weight:var(--aios-font-weight-bold);color:var(--aios-color-fg)}.portal-loading{display:flex;align-items:center;gap:var(--aios-space-3);color:var(--aios-color-fg-muted)}.portal-spinner{width:18px;height:18px;border:2px solid var(--aios-color-border);border-top-color:var(--aios-color-primary);border-radius:50%;animation:portal-spin .8s linear infinite}@keyframes portal-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.portal-spinner{display:none}}.portal-muted{color:var(--aios-color-fg-muted);font-size:var(--aios-font-size-sm)}.portal-actions{display:flex;justify-content:flex-end;gap:var(--aios-space-3);margin-top:var(--aios-space-4)}.portal-workspace-list{list-style:none;margin:var(--aios-space-4) 0 0;padding:0;display:flex;flex-direction:column;gap:var(--aios-space-2)}.portal-workspace-option{width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--aios-space-3);padding:var(--aios-space-3) var(--aios-space-4);border:1px solid var(--aios-color-border);border-radius:var(--aios-radius);background:var(--aios-color-bg);color:var(--aios-color-fg);font-family:inherit;font-size:var(--aios-font-size-base);text-align:left;cursor:pointer;transition:border-color var(--aios-motion-duration) var(--aios-motion-easing)}.portal-workspace-option:hover{border-color:var(--aios-color-primary)}.portal-workspace-option:focus-visible{outline:2px solid var(--aios-color-focus-ring);outline-offset:2px}.portal-workspace-option__name{font-weight:var(--aios-font-weight-medium)}.portal-workspace-option__meta{display:flex;align-items:center;gap:var(--aios-space-2);flex-shrink:0}.portal-workspace-switcher{display:flex;align-items:center}.portal-visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
