:root{font-family: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;display:flex;place-items:center;min-width:320px;min-height:100vh}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}}html{scroll-behavior:smooth}body{font-family:Segoe UI,sans-serif;margin:0;padding:0;background:#f9fafc;color:#333}.spa-layout{display:flex;min-height:100vh}.disabled{pointer-events:none;opacity:.5}.sidebar{background-color:#f0f4f8;padding:2rem 1rem;width:220px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;transition:transform .3s ease}.sidebar .menu{display:flex;flex-direction:column;gap:1rem}.sidebar a{text-decoration:none;color:#333;padding:.5rem 1rem;border-radius:6px;transition:background-color .2s}.sidebar a:hover{background-color:#e0e7ff}.sidebar .active{background-color:#3f87a6;color:#fff}.mobile-toggle{display:none;font-size:1.5rem;cursor:pointer;margin-bottom:1rem}.spa-container{flex:1;padding:2rem;display:flex;flex-direction:column;gap:4rem;max-width:900px;margin:auto}section{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 4px 12px #0000000f}.hero{text-align:center;background:linear-gradient(135deg,#3f87a6,#ebf8e1);color:#034}form{display:flex;flex-direction:column;gap:1rem}input,textarea{padding:.25rem .5rem;border:1px solid #ccc;border-radius:8px;font-size:1rem}textarea{resize:vertical;min-height:100px}button{background-color:#3f87a6;color:#fff;padding:.75rem;border:none;border-radius:8px;font-size:1rem;cursor:pointer;transition:background-color .3s ease}button:hover{background-color:#336d8e}footer{text-align:center}.dropdown-width{width:50px}.bold{font-weight:700}.pdfViewer{color:#0000ffe5;text-decoration-line:underline}.pdfViewer:hover{cursor:pointer}@media (max-width: 768px){.spa-layout{flex-direction:column}.sidebar{width:100%;height:auto;transform:translateY(0);background-color:#f0f4f8}.sidebar .menu{flex-direction:column;display:none}.mobile-toggle{display:block}.sidebar:not(.open) .menu{display:none}.spa-container{padding:1rem}footer{text-align:center}.hide-on-mobile{display:none}}.no-block{display:inline-block!important}.horizontal-spacer-5{width:5px}.horizontal-spacer-10{width:10px}.horizontal-spacer-20{width:20px}.horizontal-spacer-25{width:25px}.horizontal-spacer-50{width:50px}.vertical-spacer-5{height:10px!important;padding-top:5px!important;padding-bottom:5px!important}.vertical-spacer-10{height:25px!important;padding-top:10px!important;padding-bottom:10px!important}.vertical-spacer-25,.vertical-spacer-50{height:50px!important;padding-top:25px!important;padding-bottom:25px!important}.special_action_button{all:unset;font-size:1em;font-family:inherit;color:#007bff;background-color:#0001;padding:3px 8px 3px 4px;border-radius:5px;text-decoration:none;cursor:pointer;display:inline}.special_action_button:hover{color:#0056b3;text-decoration:none}.special_action_button:focus,.special_action_button:focus-visible{outline:none;text-decoration:none}.validation-code-error{align-items:right;float:right}@keyframes blink{50%{opacity:0}}.blink{animation:blink 1s step-start infinite}.red-text{color:red}.password-setup{max-width:300px;padding:1rem;border:1px solid #ddd;border-radius:6px;background:#fff}.password-setup label{display:block;margin-bottom:.75rem;font-weight:600}.password-setup input{width:95%;margin-top:.25rem;padding:.5rem;font-size:1rem;border:1px solid #ccc;border-radius:4px}.password-setup input:focus{outline:none;border-color:#3b82f6}.password-setup ul{list-style:none;padding-left:0;margin:.75rem 0}.password-setup li{font-size:.9rem;margin-bottom:.25rem}.password-setup .rule-ok{color:#16a34a}.password-setup .rule-bad{color:#dc2626}.password-setup .success{margin-top:.5rem;font-weight:600;color:#16a34a}
