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}body{margin:0;padding:0}.App,body{overflow:hidden}.App{height:100vh;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:linear-gradient(135deg,#1e3a8a,#1e40af,#3b82f6);box-sizing:border-box;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);height:100vh;justify-content:space-between;padding:20px 20px 30px}.App-header,.notification-message{color:#fff;overflow:hidden;position:relative}.notification-message{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:20px;box-shadow:0 8px 32px #0000004d;font-size:22px;font-weight:500;line-height:1.6;margin:0 auto;max-width:900px;padding:40px 50px;text-align:center}.notification-message:before{background:linear-gradient(90deg,#10b981,#3b82f6,#8b5cf6);border-radius:16px 16px 0 0;content:"";height:3px;left:0;position:absolute;right:0;top:0}.notification-message:after{align-items:center;background:linear-gradient(135deg,#10b981,#3b82f6);border-radius:50%;box-shadow:0 4px 12px #0000004d;content:"📊";display:flex;font-size:20px;height:40px;justify-content:center;left:50%;position:absolute;top:-15px;transform:translateX(-50%);transition:transform .3s ease;width:40px}.notification-message:hover{box-shadow:0 12px 40px #0006;transform:translateY(-2px);transition:all .3s ease}.notification-message:hover:after{transform:translateX(-50%) scale(1.1)}.session-warning{animation:pulse 2s infinite;background:#ef444426;border:1px solid #ef444466;border-radius:12px;box-shadow:0 4px 16px #ef444433;color:#fecaca;font-size:16px;font-weight:600;margin-bottom:20px;max-width:600px;padding:16px 24px;text-align:center}@keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}.content-wrapper{align-items:center;display:flex;flex:1 1;flex-direction:column;justify-content:flex-start;padding-top:8vh;width:100%}.buttons-container{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin:20px auto 0;max-width:900px;padding:0 20px}.month-button{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:12px;box-shadow:0 4px 16px #0003;color:#fff;display:inline-block;font-size:16px;font-weight:600;overflow:hidden;padding:16px 24px;position:relative;text-align:center;text-decoration:none;transition:all .3s ease}.month-button:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.month-button:hover{background:#ffffff26;border-color:#fff6;box-shadow:0 8px 24px #0000004d;transform:translateY(-2px)}.month-button:hover:before{left:100%}.month-button:active{transform:translateY(0)}.app-footer{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:25px;box-shadow:0 4px 16px #0003;color:#fffc;display:flex;flex-shrink:0;font-size:15px;font-weight:500;gap:14px;margin-bottom:10px;margin-top:auto;max-width:600px;padding:14px 24px;transition:all .3s ease;width:auto}.app-footer:hover{background:#ffffff26;border-color:#ffffff4d;box-shadow:0 6px 20px #0000004d;transform:translateY(-2px)}.app-footer p{color:#fffffff2;font-size:16px;font-weight:500;margin:0;white-space:nowrap}.zalo-icon{align-items:center;background:linear-gradient(135deg,#0068ff,#00a8ff);border-radius:50%;box-shadow:0 2px 8px #0068ff4d;color:#fff;display:flex;height:32px;justify-content:center;text-decoration:none;transition:all .3s ease;width:32px}.zalo-icon:hover{background:linear-gradient(135deg,#0052cc,#08f);box-shadow:0 4px 12px #0068ff66;transform:scale(1.1)}.zalo-icon img{filter:brightness(0) invert(1);height:18px;width:18px}@media (max-width:1024px){.notification-message{font-size:20px;max-width:850px;padding:36px}.buttons-container{gap:18px;max-width:850px}.month-button{font-size:17px;padding:18px 26px}}@media (max-width:768px){.notification-message{font-size:18px;margin:0 16px;padding:28px 24px}.App-header{padding:16px 16px 25px}.content-wrapper{padding-top:6vh}.buttons-container{gap:16px;grid-template-columns:repeat(2,1fr);margin-top:25px;padding:0 16px}.month-button,.session-warning{font-size:15px;padding:14px 20px}.session-warning{margin-bottom:16px;max-width:90%}.app-footer{flex-wrap:wrap;font-size:14px;gap:12px;justify-content:center;margin-bottom:12px;margin-top:24px;max-width:500px;padding:14px 20px;width:calc(100% - 40px)}.app-footer p{font-size:15px;line-height:1.4;text-align:center}}@media (max-width:480px){.notification-message{font-size:16px;margin:0 12px;padding:24px 20px}.App-header{padding:12px 12px 20px}.content-wrapper{padding-top:4vh}.buttons-container{gap:12px;grid-template-columns:1fr;margin-top:20px;padding:0 12px}.month-button{font-size:14px;padding:12px 18px}.session-warning{font-size:14px;margin-bottom:14px;max-width:95%;padding:12px 16px}.app-footer{flex-wrap:wrap;font-size:13px;gap:10px;justify-content:center;margin-bottom:12px;margin-top:20px;max-width:400px;padding:12px 16px;width:calc(100% - 32px)}.app-footer p{font-size:14px;line-height:1.4;text-align:center}.zalo-icon{height:26px;width:26px}.zalo-icon img{height:14px;width:14px}}@media (max-width:320px){.notification-message{font-size:15px;margin:0 8px;padding:20px 16px}.App-header{padding:10px 10px 16px}.content-wrapper{padding-top:3vh}.buttons-container{gap:10px;margin-top:16px;padding:0 8px}.month-button{font-size:13px;padding:10px 14px}.session-warning{font-size:13px;margin-bottom:12px;padding:10px 12px}.app-footer{font-size:12px;gap:8px;margin-bottom:10px;margin-top:16px;max-width:300px;padding:10px 12px;width:calc(100% - 24px)}.app-footer p{font-size:13px;line-height:1.3;text-align:center}.zalo-icon{height:24px;width:24px}.zalo-icon img{height:12px;width:12px}}.detail-link{color:#60a5fa;font-size:.8em;margin-left:8px;text-decoration:none;transition:color .12s ease}.detail-link:hover{color:#93c5fd;text-decoration:underline}.sync-progress-message{color:#fbbf24;font-size:.9em;font-weight:500;margin:0;position:absolute;top:30vh}.button-container{align-items:center;display:flex;height:100vh;justify-content:center}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.sync-button{background:linear-gradient(135deg,#34d399,#60a5fa);border:none;border-radius:12px;color:#0b1220;cursor:pointer;font-size:22px;font-weight:700;margin-left:8px;margin-top:12px;padding:20px 32px;transition:transform .12s ease,filter .12s ease,opacity .12s ease}.sync-button:hover{filter:brightness(1.05);transform:translateY(-1px)}.sync-button:active{transform:translateY(0)}.sync-button:disabled{background:linear-gradient(135deg,#6b7280,#9ca3af);cursor:not-allowed;opacity:.4}.sync-button:disabled,.sync-button:disabled:hover{filter:none;transform:none}.login-page{align-items:center;background:radial-gradient(1200px 600px at 10% 10%,#6366f140,#6366f100 60%),radial-gradient(1000px 500px at 90% 30%,#14b8a640,#14b8a600 60%),linear-gradient(135deg,#0f172a,#111827);display:flex;justify-content:center;min-height:100vh}.login-card{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#111827b3;border-radius:16px;box-shadow:0 10px 30px #00000059;color:#e5e7eb;max-width:580px;padding:48px;width:100%}.login-brand{color:#a5b4fc;font-size:34px;font-weight:700;letter-spacing:.5px}.login-subtitle{color:#94a3b8;font-size:20px;margin-top:6px}.login-form{margin-top:24px}.form-field{display:flex;flex-direction:column;margin-bottom:16px}.form-field label{color:#cbd5e1;font-size:19px;margin-bottom:6px}.form-field input{background:#0206178c;border:1px solid #94a3b840;border-radius:10px;color:#e5e7eb;font-size:20px;height:64px;outline:none;padding:0 24px;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.form-field input::placeholder{color:#94a3b8}.form-field input:focus{background:#020617b3;border-color:#6366f1bf;box-shadow:0 0 0 3px #6366f140}.form-error{background:#ef44441f;border:1px solid #ef444459;border-radius:8px;color:#fecaca;font-size:14px;margin:6px 0 12px;padding:9px 12px}.login-button{background:linear-gradient(135deg,#818cf8,#22d3ee);border:none;border-radius:10px;box-shadow:0 8px 20px #22d3ee33;color:#0b1220;cursor:pointer;font-size:20px;font-weight:700;height:66px;letter-spacing:.3px;transition:transform .12s ease,filter .12s ease,box-shadow .12s ease;width:100%}.login-button:hover{filter:brightness(1.05);transform:translateY(-1px)}.login-button:active{filter:brightness(.98);transform:translateY(0)}.login-button:disabled{cursor:not-allowed;opacity:.6}.login-hint{color:#94a3b8;font-size:18px;margin-top:12px;text-align:center}@media (max-width:480px){.login-card{margin:0 14px;padding:24px}}
/*# sourceMappingURL=main.acf8dd81.css.map*/