@charset "UTF-8";app-pool-detail .pools-card{margin-bottom:var(--space-6)}app-pool-detail .pool-pills{display:flex;flex-wrap:wrap;gap:var(--space-2)}app-pool-detail .pool-pill{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);border-radius:9999px;border:1.5px solid var(--color-border);background:var(--color-surface);color:var(--color-text);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:background .15s,border-color .15s,color .15s}app-pool-detail .pool-pill:hover:not(.active){border-color:var(--color-primary);color:var(--color-primary)}app-pool-detail .pool-pill.active{background:#eff6ff;color:var(--color-primary);border-color:#bfdbfe;font-weight:600}app-pool-detail .pool-pill .admin-crown{flex-shrink:0;opacity:.75;color:currentColor}app-pool-detail .empty-state-msg{color:var(--color-text-muted);font-size:var(--font-size-sm)}app-pool-detail .pool-meta{color:var(--color-text-muted);font-size:var(--font-size-sm);margin-top:var(--space-1);display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}app-pool-detail .modal-overlay{position:fixed;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-4)}app-pool-detail .modal{background:var(--color-bg, #fff);border-radius:var(--radius-md, 8px);box-shadow:0 8px 32px #0000002e;padding:var(--space-6);width:100%;max-width:560px}app-pool-detail .modal h3{margin:0 0 var(--space-4);font-size:var(--font-size-lg, 1.125rem)}app-pool-detail .modal p{margin:0;color:var(--color-text)}app-pool-detail .modal-actions{display:flex;gap:var(--space-2);justify-content:flex-end;margin-top:var(--space-5);flex-wrap:wrap}app-pool-detail .trip-label{display:inline-block;padding:1px var(--space-2);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.06em}app-pool-detail .trip-label--onward{background:#dbeafe;color:var(--color-primary, #2563eb)}app-pool-detail .trip-label--return{background:#dcfce7;color:var(--color-success, #16a34a)}app-pool-detail .settings-panel{margin-bottom:var(--space-6)}app-pool-detail .settings-panel__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4)}app-pool-detail .settings-panel__header h2{font-size:var(--font-size-lg);font-weight:600}app-pool-detail .pool-dl{display:grid;grid-template-columns:auto 1fr;gap:var(--space-2) var(--space-5);font-size:var(--font-size-sm);margin-bottom:var(--space-4)}app-pool-detail .pool-dl .label-with-help{display:flex;align-items:center;gap:6px;position:relative;margin-bottom:0}app-pool-detail .pool-dl .help-trigger{width:18px;height:18px;border-radius:9999px;border:1px solid #94a3b8;color:#334155;background:#f8fafc;display:inline-flex;align-items:center;justify-content:center;font-size:var(--text-badge-size);font-weight:700;cursor:help;line-height:1;flex-shrink:0}app-pool-detail .pool-dl .help-tooltip{position:absolute;left:0;top:calc(100% + 6px);z-index:10;min-width:220px;max-width:320px;padding:6px 8px;border-radius:var(--radius-sm);border:1px solid #334155;background:#0f172a;color:#f8fafc;font-size:var(--text-meta-size);line-height:1.35;box-shadow:0 6px 14px #0f172a40;visibility:hidden;opacity:0;transform:translateY(-2px);transition:opacity .12s ease,transform .12s ease}app-pool-detail .pool-dl .help-trigger:hover+.help-tooltip,app-pool-detail .pool-dl .help-trigger:focus-visible+.help-tooltip{visibility:visible;opacity:1;transform:translateY(0)}app-pool-detail .pool-dl dt{font-weight:500;color:var(--color-text-muted)}app-pool-detail .trip-summary{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3);margin-top:var(--space-2)}@media(max-width:560px){app-pool-detail .trip-summary{grid-template-columns:1fr}}app-pool-detail .trip-summary__item{border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);display:flex;flex-direction:column;gap:var(--space-1)}app-pool-detail .trip-summary__item--onward{background:var(--color-bg);border:1px solid var(--color-border)}app-pool-detail .trip-summary__item--return{background:var(--color-bg);border:1px solid var(--color-border)}app-pool-detail .trip-route-detail{display:flex;flex-direction:column;gap:0;margin-top:var(--space-1)}app-pool-detail .trip-stop{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2)}app-pool-detail .trip-stop--tp{padding-left:var(--space-3);color:var(--color-text-muted, #6b7280)}app-pool-detail .tp-dot{font-size:1rem;color:var(--color-text-muted, #9ca3af);margin-right:var(--space-1);-webkit-user-select:none;user-select:none}app-pool-detail .trip-route{font-size:var(--font-size-sm);font-weight:500;color:var(--color-text)}app-pool-detail .trip-route--tp{font-weight:400;color:var(--color-text-muted, #6b7280)}app-pool-detail .trip-times{font-size:var(--font-size-sm);color:var(--color-text-muted);white-space:nowrap;min-width:5.5rem;text-align:right}app-pool-detail .settings-form .form-group{margin-bottom:var(--space-4)}app-pool-detail .settings-card{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-4)}app-pool-detail .settings-card .form-group{margin-bottom:0}app-pool-detail .form-row--align-center{align-items:flex-end}app-pool-detail .form-row--align-center .switch-toggle{flex-shrink:0;white-space:nowrap;color:var(--color-text);font-weight:500;font-size:var(--font-size-base);padding-bottom:8px}app-pool-detail .auto-schedule-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4)}app-pool-detail .auto-schedule-header__title{display:flex;flex-direction:column;gap:var(--space-1)}app-pool-detail .auto-schedule-header__title strong{font-size:var(--font-size-lg);font-weight:700;color:var(--color-text)}app-pool-detail .auto-schedule-header__subtitle{margin:0;font-size:var(--font-size-sm);color:var(--color-text-muted);font-weight:400}app-pool-detail .settings-divider{border:none;border-top:1px solid var(--color-border);margin:var(--space-4) 0}app-pool-detail .settings-et-note{margin-top:var(--space-4);font-size:var(--font-size-sm);color:var(--color-text-muted);font-style:italic}app-pool-detail .settings-form .section-label{display:block;font-weight:600;margin-bottom:var(--space-1)}app-pool-detail .settings-form .form-hint{color:var(--color-text-muted, #6b7280);margin:0 0 var(--space-3)}app-pool-detail .settings-form .form-hint-inline{font-weight:400;color:var(--color-text-muted, #6b7280)}app-pool-detail .settings-form .days-row{display:flex;gap:var(--space-2);flex-wrap:wrap}app-pool-detail .settings-form .day-toggle{display:flex;flex-direction:column;align-items:center;gap:4px;cursor:pointer}app-pool-detail .settings-form .day-toggle input[type=checkbox]{display:none}app-pool-detail .settings-form .day-toggle span{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--text-button-size);font-weight:600;border:2px solid var(--color-border, #d1d5db);background:var(--color-surface, #fff);color:var(--color-text-muted, #6b7280);transition:background .15s,color .15s,border-color .15s}app-pool-detail .settings-form .day-toggle.active span{background:var(--color-primary, #2563eb);border-color:var(--color-primary, #2563eb);color:#fff}app-pool-detail .settings-form .label-with-help{display:flex;align-items:center;gap:6px;position:relative;margin-bottom:var(--space-1)}app-pool-detail .settings-form .label-with-help label{margin-bottom:0}app-pool-detail .settings-form .help-trigger{width:18px;height:18px;border-radius:9999px;border:1px solid #94a3b8;color:#334155;background:#f8fafc;display:inline-flex;align-items:center;justify-content:center;font-size:var(--text-badge-size);font-weight:700;cursor:help;line-height:1}app-pool-detail .settings-form .help-tooltip{position:absolute;left:0;top:calc(100% + 6px);z-index:10;min-width:220px;max-width:320px;padding:6px 8px;border-radius:var(--radius-sm);border:1px solid #334155;background:#0f172a;color:#f8fafc;font-size:var(--text-meta-size);line-height:1.35;box-shadow:0 6px 14px #0f172a40;visibility:hidden;opacity:0;transform:translateY(-2px);transition:opacity .12s ease,transform .12s ease}app-pool-detail .settings-form .help-trigger:hover+.help-tooltip,app-pool-detail .settings-form .help-trigger:focus-visible+.help-tooltip{visibility:visible;opacity:1;transform:translateY(0)}app-pool-detail .trip-panels{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4);margin-bottom:var(--space-4)}@media(max-width:600px){app-pool-detail .trip-panels{grid-template-columns:1fr}}app-pool-detail .trip-panel{border:1.5px solid var(--color-border, #e2e8f0);border-radius:var(--radius-md);padding:var(--space-4)}app-pool-detail .trip-panel__header{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3)}app-pool-detail .trip-panel__title{font-size:var(--font-size-sm);font-weight:600;text-transform:uppercase;letter-spacing:.04em}app-pool-detail .trip-panel .trip-direction-icon{font-size:1.1rem;line-height:1}app-pool-detail .trip-panel .trip-direction-icon--return{transform:scaleX(-1);display:inline-block}app-pool-detail .trip-panel--onward{border-color:var(--color-primary);background:var(--color-bg)}app-pool-detail .trip-panel--onward .trip-panel__title{color:var(--color-primary)}app-pool-detail .trip-panel--onward .trip-direction-icon{color:var(--color-primary)}app-pool-detail .trip-panel--return{border-color:var(--color-success);background:var(--color-bg)}app-pool-detail .trip-panel--return .trip-panel__title{color:var(--color-success)}app-pool-detail .trip-panel--return .trip-direction-icon{color:var(--color-success)}app-pool-detail .trip-panel .form-group{margin-bottom:var(--space-3)}app-pool-detail .trip-panel .form-group--time{flex:0 0 130px;min-width:0}app-pool-detail .tp-list{margin-bottom:var(--space-2)}app-pool-detail .tp-row{display:flex;align-items:flex-start;gap:var(--space-2);margin-bottom:var(--space-2)}app-pool-detail .tp-connector{font-size:1.2rem;color:var(--color-text-muted, #9ca3af);line-height:2.4;flex-shrink:0;-webkit-user-select:none;user-select:none}app-pool-detail .tp-fields{flex:1;display:flex;gap:var(--space-2);flex-wrap:wrap;min-width:0}app-pool-detail .tp-fields .tp-loc-group{flex:1;min-width:120px;margin-bottom:0}app-pool-detail .tp-fields .tp-time-group{flex:0 0 120px;min-width:0;margin-bottom:0}app-pool-detail .tp-fields .optional{font-weight:400;color:var(--color-text-muted, #9ca3af)}app-pool-detail .tp-actions{display:flex;flex-direction:column;align-items:center;gap:4px;padding-top:24px}app-pool-detail .drag-handle{display:flex;align-items:center;justify-content:center;width:26px;height:26px;font-size:1rem;color:var(--color-text-muted, #9ca3af);cursor:grab;border-radius:var(--radius-sm);-webkit-user-select:none;user-select:none;transition:color .1s,background .1s;background:none;border:none;padding:0}app-pool-detail .drag-handle:hover{color:var(--color-text, #374151);background:var(--color-border, #e5e7eb)}app-pool-detail .drag-handle:active{cursor:grabbing}app-pool-detail .cdk-drag-preview{box-shadow:0 4px 12px #00000026;border-radius:var(--radius-sm);background:var(--color-surface, #fff);opacity:.95}app-pool-detail .cdk-drag-placeholder{opacity:.3}app-pool-detail .cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}app-pool-detail .tp-list.cdk-drop-list-dragging .tp-row:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}app-pool-detail .btn-icon{background:none;border:1px solid var(--color-border, #d1d5db);border-radius:var(--radius-sm);width:26px;height:26px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:var(--text-badge-size);color:var(--color-text-muted, #6b7280);padding:0;transition:background .1s,color .1s}app-pool-detail .btn-icon:hover:not(:disabled){background:var(--color-border, #e5e7eb);color:var(--color-text, #111827)}app-pool-detail .btn-icon:disabled{opacity:.35;cursor:default}app-pool-detail .btn-icon--remove{color:#dc2626;border-color:#fca5a5}app-pool-detail .btn-icon--remove:hover:not(:disabled){background:#fee2e2;color:#b91c1c}app-pool-detail .btn-add-tp{background:none;border:1.5px dashed var(--color-border, #d1d5db);border-radius:var(--radius-sm);padding:var(--space-1) var(--space-3);font-size:var(--text-button-size);color:var(--color-text-muted, #6b7280);cursor:pointer;width:100%;text-align:left;margin-bottom:var(--space-3);transition:border-color .15s,color .15s,background .15s;display:flex;align-items:center;gap:var(--space-1)}app-pool-detail .btn-add-tp span{font-size:1rem;font-weight:700}.trip-panel--onward app-pool-detail .btn-add-tp:hover{border-color:var(--color-primary, #2563eb);color:var(--color-primary, #2563eb);background:#dbeafe40}.trip-panel--return app-pool-detail .btn-add-tp:hover{border-color:var(--color-success, #16a34a);color:var(--color-success, #16a34a);background:#dcfce740}app-pool-detail .invite-panel{border-top:1px solid var(--color-border, #e5e7eb);margin-top:var(--space-5);padding-top:var(--space-4)}app-pool-detail .invite-panel h3{font-size:var(--font-size-base);font-weight:600;margin-bottom:var(--space-2)}app-pool-detail .invite-panel .form-hint{color:var(--color-text-muted, #6b7280);margin-bottom:var(--space-3)}app-pool-detail .invite-panel .invite-row{display:flex;gap:var(--space-2);align-items:center;flex-wrap:wrap;margin-bottom:var(--space-3)}app-pool-detail .invite-panel .invite-input{flex:1;min-width:200px;padding:var(--space-2) var(--space-3);border:1.5px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);caret-color:var(--color-text);transition:border-color .15s,box-shadow .15s}app-pool-detail .invite-panel .invite-input::placeholder{color:var(--color-text-muted);opacity:1}app-pool-detail .invite-panel .invite-input:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary) 30%,transparent);outline:none}app-pool-detail .invite-panel .invite-input:disabled{opacity:.7;cursor:not-allowed}app-pool-detail .invite-panel .invite-input:-webkit-autofill,app-pool-detail .invite-panel .invite-input:-webkit-autofill:hover,app-pool-detail .invite-panel .invite-input:-webkit-autofill:focus{-webkit-text-fill-color:var(--color-text);caret-color:var(--color-text);-webkit-box-shadow:0 0 0 1000px var(--color-surface) inset;box-shadow:0 0 0 1000px var(--color-surface) inset;transition:background-color 5000s ease-in-out 0s}app-pool-detail .invite-panel .invite-result .success-msg{word-break:break-all}app-pool-detail .invite-panel .invite-history-toggle{margin-bottom:var(--space-3)}app-pool-detail .invite-table{margin-top:var(--space-3)}app-pool-detail .danger-zone{border:1px solid var(--color-danger);border-radius:var(--radius-lg);padding:var(--space-6);margin-top:var(--space-8)}app-pool-detail .danger-zone__title{color:var(--color-danger);font-size:var(--text-section-title-size);font-weight:var(--text-section-title-weight);margin-bottom:var(--space-4)}app-pool-detail .danger-zone__row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap}app-pool-detail .danger-zone__description strong{font-size:var(--text-body-size);font-weight:var(--text-body-strong-weight)}app-pool-detail .danger-zone__description p{font-size:var(--text-meta-size);color:var(--color-text-muted);margin-top:var(--space-1)}app-pool-detail .btn-danger-outline{background:transparent;color:var(--color-danger);border:1.5px solid var(--color-danger);border-radius:var(--radius-md);padding:var(--space-2) var(--space-5);font-size:var(--text-button-size);font-weight:var(--text-button-weight);cursor:pointer;white-space:nowrap;transition:background .15s}app-pool-detail .btn-danger-outline:hover:not(:disabled){background:#fee2e2}app-pool-detail .btn-danger-outline:disabled{opacity:.55;cursor:not-allowed}app-pool-detail .leave-modal__warning{margin-top:var(--space-3);padding:var(--space-3) var(--space-4);background:#fff7ed;border:1px solid #fed7aa;border-radius:var(--radius-md);color:#92400e;font-size:var(--font-size-sm)}:root{--color-primary: #2563eb;--color-primary-dark: #1d4ed8;--color-success: #16a34a;--color-success-dark: #15803d;--color-danger: #dc2626;--color-warning: #d97706;--color-text: #0f172a;--color-text-muted: #64748b;--color-bg: #f1f5f9;--color-surface: #ffffff;--color-border: #e2e8f0;--color-shadow: rgba(15, 23, 42, .08);--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--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-sans: "Inter", "Segoe UI", system-ui, -apple-system, sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--line-height-readable: 1.5;--line-height-tight: 1.3;--text-page-title-size: 1.5rem;--text-page-title-weight: 600;--text-section-title-size: 1.125rem;--text-section-title-weight: 600;--text-label-size: .8125rem;--text-label-weight: 500;--text-input-size: .875rem;--text-button-size: .875rem;--text-button-weight: 500;--text-body-size: .875rem;--text-body-weight: 400;--text-body-strong-weight: 600;--text-meta-size: .8125rem;--text-meta-weight: 400;--text-badge-size: .75rem;--text-badge-weight: 500}app-login{--font-family-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--bg: #07142a;--bg-elevated: rgba(15, 28, 52, .82);--bg-soft: rgba(17, 34, 63, .72);--surface: rgba(20, 38, 67, .92);--surface-2: rgba(11, 24, 46, .96);--border: rgba(144, 169, 207, .18);--border-strong: rgba(144, 169, 207, .28);--text-primary: #f8fbff;--text-secondary: #bfd0e6;--text-muted: #8fa4c3;--text-dark: #11213a;--accent: #5ea3ff;--accent-strong: #2a7fff;--accent-soft: rgba(94, 163, 255, .16);--success-soft: rgba(51, 214, 127, .14);--success-text: #8ff0b5;--danger-soft: rgba(255, 98, 98, .14);--danger-text: #ffb0b0;--shadow-lg: 0 20px 60px rgba(0, 0, 0, .35);--shadow-md: 0 10px 30px rgba(0, 0, 0, .22);--radius-xl: 28px;--radius-lg: 20px;--radius-md: 14px;--radius-sm: 10px;--focus-ring: 0 0 0 3px rgba(94, 163, 255, .34);--max-width: 1200px}@media(prefers-color-scheme:light){app-login:not([data-theme]){--bg: #f5f8fc;--bg-elevated: rgba(255, 255, 255, .9);--bg-soft: rgba(246, 249, 253, .95);--surface: rgba(255, 255, 255, .96);--surface-2: rgba(248, 251, 255, .98);--border: rgba(16, 34, 61, .1);--border-strong: rgba(16, 34, 61, .18);--text-primary: #0f1f38;--text-secondary: #334866;--text-muted: #637a99;--text-dark: #11213a;--accent: #1f74ff;--accent-strong: #0c5fe7;--accent-soft: rgba(31, 116, 255, .1);--success-soft: rgba(30, 174, 96, .12);--success-text: #137847;--danger-soft: rgba(226, 74, 74, .1);--danger-text: #a82b2b;--shadow-lg: 0 20px 50px rgba(23, 41, 72, .12);--shadow-md: 0 10px 24px rgba(23, 41, 72, .08)}}app-login[data-theme=light]{--bg: #f5f8fc;--bg-elevated: rgba(255, 255, 255, .9);--bg-soft: rgba(246, 249, 253, .95);--surface: rgba(255, 255, 255, .96);--surface-2: rgba(248, 251, 255, .98);--border: rgba(16, 34, 61, .1);--border-strong: rgba(16, 34, 61, .18);--text-primary: #0f1f38;--text-secondary: #334866;--text-muted: #637a99;--text-dark: #11213a;--accent: #1f74ff;--accent-strong: #0c5fe7;--accent-soft: rgba(31, 116, 255, .1);--success-soft: rgba(30, 174, 96, .12);--success-text: #137847;--danger-soft: rgba(226, 74, 74, .1);--danger-text: #a82b2b;--shadow-lg: 0 20px 50px rgba(23, 41, 72, .12);--shadow-md: 0 10px 24px rgba(23, 41, 72, .08)}@font-face{font-family:Inter;src:local("Inter"),local("Inter Regular");font-style:normal;font-weight:100 900;font-display:swap}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:auto;min-height:100%;overflow-x:hidden}body{min-height:100vh;font-family:var(--font-sans);font-size:var(--font-size-base);color:var(--color-text);background:var(--color-bg);line-height:var(--line-height-readable);-webkit-font-smoothing:antialiased;overflow-y:auto;overscroll-behavior-y:auto}.text-page-title{font-size:var(--text-page-title-size);font-weight:var(--text-page-title-weight);line-height:var(--line-height-tight)}.text-section-title{font-size:var(--text-section-title-size);font-weight:var(--text-section-title-weight);line-height:var(--line-height-tight)}.text-label{font-size:var(--text-label-size);font-weight:var(--text-label-weight);line-height:var(--line-height-tight)}.text-input{font-size:var(--text-input-size);font-weight:400;line-height:var(--line-height-readable)}.text-button{font-size:var(--text-button-size);font-weight:var(--text-button-weight);line-height:var(--line-height-tight)}.text-body{font-size:var(--text-body-size);font-weight:var(--text-body-weight);line-height:var(--line-height-readable)}.text-body-strong{font-size:var(--text-body-size);font-weight:var(--text-body-strong-weight);line-height:var(--line-height-readable)}.text-meta{font-size:var(--text-meta-size);font-weight:var(--text-meta-weight);line-height:var(--line-height-readable)}.text-badge{font-size:var(--text-badge-size);font-weight:var(--text-badge-weight);line-height:var(--line-height-tight)}.page-header h1{font-size:var(--text-page-title-size);font-weight:var(--text-page-title-weight);line-height:var(--line-height-tight)}.card-title,.section-header h2,.subsection-title,.settings-panel__header h2,.invite-panel h3,.invite-section h2{font-size:var(--text-section-title-size);font-weight:var(--text-section-title-weight);line-height:var(--line-height-tight)}label,.section-label{font-size:var(--text-label-size);font-weight:var(--text-label-weight);color:var(--color-text);line-height:var(--line-height-tight)}input,select,textarea{font-size:var(--text-input-size);line-height:var(--line-height-readable)}input::placeholder,textarea::placeholder{font-size:var(--text-input-size);color:var(--color-text-muted);opacity:1}button,.btn,.topnav__link,.topnav__signout,.topnav__dropdown-item{font-size:var(--text-button-size);font-weight:var(--text-button-weight);line-height:var(--line-height-tight)}p,td,li,.sched-role-name,.member-name,.profile-name{font-size:var(--text-body-size);line-height:var(--line-height-readable)}.page-subtitle,.pool-meta,.pool-name-sub,.week-label,.sched-day-date,.form-hint,.form-hint-inline,.field-hint,.optional,.tt-drawer__hint,.page-info{font-size:var(--text-meta-size);font-weight:var(--text-meta-weight);line-height:var(--line-height-readable)}.badge,.trip-label,.status-badge,.dropdown-badge,.sched-pax-chip,.sched-your-role,.sched-role-label,.tt-section-label{font-size:var(--text-badge-size);font-weight:var(--text-badge-weight);line-height:var(--line-height-tight)}app-root{display:block;min-height:100vh;overflow:visible}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%;display:block}input,button,select,textarea{font:inherit;border:none;background:none}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-sm)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-5);border-radius:var(--radius-md);font-size:var(--text-button-size);font-weight:var(--text-button-weight);cursor:pointer;transition:background .15s,border-color .15s,opacity .15s;white-space:nowrap}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-success{background:var(--color-success);color:#fff}.btn-success:hover:not(:disabled){background:var(--color-success-dark)}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-primary-dark)}.btn-outline{background:transparent;color:var(--color-text);border:1.5px solid var(--color-border)}.btn-outline:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.btn-warning{background:transparent;color:#b45309;border:1.5px solid #fcd34d}.btn-warning:hover:not(:disabled){background:#fef3c7;border-color:#b45309}.btn-sm{padding:var(--space-1) var(--space-3);font-size:var(--text-button-size)}.btn-google{background:#fff;color:#3c4043;border:1.5px solid #dadce0;padding:var(--space-3) var(--space-6);font-size:var(--font-size-base);font-weight:500;border-radius:24px;box-shadow:0 1px 3px var(--color-shadow)}.btn-google:hover{box-shadow:0 2px 6px #0f172a24}.btn-facebook{background:#1877f2;color:#fff;border:none;padding:var(--space-3) var(--space-6);font-size:var(--font-size-base);font-weight:500;border-radius:24px;box-shadow:0 1px 3px var(--color-shadow)}.btn-facebook:hover{background:#166fe5;box-shadow:0 2px 6px #0f172a24}.card{background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:0 1px 4px var(--color-shadow);padding:var(--space-6)}.page{max-width:900px;margin:0 auto;padding:var(--space-8) var(--space-6) calc(var(--space-12) + env(safe-area-inset-bottom))}@media(max-width:640px){.page{padding-bottom:calc(var(--space-12) + var(--space-8) + env(safe-area-inset-bottom))}}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-8);flex-wrap:wrap}.page-header h1{font-size:var(--text-page-title-size);font-weight:var(--text-page-title-weight);color:var(--color-text)}.page-header .header-actions{display:flex;gap:var(--space-2);flex-shrink:0;align-items:center;flex-wrap:wrap}.badge{display:inline-block;padding:2px var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-badge-size);font-weight:var(--text-badge-weight);background:var(--color-border);color:var(--color-text-muted);text-transform:capitalize}.badge--admin{background:#dbeafe;color:var(--color-primary)}.badge--cancelled{background:#fee2e2;color:var(--color-danger)}.badge--frozen{background:#e0f2fe;color:#0369a1}.error-msg{color:var(--color-danger);font-size:var(--font-size-sm);padding:var(--space-3) var(--space-4);background:#fee2e2;border-radius:var(--radius-md);margin-bottom:var(--space-4)}.success-msg{color:var(--color-success-dark);font-size:var(--font-size-sm);padding:var(--space-3) var(--space-4);background:#dcfce7;border-radius:var(--radius-md);margin-bottom:var(--space-4)}.field-error{color:var(--color-danger);font-size:var(--font-size-sm);margin-top:var(--space-1);display:block}.empty-state{text-align:center;padding:var(--space-12) var(--space-6);color:var(--color-text-muted);display:flex;flex-direction:column;align-items:center;gap:var(--space-4)}.avatar{width:36px;height:36px;border-radius:50%;object-fit:cover;background:var(--color-primary);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:600;font-size:var(--font-size-sm);flex-shrink:0}.form-group{display:flex;flex-direction:column;gap:var(--space-1);flex:1}.form-group label{font-size:var(--text-label-size);font-weight:var(--text-label-weight);color:var(--color-text)}.form-group input[type=text],.form-group input[type=number],.form-group input[type=time],.form-group input[type=email]{padding:var(--space-2) var(--space-3);border:1.5px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);transition:border-color .15s}.form-group input[type=text]:focus,.form-group input[type=number]:focus,.form-group input[type=time]:focus,.form-group input[type=email]:focus{border-color:var(--color-primary)}.form-group input[type=text].ng-invalid.ng-touched,.form-group input[type=number].ng-invalid.ng-touched,.form-group input[type=time].ng-invalid.ng-touched,.form-group input[type=email].ng-invalid.ng-touched{border-color:var(--color-danger)}.form-group input[type=checkbox]{width:18px;height:18px;accent-color:var(--color-primary);cursor:pointer}.form-row{display:flex;gap:var(--space-4);flex-wrap:wrap}.switch-toggle{display:inline-flex;align-items:center;gap:var(--space-2);cursor:pointer;-webkit-user-select:none;user-select:none;font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-muted)}.switch-toggle input[type=checkbox]{position:absolute;opacity:0;width:0;height:0;pointer-events:none}.switch-toggle .switch-toggle__track{position:relative;display:inline-block;width:38px;height:22px;border-radius:9999px;background:#94a3b8;flex-shrink:0;transition:background .18s ease}.switch-toggle .switch-toggle__track:after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000040;transition:transform .18s ease}.switch-toggle input:checked+.switch-toggle__track{background:var(--color-primary, #2563eb)}.switch-toggle input:checked+.switch-toggle__track:after{transform:translate(16px)}.switch-toggle input:focus-visible+.switch-toggle__track{outline:2px solid var(--color-primary);outline-offset:2px}.switch-toggle--spaced{margin-top:var(--space-3)}.form-actions{display:flex;gap:var(--space-3);padding-top:var(--space-4)}table{width:100%;border-collapse:collapse}table th,table td{padding:var(--space-3) var(--space-4);text-align:left;font-size:var(--font-size-sm)}table th{font-weight:600;color:var(--color-text-muted);border-bottom:2px solid var(--color-border);background:var(--color-bg)}table td{border-bottom:1px solid var(--color-border)}table tr:hover td{background:var(--color-bg)}body.dark{--color-primary: #60a5fa;--color-primary-dark: #93c5fd;--color-success: #4ade80;--color-success-dark: #86efac;--color-danger: #f87171;--color-warning: #fbbf24;--color-text: #f1f5f9;--color-text-muted: #94a3b8;--color-bg: #0f172a;--color-surface: #1e293b;--color-border: #334155;--color-shadow: rgba(0, 0, 0, .4)}body.dark table th,body.dark table tr:hover td{background:var(--color-surface)}body.dark .sched-day-head,body.dark .sched-day-foot{background:#162032}body.dark .badge--admin{background:#1e3a5f;color:var(--color-primary)}body.dark .badge--cancelled{background:#450a0a;color:var(--color-danger)}body.dark .badge--frozen{background:#0c2a3e;color:#7dd3fc}body.dark .error-msg{background:#450a0a}body.dark .success-msg{background:#052e16}body.dark .leave-modal__warning{background:#422006;border-color:#854d0e;color:#fcd34d}body.dark .schedule-status--empty{background:#1e293b}body.dark .avail-btn--yes.active{background:#052e16;color:#4ade80;border-color:#166534}body.dark .avail-btn--no.active{background:#450a0a;color:#f87171;border-color:#991b1b}body.dark .avail-btn--maybe.active{background:#422006;color:#fbbf24;border-color:#854d0e}body.dark .pool-pill.active{background:#1e3a5f;border-color:#1d4ed8}body.dark .sched-role-name--me,body.dark .sched-pax-chip--me{background:#1e3a5f}app-pool-detail{--member-row-bg: linear-gradient(180deg, #f8fafc 0%, #eef2ff 100%);--member-row-border: rgba(99, 102, 241, .16);--member-row-shadow: 0 6px 20px rgba(15, 23, 42, .08);--member-name-color: #0f172a;--member-subtle-color: #475569;--member-control-color: #334155;--member-switch-off: #cbd5e1;--member-switch-on: #1d4ed8;--member-switch-border: #94a3b8;--member-switch-on-border: #1e40af;--member-menu-btn-bg: #f1f5f9;--member-menu-btn-border: rgba(148, 163, 184, .4);--member-menu-btn-color: #0f172a;--member-menu-bg: #f8fafc;--member-menu-text: #0f172a}app-pool-detail .member-list{display:flex;flex-direction:column;gap:6px}app-pool-detail .member-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);border-radius:14px;border:1px solid var(--member-row-border);background:var(--member-row-bg);box-shadow:var(--member-row-shadow);padding:10px 14px}app-pool-detail .member-identity{min-width:0;display:flex;align-items:center;gap:8px}app-pool-detail .member-avatar{width:38px;height:38px;border-radius:9999px;display:inline-flex;align-items:center;justify-content:center;font-size:1rem;font-weight:700;color:#f8fafc;background:radial-gradient(circle at 32% 24%,#6366f1,#4f46e5 48%,#312e81);box-shadow:inset 0 0 0 1px #ffffff1f}app-pool-detail .member-meta{min-width:0}app-pool-detail .member-title-row{display:flex;align-items:baseline;gap:var(--space-1);flex-wrap:wrap}app-pool-detail .member-name{font-size:clamp(.94rem,.9rem + .22vw,1.06rem);font-weight:650;color:var(--member-name-color);line-height:1.2}app-pool-detail .member-nickname{color:var(--member-subtle-color);font-size:var(--text-meta-size)}app-pool-detail .member-role-tags{display:flex;gap:6px;margin-top:4px;flex-wrap:wrap}app-pool-detail .member-role-tags .badge{font-size:var(--text-badge-size);padding:1px 8px}app-pool-detail .member-badge--driver{background:#10b9812e;color:#047857}app-pool-detail .member-badge--filler{background:#6366f124;color:#4338ca}app-pool-detail .member-controls{display:flex;align-items:center;gap:12px;flex-wrap:nowrap;justify-content:flex-end}app-pool-detail .member-toggle{display:inline-flex;align-items:center;justify-content:flex-end;min-width:108px;gap:8px;color:var(--member-control-color);font-size:clamp(.92rem,.88rem + .16vw,1rem)}app-pool-detail .member-toggle--disabled{opacity:.58}app-pool-detail .mini-switch{position:relative;display:inline-flex;width:42px;height:24px}app-pool-detail .mini-switch__input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;margin:0}app-pool-detail .mini-switch__input:disabled{cursor:not-allowed}app-pool-detail .mini-switch__track{width:100%;height:100%;border-radius:9999px;background:var(--member-switch-off);border:1.5px solid var(--member-switch-border);transition:background .18s ease,border-color .18s ease;box-shadow:inset 0 0 0 1px #0f172a0f;position:relative}app-pool-detail .mini-switch__track:after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:9999px;background:#f8fafc;box-shadow:0 1px 3px #0f172a61;transition:transform .2s ease}app-pool-detail .mini-switch__input:checked+.mini-switch__track{background:var(--member-switch-on);border-color:var(--member-switch-on-border)}app-pool-detail .mini-switch__input:checked+.mini-switch__track:after{transform:translate(18px)}app-pool-detail .mini-switch__input:disabled+.mini-switch__track{filter:saturate(.8)}app-pool-detail .mini-switch__input:focus-visible+.mini-switch__track{outline:2px solid color-mix(in srgb,var(--color-primary, #60a5fa) 78%,white);outline-offset:2px}app-pool-detail .member-menu-wrap{position:relative}app-pool-detail .member-menu-trigger{width:28px;height:28px;border-radius:9999px;border:1px solid var(--member-menu-btn-border);background:var(--member-menu-btn-bg);color:var(--member-menu-btn-color);font-size:.95rem;line-height:1;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}app-pool-detail .member-menu-trigger:hover{background:color-mix(in srgb,var(--member-menu-btn-bg) 80%,#cbd5e1)}app-pool-detail .member-menu-spacer{width:28px;height:28px;display:inline-block;flex:0 0 28px}app-pool-detail .member-menu{position:absolute;right:0;top:calc(100% + 8px);z-index:20;min-width:200px;border-radius:var(--radius-md);border:1px solid rgba(148,163,184,.28);background:var(--member-menu-bg);box-shadow:0 10px 30px #02061759;padding:6px}app-pool-detail .member-menu button{width:100%;text-align:left;background:transparent;border:none;border-radius:8px;color:var(--member-menu-text);padding:8px 10px;cursor:pointer}app-pool-detail .member-menu button:hover:not(:disabled){background:#e2e8f0}app-pool-detail .member-menu button:disabled{opacity:.55;cursor:not-allowed}app-pool-detail .member-menu__danger{color:#dc2626!important}app-pool-detail .member-row.current-user{outline:2px solid color-mix(in srgb,var(--color-primary) 35%,transparent);outline-offset:1px}@media(max-width:1100px){app-pool-detail .member-controls{gap:10px}app-pool-detail .member-toggle{min-width:100px}}@media(max-width:860px){app-pool-detail .member-row{flex-direction:column;align-items:stretch;gap:var(--space-4)}app-pool-detail .member-controls{justify-content:flex-start;gap:var(--space-4)}app-pool-detail .member-menu{left:0;right:auto}}@media(max-width:540px){app-pool-detail .member-row{padding:10px;border-radius:12px}app-pool-detail .member-controls{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;width:100%}app-pool-detail .member-toggle{justify-content:space-between}app-pool-detail .member-menu-wrap{justify-self:end}app-pool-detail .member-avatar{width:34px;height:34px;font-size:.92rem}}body.dark app-pool-detail{--member-row-bg: linear-gradient(180deg, rgba(15, 23, 42, .7) 0%, rgba(30, 41, 59, .62) 100%);--member-row-border: rgba(148, 163, 184, .18);--member-row-shadow: none;--member-name-color: #f8fafc;--member-subtle-color: #cbd5e1;--member-control-color: #cbd5e1;--member-switch-off: #64748b;--member-switch-on: #2563eb;--member-switch-border: #94a3b8;--member-switch-on-border: #60a5fa;--member-menu-btn-bg: rgba(2, 6, 23, .55);--member-menu-btn-border: rgba(148, 163, 184, .25);--member-menu-btn-color: #e2e8f0;--member-menu-bg: #f8fafc;--member-menu-text: #0f172a}body.dark app-pool-detail .member-badge--driver{background:#10b98138;color:#34d399}body.dark app-pool-detail .member-badge--filler{background:#818cf833;color:#a5b4fc}body.dark app-dashboard{--avail-pill-bg: #1e3048;--avail-pill-color: #7ea8cc}.modal-overlay{position:fixed;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-4)}.modal{background:var(--color-bg, #fff);border-radius:var(--radius-md, 8px);box-shadow:0 8px 32px #0000002e;padding:var(--space-6);width:100%;max-width:720px;max-height:80vh;overflow-y:auto}.modal h3{margin:0 0 var(--space-4);font-size:var(--font-size-lg, 1.125rem)}.modal p{margin:0 0 var(--space-4);color:var(--color-text)}.modal-actions{display:flex;gap:var(--space-2);justify-content:flex-end;margin-top:var(--space-5);flex-wrap:wrap}
