:root{font:16px/1.5 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#192e37;background:#f2f6f6}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input{font:inherit}a{color:inherit}.wrap{width:min(1160px,calc(100% - 40px));margin-inline:auto}.top{background:#112e35;color:white;box-shadow:0 4px 18px #132c311a}.top-row{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{display:flex;align-items:center;gap:12px;letter-spacing:.13em}.brand strong{display:block;font-size:1rem}.brand small{display:block;letter-spacing:0;color:#b8d4d4;font-size:.8rem}.brand-mark{display:grid;place-items:center;width:43px;height:43px;border-radius:12px;background:#c7ee73;color:#183328;font-weight:850;letter-spacing:0}.quiet{background:#25454c;color:#fff;border:1px solid #557077;border-radius:9px;padding:9px 15px;cursor:pointer}main{min-height:calc(100vh - 150px)}h1,h2,h3{letter-spacing:-.025em;line-height:1.2}h1{font-size:clamp(2rem,4vw,3.2rem);margin:12px 0}h2{font-size:1.4rem}h3{font-size:1.2rem}.eyebrow{font-size:.74rem;font-weight:800;color:#1d7568;letter-spacing:.17em}.login-layout{min-height:calc(100vh - 160px);display:grid;grid-template-columns:1.1fr minmax(300px,430px);align-items:center;gap:clamp(30px,7vw,100px)}.intro{max-width:580px}.intro p{font-size:1.17rem;color:#557078}.intro-line{margin-top:38px;border-top:1px solid #cbdad9;padding-top:16px;color:#33575d;font-size:.9rem}.panel,.project-card{background:#fff;border:1px solid #d9e4e3;border-radius:18px;box-shadow:0 12px 34px #153a3b10}.panel{padding:clamp(20px,3vw,30px)}.login{padding:clamp(26px,4vw,40px)}.login h2{margin:0 0 23px}label{display:block;color:#315159;font-weight:650;margin:14px 0;font-size:.93rem}input:not([type=checkbox]){display:block;width:100%;margin-top:6px;padding:12px 13px;min-height:48px;border:1px solid #b9ccca;border-radius:10px;color:#183439;background:#fff}input:focus-visible,button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #84b59e;outline-offset:2px}.primary,.secondary{min-height:46px;border:0;border-radius:10px;padding:10px 18px;font-weight:750;cursor:pointer}.primary{background:#176b5e;color:white}.primary:hover,.project-link:hover{background:#115648}.secondary{background:#eaf0ee;color:#28534c}.secondary:hover{background:#dceae5}.login .primary{width:100%;margin-top:14px}.notice{padding:13px 16px;border-radius:10px;margin:18px 0}.error{color:#922e2c;background:#fff0ec;border:1px solid #f2c5bd}.success{color:#17624b;background:#e6f4eb;border:1px solid #aed9bd}.welcome{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:48px 0 28px}.welcome h1{margin:8px 0}.welcome p{color:#5a7173;margin:0}.welcome-badge{border:1px solid #cfe1dc;background:#e9f3ef;border-radius:50px;padding:9px 14px;font-weight:700;color:#246152;white-space:nowrap}.project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,285px),1fr));gap:18px}.project-card{min-height:260px;padding:26px;display:flex;flex-direction:column}.project-card h2{margin:20px 0 5px}.project-card p{color:#61757a;flex:1;margin:5px 0 22px}.project-icon{width:48px;height:48px;border-radius:13px;background:#dcf2e6;color:#17694f;display:grid;place-items:center;font-size:1.25rem;font-weight:800}.project-card:nth-child(3n+2) .project-icon{background:#e7eafc;color:#464c96}.project-card:nth-child(3n+3) .project-icon{background:#fff0d8;color:#a2671e}.project-link{display:inline-flex;justify-content:space-between;align-items:center;gap:14px;background:#176b5e;color:white;border-radius:10px;text-decoration:none;font-weight:700;padding:11px 15px}.project-pending{color:#6b797b;font-size:.9rem;font-weight:650}.empty{grid-column:1/-1}.admin{padding:58px 0}.section-heading p{color:#5a7173}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:22px 0}.admin-grid .panel h3,.list-panel h3{margin-top:0}fieldset{border:1px solid #d5e4df;border-radius:10px;margin:18px 0;padding:12px 15px}legend{font-weight:700;color:#315159}fieldset small,.hint{display:block;color:#687e80;font-size:.85rem}.check{display:flex;align-items:center;gap:8px;font-weight:500;margin:7px 0}.check input{width:19px;height:19px;accent-color:#176b5e}.list-panel{margin:18px 0}.edit-row{border-top:1px solid #e1e9e7;padding:6px 0}.edit-row summary{cursor:pointer;padding:11px 0;font-weight:700}.status{float:right;color:#607777;font-size:.85rem;font-weight:550}.edit-form{padding:0 0 12px}.edit-row form:last-child{padding-bottom:12px}footer{border-top:1px solid #d9e4e3;color:#6b7f80;padding:24px 0;font-size:.85rem}.setup{min-height:100vh;display:grid;place-items:center}.setup .panel{width:min(500px,100%)}@media(max-width:760px){.wrap{width:min(100% - 24px,1160px)}.login-layout,.admin-grid{grid-template-columns:1fr}.login-layout{padding:42px 0;gap:25px;min-height:0}.intro h1{font-size:2.2rem}.intro-line{margin-top:20px}.welcome{padding:32px 0 22px;align-items:flex-start;flex-direction:column;gap:14px}.welcome-badge{font-size:.82rem}.project-card{min-height:225px}.admin{padding-top:42px}.brand small{font-size:.73rem}}@media print{.top form,.admin,.login{display:none}}

.portal-nav{display:flex;gap:8px;padding:20px 0 0}.portal-nav a{text-decoration:none;padding:10px 16px;border-radius:10px;color:#315159;font-weight:700}.portal-nav a.selected,.portal-nav a:hover{background:#e0eee8;color:#125747}.demo-upload{max-width:680px;margin:22px 0 55px}.dropzone{display:grid;place-items:center;position:relative;min-height:145px;padding:18px;text-align:center;border:2px dashed #78aa9a;border-radius:15px;background:#f3faf6;color:#1b6653;cursor:pointer;font-size:1rem}.dropzone:hover,.dropzone:focus-within{background:#e7f5ec;border-color:#176b5e}.dropzone input[type=file]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;margin:0}.demo-delete{margin-top:12px}.demo-delete button{width:100%}
