@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@600;700;800&display=swap";:root{--navy:#101f31;--teal:#17a398;--teal2:#0d7e76;--cream:#f6f3ec;--paper:#fff;--ink:#172334;--muted:#6b7786;--line:#dce3e5;--danger:#b42318;--shadow:0 18px 55px rgba(20,40,55,.09)}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font:15px/1.55 DM Sans,sans-serif}h1,h2,h3,strong{font-family:Manrope,sans-serif}a{color:inherit;text-decoration:none}.site-header{height:72px;padding:0 max(24px,calc((100vw - 1160px)/2));display:flex;align-items:center;justify-content:space-between;background:var(--navy);color:#fff}.brand{display:flex;gap:11px;align-items:center;font:700 18px Manrope}.brand-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:var(--teal);font-size:20px}.brand-accent{color:#5bd4c9}.header-link,.admin-nav a,.link-button{color:#c7d2da;font:inherit}.admin-nav{display:flex;gap:24px;align-items:center}.admin-nav form{margin:0}.link-button{border:0;background:none;cursor:pointer}.hero{background:linear-gradient(125deg,var(--navy) 20%,#193b50);color:#fff;padding:74px max(24px,calc((100vw - 930px)/2)) 94px;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;width:480px;height:480px;border:1px solid rgba(87,209,197,.15);border-radius:50%;right:-120px;top:-270px;box-shadow:0 0 0 70px #57d1c509,0 0 0 140px #57d1c506}.eyebrow{color:var(--teal);font-size:11px;font-weight:800;letter-spacing:.18em}.hero h1{font-size:46px;line-height:1.13;margin:15px 0}.hero h1 em{color:#6bd7cd;font-style:normal}.hero>p{color:#c6d0d8;max-width:660px;font-size:17px}.hero-meta{display:flex;gap:26px;margin-top:28px;color:#aebdc8;font-size:13px}.form-shell{max-width:930px;margin:-38px auto 70px;position:relative}.progress-wrap{background:#fff;border-radius:12px;padding:18px 22px;margin-bottom:16px;box-shadow:var(--shadow)}.progress-copy{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);margin-bottom:8px}.progress-copy strong{color:var(--teal)}.progress{height:5px;background:#e8eded;border-radius:5px;overflow:hidden}.progress span{display:block;height:100%;width:0;background:var(--teal);transition:.2s}.form-section,.info-card{border:1px solid rgba(20,45,60,.08);background:var(--paper);border-radius:14px;padding:28px;margin:0 0 16px;box-shadow:0 7px 26px #172a3a0b}fieldset{min-width:0}.form-section legend{float:left;width:100%;display:flex;gap:15px;align-items:center;margin-bottom:24px}.form-section legend+*{clear:both}.form-section legend>span{width:38px;height:38px;display:grid;place-items:center;background:#e8f6f4;color:var(--teal2);border-radius:10px;font:800 13px Manrope}.form-section legend div{font:700 18px Manrope}.form-section legend small{display:block;color:var(--muted);font:400 13px DM Sans;margin-top:2px}.grid{display:grid;gap:18px}.grid.two{grid-template-columns:repeat(2,1fr)}.grid.three{grid-template-columns:repeat(3,1fr)}.span-two{grid-column:1/-1}label{display:flex;flex-direction:column;gap:7px;font-weight:600;font-size:13px}input,select,textarea{width:100%;border:1px solid #cfd9dc;background:#fbfcfc;border-radius:8px;padding:11px 12px;color:var(--ink);font:14px DM Sans;outline:none;transition:.15s}input:focus,select:focus,textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px #17a3981a}textarea{resize:vertical}.toggle-row,.choice-row{display:flex;flex-wrap:wrap;gap:14px 26px;margin-top:22px}.toggle,.choice-row label,.remember{flex-direction:row;align-items:center;font-weight:500}.toggle input,.choice-row input,.remember input{width:auto}.module-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.module-card{position:relative;min-height:92px;padding:15px;border:1px solid var(--line);border-radius:10px;cursor:pointer;justify-content:flex-end;background:#fafcfc}.module-card input{position:absolute;opacity:0}.module-card .check{position:absolute;top:10px;right:10px;width:20px;height:20px;border:1px solid #cbd6d9;border-radius:6px;color:transparent;text-align:center}.module-card:has(input:checked){background:#eaf7f5;border-color:var(--teal)}.module-card:has(input:checked) .check{background:var(--teal);color:#fff;border-color:var(--teal)}.module-card strong{font-size:13px}.conditional{display:none}.conditional.is-visible{display:block}.upload-zone{margin-top:20px;border:1.5px dashed #aabdc0;border-radius:10px;text-align:center;align-items:center;padding:28px;color:var(--teal2);cursor:pointer}.upload-zone input{max-width:350px;border:0;background:none}.upload-zone small{color:var(--muted);font-weight:400}.submit-row{background:var(--navy);color:#fff;padding:23px 28px;border-radius:14px;display:flex;justify-content:space-between;align-items:center}.submit-row small{display:block;color:#aebdc8}.primary-button,.secondary-button{border:0;border-radius:8px;padding:12px 19px;font:700 14px DM Sans;cursor:pointer}.primary-button{background:var(--teal);color:#fff}.primary-button:hover{background:var(--teal2)}.secondary-button{display:inline-block;border:1px solid var(--line);background:#fff}.full{width:100%}.alert{padding:15px 18px;border-radius:9px;margin-bottom:16px}.alert-error{background:#fef3f2;color:var(--danger);border:1px solid #fecdca}.alert-success{background:#ecfdf3;color:#067647}.center-card{max-width:570px;margin:80px auto;background:#fff;border-radius:16px;padding:48px;box-shadow:var(--shadow);text-align:center}.center-card h1{font-size:30px;margin:10px 0}.center-card p{color:var(--muted)}.success-icon{margin:0 auto 20px;width:58px;height:58px;display:grid;place-items:center;border-radius:50%;color:#fff;background:var(--teal);font-size:26px}.reference{margin:28px auto;padding:18px;background:#edf8f6;border-radius:10px}.reference small,.reference strong{display:block}.reference strong{font-size:21px;color:var(--teal2);letter-spacing:.04em}.muted{color:var(--muted)}.login-card{text-align:left;max-width:440px}.login-card form{display:grid;gap:17px;margin-top:25px}.field-error{color:var(--danger);font-size:13px}.admin-shell{max-width:1160px;margin:48px auto 80px;padding:0 20px}.page-heading,.detail-heading{display:flex;justify-content:space-between;align-items:end}.page-heading h1,.detail-heading h1{font-size:34px;margin:7px 0 0}.page-heading p,.detail-heading p{color:var(--muted);margin:3px 0}.total-count{background:var(--navy);color:#fff;padding:14px 20px;border-radius:10px;text-align:center}.total-count strong,.total-count span{display:block}.total-count strong{font-size:22px}.total-count span{font-size:11px;color:#b7c3cc}.status-cards{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:28px 0}.status-card{background:#fff;padding:16px;border-radius:10px;border:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.status-card span{font-size:12px;color:var(--muted)}.status-card strong{font-size:22px}.filters{display:flex;gap:10px;margin:18px 0}.filters input{flex:1}.filters select{width:180px}.table-wrap{overflow:auto;background:#fff;border:1px solid var(--line);border-radius:12px}table{width:100%;border-collapse:collapse;white-space:nowrap}th,td{text-align:left;padding:15px;border-bottom:1px solid #e8edef}th{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);background:#f8faf9}td{font-size:13px}td small{display:block;color:var(--muted)}.badge,.module-count{display:inline-block;padding:5px 9px;border-radius:20px;background:#edf1f2;font-size:11px;font-weight:700}.status-new{background:#e8f3ff;color:#175cd3}.status-reviewing{background:#fff4e5;color:#b54708}.status-estimated{background:#f3edff;color:#6941c6}.status-proposal-sent{background:#e7f6f4;color:#087a71}.status-confirmed{background:#eaf8ee;color:#087443}.row-link{color:var(--teal2);font-weight:700}.empty{text-align:center;padding:45px}.pagination{margin-top:18px}.pagination svg{width:18px}.pagination nav>div:first-child{display:none}.pagination nav>div:last-child{display:flex;justify-content:space-between;align-items:center}.back-link{display:inline-block;color:var(--teal2);margin-bottom:25px}.detail-heading{margin-bottom:24px}.detail-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(270px,1fr);gap:18px}.info-card h2{margin:0 0 20px;font-size:18px}.info-card h3{font-size:13px;margin:22px 0 6px}.data-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.data-grid div,.requirements-list div{border-bottom:1px solid #edf0f1;padding-bottom:10px}.data-grid dt,.requirements-list dt{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em}.data-grid dd,.requirements-list dd{margin:4px 0 0}.tags{display:flex;gap:8px;flex-wrap:wrap}.tags span{background:#e8f6f4;color:var(--teal2);padding:6px 10px;border-radius:7px;font-size:12px;font-weight:600}.requirements-list{display:grid;grid-template-columns:repeat(2,1fr);gap:14px 22px}.file-row{display:flex;align-items:center;gap:12px;padding:12px;background:#f7f9f9;border-radius:8px;margin-top:8px}.file-row div{flex:1}.file-row small{display:block;color:var(--muted)}.file-row b{color:var(--teal2);font-size:12px}.sticky-card{position:sticky;top:18px}.sticky-card label{margin-bottom:16px}.pre-line{white-space:pre-line}footer{text-align:center;padding:25px;color:#87929d;font-size:12px}@media(max-width:800px){.hero{padding-top:50px}.hero h1{font-size:35px}.form-shell{margin:-25px 15px 50px}.grid.two,.grid.three,.data-grid,.requirements-list,.detail-grid{grid-template-columns:1fr}.module-grid{grid-template-columns:repeat(2,1fr)}.hero-meta{flex-direction:column;gap:7px}.submit-row,.page-heading{align-items:stretch;gap:16px;flex-direction:column}.status-cards{grid-template-columns:repeat(2,1fr)}.filters{flex-wrap:wrap}.filters select{width:100%}.admin-shell{margin-top:30px}.center-card{margin:35px 15px;padding:30px}.site-header{padding:0 18px}}.gpt-actions{display:flex;gap:9px;align-items:center}.center-card code{background:#eef2f2;padding:2px 5px;border-radius:4px}@media(max-width:800px){.detail-heading{align-items:flex-start;gap:16px;flex-direction:column}.gpt-actions{width:100%;flex-wrap:wrap}}
