@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&family=Poppins:wght@300;400;500;600;700;800;900&display=swap";.ui-card{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:20px 24px;box-shadow:var(--shadow-sm);transition:var(--transition)}.ui-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.ui-button{border:none;border-radius:var(--radius-md);min-height:38px;padding:9px 20px;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;display:inline-flex;align-items:center;gap:8px;transition:var(--transition)}.ui-button:disabled{opacity:.6;cursor:not-allowed}.ui-button:active{transform:scale(.98)}.ui-button-primary{background:var(--color-primary);color:#fff}.ui-button-primary:hover{background:var(--color-primary-dark);box-shadow:var(--shadow-sm)}.ui-button-secondary{background:transparent;color:var(--color-text-primary);border:1.5px solid var(--color-dark-blue)}.ui-button-secondary:hover{background:color-mix(in srgb,var(--color-dark-blue) 6%,transparent)}.ui-button-danger{background:#fee2e2;color:var(--color-error)}.ui-button-danger:hover{background:#fecaca}.ui-button-ghost{background:transparent;color:var(--color-text-primary);border:none;padding-left:8px;padding-right:8px}.ui-button-ghost:hover{background:#0000000d;color:var(--color-dark-blue)}.ui-button-sm{min-height:32px;padding:6px 14px;font-size:12px}.ui-button-lg{min-height:46px;padding:12px 28px;font-size:15px}.ui-button-full{width:100%;justify-content:center}.ui-button-spinner{animation:ui-spin .8s linear infinite}@keyframes ui-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.ui-section-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:24px}.ui-section-header h3{margin:0;font-size:20px;font-weight:700;color:var(--color-navy);line-height:1.2}.ui-section-header p{margin:4px 0 0;font-size:13px;color:var(--color-text-muted)}.ui-stat-card{display:flex;align-items:center;gap:14px}.ui-stat-icon{width:42px;height:42px;border-radius:var(--radius-md);background:#1033550f;color:var(--color-navy);display:flex;align-items:center;justify-content:center}.ui-stat-label{margin:0 0 6px;font-size:12px;font-weight:500;color:var(--color-text-muted)}.ui-stat-value{display:block;font-size:28px;font-weight:700;color:var(--color-navy);line-height:1}.ui-stat-meta{display:block;margin-top:6px;font-size:12px;color:var(--color-text-muted)}.ui-toast-stack{position:fixed;top:20px;right:20px;display:flex;flex-direction:column;gap:12px;z-index:9999}.ui-toast{min-width:260px;max-width:360px;background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:12px 14px;color:var(--color-text-primary)}.ui-toast-header{display:flex;align-items:center;justify-content:space-between;gap:10px;font-weight:700;margin-bottom:4px}.ui-toast-header button{border:none;background:transparent;cursor:pointer;font-size:16px;line-height:1;color:inherit}.ui-toast p{margin:0;color:var(--color-text-muted);font-size:13px;line-height:1.4}.ui-toast-error{border-color:#ef444440}.ui-toast-success{border-color:#16a34a40}.ui-toast-warning{border-color:#f59e0b4d}.ui-confirm-overlay{z-index:10000}.ui-confirm-dialog{--app-modal-width: 460px;border:1px solid var(--color-border)}.ui-confirm-warning{border-color:#f59e0b59}.ui-confirm-danger{border-color:#ef444459}.ui-confirm-header .app-modal-title{margin:0;font-size:16px}.ui-confirm-body p{margin:0;color:var(--color-text-muted);line-height:1.45;font-size:13px}.ui-confirm-details{margin:8px 0 0;padding:0 0 0 18px;color:var(--color-text-muted);font-size:13px;line-height:1.55}.ui-confirm-details li+li{margin-top:3px}.ui-confirm-actions{padding-top:0}.password-modal-overlay{z-index:2500}.password-modal{--app-modal-width: 460px}.password-modal-header{display:flex;align-items:flex-start;gap:.75rem}.password-modal-icon{width:42px;height:42px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;background:#10335517;color:#103355;flex-shrink:0}.password-modal-close{margin-left:auto}.password-modal-form{display:flex;flex-direction:column;min-height:0}.password-modal-body{display:flex;flex-direction:column;gap:.86rem}.password-field{display:flex;flex-direction:column;gap:.35rem;font-size:.8rem;font-weight:700;color:#475569}.password-input{display:flex;align-items:center;gap:.5rem;min-height:44px;border-radius:.82rem;border:1px solid #dbe3ee;background:#fff;padding:0 .8rem;color:#64748b}.password-input:focus-within{border-color:#103355;box-shadow:0 0 0 3px #1033551f}.password-input input{width:100%;border:none;outline:none;background:transparent;font-size:.9rem;color:#0f172a}.password-hint{margin:0;font-size:.74rem;letter-spacing:0;text-transform:none;color:#64748b;line-height:1.4}.password-message{border-radius:.85rem;padding:.65rem .75rem;display:flex;align-items:center;gap:.4rem;font-size:.78rem;font-weight:600}.password-message.error{border:1px solid #fecaca;background:#fef2f2;color:#b91c1c}.password-message.success{border:1px solid #bbf7d0;background:#f0fdf4;color:#166534}.password-submit{min-width:11.5rem}.password-modal-icon{border-radius:var(--radius-md);background:#1033551a;color:var(--color-navy)}.password-field{color:var(--color-text-muted)}.password-input{border:1.5px solid var(--color-border);border-radius:var(--radius-md)}.password-input:focus-within{border-color:var(--color-green);box-shadow:0 0 0 3px #74a86526}.password-input input{color:var(--color-text-primary)}.password-hint{color:var(--color-text-muted)}.password-message{border-radius:var(--radius-md)}.profile-completion-modal{width:min(760px,calc(100vw - 2rem))}.profile-completion-header{gap:.9rem}.profile-completion-icon{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#56addb1f;color:var(--color-navy, #1D3350);border:1px solid rgba(13,148,136,.2)}.profile-completion-form{display:grid;gap:.9rem}.profile-completion-required{border:1px solid #e2e8f0;border-radius:.92rem;padding:.72rem;background:#f8fbff;display:grid;gap:.46rem}.profile-completion-required-list{display:flex;flex-wrap:wrap;gap:.45rem}.profile-completion-required-item{display:inline-flex;align-items:center;gap:.35rem;border-radius:999px;padding:.25rem .6rem;font-size:.76rem;font-weight:600}.profile-completion-required-item.ok{background:#10b9811f;color:#047857}.profile-completion-required-item.pending{background:#f59e0b29;color:#92400e}.profile-completion-grid{display:grid;gap:.74rem;grid-template-columns:repeat(2,minmax(0,1fr))}.profile-completion-field{display:grid;gap:.35rem}.profile-completion-field span{font-size:.8rem;color:#475569;font-weight:600}.profile-completion-field input,.profile-completion-field select{width:100%;border:1px solid #dbe3ee;border-radius:.82rem;min-height:2.56rem;padding:.56rem .72rem;font-size:.86rem;color:#0f172a;background:#fff}.profile-completion-field input:focus,.profile-completion-field select:focus{outline:none;border-color:#103355;box-shadow:0 0 0 3px #1033551f}.profile-completion-field--full{grid-column:1 / -1}.profile-completion-error{display:inline-flex;align-items:center;gap:.4rem;color:#b91c1c;font-size:.8rem;font-weight:600}@media(max-width:760px){.profile-completion-grid{grid-template-columns:1fr}.profile-completion-field--full{grid-column:auto}}.profile-completion-icon{border-radius:var(--radius-md);background:#1033551a;color:var(--color-navy);border:1px solid rgba(16,51,85,.16)}.profile-completion-required{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:#f8fafc}.profile-completion-required-item{border-radius:999px}.profile-completion-required-item.ok{background:#dcfce7;color:#166534}.profile-completion-required-item.pending{background:#fef9c3;color:#854d0e}.profile-completion-field span{color:var(--color-text-muted)}.profile-completion-field input,.profile-completion-field select{border:1.5px solid var(--color-border);border-radius:var(--radius-md);min-height:2.6rem;color:var(--color-text-primary)}.profile-completion-field input:focus,.profile-completion-field select:focus{border-color:var(--color-green);box-shadow:0 0 0 3px #74a86526}:root{--laines-primary: var(--color-primary);--laines-dark: var(--color-dark-blue);--laines-accent: var(--color-light-blue)}#root{min-height:100vh;background:var(--color-background)}.btn-base{border:none;border-radius:12px;cursor:pointer;font-weight:600}.input-base{width:100%;min-height:42px;border:1px solid rgba(29,51,80,.14);border-radius:12px;padding:.65rem .85rem;background:#fff;color:var(--color-text-primary)}.input-base:focus{outline:none;border-color:var(--color-light-blue);box-shadow:0 0 0 3px #56addb38}:root{--color-navy: #1D3350;--color-navy-dark: #162840;--color-navy-light: #2a4a6e;--color-blue: #56ADDB;--color-blue-dark: #3d9ccf;--color-blue-light: rgba(86, 173, 219, .12);--color-green: #74A865;--color-green-dark: #5a8a4e;--color-green-light: rgba(116, 168, 101, .12);--color-green-xlight: #f2faf0;--color-gray: #677487;--color-gray-light: rgba(103, 116, 135, .12);--color-primary: var(--color-navy);--color-primary-dark: var(--color-navy-dark);--color-primary-light: rgba(29, 51, 80, .08);--color-primary-border:rgba(29, 51, 80, .2);--color-accent: var(--color-blue);--color-accent-dark: var(--color-blue-dark);--color-accent-light: var(--color-blue-light);--color-accent-border: rgba(86, 173, 219, .3);--color-success: var(--color-green);--color-success-dark: var(--color-green-dark);--color-success-light: var(--color-green-light);--color-warn: #d97706;--color-warn-light: #fffbeb;--color-warn-border: rgba(217, 119, 6, .28);--color-danger: #dc2626;--color-danger-light: #fef2f2;--color-danger-border: rgba(220, 38, 38, .28);--color-info: var(--color-blue);--color-info-light: var(--color-blue-light);--color-white: #ffffff;--color-surface: #ffffff;--color-surface-alt: #f7f9fc;--color-surface-soft: #f0f4f8;--color-background: #edf1f7;--color-border: rgba(29, 51, 80, .11);--color-border-hover: rgba(29, 51, 80, .2);--color-border-strong: rgba(29, 51, 80, .3);--color-text-primary: var(--color-navy);--color-text-secondary: var(--color-gray);--color-text-muted: #8fa0b3;--color-text-inverse: #ffffff;--radius-xs: 4px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 18px;--radius-2xl: 22px;--radius-full: 9999px;--shadow-xs: 0 1px 2px rgba(29, 51, 80, .05);--shadow-sm: 0 1px 3px rgba(29, 51, 80, .07), 0 1px 2px rgba(29, 51, 80, .04);--shadow-md: 0 4px 12px rgba(29, 51, 80, .09), 0 2px 4px rgba(29, 51, 80, .05);--shadow-lg: 0 8px 24px rgba(29, 51, 80, .1);--shadow-xl: 0 16px 32px rgba(29, 51, 80, .1);--shadow-hover: 0 12px 32px rgba(29, 51, 80, .13);--transition: all .18s cubic-bezier(.4, 0, .2, 1);--transition-fast: .15s ease;--transition-norm: .2s ease;--color-dark-blue: var(--color-navy);--color-dark-blue-light: var(--color-navy-light);--color-light-blue: var(--color-blue);--eval-accent: var(--color-blue);--eval-accent-strong: var(--color-navy);--eval-surface: var(--color-white);--eval-surface-alt: var(--color-surface-alt);--eval-border: rgba(29, 51, 80, .13);--eval-title: var(--color-navy);--eval-muted: var(--color-gray);--pron-accent: var(--color-green);--pron-accent-light: var(--color-green-light);--pron-text-primary: var(--color-navy);--pron-bg: var(--color-background);--pron-card-bg: var(--color-white);--pron-border: rgba(29, 51, 80, .09);--pron-border-hover: rgba(29, 51, 80, .18);--pron-ok: var(--color-green);--pron-ok-bg: var(--color-green-light);--pron-warn: var(--color-warn);--pron-warn-bg: var(--color-warn-light);--pron-danger: var(--color-danger);--pron-danger-bg: var(--color-danger-light);--pron-info: var(--color-blue);--pron-info-bg: var(--color-blue-light)}body{background:var(--color-surface-alt);color:var(--color-text-primary);font-family:Inter,system-ui,sans-serif}*:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}button,.app-modal-btn,.admin-btn,.tab-btn,.primary-btn,.secondary-btn{cursor:pointer;white-space:nowrap;display:inline-flex;align-items:center;gap:8px}.primary-btn,.admin-btn--primary,.admin-btn--success,.tab-btn--primary,.eval-btn-primary{background:var(--color-primary);color:#fff;border:none;padding:9px 20px;border-radius:var(--radius-md);font-size:13px;font-weight:600;transition:var(--transition)}.primary-btn:hover,.admin-btn--primary:hover,.admin-btn--success:hover,.tab-btn--primary:hover,.eval-btn-primary:hover{background:var(--color-navy-dark);box-shadow:var(--shadow-sm)}.secondary-btn,.admin-btn--surface,.admin-btn--ghost,.tab-btn--secondary,.eval-btn-secondary{background:transparent;color:var(--color-primary);border:1.5px solid var(--color-primary-border);padding:9px 20px;border-radius:var(--radius-md);font-size:13px;font-weight:600}.secondary-btn:hover,.admin-btn--surface:hover,.admin-btn--ghost:hover,.tab-btn--secondary:hover,.eval-btn-secondary:hover{background:var(--color-primary-light)}.admin-btn--danger,.danger-btn,.tab-btn--danger{background:var(--color-danger-light);color:#991b1b;border:none}.admin-btn--danger:hover,.danger-btn:hover,.tab-btn--danger:hover{background:#fecaca}input:not([type=checkbox]):not([type=radio]),select,textarea,.setting-input,.setting-select,.admin-search-input,.agenda-search-input,.eval-input{border:1.5px solid var(--color-border);border-radius:var(--radius-md);padding:9px 14px;font-size:14px;font-family:inherit;color:var(--color-text-primary);background:var(--color-white);transition:var(--transition);width:100%}input:not([type=checkbox]):not([type=radio]):focus,select:focus,textarea:focus,.setting-input:focus,.setting-select:focus,.admin-search-input:focus,.agenda-search-input:focus,.eval-input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-light)}label,.form-label,.eval-label,.setting-item label{font-size:13px;font-weight:500;color:var(--color-text-secondary);margin-bottom:6px}table{width:100%;border-collapse:collapse}.admin-management-table-wrap,.research-table,.results-comparison-table,.drilldown-table-wrap,.appointments-table-wrap{background:var(--color-white);border-radius:var(--radius-lg);border:1px solid var(--color-border);overflow:hidden;box-shadow:var(--shadow-sm)}thead th{background:var(--color-surface-alt);color:var(--color-text-secondary);font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;padding:10px 16px;border-bottom:1px solid var(--color-border)}tbody td{padding:13px 16px;font-size:13px;border-bottom:1px solid var(--color-surface-alt);color:var(--color-text-primary)}tbody tr:hover{background:var(--color-surface-alt)}tbody tr:last-child td{border-bottom:none}.stat-card,.admin-stat-card,.team-card,.athlete-card,.summary-card,.area-card,.results-highlight-card,.next-action-card,.patient-card,.appointments-next-card,.quarter-card,.driver-card,.driver-detail-card{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:var(--transition)}.stat-card:hover,.admin-stat-card:hover,.team-card:hover,.athlete-card:hover,.summary-card:hover,.area-card:hover,.results-highlight-card:hover,.next-action-card:hover,.patient-card:hover,.appointments-next-card:hover,.quarter-card:hover,.driver-card:hover,.driver-detail-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.status-badge,.badge,.student-badge,.team-badge,.athlete-badge,.area-badge,.patient-summary-chip,.patient-status-pill{border-radius:20px;padding:3px 10px;font-size:11px;font-weight:600}.status-badge.badge-ok,.status-badge.approved,.badge.approved,.badge.ativo,.badge.concluido{background:var(--color-success-light);color:var(--color-success-dark)}.status-badge.badge-attention,.badge.pendente,.badge.aguardando{background:var(--color-warn-light);color:#854d0e}.badge.recusado,.badge.inativo{background:var(--color-danger-light);color:#991b1b}.badge.agendado,.badge.em-andamento{background:var(--color-info-light);color:var(--color-navy)}.badge.admin{background:var(--color-primary-light);color:var(--color-primary)}.badge.aluno,.badge.atleta,.badge.professor{background:var(--color-success-light);color:var(--color-success-dark)}.laines-page-title,.page-title,.admin-page-title,.section-title{font-size:20px;font-weight:700;color:var(--color-primary);margin-bottom:4px}.laines-page-subtitle,.page-subtitle,.admin-page-subtitle,.section-subtitle{font-size:13px;color:var(--color-text-secondary)}.title-block,.page-header,.section-header{margin-bottom:24px}.laines-feedback-state,.empty-state,.admin-empty-state,.reports-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:48px 24px;text-align:center}.laines-feedback-state svg,.empty-state svg,.admin-empty-icon svg,.reports-empty-state svg{width:48px;height:48px;color:var(--color-primary-border)}.laines-feedback-state strong,.empty-state h3,.admin-empty-title,.reports-empty-state h3{font-size:16px;font-weight:600;color:var(--color-primary);margin:16px 0 8px}.laines-feedback-state p,.empty-state p,.admin-empty-text,.reports-empty-state p{font-size:13px;color:var(--color-text-secondary);max-width:320px;text-align:center}.skeleton{background:linear-gradient(90deg,var(--color-surface-alt) 25%,var(--color-border) 50%,var(--color-surface-alt) 75%);background-size:200% 100%;animation:shimmer 1.4s infinite;border-radius:var(--radius-md)}.skeleton-line{height:16px}.skeleton-card{height:80px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@layer components;@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-100:oklch(93.6% .032 17.717);--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-amber-100:oklch(96.2% .059 95.617);--color-amber-500:oklch(76.9% .188 70.08);--color-amber-600:oklch(66.6% .179 58.318);--color-emerald-100:oklch(95% .052 163.051);--color-emerald-500:oklch(69.6% .17 162.48);--color-emerald-600:oklch(59.6% .145 163.225);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-600:oklch(54.6% .245 262.881);--color-slate-50:oklch(98.4% .003 247.858);--color-slate-100:oklch(96.8% .007 247.896);--color-white:#fff;--spacing:.25rem;--container-md:28rem;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--font-weight-black:900;--radius-sm:var(--radius-sm);--radius-md:var(--radius-md);--radius-lg:var(--radius-lg);--radius-xl:var(--radius-xl);--radius-2xl:var(--radius-2xl);--shadow-sm:var(--shadow-sm);--shadow-md:var(--shadow-md);--shadow-lg:var(--shadow-lg);--shadow-xl:var(--shadow-xl);--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-primary:var(--color-primary);--color-primary-dark:var(--color-primary-dark);--color-primary-light:var(--color-primary-light);--color-dark-blue:var(--color-dark-blue);--color-dark-blue-light:var(--color-dark-blue-light);--color-light-blue:var(--color-light-blue);--color-light-blue-light:var(--color-light-blue-light);--color-gray:var(--color-gray);--color-gray-light:var(--color-gray-light);--color-accent:var(--color-accent);--color-accent-light:var(--color-accent-light);--color-purple:var(--color-purple);--color-purple-light:var(--color-purple-light);--color-amber:var(--color-amber);--color-amber-light:var(--color-amber-light);--color-background:var(--color-background);--color-surface:var(--color-surface);--color-surface-alt:var(--color-surface-alt);--color-border:var(--color-border);--color-border-light:var(--color-border-light);--color-text-primary:var(--color-text-primary);--color-text-secondary:var(--color-text-secondary);--color-text-tertiary:var(--color-text-tertiary);--color-text-light:var(--color-text-light);--font-poppins:"Poppins",sans-serif;--font-inter:"Inter",sans-serif;--radius-full:var(--radius-full)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fixed{position:fixed}.static{position:static}.sticky{position:sticky}.col-span-full{grid-column:1/-1}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.h-4{height:calc(var(--spacing)*4)}.h-12{height:calc(var(--spacing)*12)}.h-20{height:calc(var(--spacing)*20)}.h-screen{height:100vh}.w-1\/2{width:50%}.w-2\/3{width:66.6667%}.w-12{width:calc(var(--spacing)*12)}.w-48{width:calc(var(--spacing)*48)}.w-full{width:100%}.max-w-md{max-width:var(--container-md)}.flex-shrink{flex-shrink:1}.border-collapse{border-collapse:collapse}.rotate-180{rotate:180deg}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}:where(.space-y-0\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*.5)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*.5)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*3)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*3)*calc(1 - var(--tw-space-y-reverse)))}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.rounded{border-radius:.25rem}.rounded-\[var\(--radius-lg\)\]{border-radius:var(--radius-lg)}.rounded-full{border-radius:var(--radius-full)}.border{border-style:var(--tw-border-style);border-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-\[var\(--color-border\)\]{border-color:var(--color-border)}.border-blue-600{border-color:var(--color-blue-600)}.border-slate-100{border-color:var(--color-slate-100)}.bg-\[var\(--color-surface\)\]{background-color:var(--color-surface)}.bg-amber-100{background-color:var(--color-amber-100)}.bg-amber-500{background-color:var(--color-amber-500)}.bg-blue-500{background-color:var(--color-blue-500)}.bg-emerald-100{background-color:var(--color-emerald-100)}.bg-emerald-500{background-color:var(--color-emerald-500)}.bg-red-100{background-color:var(--color-red-100)}.bg-red-500{background-color:var(--color-red-500)}.bg-slate-100{background-color:var(--color-slate-100)}.bg-white{background-color:var(--color-white)}.p-6{padding:calc(var(--spacing)*6)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-6{padding-inline:calc(var(--spacing)*6)}.py-2\.5{padding-block:calc(var(--spacing)*2.5)}.py-3\.5{padding-block:calc(var(--spacing)*3.5)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-\[11px\]{font-size:11px}.text-\[13px\]{font-size:13px}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[0\.05em\]{--tw-tracking:.05em;letter-spacing:.05em}.text-\[var\(--color-text-muted\)\]{color:var(--color-text-muted)}.text-\[var\(--color-text-primary\)\]{color:var(--color-text-primary)}.text-amber-600{color:var(--color-amber-600)}.text-emerald-600{color:var(--color-emerald-600)}.text-red-500{color:var(--color-red-500)}.text-red-600{color:var(--color-red-600)}.uppercase{text-transform:uppercase}.shadow-\[var\(--shadow-sm\)\]{--tw-shadow:var(--shadow-sm);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}@media(hover:hover){.hover\:bg-slate-50:hover{background-color:var(--color-slate-50)}}@media(min-width:40rem){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:48rem){.md\:col-span-2{grid-column:span 2/span 2}.md\:hidden{display:none}}}.app-modal-overlay{--app-modal-z:2500;--app-modal-overlay-bg:#040f1e94;--app-modal-backdrop-blur:5px;--app-modal-radius:1.18rem;--app-modal-padding-x:clamp(1.6rem,2.3vw,2.35rem);--app-modal-padding-y:1.02rem;--app-modal-content-max-width:920px;--app-modal-header-bg:linear-gradient(180deg,#fff 0%,#f8fbff 100%);z-index:var(--app-modal-z);overscroll-behavior:contain;background:var(--app-modal-overlay-bg);min-height:100dvh;-webkit-backdrop-filter:blur(var(--app-modal-backdrop-blur));backdrop-filter:blur(var(--app-modal-backdrop-blur));justify-content:center;align-items:center;padding:clamp(.8rem,2vw,1.4rem);display:flex;position:fixed;inset:0;overflow-y:auto}.app-modal-shell{--app-modal-width:980px;--app-modal-content-max-width:920px;width:min(var(--app-modal-width),calc(100vw - 2rem));border-radius:var(--app-modal-radius);background:linear-gradient(168deg,#fff,#f7fafe);border:1px solid #dbe3eef2;flex-direction:column;max-height:calc(100dvh - 2rem);display:flex;overflow:hidden;box-shadow:0 30px 72px -38px #0f172a8f}.app-modal-shell--sm{--app-modal-width:480px;--app-modal-content-max-width:420px}.app-modal-shell--md{--app-modal-width:720px;--app-modal-content-max-width:640px}.app-modal-shell--lg{--app-modal-width:920px;--app-modal-content-max-width:820px}.app-modal-shell--xl{--app-modal-width:1080px;--app-modal-content-max-width:960px}.app-modal-shell--scrollable{overflow:auto}.app-modal-header{padding:var(--app-modal-padding-y)var(--app-modal-padding-x).95rem;background:var(--app-modal-header-bg);border-bottom:1px solid #e2e8f0;flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:.85rem;display:flex}.app-modal-close{color:#64748b;cursor:pointer;background:#fff;border:1px solid #dbe3ee;border-radius:999px;justify-content:center;align-items:center;width:2.2rem;height:2.2rem;transition:border-color .2s,color .2s,background .2s;display:inline-flex}.app-modal-close:hover:not(:disabled){color:#0f172a;background:#f8fafc;border-color:#cbd5e1}.app-modal-close:focus-visible{border-color:#103355;outline:none;box-shadow:0 0 0 3px #1033552e}.app-modal-body{min-height:0;padding:.95rem var(--app-modal-padding-x)1.15rem;background:#fff;flex:1;overflow:auto}.app-modal-body>*{width:min(100%,var(--app-modal-content-max-width));margin-inline:auto}.app-modal-footer{padding:.84rem var(--app-modal-padding-x).9rem;background:#f8fafc;border-top:1px solid #e2e8f0;flex-shrink:0;justify-content:flex-end;align-items:center;gap:.56rem;display:flex}.app-modal-heading{flex-direction:column;gap:.3rem;min-width:0;display:flex}.app-modal-title{letter-spacing:-.01em;color:#0f172a;margin:0;font-size:clamp(1.08rem,1.6vw,1.34rem);font-weight:800;line-height:1.2}.app-modal-subtitle{color:#64748b;margin:0;font-size:.83rem;line-height:1.42}.app-modal-eyebrow{letter-spacing:.09em;text-transform:uppercase;color:#64748b;margin:0;font-size:.68rem;font-weight:800}.app-modal-header-icon{color:#103355;background:#f8fbff;border:1px solid #dbe3ee;border-radius:.85rem;flex-shrink:0;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;display:inline-flex}.app-modal-body-stack{flex-direction:column;gap:.9rem;display:flex}.app-modal-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem .78rem;display:grid}.app-modal-form-section{letter-spacing:.08em;text-transform:uppercase;color:#64748b;border-bottom:1px dashed #dbe3ee;grid-column:1/-1;align-items:center;gap:.45rem;margin:.12rem 0 0;padding-bottom:.35rem;font-size:.73rem;font-weight:800;display:inline-flex}.app-modal-field{flex-direction:column;gap:.3rem;min-width:0;display:flex}.app-modal-field--full{grid-column:1/-1}.app-modal-field-label{color:#475569;margin:0;font-size:.79rem;font-weight:700}.app-modal-input,.app-modal-select,.app-modal-textarea{color:#0f172a;background:#fff;border:1px solid #dbe3ee;border-radius:.82rem;width:100%;min-height:2.62rem;padding:.56rem .74rem;font-size:.84rem;font-weight:500;transition:border-color .2s,box-shadow .2s,background .2s}.app-modal-textarea{resize:vertical;min-height:6.2rem}.app-modal-input::placeholder,.app-modal-textarea::placeholder{color:#94a3b8}.app-modal-input:focus,.app-modal-select:focus,.app-modal-textarea:focus{border-color:#103355;outline:none;box-shadow:0 0 0 3px #10335521}.app-modal-input:disabled,.app-modal-select:disabled,.app-modal-textarea:disabled{opacity:.72;cursor:not-allowed;background:#f8fafc}.app-modal-inline-message{border:1px solid #0000;border-radius:.82rem;grid-column:1/-1;align-items:flex-start;gap:.4rem;padding:.58rem .72rem;font-size:.81rem;font-weight:600;display:flex}.app-modal-inline-message--error{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.app-modal-inline-message--success{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.app-modal-actions{justify-content:flex-end;align-items:center;gap:.56rem;width:100%;display:flex}.app-modal-btn{border-radius:var(--radius-md);letter-spacing:0;text-transform:none;cursor:pointer;min-height:38px;transition:var(--transition);white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:9px 20px;font-size:13px;font-weight:600;display:inline-flex}.app-modal-btn:disabled{opacity:.62;cursor:not-allowed}.app-modal-btn:focus-visible{outline:none;box-shadow:0 0 0 3px #10335533}.app-modal-btn--secondary{border-color:var(--color-navy);color:var(--color-navy);background:0 0;border-width:1.5px}.app-modal-btn--secondary:hover:not(:disabled){border-color:var(--color-navy);color:var(--color-navy);background:#1033550d}.app-modal-btn--primary{border-color:var(--color-green);background:var(--color-green);color:#fff;box-shadow:var(--shadow-sm)}.app-modal-btn--primary:hover:not(:disabled){background:var(--color-green-dark);border-color:var(--color-green-dark)}.app-modal-btn--danger{color:#991b1b;box-shadow:none;background:#fee2e2;border-color:#0000}.app-modal-btn--danger:hover:not(:disabled){background:#fecaca;border-color:#0000}.app-modal-body::-webkit-scrollbar{width:8px}.app-modal-body::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:999px}@media(max-width:760px){.app-modal-overlay{--app-modal-content-max-width:100%;padding:.56rem}.app-modal-shell{width:min(var(--app-modal-width),calc(100vw - 1rem));border-radius:1rem;max-height:calc(100dvh - 1rem)}.app-modal-header,.app-modal-body,.app-modal-footer{padding-left:.86rem;padding-right:.86rem}.app-modal-form-grid{grid-template-columns:1fr}.app-modal-actions{flex-direction:column-reverse;align-items:stretch}.app-modal-actions .app-modal-btn{width:100%}}:root{color-scheme:light;--color-primary:#74a865;--color-primary-dark:#5e8f55;--color-primary-light:#8bc47a;--color-primary-gradient:linear-gradient(135deg,#74a865 0%,#8bc47a 100%);--color-dark-blue:#1d3350;--color-dark-blue-light:#274264;--color-dark-blue-gradient:linear-gradient(135deg,#1d3350 0%,#274264 100%);--color-light-blue:#56addb;--color-light-blue-light:#7bc1e4;--color-gray:#677487;--color-gray-light:#8b96a6;--color-accent:#56addb;--color-accent-light:#7bc1e4;--color-purple:#8b5cf6;--color-purple-light:#a78bfa;--color-amber:#f59e0b;--color-amber-light:#fbbf24;--color-error:#dc2626;--color-success:#16a34a;--color-background:#f7fafc;--color-surface:#fff;--color-surface-alt:#f1f5f9;--color-border:#1d33501f;--color-border-light:#f1f5f9;--color-text-primary:#1d3350;--color-text-secondary:#677487;--color-text-tertiary:#94a3b8;--color-text-light:#cbd5e1;--shadow-sm:0 2px 8px #0f172a0f;--shadow-md:0 4px 16px #0f172a14;--shadow-lg:0 8px 32px #0f172a1f;--shadow-xl:0 16px 48px #0f172a29;--shadow-inner:inset 0 2px 4px #0f172a0f;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-2xl:24px;--radius-full:9999px;--font-size-xxs:.65rem;--font-size-xs:.7rem;--font-size-sm:.8rem;--font-size-md:.875rem;--font-size-lg:1rem;--font-size-xl:1.125rem;--font-size-2xl:1.25rem;--font-size-3xl:1.5rem;--font-size-4xl:1.75rem;--font-size-5xl:2rem;--font-size-6xl:2.5rem;--line-height-tight:1.1;--line-height-snug:1.25;--line-height-normal:1.45;--line-height-relaxed:1.6;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--font-weight-black:900;--letter-spacing-tight:-.02em;--letter-spacing-normal:0;--letter-spacing-wide:.08em;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--font-inter:"Inter",sans-serif;--font-poppins:"Poppins",sans-serif;--transition-fast:.15s cubic-bezier(.4,0,.2,1);--transition-base:.25s cubic-bezier(.4,0,.2,1);--transition-slow:.35s cubic-bezier(.4,0,.2,1);--layout-max-width:1440px;--layout-content-width:1320px;--layout-page-gutter:clamp(.9rem,2vw,1.6rem);--control-height:42px;--radius-control:12px;--radius-card:18px;--focus-ring:0 0 0 3px #56addb3d;--animation-float:float 3s ease-in-out infinite;--animation-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--animation-glow:glow 2s ease-in-out infinite alternate;--pn-accent:#56addb;--pn-surface:#fff;--pn-surface-2:#f8fafc;--pn-surface-3:#f1f5f9;--pn-border:#1d335017;--pn-border-mid:#1d335026;--pn-border-strong:#1d33503d;--pn-text-1:#1d3350;--pn-text-2:#3d5a72;--pn-text-3:#607b8d;--pn-text-4:#94a3b8;--pn-ok:#16a34a;--pn-ok-bg:#16a34a14;--pn-warn:#d97706;--pn-warn-bg:#d9770617;--pn-danger:#dc2626;--pn-danger-bg:#dc262614;--pn-r-1:8px;--pn-r-2:12px;--pn-r-3:16px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background-color:--color-surface;font-family:var(--font-inter);color:var(--color-text-primary);font-family:Inter,sans-serif;font-size:var(--font-size-md);line-height:var(--line-height-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--color-surface);min-height:100vh;overflow-x:hidden}.input-error{box-shadow:0 0 0 2px #dc262626;border-color:var(--color-error)!important}.form-error-message{color:var(--color-error);font-size:var(--font-size-xs);align-items:center;gap:4px;margin-top:4px;display:flex}.save-indicator{font-size:var(--font-size-xs);border-radius:999px;align-items:center;gap:4px;padding:3px 8px;display:inline-flex}.save-indicator.saving{background:var(--color-surface-alt)}.save-indicator.saved{color:var(--color-success);background:#f0fdf4}.save-indicator.error{color:var(--color-error);background:#fef2f2}button,input,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit;color:inherit}:focus-visible{outline:2px solid var(--color-green);outline-offset:2px}h1,h2,h3,h4,h5,h6{font-family:var(--font-poppins);font-weight:700;line-height:var(--line-height-snug)}h1{font-size:var(--font-size-6xl);background:var(--color-dark-blue-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}h2{font-size:var(--font-size-5xl);color:var(--color-dark-blue)}h3{font-size:var(--font-size-3xl);color:var(--color-dark-blue)}p{line-height:var(--line-height-relaxed)}.bg-gradient-primary{background:var(--color-primary-gradient)}.bg-gradient-dark-blue{background:var(--color-dark-blue-gradient)}.text-gradient-primary{background:var(--color-primary-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.text-gradient-dark-blue{background:var(--color-dark-blue-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.glass{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe6;border:1px solid #fff3}.glass-dark{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#103355e6;border:1px solid #ffffff1a}.card{background:var(--color-surface);border-radius:var(--radius-xl);border:1px solid var(--color-border);box-shadow:var(--shadow-md);transition:all var(--transition-base)}.card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.card.glass{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2}.btn{border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);border:none;justify-content:center;align-items:center;padding:.75rem 1.5rem;font-size:.875rem;font-weight:600;display:inline-flex;position:relative;overflow:hidden}.btn:after{content:"";opacity:0;transform-origin:50%;background:#ffffff80;border-radius:100%;width:5px;height:5px;position:absolute;top:50%;left:50%;transform:scale(1)translate(-50%)}.btn:focus:not(:active):after{animation:1s ease-out ripple}.btn-primary{background:var(--color-primary-gradient);color:#fff}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 24px #74a8654d}.btn-dark-blue{background:var(--color-dark-blue-gradient);color:#fff}.btn-outline{border:2px solid var(--color-primary);color:var(--color-primary);background:0 0}.btn-outline:hover{background:var(--color-primary);color:#fff}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes glow{0%{box-shadow:0 0 10px #74a86580}to{box-shadow:0 0 20px #74a865cc}}@keyframes ripple{0%{opacity:.5;transform:scale(0)}to{opacity:0;transform:scale(40)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.animate-float{animation:var(--animation-float)}.animate-pulse{animation:var(--animation-pulse)}.animate-glow{animation:var(--animation-glow)}.animate-fade-in{animation:.6s ease-out fadeIn}.animate-slide-in-left{animation:.6s ease-out slideInLeft}.animate-slide-in-right{animation:.6s ease-out slideInRight}.sidebar-transition{transition:all var(--transition-base)}.header-glass{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-bottom:1px solid #e2e8f0cc}.status-indicator{border-radius:50%;width:8px;height:8px;display:inline-block}.status-online{background:var(--color-primary);box-shadow:0 0 0 2px #74a86533}.status-offline{background:var(--color-text-tertiary)}.status-busy{background:var(--color-accent)}.badge{border-radius:var(--radius-full);align-items:center;padding:.25rem .75rem;font-size:.75rem;font-weight:600;line-height:1;display:inline-flex}.badge-primary{color:var(--color-primary);background:#74a8651a;border:1px solid #74a86533}.badge-dark-blue{color:var(--color-dark-blue);background:#1033551a;border:1px solid #10335533}.badge-purple{color:var(--color-purple);background:#8b5cf61a;border:1px solid #8b5cf633}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--color-surface-alt);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb{background:var(--color-primary-gradient);border-radius:var(--radius-full);border:2px solid var(--color-surface-alt)}::-webkit-scrollbar-thumb:hover{background:var(--color-primary-light)}@media(max-width:768px){h1{font-size:2rem}h2{font-size:1.75rem}h3{font-size:1.25rem}.card{border-radius:var(--radius-lg)}.laines-page-shell{gap:.9rem;padding:.8rem}.laines-page-header{border-radius:1rem;padding:.95rem}}@media(max-width:480px){h1{font-size:1.75rem}.btn{padding:.625rem 1.25rem;font-size:.8125rem}}.container-admin{max-width:1400px;margin:0 auto;padding:0 1rem}@media(min-width:640px){.container-admin{padding:0 1.5rem}}@media(min-width:1024px){.container-admin{padding:0 2rem}}.laines-page-shell{width:min(100%,var(--layout-content-width));padding:var(--layout-page-gutter);flex-direction:column;gap:clamp(.9rem,2vw,1.5rem);margin:0 auto;display:flex}.laines-page-header{background:linear-gradient(135deg,#fff,#f6f9fd);border:1px solid #1435541f;border-radius:1.3rem;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;padding:clamp(1rem,2vw,1.5rem);display:flex;box-shadow:0 16px 36px -28px #14355447}.laines-page-title{color:var(--color-dark-blue);letter-spacing:-.01em;margin:0;font-size:clamp(1.35rem,2.2vw,1.9rem);font-weight:800}.laines-page-subtitle{color:var(--color-text-secondary);margin:.24rem 0 0;font-size:.92rem;line-height:1.5}.laines-feedback-state{color:var(--color-text-secondary);text-align:center;background:#f8fafceb;border:1px dashed #64748b52;border-radius:1rem;padding:.9rem 1rem;font-size:.88rem;font-weight:600}.laines-feedback-state--error{color:#b91c1c;background:#fef2f2e6;border-style:solid;border-color:#dc262647}.laines-feedback-state--success{color:#166534;background:#f0fdf4e6;border-style:solid;border-color:#16a34a47}.fade-in-section{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(20px)}.fade-in-section.is-visible{opacity:1;transform:translateY(0)}.content-area,.ui-card,.dashboard-stats,.professor-dashboard,.student-dashboard-container{color:var(--color-text-primary)}.content-area input,.content-area select,.content-area textarea{border-radius:var(--radius-control);min-height:var(--control-height);color:var(--color-text-primary);background:#fff;border:1px solid #1d335024}.content-area input:focus,.content-area select:focus,.content-area textarea:focus{border-color:var(--color-light-blue);box-shadow:var(--focus-ring);outline:none}.content-area table{border-collapse:separate;border-spacing:0}.content-area table thead th{background:#f8fbff}.sidebar-overlay{z-index:44;cursor:pointer;-webkit-backdrop-filter:blur(2px);pointer-events:auto;background:#020c187a;border:0;padding:0;position:fixed;inset:0}.widget-error-state{border-radius:var(--radius-md);color:#7f1d1d;background:#ef44440d;border:1px solid #ef44442e;align-items:center;gap:.65rem;padding:.75rem 1rem;font-size:.78rem;line-height:1.4;display:flex}.widget-error-state__icon{opacity:.7;flex-shrink:0;font-size:1rem}.widget-error-state__body{flex:1;min-width:0}.widget-error-state__body strong{color:#991b1b;font-size:.78rem;font-weight:700;display:block}.widget-error-state__body span{color:#b45309;opacity:.82;font-size:.72rem}.widget-error-state__action{color:#dc2626;cursor:pointer;text-underline-offset:2px;white-space:nowrap;background:0 0;border:none;flex-shrink:0;margin-left:auto;padding:0;font-size:.72rem;font-weight:700;text-decoration:underline}.widget-error-state__action:hover{color:#b91c1c}.empty-state{text-align:center;border-radius:var(--radius-md);background:#f8fafcb8;border:1px dashed #64748b47;flex-direction:column;align-items:center;gap:.6rem;padding:2.5rem 1.5rem;display:flex}.empty-state__icon{opacity:.32;font-size:2rem;line-height:1}.empty-state__title{color:var(--color-dark-blue);margin:0;font-size:.9rem;font-weight:700}.empty-state__body{color:var(--color-text-secondary);max-width:280px;margin:0;font-size:.8rem;line-height:1.55}.empty-state__cta{border-radius:var(--radius-full);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-dark-blue);cursor:pointer;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);align-items:center;gap:.35rem;margin-top:.25rem;padding:.45rem 1rem;font-size:.78rem;font-weight:700;display:inline-flex}.empty-state__cta:hover{border-color:var(--color-dark-blue);box-shadow:var(--shadow-sm)}.onboarding-nudge{border-radius:var(--radius-md);background:#d9770614;border:1px solid #d9770638;align-items:center;gap:.75rem;padding:.65rem 1rem;display:flex}.onboarding-nudge__text{color:#78350f;flex:1;font-size:.8rem;line-height:1.4}.onboarding-nudge__text strong{font-size:.8rem;font-weight:700;display:block}.onboarding-nudge__cta{border-radius:var(--radius-full);color:#92400e;cursor:pointer;white-space:nowrap;transition:background var(--transition-fast);background:#d9770624;border:1px solid #d9770647;flex-shrink:0;padding:.38rem .85rem;font-size:.75rem;font-weight:700}.onboarding-nudge__cta:hover{background:#d9770638}.error-boundary-shell{background:var(--color-background);justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex}.error-boundary-card{text-align:center;border-radius:var(--radius-xl);background:var(--color-surface);width:100%;max-width:400px;box-shadow:var(--shadow-lg);border:1px solid #ef444429;flex-direction:column;align-items:center;gap:.9rem;padding:2.5rem 2rem;display:flex}.error-boundary-card__icon{background:#ef444414;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;font-size:1.5rem;line-height:1;display:inline-flex}.error-boundary-card h2{color:var(--color-dark-blue);-webkit-text-fill-color:initial;background:0 0;margin:0;font-size:1.2rem;font-weight:800}.error-boundary-card p{color:var(--color-text-secondary);margin:0;font-size:.84rem;line-height:1.55}.error-boundary-card__actions{flex-wrap:wrap;justify-content:center;gap:.6rem;margin-top:.25rem;display:flex}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}
