.preg-container{--preg-dark:#2d3748;--preg-light:#ffffff;--preg-primary:#ff6b6b;--preg-bg-app:#fff5f5;--preg-pink:#fbb6ce;--preg-peach:#fbd38d;--preg-blue:#90cdf4;--preg-green:#9ae6b4;--preg-border-width:3px;--preg-border:var(--preg-border-width) solid var(--preg-dark);--preg-radius:12px;--preg-shadow:5px 5px 0px var(--preg-dark);--preg-shadow-active:0px 0px 0px var(--preg-dark);font-family:'Inter',system-ui,sans-serif;max-width:800px;margin:30px auto;border:var(--preg-border);border-radius:16px;box-shadow:8px 8px 0 var(--preg-dark);padding:35px;background:var(--preg-bg-app);color:var(--preg-dark);box-sizing:border-box}.preg-container *{box-sizing:border-box}.preg-title{font-family:'Montserrat',sans-serif;font-size:2rem;text-align:center;text-transform:uppercase;margin:0 0 10px 0;font-weight:900;color:#c53030}.preg-desc{text-align:center;font-weight:600;margin-bottom:25px;font-size:1.05rem;color:#4a5568}.preg-card{background:var(--preg-light);border:var(--preg-border);border-radius:var(--preg-radius);padding:25px;box-shadow:var(--preg-shadow);margin-bottom:25px}.preg-label{display:block;font-weight:800;font-size:.95rem;margin-bottom:12px;text-transform:uppercase}.preg-input-group{display:flex;gap:15px;margin-bottom:20px}.preg-input{flex:1;padding:14px 15px;font-size:1.1rem;font-weight:700;border:var(--preg-border);border-radius:8px;outline:none;transition:0.2s;box-shadow:inset 2px 2px 0 rgb(0 0 0 / .05)}.preg-input:focus{border-color:var(--preg-primary);background:#fffaf0}select.preg-input{cursor:pointer;appearance:none;background-image:url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%232d3748%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E);background-repeat:no-repeat;background-position:right 15px top 50%;background-size:12px auto;padding-right:40px}.preg-btn{width:100%;background:var(--preg-primary);color:var(--preg-light);font-family:'Montserrat',sans-serif;font-weight:900;font-size:1.2rem;padding:15px;border:var(--preg-border);border-radius:8px;cursor:pointer;box-shadow:var(--preg-shadow);text-transform:uppercase;transition:0.1s;margin-top:10px}.preg-btn:active{transform:translate(4px,4px);box-shadow:var(--preg-shadow-active)}.preg-result{display:none;text-align:center;animation:pregSlideUp 0.5s ease}.preg-edd-box{background:var(--preg-pink);border:var(--preg-border);border-radius:var(--preg-radius);padding:25px 15px;box-shadow:4px 4px 0 var(--preg-dark);margin-bottom:25px}.preg-edd-title{font-weight:800;font-size:1.1rem;text-transform:uppercase;margin-bottom:5px}.preg-edd-date{font-family:'Montserrat',sans-serif;font-size:2.5rem;font-weight:900;color:#9b2c2c}.preg-progress-wrap{margin-bottom:25px;text-align:left}.preg-progress-label{display:flex;justify-content:space-between;font-weight:800;margin-bottom:8px;font-size:.9rem;text-transform:uppercase}.preg-progress-bar{width:100%;height:24px;border:3px solid var(--preg-dark);border-radius:12px;background:var(--preg-light);overflow:hidden;position:relative}.preg-progress-fill{height:100%;background:var(--preg-green);width:0%;transition:width 1s ease-in-out;border-right:3px solid var(--preg-dark)}.preg-milestone-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.preg-milestone{background:var(--preg-light);border:var(--preg-border);padding:15px;border-radius:8px;text-align:center;box-shadow:3px 3px 0 var(--preg-dark)}.preg-milestone-t{font-weight:800;font-size:.85rem;color:#4a5568;margin-bottom:5px;text-transform:uppercase}.preg-milestone-d{font-weight:900;font-size:1.1rem}.bg-t1{background-color:var(--preg-peach)}.bg-t2{background-color:var(--preg-blue)}.preg-error{color:#c53030;font-weight:700;background:#fed7d7;padding:10px;border:2px dashed #c53030;border-radius:8px;display:none;margin-bottom:15px}@keyframes pregSlideUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width:600px){.preg-input-group{flex-direction:column;gap:10px}.preg-milestone-grid{grid-template-columns:1fr}.preg-container{padding:20px;margin:15px}}