body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.home-page{background-color:#00000080;background-image:url(/static/media/vaccination-image.8546c385ada4a20c35ae.jpg);background-position:50%;background-size:cover;color:#fff;font-family:Arial,sans-serif;justify-content:flex-start;min-height:100vh;padding:20px 0;position:relative}.hero-section,.home-page{display:flex;flex-direction:column;text-align:center}.hero-section{align-items:center;gap:15px;margin-left:auto;margin-right:auto;margin-top:280px;padding:0 20px;width:350px}.hero-section h1{font-size:36px;font-weight:700;margin:0}.hero-section p{color:#e0f0ff;font-size:18px;font-weight:500;margin:0;overflow:visible;text-align:center;text-shadow:1px 1px 3px #000000b3;white-space:nowrap}button{background-color:#1e90ff;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:18px;height:50px;min-width:140px;padding:10px 24px;transition:background-color .3s ease;width:auto}button:hover{background-color:#004fbb}.footer-section{background-color:#222222f2;bottom:0;box-sizing:border-box;color:#eee;font-family:Arial,sans-serif;font-size:14px;left:0;opacity:0;padding:20px 10px 10px;position:fixed;transform:translateY(100%);transition:opacity .5s ease,transform .5s ease;width:100%;z-index:1000}.home-page footer.footer-section{opacity:1!important;transform:translateY(0)!important}.footer-columns{display:flex;flex-wrap:wrap;justify-content:space-between;margin:0 auto 15px;max-width:1100px}.footer-col{flex:1 1 180px;margin:8px;min-width:150px;text-align:left}.footer-col h3{color:#fff;font-size:16px;margin-bottom:10px}.footer-col p{font-size:12px;line-height:1.4;margin:4px 0}.footer-link{color:#4ea8f0;font-size:12px;margin-right:8px;text-decoration:none;transition:color .3s ease}.footer-link:hover{color:#1e90ff}.footer-bottom{border-top:1px solid #444;color:#999;font-size:11px;margin:0 auto;max-width:1100px;padding-top:8px;text-align:center}.login-page{align-items:center;background-color:#00000080;background-color:#fff;background-position:50%;background-size:cover;display:flex;justify-content:center;min-height:100vh;padding:20px}.login-container{background-color:#000000b3;border-radius:10px;max-width:400px;padding:2rem;text-align:center;width:100%}.login-container h2{color:#fff;font-size:1.8rem;margin-bottom:1.5rem}.login-form{display:flex;flex-direction:column;gap:1rem}.login-form input{border:none;border-radius:6px;box-sizing:border-box;font-size:1rem;padding:.8rem;width:100%}.login-form input:focus{box-shadow:0 0 0 2px #1e90ff80;outline:none}.login-form button{background-color:#1e90ff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;margin-top:.5rem;padding:.8rem;transition:background-color .3s;width:100%}.login-form button:hover{background-color:#07c}.register-link{color:#333;font-size:.9rem;font-weight:600;margin-top:20px;text-align:center}.register-link a{color:#1e90ff;font-weight:700;text-decoration:underline}.register-link a:hover{color:#07c}.register-page{align-items:center;background-color:#f0f8ff;display:flex;flex-direction:column;font-family:Arial,sans-serif;justify-content:center;min-height:100vh;padding:20px}.register-page h2{color:#333;font-size:2rem;margin-bottom:1.5rem;text-align:center}.register-form{background-color:#fff;border-radius:10px;box-shadow:0 4px 12px #0000001a;display:flex;flex-direction:column;max-width:400px;padding:2rem;width:100%}.register-form input{border:1px solid #ddd;border-radius:6px;box-sizing:border-box;font-size:1rem;margin-bottom:1rem;padding:.8rem;width:100%}.register-form input:focus{border-color:#1e90ff;box-shadow:0 0 0 2px #1e90ff33;outline:none}.register-form button{background-color:#1e90ff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;margin-top:.5rem;padding:.8rem;transition:background-color .3s;width:100%}.register-form button:hover{background-color:#07c}:root{--text-color:#333;--font-family:"Segoe UI",Tahoma,sans-serif}.vaccine-page{background-color:#f4f6f8;background-color:var(--bg-color);font-family:Segoe UI,Tahoma,sans-serif;font-family:var(--font-family);min-height:calc(100vh - 64px);padding:2rem 1rem}.vaccine-title{color:#333;color:var(--text-color);font-size:2rem;margin-bottom:1.5rem;text-align:center}.vaccine-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin:0 auto;max-width:1200px}.vaccine-card{background-color:#fff;background-color:var(--card-bg);border-radius:8px;border-radius:var(--border-radius);box-shadow:0 4px 12px #0000000d;display:flex;flex-direction:column;overflow:hidden;transition:transform .3s,box-shadow .3s;transition:transform var(--transition-speed),box-shadow var(--transition-speed)}.vaccine-card:hover{box-shadow:0 8px 20px #0000001a;transform:translateY(-5px)}.vaccine-image{aspect-ratio:1.2/1;background-color:#fafafa;object-fit:contain;width:100%}.vaccine-info{display:flex;flex:1 1;flex-direction:column;padding:1rem}.vaccine-name{color:#1e88e5;color:var(--primary-color);font-size:1.25rem;margin:0}.vaccine-disease{color:#333;color:var(--text-color);font-size:.9rem;font-weight:600;margin:.25rem 0}.vaccine-desc{color:#555;font-size:.85rem;margin-top:auto}.status{color:#333;color:var(--text-color);font-size:1rem;margin-top:2rem;text-align:center}.status.error{color:#e53935}@media (max-width:480px){.vaccine-page{padding:1rem}.vaccine-title{font-size:1.5rem}}:root{--color-primary:#2563eb;--color-primary-70:#2563ebb3;--color-secondary:#10b981;--color-accent:#f59e0b;--color-bg:#f3f4f6;--color-surface:#fff;--color-border:#e5e7eb;--color-text:#1f2937;--color-subtext:#4b5563;--color-error:#dc2626;--color-success:#16a34a;--font-base:"Segoe UI",Roboto,"Helvetica Neue",sans-serif;--font-size-base:16px;--font-size-lg:1.125rem;--font-size-sm:0.875rem;--line-height:1.5;--spacing-xs:0.25rem;--spacing-sm:0.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 6px #0000001a;--shadow-lg:0 10px 15px #00000026}*,:after,:before{box-sizing:border-box}body{background-color:#f3f4f6;background-color:var(--color-bg);color:#1f2937;color:var(--color-text);font-family:Segoe UI,Roboto,Helvetica Neue,sans-serif;font-family:var(--font-base);font-size:16px;font-size:var(--font-size-base);line-height:1.5;line-height:var(--line-height);margin:0}h2{font-size:1.75rem;font-weight:600;text-align:center}.tabs,h2{margin-bottom:1.5rem;margin-bottom:var(--spacing-lg)}.tabs{display:flex;flex-wrap:wrap;gap:.5rem;gap:var(--spacing-sm);justify-content:center}.tab{background-color:#2563eb;background-color:var(--color-primary);border:none;border-radius:.25rem;border-radius:var(--spacing-xs);color:#fff;cursor:pointer;font-size:.875rem;font-size:var(--font-size-sm);font-weight:500;padding:.5rem 1rem;padding:var(--spacing-sm) var(--spacing-md);transition:background-color .2s,transform .1s}.tab:hover:not(.active){background-color:#2563ebb3;background-color:var(--color-primary-70);transform:translateY(-2px)}.tab.active{background-color:#10b981;background-color:var(--color-secondary);box-shadow:0 1px 2px #0000000d;box-shadow:var(--shadow-sm);color:#fff}.alert{border-radius:.25rem;border-radius:var(--spacing-xs);margin:0 auto 1.5rem;margin:0 auto var(--spacing-lg);max-width:600px;padding:.5rem 1rem;padding:var(--spacing-sm) var(--spacing-md);text-align:center}.alert.error{background-color:#fee2e2;color:#dc2626;color:var(--color-error)}.alert.loading{background-color:#bfdbfe;color:#2563eb;color:var(--color-primary)}.form-container{background-color:#fff;background-color:var(--color-surface);border:1px solid #e5e7eb;border:1px solid var(--color-border);border-radius:.25rem;border-radius:var(--spacing-xs);box-shadow:0 1px 2px #0000000d;box-shadow:var(--shadow-sm);margin:0 auto 1.5rem;margin:0 auto var(--spacing-lg);max-width:600px;padding:1.5rem;padding:var(--spacing-lg)}.table-wrapper{margin-bottom:1.5rem;margin-bottom:var(--spacing-lg);overflow-x:auto}table{background-color:#fff;background-color:var(--color-surface);border-collapse:initial;border-spacing:0;box-shadow:0 1px 2px #0000000d;box-shadow:var(--shadow-sm);width:100%}td,th{padding:.5rem 1rem;padding:var(--spacing-sm) var(--spacing-md);text-align:left}thead th{background-color:#fff;background-color:var(--color-surface);border-bottom:2px solid #e5e7eb;border-bottom:2px solid var(--color-border);font-weight:600;position:sticky;top:0}tbody tr{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--color-border);transition:background-color .2s}tbody tr:nth-child(odd){background-color:#fafafa}tbody tr:hover{background-color:#f1f5f9}.empty{color:#4b5563;color:var(--color-subtext);margin-bottom:1.5rem;margin-bottom:var(--spacing-lg);text-align:center}.btn-add,.btn-delete{border:none;border-radius:.25rem;border-radius:var(--spacing-xs);cursor:pointer;font-size:.875rem;font-size:var(--font-size-sm);font-weight:500;padding:.25rem 1rem;padding:var(--spacing-xs) var(--spacing-md);transition:background-color .2s,transform .1s}.btn-delete{background-color:#dc2626;background-color:var(--color-error);color:#fff}.btn-delete:hover{background-color:#b91c1c;transform:translateY(-1px)}.add-button-wrapper{text-align:center}.btn-add{background-color:#10b981;background-color:var(--color-secondary);color:#fff}.btn-add:hover{background-color:#0f766e;transform:translateY(-1px)}@media (max-width:768px){.tabs{gap:.25rem;gap:var(--spacing-xs)}.tab,td,th{padding:.25rem .5rem;padding:var(--spacing-xs) var(--spacing-sm)}.tab{font-size:.875rem;font-size:var(--font-size-sm)}body{font-size:15px}}.table-wrapper::-webkit-scrollbar{height:8px}.table-wrapper::-webkit-scrollbar-track{background:#f3f4f6}.table-wrapper::-webkit-scrollbar-thumb{background-color:#e5e7eb;background-color:var(--color-border);border:2px solid #f3f4f6;border-radius:4px}.navbar{align-items:center;background-color:#1e90ff;border-radius:0;box-shadow:none;box-sizing:border-box;display:flex;justify-content:space-between;left:0;margin:0;padding:22px 30px;position:fixed;right:0;top:0;width:100vw;z-index:1000}.navbar .logo h1{color:#fff;font-family:Arial,sans-serif;font-size:20px;font-weight:700;margin:0}.nav-links{gap:20px;list-style-type:none;margin:0;padding:0}.nav-links,.nav-links li{align-items:center;display:flex}.logout-btn,.nav-links a{background:none;border:none;color:#fff;cursor:pointer;font-family:Arial,sans-serif;font-size:16px;font-weight:600;padding:0;text-decoration:none}.logout-btn:hover,.nav-links a:hover{color:gold}.logout-btn:focus{box-shadow:none;outline:none}#root,.App,body{margin:0;padding:0}.App{padding-top:74px}:root{--user-bg:#007bff;--bot-bg:#f1f1f1;--border-radius:16px;--font-family:"Segoe UI","Roboto",sans-serif}.chat-popup{bottom:90px;position:fixed;right:20px;z-index:1002}.chat-content{animation:fadeIn .25s ease-out;background:#fff;border-radius:16px;border-radius:var(--border-radius);box-shadow:0 8px 24px #00000026;display:flex;flex-direction:column;font-family:Segoe UI,Roboto,sans-serif;font-family:var(--font-family);max-height:540px;overflow:hidden;width:360px}@keyframes fadeIn{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.chat-window{background:#fff;flex:1 1;overflow-y:auto;padding:1rem}.chat-message{word-wrap:break-word;border-radius:12px;font-size:15px;line-height:1.5;margin-bottom:.75rem;max-width:80%;padding:.75rem 1rem}.chat-message.user{align-self:flex-end;background:#007bff;background:var(--user-bg);color:#fff}.chat-message.bot{align-self:flex-start;background:#f1f1f1;background:var(--bot-bg);color:#333}.child-selector-inside{margin-bottom:1rem}.child-selector-inside select{background:#fff;border:1px solid #ccc;border-radius:10px;font-size:15px;outline:none;padding:.6rem .75rem;transition:border .2s ease;width:100%}.child-selector-inside select:focus{border-color:#1e88e5;border-color:var(--primary-color)}.chat-input{background:#fafafa;border-top:1px solid #eee;display:flex;gap:.5rem;padding:.75rem}.chat-input input{background:#fff;border:1px solid #ccc;border-radius:10px;flex:1 1;font-size:15px;outline:none;padding:.75rem}.chat-input button{background:#1e88e5;background:var(--primary-color);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:15px;font-weight:500;padding:.75rem 1.2rem;transition:background .2s ease}.chat-input button:hover{background:#1669c0}.chat-close{background:#f5f5f5;border-top:1px solid #eee;color:#1e88e5;color:var(--primary-color);cursor:pointer;font-size:14px;padding:.6rem;text-align:center;transition:color .2s ease}.chat-close:hover{color:#0d47a1}@media (max-width:480px){.chat-content{bottom:80px;right:4vw;width:92vw}.chat-input button,.chat-input input,.child-selector-inside select{font-size:14px}}.chat-trigger-btn{align-items:center;background:#6c33f6;border-radius:50%;bottom:24px;box-shadow:0 4px 12px #0003;cursor:pointer;display:flex;height:60px;justify-content:center;position:fixed;right:24px;width:60px;z-index:1000}.chat-trigger-btn img{height:30px;width:30px}.chat-selector-box{background:#fff;border-radius:8px;bottom:100px;box-shadow:0 2px 8px #0003;padding:10px;position:fixed;right:24px;z-index:1001}.chat-selector-box select{border:1px solid #ccc;border-radius:6px;font-size:14px;padding:6px 10px}.dashboard{background-color:#f0f4f8;display:flex;padding:20px}.sidebar{align-items:stretch;background:linear-gradient(180deg,#2196f3 70%,#1565c0);border-radius:15px;box-shadow:0 6px 18px #2196f31a;padding:35px 0 24px;width:240px}.sidebar,.sidebar .profile{display:flex;flex-direction:column}.sidebar .profile{align-items:center;margin-bottom:26px}.sidebar .profile-img{border-radius:50%;box-shadow:0 2px 6px #00000014;height:64px;margin-bottom:10px;object-fit:cover;width:64px}.sidebar .profile h3{color:#fff;font-size:1.13rem;font-weight:600;letter-spacing:.3px;margin:0;text-align:center}.menu-list{display:flex;flex-direction:column;gap:18px;list-style:none;margin:0;padding:0}.menu-btn{background:#fff;border:none;border-radius:10px;box-shadow:0 1px 8px #1565d212;color:#1976d2;cursor:pointer;font-size:1.07rem;font-weight:700;letter-spacing:.04em;margin:0 auto;padding:16px 0;text-align:center;transition:background .18s,color .18s,box-shadow .13s;width:90%}.menu-btn.active,.menu-btn:hover{background:#e3f2fd;box-shadow:0 4px 16px #2196f326;color:#0d47a1;transform:scale(1.03)}.main-content{background-color:#fff;border-radius:8px;box-shadow:0 4px 8px #0000001a;flex:1 1;padding:20px}.status{display:flex;justify-content:space-between;margin-bottom:30px}.status-box{background-color:#007bff;border-radius:8px;color:#fff;flex-grow:1;margin:0 10px;padding:20px;text-align:center;transition:transform .3s}.status-box h3{font-size:20px;margin-bottom:10px}.status-box:hover{transform:scale(1.05)}.upcoming-appointment table{border-collapse:collapse;margin-top:30px;width:100%}.upcoming-appointment td,.upcoming-appointment th{border:1px solid #ddd;padding:12px;text-align:center}.upcoming-appointment th{background-color:#007bff;color:#fff}.upcoming-appointment td{background-color:#f9f9f9}.schedule-button{background-color:#28a745;border:none;border-radius:8px;color:#fff;cursor:pointer;display:block;font-size:18px;margin:30px auto 0;padding:15px;text-align:center;transition:background-color .3s;width:200px}.schedule-button:hover{background-color:#218838}@media (max-width:900px){.dashboard{flex-direction:column;padding:10px}.sidebar{align-items:flex-start;flex-direction:row;margin-bottom:18px;padding:18px 0 10px;width:100%}.main-content{padding:10px;width:100%}.sidebar .profile{align-items:center;flex-direction:row;margin-bottom:0;margin-right:24px}.sidebar .profile img{height:45px;margin-bottom:0;margin-right:10px;width:45px}.sidebar .profile h3{font-size:1rem;margin:0}.menu-list{flex-direction:row;gap:8px}.menu-btn{font-size:.98rem;padding:12px 16px;width:auto}}.schedule-appointment{background-color:#f9f9f9;border-radius:8px;margin:0 auto;max-width:600px;padding:20px}.schedule-appointment h2{margin-bottom:20px;text-align:center}.schedule-appointment form{display:flex;flex-direction:column}.schedule-appointment input{border:1px solid #ccc;border-radius:5px;margin:10px 0;padding:10px}.schedule-appointment button{background-color:#1e90ff;border:none;border-radius:5px;color:#fff;cursor:pointer;padding:10px}.schedule-appointment button:hover{background-color:#187bcd}:root{--primary-color:#1e88e5;--secondary-color:#6c757d;--bg-color:#f4f6f8;--card-bg:#fff;--font-family:"Segoe UI",Tahoma,Geneva,Verdana,sans-serif;--border-radius:8px;--transition-speed:0.3s}.settings-page{align-items:flex-start;background-color:#f4f6f8;background-color:var(--bg-color);display:flex;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-family:var(--font-family);justify-content:center;min-height:calc(100vh - 64px);padding:2rem 1rem}.settings-container{background-color:#fff;background-color:var(--card-bg);border-radius:8px;border-radius:var(--border-radius);box-shadow:0 4px 12px #0000000d;max-width:500px;padding:2rem;width:100%}.settings-container h2{color:#333;font-size:1.75rem;margin-bottom:1.5rem;text-align:center}.settings-form .form-group{margin-bottom:1.25rem}.settings-form label{color:#555;display:block;font-weight:600;margin-bottom:.5rem}.settings-form input{border:1px solid #ccd0d5;border-radius:8px;border-radius:var(--border-radius);font-size:1rem;padding:.75rem 1rem;transition:border-color .3s,box-shadow .3s;transition:border-color var(--transition-speed),box-shadow var(--transition-speed);width:100%}.settings-form input:focus{border-color:#1e88e5;border-color:var(--primary-color);box-shadow:0 0 0 3px #1e88e533;outline:none}.btn{border:none;border-radius:8px;border-radius:var(--border-radius);cursor:pointer;display:inline-block;font-size:1rem;font-weight:600;padding:.75rem 1.5rem;text-align:center;text-decoration:none;transition:background-color .3s,box-shadow .3s,transform .3s;transition:background-color var(--transition-speed),box-shadow var(--transition-speed),transform var(--transition-speed)}.btn-primary{background-color:#1e88e5;background-color:var(--primary-color);box-shadow:0 4px 8px #1e88e533;color:#fff}.btn-primary:hover{background-color:#1669bb;box-shadow:0 6px 12px #1e88e54d;transform:translateY(-1px)}.btn-secondary{background-color:#fff;background-color:var(--card-bg);border:1px solid #ccc;color:#333}.btn-secondary:hover{background-color:#e9ecef}.logout-button{margin-top:2rem;width:100%}@media (max-width:480px){.settings-container{padding:1rem}.btn{width:100%}}.add-child-container{background-color:#fefefe;border-radius:12px;box-shadow:0 4px 16px #0000001a;margin:40px auto;max-width:400px;padding:30px}.add-child-form{display:flex;flex-direction:column;gap:20px}.add-child-form label{color:#333;font-weight:600}.add-child-form input{border:1px solid #ccc;border-radius:8px;font-size:14px;padding:10px}.add-child-form button{background-color:#007bff;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:12px;transition:background-color .2s}.add-child-form button:hover{background-color:#0056b3}.message{color:green;font-size:14px;margin-top:12px;text-align:center}
/*# sourceMappingURL=main.16b18179.css.map*/