@import "https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&family=Playfair+Display:wght@500;600;700&display=swap";:root{--color-navy-50:#f0f4f8;--color-navy-100:#d9e2ec;--color-navy-200:#bcccdc;--color-navy-300:#9fb3c8;--color-navy-400:#829ab1;--color-navy-500:#627d98;--color-navy-600:#486581;--color-navy-700:#334e68;--color-navy-800:#243b53;--color-navy-900:#102a43;--color-navy-950:#0a1929;--color-gold-50:#fefcf3;--color-gold-100:#fdf4dc;--color-gold-200:#f9e4b7;--color-gold-300:#f5d48a;--color-gold-400:#efc05c;--color-gold-500:#e6a700;--color-gold-600:#c78d00;--color-gold-700:#a07200;--color-gold-800:#7a5700;--color-gold-900:#543c00;--color-green-50:#f0faf4;--color-green-100:#d1f2df;--color-green-200:#a7e4c0;--color-green-300:#6dd49a;--color-green-400:#3ec97a;--color-green-500:#2e8b57;--color-green-600:#236b43;--color-green-700:#1a5033;--color-green-800:#113624;--color-green-900:#091d14;--color-red-50:#fef5f5;--color-red-100:#fde0e0;--color-red-200:#fbbaba;--color-red-300:#f68a8a;--color-red-400:#ef5a5a;--color-red-500:#d9534f;--color-red-600:#b93e3a;--color-red-700:#8e2f2c;--color-red-800:#63201e;--color-red-900:#3b1311;--color-amber-50:#fffbeb;--color-amber-100:#fef3c7;--color-amber-200:#fde68a;--color-amber-300:#fcd34d;--color-amber-400:#fbbf24;--color-amber-500:#e6a700;--color-amber-600:#d97706;--color-amber-700:#b45309;--color-amber-800:#92400e;--color-amber-900:#78350f;--color-blue-50:#eff6ff;--color-blue-100:#dbeafe;--color-blue-200:#bfdbfe;--color-blue-300:#93c5fd;--color-blue-400:#60a5fa;--color-blue-500:#3a7bd5;--color-blue-600:#2563eb;--color-blue-700:#1d4ed8;--color-blue-800:#1e40af;--color-blue-900:#1e3a8a;--color-gray-50:#f9fafb;--color-gray-100:#f3f4f6;--color-gray-200:#e5e7eb;--color-gray-300:#d1d5db;--color-gray-400:#9ca3af;--color-gray-500:#6b7280;--color-gray-600:#4b5563;--color-gray-700:#374151;--color-gray-800:#1f2937;--color-gray-900:#111827;--color-white:#fff;--color-primary:var(--color-navy-800);--color-primary-hover:var(--color-navy-900);--color-primary-light:var(--color-navy-50);--color-primary-muted:var(--color-navy-100);--color-accent:var(--color-gold-200);--color-accent-hover:var(--color-gold-300);--color-accent-light:var(--color-gold-50);--color-success:var(--color-green-500);--color-success-light:var(--color-green-50);--color-success-border:var(--color-green-200);--color-danger:var(--color-red-500);--color-danger-light:var(--color-red-50);--color-danger-border:var(--color-red-200);--color-warning:var(--color-amber-500);--color-warning-light:var(--color-amber-50);--color-warning-border:var(--color-amber-200);--color-info:var(--color-blue-500);--color-info-light:var(--color-blue-50);--color-info-border:var(--color-blue-200);--color-bg:var(--color-gold-50);--color-surface:var(--color-white);--color-surface-raised:var(--color-white);--color-surface-overlay:#fffffff5;--color-surface-sunken:var(--color-gold-100);--color-border:#0021471a;--color-border-strong:#0021472e;--color-border-subtle:#0021470f;--color-text:var(--color-navy-900);--color-text-secondary:var(--color-navy-600);--color-text-tertiary:var(--color-navy-400);--color-text-inverse:var(--color-white);--color-text-link:var(--color-navy-700);--color-text-link-hover:var(--color-navy-900);--font-sans:"DM Sans", system-ui, -apple-system, sans-serif;--font-display:"Playfair Display", Georgia, "Times New Roman", serif;--font-mono:"SF Mono", "Fira Code", "Fira Mono", monospace;--text-xs:.6875rem;--text-sm:.75rem;--text-base:.875rem;--text-md:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--text-5xl:3rem;--text-6xl:3.75rem;--weight-light:300;--weight-normal:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--leading-none:1;--leading-tight:1.2;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--tracking-tight:-.025em;--tracking-normal:0;--tracking-wide:.05em;--tracking-wider:.1em;--space-0:0;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-7:1.75rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--radius-none:0;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-2xl:20px;--radius-3xl:24px;--radius-full:9999px;--shadow-xs:0 1px 2px #0021470a;--shadow-sm:0 1px 3px #0021470f, 0 1px 2px #0021470a;--shadow-md:0 4px 6px -1px #0021470f, 0 2px 4px -2px #0021470a;--shadow-lg:0 10px 15px -3px #0021470f, 0 4px 6px -4px #0021470a;--shadow-xl:0 20px 25px -5px #00214714, 0 8px 10px -6px #0021470a;--shadow-2xl:0 25px 50px -12px #00214729;--shadow-inner:inset 0 2px 4px #0021470a;--shadow-focus:0 0 0 3px #3a7bd533;--z-base:0;--z-raised:10;--z-dropdown:100;--z-sticky:200;--z-overlay:300;--z-modal:400;--z-toast:500;--z-tooltip:600;--ease-default:cubic-bezier(.4, 0, .2, 1);--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-bounce:cubic-bezier(.34, 1.56, .64, 1);--ease-spring:cubic-bezier(.16, 1, .3, 1);--duration-fast:.12s;--duration-normal:.2s;--duration-slow:.3s;--duration-slower:.5s;--sidebar-width:272px;--sidebar-width-collapsed:72px;--header-height:64px;--content-max-width:1400px;--page-padding:var(--space-6)}[data-theme=dark]{--color-bg:var(--color-navy-950);--color-surface:var(--color-navy-900);--color-surface-raised:var(--color-navy-800);--color-surface-overlay:#102a43f5;--color-surface-sunken:var(--color-navy-950);--color-border:#ffffff1a;--color-border-strong:#ffffff2e;--color-border-subtle:#ffffff0f;--color-text:var(--color-gray-100);--color-text-secondary:var(--color-gray-300);--color-text-tertiary:var(--color-gray-500)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text);background:var(--color-bg);min-width:320px;overflow:hidden auto}img,svg{max-width:100%;display:block}img{height:auto}a{color:var(--color-text-link);transition:color var(--duration-fast) var(--ease-default);text-decoration:none}a:hover{color:var(--color-text-link-hover)}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:none;padding:0}ul,ol{list-style:none}:focus-visible{outline:2px solid var(--color-info);outline-offset:2px;border-radius:var(--radius-sm)}::selection{background:var(--color-navy-200);color:var(--color-navy-900)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-navy-200);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-navy-300)}*{scrollbar-width:thin;scrollbar-color:var(--color-navy-200) transparent}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes slide-down{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-fade-in{animation:fade-in var(--duration-normal) var(--ease-out) both}.animate-slide-up{animation:slide-up var(--duration-slow) var(--ease-spring) both}.animate-slide-down{animation:slide-down var(--duration-slow) var(--ease-spring) both}.animate-scale-in{animation:scale-in var(--duration-normal) var(--ease-out) both}.animate-spin{animation:1s linear infinite spin}.stagger-children>:first-child{animation-delay:0s}.stagger-children>:nth-child(2){animation-delay:40ms}.stagger-children>:nth-child(3){animation-delay:80ms}.stagger-children>:nth-child(4){animation-delay:.12s}.stagger-children>:nth-child(5){animation-delay:.16s}.stagger-children>:nth-child(6){animation-delay:.2s}.stagger-children>:nth-child(7){animation-delay:.24s}.stagger-children>:nth-child(8){animation-delay:.28s}.stagger-children>:nth-child(9){animation-delay:.32s}.stagger-children>:nth-child(10){animation-delay:.36s}.stagger-children>:nth-child(11){animation-delay:.4s}.stagger-children>:nth-child(12){animation-delay:.44s}.heading-1{font-family:var(--font-display);font-size:var(--text-4xl);font-weight:var(--weight-bold);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);color:var(--color-text)}.heading-2{font-family:var(--font-display);font-size:var(--text-3xl);font-weight:var(--weight-semibold);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);color:var(--color-text)}.heading-3{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--weight-semibold);line-height:var(--leading-tight);color:var(--color-text)}.heading-4{font-family:var(--font-sans);font-size:var(--text-xl);font-weight:var(--weight-semibold);line-height:var(--leading-snug);color:var(--color-text)}.heading-5{font-family:var(--font-sans);font-size:var(--text-lg);font-weight:var(--weight-semibold);line-height:var(--leading-snug);color:var(--color-text)}.body-lg{font-size:var(--text-md);line-height:var(--leading-normal);color:var(--color-text)}.body{font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text)}.body-sm{font-size:var(--text-sm);line-height:var(--leading-normal);color:var(--color-text-secondary)}.caption{font-size:var(--text-xs);line-height:var(--leading-normal);color:var(--color-text-tertiary);letter-spacing:var(--tracking-wide)}.label{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-text);letter-spacing:var(--tracking-wide)}.eyebrow{font-size:var(--text-xs);font-weight:var(--weight-bold);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--color-text-tertiary)}.btn{justify-content:center;align-items:center;gap:var(--space-2);font-weight:var(--weight-semibold);font-size:var(--text-base);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-5);transition:all var(--duration-normal) var(--ease-default);white-space:nowrap;-webkit-user-select:none;user-select:none;line-height:1;display:inline-flex;position:relative;overflow:hidden}.btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.btn svg{flex-shrink:0;width:16px;height:16px}.btn-primary{background:var(--color-primary);color:var(--color-text-inverse);box-shadow:var(--shadow-sm), 0 2px 0 #0000001f}.btn-primary:hover{background:var(--color-primary-hover);box-shadow:var(--shadow-md), 0 2px 0 #0000001f;transform:translateY(-1px)}.btn-primary:active{box-shadow:var(--shadow-xs);transform:translateY(0)}.btn-secondary{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border-strong);box-shadow:var(--shadow-xs)}.btn-secondary:hover{background:var(--color-gray-50);border-color:var(--color-navy-300);box-shadow:var(--shadow-sm)}.btn-ghost{color:var(--color-text-secondary);background:0 0}.btn-ghost:hover{background:var(--color-gray-100);color:var(--color-text)}.btn-danger{background:var(--color-danger);color:var(--color-text-inverse);box-shadow:var(--shadow-sm)}.btn-danger:hover{background:var(--color-red-600);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-sm{font-size:var(--text-sm);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md)}.btn-lg{font-size:var(--text-md);padding:var(--space-4) var(--space-8);border-radius:var(--radius-xl)}.btn-icon{padding:var(--space-3);border-radius:var(--radius-lg)}.btn-icon.btn-sm{padding:var(--space-2)}.field{gap:var(--space-2);flex-direction:column;display:flex}.field-label{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-text)}.field-hint{font-size:var(--text-xs);color:var(--color-text-tertiary)}.field-error{font-size:var(--text-xs);color:var(--color-danger);font-weight:var(--weight-medium)}.input{width:100%;min-height:44px;padding:var(--space-3) var(--space-4);font-size:var(--text-base);background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);transition:all var(--duration-fast) var(--ease-default);color:var(--color-text)}.input::placeholder{color:var(--color-text-tertiary)}.input:hover{border-color:var(--color-navy-300)}.input:focus{border-color:var(--color-info);box-shadow:var(--shadow-focus);outline:none}.input:disabled{background:var(--color-gray-100);color:var(--color-text-tertiary);cursor:not-allowed}.input-error{border-color:var(--color-danger)}.input-error:focus{box-shadow:0 0 0 3px #d9534f26}.select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23627d98' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-3) center;padding-right:var(--space-10)}.textarea{resize:vertical;min-height:100px}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden}.card-interactive{cursor:pointer;transition:all var(--duration-normal) var(--ease-default)}.card-interactive:hover{box-shadow:var(--shadow-lg);border-color:var(--color-navy-200);transform:translateY(-2px)}.card-header{padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--color-border-subtle);justify-content:space-between;align-items:center;gap:var(--space-4);display:flex}.card-body{padding:var(--space-6)}.card-footer{padding:var(--space-4) var(--space-6);border-top:1px solid var(--color-border-subtle);background:var(--color-gray-50)}.badge{align-items:center;gap:var(--space-1);font-size:var(--text-xs);font-weight:var(--weight-bold);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);white-space:nowrap;letter-spacing:var(--tracking-wide);display:inline-flex}.badge-default{background:var(--color-gray-100);color:var(--color-text-secondary)}.badge-primary{background:var(--color-primary-light);color:var(--color-primary)}.badge-success{background:var(--color-success-light);color:var(--color-success)}.badge-warning{background:var(--color-warning-light);color:var(--color-amber-800)}.badge-danger{background:var(--color-danger-light);color:var(--color-danger)}.badge-info{background:var(--color-info-light);color:var(--color-info)}.table-container{border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);width:100%;overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:var(--text-base)}.table th{padding:var(--space-3) var(--space-4);text-align:left;font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-text-secondary);background:var(--color-gray-50);border-bottom:1px solid var(--color-border);white-space:nowrap;-webkit-user-select:none;user-select:none}.table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border-subtle);color:var(--color-text);vertical-align:middle}.table tbody tr{transition:background var(--duration-fast) var(--ease-default)}.table tbody tr:hover{background:var(--color-gray-50)}.table tbody tr:last-child td{border-bottom:none}.table-row-selected{background:var(--color-primary-light)!important}.tabs{gap:var(--space-1);border-bottom:1px solid var(--color-border);padding:0 var(--space-6);display:flex;overflow-x:auto}.tab{padding:var(--space-4) var(--space-5);font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-text-secondary);transition:all var(--duration-fast) var(--ease-default);white-space:nowrap;cursor:pointer;border-bottom:2px solid #0000}.tab:hover{color:var(--color-text)}.tab-active{color:var(--color-primary);border-bottom-color:var(--color-primary);font-weight:var(--weight-semibold)}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:var(--z-modal);padding:var(--space-6);animation:fade-in var(--duration-normal) var(--ease-out);background:#0a192980;place-items:center;display:grid;position:fixed;inset:0}.modal{background:var(--color-surface);border-radius:var(--radius-2xl);width:min(600px,100%);max-height:90vh;box-shadow:var(--shadow-2xl);animation:scale-in var(--duration-slow) var(--ease-spring);flex-direction:column;display:flex;overflow:hidden}.modal-header{padding:var(--space-6);border-bottom:1px solid var(--color-border-subtle);justify-content:space-between;align-items:center;display:flex}.modal-body{padding:var(--space-6);flex:1;overflow-y:auto}.modal-footer{padding:var(--space-4) var(--space-6);border-top:1px solid var(--color-border-subtle);justify-content:flex-end;gap:var(--space-3);background:var(--color-gray-50);display:flex}.toast-container{top:var(--space-6);right:var(--space-6);z-index:var(--z-toast);gap:var(--space-3);pointer-events:none;flex-direction:column;display:flex;position:fixed}.toast{pointer-events:all;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-5);box-shadow:var(--shadow-xl);align-items:flex-start;gap:var(--space-3);min-width:300px;max-width:450px;animation:slide-down var(--duration-slow) var(--ease-spring);display:flex}.toast-danger{border-left:3px solid var(--color-danger)}.skeleton{background:linear-gradient(90deg, var(--color-gray-100) 25%, var(--color-gray-200) 50%, var(--color-gray-100) 75%);border-radius:var(--radius-md);background-size:200% 100%;animation:1.5s infinite shimmer}.skeleton-text{height:14px;margin-bottom:var(--space-2)}.skeleton-heading{width:60%;height:24px;margin-bottom:var(--space-3)}.skeleton-avatar{border-radius:var(--radius-full);width:40px;height:40px}.skeleton-card{border-radius:var(--radius-xl);height:120px}.empty-state{text-align:center;padding:var(--space-16) var(--space-8);color:var(--color-text-secondary);flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-state-icon{background:var(--color-gray-100);border-radius:var(--radius-full);width:64px;height:64px;margin-bottom:var(--space-5);color:var(--color-text-tertiary);place-items:center;display:grid}.empty-state-title{font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--color-text);margin-bottom:var(--space-2)}.empty-state-desc{font-size:var(--text-base);color:var(--color-text-tertiary);max-width:400px;margin-bottom:var(--space-6)}.spinner{border:2px solid var(--color-gray-200);border-top-color:var(--color-primary);border-radius:var(--radius-full);width:20px;height:20px;animation:.6s linear infinite spin}.spinner-lg{border-width:3px;width:32px;height:32px}.divider{border:none;border-top:1px solid var(--color-border);margin:var(--space-4) 0}.avatar{border-radius:var(--radius-full);background:var(--color-primary-light);width:36px;height:36px;color:var(--color-primary);font-weight:var(--weight-bold);font-size:var(--text-sm);flex-shrink:0;place-items:center;display:grid;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%}.avatar-sm{width:28px;height:28px;font-size:var(--text-xs)}.avatar-lg{width:48px;height:48px;font-size:var(--text-md)}.avatar-xl{width:64px;height:64px;font-size:var(--text-xl)}.chip{align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);background:var(--color-gray-100);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--color-text-secondary);display:inline-flex}.dropdown{margin-top:var(--space-2);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);min-width:200px;z-index:var(--z-dropdown);padding:var(--space-2);animation:slide-down var(--duration-normal) var(--ease-spring);position:absolute;top:100%;right:0}.dropdown-item{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-base);color:var(--color-text);transition:background var(--duration-fast) var(--ease-default);text-align:left;width:100%;display:flex}.dropdown-item:hover{background:var(--color-gray-100)}.dropdown-item svg{width:16px;height:16px;color:var(--color-text-tertiary)}.dropdown-divider{background:var(--color-border);height:1px;margin:var(--space-2) 0}.progress{background:var(--color-gray-200);border-radius:var(--radius-full);height:6px;overflow:hidden}.progress-bar{background:var(--color-primary);border-radius:var(--radius-full);height:100%;transition:width var(--duration-slow) var(--ease-default)}.progress-success .progress-bar{background:var(--color-success)}.progress-warning .progress-bar{background:var(--color-warning)}.progress-danger .progress-bar{background:var(--color-danger)}.alert{align-items:flex-start;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg);font-size:var(--text-base);border:1px solid;display:flex}.alert-success{background:var(--color-success-light);border-color:var(--color-success-border);color:var(--color-green-700)}.alert-danger{background:var(--color-danger-light);border-color:var(--color-danger-border);color:var(--color-red-700)}.alert-warning{background:var(--color-warning-light);border-color:var(--color-warning-border);color:var(--color-amber-800)}.alert-info{background:var(--color-info-light);border-color:var(--color-info-border);color:var(--color-blue-800)}.stat-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-5) var(--space-6);gap:var(--space-2);transition:all var(--duration-normal) var(--ease-default);flex-direction:column;display:flex}.stat-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-navy-200)}.stat-label{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text-secondary)}.stat-value{font-size:var(--text-3xl);font-weight:var(--weight-bold);color:var(--color-text);line-height:var(--leading-none)}.stat-change{font-size:var(--text-sm);font-weight:var(--weight-medium);align-items:center;gap:var(--space-1);display:flex}.stat-change-positive{color:var(--color-success)}.stat-change-negative{color:var(--color-danger)}.search-box{align-items:center;display:flex;position:relative}.search-box svg{left:var(--space-4);width:16px;height:16px;color:var(--color-text-tertiary);pointer-events:none;position:absolute}.search-box input{padding-left:var(--space-10)}.page{padding:var(--space-6);max-width:var(--content-max-width);animation:fade-in var(--duration-slow) var(--ease-out);margin:0 auto}.page-header{justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-6);flex-wrap:wrap;display:flex}.page-title{font-family:var(--font-display);font-size:var(--text-3xl);font-weight:var(--weight-bold);color:var(--color-text)}.page-subtitle{font-size:var(--text-base);color:var(--color-text-secondary);margin-top:var(--space-1)}.page-actions{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.grid{display:grid}.grid-1{grid-template-columns:repeat(1,1fr)}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.flex{display:flex}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.gap-8{gap:var(--space-8)}@media (width<=1280px){.grid-4{grid-template-columns:repeat(3,1fr)}}@media (width<=1024px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.page{padding:var(--space-4)}.page-header{flex-direction:column;align-items:flex-start}.page-actions{width:100%}.page-actions .btn{flex:1}}@media (width<=480px){.page{padding:var(--space-3)}.page-title,.stat-value{font-size:var(--text-2xl)}}.app-shell{background:var(--color-bg);height:100vh;display:flex;overflow:hidden}.sidebar{width:var(--sidebar-width);background:var(--color-navy-900);height:100vh;color:var(--color-white);z-index:var(--z-sticky);transition:transform var(--duration-slow) var(--ease-spring);flex-direction:column;flex-shrink:0;display:flex;overflow:hidden}.sidebar-header{padding:var(--space-5) var(--space-5);align-items:center;gap:var(--space-3);border-bottom:1px solid #ffffff14;flex-shrink:0;display:flex}.sidebar-brand{align-items:center;gap:var(--space-3);min-width:0;display:flex}.sidebar-brand-logo{border-radius:var(--radius-lg);background:#ffffff1a;flex-shrink:0;place-items:center;width:36px;height:36px;display:grid;overflow:hidden}.sidebar-brand-logo img{object-fit:cover;width:100%;height:100%}.sidebar-brand-text{min-width:0}.sidebar-brand-name{font-family:var(--font-display);font-size:var(--text-md);font-weight:var(--weight-bold);color:var(--color-white);white-space:nowrap;text-overflow:ellipsis;line-height:1.2;overflow:hidden}.sidebar-brand-role{font-size:var(--text-xs);color:#ffffff80;font-weight:var(--weight-medium);letter-spacing:var(--tracking-wide);text-transform:uppercase}.sidebar-nav{padding:var(--space-3) var(--space-3);flex:1;overflow-y:auto}.sidebar-section{margin-bottom:var(--space-4)}.sidebar-section-label{font-size:10px;font-weight:var(--weight-bold);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:#ffffff59;padding:var(--space-2) var(--space-3)}.sidebar-link{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-3);border-radius:var(--radius-lg);font-size:var(--text-base);font-weight:var(--weight-medium);color:#ffffffa6;transition:all var(--duration-fast) var(--ease-default);text-align:left;width:100%;display:flex;position:relative}.sidebar-link:hover{color:var(--color-white);background:#ffffff14}.sidebar-link.active{color:var(--color-white);font-weight:var(--weight-semibold);background:#ffffff1f}.sidebar-link.active:before{content:"";background:var(--color-gold-300);border-radius:0 var(--radius-sm) var(--radius-sm) 0;width:3px;height:20px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.sidebar-link svg{opacity:.7;flex-shrink:0;width:18px;height:18px}.sidebar-link.active svg{opacity:1}.sidebar-collapsed{width:var(--sidebar-width-collapsed)}.sidebar-collapsed .sidebar-header{padding:var(--space-4) var(--space-3);justify-content:center}.sidebar-collapsed .sidebar-brand{justify-content:center}.sidebar-collapsed .sidebar-brand-text,.sidebar-collapsed .sidebar-collapse-btn{display:none}.sidebar-collapsed .sidebar-nav{padding:var(--space-3) var(--space-2)}.sidebar-collapsed .sidebar-section{margin-bottom:var(--space-2)}.sidebar-collapsed .sidebar-section-label{display:none}.sidebar-collapsed .sidebar-link{padding:var(--space-3);justify-content:center;gap:0}.sidebar-collapsed .sidebar-link span{display:none}.sidebar-collapsed .sidebar-link.active:before{height:16px;left:0}.sidebar-collapsed .sidebar-footer{padding:var(--space-3) var(--space-2)}.sidebar-collapsed .sidebar-school-select{display:none}.sidebar-collapsed .sidebar-user{padding:var(--space-3);justify-content:center}.sidebar-collapsed .sidebar-user-info,.sidebar-collapsed .sidebar-user svg:last-child{display:none}.sidebar-link-badge{background:var(--color-danger);color:var(--color-white);font-size:10px;font-weight:var(--weight-bold);border-radius:var(--radius-full);text-align:center;min-width:18px;margin-left:auto;padding:2px 6px}.sidebar-footer{padding:var(--space-4) var(--space-5);border-top:1px solid #ffffff14;flex-shrink:0}.sidebar-user{align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-lg);transition:background var(--duration-fast) var(--ease-default);cursor:pointer;display:flex}.sidebar-user:hover{background:#ffffff14}.sidebar-user-avatar{border-radius:var(--radius-full);background:var(--color-gold-300);width:32px;height:32px;color:var(--color-navy-900);font-weight:var(--weight-bold);font-size:var(--text-sm);flex-shrink:0;place-items:center;display:grid}.sidebar-user-info{flex:1;min-width:0}.sidebar-user-name{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-white);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sidebar-user-email{color:#ffffff73;white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.workspace{background:var(--color-bg);flex-direction:column;flex:1;min-width:0;height:100vh;display:flex;overflow:hidden}.workspace-header{height:var(--header-height);min-height:var(--header-height);align-items:center;gap:var(--space-4);padding:0 var(--space-6);background:var(--color-surface);border-bottom:1px solid var(--color-border);z-index:var(--z-raised);flex-shrink:0;display:flex}.workspace-header-left{align-items:center;gap:var(--space-3);min-width:0;display:flex}.workspace-header-center{flex:1;justify-content:center;min-width:0;display:flex}.workspace-header-right{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.mobile-menu-btn{padding:var(--space-2);border-radius:var(--radius-md);color:var(--color-text-secondary);display:none}.mobile-menu-btn:hover{background:var(--color-gray-100);color:var(--color-text)}.school-context{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-gray-50);border:1px solid var(--color-border);border-radius:var(--radius-lg);font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-text);cursor:pointer;min-width:0;max-width:280px;transition:all var(--duration-fast) var(--ease-default);display:flex}.school-context:hover{border-color:var(--color-navy-300);background:var(--color-surface)}.school-context-name{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.header-search{width:100%;max-width:320px}.header-search .search-box input{min-height:38px;font-size:var(--text-sm);background:var(--color-gray-50);border-color:#0000}.header-search .search-box input:focus{background:var(--color-surface);border-color:var(--color-info)}.header-actions{align-items:center;gap:var(--space-1);display:flex}.header-icon-btn{border-radius:var(--radius-lg);width:36px;height:36px;color:var(--color-text-secondary);transition:all var(--duration-fast) var(--ease-default);place-items:center;display:grid;position:relative}.header-icon-btn:hover{background:var(--color-gray-100);color:var(--color-text)}.header-icon-btn svg{width:18px;height:18px}.header-icon-btn .notification-dot{background:var(--color-danger);border-radius:var(--radius-full);border:2px solid var(--color-surface);width:8px;height:8px;position:absolute;top:6px;right:6px}.workspace-content{flex:1;overflow:hidden auto}.sidebar-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:calc(var(--z-sticky) - 1);background:#0a192980;display:none;position:fixed;inset:0}@media (width<=1024px){.sidebar{z-index:var(--z-overlay);box-shadow:none;position:fixed;top:0;left:0;transform:translate(-100%)}.sidebar.open{box-shadow:var(--shadow-2xl);transform:none}.sidebar-backdrop.visible{display:block}.workspace{margin-left:0}.mobile-menu-btn{display:grid}.workspace-header{padding:0 var(--space-4)}}@media (width<=768px){.workspace-header{height:auto;min-height:auto;padding:var(--space-3) var(--space-4);gap:var(--space-3);flex-wrap:wrap}.workspace-header-center{display:none}.workspace-header-right{justify-content:space-between;width:100%}.school-context{flex:1;max-width:none}.header-icon-btn:nth-child(n+3){display:none}}@media (width<=480px){.workspace-header{padding:var(--space-2) var(--space-3)}.school-context{font-size:var(--text-xs);padding:var(--space-1) var(--space-2)}}@media (width<=1023px){.sidebar-collapse-btn{display:none}}.auth-layout{background:var(--color-navy-900);grid-template-columns:1fr 1fr;min-height:100vh;display:grid;position:relative;overflow:hidden}.auth-layout:before{content:"";pointer-events:none;background-image:linear-gradient(#ffffff08 1px,#0000 1px),linear-gradient(90deg,#ffffff08 1px,#0000 1px);background-size:60px 60px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(135deg,#000 0%,#0000 50%);mask-image:linear-gradient(135deg,#000 0%,#0000 50%)}.auth-hero{padding:var(--space-10);z-index:1;justify-content:flex-end;align-items:center;display:flex;position:relative}.auth-hero-card{width:min(540px,100%);padding:var(--space-10);border-radius:var(--radius-3xl);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(145deg,#ffffff14,#ffffff05);border:1px solid #ffffff1f}.auth-hero .brand{margin-bottom:var(--space-8)}.auth-hero h1{font-family:var(--font-display);font-size:clamp(2.5rem,5vw,4rem);font-weight:var(--weight-bold);color:var(--color-white);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);margin-bottom:var(--space-4)}.auth-hero p{font-size:var(--text-md);color:#fff9;line-height:var(--leading-relaxed);margin-bottom:var(--space-8);max-width:480px}.auth-hero-features{gap:var(--space-4);flex-direction:column;display:flex}.auth-feature{align-items:center;gap:var(--space-3);color:#ffffff80;font-size:var(--text-sm);display:flex}.auth-feature svg{width:16px;height:16px;color:var(--color-gold-300);flex-shrink:0}.auth-panel{padding:var(--space-10);z-index:1;background:var(--color-surface);justify-content:center;align-items:center;display:flex;position:relative}.auth-panel-inner{width:min(440px,100%);animation:slide-up var(--duration-slower) var(--ease-spring)}.auth-form-header{margin-bottom:var(--space-8)}.auth-form-header h2{font-family:var(--font-display);font-size:var(--text-3xl);font-weight:var(--weight-bold);color:var(--color-text);margin-bottom:var(--space-2)}.auth-form-header p{font-size:var(--text-base);color:var(--color-text-secondary)}.auth-form{gap:var(--space-5);flex-direction:column;display:flex}.auth-form .field-label{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-text)}.auth-form .input{border-radius:var(--radius-lg);min-height:48px}.auth-form .btn-primary{width:100%;min-height:48px;margin-top:var(--space-2)}.auth-form-footer{margin-top:var(--space-4);font-size:var(--text-sm);justify-content:space-between;align-items:center;display:flex}.auth-form-footer a{font-weight:var(--weight-semibold);color:var(--color-primary)}.auth-form-footer a:hover{color:var(--color-primary-hover)}.password-field{position:relative}.password-toggle{right:var(--space-3);padding:var(--space-2);color:var(--color-text-tertiary);border-radius:var(--radius-md);position:absolute;top:50%;transform:translateY(-50%)}.password-toggle:hover{color:var(--color-text-secondary);background:var(--color-gray-100)}.auth-remember{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-text-secondary);display:flex}.auth-remember input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-primary)}.campus-grid{gap:var(--space-4);margin-top:var(--space-6);grid-template-columns:repeat(auto-fill,minmax(260px,1fr));display:grid}.campus-card{background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-6);align-items:center;gap:var(--space-4);cursor:pointer;transition:all var(--duration-normal) var(--ease-default);display:flex}.campus-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.campus-card-icon{background:var(--color-primary-light);border-radius:var(--radius-lg);flex-shrink:0;place-items:center;width:48px;height:48px;display:grid}.campus-card-icon img{border-radius:var(--radius-md);object-fit:cover;width:32px;height:32px}.campus-card-info{flex:1;min-width:0}.campus-card-name{font-weight:var(--weight-semibold);color:var(--color-text);margin-bottom:var(--space-1)}.campus-card-city{font-size:var(--text-sm);color:var(--color-text-tertiary);align-items:center;gap:var(--space-1);display:flex}.campus-card-arrow{color:var(--color-text-tertiary);transition:transform var(--duration-fast) var(--ease-default);flex-shrink:0}.campus-card:hover .campus-card-arrow{color:var(--color-primary);transform:translate(3px)}@media (width<=1024px){.auth-layout{grid-template-columns:1fr}.auth-hero{display:none}.auth-panel{min-height:100vh}}@media (width<=768px){.auth-panel,.auth-hero-card{padding:var(--space-6)}.campus-grid{grid-template-columns:1fr}}@media (width<=480px){.auth-panel{padding:var(--space-4)}.auth-panel-inner{width:100%}.auth-form-header h2{font-size:var(--text-2xl)}}.dashboard-grid{gap:var(--space-6);display:grid}.dashboard-grid-default{grid-template-columns:1fr}.dashboard-grid-2col{grid-template-columns:2fr 1fr}.metrics-row{gap:var(--space-4);grid-template-columns:repeat(4,1fr);display:grid}@media (width<=1280px){.metrics-row{grid-template-columns:repeat(3,1fr)}}@media (width<=1024px){.metrics-row{grid-template-columns:repeat(2,1fr)}.dashboard-grid-2col{grid-template-columns:1fr}}@media (width<=640px){.metrics-row{grid-template-columns:1fr}}.dash-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);transition:all var(--duration-normal) var(--ease-default);overflow:hidden}.dash-card:hover{box-shadow:var(--shadow-md)}.dash-card-header{padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--color-border-subtle);justify-content:space-between;align-items:center;display:flex}.dash-card-title{font-size:var(--text-md);font-weight:var(--weight-semibold);color:var(--color-text)}.dash-card-body{padding:var(--space-6)}.activity-feed{flex-direction:column;display:flex}.activity-item{gap:var(--space-3);padding:var(--space-4) 0;border-bottom:1px solid var(--color-border-subtle);display:flex}.activity-item:last-child{border-bottom:none}.activity-icon{border-radius:var(--radius-full);width:32px;height:32px;font-size:var(--text-sm);flex-shrink:0;place-items:center;display:grid}.activity-icon-success{background:var(--color-success-light);color:var(--color-success)}.activity-icon-danger{background:var(--color-danger-light);color:var(--color-danger)}.activity-icon-warning{background:var(--color-warning-light);color:var(--color-warning)}.activity-icon-info{background:var(--color-info-light);color:var(--color-info)}.activity-content{flex:1;min-width:0}.activity-text{font-size:var(--text-base);color:var(--color-text);line-height:var(--leading-snug)}.activity-text strong{font-weight:var(--weight-semibold)}.activity-time{font-size:var(--text-xs);color:var(--color-text-tertiary);margin-top:var(--space-1)}.quick-actions{gap:var(--space-3);grid-template-columns:repeat(2,1fr);display:grid}.quick-action{align-items:center;gap:var(--space-3);padding:var(--space-4);background:var(--color-gray-50);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--duration-fast) var(--ease-default);display:flex}.quick-action:hover{background:var(--color-surface);border-color:var(--color-border-strong);box-shadow:var(--shadow-sm)}.quick-action-icon{border-radius:var(--radius-md);flex-shrink:0;place-items:center;width:36px;height:36px;display:grid}.quick-action-text{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-text)}.campus-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.campus-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-5);cursor:pointer;transition:all var(--duration-normal) var(--ease-default)}.campus-card:hover{box-shadow:var(--shadow-lg);border-color:var(--color-navy-200);transform:translateY(-2px)}.campus-card-header{align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);display:flex}.campus-card-logo{border-radius:var(--radius-lg);background:var(--color-gray-100);place-items:center;width:40px;height:40px;display:grid;overflow:hidden}.campus-card-logo img{object-fit:cover;width:100%;height:100%}.campus-card-name{font-weight:var(--weight-semibold);color:var(--color-text);font-size:var(--text-md)}.campus-card-city{font-size:var(--text-sm);color:var(--color-text-tertiary)}.campus-card-metrics{gap:var(--space-3);grid-template-columns:repeat(3,1fr);display:grid}.campus-metric{text-align:center;padding:var(--space-3);background:var(--color-gray-50);border-radius:var(--radius-md)}.campus-metric-value{font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--color-text);line-height:1}.campus-metric-label{color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:var(--tracking-wide);margin-top:var(--space-1);font-size:10px}@media (width<=768px){.quick-actions,.campus-grid{grid-template-columns:1fr}.campus-card-metrics{grid-template-columns:repeat(3,1fr)}}.form-grid{gap:var(--space-5);grid-template-columns:repeat(2,1fr);display:grid}.form-grid .form-full{grid-column:1/-1}.form-section{margin-bottom:var(--space-8)}.form-section-header{margin-bottom:var(--space-5);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border-subtle)}.form-section-title{font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--color-text);margin-bottom:var(--space-1)}.form-section-desc{font-size:var(--text-sm);color:var(--color-text-tertiary)}.form-actions{justify-content:flex-end;gap:var(--space-3);padding-top:var(--space-6);border-top:1px solid var(--color-border-subtle);margin-top:var(--space-6);display:flex}.wizard{flex-direction:column;min-height:0;display:flex}.wizard-nav{gap:var(--space-1);padding:var(--space-4) var(--space-6);background:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex;overflow-x:auto}.wizard-step{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text-tertiary);white-space:nowrap;cursor:pointer;transition:all var(--duration-fast) var(--ease-default);display:flex}.wizard-step:hover{color:var(--color-text-secondary);background:var(--color-gray-50)}.wizard-step-active{background:var(--color-primary-light);color:var(--color-primary);font-weight:var(--weight-semibold)}.wizard-step-complete{color:var(--color-success)}.wizard-step-number{border-radius:var(--radius-full);width:24px;height:24px;font-size:var(--text-xs);font-weight:var(--weight-bold);background:var(--color-gray-200);color:var(--color-text-secondary);place-items:center;display:grid}.wizard-step-active .wizard-step-number{background:var(--color-primary);color:var(--color-white)}.wizard-step-complete .wizard-step-number{background:var(--color-success);color:var(--color-white)}.wizard-connector{background:var(--color-gray-200);flex-shrink:0;width:24px;height:2px}.wizard-connector-complete{background:var(--color-success)}.wizard-body{padding:var(--space-6);flex:1;overflow-y:auto}.wizard-footer{padding:var(--space-4) var(--space-6);border-top:1px solid var(--color-border);background:var(--color-surface);justify-content:space-between;display:flex}.import-layout{gap:var(--space-6);grid-template-columns:1fr 1fr;display:grid}.import-dropzone{border:2px dashed var(--color-border-strong);border-radius:var(--radius-xl);padding:var(--space-10);text-align:center;cursor:pointer;transition:all var(--duration-normal) var(--ease-default);background:var(--color-surface)}.import-dropzone:hover,.import-dropzone.dragover{border-color:var(--color-primary);background:var(--color-primary-light)}.import-dropzone-icon{background:var(--color-gray-100);border-radius:var(--radius-full);width:64px;height:64px;margin:0 auto var(--space-4);color:var(--color-text-tertiary);place-items:center;display:grid}.import-dropzone-text{font-size:var(--text-md);font-weight:var(--weight-semibold);color:var(--color-text);margin-bottom:var(--space-2)}.import-dropzone-hint{font-size:var(--text-sm);color:var(--color-text-tertiary)}.validation-list{gap:var(--space-3);flex-direction:column;display:flex}.validation-item{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);font-size:var(--text-base);display:flex}.validation-item-valid{background:var(--color-success-light);color:var(--color-green-700)}.validation-item-error{background:var(--color-danger-light);color:var(--color-red-700)}.validation-item-warning{background:var(--color-warning-light);color:var(--color-amber-800)}@media (width<=768px){.form-grid{grid-template-columns:1fr}.form-grid .form-full{grid-column:1}.wizard-nav{padding:var(--space-3) var(--space-4)}.wizard-body{padding:var(--space-4)}.wizard-footer{padding:var(--space-3) var(--space-4)}.import-layout{grid-template-columns:1fr}.form-actions{flex-direction:column}.form-actions .btn{width:100%}.payment-layout,.dashboard-2col,.dashboard-3col{grid-template-columns:1fr!important}.metrics-row-4{grid-template-columns:repeat(2,1fr)!important}}@media (width<=480px){.metrics-row-4{grid-template-columns:1fr!important}}:root{--navy:var(--color-navy-800);--ink:var(--color-text);--forest:var(--color-primary);--forest-2:var(--color-primary);--paper:var(--color-bg);--cream:var(--color-bg);--white:var(--color-white);--gold:var(--color-accent);--success:var(--color-success);--warning:var(--color-warning);--danger:var(--color-danger);--info:var(--color-info);--coral:var(--color-danger);--sage:var(--color-success);--muted:var(--color-text-secondary);--line:var(--color-border);--shadow:var(--shadow-lg);font-family:var(--font-sans);color:var(--color-text);background:var(--color-bg);font-synthesis:none}*{box-sizing:border-box}body{min-width:320px;margin:0;overflow:hidden auto}button,input,select{font:inherit}button{cursor:pointer}h1,h2,h3,p{margin-top:0}.brand{align-items:center;gap:11px;display:flex}.brand-mark{place-items:center;width:38px;height:38px;display:grid;position:relative}.brand-mark i{background:var(--forest);transform-origin:50% 100%;border-radius:100% 0;width:12px;height:25px;position:absolute}.brand-mark i:first-child{transform:translate(-7px,-2px)rotate(-45deg)}.brand-mark i:nth-child(2){transform:translate(7px,-2px)rotate(45deg)}.brand-mark i:nth-child(3){transform:translateY(-8px)rotate(0)}.brand strong{font-family:Playfair Display,serif;font-size:21px;line-height:1;display:block}.brand small{letter-spacing:.25em;font-size:8px;font-weight:700}.brand.light{color:#fff}.brand.light .brand-mark i{background:#f5c75f}.landing{background:var(--paper);min-height:100vh;position:relative;overflow:hidden}.landing:before{content:"";background-image:radial-gradient(#173f3517 .7px,#0000 .7px);background-size:18px 18px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#000,#0000 60%);mask-image:linear-gradient(90deg,#000,#0000 60%)}.landing-nav,.landing-foot{z-index:2;justify-content:space-between;align-items:center;padding:28px clamp(25px,6vw,90px);display:flex;position:relative}.text-button{color:inherit;background:0 0;border:0;align-items:center;gap:7px;font-weight:700;display:inline-flex}.hero{z-index:1;grid-template-columns:1.08fr .92fr;align-items:center;gap:5vw;min-height:72vh;padding:5vh clamp(25px,7.5vw,120px);display:grid;position:relative}.hero-copy{animation:.7s both rise}.eyebrow,.step-label{color:var(--forest-2);letter-spacing:.16em;align-items:center;gap:7px;font-size:11px;font-weight:800;display:inline-flex}.hero h1,.login-intro h1,.page-title h1,.module-placeholder h1{letter-spacing:-.045em;margin:26px 0;font-family:Playfair Display,serif;font-size:clamp(48px,6.2vw,88px);line-height:.98}.hero h1 em{color:var(--coral);font-weight:600}.hero-copy>p{color:var(--muted);max-width:590px;font-size:18px;line-height:1.7}.hero-actions{align-items:center;gap:26px;margin-top:36px;display:flex}.primary-button,.secondary-button{border:0;border-radius:5px;justify-content:center;align-items:center;gap:9px;padding:14px 19px;font-weight:700;transition:all .2s;display:inline-flex}.primary-button{background:var(--forest);color:#fff;box-shadow:0 7px #0d2b24}.primary-button:hover{transform:translateY(-2px);box-shadow:0 9px #0d2b24}.primary-button:disabled{opacity:.6}.secondary-button{border:1px solid var(--line);color:var(--ink);background:#fff}.quiet-note{color:var(--muted);font-size:13px}.status-dot{background:#5aa36f;border-radius:50%;width:7px;height:7px;margin-right:5px;display:inline-block}.hero-art{height:520px;animation:.8s .1s both rise;position:relative}.sun{background:#e9b643;border-radius:50%;width:360px;height:360px;position:absolute;top:4%;right:6%}.arch-card{background:var(--forest);color:#fff;width:280px;height:390px;box-shadow:30px 35px 0 #d96b4fd9, var(--shadow);border-radius:140px 140px 12px 12px;flex-direction:column;padding:70px 36px 30px;display:flex;position:absolute;top:12%;right:15%}.arch-card span,.arch-card small{color:#bdd2c7;letter-spacing:.08em;font-size:12px}.arch-card strong{margin-top:4px;font-family:Playfair Display;font-size:34px}.tiny-chart{border-bottom:1px solid #fff3;align-items:end;gap:10px;height:150px;margin:auto 0 18px;display:flex}.tiny-chart i{background:#e9b643;border-radius:10px 10px 0 0;width:20px}.leaf{background:#8fae97;border-radius:100% 0;width:80px;height:150px;position:absolute}.leaf-one{bottom:5%;left:4%;transform:rotate(-35deg)}.leaf-two{background:#d46b50;bottom:0;right:0;transform:rotate(25deg)}.landing-foot{letter-spacing:.12em;color:var(--muted);padding-top:12px;font-size:11px}.login-page{background:var(--white);grid-template-columns:1fr 1fr;min-height:100vh;display:grid;position:relative}.back-link{z-index:4;background:0 0;border:0;align-items:center;gap:8px;display:flex;position:absolute;top:26px;right:35px}.back-link svg{transform:rotate(180deg)}.login-intro{background:var(--forest);color:#fff;flex-direction:column;justify-content:space-between;padding:48px clamp(35px,6vw,90px);display:flex;position:relative;overflow:hidden}.login-intro:after{content:"";border:1px solid #ffffff1f;border-radius:50%;width:480px;height:480px;position:absolute;top:25%;right:-260px}.login-intro .eyebrow{color:#f5c75f}.login-intro h1{margin:18px 0;font-size:clamp(55px,6vw,82px)}.login-intro>div p{color:#bed0c8;max-width:480px;line-height:1.7}.login-intro blockquote{color:#e7e2d5;max-width:520px;margin:30px 0 0;font-family:Playfair Display;font-size:19px;line-height:1.5}.login-intro cite{letter-spacing:.13em;color:#e8b94c;margin-top:15px;font:600 11px DM Sans;display:block}.login-panel{place-items:center;padding:70px 30px;display:grid}.login-panel form{width:min(430px,100%)}.login-panel h2,.modal h2{margin:15px 0 8px;font:600 42px Playfair Display}.muted{color:var(--muted)}label{color:#4c5b56;margin-top:20px;font-size:12px;font-weight:700;display:block}input,select{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:5px;outline:none;margin-top:8px;padding:14px}input:focus,select:focus{border-color:var(--forest-2);box-shadow:0 0 0 3px #245a4c1a}.select-wrap{position:relative}.select-wrap select{appearance:none}.select-wrap svg{pointer-events:none;position:absolute;top:22px;right:14px}.wide{width:100%;margin-top:26px}.form-error,.success-note{color:#a24432;background:#fff0ec;border:1px solid #efc0b4;border-radius:5px;margin-top:15px;padding:11px 13px;font-size:13px}.success-note{color:#346942;background:#ecf6ef;border-color:#b9dac1;margin:0 0 18px}.api-status{width:min(720px,100%);color:var(--ink);background:#ffffffc7;border:1px solid #00214724;border-radius:999px;justify-content:center;align-items:center;gap:9px;margin:18px auto 2px;padding:11px 14px;font-size:14px;font-weight:800;line-height:1.35;display:inline-flex;box-shadow:0 12px 30px #00214714}.api-status.compact{width:100%;box-shadow:none;border-radius:12px;justify-content:flex-start;margin:10px 0 18px;font-size:12px}.api-status-online{color:#166534;background:#ecf6efeb;border-color:#22c55e4d}.api-status-checking{color:#7c4a03;background:#fffaebf0;border-color:#f59e0b42}.api-status-degraded,.api-status-offline{color:#9f1239;background:#fff1f2f0;border-color:#e11d4847}.demo-hint{text-align:center;color:var(--muted);margin-top:18px;font-size:11px}.sidebar{background:var(--forest);color:#eaf0ec;z-index:10;flex-direction:column;flex:none;width:288px;height:100vh;padding:0;display:flex;overflow:hidden}.sidebar-top{flex:none;padding:26px 18px 0}.sidebar-menu{flex:1 1 0;margin-top:25px;padding:0 18px;overflow:hidden auto}.sidebar-bottom{flex:none;padding:0 18px}.side-brand{justify-content:space-between;padding:0 9px 23px;display:flex}.campus-card{background:#ffffff13;border:1px solid #ffffff1a;border-radius:7px;align-items:center;gap:11px;padding:13px;display:flex}.campus-mark{width:35px;height:35px;color:var(--forest);background:#e3ad35;border-radius:50%;place-items:center;font-size:11px;font-weight:800;display:grid}.campus-card div{min-width:0}.campus-card small{letter-spacing:.13em;color:#a9c0b6;font-size:8px;display:block}.campus-card strong{white-space:nowrap;text-overflow:ellipsis;margin-top:3px;font-size:11px;display:block;overflow:hidden}.nav-label{letter-spacing:.18em;color:#8ba99c;padding:10px 13px 7px;font-size:8px;display:block}.sidebar nav button{color:#bdd0c7;text-align:left;background:0 0;border:0;border-radius:5px;align-items:center;gap:12px;width:100%;margin:2px 0;padding:11px 13px;font-size:13px;display:flex}.sidebar nav button:hover,.sidebar nav button.active{color:#fff;background:#2d594d}.sidebar nav i{color:#173f35;background:#df9f2b;border-radius:20px;margin-left:auto;padding:2px 7px;font:800 10px DM Sans}.side-user{border-top:1px solid #ffffff1c;align-items:center;gap:10px;margin-top:auto;padding:18px 8px 0;display:flex}.side-user>span{background:#d66f54;border-radius:50%;place-items:center;width:35px;height:35px;font-size:11px;font-weight:800;display:grid}.side-user div{flex:1}.side-user strong,.side-user small{font-size:11px;display:block}.side-user small{color:#9fb8ad;margin-top:2px}.side-user button{color:#a9c0b6;background:0 0;border:0}.icon-button{border:1px solid var(--line);background:var(--white);width:37px;height:37px;color:var(--ink);border-radius:50%;place-items:center;display:grid}.alert{position:relative}.alert:after{content:"";background:var(--coral);border:2px solid #fff;border-radius:50%;width:7px;height:7px;position:absolute;top:7px;right:7px}.year-pill{background:#efede5;border-radius:4px;align-items:center;gap:9px;padding:9px 12px;font-size:12px;font-weight:700;display:flex}.panel{background:var(--white);border:1px solid #e3dfd4;border-radius:7px}.chart-panel,.activity-panel{padding:23px}.panel-head{justify-content:space-between;align-items:center;display:flex}.panel-head h3{margin:7px 0;font:600 22px Playfair Display}.bar-chart{border-bottom:1px solid var(--line);align-items:end;gap:clamp(9px,2vw,24px);height:260px;padding:35px 10px 0;display:flex}.bar-item{flex-direction:column;flex:1;justify-content:end;align-items:center;height:100%;display:flex;position:relative}.bar-item i{background:var(--forest-2);border-radius:6px 6px 0 0;width:100%;max-width:42px;transition:all .5s}.bar-item:nth-child(3n+2) i{background:#d69d2e}.bar-item:nth-child(3n) i{background:#d6765d}.bar-item>span{margin-bottom:6px;font-size:10px}.bar-item small{color:var(--muted);font-size:9px;position:absolute;top:calc(100% + 8px)}.activity-list{margin-top:12px}.activity{border-top:1px solid #ebe8df;align-items:center;gap:11px;padding:14px 0;display:flex}.activity-icon{color:#2b6a57;background:#e5f0ea;border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.tone-1{color:#9a6900;background:#fff1d5}.tone-2{color:#a3513d;background:#f8e5de}.activity div{flex:1}.activity strong,.activity small{font-size:11px;display:block}.activity small,.activity time{color:var(--muted);margin-top:3px}.activity time{font-size:9px}.table-panel{overflow:hidden}.table-tools{border-bottom:1px solid var(--line);justify-content:space-between;gap:15px;padding:17px;display:flex}.search-box{border:1px solid var(--line);border-radius:5px;flex:1;align-items:center;gap:8px;max-width:460px;padding:0 12px;display:flex}.search-box input{box-shadow:none;background:0 0;border:0;margin:0}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;min-width:720px}th,td{text-align:left;border-bottom:1px solid #ebe8df;padding:14px 20px;font-size:12px}th{letter-spacing:.12em;color:var(--muted);background:#faf8f2;font-size:9px}.student-cell{align-items:center;gap:11px;display:flex}.student-cell>span{width:35px;height:35px;color:var(--forest);background:#e2eee8;border-radius:50%;place-items:center;font-size:10px;font-weight:800;display:grid}.student-cell strong,.student-cell small{display:block}.student-cell small{color:var(--muted);margin-top:3px;font-size:9px}.status-badge{color:#387347;text-transform:capitalize;background:#e3f1e7;border-radius:20px;padding:5px 9px;font-size:10px;font-weight:700}.modal-backdrop{z-index:30;background:#0f26208c;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:var(--white);width:min(650px,100%);max-height:92vh;box-shadow:var(--shadow);border-radius:9px;padding:27px;overflow:auto}.modal-head{justify-content:space-between;display:flex}.student-form{grid-template-columns:1fr 1fr;gap:0 18px;display:grid}.student-form .full{grid-column:1/-1}.modal-actions{justify-content:flex-end;gap:10px;margin-top:25px;display:flex}.module-placeholder{text-align:center;flex-direction:column;justify-content:center;align-items:center;max-width:620px;min-height:65vh;margin:auto;display:flex}.module-placeholder>span{background:#e5eee8;border-radius:50%;place-items:center;width:75px;height:75px;margin-bottom:22px;display:grid}.module-placeholder h1{margin:10px;font-size:55px}.module-placeholder>p:last-child{color:var(--muted);line-height:1.7}.mobile-only,.sidebar-backdrop{display:none}@keyframes rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@media (width<=1000px){.hero{grid-template-columns:1fr}.hero-art{display:none}.hero{min-height:78vh}.metrics{grid-template-columns:1fr 1fr}.dashboard-grid{grid-template-columns:1fr}.login-page{grid-template-columns:.85fr 1.15fr}}@media (width<=760px){.login-page{display:block}.login-intro{min-height:310px;padding:38px 25px}.login-intro blockquote{display:none}.login-intro h1{margin:35px 0 10px;font-size:48px}.login-panel{padding:45px 24px}.back-link{color:#fff;top:24px;right:20px}.landing-nav,.landing-foot{padding:22px}.hero{padding:35px 22px}.hero h1{font-size:48px}.hero-actions{flex-direction:column;align-items:flex-start}.student-form{grid-template-columns:1fr}.student-form label{grid-column:1}.search-box{max-width:none}.landing-foot{display:none}}@media (width<=460px){.metrics{grid-template-columns:1fr}.header-actions .icon-button{display:none}.year-pill{font-size:10px}.page-title .primary-button{width:100%}}.student-create-page{max-width:1440px}.student-create-heading{margin-bottom:28px}.student-create-heading .page-title{margin:13px 0 0}.student-create-heading .page-title h1{font-size:clamp(38px,4vw,58px)}.back-button{color:var(--forest-2);background:0 0;border:0;align-items:center;gap:8px;padding:0;font-weight:700;display:flex}.draft-pill{color:var(--forest);background:#e8eee9;border-radius:20px;align-self:center;align-items:center;gap:7px;padding:9px 12px;font-size:11px;font-weight:700;display:flex}.form-banner{align-items:center;gap:9px;margin:-7px 0 20px;display:flex}.student-intake-form{grid-template-columns:250px minmax(0,1fr);align-items:start;gap:20px;display:grid}.form-progress{background:var(--forest);color:#fff;box-shadow:var(--shadow);border-radius:8px;padding:17px;position:sticky;top:92px}.form-progress-campus{border-bottom:1px solid #ffffff1f;padding:4px 5px 17px}.form-progress-campus small,.form-progress-campus strong,.form-progress-campus span{display:block}.form-progress-campus small{color:#8fb0a2;letter-spacing:.15em;font-size:8px;font-weight:800}.form-progress-campus strong{margin:7px 0 4px;font:600 17px/1.25 Playfair Display}.form-progress-campus span{color:#9fb9ae;font-size:10px}.form-progress nav{margin-top:13px}.form-progress nav button{color:#b6cbc2;text-align:left;background:0 0;border:0;border-radius:5px;grid-template-columns:22px 20px 1fr;align-items:center;gap:8px;width:100%;padding:10px 8px;display:grid;position:relative}.form-progress nav button:hover,.form-progress nav button.active{color:#fff;background:#2c594d}.form-progress nav button>span{border:1px solid #65867a;border-radius:50%;place-items:center;width:20px;height:20px;font-size:8px;display:grid}.form-progress nav button.active>span{color:var(--forest);background:#edb73e;border-color:#edb73e;font-weight:800}.form-progress nav button strong,.form-progress nav button small{display:block}.form-progress nav button strong{font-size:11px}.form-progress nav button small{color:#86a69a;margin-top:2px;font-size:8px}.privacy-note{color:#e6eee9;background:#fff1;border-radius:6px;gap:9px;margin-top:16px;padding:12px;display:flex}.privacy-note svg{color:#efbd4e;flex:none}.privacy-note p{color:#9fb9ae;margin:0;font-size:8px;line-height:1.55}.privacy-note strong{color:#fff;margin-bottom:2px;font-size:9px;display:block}.form-sections{min-width:0}.form-card{background:var(--white);border:1px solid #dfdbd0;border-radius:8px;margin-bottom:17px;scroll-margin-top:92px;overflow:hidden;box-shadow:0 7px 24px #1e372f09}.form-card-head{background:linear-gradient(110deg,#fffdf8 70%,#f3efe4);border-bottom:1px solid #e5e1d6;gap:14px;padding:22px 25px 18px;display:flex}.form-card-head>span{background:var(--forest);color:#fff;border-radius:50%;place-items:center;width:31px;height:31px;font-size:9px;font-weight:800;display:grid}.form-card-head h2{margin:0 0 4px;font:600 24px Playfair Display}.form-card-head p{color:var(--muted);margin:0;font-size:11px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px;padding:24px 25px 28px;display:grid}.field{min-width:0;margin:0}.field.wide,.photo-field.wide,.subsection-title.wide,.context-note.wide{grid-column:1/-1}.field>span,.photo-field>span{letter-spacing:.035em;color:#4c5b56;font-size:10px;font-weight:800;display:block}.field b{color:var(--coral)}.field input,.field select,.field textarea{background:#fffdfa;border-color:#d8d4c9;margin-top:7px}.field textarea{resize:vertical;border:1px solid var(--line);width:100%;color:var(--ink);border-radius:5px;outline:none;padding:14px;line-height:1.5}.field textarea:focus{border-color:var(--forest-2);box-shadow:0 0 0 3px #245a4c1a}.field>small{color:#87948f;margin-top:5px;font-size:8px;display:block}.readonly-field{color:#355d50;background:#eef3ef;border:1px solid #d4e0d7;border-radius:5px;align-items:center;gap:9px;min-height:47px;margin-top:7px;padding:13px 14px;font-size:12px;font-weight:700;display:flex}.photo-field{margin:0;position:relative}.photo-field>div{background:#f7faf7;border:1px dashed #b9c7bf;border-radius:6px;grid-template-columns:35px 1fr;align-items:center;column-gap:8px;margin-top:7px;padding:18px;display:grid}.photo-field svg{color:var(--forest-2);grid-row:1/3}.photo-field strong,.photo-field small{display:block}.photo-field strong{font-size:11px}.photo-field small{color:var(--muted);margin-top:3px;font-size:8px}.photo-field input{opacity:0;cursor:pointer;width:100%;height:calc(100% - 18px);position:absolute;inset:18px 0 0}.subsection-title{margin:4px 0 -3px;position:relative}.subsection-title:after{content:"";background:#e3dfd4;height:1px;position:absolute;top:50%;left:0;right:0}.subsection-title span{z-index:1;background:var(--white);color:#8a9892;letter-spacing:.17em;padding-right:12px;font-size:8px;font-weight:800;position:relative}.context-note{color:#655b43;background:#f5efdf;border-left:3px solid #dba635;gap:10px;padding:12px 14px;display:flex}.context-note p{margin:0;font-size:10px;line-height:1.55}.context-note svg{flex:none}.form-declaration{background:#edf3ef;border:1px solid #d5e0d8;border-radius:7px;margin-bottom:17px;padding:17px}.form-declaration label{cursor:pointer;align-items:flex-start;gap:11px;margin:0;display:flex}.form-declaration input{width:17px;height:17px;accent-color:var(--forest);margin:1px 0 0}.form-declaration span{color:#65736e;font-size:10px;line-height:1.5}.form-declaration strong{color:var(--ink);font-size:11px;display:block}.form-submit-bar{z-index:3;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffdf8f0;border:1px solid #dcd8cc;border-radius:8px;align-items:center;gap:10px;padding:13px;display:flex;position:sticky;bottom:12px;box-shadow:0 15px 35px #18342c29}.form-submit-bar>div{align-items:center;gap:9px;margin-right:auto;display:flex}.form-submit-bar>div svg{color:#3f7d61}.form-submit-bar>div span{color:var(--muted);font-size:8px}.form-submit-bar>div strong{color:var(--ink);font-size:9px;display:block}.form-submit-bar .primary-button,.form-submit-bar .secondary-button{padding:11px 14px;font-size:11px}@media (width<=1050px){.student-intake-form{grid-template-columns:1fr}.form-progress{position:static}.form-progress nav{grid-template-columns:repeat(5,1fr);gap:4px;display:grid}.form-progress nav button{grid-template-columns:22px 1fr}.form-progress nav button svg,.form-progress nav button small,.privacy-note{display:none}}@media (width<=700px){.student-create-page{padding:22px 14px 55px}.student-create-heading .page-title{align-items:flex-start}.draft-pill{display:none}.form-progress{padding:10px;overflow:auto}.form-progress-campus{display:none}.form-progress nav{min-width:620px;margin:0;display:flex}.form-progress nav button{grid-template-columns:20px 1fr;min-width:112px;padding:9px}.form-card-head,.form-grid{padding-left:17px;padding-right:17px}.form-grid{grid-template-columns:1fr}.field.wide,.photo-field.wide,.subsection-title.wide,.context-note.wide{grid-column:1}.form-submit-bar{flex-wrap:wrap;align-items:stretch;bottom:8px}.form-submit-bar>div{display:none}.form-submit-bar .primary-button{flex:1}.form-submit-bar .secondary-button{flex:none}}.profile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.profile-grid .full-width{grid-column:1/-1}.profile-card{padding:24px}.profile-card>p{color:var(--muted);text-transform:capitalize;border-bottom:1px solid #ebe8df;margin:0;padding:13px 0;font-size:12px}.profile-card>p strong{color:var(--ink);letter-spacing:.1em;margin-bottom:4px;font-size:9px;display:block}.profile-form{grid-template-columns:1fr 1fr;gap:18px;padding:25px;display:grid}.profile-form label{margin:0}.profile-form .full{grid-column:1/-1}.profile-form textarea{border:1px solid var(--line);border-radius:5px;width:100%;min-height:100px;margin-top:8px;padding:14px}.back-button{margin-bottom:12px}@media (width<=700px){.profile-grid,.profile-form{grid-template-columns:1fr}.profile-grid .full-width,.profile-form .full{grid-column:1}}@media (width<=1050px){.import-layout{grid-template-columns:1fr}.import-review{position:static}}@media (width<=600px){.import-drop form,.legacy-card{flex-direction:column;align-items:stretch}.import-metrics{grid-template-columns:1fr 1fr}}.landing-new{background:var(--color-bg);min-height:100vh;padding-bottom:80px;position:relative;overflow:hidden}.landing-new:before{content:"";background-image:radial-gradient(var(--color-navy-200) .7px, transparent .7px);pointer-events:none;opacity:.3;background-size:18px 18px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#000,#0000 60%);mask-image:linear-gradient(90deg,#000,#0000 60%)}.landing-header{text-align:center;z-index:2;max-width:600px;animation:slide-up var(--duration-slower) var(--ease-spring) both;margin:60px auto 40px;position:relative}.landing-header .connection-status{margin-top:var(--space-4)}.school-grid-container{max-width:1200px;padding:0 var(--space-6);z-index:2;margin:0 auto;position:relative}.school-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:clamp(18px,2vw,26px);width:min(1180px,100% - 48px);margin:0 auto;display:grid}.school-grid>.form-error{grid-column:1/-1}.school-card{background:var(--color-surface);border:1px solid var(--color-border);padding:var(--space-6);border-radius:var(--radius-xl);align-items:center;gap:var(--space-4);text-align:left;transition:all var(--duration-slow) var(--ease-spring);box-shadow:var(--shadow-sm);cursor:pointer;width:100%;min-height:128px;display:flex}.school-details{flex:1;min-width:0}.school-details strong{color:var(--color-text);font-size:var(--text-md);font-weight:900;line-height:1.24;display:block}.school-details small{color:var(--color-text-tertiary);font-size:var(--text-xs);align-items:center;gap:5px;margin-top:8px;font-weight:750;display:inline-flex}.school-card:hover{box-shadow:var(--shadow-xl);border-color:var(--color-navy-200);transform:translateY(-4px)}.school-card:active{box-shadow:var(--shadow-md);transform:translateY(-1px)}.school-card-icon{background:linear-gradient(135deg, var(--color-gold-100), var(--color-gold-200));border-radius:var(--radius-lg);width:52px;height:52px;transition:transform var(--duration-normal) var(--ease-default);flex-shrink:0;place-items:center;display:grid;overflow:hidden}.school-card:hover .school-card-icon{transform:scale(1.05)}.school-card-icon img{border-radius:var(--radius-md);object-fit:cover;width:32px;height:32px}.school-card-info{flex:1;min-width:0}.school-card-info strong{font-size:var(--text-md);color:var(--color-text);margin-bottom:var(--space-1);line-height:var(--leading-snug);display:block}.school-card-info small{align-items:center;gap:var(--space-1);font-size:var(--text-sm);color:var(--color-text-tertiary);display:flex}.school-card-arrow{color:var(--color-text-tertiary);transition:all var(--duration-normal) var(--ease-default);flex-shrink:0}.school-card:hover .school-card-arrow{color:var(--color-primary);transform:translate(4px)}.landing-foot{z-index:2;padding:var(--space-8) clamp(var(--space-6), 6vw, var(--space-20));font-size:var(--text-xs);letter-spacing:var(--tracking-wider);color:var(--color-text-tertiary);justify-content:space-between;align-items:center;display:flex;position:relative}.super-admin-link{color:var(--color-primary);background:var(--color-primary-light);padding:var(--space-3) var(--space-5);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.super-admin-link:hover{background:var(--color-primary);color:var(--color-white)}.import-wizard-nav{background:var(--white);border:1px solid var(--line);border-radius:10px;gap:4px;margin-bottom:24px;padding:6px;display:flex}.import-wizard-nav .wizard-step{color:var(--muted);border-radius:8px;flex:1;justify-content:center;align-items:center;gap:8px;padding:10px 12px;font-size:12px;transition:all .2s;display:flex}.import-wizard-nav .wizard-step.active{background:var(--forest);color:#fff;font-weight:700}.import-wizard-nav .wizard-step.completed{color:var(--forest-2);background:#e8eee9;font-weight:600}.import-wizard-nav .step-icon{border:1.5px solid;border-radius:50%;place-items:center;width:22px;height:22px;font-size:10px;display:grid}.import-wizard-nav .wizard-step.active .step-icon{background:#fff3;border-color:#0000}.import-wizard-nav .wizard-step.completed .step-icon{background:var(--forest-2);color:#fff;border-color:var(--forest-2)}.import-mapping{padding:24px}.mapping-grid{margin:18px 0}.mapping-header{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);background:#f3f4f6;border-radius:8px;grid-template-columns:1fr 1fr 100px;gap:12px;margin-bottom:6px;padding:10px 14px;font-size:10px;font-weight:700;display:grid}.mapping-row{border:1px solid var(--line);border-radius:8px;grid-template-columns:1fr 1fr 100px;align-items:center;gap:12px;margin-bottom:4px;padding:10px 14px;transition:border-color .2s;display:grid}.mapping-row:hover{border-color:var(--forest-2)}.mapping-row.mapped{border-left:3px solid var(--forest-2)}.mapping-row.unmapped{border-left:3px solid var(--muted);opacity:.7}.source-col{color:var(--ink);font-size:13px;font-weight:600}.mapping-row select{border:1px solid var(--line);background:var(--white);border-radius:6px;width:100%;padding:8px 10px;font-size:13px}.required-indicator{color:var(--muted);text-align:right;font-size:10px}.import-rows{margin:16px 0}.row-filter-tabs{border-bottom:1px solid var(--line);gap:4px;margin-bottom:12px;padding-bottom:8px;display:flex}.row-filter-tabs button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:6px 14px;font-size:12px;font-weight:600;transition:all .15s}.row-filter-tabs button:hover{background:#f3f4f6}.row-filter-tabs button.active{background:var(--forest);color:#fff}.row-filter-tabs button.good.active{background:#059669}.row-filter-tabs button.bad.active{background:#dc2626}.row-filter-tabs button.warn.active{background:#d97706}.review-rows{max-height:500px;overflow-y:auto}.review-row{border:1px solid var(--line);cursor:pointer;border-radius:8px;margin-bottom:4px;transition:border-color .15s}.review-row:hover{border-color:var(--forest-2)}.review-row.valid{border-left:3px solid #059669}.review-row.error{border-left:3px solid #dc2626}.review-row.duplicate{border-left:3px solid #d97706}.row-summary{align-items:center;gap:10px;padding:10px 14px;font-size:13px;display:flex}.row-num{color:var(--muted);min-width:36px;font-size:10px;font-weight:600}.row-admission{color:var(--muted);margin-left:auto;font-size:11px}.row-detail{border-top:1px solid #f3f4f6;padding:0 14px 14px}.row-errors{padding:10px 0}.err-msg{color:#dc2626;align-items:center;gap:6px;padding:3px 0;font-size:12px;display:flex}.row-data{color:var(--muted);flex-wrap:wrap;gap:8px 16px;font-size:11px;display:flex}.row-data strong{color:var(--ink)}.import-approve{padding:28px}.approve-summary{margin:20px 0}.approve-metrics{grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:20px;display:grid}.approve-metrics .metric{text-align:center;border:1px solid var(--line);background:var(--white);border-radius:10px;padding:18px}.approve-metrics .metric strong{margin-bottom:4px;font-size:32px;display:block}.approve-metrics .metric small{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:11px}.approve-metrics .metric.good strong{color:#059669}.approve-metrics .metric.bad strong{color:#dc2626}.approve-metrics .metric.warn strong{color:#d97706}.approve-warning{background:#fef3c7;border:1px solid #fcd34d;border-radius:10px;gap:14px;padding:18px;font-size:13px;display:flex}.approve-warning svg{color:#d97706;flex-shrink:0;margin-top:2px}.approve-warning strong{margin-bottom:4px;display:block}.approve-warning p{color:#92400e;margin:0;font-size:12px}.import-summary{text-align:center;padding:36px}.summary-header{margin-bottom:24px}.summary-icon{color:#059669;background:#d1fae5;border-radius:50%;place-items:center;width:64px;height:64px;margin:0 auto 16px;display:grid}.summary-header h2{margin-bottom:4px;font-size:24px}.summary-header p{color:var(--muted);font-size:13px}.summary-actions{justify-content:center;gap:10px;margin-top:24px;display:flex}.import-history-panel{max-height:300px;margin-bottom:20px;padding:20px;overflow-y:auto}.history-list{margin-top:12px}.history-item{cursor:pointer;text-align:left;background:0 0;border:0;border-radius:8px;justify-content:space-between;align-items:center;width:100%;padding:12px 14px;transition:background .15s;display:flex}.history-item:hover{background:#f3f4f6}.history-info strong{font-size:13px;display:block}.history-info small{color:var(--muted);font-size:11px}.history-meta{align-items:center;gap:8px;display:flex}.how-it-works{margin-top:20px}.hiw-step{border-bottom:1px solid var(--line,#e5e7eb);align-items:flex-start;gap:14px;padding:14px 0;display:flex}.hiw-step:last-child{border-bottom:0;padding-bottom:0}.hiw-num{background:var(--navy,#002147);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:28px;height:28px;font-size:12px;font-weight:700;display:grid}.hiw-step strong{color:var(--ink,#1a1a2e);margin-bottom:3px;font-size:14px;font-weight:600;display:block}.hiw-step p{color:var(--muted,#6b7280);margin:0;font-size:12px;line-height:1.5}.review-actions{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;margin-top:16px;padding-top:16px;display:flex}.review-actions-left,.review-actions-right{align-items:center;gap:8px;display:flex}.dropdown-group{gap:6px;display:flex}.danger-button{color:#dc2626;cursor:pointer;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex}.danger-button:hover{background:#fee2e2;border-color:#dc2626}.icon-button.danger{color:#dc2626}.icon-button.danger:hover{background:#fef2f2}.import-status{text-transform:capitalize;border-radius:4px;padding:3px 8px;font-size:11px;font-weight:700}.import-status.ready,.import-status.approved{color:#1d4ed8;background:#dbeafe}.import-status.completed,.import-status.completed_with_errors{color:#059669;background:#d1fae5}.import-status.rejected,.import-status.error{color:#dc2626;background:#fee2e2}.import-status.importing{color:#d97706;background:#fef3c7}.import-status.rolled_back{color:#6b7280;background:#e5e7eb}.import-status.validating{color:#4338ca;background:#e0e7ff}.form-banner.warning{color:#92400e;background:#fef3c7;border:1px solid #fcd34d;border-radius:8px;align-items:center;gap:8px;padding:10px 14px;font-size:13px;display:flex}@media (width<=1050px){.import-layout{grid-template-columns:1fr}.import-review{position:static}.mapping-header,.mapping-row{grid-template-columns:1fr 1fr}.required-indicator{display:none}}@media (width<=600px){.import-drop form,.legacy-card{flex-direction:column;align-items:stretch}.import-metrics{grid-template-columns:1fr 1fr}.import-wizard-nav{flex-wrap:wrap}.import-wizard-nav .wizard-step strong{display:none}.approve-metrics{grid-template-columns:1fr}.review-actions{flex-direction:column}.review-actions-left,.review-actions-right{width:100%}.review-actions-right{justify-content:flex-end}}.doc-student-selector{border-bottom:1px solid var(--line);padding:16px}.selector-label{letter-spacing:.1em;color:var(--muted);text-transform:uppercase;margin-bottom:8px;font-size:10px;font-weight:700;display:block}.selector-row{align-items:center;gap:10px;display:flex}.student-search-input{border:1px solid var(--line);border-radius:6px;flex:1;max-width:280px;padding:10px 14px;font-size:13px}.student-search-input:focus{border-color:var(--forest-2);outline:none}.doc-table-scroll{overflow-x:auto}.doc-name-cell{align-items:center;gap:10px;display:flex}.doc-icon{background:#f3f4f6;border-radius:8px;flex-shrink:0;place-items:center;width:36px;height:36px;font-size:20px;display:grid}.doc-name-cell strong{font-size:13px;display:block}.doc-name-cell small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:220px;font-size:11px;display:block;overflow:hidden}.doc-category-badge{color:var(--forest-2);background:#f3f4f6;border-radius:20px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-block}.version-link{color:var(--forest-2);cursor:pointer;background:0 0;border:0;border-radius:4px;align-items:center;gap:2px;padding:2px 6px;font-size:12px;font-weight:700;display:inline-flex}.version-link:hover{background:#e8eee9}tr.archived{opacity:.6}.version-history-panel{border-top:1px solid var(--line);background:#fafbfc;padding:16px}.version-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.version-header h4{align-items:center;gap:6px;margin:0;font-size:13px;display:flex}.version-list{flex-direction:column;gap:4px;display:flex}.version-item{border:1px solid var(--line);background:var(--white);border-radius:8px;align-items:center;gap:10px;padding:10px 12px;display:flex}.version-num{color:var(--forest-2);text-align:center;background:#e8eee9;border-radius:4px;min-width:32px;padding:2px 8px;font-size:11px;font-weight:800}.version-info{flex:1}.version-info strong{font-size:12px;display:block}.version-info small{color:var(--muted);font-size:11px}.archived-section{border-top:1px solid var(--line);background:#fefce8;padding:16px}.archived-section h4{color:#92400e;align-items:center;gap:6px;margin:0 0 10px;font-size:13px;display:flex}.archived-list{flex-direction:column;gap:6px;display:flex}.archived-item{background:var(--white);border:1px solid #fde68a;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;display:flex}.archived-item .doc-icon{width:30px;height:30px;font-size:16px}.archived-item div{flex:1}.archived-item strong{font-size:12px;display:block}.archived-item small{color:var(--muted);font-size:11px}.modal-overlay{z-index:1000;background:#0006;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal-panel{width:100%;max-width:500px;max-height:85vh;padding:0;overflow-y:auto}.modal-header h2{margin:0;font-size:18px}.modal-form{flex-direction:column;gap:16px;padding:24px;display:flex}.modal-form .field{margin:0}.modal-form .field span{color:var(--ink);font-size:12px;font-weight:700}.modal-form .field input,.modal-form .field select{border:1px solid var(--line);border-radius:6px;width:100%;margin-top:6px;padding:10px 12px;font-size:13px}.modal-form .field small{color:var(--muted);margin-top:4px;font-size:11px;display:block}.loading-cell,.empty-cell{text-align:center;color:var(--muted);padding:32px!important}@media (width<=700px){.doc-student-selector .selector-row{flex-direction:column}.student-search-input{max-width:none}.doc-name-cell small{max-width:120px}}.cert-number-cell{align-items:center;gap:8px;font-size:13px;display:flex}.cert-number-cell svg{color:var(--forest-2)}.cert-type-badge{color:var(--forest-2);white-space:nowrap;background:#e8eee9;border-radius:20px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-block}.cert-status{text-transform:capitalize;border-radius:20px;padding:3px 10px;font-size:11px;font-weight:700;display:inline-block}.cert-status.issued{color:#059669;background:#d1fae5}.cert-status.revoked{color:#dc2626;background:#fee2e2}.cert-status.draft{color:#d97706;background:#fef3c7}.cert-history-panel{border-top:1px solid var(--line);background:#fafbfc;padding:16px}.cert-history-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.cert-history-header h4{align-items:center;gap:6px;margin:0;font-size:13px;display:flex}.cert-history-list{flex-direction:column;gap:4px;display:flex}.cert-history-item{border:1px solid var(--line);background:var(--white);border-radius:8px;align-items:center;gap:12px;padding:10px 12px;font-size:12px;display:flex}.cert-history-action{text-transform:uppercase;letter-spacing:.05em;color:var(--forest-2);text-align:center;background:#e8eee9;border-radius:4px;min-width:70px;padding:3px 8px;font-size:10px;font-weight:700}.cert-history-meta{color:var(--muted);margin-top:2px;font-size:10px;display:block}.cert-preview-panel{background:var(--white);border-radius:12px;flex-direction:column;width:90vw;max-width:900px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 20px 60px #0003}.cert-preview-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.cert-preview-header h3{margin:0;font-size:16px}@media (width<=700px){.cert-preview-panel{width:95vw;max-height:95vh}.cert-history-item{flex-direction:column;align-items:flex-start;gap:6px}}.pagination-bar{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;display:flex}.pagination-info{color:var(--muted);white-space:nowrap;font-size:12px}.pagination-controls{align-items:center;gap:6px;display:flex}.pagination-pages{align-items:center;gap:2px;display:flex}.pagination-btn{border:1px solid var(--line);background:var(--white);color:var(--ink);cursor:pointer;white-space:nowrap;border-radius:6px;align-items:center;gap:4px;padding:6px 12px;font-size:12px;font-weight:600;transition:all .15s;display:inline-flex}.pagination-btn:hover:not(:disabled){background:var(--cream);border-color:var(--forest-2)}.pagination-btn:disabled{opacity:.4;cursor:not-allowed}.pagination-page{width:32px;height:32px;color:var(--ink);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;place-items:center;font-size:13px;font-weight:600;transition:all .15s;display:grid}.pagination-page:hover{background:var(--cream)}.pagination-page.active{background:var(--forest);color:#fff;border-color:var(--forest)}.pagination-ellipsis{text-align:center;width:32px;color:var(--muted);font-size:13px}@media (width<=700px){.pagination-bar{flex-direction:column;align-items:stretch}.pagination-controls{flex-wrap:wrap;justify-content:center}.pagination-pages{display:none}}.toast-container{z-index:9999;pointer-events:none;flex-direction:column-reverse;gap:8px;display:flex;position:fixed;bottom:20px;right:20px}.toast{background:var(--white);border:1px solid var(--line);pointer-events:auto;border-radius:8px;align-items:center;gap:10px;min-width:280px;max-width:400px;padding:12px 16px;font-size:13px;animation:.3s cubic-bezier(.16,1,.3,1) toast-slide-in;display:flex;box-shadow:0 8px 30px #0000001f}@keyframes toast-slide-in{0%{opacity:0;transform:translateY(12px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.toast-icon{flex-shrink:0}.toast-message{flex:1;font-weight:500}.toast-close{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:4px;flex-shrink:0;place-items:center;padding:2px;display:grid}.toast-close:hover{background:var(--cream);color:var(--ink)}.toast-success{border-left:3px solid #059669}.toast-success .toast-icon{color:#059669}.toast-error{border-left:3px solid #dc2626}.toast-error .toast-icon{color:#dc2626}.toast-warning{border-left:3px solid #d97706}.toast-warning .toast-icon{color:#d97706}.toast-info{border-left:3px solid #3b82f6}.toast-info .toast-icon{color:#3b82f6}@media (width<=700px){.toast-container{bottom:12px;left:12px;right:12px}.toast{min-width:auto;max-width:none}}.confirm-dialog{background:var(--white);text-align:center;border-radius:12px;width:100%;max-width:420px;padding:28px;animation:.25s cubic-bezier(.16,1,.3,1) modal-scale;box-shadow:0 20px 60px #0003}.confirm-dialog-icon{width:56px;height:56px;color:var(--forest);background:#e8eee9;border-radius:50%;place-items:center;margin:0 auto 16px;display:grid}.confirm-dialog-icon.destructive{color:#dc2626;background:#fee2e2}.confirm-dialog-title{margin:0 0 8px;font-size:18px}.confirm-dialog-message{color:var(--muted);margin:0 0 24px;font-size:13px;line-height:1.5}.confirm-dialog-actions{justify-content:center;gap:10px;display:flex}.empty-state-component{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:48px 24px;display:flex}.empty-state-icon{background:var(--cream);width:64px;height:64px;color:var(--muted);border-radius:50%;place-items:center;margin-bottom:16px;display:grid}.empty-state-title{color:var(--ink);margin:0 0 6px;font-size:16px}.empty-state-desc{color:var(--muted);max-width:320px;margin:0 0 20px;font-size:13px}.skeleton-text{flex-direction:column;gap:8px;display:flex}.skeleton-text-line{background:linear-gradient(90deg,#e8eee9 25%,#dcd8cc 50%,#e8eee9 75%) 0 0/200% 100%;border-radius:4px;height:12px;animation:1.5s ease-in-out infinite skeleton-shimmer}.skeleton-text-line:last-child{width:60%}.skeleton-card{border:1px solid var(--line);background:var(--white);border-radius:8px;padding:20px}.skeleton-card-header{align-items:center;gap:12px;margin-bottom:16px;display:flex}.skeleton-avatar{background:linear-gradient(90deg,#e8eee9 25%,#dcd8cc 50%,#e8eee9 75%) 0 0/200% 100%;border-radius:50%;flex-shrink:0;width:40px;height:40px;animation:1.5s ease-in-out infinite skeleton-shimmer}.skeleton-card-body{flex-direction:column;gap:8px;display:flex}.skeleton-table-row{border-bottom:1px solid var(--line);grid-template-columns:40px 1fr 100px 80px 60px;align-items:center;gap:12px;padding:12px 0;display:grid}@media (width>=768px) and (width<=1100px){.dashboard-grid,.metrics{grid-template-columns:1fr 1fr}.student-intake-form{grid-template-columns:200px minmax(0,1fr)}.profile-grid{grid-template-columns:1fr}.profile-form{grid-template-columns:1fr 1fr}.table-tools{flex-direction:column}.filter-group{width:100%}}.tab-content-enter{opacity:0;transform:translateY(6px)}.tab-content-active{opacity:1;transition:opacity .2s,transform .2s;transform:translateY(0)}@keyframes modal-scale{0%{opacity:0;transform:scale(.95)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.modal-panel,.panel.modal-panel{animation:.25s cubic-bezier(.16,1,.3,1) modal-scale}.metric,.panel,.school-card{transition:transform .2s,box-shadow .2s,border-color .2s}.metric:hover,.panel:hover{box-shadow:0 6px 20px #0000000f}.page-tabs button.active{position:relative}.page-tabs button.active:after{content:"";background:var(--forest);border-radius:1px;height:2px;position:absolute;bottom:-1px;left:0;right:0}:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--forest-2);outline-offset:2px}.modal-overlay:focus-visible{outline:none}.skip-link{background:var(--forest);color:#fff;z-index:10000;padding:8px 16px;transition:top .2s;position:absolute;top:-40px;left:0}.skip-link:focus{top:0}.campus-switcher{color:#fff;width:100%;box-shadow:none;cursor:pointer;background:0 0;border:0;margin:3px 0 0;padding:0;font-size:11px;font-weight:700;line-height:1.35}.campus-switcher option{color:#173f35;background:#fff}.super-command{position:relative}.super-command:before{content:"";z-index:-1;opacity:.65;background:radial-gradient(circle at 78% 15%,#e9b64333,#0000 28%),linear-gradient(135deg,#173f3512,#0000 60%);height:270px;position:absolute;inset:0 0 auto}.command-title{align-items:center}.command-title h1{max-width:700px}.scope-seal{color:#f7f3e8;background:var(--forest);border:1px solid #ffffff21;border-radius:8px;align-items:flex-start;gap:14px;width:min(360px,100%);padding:18px;display:flex;box-shadow:12px 12px #e5b847}.scope-seal svg{color:#e8b94c;flex:none}.scope-seal small,.scope-seal strong,.scope-seal span{display:block}.scope-seal small{letter-spacing:.17em;color:#a9c0b6;font-size:8px}.scope-seal strong{margin:4px 0;font:600 17px Playfair Display}.scope-seal span{color:#bdd0c7;font-size:10px}.access-contract{background:#fffdf8;border:1px solid #ded8c9;border-radius:8px;grid-template-columns:minmax(220px,.7fr) 1.3fr;align-items:center;gap:28px;margin-top:16px;padding:22px 24px;display:grid}.access-contract.group{color:#fff;background:linear-gradient(110deg,#173f35 0 32%,#204d41 32%);border-color:#173f35}.access-contract.school{border-left:5px solid #d69d2e}.access-contract-intro{align-items:center;gap:14px;display:flex}.access-contract-intro>svg{color:#e8b94c}.access-contract-intro span{letter-spacing:.16em;color:#9bb7ab;font-size:8px;font-weight:800}.access-contract-intro h2{margin:3px 0 0;font:600 24px Playfair Display}.access-rules{grid-template-columns:1fr 1fr;gap:10px 20px;display:grid}.access-rules span{align-items:flex-start;gap:8px;font-size:11px;line-height:1.45;display:flex}.access-rules svg{color:#e8b94c;flex:none;margin-top:1px}.campus-portfolio{margin-top:22px}.portfolio-heading{justify-content:space-between;align-items:end;margin:0 0 13px;display:flex}.portfolio-heading h2{margin:5px 0 0;font:600 29px Playfair Display}.portfolio-heading>span{color:var(--muted);letter-spacing:.08em;font-size:10px}.campus-ops-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.campus-ops-card{background:#fff;border:1px solid #ded9cc;border-radius:8px;flex-direction:column;min-height:310px;padding:21px;transition:transform .2s,border-color .2s,box-shadow .2s;display:flex;box-shadow:0 10px 35px #173f350b}.campus-ops-card:hover{transform:translateY(-3px);box-shadow:0 16px 38px #173f351a}.campus-ops-card.selected{background:linear-gradient(145deg,#fffdf8,#f8f1d9);border:2px solid #d6a42f}.campus-ops-top{justify-content:space-between;align-items:center;display:flex}.campus-index{color:#b9b2a1;font:600 28px Playfair Display}.live-scope{letter-spacing:.13em;color:#173f35;background:#e8c55d;border-radius:20px;padding:5px 8px;font-size:8px;font-weight:800}.campus-ops-card h3{margin:13px 0 7px;font:600 21px/1.15 Playfair Display}.campus-ops-card>p{color:var(--muted);align-items:center;gap:6px;font-size:10px;display:flex}.campus-mini-metrics{grid-template-columns:1fr 1fr;gap:9px;margin:12px 0 18px;display:grid}.campus-mini-metrics span{color:var(--muted);background:#f4f1e8;border-radius:5px;padding:9px;font-size:9px}.campus-mini-metrics strong{color:var(--ink);margin-bottom:2px;font-size:14px;display:block}.campus-card-actions{gap:8px;margin-top:auto;display:flex}.campus-card-actions .primary-button,.campus-card-actions .secondary-button{box-shadow:none;padding:9px 11px;font-size:10px}@media (width<=1100px){.campus-ops-grid{grid-template-columns:1fr 1fr}.access-contract{grid-template-columns:1fr}}@media (width<=700px){.campus-ops-grid,.access-rules{grid-template-columns:1fr}.scope-seal{box-shadow:6px 6px #e5b847}}.brand-logo-shell{background:#fff;border:1px solid #e0a526b8;border-radius:12px;flex:0 0 48px;place-items:center;width:48px;height:48px;padding:2px;display:grid;overflow:hidden;box-shadow:0 7px 20px #00214729}.brand-logo{object-fit:contain;width:100%;height:100%;display:block}.brand.light .brand-logo-shell{background:#fffffff5;border-color:#f9e4b7b3;box-shadow:0 8px 24px #00000038}.side-brand .brand-logo-shell{border-radius:10px;flex-basis:44px;width:44px;height:44px}.school-card .school-icon{background:#fff;border:1px solid #e0a5267a;flex:0 0 56px;width:56px;height:56px;padding:4px;overflow:hidden;box-shadow:0 6px 18px #00214717}.school-card .school-icon img,.campus-mark img{object-fit:contain;width:100%;height:100%;display:block}.campus-mark{background:#fff;border:1px solid #e0a526bf;padding:2px;overflow:hidden}.landing-new,.login-page,.workspace{isolation:isolate}.landing-new:after,.login-page:before,.workspace:before{content:"";pointer-events:none;-webkit-user-select:none;user-select:none;filter:grayscale()contrast(2.4);mix-blend-mode:multiply;opacity:.055;z-index:0;background-image:url(/montessori-golden-jubilee-logo.jpeg);background-position:50%;background-repeat:no-repeat;background-size:contain;position:fixed}.landing-new:after{opacity:.065;inset:15vh max(12vw,80px)}.login-page:before{aspect-ratio:1;opacity:.075;width:min(55vw,680px);top:50%;left:50%;transform:translate(-50%,-50%)}.workspace:before{opacity:.052;background-position:50% 46%;background-size:min(54vw,650px);inset:84px 5vw 4vh calc(270px + 5vw)}.landing-new>*,.login-page>*,.workspace>*{z-index:1;position:relative}@media (width<=760px){.landing-new,.login-page{width:100%;overflow-x:hidden}.login-intro{min-height:auto;padding:34px 22px 30px}.login-intro h1{letter-spacing:-.035em;overflow-wrap:anywhere;word-break:break-word;max-width:100%;margin:48px 0 16px;font-size:clamp(36px,10.5vw,42px);line-height:1}.login-intro>div p{overflow-wrap:anywhere;max-width:100%;font-size:14px}.login-panel{padding:38px 22px 48px}.landing-new .landing-nav{padding:var(--space-4);gap:var(--space-3)}.landing-new .brand{gap:var(--space-2);min-width:0}.landing-new .brand small{letter-spacing:var(--tracking-wider)}.landing-new .super-admin-link{border-radius:var(--radius-full);flex:0 0 42px;place-items:center;width:42px;height:42px;padding:0;font-size:0;display:grid;overflow:hidden}.landing-new .super-admin-link svg{width:18px;height:18px}.landing-header{width:100%;margin:var(--space-10) auto var(--space-6);padding:0 var(--space-4)}.landing-header h1{letter-spacing:var(--tracking-tight);font-size:clamp(28px,8vw,38px);line-height:1.04}.landing-header p{font-size:var(--text-sm)}.school-grid-container{width:100%;padding:0 var(--space-3)}.school-grid{gap:var(--space-3);grid-template-columns:1fr}.school-card{width:100%;min-width:0;padding:var(--space-4);gap:var(--space-3)}.school-card-info{min-width:0}.school-card-info strong{overflow-wrap:anywhere}.brand-logo-shell{flex-basis:43px;width:43px;height:43px}.brand strong{font-size:18px}.workspace:before{opacity:.045;background-size:min(88vw,430px);inset:72px 12px 3vh}.landing-new:after{opacity:.05;inset:24vh 8vw}.login-page:before{opacity:.055;width:86vw}}@media print{.landing-new:after,.login-page:before,.workspace:before{display:none}}html{color:var(--navy);background:var(--cream);scroll-behavior:smooth}body{min-width:320px;color:var(--navy);background:var(--cream);font-size:16px;line-height:1.55}button,input,select,textarea{font-size:16px}button,a,input,select,textarea{transition:border-color .2s,background-color .2s,color .2s,box-shadow .2s,transform .2s}:focus-visible{outline-offset:2px;outline:3px solid #3a7bd561}.workspace{background:#fff}.sidebar{background:var(--navy);color:#fff;width:288px;padding:0}.sidebar-top{padding:28px 20px 0}.sidebar-menu{margin-top:28px;padding:0 20px}.sidebar-bottom{padding:0 20px}.sidebar nav button{color:#ffffffc7;border-radius:10px;min-height:48px;margin:4px 0;padding:12px 14px;font-size:16px;font-weight:600}.sidebar nav button:hover,.sidebar nav button.active{color:var(--navy);background:var(--cream);transform:translate(2px)}.sidebar nav button.active{box-shadow:inset 4px 0 var(--warning), 0 8px 24px #00000029}.nav-label,.campus-card small{color:#ffffff9e;font-size:12px}.campus-card{background:#ffffff14;border-color:#ffffff2e;border-radius:12px;min-height:72px;padding:14px}.campus-card strong,.campus-switcher{color:#fff;font-size:14px}.side-user strong{font-size:14px}.side-user small{color:#ffffff9e;font-size:12px}.global-school-context,.academic-context{border:1px solid var(--line);background:#f9e4b770;border-radius:12px;flex-direction:column;justify-content:center;min-width:0;min-height:52px;padding:7px 12px;display:flex}.global-school-context{width:min(260px,22vw)}.global-school-context .context-label,.academic-context small{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin-bottom:2px;font-size:12px;font-weight:700}.global-school-context strong,.academic-context strong{color:var(--navy);text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:1.2;overflow:hidden}.global-school-context select{width:100%;min-height:24px;box-shadow:none;color:var(--navy);background:0 0;border:0;margin:0;padding:0 24px 0 0;font-size:14px;font-weight:700}.academic-context select{width:100%;min-height:24px;box-shadow:none;color:var(--navy);background:0 0;border:0;margin:0;padding:0 20px 0 0;font-size:14px;font-weight:700}.academic-context{flex:0 0 122px}.header-profile{align-items:center;gap:10px;min-width:0;padding-left:6px;display:flex}.header-profile>span{background:var(--navy);color:#fff;border-radius:50%;flex:0 0 42px;place-items:center;width:42px;height:42px;font-size:13px;font-weight:800;display:grid}.header-profile strong,.header-profile small{text-overflow:ellipsis;white-space:nowrap;max-width:130px;display:block;overflow:hidden}.header-profile strong{font-size:14px}.header-profile small{color:var(--muted);font-size:12px}.search-dropdown{color:var(--navy)!important;border:1px solid var(--line)!important;box-shadow:var(--shadow)!important;background:#fff!important;border-radius:14px!important;top:calc(100% + 8px)!important}.search-dropdown .search-result-item{min-height:58px;color:var(--navy)!important}.search-dropdown .search-result-item:hover{background:#f9e4b76b!important}.page h2,.section-heading h2{color:var(--navy);font-size:28px;line-height:1.2}.page h3,.panel-head h3{color:var(--navy);font-size:22px;line-height:1.25}.eyebrow,.step-label,.selector-label{color:var(--navy);letter-spacing:.09em;font-size:15px;font-weight:800}.panel,.metric,.campus-ops-card,.school-card,.profile-card,.certificate-template-card,.erp-stat-card{border:1px solid var(--line);background:#fff;border-radius:16px;box-shadow:0 10px 30px #00214712}.panel{overflow:hidden}.panel:hover,.metric:hover,.campus-ops-card:hover,.certificate-template-card:hover,.erp-stat-card:hover{border-color:#00214742;box-shadow:0 16px 38px #0021471c}.metric,.profile-card,.erp-stat-card{min-height:132px;padding:24px!important}.metric small,.erp-stat-card small{color:var(--muted)!important;font-size:15px!important}.metric>strong,.erp-stat-card strong{color:var(--navy)!important;font-size:28px!important}.primary-button,.secondary-button,.danger-button,.text-button{border-radius:10px;min-height:44px;padding:10px 18px;font-size:16px;font-weight:700}.primary-button{color:#fff;background:var(--navy);box-shadow:0 5px #001024f5}.primary-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 7px #001024f5}.secondary-button{color:var(--navy);background:#fff;border:1px solid #0021473d}.secondary-button:hover:not(:disabled){border-color:var(--navy);background:#f9e4b775}.icon-button{width:44px;height:44px;min-height:44px;color:var(--navy);border:1px solid var(--line);background:#fff;flex:0 0 44px}.icon-button:hover{color:#fff;background:var(--navy);transform:translateY(-1px)}button:disabled{cursor:not-allowed;opacity:.52;box-shadow:none}label,.field{color:var(--navy);font-size:15px;font-weight:700}input,select,textarea{min-height:48px;color:var(--navy);background:#fff;border:1px solid #00214733;border-radius:10px;padding:12px 14px}textarea{resize:vertical;min-height:112px}input:focus,select:focus,textarea:focus{border-color:var(--info);box-shadow:0 0 0 4px #3a7bd526}input[type=checkbox],input[type=radio]{width:20px;height:20px;min-height:20px;accent-color:var(--navy);margin:0}.table-panel,.documents-page>.panel{border-radius:16px}.table-tools{background:#f9e4b73d;min-height:76px;padding:16px 20px}.search-box{background:#fff;border-radius:10px;max-width:560px;min-height:48px;padding:0 14px}.search-box input{min-height:46px;font-size:16px}.table-scroll,.doc-table-scroll{max-width:100%;overflow:auto}table{width:100%;color:var(--navy);background:#fff}th,td{vertical-align:middle;border-bottom:1px solid #0021471a;height:64px;padding:15px 20px;font-size:16px}th{z-index:2;min-width:96px;color:var(--navy);letter-spacing:.035em;resize:horizontal;text-transform:none;background:#fff8e8;font-size:15px;font-weight:800;position:sticky;top:0;overflow:hidden}tbody tr:nth-child(2n){background:#f9e4b729}tbody tr:hover{background:#f9e4b761}.student-cell{min-width:220px}.student-cell>span,.avatar{color:#fff;background:var(--navy);flex:0 0 46px;width:46px;height:46px;font-size:14px}.student-cell strong{font-size:16px}.student-cell small{color:var(--muted);font-size:14px}.status-badge,.cert-status,.import-status,.doc-category-badge{border-radius:999px;align-items:center;min-height:30px;padding:5px 11px;font-size:14px;font-weight:800;display:inline-flex}.status-badge.active,.status-badge.completed,.cert-status.issued{color:var(--success);background:#2e8b571f}.status-badge.inactive,.status-badge.dropped,.status-badge.transferred,.cert-status.revoked{color:var(--danger);background:#d9534f1c}.actions-cell{position:relative}.row-actions-menu{justify-content:flex-end;display:inline-flex;position:relative}.row-actions-menu summary{list-style:none}.row-actions-menu summary::-webkit-details-marker{display:none}.row-actions-popover{z-index:15;border:1px solid var(--line);background:#fff;border-radius:12px;min-width:178px;padding:6px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 16px 38px #00214729}.row-actions-popover button{width:100%;color:var(--navy);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:9px;padding:9px 10px;font-size:13px;font-weight:750}.row-actions-popover button:hover{background:#f9e4b78c}.page-tabs{border:1px solid var(--line);scrollbar-width:thin;background:#fff;border-radius:14px;gap:6px;min-height:60px;padding:7px;display:flex;overflow-x:auto;box-shadow:0 8px 26px #0021470d}.page-tabs button{border-radius:9px;flex:none;min-height:44px;padding:10px 16px;font-size:15px}.page-tabs button.active{color:#fff;background:var(--navy)}.profile-header{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:16px;padding:26px}.profile-content{margin-top:24px}.profile-card p{gap:16px;min-height:46px;font-size:16px}.profile-card p strong{min-width:150px;font-size:15px}.import-wizard-nav{border:1px solid var(--line);background:#fff;border-radius:16px;grid-template-columns:repeat(6,minmax(110px,1fr));gap:8px;padding:12px;display:grid;overflow-x:auto;box-shadow:0 10px 30px #0021470f}.wizard-step{border-radius:10px;min-height:68px;padding:10px 12px;font-size:15px}.wizard-step.active{color:#fff;background:var(--navy)}.wizard-step.completed{color:var(--success);background:#2e8b571a}.import-drop{text-align:center;background:#ffffffdb;border:2px dashed #0021474d;align-content:center;place-items:center;min-height:360px;padding:48px;display:grid}.import-empty{border:1px solid var(--line,#e5e7eb);background:#fff;border-radius:14px;flex-direction:column;align-items:flex-start;padding:28px;display:flex}.import-empty>svg{width:36px;height:36px;color:var(--navy,#002147);background:var(--blue-50,#e8f0fe);border-radius:10px;margin-bottom:12px;padding:8px}.import-empty>h3{margin:0 0 4px;font-size:16px;font-weight:600}.import-drop>svg{color:#fff;background:var(--navy);border-radius:16px;width:54px;height:54px;padding:13px}.import-drop form{gap:14px;width:min(520px,100%);display:grid}.import-metrics{gap:14px}.import-metrics>span{border:1px solid var(--line);background:#fff;border-radius:14px;min-height:112px;padding:20px;font-size:15px}.import-metrics strong{font-size:30px}.section-heading{justify-content:space-between;align-items:end;gap:16px;margin-bottom:18px;display:flex}.section-heading h2{margin:5px 0 0}.section-heading>span{color:var(--muted);font-size:15px;font-weight:700}.certificate-template-section{margin-bottom:28px}.certificate-template-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;display:grid}.certificate-template-card{flex-direction:column;min-height:250px;padding:22px;display:flex}.template-preview{color:#fff;background:var(--navy);width:58px;height:58px;box-shadow:7px 7px 0 var(--cream);border-radius:14px;place-items:center;margin-bottom:20px;display:grid}.certificate-template-card h3{margin:0 0 8px;font-size:20px}.certificate-template-card p{flex:1;font-size:15px}.certificate-template-card .secondary-button{width:100%;margin-top:14px}.document-preview-overlay{padding:24px}.document-preview-panel{border:1px solid var(--line);background:#fff;border-radius:18px;grid-template-rows:auto 1fr;width:min(1100px,96vw);height:min(820px,92vh);margin:auto;display:grid;overflow:hidden;box-shadow:0 28px 90px #0021474d}.document-preview-panel .modal-header{border-bottom:1px solid var(--line);min-height:82px;padding:16px 20px}.document-preview-panel h2{text-overflow:ellipsis;white-space:nowrap;max-width:820px;margin:4px 0 0;font-size:22px;overflow:hidden}.document-preview-panel iframe{background:#fff;border:0;width:100%;height:100%}.documents-page{width:100%;max-width:100%;padding:0}.dms-header{color:#fff;background:linear-gradient(135deg,#0f172a 0%,#1e293b 100%);border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;padding:20px 24px;display:flex}.dms-header h1{color:#fff;margin:0;font-size:20px;font-weight:700}.dms-header p{color:#94a3b8;margin:4px 0 0;font-size:13px}.dms-header-left{flex:1;min-width:200px}.dms-header-right{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.dms-stats{flex-wrap:wrap;gap:16px;display:flex}.dms-stat{color:#cbd5e1;background:#ffffff14;border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;display:flex}.dms-student-selector{background:#fff;border:1px solid #e5e7eb;border-radius:12px;align-items:center;gap:12px;margin-bottom:16px;padding:16px 24px;display:flex}.dms-search-box{flex:1;align-items:center;display:flex;position:relative}.dms-search-box svg{color:#9ca3af;position:absolute;left:12px}.dms-search-box input{border:1px solid #e5e7eb;border-radius:8px;outline:none;width:100%;padding:10px 12px 10px 36px;font-size:14px}.dms-search-box input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.dms-student-dropdown{z-index:100;background:#fff;border:1px solid #e5e7eb;border-radius:8px;max-height:240px;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 8px 24px #0000001f}.dms-student-option{cursor:pointer;align-items:center;gap:8px;padding:10px 14px;font-size:14px;display:flex}.dms-student-option:hover{background:#f3f4f6}.dms-student-option small{color:#9ca3af;margin-left:auto;font-size:12px}.dms-selected-student{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;align-items:center;gap:8px;padding:8px 14px;font-size:13px;font-weight:600;display:flex}.dms-selected-student button{cursor:pointer;color:#6b7280;background:0 0;border:none;font-size:16px}.dms-toolbar{background:#fff;border:1px solid #e5e7eb;border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;padding:12px 16px;display:flex}.dms-toolbar-left,.dms-toolbar-right{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.dms-search-inline{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;align-items:center;gap:6px;padding:6px 10px;display:flex}.dms-search-inline svg{color:#9ca3af}.dms-search-inline input{background:0 0;border:none;outline:none;width:160px;font-size:13px}.dms-filter-select{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:7px 10px;font-size:13px}.dms-view-toggle{border:1px solid #e5e7eb;border-radius:8px;display:flex;overflow:hidden}.dms-view-toggle button{cursor:pointer;color:#6b7280;background:#fff;border:none;padding:6px 10px}.dms-view-toggle button.active{color:#fff;background:#3b82f6}.dms-view-btn{cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:8px;align-items:center;gap:4px;padding:6px 10px;font-size:13px;display:flex}.dms-view-btn.active{color:#92400e;background:#fef3c7;border-color:#f59e0b}.dms-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;margin-bottom:24px;display:grid}.dms-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;transition:box-shadow .2s,transform .2s;overflow:hidden}.dms-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000001a}.dms-card-thumb{cursor:pointer;background:#f9fafb;justify-content:center;align-items:center;height:140px;display:flex;position:relative;overflow:hidden}.dms-card-img-icon{color:#3b82f6;background:#eff6ff;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:100%;height:100%;display:flex}.dms-card-thumb-img{object-fit:cover;width:100%;height:100%}.dms-card-file-icon{flex-direction:column;align-items:center;gap:4px;display:flex}.dms-card-overlay{opacity:0;background:#00000080;justify-content:center;align-items:center;gap:8px;transition:opacity .2s;display:flex;position:absolute;inset:0}.dms-card:hover .dms-card-overlay{opacity:1}.dms-ov-btn{color:#111827;cursor:pointer;background:#fffffff2;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;transition:transform .15s;display:flex}.dms-ov-btn:hover{transform:scale(1.1)}.dms-card-body{padding:12px 14px}.dms-card-body h4{color:#111827;white-space:nowrap;text-overflow:ellipsis;margin:0 0 6px;font-size:13px;font-weight:600;overflow:hidden}.dms-card-meta{color:#9ca3af;justify-content:space-between;margin-bottom:4px;font-size:11px;display:flex}.dms-category-badge{color:#374151;background:#f3f4f6;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.dms-card-actions{border-top:1px solid #f3f4f6;gap:4px;margin-top:8px;padding-top:8px;display:flex}.dms-card-actions button{cursor:pointer;color:#6b7280;background:0 0;border:none;border-radius:6px;flex:1;justify-content:center;align-items:center;padding:6px;transition:background .15s,color .15s;display:flex}.dms-card-actions button:hover{color:#111827;background:#f3f4f6}.dms-card-actions button.danger:hover{color:#dc2626;background:#fef2f2}.dms-versions{background:#f9fafb;border-top:1px solid #e5e7eb;padding:8px 14px}.dms-version-item{color:#6b7280;align-items:center;gap:12px;padding:6px 0;font-size:12px;display:flex}.dms-version-num{color:#166534;background:#dcfce7;border-radius:4px;padding:2px 8px;font-size:11px;font-weight:600}.dms-table-wrap{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow-x:auto}.dms-table{border-collapse:collapse;width:100%;font-size:13px}.dms-table th{text-align:left;text-transform:uppercase;letter-spacing:.5px;color:#6b7280;background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:10px 14px;font-size:12px;font-weight:600}.dms-table td{vertical-align:middle;border-bottom:1px solid #f3f4f6;padding:10px 14px}.dms-table tr:hover{background:#f9fafb}.dms-table-name{align-items:center;gap:8px;display:flex}.dms-table-name strong{font-size:13px;display:block}.dms-table-name small{color:#9ca3af;font-size:11px;display:block}.dms-table-actions{gap:4px;display:flex}.dms-table-actions button{cursor:pointer;color:#6b7280;background:0 0;border:none;border-radius:6px;padding:5px 7px}.dms-table-actions button:hover{color:#111827;background:#f3f4f6}.dms-table-actions button.danger:hover{color:#dc2626;background:#fef2f2}.dms-version-link{cursor:pointer;background:0 0;border:1px solid #e5e7eb;border-radius:6px;align-items:center;gap:3px;padding:3px 8px;font-size:12px;display:inline-flex}.dms-version-link:hover{background:#f3f4f6}.dms-empty{color:#9ca3af;text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:60px 20px;display:flex}.dms-empty h3{color:#374151;margin:12px 0 4px;font-size:16px}.dms-empty p{font-size:13px}.dms-loading{text-align:center;color:#6b7280;padding:40px;font-size:14px}.doc-viewer-overlay{z-index:99999;background:#000000d9;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.doc-viewer-overlay.fullscreen{z-index:999999}.doc-viewer-container{background:#fff;border-radius:12px;flex-direction:column;width:95vw;height:95vh;display:flex;overflow:hidden}.doc-viewer-overlay.fullscreen .doc-viewer-container{border-radius:0;width:100vw;height:100vh}.doc-viewer-toolbar{background:#fff;border-bottom:1px solid #e5e7eb;flex-shrink:0;justify-content:space-between;align-items:center;padding:8px 16px;display:flex}.doc-viewer-title{color:#111827;align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex;overflow:hidden}.doc-viewer-title span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.doc-viewer-count{color:#9ca3af;font-size:12px;font-weight:400}.doc-viewer-actions{align-items:center;gap:4px;display:flex}.dv-btn{cursor:pointer;color:#374151;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;transition:background .15s;display:flex}.dv-btn:hover{background:#f3f4f6}.dv-btn.dv-close{color:#6b7280}.dv-btn.dv-close:hover{color:#dc2626;background:#fef2f2}.dv-zoom-label{color:#6b7280;text-align:center;min-width:36px;font-size:12px}.dv-nav{color:#374151;cursor:pointer;z-index:10;background:#ffffffe6;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;display:flex;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 2px 8px #00000026}.dv-nav:hover{background:#fff}.dv-nav-left{left:16px}.dv-nav-right{right:16px}.doc-viewer-viewport{background:#e5e7eb;flex:1;justify-content:center;align-items:center;display:flex;position:relative;overflow:auto}.dv-loading{color:#6b7280;font-size:14px;position:absolute}.doc-viewer-image{object-fit:contain;max-width:100%;max-height:100%;transition:transform .2s}.doc-viewer-frame{border:none;width:100%;height:100%}.dv-unsupported{color:#6b7280;flex-direction:column;align-items:center;gap:12px;display:flex}.dv-unsupported p{font-size:14px}.erp-stat-card{min-height:124px;background:#fff!important}.media-grid img,.event-media-grid img{object-fit:cover;border-radius:12px;min-height:180px}.landing-new:after,.login-page:before,.workspace:before{filter:grayscale()contrast(2.2)blur(1px);opacity:.03}.workspace:before{opacity:.035;left:calc(288px + 5vw)}@media (width<=1000px){.school-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.school-grid{grid-template-columns:1fr;gap:10px;padding:0 12px}.school-card{border-radius:12px;gap:12px;padding:14px}.school-card .school-icon{width:44px;height:44px}.school-card .school-icon img{width:28px;height:28px}.school-card strong{font-size:14px}.landing-header{margin:36px auto 24px;padding:0 14px}.landing-header h1{font-size:clamp(28px,8vw,38px)}.landing-header p{font-size:13px}.landing-nav{padding:16px 14px}}@media (width<=1350px){.academic-context,.header-profile>div,.future-control{display:none}.global-school-context{width:min(230px,24vw)}}@media (width<=1100px){.workspace>header{padding-inline:18px}.global-school-context{width:210px}.header-actions>.icon-button[title=Help],.header-actions>.icon-button[title=Settings]{display:none}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=768px){.sidebar{z-index:200;width:min(310px,85vw);height:100vh;transition:transform .25s;position:fixed;top:0;left:0;transform:translate(-100%)}.sidebar.open{transform:none;box-shadow:4px 0 24px #00000040}.sidebar-backdrop{z-index:150;background:#00214766;animation:.2s fade-in;position:fixed;inset:0}.mobile-only{display:grid}.workspace{width:100%;margin-left:0!important}.workspace:before{left:12px}.workspace>header{gap:10px;height:auto;min-height:64px;padding:10px 14px}.header-search{display:none!important}.header-actions>.icon-button[title=Help],.header-actions>.icon-button[title=Settings],.header-actions>.icon-button.future-control,.academic-context,.header-profile>div{display:none}.global-school-context{flex:1;width:auto;min-height:44px;padding:6px 10px}.global-school-context .context-label{display:none}.global-school-context strong,.global-school-context select{font-size:13px}.page{padding:24px 16px 48px}.page-title{gap:16px;flex-direction:column!important;align-items:flex-start!important}.page-title h1{font-size:30px}.header-actions{flex-wrap:wrap;width:100%}.header-actions .primary-button,.header-actions .secondary-button{flex:auto}.metrics{grid-template-columns:1fr 1fr}.dashboard-grid{grid-template-columns:1fr}.table-tools{flex-direction:column;gap:12px;padding:14px}.filter-group{flex-wrap:wrap;width:100%}.student-intake-form{grid-template-columns:1fr!important}.form-progress{position:static!important}.profile-grid,.profile-form{grid-template-columns:1fr}.student-create-page{padding:16px 12px 48px}.modal-overlay{padding:12px}.import-wizard-nav{grid-template-columns:repeat(6,132px)}.import-drop{min-height:310px;padding:30px 18px}.certificate-template-grid{grid-template-columns:1fr}.profile-header{padding:20px}.profile-identity{align-items:flex-start}}@media (width<=460px){.metrics{grid-template-columns:1fr}.header-actions .icon-button{display:none}.page-title .primary-button{width:100%}}@media (width<=360px){.sidebar{width:100vw}.page{padding:20px 12px 40px}}.sidebar-menu::-webkit-scrollbar{width:6px}.workspace-content::-webkit-scrollbar{width:6px}.sidebar-menu::-webkit-scrollbar-track{background:0 0}.workspace-content::-webkit-scrollbar-track{background:0 0}.sidebar-menu::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.sidebar-menu::-webkit-scrollbar-thumb:hover{background:#ffffff59}.workspace-content::-webkit-scrollbar-thumb{background:#00214726;border-radius:3px}.workspace-content::-webkit-scrollbar-thumb:hover{background:#00214747}.sidebar-menu,.workspace-content{scrollbar-width:thin;scrollbar-color:#fff3 transparent}.workspace-content{scrollbar-color:#00214726 transparent}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.auth-layout{color:#fff;background:radial-gradient(circle at 14% 10%,#f9e4b73d,#0000 31%),radial-gradient(circle at 86% 18%,#ffffff21,#0000 28%),linear-gradient(135deg,#00152d 0%,#002147 48%,#061b36 100%);grid-template-columns:minmax(360px,.95fr) minmax(360px,1.05fr);align-items:stretch;gap:clamp(28px,5vw,76px);min-height:100vh;padding:clamp(22px,4vw,56px);display:grid;overflow:hidden}.auth-layout:after{content:"";pointer-events:none;opacity:.45;background-image:linear-gradient(#ffffff09 1px,#0000 1px),linear-gradient(90deg,#ffffff09 1px,#0000 1px);background-size:54px 54px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(120deg,#000 0 45%,#0000 82%);mask-image:linear-gradient(120deg,#000 0 45%,#0000 82%)}.auth-layout>*{z-index:1;position:relative}.auth-back-link{z-index:4;color:#fff;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffff14;border-color:#ffffff2e;position:fixed;top:22px;left:22px}.auth-back-link:hover{color:#fff;background:#f9e4b729}.auth-hero,.auth-panel{align-items:center;display:flex}.auth-hero{justify-content:flex-end}.auth-hero-card{-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);background:linear-gradient(145deg,#ffffff21,#ffffff0a),#00214794;border:1px solid #ffffff26;border-radius:34px;gap:28px;width:min(660px,100%);padding:clamp(28px,5vw,58px);display:grid;box-shadow:0 34px 100px #00000047}.auth-hero-card .brand{width:fit-content}.auth-role-badge{color:#f9e4b7;letter-spacing:.08em;text-transform:uppercase;background:#f9e4b71a;border:1px solid #f9e4b76b;border-radius:999px;align-items:center;gap:8px;width:fit-content;padding:9px 13px;font-size:12px;font-weight:900;display:inline-flex}.auth-hero-card h1{color:#fff;letter-spacing:-.045em;max-width:680px;margin:8px 0 12px;font-size:clamp(42px,6vw,78px);line-height:.93}.auth-hero-card p{color:#ffffffc2;max-width:580px;margin:0;font-size:clamp(16px,1.8vw,20px);line-height:1.7}.auth-role-strip{flex-wrap:wrap;gap:10px;display:flex}.auth-role-strip span{color:#ffffffd1;background:#ffffff14;border:1px solid #ffffff24;border-radius:999px;padding:9px 12px;font-size:12px;font-weight:850}.auth-hero-card blockquote{color:#ffffffb8;border-top:1px solid #ffffff24;margin:8px 0 0;padding:20px 0 0;font-size:15px;line-height:1.7}.auth-hero-card cite{color:#f9e4b7;margin-top:10px;font-style:normal;font-weight:900;display:block}.auth-panel{justify-content:flex-start}.auth-panel-inner{width:min(560px,100%);color:var(--ink);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);background:#ffffffe6;border:1px solid #ffffff2e;border-radius:34px;padding:clamp(20px,3vw,30px);box-shadow:0 34px 100px #0000004d}.auth-panel-inner>.login-intro,.auth-panel-inner>.back-link{display:none}.auth-panel .login-panel{width:100%;box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}.auth-form{gap:18px;display:grid}.auth-form h2{color:var(--navy);margin:2px 0 0;font-size:clamp(30px,4vw,42px);line-height:1}.auth-form .muted{color:#536170;margin:-6px 0 4px;font-size:15px;line-height:1.55}.auth-form label{color:var(--navy);margin-top:2px;font-size:14px;font-weight:900}.auth-form input{background:#fffffff0;border-color:#00214729;border-radius:16px;min-height:58px;font-size:16px;font-weight:700;transition:border-color .18s,box-shadow .18s,transform .18s}.auth-form input:focus{border-color:var(--navy);transform:translateY(-1px);box-shadow:0 0 0 4px #0021471c}.auth-forgot-link{width:fit-content;color:var(--navy);justify-self:end;margin-top:-8px;font-size:13px;font-weight:900}.auth-submit{border-radius:16px;min-height:58px;box-shadow:0 14px #00142b,0 24px 45px #00214738}.auth-footer{color:#6b7280;border-top:1px solid #0021471a;justify-content:space-between;gap:14px;margin-top:24px;padding-top:18px;font-size:12px;font-weight:800;display:flex}@media (width<=860px){.auth-layout{grid-template-columns:1fr;gap:22px;padding:82px 18px 28px;overflow:auto}.auth-hero,.auth-panel{justify-content:center}.auth-hero-card{border-radius:26px;padding:26px}.auth-hero-card h1{font-size:clamp(38px,12vw,58px)}.auth-panel-inner{border-radius:26px}}@media (width<=560px){.auth-back-link{top:14px;left:14px}.auth-role-strip,.auth-hero-card blockquote{display:none}.auth-footer{flex-direction:column}.auth-layout{padding:70px 14px 20px}.auth-hero-card{border-radius:20px;padding:20px}.auth-panel-inner{border-radius:20px;padding:16px}.auth-form h2{font-size:clamp(26px,8vw,36px)}.auth-form input{border-radius:12px;min-height:50px;font-size:15px}.auth-submit{border-radius:12px;min-height:50px}}@media (width<=400px){.auth-layout{gap:16px;padding:60px 10px 16px}.auth-hero-card h1{font-size:clamp(32px,12vw,48px)}}.login-screen{--login-navy:#061b36;--login-deep:#00152d;--login-ink:#09203f;--login-muted:#667792;--login-gold:#d9a93f;--login-cream:#fff7e4;color:#fff;background:radial-gradient(circle at 12% 10%, #d9a93f47, transparent 30%), radial-gradient(circle at 92% 14%, #ffffff29, transparent 28%), linear-gradient(135deg, var(--login-deep) 0%, #082447 48%, var(--login-navy) 100%);grid-template-columns:minmax(420px,.9fr) minmax(520px,1.1fr);align-items:center;gap:clamp(28px,4vw,72px);min-height:100vh;padding:clamp(28px,5vw,72px);display:grid;position:relative;overflow:hidden}.login-screen:before{content:"";pointer-events:none;background-image:linear-gradient(#ffffff0a 1px,#0000 1px),linear-gradient(90deg,#ffffff0a 1px,#0000 1px);background-size:56px 56px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(120deg,#000 0 42%,#0000 82%);mask-image:linear-gradient(120deg,#000 0 42%,#0000 82%)}.login-screen:after{content:"";aspect-ratio:1;pointer-events:none;background:radial-gradient(circle,#d9a93f29,#0000 66%);border-radius:50%;width:min(44vw,680px);position:absolute;bottom:-18vw;right:-12vw}.login-back-button{z-index:5;color:#ffffffeb;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffff14;border:1px solid #ffffff2e;border-radius:999px;align-items:center;gap:8px;padding:10px 14px;font-size:13px;font-weight:850;display:inline-flex;position:fixed;top:22px;left:22px;box-shadow:0 16px 45px #00000029}.login-back-button svg{transform:rotate(180deg)}.login-back-button:hover{color:#fff;background:#d9a93f2e}.login-brand-panel,.login-form-panel{z-index:1;position:relative}.login-brand-panel{justify-content:flex-end;display:flex}.login-brand-card{-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);background:linear-gradient(145deg,#ffffff24,#ffffff09),#041d3ab3;border:1px solid #ffffff29;border-radius:34px;flex-direction:column;justify-content:space-between;gap:30px;width:min(620px,100%);min-height:620px;padding:clamp(30px,4.5vw,58px);display:flex;box-shadow:0 34px 100px #00000052}.login-brand-top{align-items:center;gap:15px;display:flex}.login-logo-lockup,.login-card-logo{background:#fff;border:1px solid #d9a93f66;place-items:center;display:grid;box-shadow:0 12px 28px #0000002e}.login-logo-lockup{border-radius:17px;width:54px;height:54px}.login-logo-lockup img,.login-card-logo img{object-fit:contain;width:82%;height:82%}.login-brand-top strong{color:#fff;font-family:Playfair Display,Georgia,serif;font-size:27px;line-height:1;display:block}.login-brand-top small{color:#ffffff94;letter-spacing:.24em;margin-top:7px;font-size:10px;font-weight:900;display:block}.login-role-pill{color:#f9e4b7;letter-spacing:.1em;text-transform:uppercase;background:#f9e4b71c;border:1px solid #f9e4b761;border-radius:999px;align-items:center;gap:8px;width:fit-content;max-width:100%;padding:10px 14px;font-size:12px;font-weight:950;display:inline-flex}.login-brand-copy>span,.login-card-header>span{color:#8ba0bb;letter-spacing:.16em;font-size:12px;font-weight:950;display:inline-flex}.login-brand-copy h1{color:#fff;letter-spacing:-.045em;overflow-wrap:anywhere;max-width:560px;margin:18px 0;font-family:Playfair Display,Georgia,serif;font-size:clamp(48px,5.6vw,76px);line-height:.96}.login-brand-copy p{color:#ffffffbf;max-width:520px;margin:0;font-size:clamp(16px,1.6vw,19px);line-height:1.7}.login-feature-row{flex-wrap:wrap;gap:10px;display:flex}.login-feature-row span{color:#ffffffd6;white-space:nowrap;background:#ffffff13;border:1px solid #ffffff21;border-radius:999px;align-items:center;gap:7px;padding:9px 12px;font-size:12px;font-weight:850;display:inline-flex}.login-feature-row svg{color:#f9e4b7}.login-form-panel{justify-content:flex-start;display:flex}.login-card{width:min(560px,100%);color:var(--login-ink);background:linear-gradient(#fffffffa,#fffdf8f0);border:1px solid #ffffffd6;border-radius:36px;padding:clamp(28px,4vw,48px);box-shadow:0 36px 110px #00000052}.login-card-header{gap:12px;margin-bottom:22px;display:grid}.login-card-logo{border-radius:20px;width:62px;height:62px;margin-bottom:6px}.login-card-header h2{color:var(--login-ink);letter-spacing:-.03em;margin:0;font-family:Playfair Display,Georgia,serif;font-size:clamp(34px,4vw,48px);line-height:1.02}.login-card-header p{max-width:440px;color:var(--login-muted);margin:0;font-size:16px;line-height:1.65}.login-status{border-radius:999px;align-items:center;gap:7px;width:fit-content;margin:4px 0 20px;padding:8px 11px;font-size:12px;font-weight:850;display:inline-flex}.login-status-online{color:#167247;background:#ecfdf3;border:1px solid #b8eccd}.login-status-checking{color:#215a9f;background:#eff6ff;border:1px solid #c8def8}.login-status-degraded{color:#9b6400;background:#fff8e6;border:1px solid #f2d38b}.login-status-offline{color:#a24432;background:#fff0ec;border:1px solid #efc0b4}.login-form{gap:18px;display:grid}.login-field{gap:8px;display:grid}.login-field label{color:var(--login-ink);margin:0;font-size:13px;font-weight:950}.login-input-wrap{align-items:center;display:flex;position:relative}.login-input-wrap>svg{color:#8fa0b5;pointer-events:none;position:absolute;left:17px}.login-input-wrap input{width:100%;min-height:60px;color:var(--login-ink);background:#fffffff5;border:1px solid #09203f24;border-radius:18px;margin:0;padding:0 52px 0 48px;font-size:16px;font-weight:850;transition:border-color .18s,box-shadow .18s,transform .18s;box-shadow:inset 0 1px #ffffffb3}.login-input-wrap input::placeholder{color:#94a3b8;font-weight:750}.login-input-wrap input:focus{border-color:#0d3a6a;transform:translateY(-1px);box-shadow:0 0 0 4px #0d3a6a1c}.login-password-toggle{color:#8fa0b5;background:0 0;border:0;border-radius:13px;place-items:center;width:40px;height:40px;display:grid;position:absolute;right:10px}.login-password-toggle:hover{color:var(--login-ink);background:#eef4fb}.login-error{color:#a24432;background:#fff0ec;border:1px solid #efc0b4;border-radius:16px;align-items:flex-start;gap:9px;padding:13px 15px;font-size:13px;font-weight:800;line-height:1.45;display:flex}.login-error svg{flex-shrink:0;margin-top:1px}.login-submit{color:#fff;background:linear-gradient(135deg,#09203f,#173f65);border:0;border-radius:18px;justify-content:center;align-items:center;gap:10px;min-height:60px;font-size:16px;font-weight:950;transition:transform .18s,box-shadow .18s,opacity .18s;display:inline-flex;box-shadow:0 10px #031328,0 24px 46px #09203f40}.login-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px #031328,0 28px 52px #09203f47}.login-submit:disabled{opacity:.65;cursor:not-allowed}.login-forgot-button{color:#0d3a6a;background:0 0;border:0;width:fit-content;padding:2px 0;font-size:13px;font-weight:950}.login-forgot-button:hover{color:#00152d;text-underline-offset:4px;text-decoration:underline}.login-footer{color:#7d8ba0;border-top:1px solid #09203f1a;justify-content:space-between;gap:16px;margin-top:30px;padding-top:18px;font-size:12px;font-weight:850;display:flex}@media (width<=1080px){.login-screen{grid-template-columns:1fr;gap:24px;padding:84px 22px 32px;overflow:auto}.login-brand-panel,.login-form-panel{justify-content:center}.login-brand-card{min-height:auto}}@media (width<=680px){.login-screen{padding:76px 14px 20px}.login-back-button{top:14px;left:14px}.login-brand-card,.login-card{border-radius:24px;padding:22px}.login-brand-copy h1{font-size:clamp(36px,11vw,52px)}.login-feature-row{display:none}.login-card-header h2{font-size:clamp(30px,9vw,40px)}.login-input-wrap input,.login-submit{border-radius:15px;min-height:54px}.login-footer{flex-direction:column}}.enterprise-login-screen{--enterprise-navy-950:#06162d;--enterprise-navy-900:#0a203d;--enterprise-navy-800:#123255;--enterprise-ink:#071b34;--enterprise-muted:#64748b;--enterprise-soft:#f8f1df;--enterprise-ivory:#fffaf0;--enterprise-gold:#d8ad55;--enterprise-line:#071b341c;--enterprise-shadow:0 42px 120px #05112247;color:#fff;isolation:isolate;background:radial-gradient(circle at 22% 14%,#d8ad553b,#0000 28%),radial-gradient(circle at 74% 18%,#fffaf02b,#0000 26%),linear-gradient(135deg,#06162d 0%,#0b2242 48%,#07192f 100%);grid-template-columns:minmax(360px,.82fr) minmax(520px,1.18fr);align-items:center;gap:clamp(30px,4vw,74px);min-height:100vh;padding:clamp(28px,5vw,72px);display:grid;position:relative;overflow:hidden}.enterprise-login-screen:before{content:"";z-index:-2;background:linear-gradient(118deg,#ffffff0a,#0000 32%),radial-gradient(circle at 8% 82%,#d8ad551c,#0000 34%);position:absolute;inset:0}.enterprise-login-screen:after{content:"";z-index:-1;pointer-events:none;border:1px solid #ffffff14;border-radius:38px;position:absolute;inset:clamp(18px,3vw,38px)}.enterprise-back-button{z-index:6;color:#ffffffe6;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffff13;border:1px solid #ffffff2e;border-radius:999px;align-items:center;gap:8px;padding:10px 14px;font-size:13px;font-weight:850;display:inline-flex;position:fixed;top:22px;left:22px;box-shadow:0 16px 44px #0000002e}.enterprise-back-button svg{transform:rotate(180deg)}.enterprise-back-button:hover,.enterprise-back-button:focus-visible{color:#fff;outline-offset:3px;background:#d8ad552e;outline:2px solid #d8ad5559}.enterprise-brand-panel,.enterprise-auth-panel{z-index:1;position:relative}.enterprise-brand-panel{justify-content:flex-end;display:flex}.enterprise-brand-shell{width:min(560px,100%);min-height:650px;box-shadow:var(--enterprise-shadow);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:linear-gradient(150deg,#ffffff26,#ffffff09),#081f3bc7;border:1px solid #ffffff24;border-radius:38px 0 0 38px;flex-direction:column;justify-content:space-between;gap:30px;padding:clamp(30px,4.5vw,58px);display:flex;position:relative;overflow:hidden}.enterprise-brand-shell:before{content:"";pointer-events:none;background:radial-gradient(circle,#d8ad5538,#0000 64%);height:220px;position:absolute;inset:auto -20% -22% 16%}.enterprise-geometry{pointer-events:none;position:absolute;inset:0}.enterprise-geometry span{border:1px solid #d8ad5533;display:block;position:absolute}.enterprise-geometry span:first-child{border-radius:44px;width:180px;height:180px;top:54px;right:-48px;transform:rotate(18deg)}.enterprise-geometry span:nth-child(2){background:linear-gradient(#d8ad5559,#0000);border:0;width:1px;height:74%;bottom:0;left:64px}.enterprise-geometry span:nth-child(3){background:linear-gradient(90deg,#d8ad5559,#0000);border:0;width:280px;height:1px;bottom:178px;left:36px}.enterprise-brand-mark{align-items:center;gap:15px;display:flex;position:relative}.enterprise-brand-mark img,.enterprise-auth-logo img{object-fit:contain}.enterprise-brand-mark img{background:var(--enterprise-ivory);border:1px solid #d8ad556b;border-radius:18px;width:58px;height:58px;padding:6px;box-shadow:0 16px 34px #0003}.enterprise-brand-mark strong{letter-spacing:-.02em;font-family:Playfair Display,Georgia,serif;font-size:28px;line-height:1;display:block}.enterprise-brand-mark small{color:#ffffff94;letter-spacing:.22em;text-transform:uppercase;margin-top:7px;font-size:10px;font-weight:950;display:block}.enterprise-brand-copy{max-width:480px;position:relative}.enterprise-brand-copy>span,.enterprise-auth-header>span{color:#d8ad55;letter-spacing:.16em;text-transform:uppercase;font-size:12px;font-weight:950;display:inline-flex}.enterprise-brand-copy h1{color:#fff;letter-spacing:-.045em;text-wrap:balance;margin:18px 0;font-family:Playfair Display,Georgia,serif;font-size:clamp(46px,5.3vw,72px);line-height:.95}.enterprise-brand-copy p{color:#ffffffbd;margin:0;font-size:17px;line-height:1.72}.enterprise-feature-pills{flex-wrap:wrap;gap:10px;display:flex;position:relative}.enterprise-feature-pills span{color:#ffffffd9;white-space:nowrap;background:#ffffff13;border:1px solid #ffffff24;border-radius:999px;align-items:center;gap:7px;padding:9px 12px;font-size:12px;font-weight:850;transition:transform .18s,background .18s,border-color .18s;display:inline-flex}.enterprise-feature-pills span:hover{background:#d8ad5521;border-color:#d8ad5561;transform:translateY(-2px)}.enterprise-feature-pills svg{color:#f7dca2}.enterprise-capability-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid;position:relative}.enterprise-capability-grid div{background:#fff1;border:1px solid #ffffff1f;border-radius:20px;padding:15px}.enterprise-capability-grid strong{color:#fff;font-family:Playfair Display,Georgia,serif;font-size:28px;line-height:1;display:block}.enterprise-capability-grid span{color:#ffffff9e;margin-top:6px;font-size:12px;font-weight:850;display:block}.enterprise-auth-panel{justify-content:flex-start;display:flex}.enterprise-auth-card{width:min(620px,100%);color:var(--enterprise-ink);box-shadow:var(--enterprise-shadow);background:radial-gradient(circle at 90% 0,#d8ad5521,#0000 34%),linear-gradient(#fffffffb,#fffaf0f4);border:1px solid #ffffffdb;border-radius:0 38px 38px 0;padding:clamp(32px,4.6vw,58px);position:relative}.enterprise-auth-card:before{content:"";background:linear-gradient(#0000,#d8ad5585,#0000);width:1px;position:absolute;top:34px;bottom:34px;left:0}.enterprise-auth-header{gap:12px;margin-bottom:20px;display:grid}.enterprise-auth-logo{background:#fff;border:1px solid #d8ad5561;border-radius:21px;place-items:center;width:64px;height:64px;padding:7px;display:grid;box-shadow:0 18px 38px #071b341f}.enterprise-auth-logo img{width:100%;height:100%}.enterprise-auth-header h2{color:var(--enterprise-ink);letter-spacing:-.04em;margin:0;font-family:Playfair Display,Georgia,serif;font-size:clamp(40px,4.6vw,58px);line-height:.98}.enterprise-auth-header p{color:var(--enterprise-muted);margin:0;font-size:16px;line-height:1.65}.enterprise-status-row{flex-wrap:wrap;align-items:center;gap:10px;margin:18px 0 14px;display:flex}.enterprise-status,.enterprise-security-badge{border-radius:999px;align-items:center;gap:7px;min-height:34px;padding:8px 11px;font-size:12px;font-weight:900;display:inline-flex}.enterprise-status svg{animation:1.8s ease-in-out infinite enterprise-pulse}.enterprise-status-online{color:#177245;background:#ecfdf3;border:1px solid #b8eccd}.enterprise-status-checking{color:#225b9e;background:#eef6ff;border:1px solid #c8def8}.enterprise-status-degraded{color:#966300;background:#fff7e1;border:1px solid #eed08a}.enterprise-status-offline{color:#a24432;background:#fff0ec;border:1px solid #efc0b4}.enterprise-security-badge{color:#725514;background:#d8ad5521;border:1px solid #d8ad5557}.enterprise-session-note{color:#54657a;background:#ffffffa3;border:1px solid #071b3414;border-radius:18px;align-items:center;gap:9px;margin-bottom:18px;padding:12px 14px;font-size:13px;font-weight:800;display:flex}.enterprise-session-note svg{color:var(--enterprise-gold);flex-shrink:0}.enterprise-login-form{gap:17px;display:grid}.enterprise-field{color:var(--enterprise-ink);margin:0;display:block;position:relative}.enterprise-field input{width:100%;min-height:64px;color:var(--enterprise-ink);background:#ffffffeb;border:1px solid #071b3421;border-radius:20px;margin:0;padding:22px 54px 10px 52px;font-size:16px;font-weight:850;transition:border-color .18s,box-shadow .18s,transform .18s,background .18s;box-shadow:0 16px 34px #071b340e,inset 0 1px #ffffffe6}.enterprise-field input:focus{background:#fff;border-color:#0d3a6a99;transform:translateY(-1px);box-shadow:0 0 0 4px #0d3a6a1a,0 18px 38px #071b3414}.enterprise-field input:focus-visible{outline:none}.enterprise-field-icon{z-index:1;color:#8fa0b5;pointer-events:none;position:absolute;top:50%;left:18px;transform:translateY(-50%)}.enterprise-floating-label{z-index:1;color:#8fa0b5;pointer-events:none;font-size:15px;font-weight:850;transition:top .16s,transform .16s,font-size .16s,color .16s;position:absolute;top:50%;left:52px;transform:translateY(-50%)}.enterprise-field input:focus+.enterprise-floating-label,.enterprise-field input:not(:placeholder-shown)+.enterprise-floating-label{color:#53657c;letter-spacing:.08em;text-transform:uppercase;font-size:11px;top:13px;transform:none}.enterprise-password-toggle{z-index:2;color:#8fa0b5;background:0 0;border:0;border-radius:14px;place-items:center;width:42px;height:42px;display:grid;position:absolute;top:50%;right:11px;transform:translateY(-50%)}.enterprise-password-toggle:hover,.enterprise-password-toggle:focus-visible{color:var(--enterprise-ink);background:#eef4fb;outline:none}.enterprise-form-options{justify-content:space-between;align-items:center;gap:14px;margin:-2px 0 2px;display:flex}.enterprise-remember{color:#5d6c80;align-items:center;gap:9px;margin:0;font-size:13px;font-weight:850;display:inline-flex}.enterprise-remember input{width:16px;height:16px;accent-color:var(--enterprise-navy-800);margin:0}.enterprise-forgot{color:#0d3a6a;background:0 0;border:0;font-size:13px;font-weight:950}.enterprise-forgot:hover,.enterprise-forgot:focus-visible{color:#00152d;text-underline-offset:4px;outline:none;text-decoration:underline}.enterprise-login-error{color:#a24432;background:#fff0ec;border:1px solid #efc0b4;border-radius:17px;align-items:flex-start;gap:9px;padding:13px 15px;font-size:13px;font-weight:850;line-height:1.45;display:flex}.enterprise-login-error svg{flex-shrink:0;margin-top:1px}.enterprise-submit{color:#fff;background:linear-gradient(135deg,#09203f,#123b64 48%,#0d2d50);border:0;border-radius:20px;justify-content:center;align-items:center;gap:10px;min-height:64px;font-size:16px;font-weight:950;transition:transform .18s,box-shadow .18s,filter .18s,opacity .18s;display:inline-flex;box-shadow:0 10px #031328,0 26px 54px #09203f42}.enterprise-submit:hover:not(:disabled),.enterprise-submit:focus-visible:not(:disabled){filter:saturate(1.08);outline:none;transform:translateY(-2px);box-shadow:0 12px #031328,0 32px 64px #09203f4d}.enterprise-submit:disabled{opacity:.66;cursor:not-allowed}.enterprise-auth-footer{color:#7b8797;border-top:1px solid #071b341a;justify-content:space-between;gap:16px;margin-top:28px;padding-top:18px;font-size:12px;font-weight:850;display:flex}@keyframes enterprise-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.72;transform:scale(.92)}}@media (width<=1180px){.enterprise-login-screen{grid-template-columns:1fr;gap:0;padding:86px 24px 34px;overflow:auto}.enterprise-brand-panel,.enterprise-auth-panel{justify-content:center}.enterprise-brand-shell,.enterprise-auth-card{border-radius:34px;width:min(760px,100%)}.enterprise-brand-shell{border-bottom-right-radius:0;border-bottom-left-radius:0;min-height:auto}.enterprise-auth-card{border-top-left-radius:0;border-top-right-radius:0}}@media (width<=680px){.enterprise-login-screen{padding:78px 14px 22px}.enterprise-back-button{top:14px;left:14px}.enterprise-login-screen:after{border-radius:24px;inset:10px}.enterprise-brand-shell,.enterprise-auth-card{border-radius:26px;padding:23px}.enterprise-brand-shell{border-bottom-right-radius:0;border-bottom-left-radius:0}.enterprise-auth-card{border-top-left-radius:0;border-top-right-radius:0}.enterprise-brand-copy h1{font-size:clamp(38px,12vw,54px)}.enterprise-brand-copy p,.enterprise-auth-header p{font-size:15px}.enterprise-feature-pills{display:none}.enterprise-capability-grid{grid-template-columns:1fr 1fr}.enterprise-auth-header h2{font-size:clamp(34px,10vw,46px)}.enterprise-status-row,.enterprise-form-options,.enterprise-auth-footer{flex-direction:column;align-items:flex-start}.enterprise-field input,.enterprise-submit{border-radius:17px;min-height:58px}}@media (width<=420px){.enterprise-capability-grid{grid-template-columns:1fr}.enterprise-brand-mark strong{font-size:24px}}.landing-new .school-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:clamp(18px,2vw,26px);width:min(1180px,100% - 48px);margin:0 auto;padding:0;display:grid}.landing-new .school-grid>.form-error{grid-column:1/-1}.landing-new .school-card{width:100%;min-width:0;min-height:128px}.landing-new .school-details{flex:1;min-width:0}.landing-new .school-details strong{overflow-wrap:anywhere;display:block}.landing-new .card-arrow{flex:none}@media (width<=1100px){.landing-new .school-grid{grid-template-columns:repeat(2,minmax(0,1fr));width:min(820px,100% - 40px)}}@media (width<=700px){.landing-new .school-grid{grid-template-columns:1fr;gap:12px;width:min(460px,100% - 28px)}}.directory-summary-strip{color:var(--navy);background:radial-gradient(circle at 0 0,#f9e4b7b8,#0000 34%),#ffffffb8;border-bottom:1px solid #0021471a;justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;display:flex}.directory-summary-strip>div{align-items:baseline;gap:10px;display:flex}.directory-summary-strip strong{font:700 30px/1 Playfair Display,Georgia,serif}.directory-summary-strip span,.directory-summary-strip small{color:var(--muted);font-weight:800}.directory-summary-strip small{text-align:right}.table-tools{grid-template-columns:minmax(320px,1fr) auto;align-items:center;gap:18px;display:grid}.table-tools .search-box{align-self:center;width:100%;max-width:none;min-height:52px}.table-tools .search-box input{min-height:48px;margin-top:0}.filter-group{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.filter-group .select-wrap{flex:none;width:auto}.filter-group .select-wrap select,.section-filter-input{width:auto;min-width:132px;min-height:44px;margin-top:0}.section-filter-input{border-radius:12px;width:112px;min-height:44px;margin-top:0;font-weight:800}.table-sort-button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;font-weight:900;display:inline-flex}.form-subsection{color:var(--navy);letter-spacing:.08em;text-transform:uppercase;background:#f9e4b773;border:1px solid #0021471a;border-radius:14px;margin:12px 0 0;padding:12px 14px;font-size:14px}.photo-editor{grid-template-columns:minmax(220px,320px) minmax(260px,1fr);align-items:center;gap:24px;display:grid}.photo-preview-frame{aspect-ratio:3/4;background:linear-gradient(145deg,#f8f4e9,#fff);border:1px solid #00214724;border-radius:24px;width:min(320px,100%);overflow:hidden;box-shadow:0 18px 50px #0021471f}.photo-preview-frame img{object-fit:cover;width:100%;height:100%;transition:transform .18s,object-position .18s}.photo-placeholder{color:#6b7280;align-content:center;place-items:center;gap:12px;height:100%;font-weight:900;display:grid}.photo-editor-controls{gap:14px;display:grid}.photo-editor-controls input[type=file]{background:#ffffffc2;border:1px dashed #00214742;padding:12px}.photo-editor-controls label{color:var(--navy);gap:8px;font-size:13px;font-weight:900;display:grid}.photo-editor-controls input[type=range]{width:100%;margin:0;padding:0}.photo-actions{flex-wrap:wrap;gap:10px;display:flex}@media (width<=760px){.directory-summary-strip{flex-direction:column;align-items:flex-start}.directory-summary-strip small{text-align:left}.table-tools{grid-template-columns:1fr;align-items:stretch}.filter-group{justify-content:stretch}.filter-group .select-wrap,.filter-group .select-wrap select{width:100%}.photo-editor{grid-template-columns:1fr}.section-filter-input{width:100%}}.cert-header,.doc-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.cert-generate{align-items:center;gap:8px;display:flex}.cert-generate select{background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:6px 10px;font-size:13px}.cert-cards,.doc-cards{flex-direction:column;gap:12px;display:flex}.cert-card,.doc-card{background:#fafbfc;border:1px solid #e5e7eb;border-radius:10px;padding:16px;transition:box-shadow .15s}.cert-card:hover,.doc-card:hover{box-shadow:0 2px 8px #0000000f}.cert-card-header{align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.cert-icon{color:#3730a3;background:#e0e7ff;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.cert-info{flex:1}.cert-info h4{color:#111827;margin-bottom:2px;font-size:14px;font-weight:600}.cert-number{color:#6b7280;letter-spacing:.5px;font-family:monospace;font-size:12px}.cert-status{text-transform:uppercase;letter-spacing:.5px;border-radius:20px;flex-shrink:0;padding:3px 10px;font-size:11px;font-weight:600}.cert-meta{border-top:1px solid #f3f4f6;border-bottom:1px solid #f3f4f6;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px;padding:10px 0;display:grid}.cert-meta-item{flex-direction:column;gap:2px;display:flex}.meta-label{color:#9ca3af;text-transform:uppercase;letter-spacing:.5px;font-size:10px;font-weight:600}.meta-value{color:#374151;font-size:13px;font-weight:500}.cert-actions{flex-wrap:wrap;gap:6px;display:flex}.cert-action-btn{color:#374151;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:6px;align-items:center;gap:5px;padding:6px 12px;font-size:12px;font-weight:500;transition:all .15s;display:inline-flex}.cert-action-btn:hover{background:#f3f4f6;border-color:#9ca3af}.cert-action-btn.muted{color:#6b7280}.cert-action-btn.muted:hover{color:#374151}.cert-history{background:#fff;border:1px solid #f3f4f6;border-radius:8px;margin-top:12px;padding:12px}.history-dot{background:#d1d5db;border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:4px}.history-dot.generated{background:#22c55e}.history-dot.printed{background:#3b82f6}.history-dot.downloaded{background:#8b5cf6}.history-dot.revoked{background:#ef4444}.history-details{color:#6b7280;margin-top:2px;font-size:11px}.doc-card{align-items:flex-start;gap:14px;display:flex}.doc-card-icon{color:#92400e;background:#fef3c7;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.doc-card-info{flex:1}.doc-card-info h4{color:#111827;margin-bottom:2px;font-size:14px;font-weight:600}.doc-category{color:#6b7280;margin-bottom:4px;font-size:12px}.doc-meta-row{color:#9ca3af;gap:12px;font-size:11px;display:flex}.doc-uploader{color:#9ca3af;margin-top:2px;font-size:11px}.doc-card-actions{flex-shrink:0;gap:4px;display:flex}.doc-gallery{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;margin-top:12px;display:grid}.doc-gallery-card{background:var(--card,#fff);border:1px solid var(--line,#e5e7eb);border-radius:12px;transition:box-shadow .2s,transform .2s;position:relative;overflow:hidden}.doc-gallery-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000001f}.doc-gallery-thumb{background:#f3f4f6;justify-content:center;align-items:center;width:100%;height:160px;display:flex;position:relative;overflow:hidden}.doc-gallery-thumb img{object-fit:cover;width:100%;height:100%}.doc-gallery-icon{color:#9ca3af;flex-direction:column;align-items:center;gap:6px;display:flex}.doc-gallery-ext{color:#6b7280;letter-spacing:.5px;background:#e5e7eb;border-radius:4px;padding:2px 8px;font-size:11px;font-weight:700}.doc-gallery-icon.image-icon{color:#2563eb;background:#dbeafe}.doc-gallery-overlay{opacity:0;background:#00000080;justify-content:center;align-items:center;gap:10px;transition:opacity .2s;display:flex;position:absolute;inset:0}.doc-gallery-card:hover .doc-gallery-overlay{opacity:1}.doc-overlay-btn{color:#111827;cursor:pointer;background:#fffffff2;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;transition:background .15s,transform .15s;display:flex}.doc-overlay-btn:hover{background:#fff;transform:scale(1.1)}.doc-gallery-info{padding:12px 14px}.doc-gallery-info h4{color:#111827;white-space:nowrap;text-overflow:ellipsis;margin:0 0 4px;font-size:13px;font-weight:600;overflow:hidden}.doc-gallery-meta{color:#9ca3af;justify-content:space-between;font-size:11px;display:flex}.doc-gallery-delete{color:#fff;cursor:pointer;opacity:0;background:#ef4444e6;border:none;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;transition:opacity .2s;display:flex;position:absolute;top:8px;right:8px}.doc-gallery-card:hover .doc-gallery-delete{opacity:1}.doc-gallery-delete:hover{background:#dc2626}.doc-preview-overlay{z-index:99999;background:#000000d9;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.doc-preview-overlay.fullscreen{z-index:999999}.doc-preview-container{background:#fff;border-radius:12px;flex-direction:column;width:95vw;height:95vh;display:flex;overflow:hidden}.doc-preview-toolbar{border-bottom:1px solid #e5e7eb;flex-shrink:0;justify-content:space-between;align-items:center;padding:10px 16px;display:flex}.doc-preview-title{color:#111827;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.doc-preview-actions{align-items:center;gap:6px;display:flex}.toolbar-btn:hover{background:#f3f4f6}.toolbar-btn-text{font-size:13px}.close-btn{color:#6b7280;background:0 0;border:none}.close-btn:hover{color:#111827;background:#f3f4f6}.doc-preview-viewport{background:#e5e7eb;flex:1;justify-content:center;align-items:center;display:flex;overflow:auto}.preview-loading{color:#6b7280;font-size:14px}.doc-preview-image{object-fit:contain;max-width:100%;max-height:100%}.doc-preview-frame{border:none;width:100%;height:100%}.modal-overlay{z-index:1000;opacity:0;pointer-events:none;background:#00000080;justify-content:center;align-items:center;transition:opacity .2s;display:flex;position:fixed;inset:0}.modal-overlay.open,.modal-overlay[style*="display: flex"]{opacity:1;pointer-events:auto}.modal{background:#fff;border-radius:12px;flex-direction:column;width:90vw;max-width:800px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 20px 60px #0000004d}.modal-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.modal-header h3{color:#111827;font-size:15px;font-weight:600}.modal-actions{align-items:center;gap:8px;display:flex}.modal-body{padding:20px;overflow-y:auto}.cert-preview-modal{width:95vw;max-width:900px}.cert-preview-body{background:#f3f4f6;flex:1;justify-content:center;align-items:flex-start;padding:20px;display:flex;overflow:auto}.cert-preview-frame{background:#fff;border-radius:4px;width:100%;min-height:400px;padding:24px;box-shadow:0 2px 12px #0000001a}.preview-loading{text-align:center;color:#6b7280;padding:40px}.doc-preview-image{border-radius:4px;max-width:100%;max-height:70vh;box-shadow:0 2px 12px #0000001a}.doc-preview-frame{background:#fff;border:none;border-radius:4px;width:100%;height:70vh}.small{padding:5px 10px;font-size:12px}.primary-button.small,.secondary-button.small{padding:5px 12px;font-size:12px}.cert-preview-overlay{z-index:99999;background:#000000eb;justify-content:center;align-items:center;animation:.15s fadeIn;display:flex;position:fixed;inset:0}.cert-preview-overlay.fullscreen{background:#000}.cert-preview-container{z-index:1;background:#1a1a1a;border-radius:12px;flex-direction:column;width:95vw;max-width:1200px;height:92vh;display:flex;position:relative;overflow:hidden;box-shadow:0 25px 80px #00000080}.cert-preview-overlay.fullscreen .cert-preview-container{border-radius:0;width:100vw;max-width:none;height:100vh}.cert-preview-toolbar{background:#222;border-bottom:1px solid #333;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;display:flex}.toolbar-left{color:#e5e7eb;align-items:center;gap:8px;min-width:0;display:flex}.toolbar-left svg{color:#9ca3af;flex-shrink:0}.toolbar-title{color:#d1d5db;white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;overflow:hidden}.toolbar-center{background:#2a2a2a;border-radius:8px;flex-shrink:0;align-items:center;gap:4px;padding:4px 8px;display:flex}.toolbar-btn{color:#d1d5db;cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:4px;padding:6px 8px;font-size:12px;transition:background .15s,color .15s;display:flex}.toolbar-btn:hover{color:#fff;background:#3a3a3a}.toolbar-btn-text{display:none}@media (width>=768px){.toolbar-btn-text{display:inline}}.toolbar-btn.close-btn:hover{color:#fff;background:#dc2626}.zoom-label{color:#9ca3af;text-align:center;font-variant-numeric:tabular-nums;min-width:40px;font-size:12px;font-weight:600}.toolbar-right{align-items:center;gap:4px;display:flex}.cert-preview-viewport{background:#333;flex:1;justify-content:center;align-items:flex-start;padding:24px;display:flex;overflow:auto}.cert-a4-page{transform-origin:top;background:#fff;border-radius:2px;flex-shrink:0;width:210mm;min-height:297mm;padding:0;transition:transform .2s;overflow:hidden;box-shadow:0 4px 24px #0000004d}.cert-a4-page body{background:0 0!important;min-height:auto!important;margin:0!important;padding:0!important;display:block!important}@media (width<=768px){.cert-preview-container{border-radius:0;width:100vw;height:100vh}.cert-preview-viewport{padding:12px}.cert-a4-page{width:100%;min-height:auto}.toolbar-title{max-width:120px}}.cert-issued-by{color:#9ca3af;margin-top:2px;font-size:11px}.cert-history{border-top:1px solid #f3f4f6;flex-direction:column;gap:0;padding:8px 0 0;display:flex}.cert-history-item{border-bottom:1px solid #f9fafb;align-items:center;gap:10px;padding:8px 0;display:flex}.cert-history-item:last-child{border-bottom:none}.cert-history-text{flex-direction:column;display:flex}.cert-history-text strong{color:#374151;font-size:12px;font-weight:600}.cert-history-text small{color:#9ca3af;font-size:11px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}
