.app-container{min-height:100vh;display:flex;flex-direction:column}.loading-screen{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#ffffff08;display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:9999}.spinner{width:50px;height:50px;border:5px solid #ccc;border-top:5px solid #007bff;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.content-container{flex:1}.content-container{padding:20px 20px 100px;display:flex;flex-direction:column;align-items:center}.content-container-usermanagement{padding:20px;display:flex;flex-direction:column;align-items:center}.page-title{margin-bottom:20px;color:#005e3f;font-size:28px;text-align:center}.form-container{min-width:600px;width:60%;background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;padding:20px;margin-top:20px}.form-container-userlist{min-width:600px;width:100%;background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;padding:20px;margin-top:20px}.form-title{font-size:24px;color:#005e3f;margin-bottom:50px;text-align:center}.filter-group{display:flex;justify-content:center;gap:10px;margin-bottom:20px}.filter-btn{padding:8px 16px;background-color:#f1f1f1;color:#005e3f;border:none;border-radius:4px;cursor:pointer;border:1px solid lightgray;font-weight:700}.filter-btn:hover{background-color:#91f54a;border:white;color:#005e3f}.filter-btn.active{background-color:#91f54a;border:1px solid #91f54a;color:#005e3f}.form-group{margin-bottom:15px}.form-label{display:block;margin-bottom:5px;font-weight:700}.form-input{width:100%;padding:8px;border-radius:4px;border:1px solid #ddd;box-sizing:border-box}.form-input:focus{border-color:#4caf50;outline:none;box-shadow:0 0 3px #4caf504d}.help-text{font-size:10px;color:gray}.submit-btn{padding:10px 20px;background-color:#91f54a;color:#005e3f;border:none;border-radius:4px;cursor:pointer;font-weight:700}.submit-btn:hover{background-color:#fff;border:1px solid #91f54a}.required{color:red}.loading{text-align:center;margin:20px 0;font-style:italic;color:#666}select.form-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23333' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:16px;padding-right:30px;cursor:pointer}select.form-input:hover{border-color:#aaa}select.form-input:focus{border-color:#4caf50;outline:none;box-shadow:0 0 3px #4caf504d}select.form-input option{padding:8px}select.form-input option:first-child{color:#666;font-style:italic}select.form-input:disabled{background-color:#f5f5f5;cursor:not-allowed;opacity:.7}.app-container{min-height:100vh;min-width:1100px;display:flex;flex-direction:column;background-color:#f5f5f5}.content-container{flex:1;padding:20px 20px 100px;display:flex;flex-direction:column;align-items:center}.token-controls{justify-content:space-between;align-items:center;text-align:right;gap:1rem}.token-btn{padding:6px 12px;background-color:#f1f1f1;color:#555;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:.9rem}.token-btn:hover{background-color:#e6e6e6;border-color:#ccc}.users-list{margin-top:20px;padding:15px;background-color:#fff;border-radius:4px;box-shadow:0 1px 3px #0000001a}.users-table{width:100%;border-collapse:collapse;margin-top:10px}.users-table th,.users-table td{padding:12px;text-align:left;border-bottom:1px solid #eee}.users-table th{background-color:#f8f9fa;font-weight:600}.users-table th.sortable{cursor:pointer}.users-table th.sortable:hover{background-color:#f0f0f0}.icon-button{margin:0 10px;border:none;cursor:pointer;padding:3px 6px;background-color:#fff;transform:scale(1.3)}.icon-button:hover{background-color:#f1f1f1;transform:scale(1.4)}.group-description{margin-top:1rem;padding:0 1rem;background-color:#f8f9fa;border-radius:4px;border:1px solid #dee2e6}.group-description h4{margin:0 0 .5rem;color:#2c3e50}.group-description p{margin:0 0 1rem;color:#6c757d}.group-rights{margin-top:.5rem}.group-rights h5{margin:0 0 .5rem;color:#2c3e50}.group-rights ul{margin:0;padding-left:1.5rem}.group-rights li{margin:.25rem 0;color:#495057}@supports (-moz-appearance: none){select.form-input{padding-right:30px}}@supports (-webkit-appearance: none){select.form-input{text-indent:1px;text-overflow:""}}@media (max-width: 480px){select.form-input,.form-input{font-size:16px}.form-container{padding:15px}.page-title{font-size:24px}}.app-header{width:100%;background-color:#005e3f;color:#fff;padding:10px 0;box-shadow:0 2px 4px #0000001a;position:sticky;top:0;z-index:1000}.header-content{max-width:1200px;margin:0 auto;padding:0 20px;display:flex;justify-content:space-between;align-items:center}.logo{font-size:20px;font-weight:700}.header-actions{display:flex;align-items:center;gap:15px}.header-title{font-size:1.5rem;color:#fff;font-weight:700;text-align:left;margin:0 0 0 10px;flex-grow:1}.header-link{text-decoration:none;color:inherit}.header-link:hover{text-decoration:underline}.header-username{font-size:14px;color:#fff}.logout-button{padding:8px 16px;background-color:#91f54a;color:#005e3f;border:1px solid #91f54a;border-radius:4px;cursor:pointer;font-weight:700;transition:background-color .2s}.logout-button:hover{background-color:#fff;color:#005e3f}@media (max-width: 600px){.header-content{flex-direction:column;gap:10px;padding:10px 20px}.header-actions{width:100%;justify-content:flex-end}}.app-footer{position:fixed;bottom:0;left:0;width:100%;background-color:#f5f5f5;border-top:1px solid #e0e0e0;padding:10px 0;z-index:1000}.footer-content{max-width:1200px;margin:0 auto;padding:0 20px;display:flex;flex-direction:column;align-items:center;text-align:center}.footer-links{margin-bottom:5px}.footer-link{color:#4caf50;text-decoration:none;margin:0 10px;font-size:14px}.footer-link:hover{text-decoration:underline}.footer-copyright{font-size:12px;color:#666}.version{font-size:12px;color:#666;margin:5px auto}@media (max-width: 600px){.footer-links{display:flex;flex-direction:column;gap:10px}.footer-link{margin:0}}
