@tailwind base;@tailwind components;@tailwind utilities;@layer components{.btn-primary{@apply inline-flex items-center justify-center rounded-xl bg-primary px-4 py-2 text-sm font-semibold text-white shadow-sm transition hover:bg-primary-dark}}.print-only{display:none}.print-blank-field{display:none}@media print{@page{size:A4 portrait;margin:8mm 10mm}.no-print,nav,aside,.sidebar,header,footer{display:none !important}.print-only{display:block !important}html,body{background:white !important;color:#0f172a !important;font-size:9pt !important;line-height:1.25 !important;-webkit-print-color-adjust:exact;print-color-adjust:exact}main,.ui-main,.content,#main-content{padding:0 !important;margin:0 !important;max-width:none !important}.enrollment-print-header{margin:0 0 4mm !important;padding-bottom:2mm;border-bottom:1.5pt solid #0f172a}.enrollment-print-header h1{font-size:13pt !important;margin:0 !important;line-height:1.2 !important}.enrollment-print-header p{font-size:9pt !important;margin:1mm 0 0 !important;line-height:1.2 !important}.enrollment-print-form{max-width:none !important;width:100% !important;margin:0 !important;padding:0 !important;gap:0 !important;zoom:0.92}.enrollment-print-form.space-y-6>:not([hidden])~:not([hidden]){margin-top:2.5mm !important}.enrollment-print-form .ui-panel,.enrollment-print-form .print-section{box-shadow:none !important;border:1pt solid #64748b !important;border-radius:0 !important;padding:2.5mm 3mm !important;margin:0 !important;background:white !important;break-inside:avoid;page-break-inside:avoid}.enrollment-print-form .print-section h2{font-size:10pt !important;margin:0 0 2mm !important;padding:0 0 1mm !important;border-bottom:0.75pt solid #94a3b8 !important;font-weight:700 !important}.enrollment-print-form .enrollment-print-grid{display:grid !important;grid-template-columns:1fr 1fr !important;gap:2mm 4mm !important}.enrollment-print-form .enrollment-print-field{min-width:0}.enrollment-print-form .ui-field-label{display:block !important;font-size:7.5pt !important;font-weight:600 !important;margin:0 0 0.8mm !important;color:#0f172a !important}.enrollment-print-form .ui-input,.enrollment-print-form input.ui-input,.enrollment-print-form textarea.ui-input{border:none !important;border-bottom:0.75pt solid #334155 !important;border-radius:0 !important;background:transparent !important;box-shadow:none !important;color:#0f172a !important;font-size:9pt !important;min-height:5mm !important;height:5.5mm !important;padding:0 1mm 0.5mm !important;width:100% !important;-webkit-appearance:none !important;appearance:none !important}.enrollment-print-form textarea.ui-input{min-height:10mm !important;height:10mm !important;resize:none !important}.enrollment-print-form select.ui-input,.enrollment-print-form input.ui-input[type='date']{display:none !important}.enrollment-print-form .print-blank-field{display:block !important;width:100% !important;min-height:5.5mm !important;height:5.5mm !important;border:none !important;border-bottom:0.75pt solid #334155 !important;background:transparent !important;margin:0 !important;padding:0 !important}.enrollment-print-signatures{display:grid !important;grid-template-columns:1fr 1fr !important;gap:8mm !important;margin-top:6mm !important;padding-top:3mm !important}.enrollment-print-sign span{display:block;margin-top:1.5mm;font-size:7.5pt;color:#334155}.enrollment-print-sign .print-blank-field{min-height:10mm !important;height:10mm !important}.ui-input,select.ui-input,textarea.ui-input{print-color-adjust:exact}}:root{--primary-color: #16a34a;--present-color: #4caf50;--absent-color: #f44336;--leave-color: #ff9800}body{font-family:'Roboto', sans-serif}h1{color:var(--primary-color);font-weight:500}.card-header{background-color:var(--primary-color);color:white}.attendance-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(40px, 1fr));gap:5px}.attendance-day,.attendance-status{text-align:center;padding:5px;border-radius:4px;font-weight:bold}.attendance-day{font-size:0.8rem}.attendance-status{padding:5px 10px;font-size:0.9rem}.present{background-color:var(--present-color);color:white}.absent{background-color:var(--absent-color);color:white}.main-content{padding:0}.home-padding{padding:0}.default-padding{padding:0}.card{background:#fff;border:1px solid rgba(148,163,184,0.22);border-radius:1rem;box-shadow:0 1px 2px rgba(15,23,42,0.04),0 8px 24px rgba(15,23,42,0.06);transition:transform 0.2s ease, box-shadow 0.2s ease}.stat-card{background-color:#fff;border-radius:1rem;padding:1rem;margin-bottom:1.25rem;border:1px solid rgba(148,163,184,0.22)}.stat-card h3{font-size:0.875rem;color:#64748b;font-weight:500}.stat-card p{font-size:1.5rem;font-weight:700;margin-bottom:0;color:#0f172a}.chart-container,.projects-container{background-color:#fff;border-radius:1rem;padding:1.25rem;border:1px solid rgba(148,163,184,0.22);margin-bottom:1.25rem}.driver-popover{all:unset;font-family:var(--driver-popover-font-family, "Helvetica Neue", Inter, ui-sans-serif, "Apple Color Emoji", Helvetica, Arial, sans-serif);box-sizing:border-box;color:#2d2d2d;z-index:1000000000;background-color:#fff;border-radius:5px;min-width:250px;max-width:300px;margin:0;padding:15px;position:fixed;top:0;right:0;box-shadow:0 1px 10px #0006}.driver-popover-title{zoom:1;margin:0;font-size:19px;font-weight:700;line-height:1.5;display:block;position:relative}.driver-popover-close-btn{all:unset;cursor:pointer;color:#d2d2d2;z-index:1;text-align:center;width:32px;height:28px;font-size:18px;font-weight:500;transition:color .2s;position:absolute;top:0;right:0}.driver-popover-close-btn:hover,.driver-popover-close-btn:focus{color:#2d2d2d}.driver-popover-title[style*=block]+.driver-popover-description{margin-top:5px}.driver-popover-description{zoom:1;margin-bottom:0;font-size:14px;font-weight:400;line-height:1.5}.driver-popover-footer{text-align:right;zoom:1;justify-content:space-between;align-items:center;margin-top:15px;display:flex}.driver-popover-progress-text{color:#727272;zoom:1;font-size:13px;font-weight:400}.driver-popover-footer-btn{all:unset;box-sizing:border-box;color:#2d2d2d;cursor:pointer;zoom:1;background-color:#fff;border:1px solid #ccc;border-radius:3px;outline:0;padding:3px 7px;font-size:12px;line-height:1.3;text-decoration:none;display:inline-block}.driver-popover-footer .driver-popover-btn-disabled{opacity:.5;pointer-events:none}.driver-popover-footer-btn:hover,.driver-popover-footer-btn:focus{background-color:#f7f7f7}.driver-popover-navigation-btns{flex-grow:1;justify-content:flex-end;display:flex}.driver-popover-navigation-btns button+button{margin-left:4px}.driver-popover-arrow{content:"";border:5px solid #fff;position:absolute}.driver-popover-arrow-side-over{display:none}.driver-popover-arrow-side-left{border-top-color:#0000;border-bottom-color:#0000;border-right-color:#0000;left:100%}.driver-popover-arrow-side-right{border-top-color:#0000;border-bottom-color:#0000;border-left-color:#0000;right:100%}.driver-popover-arrow-side-top{border-bottom-color:#0000;border-left-color:#0000;border-right-color:#0000;top:100%}.driver-popover-arrow-side-bottom{border-top-color:#0000;border-left-color:#0000;border-right-color:#0000;bottom:100%}.driver-popover-arrow-side-center,.driver-popover-arrow-none{display:none}.driver-active .driver-overlay{pointer-events:none}.driver-active.driver-no-scroll{overflow:hidden}.driver-active *{pointer-events:none}.driver-active .driver-active-element,.driver-active .driver-active-element *,.driver-popover,.driver-popover *{pointer-events:auto}@keyframes animate-fade-in{0%{opacity:0}to{opacity:1}}.driver-fade .driver-overlay{animation:animate-fade-in var(--driver-animation-duration, 0.4s) ease-in-out}.driver-fade .driver-popover{animation:animate-fade-in var(--driver-animation-duration, 0.4s)}.driver-active-element-parent-no-scroll{overflow:hidden !important}.driver-no-interaction,.driver-no-interaction *{pointer-events:none !important}@font-face{font-family:'Outfit';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/QGYvz_MVcBeNP4NJuktqUYLkn8BJ.woff2) format("woff2");unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}@font-face{font-family:'Outfit';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/QGYvz_MVcBeNP4NJtEtqUYLknw.woff2) format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}@font-face{font-family:'Outfit';font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/QGYvz_MVcBeNP4NJuktqUYLkn8BJ.woff2) format("woff2");unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}@font-face{font-family:'Outfit';font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/QGYvz_MVcBeNP4NJtEtqUYLknw.woff2) format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}@font-face{font-family:'Outfit';font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/QGYvz_MVcBeNP4NJuktqUYLkn8BJ.woff2) format("woff2");unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}@font-face{font-family:'Outfit';font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/QGYvz_MVcBeNP4NJtEtqUYLknw.woff2) format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}@font-face{font-family:'Outfit';font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/QGYvz_MVcBeNP4NJuktqUYLkn8BJ.woff2) format("woff2");unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}@font-face{font-family:'Outfit';font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/QGYvz_MVcBeNP4NJtEtqUYLknw.woff2) format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}@font-face{font-family:'Plus Jakarta Sans';font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/LDIZaomQNQcsA88c7O9yZ4KMCoOg4KozySKCdSNG9OcqYQ0lCS_aOKyKQt2l-Ft7rg.woff2) format("woff2");unicode-range:U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F}@font-face{font-family:'Plus Jakarta Sans';font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/LDIZaomQNQcsA88c7O9yZ4KMCoOg4KozySKCdSNG9OcqYQ0lCS_YOKyKQt2l-Ft7rg.woff2) format("woff2");unicode-range:U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB}@font-face{font-family:'Plus Jakarta Sans';font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/LDIZaomQNQcsA88c7O9yZ4KMCoOg4KozySKCdSNG9OcqYQ0lCS_ZOKyKQt2l-Ft7rg.woff2) format("woff2");unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}@font-face{font-family:'Plus Jakarta Sans';font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/LDIZaomQNQcsA88c7O9yZ4KMCoOg4KozySKCdSNG9OcqYQ0lCS_XOKyKQt2l-Fs.woff2) format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko70yygg_vbd-E.woff2) format("woff2");unicode-range:U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F}@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko50yygg_vbd-E.woff2) format("woff2");unicode-range:U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB}@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko40yygg_vbd-E.woff2) format("woff2");unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko20yygg_vb.woff2) format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko70yygg_vbd-E.woff2) format("woff2");unicode-range:U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F}@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko50yygg_vbd-E.woff2) format("woff2");unicode-range:U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB}@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko40yygg_vbd-E.woff2) format("woff2");unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko20yygg_vb.woff2) format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko70yygg_vbd-E.woff2) format("woff2");unicode-range:U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F}@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko50yygg_vbd-E.woff2) format("woff2");unicode-range:U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB}@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko40yygg_vbd-E.woff2) format("woff2");unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko20yygg_vb.woff2) format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko70yygg_vbd-E.woff2) format("woff2");unicode-range:U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F}@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko50yygg_vbd-E.woff2) format("woff2");unicode-range:U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB}@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko40yygg_vbd-E.woff2) format("woff2");unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko20yygg_vb.woff2) format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko70yygg_vbd-E.woff2) format("woff2");unicode-range:U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F}@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko50yygg_vbd-E.woff2) format("woff2");unicode-range:U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB}@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko40yygg_vbd-E.woff2) format("woff2");unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko20yygg_vb.woff2) format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}.main-content{padding:0}.home-padding{padding:0}.default-padding{padding:0}.card{background:#fff;border:1px solid rgba(148,163,184,0.22);border-radius:1rem;box-shadow:0 1px 2px rgba(15,23,42,0.04),0 8px 24px rgba(15,23,42,0.06);transition:transform 0.2s ease, box-shadow 0.2s ease}.stat-card{background-color:#fff;border-radius:1rem;padding:1rem;margin-bottom:1.25rem;border:1px solid rgba(148,163,184,0.22)}.stat-card h3{font-size:0.875rem;color:#64748b;font-weight:500}.stat-card p{font-size:1.5rem;font-weight:700;margin-bottom:0;color:#0f172a}.chart-container,.projects-container{background-color:#fff;border-radius:1rem;padding:1.25rem;border:1px solid rgba(148,163,184,0.22);margin-bottom:1.25rem}:root{--color-primary: #047857;--color-primary-soft: #ecfdf5;--color-primary-dark: #065f46;--color-ink: #0f172a;--color-ink-muted: #475569;--color-surface: #f4f7f5;--color-raised: #ffffff;--shadow-soft: 0 1px 2px rgba(15, 23, 42, 0.04), 0 8px 24px rgba(15, 23, 42, 0.06);--radius-panel: 1rem}.bg-primary{background-color:var(--color-primary) !important}.bg-primary\/10{background-color:color-mix(in srgb, var(--color-primary) 10%, transparent) !important}.bg-primary\/5{background-color:color-mix(in srgb, var(--color-primary) 5%, transparent) !important}.hover\:bg-primary:hover{background-color:var(--color-primary) !important}.hover\:bg-primary-dark:hover{background-color:var(--color-primary-dark) !important}.text-primary{color:var(--color-primary) !important}.hover\:text-primary:hover{color:var(--color-primary) !important}.border-primary{border-color:var(--color-primary) !important}.ring-primary{--tw-ring-color: var(--color-primary) !important}html{scroll-behavior:smooth}[x-cloak]{display:none !important}body{min-height:100vh;font-family:'Plus Jakarta Sans', ui-sans-serif, system-ui, sans-serif;color:var(--color-ink);background-color:var(--color-surface);-webkit-font-smoothing:antialiased}.bg-image{background-size:cover;background-position:center;min-height:100vh;margin:0;background-color:transparent}main{background-color:transparent;padding:0}.ui-panel{background:var(--color-raised);border:1px solid rgba(148,163,184,0.25);border-radius:var(--radius-panel);box-shadow:var(--shadow-soft)}.ui-btn{display:inline-flex;align-items:center;justify-content:center;gap:0.5rem;border-radius:0.75rem;padding:0.625rem 1rem;font-size:0.875rem;font-weight:600;transition:background-color 0.15s ease, color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease}.ui-btn:active{transform:translateY(1px)}.ui-btn-primary{background:var(--color-primary);color:#fff}.ui-btn-primary:hover{background:color-mix(in srgb, var(--color-primary) 88%, black)}.ui-btn-secondary{background:#fff;color:var(--color-ink);border:1px solid rgba(148,163,184,0.45)}.ui-btn-secondary:hover{background:#f8fafc}.flash-toast{opacity:0;transform:translateX(1.25rem);transition:opacity 0.32s ease, transform 0.32s ease;will-change:opacity, transform}.flash-toast.flash-toast--in{opacity:1;transform:translateX(0)}.flash-toast.flash-toast--out{opacity:0;transform:translateX(1.25rem)}.ui-input{width:100%;border-radius:0.75rem;border:1px solid rgba(148,163,184,0.45);background:#fff;padding:0.75rem 1rem;font-size:0.875rem;transition:border-color 0.15s ease, box-shadow 0.15s ease}.ui-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(4,120,87,0.15)}.ui-table{width:100%;border-collapse:collapse;text-align:left;font-size:0.875rem}.ui-table thead th{padding:0.85rem 1.25rem;font-size:0.7rem;font-weight:650;letter-spacing:0.06em;text-transform:uppercase;color:#64748b;background:#f8fafc;border-bottom:1px solid rgba(148,163,184,0.28);white-space:nowrap}.ui-table tbody td{padding:0.95rem 1.25rem;color:var(--color-ink);border-bottom:1px solid rgba(148,163,184,0.16);vertical-align:middle}.ui-table tbody tr:last-child td{border-bottom:none}.ui-table tbody tr{transition:background-color 0.12s ease}.ui-table tbody tr:hover{background-color:rgba(4,120,87,0.03)}.campus-canvas{position:relative;overflow:hidden;border-radius:1rem;background:linear-gradient(rgba(4,120,87,0.05) 1px, transparent 1px),linear-gradient(90deg, rgba(4,120,87,0.05) 1px, transparent 1px),linear-gradient(160deg, #ecfdf5 0%, #f0fdf9 40%, #e0f2fe 100%);background-size:24px 24px, 24px 24px, auto;box-shadow:inset 0 0 0 1px rgba(148,163,184,0.25);user-select:none;touch-action:none}.campus-zone{position:absolute;border-radius:0.75rem;border:2px solid rgba(15,23,42,0.12);box-shadow:0 8px 20px rgba(15,23,42,0.08);cursor:grab;display:flex;flex-direction:column;justify-content:space-between;padding:0.55rem 0.65rem;transition:box-shadow 0.15s ease, border-color 0.15s ease}.campus-zone:active{cursor:grabbing}.campus-zone.is-selected{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(4,120,87,0.2),0 12px 28px rgba(15,23,42,0.12);z-index:20}.campus-zone.is-live{animation:campus-pulse 1.8s ease-in-out infinite}@keyframes campus-pulse{0%,100%{box-shadow:0 0 0 0 rgba(16,185,129,0.45)}50%{box-shadow:0 0 0 10px rgba(16,185,129,0)}}.campus-zone-type-classroom{background:linear-gradient(145deg, #d1fae5, #a7f3d0);color:#064e3b}.campus-zone-type-lab{background:linear-gradient(145deg, #e0f2fe, #bae6fd);color:#0c4a6e}.campus-zone-type-lobby{background:linear-gradient(145deg, #fef3c7, #fde68a);color:#78350f}.campus-zone-type-reception{background:linear-gradient(145deg, #ede9fe, #ddd6fe);color:#4c1d95}.campus-zone-type-garden{background:linear-gradient(145deg, #bbf7d0, #86efac);color:#14532d}.campus-zone-type-play_area{background:linear-gradient(145deg, #fed7aa, #fdba74);color:#7c2d12}.campus-zone-type-library{background:linear-gradient(145deg, #fce7f3, #fbcfe8);color:#831843}.campus-zone-type-other{background:linear-gradient(145deg, #e2e8f0, #cbd5e1);color:#1e293b}.campus-resize{position:absolute;right:4px;bottom:4px;width:14px;height:14px;border-radius:3px;background:rgba(15,23,42,0.35);cursor:nwse-resize}.sidebar-link{display:flex;align-items:center;gap:0.75rem;border-radius:0.75rem;padding:0.7rem 0.85rem;font-size:0.875rem;font-weight:500;color:#475569;transition:background-color 0.15s ease, color 0.15s ease}.sidebar-link:hover{background:rgba(4,120,87,0.06);color:var(--color-ink)}.sidebar-link.is-active{background:rgba(4,120,87,0.1);color:var(--color-primary);font-weight:600}.sidebar-link .nav-icon{display:flex;width:1.5rem;height:1.5rem;align-items:center;justify-content:center;flex-shrink:0}.sidebar-group-toggle{display:flex;width:100%;align-items:center;justify-content:space-between;gap:0.5rem;border-radius:0.75rem;padding:0.55rem 0.85rem;font-size:0.6875rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:#64748b;transition:background-color 0.15s ease, color 0.15s ease}.sidebar-group-toggle:hover{background:rgba(4,120,87,0.05);color:var(--color-ink)}.sidebar-group-links .sidebar-link{padding-top:0.55rem;padding-bottom:0.55rem}.stat-tile{position:relative;overflow:hidden;background:#fff;border:1px solid rgba(148,163,184,0.22);border-radius:1rem;box-shadow:var(--shadow-soft);transition:transform 0.2s ease, box-shadow 0.2s ease}.stat-tile.stat-tile--dropdown{overflow:visible;z-index:1}.stat-tile.stat-tile--dropdown.is-open{z-index:40}.stat-tile:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(15,23,42,0.08)}.stat-tile::after{content:'';position:absolute;inset:auto -20% -40% auto;width:120px;height:120px;border-radius:9999px;background:radial-gradient(circle, rgba(4,120,87,0.12), transparent 70%);pointer-events:none}.landing-hero{position:relative;overflow:hidden;isolation:isolate}.landing-hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 60% 70% at 10% 15%, rgba(164,217,0,0.14), transparent 55%),radial-gradient(ellipse 50% 55% at 90% 20%, rgba(0,138,0,0.08), transparent 50%),linear-gradient(180deg, #fff 0%, #f8fbf4 100%);z-index:-2}.landing-hero::after{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(164,217,0,0.06) 1px, transparent 1px),linear-gradient(90deg, rgba(164,217,0,0.06) 1px, transparent 1px);background-size:48px 48px;mask-image:linear-gradient(180deg, rgba(0,0,0,0.35), transparent 90%);z-index:-1;pointer-events:none;animation:hero-grid-drift 28s linear infinite}.landing-hero__card{position:relative;z-index:1}@keyframes hero-grid-drift{from{background-position:0 0, 0 0}to{background-position:48px 48px, 48px 48px}}@keyframes fade-up{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.animate-fade-up{animation:fade-up 0.55s ease-out both}.animate-fade-up-delay{animation:fade-up 0.65s ease-out 0.12s both}.animate-fade-up-delay-2{animation:fade-up 0.7s ease-out 0.22s both}.font-marketing{font-family:'Outfit', 'Plus Jakarta Sans', ui-sans-serif, system-ui, sans-serif}.marketing-section{padding-top:4.5rem;padding-bottom:4.5rem}@media (min-width: 1024px){.marketing-section{padding-top:6rem;padding-bottom:6rem}}.marketing-band{position:relative}.marketing-reveal{opacity:0;transform:translateY(14px);animation:fade-up 0.7s ease-out both;animation-delay:var(--reveal-delay, 0ms)}.marketing-feature-plane{position:relative;isolation:isolate;overflow:hidden;background:#043027}.marketing-feature-plane__media{position:absolute;inset:0;z-index:0;background:radial-gradient(ellipse 60% 70% at 85% 40%, rgba(16,185,129,0.28), transparent 60%),linear-gradient(115deg, rgba(4,48,39,0.92) 0%, rgba(4,48,39,0.75) 42%, rgba(4,48,39,0.35) 100%),url(/assets/stu-acbbddc5b5a64c251415300d6f3b6345e96c75d9b75c929e168ddb0f7e22a73c.avif) center/cover no-repeat;transform:scale(1.02);animation:feature- ken 18s ease-in-out infinite alternate}@keyframes feature-ken{from{transform:scale(1.02) translate3d(0, 0, 0)}to{transform:scale(1.08) translate3d(-1.5%, 1%, 0)}}.marketing-module-card{position:relative}.marketing-cta{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(135deg, #008A00 0%, #065f46 55%, #043027 100%)}.marketing-cta::after{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,0.035) 1px, transparent 1px),linear-gradient(90deg, rgba(255,255,255,0.035) 1px, transparent 1px);background-size:40px 40px;opacity:0.7;pointer-events:none;z-index:0}.marketing-cta>*{position:relative;z-index:1}@media (prefers-reduced-motion: reduce){.landing-hero::after,.marketing-feature-plane__media,.animate-fade-up,.animate-fade-up-delay,.animate-fade-up-delay-2,.marketing-reveal{animation:none !important;opacity:1;transform:none}}.ui-page-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.ui-page-title,.ui-title{font-family:'Plus Jakarta Sans', ui-sans-serif, system-ui, sans-serif;font-size:1.5rem;font-weight:700;letter-spacing:-0.02em;color:var(--color-ink);line-height:1.25}.ui-page-subtitle,.ui-subtitle{margin-top:0.25rem;font-size:0.875rem;color:#64748b}.ui-eyebrow{margin-bottom:0.35rem;font-size:0.7rem;font-weight:650;letter-spacing:0.08em;text-transform:uppercase;color:var(--color-primary)}.ui-label{display:block;margin-bottom:0.375rem;font-size:0.875rem;font-weight:500;color:var(--color-ink)}.ui-field{border-radius:0.875rem;border:1px solid rgba(148,163,184,0.28);background:#f8faf9;padding:1rem}.ui-field-label{display:flex;align-items:center;gap:0.35rem;margin-bottom:0.35rem;font-size:0.7rem;font-weight:650;letter-spacing:0.04em;text-transform:uppercase;color:var(--color-primary)}.ui-field-value{font-size:0.875rem;font-weight:600;color:var(--color-ink);word-break:break-word}.ui-empty{border-radius:var(--radius-panel);border:1px solid rgba(148,163,184,0.22);background:#fff;padding:3rem 1.5rem;text-align:center;box-shadow:var(--shadow-soft)}.ui-chip{display:inline-flex;align-items:center;border-radius:9999px;padding:0.2rem 0.65rem;font-size:0.75rem;font-weight:600;background:rgba(4,120,87,0.1);color:var(--color-primary)}.ui-action-bar{display:flex;flex-wrap:wrap;gap:0.5rem;align-items:center}.ui-dropdown{position:absolute;right:0;z-index:20;margin-top:0.5rem;min-width:10rem;overflow:hidden;border-radius:0.75rem;border:1px solid rgba(148,163,184,0.3);background:#fff;box-shadow:var(--shadow-soft)}.ui-dropdown a,.ui-dropdown button{display:block;width:100%;padding:0.65rem 1rem;font-size:0.875rem;font-weight:500;text-align:left;color:#334155;background:transparent;border:0;cursor:pointer}.ui-dropdown a:hover,.ui-dropdown button:hover{background:rgba(4,120,87,0.06);color:var(--color-primary)}.ui-dropdown form{margin:0;width:100%}.ui-dropdown button[type="submit"]{color:#dc2626}.ui-dropdown button[type="submit"]:hover{background:rgba(220,38,38,0.06);color:#b91c1c}.gallery-card{overflow:hidden;border-radius:1rem;border:1px solid rgba(148,163,184,0.22);background:#fff;box-shadow:var(--shadow-soft);transition:transform 0.2s ease, box-shadow 0.2s ease}.gallery-card:hover{transform:translateY(-3px);box-shadow:0 14px 32px rgba(15,23,42,0.1)}.heat-grid{display:grid;grid-auto-flow:column;grid-template-rows:repeat(7, 11px);gap:3px}.heat-cell{width:11px;height:11px;border-radius:2px;outline:1px solid rgba(15,23,42,0.04)}.heat-0{background:#e8efeb}.heat-1{background:#a7f3d0}.heat-2{background:#34d399}.heat-3{background:#059669}.heat-4{background:#064e3b}.heat-present{background:#059669}.heat-absent{background:#f87171}.heat-late{background:#fbbf24}.attendance-register-legend{display:flex;flex-wrap:wrap;align-items:center;gap:0.75rem;font-size:0.75rem;color:#64748b}.attendance-register-legend-item{display:inline-flex;align-items:center;gap:0.4rem}.register-swatch{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;border:1px solid rgba(148,163,184,0.45);font-size:0.65rem;font-weight:700;line-height:1}.attendance-register-scroll{max-height:22rem;overflow:auto;background:linear-gradient(180deg, #f8faf9 0%, #fff 12px),#fff}.attendance-register{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%;font-size:0.75rem;table-layout:fixed}.attendance-register th,.attendance-register td{border-right:1px solid rgba(148,163,184,0.35);border-bottom:1px solid rgba(148,163,184,0.35);vertical-align:middle;box-sizing:border-box}.attendance-register thead th{border-top:1px solid rgba(148,163,184,0.45)}.attendance-register tr>:first-child{border-left:1px solid rgba(148,163,184,0.45)}.attendance-register .register-name-col{position:sticky;left:0;z-index:2;width:9.5rem;min-width:9.5rem;max-width:9.5rem;padding:0.4rem 0.65rem;text-align:left;background:#fff;box-shadow:4px 0 8px -6px rgba(15,23,42,0.18);overflow:hidden}.attendance-register tbody .register-name-col{display:flex;align-items:center;white-space:nowrap}.attendance-register thead .register-name-col{top:0;z-index:4;background:#f1f5f3}.attendance-register .register-day-col{width:2rem;min-width:2rem;max-width:2rem;padding:0;text-align:center}.attendance-register thead .register-day-col{position:sticky;top:0;z-index:3;height:2.75rem;padding:0.25rem 0.1rem;background:#f8faf9;color:#475569;font-weight:600;line-height:1.15;user-select:none}.attendance-register thead .register-day-col.is-weekend{background-color:#f3f0e8;color:#92400e}.attendance-register tbody td.register-day-col.is-weekend.register-empty{background-color:#f3f0e8}.attendance-register tbody tr.is-zebra .register-name-col{background:#f8faf9}.attendance-register tbody tr.is-zebra td.register-day-col.register-empty{background-color:#f8faf9}.attendance-register tbody tr.is-zebra td.register-day-col.is-weekend.register-empty{background-color:#eee9df}.attendance-register tbody tr:hover .register-name-col{background-color:#ecfdf5}.attendance-register tbody tr:hover td.register-day-col.register-empty{background-color:#ecfdf5}.attendance-register tbody tr:hover td.register-day-col.is-weekend.register-empty{background-color:#e7f5ee}.register-roll-label{font-size:0.65rem;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;color:#64748b}.register-roll{display:inline-block;min-width:1.4rem;margin-right:0.4rem;font-variant-numeric:tabular-nums;font-size:0.65rem;font-weight:700;color:#94a3b8}.register-student-name{flex:1;min-width:0;font-weight:600;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.register-dow{display:block;font-size:0.55rem;font-weight:600;letter-spacing:0.02em;text-transform:uppercase;color:#94a3b8}.attendance-register thead .register-day-col.is-weekend .register-dow{color:#b45309}.register-dom{display:block;margin-top:1px;font-size:0.7rem;font-weight:700;color:#334155}.attendance-register thead .register-day-col.is-weekend .register-dom{color:#92400e}.register-mark{height:1.85rem;font-size:0.7rem;font-weight:800;letter-spacing:0.02em;line-height:1;cursor:default}.attendance-register td.register-mark.register-present{background:#059669;color:#ecfdf5}.attendance-register td.register-mark.register-absent{background:#ef4444;color:#fff}.attendance-register td.register-mark.register-late{background:#f59e0b;color:#fffbeb}.attendance-register td.register-mark.register-empty{color:transparent}.register-swatch.register-present{background:#059669;border-color:#047857;color:#ecfdf5}.register-swatch.register-absent{background:#ef4444;border-color:#dc2626;color:#fff}.register-swatch.register-empty{background:#e8efeb;color:#94a3b8}.attendance-card{cursor:pointer;user-select:none;border:2px solid transparent;transition:border-color 0.15s ease, background-color 0.15s ease, transform 0.12s ease}.attendance-card:hover{transform:translateY(-1px)}.attendance-card.is-present{border-color:#059669;background:#ecfdf5}.attendance-card.is-absent{border-color:#f87171;background:#fef2f2}.attendance-card.is-unmarked{border-color:rgba(148,163,184,0.35);background:#fff}.attendance-step{display:flex;align-items:center;gap:0.5rem;font-size:0.8rem;font-weight:600;color:#64748b}.attendance-step.is-active{color:var(--color-primary)}.attendance-step-num{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;border-radius:9999px;background:#e8efeb;font-size:0.75rem}.attendance-step.is-active .attendance-step-num{background:var(--color-primary);color:#fff}.attendance-sticky-bar{position:sticky;bottom:0;z-index:20;border-top:1px solid rgba(148,163,184,0.25);background:rgba(255,255,255,0.92);backdrop-filter:blur(10px);padding:1rem 1.25rem}.school-tour-popover.driver-popover{max-width:22rem;border:1px solid rgba(148,163,184,0.35);border-radius:1rem;background:#fff;box-shadow:0 12px 32px rgba(15,23,42,0.14);color:var(--color-ink);font-family:'Plus Jakarta Sans', ui-sans-serif, system-ui, sans-serif}.school-tour-popover .driver-popover-title{font-size:1rem;font-weight:700;color:var(--color-ink)}.school-tour-popover .driver-popover-description{font-size:0.875rem;line-height:1.5;color:var(--color-ink-muted)}.school-tour-popover .driver-popover-progress-text{font-size:0.75rem;color:#64748b}.school-tour-popover .driver-popover-close-btn{color:#64748b}.school-tour-popover .driver-popover-footer-btn{border-radius:0.75rem;border:1px solid rgba(148,163,184,0.45);background:#fff;color:var(--color-ink);font-size:0.8125rem;font-weight:600;padding:0.45rem 0.85rem;text-shadow:none}.school-tour-popover .driver-popover-next-btn{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.school-tour-popover .driver-popover-next-btn:hover,.school-tour-popover .driver-popover-next-btn:focus{background:#065f46;border-color:#065f46;color:#fff}.school-tour-popover .driver-popover-arrow-side-left{border-left-color:#fff}.school-tour-popover .driver-popover-arrow-side-right{border-right-color:#fff}.school-tour-popover .driver-popover-arrow-side-top{border-top-color:#fff}.school-tour-popover .driver-popover-arrow-side-bottom{border-bottom-color:#fff}.school-tour-dont-show{display:flex;align-items:flex-start;gap:0.5rem;margin-top:0.85rem;font-size:0.75rem;font-weight:500;color:#64748b;cursor:pointer}.school-tour-dont-show-input{margin-top:0.15rem;accent-color:var(--color-primary)}body.driver-active.driver-no-scroll{overflow:auto !important}.print-only{display:none}.print-blank-field{display:none}@media print{@page{size:A4 portrait;margin:8mm 10mm}.no-print,nav,aside,.sidebar,header,footer,.flash,[data-controller='toast']{display:none !important}.print-only{display:block !important}html,body{background:white !important;color:#0f172a !important;font-size:9pt !important;line-height:1.25 !important;-webkit-print-color-adjust:exact;print-color-adjust:exact}main,.ui-main,.content,#main-content{padding:0 !important;margin:0 !important;max-width:none !important}.enrollment-print-header{margin:0 0 4mm !important;padding-bottom:2mm;border-bottom:1.5pt solid #0f172a}.enrollment-print-header h1{font-size:13pt !important;margin:0 !important;line-height:1.2 !important}.enrollment-print-header p{font-size:9pt !important;margin:1mm 0 0 !important;line-height:1.2 !important}.enrollment-print-form{max-width:none !important;width:100% !important;margin:0 !important;padding:0 !important;gap:0 !important;row-gap:0 !important;zoom:0.92}.enrollment-print-form.space-y-6>:not([hidden])~:not([hidden]){margin-top:2.5mm !important}.enrollment-print-form .ui-panel,.enrollment-print-form .print-section{box-shadow:none !important;border:1pt solid #64748b !important;border-radius:0 !important;padding:2.5mm 3mm !important;margin:0 !important;background:white !important;break-inside:avoid;page-break-inside:avoid}.enrollment-print-form .print-section h2{font-size:10pt !important;margin:0 0 2mm !important;padding:0 0 1mm !important;border-bottom:0.75pt solid #94a3b8 !important;font-weight:700 !important}.enrollment-print-form .enrollment-print-grid{display:grid !important;grid-template-columns:1fr 1fr !important;gap:2mm 4mm !important}.enrollment-print-form .enrollment-print-field{min-width:0}.enrollment-print-form .ui-field-label{display:block !important;font-size:7.5pt !important;font-weight:600 !important;margin:0 0 0.8mm !important;color:#0f172a !important;letter-spacing:0 !important;text-transform:none !important}.enrollment-print-form .ui-input,.enrollment-print-form input.ui-input,.enrollment-print-form textarea.ui-input{border:none !important;border-bottom:0.75pt solid #334155 !important;border-radius:0 !important;background:transparent !important;box-shadow:none !important;color:#0f172a !important;font-size:9pt !important;min-height:5mm !important;height:5.5mm !important;padding:0 1mm 0.5mm !important;width:100% !important;-webkit-appearance:none !important;appearance:none !important}.enrollment-print-form textarea.ui-input{min-height:10mm !important;height:10mm !important;resize:none !important}.enrollment-print-form select.ui-input,.enrollment-print-form input.ui-input[type='date']{display:none !important}.enrollment-print-form .print-blank-field{display:block !important;width:100% !important;min-height:5.5mm !important;height:5.5mm !important;border:none !important;border-bottom:0.75pt solid #334155 !important;background:transparent !important;margin:0 !important;padding:0 !important}.enrollment-print-signatures{display:grid !important;grid-template-columns:1fr 1fr !important;gap:8mm !important;margin-top:6mm !important;padding-top:3mm !important}.enrollment-print-sign span{display:block;margin-top:1.5mm;font-size:7.5pt;color:#334155}.enrollment-print-sign .print-blank-field{min-height:10mm !important;height:10mm !important}.ui-input,select.ui-input,textarea.ui-input{print-color-adjust:exact}}.classes-gallery{--cg-primary-bg: #eef8f3;--cg-primary-btn: var(--color-primary, #047857);--cg-soft-bg: #f1f5f9;--cg-soft-btn: #334155}.classes-gallery__stats{display:grid;grid-template-columns:repeat(1, minmax(0, 1fr));gap:0.75rem;margin-bottom:1rem}@media (min-width: 768px){.classes-gallery__stats{grid-template-columns:repeat(3, minmax(0, 1fr))}}.classes-gallery__stat{display:flex;align-items:center;gap:0.75rem;background:#fff;border:1px solid rgba(148,163,184,0.18);border-radius:0.9rem;padding:0.85rem 1rem;box-shadow:0 4px 12px rgba(15,23,42,0.03)}.classes-gallery__stat-icon{display:inline-flex;align-items:center;justify-content:center;width:2.35rem;height:2.35rem;border-radius:0.7rem;flex-shrink:0}.classes-gallery__stat-icon--green{background:#dcfce7;color:#047857}.classes-gallery__stat-icon--purple{background:#e2e8f0;color:#334155}.classes-gallery__stat-icon--blue{background:#e2e8f0;color:#475569}.classes-gallery__toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:0.75rem;margin-bottom:1rem}.classes-gallery__search{flex:1 1 14rem;min-width:12rem}.classes-gallery__view-toggle{display:inline-flex;align-items:center;gap:0.25rem;padding:0.25rem;border-radius:0.75rem;background:#fff;border:1px solid rgba(148,163,184,0.2)}.classes-gallery__view-btn{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border-radius:0.55rem;color:#94a3b8;transition:background 0.15s ease, color 0.15s ease}.classes-gallery__view-btn.is-active{background:#dcfce7;color:#15803d}.classes-gallery__grid{display:grid;grid-template-columns:repeat(1, minmax(0, 1fr));gap:0.85rem}@media (min-width: 640px){.classes-gallery__grid{grid-template-columns:repeat(2, minmax(0, 1fr))}}@media (min-width: 900px){.classes-gallery__grid{grid-template-columns:repeat(3, minmax(0, 1fr))}}@media (min-width: 1100px){.classes-gallery__grid{grid-template-columns:repeat(4, minmax(0, 1fr))}}@media (min-width: 1400px){.classes-gallery__grid{grid-template-columns:repeat(5, minmax(0, 1fr))}}.classes-gallery__list{display:flex;flex-direction:column;gap:0.65rem}.class-card{position:relative;display:flex;flex-direction:column;min-height:10.5rem;border-radius:1rem;padding:0.85rem 0.9rem 0.85rem;overflow:hidden;border:1px solid rgba(148,163,184,0.16);box-shadow:0 6px 16px rgba(15,23,42,0.04);transition:transform 0.18s ease, box-shadow 0.18s ease}.class-card:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(15,23,42,0.07)}.class-card.is-open{z-index:30;overflow:visible}.class-card__check{position:absolute;top:0.75rem;left:0.75rem;z-index:3}.class-card__content{position:relative;z-index:2;display:flex;flex-direction:column;flex:1}.class-card:has(.class-card__check) .class-card__content{padding-left:1.25rem}.class-card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:0.5rem}.class-card__title{font-family:'Plus Jakarta Sans', ui-sans-serif, system-ui, sans-serif;font-size:1.05rem;font-weight:750;letter-spacing:-0.02em;color:#0f172a;line-height:1.2}.class-card__tagline{margin-top:0.15rem;font-size:0.75rem;color:#64748b}.class-card__menu-btn{display:inline-flex;align-items:center;justify-content:center;width:1.6rem;height:1.6rem;border-radius:9999px;color:#94a3b8;background:rgba(255,255,255,0.65)}.class-card__menu-btn:hover{color:#334155;background:#fff}.class-card__body{position:relative;z-index:2;display:flex;align-items:flex-end;justify-content:space-between;gap:0.5rem;margin-top:auto;padding-top:0.85rem;min-height:2.75rem}.class-card__meta{display:inline-flex;align-items:center;gap:0.3rem;font-size:0.75rem;font-weight:600;color:#475569}.class-card__glyph{position:absolute;right:0.2rem;bottom:0;width:3.25rem;height:3.25rem;display:flex;align-items:center;justify-content:center;font-size:1.65rem;line-height:1;opacity:0.55;pointer-events:none;user-select:none}.class-card__actions{position:relative;z-index:2;display:flex;align-items:center;gap:0.4rem;margin-top:0.75rem}.class-card__view{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:0.3rem;border-radius:9999px;padding:0.5rem 0.7rem;font-size:0.72rem;font-weight:700;color:#fff;box-shadow:0 4px 10px rgba(15,23,42,0.1);transition:filter 0.15s ease}.class-card__view:hover{filter:brightness(1.05);color:#fff}.class-card__sections{display:inline-flex;align-items:center;gap:0.2rem;border-radius:9999px;padding:0.5rem 0.7rem;font-size:0.72rem;font-weight:650;background:rgba(255,255,255,0.8);color:#334155;border:1px solid rgba(148,163,184,0.25)}.class-card__sections:hover{background:#fff}.class-card--primary{background:linear-gradient(160deg, var(--cg-primary-bg), #fff)}.class-card--primary .class-card__view{background:var(--cg-primary-btn)}.class-card--soft{background:linear-gradient(160deg, var(--cg-soft-bg), #fff)}.class-card--soft .class-card__view{background:var(--cg-soft-btn)}.class-card--list{min-height:0;flex-direction:row;align-items:center;gap:0.75rem;padding:0.7rem 0.9rem}.class-card--list .class-card__check{position:static}.class-card--list .class-card__content{padding-left:0;flex:1;min-width:0}.class-card--list .class-card__body{display:none}.class-card--list .class-card__glyph{position:static;width:2.5rem;height:2.5rem;font-size:1.25rem;flex-shrink:0;order:-1;opacity:0.7}.class-card--list .class-card__actions{margin-top:0;flex-shrink:0}.classes-gallery__footer-note{margin-top:1.5rem;text-align:right;font-family:'Caveat', 'Segoe Script', cursive;font-size:1.2rem;color:#94a3b8}
