:root{--bg-primary:#f8fafc;--text-heading:#0f172a;--text-primary:#334155;--text-secondary:#64748b;--border-color:#e2e8f0;--button-primary:#2563eb;--button-primary-hover:#0056b3;--button-danger:#e74c3c;--button-danger-hover:#c0392b;--white:#fff}*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f8fafc;background-color:var(--bg-primary);color:#334155;color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0;min-height:100vh}h1,h2,h3,h4,h5,h6{color:#0f172a;color:var(--text-heading);margin:.5em 0}h1{font-size:2em}h1,h2{font-weight:700}h2{font-size:1.5em}h3{font-size:1.25em;font-weight:700}p{color:#334155;color:var(--text-primary);margin:.5em 0}.Ballot,.container,.dashboardContainer,.delegate-container,.logs-container,.register-container{background-color:#f8fafc;background-color:var(--bg-primary);color:#334155;color:var(--text-primary);font-family:Arial,sans-serif;margin:0 auto;max-width:800px;padding:20px;text-align:center}.register-container{background-color:#fff;background-color:var(--white);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:16px;box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05);margin:5vh auto;padding:48px 40px;text-align:left;transition:box-shadow .3s ease,border-color .3s ease;width:clamp(400px,66.67vw,1200px)}.register-container:has(.input-field:focus){border-color:#2563eb;border-color:var(--button-primary);box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05),0 0 0 4px rgba(37,99,235,.15)}.register-container h1{color:#0f172a;color:var(--text-heading);font-size:2rem;font-weight:700;margin-bottom:32px;margin-top:0;text-align:center}.Ballot,.delegate-container,.logs-container{border-radius:8px;box-shadow:none}.button,.register-button,.sidebar-button,.submit-button{background-color:#2563eb;background-color:var(--button-primary);border:none;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,.12),0 1px 2px rgba(0,0,0,.24);color:#fff;color:var(--white);cursor:pointer;font-size:1rem;font-weight:600;letter-spacing:.5px;margin:0;outline:none;padding:12px 24px;transition:background-color .2s ease,transform .1s ease,box-shadow .3s ease;width:-webkit-fit-content;width:fit-content}.register-container .button,.register-container .register-button{display:block;margin:32px auto 0;width:-webkit-fit-content;width:fit-content}.register-container .button-container{align-items:center}.button:hover,.register-button:hover,.submit-button:hover{background-color:#0056b3;background-color:var(--button-primary-hover);box-shadow:0 4px 12px rgba(37,99,235,.3),0 2px 4px rgba(37,99,235,.2);transform:translateY(-1px)}.button:active,.register-button:active,.submit-button:active{box-shadow:0 1px 2px rgba(0,0,0,.15);transform:scale(.98) translateY(0)}.button-container{display:flex;flex-direction:column;margin-top:32px}.button-link{display:inline-block;text-align:center;text-decoration:none;width:-webkit-fit-content;width:fit-content}.button-link.button-secondary,.button-secondary{background-color:#fff;background-color:var(--white);border:2px solid #2563eb!important;border:2px solid var(--button-primary)!important;box-shadow:0 1px 3px rgba(0,0,0,.12),0 1px 2px rgba(0,0,0,.24);color:#2563eb;color:var(--button-primary);transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .1s ease,box-shadow .3s ease}.button-link.button-secondary:hover,.button-secondary:hover{background-color:rgba(37,99,235,.05);border-color:#0056b3;border-color:var(--button-primary-hover);box-shadow:0 4px 12px rgba(37,99,235,.25),0 2px 4px rgba(37,99,235,.15);color:#0056b3;color:var(--button-primary-hover);transform:translateY(-1px)}.button-link.button-secondary:active,.button-secondary:active{box-shadow:0 1px 2px rgba(0,0,0,.15);transform:scale(.98) translateY(0)}.button-wrapper{align-items:center;gap:12px;max-width:300px}.button-wrapper,.input-container{display:flex;justify-content:center;width:100%}.input-container{align-items:flex-start;flex-direction:column;margin-bottom:24px}.admin-create-form .input-container,.register-container .input-container{margin-left:auto;margin-right:auto;width:50%}.input-label{color:#0f172a;color:var(--text-heading);display:block;font-size:.875rem;font-weight:600;margin-bottom:8px}.input-field{background-color:#fff;background-color:var(--white);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:8px;color:#334155;color:var(--text-primary);display:flex;font-size:16px;margin-top:0;padding:12px 16px;text-align:left;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.input-field:focus{border-color:#2563eb;border-color:var(--button-primary);box-shadow:0 0 0 3px rgba(37,99,235,.2),0 0 0 6px rgba(37,99,235,.1),0 0 20px rgba(37,99,235,.15);outline:none}.input-field:hover{border-color:#64748b;border-color:var(--text-secondary)}.input-field.input-error{border-color:#dc2626;box-shadow:0 0 0 3px rgba(220,38,38,.1)}.input-field.input-error:focus{border-color:#dc2626;box-shadow:0 0 0 3px rgba(220,38,38,.2),0 0 0 6px rgba(220,38,38,.1)}.helper-text{color:#64748b;color:var(--text-secondary)}.error-message,.helper-text{font-size:.75rem;margin-top:6px;text-align:left}.error-message{animation:fadeIn .2s ease-in;color:#dc2626;display:block}.error-message.general-error{background-color:#fef2f2;border:1px solid #fecaca;border-radius:6px;color:#991b1b;font-size:.875rem;margin-bottom:16px;padding:12px 16px}.loading{color:#334155;color:var(--text-primary)}.loading,.text-center{text-align:center}.text-heading{color:#0f172a;color:var(--text-heading)}.text-primary{color:#334155;color:var(--text-primary)}.bg-primary{background-color:#f8fafc;background-color:var(--bg-primary)}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.button-container{align-items:center;flex-direction:row;gap:12px;justify-content:center}.primary-loginbutton{background-color:#2563eb!important;color:#fff!important;padding:12px 24px;width:-webkit-fit-content!important;width:fit-content!important}.primary-loginbutton:hover{background-color:#0056b3!important}.secondary-loginbutton{background-color:#fff!important;border:2px solid #2563eb!important;color:#2563eb!important;padding:12px 24px;width:-webkit-fit-content!important;width:fit-content!important}.secondary-loginbutton:hover{background-color:rgba(37,99,235,.05)!important;border-color:#0056b3!important;color:#0056b3!important}.demo-accounts-info{background-color:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;margin-top:32px;padding:20px}.demo-accounts-info h3{color:#333;font-size:1.1rem;margin:0 0 16px}.demo-account-list{display:flex;flex-direction:column;gap:12px}.demo-account-item{background-color:#fff;border:1px solid #e0e0e0;border-radius:6px;color:#555;font-size:.9rem;padding:10px}.demo-account-item strong{color:#2563eb;display:block;margin-bottom:8px;margin-right:8px}.demo-account-credential{font-size:.9em;line-height:1.6;margin-top:6px}.demo-account-item code{background-color:#f0f0f0;border-radius:4px;color:#d63384;font-family:Courier New,monospace;font-size:.9em;font-weight:600;padding:2px 6px}.password-input-wrapper{position:relative;width:100%}.password-input-wrapper .input-field{padding-right:48px}.password-toggle-button{align-items:center;background:none;border:none;color:var(--text-secondary);cursor:pointer;display:flex;justify-content:center;padding:8px;position:absolute;right:12px;top:50%;transform:translateY(-50%);transition:color .2s ease;z-index:1}.password-toggle-button:hover{color:var(--text-heading)}.password-toggle-button:focus{color:var(--button-primary);outline:none}@media (max-width:640px){.register-container{margin:2vh auto;padding:32px 24px;width:clamp(300px,calc(100% - 32px),100%)}.register-container h1{font-size:1.75rem;margin-bottom:24px}.demo-accounts-info{margin-top:24px;padding:16px}.demo-account-item{font-size:.85rem;padding:8px}}.confirm-dialog-overlay{align-items:center;animation:fadeIn .2s ease-in-out;background-color:rgba(0,0,0,.5);bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.confirm-dialog{animation:slideUp .2s ease-out;background:#fff;border-radius:8px;box-shadow:0 4px 6px rgba(0,0,0,.1),0 2px 4px rgba(0,0,0,.06);max-width:400px;padding:24px;width:90%}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.confirm-dialog-title{color:#1f2937;color:var(--text-primary,#1f2937);font-size:1.25rem;font-weight:600;margin:0 0 16px}.confirm-dialog-message{color:#6b7280;color:var(--text-secondary,#6b7280);line-height:1.5;margin:0 0 24px}.confirm-dialog-buttons{display:flex;gap:12px;justify-content:flex-end}.confirm-dialog-button{border:none;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:500;padding:10px 20px;transition:all .2s}.confirm-dialog-cancel{background-color:#f3f4f6;color:#374151}.confirm-dialog-cancel:hover{background-color:#e5e7eb}.confirm-dialog-confirm{color:#fff}.confirm-dialog-default{background-color:#2563eb}.confirm-dialog-default:hover{background-color:#1d4ed8}.confirm-dialog-danger{background-color:#dc3545}.confirm-dialog-danger:hover{background-color:#c82333}.confirm-dialog-warning{background-color:#ffc107;color:#000}.confirm-dialog-warning:hover{background-color:#e0a800}.dashboard-card{background-color:var(--white);border:1px solid var(--border-color);border-radius:clamp(12px,2vw,16px);box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05);margin:0 auto;max-width:600px;padding:clamp(24px,5vw,40px);text-align:center}.dashboardText{color:var(--text-heading);font-size:clamp(1.5rem,4vw,2rem);font-weight:700;margin-bottom:clamp(20px,3vw,32px);margin-top:0}.dashboard-info-section{border-top:1px solid var(--border-color);display:flex;flex-direction:column;gap:clamp(8px,1.5vw,12px);padding-top:clamp(16px,3vw,24px);text-align:left}.dashboardInfo{color:var(--text-primary);font-size:clamp(1rem,2vw,1.1rem);margin:0}.dashboard-vote-button{align-self:flex-start;display:inline-block;font-size:clamp(.85rem,1.5vw,.9rem);margin-top:clamp(8px,1.5vw,12px);padding:clamp(8px,1.5vw,10px) clamp(16px,3vw,24px);width:auto}.dashboard-thanks{color:var(--text-primary);font-size:clamp(1rem,2vw,1.1rem);font-style:italic;margin:clamp(12px,2vw,16px) 0 0;text-align:center}.election-status-title{color:var(--text-heading);font-size:clamp(1.1rem,2.5vw,1.3rem);font-weight:600;margin:0 0 clamp(12px,2vw,16px)}.election-status-pill-container{align-items:center;display:flex;margin-bottom:clamp(12px,2vw,16px)}.status-pill{border-radius:clamp(16px,3vw,20px);display:inline-block;font-size:clamp(.8rem,1.5vw,.9rem);font-weight:600;letter-spacing:.5px;padding:clamp(6px,1vw,8px) clamp(12px,2vw,16px);text-transform:uppercase}.status-pill.status-active{background-color:#d1fae5;border:1px solid #10b981;color:#065f46}.status-pill.status-inactive{background-color:#fee2e2;border:1px solid #dc2626;color:#991b1b}.election-buttons{align-items:center;display:flex;flex-wrap:wrap;gap:clamp(8px,1.5vw,12px);justify-content:center;margin-top:clamp(16px,2.5vw,20px);width:100%}.election-buttons .election-button{box-sizing:border-box;flex:1 1;font-size:clamp(.9rem,2vw,1rem);height:100%;max-width:clamp(180px,30vw,220px);min-height:clamp(40px,5vw,48px);min-width:clamp(140px,22vw,180px);padding:clamp(10px,1.5vw,12px) clamp(16px,3vw,24px)}.election-button:disabled{cursor:not-allowed;opacity:.5}.voter-status-section{border-top:1px solid var(--border-color);display:flex;flex-direction:column;gap:clamp(12px,2vw,16px);margin-top:clamp(16px,3vw,24px);padding-top:clamp(16px,3vw,24px)}.dashboard-thanks-wrapper{display:flex;flex-direction:column;justify-content:flex-start;margin-top:clamp(12px,2vw,24px)}.admin-election-control-section{border-top:1px solid var(--border-color);margin-top:clamp(16px,3vw,24px);padding-top:clamp(16px,3vw,24px)}.admin-election-control-section .election-buttons{margin-top:clamp(12px,2vw,16px)}.password-help{animation:fadeIn .2s ease-in;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;margin-top:.5rem;padding:1rem;text-align:left}.password-help-login{padding:.75rem}.password-help-login .password-help-header{margin-bottom:0}.password-help-login .password-help-title{font-size:.8125rem;margin-bottom:.375rem}.password-help-login .password-progress-text{font-size:.75rem;font-weight:500;margin-top:.25rem}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.password-help-header{margin-bottom:.75rem}.password-help-title{color:#374151;display:block;font-size:.875rem;font-weight:600;margin-bottom:.5rem}.password-progress-bar{background-color:#e5e7eb;border-radius:4px;height:8px;margin-bottom:.5rem;overflow:hidden;width:100%}.password-progress-fill{border-radius:4px;height:100%;transition:width .3s ease,background-color .3s ease}.password-progress-text{color:#6b7280;display:block;font-size:.75rem;margin-top:.25rem}.password-help-list{list-style:none;margin:0;padding:0}.password-help-item{align-items:center;color:#6b7280;display:flex;font-size:.875rem;margin-bottom:.5rem;transition:color .2s ease}.password-help-item:last-child{margin-bottom:0}.password-help-item.passed{color:#10b981}.password-help-icon{align-items:center;color:#9ca3af;display:inline-flex;font-size:.875rem;font-weight:700;height:1.25rem;justify-content:center;margin-right:.5rem;transition:color .2s ease;width:1.25rem}.password-help-item.passed .password-help-icon{color:#10b981}@media (max-width:640px){.password-help{padding:.75rem}.password-help-item,.password-help-title{font-size:.8125rem}}.candidates-container,.parties-container{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(clamp(150px,18vw,220px),1fr));padding:0 1rem;width:100%}.candidate-ballot,.party-ballot{align-items:center;background:#fff;border:1px solid var(--border-color);border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.08);cursor:pointer;display:flex;flex-direction:column;justify-content:center;padding:1rem .75rem;transition:all .3s ease;width:100%}.candidate-ballot:hover,.party-ballot:hover{border-color:var(--button-primary);box-shadow:0 4px 12px rgba(37,99,235,.15);transform:translateY(-2px)}.candidate-ballot.selected,.party-ballot.selected{background:rgba(37,99,235,.05);border-color:var(--button-primary);box-shadow:0 2px 12px rgba(37,99,235,.2)}.candidate-ballot label,.party-ballot label{word-wrap:break-word;color:var(--text-heading);cursor:pointer;font-size:.85rem;font-weight:500;line-height:1.3;margin-top:0;text-align:center}.candidate-ballot input[type=number],.party-ballot input[type=number]{background:var(--bg-primary);border:1px solid #cbd5e1;border-radius:8px;color:var(--text-heading);font-size:18px;font-weight:600;height:40px;margin-bottom:0;text-align:center;transition:all .2s ease;width:40px}.candidate-ballot input[type=number]:focus,.party-ballot input[type=number]:focus{background:#fff;border-color:var(--button-primary);box-shadow:0 0 0 3px rgba(37,99,235,.1);outline:none}.candidate-ballot input[type=number]:hover,.party-ballot input[type=number]:hover{background:#fff;border-color:#94a3b8}.submit-button{background-color:var(--button-primary);border:none;border-radius:8px;box-shadow:0 2px 8px rgba(37,99,235,.2);color:#fff;cursor:pointer;display:block;font-size:1rem;font-weight:600;letter-spacing:.5px;margin:2rem auto 0;padding:12px 24px;transition:all .3s ease;width:-webkit-fit-content;width:fit-content}.submit-button:hover:not(:disabled){background-color:var(--button-primary-hover);box-shadow:0 4px 16px rgba(37,99,235,.3);transform:translateY(-2px)}.submit-button:active:not(:disabled){box-shadow:0 2px 8px rgba(37,99,235,.2);transform:translateY(0)}.submit-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.ballot-instructions{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;margin-bottom:clamp(24px,4vw,3rem);padding:clamp(16px,3vw,24px);text-align:left}.ballot-instructions h3{color:var(--text-heading);font-size:clamp(1.1rem,2.5vw,1.3rem);font-weight:600;margin:0 0 clamp(12px,2vw,16px)}.ballot-instruction-list{color:var(--text-primary);margin:clamp(12px,2vw,16px) 0;padding-left:clamp(20px,3vw,24px)}.ballot-instruction-list li{font-size:clamp(.9rem,1.8vw,1rem);line-height:1.6;margin-bottom:clamp(8px,1.5vw,12px)}.ballot-instruction-list li strong{color:var(--text-heading);font-weight:600}.ballot-description{color:var(--text-secondary);font-size:.9rem;margin-bottom:1rem}.ballot-divider{background:var(--border-color);height:1px;margin:3rem 0;position:relative;width:100%}.ballot-divider:after,.ballot-divider:before{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:50%;content:"";height:10px;position:absolute;top:50%;transform:translateY(-50%);width:10px}.ballot-divider:before{left:-5px}.ballot-divider:after{right:-5px}.ballot-button{min-width:-webkit-fit-content;min-width:fit-content;padding:clamp(.5rem,1.5vw,.75rem) clamp(1rem,3vw,1.5rem);width:auto}.ballot-clear-button{background-color:#dc2626!important;border:1px solid #dc2626!important;color:#fff!important}.ballot-clear-button:hover:not(:disabled){background-color:#b91c1c!important;border-color:#b91c1c!important}.ballot-thanks-message{background:var(--bg-primary);border:2px solid var(--button-primary);border-radius:16px;box-shadow:0 4px 12px rgba(37,99,235,.15);padding:clamp(3rem,8vw,5rem) clamp(1.5rem,4vw,3rem);text-align:center}.ballot-thanks-message h1{color:var(--button-primary);font-size:clamp(2rem,5vw,3rem);font-weight:700;margin-bottom:clamp(1rem,3vw,1.5rem)}.ballot-thanks-message .ballot-description{color:var(--text-primary);font-size:clamp(1rem,2.5vw,1.25rem);line-height:1.6;margin-bottom:clamp(.75rem,2vw,1rem)}.delegate-row{align-items:center;background:var(--bg-primary);border:1px solid #e2e8f0;border-radius:6px;display:flex;justify-content:space-between;margin-bottom:.75rem;padding:1rem}.results-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,.1);margin-bottom:2rem;padding:2rem}.results-card h2{color:var(--text-heading);margin-bottom:1.5rem;margin-top:0}.results-list{display:flex;flex-direction:column;gap:.75rem}.no-results{color:var(--text-primary);font-style:italic;padding:1rem;text-align:center}.admin-management-container{margin:0 auto;max-width:1200px;padding:2rem}.admin-management-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.admin-management-header h1{color:var(--text-heading);margin:0}.admin-create-form{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,.1);margin-bottom:2rem;padding:2rem}.admin-create-form h2{color:var(--text-heading);margin-bottom:1.5rem;margin-top:0}.accounts-section{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,.1);margin-bottom:2rem;padding:2rem}.accounts-section h2{color:var(--text-heading);margin-bottom:1.5rem;margin-top:0}.accounts-list{display:flex;flex-direction:column;gap:1rem}.account-item{align-items:center;background:var(--bg-primary);border:1px solid #e2e8f0;border-radius:6px;display:flex;justify-content:space-between;padding:1rem}.account-info{align-items:flex-start;display:flex;flex-direction:column;gap:.25rem}.account-username{color:var(--text-heading);font-weight:600}.account-email{color:var(--text-primary);font-size:.9rem}.no-accounts{color:var(--text-primary);font-style:italic;padding:1rem}.admin-create-button{margin:2rem!important;min-width:-webkit-fit-content;min-width:fit-content;padding:.75rem 1.5rem;width:auto}.admin-reset-button{padding:.75rem 1.5rem;width:-webkit-fit-content;width:fit-content}.admin-delete-button{background-color:#dc2626!important;border:1px solid #dc2626!important;color:#fff!important;margin-left:1rem;margin:1rem 1rem 1rem 0!important;min-width:-webkit-fit-content;min-width:fit-content;padding:.75rem 1.5rem;width:auto}.admin-delete-button:hover{background-color:#b91c1c!important;border-color:#b91c1c!important}.search-container{align-items:center;display:flex;flex-direction:column}.search-bar{margin-bottom:20px}.logs-table{display:flex;flex-direction:column}.navbar-overlay{display:none}@media (max-width:768px){.navbar-overlay{background-color:rgba(0,0,0,.5);display:block;height:100%;left:0;position:fixed;top:0;width:100%;z-index:998}}.navbar{background-color:var(--bg-primary);box-shadow:0 2px 4px rgba(0,0,0,.1);color:var(--text-primary);padding:clamp(.75rem,2vw,1rem) clamp(1rem,4vw,2rem);position:-webkit-sticky;position:sticky;top:0;width:100%;z-index:1000}.navbar-content{align-items:center;container-name:navbar;container-type:inline-size;display:flex;gap:2rem;justify-content:space-between;margin:0 auto;max-width:1200px;position:relative}.navbar-burger{display:none}.navbar-menu{gap:2rem;justify-content:space-between}.navbar-menu,.navbar-navigation{align-items:center;display:flex;flex:1 1}.navbar-navigation{gap:1rem;justify-content:center}.navbar-nav-link{border-radius:6px;color:var(--text-primary);font-size:.95rem;font-weight:500;padding:.5rem 1rem;text-decoration:none;transition:background-color .2s ease,color .2s ease;white-space:nowrap}.navbar-nav-link:hover{background-color:rgba(37,99,235,.1);color:var(--button-primary)}.navbar-nav-link.active{border-bottom:2px solid var(--button-primary);border-radius:0;color:var(--button-primary);font-weight:600;padding-bottom:.3rem}.navbar-nav-link.active:hover{background-color:transparent;color:var(--button-primary)}.navbar-brand h2{color:var(--text-heading);font-size:1.5rem;font-weight:700;margin:0}.navbar-user{align-items:center;display:flex;gap:1rem}.navbar-username{color:var(--text-primary);font-size:1rem}.navbar-logout-button{background-color:transparent;border:none;border-radius:6px;color:var(--text-secondary);cursor:pointer;font-size:.9rem;font-weight:400;padding:.5rem 1rem;text-decoration:none;transition:color .2s ease,background-color .2s ease}.navbar-logout-button:hover{background-color:rgba(0,0,0,.05);color:var(--text-primary)}.navbar-logout-button:active{background-color:rgba(0,0,0,.1)}.navbar-close-button{align-items:center;background:transparent;border:none;border-radius:50%;color:var(--text-primary);cursor:pointer;display:none;font-size:2rem;height:2.5rem;justify-content:center;line-height:1;padding:.5rem;position:absolute;right:1rem;top:1rem;transition:background-color .2s ease,color .2s ease;width:2.5rem;z-index:1000}.navbar-close-button:hover{background-color:rgba(0,0,0,.1);color:var(--button-primary)}.navbar-close-button:active{background-color:rgba(0,0,0,.2)}.close-icon{font-size:2rem;font-weight:300;line-height:1}@container navbar (max-width: 768px){.navbar-burger{background:transparent;border:none;cursor:pointer;display:flex;flex-direction:column;height:2rem;justify-content:space-around;padding:0;width:2rem;z-index:10}.burger-line{background-color:var(--text-primary);border-radius:10px;height:.25rem;position:relative;transform-origin:1px;transition:all .3s linear;width:2rem}.burger-line.open:first-child{transform:rotate(45deg)}.burger-line.open:nth-child(2){opacity:0;transform:translateX(20px)}.burger-line.open:nth-child(3){transform:rotate(-45deg)}.navbar-menu{align-items:flex-start;background-color:var(--bg-primary);box-shadow:2px 0 10px rgba(0,0,0,.1);flex-direction:column;gap:2rem;height:100vh;justify-content:flex-start;left:0;overflow-y:auto;padding:5rem 2rem 2rem;position:fixed;top:0;transform:translateX(-100%);transition:transform .3s ease-in-out;width:clamp(250px,85vw,300px);z-index:999}.navbar-close-button{display:flex}.navbar-menu.open{transform:translateX(0)}.navbar-navigation{align-items:flex-start;flex:0 1;flex-direction:column;gap:.5rem;width:100%}.navbar-nav-link{border-radius:6px;padding:1rem;text-align:left;width:100%}.navbar-nav-link.active{border-bottom:none;border-left:3px solid var(--button-primary);padding-left:calc(1rem - 3px)}.navbar-user{align-items:flex-start;border-top:1px solid rgba(0,0,0,.1);flex-direction:column;gap:1rem;padding-top:1rem;width:100%}.navbar-username{font-size:1rem}.navbar-logout-button{padding:1rem;text-align:left;width:100%}.navbar-brand h2{font-size:clamp(1rem,4vw,1.5rem)}}@container navbar (max-width: 480px){.navbar-menu{width:clamp(250px,95vw,100%)}.navbar-content{gap:1rem}}@supports not (container-type:inline-size){@media (max-width:768px){.navbar-burger{background:transparent;border:none;cursor:pointer;display:flex;flex-direction:column;height:2rem;justify-content:space-around;padding:0;width:2rem;z-index:10}.burger-line{background-color:var(--text-primary);border-radius:10px;height:.25rem;position:relative;transform-origin:1px;transition:all .3s linear;width:2rem}.burger-line.open:first-child{transform:rotate(45deg)}.burger-line.open:nth-child(2){opacity:0;transform:translateX(20px)}.burger-line.open:nth-child(3){transform:rotate(-45deg)}.navbar-menu{align-items:flex-start;background-color:var(--bg-primary);box-shadow:2px 0 10px rgba(0,0,0,.1);flex-direction:column;gap:2rem;height:100vh;justify-content:flex-start;left:0;overflow-y:auto;padding:5rem 2rem 2rem;position:fixed;top:0;transform:translateX(-100%);transition:transform .3s ease-in-out;width:clamp(250px,85vw,300px);z-index:999}.navbar-close-button{display:flex}.navbar-menu.open{transform:translateX(0)}.navbar-navigation{align-items:flex-start;flex:0 1;flex-direction:column;gap:.5rem;width:100%}.navbar-nav-link{border-radius:6px;padding:1rem;text-align:left;width:100%}.navbar-nav-link.active{border-bottom:none;border-left:3px solid var(--button-primary);padding-left:calc(1rem - 3px)}.navbar-user{align-items:flex-start;border-top:1px solid rgba(0,0,0,.1);flex-direction:column;gap:1rem;padding-top:1rem;width:100%}.navbar-username{font-size:1rem}.navbar-logout-button{padding:1rem;text-align:left;width:100%}.navbar-brand h2{font-size:clamp(1rem,4vw,1.5rem)}}@media (max-width:480px){.navbar-menu{width:clamp(250px,95vw,100%)}.navbar-content{gap:1rem}}}
/*# sourceMappingURL=main.04bb26cd.css.map*/