@import url(https://fonts.googleapis.com/css2?family=Fredoka+One:wght@400&display=swap);*,
*::before,
*::after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px}:root{--font-primary:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI','Roboto',sans-serif;--font-heading:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI','Roboto',sans-serif;--font-mono:'Fira Code','Monaco','Consolas','Courier New',monospace;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.2;--line-height-normal:1.5;--line-height-relaxed:1.75;--primary-yellow:#fbbf24;--primary-yellow-light:#fef3c7;--primary-yellow-dark:#d97706;--primary-yellow-darker:#b45309;--secondary-coral:#fb7185;--secondary-coral-light:#fecaca;--secondary-coral-dark:#e11d48;--accent-blue:#3b82f6;--accent-blue-light:#dbeafe;--accent-blue-dark:#1d4ed8;--accent-green:#10b981;--accent-green-light:#d1fae5;--accent-green-dark:#047857;--accent-purple:#8b5cf6;--accent-purple-light:#e9d5ff;--accent-purple-dark:#6d28d9;--success:#10b981;--success-light:#d1fae5;--success-dark:#047857;--warning:#f59e0b;--warning-light:#fef3c7;--warning-dark:#d97706;--error:#ef4444;--error-light:#fecaca;--error-dark:#dc2626;--info:#3b82f6;--info-light:#dbeafe;--info-dark:#1d4ed8;--white:#ffffff;--gray-50:#f9fafb;--gray-100:#f3f4f6;--gray-200:#e5e7eb;--gray-300:#d1d5db;--gray-400:#9ca3af;--gray-500:#6b7280;--gray-600:#4b5563;--gray-700:#374151;--gray-800:#1f2937;--gray-900:#111827;--text-primary:var(--gray-900);--text-secondary:var(--gray-600);--text-muted:var(--gray-500);--text-inverse:var(--white);--bg-primary:var(--white);--bg-secondary:var(--gray-50);--bg-tertiary:var(--gray-100);--bg-inverse:var(--gray-900);--border-light:var(--gray-200);--border-medium:var(--gray-300);--border-dark:var(--gray-400);--border-primary:var(--primary-yellow);--border-secondary:var(--secondary-coral);--border-focus:var(--primary-yellow);--border-error:var(--error);--space-0:0;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--space-32:8rem;--space-40:10rem;--space-48:12rem;--space-56:14rem;--space-64:16rem;--space-72:18rem;--space-80:20rem;--space-96:24rem;--radius-none:0;--radius-sm:0.125rem;--radius-md:0.375rem;--radius-lg:0.5rem;--radius-xl:0.75rem;--radius-2xl:1rem;--radius-3xl:1.5rem;--radius-full:9999px;--shadow-xs:0 1px 2px 0 rgba(0,0,0,0.05);--shadow-sm:0 1px 3px 0 rgba(0,0,0,0.1),0 1px 2px 0 rgba(0,0,0,0.06);--shadow-md:0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -1px rgba(0,0,0,0.06);--shadow-lg:0 10px 15px -3px rgba(0,0,0,0.1),0 4px 6px -2px rgba(0,0,0,0.05);--shadow-xl:0 20px 25px -5px rgba(0,0,0,0.1),0 10px 10px -5px rgba(0,0,0,0.04);--shadow-2xl:0 25px 50px -12px rgba(0,0,0,0.25);--shadow-playful:0 4px 14px 0 rgba(251,191,36,0.15);--shadow-playful-hover:0 6px 20px 0 rgba(251,191,36,0.25);--shadow-card:0 1px 3px 0 rgba(0,0,0,0.1),0 1px 2px 0 rgba(0,0,0,0.06);--shadow-card-hover:0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -1px rgba(0,0,0,0.06);--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem;--font-size-5xl:3rem;--font-size-6xl:3.75rem;--font-size-7xl:4.5rem;--font-size-8xl:6rem;--font-size-9xl:8rem;--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-modal-backdrop:1040;--z-modal:1050;--z-popover:1060;--z-tooltip:1070;--z-toast:1080;--transition-all:all 0.15s ease-in-out;--transition-colors:color 0.15s ease-in-out,background-color 0.15s ease-in-out,border-color 0.15s ease-in-out;--transition-opacity:opacity 0.15s ease-in-out;--transition-transform:transform 0.15s ease-in-out;--transition-fast:0.15s ease-in-out;--transition-normal:0.3s ease-in-out;--transition-slow:0.5s ease-in-out;--gradient-primary:linear-gradient(135deg,var(--primary-yellow) 0%,var(--primary-yellow-dark) 100%);--gradient-secondary:linear-gradient(135deg,var(--secondary-coral) 0%,var(--secondary-coral-dark) 100%);--gradient-warm:linear-gradient(135deg,#ffe6a8 0%,var(--secondary-coral) 100%);--gradient-cool:linear-gradient(135deg,var(--accent-blue) 0%,var(--accent-purple) 100%);--gradient-success:linear-gradient(135deg,var(--success) 0%,var(--success-dark) 100%);--btn-height-xs:1.5rem;--btn-height-sm:2rem;--btn-height-md:2.5rem;--btn-height-lg:3rem;--btn-height-xl:3.5rem;--btn-padding-xs:0.25rem 0.5rem;--btn-padding-sm:0.5rem 1rem;--btn-padding-md:0.75rem 1.5rem;--btn-padding-lg:1rem 2rem;--btn-padding-xl:1.25rem 2.5rem;--btn-font-size-xs:0.75rem;--btn-font-size-sm:0.875rem;--btn-font-size-md:1rem;--btn-font-size-lg:1.125rem;--btn-font-size-xl:1.25rem;--header-height:4rem;--sidebar-width:16rem;--sidebar-collapsed-width:4rem;--content-max-width:75rem}body{background-color:#f9fafb;background-color:var(--bg-secondary);color:#111827;color:var(--text-primary);font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI','Roboto',sans-serif;font-family:var(--font-primary);font-weight:400;font-weight:var(--font-weight-normal);line-height:1.5;line-height:var(--line-height-normal)}h1, h2, h3, h4, h5, h6{color:#111827;color:var(--text-primary);font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI','Roboto',sans-serif;font-family:var(--font-heading);font-weight:600;font-weight:var(--font-weight-semibold);letter-spacing:-0.025em;line-height:1.2;line-height:var(--line-height-tight)}h1{font-size:2.25rem;font-size:var(--font-size-4xl);font-weight:700;font-weight:var(--font-weight-bold);letter-spacing:-0.05em}h2{font-size:1.875rem;font-size:var(--font-size-3xl);font-weight:700;font-weight:var(--font-weight-bold)}h3{font-size:1.5rem;font-size:var(--font-size-2xl);font-weight:600;font-weight:var(--font-weight-semibold)}h4{font-size:1.25rem;font-size:var(--font-size-xl);font-weight:600;font-weight:var(--font-weight-semibold)}h5{font-size:1.125rem;font-size:var(--font-size-lg);font-weight:500;font-weight:var(--font-weight-medium)}h6{font-size:1rem;font-size:var(--font-size-base);font-weight:500;font-weight:var(--font-weight-medium)}p{color:#4b5563;color:var(--text-secondary);line-height:1.75;line-height:var(--line-height-relaxed);margin-bottom:1em}*:focus{outline:2px solid #fbbf24;outline:2px solid var(--primary-yellow);outline-offset:2px}*:focus:not(:focus-visible){outline:none}.btn{align-items:center;border:none;border-radius:0.5rem;border-radius:var(--radius-lg);box-shadow:0 4px 14px 0 rgba(251,191,36,0.15);box-shadow:var(--shadow-playful);cursor:pointer;display:inline-flex;font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI','Roboto',sans-serif;font-family:var(--font-primary);font-weight:500;font-weight:var(--font-weight-medium);gap:0.5rem;gap:var(--space-2);justify-content:center;line-height:1;overflow:hidden;position:relative;text-decoration:none;transition:all 0.15s ease-in-out;transition:var(--transition-all)}.btn:disabled{cursor:not-allowed;opacity:0.6;pointer-events:none}.btn:focus{outline:2px solid #fbbf24;outline:2px solid var(--border-focus);outline-offset:2px}.btn-xs{font-size:0.75rem;font-size:var(--btn-font-size-xs);height:1.5rem;height:var(--btn-height-xs);min-width:60px;padding:0.25rem 0.5rem;padding:var(--btn-padding-xs)}.btn-sm{font-size:0.875rem;font-size:var(--btn-font-size-sm);height:2rem;height:var(--btn-height-sm);min-width:80px;padding:0.5rem 1rem;padding:var(--btn-padding-sm)}.btn-md{font-size:1rem;font-size:var(--btn-font-size-md);height:2.5rem;height:var(--btn-height-md);min-width:120px;padding:0.75rem 1.5rem;padding:var(--btn-padding-md)}.btn-lg{font-size:1.125rem;font-size:var(--btn-font-size-lg);height:3rem;height:var(--btn-height-lg);min-width:160px;padding:1rem 2rem;padding:var(--btn-padding-lg)}.btn-xl{font-size:1.25rem;font-size:var(--btn-font-size-xl);height:3.5rem;height:var(--btn-height-xl);min-width:200px;padding:1.25rem 2.5rem;padding:var(--btn-padding-xl)}.btn-primary{background:linear-gradient(135deg,#fbbf24 0%,#d97706 100%);background:var(--gradient-primary);border:1px solid transparent;color:#ffffff;color:var(--text-inverse)}.btn-primary:hover:not(:disabled){box-shadow:0 6px 20px 0 rgba(251,191,36,0.25);box-shadow:var(--shadow-playful-hover);transform:translateY(-1px)}.btn-secondary{background:#f9fafb;background:var(--bg-secondary);border:1px solid #fbbf24;border:1px solid var(--border-primary);color:#111827;color:var(--text-primary)}.btn-secondary:hover:not(:disabled){background:#f3f4f6;background:var(--bg-tertiary);border-color:#fb7185;border-color:var(--border-secondary);transform:translateY(-1px)}.btn-success{background:linear-gradient(135deg,#10b981 0%,#047857 100%);background:var(--gradient-success);border:1px solid transparent;color:#ffffff;color:var(--text-inverse)}.btn-success:hover:not(:disabled){background:#047857;background:var(--success-dark);box-shadow:0 4px 20px rgba(16,185,129,0.25);transform:translateY(-1px)}.btn-warning{background:#f59e0b;background:var(--warning);border:1px solid transparent;color:#ffffff;color:var(--text-inverse)}.btn-warning:hover:not(:disabled){background:#d97706;background:var(--warning-dark);box-shadow:0 4px 20px rgba(245,158,11,0.25);transform:translateY(-1px)}.btn-error{background:#ef4444;background:var(--error);border:1px solid transparent;color:#ffffff;color:var(--text-inverse)}.btn-error:hover:not(:disabled){background:#dc2626;background:var(--error-dark);box-shadow:0 4px 20px rgba(239,68,68,0.25);transform:translateY(-1px)}.btn-danger{background:#ef4444;background:var(--error);border:1px solid transparent;color:#ffffff;color:var(--text-inverse)}.btn-danger:hover:not(:disabled){background:#dc2626;background:var(--error-dark);box-shadow:0 4px 20px rgba(239,68,68,0.25);transform:translateY(-1px)}.btn-outline{background:transparent;border:1px solid #fbbf24;border:1px solid var(--border-primary);color:#111827;color:var(--text-primary)}.btn-outline:hover:not(:disabled){background:#f9fafb;background:var(--bg-secondary);border-color:#fb7185;border-color:var(--border-secondary);transform:translateY(-1px)}.card{background:#ffffff;background:var(--bg-primary);border-radius:0.75rem;border-radius:var(--radius-xl);box-shadow:0 1px 3px 0 rgba(0,0,0,0.1),0 1px 2px 0 rgba(0,0,0,0.06);box-shadow:var(--shadow-card);overflow:hidden;transition:all 0.15s ease-in-out;transition:var(--transition-all)}.card:hover{box-shadow:0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -1px rgba(0,0,0,0.06);box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.card-header{background:#f9fafb;background:var(--bg-secondary);border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-light);padding:1.5rem;padding:var(--space-6)}.card-body{padding:1.5rem;padding:var(--space-6)}.card-footer{background:#f9fafb;background:var(--bg-secondary);border-top:1px solid #e5e7eb;border-top:1px solid var(--border-light);padding:1.5rem;padding:var(--space-6)}.form-input{background:#ffffff;background:var(--bg-primary);border:1px solid #d1d5db;border:1px solid var(--border-medium);border-radius:0.375rem;border-radius:var(--radius-md);color:#111827;color:var(--text-primary);font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI','Roboto',sans-serif;font-family:var(--font-primary);font-size:1rem;font-size:var(--font-size-base);line-height:1.5;line-height:var(--line-height-normal);padding:0.75rem 1rem;padding:var(--space-3) var(--space-4);transition:color 0.15s ease-in-out,background-color 0.15s ease-in-out,border-color 0.15s ease-in-out;transition:var(--transition-colors)}.form-input:focus{border-color:#fbbf24;border-color:var(--border-focus);box-shadow:0 0 0 3px rgba(251,191,36,0.1)}.form-input:disabled{background:#f3f4f6;background:var(--bg-tertiary);color:#6b7280;color:var(--text-muted);cursor:not-allowed}.form-input.error{border-color:var(--border-error)}.form-input.error:focus{box-shadow:0 0 0 3px rgba(239,68,68,0.1)}.form-label{color:#111827;color:var(--text-primary);display:block;font-weight:500;font-weight:var(--font-weight-medium);margin-bottom:0.5rem;margin-bottom:var(--space-2)}.form-error{color:#ef4444;color:var(--error);font-size:0.875rem;font-size:var(--font-size-sm);margin-top:0.25rem;margin-top:var(--space-1)}.badge{align-items:center;border-radius:9999px;border-radius:var(--radius-full);display:inline-flex;font-size:0.75rem;font-size:var(--font-size-xs);font-weight:500;font-weight:var(--font-weight-medium);letter-spacing:0.05em;padding:0.25rem 0.5rem;padding:var(--space-1) var(--space-2);text-transform:uppercase}.badge-primary{background:#fef3c7;background:var(--primary-yellow-light);color:#d97706;color:var(--primary-yellow-dark)}.badge-success{background:#d1fae5;background:var(--success-light);color:#047857;color:var(--success-dark)}.badge-warning{background:#fef3c7;background:var(--warning-light);color:#d97706;color:var(--warning-dark)}.badge-error{background:#fecaca;background:var(--error-light);color:#dc2626;color:var(--error-dark)}.badge-info{background:#dbeafe;background:var(--info-light);color:#1d4ed8;color:var(--info-dark)}.modal-overlay{padding:1rem;padding:var(--space-4);z-index:1050;z-index:var(--z-modal)}.modal-content{background:var(--bg-primary);border-radius:0.75rem;border-radius:var(--radius-xl);box-shadow:0 25px 50px -12px rgba(0,0,0,0.25);box-shadow:var(--shadow-2xl);max-width:90vw;overflow:auto}.table{background:#ffffff;background:var(--bg-primary);border-collapse:collapse;border-radius:0.5rem;border-radius:var(--radius-lg);box-shadow:0 1px 3px 0 rgba(0,0,0,0.1),0 1px 2px 0 rgba(0,0,0,0.06);box-shadow:var(--shadow-card);overflow:hidden;width:100%}.table th,
.table td{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-light);padding:0.75rem 1rem;padding:var(--space-3) var(--space-4);text-align:left}.table th{background:#f9fafb;background:var(--bg-secondary);color:#111827;color:var(--text-primary);font-size:0.875rem;font-size:var(--font-size-sm);font-weight:600;font-weight:var(--font-weight-semibold)}.table td{color:#4b5563;color:var(--text-secondary)}.table tbody tr:hover{background:#f9fafb;background:var(--bg-secondary)}.loading{opacity:0.6;pointer-events:none}.skeleton{animation:loading 1.5s infinite;background:linear-gradient(90deg,#f3f4f6 25%,#f9fafb 50%,#f3f4f6 75%);background:linear-gradient(90deg,var(--bg-tertiary) 25%,var(--bg-secondary) 50%,var(--bg-tertiary) 75%);background-size:200% 100%}@keyframes loading{0%{background-position:200% 0}100%{background-position:-200% 0}}.spinner{border:2px solid #e5e7eb;border-top:2px solid #fbbf24;border:2px solid var(--border-light);border-top-color:var(--primary-yellow);height:1rem;width:1rem}.container{margin:0 auto;max-width:75rem;max-width:var(--content-max-width);padding:0 1rem;padding:0 var(--space-4);width:100%}.container-sm{max-width:640px}.container-md{max-width:768px}.container-lg{max-width:1024px}.container-xl{max-width:1280px}.container-2xl{max-width:1536px}.text-xs{font-size:0.75rem;font-size:var(--font-size-xs)}.text-sm{font-size:0.875rem;font-size:var(--font-size-sm)}.text-base{font-size:1rem;font-size:var(--font-size-base)}.text-lg{font-size:1.125rem;font-size:var(--font-size-lg)}.text-xl{font-size:1.25rem;font-size:var(--font-size-xl)}.text-2xl{font-size:1.5rem;font-size:var(--font-size-2xl)}.text-3xl{font-size:1.875rem;font-size:var(--font-size-3xl)}.text-4xl{font-size:2.25rem;font-size:var(--font-size-4xl)}.text-5xl{font-size:3rem;font-size:var(--font-size-5xl)}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-light{font-weight:300;font-weight:var(--font-weight-light)}.font-normal{font-weight:400;font-weight:var(--font-weight-normal)}.font-medium{font-weight:500;font-weight:var(--font-weight-medium)}.font-semibold{font-weight:600;font-weight:var(--font-weight-semibold)}.font-bold{font-weight:700;font-weight:var(--font-weight-bold)}.text-primary{color:#111827;color:var(--text-primary)}.text-secondary{color:#4b5563;color:var(--text-secondary)}.text-muted{color:#6b7280;color:var(--text-muted)}.text-inverse{color:#ffffff;color:var(--text-inverse)}.bg-primary{background-color:#ffffff;background-color:var(--bg-primary)}.bg-secondary{background-color:#f9fafb;background-color:var(--bg-secondary)}.bg-tertiary{background-color:#f3f4f6;background-color:var(--bg-tertiary)}.bg-inverse{background-color:#111827;background-color:var(--bg-inverse)}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.items-start{align-items:flex-start}.items-center{align-items:center}.items-end{align-items:flex-end}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.gap-1{gap:0.25rem;gap:var(--space-1)}.gap-2{gap:0.5rem;gap:var(--space-2)}.gap-3{gap:0.75rem;gap:var(--space-3)}.gap-4{gap:1rem;gap:var(--space-4)}.gap-5{gap:1.25rem;gap:var(--space-5)}.gap-6{gap:1.5rem;gap:var(--space-6)}.gap-8{gap:2rem;gap:var(--space-8)}.p-0{padding:0;padding:var(--space-0)}.p-1{padding:0.25rem;padding:var(--space-1)}.p-2{padding:0.5rem;padding:var(--space-2)}.p-3{padding:0.75rem;padding:var(--space-3)}.p-4{padding:1rem;padding:var(--space-4)}.p-5{padding:1.25rem;padding:var(--space-5)}.p-6{padding:1.5rem;padding:var(--space-6)}.p-8{padding:2rem;padding:var(--space-8)}.px-0{padding-left:0;padding-left:var(--space-0);padding-right:0;padding-right:var(--space-0)}.px-1{padding-left:0.25rem;padding-left:var(--space-1);padding-right:0.25rem;padding-right:var(--space-1)}.px-2{padding-left:0.5rem;padding-left:var(--space-2);padding-right:0.5rem;padding-right:var(--space-2)}.px-3{padding-left:0.75rem;padding-left:var(--space-3);padding-right:0.75rem;padding-right:var(--space-3)}.px-4{padding-left:1rem;padding-left:var(--space-4);padding-right:1rem;padding-right:var(--space-4)}.px-5{padding-left:1.25rem;padding-left:var(--space-5);padding-right:1.25rem;padding-right:var(--space-5)}.px-6{padding-left:1.5rem;padding-left:var(--space-6);padding-right:1.5rem;padding-right:var(--space-6)}.px-8{padding-left:2rem;padding-left:var(--space-8);padding-right:2rem;padding-right:var(--space-8)}.py-0{padding-bottom:0;padding-bottom:var(--space-0);padding-top:0;padding-top:var(--space-0)}.py-1{padding-bottom:0.25rem;padding-bottom:var(--space-1);padding-top:0.25rem;padding-top:var(--space-1)}.py-2{padding-bottom:0.5rem;padding-bottom:var(--space-2);padding-top:0.5rem;padding-top:var(--space-2)}.py-3{padding-bottom:0.75rem;padding-bottom:var(--space-3);padding-top:0.75rem;padding-top:var(--space-3)}.py-4{padding-bottom:1rem;padding-bottom:var(--space-4);padding-top:1rem;padding-top:var(--space-4)}.py-5{padding-bottom:1.25rem;padding-bottom:var(--space-5);padding-top:1.25rem;padding-top:var(--space-5)}.py-6{padding-bottom:1.5rem;padding-bottom:var(--space-6);padding-top:1.5rem;padding-top:var(--space-6)}.py-8{padding-bottom:2rem;padding-bottom:var(--space-8);padding-top:2rem;padding-top:var(--space-8)}.m-0{margin:0;margin:var(--space-0)}.m-1{margin:0.25rem;margin:var(--space-1)}.m-2{margin:0.5rem;margin:var(--space-2)}.m-3{margin:0.75rem;margin:var(--space-3)}.m-4{margin:1rem;margin:var(--space-4)}.m-5{margin:1.25rem;margin:var(--space-5)}.m-6{margin:1.5rem;margin:var(--space-6)}.m-8{margin:2rem;margin:var(--space-8)}.mx-auto{margin-left:auto;margin-right:auto}.my-auto{margin-bottom:auto;margin-top:auto}.rounded-none{border-radius:0;border-radius:var(--radius-none)}.rounded-sm{border-radius:0.125rem;border-radius:var(--radius-sm)}.rounded-md{border-radius:0.375rem;border-radius:var(--radius-md)}.rounded-lg{border-radius:0.5rem;border-radius:var(--radius-lg)}.rounded-xl{border-radius:0.75rem;border-radius:var(--radius-xl)}.rounded-2xl{border-radius:1rem;border-radius:var(--radius-2xl)}.rounded-3xl{border-radius:1.5rem;border-radius:var(--radius-3xl)}.rounded-full{border-radius:9999px;border-radius:var(--radius-full)}.shadow-xs{box-shadow:0 1px 2px 0 rgba(0,0,0,0.05);box-shadow:var(--shadow-xs)}.shadow-sm{box-shadow:0 1px 3px 0 rgba(0,0,0,0.1),0 1px 2px 0 rgba(0,0,0,0.06);box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -1px rgba(0,0,0,0.06);box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:0 10px 15px -3px rgba(0,0,0,0.1),0 4px 6px -2px rgba(0,0,0,0.05);box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:0 20px 25px -5px rgba(0,0,0,0.1),0 10px 10px -5px rgba(0,0,0,0.04);box-shadow:var(--shadow-xl)}.shadow-2xl{box-shadow:0 25px 50px -12px rgba(0,0,0,0.25);box-shadow:var(--shadow-2xl)}.shadow-playful{box-shadow:0 4px 14px 0 rgba(251,191,36,0.15);box-shadow:var(--shadow-playful)}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:-webkit-sticky;position:sticky}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.overflow-scroll{overflow:scroll}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.w-full{width:100%}.w-auto{width:auto}.h-full{height:100%}.h-auto{height:auto}.min-h-screen{min-height:100vh}.transition-all{transition:all 0.15s ease-in-out;transition:var(--transition-all)}.transition-colors{transition:color 0.15s ease-in-out,background-color 0.15s ease-in-out,border-color 0.15s ease-in-out;transition:var(--transition-colors)}.transition-opacity{transition:opacity 0.15s ease-in-out;transition:var(--transition-opacity)}.transition-transform{transition:transform 0.15s ease-in-out;transition:var(--transition-transform)}@media (max-width: 768px){.container{padding:0 0.75rem;padding:0 var(--space-3)}h1{font-size:1.875rem;font-size:var(--font-size-3xl)}h2{font-size:1.5rem;font-size:var(--font-size-2xl)}h3{font-size:1.25rem;font-size:var(--font-size-xl)}.btn-lg{font-size:1rem;font-size:var(--btn-font-size-md);padding:0.75rem 1.5rem;padding:var(--btn-padding-md)}.card-header,
  .card-body,
  .card-footer{padding:1rem;padding:var(--space-4)}.modal-content{max-width:calc(100vw - 1rem);max-width:calc(100vw - var(--space-4))}}@media (max-width: 480px){.container{padding:0 0.5rem;padding:0 var(--space-2)}h1{font-size:1.5rem;font-size:var(--font-size-2xl)}h2{font-size:1.25rem;font-size:var(--font-size-xl)}h3{font-size:1.125rem;font-size:var(--font-size-lg)}.btn{min-width:auto}.modal-content{max-width:calc(100vw - 0.5rem);max-width:calc(100vw - var(--space-2))}}@keyframes bounce{0%, 20%, 53%, 80%, 100%{transform:translate3d(0,0,0)}40%, 43%{transform:translate3d(0,-8px,0)}70%{transform:translate3d(0,-4px,0)}90%{transform:translate3d(0,-2px,0)}}@keyframes pulse{0%, 100%{opacity:1}50%{opacity:0.5}}@keyframes wiggle{0%, 7%{transform:rotateZ(0)}15%{transform:rotateZ(-15deg)}20%{transform:rotateZ(10deg)}25%{transform:rotateZ(-10deg)}30%{transform:rotateZ(6deg)}35%{transform:rotateZ(-4deg)}40%, 100%{transform:rotateZ(0)}}.animate-bounce{animation:bounce 1s infinite}.animate-pulse{animation:pulse 2s cubic-bezier(0.4,0,0.6,1) infinite}.animate-wiggle{animation:wiggle 1s ease-in-out}code{background:#f3f4f6;background:var(--bg-tertiary);border-radius:0.125rem;border-radius:var(--radius-sm);color:#111827;color:var(--text-primary);font-family:'Fira Code','Monaco','Consolas','Courier New',monospace;font-family:var(--font-mono);font-size:0.875em;padding:0.125rem 0.25rem}pre{background:#f3f4f6;background:var(--bg-tertiary);border-radius:0.375rem;border-radius:var(--radius-md);font-family:'Fira Code','Monaco','Consolas','Courier New',monospace;font-family:var(--font-mono);margin:1rem 0;margin:var(--space-4) 0;overflow-x:auto;padding:1rem;padding:var(--space-4)}pre code{background:none;border-radius:0;padding:0}.App{min-height:100vh;text-align:center;width:100%}*{box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI','Roboto','Oxygen','Ubuntu','Cantarell','Fira Sans','Droid Sans','Helvetica Neue',sans-serif;margin:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,'Courier New',monospace}.loading-container{background:linear-gradient(135deg,var(--primary-yellow-light) 0%,#fef3c7 100%);font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;min-height:100vh}.loading-spinner{border-top:4px solid var(--gray-200);border:4px solid var(--gray-200);border-top-color:var(--primary-yellow);margin-bottom:var(--space-5)}.loading-container p{color:var(--text-primary);font-size:1.125rem;font-weight:500}.signin-container{align-items:center;background:linear-gradient(135deg,rgba(255,255,0,0.05) 0%,rgba(255,193,7,0.1) 50%,rgba(255,152,0,0.05) 100%);display:flex;font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;justify-content:center;min-height:100vh;overflow:hidden;padding:var(--space-5);position:relative}.signin-container::before{animation:backgroundFloat 20s linear infinite;background:url("data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 100 100\"><circle cx=\"20\" cy=\"20\" r=\"2\" fill=\"%23f59e0b\" opacity=\"0.1\"/><circle cx=\"80\" cy=\"40\" r=\"1.5\" fill=\"%23f97316\" opacity=\"0.1\"/><circle cx=\"40\" cy=\"80\" r=\"1\" fill=\"%23ef4444\" opacity=\"0.1\"/><circle cx=\"90\" cy=\"90\" r=\"2.5\" fill=\"%23ec4899\" opacity=\"0.1\"/><circle cx=\"10\" cy=\"60\" r=\"1.8\" fill=\"%238b5cf6\" opacity=\"0.1\"/></svg>") repeat;bottom:0;content:'';left:0;position:absolute;right:0;top:0;z-index:0}.signin-card{animation:slideUp 0.6s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(255,255,255,0.95);border:1px solid rgba(255,193,7,0.2);border-radius:24px;box-shadow:0 20px 40px rgba(0,0,0,0.1);max-width:500px;padding:50px;position:relative;width:100%;z-index:1}.signin-header{margin-bottom:30px;text-align:center}.signin-header h1{background:linear-gradient(135deg,#f59e0b 0%,#f97316 25%,#ef4444 50%,#ec4899 75%,#8b5cf6 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-family:'Fredoka One','Comic Sans MS',cursive,sans-serif;font-size:2.5rem;font-weight:700;margin-bottom:10px}.signin-header p{color:#6b7280;font-size:1.1rem;font-weight:500;margin:0}.auth-error{align-items:center;background:#ffebee;border:1px solid #ffcdd2;border-radius:10px;color:#c62828;display:flex;gap:10px;margin-bottom:20px;padding:15px}.error-icon{font-size:1.2rem}.signin-form{display:flex;flex-direction:column;gap:32px;width:100%}.form-group label{margin-bottom:12px}.form-group input{background:#fafbfc;border:2px solid #e1e5e9;border-radius:16px;box-sizing:border-box;font-size:1.1rem;line-height:1.5;min-height:60px;padding:20px 24px;text-align:center;text-indent:0;transition:all 0.3s ease}.form-group input:focus{background:white;border-color:#f59e0b;box-shadow:0 0 0 3px rgba(245,158,11,0.1);transform:translateY(-1px)}.form-group input::placeholder{color:#9ca3af;font-weight:500;text-align:center}.form-group input.error{background:#fdf2f2;border-color:#e74c3c}.form-group input.error:focus{box-shadow:0 0 0 3px rgba(231,76,60,0.1)}.password-input-wrapper input{padding-right:60px}.password-toggle-btn{align-items:center;border-radius:8px;display:flex;font-size:1.5rem;justify-content:center;padding:8px;transition:all 0.2s ease}.password-toggle-btn:hover{background:rgba(245,158,11,0.1)}.password-toggle-btn:active{transform:translateY(-50%) scale(0.95)}.error-message{color:#e74c3c;font-size:0.85rem}.btn-submit{align-items:center;background:linear-gradient(135deg,#f59e0b 0%,#f97316 100%);border:none;border-radius:16px;box-shadow:0 4px 15px rgba(245,158,11,0.3);color:white;cursor:pointer;display:flex;font-size:1.2rem;font-weight:600;gap:12px;justify-content:center;margin-top:24px;min-height:60px;padding:20px 30px;transition:all 0.3s ease;width:100%}.btn-submit:hover:not(:disabled){background:linear-gradient(135deg,#f97316 0%,#ef4444 100%);box-shadow:0 8px 25px rgba(245,158,11,0.4);transform:translateY(-2px)}.btn-submit:disabled{cursor:not-allowed;opacity:0.7;transform:none}.spinner{border:2px solid rgba(46,125,50,0.3);border-top-color:#2e7d32;height:20px;width:20px}.signin-footer{border-top:1px solid #e1e5e9;margin-top:30px;padding-top:20px;text-align:center}.signin-footer p{color:#666;margin:0 0 15px}.signin-footer a{color:#ffd54f;font-weight:600;text-decoration:none;transition:color 0.3s ease}.signin-footer a:hover{color:#ffb300;text-decoration:underline}.back-home{background:rgba(245,158,11,0.1);border:2px solid #f59e0b;border-radius:25px;color:#f59e0b;display:inline-block;font-size:0.9rem;font-weight:600;padding:12px 24px;text-decoration:none;transition:all 0.3s ease}.back-home:hover{background:#f59e0b;box-shadow:0 4px 15px rgba(245,158,11,0.3);color:white;transform:translateY(-2px)}@media (max-width: 768px){.signin-card{max-width:450px;padding:40px 30px}.signin-header h1{font-size:2rem}.form-group input{min-height:56px;padding:18px 22px;text-align:center}.btn-submit{border-radius:14px;font-size:1.1rem;min-height:56px;padding:18px 28px}}@media (max-width: 480px){.signin-container{padding:15px}.signin-card{margin:0 auto;max-width:400px;padding:35px 25px}.signin-header h1{font-size:1.8rem}.form-group input{min-height:52px;padding:16px 20px;text-align:center}.btn-submit{border-radius:12px;box-sizing:border-box;font-size:1rem;margin-top:20px;min-height:52px;padding:16px 26px;width:100%}}@media (max-width: 360px){.signin-container{padding:10px}.signin-card{max-width:100%;padding:30px 20px}.btn-submit{font-size:0.95rem;min-height:48px;padding:14px 24px}}.signup-container{align-items:center;background:linear-gradient(135deg,#fff9c4 0%,#fff59d 25%,#fff176 50%,#ffee58 75%,#ffeb3b 100%);display:flex;font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;justify-content:center;margin:0;min-height:100vh;overflow:hidden;padding:2rem;position:relative;text-align:center;width:100%}.signup-card{align-items:center;animation:slideUp 0.8s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff;border:2px solid rgba(255,255,255,0.2);border-radius:1.5rem;box-shadow:0 8px 32px rgba(255,193,7,0.2);display:flex;flex-direction:column;margin:0 auto;max-width:900px;padding:3rem;position:relative;width:100%;z-index:2}@keyframes slideUp{from{opacity:0;transform:translateY(50px) scale(0.95)}to{opacity:1;transform:translateY(0) scale(1)}}.progress-container{margin-bottom:var(--play-space-2xl);text-align:center}.progress-bar{background:var(--gray-200);border-radius:var(--radius-full);box-shadow:inset 0 2px 4px rgba(0,0,0,0.1);height:10px;margin-bottom:var(--play-space-sm)}.progress-fill{background:var(--gradient-success);border-radius:var(--radius-full);box-shadow:var(--playful-shadow);transition:width 0.5s ease}.progress-text{color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:600}.signup-header{margin-bottom:var(--play-space-2xl);text-align:center}.header-icon{animation:bounce 2s infinite;font-size:var(--font-size-6xl);margin-bottom:var(--play-space-md)}.signup-header h1{background:var(--gradient-primary);-webkit-background-clip:text;color:var(--text-primary);font-family:var(--font-heading);font-size:var(--font-size-5xl);font-weight:var(--font-weight-bold);margin-bottom:var(--play-space-sm);-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-0.02em}.signup-header p{color:var(--text-secondary);font-family:var(--font-primary);font-size:var(--font-size-xl);font-weight:var(--font-weight-medium);line-height:var(--line-height-normal);margin-bottom:var(--play-space-lg);margin-left:auto;margin-right:auto;max-width:600px}.header-features{display:flex;flex-wrap:wrap;gap:var(--play-space-sm);justify-content:center}.feature-badge{animation:fadeInUp 0.6s ease-out 0.3s both;background:var(--gradient-primary);border:2px solid rgba(255,255,255,0.2);border-radius:var(--radius-full);box-shadow:var(--playful-shadow);color:white;font-size:var(--font-size-sm);font-weight:600;padding:var(--play-space-xs) var(--play-space-sm)}.error-banner{animation:shake 0.5s ease-in-out;background:linear-gradient(135deg,#ffebee,#ffcdd2);border:2px solid #ffcdd2;border-radius:15px;color:#c62828;gap:15px;margin-bottom:30px;padding:20px}@keyframes shake{0%, 100%{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}.error-icon{font-size:1.5rem}.form-section{align-items:center;animation:fadeInUp 0.6s ease-out;display:flex;flex-direction:column;margin-bottom:var(--play-space-2xl);text-align:center;width:100%}.section-header{margin-bottom:var(--play-space-lg)}.section-header h3{align-items:center;color:var(--text-primary);display:flex;font-size:var(--font-size-2xl);font-weight:700;gap:var(--play-space-sm);justify-content:center;margin-bottom:var(--play-space-xs)}.section-header p{color:var(--text-secondary);font-size:var(--font-size-base);margin:0}.signup-form{align-items:center;display:flex;flex-direction:column;gap:var(--play-space-lg);margin:0 auto;max-width:800px;width:100%}.form-row{grid-gap:var(--play-space-lg);gap:var(--play-space-lg);margin:0 auto;max-width:600px;width:100%}.form-group{align-items:center;text-align:center;width:100%}.password-strength{margin-top:10px}.strength-bar{background:#f0f0f0;border-radius:8px;height:6px;margin-bottom:8px;overflow:hidden;width:100%}.strength-fill{border-radius:8px;height:100%;transition:all 0.3s ease}.strength-text{color:#666;font-size:0.8rem;font-weight:600}.access-info{background:linear-gradient(135deg,#f8fafc 0%,#f1f5f9 100%);border:2px solid #e2e8f0;border-radius:1rem;margin-top:1.5rem;padding:2rem}.access-header{margin-bottom:2rem;text-align:center}.access-header h4{color:#1e293b;font-size:1.5rem;font-weight:700;margin-bottom:0.75rem}.access-header p{color:#64748b;font-size:1rem;line-height:1.6;margin:0 auto;max-width:600px}.access-levels{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-gap:1.5rem;gap:1.5rem}.access-level{background:white;border:2px solid #e2e8f0;border-radius:1rem;overflow:hidden;padding:1.5rem;position:relative;transition:all 0.3s ease}.access-level::before{background:linear-gradient(90deg,transparent,rgba(255,193,7,0.1),transparent);content:'';height:100%;left:-100%;position:absolute;top:0;transition:left 0.5s ease;width:100%}.access-level:hover::before{left:100%}.access-level:hover{border-color:#ffc107;box-shadow:0 8px 25px rgba(0,0,0,0.1);transform:translateY(-4px)}.access-level .level-icon{filter:drop-shadow(0 2px 4px rgba(0,0,0,0.1));font-size:2.5rem;margin-bottom:1rem;text-align:center}.access-level .level-content h5{color:#1e293b;font-size:1.25rem;font-weight:700;margin-bottom:0.75rem;text-align:center}.access-level .level-content p{color:#64748b;font-size:0.95rem;line-height:1.5;margin-bottom:1.5rem;text-align:center}.access-level .level-features{display:flex;flex-direction:column;gap:0.5rem}.access-level .level-features span{background:rgba(255,193,7,0.1);border-radius:0.5rem;color:#92400e;font-size:0.85rem;font-weight:600;padding:0.5rem 0.75rem;text-align:center}@media (max-width: 768px){.access-levels{grid-template-columns:1fr}.access-info{padding:1.5rem}}.form-actions{flex-wrap:wrap;gap:var(--play-space-md);justify-content:center;margin-top:var(--play-space-xl)}.submit-btn{font-weight:var(--font-weight-semibold);min-width:160px}.btn-secondary{font-weight:var(--font-weight-semibold);min-width:140px}.form-footer{border-top:2px solid #f0f0f0;margin-top:40px;padding-top:30px;text-align:center}.footer-content p{color:#666;font-size:1.1rem;margin-bottom:20px}.signin-link{color:#ff6b35;font-weight:700;text-decoration:none;transition:color 0.3s ease}.signin-link:hover{color:#f7931e;text-decoration:underline}.footer-features{display:flex;flex-wrap:wrap;gap:20px;justify-content:center}.footer-features span{background:rgba(255,193,7,0.2);border-radius:20px;color:#333;font-size:0.9rem;font-weight:600;padding:8px 16px}.form-success{align-items:center;background:linear-gradient(135deg,#e8f5e8 0%,#c8e6c9 100%);display:flex;justify-content:center;min-height:100vh;padding:20px}.success-content{background:white;border-radius:30px;box-shadow:0 25px 60px rgba(0,0,0,0.15);max-width:600px;padding:50px}.success-icon{font-size:5rem;margin-bottom:30px}.success-content h2{color:#4caf50;font-size:2.5rem;font-weight:700;margin-bottom:20px}.success-content p{font-size:1.2rem;line-height:1.6;margin-bottom:25px}.success-details{border-radius:20px;margin:25px 0}.success-details span{color:#333;display:block;font-size:1rem;font-weight:600;margin-bottom:10px}.success-details span:last-child{margin-bottom:0}.redirect-message{margin-bottom:30px}@media (max-width: 768px){.signup-container{padding:1rem}.signup-card{margin:0 auto;max-width:100%;padding:2rem}.signup-header h1{font-size:var(--font-size-4xl)}.form-row{gap:var(--play-space-md);grid-template-columns:1fr}.form-actions{align-items:center;flex-direction:column;gap:var(--play-space-sm)}.submit-btn,
  .btn-secondary{max-width:320px;width:100%}.header-features{align-items:center;flex-direction:column;gap:var(--play-space-xs)}.footer-features{align-items:center;flex-direction:column;gap:var(--play-space-xs)}}@media (max-width: 480px){.signup-container{padding:0.5rem}.signup-card{margin:0 auto;padding:1.5rem}.signup-header h1{font-size:var(--font-size-3xl)}.signup-header p{font-size:var(--font-size-base)}.section-header h3{font-size:var(--font-size-xl)}.success-content{padding:var(--play-space-xl)}.success-content h2{font-size:var(--font-size-3xl)}}.carousel-container{aspect-ratio:16/9;background:#fff;border-radius:25px;box-shadow:0 20px 40px rgba(0,0,0,0.15);min-height:300px;overflow:hidden;position:relative;width:100%}.carousel-empty{align-items:center;color:#666;display:flex;font-size:1.2rem;height:300px;justify-content:center}.carousel-main{height:100%;max-height:800px;min-height:300px;overflow:hidden;position:relative;width:100%}.carousel-nav{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(255,255,255,0.9);border:2px solid var(--primary-yellow);border-radius:50%;color:var(--primary-yellow);cursor:pointer;display:flex;font-size:1.5rem;font-weight:bold;height:50px;justify-content:center;position:absolute;top:50%;transform:translateY(-50%);transition:all 0.3s ease;width:50px;z-index:3}.carousel-nav:hover{background:var(--primary-yellow);box-shadow:0 5px 15px rgba(0,0,0,0.2);color:white;transform:translateY(-50%) scale(1.1)}.carousel-nav-prev{left:20px}.carousel-nav-next{right:20px}.carousel-autoplay-toggle{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(0,0,0,0.7);border:none;border-radius:50%;color:white;cursor:pointer;display:flex;font-size:1.2rem;height:40px;justify-content:center;position:absolute;right:20px;top:20px;transition:all 0.3s ease;width:40px;z-index:3}.carousel-autoplay-toggle:hover{background:rgba(0,0,0,0.9);transform:scale(1.1)}.carousel-slides{height:100%;position:relative;width:100%}.carousel-slide{height:100%;left:0;opacity:0;overflow:hidden;position:absolute;top:0;transition:opacity 0.5s ease-in-out;width:100%}.carousel-slide.active{opacity:1}.carousel-image{display:block;height:100%;object-fit:cover;object-position:center;transition:transform 0.3s ease;width:100%}.carousel-slide:hover .carousel-image{transform:scale(1.05)}.carousel-indicators{bottom:20px;display:flex;gap:10px;left:50%;position:absolute;transform:translateX(-50%);z-index:3}.carousel-indicator{background:transparent;border:2px solid white;border-radius:50%;cursor:pointer;height:12px;transition:all 0.3s ease;width:12px}.carousel-indicator.active{background:white;transform:scale(1.2)}.carousel-indicator:hover{background:rgba(255,255,255,0.7);transform:scale(1.1)}.carousel-thumbnails{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(255,255,255,0.95);display:flex;gap:15px;justify-content:center;overflow-x:auto;padding:20px;scrollbar-color:var(--primary-yellow) transparent;scrollbar-width:thin}.carousel-thumbnails::-webkit-scrollbar{height:6px}.carousel-thumbnails::-webkit-scrollbar-track{background:transparent}.carousel-thumbnails::-webkit-scrollbar-thumb{background:var(--primary-yellow);border-radius:3px}.carousel-thumbnail{border:3px solid transparent;border-radius:15px;cursor:pointer;flex-shrink:0;height:60px;overflow:hidden;position:relative;transition:all 0.3s ease;width:80px}.carousel-thumbnail img{height:100%;object-fit:cover;width:100%}.carousel-thumbnail.active{border-color:var(--primary-yellow);box-shadow:0 5px 15px rgba(0,0,0,0.2);transform:scale(1.1)}.carousel-thumbnail:hover{border-color:var(--primary-yellow);transform:scale(1.05)}.thumbnail-overlay{background:linear-gradient(transparent,rgba(0,0,0,0.8));bottom:0;color:white;left:0;opacity:0;padding:5px;position:absolute;right:0;text-align:center;transition:opacity 0.3s ease}.carousel-thumbnail:hover .thumbnail-overlay{opacity:1}.thumbnail-title{font-size:0.7rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.carousel-counter{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(0,0,0,0.7);border-radius:20px;color:white;font-size:0.9rem;font-weight:600;left:20px;padding:8px 16px;position:absolute;top:20px;z-index:3}.carousel-slide.active{animation:slideIn 0.5s ease-out}@media (max-width: 768px){.carousel-container{aspect-ratio:4/3;min-height:250px}.carousel-nav{font-size:1.2rem;height:40px;width:40px}.carousel-nav-prev{left:10px}.carousel-nav-next{right:10px}.carousel-autoplay-toggle{font-size:1rem;height:35px;right:15px;top:15px;width:35px}.carousel-counter{font-size:0.8rem;left:15px;padding:6px 12px;top:15px}.carousel-caption{padding:20px}.carousel-title{font-size:1.5rem}.carousel-description{font-size:1rem}.carousel-thumbnails{gap:10px;padding:15px}.carousel-thumbnail{height:45px;width:60px}.carousel-indicators{bottom:15px}.carousel-indicator{height:10px;width:10px}}@media (max-width: 480px){.carousel-container{aspect-ratio:1/1;min-height:200px}.carousel-nav{font-size:1rem;height:35px;width:35px}.carousel-caption{padding:15px}.carousel-title{font-size:1.3rem}.carousel-description{font-size:0.9rem}.carousel-thumbnails{gap:8px;padding:10px}.carousel-thumbnail{height:40px;width:50px}.thumbnail-title{font-size:0.6rem}}@media (prefers-color-scheme: dark){.carousel-container{background:#1a1a1a}.carousel-thumbnails{background:rgba(26,26,26,0.95)}}@media (prefers-contrast: high){.carousel-nav{border-width:3px}.carousel-indicator{border-width:3px}.carousel-thumbnail{border-width:4px}}@media (prefers-reduced-motion: reduce){.carousel-slide{transition:none}.carousel-slide.active{animation:none}.carousel-nav,
  .carousel-thumbnail,
  .carousel-indicator{transition:none}}.modal-overlay{animation:overlayFadeIn 0.3s ease-out;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:rgba(0,0,0,0.75);padding:20px}@keyframes overlayFadeIn{from{-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px);opacity:0}to{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:1}}.modal{animation:modalSlideIn 0.4s cubic-bezier(0.16,1,0.3,1);background:#ffffff;border:1px solid rgba(255,255,255,0.2);border-radius:20px;box-shadow:0 25px 50px -12px rgba(0,0,0,0.25),0 0 0 1px rgba(255,255,255,0.1);display:flex;flex-direction:column;max-height:95vh;max-width:700px;overflow:hidden;position:relative;width:100%}@keyframes modalSlideIn{from{opacity:0;transform:translateY(-30px) scale(0.9)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-title{align-items:center;background:linear-gradient(135deg,#60a5fa 0%,#34d399 100%);border-bottom:1px solid rgba(255,255,255,0.15);border-radius:20px 20px 0 0;box-shadow:0 4px 12px rgba(0,0,0,0.1);color:white;display:flex;font-size:1.6rem;font-weight:700;justify-content:center;letter-spacing:-0.025em;margin:0;min-height:70px;padding:28px 32px 24px;position:relative;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,0.1)}.modal-close{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(255,255,255,0.15);border:1px solid rgba(255,255,255,0.25);border-radius:50%;box-shadow:0 2px 8px rgba(0,0,0,0.1);color:white;font-size:20px;font-weight:600;height:36px;position:absolute;right:20px;top:20px;transition:all 0.3s cubic-bezier(0.4,0,0.2,1);width:36px;z-index:10}.modal-close:hover{background:rgba(255,255,255,0.25);border-color:rgba(255,255,255,0.4);box-shadow:0 4px 12px rgba(0,0,0,0.2);transform:scale(1.1) rotate(90deg)}.modal-close:active{transform:scale(0.95) rotate(90deg)}.modal-content{background:#ffffff;display:flex;flex:1 1;flex-direction:column;min-height:0;overflow-x:hidden;padding:24px 32px 32px;position:relative}.modal-content::-webkit-scrollbar{width:6px}.modal-content::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}.modal-content::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.modal-content::-webkit-scrollbar-thumb:hover{background:#94a3b8}.mchat-modal{max-height:90vh;overflow:hidden}.mchat-modal .modal-title{background:linear-gradient(135deg,#4f46e5,#7c3aed)!important;box-shadow:0 4px 20px rgba(79,70,229,0.3);flex-shrink:0}.mchat-modal .modal-title::before{content:"🧠";filter:drop-shadow(0 2px 4px rgba(0,0,0,0.1));font-size:1.6rem;margin-right:10px}.mchat-modal .modal-content{background:transparent;flex:1 1;min-height:0;padding:0}.motor-skills-modal .modal-title{background:linear-gradient(135deg,#059669,#0d9488)!important;box-shadow:0 4px 20px rgba(5,150,105,0.3)}.motor-skills-modal .modal-title::before{content:"🏃";filter:drop-shadow(0 2px 4px rgba(0,0,0,0.1));font-size:1.6rem;margin-right:10px}.speech-language-modal{max-height:90vh;overflow:hidden}.speech-language-modal .modal-title{background:linear-gradient(135deg,#3b82f6,#1d4ed8)!important;box-shadow:0 4px 20px rgba(59,130,246,0.3);flex-shrink:0}.speech-language-modal .modal-title::before{content:"🗣️";filter:drop-shadow(0 2px 4px rgba(0,0,0,0.1));font-size:1.6rem;margin-right:10px}.speech-language-modal .modal-content{background:transparent;display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden;padding:0}.social-skills-modal{max-height:90vh;overflow:hidden}.social-skills-modal .modal-title{background:linear-gradient(135deg,#7c3aed,#a855f7)!important;box-shadow:0 4px 20px rgba(124,58,237,0.3);flex-shrink:0}.social-skills-modal .modal-title::before{content:"👥";filter:drop-shadow(0 2px 4px rgba(0,0,0,0.1));font-size:1.6rem;margin-right:10px}.social-skills-modal .modal-content{background:transparent;display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden;padding:0}.results-modal .modal-title{background:linear-gradient(135deg,#dc2626,#ea580c)!important;box-shadow:0 4px 20px rgba(220,38,38,0.3);flex-shrink:0}.results-modal .modal-title::before{content:"📊";filter:drop-shadow(0 2px 4px rgba(0,0,0,0.1));font-size:1.6rem;margin-right:10px}@media (max-width: 768px){.modal-overlay{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:16px}.modal{border-radius:16px;box-shadow:0 20px 40px -12px rgba(0,0,0,0.3),0 0 0 1px rgba(255,255,255,0.1);display:flex;flex-direction:column;max-height:95vh;max-width:95vw}.modal-title{border-radius:16px 16px 0 0;font-size:1.4rem;min-height:60px;padding:20px 24px 16px}.modal-title::before{font-size:1.4rem;margin-right:8px}.modal-content{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden;padding:20px 24px 24px}.modal-close{background:rgba(0,0,0,0.6);border:1px solid rgba(255,255,255,0.3);color:white;font-size:18px;font-weight:bold;height:32px;right:16px;top:16px;width:32px}.modal-close:hover{background:rgba(0,0,0,0.8);border-color:rgba(255,255,255,0.5);transform:scale(1.05) rotate(90deg)}.mchat-modal{max-height:90vh}.motor-skills-modal{max-height:85vh;overflow:hidden}.motor-skills-modal .modal-content{background:transparent;max-height:85vh;overflow:hidden;padding:0}}@media (max-width: 480px){.modal-overlay{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);padding:12px}.modal{border-radius:12px;box-shadow:0 16px 32px -8px rgba(0,0,0,0.4),0 0 0 1px rgba(255,255,255,0.1)}.modal-title{border-radius:12px 12px 0 0;font-size:1.2rem;min-height:50px;padding:16px 20px 12px}.modal-title::before{font-size:1.2rem;margin-right:6px}.modal-content{max-height:calc(95vh - 100px);padding:20px}.modal-close{background:rgba(220,38,38,0.9);border:1px solid rgba(255,255,255,0.4);box-shadow:0 2px 8px rgba(0,0,0,0.2);color:white;font-size:16px;font-weight:bold;height:28px;right:12px;top:12px;width:28px}.modal-close:hover{background:rgba(220,38,38,1);border-color:rgba(255,255,255,0.6);box-shadow:0 4px 12px rgba(0,0,0,0.4);transform:scale(1.1) rotate(90deg)}.mchat-modal .modal-content{margin:0.5rem;max-height:95vh;max-width:98vw}.motor-skills-modal .modal-content{margin:0.5rem;max-height:95vh;max-width:98vw}}.universal-table-wrapper{background:var(--background-primary);border:1px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);margin-bottom:var(--space-8);overflow-x:auto;width:100%}.universal-table{background:var(--background-primary);border-collapse:separate;border-spacing:0;font-size:1rem;min-width:700px;width:100%}.universal-table thead th{background:var(--background-secondary);border-bottom:2px solid var(--primary-yellow);color:var(--text-primary);font-size:0.95rem;font-weight:600;letter-spacing:0.005em;padding:var(--space-3) var(--space-3);position:-webkit-sticky;position:sticky;top:0;z-index:2}.universal-table tbody tr{transition:background var(--transition-fast)}.universal-table tbody tr:nth-child(even){background:var(--background-secondary)}.universal-table tbody tr:nth-child(odd){background:var(--background-primary)}.universal-table tbody tr:hover{background:rgba(251,191,36,0.15)}.universal-table td, .universal-table th{border:none;padding:var(--space-3) var(--space-3);vertical-align:middle}.universal-table td{color:var(--text-primary);font-size:1rem}.universal-table .actions-col{min-width:120px;text-align:center}.universal-table .empty-row{color:var(--text-muted);font-style:italic;padding:var(--space-8) 0;text-align:center}@media (max-width: 900px){.universal-table{font-size:0.95rem;min-width:600px}}@media (max-width: 600px){.universal-table{font-size:0.9rem;min-width:400px}.universal-table-wrapper{border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}}.logo-container{align-items:center;display:flex;flex-direction:column;justify-content:center;position:relative}.logo-image-wrapper{border-radius:50%;box-shadow:0 8px 32px rgba(0,0,0,0.15);display:inline-block;overflow:hidden;position:relative;transition:all 0.3s cubic-bezier(0.4,0,0.2,1)}.logo-image{display:block;height:100%;object-fit:cover;transition:transform 0.3s ease;width:100%}.logo-glow{animation:logoGlow 3s ease-in-out infinite alternate;background:linear-gradient(45deg,#3b82f6,#06b6d4,#10b981,#f59e0b,#ef4444);border-radius:50%;bottom:-4px;left:-4px;opacity:0;position:absolute;right:-4px;top:-4px;transition:opacity 0.3s ease;z-index:-1}.logo-animated .logo-image-wrapper:hover{box-shadow:0 12px 40px rgba(0,0,0,0.2);transform:scale(1.05)}.logo-animated .logo-image-wrapper:hover .logo-glow{opacity:0.8}.logo-animated .logo-image-wrapper:hover .logo-image{transform:scale(1.1)}.logo-text{margin-top:12px;text-align:center}.logo-text-main{background:linear-gradient(135deg,#f59e0b 0%,#f97316 25%,#ef4444 50%,#ec4899 75%,#8b5cf6 100%);-webkit-background-clip:text;display:block;font-family:var(--font-heading);font-weight:var(--font-weight-bold);-webkit-text-fill-color:transparent;animation:rainbowGlow 3s ease-in-out infinite alternate;background-clip:text;text-shadow:0 0 20px rgba(245,158,11,0.4)}.logo-text-sub{color:#374151;display:block;font-family:var(--font-heading);font-weight:var(--font-weight-medium);margin-top:4px}.logo-small .logo-image-wrapper{height:60px;width:60px}.logo-small .logo-text-main{font-size:var(--font-size-lg)}.logo-small .logo-text-sub{font-size:var(--font-size-sm)}.logo-medium .logo-image-wrapper{height:100px;width:100px}.logo-medium .logo-text-main{font-size:var(--font-size-2xl)}.logo-medium .logo-text-sub{font-size:var(--font-size-base)}.logo-large .logo-image-wrapper{height:150px;width:150px}.logo-large .logo-text-main{font-size:var(--font-size-3xl)}.logo-large .logo-text-sub{font-size:var(--font-size-lg)}.logo-hero .logo-image-wrapper{height:300px;width:300px}.logo-hero .logo-text-main{font-size:var(--font-size-6xl)}.logo-hero .logo-text-sub{font-size:var(--font-size-2xl)}@keyframes logoGlow{0%{background:linear-gradient(45deg,#f59e0b,#f97316,#ef4444,#ec4899,#8b5cf6)}25%{background:linear-gradient(45deg,#f97316,#ef4444,#ec4899,#8b5cf6,#f59e0b)}50%{background:linear-gradient(45deg,#ef4444,#ec4899,#8b5cf6,#f59e0b,#f97316)}75%{background:linear-gradient(45deg,#ec4899,#8b5cf6,#f59e0b,#f97316,#ef4444)}100%{background:linear-gradient(45deg,#8b5cf6,#f59e0b,#f97316,#ef4444,#ec4899)}}@keyframes rainbowGlow{0%{filter:drop-shadow(0 0 15px rgba(245,158,11,0.6))}25%{filter:drop-shadow(0 0 20px rgba(249,115,22,0.6))}50%{filter:drop-shadow(0 0 25px rgba(239,68,68,0.6))}75%{filter:drop-shadow(0 0 20px rgba(236,72,153,0.6))}100%{filter:drop-shadow(0 0 15px rgba(139,92,246,0.6))}}@media (max-width: 768px){.logo-hero .logo-image-wrapper{height:200px;width:200px}.logo-hero .logo-text-main{font-size:var(--font-size-4xl)}.logo-hero .logo-text-sub{font-size:var(--font-size-xl)}}@media (max-width: 480px){.logo-hero .logo-image-wrapper{height:150px;width:150px}.logo-hero .logo-text-main{font-size:var(--font-size-3xl)}.logo-hero .logo-text-sub{font-size:var(--font-size-lg)}}.language-toggle{align-items:center;display:flex;position:relative;z-index:1001}.language-toggle-container{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.2);border-radius:16px;display:flex;gap:8px;padding:4px 8px;transition:all 0.3s ease}.language-toggle-container:hover{background:rgba(255,255,255,0.15);box-shadow:0 4px 12px rgba(0,0,0,0.1);transform:translateY(-1px)}.language-label{color:#6b7280;font-size:0.7rem;font-weight:600;letter-spacing:0.5px;min-width:40px;text-align:center;text-transform:uppercase;transition:all 0.3s ease}.language-toggle-container:hover .language-label{color:#374151}.switch-icon{align-items:center;color:#1f2937;display:flex;font-size:0.6rem;font-weight:700;gap:3px;height:100%;justify-content:center;width:100%}.switch-icon .flag{filter:drop-shadow(0 1px 1px rgba(0,0,0,0.1));font-size:0.7rem}.switch-icon .code{font-size:0.6rem;font-weight:700;letter-spacing:0.2px}@media (max-width: 768px){.language-toggle-container{gap:6px;padding:3px 6px}.language-label{font-size:0.6rem;min-width:35px}.switch-icon{font-size:0.55rem;gap:2px}.switch-icon .flag{font-size:0.6rem}.switch-icon .code{font-size:0.55rem}}@media (max-width: 480px){.language-toggle-container{gap:4px;padding:2px 4px}.language-label{font-size:0.55rem;min-width:30px}}.header{background:#ffffff;border-bottom:1px solid #e5e7eb;box-shadow:0 1px 3px rgba(0,0,0,0.1);left:0;position:fixed;right:0;top:0;z-index:1000}.header-container{align-items:center;display:flex;gap:2rem;height:70px;justify-content:space-between;margin:0 auto;max-width:90%;padding:0 2rem}.header-logo{align-items:center;cursor:pointer;display:flex;gap:var(--space-4);transition:transform 0.2s ease}.header-logo:hover{transform:scale(1.02)}.header-logo-image{flex-shrink:0}.header-branding{display:flex;flex-direction:column;line-height:1}.header-brand-main{background:linear-gradient(135deg,#f59e0b 0%,#f97316 25%,#ef4444 50%,#ec4899 75%,#8b5cf6 100%);-webkit-background-clip:text;font-family:'Fredoka One','Comic Sans MS',cursive,sans-serif;font-size:var(--font-size-xl);font-weight:400;-webkit-text-fill-color:transparent;animation:headerGlow 4s ease-in-out infinite alternate;background-clip:text;text-shadow:0 0 10px rgba(245,158,11,0.3)}.header-brand-sub{color:#f59e0b;font-family:'Fredoka One','Comic Sans MS',cursive,sans-serif;font-size:var(--font-size-sm);font-weight:400;margin-top:-2px}.header-actions{gap:1rem}.btn-header{align-items:center;background:#3b82f6;border:none;border-radius:6px;color:white;cursor:pointer;display:flex;font-size:0.9rem;font-weight:600;height:36px;justify-content:center;min-width:100px;padding:0.5rem 1rem;transition:all 0.2s ease}.btn-header:hover{background:#2563eb}.btn-text-desktop{display:inline}.btn-text-mobile{display:none}@media (max-width: 480px){.btn-text-desktop{display:none}.btn-text-mobile{display:inline}}.nav-special{align-items:center;background:linear-gradient(135deg,#3b82f6 0%,#60a5fa 50%,#93c5fd 100%);border:none;border-radius:16px;box-shadow:0 2px 8px rgba(59,130,246,0.3);color:white;cursor:pointer;display:flex;font-size:0.85rem;font-weight:600;gap:4px;justify-content:center;min-width:109px;overflow:hidden;padding:9px 12px;position:relative;text-shadow:0 1px 2px rgba(0,0,0,0.2);transition:all 0.3s cubic-bezier(0.4,0,0.2,1)}.nav-special:hover{background:linear-gradient(135deg,#2563eb 0%,#3b82f6 50%,#60a5fa 100%);box-shadow:0 4px 12px rgba(59,130,246,0.4);transform:translateY(-2px) scale(1.02)}.nav-special:active{transform:translateY(-1px) scale(0.98)}.nav-special::before{background:linear-gradient(90deg,transparent,rgba(255,255,255,0.3),transparent);content:'';height:100%;left:-100%;position:absolute;top:0;transition:left 0.6s ease;width:100%}.nav-special:hover::before{left:100%}.nav-special .emoji{filter:drop-shadow(0 1px 2px rgba(0,0,0,0.2));font-size:0.95rem}.mobile-nav-special{align-items:center;background:linear-gradient(135deg,#3b82f6 0%,#60a5fa 50%,#93c5fd 100%);border:none;border-radius:14px;box-shadow:0 3px 12px rgba(59,130,246,0.3);color:white;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:6px;justify-content:center;margin-bottom:14px;margin-left:14px;max-width:140px;overflow:hidden;padding:12px 16px;position:relative;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,0.2);transition:all 0.3s cubic-bezier(0.4,0,0.2,1);width:80%}.mobile-nav-special:hover{background:linear-gradient(135deg,#2563eb 0%,#3b82f6 50%,#60a5fa 100%);box-shadow:0 6px 16px rgba(59,130,246,0.4);transform:translateY(-2px) scale(1.02)}.mobile-nav-special:active{transform:translateY(-1px) scale(0.98)}.mobile-nav-special::before{background:linear-gradient(90deg,transparent,rgba(255,255,255,0.3),transparent);content:'';height:100%;left:-100%;position:absolute;top:0;transition:left 0.6s ease;width:100%}.mobile-nav-special:hover::before{left:100%}.mobile-nav-special .emoji{filter:drop-shadow(0 1px 2px rgba(0,0,0,0.2));font-size:1.1rem}@media (max-width: 768px){.nav-special{font-size:0.8rem;min-width:110px;padding:9px 10px}.nav-special .emoji{font-size:0.9rem}}@media (max-width: 640px){.nav-special{font-size:0.75rem;min-width:100px;padding:9px 8px}.nav-special .emoji{font-size:0.85rem}}@media (max-width: 480px){.mobile-nav-special{border-radius:12px;font-size:0.95rem;margin-bottom:14px;margin-left:14px;max-width:180px;padding:10px 14px;width:75%}.mobile-nav-special .emoji{font-size:1rem}}@media (max-width: 360px){.mobile-nav-special{border-radius:10px;font-size:0.9rem;margin-bottom:14px;margin-left:14px;max-width:160px;padding:8px 12px;width:70%}.mobile-nav-special .emoji{font-size:0.9rem}}.header-navigation{align-items:center;display:flex;flex:1 1;gap:0.5rem;justify-content:center;max-width:600px}.nav-tab{background:transparent;border:none;border-radius:6px;color:#6b7280;cursor:pointer;flex-shrink:0;font-size:0.9rem;font-weight:500;padding:0.5rem 1rem;position:relative;transition:all 0.2s ease;white-space:nowrap}.nav-tab:hover{background:#f9fafb;color:#1f2937}.nav-tab::after{background:#f59e0b;bottom:-2px;content:'';height:2px;left:50%;position:absolute;transform:translateX(-50%);transition:all 0.3s ease;width:0}.nav-tab:hover::after{width:100%}@keyframes headerGlow{0%{filter:drop-shadow(0 0 8px rgba(245,158,11,0.4))}25%{filter:drop-shadow(0 0 12px rgba(249,115,22,0.4))}50%{filter:drop-shadow(0 0 16px rgba(239,68,68,0.4))}75%{filter:drop-shadow(0 0 12px rgba(236,72,153,0.4))}100%{filter:drop-shadow(0 0 8px rgba(139,92,246,0.4))}}@media (max-width: 1024px){.header-navigation{gap:0.25rem;max-width:500px}.nav-tab{font-size:0.85rem;padding:0.4rem 0.8rem}}@media (max-width: 768px){.header-container{flex-wrap:nowrap;gap:var(--space-2);height:80px;padding:0 var(---4)}.header-logo{max-width:55%}.header-navigation{gap:2px;max-width:350px}.nav-tab{font-size:0.7rem;padding:6px 8px}.header-brand-main{font-size:var(--font-size-2xl)}.header-brand-sub{font-size:var(--font-size-sm)}.header-actions{flex-shrink:0;gap:var(--space-2)}.btn-header{border-radius:8px;font-size:var(--font-size-xs);font-weight:600;height:36px;min-width:90px;padding:var(--space-2) var(--space-3);white-space:nowrap}}@media (max-width: 768px){.header-navigation{display:none}}@media (max-width: 480px){.header-container{flex-wrap:nowrap;gap:var(--space-1);height:70px}.header-logo{flex-shrink:1;gap:var(--space-2);max-width:60%;min-width:0}.header-brand-main{font-size:var(--font-size-xl)}.header-brand-sub{font-size:var(--font-size-xs)}.header-actions{flex-shrink:0;gap:var(--space-1)}.btn-header{border-radius:8px;font-size:0.75rem;font-weight:600;height:36px;min-width:70px;padding:var(--space-2) var(--space-2);white-space:nowrap}.mobile-menu-btn{margin-left:var(--space-1);padding:4px}}.mobile-menu-btn{background:none;border:none;cursor:pointer;display:none;flex-shrink:0;margin-left:var(--space-2);padding:8px;z-index:1001}.hamburger{display:flex;flex-direction:column;height:18px;position:relative;width:24px}.hamburger span{background:#f59e0b;border-radius:2px;display:block;height:3px;transform-origin:center;transition:all 0.3s ease;width:100%}.hamburger span:nth-child(1){margin-bottom:4px}.hamburger span:nth-child(2){margin-bottom:4px}.hamburger.active span:nth-child(1){transform:rotate(45deg) translate(6px,6px)}.hamburger.active span:nth-child(2){opacity:0}.hamburger.active span:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}.mobile-menu-overlay{align-items:flex-start;background:rgba(0,0,0,0.5);bottom:0;display:flex;justify-content:flex-end;left:0;overflow:hidden;padding-top:80px;pointer-events:auto;position:fixed;right:0;top:0;z-index:2000}body.mobile-menu-open{height:100%;overflow:hidden;position:fixed;width:100%}@media (max-width: 768px){body:not(.mobile-menu-open){overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;position:relative}}.mobile-menu{animation:slideInRight 0.3s ease-out;background:white;border-radius:12px 0 0 12px;box-shadow:-4px 0 20px rgba(0,0,0,0.15);max-width:90vw;width:280px}@keyframes slideInRight{from{transform:translateX(100%)}to{transform:translateX(0)}}.mobile-menu-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:20px}.mobile-menu-header h3{color:#374151;font-size:1.2rem;font-weight:600;margin:0}.mobile-menu-close{background:none;border:none;color:#6b7280;cursor:pointer;font-size:24px;line-height:1;padding:4px}.mobile-nav{padding:20px 0}.mobile-nav-item{background:none;border:none;border-radius:6px;color:#374151;cursor:pointer;display:block;font-size:0.95rem;font-weight:500;margin:2px 0;padding:12px 20px;text-align:left;transition:all 0.2s ease;width:80%}.mobile-nav-item:hover{background:#f3f4f6;color:#1f2937}.mobile-language-section{background-color:#f9fafb;border-top:2px solid #f3f4f6;padding:20px}.mobile-language-label{color:#6b7280;font-size:0.9rem;font-weight:600;margin-bottom:12px;text-align:center}.mobile-language-switcher{display:flex;justify-content:center;padding:4px 0}.mobile-language-switcher .language-toggle{position:relative;z-index:1001}.desktop-language-switcher{align-items:center;display:flex;margin-right:12px;position:relative;z-index:1001}.desktop-language-switcher .language-toggle{position:relative;z-index:1001}@media (max-width: 1024px){.desktop-language-switcher .language-option{font-size:0.75rem;padding:4px 8px}.desktop-language-switcher .language-option .flag{font-size:0.9rem}.desktop-language-switcher .language-option .code{font-size:0.7rem}}@media (max-width: 600px){.desktop-language-switcher{display:none}.mobile-menu-btn{display:block;margin-left:var(--space-1);padding:6px}.hamburger{height:16px;width:20px}}@media (max-width: 360px){.header-container{flex-wrap:nowrap;height:65px}.header-logo{flex-shrink:1;gap:var(--space-1);max-width:55%;min-width:0}.header-brand-main{font-size:var(--font-size-lg)}.header-brand-sub{font-size:0.6rem}.header-actions{flex-shrink:0;gap:4px}.btn-header{border-radius:6px;font-size:0.7rem;height:32px;min-width:80px;padding:8px 12px;white-space:nowrap}.mobile-menu{width:260px}.mobile-menu-header{padding:16px}.mobile-nav{padding:16px 0}.mobile-nav-item{font-size:0.9rem;padding:14px 16px}}.admin-announcement-manager{background:#f8f9fa;border-radius:12px;margin:20px 0;padding:20px}.announcement-header{align-items:center;border-bottom:2px solid #e9ecef;display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:20px}.announcement-header h2{color:#2c3e50;font-size:1.8rem;font-weight:700;margin:0}.create-announcement-btn{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:8px;box-shadow:0 4px 15px rgba(102,126,234,0.3);color:white;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all 0.3s ease}.create-announcement-btn:hover{box-shadow:0 6px 20px rgba(102,126,234,0.4);transform:translateY(-2px)}.announcement-form-container{background:white;border:1px solid #e9ecef;border-radius:12px;box-shadow:0 4px 20px rgba(0,0,0,0.1);margin-bottom:30px;padding:25px}.announcement-form{display:flex;flex-direction:column;gap:20px}.form-header{align-items:center;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.form-header h3{color:#2c3e50;font-size:1.4rem;margin:0}.close-form-btn{align-items:center;background:#ff4757;border:none;border-radius:50%;color:white;cursor:pointer;display:flex;font-size:1rem;height:30px;justify-content:center;transition:all 0.3s ease;width:30px}.close-form-btn:hover{background:#ff3742;transform:scale(1.1)}.form-group label{color:#2c3e50}.form-group input,
.form-group textarea{border:2px solid #e9ecef;border-radius:8px;padding:12px 15px;transition:all 0.3s ease}.form-group input:focus,
.form-group textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px rgba(102,126,234,0.1)}.checkbox-label{align-items:center;display:flex!important;flex-direction:row!important;gap:10px}.media-preview{border:2px solid #e9ecef;border-radius:8px;margin-top:10px;max-width:300px;overflow:hidden}.media-preview img,
.media-preview video{display:block;height:auto;width:100%}.form-actions{border-top:1px solid #e9ecef;gap:15px}.cancel-btn,
.submit-btn{border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all 0.3s ease}.cancel-btn{color:white}.cancel-btn:hover{background:#5a6268;transform:translateY(-1px)}.submit-btn{box-shadow:0 4px 15px rgba(40,167,69,0.3);color:white}.submit-btn:hover{box-shadow:0 6px 20px rgba(40,167,69,0.4);transform:translateY(-2px)}.announcements-list{display:flex;flex-direction:column;gap:20px}.no-announcements{color:#6c757d;font-size:1.1rem;padding:40px;text-align:center}.announcement-card{background:white;border:2px solid transparent;border-radius:12px;box-shadow:0 4px 15px rgba(0,0,0,0.1);padding:20px;transition:all 0.3s ease}.announcement-card.active{border-color:#28a745;box-shadow:0 4px 20px rgba(40,167,69,0.2)}.announcement-card.inactive{border-color:#6c757d;opacity:0.7}.announcement-preview{display:flex;gap:20px;margin-bottom:20px}.announcement-preview img{border:2px solid #e9ecef;border-radius:8px;height:100px;object-fit:cover;width:150px}.announcement-info{display:flex;flex:1 1;flex-direction:column;justify-content:center}.announcement-meta{color:#6c757d;display:flex;flex-direction:column;font-size:0.85rem;gap:5px}.announcement-actions{display:flex;gap:10px;justify-content:flex-end}.toggle-btn,
.edit-btn,
.delete-btn{border:none;border-radius:6px;cursor:pointer;font-size:0.9rem;font-weight:600;padding:8px 16px;transition:all 0.3s ease}.toggle-btn.activate{background:#28a745;color:white}.toggle-btn.deactivate{background:#ffc107;color:#212529}.edit-btn{background:#007bff;color:white}.toggle-btn:hover,
.edit-btn:hover,
.delete-btn:hover{opacity:0.9;transform:translateY(-1px)}@media (max-width: 768px){.admin-announcement-manager{padding:15px}.announcement-header{align-items:stretch;flex-direction:column;gap:15px}.announcement-header h2{font-size:1.5rem;text-align:center}.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column}.announcement-preview{flex-direction:column;gap:15px}.announcement-preview img{height:150px;width:100%}.announcement-actions{flex-wrap:wrap;justify-content:center}.announcement-meta{flex-direction:row;flex-wrap:wrap;gap:10px}}@media (max-width: 480px){.announcement-form-container{padding:20px}.announcement-card{padding:15px}.toggle-btn,
  .edit-btn,
  .delete-btn{font-size:0.8rem;padding:6px 12px}}.announcement-toast{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:linear-gradient(145deg,#ffffff 0%,#f8f9fa 100%);border-radius:16px;bottom:24px;box-shadow:0 12px 48px rgba(0,0,0,0.15),0 0 0 1px rgba(0,0,0,0.05);max-width:calc(100vw - 48px);opacity:0;overflow:hidden;position:fixed;right:24px;transform:translateY(120%) scale(0.9);transition:all 0.4s cubic-bezier(0.34,1.56,0.64,1);width:360px;z-index:9999}.announcement-toast.show{opacity:1;transform:translateY(0) scale(1)}.announcement-toast.expanded{max-width:calc(100vw - 48px)}.toast-header{align-items:center;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:white;display:flex;gap:12px;padding:16px 16px 12px}.toast-icon{animation:bounce 1s ease-in-out infinite;font-size:24px}@keyframes bounce{0%, 100%{transform:translateY(0)}50%{transform:translateY(-4px)}}.toast-title{flex:1 1}.toast-close-btn{align-items:center;background:rgba(255,255,255,0.2);border:none;border-radius:50%;color:white;cursor:pointer;display:flex;font-size:16px;height:28px;justify-content:center;transition:all 0.2s;width:28px}.toast-close-btn:hover{background:rgba(255,255,255,0.3);transform:rotate(90deg)}.toast-close-btn:active{transform:rotate(90deg) scale(0.9)}.toast-preview{cursor:pointer;padding:12px;position:relative;transition:all 0.3s}.toast-content{overflow:hidden;padding:0 12px 12px;position:relative}.toast-media{border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,0.1);cursor:pointer;height:120px;object-fit:cover;transition:all 0.4s cubic-bezier(0.4,0,0.2,1);width:100%}.toast-media.expanded{height:auto;max-height:400px;object-fit:contain}.toast-content:hover .toast-media:not(.expanded){box-shadow:0 6px 20px rgba(0,0,0,0.15);transform:scale(1.02)}.toast-expand-hint{color:#666;display:block;font-size:12px;font-weight:500;margin-top:8px;text-align:center;transition:color 0.3s}.announcement-toast.expanded{width:480px}.announcement-toast.expanded .toast-expand-hint{color:#888}.toast-progress-bar{background:rgba(0,0,0,0.1);height:3px;overflow:hidden}.toast-progress-fill{animation:progressGrow var(--duration) linear forwards;background:linear-gradient(90deg,#667eea 0%,#764ba2 100%);height:100%}@keyframes progressGrow{0%{width:0%}100%{width:100%}}@media (max-width: 768px){.announcement-toast{bottom:16px;right:16px;width:calc(100vw - 32px)}.announcement-toast.expanded{width:calc(100vw - 32px)}.toast-preview-img{height:100px}.toast-full-media{max-height:300px}}@media (max-width: 480px){.announcement-toast{bottom:12px;right:12px;width:calc(100vw - 24px)}.toast-header{padding:12px}.toast-icon{font-size:20px}.toast-title{font-size:14px}.toast-preview-img{height:80px}.toast-full-media{max-height:250px}}.announcement-toast::before{animation:rainbowShift 3s linear infinite;background:linear-gradient(90deg,#ff6b6b 0%,#ffd93d 25%,#6bcf7f 50%,#4d96ff 75%,#9c27b0 100%);content:'';height:4px;left:0;position:absolute;right:0;top:0}@keyframes rainbowShift{0%{filter:hue-rotate(0deg)}100%{filter:hue-rotate(360deg)}}.dashboard-container{background:var(--gradient-warm)}.dashboard-nav{background:var(--bg-primary);box-shadow:var(--shadow-md);position:-webkit-sticky;position:sticky;z-index:var(--z-sticky)}.nav-brand{gap:15px}.nav-brand h1{color:#2e7d32;font-weight:700}.nav-user{color:#2e7d32;font-weight:600;gap:20px}.nav-user-actions{align-items:center;display:flex;gap:10px}.btn-signout{background:#ffd54f;border-radius:20px;color:#2e7d32;font-weight:600;padding:8px 16px;transition:all 0.3s ease}.btn-signout:hover{background:#ffb300}.dashboard-content{padding:30px}.welcome-section{background:white;border-radius:20px;box-shadow:0 10px 30px rgba(0,0,0,0.1);margin-bottom:40px;padding:30px}.welcome-section h2{color:#2e7d32;font-weight:700;margin-bottom:15px}.welcome-section p{color:#558b2f;font-size:1.2rem;line-height:1.6;margin:0}.admin-tabs{display:flex;gap:10px;margin-bottom:30px}.tab-button{background:white;border:2px solid #ffd54f;color:#2e7d32;font-size:0.9rem;padding:12px 20px}.tab-button:hover{background:#ffd54f}.tab-button.active{background:#ffd54f;box-shadow:0 5px 15px rgba(255,213,79,0.4);color:#2e7d32}.stat-icon{border-radius:15px;padding:20px}.stat-content h3{font-size:1.1rem;margin:0 0 10px}.stat-number{color:#ffd54f;margin:0}.class-filter{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:25px}.filter-btn{background:white;border:2px solid #e1e5e9;border-radius:20px;color:#2e7d32;padding:8px 16px;transition:all 0.3s ease}.filter-btn:hover, .filter-btn.active{background:#ffd54f;border-color:#ffd54f;transform:translateY(-2px)}.class-badge['1st']{background:#fce4ec;color:#c2185b}.summary-card{padding:20px}.summary-card p{color:#2e7d32;font-size:1.8rem;font-weight:800;margin:0}.event-header{align-items:center}.event-details span{padding:5px 10px}.filters-container{align-items:flex-end;background:white;border-radius:15px;box-shadow:0 10px 30px rgba(0,0,0,0.1);display:flex;flex-wrap:wrap;gap:30px;margin-bottom:30px;padding:25px}.control-group{flex:1 1;min-width:200px}.class-select, .date-input{cursor:pointer}.date-input-error{background-color:#fef2f2!important;border-color:#ef4444!important}.date-input-error:focus{border-color:#dc2626!important;box-shadow:0 0 0 3px rgba(239,68,68,0.1)!important}.date-error-message{align-items:center;animation:fadeIn 0.3s ease-in;color:#ef4444;display:flex;font-size:0.85rem;font-weight:600;gap:5px;margin-top:5px}.blocked-dates-info{background:#fff3e0;border-left:3px solid #ff9800;border-radius:4px;margin-top:6px;padding:6px 10px}.blocked-dates-info small{line-height:1.4}@keyframes fadeIn{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.attendance-summary{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:30px}.attendance-summary .summary-card.present{border-left:4px solid #4caf50}.attendance-summary .summary-card.absent{border-left:4px solid #f44336}.attendance-summary .summary-card.late{border-left:4px solid #ff9800}.attendance-summary .summary-card.total{border-left:4px solid #2196f3}@media (max-width: 768px){.dashboard-nav{flex-direction:column;gap:15px;padding:15px 20px}.nav-brand h1{font-size:1.2rem}.nav-user{flex-direction:column;gap:10px;text-align:center;width:100%}.nav-user span{font-size:0.9rem;width:100%}.nav-user-actions{display:flex;flex-direction:row;gap:5px;justify-content:center;width:86%}.nav-user-actions button{flex:1 1;font-size:0.85rem!important;min-width:0;padding:6px 12px!important;white-space:nowrap}.dashboard-content{padding:20px}.welcome-section h2{font-size:2rem}.admin-tabs{gap:8px}.tab-button{font-size:0.8rem;padding:10px 16px}.stats-grid{grid-template-columns:1fr}.dashboard-grid{grid-template-columns:1fr}.action-buttons{flex-direction:column}.section-header{flex-direction:column;gap:15px;text-align:center}.class-filter{justify-content:center}.filters-container{flex-direction:column;gap:20px}.control-group{min-width:0;min-width:initial;width:100%}.finance-summary{grid-template-columns:repeat(2,1fr)}.gallery-grid{grid-template-columns:1fr}.events-grid{grid-template-columns:1fr}.attendance-controls{flex-direction:column;gap:20px}.attendance-summary{grid-template-columns:repeat(2,1fr)}.attendance-buttons{flex-direction:column}.users-table, .students-table, .finance-table, .attendance-table{font-size:0.9rem}.users-table th,
  .users-table td,
  .students-table th,
  .students-table td,
  .finance-table th,
  .finance-table td,
  .attendance-table th,
  .attendance-table td{padding:10px 8px}}@media (max-width: 480px){.dashboard-content{padding:15px}.welcome-section{padding:20px}.welcome-section h2{font-size:1.8rem}.nav-user span{font-size:0.85rem}.nav-user-actions button{font-size:0.8rem!important;padding:5px 10px!important}.btn-icon{font-size:0.9rem}.stat-card{padding:20px}.stat-icon{font-size:2rem;padding:15px}.stat-number{font-size:2rem}.finance-summary{grid-template-columns:1fr}.attendance-summary{grid-template-columns:1fr}.event-actions{flex-direction:column}.photo-actions{flex-direction:column}}.activity-audit-info{align-items:center;color:#6b7280;display:flex;font-size:0.85rem;gap:5px;margin-top:5px}.audit-icon{font-size:0.9rem}.audit-text{color:#6b7280;font-size:0.85rem;font-style:italic}.audit-info-cell{color:#6b7280;font-size:0.85rem}.report-audit-info{color:#6b7280;font-size:0.85rem;margin-top:5px}.remark-audit-info{border-top:1px solid #e5e7eb;margin-top:8px;padding-top:8px}.remark-audit-info .audit-text{display:block;margin-top:4px}.attendance-overview{background:white;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,0.1);margin-bottom:24px;padding:24px}.attendance-header h3{margin:0 0 16px}.view-mode-selector{display:flex;gap:8px;margin-bottom:16px}.mode-button{background:white;border:2px solid #e5e7eb;border-radius:8px;color:#6b7280;cursor:pointer;font-weight:600;padding:8px 16px;transition:all 0.2s ease}.mode-button:hover{border-color:#3b82f6;color:#3b82f6}.mode-button.active{background:#3b82f6;border-color:#3b82f6;color:white}.date-controls{align-items:center;display:flex;flex-wrap:wrap;gap:16px}.date-selector{align-items:center;display:flex;gap:12px}.date-range-selector{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.monthly-selector{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.date-input-group{align-items:center;display:flex;gap:8px}.date-selector label{color:#374151;font-weight:600}.date-input{background:white;border:2px solid #d1d5db;border-radius:8px;font-size:14px;padding:8px 12px}.date-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,0.1);outline:none}.loading-message{color:#6b7280;padding:40px}.spinner{margin:0 auto 16px}.error-message{padding:40px;text-align:center}.retry-button{margin-top:16px}.no-data-message{color:#6b7280;padding:40px;text-align:center}.sub-message{color:#9ca3af;font-size:14px;margin-top:8px}.attendance-summary{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:20px;gap:20px;margin-bottom:32px}.class-summary-card{background:white;border:2px solid #e5e7eb;border-radius:16px;box-shadow:0 2px 8px rgba(0,0,0,0.05);padding:20px;transition:all 0.3s ease}.class-summary-card:hover{border-color:#3b82f6;box-shadow:0 8px 25px rgba(59,130,246,0.15);transform:translateY(-2px)}.class-header{align-items:center;border-bottom:2px solid #f3f4f6;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:12px}.class-name{color:#1f2937;font-size:1.3rem;font-weight:700;margin:0}.attendance-percentage-container{align-items:flex-end;display:flex;flex-direction:column;gap:8px}.attendance-percentage{color:#3b82f6;font-size:1.8rem;font-weight:700}.attendance-bar{background:#f3f4f6;border-radius:4px;height:8px;overflow:hidden;width:120px}.attendance-fill{border-radius:4px;height:100%;transition:width 0.3s ease}.class-stats-simple{display:flex;flex-direction:column;gap:16px}.main-stats{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.stat-item-large{align-items:center;background:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;display:flex;gap:12px;padding:16px;transition:all 0.2s ease}.stat-item-large:hover{background:#eff6ff;border-color:#3b82f6}.stat-item-large.present:hover{background:#ecfdf5;border-color:#10b981}.stat-item-large.absent:hover{background:#fef2f2;border-color:#ef4444}.stat-icon{font-size:24px}.stat-content{gap:4px}.stat-value{color:#1f2937;font-size:1.5rem}.stat-label{color:#6b7280}.secondary-stats{display:flex;flex-wrap:wrap;gap:16px}.stat-item-small{align-items:center;background:white;border:1px solid #e5e7eb;border-radius:8px;display:flex;font-size:14px;gap:6px;padding:8px 12px}.stat-item-small .stat-label{color:#6b7280;font-weight:500}.stat-item-small .stat-value{color:#1f2937;font-size:14px;font-weight:600}.additional-info{background:#f9fafb;border-radius:8px;color:#6b7280;font-size:12px;font-style:italic;margin-top:12px;padding:8px;text-align:center}.quick-overview{background:white;border:2px solid #e5e7eb;border-radius:16px;box-shadow:0 2px 8px rgba(0,0,0,0.05);margin-bottom:24px;padding:20px}.quick-overview h4{color:#1f2937;font-size:1.2rem;font-weight:700;margin:0 0 16px}.overview-table{display:flex;flex-direction:column;gap:12px}.overview-row{align-items:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;display:flex;justify-content:space-between;padding:16px;transition:all 0.2s ease}.overview-row:hover{background:#eff6ff;border-color:#3b82f6}.overview-class{flex:0 0 80px}.overview-stats{display:flex;flex:1 1;gap:20px;justify-content:center}.overview-stat{align-items:center;display:flex;font-size:14px;font-weight:600;gap:6px}.overview-stat .stat-icon{font-size:16px}.overview-stat .stat-value{color:#1f2937}.overview-percentage{align-items:flex-end;display:flex;flex:0 0 100px;flex-direction:column;gap:6px}.percentage-value{color:#3b82f6;font-size:1.2rem;font-weight:700}.percentage-bar-small{background:#f3f4f6;border-radius:3px;height:6px;overflow:hidden;width:80px}.percentage-fill-small{border-radius:3px;height:100%;transition:width 0.3s ease}.overall-stats h4{font-size:1.2rem;font-weight:700}.overall-card{border-radius:16px;box-shadow:0 4px 12px rgba(102,126,234,0.2);transition:all 0.3s ease}.overall-card:hover{box-shadow:0 8px 25px rgba(102,126,234,0.3);transform:translateY(-2px)}.overall-card.primary{background:linear-gradient(135deg,#3b82f6 0%,#1d4ed8 100%);box-shadow:0 6px 20px rgba(59,130,246,0.3)}.overall-card.primary:hover{box-shadow:0 10px 30px rgba(59,130,246,0.4)}.card-icon{font-size:2.5rem;opacity:0.9}.card-content h5{font-weight:600;margin:0 0 8px}.card-value{font-size:2rem}.card-subtitle{font-size:12px;font-weight:500;margin-top:4px;opacity:0.8}.attendance-table-container{margin-bottom:32px}.attendance-table-container h4{color:#1f2937;margin:0 0 16px}.attendance-table{border:1px solid #e5e7eb;border-radius:8px}.table-header{background:#f9fafb;border-bottom:1px solid #e5e7eb;grid-template-columns:1fr 1fr 1fr 1fr 1fr 1fr 1.5fr}.header-cell{border-right:1px solid #e5e7eb;color:#374151;font-weight:600;padding:12px 16px;text-align:center}.header-cell:last-child{border-right:none}.table-row{grid-template-columns:1fr 1fr 1fr 1fr 1fr 1fr 1.5fr;transition:background-color 0.2s ease}.table-row:hover{background:#f9fafb}.table-cell{align-items:center;border-right:1px solid #e5e7eb;display:flex;justify-content:center;padding:12px 16px;text-align:center}.table-cell:last-child{border-right:none}.class-badge{background:#3b82f6;border-radius:20px;color:white;font-size:12px}.status-badge{align-items:center;border-radius:6px;display:inline-flex;font-size:12px;gap:4px;padding:4px 8px}.status-badge.present{background:#dcfce7;color:#166534}.status-badge.absent{background:#fee2e2;color:#991b1b}.status-badge.late{background:#fef3c7;color:#92400e}.status-badge.missed{background:#f3f4f6;color:#374151}.percentage-bar{background:#f3f4f6;border-radius:10px;height:20px;overflow:hidden;position:relative;width:100%}.percentage-fill{height:100%;transition:width 0.3s ease}.percentage-text{color:white;font-size:11px;font-weight:600;left:50%;position:absolute;text-shadow:0 1px 2px rgba(0,0,0,0.3);top:50%;transform:translate(-50%,-50%)}.overall-stats h4{color:#1f2937;margin:0 0 16px}.overall-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:16px;gap:16px}.overall-card{align-items:center;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:12px;color:white;display:flex;gap:16px;padding:20px}.card-icon{font-size:2rem}.card-content h5{font-size:14px;margin:0 0 4px;opacity:0.9}.card-value{font-size:1.5rem;font-weight:700;margin:0}@media (max-width: 768px){.attendance-overview{margin-bottom:16px;padding:16px}.attendance-header h3{font-size:1.3rem}.view-mode-selector{flex-direction:column;gap:6px}.mode-button{font-size:14px;padding:10px 12px;text-align:center}.date-controls{align-items:stretch;flex-direction:column;gap:12px}.date-selector,
  .date-range-selector,
  .monthly-selector{align-items:stretch;flex-direction:column;gap:8px}.date-input-group{align-items:stretch;flex-direction:column}.date-selector label{font-size:14px}.date-input{font-size:16px;padding:10px 12px}.attendance-summary{gap:16px;grid-template-columns:1fr;margin-bottom:24px}.class-summary-card{padding:16px}.class-header{align-items:flex-start;flex-direction:column;gap:12px}.class-name{font-size:1.2rem}.attendance-percentage-container{align-items:flex-start}.attendance-percentage{font-size:1.5rem}.attendance-bar{width:100px}.main-stats{gap:12px;grid-template-columns:1fr}.stat-item-large{padding:12px}.stat-icon{font-size:20px}.stat-value{font-size:1.3rem}.secondary-stats{gap:12px}.stat-item-small{font-size:13px;padding:6px 10px}.quick-overview{padding:16px}.overview-row{flex-direction:column;gap:12px;padding:12px}.overview-class{align-self:flex-start;flex:none}.overview-stats{flex:none;justify-content:space-around;width:100%}.overview-percentage{align-items:center;flex:none;width:100%}.card-icon{font-size:2rem}.card-value{font-size:1.8rem}.attendance-table-container h4{font-size:1.1rem}.table-header{font-size:12px;grid-template-columns:1fr 1fr 1fr 1fr 1fr 1fr 1fr}.header-cell{font-size:11px;padding:8px 6px}.table-row{font-size:12px;grid-template-columns:1fr 1fr 1fr 1fr 1fr 1fr 1fr}.table-cell{font-size:11px;padding:8px 6px}.class-badge{font-size:10px;padding:2px 6px}.status-badge{font-size:10px;padding:2px 6px}.percentage-bar{height:16px}.percentage-text{font-size:9px}.overall-cards{gap:12px;grid-template-columns:1fr}.overall-card{padding:16px}.card-icon{font-size:1.5rem}.card-content h5{font-size:12px}.card-value{font-size:1.3rem}}@media (max-width: 480px){.attendance-overview{padding:12px}.attendance-header h3{font-size:1.2rem}.class-summary-card{padding:12px}.class-name{font-size:1rem}.attendance-percentage{font-size:1.2rem}.stat-item{padding:8px}.table-header{grid-template-columns:1fr 1fr 1fr 1fr 1fr 1fr 1fr}.header-cell{font-size:10px;padding:6px 4px}.table-row{grid-template-columns:1fr 1fr 1fr 1fr 1fr 1fr 1fr}.table-cell{font-size:10px;padding:6px 4px}.overall-card{padding:12px}.card-icon{font-size:1.3rem}.card-value{font-size:1.2rem}}.user-creation-modal{max-width:800px;width:100%}.error-banner{background:var(--error-light);border:1px solid var(--error);border-radius:var(--radius-md);color:var(--error-dark);gap:var(--space-2);margin-bottom:var(--space-5);padding:var(--space-3) var(--space-4)}.error-icon{font-size:var(--font-size-base)}.success-banner{background:var(--success-light);border:1px solid var(--success);border-radius:var(--radius-md);flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-5);padding:var(--space-3) var(--space-4)}.success-icon{font-size:16px}.redirect-message{color:#15803d;font-size:12px}.user-creation-form{display:flex;flex-direction:column;gap:0}.form-section{background:white;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px rgba(0,0,0,0.1);margin-bottom:20px;padding:24px}.form-section h3{color:#1f2937;font-size:1.1rem;font-weight:600;margin:0 0 16px}.role-selection{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:12px;gap:12px}.role-option{cursor:pointer}.role-option input[type="radio"]{display:none}.role-card{align-items:center;background:white;border:2px solid #e5e7eb;border-radius:8px;display:flex;gap:12px;padding:16px;transition:all 0.2s ease}.role-option input[type="radio"]:checked + .role-card{background:#eff6ff;border-color:#3b82f6}.role-option:hover .role-card{border-color:#3b82f6}.role-icon{align-items:center;background:#f3f4f6;border-radius:8px;display:flex;font-size:24px;height:40px;justify-content:center;width:40px}.role-info h4{color:#1f2937;font-size:14px;font-weight:600;margin:0 0 4px}.role-info p{color:#6b7280;font-size:12px;margin:0}.form-row:last-child{margin-bottom:0}.form-group label{margin-bottom:4px}.form-input{border:2px solid #e5e7eb;border-radius:8px;box-sizing:border-box;font-size:14px;padding:12px 16px;width:100%}.form-input:focus{background:#fafafa;border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,0.1)}.form-input.error{background:#fef2f2;border-color:#ef4444}.form-input::placeholder{color:#9ca3af;font-style:italic}.error-message{color:#ef4444;font-size:12px}.help-text{color:#6b7280;font-size:12px;margin-top:4px}.form-field{display:flex;flex-direction:column;gap:8px}.form-field label{color:#374151;font-size:14px;font-weight:600;margin-bottom:4px}.form-field input,
.form-field select,
.form-field textarea{background:white;border:2px solid #e5e7eb;border-radius:8px;box-sizing:border-box;font-size:14px;padding:12px 16px;transition:all 0.2s ease;width:100%}.form-field input:focus,
.form-field select:focus,
.form-field textarea:focus{background:#fafafa;border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,0.1);outline:none}.form-field input.error,
.form-field select.error,
.form-field textarea.error{background:#fef2f2;border-color:#ef4444}.form-field .error-message{color:#ef4444;font-size:12px;font-weight:500;margin-top:4px}.form-field textarea{font-family:inherit;min-height:80px;resize:vertical}.roll-number-input{align-items:flex-end;display:flex;gap:8px}.roll-number-input .form-input{flex:1 1}.roll-number-preview{background:#f0f9ff;border:1px solid #0ea5e9;border-radius:6px;font-size:14px;margin-top:8px;padding:8px 12px}.generated-roll{background:#e0f2fe;border-radius:4px;color:#0369a1;font-family:monospace;font-weight:600;padding:2px 6px}.form-actions{padding-top:16px}.spinner{border:2px solid #f3f4f6}@media (max-width: 768px){.user-creation-modal{margin:0 16px;max-width:100%}.form-row{grid-template-columns:1fr}.role-selection{grid-template-columns:1fr}.form-actions{flex-direction:column}}.excel-bulk-user-creation-modal{max-height:90vh;max-width:1000px;overflow-y:auto;width:100%}.step-indicator{border-bottom:2px solid var(--border-light);margin-bottom:var(--space-8);padding:var(--space-5) 0}.step{margin:0 15px}.step:not(:last-child)::after{width:30px}.step-label{font-size:11px;text-align:center}.download-section{margin:0 auto;max-width:600px}.template-info{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:30px;padding:20px}.template-info h4{color:#1e293b;font-size:16px;font-weight:600;margin:0 0 12px}.template-info ul{margin:0;padding-left:20px}.template-info li{color:#475569;font-size:14px;margin-bottom:6px}.download-actions{text-align:center}.download-note{color:#6b7280;font-size:14px;font-style:italic;margin-top:16px}.upload-section{margin:0 auto;max-width:500px;text-align:center}.file-upload-area{background:#f8fafc;border:2px dashed #cbd5e1;border-radius:12px;padding:40px 20px;transition:all 0.2s ease}.file-upload-area:hover{background:#eff6ff;border-color:#3b82f6}.upload-button{margin-bottom:16px}.upload-note{color:#6b7280;font-size:14px;margin:0}.field-group input[type="date"]{cursor:pointer}.field-group input[placeholder*="MM/DD/YYYY"]{font-family:monospace;letter-spacing:1px}.field-group input[type="number"]{-moz-appearance:textfield}.field-group input[type="number"]::-webkit-outer-spin-button,
.field-group input[type="number"]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}@media (max-width: 768px){.excel-bulk-user-creation-modal{margin:0 16px;max-width:100%}.step-indicator{flex-wrap:wrap;gap:10px}.step{margin:0 8px}.type-selection{grid-template-columns:1fr}.users-list{grid-template-columns:1fr}.user-fields{grid-template-columns:1fr}.results-summary{flex-direction:column;gap:15px}.modal-actions{flex-direction:column}}.toast-notification{align-items:flex-start;background:white;border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,0.15);display:flex;gap:12px;max-width:500px;min-width:320px;opacity:0;padding:16px 20px;pointer-events:none;position:fixed;right:20px;top:20px;transform:translateX(400px);transition:all 0.3s cubic-bezier(0.68,-0.55,0.265,1.55);z-index:10000}.toast-notification.toast-show{opacity:1;pointer-events:all;transform:translateX(0)}.toast-icon-wrapper{align-items:center;border-radius:50%;display:flex;flex-shrink:0;height:32px;justify-content:center;width:32px}.toast-icon{align-items:center;display:flex;font-size:20px;justify-content:center}.toast-content-wrapper{flex:1 1;min-width:0}.toast-title{color:#1f2937;font-size:15px;font-weight:600;margin-bottom:4px}.toast-message{color:#6b7280;font-size:14px;word-wrap:break-word;line-height:1.4}.toast-close{align-items:center;background:none;border:none;border-radius:4px;color:#9ca3af;cursor:pointer;display:flex;flex-shrink:0;font-size:24px;height:24px;justify-content:center;padding:0;transition:all 0.2s;width:24px}.toast-close:hover{background:rgba(0,0,0,0.05);color:#6b7280}.toast-notification.toast-success{border-left:4px solid #10b981}.toast-notification.toast-success .toast-icon-wrapper{background:#d1fae5;color:#059669}.toast-notification.toast-error{border-left:4px solid #ef4444}.toast-notification.toast-error .toast-icon-wrapper{background:#fee2e2;color:#dc2626}.toast-notification.toast-warning{border-left:4px solid #f59e0b}.toast-notification.toast-warning .toast-icon-wrapper{background:#fef3c7;color:#d97706}.toast-notification.toast-info{border-left:4px solid #3b82f6}.toast-notification.toast-info .toast-icon-wrapper{background:#dbeafe;color:#2563eb}@media (max-width: 640px){.toast-notification{left:10px;max-width:calc(100% - 20px);min-width:auto;padding:14px 16px;right:10px;top:10px}.toast-icon-wrapper{height:28px;width:28px}.toast-icon{font-size:18px}.toast-title{font-size:14px}.toast-message{font-size:13px}}.toast-notification:nth-child(2){top:100px}.toast-notification:nth-child(3){top:180px}.toast-notification:nth-child(n+4){display:none}.holiday-manager{margin:0 auto;max-width:900px;padding:20px}.holiday-manager-loading{align-items:center;display:flex;flex-direction:column;gap:15px;justify-content:center;padding:60px 20px}.holiday-header{align-items:center;border-bottom:2px solid #f0f0f0;display:flex;justify-content:space-between;margin-bottom:25px;padding-bottom:15px}.holiday-header-left h3{color:#1a1a1a;font-size:1.5rem;font-weight:600;margin:0 0 5px}.holiday-header-left p{color:#666;font-size:0.9rem;margin:0}.holiday-header-right{align-items:center;display:flex;gap:12px}.year-select{background:white;border:1px solid #ddd;border-radius:6px;color:#333;cursor:pointer;font-size:0.95rem;font-weight:500;padding:8px 12px;transition:all 0.2s ease}.year-select:hover{border-color:#2e7d32}.year-select:focus{border-color:#2e7d32;box-shadow:0 0 0 3px rgba(46,125,50,0.1);outline:none}.add-holiday-btn{font-size:0.9rem!important;padding:8px 16px!important;white-space:nowrap}.holiday-form-card{background:#f9f9f9;border-left:4px solid #2e7d32;border-radius:8px;margin-bottom:25px;padding:20px}.holiday-form-card h4{color:#1a1a1a;font-size:1.1rem;font-weight:600;margin:0 0 18px}.holiday-form{display:flex;flex-direction:column;gap:16px}.form-row{grid-gap:16px;gap:16px}.form-group{gap:6px}.form-group label{font-size:0.85rem;font-weight:500}.form-input{background:white;border:1px solid #ddd;border-radius:6px;font-family:inherit;font-size:0.95rem;padding:10px 12px;transition:all 0.2s ease}.form-input:hover{border-color:#bbb}.form-input:focus{border-color:#2e7d32;box-shadow:0 0 0 3px rgba(46,125,50,0.1);outline:none}.form-actions{gap:10px;padding-top:8px}.form-actions button{font-size:0.9rem!important;padding:8px 16px!important}.holidays-list{margin-bottom:30px}.no-holidays{background:white;border:1px dashed #ddd;border-radius:8px;padding:50px 20px;text-align:center}.no-holidays p{color:#666;font-size:1rem;margin:8px 0}.no-holidays-hint{color:#999!important;font-size:0.95rem!important}.holidays-grid{background:white;border:1px solid #e0e0e0;border-radius:8px;overflow:hidden}.holiday-card{align-items:center;border-bottom:1px solid #f0f0f0;display:grid;grid-template-columns:1fr auto;padding:16px 20px;transition:background 0.2s ease}.holiday-card:last-child{border-bottom:none}.holiday-card:hover{background:#f9f9f9}.holiday-card-header{display:none}.holiday-card-body{display:flex;flex-direction:column;gap:4px}.holiday-name{color:#1a1a1a;font-size:1rem;font-weight:500;margin:0}.holiday-date{align-items:center;color:#666;display:flex;font-size:0.85rem;gap:6px;margin:0}.holiday-date::before{content:'📅';font-size:0.9rem}.holiday-type-badge{background:#f0f0f0;border-radius:12px;color:#555;font-size:0.75rem;font-weight:500;margin-left:8px;padding:4px 10px}.holiday-actions{display:flex;gap:4px;opacity:0.6;transition:opacity 0.2s ease}.holiday-card:hover .holiday-actions{opacity:1}.action-btn{border:none;border-radius:4px;opacity:0.7;padding:6px 10px;transition:all 0.2s ease}.action-btn:hover{background:rgba(0,0,0,0.05);opacity:1}.edit-btn:hover{background:rgba(46,125,50,0.1)}.delete-btn:hover{background:rgba(244,67,54,0.1)}.holiday-info-card{background:#f9f9f9;border-left:3px solid #2e7d32;border-radius:8px;padding:16px 20px}.holiday-info-card h4{color:#1a1a1a;font-size:0.95rem;font-weight:600;margin:0 0 12px}.holiday-info-card ul{display:flex;flex-direction:column;gap:8px;list-style:none;margin:0;padding:0}.holiday-info-card li{color:#555;font-size:0.85rem;line-height:1.5;padding-left:5px}@media (max-width: 768px){.holiday-header{align-items:flex-start;flex-direction:column}.holiday-header-right{width:100%}.year-select,
  .add-holiday-btn{flex:1 1}.form-row{grid-template-columns:1fr}.holiday-card{gap:12px;grid-template-columns:1fr}.holiday-actions{justify-content:flex-end;opacity:1}.form-actions{flex-direction:column}.form-actions button{width:100%}}@media (max-width: 480px){.holiday-manager{padding:12px}.holiday-header-left h3{font-size:1.3rem}.holiday-form-card{padding:16px}.holiday-card{padding:14px 16px}.holiday-info-card{padding:14px 16px}.holiday-name{font-size:0.95rem}.holiday-date{font-size:0.8rem}}.password-reset-modal{max-width:500px;width:90%}.modal-overlay{align-items:center;animation:fadeIn 0.2s ease-in-out;background:rgba(0,0,0,0.5);bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{animation:slideUp 0.3s ease-out;background:white;border-radius:12px;box-shadow:0 10px 40px rgba(0,0,0,0.2);max-height:90vh;overflow-y:auto}.modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:20px 24px}.modal-header h2{color:#2e7d32;font-size:1.5rem;font-weight:700;margin:0}.modal-close{align-items:center;background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;display:flex;font-size:28px;height:32px;justify-content:center;padding:0;transition:all 0.2s;width:32px}.modal-close:hover{background:#f3f4f6;color:#374151}.modal-body{padding:24px}.admin-info{background:#e3f2fd;border:1px solid #2196f3;border-radius:8px;margin-bottom:20px;padding:16px}.admin-info p{color:#1565c0;line-height:1.5;margin:0}.admin-info strong{color:#0d47a1;font-weight:600}.form-group{margin-bottom:20px}.password-input-wrapper{position:relative;width:100%}.form-group input{border:2px solid #e5e7eb;border-radius:8px;font-size:1rem;padding:12px 16px;transition:all 0.2s;width:100%}.password-input-wrapper input{padding-right:48px}.password-toggle-btn{background:none;border:none;cursor:pointer;font-size:1.2rem;opacity:0.6;padding:4px 8px;position:absolute;right:12px;top:50%;transform:translateY(-50%);transition:opacity 0.2s}.password-toggle-btn:hover{opacity:1}.form-group input:focus{border-color:#2e7d32;box-shadow:0 0 0 3px rgba(46,125,50,0.1);outline:none}.form-group input:disabled{background:#f9fafb;cursor:not-allowed}.password-requirements{color:#6b7280;display:block;font-size:0.85rem;margin-top:6px}.error-message{animation:shake 0.3s;background:#fee2e2;border-radius:8px;color:#991b1b;padding:12px 16px}.success-message{animation:slideDown 0.3s;border-radius:8px;color:#065f46;padding:12px 16px}.modal-actions{margin-top:24px}@keyframes slideUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes shake{0%, 100%{transform:translateX(0)}25%{transform:translateX(-10px)}75%{transform:translateX(10px)}}@media (max-width: 768px){.password-reset-modal{max-width:none;width:95%}.modal-header h2{font-size:1.25rem}.modal-body{padding:20px}.modal-actions{flex-direction:column-reverse}.modal-actions button{width:100%}}.bulk-attendance-form{background:white;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,0.1);padding:24px}.bulk-attendance-loading{align-items:center;color:#6b7280;display:flex;flex-direction:column;justify-content:center;padding:40px}.bulk-attendance-placeholder{background:#f9fafb;border:2px dashed #d1d5db;border-radius:8px;color:#6b7280;padding:40px;text-align:center}.bulk-attendance-disabled{background:linear-gradient(135deg,#fff3e0 0%,#ffe0b2 100%);border:2px solid #ff9800;border-radius:15px;padding:60px 40px;text-align:center}.bulk-attendance-disabled .disabled-icon{animation:pulse 2s ease-in-out infinite;font-size:4rem;margin-bottom:20px}@keyframes pulse{0%, 100%{opacity:1;transform:scale(1)}50%{opacity:0.8;transform:scale(1.1)}}.bulk-attendance-disabled h3{color:#e65100;font-size:1.8rem;font-weight:700;margin:0 0 15px}.bulk-attendance-disabled .disabled-message{color:#ef6c00;font-size:1.2rem;font-weight:600;margin:0 0 30px}.bulk-attendance-disabled .disabled-info{background:white;border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,0.1);margin:0 auto;max-width:500px;padding:25px}.bulk-attendance-disabled .disabled-info h4{color:#2e7d32;font-size:1.2rem;font-weight:600;margin:0 0 15px}.bulk-attendance-disabled .disabled-info ul{list-style:none;margin:0;padding:0;text-align:left}.bulk-attendance-disabled .disabled-info li{color:#555;font-size:1rem;line-height:1.5;padding:8px 0}.spinner{border:4px solid #f3f4f6;border-top-color:#3b82f6;height:40px;margin-bottom:16px;width:40px}.attendance-header{align-items:center;border-bottom:2px solid #f3f4f6;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.attendance-header h3{color:#1f2937;font-size:1.5rem;margin:0}.attendance-info{align-items:center;display:flex;gap:16px}.date-info, .count-info{background:#f3f4f6;border-radius:20px;color:#374151;font-size:14px;font-weight:600;padding:6px 12px}.error-banner{align-items:center;background:#fee2e2;border:1px solid #fecaca;border-radius:8px;color:#991b1b;display:flex;gap:8px;margin-bottom:20px;padding:12px 16px}.success-banner{align-items:center;background:#dcfce7;border:1px solid #bbf7d0;border-radius:8px;color:#166534;display:flex;gap:8px;margin-bottom:20px;padding:12px 16px}.error-icon, .success-icon{font-size:16px}.bulk-actions{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:24px;padding:16px}.bulk-actions h4{color:#374151;font-size:14px;font-weight:600;margin:0 0 12px}.bulk-buttons{display:flex;flex-wrap:wrap;gap:12px}.bulk-btn{background:white;border:2px solid #e5e7eb;border-radius:6px;color:#374151;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px;transition:all 0.2s ease}.bulk-btn:hover{border-color:#3b82f6;color:#3b82f6}.bulk-btn.present:hover{border-color:#10b981;color:#10b981}.bulk-btn.absent:hover{border-color:#ef4444;color:#ef4444}.bulk-btn.late:hover{border-color:#f59e0b;color:#f59e0b}.attendance-table-container{border:1px solid #e5e7eb;border-radius:8px;margin-bottom:24px;overflow:hidden}.attendance-table{border-collapse:collapse;width:100%}.attendance-table thead{background:#f9fafb;border-bottom:2px solid #e5e7eb}.attendance-table th{color:#374151;font-size:14px;font-weight:600;padding:12px 16px;text-align:left}.attendance-table td{border-bottom:1px solid #e5e7eb;padding:12px 16px;vertical-align:middle}.attendance-table tbody tr:hover{background:#f9fafb}.roll-number{color:#3b82f6;font-family:monospace;font-weight:600;width:100px}.student-name{color:#1f2937;font-weight:500;min-width:200px}.status-cell{min-width:300px}.status-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.status-btn{background:white;border:2px solid #e5e7eb;border-radius:6px;color:#6b7280;cursor:pointer;font-size:12px;font-weight:600;padding:6px 12px;transition:all 0.2s ease}.status-btn:hover{border-color:#3b82f6;color:#3b82f6}.status-btn.active{background:#eff6ff;border-color:#3b82f6;color:#3b82f6}.status-btn.present.active{background:#ecfdf5;border-color:#10b981;color:#10b981}.status-btn.absent.active{background:#fef2f2;border-color:#ef4444;color:#ef4444}.status-btn.late.active{background:#fffbeb;border-color:#f59e0b;color:#f59e0b}.current-status{align-items:center;display:flex;gap:8px}.status-indicator{align-items:center;display:flex;font-size:12px;font-weight:600;gap:4px}.remarks-cell{min-width:200px}.remarks-input{background:white;border:2px solid #e5e7eb;border-radius:6px;font-size:14px;transition:border-color 0.2s ease}.remarks-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,0.1)}.attendance-summary{align-items:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;padding:20px}.summary-stats{display:flex;flex-wrap:wrap;gap:24px}.stat-item{align-items:center;display:flex;gap:8px}.stat-label{color:#374151;font-size:14px;font-weight:600}.stat-value{background:white;border:1px solid #e5e7eb;border-radius:4px;font-size:16px;font-weight:700;padding:4px 8px}.stat-value.present{border-color:#10b981;color:#10b981}.stat-value.absent{border-color:#ef4444;color:#ef4444}.stat-value.late{border-color:#f59e0b;color:#f59e0b}.stat-value.unmarked{border-color:#6b7280;color:#6b7280}.save-attendance-btn{align-items:center;border-radius:8px;display:flex;font-size:16px;font-weight:600;gap:8px;padding:12px 24px}.save-attendance-btn:disabled{cursor:not-allowed;opacity:0.5}.btn-icon{font-size:16px}.mobile-attendance-cards{display:none}.mobile-student-card{background:white;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 2px 6px rgba(0,0,0,0.06);margin-bottom:10px;overflow:hidden;padding:14px;position:relative;transition:all 0.2s ease}.mobile-student-card::before{background:#e5e7eb;content:'';height:100%;left:0;position:absolute;top:0;transition:all 0.2s ease;width:4px}.mobile-student-card:hover{border-color:#3b82f6;box-shadow:0 4px 12px rgba(59,130,246,0.15);transform:translateY(-1px)}.mobile-student-card:hover::before{background:#3b82f6}.mobile-student-header{align-items:flex-start;border-bottom:1px solid #f3f4f6;display:flex;gap:8px;justify-content:space-between;margin-bottom:10px;padding-bottom:8px}.mobile-student-info{display:flex;flex:1 1;flex-direction:column;gap:3px;min-width:0}.mobile-roll-number{background:#eff6ff;border-radius:4px;color:#3b82f6;display:inline-block;font-family:monospace;font-size:12px;font-weight:700;padding:2px 6px;width:-webkit-fit-content;width:fit-content}.mobile-student-name{color:#1f2937;font-size:15px;font-weight:600;line-height:1.3;word-wrap:break-word}.mobile-current-status{align-items:center;background:#f3f4f6;border-radius:16px;color:#6b7280;display:flex;flex-shrink:0;font-size:11px;font-weight:600;gap:4px;padding:4px 8px;white-space:nowrap}.mobile-current-status.present{background:#ecfdf5;color:#10b981}.mobile-current-status.absent{background:#fef2f2;color:#ef4444}.mobile-current-status.late{background:#fffbeb;color:#f59e0b}.mobile-status-section{margin-bottom:12px}.mobile-status-title{color:#374151;font-size:12px;font-weight:600;letter-spacing:0.5px;margin-bottom:6px;text-transform:uppercase}.mobile-status-buttons{display:grid;grid-template-columns:1fr 1fr 1fr;grid-gap:6px;gap:6px}.mobile-status-btn{align-items:center;background:white;border:1px solid #e5e7eb;border-radius:6px;color:#6b7280;cursor:pointer;display:flex;flex-direction:column;font-size:11px;font-weight:600;gap:3px;justify-content:center;min-height:50px;overflow:hidden;padding:10px 6px;position:relative;text-align:center;transition:all 0.2s ease}.mobile-status-btn::before{background:transparent;content:'';height:2px;left:0;position:absolute;right:0;top:0;transition:all 0.2s ease}.mobile-status-btn:hover{border-color:#3b82f6;box-shadow:0 2px 8px rgba(59,130,246,0.15);color:#3b82f6;transform:translateY(-1px)}.mobile-status-btn:hover::before{background:#3b82f6}.mobile-status-btn.active{background:#eff6ff;border-color:#3b82f6;box-shadow:0 2px 8px rgba(59,130,246,0.2);color:#3b82f6;transform:translateY(-1px)}.mobile-status-btn.active::before{background:#3b82f6}.mobile-status-btn.present.active{background:#ecfdf5;border-color:#10b981;box-shadow:0 2px 8px rgba(16,185,129,0.2);color:#10b981}.mobile-status-btn.present.active::before{background:#10b981}.mobile-status-btn.absent.active{background:#fef2f2;border-color:#ef4444;box-shadow:0 2px 8px rgba(239,68,68,0.2);color:#ef4444}.mobile-status-btn.absent.active::before{background:#ef4444}.mobile-status-btn.late.active{background:#fffbeb;border-color:#f59e0b;box-shadow:0 2px 8px rgba(245,158,11,0.2);color:#f59e0b}.mobile-status-btn.late.active::before{background:#f59e0b}.mobile-status-icon{font-size:18px}.mobile-remarks-section{margin-bottom:10px}.mobile-remarks-title{color:#374151;font-size:12px;font-weight:600;letter-spacing:0.5px;margin-bottom:6px;text-transform:uppercase}.mobile-remarks-input{background:white;border:1px solid #e5e7eb;border-radius:6px;box-sizing:border-box;font-size:13px;min-height:36px;padding:8px 10px;resize:vertical;transition:all 0.2s ease;width:100%}.mobile-remarks-input:focus{background:#fafbff;border-color:#3b82f6;box-shadow:0 0 0 2px rgba(59,130,246,0.1);outline:none}.mobile-remarks-input::placeholder{color:#9ca3af;font-size:12px}@media (max-width: 768px){.bulk-attendance-form{padding:12px}.attendance-header{align-items:flex-start;flex-direction:column;gap:12px;margin-bottom:20px}.attendance-header h3{font-size:1.3rem}.attendance-info{align-items:center;flex-direction:row;flex-wrap:wrap;gap:12px}.date-info, .count-info{font-size:12px;padding:4px 8px}.bulk-actions{margin-bottom:20px;padding:12px}.bulk-actions h4{font-size:13px;margin-bottom:10px}.bulk-buttons{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.bulk-btn{align-items:center;border-radius:8px;display:flex;font-size:12px;justify-content:center;min-height:44px;padding:10px 12px;text-align:center}.attendance-table-container{display:none}.mobile-attendance-cards{display:block;margin-bottom:20px}.attendance-summary{align-items:stretch;flex-direction:column;gap:16px;padding:16px}.summary-stats{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px;justify-content:stretch}.stat-item{align-items:center;background:white;border:1px solid #e5e7eb;border-radius:8px;flex-direction:column;gap:4px;padding:12px}.stat-label{font-size:12px;text-align:center}.stat-value{font-size:18px;padding:6px 12px}.save-attendance-btn{font-size:15px;justify-content:center;min-height:50px;padding:14px 20px;width:100%}}@media (max-width: 480px){.bulk-attendance-form{padding:8px}.attendance-header h3{font-size:1.2rem}.attendance-info{align-items:flex-start;flex-direction:column;gap:8px}.bulk-buttons{gap:6px;grid-template-columns:1fr}.bulk-btn{font-size:13px;min-height:48px;padding:12px}.mobile-student-card{padding:12px}.mobile-status-buttons{gap:6px}.mobile-status-btn{font-size:11px;min-height:55px;padding:10px 6px}.mobile-status-icon{font-size:16px}.summary-stats{gap:8px;grid-template-columns:1fr}.stat-item{padding:10px}.stat-value{font-size:16px}}.academic-reports-manager{margin:0 auto;max-width:1200px;padding:20px}.reports-header{align-items:center;border-bottom:2px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:20px}.reports-header h2{color:#1f2937;font-size:1.8rem;margin:0}.selection-controls{align-items:end;background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;display:flex;flex-wrap:wrap;gap:20px;margin-bottom:30px;padding:20px}.selection-controls .control-group{display:flex;flex-direction:column;gap:8px;min-width:200px}.selection-controls .control-group label{color:#374151;font-size:14px;font-weight:600}.student-select{background:white;border:2px solid #e5e7eb;border-radius:8px;font-size:14px;min-width:200px;padding:12px 16px;transition:all 0.2s ease}.student-select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,0.1);outline:none}.filter-info{color:#6b7280;font-size:0.9rem;font-style:italic;font-weight:normal}.add-report-form{background:#f9fafb;border:1px solid #e5e7eb;margin-bottom:30px}.add-report-form h3{color:#1f2937;font-size:1.3rem;margin:0 0 20px}.form-group textarea{min-height:80px}.reports-list h3{color:#1f2937;font-size:1.3rem;margin:0 0 20px}.reports-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));grid-gap:20px;gap:20px}.report-card{border-radius:12px;padding:20px;position:relative;transition:all 0.2s ease}.report-card:hover{box-shadow:0 4px 12px rgba(0,0,0,0.1)}.report-header{border-bottom:1px solid #f3f4f6;margin-bottom:16px;padding-bottom:12px}.report-header h4{color:#1f2937;font-size:1.1rem;font-weight:600;margin:0}.report-grade{border-radius:20px;font-size:14px;font-weight:600;min-width:40px;padding:4px 12px;text-align:center}.grade-A\+{background:#dcfce7;border:1px solid #bbf7d0;color:#166534}.grade-B\+{background:#fef3c7;border:1px solid #fde68a;color:#92400e}.grade-C\+{background:#fecaca;border:1px solid #fca5a5;color:#991b1b}.report-details{margin-bottom:16px}.report-details p{color:#4b5563;font-size:14px;margin:0 0 8px}.report-details p:last-child{margin-bottom:0}.report-details strong{color:#374151;font-weight:600}.report-actions{gap:8px;justify-content:flex-end}@media (max-width: 768px){.academic-reports-manager{padding:16px}.reports-header{align-items:stretch;flex-direction:column;gap:16px}.header-actions{justify-content:center}.form-row{grid-template-columns:1fr}.reports-grid{grid-template-columns:1fr}.form-actions{flex-direction:column}.selection-controls{align-items:stretch;flex-direction:column}.selection-controls .control-group{min-width:auto}.student-select{min-width:auto}}.student-filter{background:linear-gradient(135deg,#f8f9fa 0%,#e9ecef 100%);border:1px solid #dee2e6;border-radius:12px;box-shadow:0 2px 4px rgba(0,0,0,0.05);margin-bottom:25px;padding:20px}.filter-header h4{color:#495057;font-size:18px;font-weight:600;margin:0 0 8px}.filter-header p{color:#6c757d;font-size:14px;margin:0 0 15px}.filter-controls .student-select{background:white;border:2px solid #ced4da;border-radius:8px;font-size:15px;max-width:400px;padding:12px 16px;transition:all 0.2s ease;width:100%}.filter-controls .student-select:focus{border-color:#007bff;box-shadow:0 0 0 3px rgba(0,123,255,0.1);outline:none}.report-card-form{background:white;border-radius:12px;padding:0}.form-header{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:12px 12px 0 0;color:white;margin:-20px -20px 25px;padding:20px 25px}.form-header h3{font-size:1.5rem;font-weight:600;margin:0 0 8px}.form-header p{font-size:14px;opacity:0.9}.form-section{border-left:4px solid #007bff;border-radius:8px;margin-bottom:30px;padding:20px}.form-section h4{color:#495057;font-size:16px;font-weight:600;margin:0 0 15px}.selected-student-display{margin-bottom:15px}.selected-student-display label{color:#374151;display:block;font-size:14px;font-weight:600;margin-bottom:8px}.student-info-display{background:#e0f2fe;border:2px solid #0284c7;border-radius:8px;color:#0c4a6e;font-size:15px;padding:12px 16px}.student-info-display strong{font-weight:600}.marks-container{align-items:end;display:flex;flex-wrap:wrap;gap:20px}.marks-inputs{align-items:end;display:flex;flex:1 1;gap:10px}.marks-separator{color:#6c757d;font-size:24px;font-weight:bold;margin-bottom:8px}.grade-display{min-width:200px}.grade-badge-display{align-items:center;display:flex;gap:10px;margin-top:8px}.grade-badge{font-size:14px;min-width:40px}.percentage{color:#6c757d;font-size:14px;font-weight:500}.student-select-input{background:white;border:2px solid #ced4da;border-radius:8px;font-size:15px;padding:12px 16px;transition:all 0.2s ease;width:100%}.student-select-input:focus{border-color:#007bff;box-shadow:0 0 0 3px rgba(0,123,255,0.1);outline:none}.remarks-textarea{background:white;border:2px solid #ced4da;border-radius:8px;font-size:15px;min-height:100px;padding:12px 16px;resize:vertical;transition:all 0.2s ease;width:100%}.remarks-textarea:focus{border-color:#007bff;box-shadow:0 0 0 3px rgba(0,123,255,0.1);outline:none}.submit-btn{background:linear-gradient(135deg,#28a745 0%,#20c997 100%);border:none;font-size:15px;font-weight:600;padding:12px 24px}.cancel-btn{background:#6c757d;border:none;font-size:15px;font-weight:600;padding:12px 24px}.delete-btn{background:#dc3545;border:none;border-radius:6px;color:white;font-size:14px;font-weight:600;padding:8px 16px;transition:all 0.2s ease}.delete-btn:hover{background:#c82333;box-shadow:0 2px 4px rgba(220,53,69,0.3);transform:translateY(-1px)}.report-actions{display:flex;gap:10px;margin-top:15px}.subject-entry{background:white;border:1px solid #e9ecef;border-radius:8px;margin-bottom:15px;padding:15px;transition:all 0.3s ease}.subject-entry.not-applicable{background:#f8f9fa;border-color:#dee2e6;opacity:0.7}.subject-entry.not-applicable input,
.subject-entry.not-applicable textarea{background:#e9ecef;cursor:not-allowed}.subject-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.subject-header h5{color:#495057;font-size:16px;font-weight:600;margin:0}.na-checkbox{align-items:center;color:#6c757d;cursor:pointer;display:flex;font-size:14px;gap:6px;-webkit-user-select:none;user-select:none}.na-checkbox input[type="checkbox"]{cursor:pointer;height:18px;width:18px}.na-checkbox:hover{color:#495057}.grade-na{background:#dee2e6;border:1px solid #ced4da;color:#495057}.na-subject{background:#f8f9fa!important;opacity:0.6}.na-subject .subject-name{color:#6c757d;text-decoration:line-through}.marks-row{align-items:end;display:flex;gap:10px;margin-bottom:10px}.subject-remarks{background:white;border:1px solid #ced4da;border-radius:6px;font-size:14px;min-height:60px;padding:8px 12px;resize:vertical;width:100%}.subject-remarks:focus{border-color:#007bff;box-shadow:0 0 0 2px rgba(0,123,255,0.1);outline:none}.overall-grade{align-items:center;display:flex;gap:10px}.subjects-summary{margin-top:15px}.subjects-summary h5{color:#495057;font-size:14px;font-weight:600;margin:0 0 10px}.subjects-list{display:flex;flex-direction:column;gap:8px}.subject-item{align-items:center;background:#f8f9fa;border-radius:6px;display:flex;font-size:14px;justify-content:space-between;padding:8px 12px}.subject-name{color:#495057;font-weight:500}.subject-grade{font-weight:600}.subject-marks{color:#6c757d;font-size:13px}@media (max-width: 768px){.marks-container{align-items:stretch;flex-direction:column}.marks-inputs{justify-content:center}.grade-display{min-width:auto;text-align:center}.form-section{padding:15px}}.remarks-manager{margin:0 auto;max-width:1200px;padding:20px}.remarks-header{align-items:center;border-bottom:2px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:20px}.remarks-header h2{color:#1f2937;font-size:1.8rem;margin:0}.add-remark-form{background:#f9fafb;border:1px solid #e5e7eb;margin-bottom:30px}.add-remark-form h3{color:#1f2937;font-size:1.3rem;margin:0 0 20px}.form-row{margin-bottom:16px}.form-group input,
.form-group select,
.form-group textarea{border:2px solid #e5e7eb;border-radius:8px;box-sizing:border-box;font-size:14px;padding:12px 16px;transition:all 0.2s ease}.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,0.1)}.form-group textarea{min-height:100px}.form-actions{border-top:1px solid #e5e7eb;gap:12px;margin-top:20px;padding-top:20px}.remarks-list h3{color:#1f2937;font-size:1.3rem;margin:0 0 20px}.no-data{background:#f9fafb;border:1px dashed #d1d5db;color:#6b7280;padding:40px}.remarks-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));grid-gap:20px;gap:20px}.remark-card{border:2px solid #d1d5db;border-radius:12px;padding:20px;position:relative;transition:all 0.2s ease}.remark-card.remark-positive{background-color:#dcfce7;border-color:#bbf7d0}.remark-card.remark-negative{background-color:#fee2e2;border-color:#fecaca}.remark-card.remark-neutral{background-color:#f3f4f6;border-color:#d1d5db}.remark-card:hover{box-shadow:0 4px 12px rgba(0,0,0,0.1);transform:translateY(-2px)}.remark-header{align-items:flex-start;border-bottom:1px solid rgba(0,0,0,0.1);margin-bottom:16px;padding-bottom:12px}.remark-student h4{color:#1f2937;font-size:1.1rem;font-weight:600;margin:0 0 4px}.remark-subject{background:rgba(0,0,0,0.1);border-radius:12px;color:#374151;font-size:12px;font-weight:500;padding:2px 8px}.remark-meta{align-items:flex-end;display:flex;flex-direction:column;gap:4px}.remark-type{background:rgba(0,0,0,0.1);border-radius:12px;font-size:12px;font-weight:600;padding:4px 8px}.remark-date{color:#6b7280;font-size:11px;font-weight:500}.remark-content{margin-bottom:16px}.remark-content p{font-size:14px;font-style:italic;line-height:1.5}.remark-actions{display:flex;gap:8px;justify-content:flex-end}.loading{color:#6b7280;font-size:16px;padding:40px;text-align:center}.btn-icon{margin-right:8px}@media (max-width: 768px){.remarks-manager{padding:16px}.remarks-header{align-items:stretch;flex-direction:column;gap:16px}.header-actions{justify-content:center}.form-row{grid-template-columns:1fr}.remarks-grid{grid-template-columns:1fr}.form-actions{flex-direction:column}.remark-header{align-items:stretch;flex-direction:column;gap:12px}.remark-meta{align-items:flex-start}}.student-dashboard{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);min-height:100vh;padding:20px}.dashboard-header{color:white;margin-bottom:30px}.header-content{align-items:center;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between}.header-left{flex:1 1;text-align:left}.header-right{align-items:center;display:flex}.logout-btn{background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.3);color:white;transition:all 0.3s ease}.logout-btn:hover{background:rgba(255,255,255,0.2);border-color:rgba(255,255,255,0.5);transform:translateY(-2px)}.dashboard-header h1{font-size:2.5rem;margin:0 0 10px;text-shadow:0 2px 4px rgba(0,0,0,0.3)}.student-info h2{color:#f0f9ff;font-size:1.5rem;margin:0 0 5px}.student-info p{color:#e0f2fe;font-size:1.1rem;margin:0}.dashboard-tabs{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:30px}.tab-button{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(255,255,255,0.2);border:2px solid rgba(255,255,255,0.3);border-radius:25px;color:white;cursor:pointer;font-size:16px;font-weight:600;padding:12px 24px;transition:all 0.3s ease}.tab-button:hover{background:rgba(255,255,255,0.3);border-color:rgba(255,255,255,0.5);transform:translateY(-2px)}.tab-button.active{background:white;border-color:white;box-shadow:0 4px 15px rgba(0,0,0,0.2);color:#667eea}.dashboard-content{max-width:1200px}.stats-grid{margin-bottom:30px;overflow:hidden;width:100%}.stat-card{box-shadow:0 8px 25px rgba(0,0,0,0.1);flex-direction:column;justify-content:center;min-height:160px;text-align:center;word-wrap:break-word;border:1px solid rgba(102,126,234,0.1);-webkit-hyphens:auto;hyphens:auto;overflow:hidden;overflow-wrap:break-word;position:relative}.stat-card::before{background:linear-gradient(90deg,#667eea,#764ba2);border-radius:15px 15px 0 0;content:'';height:4px;left:0;position:absolute;right:0;top:0}.stat-card:hover{border-color:rgba(102,126,234,0.2);box-shadow:0 15px 35px rgba(0,0,0,0.15)}.stat-card h3{color:#374151;font-size:1.1rem;font-weight:600;line-height:1.3;margin:0 0 15px;word-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;overflow-wrap:break-word}.stat-value{color:#667eea;font-size:2.5rem;font-weight:bold;line-height:1.1;margin-bottom:10px;overflow-wrap:break-word;word-break:break-word}.stat-card p{color:#6b7280;font-size:0.9rem;line-height:1.4;margin:0;word-wrap:break-word;overflow-wrap:break-word}.recent-activity{background:white;border-radius:15px;box-shadow:0 8px 25px rgba(0,0,0,0.1);padding:25px}.recent-activity h3{color:#374151;margin:0 0 20px}.activity-list{display:flex;flex-direction:column;gap:12px}.activity-item{align-items:center;background:#f8fafc;border-left:4px solid #667eea;border-radius:8px;display:flex;justify-content:space-between;padding:12px 16px}.activity-date{color:#374151;font-weight:600}.activity-status{border-radius:20px;font-size:0.9rem;font-weight:600;padding:4px 12px}.status-present{background:#dcfce7;color:#166534}.status-absent{background:#fee2e2;color:#991b1b}.status-late{background:#fef3c7;color:#92400e}.status-unmarked{background:#f3f4f6;color:#6b7280}.attendance-table{background:white;border-radius:10px;box-shadow:0 4px 15px rgba(0,0,0,0.1);overflow:hidden}.table-header{background:#667eea;color:white;display:grid;font-weight:600;grid-template-columns:1fr 1fr 2fr;padding:15px 20px;grid-gap:20px;gap:20px}.table-row{border-bottom:1px solid #e5e7eb;display:grid;grid-template-columns:1fr 1fr 2fr;padding:15px 20px;grid-gap:20px;align-items:center;gap:20px}.table-row:last-child{border-bottom:none}.table-row:hover{background:#f8fafc}.status-badge{border-radius:20px;font-size:0.85rem;text-align:center;text-transform:capitalize}.profile-info{display:flex;flex-direction:column;gap:20px}.profile-field{display:flex;flex-direction:column;gap:8px}.profile-field label{color:#374151;font-size:0.9rem;font-weight:600;letter-spacing:0.5px;text-transform:uppercase}.profile-field span{background:#f8fafc;border-left:4px solid #667eea;border-radius:8px;color:#1f2937;font-size:1rem;padding:12px 16px}.loading-container{color:white;min-height:50vh}.loading-spinner{border:4px solid rgba(255,255,255,0.3);height:40px;margin-bottom:20px;width:40px}.error-container{color:white;padding:50px 20px;text-align:center}.error-container h2{font-size:2rem;margin-bottom:15px}.error-container p{font-size:1.1rem;opacity:0.9}.report-header-controls{align-items:center;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:25px}.report-header-controls h3{color:#374151;font-size:1.5rem;font-weight:600;margin:0}.refresh-btn{background:#667eea;border:none;border-radius:8px;color:white;cursor:pointer;font-weight:600;padding:10px 20px;transition:all 0.3s ease}.refresh-btn:hover{background:#5a67d8;transform:translateY(-2px)}.reports-list{display:flex;flex-direction:column;gap:20px}.report-card{background:white;border:1px solid #e5e7eb;border-radius:15px;box-shadow:0 4px 15px rgba(0,0,0,0.1);overflow:hidden;transition:all 0.3s ease}.report-card:hover{box-shadow:0 8px 25px rgba(0,0,0,0.15);transform:translateY(-2px)}.report-header{align-items:center;background:linear-gradient(135deg,#f8fafc 0%,#e2e8f0 100%);border-bottom:1px solid #e5e7eb;cursor:pointer;display:flex;justify-content:space-between;padding:20px;transition:all 0.3s ease}.report-header:hover{background:linear-gradient(135deg,#e2e8f0 0%,#cbd5e0 100%)}.report-header-left{flex:1 1;min-width:0}.report-header-left h4{color:#374151;font-size:1.25rem;font-weight:600;margin:0 0 8px;word-wrap:break-word}.report-date{color:#6b7280;font-size:0.9rem;font-weight:500}.report-header-right{align-items:center;display:flex;flex-shrink:0;gap:20px}.report-summary-compact{display:flex;flex-direction:column;gap:8px;min-width:0}.summary-item{align-items:center;gap:8px;white-space:nowrap}.summary-label{color:#6b7280;font-size:0.85rem;font-weight:500;min-width:-webkit-fit-content;min-width:fit-content}.summary-value{color:#374151;font-size:0.9rem;font-weight:600}.expand-icon{color:#667eea;flex-shrink:0;font-size:1.2rem;font-weight:bold;transition:transform 0.3s ease}.report-card:hover .expand-icon{transform:scale(1.1)}.report-details{animation:slideDown 0.3s ease-out;background:#f8fafc;border-top:1px solid #e5e7eb;padding:25px}@keyframes slideDown{from{max-height:0;opacity:0;padding-bottom:0;padding-top:0}to{max-height:1000px;opacity:1;padding-bottom:25px;padding-top:25px}}.subjects-list{background:white;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,0.08);overflow:hidden}.subjects-title{background:linear-gradient(135deg,#f8fafc 0%,#e2e8f0 100%);border-bottom:2px solid #667eea;color:#374151;font-size:1.1rem;font-weight:600;margin:0;padding:20px;text-align:center}.subjects-table{border-collapse:collapse;border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,0.1);overflow:hidden;width:100%}.subjects-table thead{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:white}.subjects-table th{border-right:2px solid rgba(255,255,255,0.3);font-size:0.9rem;font-weight:600;padding:15px 12px;position:relative;text-align:left}.subjects-table th:last-child{border-right:none}.subjects-table th:not(:last-child)::after{background:rgba(255,255,255,0.5);bottom:20%;content:'';position:absolute;right:-1px;top:20%;width:1px}.subjects-table tbody tr{border-bottom:1px solid #e5e7eb;transition:background-color 0.2s ease}.subjects-table tbody tr:hover{background-color:#f8fafc}.subjects-table tbody tr:last-child{border-bottom:none}.subjects-table td{border-right:1px solid #e5e7eb;font-size:0.9rem;padding:15px 12px;position:relative;vertical-align:top}.subjects-table td:last-child{border-right:none}.subjects-table td:not(:last-child)::after{background:#d1d5db;bottom:15%;content:'';opacity:0.6;position:absolute;right:-1px;top:15%;width:1px}.subject-name{color:#374151;font-weight:600;word-wrap:break-word;min-width:120px;padding-left:20px}.subject-grade{min-width:80px;padding:8px 12px;text-align:center}.subject-marks{color:#374151;font-weight:600;min-width:100px;padding:8px 12px;text-align:center}.subject-remarks{color:#6b7280;font-style:italic;line-height:1.4;word-wrap:break-word;min-width:150px;padding-right:20px}.subjects-mobile{display:none}.subject-mobile-card{background:#f8fafc;border-left:4px solid #667eea;border-radius:8px;margin-bottom:10px;padding:15px}.subject-mobile-header{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;margin-bottom:10px}.subject-mobile-name{color:#374151;font-size:1rem;font-weight:600;word-wrap:break-word;flex:1 1;min-width:0}.subject-mobile-details{display:flex;flex-direction:column;gap:8px}.subject-mobile-marks{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.subject-mobile-marks-label{color:#6b7280;font-size:0.85rem;font-weight:500;min-width:-webkit-fit-content;min-width:fit-content}.subject-mobile-marks-value{color:#374151;font-size:0.9rem;font-weight:600}.subject-mobile-remarks{color:#6b7280;font-size:0.85rem;font-style:italic;line-height:1.4;word-wrap:break-word}.grade-badge{border:1px solid transparent;border-radius:20px;font-size:0.85rem;min-width:35px;padding:6px 12px;transition:all 0.3s ease}.grade-badge:hover{transform:scale(1.05)}.grade-A\\+{background:linear-gradient(135deg,#dcfce7 0%,#bbf7d0 100%);border-color:#86efac}.grade-A{background:linear-gradient(135deg,#dbeafe 0%,#bfdbfe 100%);border-color:#93c5fd}.grade-B\\+{background:linear-gradient(135deg,#fef3c7 0%,#fde68a 100%);border-color:#fbbf24}.grade-B{background:linear-gradient(135deg,#fed7aa 0%,#fdba74 100%);border-color:#fb923c}.grade-C\\+{background:linear-gradient(135deg,#fecaca 0%,#fca5a5 100%);border-color:#f87171}.grade-C{background:linear-gradient(135deg,#f3e8ff 0%,#e9d5ff 100%);border-color:#c4b5fd}.grade-D{background:linear-gradient(135deg,#fee2e2 0%,#fecaca 100%);border-color:#fca5a5}.grade-F{background:linear-gradient(135deg,#f3f4f6 0%,#e5e7eb 100%);border-color:#d1d5db}.remarks-list{display:flex;flex-direction:column;gap:20px}.remark-item{background:white;border-left:4px solid #3b82f6;border-radius:15px;box-shadow:0 2px 4px rgba(0,0,0,0.1);padding:20px}.remark-header{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin-bottom:15px}.remark-date{background:#e0f2fe;border-radius:20px;color:#0369a1;font-size:0.9rem;font-weight:600;padding:6px 12px}.remark-teacher{background:#f0f9ff;border-radius:20px;color:#0c4a6e;font-size:0.9rem;font-weight:600;padding:6px 12px}.remark-subject{background:#fef3c7;border-radius:20px;color:#92400e;font-size:0.9rem;font-weight:600;padding:6px 12px}.remark-content{background:#f8fafc;border-left:3px solid #3b82f6;border-radius:10px;padding:15px}.remark-content p{color:#374151;font-size:1rem;line-height:1.6;margin:0}@media (max-width: 768px){.student-dashboard{padding:15px}.dashboard-header h1{font-size:2rem}.student-info h2{font-size:1.3rem}.header-content{flex-direction:column;gap:20px}.header-right{flex-direction:row;gap:8px;justify-content:center;width:100%}.header-right button{flex:1 1;font-size:0.85rem!important;padding:8px 12px!important;white-space:nowrap}.dashboard-tabs{align-items:center;flex-direction:column}.tab-button{max-width:300px;width:100%}.stats-grid{gap:15px;grid-template-columns:1fr;margin-bottom:25px}.stat-card{min-height:140px;padding:20px}.stat-card h3{font-size:1rem;margin-bottom:12px}.stat-value{font-size:2.2rem;margin-bottom:8px}.stat-card p{font-size:0.85rem}.table-header,
  .table-row{gap:10px;grid-template-columns:1fr}.table-header span,
  .table-row span{text-align:left}.activity-item{align-items:flex-start;flex-direction:column;gap:8px}.report-header-controls{align-items:flex-start;flex-direction:column;gap:15px}.report-header{align-items:flex-start;flex-direction:column;gap:15px;padding:15px}.report-header-right{flex-wrap:wrap;justify-content:space-between;width:100%}.report-summary-compact{flex:1 1;flex-direction:row;flex-wrap:wrap;gap:15px}.summary-item{align-items:flex-start;flex-direction:column;gap:4px;min-width:0}.summary-label{font-size:0.8rem}.summary-value{font-size:0.85rem}.subjects-table{display:none}.subjects-mobile{display:block;padding:15px}.subject-mobile-card{margin-bottom:12px}.subject-mobile-header{align-items:center;flex-direction:row;gap:12px;justify-content:space-between}.subject-mobile-name{flex:1 1;font-size:0.95rem;min-width:0}.subject-mobile-details{gap:8px}.subject-mobile-marks{align-items:center;flex-direction:row;gap:8px}.subject-mobile-marks-label{font-size:0.8rem}.subject-mobile-marks-value{font-size:0.85rem}.subject-mobile-remarks{font-size:0.8rem}}@media (max-width: 480px){.student-dashboard{padding:10px}.dashboard-header h1{font-size:1.8rem}.student-info h2{font-size:1.2rem}.header-right button{font-size:0.8rem!important;padding:6px 10px!important}.btn-icon{font-size:0.85rem}.student-info p{font-size:1rem}.stats-grid{gap:12px;grid-template-columns:1fr;margin-bottom:20px}.stat-card{min-height:130px;padding:18px}.stat-card h3{font-size:0.95rem;margin-bottom:10px}.stat-value{font-size:2rem;margin-bottom:6px}.stat-card p{font-size:0.8rem}.tab-button{font-size:14px;padding:10px 16px}.recent-activity{padding:20px}.activity-item{padding:10px 12px}.report-header{padding:12px}.report-header-left h4{font-size:1.1rem}.report-date{font-size:0.8rem}.report-summary-compact{gap:10px}.summary-item{min-width:80px}.summary-label{font-size:0.75rem}.summary-value{font-size:0.8rem}.grade-badge{font-size:0.8rem;min-width:30px;padding:4px 8px}.subject-card{padding:12px}.subject-name{font-size:1rem}.marks-label,
  .remarks-label{font-size:0.8rem}.marks-value{font-size:0.9rem}.remarks-value{font-size:0.85rem}.subjects-title{font-size:1rem;margin-bottom:15px}.subjects-mobile{padding:12px}.subject-mobile-card{margin-bottom:10px;padding:12px}.subject-mobile-header{gap:10px}.subject-mobile-name{font-size:0.9rem}.subject-mobile-marks{gap:6px}.subject-mobile-marks-label{font-size:0.75rem}.subject-mobile-marks-value{font-size:0.8rem}.subject-mobile-remarks{font-size:0.75rem}}@media (max-width: 360px){.student-dashboard{padding:8px}.stats-grid{gap:10px}.stat-card{min-height:120px;padding:16px}.stat-card h3{font-size:0.9rem;margin-bottom:8px}.stat-value{font-size:1.8rem;margin-bottom:5px}.stat-card p{font-size:0.75rem}.dashboard-header h1{font-size:1.6rem}.student-info h2{font-size:1.1rem}.report-header{padding:10px}.report-header-left h4{font-size:1rem}.report-date{font-size:0.75rem}.report-summary-compact{gap:8px}.summary-item{min-width:70px}.summary-label{font-size:0.7rem}.summary-value{font-size:0.75rem}.grade-badge{font-size:0.75rem;min-width:25px;padding:3px 6px}.subject-card{padding:10px}.subject-name{font-size:0.95rem}.marks-label,
  .remarks-label{font-size:0.75rem}.marks-value{font-size:0.85rem}.remarks-value{font-size:0.8rem}.subjects-title{font-size:0.95rem;margin-bottom:12px}.report-details{padding:15px}.subjects-mobile{padding:10px}.subject-mobile-card{margin-bottom:8px;padding:10px}.subject-mobile-header{gap:8px}.subject-mobile-name{font-size:0.85rem}.subject-mobile-marks{gap:5px}.subject-mobile-marks-label{font-size:0.7rem}.subject-mobile-marks-value{font-size:0.75rem}.subject-mobile-remarks{font-size:0.7rem}.subjects-title{font-size:0.9rem;padding:15px}}.no-data{background:#f9f9f9;border:1px dashed #ddd;border-radius:8px;color:#666;font-style:italic;padding:40px 20px;text-align:center}.no-data p{font-size:16px;margin:10px 0}.grade-badge{border-radius:12px;display:inline-block;font-size:12px;font-weight:600;min-width:30px;padding:4px 8px;text-align:center}.grade-A\\+{background:#dcfce7;border:1px solid #bbf7d0;color:#166534}.grade-A{background:#dbeafe;border:1px solid #bfdbfe;color:#1e40af}.grade-B\\+{background:#fef3c7;border:1px solid #fde68a;color:#92400e}.grade-B{background:#fed7aa;border:1px solid #fdba74;color:#9a3412}.grade-C\\+{background:#fecaca;border:1px solid #fca5a5;color:#991b1b}.grade-C{background:#f3e8ff;border:1px solid #e9d5ff;color:#7c3aed}.grade-D{background:#fee2e2;border:1px solid #fecaca;color:#dc2626}.grade-F{background:#f3f4f6;border:1px solid #d1d5db;color:#6b7280}.remark-grade{color:#666;font-size:14px;margin-top:10px}.remark-grade .grade-badge{margin-left:5px}.subjects-remarks{margin-top:10px}.subject-remark{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin-bottom:10px;padding:12px}.subject-remark-header{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;margin-bottom:8px}.subject-remark-header .subject-name{color:#495057;font-size:14px;font-weight:600}.subject-remark-header .subject-marks{color:#6c757d;font-size:13px}.subject-remark-text{color:#495057;font-size:14px;font-style:italic;line-height:1.4;margin:0}.dashboard-container{background:linear-gradient(135deg,var(--primary-yellow-light) 0%,#fef3c7 50%,var(--primary-yellow-light) 100%);font-family:var(--font-primary);min-height:100vh}.dashboard-nav{align-items:center;-webkit-backdrop-filter:none;backdrop-filter:none;background:#ffffff;border-bottom:2px solid var(--primary-yellow);box-shadow:0 4px 20px rgba(0,0,0,0.15);display:flex;height:80px;justify-content:space-between;left:0;padding:var(--space-4) var(--space-8);position:fixed;right:0;top:0;z-index:1000}.dashboard-tabs{background:white;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,0.1);display:flex!important;gap:4px;margin-bottom:24px;opacity:1;padding:6px;visibility:visible}.dashboard-tabs .tab-button{align-items:center;background:transparent;border:none;border-radius:8px;color:#6b7280;cursor:pointer;display:flex!important;flex:1 1;font-size:14px;font-weight:600;gap:8px;justify-content:center;min-width:0;opacity:1!important;padding:12px 20px;transition:all 0.2s ease;visibility:visible!important;white-space:nowrap}.dashboard-tabs .tab-button:hover{background:#f3f4f6;color:#374151}.dashboard-tabs .tab-button.active{background:var(--primary-yellow);box-shadow:0 2px 4px rgba(0,0,0,0.1);color:var(--primary-yellow-dark)}.dashboard-tabs .tab-button.active:hover{background:var(--primary-yellow-dark);color:white}.nav-brand{align-items:center;display:flex;gap:var(--space-4)}.brand-icon{color:var(--primary-yellow-dark);font-size:2rem}.nav-brand h1{color:var(--text-primary);font-family:var(--font-heading);font-size:1.5rem;font-weight:var(--font-weight-bold);letter-spacing:-0.025em;margin:0}.nav-user{align-items:center;color:var(--text-secondary);display:flex;font-weight:500;gap:var(--space-5)}.btn-signout{background:var(--primary-yellow);border:none;border-radius:var(--radius-lg);box-shadow:var(--playful-shadow);color:var(--text-primary);cursor:pointer;font-family:var(--font-primary);font-size:0.875rem;font-weight:var(--font-weight-medium);padding:var(--space-2) var(--space-4);transition:all var(--transition-normal)}.btn-signout:hover{background:var(--primary-yellow-dark);box-shadow:var(--playful-shadow-hover);transform:translateY(-1px)}.dashboard-content{margin:0 auto;max-width:1400px;min-height:calc(100vh - 80px);padding:var(--space-8);padding-top:calc(80px + var(--space-8))}.welcome-section{background:var(--background-primary);border:1px solid var(--border-light);border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg);margin-bottom:var(--space-10);padding:var(--space-8);text-align:center}.welcome-section h2{color:var(--text-primary);font-family:var(--font-heading);font-size:2.5rem;font-weight:var(--font-weight-bold);letter-spacing:-0.025em;margin-bottom:var(--space-4)}.welcome-section p{color:var(--text-secondary);font-family:var(--font-primary);font-size:1.125rem;font-weight:var(--font-weight-medium);line-height:var(--line-height-normal);margin:0 auto;max-width:600px}.admin-tabs{background:var(--background-primary);border:1px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);display:flex!important;flex-wrap:wrap;gap:var(--space-3);justify-content:center;margin-bottom:var(--space-8);opacity:1;padding:var(--space-4);visibility:visible}.admin-tabs .tab-button{align-items:center;background:rgba(255,255,255,0.95);border:2px solid var(--primary-yellow);border-radius:var(--radius-full);box-shadow:0 2px 8px rgba(0,0,0,0.1);color:#1f2937;cursor:pointer;display:flex!important;font-size:0.875rem;font-weight:600;gap:var(--space-2);opacity:1!important;overflow:hidden;padding:var(--space-3) var(--space-5);position:relative;transition:all var(--transition-normal);visibility:visible!important}.admin-tabs .tab-button *{color:#1f2937}.admin-tabs .tab-button:hover{background:var(--primary-yellow-light);border-color:var(--primary-yellow);box-shadow:0 4px 12px rgba(0,0,0,0.15);color:#1f2937;transform:translateY(-1px)}.admin-tabs .tab-button:hover *{color:#1f2937}.admin-tabs .tab-button.active{background:var(--primary-yellow);border-color:var(--primary-yellow);box-shadow:var(--shadow-md);color:#1f2937;font-weight:700;transform:translateY(-2px)}.admin-tabs .tab-button.active *{color:#1f2937}.admin-tabs .tab-button.disabled{background:#f3f4f6;border-color:#d1d5db;color:#9ca3af;cursor:not-allowed;opacity:0.6}.admin-tabs .tab-button.disabled *{color:#9ca3af}.admin-tabs .tab-button.disabled:hover{background:#f3f4f6;border-color:#d1d5db;box-shadow:none;color:#9ca3af;transform:none}.tab-icon{flex-shrink:0;font-size:1.2rem}.tab-text{color:#1f2937;display:inline-block!important;font-size:0.875rem;font-weight:600;opacity:1!important;visibility:visible!important;white-space:nowrap}@media (min-width: 769px){.admin-tabs .tab-text{display:inline-block!important;opacity:1!important;visibility:visible!important}}.tab-content{animation:fadeIn 0.3s ease-in}@keyframes fadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.section-header{align-items:center;background:white;border-radius:15px;box-shadow:0 5px 20px rgba(0,0,0,0.1);display:flex;justify-content:space-between;margin-bottom:25px;padding:20px}.section-header h3{color:#2e7d32;font-size:1.5rem;font-weight:600;margin:0}.header-actions{align-items:center;display:flex;gap:12px}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:20px;gap:20px;margin-bottom:40px}.stat-card{border-radius:15px;box-shadow:0 10px 30px rgba(0,0,0,0.1);gap:20px;min-height:150px;overflow:visible;padding:25px}.stat-card:hover{box-shadow:0 15px 40px rgba(0,0,0,0.15)}.stat-icon{background:linear-gradient(135deg,#fff9c4 0%,#fff59d 100%);border-radius:12px;flex-shrink:0;font-size:2.5rem;padding:15px}.stat-content{display:flex;flex:1 1;flex-direction:column;gap:8px;justify-content:center;min-width:0}.stat-content h3{color:#2e7d32;font-size:0.95rem;font-weight:600;line-height:1.2;margin:0 0 8px;word-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;overflow-wrap:break-word}.stat-number{color:#1976d2!important;display:block!important;font-size:3.2rem!important;font-weight:700!important;letter-spacing:-0.01em;line-height:1.1!important;margin:0!important;text-shadow:1px 1px 2px rgba(0,0,0,0.1);word-break:break-word}@media (max-width: 768px){.stats-grid{gap:15px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.stat-card{min-height:140px;padding:20px}.stat-content h3{font-size:0.85rem}.stat-number{font-size:2.8rem!important}.stat-icon{font-size:2rem;padding:12px}}@media (max-width: 480px){.stats-grid{gap:12px;grid-template-columns:1fr}.stat-card{min-height:130px;padding:18px}.stat-content h3{font-size:0.8rem}.stat-number{font-size:2.4rem!important}}.student-filters{background:var(--background-primary);border:1px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);margin-bottom:var(--space-6);padding:var(--space-6)}.student-filters h4{color:var(--text-primary);font-size:1.25rem;font-weight:600;margin:0 0 var(--space-4) 0}.finance-filters{background:var(--background-primary);border:1px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);margin-bottom:var(--space-6);padding:var(--space-6)}.finance-filters h4{color:var(--text-primary);font-size:1.25rem;font-weight:600;margin:0 0 var(--space-4) 0}.filter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:var(--space-4);gap:var(--space-4);margin-bottom:var(--space-4)}.filter-group{display:flex;flex-direction:column;gap:var(--space-2)}.filter-group label{color:var(--text-secondary);font-size:0.875rem;font-weight:500}.filter-group input,
.filter-group select{background:var(--background-primary);border:1px solid var(--border-light);border-radius:var(--radius-md);color:var(--text-primary);font-size:0.875rem;padding:var(--space-2) var(--space-3);transition:all var(--transition-fast)}.filter-group input:focus,
.filter-group select:focus{border-color:var(--primary-yellow);box-shadow:0 0 0 3px rgba(251,191,36,0.1);outline:none}.filter-actions{display:flex;gap:var(--space-3);justify-content:flex-end}.filter-actions button{font-size:0.875rem;font-weight:500;padding:var(--space-2) var(--space-4)}.filter-summary{background:var(--background-secondary);border:1px solid var(--border-light);border-radius:var(--radius-md);display:flex;justify-content:center;margin-bottom:var(--space-4);padding:var(--space-3)}.filter-count{color:var(--text-secondary);font-size:0.875rem;font-weight:500}@media (max-width: 768px){.filter-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.filter-actions{flex-wrap:wrap;justify-content:center}}@media (max-width: 480px){.filter-grid{grid-template-columns:1fr}.finance-filters{padding:var(--space-4)}}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:25px;gap:25px;margin-bottom:40px}.dashboard-card{background:white;border:2px solid transparent;border-radius:20px;box-shadow:0 10px 30px rgba(0,0,0,0.1);padding:30px;text-align:center;transition:all 0.3s ease}.dashboard-card:hover{border-color:#ffd54f;box-shadow:0 20px 40px rgba(0,0,0,0.15);transform:translateY(-8px)}.card-icon{display:block;font-size:3rem;margin-bottom:20px}.dashboard-card h3{color:#2e7d32;font-size:1.4rem;font-weight:600;margin-bottom:15px}.dashboard-card p{color:#666;line-height:1.6;margin-bottom:25px}.btn-card{background:linear-gradient(135deg,#ffd54f 0%,#ffb300 100%);border:none;border-radius:25px;color:#2e7d32;cursor:pointer;font-weight:600;padding:12px 24px;transition:all 0.3s ease;width:100%}.btn-card:hover{box-shadow:0 8px 25px rgba(255,213,79,0.4);transform:translateY(-2px)}.quick-actions{background:white;border-radius:20px;box-shadow:0 10px 30px rgba(0,0,0,0.1);margin-bottom:40px;padding:30px}.quick-actions h3{color:#2e7d32;font-size:1.5rem;font-weight:600;margin-bottom:20px}.action-buttons{display:flex;flex-wrap:wrap;gap:15px}.btn-action{background:#f8f9fa;border:2px solid #ffd54f;border-radius:20px;color:#2e7d32;cursor:pointer;font-weight:600;padding:10px 20px;transition:all 0.3s ease}.btn-action:hover{background:#ffd54f;transform:translateY(-2px)}.btn-action.disabled{background:#f3f4f6;border-color:#d1d5db;color:#9ca3af;cursor:not-allowed;opacity:0.6}.btn-action.disabled:hover{background:#f3f4f6;border-color:#d1d5db;color:#9ca3af;transform:none}.class-filter{background:var(--background-primary);border:1px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);margin-bottom:var(--space-6);padding:var(--space-6)}.class-filter h4{color:var(--text-primary);font-size:1.25rem;font-weight:600;margin:0 0 var(--space-4) 0;text-align:center}.filter-buttons{display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:center}.filter-btn{background:rgba(255,255,255,0.9);border:2px solid var(--primary-yellow);border-radius:var(--radius-full);box-shadow:0 2px 8px rgba(0,0,0,0.1);color:var(--text-primary);cursor:pointer;font-size:0.875rem;font-weight:600;min-width:80px;padding:var(--space-3) var(--space-5);transition:all var(--transition-normal)}.filter-btn:hover{background:var(--primary-yellow-light);border-color:var(--primary-yellow);box-shadow:0 4px 12px rgba(0,0,0,0.15);color:var(--text-primary);transform:translateY(-1px)}.filter-btn.active{background:var(--primary-yellow);border-color:var(--primary-yellow);box-shadow:var(--shadow-md);color:var(--text-primary);font-weight:700;transform:translateY(-2px)}.students-table{background:white;border-radius:15px;box-shadow:0 10px 30px rgba(0,0,0,0.1);max-width:100%;overflow:hidden;overflow-x:auto}.student-photo{align-items:center;border-radius:50%;display:flex;height:50px;justify-content:center;overflow:hidden;width:50px}.student-photo img{height:100%;object-fit:cover;width:100%}.photo-placeholder{align-items:center;background:#f8f9fa;display:flex;font-size:1.5rem;height:100%;justify-content:center;width:100%}.class-badge{border-radius:15px;font-size:0.8rem;font-weight:600;padding:4px 12px;text-transform:uppercase}.class-badge.play{background:#e3f2fd;color:#1976d2}.class-badge.nursery{background:#f3e5f5;color:#7b1fa2}.class-badge.lkg{background:#e8f5e8;color:#388e3c}.class-badge.ukg{background:#fff3e0;color:#f57c00}.class-badge.first{background:#fce4ec;color:#c2185b}.finance-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:20px;gap:20px;margin-bottom:30px}.summary-card{background:white;border-radius:15px;box-shadow:0 5px 20px rgba(0,0,0,0.1);display:flex;flex-direction:column;gap:10px;justify-content:center;min-height:120px;padding:25px;text-align:center}.summary-card.income{border-left:4px solid #4caf50}.summary-card.expense{border-left:4px solid #f44336}.summary-card.balance{border-left:4px solid #2196f3}.summary-card h4{color:#666;font-size:1rem;margin:0 0 10px}.summary-card p{color:#1976d2!important;display:block!important;font-size:3.2rem!important;font-weight:700!important;letter-spacing:-0.01em;margin:0!important;text-shadow:1px 1px 2px rgba(0,0,0,0.1)}.finance-table{background:white;border-radius:15px;box-shadow:0 10px 30px rgba(0,0,0,0.1);max-width:100%;overflow:hidden;overflow-x:auto}.type-badge{border-radius:15px;font-size:0.8rem;font-weight:600;padding:6px 12px}.type-badge.income{background:#e8f5e8;color:#2e7d32}.type-badge.expense{background:#ffebee;color:#c62828}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:25px;gap:25px}.gallery-item{background:white;border-radius:15px;box-shadow:0 10px 30px rgba(0,0,0,0.1);overflow:hidden;transition:all 0.3s ease}.gallery-item:hover{box-shadow:0 15px 40px rgba(0,0,0,0.15);transform:translateY(-5px)}.gallery-item img{height:200px;object-fit:cover;width:100%}.photo-info{padding:20px}.photo-info h4{color:#2e7d32;font-size:1.2rem;margin:0 0 10px}.photo-info p{color:#666;line-height:1.5;margin:0 0 15px}.photo-category{background:#f8f9fa;border-radius:15px;color:#2e7d32;font-size:0.8rem;font-weight:600;padding:4px 12px}.photo-actions{display:flex;gap:10px;margin-top:15px}.events-grid{grid-template-columns:repeat(auto-fill,minmax(350px,1fr));grid-gap:25px;gap:25px;margin-top:20px}.event-card{border:1px solid #e5e7eb;box-shadow:0 10px 30px rgba(0,0,0,0.1)}.event-card::before{background:linear-gradient(90deg,var(--primary-yellow),var(--secondary-coral))}.event-card:hover{border-color:var(--primary-yellow);box-shadow:0 15px 40px rgba(0,0,0,0.15)}.event-header{align-items:flex-start;display:flex;gap:15px;justify-content:space-between;margin-bottom:15px}.event-header h4{color:#2e7d32;flex:1 1;font-size:1.3rem;font-weight:600;line-height:1.3;margin:0}.status-badge{border-radius:15px;flex-shrink:0;font-size:0.8rem;font-weight:600;padding:6px 12px;white-space:nowrap}.status-badge.active{background:#e8f5e8;border:1px solid #c8e6c9;color:#2e7d32}.status-badge.inactive{background:#ffebee;border:1px solid #ffcdd2;color:#c62828}.event-description{font-size:0.95rem;line-height:1.5;margin:15px 0}.event-details{margin:15px 0}.event-details span{align-items:center;background:#f8f9fa;border:1px solid #e5e7eb;border-radius:10px;color:#666;display:flex;font-size:0.9rem;gap:5px;padding:8px 12px}.event-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;margin-top:20px}.btn-toggle{align-items:center;background:#e3f2fd;border:1px solid #bbdefb;border-radius:15px;color:#1976d2;cursor:pointer;display:flex;font-size:0.9rem;gap:5px;padding:8px 16px;transition:all 0.3s ease}.btn-toggle:hover{background:#bbdefb;box-shadow:0 2px 8px rgba(25,118,210,0.2);transform:translateY(-1px)}.recent-events-section{background:white;border:1px solid #e5e7eb;border-radius:15px;box-shadow:0 10px 30px rgba(0,0,0,0.1);margin:30px 0;padding:25px}.recent-events-section h3{align-items:center;color:#2e7d32;display:flex;font-size:1.5rem;font-weight:600;gap:10px;margin-bottom:20px}.events-footer{border-top:1px solid #e5e7eb;margin-top:20px;padding-top:20px;text-align:center}.users-table{background:white;border-radius:15px;box-shadow:0 10px 30px rgba(0,0,0,0.1);max-width:100%;overflow:hidden;overflow-x:auto}.users-table table{border-collapse:collapse;margin-top:20px;width:100%}.users-table th,
.users-table td{border-bottom:1px solid #e1e5e9;padding:15px;text-align:left}.users-table th{background:#f8f9fa;color:#2e7d32;font-size:0.9rem;font-weight:600}.users-table td{color:#333}.role-badge{border-radius:15px;font-size:0.8rem;font-weight:600;padding:6px 12px;text-transform:uppercase}.role-badge.admin{background:#fff3e0;color:#e65100}.role-badge.teacher{background:#e8f5e8;color:#2e7d32}.role-badge.general{background:#e3f2fd;color:#1976d2}.btn-delete{background:#ffebee;border:1px solid #ffcdd2;border-radius:15px;color:#c62828;cursor:pointer;font-size:0.8rem;padding:6px 12px;transition:all 0.3s ease}.btn-delete:hover:not(:disabled){background:#ffcdd2;transform:translateY(-1px)}.btn-delete:disabled{cursor:not-allowed;opacity:0.5}.btn-edit{background:#e8f5e8;border:1px solid #c8e6c9;border-radius:15px;color:#2e7d32;cursor:pointer;font-size:0.8rem;margin-right:8px;padding:6px 12px;transition:all 0.3s ease}.btn-edit:hover{background:#c8e6c9;transform:translateY(-1px)}.attendance-controls{background:white;border-radius:15px;box-shadow:0 10px 30px rgba(0,0,0,0.1);display:flex;flex-wrap:wrap;gap:30px;margin-bottom:30px;padding:25px}.control-group{display:flex;flex-direction:column;gap:8px}.control-group label{color:#2e7d32;font-size:0.9rem;font-weight:600}.class-select, .date-input{background:#fafbfc;border:2px solid #e1e5e9;border-radius:10px;font-size:1rem;min-width:200px;padding:10px 15px;transition:all 0.3s ease}.class-select:focus, .date-input:focus{background:white;border-color:#ffd54f;box-shadow:0 0 0 3px rgba(255,213,79,0.1);outline:none}.attendance-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));grid-gap:12px;gap:12px;margin-bottom:20px}.attendance-summary .summary-card{border-radius:12px;overflow:hidden;padding:16px;position:relative;text-align:center;transition:all 0.3s ease}.attendance-summary .summary-card::before{border-radius:12px 12px 0 0;content:'';height:3px;left:0;position:absolute;right:0;top:0}.attendance-summary .summary-card:hover{box-shadow:0 6px 20px rgba(0,0,0,0.12);transform:translateY(-2px)}.attendance-summary .summary-card h4{font-size:0.85rem;font-weight:600;letter-spacing:0.5px;margin-bottom:6px;text-transform:uppercase}.attendance-summary .summary-card p{font-size:1.8rem;font-weight:bold;line-height:1.1;margin:0}.attendance-summary .summary-card.present{background:linear-gradient(135deg,#f0fdf4 0%,#ecfdf5 100%);border-left:4px solid #10b981}.attendance-summary .summary-card.present::before{background:linear-gradient(90deg,#10b981,#059669)}.attendance-summary .summary-card.present h4{color:#065f46}.attendance-summary .summary-card.present p{color:#10b981}.attendance-summary .summary-card.absent{background:linear-gradient(135deg,#fef2f2 0%,#fee2e2 100%);border-left:4px solid #ef4444}.attendance-summary .summary-card.absent::before{background:linear-gradient(90deg,#ef4444,#dc2626)}.attendance-summary .summary-card.absent h4{color:#991b1b}.attendance-summary .summary-card.absent p{color:#ef4444}.attendance-summary .summary-card.late{background:linear-gradient(135deg,#fffbeb 0%,#fef3c7 100%);border-left:4px solid #f59e0b}.attendance-summary .summary-card.late::before{background:linear-gradient(90deg,#f59e0b,#d97706)}.attendance-summary .summary-card.late h4{color:#92400e}.attendance-summary .summary-card.late p{color:#f59e0b}.attendance-summary .summary-card.total{background:linear-gradient(135deg,#eff6ff 0%,#dbeafe 100%);border-left:4px solid #3b82f6}.attendance-summary .summary-card.total::before{background:linear-gradient(90deg,#3b82f6,#2563eb)}.attendance-summary .summary-card.total h4{color:#1e40af}.attendance-summary .summary-card.total p{color:#3b82f6}.attendance-section{background:white;border-radius:15px;box-shadow:0 10px 30px rgba(0,0,0,0.1);margin-bottom:30px;padding:30px}.attendance-section h3{color:#2e7d32;font-size:1.5rem;font-weight:600;margin:0 0 25px}.attendance-table{overflow-x:auto}.attendance-buttons{display:flex;flex-wrap:wrap;gap:8px}.btn-attendance{background:white;border:1px solid #e1e5e9;border-radius:15px;cursor:pointer;font-size:0.8rem;padding:6px 12px;transition:all 0.3s ease}.btn-attendance.present{border-color:#4caf50;color:#2e7d32}.btn-attendance.absent{border-color:#f44336;color:#c62828}.btn-attendance.late{border-color:#ff9800;color:#f57c00}.btn-attendance.active{color:white}.btn-attendance.present.active{background:#4caf50}.btn-attendance.absent.active{background:#f44336}.btn-attendance.late.active{background:#ff9800}.remarks-input{border:1px solid #e1e5e9;border-radius:10px;font-size:0.9rem;max-width:200px;padding:8px 12px;width:100%}.remarks-input:focus{border-color:#ffd54f;box-shadow:0 0 0 3px rgba(255,213,79,0.1);outline:none}.no-students{color:#666;padding:40px;text-align:center}@media (max-width: 768px){.dashboard-nav{flex-direction:row;gap:12px;height:60px;min-height:60px;padding:12px 16px}.nav-brand{flex:1 1;min-width:0}.nav-brand h1{font-size:1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-user{align-items:flex-end;flex-direction:column;gap:4px;min-width:0}.nav-user span{font-size:0.8rem;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-signout{font-size:0.75rem;padding:6px 12px}.dashboard-content{padding:calc(60px + 16px) 16px 16px}.welcome-section{margin-bottom:16px;padding:16px;text-align:center}.welcome-section h2{font-size:1.5rem;margin-bottom:8px}.welcome-section p{font-size:0.9rem;margin:0}.admin-tabs{flex-wrap:wrap;gap:8px;justify-content:center}.dashboard-tabs{flex-wrap:nowrap;gap:2px;margin-bottom:16px;overflow-x:auto;padding:4px;-webkit-overflow-scrolling:touch}.dashboard-tabs .tab-button{flex:1 1;flex-shrink:0;font-size:0.7rem;gap:4px;min-width:0;padding:10px 8px;white-space:nowrap}.tab-icon{font-size:1.2rem}.stats-grid{grid-template-columns:1fr}.dashboard-grid{grid-template-columns:1fr}.action-buttons{flex-direction:column}.section-header{flex-direction:column;gap:15px;text-align:center}.class-filter{justify-content:center}.finance-summary{grid-template-columns:repeat(2,1fr)}.gallery-grid{grid-template-columns:1fr}.events-grid{gap:20px;grid-template-columns:1fr}.event-card{padding:20px}.event-header{align-items:flex-start;flex-direction:column;gap:10px}.event-details{flex-direction:column;gap:10px}.event-actions{justify-content:stretch}.event-actions .btn{flex:1 1}.attendance-controls{flex-direction:column;gap:20px}.attendance-buttons{flex-direction:column}.users-table, .students-table, .finance-table, .attendance-table{font-size:0.9rem}.users-table th,
  .users-table td,
  .students-table th,
  .students-table td,
  .finance-table th,
  .finance-table td,
  .attendance-table th,
  .attendance-table td{padding:10px 8px}.class-selection{margin-bottom:16px}.control-group{align-items:center;display:flex;flex-direction:column;gap:8px}.control-group label{color:#374151;font-size:0.9rem;font-weight:600}.class-select{border:1px solid #d1d5db;border-radius:6px;font-size:0.9rem;max-width:200px;padding:8px 12px;width:100%}.attendance-controls{margin-bottom:16px}.date-input{border:1px solid #d1d5db;border-radius:6px;font-size:0.9rem;max-width:200px;padding:8px 12px;width:100%}.attendance-summary{gap:12px;grid-template-columns:repeat(2,1fr);margin-bottom:16px}.summary-card{padding:12px;text-align:center}.summary-card h4{font-size:0.8rem;margin-bottom:4px}.summary-card p{font-size:1.2rem;font-weight:bold}}@media (max-width: 480px){.dashboard-nav{height:70px;min-height:47px;padding:8px 12px}.nav-brand h1{font-size:0.9rem}.nav-user span{font-size:0.7rem;max-width:100px}.btn-signout{font-size:0.7rem;padding:4px 8px}.dashboard-content{padding:calc(50px + 12px) 12px 12px}.welcome-section{margin-bottom:12px;padding:12px}.welcome-section h2{font-size:1.3rem}.welcome-section p{font-size:0.8rem}.dashboard-tabs{margin-bottom:12px}.dashboard-tabs .tab-button{font-size:0.65rem;padding:8px 6px}.class-selection{margin-bottom:12px}.attendance-summary{gap:8px;grid-template-columns:1fr}.summary-card{padding:10px}.summary-card h4{font-size:0.75rem}.summary-card p{font-size:1.1rem}}@media (max-width: 360px){.dashboard-nav{height:70px;min-height:47px;padding:6px 10px}.nav-brand h1{font-size:0.8rem}.nav-user span{font-size:0.65rem;max-width:80px}.btn-signout{font-size:0.65rem;padding:3px 6px}.dashboard-content{padding:calc(45px + 28px) 10px 10px}.welcome-section{margin-bottom:10px;padding:10px}.welcome-section h2{font-size:1.2rem}.welcome-section p{font-size:0.75rem}.dashboard-tabs{margin-bottom:10px}.dashboard-tabs .tab-button{font-size:0.6rem;padding:6px 4px}.class-selection{margin-bottom:10px}.attendance-summary{gap:6px}.summary-card{padding:8px}.summary-card h4{font-size:0.7rem}.summary-card p{font-size:1rem}}.guest-dashboard{background:linear-gradient(135deg,#f8fafc 0%,#f1f5f9 100%);min-height:100vh;padding:2rem 1rem}.loading-container{align-items:center;display:flex;flex-direction:column;gap:1rem;justify-content:center;min-height:60vh}.loading-spinner{border:4px solid #e2e8f0;border-top-color:#ffc107;height:50px;width:50px}.dashboard-header{align-items:center;background:linear-gradient(135deg,#fff 0%,#f8fafc 100%);border-radius:1.5rem;box-shadow:0 10px 30px rgba(0,0,0,0.1);display:flex;justify-content:space-between;margin:0 auto 3rem;max-width:1200px;overflow:hidden;padding:2rem;position:relative}.header-content h1{background:var(--gradient-primary);-webkit-background-clip:text;color:var(--text-primary);font-family:var(--font-heading);font-size:2.5rem;font-weight:var(--font-weight-bold);margin-bottom:1rem;-webkit-text-fill-color:transparent;background-clip:text}.header-content p{color:var(--text-secondary);font-family:var(--font-primary);font-size:1.1rem;font-weight:var(--font-weight-medium);line-height:var(--line-height-normal);max-width:500px}.header-visual{height:200px;position:relative;width:200px}.floating-shapes{position:relative}.floating-shapes .shape{animation:float 3s ease-in-out infinite;font-size:3rem;position:absolute}.shape-1{left:20%;top:20%}.shape-2{animation-delay:1s;right:20%;top:60%}.shape-3{animation-delay:2s;bottom:20%;left:50%}@keyframes float{0%, 100%{transform:translateY(0px)}50%{transform:translateY(-20px)}}.stats-section{margin:0 auto 3rem;max-width:1200px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));grid-gap:1.5rem;gap:1.5rem}.stat-card{align-items:center;background:white;border-radius:1rem;box-shadow:0 4px 15px rgba(0,0,0,0.1);display:flex;gap:1.5rem;padding:2rem;transition:all 0.3s ease}.stat-card:hover{box-shadow:0 8px 25px rgba(0,0,0,0.15);transform:translateY(-5px)}.stat-icon{filter:drop-shadow(0 2px 4px rgba(0,0,0,0.1));font-size:3rem}.stat-content h3{color:#1e293b;font-size:2rem;font-weight:800;margin-bottom:0.5rem}.stat-content p{color:#64748b;font-size:0.95rem;font-weight:600}.section-header{margin-bottom:2rem}.section-header h2{color:#1e293b;font-size:2rem;font-weight:700;margin-bottom:0.75rem}.section-header p{color:#64748b;font-size:1.1rem}.events-section{margin:0 auto 3rem;max-width:1200px}.events-grid{grid-template-columns:repeat(auto-fit,minmax(350px,1fr));grid-gap:1.5rem;gap:1.5rem}.event-card{border-radius:1rem;box-shadow:0 4px 15px rgba(0,0,0,0.1);display:flex;gap:1rem;padding:1.5rem}.event-card:hover{box-shadow:0 8px 25px rgba(0,0,0,0.15);transform:translateY(-3px)}.event-icon{flex-shrink:0;font-size:2.5rem}.event-content h3{color:#1e293b;font-size:1.25rem;font-weight:700;margin-bottom:0.75rem}.event-content p{color:#64748b;font-size:0.95rem;line-height:1.5;margin-bottom:1rem}.event-meta{display:flex;flex-wrap:wrap;gap:1rem}.event-meta span{background:rgba(255,193,7,0.1);border-radius:0.5rem;color:#92400e;font-size:0.85rem;font-weight:600;padding:0.5rem 0.75rem}.gallery-section{margin:0 auto 3rem;max-width:1200px}.gallery-container{background:white;border-radius:1rem;box-shadow:0 4px 15px rgba(0,0,0,0.1);padding:2rem}.main-photo{align-items:center;background:#f8fafc;border-radius:1rem;display:flex;justify-content:center;margin-bottom:2rem;min-height:400px;overflow:hidden;position:relative}.main-photo-img{border-radius:1rem;max-height:400px;max-width:100%;object-fit:contain}.photo-navigation{display:flex;justify-content:space-between;padding:0 1rem;position:absolute;top:50%;transform:translateY(-50%);width:100%}.nav-btn{align-items:center;background:rgba(255,255,255,0.9);border:none;border-radius:50%;display:flex;font-size:1.5rem;height:50px;justify-content:center;width:50px}.nav-btn:hover{background:white;box-shadow:0 4px 15px rgba(0,0,0,0.2);transform:scale(1.1)}.photo-thumbnails{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));grid-gap:1rem;gap:1rem}.thumbnail{border:3px solid transparent;border-radius:0.5rem;cursor:pointer;overflow:hidden;transition:all 0.3s ease}.thumbnail:hover{transform:scale(1.05)}.thumbnail.active{border-color:#ffc107;box-shadow:0 4px 15px rgba(255,193,7,0.3)}.thumbnail img{height:80px;object-fit:cover;width:100%}.cta-section{margin:0 auto;max-width:1200px}.cta-content{background:linear-gradient(135deg,#ff6b35,#f7931e);border-radius:1.5rem;box-shadow:0 10px 30px rgba(255,107,53,0.3);color:white;padding:3rem 2rem;text-align:center}.cta-content h2{font-size:2.5rem;font-weight:800;margin-bottom:1rem}.cta-content p{font-size:1.1rem;line-height:1.6;margin-bottom:2rem;opacity:0.95}.cta-features{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.cta-features span{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(255,255,255,0.2);border-radius:2rem;font-weight:600;padding:0.75rem 1.5rem}@media (max-width: 768px){.guest-dashboard{padding:1rem 0.5rem}.dashboard-header{flex-direction:column;gap:2rem;text-align:center}.header-content h1{font-size:2rem}.header-visual{height:150px;width:150px}.stats-grid{grid-template-columns:1fr}.events-grid{grid-template-columns:1fr}.event-card{flex-direction:column;text-align:center}.cta-content{padding:2rem 1rem}.cta-content h2{font-size:2rem}.cta-features{align-items:center;flex-direction:column}}@media (max-width: 480px){.dashboard-header{padding:1.5rem}.header-content h1{font-size:1.75rem}.stat-card{padding:1.5rem}.event-card{padding:1rem}.gallery-container{padding:1rem}.main-photo{min-height:300px}}.form-container{align-items:center;background:var(--gradient-warm);display:flex;justify-content:center;min-height:100vh;padding:var(--space-5)}.form-card{background:var(--bg-primary);border-radius:var(--radius-2xl);box-shadow:var(--shadow-2xl);margin:var(--space-5);max-width:800px;padding:var(--space-10);width:100%}.form-header{margin-bottom:40px;text-align:center}.form-header h1{color:#333;font-size:2.5rem;font-weight:700;margin-bottom:10px}.form-header p{color:#666;font-size:1.1rem;margin:0}.form-section{background:#f8f9fa;border-left:5px solid #ffd700;border-radius:15px;margin-bottom:40px;padding:30px}.form-section h3{align-items:center;color:#333;display:flex;font-size:1.4rem;gap:10px;margin-bottom:25px}.form-group{margin-bottom:25px}.form-group label{color:#333;display:block;font-size:1rem;margin-bottom:8px}.form-group input,
.form-group select,
.form-group textarea{background:white;border:2px solid #e1e5e9;border-radius:10px;font-size:1rem;padding:15px;transition:all 0.3s ease;width:100%}.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus{border-color:#ffd700;box-shadow:0 0 0 3px rgba(255,215,0,0.1);outline:none}.form-group input.error,
.form-group select.error,
.form-group textarea.error{border-color:#dc3545;box-shadow:0 0 0 3px rgba(220,53,69,0.1)}.help-text{color:#6c757d;display:block;font-size:0.9rem;font-style:italic;margin-top:5px}.error-message{color:#dc3545;font-size:0.9rem;margin-top:5px}.form-field{margin-bottom:25px}.form-field .form-label{color:#333;display:block;font-size:1rem;font-weight:600;margin-bottom:8px}.form-field .form-input{background:white;border:2px solid #e1e5e9;border-radius:10px;font-family:inherit;font-size:1rem;padding:15px;transition:all 0.3s ease;width:100%}.form-field .form-input:focus{border-color:#ffd700;box-shadow:0 0 0 3px rgba(255,215,0,0.1);outline:none}.form-field .form-input.error{border-color:#dc3545;box-shadow:0 0 0 3px rgba(220,53,69,0.1)}.form-field .form-error{color:#dc3545;display:block;font-size:0.9rem;font-weight:500;margin-top:5px}.text-error{color:#dc3545}.text-warning{color:#f57c00;font-size:0.875rem;font-weight:500}.success-message{align-items:center;background:#d1fae5;border:1px solid #10b981;border-radius:10px;color:#047857;display:flex;font-weight:500;gap:10px;margin-bottom:20px;padding:15px 20px}.success-message::before{content:"✅";font-size:1.2rem}.error-message{align-items:center;background:#fecaca;border:1px solid #ef4444;border-radius:10px;display:flex;font-weight:500;gap:10px;margin-bottom:20px;padding:15px 20px}.error-message::before{content:"❌";font-size:1.2rem}.loading-message{align-items:center;color:#666;display:flex;font-size:1.1rem;gap:10px;justify-content:center;padding:40px 20px;text-align:center}.loading-message::before{animation:spin 1s linear infinite;content:"⏳";font-size:1.5rem}.checkbox-label{align-items:flex-start;color:#333;cursor:pointer;display:flex;font-weight:500;gap:12px;line-height:1.4}.checkbox-label input[type="checkbox"]{cursor:pointer;margin:0;width:auto}.checkmark{background:white;border:2px solid #e1e5e9;border-radius:4px;display:inline-block;height:20px;position:relative;transition:all 0.3s ease;width:20px}.checkbox-label input[type="checkbox"]:checked + .checkmark{background:#ffd700;border-color:#ffd700}.checkbox-label input[type="checkbox"]:checked + .checkmark::after{color:white;content:'\2713';font-size:14px;font-weight:bold;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.photo-upload-container{margin-bottom:25px}.photo-upload{align-items:center;display:flex;flex-direction:column;gap:20px}.photo-input{display:inline-block;position:relative}.file-input{height:0;opacity:0;overflow:hidden;position:absolute;width:0}.file-label{align-items:center;background:#ffd700;border:2px solid #ffd700;border-radius:25px;color:#333;cursor:pointer;display:inline-flex;font-size:1rem;font-weight:600;gap:10px;padding:15px 25px;text-decoration:none;transition:all 0.3s ease}.file-label:hover{background:#ffed4e;border-color:#ffed4e;box-shadow:0 5px 15px rgba(255,215,0,0.3);transform:translateY(-2px)}.upload-icon{font-size:1.2rem}.photo-preview{align-items:center;display:flex;flex-direction:column;gap:15px;margin-top:20px}.photo-preview img{border-radius:15px;box-shadow:0 5px 15px rgba(0,0,0,0.1);max-height:200px;max-width:200px;object-fit:cover}.remove-photo{background:#dc3545;border:none;border-radius:20px;color:white;cursor:pointer;font-size:0.9rem;font-weight:500;padding:8px 16px;transition:all 0.3s ease}.remove-photo:hover{background:#c82333;box-shadow:0 3px 10px rgba(220,53,69,0.3);transform:translateY(-1px)}.drag-drop-area{background:#f8f9fa;border:3px dashed #e1e5e9;border-radius:15px;cursor:pointer;padding:40px;position:relative;text-align:center;transition:all 0.3s ease}.drag-drop-area.drag-active{background:rgba(255,215,0,0.05);border-color:#ffd700}.drag-drop-area:hover{background:rgba(255,215,0,0.05);border-color:#ffd700}.upload-prompt{color:#666;font-size:1.1rem;margin-bottom:15px}.upload-btn{background:#ffd700;border:none;border-radius:25px;color:#333;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all 0.3s ease}.upload-btn:hover{background:#ffed4e;transform:translateY(-2px)}.image-preview{display:inline-block;margin-top:20px;position:relative}.image-preview img{border-radius:10px;box-shadow:0 5px 15px rgba(0,0,0,0.1);max-height:200px;max-width:200px}.image-overlay{align-items:center;background:rgba(0,0,0,0.5);border-radius:10px;display:flex;gap:10px;justify-content:center;opacity:0;top:0;transition:opacity 0.3s ease}.image-preview:hover .image-overlay{opacity:1}.change-image-btn,
.remove-image-btn{background:rgba(255,255,255,0.9);border:none;border-radius:20px;color:#333;cursor:pointer;font-size:0.9rem;padding:8px 16px;transition:all 0.3s ease}.change-image-btn:hover,
.remove-image-btn:hover{background:white;transform:scale(1.05)}.form-summary{background:#e8f5e8;border:2px solid #28a745;border-radius:15px;margin-bottom:30px;padding:25px}.form-summary h3{color:#155724;font-size:1.3rem;margin-bottom:20px}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:15px;gap:15px}.summary-item{display:flex;flex-direction:column;gap:5px}.summary-label{color:#155724;font-size:0.9rem;font-weight:600}.summary-value{color:#333;font-size:1rem}.form-actions{align-items:center;gap:20px;margin-top:30px}.btn-primary,
.btn-secondary{border:none;border-radius:25px;cursor:pointer;font-size:1rem;font-weight:600;min-width:103px;padding:15px 30px;transition:all 0.3s ease}.btn-primary{background:#ffd700;color:#333}.btn-primary:hover:not(:disabled){background:#ffed4e;box-shadow:0 5px 15px rgba(255,215,0,0.3);transform:translateY(-2px)}.btn-primary:disabled{cursor:not-allowed;opacity:0.6}.spinner{animation:spin 1s linear infinite;border:2px solid transparent;border-radius:50%;border-top-color:currentcolor;display:inline-block;height:16px;margin-right:8px;width:16px}.form-success{padding:40px 20px;text-align:center}.success-content{margin:0 auto;max-width:500px}.success-content h2{color:#28a745;font-size:2rem;margin-bottom:15px}.success-content p{color:#666;font-size:1.1rem;margin-bottom:30px}.success-details{background:#f8f9fa;border-radius:15px;margin-bottom:30px;padding:25px;text-align:left}.success-details h4{color:#333;font-size:1.2rem;margin-bottom:15px}.success-details p{color:#555;margin:8px 0}.redirect-message{color:#666;font-style:italic}.redirect-spinner{animation:spin 1s linear infinite;border:2px solid #e1e5e9;border-radius:50%;border-top-color:#ffd700;height:20px;margin:15px auto 0;width:20px}@media (max-width: 768px){.form-container{padding:10px}.form-card{margin:10px;padding:25px 20px}.form-header h1{font-size:2rem}.form-row{gap:15px;grid-template-columns:1fr}.form-section{padding:20px}.form-actions{flex-direction:column;gap:15px}.btn-primary,
  .btn-secondary{width:100%}.summary-grid{grid-template-columns:1fr}.drag-drop-area{padding:25px}.image-preview img{max-height:150px;max-width:150px}.photo-preview img{max-height:150px;max-width:150px}.file-label{font-size:0.9rem;padding:12px 20px}}@media (max-width: 480px){.form-card{padding:20px 15px}.form-header h1{font-size:1.8rem}.form-section{padding:15px}.drag-drop-area{padding:20px}.upload-prompt{font-size:1rem}.photo-preview img{max-height:120px;max-width:120px}.file-label{font-size:0.85rem;padding:10px 16px}.form-field .form-input{font-size:0.9rem;padding:12px}.form-actions{gap:12px}}.bulk-user-creation-modal{max-height:90vh;max-width:1000px;overflow-y:auto;width:100%}.step-indicator{border-bottom:2px solid #e5e7eb;display:flex;justify-content:center;margin-bottom:30px;padding:20px 0}.step{align-items:center;display:flex;flex-direction:column;margin:0 20px;position:relative}.step:not(:last-child)::after{background:#e5e7eb;content:'';height:2px;left:100%;position:absolute;top:15px;width:40px;z-index:1}.step.completed:not(:last-child)::after{background:#10b981}.step-number{align-items:center;background:#e5e7eb;border-radius:50%;color:#6b7280;display:flex;font-size:14px;font-weight:600;height:30px;justify-content:center;margin-bottom:8px;position:relative;width:30px;z-index:2}.step.active .step-number{background:#3b82f6;color:white}.step.completed .step-number{background:#10b981;color:white}.step-label{color:#6b7280;font-size:12px;font-weight:500}.step.active .step-label{color:#3b82f6;font-weight:600}.step.completed .step-label{color:#10b981;font-weight:600}.step-content{min-height:400px;padding:20px 0}.step-content h3{color:#1f2937;font-size:1.5rem;margin:0 0 16px;text-align:center}.step-description{color:#6b7280;font-size:14px;margin-bottom:30px;text-align:center}.type-selection{display:grid;grid-template-columns:1fr 1fr;grid-gap:20px;gap:20px;margin-bottom:30px}.type-option input[type="radio"]{display:none}.type-card{align-items:center;background:white;border:2px solid #e5e7eb;border-radius:12px;cursor:pointer;display:flex;gap:16px;padding:20px;transition:all 0.2s ease}.type-option input[type="radio"]:checked + .type-card{background:#eff6ff;border-color:#3b82f6}.type-card:hover{border-color:#3b82f6;box-shadow:0 4px 12px rgba(0,0,0,0.1);transform:translateY(-2px)}.type-icon{align-items:center;background:#f3f4f6;border-radius:12px;display:flex;font-size:2rem;height:60px;justify-content:center;width:60px}.type-info h4{color:#1f2937;font-size:1.1rem;font-weight:600;margin:0 0 4px}.type-info p{color:#6b7280;font-size:14px;margin:0}.quantity-selector{text-align:center}.quantity-selector label{color:#374151;display:block;font-weight:600;margin-bottom:8px}.quantity-selector select{background:white;border:2px solid #e5e7eb;border-radius:8px;font-size:16px;min-width:120px;padding:12px 16px}.template-form{margin:0 auto;max-width:600px}.form-row{grid-gap:20px;gap:20px;margin-bottom:20px}.form-group{gap:8px}.form-group label{font-size:14px}.form-group input,
.form-group select{background:white;border:2px solid #e5e7eb;border-radius:8px;font-size:14px;padding:12px 16px;transition:all 0.2s ease}.form-group input:focus,
.form-group select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,0.1);outline:none}.form-group small{color:#6b7280;font-size:12px;font-style:italic}.info-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-top:20px;padding:16px}.info-box h4{color:#1e293b;font-size:14px;font-weight:600;margin:0 0 12px}.info-box ul{margin:0;padding-left:20px}.info-box li{color:#475569;font-size:13px;margin-bottom:6px}.info-box li strong{color:#1e293b}.users-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));max-height:500px;overflow-y:auto;grid-gap:16px;gap:16px;padding:20px 0}.user-card{background:white;border:1px solid #e5e7eb;border-radius:12px;padding:16px;transition:all 0.2s ease}.user-card.invalid{background:#fef2f2;border-color:#ef4444}.user-card:hover{box-shadow:0 4px 12px rgba(0,0,0,0.1);transform:translateY(-2px)}.user-header{align-items:center;border-bottom:1px solid #f3f4f6;display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:12px}.user-header h4{color:#1f2937;font-size:1rem;font-weight:600;margin:0}.error-badge{background:#ef4444;border-radius:12px;color:white;font-size:10px;font-weight:600;padding:2px 8px}.user-fields{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.field-group{display:flex;flex-direction:column;gap:4px}.field-group label{color:#374151;font-size:12px;font-weight:600}.field-group input,
.field-group select{background:white;border:1px solid #d1d5db;border-radius:6px;font-size:12px;padding:8px 12px}.field-group input:focus,
.field-group select:focus{border-color:#3b82f6;box-shadow:0 0 0 2px rgba(59,130,246,0.1);outline:none}.field-group input.error{background:#fef2f2;border-color:#ef4444}.user-errors{border-top:1px solid #fecaca;margin-top:12px;padding-top:12px}.error-message{color:#dc2626;display:block;font-size:11px;margin-bottom:4px}.creating{align-items:center;display:flex;justify-content:center;min-height:300px}.creating-animation{text-align:center}.creating-animation .spinner{animation:spin 1s linear infinite;border:4px solid #f3f4f6;border-radius:50%;border-top-color:#3b82f6;height:60px;margin:0 auto 20px;width:60px}.creating-animation h3{color:#1f2937;margin:0 0 8px}.creating-animation p{color:#6b7280;margin:0}.success{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:300px;text-align:center}.success-icon{font-size:4rem;margin-bottom:20px}.results-summary{display:flex;gap:30px;justify-content:center;margin:20px 0}.result-item{align-items:center;display:flex;flex-direction:column;gap:8px}.result-number{font-size:2rem;font-weight:700}.result-item.success .result-number{color:#10b981}.result-item.error .result-number{color:#ef4444}.result-label{color:#6b7280;font-size:14px;font-weight:500}.error-details{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin-top:20px;max-width:500px;padding:20px}.error-details h4{color:#dc2626;font-size:14px;margin:0 0 12px}.error-details ul{margin:0;padding-left:20px}.error-details li{color:#dc2626;font-size:12px;margin-bottom:4px}.modal-actions{border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;margin-top:20px;padding-top:20px}@media (max-width: 768px){.bulk-user-creation-modal{margin:0 16px;max-width:100%}.step-indicator{flex-wrap:wrap;gap:10px}.step{margin:0 10px}.type-selection{grid-template-columns:1fr}.form-row{grid-template-columns:1fr}.users-list{grid-template-columns:1fr}.user-fields{grid-template-columns:1fr}.results-summary{flex-direction:column;gap:15px}.modal-actions{flex-direction:column}}:root{--topic-overview:#60a5fa;--topic-education:#34d399;--topic-values:#a78bfa;--topic-health:#fb7185;--topic-technology:#fbbf24}.tips-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:1.5rem}.tips-stats{color:#6b7280;display:flex;font-size:0.9rem;gap:1rem}.stat-item{background:#f3f4f6;font-weight:600;padding:0.5rem 1rem}.tip-content{align-items:center;display:flex;gap:1rem;width:100%}.tip-text{flex:1 1;font-size:1rem;line-height:1.6}.tip-actions{display:flex;flex-shrink:0;gap:0.5rem}.action-btn{align-items:center;background:none;border:2px solid #e5e7eb;border-radius:50%;cursor:pointer;display:flex;font-size:1.1rem;height:36px;justify-content:center;transition:all 0.3s ease;width:36px}.complete-btn.active{background:#10b981;border-color:#10b981;color:white}.favorite-btn.active{background:#ef4444;border-color:#ef4444;color:white}.action-btn:hover{box-shadow:0 4px 12px rgba(0,0,0,0.15);transform:scale(1.1)}.tip-item{background:white;border:2px solid #e5e7eb;cursor:pointer;overflow:hidden;padding:1.25rem;position:relative}.tip-item::before{background:linear-gradient(90deg,transparent,rgba(59,130,246,0.1),transparent);content:'';height:100%;left:-100%;position:absolute;top:0;transition:left 0.6s ease;width:100%}.tip-item:hover::before{left:100%}.tip-item:hover{border-color:#3b82f6;box-shadow:0 4px 20px rgba(59,130,246,0.1);transform:translateY(-2px)}.tip-item:active{transform:translateY(0)}.tip-item.completed{background:#f0fdf4;border-color:#10b981}.tip-item.favorite{background:#fef2f2;border-color:#ef4444}.personalized-recommendations{background:linear-gradient(135deg,#fef3c7 0%,#fde68a 100%);border:2px solid #f59e0b;border-radius:12px;margin-top:2rem;padding:1.5rem}.personalized-recommendations h4{color:#92400e;font-size:1.1rem;font-weight:700;margin-bottom:1rem}.recommendation-item{align-items:center;background:white;border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,0.05);display:flex;gap:0.75rem;margin-bottom:0.75rem;padding:0.75rem}.rec-icon{font-size:1.2rem}.activity-card{background:white;border:2px solid #e5e7eb;cursor:pointer;overflow:hidden;position:relative;text-align:center}.activity-card::before{background:linear-gradient(90deg,transparent,rgba(34,197,94,0.1),transparent);content:'';height:100%;left:-100%;position:absolute;top:0;transition:left 0.6s ease;width:100%}.activity-card:hover::before{left:100%}.activity-card:hover{border-color:#22c55e;box-shadow:0 8px 25px rgba(34,197,94,0.15);transform:translateY(-4px)}.activity-card:active{transform:translateY(-2px)}.activity-icon{display:block;font-size:2rem;margin-bottom:1rem}.cultural-note{background:white;border:2px solid #e5e7eb;cursor:pointer;margin-bottom:1rem;overflow:hidden;position:relative;transition:all 0.3s ease}.cultural-note::before{background:linear-gradient(90deg,transparent,rgba(168,85,247,0.1),transparent);content:'';height:100%;left:-100%;position:absolute;top:0;transition:left 0.6s ease;width:100%}.cultural-note:hover::before{left:100%}.cultural-note:hover{border-color:#a855f7;box-shadow:0 8px 25px rgba(168,85,247,0.15);transform:translateY(-2px)}.cultural-icon{display:inline-block;margin-right:1rem}.challenge-solution{background:white;border:2px solid #e5e7eb;cursor:pointer;margin-bottom:1.5rem;overflow:hidden;position:relative;transition:all 0.3s ease}.challenge-solution::before{background:linear-gradient(90deg,transparent,rgba(245,158,11,0.1),transparent);content:'';height:100%;left:-100%;position:absolute;top:0;transition:left 0.6s ease;width:100%}.challenge-solution:hover::before{left:100%}.challenge-solution:hover{border-color:#f59e0b;box-shadow:0 8px 25px rgba(245,158,11,0.15);transform:translateY(-2px)}.challenge{align-items:center;border:2px solid #fecaca;padding:1.25rem}.solution{align-items:center;border:2px solid #d1fae5;padding:1.25rem}.challenge-icon, .solution-icon{flex-shrink:0;font-size:1.5rem}.daily-challenge-section{animation:challengePulse 4s ease-in-out infinite;background:linear-gradient(135deg,#667eea 0%,#764ba2 50%,#f093fb 100%);border:2px solid rgba(255,255,255,0.2);border-radius:20px;box-shadow:0 20px 40px rgba(102,126,234,0.3);color:white;margin:2rem 0;overflow:hidden;padding:2rem;position:relative}.daily-challenge-section::before{animation:shimmer 3s linear infinite;background:linear-gradient(45deg,transparent,rgba(255,255,255,0.1),transparent);content:'';height:200%;left:-50%;pointer-events:none;position:absolute;top:-50%;width:200%}@keyframes challengePulse{0%, 100%{box-shadow:0 20px 40px rgba(102,126,234,0.3);transform:translateY(0)}50%{box-shadow:0 25px 50px rgba(102,126,234,0.4);transform:translateY(-5px)}}@keyframes shimmer{0%{transform:translateX(-100%) translateY(-100%) rotate(45deg)}100%{transform:translateX(100%) translateY(100%) rotate(45deg)}}.daily-challenge-section h3{color:white;font-size:1.5rem;font-weight:800;margin-bottom:1.5rem;position:relative;text-shadow:0 2px 4px rgba(0,0,0,0.2);z-index:1}.challenge-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(135deg,rgba(255,255,255,0.25) 0%,rgba(255,255,255,0.1) 100%);border:2px solid rgba(255,255,255,0.3);border-radius:16px;overflow:hidden;padding:2rem;position:relative;transition:all 0.3s ease}.challenge-card::before{background:linear-gradient(90deg,transparent,rgba(255,255,255,0.2),transparent);content:'';height:100%;left:-100%;position:absolute;top:0;transition:left 0.8s ease;width:100%}.challenge-card:hover::before{left:100%}.challenge-card:hover{border-color:rgba(255,255,255,0.5);box-shadow:0 15px 35px rgba(0,0,0,0.2);transform:translateY(-3px) scale(1.02)}.challenge-content{align-items:center;display:flex;gap:1.5rem;position:relative;z-index:1}.challenge-icon{animation:iconBounce 2s ease-in-out infinite;filter:drop-shadow(0 4px 8px rgba(0,0,0,0.2));font-size:3rem}@keyframes iconBounce{0%, 100%{transform:translateY(0) scale(1)}50%{transform:translateY(-8px) scale(1.1)}}.challenge-text{flex:1 1}.challenge-text p{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(0,0,0,0.1);border:1px solid rgba(255,255,255,0.2);border-radius:12px;color:#ffffff;font-size:1.4rem;font-weight:700;line-height:1.8;margin:0 0 1.5rem;padding:1rem 1.5rem;text-shadow:0 2px 4px rgba(0,0,0,0.3)}.challenge-btn{background:linear-gradient(135deg,rgba(255,255,255,0.3) 0%,rgba(255,255,255,0.1) 100%);border:2px solid rgba(255,255,255,0.5);border-radius:20px;box-shadow:0 4px 15px rgba(0,0,0,0.1);color:white;cursor:pointer;font-size:0.9rem;font-weight:600;letter-spacing:0.3px;overflow:hidden;padding:0.75rem 1.5rem;position:relative;text-transform:uppercase;transition:all 0.4s cubic-bezier(0.4,0,0.2,1)}.challenge-btn::before{background:linear-gradient(90deg,transparent,rgba(255,255,255,0.3),transparent);content:'';height:100%;left:-100%;position:absolute;top:0;transition:left 0.6s ease;width:100%}.challenge-btn:hover::before{left:100%}.challenge-btn:hover{background:linear-gradient(135deg,rgba(255,255,255,0.4) 0%,rgba(255,255,255,0.2) 100%);border-color:rgba(255,255,255,0.8);box-shadow:0 8px 25px rgba(0,0,0,0.2);transform:translateY(-3px) scale(1.05)}.challenge-btn:active{transform:translateY(-1px) scale(1.02);transition:all 0.1s ease}.indian-parent-guide{background:linear-gradient(135deg,#f8fafc 0%,#f1f5f9 100%);font-family:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;margin:0 auto;max-width:1400px;min-height:100vh;padding:2rem}.guide-header{background:linear-gradient(135deg,#ff6b6b,#ffa726);border-radius:20px;box-shadow:0 10px 30px rgba(255,107,107,0.3);color:white;margin-bottom:3rem;padding:2rem;text-align:center}.guide-header h1{background:linear-gradient(135deg,#ffffff 0%,#f8f9fa 50%,#e9ecef 100%);-webkit-background-clip:text;font-size:2.5rem;font-weight:800;margin-bottom:1rem;text-shadow:0 4px 8px rgba(0,0,0,0.2);-webkit-text-fill-color:transparent;animation:titleFloat 3s ease-in-out infinite;background-clip:text;position:relative}.guide-header h1::before{animation:bounce 2s infinite;-webkit-background-clip:initial;content:'👨‍👩‍👧‍👦';font-size:2rem;left:-60px;position:absolute;top:50%;transform:translateY(-50%);-webkit-text-fill-color:initial;background-clip:border-box;background-clip:initial;background:none;filter:none;text-shadow:0 2px 4px rgba(0,0,0,0.2)}.guide-header h1::after{animation:sparkle 2s infinite;-webkit-background-clip:initial;content:'✨';font-size:2rem;position:absolute;right:-60px;top:50%;transform:translateY(-50%);-webkit-text-fill-color:initial;background-clip:border-box;background-clip:initial;background:none;filter:none;text-shadow:0 2px 4px rgba(0,0,0,0.2)}@keyframes titleFloat{0%, 100%{transform:translateY(0)}50%{transform:translateY(-5px)}}.guide-header p{font-size:1.2rem;font-weight:500;opacity:0.9}.guide-controls{display:grid;grid-template-columns:1fr 2fr;grid-gap:2rem;gap:2rem;margin-bottom:3rem}.search-section{align-items:center;display:flex}.search-input{background:white;border:2px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 6px rgba(0,0,0,0.05);font-size:1rem;padding:1rem 1.5rem;transition:all 0.3s ease;width:100%}.search-input:focus{border-color:#ff6b6b;box-shadow:0 0 0 4px rgba(255,107,107,0.1);outline:none}.age-group-selector h3{color:#374151;font-weight:600;margin-bottom:1rem}.age-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:1rem;gap:1rem}.age-group-btn{align-items:center;background:white;border:2px solid #e2e8f0;border-radius:12px;cursor:pointer;display:flex;font-weight:500;gap:0.75rem;padding:1rem 1.5rem;transition:all 0.3s ease}.age-group-btn:hover{border-color:#ff6b6b;box-shadow:0 4px 12px rgba(0,0,0,0.1);transform:translateY(-2px)}.age-group-btn.active{background:linear-gradient(135deg,#60a5fa,#93c5fd);border-color:#60a5fa;box-shadow:0 4px 12px rgba(96,165,250,0.3);color:white}.age-group-info{background:rgba(96,165,250,0.1);border-left:4px solid #60a5fa;border-radius:12px;margin-top:1rem;padding:1rem;text-align:center}.age-group-info p{color:#60a5fa;font-size:0.95rem;font-weight:600;margin:0}.age-icon{font-size:1.5rem}.guide-content{display:grid;grid-template-columns:300px 1fr;grid-gap:2rem;gap:2rem;margin-bottom:3rem}.sections-sidebar{background:white;border-radius:16px;box-shadow:0 4px 6px rgba(0,0,0,0.05);height:-webkit-fit-content;height:fit-content;padding:1.5rem;position:-webkit-sticky;position:sticky;top:2rem}.sections-sidebar h3{color:#374151;font-size:1.1rem;font-weight:700;margin-bottom:1.5rem}.section-card{align-items:flex-start;border:2px solid transparent;border-radius:12px;cursor:pointer;display:flex;gap:1rem;margin-bottom:1rem;padding:1rem;transition:all 0.3s ease}.section-card:hover{background:#f8fafc;border-color:#e2e8f0;transform:translateX(4px)}.section-card.active{background:linear-gradient(135deg,#ff6b6b,#ffa726);border-color:#ff6b6b;box-shadow:0 6px 20px rgba(255,107,107,0.3);color:white;transform:translateX(4px)}.section-card.active .section-icon{filter:brightness(0) invert(1)}.section-card.active h4,
.section-card.active p{color:white}.section-card[data-topic="overview"].active{background:linear-gradient(135deg,#60a5fa,#93c5fd);background:linear-gradient(135deg,var(--topic-overview),#93c5fd)}.section-card[data-topic="education"].active{background:linear-gradient(135deg,#34d399,#6ee7b7);background:linear-gradient(135deg,var(--topic-education),#6ee7b7)}.section-card[data-topic="values"].active{background:linear-gradient(135deg,#a78bfa,#c4b5fd);background:linear-gradient(135deg,var(--topic-values),#c4b5fd)}.section-card[data-topic="health"].active{background:linear-gradient(135deg,#fb7185,#fda4af);background:linear-gradient(135deg,var(--topic-health),#fda4af)}.section-card[data-topic="technology"].active{background:linear-gradient(135deg,#fbbf24,#fde047);background:linear-gradient(135deg,var(--topic-technology),#fde047)}.section-icon{flex-shrink:0;font-size:2rem}.section-info h4{color:#374151;font-size:0.95rem;font-weight:600;margin:0 0 0.5rem}.section-info p{color:#6b7280;font-size:0.85rem;line-height:1.4;margin:0}.main-content{background:white;border-radius:16px;box-shadow:0 4px 6px rgba(0,0,0,0.05);padding:2rem}.content-header{border-bottom:2px solid #e2e8f0;margin-bottom:2rem;padding-bottom:1.5rem}.current-topic-title{align-items:center;color:#1f2937;display:flex;font-size:1.8rem;font-weight:700;gap:0.75rem;margin-bottom:0.5rem}.current-topic-description{color:#6b7280;font-size:1.1rem;font-weight:500;margin:0}.content-navigation{border-bottom:2px solid #f1f5f9;display:flex;flex-wrap:wrap;gap:0.5rem;margin-bottom:2rem;padding-bottom:1rem}.nav-btn{background:white;border:2px solid #e2e8f0;border-radius:8px;color:#6b7280;cursor:pointer;font-weight:500;padding:0.75rem 1.5rem;transition:all 0.3s ease}.nav-btn:hover{border-color:#ff6b6b;color:#ff6b6b;transform:translateY(-1px)}.nav-btn.active{background:linear-gradient(135deg,#ff6b6b,#ffa726);border-color:#ff6b6b;box-shadow:0 4px 12px rgba(255,107,107,0.3);color:white}.content-area{min-height:400px}.content-section h3{color:#374151;font-size:1.5rem;font-weight:700;margin-bottom:1.5rem}.content-section p{color:#6b7280;line-height:1.6;margin-bottom:1.5rem}.tips-list{list-style:none;margin:0;padding:0}.tip-item{align-items:flex-start;background:#f8fafc;border-left:4px solid #ff6b6b;border-radius:12px;display:flex;gap:1rem;margin-bottom:1rem;padding:1rem;transition:all 0.3s ease}.tip-item:hover{background:#f1f5f9;transform:translateX(4px)}.tip-icon{flex-shrink:0;font-size:1.2rem;margin-top:0.2rem}.activities-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));grid-gap:1rem;gap:1rem}.activity-card{align-items:center;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:2px solid #e2e8f0;border-radius:12px;display:flex;gap:1rem;padding:1.5rem;transition:all 0.3s ease}.activity-card:hover{border-color:#ff6b6b;box-shadow:0 4px 12px rgba(0,0,0,0.1);transform:translateY(-2px)}.activity-icon{flex-shrink:0;font-size:1.5rem}.activity-card p{color:#374151;font-weight:500;margin:0}.cultural-notes{display:flex;flex-direction:column;gap:1rem}.cultural-note{align-items:flex-start;background:linear-gradient(135deg,#fef3c7,#fde68a);border-left:4px solid #f59e0b;border-radius:12px;display:flex;gap:1rem;padding:1.5rem}.cultural-icon{flex-shrink:0;font-size:1.5rem;margin-top:0.2rem}.cultural-note p{color:#92400e;font-weight:500;margin:0}.challenges-solutions{display:flex;flex-direction:column;gap:1.5rem}.challenge-solution{background:#f8fafc;border:2px solid #e2e8f0;border-radius:12px;padding:1.5rem}.challenge{align-items:flex-start;background:#fef2f2;border-left:4px solid #ef4444;border-radius:8px;display:flex;gap:1rem;margin-bottom:1rem;padding:1rem}.challenge-icon{flex-shrink:0;font-size:1.2rem;margin-top:0.2rem}.solution{align-items:flex-start;background:#f0fdf4;border-left:4px solid #10b981;border-radius:8px;display:flex;gap:1rem;padding:1rem}.solution-icon{flex-shrink:0;font-size:1.2rem;margin-top:0.2rem}@media (max-width: 1024px){.guide-content{gap:1.5rem;grid-template-columns:1fr}.sections-sidebar{order:2;position:static}.main-content{order:1}}@media (max-width: 768px){.indian-parent-guide{padding:1rem}.guide-header h1{font-size:2rem}.guide-header h1::before,
  .guide-header h1::after{display:none}.guide-controls{gap:1.5rem;grid-template-columns:1fr}.age-groups{grid-template-columns:1fr}.content-navigation{flex-direction:column}.nav-btn{text-align:center}.activities-grid{grid-template-columns:1fr}}@media (max-width: 480px){.guide-header{padding:1.5rem}.guide-header h1{font-size:1.75rem}.main-content{padding:1.5rem}.section-card{flex-direction:column;text-align:center}.tip-item,
  .cultural-note,
  .challenge,
  .solution{flex-direction:column;text-align:center}}@media (max-width: 768px){.tips-header{align-items:flex-start;flex-direction:column;gap:1rem}.tips-stats{justify-content:space-between;width:100%}.tip-content{align-items:flex-start;flex-direction:column;gap:1rem}.tip-actions{align-self:flex-end}.tip-item{padding:1rem}.activity-card{padding:1.25rem}.cultural-note{padding:1.25rem}.challenge-solution{padding:1.25rem}.daily-challenge-section{border-radius:16px;margin:1.5rem 0;padding:1.5rem}.daily-challenge-section h3{font-size:1.3rem}.challenge-content{flex-direction:column;gap:1.5rem;text-align:center}.challenge-icon{font-size:2.5rem}.challenge-text p{font-size:1.2rem;margin-bottom:1.5rem;padding:0.875rem 1.25rem}.challenge-btn{border-radius:18px;font-size:0.85rem;padding:0.875rem 1.25rem;width:100%}.personalized-recommendations{margin-top:1.5rem;padding:1.25rem}.recommendation-item{margin-bottom:1rem;padding:1rem}}@media (max-width: 480px){.tips-header h3{font-size:1.1rem}.tips-stats{flex-direction:column;gap:0.5rem}.stat-item{font-size:0.85rem;padding:0.4rem 0.8rem}.tip-item{padding:0.875rem}.tip-text{font-size:0.95rem}.action-btn{font-size:1rem;height:32px;width:32px}.activity-card{padding:1rem}.activity-icon{font-size:1.75rem;margin-bottom:0.75rem}.cultural-note{padding:1rem}.cultural-icon{font-size:1.25rem;margin-right:0.75rem}.challenge-solution{padding:1rem}.challenge, .solution{margin-bottom:0.75rem;padding:1rem}.challenge-icon, .solution-icon{font-size:1.25rem}.daily-challenge-section{border-radius:14px;margin:1rem 0;padding:1.25rem}.daily-challenge-section h3{font-size:1.2rem}.challenge-card{padding:1.25rem}.challenge-icon{font-size:2.2rem}.challenge-text p{font-size:1.1rem;margin-bottom:1.25rem;padding:0.75rem 1rem}.challenge-btn{border-radius:16px;font-size:0.8rem;padding:0.75rem 1.25rem}.personalized-recommendations{margin-top:1rem;padding:1rem}.personalized-recommendations h4{font-size:1rem}.recommendation-item{margin-bottom:0.75rem;padding:0.75rem}.rec-icon{font-size:1rem}}.parent-guide-page{background:linear-gradient(135deg,#f8fafc 0%,#f1f5f9 100%);font-family:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;min-height:100vh}.parent-guide-hero{background:linear-gradient(135deg,#60a5fa,#34d399);color:white;overflow:hidden;padding:120px 20px 80px;position:relative;text-align:center}.parent-guide-hero::before{background:url("data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 100 100\"><defs><pattern id=\"grain\" width=\"100\" height=\"100\" patternUnits=\"userSpaceOnUse\"><circle cx=\"25\" cy=\"25\" r=\"1\" fill=\"rgba%28255,255,255,0.1%29\"/><circle cx=\"75\" cy=\"75\" r=\"1\" fill=\"rgba%28255,255,255,0.1%29\"/><circle cx=\"50\" cy=\"10\" r=\"0.5\" fill=\"rgba%28255,255,255,0.05%29\"/><circle cx=\"10\" cy=\"60\" r=\"0.5\" fill=\"rgba%28255,255,255,0.05%29\"/><circle cx=\"90\" cy=\"40\" r=\"0.5\" fill=\"rgba%28255,255,255,0.05%29\"/></pattern></defs><rect width=\"100\" height=\"100\" fill=\"url%28%23grain%29\"/></svg>");bottom:0;content:'';left:0;opacity:0.3;position:absolute;right:0;top:0}.hero-content{max-width:1200px}.parent-guide-hero h1{animation:fadeInUp 0.8s ease-out;background:linear-gradient(135deg,#ffffff 0%,#f8f9fa 50%,#e9ecef 100%);-webkit-background-clip:text;font-size:3.5rem;font-weight:800;margin-bottom:1.5rem;text-shadow:0 4px 8px rgba(0,0,0,0.2);-webkit-text-fill-color:transparent;background-clip:text;display:inline-block;position:relative}.parent-guide-hero h1::before{animation:bounce 2s infinite;-webkit-background-clip:initial;content:'👨‍👩‍👧‍👦';font-size:3rem;left:-80px;position:absolute;top:50%;transform:translateY(-50%);-webkit-text-fill-color:initial;background-clip:border-box;background-clip:initial;background:none;filter:drop-shadow(0 2px 4px rgba(0,0,0,0.2));text-shadow:0 2px 4px rgba(0,0,0,0.2)}.parent-guide-hero h1::after{animation:sparkle 2s infinite;-webkit-background-clip:initial;content:'✨';font-size:3rem;position:absolute;right:-80px;top:50%;transform:translateY(-50%);-webkit-text-fill-color:initial;background-clip:border-box;background-clip:initial;background:none;filter:drop-shadow(0 2px 4px rgba(0,0,0,0.2));text-shadow:0 2px 4px rgba(0,0,0,0.2)}@keyframes bounce{0%, 20%, 50%, 80%, 100%{transform:translateY(-50%)}40%{transform:translateY(-60%)}60%{transform:translateY(-40%)}}@keyframes sparkle{0%, 100%{opacity:1;transform:translateY(-50%) scale(1)}50%{opacity:0.7;transform:translateY(-50%) scale(1.2)}}.parent-guide-hero p{animation:fadeInUp 0.8s ease-out 0.2s both;font-size:1.4rem;font-weight:500;margin-bottom:3rem;opacity:0.95}.hero-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:2rem;gap:2rem;max-width:800px}.feature-item{align-items:center;animation:fadeInUp 0.8s ease-out 0.4s both;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(255,255,255,0.15);border:1px solid rgba(255,255,255,0.2);border-radius:16px;display:flex;flex-direction:column;gap:0.75rem;padding:1.5rem;transition:all 0.3s ease}.feature-item:hover{background:rgba(255,255,255,0.25);box-shadow:0 8px 25px rgba(0,0,0,0.15);transform:translateY(-4px)}.feature-icon{filter:drop-shadow(0 2px 4px rgba(0,0,0,0.1));font-size:2.5rem}.feature-item span:last-child{font-size:1rem;font-weight:600;text-align:center}@media (max-width: 768px){.parent-guide-hero{padding:100px 20px 60px}.parent-guide-hero h1{font-size:2.5rem}.parent-guide-hero h1::before,
  .parent-guide-hero h1::after{display:none}.parent-guide-hero p{font-size:1.2rem}.hero-features{gap:1.5rem;grid-template-columns:repeat(2,1fr)}.feature-item{padding:1rem}.feature-icon{font-size:2rem}}@media (max-width: 480px){.parent-guide-hero h1{font-size:2rem}.parent-guide-hero p{font-size:1.1rem}.hero-features{gap:1rem;grid-template-columns:1fr;margin-top:10px}}.childcare-center-container{background:linear-gradient(135deg,#ff9a9e 0%,#fecfef 50%,#fecfef 100%);font-family:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif;min-height:100vh;position:relative}.childcare-center-container::before{background:url("data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 100 100\"><defs><pattern id=\"childcare-pattern\" width=\"40\" height=\"40\" patternUnits=\"userSpaceOnUse\"><circle cx=\"20\" cy=\"20\" r=\"2\" fill=\"rgba%28255,255,255,0.1%29\"/><circle cx=\"0\" cy=\"0\" r=\"1\" fill=\"rgba%28255,255,255,0.05%29\"/></pattern></defs><rect width=\"100\" height=\"100\" fill=\"url%28%23childcare-pattern%29\"/></svg>");bottom:0;content:'';left:0;opacity:0.3;pointer-events:none;position:absolute;right:0;top:0}.childcare-hero{background:linear-gradient(135deg,#ffecd2 0%,#fcb69f 100%);border-radius:0 0 50px 50px;box-shadow:0 10px 30px rgba(0,0,0,0.1);color:#2c3e50;margin-bottom:40px;overflow:hidden;padding:120px 20px 80px;position:relative;text-align:center}.childcare-hero::before{background:url("data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 100 100\"><defs><pattern id=\"childcare-hero-pattern\" width=\"60\" height=\"60\" patternUnits=\"userSpaceOnUse\"><circle cx=\"30\" cy=\"30\" r=\"3\" fill=\"rgba%28255,255,255,0.2%29\"/><circle cx=\"0\" cy=\"0\" r=\"1\" fill=\"rgba%28255,255,255,0.1%29\"/></pattern></defs><rect width=\"100\" height=\"100\" fill=\"url%28%23childcare-hero-pattern%29\"/></svg>");bottom:0;content:'';left:0;opacity:0.4;position:absolute;right:0;top:0}.hero-content{margin:0 auto;max-width:800px;z-index:1}.hero-title{align-items:center;background:linear-gradient(135deg,#667eea 0%,#764ba2 50%,#f093fb 100%);-webkit-background-clip:text;display:flex;font-size:3.5rem;font-weight:800;gap:1rem;justify-content:center;margin-bottom:1rem;-webkit-text-fill-color:transparent;animation:titleGlow 3s ease-in-out infinite alternate;background-clip:text;position:relative;text-shadow:0 4px 8px rgba(0,0,0,0.1)}.hero-title .hero-icon{-webkit-background-clip:initial;-webkit-text-fill-color:initial;animation:pulse 2s infinite;background-clip:border-box;background-clip:initial;background:none;filter:none}@keyframes titleGlow{0%{filter:drop-shadow(0 0 5px rgba(102,126,234,0.3))}100%{filter:drop-shadow(0 0 20px rgba(240,147,251,0.5))}}.hero-icon{animation:pulse 2s infinite;font-size:4rem}.hero-subtitle{font-size:1.5rem;font-weight:300;margin-bottom:1.5rem;opacity:0.9}.hero-description{font-size:1.1rem;line-height:1.6;margin:0 auto;max-width:600px;opacity:0.8}.section-header{margin-bottom:3rem}.section-header h2{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);-webkit-background-clip:text;color:#2c3e50;font-size:2.5rem;font-weight:800;margin-bottom:1rem;-webkit-text-fill-color:transparent;animation:slideInFromBottom 0.8s ease-out;background-clip:text;display:inline-block;position:relative}.section-header h2::before{animation:expandLine 1s ease-out 0.5s both;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:2px;bottom:-8px;content:'';height:4px;left:50%;position:absolute;transform:translateX(-50%);width:60px}@keyframes slideInFromBottom{0%{opacity:0;transform:translateY(30px)}100%{opacity:1;transform:translateY(0)}}@keyframes expandLine{0%{width:0}100%{width:60px}}.section-header p{color:#7f8c8d}.tests-section{background:white;padding:80px 20px}.tests-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-gap:2rem;gap:2rem;margin:0 auto;max-width:1200px}.test-card{background:white;border:2px solid transparent;border-radius:20px;box-shadow:0 10px 30px rgba(0,0,0,0.1);overflow:hidden;padding:2rem;position:relative;text-align:center;transition:all 0.3s ease}.test-card::before{background:linear-gradient(90deg,#ff9a9e,#fecfef);content:'';height:4px;left:0;position:absolute;right:0;top:0}.test-card:hover{border-color:#ff9a9e;box-shadow:0 20px 40px rgba(0,0,0,0.15);transform:translateY(-10px)}.test-card.coming-soon{background:#f8f9fa;opacity:0.7}.test-icon{display:block;font-size:4rem;margin-bottom:1.5rem}.test-card h3{color:#2c3e50;font-size:1.5rem;font-weight:600;margin-bottom:1rem}.test-card p{color:#7f8c8d;line-height:1.5;margin-bottom:1.5rem}.test-features{display:flex;flex-wrap:wrap;gap:0.5rem;justify-content:center;margin-bottom:2rem}.feature-tag{background:#e8f4fd;border-radius:20px;color:#2980b9;font-size:0.8rem;font-weight:500;padding:0.3rem 0.8rem}.btn-test-start{background:linear-gradient(135deg,#ff9a9e,#fecfef);border:none;border-radius:50px;box-shadow:0 4px 15px rgba(255,154,158,0.3);color:#2c3e50;cursor:pointer;font-size:1rem;font-weight:600;padding:1rem 2rem;transition:all 0.3s ease;width:100%}.btn-test-start:hover:not(.disabled){background:linear-gradient(135deg,#ff8a8a,#fdbcb4);box-shadow:0 10px 25px rgba(255,154,158,0.4);transform:translateY(-2px)}.btn-test-start.disabled{background:#bdc3c7;cursor:not-allowed}.mchat-modal .modal-content{background:linear-gradient(135deg,#ffecd2 0%,#fcb69f 100%);border-radius:20px;box-shadow:0 20px 60px rgba(0,0,0,0.2);display:flex;flex-direction:column;max-height:85vh;max-width:800px;overflow:hidden}.mchat-test-container{display:flex;flex:1 1;flex-direction:column;height:100%;min-height:0;overflow:hidden;padding:1.5rem}.test-progress{flex-shrink:0;margin-bottom:1.5rem;text-align:center}.progress-info{color:#2c3e50;font-size:1.1rem;font-weight:600;margin-bottom:1rem}.question-container{background:white;border-radius:16px;box-shadow:0 8px 24px rgba(0,0,0,0.1);display:flex;flex:1 1;flex-direction:column;justify-content:center;min-height:0;overflow:hidden;padding:1.5rem;text-align:center}.question-number{background:linear-gradient(135deg,#ff9a9e,#fecfef);color:#2c3e50}.question-text{align-items:center;display:flex;flex-shrink:0;font-size:1.2rem;justify-content:center;line-height:1.4;margin-bottom:1.2rem}.answer-options{flex-shrink:0;gap:1rem;margin-bottom:1rem}.answer-btn{font-size:1rem;min-width:140px;padding:1.2rem 2.5rem}.yes-btn:hover{box-shadow:0 5px 15px rgba(40,167,69,0.2);transform:translateY(-2px)}.no-btn:hover{box-shadow:0 5px 15px rgba(220,53,69,0.2);transform:translateY(-2px)}.results-modal .modal-content{background:linear-gradient(135deg,#ffecd2 0%,#fcb69f 100%);border-radius:20px;box-shadow:0 20px 60px rgba(0,0,0,0.2);max-height:90vh;max-width:900px;overflow-y:auto;-webkit-overflow-scrolling:touch;scroll-behavior:smooth}.results-container{padding:2rem}.risk-level-header{margin-bottom:2rem;text-align:center}.risk-level-badge{border-radius:25px;box-shadow:0 4px 15px rgba(0,0,0,0.2);color:white;display:inline-block;font-size:1.2rem;font-weight:600;margin-bottom:2rem;padding:1rem 2rem}.score-summary{background:white;border-radius:20px;box-shadow:0 10px 30px rgba(0,0,0,0.1);margin-bottom:2rem;padding:2rem;text-align:center}.score-display h3{color:#2c3e50;font-size:1.3rem;margin-bottom:1rem}.score-value{background:linear-gradient(135deg,#ff9a9e,#fecfef);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.score-display p{color:#7f8c8d;font-size:1.1rem}.results-content{background:white;border-radius:20px;box-shadow:0 10px 30px rgba(0,0,0,0.1);padding:2rem}.recommendations-section,
.next-steps-section{margin-bottom:2rem}.recommendations-section h3,
.next-steps-section h3{align-items:center;color:#2c3e50;display:flex;font-size:1.3rem;gap:0.5rem;margin-bottom:1.5rem}.recommendations-section h3::before{content:"💡";font-size:1.2rem}.next-steps-section h3::before{content:"📋";font-size:1.2rem}.recommendations-section ul,
.next-steps-section ol{list-style:none;padding:0}.recommendations-section li,
.next-steps-section li{background:#f8f9fa;border-left:4px solid #ff9a9e;border-radius:10px;box-shadow:0 2px 5px rgba(0,0,0,0.1);margin-bottom:0.5rem;padding:1rem;transition:all 0.3s ease;word-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;overflow-wrap:break-word}.recommendations-section li:hover,
.next-steps-section li:hover{box-shadow:0 4px 10px rgba(0,0,0,0.15);transform:translateX(5px)}.next-steps-section ol{counter-reset:step-counter}.next-steps-section li{counter-increment:step-counter;padding-left:3rem;position:relative}.next-steps-section li::before{align-items:center;background:linear-gradient(135deg,#ff9a9e,#fecfef);border-radius:50%;color:#2c3e50;content:counter(step-counter);display:flex;font-size:0.9rem;font-weight:600;height:25px;justify-content:center;left:1rem;position:absolute;top:50%;transform:translateY(-50%);width:25px}.important-notice{margin-bottom:2rem}.important-notice h4{align-items:center;display:flex;gap:0.5rem}.important-notice h4::before{content:"⚠️";font-size:1.2rem}.results-actions{margin-top:2rem}.btn-primary{background:linear-gradient(135deg,#ff9a9e,#fecfef);box-shadow:0 4px 15px rgba(255,154,158,0.3);color:#2c3e50}.btn-primary:hover{background:linear-gradient(135deg,#ff8a8a,#fdbcb4);box-shadow:0 10px 25px rgba(255,154,158,0.4)}.btn-secondary{padding:1rem 2rem}.btn-secondary:hover{box-shadow:0 5px 15px rgba(0,0,0,0.2)}.test-header{margin-bottom:3rem;text-align:center}.test-header h2{color:#2c3e50;font-size:2rem;margin-bottom:1rem}.progress-bar{background:#e9ecef;border-radius:4px;height:8px;margin:0 auto;max-width:500px;overflow:hidden;width:100%}.progress-fill{background:linear-gradient(90deg,#ff9a9e,#fecfef);height:100%;transition:width 0.3s ease}.question-card{background:white;border-radius:20px;box-shadow:0 10px 30px rgba(0,0,0,0.1);margin:0 auto;max-width:800px;padding:3rem;text-align:center}.question-number{background:#667eea;border-radius:20px;color:white;display:inline-block;font-size:0.9rem;font-weight:600;margin-bottom:2rem;padding:0.5rem 1rem}.question-text{color:#2c3e50;font-size:1.5rem;font-weight:500;line-height:1.5;margin-bottom:2rem}.critical-indicator{background:#fff3cd;border-left:4px solid #ffc107;border-radius:10px;color:#856404;font-weight:500;margin-bottom:2rem;padding:1rem}.answer-options{display:flex;flex-wrap:wrap;gap:2rem;justify-content:center;margin-bottom:3rem}.answer-btn{align-items:center;background:white;border:2px solid #e9ecef;border-radius:15px;cursor:pointer;display:flex;font-size:1.1rem;font-weight:600;gap:0.5rem;justify-content:center;min-width:150px;padding:1.5rem 3rem;transition:all 0.3s ease}.yes-btn:hover{background:#d4edda;border-color:#28a745;color:#155724}.no-btn:hover{background:#f8d7da;border-color:#dc3545;color:#721c24}.test-navigation{display:flex;justify-content:center}.btn-secondary{background:#6c757d;border:none;border-radius:25px;color:white;cursor:pointer;font-size:1rem;font-weight:500;padding:0.8rem 2rem;transition:all 0.3s ease}.btn-secondary:hover{background:#5a6268;transform:translateY(-2px)}.results-section{background:white;padding:80px 20px}.results-header{margin-bottom:3rem;text-align:center}.results-header h2{color:#2c3e50;font-size:2.5rem;margin-bottom:2rem}.risk-level{border-radius:25px;color:white;display:inline-block;font-size:1.2rem;font-weight:600;margin-bottom:2rem;padding:1rem 2rem}.results-content{margin:0 auto;max-width:1000px}.score-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;color:white;margin-bottom:3rem;padding:3rem;text-align:center}.score-card h3{font-size:1.5rem;margin-bottom:1rem}.score-value{font-size:4rem;font-weight:700;margin-bottom:0.5rem}.score-card p{font-size:1.2rem;opacity:0.9}.recommendations,
.next-steps{background:#f8f9fa;border-radius:15px;margin-bottom:2rem;padding:2rem}.recommendations h3,
.next-steps h3{color:#2c3e50;font-size:1.3rem;margin-bottom:1.5rem}.recommendations ul,
.next-steps ol{list-style:none;padding:0}.recommendations li,
.next-steps li{background:white;border-left:4px solid #667eea;border-radius:10px;box-shadow:0 2px 5px rgba(0,0,0,0.1);margin-bottom:0.5rem;padding:1rem}.next-steps ol{counter-reset:step-counter}.next-steps li{counter-increment:step-counter;padding-left:3rem;position:relative}.next-steps li::before{align-items:center;background:#667eea;border-radius:50%;color:white;content:counter(step-counter);display:flex;font-size:0.9rem;font-weight:600;height:25px;justify-content:center;left:1rem;position:absolute;top:50%;transform:translateY(-50%);width:25px}.important-notice{background:#fff3cd;border:1px solid #ffeaa7;border-radius:15px;margin-bottom:3rem;padding:2rem}.important-notice h4{color:#856404;font-size:1.2rem;margin-bottom:1rem}.important-notice p{color:#856404;line-height:1.6;margin:0}.results-actions{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:25px;color:white;cursor:pointer;font-size:1rem;font-weight:600;padding:1rem 2rem;transition:all 0.3s ease}.btn-primary:hover{box-shadow:0 10px 20px rgba(102,126,234,0.3);transform:translateY(-2px)}.childcare-center-container .childcare-footer{background:linear-gradient(135deg,#ff9a9e 0%,#fecfef 100%);border-radius:50px 50px 0 0;color:#2c3e50;padding:3rem 20px 1rem}.childcare-center-container .footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));grid-gap:2rem;gap:2rem;margin:0 auto;max-width:1000px}.childcare-center-container .footer-section h3,
.childcare-center-container .footer-section h4{color:#2c3e50;margin-bottom:1rem}.childcare-center-container .footer-section p{color:#34495e;line-height:1.6;margin-bottom:0.5rem}.childcare-center-container .footer-section ul{list-style:none;padding:0}.childcare-center-container .footer-section li{margin-bottom:0.5rem}.childcare-center-container .footer-section button,
.childcare-center-container .footer-section a{background:none;border:none;color:#34495e;cursor:pointer;font-size:1rem;text-decoration:none;transition:color 0.3s ease}.childcare-center-container .footer-section button:hover,
.childcare-center-container .footer-section a:hover{color:#2c3e50;font-weight:600}.childcare-center-container .footer-bottom{border-top:1px solid rgba(44,62,80,0.2);color:#34495e;margin-top:2rem;padding-top:2rem;text-align:center}.childcare-center-container .footer-bottom p{color:#5a6c7d;margin:5px 0}@keyframes pulse{0%, 100%{transform:scale(1)}50%{transform:scale(1.1)}}@media (max-width: 768px){.hero-title{flex-direction:column;font-size:2.5rem;gap:0.5rem}.hero-title::before,
  .hero-title::after{display:none}.hero-icon{font-size:3rem}.hero-subtitle{font-size:1.2rem}.tests-grid{grid-template-columns:1fr}.answer-options{align-items:center;flex-direction:column}.answer-btn{max-width:300px;width:100%}.question-card{padding:2rem 1rem}.question-text{font-size:1.2rem}.results-actions{align-items:center;flex-direction:column}.btn-primary,
  .btn-secondary{max-width:300px;width:100%}.important-notice{border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,0.1);margin:1.5rem 0;padding:1.5rem}.important-notice h4{font-size:1.1rem;line-height:1.4;margin-bottom:0.8rem}.important-notice p{font-size:0.95rem;line-height:1.5}}@media (max-width: 480px){.childcare-hero{padding:100px 15px 60px}.hero-title{font-size:2rem}.hero-title::before,
  .hero-title::after{display:none}.section-header h2{font-size:2rem}.test-card{padding:1.5rem}.question-card{padding:1.5rem 1rem}.important-notice{border-radius:10px;box-shadow:0 2px 8px rgba(0,0,0,0.1);margin:1rem 0;padding:1.2rem}.important-notice h4{font-size:1rem;line-height:1.3;margin-bottom:0.6rem}.important-notice p{line-height:1.4}.results-modal .modal-content{border-radius:15px;margin:0.5rem;max-height:95vh;max-width:98vw}.results-container{padding:1.5rem}.risk-level-header{margin-bottom:1.5rem}.risk-level-badge{border-radius:20px;font-size:1.1rem;margin-bottom:1.5rem;padding:0.8rem 1.5rem}.score-summary{border-radius:15px;margin-bottom:1.5rem;padding:1.5rem}.score-display h3{font-size:1.2rem;margin-bottom:0.8rem}.score-value{font-size:3rem;margin-bottom:0.5rem}.score-display p{font-size:1rem}.results-content{border-radius:15px;padding:1.5rem}.recommendations-section,
  .next-steps-section{margin-bottom:1.5rem}.recommendations-section h3,
  .next-steps-section h3{align-items:flex-start;flex-direction:column;font-size:1.2rem;gap:0.3rem;margin-bottom:1rem}.recommendations-section li,
  .next-steps-section li{border-radius:8px;font-size:0.9rem;line-height:1.4;margin-bottom:0.4rem;padding:0.8rem}.next-steps-section li{padding-left:2.5rem}.next-steps-section li::before{font-size:0.8rem;height:20px;left:0.8rem;width:20px}.important-notice{border-radius:12px;margin-bottom:1.5rem;padding:1.5rem}.important-notice h4{align-items:flex-start;flex-direction:column;font-size:1.1rem;gap:0.3rem;margin-bottom:0.8rem}.important-notice h4::before{font-size:1.1rem}.important-notice p{font-size:0.9rem;line-height:1.5}.results-actions{align-items:center;flex-direction:column;gap:0.8rem;margin-top:1.5rem}.btn-primary,
  .btn-secondary{border-radius:20px;font-size:0.9rem;max-width:280px;padding:0.8rem 1.5rem;width:100%}}@media (max-width: 768px){.mchat-modal .modal-content{margin:1rem;max-height:90vh;max-width:95vw}.mchat-test-container{padding:1.5rem}.question-container{padding:1.5rem}.question-text{font-size:1.1rem;margin-bottom:1rem}.answer-btn{font-size:0.9rem;min-width:120px;padding:1rem 2rem}.answer-options{gap:1rem}}@media (max-width: 480px){.mchat-modal .modal-content{margin:0.5rem;max-height:95vh;max-width:98vw}.mchat-test-container{padding:1rem}.question-container{padding:1rem}.question-text{font-size:1rem}.answer-btn{font-size:0.85rem;min-width:100px;padding:0.8rem 1.5rem}.results-modal .modal-content{border-radius:12px;margin:0.25rem;max-height:98vh;max-width:99vw}.results-container{padding:1rem}.risk-level-header{margin-bottom:1rem}.risk-level-badge{border-radius:15px;font-size:1rem;margin-bottom:1rem;padding:0.6rem 1.2rem}.score-summary{border-radius:12px;margin-bottom:1rem;padding:1rem}.score-display h3{font-size:1.1rem;margin-bottom:0.6rem}.score-value{font-size:2.5rem;margin-bottom:0.4rem}.score-display p{font-size:0.9rem}.results-content{border-radius:12px;padding:1rem}.recommendations-section,
  .next-steps-section{margin-bottom:1rem}.recommendations-section h3,
  .next-steps-section h3{font-size:1.1rem;margin-bottom:0.8rem}.recommendations-section li,
  .next-steps-section li{border-radius:6px;font-size:0.85rem;line-height:1.3;margin-bottom:0.3rem;padding:0.6rem}.next-steps-section li{padding-left:2rem}.next-steps-section li::before{font-size:0.75rem;height:18px;left:0.6rem;width:18px}.important-notice{border-radius:10px;margin-bottom:1rem;padding:1rem}.important-notice h4{font-size:1rem;margin-bottom:0.6rem}.important-notice h4::before{font-size:1rem}.important-notice p{font-size:0.85rem;line-height:1.4}.results-actions{gap:0.6rem;margin-top:1rem}.btn-primary,
  .btn-secondary{border-radius:18px;font-size:0.85rem;max-width:250px;padding:0.7rem 1.2rem}}.speech-language-test-container{display:flex;flex:1 1;flex-direction:column;height:100%;min-height:0;overflow:hidden;padding:1.5rem}.speech-language-modal .test-progress{flex-shrink:0;margin-bottom:1rem}.speech-language-modal .question-container{display:flex;flex:1 1;flex-direction:column;justify-content:center;min-height:0;overflow:hidden;padding:1.2rem}.speech-language-modal .answer-options{display:grid;grid-template-columns:1fr 1fr;grid-gap:0.8rem;flex-shrink:0;gap:0.8rem;margin-bottom:0.5rem;margin-top:1rem}.speech-language-modal .answer-btn{align-items:center;border-radius:12px;display:flex;flex-direction:column;font-size:0.9rem;gap:0.3rem;justify-content:center;min-height:60px;padding:0.8rem}.social-skills-test-container{display:flex;flex:1 1;flex-direction:column;height:100%;min-height:0;overflow:hidden;padding:1.5rem}.social-skills-modal .test-progress{flex-shrink:0;margin-bottom:1rem}.social-skills-modal .question-container{display:flex;flex:1 1;flex-direction:column;justify-content:center;min-height:0;overflow:hidden;padding:1.2rem}.social-skills-modal .answer-options{display:grid;grid-template-columns:1fr 1fr;grid-gap:0.8rem;flex-shrink:0;gap:0.8rem;margin-bottom:0.5rem;margin-top:1rem}.social-skills-modal .answer-btn{align-items:center;border-radius:12px;display:flex;flex-direction:column;font-size:0.9rem;gap:0.3rem;justify-content:center;min-height:60px;padding:0.8rem}.motor-skills-test-container{max-height:75vh;overflow-y:auto;padding:1rem}.motor-skills-modal .test-progress{margin-bottom:0.8rem}.motor-skills-modal .progress-bar{height:6px;margin-top:0.3rem}.category-indicator{background:linear-gradient(135deg,#ff9a9e 0%,#fecfef 100%);border:1px solid rgba(142,68,173,0.2);border-radius:12px;color:#8e44ad;font-size:0.75rem;font-weight:600;margin:0.5rem 0;padding:0.3rem 0.6rem;text-align:center}.motor-skills-modal .answer-options{display:grid;grid-template-columns:1fr 1fr;grid-gap:0.8rem;gap:0.8rem;margin-bottom:0.5rem;margin-top:1rem}.motor-skills-modal .answer-btn{align-items:center;border:1px solid transparent;border-radius:10px;display:flex;flex-direction:column;font-size:0.8rem;font-weight:600;gap:0.3rem;min-height:60px;padding:0.6rem;transition:all 0.3s ease}.motor-skills-modal .excellent-btn{background:linear-gradient(135deg,#4CAF50 0%,#8BC34A 100%);border-color:#2E7D32;color:white}.motor-skills-modal .excellent-btn:hover{box-shadow:0 4px 12px rgba(76,175,80,0.3);transform:translateY(-2px)}.motor-skills-modal .good-btn{background:linear-gradient(135deg,#2196F3 0%,#03A9F4 100%);border-color:#1976D2;color:white}.motor-skills-modal .good-btn:hover{box-shadow:0 4px 12px rgba(33,150,243,0.3);transform:translateY(-2px)}.motor-skills-modal .fair-btn{background:linear-gradient(135deg,#FF9800 0%,#FFC107 100%);border-color:#F57C00;color:white}.motor-skills-modal .fair-btn:hover{box-shadow:0 4px 12px rgba(255,152,0,0.3);transform:translateY(-2px)}.motor-skills-modal .poor-btn{background:linear-gradient(135deg,#F44336 0%,#E91E63 100%);border-color:#D32F2F;color:white}.motor-skills-modal .poor-btn:hover{box-shadow:0 4px 12px rgba(244,67,54,0.3);transform:translateY(-2px)}.motor-skills-modal .btn-icon{font-size:1.2rem}.motor-skills-modal .question-text{font-size:1rem;line-height:1.4;margin-bottom:0.8rem}.motor-skills-modal .question-number{font-size:0.85rem;margin-bottom:0.5rem}@media (max-width: 768px){.motor-skills-modal .answer-options{gap:0.6rem;grid-template-columns:1fr}.motor-skills-modal .answer-btn{font-size:0.75rem;min-height:55px;padding:0.5rem}.category-indicator{font-size:0.7rem;padding:0.3rem 0.6rem}.motor-skills-modal .question-text{font-size:0.9rem;line-height:1.3}.speech-language-modal .answer-options{gap:0.6rem;grid-template-columns:1fr}.speech-language-modal .answer-btn{font-size:0.8rem;min-height:50px;padding:0.6rem}.speech-language-modal .question-text{font-size:1rem;line-height:1.3}.social-skills-modal .answer-options{gap:0.6rem;grid-template-columns:1fr}.social-skills-modal .answer-btn{font-size:0.8rem;min-height:50px;padding:0.6rem}.social-skills-modal .question-text{font-size:1rem;line-height:1.3}}@media (max-width: 480px){.motor-skills-test-container{padding:0.8rem}.motor-skills-modal .answer-btn{font-size:0.7rem;min-height:50px;padding:0.4rem}.motor-skills-modal .btn-icon{font-size:1rem}.motor-skills-modal .question-text{font-size:0.85rem;line-height:1.2}.speech-language-test-container{padding:1rem}.speech-language-modal .answer-btn{font-size:0.75rem;min-height:45px;padding:0.5rem}.speech-language-modal .question-text{font-size:0.9rem;line-height:1.2}.social-skills-test-container{padding:1rem}.social-skills-modal .answer-btn{font-size:0.75rem;min-height:45px;padding:0.5rem}.social-skills-modal .question-text{font-size:0.9rem;line-height:1.2}}html{scroll-behavior:smooth;scroll-padding-top:0}body{scroll-behavior:smooth;scroll-padding-top:0;-webkit-overflow-scrolling:touch;overflow-x:hidden;overflow-y:auto}@media (max-width: 768px){body{overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;position:relative}html{overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch}.home-container{overflow-x:hidden;overflow-y:visible;-webkit-overflow-scrolling:touch}}.home-container{background:var(--gradient-warm);font-family:var(--font-primary);min-height:100vh;overflow-x:hidden;position:relative;-webkit-overflow-scrolling:touch;scroll-behavior:smooth}.floating-bubbles{height:100%;left:0;pointer-events:none;position:fixed;top:0;width:100%;z-index:1}.bubble{animation:float-up 20s linear infinite;background:radial-gradient(circle,rgba(255,255,255,0.8) 0%,rgba(255,255,255,0.3) 70%);border-radius:50%;height:20px;opacity:0.6;position:absolute;width:20px}@keyframes float-up{0%{opacity:0;transform:translateY(100vh) scale(0)}10%{opacity:0.6}90%{opacity:0.6}100%{opacity:0;transform:translateY(-100px) scale(1)}}.hero-section{align-items:center;background:linear-gradient(135deg,rgba(234,88,12,0.15) 0%,rgba(249,115,22,0.12) 25%,rgba(245,158,11,0.1) 50%,rgba(251,191,36,0.08) 75%,rgba(253,224,71,0.06) 100%);box-sizing:border-box;display:flex;justify-content:center;min-height:100vh;overflow-x:hidden;padding:var(--space-8);padding-top:140px;position:relative;scroll-margin-top:0;text-align:center;z-index:2}.hero-content{align-items:center;box-sizing:border-box;display:flex;flex-direction:column;max-width:100%;overflow-x:visible;padding:0 var(--space-6);position:relative;text-align:center;width:100%;z-index:2}.hero-badge{align-items:center;animation:slideInDown 1s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid rgba(255,255,255,0.2);border-radius:var(--radius-full);box-shadow:var(--playful-shadow);color:white;display:flex;font-size:var(--font-size-sm);font-weight:600;justify-content:center;margin:0 auto var(--space-6) auto;min-width:120px;padding:var(--space-2) var(--space-4);width:-webkit-fit-content;width:fit-content}.hero-branding{align-items:center;animation:fadeInUp 1s ease-out 0.2s both;display:flex;flex-direction:column;margin-bottom:var(--space-8)}.hero-school-name{background:linear-gradient(135deg,#991b1b 0%,#c2410c 15%,#d97706 30%,#ea580c 45%,#dc2626 60%,#be185d 75%,#7c3aed 100%);-webkit-background-clip:text;font-family:'Fredoka One','Comic Sans MS',cursive,sans-serif;font-size:90px;font-weight:400;-webkit-text-fill-color:transparent;background-clip:text;margin:0 0 10px;text-shadow:0 0 10px rgba(220,38,38,0.15);word-wrap:break-word;box-sizing:border-box;line-height:1.2;overflow-wrap:break-word;padding:0 var(--space-2);padding-bottom:10px;padding-top:10px;text-align:center;white-space:nowrap}.animated-title{display:inline-block;position:relative;z-index:10}.jumping-char{animation:jumpIn 0.8s ease-out forwards;background:linear-gradient(135deg,#991b1b 0%,#c2410c 15%,#d97706 30%,#ea580c 45%,#dc2626 60%,#be185d 75%,#7c3aed 100%);-webkit-background-clip:text;display:inline-block;font-family:'Fredoka One','Comic Sans MS',cursive,sans-serif;font-size:90px;font-weight:400;opacity:0;position:relative;transform:translateY(-50px) scale(0.5);z-index:10;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.2;text-shadow:0 0 20px rgba(153,27,27,0.4)}@keyframes jumpIn{0%{opacity:0;transform:translateY(-50px) scale(0.5) rotate(-3deg)}50%{opacity:1;transform:translateY(10px) scale(1.1) rotate(2deg)}100%{opacity:1;transform:translateY(0) scale(1) rotate(0deg)}}.hero-school-subtitle{color:#1e40af;font-family:'Fredoka One','Comic Sans MS',cursive,sans-serif;font-size:var(--font-size-2xl);font-weight:400;margin:0 0 30px;text-shadow:2px 2px 4px rgba(30,64,175,0.3)}.hero-description{animation:fadeInUp 1s ease-out 0.4s both;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(255,255,255,0.8);border:1px solid rgba(255,255,255,0.4);border-radius:16px;box-shadow:0 4px 6px rgba(0,0,0,0.1);color:#374151;font-family:var(--font-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);line-height:var(--line-height-relaxed);margin-bottom:var(--space-8);margin-left:auto;margin-right:auto;max-width:500px;padding:16px 20px}.hero-features{animation:fadeInUp 1s ease-out 0.6s both;display:flex;flex-wrap:wrap;gap:var(--space-4);justify-content:center;margin-bottom:var(--space-16);margin-top:30px}.feature-tag{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(255,255,255,0.95);border:1px solid rgba(255,255,255,0.3);border-radius:var(--radius-full);box-shadow:var(--playful-shadow);color:var(--text-primary);display:flex;font-size:var(--font-size-sm);font-weight:600;gap:var(--space-2);padding:var(--space-3) var(--space-4);transition:all var(--transition-normal)}.feature-tag:hover{box-shadow:var(--playful-shadow-hover);transform:translateY(-2px)}.tag-icon{font-size:1.1rem}.cta-buttons{animation:fadeInUp 1s ease-out 0.8s both;display:flex;flex-wrap:wrap;gap:var(--space-6);justify-content:center}.btn-hero{font-weight:var(--font-weight-semibold);min-width:180px}.btn-hero.btn-lg{min-width:200px}.btn-icon{font-size:1.3rem}.floating-elements{position:relative}.floating-item{animation:float 4s ease-in-out infinite;font-size:3rem;opacity:0.8;position:absolute}.floating-item:nth-child(1){right:0;top:-50px}.floating-item:nth-child(2){right:100px;top:50px}.floating-item:nth-child(3){right:50px;top:150px}.floating-item:nth-child(4){right:150px;top:100px}@keyframes float{0%, 100%{transform:translateY(0px)}50%{transform:translateY(-8px)}}@keyframes pulseGlow{0%, 100%{opacity:0.3;transform:translate(-50%,-50%) scale(1)}50%{opacity:0.6;transform:translate(-50%,-50%) scale(1.2)}}@keyframes slideInFromLeft{0%{opacity:0;transform:translateX(-100px)}100%{opacity:1;transform:translateX(0)}}@keyframes slideInFromRight{0%{opacity:0;transform:translateX(100px)}100%{opacity:1;transform:translateX(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(0.8)}100%{opacity:1;transform:scale(1)}}@keyframes titleGlow{0%{filter:drop-shadow(0 0 5px rgba(245,158,11,0.3))}100%{filter:drop-shadow(0 0 15px rgba(139,92,246,0.6))}}@keyframes backgroundFloat{0%{transform:translateY(0) translateX(0)}25%{transform:translateY(-10px) translateX(5px)}50%{transform:translateY(-5px) translateX(-5px)}75%{transform:translateY(-15px) translateX(3px)}100%{transform:translateY(0) translateX(0)}}.section-header{margin-bottom:60px;overflow:hidden;position:relative;text-align:center}.section-header::before{animation:pulseGlow 4s ease-in-out infinite;background:radial-gradient(circle,rgba(255,193,7,0.1) 0%,transparent 70%);border-radius:50%;content:'';height:200px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:200px;z-index:-1}.section-header::after{animation:float 6s ease-in-out infinite;background:linear-gradient(45deg,rgba(255,193,7,0.1),rgba(245,158,11,0.1));border-radius:50%;content:'';height:100px;position:absolute;right:10%;top:20%;width:100px;z-index:-1}.section-title{background:linear-gradient(135deg,#f59e0b 0%,#f97316 25%,#ef4444 50%,#ec4899 75%,#8b5cf6 100%);-webkit-background-clip:text;font-size:2rem;font-weight:700;-webkit-text-fill-color:transparent;align-items:center;animation:titleGlow 3s ease-in-out infinite alternate;background-clip:text;display:flex;gap:12px;justify-content:center;margin:0;padding:4px 8px;position:relative;width:-webkit-fit-content;width:fit-content}.section-title::before{animation:titleGlow 3s ease-in-out infinite alternate;background:linear-gradient(135deg,#f59e0b 0%,#f97316 25%,#ef4444 50%,#ec4899 75%,#8b5cf6 100%);border-radius:10px;bottom:-5px;content:'';left:-5px;opacity:0.1;position:absolute;right:-5px;top:-5px;z-index:-1}.title-icon{animation:bounce 2s infinite;font-size:2.2rem}.section-header p{color:#666;font-size:1.2rem;line-height:1.6;margin:0 auto;max-width:600px}.games-section{background:linear-gradient(135deg,#fff8e1 0%,#fff3e0 100%);margin-top:40px;overflow:hidden;padding:80px 20px;position:relative;z-index:10}.games-section::before{animation:backgroundFloat 20s linear infinite;background:url("data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 100 100\"><circle cx=\"20\" cy=\"20\" r=\"2\" fill=\"%23f59e0b\" opacity=\"0.1\"/><circle cx=\"80\" cy=\"40\" r=\"1.5\" fill=\"%23f97316\" opacity=\"0.1\"/><circle cx=\"40\" cy=\"80\" r=\"1\" fill=\"%23ef4444\" opacity=\"0.1\"/><circle cx=\"90\" cy=\"90\" r=\"2.5\" fill=\"%23ec4899\" opacity=\"0.1\"/><circle cx=\"10\" cy=\"60\" r=\"1.8\" fill=\"%238b5cf6\" opacity=\"0.1\"/></svg>") repeat;bottom:0;content:'';left:0;position:absolute;right:0;top:0;z-index:0}.games-section > *{position:relative;z-index:1}.games-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));grid-gap:30px;gap:30px;margin:0 auto;max-width:1200px}.game-card{animation:slideInFromLeft 0.6s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--bg-primary);border:2px solid transparent;border-radius:var(--radius-2xl);box-shadow:var(--playful-shadow);height:auto;min-height:200px;overflow:hidden;padding:var(--space-8);position:relative;transition:all 0.4s cubic-bezier(0.4,0,0.2,1)}.game-card::before{background:linear-gradient(90deg,transparent,rgba(255,255,255,0.4),transparent);content:'';height:100%;left:-100%;position:absolute;top:0;transition:left 0.5s;width:100%}.game-card:hover::before{left:100%}.game-card:hover{border-color:var(--primary-yellow);box-shadow:var(--playful-shadow-hover);transform:translateY(-5px)}.game-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--space-4)}.game-header h3{color:var(--text-primary);font-size:var(--font-size-2xl);font-weight:700;margin:0}.game-score{background:var(--gradient-success);border-radius:var(--radius-full);box-shadow:var(--playful-shadow);color:white;font-size:var(--font-size-sm);font-weight:600;padding:var(--space-2) var(--space-3)}.game-start{text-align:center}.game-start p{color:var(--text-secondary);font-size:var(--font-size-lg);margin-bottom:var(--space-4)}.btn-game-start{background:var(--gradient-primary);border:none;border-radius:var(--radius-full);box-shadow:var(--playful-shadow);color:white;cursor:pointer;font-size:var(--font-size-lg);font-weight:600;padding:var(--space-4) var(--space-8);transition:all var(--transition-normal)}.btn-game-start:hover{box-shadow:var(--playful-shadow-hover);transform:translateY(-2px)}.game-play{text-align:center}.game-instruction{margin-bottom:25px}.game-instruction p{color:#666;font-size:1.1rem;margin-bottom:15px}.target-shape{animation:pulse 2s infinite;font-size:4rem;margin:20px 0}.shape-options{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:var(--space-4);gap:var(--space-4);margin-bottom:var(--space-6)}.shape-option{background:var(--bg-primary);border:3px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--playful-shadow);cursor:pointer;font-size:var(--font-size-4xl);padding:var(--space-4);transition:all var(--transition-normal)}.shape-option:hover{border-color:var(--primary-yellow);box-shadow:var(--playful-shadow-hover);transform:scale(1.05)}.btn-game-reset{background:var(--error);border:none;border-radius:var(--radius-full);box-shadow:var(--playful-shadow);color:white;cursor:pointer;font-size:var(--font-size-base);font-weight:600;padding:var(--space-3) var(--space-4);transition:all var(--transition-normal)}.btn-game-reset:hover{background:var(--error-dark);box-shadow:var(--playful-shadow-hover);transform:translateY(-2px)}.letter-options{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:var(--space-3);gap:var(--space-3);margin-bottom:var(--space-6)}.letter-option{background:var(--bg-primary);border:3px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--playful-shadow);color:var(--text-primary);cursor:pointer;font-size:var(--font-size-2xl);font-weight:bold;padding:var(--space-4);transition:all var(--transition-normal)}.letter-option:hover{background:var(--primary-yellow-light);border-color:var(--primary-yellow);box-shadow:var(--playful-shadow-hover);transform:scale(1.05)}.found-letters{background:var(--success-light);border:2px solid var(--success);border-radius:var(--radius-lg);margin-top:var(--space-3);padding:var(--space-3)}.found-letters p{color:var(--success-dark);font-weight:600;margin:0}.objects-display{background:var(--bg-secondary);border:2px solid var(--border-light);border-radius:var(--radius-lg);display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:center;margin:var(--space-4) 0;padding:var(--space-4)}.object-item{animation:bounce 1s infinite;background:var(--bg-primary);border-radius:var(--radius-md);box-shadow:var(--playful-shadow);font-size:var(--font-size-2xl);padding:var(--space-2)}.object-item:nth-child(odd){animation-delay:0.2s}.object-item:nth-child(even){animation-delay:0.4s}.number-options{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:var(--space-4);gap:var(--space-4);margin-bottom:var(--space-6)}.number-option{background:var(--bg-primary);border:3px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--playful-shadow);color:var(--text-primary);cursor:pointer;font-size:var(--font-size-3xl);font-weight:bold;padding:var(--space-4);transition:all var(--transition-normal)}.number-option:hover{background:var(--primary-yellow-light);border-color:var(--primary-yellow);box-shadow:var(--playful-shadow-hover);transform:scale(1.05)}.coming-soon{opacity:0.7}.coming-soon-badge{background:#9e9e9e;border-radius:15px;color:white;font-size:0.8rem;font-weight:600;padding:4px 12px}.events-banner{background:linear-gradient(135deg,#e3f2fd 0%,#bbdefb 100%);border-radius:15px;box-shadow:0 8px 25px rgba(0,0,0,0.08);margin:40px 0;padding:40px 20px;position:relative;z-index:2}.banner-header{align-items:center;display:flex;justify-content:center;margin-bottom:25px;margin-left:auto;margin-right:auto;max-width:1200px;position:relative;text-align:center}.banner-header h2{align-items:center;color:#1976d2;display:flex;font-size:2rem;font-weight:700;gap:12px;margin:0;padding:4px 8px}.banner-icon{font-size:2.2rem}.banner-controls{align-items:center;display:flex;gap:15px;position:absolute;right:0;top:0}.banner-nav{background:white;border:2px solid #1976d2;border-radius:50%;color:#1976d2;cursor:pointer;font-size:1.2rem;font-weight:bold;height:40px;transition:all 0.3s ease;width:40px}.banner-nav:hover{background:#1976d2;color:white;transform:scale(1.1)}.banner-indicator{background:white;border-radius:20px;color:#1976d2;font-size:0.9rem;font-weight:600;padding:8px 16px}.banner-content{margin:0 auto;max-width:1200px;position:relative}.events-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:20px;gap:20px;margin-top:15px}.event-card{background:white;border:2px solid #e3f2fd;border-radius:15px;box-shadow:0 8px 20px rgba(0,0,0,0.08);overflow:hidden;padding:25px;position:relative;text-align:left;transition:all 0.3s ease}.event-card::before{background:linear-gradient(90deg,#1976d2,#42a5f5);content:'';height:4px;left:0;position:absolute;right:0;top:0}.event-card:hover{border-color:#1976d2;box-shadow:0 20px 40px rgba(0,0,0,0.15);transform:translateY(-5px)}.event-card-header{align-items:flex-start;display:flex;gap:15px;justify-content:space-between;margin-bottom:20px}.event-card h3{color:#1976d2;flex:1 1;font-size:1.8rem;font-weight:700;line-height:1.3;margin:0}.event-status{border-radius:15px;flex-shrink:0;font-size:0.8rem;font-weight:600;padding:6px 12px;white-space:nowrap}.event-status.active{background:#e8f5e8;border:1px solid #c8e6c9;color:#2e7d32}.event-description{color:#666;display:-webkit-box;font-size:1.1rem;-webkit-line-clamp:3;line-height:1.6;margin-bottom:25px;-webkit-box-orient:vertical;overflow:hidden}.event-details{display:flex;flex-wrap:wrap;gap:15px;margin-top:20px}.event-detail{align-items:center;background:#f8f9fa;border:1px solid #e5e7eb;border-radius:10px;color:#666;display:flex;font-size:0.95rem;font-weight:500;gap:8px;padding:8px 12px}.detail-icon{font-size:1.1rem}.no-events-message{background:white;border:2px solid #e3f2fd;border-radius:20px;box-shadow:0 10px 30px rgba(0,0,0,0.1);padding:60px 20px;text-align:center}.no-events-icon{font-size:4rem;margin-bottom:20px;opacity:0.7}.no-events-message h3{color:#1976d2;font-size:1.8rem;font-weight:600;margin-bottom:15px}.no-events-message p{color:#666;font-size:1.1rem;line-height:1.6;margin:0}.about-school-section{background:linear-gradient(135deg,#f8f9fa 0%,#e9ecef 100%);padding:80px 20px;position:relative;z-index:2}.about-content{display:grid;grid-template-columns:1fr 1fr;margin:0 auto;max-width:1200px;grid-gap:60px;align-items:center;gap:60px}.about-image{border-radius:25px;box-shadow:0 20px 40px rgba(0,0,0,0.15);overflow:hidden;position:relative;transition:transform 0.3s ease}.about-image:hover{transform:scale(1.02)}.about-image img{display:block;height:400px;object-fit:cover;width:100%}.about-carousel{border-radius:25px;box-shadow:0 20px 40px rgba(0,0,0,0.15);height:400px;min-height:400px;overflow:hidden;width:100%}.image-overlay{background:linear-gradient(transparent,rgba(0,0,0,0.8));bottom:0;color:white;left:0;padding:30px;position:absolute;right:0;text-align:center}.overlay-content h3{color:white;font-size:1.8rem;font-weight:700;margin-bottom:10px}.overlay-content p{font-size:1.1rem;margin:0;opacity:0.9}.about-text{padding:20px}.about-highlight{align-items:center;display:flex;gap:15px;margin-bottom:25px}.highlight-icon{animation:pulse 2s infinite;font-size:2rem}.about-highlight h3{color:#333;font-size:2rem;font-weight:700;margin:0}.about-text p{color:#666;font-size:1.2rem;line-height:1.7;margin-bottom:30px}.about-stats{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:2rem;gap:2rem;margin-bottom:2.5rem}.stat-item{background:linear-gradient(135deg,#ffffff 0%,#f8fafc 100%);border:1px solid rgba(255,255,255,0.8);box-shadow:0 8px 25px rgba(0,0,0,0.08),0 4px 15px rgba(102,126,234,0.1);min-width:0;overflow:visible;padding:2rem;position:relative;transition:all 0.4s cubic-bezier(0.175,0.885,0.32,1.275)}.stat-item::before{background:linear-gradient(90deg,#667eea 0%,#764ba2 100%);border-radius:20px 20px 0 0;content:'';height:4px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transform-origin:left;transition:transform 0.3s ease}.stat-item:hover{background:linear-gradient(135deg,#ffffff 0%,#f0f8ff 100%);box-shadow:0 15px 35px rgba(0,0,0,0.12),0 8px 25px rgba(102,126,234,0.2);transform:translateY(-8px) scale(1.02)}.stat-item:hover::before{transform:scaleX(1)}.stat-number{background:linear-gradient(135deg,#667eea 0%,#764ba2 50%,#f093fb 100%);display:inline-block;font-size:3rem;font-weight:900;line-height:1;position:relative;text-shadow:0 2px 4px rgba(0,0,0,0.1);white-space:nowrap}.stat-number::after{background:linear-gradient(90deg,#667eea 0%,#764ba2 100%);border-radius:2px;bottom:-5px;content:'';height:3px;left:50%;position:absolute;transform:translateX(-50%);transition:width 0.3s ease;width:0}.stat-item:hover .stat-number::after{width:60%}.stat-label{color:#4a5568;font-size:1rem;font-weight:700;letter-spacing:0.5px;margin:0;text-transform:uppercase}.about-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));grid-gap:2.5rem;gap:2.5rem;margin-top:3rem;perspective:1000px}.about-feature{align-items:center;animation:cardFloat 6s ease-in-out infinite;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#ffffff 0%,#f8fafc 50%,#ffffff 100%);border:1px solid rgba(255,255,255,0.9);border-radius:24px;box-shadow:0 10px 40px rgba(0,0,0,0.1),0 4px 20px rgba(102,126,234,0.1),inset 0 1px 0 rgba(255,255,255,0.8);display:flex;flex-direction:column;justify-content:center;min-height:220px;overflow:hidden;padding:2.5rem;position:relative;text-align:center;transition:all 0.5s cubic-bezier(0.175,0.885,0.32,1.275)}.about-feature:nth-child(1){animation-delay:0s}.about-feature:nth-child(2){animation-delay:2s}.about-feature:nth-child(3){animation-delay:4s}@keyframes cardFloat{0%, 100%{transform:translateY(0px) rotateX(0deg)}50%{transform:translateY(-5px) rotateX(2deg)}}.about-feature::before{background:linear-gradient(90deg,#667eea 0%,#764ba2 50%,#f093fb 100%);border-radius:24px 24px 0 0;box-shadow:0 2px 10px rgba(102,126,234,0.3);content:'';height:5px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transform-origin:left;transition:transform 0.4s cubic-bezier(0.175,0.885,0.32,1.275)}.about-feature::after{animation:shimmer 3s ease-in-out infinite;background:radial-gradient(circle,rgba(102,126,234,0.08) 0%,rgba(240,147,251,0.05) 50%,transparent 70%);content:'';height:200%;opacity:0;position:absolute;right:-50%;top:-50%;transition:all 0.4s ease;width:200%}@keyframes shimmer{0%, 100%{opacity:0;transform:rotate(0deg) scale(1)}50%{opacity:0.1;transform:rotate(180deg) scale(1.1)}}.about-feature:hover{background:linear-gradient(135deg,#ffffff 0%,#f0f8ff 50%,#fdf2f8 100%);box-shadow:0 25px 50px rgba(0,0,0,0.15),0 10px 30px rgba(102,126,234,0.2),inset 0 1px 0 rgba(255,255,255,0.9);transform:translateY(-12px) scale(1.03) rotateX(5deg)}.about-feature:hover::before{box-shadow:0 4px 15px rgba(102,126,234,0.4);transform:scaleX(1)}.about-feature:hover::after{animation:shimmerHover 2s ease-in-out infinite;opacity:1}@keyframes shimmerHover{0%, 100%{opacity:0.1;transform:rotate(0deg) scale(1)}50%{opacity:0.2;transform:rotate(180deg) scale(1.2)}}.about-feature .feature-icon{animation:iconPulse 4s ease-in-out infinite;display:block;filter:drop-shadow(0 6px 12px rgba(0,0,0,0.15));font-size:4rem;margin-bottom:1.5rem;position:relative;transition:all 0.5s cubic-bezier(0.175,0.885,0.32,1.275)}@keyframes iconPulse{0%, 100%{filter:drop-shadow(0 6px 12px rgba(0,0,0,0.15));transform:scale(1)}50%{filter:drop-shadow(0 8px 16px rgba(102,126,234,0.2));transform:scale(1.05)}}.about-feature .feature-icon::before{background:radial-gradient(circle,rgba(102,126,234,0.1) 0%,transparent 70%);border-radius:50%;content:'';height:120%;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%) scale(0);transition:transform 0.3s ease;width:120%;z-index:-1}.about-feature:hover .feature-icon{filter:drop-shadow(0 12px 24px rgba(102,126,234,0.4));transform:scale(1.15) rotate(8deg)}.about-feature:hover .feature-icon::before{transform:translate(-50%,-50%) scale(1)}.about-feature span:last-child{background:linear-gradient(135deg,#2d3748 0%,#4a5568 50%,#667eea 100%);-webkit-background-clip:text;color:#2d3748;font-size:1.3rem;font-weight:800;line-height:1.4;margin:0;text-align:center;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:0.5px;position:relative;transition:all 0.4s cubic-bezier(0.175,0.885,0.32,1.275)}.about-feature span:last-child::after{background:linear-gradient(90deg,#667eea 0%,#764ba2 100%);border-radius:2px;bottom:-8px;content:'';height:3px;left:50%;position:absolute;transform:translateX(-50%);transition:width 0.4s cubic-bezier(0.175,0.885,0.32,1.275);width:0}.about-feature:hover span:last-child{background:linear-gradient(135deg,#667eea 0%,#764ba2 50%,#f093fb 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;transform:translateY(-2px)}.about-feature:hover span:last-child::after{width:60%}@media (max-width: 768px){.about-features{gap:2rem;grid-template-columns:1fr;margin-top:2.5rem;perspective:800px}.about-feature{animation:cardFloatMobile 8s ease-in-out infinite;border-radius:20px;min-height:180px;padding:2rem}.about-feature:nth-child(1){animation-delay:0s}.about-feature:nth-child(2){animation-delay:2.5s}.about-feature:nth-child(3){animation-delay:5s}@keyframes cardFloatMobile{0%, 100%{transform:translateY(0px) rotateX(0deg)}50%{transform:translateY(-3px) rotateX(1deg)}}.about-feature .feature-icon{font-size:3.5rem;margin-bottom:1.2rem}.about-feature span:last-child{font-size:1.2rem;letter-spacing:0.3px;line-height:1.3}}@media (max-width: 480px){.about-features{gap:1.5rem;margin-top:2rem}.about-feature{border-radius:18px;min-height:160px;padding:1.5rem}.about-feature .feature-icon{font-size:3rem;margin-bottom:1rem}.about-feature span:last-child{font-size:1.1rem;letter-spacing:0.2px;line-height:1.3}}.features-section{background:linear-gradient(135deg,#f8fafc 0%,#e2e8f0 100%);margin-top:40px;overflow:hidden;padding:80px 20px;position:relative;z-index:2}.features-section::before{animation:backgroundFloat 25s linear infinite;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 60 60"><defs><pattern id="grid" width="60" height="60" patternUnits="userSpaceOnUse"><path d="M 60 0 L 0 0 0 60" fill="none" stroke="%23f59e0b" stroke-width="0.5" opacity="0.1"/></pattern></defs><rect width="100%" height="100%" fill="url(%23grid)"/></svg>');bottom:0;content:'';left:0;position:absolute;right:0;top:0;z-index:0}.features-section > *{position:relative;z-index:1}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));grid-gap:30px;gap:30px;margin:0 auto;max-width:1200px}.feature-card{animation:slideInFromRight 0.6s ease-out;background:linear-gradient(135deg,#ffe6a8 0%,#ffb74d 100%);border:2px solid transparent;border-radius:25px;box-shadow:0 15px 35px rgba(0,0,0,0.1);cursor:pointer;height:400px;min-height:400px;overflow:hidden;padding:0;perspective:1000px;position:relative;text-align:center;transition:all 0.4s cubic-bezier(0.175,0.885,0.32,1.275)}.feature-card:nth-child(even){animation:slideInFromLeft 0.6s ease-out}.feature-card::before{background:linear-gradient(90deg,transparent,rgba(255,255,255,0.4),transparent);content:'';height:100%;left:-100%;position:absolute;top:0;transition:left 0.5s;width:100%}.feature-card:hover::before{left:100%}.card-inner{height:100%;position:relative;text-align:center;transform-style:preserve-3d;transition:transform 0.6s;width:100%}.feature-card:hover .card-inner{transform:rotateY(180deg)}.card-front, .card-back{align-items:center;-webkit-backface-visibility:hidden;backface-visibility:hidden;border-radius:25px;box-sizing:border-box;display:flex;flex-direction:column;height:100%;justify-content:flex-start;padding:40px 30px;position:absolute;text-align:center;width:100%}.card-front{background:linear-gradient(135deg,#ffe6a8 0%,#ffb74d 100%);justify-content:flex-start;overflow:hidden;padding-top:30px}.card-back{background:linear-gradient(135deg,#f8fafc 0%,#e2e8f0 100%);overflow:hidden;position:relative;transform:rotateY(180deg)}.feature-image{height:100%;left:0;position:absolute;top:0;width:100%;z-index:1}.feature-image img{border-radius:25px;height:100%;object-fit:cover;width:100%}.feature-card:hover{border-color:#ffffff;border-width:1px;box-shadow:0 25px 50px rgba(0,0,0,0.15);transform:translateY(-10px)}.feature-card:hover .card-back{border:1px solid #ffffff;border-radius:25px;box-shadow:0 0 15px rgba(255,255,255,0.2)}.feature-icon{animation:bounce 2s infinite;display:block;flex-shrink:0;font-size:4rem;line-height:1;margin:20px 0;text-align:center;width:100%}.feature-card h3{color:#333;font-size:1.8rem;font-weight:700;margin:0 0 15px;text-align:center;width:100%}.feature-card p{color:#666;font-size:1.1rem;line-height:1.6;margin:0 0 20px;text-align:center;width:100%}.feature-highlight{background:linear-gradient(135deg,#ff6b35,#f7931e);border-radius:20px;color:white;display:inline-block;font-size:0.9rem;font-weight:600;margin:0 auto;padding:8px 20px;text-align:center;width:auto}.gallery-section{background:linear-gradient(135deg,#f3e5f5 0%,#e1bee7 100%);overflow:hidden;padding:80px 20px;position:relative;z-index:2}.gallery-section::before{animation:backgroundFloat 30s linear infinite;background:url("data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 100 100\"><circle cx=\"25\" cy=\"25\" r=\"3\" fill=\"%23f59e0b\" opacity=\"0.1\"/><circle cx=\"75\" cy=\"25\" r=\"2\" fill=\"%23f97316\" opacity=\"0.1\"/><circle cx=\"50\" cy=\"50\" r=\"4\" fill=\"%23ef4444\" opacity=\"0.1\"/><circle cx=\"25\" cy=\"75\" r=\"2.5\" fill=\"%23ec4899\" opacity=\"0.1\"/><circle cx=\"75\" cy=\"75\" r=\"3.5\" fill=\"%238b5cf6\" opacity=\"0.1\"/></svg>") repeat;bottom:0;content:'';left:0;position:absolute;right:0;top:0;z-index:0}.gallery-section > *{position:relative;z-index:1}.gallery-container{margin:0 auto;max-width:1200px;position:relative}.main-gallery-carousel{border-radius:25px;box-shadow:0 25px 50px rgba(0,0,0,0.2);height:600px;min-height:600px;overflow:hidden;width:100%}.cta-section{background:linear-gradient(135deg,#fff3e0 0%,#ffe0b2 100%);padding:80px 20px;position:relative;z-index:2}.cta-content{display:grid;grid-template-columns:1fr 1fr;margin:0 auto;max-width:1200px;grid-gap:60px;align-items:center;gap:60px}.cta-visual{height:400px;position:relative}.cta-shapes{height:100%;position:relative}.cta-shape{animation:float 4s ease-in-out infinite;font-size:4rem;position:absolute}.cta-shape.shape-1{animation-delay:0s;left:20%;top:20%}.cta-shape.shape-2{animation-delay:2s;left:60%;top:60%}.cta-shape.shape-3{animation-delay:4s;left:40%;top:40%}.cta-text h2{color:#333;font-size:2.5rem;font-weight:700;line-height:1.3;margin-bottom:20px}.cta-text p{color:#666;font-size:1.2rem;line-height:1.6;margin-bottom:30px}.cta-features{margin-bottom:40px}.cta-feature{align-items:center;color:#555;display:flex;font-size:1.1rem;gap:12px;margin-bottom:15px}.feature-check{color:#4caf50;font-size:1.3rem}.btn-cta{background:linear-gradient(135deg,#60a5fa,#34d399);border:none;color:white;font-size:1.3rem;min-width:250px;overflow:hidden;padding:20px 40px;position:relative;transition:all 0.3s ease}.btn-cta:hover{background:linear-gradient(135deg,#34d399,#60a5fa);box-shadow:0 8px 25px rgba(96,165,250,0.4);transform:translateY(-3px)}.btn-cta:active{transform:translateY(-1px)}.btn-cta .btn-icon{animation:pulse 2s infinite;font-size:1.2em;margin-right:10px}.home-container .footer{background:linear-gradient(135deg,#333 0%,#555 100%);color:white;padding:60px 20px 20px;position:relative;z-index:2}.home-container .footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));max-width:1200px;grid-gap:40px;gap:40px;margin:0 auto 40px}.home-container .footer-section h3,
.home-container .footer-section h4{color:#ffc107;font-weight:600;margin-bottom:20px}.home-container .footer-section h3{font-size:1.5rem}.home-container .footer-section h4{font-size:1.2rem}.home-container .footer-section p{color:#ccc;line-height:1.6;margin-bottom:10px}.home-container .footer-section ul{list-style:none;padding:0}.home-container .footer-section ul li{margin-bottom:10px}.home-container .footer-section ul li button,
.home-container .footer-section ul li a{background:none;border:none;color:#ccc;cursor:pointer;text-decoration:none;transition:color 0.3s ease}.home-container .footer-section ul li button:hover,
.home-container .footer-section ul li a:hover{color:#ffc107}.home-container .footer-bottom{border-top:1px solid #555;color:#999;padding-top:20px;text-align:center}.home-container .footer-bottom p{color:#ccc;margin:5px 0}@keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInDown{from{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{from{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}@keyframes bounce{0%, 20%, 50%, 80%, 100%{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.1)}100%{transform:scale(1)}}@keyframes rainbowGlow{0%{text-shadow:0 0 15px rgba(245,158,11,0.3)}25%{text-shadow:0 0 18px rgba(249,115,22,0.3)}50%{text-shadow:0 0 20px rgba(239,68,68,0.3)}75%{text-shadow:0 0 18px rgba(236,72,153,0.3)}100%{text-shadow:0 0 15px rgba(139,92,246,0.3)}}@media (max-width: 1024px){.hero-school-name{font-size:80px;line-height:1.2;padding-bottom:8px;padding-top:8px}.games-grid{gap:25px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.game-card{padding:25px}.game-header h3{font-size:1.4rem}.target-shape{font-size:3.5rem}.shape-option{font-size:3rem;padding:18px}}@media (max-width: 768px){.about-carousel{height:300px;min-height:300px}.main-gallery-carousel{height:400px;min-height:400px}.hero-section{padding:200px 20px 40px}.games-section{padding:40px 10px}.games-grid{gap:15px;padding:0 5px}.game-card{margin:0;min-height:180px;padding:15px}.game-header h3{font-size:1.1rem}.game-score{font-size:0.7rem;padding:4px 8px}.target-shape{font-size:2.5rem;margin:10px 0}.shape-option{font-size:2rem;min-height:50px;padding:12px}.btn-game-start{font-size:0.9rem;padding:10px 20px}.btn-game-reset{font-size:0.8rem;padding:8px 16px}.hero-badge{display:none}.hero-school-name{font-size:70px;line-height:1.2;padding-bottom:6px;padding-top:6px;white-space:normal}.jumping-char{font-size:70px;line-height:1.2}.hero-school-subtitle{font-size:var(--font-size-xl)}.hero-content{padding:0 var(--space-4)}.hero-school-name{padding:0 var(--space-1)}.hero-features{align-items:center;flex-direction:column}.cta-buttons{align-items:center;flex-direction:column}.btn-hero{min-width:250px}.cta-content{grid-template-columns:1fr;text-align:center}.cta-visual{height:200px}.about-content{gap:40px;grid-template-columns:1fr;text-align:center}.about-stats{gap:1.5rem;grid-template-columns:1fr;margin-bottom:2rem}.stat-item{border-radius:16px;padding:1.5rem}.stat-number{display:inline-block;font-size:2.5rem;white-space:nowrap}.stat-label{font-size:0.9rem;letter-spacing:0.3px}.games-grid,
  .features-grid{gap:20px;grid-template-columns:1fr}.feature-card{display:block;height:auto;margin-bottom:20px;min-height:350px;opacity:1;visibility:visible}.features-section{display:block;margin-bottom:20px;padding:60px 20px;visibility:visible}.features-grid{display:grid;visibility:visible}.card-front{align-items:center;display:flex;flex-direction:column;justify-content:space-between;min-height:350px;overflow:visible;padding:20px}.card-back{min-height:350px;overflow:hidden;padding:0;transform:rotateY(180deg)}.feature-card h3{font-size:1.6rem;margin-bottom:12px}.feature-card p{flex-grow:1;font-size:1.05rem;margin-bottom:18px}.feature-highlight{font-size:0.95rem;margin-bottom:10px;margin-top:auto;padding:10px 14px}.events-banner{margin:30px 0;padding:30px 15px}.banner-header{flex-direction:column;gap:15px;margin-bottom:20px;text-align:center}.banner-header h2{font-size:1.5rem;padding:3px 6px}.banner-controls{justify-content:center;margin-top:10px;position:static}.banner-indicator{background:rgba(25,118,210,0.1);border-radius:20px;font-size:0.9rem;padding:8px 12px}.events-grid{gap:20px;grid-template-columns:1fr}.event-card{padding:25px}.event-card-header{align-items:flex-start;flex-direction:row;flex-wrap:wrap;gap:12px}.event-card h3{flex:1 1;min-width:0}.event-status{flex-shrink:0;font-size:0.75rem;padding:4px 8px}.event-details{align-items:stretch;flex-direction:column;gap:12px;margin-top:15px}.event-detail{font-size:0.9rem;justify-content:flex-start;min-height:44px;padding:12px 16px;width:100%}.shape-options{grid-template-columns:1fr}.games-section{display:block;margin-top:20px;padding:60px 10px;visibility:visible;z-index:15}.games-grid{grid-template-columns:1fr;grid-gap:20px;display:grid;gap:20px;padding:0 10px;visibility:visible}.game-card{display:block;height:auto;margin:0 5px;min-height:200px;opacity:1;padding:20px;position:relative;visibility:visible;z-index:1}.game-header{align-items:flex-start;flex-direction:column;gap:10px;margin-bottom:20px}.game-header h3{font-size:1.3rem;text-align:left}.game-score{align-self:flex-end;font-size:0.8rem;padding:6px 12px}.target-shape{font-size:3rem;margin:15px 0}.shape-option{font-size:2.5rem;min-height:60px;padding:15px}.btn-game-start{font-size:1rem;padding:12px 24px;width:100%}.btn-game-reset{font-size:0.9rem;padding:10px 20px;width:100%}}@media (max-width: 480px){.section-title{font-size:1.5rem;justify-content:center;text-align:center}.title-icon{font-size:1.8rem}.about-carousel{height:250px;min-height:250px}.main-gallery-carousel{height:300px;min-height:300px}.hero-section{padding:150px 15px 30px}.hero-branding{margin-bottom:20px}.hero-school-name{font-size:50px;line-height:1.2;padding-bottom:4px;padding-top:4px;white-space:normal}.jumping-char{font-size:50px;line-height:1.2}.hero-school-subtitle{font-size:var(--font-size-lg)}.hero-content{padding:0 var(--space-2)}.hero-school-name{padding:0 var(--space-1)}.hero-subtitle{font-size:1.2rem}.section-title{font-size:1.75rem}.game-card,
  .feature-card{height:auto;min-height:320px}.card-front{align-items:center;display:flex;flex-direction:column;justify-content:flex-start;min-height:320px;overflow:visible;padding:25px 15px 20px}.card-back{min-height:320px;overflow:hidden;padding:0;transform:rotateY(180deg)}.feature-card h3{font-size:1.5rem;margin-bottom:10px}.feature-card p{flex-grow:1;font-size:1rem;margin-bottom:15px}.feature-highlight{font-size:0.9rem;margin-bottom:10px;margin-top:auto;padding:8px 12px}.feature-icon{font-size:3.5rem;margin:15px 0}.events-banner{margin:25px 0;padding:25px 10px}.banner-header h2{font-size:1.3rem;padding:2px 4px}.banner-indicator{font-size:0.8rem;padding:6px 10px}.event-card{padding:20px 15px}.event-card-header{gap:10px}.event-card h3{flex:1 1;font-size:1.2rem;margin-bottom:0;min-width:0}.event-status{font-size:0.7rem;padding:3px 6px}.event-card p{font-size:0.9rem;margin-bottom:12px}.event-details{gap:10px;margin-top:12px}.event-detail{font-size:0.85rem;min-height:40px;padding:10px 14px}.event-date{font-size:0.8rem;padding:4px 8px}.gallery-main{height:300px}}.childcare-cta-section{align-items:center;background:linear-gradient(135deg,#667eea 0%,#764ba2 50%,#f093fb 100%);color:white;display:flex;min-height:600px;overflow:hidden;padding:100px 20px;position:relative}.childcare-cta-background{bottom:0;left:0;pointer-events:none;position:absolute;right:0;top:0}.floating-shapes{height:100%;position:absolute;width:100%}.shape{animation:floatAround 20s infinite linear;font-size:2rem;opacity:0.1;position:absolute}.shape-1{animation-delay:0s;left:10%;top:10%}.shape-2{animation-delay:3s;right:15%;top:20%}.shape-3{animation-delay:6s;bottom:30%;left:20%}.shape-4{animation-delay:9s;bottom:20%;right:25%}.shape-5{animation-delay:12s;left:5%;top:50%}.shape-6{animation-delay:15s;right:10%;top:60%}@keyframes floatAround{0%, 100%{transform:translateY(0px) rotate(0deg)}25%{transform:translateY(-20px) rotate(90deg)}50%{transform:translateY(0px) rotate(180deg)}75%{transform:translateY(20px) rotate(270deg)}}.childcare-cta-content{display:grid;grid-template-columns:1.2fr 1fr;margin:0 auto;max-width:1400px;grid-gap:4rem;align-items:center;gap:4rem;position:relative;z-index:2}.childcare-cta-text{animation:slideInLeft 1s ease-out}.childcare-badge{align-items:center;animation:fadeInUp 0.8s ease-out 0.2s both;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(255,255,255,0.15);border:1px solid rgba(255,255,255,0.2);border-radius:25px;display:inline-flex;font-size:0.9rem;font-weight:600;gap:0.5rem;margin-bottom:1.5rem;padding:0.5rem 1rem}.badge-icon{animation:sparkle 2s infinite}@keyframes sparkle{0%, 100%{transform:scale(1) rotate(0deg)}50%{transform:scale(1.2) rotate(180deg)}}.childcare-cta-text h2{align-items:center;background:linear-gradient(135deg,#ffffff 0%,#f0f8ff 100%);-webkit-background-clip:text;display:flex;font-size:3.5rem;font-weight:900;gap:1rem;line-height:1.1;margin-bottom:1.5rem;-webkit-text-fill-color:transparent;animation:fadeInUp 0.8s ease-out 0.4s both;background-clip:text}.title-icon{animation:brainPulse 3s infinite;filter:drop-shadow(0 0 20px rgba(255,255,255,0.3));font-size:4rem}@keyframes brainPulse{0%, 100%{transform:scale(1)}50%{transform:scale(1.1)}}.main-description{animation:fadeInUp 0.8s ease-out 0.6s both;font-size:1.3rem;line-height:1.7;margin-bottom:2.5rem;max-width:600px;opacity:0.95}.childcare-stats{animation:fadeInUp 0.8s ease-out 0.8s both;display:flex;gap:2rem;margin-bottom:3rem}.stat-item{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.2);border-radius:20px;min-width:120px;padding:1.5rem 1rem;text-align:center;transition:all 0.3s ease}.stat-item:hover{background:rgba(255,255,255,0.15);transform:translateY(-5px)}.stat-number{background:linear-gradient(135deg,#fff 0%,#f0f8ff 100%);-webkit-background-clip:text;color:#fff;font-size:2.5rem;font-weight:800;margin-bottom:0.5rem;-webkit-text-fill-color:transparent;background-clip:text}.stat-label{font-size:0.9rem;font-weight:500;opacity:0.9}.childcare-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));grid-gap:1.5rem;animation:fadeInUp 0.8s ease-out 1s both;gap:1.5rem;margin-bottom:3rem}.childcare-feature{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.2);border-radius:20px;display:flex;gap:1rem;overflow:hidden;padding:1.5rem;position:relative;transition:all 0.3s ease}.childcare-feature::before{background:linear-gradient(90deg,transparent,rgba(255,255,255,0.1),transparent);content:'';height:100%;left:-100%;position:absolute;top:0;transition:left 0.6s;width:100%}.childcare-feature:hover::before{left:100%}.childcare-feature:hover{background:rgba(255,255,255,0.15);box-shadow:0 10px 30px rgba(0,0,0,0.2);transform:translateY(-5px)}.feature-icon-wrapper{align-items:center;background:rgba(255,255,255,0.2);border-radius:50%;display:flex;flex-shrink:0;font-size:1.5rem;height:60px;justify-content:center;transition:all 0.3s ease;width:60px}.childcare-feature:hover .feature-icon-wrapper{background:rgba(255,255,255,0.3);transform:scale(1.1)}.feature-content h4{color:#fff;font-size:1.1rem;font-weight:700;margin-bottom:0.5rem}.feature-content p{font-size:0.9rem;margin:0;opacity:0.8}.childcare-actions{animation:fadeInUp 0.8s ease-out 1.2s both;display:flex;flex-wrap:wrap;gap:1.5rem}.btn-childcare-primary,
.btn-childcare-secondary{align-items:center;border:none;border-radius:50px;cursor:pointer;display:flex;font-size:1.1rem;font-weight:700;gap:0.8rem;justify-content:center;min-width:200px;overflow:hidden;padding:1.2rem 2.5rem;position:relative;text-decoration:none;transition:all 0.3s ease}.btn-childcare-primary{background:linear-gradient(135deg,#fff 0%,#f0f8ff 100%);box-shadow:0 8px 25px rgba(0,0,0,0.2);color:#667eea}.btn-childcare-secondary{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(255,255,255,0.1);border:2px solid rgba(255,255,255,0.3);color:#fff}.btn-childcare-primary::before,
.btn-childcare-secondary::before{background:linear-gradient(90deg,transparent,rgba(255,255,255,0.2),transparent);content:'';height:100%;left:-100%;position:absolute;top:0;transition:left 0.6s;width:100%}.btn-childcare-primary:hover::before,
.btn-childcare-secondary:hover::before{left:100%}.btn-childcare-primary:hover{box-shadow:0 15px 35px rgba(0,0,0,0.3);transform:translateY(-3px)}.btn-childcare-secondary:hover{background:rgba(255,255,255,0.2);border-color:rgba(255,255,255,0.5);transform:translateY(-3px)}.btn-icon{transition:transform 0.3s ease}.btn-childcare-primary:hover .btn-icon,
.btn-childcare-secondary:hover .btn-icon{transform:scale(1.2)}.childcare-cta-visual{align-items:center;animation:slideInRight 1s ease-out;display:flex;justify-content:center}.visual-container{align-items:center;display:flex;height:400px;justify-content:center;position:relative;width:400px}.main-icon{animation:brainFloat 4s ease-in-out infinite;filter:drop-shadow(0 0 30px rgba(255,255,255,0.4));font-size:8rem;position:relative;z-index:3}@keyframes brainFloat{0%, 100%{transform:translateY(0px) rotate(0deg)}50%{transform:translateY(-20px) rotate(5deg)}}.orbit-ring{animation:rotate 20s linear infinite;border:2px solid rgba(255,255,255,0.2);border-radius:50%;height:300px;position:absolute;width:300px}.orbit-item{align-items:center;animation:counterRotate 20s linear infinite;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(255,255,255,0.15);border:1px solid rgba(255,255,255,0.3);border-radius:50%;display:flex;font-size:1.5rem;height:50px;justify-content:center;position:absolute;width:50px}.orbit-1{left:50%;top:-25px;transform:translateX(-50%)}.orbit-2{right:-25px;top:50%;transform:translateY(-50%)}.orbit-3{bottom:-25px;left:50%;transform:translateX(-50%)}.orbit-4{left:-25px;top:50%;transform:translateY(-50%)}@keyframes rotate{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}@keyframes counterRotate{from{transform:rotate(0deg)}to{transform:rotate(-360deg)}}.pulse-ring{animation:pulse 3s ease-in-out infinite;border:1px solid rgba(255,255,255,0.1);border-radius:50%;height:350px;position:absolute;width:350px}@keyframes pulse{0%{opacity:0.7;transform:scale(1)}50%{opacity:0.3;transform:scale(1.1)}100%{opacity:0.7;transform:scale(1)}}@keyframes slideInLeft{from{opacity:0;transform:translateX(-50px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInRight{from{opacity:0;transform:translateX(50px)}to{opacity:1;transform:translateX(0)}}@keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.letter-options{gap:12px;grid-template-columns:repeat(2,1fr)}.letter-option{font-size:1.5rem;padding:12px}.number-options{gap:15px;grid-template-columns:repeat(2,1fr)}.number-option{font-size:2rem;padding:15px}.objects-display{gap:8px;padding:15px}.object-item{font-size:1.5rem;padding:8px}.found-letters{margin-top:10px;padding:10px}.found-letters p{font-size:0.9rem}}@media (max-width: 480px){.letter-options{gap:8px;grid-template-columns:repeat(2,1fr)}.letter-option{font-size:1.2rem;padding:10px}.number-options{gap:10px;grid-template-columns:repeat(2,1fr)}.number-option{font-size:1.5rem;padding:12px}.objects-display{gap:6px;padding:12px}.object-item{font-size:1.2rem;padding:6px}}@media (max-width: 1024px){.childcare-cta-content{gap:3rem;grid-template-columns:1fr;text-align:center}.visual-container{height:300px;width:300px}.main-icon{font-size:6rem}.orbit-ring{height:250px;width:250px}.pulse-ring{height:280px;width:280px}}@media (max-width: 768px){.childcare-cta-section{min-height:auto;padding:80px 20px}.childcare-cta-text h2{flex-direction:column;font-size:2.5rem;gap:0.5rem}.title-icon{font-size:3rem}.main-description{font-size:1.1rem}.childcare-stats{flex-direction:column;gap:1rem}.stat-item{min-width:auto}.childcare-features{gap:1rem;grid-template-columns:1fr}.childcare-actions{align-items:center;flex-direction:column}.btn-childcare-primary,
  .btn-childcare-secondary{max-width:300px;width:100%}.visual-container{height:250px;width:250px}.main-icon{font-size:5rem}.orbit-ring{height:200px;width:200px}.pulse-ring{height:230px;width:230px}}.whatsapp-enquiry-modal{border-radius:20px;box-shadow:0 25px 50px rgba(0,0,0,0.15);max-height:90vh;max-width:650px;overflow:hidden}.whatsapp-enquiry-modal .modal-content{border-radius:20px;max-height:calc(90vh - 140px);overflow-y:auto;padding:0}.whatsapp-enquiry-container{background:#ffffff;border-radius:20px;padding:0}.whatsapp-enquiry-modal .modal-title{align-items:center;background:linear-gradient(135deg,#60a5fa,#34d399)!important;box-shadow:0 4px 20px rgba(96,165,250,0.3);display:flex;gap:12px;justify-content:center}.whatsapp-enquiry-modal .modal-title::before{content:"📱";filter:drop-shadow(0 2px 4px rgba(0,0,0,0.1));font-size:1.6rem}.whatsapp-header{background:linear-gradient(135deg,#f8fafc 0%,#f1f5f9 100%);border-bottom:1px solid #e2e8f0;border-radius:0 0 20px 20px;margin:0;overflow:hidden;padding:2.5rem 2.5rem 2rem;position:relative;text-align:center}.whatsapp-header::before{animation:float 6s ease-in-out infinite;background:radial-gradient(circle,rgba(37,211,102,0.05) 0%,transparent 70%);content:'';height:200%;left:-50%;position:absolute;top:-50%;width:200%}@keyframes float{0%, 100%{transform:translateY(0px) rotate(0deg)}50%{transform:translateY(-10px) rotate(180deg)}}.whatsapp-header h3{color:#1e293b;font-size:1.4rem;font-weight:700;letter-spacing:-0.025em;margin:0 0 1rem;position:relative;z-index:1}.whatsapp-header p{color:#64748b;font-size:1rem;line-height:1.6;margin:0 auto;max-width:500px;position:relative;z-index:1}.whatsapp-form{background:#ffffff;padding:2.5rem;position:relative}.form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:1.5rem;gap:1.5rem;margin-bottom:1.5rem}.form-group{display:flex;flex-direction:column;margin-bottom:0.5rem}.form-group label{color:#374151;font-size:0.95rem;font-weight:600;letter-spacing:0.025em;margin-bottom:0.75rem}.form-group input,
.form-group textarea{background:#ffffff;border:2px solid #e2e8f0;border-radius:14px;box-shadow:0 2px 4px rgba(0,0,0,0.05);font-family:inherit;font-size:1rem;padding:1rem 1.25rem;transition:all 0.3s cubic-bezier(0.4,0,0.2,1)}.form-group input:focus,
.form-group textarea:focus{background:#f8fffe;border-color:#25D366;box-shadow:0 0 0 4px rgba(37,211,102,0.15),0 6px 20px rgba(0,0,0,0.1);outline:none;transform:translateY(-2px)}.form-group input:disabled,
.form-group textarea:disabled{background-color:#f8f9fa;color:#6c757d;cursor:not-allowed}.form-group textarea{background:#ffffff;border:2px solid #e2e8f0;border-radius:16px;box-shadow:0 2px 4px rgba(0,0,0,0.05);font-family:inherit;font-size:1rem;line-height:1.6;min-height:120px;padding:1.25rem 1.5rem;resize:vertical;transition:all 0.3s cubic-bezier(0.4,0,0.2,1)}.form-group textarea[name="message"]{font-size:1.05rem;line-height:1.7;min-height:140px;padding:1.5rem 1.75rem}.form-group textarea[name="message"]:focus{background:#f8fffe;border-color:#25D366;box-shadow:0 0 0 4px rgba(37,211,102,0.15),0 6px 20px rgba(0,0,0,0.1);transform:translateY(-2px)}.form-group textarea[name="message"]::placeholder{color:#94a3b8;font-size:0.95rem;font-style:italic}.form-actions{background:linear-gradient(135deg,#fafbfc 0%,#f8fafc 100%);border-radius:0 0 20px 20px;border-top:2px solid #f1f5f9;display:flex;gap:1.5rem;justify-content:flex-end;margin-left:-2.5rem;margin-right:-2.5rem;margin-top:2.5rem;padding:2rem 2.5rem}.btn-cancel{background:#ffffff;border:2px solid #e2e8f0;border-radius:14px;box-shadow:0 3px 6px rgba(0,0,0,0.08);color:#64748b;cursor:pointer;font-size:1rem;font-weight:600;min-width:120px;padding:1rem 2rem;transition:all 0.3s cubic-bezier(0.4,0,0.2,1)}.btn-cancel:hover:not(:disabled){background:#f8f9fa;border-color:#d1d5db;box-shadow:0 4px 8px rgba(0,0,0,0.1);color:#374151;transform:translateY(-1px)}.btn-whatsapp{align-items:center;background:linear-gradient(135deg,#60a5fa,#34d399);border:none;border-radius:14px;box-shadow:0 6px 20px rgba(96,165,250,0.3);color:white;cursor:pointer;display:flex;font-size:1rem;font-weight:700;gap:0.75rem;justify-content:center;letter-spacing:0.025em;min-width:200px;overflow:hidden;padding:1rem 2rem;position:relative;transition:all 0.3s cubic-bezier(0.4,0,0.2,1)}.btn-whatsapp:hover:not(:disabled){background:linear-gradient(135deg,#34d399,#60a5fa);box-shadow:0 8px 25px rgba(96,165,250,0.4);transform:translateY(-3px)}.btn-whatsapp:disabled{box-shadow:none;cursor:not-allowed;opacity:0.7;transform:none}.whatsapp-icon-small{font-size:1.1rem}.loading-spinner{animation:spin 1s linear infinite;border:2px solid rgba(255,255,255,0.3);border-radius:50%;border-top-color:white;height:16px;width:16px}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.whatsapp-info{background:linear-gradient(135deg,#f8fafc 0%,#f1f5f9 100%);border-left:4px solid #25d366;border-radius:0 0 20px 20px;border-top:2px solid #e2e8f0;margin:0;padding:2rem 2.5rem;position:relative}.whatsapp-info p{color:#64748b;font-size:0.95rem;font-weight:500;line-height:1.6;margin:0}@media (max-width: 768px){.whatsapp-enquiry-modal{max-height:95vh;max-width:95vw}.whatsapp-enquiry-modal .modal-content{max-height:calc(95vh - 120px)}.form-row{gap:0.75rem;grid-template-columns:1fr}.whatsapp-form{padding:2rem 1.5rem}.whatsapp-header{padding:2rem 1.5rem 1.5rem}.whatsapp-info{padding:1.5rem}.form-actions{margin-left:-1.5rem;margin-right:-1.5rem;padding-left:1.5rem;padding-right:1.5rem}.form-group textarea[name="message"]{min-height:120px;padding:1.25rem 1.5rem}.form-actions{flex-direction:column;gap:0.75rem}.btn-cancel,
  .btn-whatsapp{justify-content:center;width:100%}}@media (max-width: 480px){.whatsapp-enquiry-modal{max-height:95vh;max-width:95vw}.whatsapp-enquiry-modal .modal-content{max-height:calc(95vh - 100px)}.whatsapp-form{padding:1.5rem 1rem}.whatsapp-header{padding:1.5rem 1rem 1rem}.whatsapp-header h3{font-size:1.2rem}.whatsapp-header p{font-size:0.9rem}.whatsapp-info{padding:1.25rem 1rem}.form-actions{margin-left:-1rem;margin-right:-1rem;padding-left:1rem;padding-right:1rem}.form-group textarea[name="message"]{font-size:1rem;min-height:100px;padding:1rem 1.25rem}}.language-popup-overlay{align-items:center;animation:fadeIn 0.3s ease-out;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:rgba(0,0,0,0.7);bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}@keyframes fadeIn{from{opacity:0}to{opacity:1}}.language-popup{animation:slideUp 0.4s ease-out;background:white;border-radius:20px;box-shadow:0 20px 60px rgba(0,0,0,0.3);max-height:90vh;max-width:400px;overflow:hidden;position:relative;width:90%}@keyframes slideUp{from{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.language-popup-header{align-items:center;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:white;display:flex;justify-content:space-between;padding:20px}.language-popup-header h3{font-size:1.5rem;font-weight:600;margin:0}.language-popup-close{align-items:center;background:none;border:none;border-radius:50%;color:white;cursor:pointer;display:flex;font-size:1.8rem;height:30px;justify-content:center;padding:0;transition:background-color 0.2s ease;width:30px}.language-popup-close:hover{background-color:rgba(255,255,255,0.2)}.language-popup-content{padding:30px 20px}.language-popup-description{color:#666;font-size:1rem;line-height:1.5;margin:0 0 25px;text-align:center}.language-options{display:flex;flex-direction:column;gap:15px}.language-option{align-items:center;background:white;border:2px solid #e1e5e9;border-radius:12px;cursor:pointer;display:flex;padding:15px;text-align:left;transition:all 0.3s ease;width:100%}.language-option:hover{background:#f8f9ff;border-color:#667eea;box-shadow:0 5px 15px rgba(102,126,234,0.2);transform:translateY(-2px)}.language-option:active{transform:translateY(0)}.language-flag{font-size:2rem;margin-right:15px;min-width:40px;text-align:center}.language-info{flex:1 1}.language-name{color:#333;font-size:1.1rem;font-weight:600;margin-bottom:2px}.language-native{color:#666;font-size:0.9rem;font-style:italic}.language-popup-footer{background:#f8f9fa;border-top:1px solid #e1e5e9;padding:20px}.language-continue-btn{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:8px;color:white;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 20px;transition:all 0.3s ease;width:100%}.language-continue-btn:hover{box-shadow:0 5px 15px rgba(102,126,234,0.4);transform:translateY(-2px)}.language-continue-btn:active{transform:translateY(0)}@media (max-width: 480px){.language-popup{margin:20px;width:calc(100% - 40px)}.language-popup-header{padding:15px}.language-popup-header h3{font-size:1.3rem}.language-popup-content{padding:20px 15px}.language-option{padding:12px}.language-flag{font-size:1.8rem;margin-right:12px;min-width:35px}.language-name{font-size:1rem}.language-native{font-size:0.85rem}}[dir="rtl"] .language-popup{text-align:right}[dir="rtl"] .language-option{text-align:right}[dir="rtl"] .language-flag{margin-left:15px;margin-right:0}[dir="rtl"] .language-popup-close{order:-1}.error-boundary{align-items:center;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);display:flex;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI','Roboto','Oxygen','Ubuntu','Cantarell','Fira Sans','Droid Sans','Helvetica Neue',sans-serif;justify-content:center;min-height:100vh;padding:2rem}.error-boundary-container{max-width:800px;width:100%}.error-boundary-content{animation:slideUp 0.5s ease-out;background:white;border-radius:20px;box-shadow:0 20px 60px rgba(0,0,0,0.3);padding:3rem 2rem;text-align:center}@keyframes slideUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.error-icon{animation:bounce 1s ease-in-out infinite;font-size:5rem;margin-bottom:1.5rem}@keyframes bounce{0%, 100%{transform:translateY(0)}50%{transform:translateY(-10px)}}.error-title{color:#2c3e50;font-size:2rem;font-weight:700;margin-bottom:1rem}.error-message{color:#666;font-size:1.1rem;line-height:1.6;margin-bottom:2rem;margin-left:auto;margin-right:auto;max-width:600px}.error-details{background:#f8f9fa;border:2px solid #e9ecef;border-radius:12px;margin:2rem 0;overflow:hidden;text-align:left}.error-details-summary{background:#e9ecef;color:#495057;cursor:pointer;font-weight:600;padding:1rem 1.5rem;transition:background-color 0.2s;-webkit-user-select:none;user-select:none}.error-details-summary:hover{background:#dee2e6}.error-details-summary::marker{color:#667eea}.error-details-content{max-height:400px;overflow-y:auto;padding:1.5rem}.error-section{margin-bottom:1.5rem}.error-section:last-child{margin-bottom:0}.error-section h3{color:#495057;font-size:0.9rem;font-weight:600;letter-spacing:0.5px;margin-bottom:0.5rem;text-transform:uppercase}.error-message-pre,
.error-stack-pre{background:#fff;border:1px solid #dee2e6;border-radius:8px;color:#e74c3c;font-family:'Monaco','Menlo','Ubuntu Mono','Consolas','source-code-pro',monospace;font-size:0.85rem;line-height:1.5;overflow-x:auto;padding:1rem;white-space:pre-wrap;word-wrap:break-word}.error-stack-pre{color:#666}.error-actions{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-top:2rem}.error-btn{align-items:center;border:none;border-radius:12px;cursor:pointer;display:inline-flex;font-family:inherit;font-size:1rem;font-weight:600;gap:0.5rem;padding:0.875rem 2rem;transition:all 0.3s ease}.error-btn-primary{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);box-shadow:0 4px 15px rgba(102,126,234,0.4);color:white}.error-btn-primary:hover{box-shadow:0 6px 20px rgba(102,126,234,0.6);transform:translateY(-2px)}.error-btn-primary:active{transform:translateY(0)}.error-btn-secondary{background:white;border:2px solid #667eea;color:#667eea}.error-btn-secondary:hover{background:#f8f9fa;transform:translateY(-2px)}.error-btn-secondary:active{transform:translateY(0)}.btn-icon{font-size:1.2rem}.error-support-text{color:#999;font-size:0.9rem;margin-top:2rem}.error-support-text a{color:#667eea;font-weight:600;text-decoration:none}.error-support-text a:hover{text-decoration:underline}@media (max-width: 768px){.error-boundary{padding:1rem}.error-boundary-content{border-radius:15px;padding:2rem 1.5rem}.error-icon{font-size:3.5rem}.error-title{font-size:1.5rem}.error-message{font-size:1rem}.error-actions{flex-direction:column;width:100%}.error-btn{justify-content:center;width:100%}.error-details-content{max-height:300px}.error-message-pre,
  .error-stack-pre{font-size:0.75rem;padding:0.75rem}}@media (max-width: 480px){.error-boundary-content{padding:1.5rem 1rem}.error-icon{font-size:3rem}.error-title{font-size:1.25rem}.error-btn{font-size:0.9rem;padding:0.75rem 1.5rem}}@media (prefers-color-scheme: dark){.error-boundary-content{background:#1a1a1a;color:#e0e0e0}.error-title{color:#ffffff}.error-message{color:#b0b0b0}.error-details{background:#2a2a2a;border-color:#3a3a3a}.error-details-summary{background:#3a3a3a;color:#e0e0e0}.error-details-summary:hover{background:#4a4a4a}.error-section h3{color:#b0b0b0}.error-message-pre,
  .error-stack-pre{background:#2a2a2a;border-color:#3a3a3a;color:#ff6b6b}.error-stack-pre{color:#b0b0b0}.error-btn-secondary{background:#1a1a1a;color:#667eea}.error-btn-secondary:hover{background:#2a2a2a}.error-support-text{color:#888}}
/*# sourceMappingURL=main.c85388bf.css.map*/