.portal-header[data-v-19ac351c]{background:var(--color-surface);border-bottom:1px solid var(--color-border)}.portal-header-inner[data-v-19ac351c]{max-width:1200px;margin:0 auto;padding:12px 24px;display:flex;align-items:center;gap:16px}.portal-brand[data-v-19ac351c]{font-weight:700;font-size:1.05rem;color:var(--color-text);text-decoration:none}.portal-header-spacer[data-v-19ac351c]{flex:1}.portal-identity[data-v-19ac351c]{display:flex;align-items:center;gap:12px}.portal-email[data-v-19ac351c]{color:var(--color-text-muted);font-size:.9rem}.portal-logout[data-v-19ac351c]{background:transparent;border:1px solid var(--color-border);color:var(--color-text);padding:6px 12px;border-radius:var(--radius);cursor:pointer;font-size:.9rem}.portal-logout[data-v-19ac351c]:hover:not(:disabled){border-color:var(--color-accent);color:var(--color-accent)}.portal-logout[data-v-19ac351c]:disabled{opacity:.6;cursor:not-allowed}:root{--color-bg: #f7f8fa;--color-surface: #ffffff;--color-border: #e1e4e8;--color-text: #1f2328;--color-text-muted: #57606a;--color-accent: #0969da;--color-accent-hover: #0552a4;--color-danger: #cf222e;--color-success: #1a7f37;--radius: 6px;--shadow-card: 0 1px 3px rgba(31, 35, 40, .08)}*{box-sizing:border-box}html,body,#app{margin:0;padding:0;height:100%;font-family:-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:var(--color-text);background:var(--color-bg);line-height:1.5}.app-root{min-height:100%;display:flex;flex-direction:column}.app-main{flex:1;width:100%;max-width:1200px;margin:0 auto;padding:24px}a{color:var(--color-accent)}a:hover{color:var(--color-accent-hover)}button{font:inherit}.toast-stack{position:fixed;right:16px;bottom:16px;display:flex;flex-direction:column;gap:8px;z-index:1000}.toast{background:var(--color-surface);border:1px solid var(--color-border);border-left-width:4px;border-radius:var(--radius);padding:10px 14px;box-shadow:var(--shadow-card);min-width:240px;max-width:380px;cursor:pointer}.toast-info{border-left-color:var(--color-accent)}.toast-success{border-left-color:var(--color-success)}.toast-error{border-left-color:var(--color-danger)}
