.App{width:100vw;min-height:100vh;display:flex;flex-direction:column;background-color:#f0f0f0}.container{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;width:100%;box-sizing:border-box}@media (max-width: 768px){.container{padding:1rem}}.navbar{background-color:#1a1a1a;padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 4px #0000001a}.navbar-logo h1{color:#646cff;font-size:1.5rem;margin:0}.navbar-menu{list-style:none;display:flex;gap:1rem;margin:0;padding:0}.navbar-item{background:none;border:none;color:#ffffffde;font-size:1rem;cursor:pointer;padding:.5rem 1rem;border-radius:4px;transition:all .2s ease}.navbar-item:hover{color:#646cff;background-color:#646cff1a}.navbar-item.active{color:#646cff;background-color:#646cff1a;border:1px solid #646cff}.logout-button{color:#ff6b6b}.logout-button:hover{color:#ff5252;background-color:#ff6b6b1a}@media (max-width: 768px){.navbar{flex-direction:column;padding:1rem}.navbar-logo h1{font-size:1.2rem;margin-bottom:1rem}.navbar-menu{flex-wrap:wrap;justify-content:center}.navbar-item{font-size:.9rem;padding:.4rem .8rem}}.register-container{max-width:500px;width:100%;padding:2rem;background-color:#f9f9f9;border-radius:8px;box-shadow:0 2px 10px #0000001a}.register-container h2{color:#213547;margin-bottom:1.5rem;text-align:center}.register-form{display:flex;flex-direction:column;gap:1rem}.login-link{margin-top:1rem;text-align:center;color:#213547}@media (max-width: 768px){.register-container{padding:1.5rem;margin:1rem}.register-container h2{font-size:1.5rem}.form-group input,.submit-button{padding:.7rem;font-size:.9rem}}.login-container{max-width:500px;width:100%;padding:2rem;background-color:#f9f9f9;border-radius:8px;box-shadow:0 2px 10px #0000001a}.login-container h2{color:#213547;margin-bottom:1.5rem;text-align:center}.login-form{display:flex;flex-direction:column;gap:1rem}.register-link{margin-top:1rem;text-align:center;color:#213547}.link-button{background:none;border:none;color:#646cff;text-decoration:underline;cursor:pointer;font-size:1rem;padding:0;margin-left:.5rem}.link-button:hover{color:#535bf2}@media (max-width: 768px){.login-container{padding:1.5rem;margin:1rem}.login-container h2{font-size:1.5rem}.form-group input,.submit-button{padding:.7rem;font-size:.9rem}}.token-container{max-width:500px;width:100%;padding:2rem;background-color:#f9f9f9;border-radius:8px;box-shadow:0 2px 10px #0000001a}.token-container h2{color:#213547;margin-bottom:1.5rem;text-align:center}.token-form{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.form-group input{padding:.8rem;border:1px solid #ddd;border-radius:4px;font-size:1rem}.form-group input:focus{outline:none;border-color:#646cff;box-shadow:0 0 0 2px #646cff33}.success-message{background-color:#e6f7ee;color:#2e7d32;padding:.8rem;border-radius:4px;margin-bottom:1rem}.token-result{margin-top:2rem;padding:1.5rem;background-color:#f0f0f0;border-radius:4px}.token-result h3{color:#213547;margin-bottom:1rem}.token-value{background-color:#fff;padding:1rem;border-radius:4px;border:1px solid #ddd;font-family:monospace;font-size:.9rem;word-break:break-all;margin-bottom:1rem}.copy-button{background-color:#4caf50;color:#fff;padding:.6rem 1.2rem;border:none;border-radius:4px;font-size:.9rem;cursor:pointer;transition:background-color .2s ease}.copy-button:hover{background-color:#45a049}@media (max-width: 768px){.token-container{padding:1.5rem;margin:1rem}.token-container h2{font-size:1.5rem}.form-group input,.submit-button{padding:.7rem;font-size:.9rem}.token-result{padding:1.2rem}.token-value{padding:.8rem;font-size:.8rem}.copy-button{padding:.5rem 1rem;font-size:.8rem}}.user-counts-container{max-width:500px;width:100%;padding:2rem;background-color:#f9f9f9;border-radius:8px;box-shadow:0 2px 10px #0000001a}.user-counts-container h2{color:#213547;margin-bottom:1.5rem;text-align:center}.counts-card{background-color:#fff;padding:2rem;border-radius:8px;box-shadow:0 1px 3px #0000001a}.counts-card h3{color:#213547;margin-bottom:1.5rem;text-align:center}.loading{text-align:center;color:#666;padding:2rem}.counts-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:2rem}.count-item{background-color:#f0f0f0;padding:1.5rem;border-radius:8px;text-align:center}.count-label{color:#666;font-size:.9rem;margin-bottom:.5rem}.count-value{color:#213547;font-size:2rem;font-weight:700}.refresh-button{background-color:#646cff;color:#fff;padding:.8rem;border:none;border-radius:4px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .2s ease;width:100%}.refresh-button:hover{background-color:#535bf2}.refresh-button:disabled{background-color:#a3a6ff;cursor:not-allowed}@media (max-width: 768px){.user-counts-container{padding:1.5rem;margin:1rem}.user-counts-container h2{font-size:1.5rem}.counts-card{padding:1.5rem}.counts-card h3{font-size:1.2rem}.counts-grid{grid-template-columns:1fr;gap:1rem}.count-item{padding:1.2rem}.count-value{font-size:1.8rem}.refresh-button{padding:.7rem;font-size:.9rem}}.ai-analysis-container{max-width:500px;width:100%;padding:2rem;background-color:#f9f9f9;border-radius:8px;box-shadow:0 2px 10px #0000001a}.ai-analysis-container h2{color:#213547;margin-bottom:1.5rem;text-align:center}.ai-analysis-form{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.analysis-result{margin-top:2rem;padding:1.5rem;background-color:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a}.analysis-result h3{color:#213547;margin-bottom:1rem}.analysis-content{color:#333;line-height:1.6;white-space:pre-wrap}@media (max-width: 768px){.ai-analysis-container{padding:1.5rem;margin:1rem}.ai-analysis-container h2{font-size:1.5rem}.form-group select,.submit-button{padding:.7rem;font-size:.9rem}.analysis-result{padding:1.2rem}.analysis-result h3{font-size:1.2rem}.analysis-content{font-size:.9rem}}.ai-detailed-analysis-container{max-width:500px;width:100%;padding:2rem;background-color:#f9f9f9;border-radius:8px;box-shadow:0 2px 10px #0000001a}.ai-detailed-analysis-container h2{color:#213547;margin-bottom:1.5rem;text-align:center}.ai-detailed-analysis-form{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{color:#213547;font-weight:500}.form-group select{padding:.8rem;border:1px solid #ddd;border-radius:4px;font-size:1rem;background-color:#fff}.form-group select:focus{outline:none;border-color:#646cff;box-shadow:0 0 0 2px #646cff33}.submit-button{background-color:#646cff;color:#fff;padding:.8rem;border:none;border-radius:4px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .2s ease}.submit-button:hover{background-color:#535bf2}.submit-button:disabled{background-color:#a3a6ff;cursor:not-allowed}.error-message{background-color:#fee;color:#d32f2f;padding:.8rem;border-radius:4px;margin-bottom:1rem}.detailed-analysis-result{margin-top:2rem;padding:1.5rem;background-color:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a}.detailed-analysis-result h3{color:#213547;margin-bottom:1rem}.detailed-analysis-content{color:#333;line-height:1.6;white-space:pre-wrap;max-height:400px;overflow-y:auto}@media (max-width: 768px){.ai-detailed-analysis-container{padding:1.5rem;margin:1rem}.ai-detailed-analysis-container h2{font-size:1.5rem}.form-group select,.submit-button{padding:.7rem;font-size:.9rem}.detailed-analysis-result{padding:1.2rem}.detailed-analysis-result h3{font-size:1.2rem}.detailed-analysis-content{font-size:.9rem;max-height:300px}}:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;padding:0;min-width:320px;min-height:100vh;box-sizing:border-box}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}@media (max-width: 768px){h1{font-size:2.4em}button{padding:.5em 1em;font-size:.9em}}
