:root{--purple:#5f308c;--dark-purple:#4a2570;--light-purple:#e0d5eb;--pink:#ff498f;--sand:#f7edde;--navy:#26225e;--success-bg:#c6f6d5;--success-text:#48bb78;--error:#f56565;--error-bg:#fed7d7}body{background-color:#f5f5f5;font-family:system-ui,-apple-system,sans-serif;margin:0;padding:0}.stack-builder{margin:0 auto;max-width:800px;padding:2rem}.header{margin-bottom:2rem;text-align:center}.header h1{color:var(--navy);font-size:2rem;margin-bottom:1rem}.header p{color:var(--dark-purple);font-size:1.1rem;line-height:1.5}.security-options{background:#fff;border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,.1);padding:2rem}.option-group{margin-bottom:2rem}.option-group h2{color:var(--purple);font-size:1.25rem;margin-bottom:1rem}.checkbox-group{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.checkbox-item{align-items:center;background:var(--sand);border-radius:6px;cursor:pointer;display:flex;gap:.5rem;padding:.75rem;transition:all .2s ease}.checkbox-item:hover{background:var(--light-purple)}.checkbox-item input[type=checkbox]{accent-color:var(--purple);height:18px;width:18px}.checkbox-item label{color:var(--navy);cursor:pointer;font-size:.9rem}.analyze-btn{background:var(--purple);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;margin-top:1rem;padding:1rem 2rem;transition:transform .2s ease;width:100%}.analyze-btn:hover{background:var(--pink);color:#fff;transform:translateY(-2px)}.results{background:var(--sand);border-radius:8px;display:none;margin-top:2rem;padding:2rem}.results.active{display:block}.score-section{margin-bottom:1.5rem;text-align:center}.score-circle{align-items:center;background:#fff;border-radius:50%;box-shadow:0 2px 4px rgba(0,0,0,.1);color:var(--purple);display:flex;font-size:2.5rem;font-weight:700;height:120px;justify-content:center;margin:0 auto 1rem;width:120px}.recommendation{background:#fff;border-radius:6px;box-shadow:0 1px 3px rgba(0,0,0,.1);margin-bottom:1rem;padding:1.5rem}.recommendation h3{color:var(--purple);font-size:1.1rem;margin-bottom:.5rem}.recommendation p{color:var(--navy);font-size:.9rem;line-height:1.5;margin:0}.recommendation.high-priority{border-left:4px solid var(--pink)}.recommendation.medium-priority{border-left:4px solid var(--purple)}.recommendation.low-priority{border-left:4px solid var(--light-purple)}.score-description{background:var(--navy);border-radius:6px;color:#fff;margin-bottom:1.5rem;padding:1rem;text-align:center}.stickr-focus{background:var(--light-purple);border-left:4px solid var(--pink)}.stickr-focus ul{margin:1rem 0;padding-left:1.5rem}.stickr-focus li{color:var(--navy);margin-bottom:.5rem}.learn-more-btn{background:var(--purple);border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:600;margin-top:1rem;padding:.75rem 1.5rem;transition:transform .2s ease}.learn-more-btn:hover{background:var(--pink);color:#fff;transform:translateY(-2px)}.export-btn{background:var(--navy);border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:600;margin-top:1rem;padding:.75rem 1.5rem;transition:background-color .2s ease;width:100%}.export-btn:hover{background:var(--dark-purple)}.checkbox-item{position:relative}.checkbox-item:hover:after{background:var(--navy);border-radius:4px;bottom:100%;color:#fff;content:attr(title);font-size:.8rem;left:50%;max-width:200px;padding:.5rem;position:absolute;transform:translateX(-50%);width:max-content;z-index:1000}.results{transition:opacity .5s ease-in}@keyframes slideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.recommendation{animation:slideIn .3s ease-out forwards}.modal{background-color:rgba(0,0,0,.5)!important;display:none;height:100%;left:0;opacity:0;position:fixed;top:0;transition:opacity .3s ease-in-out;width:100%;z-index:1000}.modal.active{display:block;opacity:1}.modal-content{background-color:#fff!important;border-radius:8px!important;box-shadow:0 4px 6px rgba(0,0,0,.1)!important;margin:5% auto!important;max-width:500px!important;padding:2rem!important;position:relative!important;transform:translateY(-20px)!important;transition:transform .3s ease-in-out!important;width:90%!important}.modal.active .modal-content{transform:translateY(0)}.close-modal{color:var(--navy);cursor:pointer;font-size:1.5rem;position:absolute;right:1rem;top:1rem;transition:color .2s ease}.close-modal:hover{color:var(--pink)}.contact-form{margin-top:1.5rem}.form-group{margin-bottom:1.25rem}.form-group label{color:var(--navy)!important;display:block!important;font-weight:500!important;margin-bottom:.5rem!important}.form-group input{border:1px solid var(--light-purple)!important;border-radius:4px!important;font-size:1rem!important;padding:.75rem!important;transition:border-color .2s ease!important;width:100%!important}.form-group input:focus{border-color:var(--purple)!important;outline:none}.submit-btn{background:var(--pink);border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:600;padding:1rem 2rem;transition:background-color .2s ease;width:100%}.submit-btn:hover{background:var(--purple)}.form-group.error input{border-color:var(--error)}.error-message{color:var(--error);font-size:.85rem;margin-top:.25rem}.success-message{background:var(--success-bg);border-radius:4px;color:var(--success-text);display:none;margin-top:1rem;padding:1rem;text-align:center}.success-message.active{display:block}