:root{--booker-page-canvas:#1f2937;--booker-modal-shell:#212e3e;--booker-raised-surface:#2c3948;--booker-control-surface:#3f4a56;--booker-divider:#374151;--booker-strong-border:#4b5563;--booker-primary-text:#fff;--booker-secondary-text:#b7bdce;--booker-muted-text:#9ca3af;--booker-primary-action:#3b82f6;--booker-primary-hover:#2563eb;--booker-success-action:#097a32;--booker-success-hover:#065f27;--booker-warning-action:#b45309;--booker-danger-action:#b91c1c;--booker-danger-hover:#991b1b;--booker-success-feedback:#10b981;--booker-warning-feedback:#fbbf24;--booker-error-text:#fca5a5;--booker-link-text:#73aafc;--booker-overlay:#00000059;--booker-dialog-overlay:#00000080;--booker-focus-ring:#3b82f638;--booker-hover-layer:#ffffff08;--booker-success-surface:#10b9811f;--booker-warning-surface:#fbbf2424;--booker-error-surface:#f871711f;--booker-info-surface:#3b82f61f;--booker-search-surface:#ffffff0d;--booker-dropdown-shadow:0 4px 12px #0000004d;--booker-dialog-shadow:0 24px 64px #00000061;--booker-decision-dialog-width:520px;--booker-modal-divider:#ffffff1a;--booker-analytics-surface:var(--color-bg-secondary);--booker-analytics-label:var(--color-text-secondary);--booker-analytics-total:#3b82f6;--booker-analytics-assigned:#10b981;--booker-analytics-available:#f59e0b;--booker-analytics-icon-radius:14px;--booker-analytics-accent-width:4px;--booker-empty-state-min-height:200px;--booker-empty-icon-size:64px;--booker-empty-copy-width:400px;--booker-detail-summary-min-height:120px;--booker-detail-identity-size:96px;--booker-detail-back-size:40px;--booker-detail-status-dot-size:6px;--booker-detail-attribute-divider-width:1px;--booker-detail-attribute-divider-height:36px;--booker-detail-attribute-min-width:112px;--booker-detail-mobile-identity-size:72px;--booker-purchase-summary-width:320px;--booker-invoice-item-control-height:48px;--booker-invoice-item-dropdown-offset:52px;--color-bg-primary:#f9fafb;--color-bg-secondary:#fff;--color-bg-elevated:#fff;--color-text-primary:#1f2937;--color-text-secondary:#4b5563;--color-text-tertiary:#6b7280;--color-border:#e5e7eb;--color-divider:#d1d5db;--color-primary:#3b82f6;--color-primary-hover:#2563eb;--color-primary-active:#1d4ed8;--color-primary-light:#3b82f61a;--color-secondary:#10b981;--color-secondary-hover:#059669;--color-secondary-active:#047857;--color-accent:#8b5cf6;--color-accent-hover:#7c3aed;--color-accent-active:#6d28d9;--color-success:#10b981;--color-success-light:#10b9811a;--color-warning:#f59e0b;--color-warning-light:#f59e0b1a;--color-danger:#ef4444;--color-danger-light:#ef44441a;--color-info:#3b82f6;--color-info-light:#3b82f61a;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -2px #0000000d;--shadow-xl:0 20px 25px -5px #0000001a, 0 10px 10px -5px #0000000a;--color-input-bg:#fff;--color-input-border:#d1d5db;--color-input-focus:#3b82f6;--color-disabled:#9ca3af;--color-disabled-bg:#f3f4f6;--light-darken-5:#eaedf1;--light-medium-darken-5:#c2c7cf;--color-select-option-text:#1f2937;--color-select-option-bg:#fff;--color-select-bg:#fff;--color-select-text:#1f2937;--color-select-border:#d1d5db}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-bg-primary:#1f2937;--color-bg-secondary:#111827;--color-bg-elevated:#374151;--color-text-primary:#f9fafb;--color-text-secondary:#e5e7eb;--color-text-tertiary:#9ca3af;--color-border:#4b5563;--color-divider:#374151;--color-primary:#60a5fa;--color-primary-hover:#93c5fd;--color-primary-active:#3b82f6;--color-primary-light:#60a5fa33;--color-secondary:#34d399;--color-secondary-hover:#6ee7b7;--color-secondary-active:#10b981;--color-accent:#a78bfa;--color-accent-hover:#c4b5fd;--color-accent-active:#8b5cf6;--color-success:#34d399;--color-success-light:#34d39933;--color-warning:#fbbf24;--color-warning-light:#fbbf2433;--color-danger:#f87171;--color-danger-light:#f8717133;--color-info:#60a5fa;--color-info-light:#60a5fa33;--shadow-sm:0 1px 2px 0 #0003;--shadow-md:0 4px 6px -1px #0000004d, 0 2px 4px -1px #0003;--shadow-lg:0 10px 15px -3px #0000004d, 0 4px 6px -2px #0003;--shadow-xl:0 20px 25px -5px #0000004d, 0 10px 10px -5px #0003;--color-input-bg:#374151;--color-input-border:#4b5563;--color-input-focus:#60a5fa;--color-disabled:#6b7280;--color-disabled-bg:#374151;--light-darken-5:#1a212b;--light-medium-darken-5:#31384a;--calendar-icon-filter:invert(.8);--color-select-option-text:#f9fafb;--color-select-option-bg:#2c3948;--color-select-bg:#374151;--color-select-text:#f9fafb;--color-select-border:#4b5563}body{color:var(--color-text-primary);background-color:var(--color-bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.5;transition:background-color .3s,color .3s}h1,h2,h3,h4,h5,h6{color:var(--color-text-primary);margin-top:0;margin-bottom:1rem;font-weight:700;line-height:1.2}h1{font-size:2.25rem}h2{font-size:1.875rem}h3{font-size:1.5rem}h4{font-size:1.25rem}h5{font-size:1.125rem}h6{font-size:1rem}p{color:var(--color-text-secondary);margin-top:0;margin-bottom:1rem}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}select{background-color:var(--color-select-bg);color:var(--color-select-text);border-color:var(--color-select-border);appearance:auto}select:focus{border-color:var(--color-primary)}select option{background-color:var(--color-select-option-bg);color:var(--color-select-option-text);padding:8px}input[type=text],input[type=search],input[type=email],input[type=password],input[type=number],input[type=date]{background-color:var(--color-input-bg);color:var(--color-text-primary);border-color:var(--color-border)}input[type=text]::placeholder,input[type=search]::placeholder,input[type=email]::placeholder,input[type=password]::placeholder,input[type=number]::placeholder,input[type=date]::placeholder{color:var(--color-text-tertiary)}input[type=text]:focus,input[type=search]:focus,input[type=email]:focus,input[type=password]:focus,input[type=number]:focus,input[type=date]:focus{border-color:var(--color-primary);outline:none}.btn{text-align:center;cursor:pointer;border-radius:.25rem;justify-content:center;align-items:center;gap:.5rem;padding:.5rem 1rem;font-weight:500;transition:all .3s;display:inline-flex}.btn.btn-primary{background-color:var(--color-primary);color:#fff}.btn.btn-primary:hover{background-color:var(--color-primary-hover)}.btn.btn-secondary{background-color:var(--color-secondary);color:#fff}.btn.btn-secondary:hover{background-color:var(--color-secondary-hover)}.btn.btn-danger{background-color:var(--color-danger);color:#fff}.btn.btn-danger:hover{background-color:var(--color-danger-hover)}.btn.btn-outline{border:1px solid var(--color-primary);color:var(--color-primary);background-color:#0000}.btn.btn-outline:hover{background-color:var(--color-primary);color:#fff}.container{width:100%;margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem}@media (width>=640px){.container{max-width:540px}}@media (width>=768px){.container{max-width:720px}}@media (width>=1024px){.container{max-width:960px}}@media (width>=1280px){.container{max-width:1140px}}.card{background-color:var(--color-bg-elevated);box-shadow:var(--shadow-md);border-radius:.5rem;transition:background-color .3s,box-shadow .3s;overflow:hidden}.card .card-header{border-bottom:1px solid var(--color-divider);padding:1rem}.card .card-body{padding:1rem}.card .card-footer{border-top:1px solid var(--color-divider);padding:1rem}.form-group{margin-bottom:1rem}.form-group label{color:var(--color-text-secondary);margin-bottom:.5rem;font-weight:500;display:block}.form-group input,.form-group select,.form-group textarea{width:100%;color:var(--color-text-primary);background-color:var(--color-input-bg);border:1px solid var(--color-input-border);border-radius:.25rem;padding:.5rem .75rem;font-size:1rem;line-height:1.5;transition:border-color .3s,background-color .3s;display:block}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--color-input-focus);outline:none}.alert{border-radius:.25rem;margin-bottom:1rem;padding:.75rem 1rem}.alert.alert-success{background-color:var(--color-success-light);color:var(--color-success)}.alert.alert-danger{background-color:var(--color-danger-light);color:var(--color-danger)}.alert.alert-warning{background-color:var(--color-warning-light);color:var(--color-warning)}.alert.alert-info{background-color:var(--color-info-light);color:var(--color-info)}.modal-overlay{z-index:1000;background-color:#000000b3;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-content{background-color:var(--color-bg-elevated);width:100%;max-width:600px;max-height:90vh;box-shadow:var(--shadow-xl);border-radius:.5rem;overflow-y:auto}.modal-header{background-color:var(--color-primary);color:#fff;padding:1rem 1.5rem;position:relative}.modal-header h2{color:#fff;margin:0}.modal-header .close-button{color:#fff;cursor:pointer;background:0 0;border:none;border-radius:9999px;justify-content:center;align-items:center;padding:.5rem;transition:background-color .15s;display:flex;position:absolute;top:1rem;right:1rem}.modal-header .close-button:hover{background-color:#fff3}.modal-body{padding:1.5rem}.modal-body .form-group{margin-bottom:1rem}.modal-body .form-group label{color:var(--color-text-secondary);margin-bottom:.5rem;font-weight:500;display:block}.modal-body .form-group .tag-input-container{gap:.5rem;display:flex}.modal-body .form-group .tag-input-container input{border:1px solid var(--color-border);border-radius:.25rem;flex:1;padding:.5rem .75rem;font-size:.875rem}.modal-body .form-group .tag-input-container input:focus{border-color:var(--color-primary);outline:none}.modal-body .form-group .tag-input-container .add-tag-btn{background-color:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:.25rem;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.875rem;transition:background-color .15s;display:flex}.modal-body .form-group .tag-input-container .add-tag-btn:hover:not(:disabled){background-color:var(--color-primary-hover)}.modal-body .form-group .tag-input-container .add-tag-btn:disabled{background-color:var(--color-disabled);cursor:not-allowed}.modal-body .form-group .existing-tags{flex-wrap:wrap;gap:.5rem;margin-top:.5rem;display:flex}.modal-body .form-group .existing-tags .existing-tag{background-color:var(--color-bg-primary);border:1px solid var(--color-border);cursor:pointer;border-radius:.25rem;padding:.25rem .5rem;font-size:.875rem;transition:all .15s}.modal-body .form-group .existing-tags .existing-tag:hover{background-color:var(--color-primary-light);border-color:var(--color-primary);color:var(--color-primary)}.modal-body .form-group .existing-tags .existing-tag.selected{background-color:var(--color-primary);color:#fff;border-color:var(--color-primary)}.modal-body .form-group .selected-tags{flex-wrap:wrap;gap:.5rem;margin-top:.5rem;display:flex}.modal-body .form-group .selected-tags .selected-tag{background-color:var(--color-primary-light);color:var(--color-primary);border-radius:.25rem;align-items:center;gap:.5rem;padding:.25rem .5rem;font-size:.875rem;display:flex}.modal-body .form-group .selected-tags .selected-tag .remove-tag-btn{color:var(--color-primary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex}.modal-body .form-group .selected-tags .selected-tag .remove-tag-btn:hover{color:var(--color-danger)}.modal-body .form-group .no-tags-message{color:var(--color-text-tertiary);font-size:.875rem;font-style:italic}.modal-actions{justify-content:flex-end;gap:.75rem;margin-top:1rem;display:flex}.modal-actions .cancel-btn{background-color:var(--color-bg-primary);border:1px solid var(--color-border);color:var(--color-text-secondary);cursor:pointer;border-radius:.25rem;padding:.5rem 1rem;font-size:.875rem;transition:all .15s}.modal-actions .cancel-btn:hover{background-color:var(--light-darken-5);color:var(--color-text-primary)}.modal-actions .save-btn{background-color:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:.25rem;padding:.5rem 1rem;font-size:.875rem;transition:background-color .15s}.modal-actions .save-btn:hover:not(:disabled){background-color:var(--color-primary-hover)}.modal-actions .save-btn:disabled{background-color:var(--color-disabled);cursor:not-allowed}.student-image-modal-overlay{z-index:9999;background-color:#000000f2;justify-content:center;align-items:center;animation:.2s studentImageFadeIn;display:flex;position:fixed;inset:0}@keyframes studentImageFadeIn{0%{opacity:0}to{opacity:1}}.student-image-modal-content{flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.student-image-modal-close{color:#fff;cursor:pointer;z-index:10000;background:#ffffff1a;border:none;border-radius:9999px;justify-content:center;align-items:center;padding:.75rem;transition:background-color .2s;display:flex;position:fixed;top:24px;right:24px}.student-image-modal-close:hover{background-color:#fff3}.student-expanded-image{object-fit:contain;border-radius:.5rem;width:auto;height:85vh;box-shadow:0 8px 32px #0000004d}
