@charset "UTF-8";.cdk-overlay-container,.cdk-global-overlay-wrapper{pointer-events:none;top:0;left:0;height:100%;width:100%}.cdk-overlay-container{position:fixed;z-index:1000}.cdk-overlay-container:empty{display:none}.cdk-global-overlay-wrapper{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;display:flex;max-width:100%;max-height:100%;z-index:1000}.cdk-overlay-backdrop{position:absolute;inset:0;pointer-events:auto;-webkit-tap-highlight-color:transparent;opacity:0;touch-action:manipulation;z-index:1000;transition:opacity .4s cubic-bezier(.25,.8,.25,1)}@media(prefers-reduced-motion){.cdk-overlay-backdrop{transition-duration:1ms}}.cdk-overlay-backdrop-showing{opacity:1}@media(forced-colors:active){.cdk-overlay-backdrop-showing{opacity:.6}}.cdk-overlay-dark-backdrop{background:#00000052}.cdk-overlay-transparent-backdrop{transition:visibility 1ms linear,opacity 1ms linear;visibility:hidden;opacity:1}.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing,.cdk-high-contrast-active .cdk-overlay-transparent-backdrop{opacity:0;visibility:visible}.cdk-overlay-backdrop-noop-animation{transition:none}.cdk-overlay-connected-position-bounding-box{position:absolute;display:flex;flex-direction:column;min-width:1px;min-height:1px;z-index:1000}.cdk-global-scrollblock{position:fixed;width:100%;overflow-y:scroll}.cdk-overlay-popover{background:none;border:none;padding:0;outline:0;overflow:visible;position:fixed;pointer-events:none;white-space:normal;color:inherit;text-decoration:none;width:100%;height:100%;inset:0 auto auto 0}.cdk-overlay-popover::backdrop{display:none}.cdk-overlay-popover .cdk-overlay-backdrop{position:fixed;z-index:auto}:root{--brand-navy: #1E3A5F;--brand-blue: #3D8BD4;--brand-sky: #A8D4F0;--brand-white: #FFFFFF;--neutral-0: #FFFFFF;--neutral-25: #FCFDFE;--neutral-50: #F8FAFC;--neutral-100: #F1F5F9;--neutral-200: #E2E8F0;--neutral-300: #CBD5E1;--neutral-400: #94A3B8;--neutral-500: #64748B;--neutral-600: #475569;--neutral-700: #334155;--neutral-800: #1E293B;--neutral-900: #0F172A;--text-primary: var(--neutral-900);--text-secondary: var(--neutral-600);--text-muted: var(--neutral-500);--text-disabled: var(--neutral-400);--text-inverse: #FFFFFF;--text-link: var(--color-primary-700);--text-link-hover: var(--color-primary-800);--bg-app: #F6F8FB;--bg-surface: #FFFFFF;--bg-sunken: var(--neutral-50);--bg-hover: var(--neutral-50);--bg-overlay: rgba(15, 23, 42, .55);--border-default: var(--neutral-200);--border-strong: var(--neutral-300);--border-input: var(--neutral-300);--divider: var(--neutral-100);--success-50: #F0FDF4;--success-100: #DCFCE7;--success-200: #BBF7D0;--success-500: #22C55E;--success-600: #16A34A;--success-700: #15803D;--warning-50: #FFFBEB;--warning-100: #FEF3C7;--warning-200: #FDE68A;--warning-500: #F59E0B;--warning-600: #D97706;--warning-700: #B45309;--error-50: #FEF2F2;--error-100: #FEE2E2;--error-200: #FECACA;--error-500: #EF4444;--error-600: #DC2626;--error-700: #B91C1C;--info-50: #F0F9FF;--info-100: #E0F2FE;--info-200: #BAE6FD;--info-500: #0EA5E9;--info-600: #0284C7;--info-700: #0369A1;--status-success-bg: var(--success-50);--status-success-border: var(--success-200);--status-success-text: var(--success-700);--status-warning-bg: var(--warning-50);--status-warning-border: var(--warning-200);--status-warning-text: var(--warning-700);--status-error-bg: var(--error-50);--status-error-border: var(--error-200);--status-error-text: var(--error-700);--status-info-bg: var(--info-50);--status-info-border: var(--info-200);--status-info-text: var(--info-700);--accent-violet-50: #F5F3FF;--accent-violet-300: #C4B5FD;--accent-violet-400: #A78BFA;--accent-violet-500: #8B5CF6;--accent-violet-600: #7C3AED;--accent-violet-700: #6D28D9;--accent-indigo-600: #4F46E5;--accent-indigo-900: #312E81;--accent-teal-50: #F0FDFA;--accent-teal-100: #CCFBF1;--accent-teal-500: #14B8A6;--accent-teal-600: #0D9488;--accent-teal-700: #0F766E;--accent-pink-50: #FDF2F8;--accent-pink-100: #FCE7F3;--accent-pink-700: #BE185D;--accent-pink-800: #9D174D;--accent-sky-50: #F0F9FF;--accent-sky-400: #38BDF8;--accent-cyan-50: #ECFEFF;--accent-cyan-100: #DEF5FB;--accent-cyan-300: #8EDDF0;--accent-cyan-400: #22D3EE;--accent-cyan-500: #30C0E0;--accent-cyan-600: #18B2DC;--accent-cyan-700: #0A9CC8;--accent-mint-100: #EBF8F2;--accent-mint-200: #CDEEE1;--accent-mint-300: #B3E6D3;--accent-mint-500: #46BF9B;--accent-mint-600: #46BF9B;--accent-mint-700: #2AA885;--lane-open: var(--success-600);--lane-closed: var(--error-600);--lane-pending: var(--warning-600);--lane-offline: var(--neutral-400);--slot-available: var(--success-500);--slot-occupied: var(--error-500);--slot-reserved: var(--warning-500);--slot-disabled: var(--neutral-300);--shadow-xs: 0 1px 2px rgba(15, 23, 42, .05);--shadow-sm: 0 1px 3px rgba(15, 23, 42, .08), 0 1px 2px rgba(15, 23, 42, .04);--shadow-md: 0 4px 10px rgba(15, 23, 42, .08), 0 2px 4px rgba(15, 23, 42, .04);--shadow-lg: 0 12px 28px rgba(15, 23, 42, .12), 0 4px 8px rgba(15, 23, 42, .05);--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 999px;--focus-ring-width: 3px;--btn-danger-bg: var(--error-600);--btn-danger-bg-hover: var(--error-700);--btn-danger-bg-active: #991B1B;--btn-danger-text: #FFFFFF}:root{--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--font-family-display: "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-family-body: "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-family-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--font-size-xs: 12px;--font-size-sm: 13px;--font-size-md: 14px;--font-size-lg: 16px;--font-size-xl: 18px;--font-size-2xl: 20px;--font-size-3xl: 24px;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-black: 800;--line-height-tight: 1.25;--line-height-normal: 1.5;--control-height-sm: 32px;--control-height-md: 40px;--control-height-lg: 48px;--transition-fast: .12s ease;--transition-base: .2s ease;--transition-slow: .3s ease;--ease-out: cubic-bezier(.16, 1, .3, 1);--duration-fast: .14s;--duration-base: .22s}:root{--color-primary-50: #F5F3FF;--color-primary-100: #EDE9FE;--color-primary-200: #DDD6FE;--color-primary-300: #C4B5FD;--color-primary-400: #A78BFA;--color-primary-500: #8B5CF6;--color-primary-600: #7C3AED;--color-primary-700: #6D28D9;--color-primary-800: #5B21B6;--color-primary-900: #4C1D95;--color-primary: var(--color-primary-600);--color-primary-hover: var(--color-primary-700);--color-primary-active: var(--color-primary-800);--color-primary-subtle: var(--color-primary-50);--color-primary-subtle-hover: var(--color-primary-100);--color-primary-border: var(--color-primary-300);--color-secondary: #0F172A;--color-secondary-hover: #1E293B;--color-secondary-active: #334155;--color-accent: #06B6D4;--color-accent-hover: #0891B2;--color-accent-subtle: #ECFEFF;--color-accent-text: #155E75;--focus-ring: rgba(124, 58, 237, .35);--sidebar-bg: #1E1B4B;--sidebar-text: #C4B5FD;--sidebar-text-active: #FFFFFF;--sidebar-item-hover: rgba(255, 255, 255, .08);--sidebar-divider: rgba(255, 255, 255, .08);--sidebar-item-active: var(--color-primary-600);--sidebar-section-label: #818CF8;--topbar-bg: #FFFFFF;--topbar-border: var(--border-default);--portal-badge-bg: var(--color-primary-100);--portal-badge-text: var(--color-primary-800);--btn-primary-bg: var(--color-primary);--btn-primary-bg-hover: var(--color-primary-hover);--btn-primary-bg-active: var(--color-primary-active);--btn-primary-text: #FFFFFF;--btn-secondary-bg: #FFFFFF;--btn-secondary-bg-hover: var(--color-primary-50);--btn-secondary-bg-active: var(--color-primary-100);--btn-secondary-border: var(--color-primary-300);--btn-secondary-text: var(--color-primary-700);--btn-ghost-text: var(--color-primary-600);--btn-ghost-bg-hover: var(--color-primary-50);--nav-selected-bg: var(--color-primary-50);--nav-selected-text: var(--color-primary-700);--table-header-bg: var(--bg-sunken);--table-row-hover: var(--color-primary-50);--table-row-selected: var(--color-primary-100);--chip-bg: var(--color-primary-50);--chip-text: var(--color-primary-700);--progress-track: var(--neutral-200);--progress-fill: var(--color-primary-500);--chart-1: #7C3AED;--chart-2: #06B6D4;--chart-3: #F59E0B;--chart-4: #10B981;--chart-5: #EC4899;--chart-6: #6366F1}:root{--parx-primary-dark: var(--color-primary-600);--parx-primary: var(--color-primary-700);--parx-primary-light: var(--color-primary-500);--parx-primary-lighter: var(--color-primary-400);--parx-primary-lightest: var(--color-primary-300);--parx-primary-very-light: var(--color-primary-100);--parx-focus-ring: var(--focus-ring);--accent: var(--color-accent);--text-link-legacy: var(--text-link);--primary: var(--color-primary);--color-success: var(--success-600);--surface-card: var(--bg-surface);--surface-bg: var(--bg-app)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 16px;border:1px solid transparent;border-radius:var(--radius-md);font-size:14px;font-weight:500;line-height:1;cursor:pointer;white-space:nowrap;transition:background-color .12s ease,border-color .12s ease,box-shadow .12s ease}.btn:focus-visible{outline:none;box-shadow:0 0 0 var(--focus-ring-width) var(--focus-ring)}.btn:disabled,.btn.disabled{background:var(--neutral-100);border-color:var(--neutral-200);color:var(--text-disabled);cursor:not-allowed;pointer-events:none}.btn.btn-sm{height:32px;padding:0 12px;font-size:13px}.btn.btn-lg{height:48px;padding:0 24px;font-size:15px}.btn.btn-block{width:100%}.btn-primary{background:var(--btn-primary-bg);color:var(--btn-primary-text)}.btn-primary:hover{background:var(--btn-primary-bg-hover)}.btn-primary:active{background:var(--btn-primary-bg-active)}.btn-secondary{background:var(--btn-secondary-bg);border-color:var(--btn-secondary-border);color:var(--btn-secondary-text)}.btn-secondary:hover{background:var(--btn-secondary-bg-hover)}.btn-secondary:active{background:var(--btn-secondary-bg-active)}.btn-ghost{background:transparent;color:var(--btn-ghost-text)}.btn-ghost:hover{background:var(--btn-ghost-bg-hover)}.btn-ghost:active{background:var(--color-primary-subtle-hover)}.btn-danger{background:var(--btn-danger-bg);color:var(--btn-danger-text)}.btn-danger:hover{background:var(--btn-danger-bg-hover)}.btn-danger:active{background:var(--btn-danger-bg-active)}.btn-danger:focus-visible{box-shadow:0 0 0 var(--focus-ring-width) #dc262659}.btn-accent{background:var(--color-accent);color:#fff}.btn-accent:hover{background:var(--color-accent-hover)}a{color:var(--text-link);text-decoration:none}a:hover{color:var(--text-link-hover);text-decoration:underline}.form-control,input[type=text],input[type=email],input[type=password],input[type=number],input[type=search],textarea{width:100%;height:40px;padding:0 12px;background:var(--bg-surface);border:1px solid var(--border-input);border-radius:var(--radius-md);font-size:14px;color:var(--text-primary);transition:border-color .12s ease,box-shadow .12s ease}.form-control::placeholder,input[type=text]::placeholder,input[type=email]::placeholder,input[type=password]::placeholder,input[type=number]::placeholder,input[type=search]::placeholder,textarea::placeholder{color:var(--text-muted)}.form-control:hover,input[type=text]:hover,input[type=email]:hover,input[type=password]:hover,input[type=number]:hover,input[type=search]:hover,textarea:hover{border-color:var(--border-strong)}.form-control:focus,input[type=text]:focus,input[type=email]:focus,input[type=password]:focus,input[type=number]:focus,input[type=search]:focus,textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 var(--focus-ring-width) var(--focus-ring)}.form-control:disabled,input[type=text]:disabled,input[type=email]:disabled,input[type=password]:disabled,input[type=number]:disabled,input[type=search]:disabled,textarea:disabled{background:var(--neutral-50);color:var(--text-disabled);cursor:not-allowed}.form-control.is-invalid,input[type=text].is-invalid,input[type=email].is-invalid,input[type=password].is-invalid,input[type=number].is-invalid,input[type=search].is-invalid,textarea.is-invalid{border-color:var(--error-500)}.form-control.is-invalid:focus,input[type=text].is-invalid:focus,input[type=email].is-invalid:focus,input[type=password].is-invalid:focus,input[type=number].is-invalid:focus,input[type=search].is-invalid:focus,textarea.is-invalid:focus{box-shadow:0 0 0 var(--focus-ring-width) #ef444440}select{width:100%;height:40px;padding:8px 12px;line-height:1.3;background:var(--bg-surface);border:1px solid var(--border-input);border-radius:var(--radius-md);font-size:14px;color:var(--text-primary);transition:border-color .12s ease,box-shadow .12s ease}select:hover{border-color:var(--border-strong)}select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 var(--focus-ring-width) var(--focus-ring)}select:disabled{background:var(--neutral-50);color:var(--text-disabled);cursor:not-allowed}select.is-invalid{border-color:var(--error-500)}select.is-invalid:focus{box-shadow:0 0 0 var(--focus-ring-width) #ef444440}textarea{height:auto;padding:10px 12px}.form-label{display:block;margin-bottom:6px;font-size:13px;font-weight:500;color:var(--text-secondary)}.form-error{margin-top:4px;font-size:12px;color:var(--error-600)}.form-hint{margin-top:4px;font-size:12px;color:var(--text-muted)}.card{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs)}.card .card-header{padding:16px 20px;border-bottom:1px solid var(--divider);font-size:15px;font-weight:600;color:var(--text-primary)}.card .card-body{padding:20px}.table{width:100%;border-collapse:collapse;font-size:14px}.table thead th{background:var(--table-header-bg);color:var(--text-secondary);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;text-align:left;padding:10px 16px;border-bottom:1px solid var(--border-default)}.table tbody td{padding:12px 16px;border-bottom:1px solid var(--divider);color:var(--text-primary)}.table tbody tr:hover{background:var(--table-row-hover)}.table tbody tr.selected{background:var(--table-row-selected)}.badge{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:var(--radius-full);font-size:12px;font-weight:500;border:1px solid transparent}.badge.badge-primary{background:var(--chip-bg);color:var(--chip-text)}.badge.badge-success{background:var(--status-success-bg);border-color:var(--status-success-border);color:var(--status-success-text)}.badge.badge-warning{background:var(--status-warning-bg);border-color:var(--status-warning-border);color:var(--status-warning-text)}.badge.badge-error{background:var(--status-error-bg);border-color:var(--status-error-border);color:var(--status-error-text)}.badge.badge-info{background:var(--status-info-bg);border-color:var(--status-info-border);color:var(--status-info-text)}.badge.badge-neutral{background:var(--neutral-100);color:var(--neutral-600)}.alert{display:flex;gap:12px;padding:12px 16px;border:1px solid transparent;border-radius:var(--radius-md);font-size:14px}.alert.alert-success{background:var(--status-success-bg);border-color:var(--status-success-border);color:var(--status-success-text)}.alert.alert-warning{background:var(--status-warning-bg);border-color:var(--status-warning-border);color:var(--status-warning-text)}.alert.alert-error{background:var(--status-error-bg);border-color:var(--status-error-border);color:var(--status-error-text)}.alert.alert-info{background:var(--status-info-bg);border-color:var(--status-info-border);color:var(--status-info-text)}.app-sidebar{background:var(--sidebar-bg);color:var(--sidebar-text)}.app-sidebar .nav-section-label{color:var(--sidebar-section-label);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;padding:16px 20px 6px}.app-sidebar .nav-item{display:flex;align-items:center;gap:12px;padding:10px 20px;color:var(--sidebar-text);border-radius:var(--radius-md);margin:2px 10px;font-size:14px;cursor:pointer}.app-sidebar .nav-item:hover{background:var(--sidebar-item-hover);color:var(--sidebar-text-active);text-decoration:none}.app-sidebar .nav-item.active{background:var(--sidebar-item-active);color:var(--sidebar-text-active);font-weight:500}.app-topbar{background:var(--topbar-bg);border-bottom:1px solid var(--topbar-border)}.portal-badge{background:var(--portal-badge-bg);color:var(--portal-badge-text);padding:3px 10px;border-radius:var(--radius-full);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%}.status-dot.open{background:var(--lane-open)}.status-dot.closed{background:var(--lane-closed)}.status-dot.pending{background:var(--lane-pending)}.status-dot.offline{background:var(--lane-offline)}.status-dot.available{background:var(--slot-available)}.status-dot.occupied{background:var(--slot-occupied)}.status-dot.reserved{background:var(--slot-reserved)}body{background:var(--bg-app);color:var(--text-primary)}.ui-field__label--required:after{content:" *";color:var(--error-600);font-weight:var(--font-weight-bold, 700)}.ui-info-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--space-5, 20px)}.ui-info-group{display:flex;flex-direction:column;gap:var(--space-1, 4px)}.ui-info-group.col-span-2{grid-column:span 2}.ui-info-group label,.ui-info-group .ui-info-label{font-size:var(--font-size-xs, 12px);font-weight:var(--font-weight-semibold, 600);color:var(--text-muted);text-transform:uppercase;letter-spacing:.02em;margin:0}.ui-info-group .value,.ui-info-group .ui-info-value{font-size:var(--font-size-sm, 13px);font-weight:var(--font-weight-medium, 500);color:var(--text-secondary);word-break:break-all;line-height:var(--line-height-normal, 1.5)}.ui-table-wrapper{overflow-x:auto}.ui-table{width:100%;border-collapse:separate;border-spacing:0;background:transparent;text-align:left;font-size:var(--font-size-md)}.ui-table thead th{padding:12px 16px;background:var(--table-header-bg);border-bottom:1px solid var(--border-default);color:var(--text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold, 700);text-transform:uppercase;letter-spacing:.6px;white-space:nowrap}.ui-table tbody td{padding:14px 16px;border-bottom:1px solid var(--divider);color:var(--text-primary);vertical-align:middle}.ui-table tbody tr:last-child td{border-bottom:none}.ui-table tbody tr:hover td{background:var(--table-row-hover)}.ui-table tbody tr.hover-row{cursor:pointer}.ui-table tbody tr.selected-row td,.ui-table tbody tr.selected td{background:var(--table-row-selected)}.ui-table .no-data-cell{text-align:center;padding:60px 24px;color:var(--text-secondary)}.ui-table .no-data-cell .no-data-icon{font-size:40px;width:40px;height:40px;margin-bottom:var(--space-3);opacity:.4}.ui-table .no-data-cell p{margin:0;font-size:var(--font-size-md)}html{color-scheme:light;height:100%}body{background-color:var(--bg-app, #f8fafc);color:var(--text-primary, #1e293b);font-family:Plus Jakarta Sans,system-ui,-apple-system,sans-serif;margin:0;height:100%}*{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent}*::-webkit-scrollbar{width:6px;height:6px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}ui-button{background:transparent!important;background-image:none!important;border-radius:0!important;box-shadow:none!important}.app-dialog-backdrop{background:#0f172a80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
