:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#19374b;background:#f5f8f8;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button,a,input,textarea{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #5aa5b5;outline-offset:3px}[hidden]{display:none!important}.topbar{height:96px;background:#fff;border-bottom:1px solid #dce5e8;display:flex;align-items:center;gap:28px;padding:0 5vw}.brand{display:flex;gap:12px;text-decoration:none;align-items:center}.brandmark{display:grid;place-items:center;border:1px solid #79a8a5;border-radius:50%;height:43px;width:43px;color:#287477;font-family:Georgia,serif;font-size:30px}.brand b{font-size:24px;letter-spacing:4px}.brand small{display:block;font-size:8px;letter-spacing:2px;margin-top:2px}.portal-label{font-size:11px;letter-spacing:2px;border-left:1px solid #dce5e8;padding-left:28px;color:#6b7d85}#account{margin-left:auto;display:flex;align-items:center;gap:18px;font-size:12px}.quiet{border:0;background:none;color:#295d78;padding:12px}main{max-width:1400px;margin:auto;padding:65px 5vw;min-height:calc(100vh - 167px)}.login-layout{display:grid;grid-template-columns:1.25fr 1fr;gap:8vw;align-items:center;padding:22px 0}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2.3px;color:#397980}h1{font-size:clamp(35px,3.6vw,52px);line-height:1.17;font-weight:500;letter-spacing:-1.7px;margin:23px 0}h1 em{font-family:Georgia,serif;font-weight:400;color:#417e85}p{line-height:1.7;color:#617783}.intro>p{font-size:16px;max-width:445px}.terrain-art{max-width:580px;margin-top:25px}.terrain-art svg{width:100%;height:auto}.terrain-art span{display:block;text-align:center;text-transform:uppercase;font-size:9px;letter-spacing:3px;color:#6c8992;margin-top:15px}.login-card{padding:38px;background:#fff;border:1px solid #e0e7e7;border-radius:15px;box-shadow:0 18px 50px #203d4a09;max-width:470px}.lock-icon{background:#edf5f4;color:#397980;width:42px;height:42px;border-radius:10px;display:grid;place-items:center;font-size:25px}.login-card h2{font-size:24px;font-weight:500;letter-spacing:-.7px;margin:24px 0 9px}.login-card>p{font-size:14px;margin:0 0 27px}label{display:block;font-size:12px;font-weight:600;margin-bottom:9px}input:not([type=checkbox]),textarea{width:100%;border:1px solid #cbd9df;background:#fff!important;color:#18384e!important;padding:13px 14px;border-radius:6px;outline-offset:3px;min-height:46px}input::placeholder{color:#82949b}button{border-radius:6px;min-height:42px;padding:11px 17px;border:1px solid transparent;font-size:13px;font-weight:600}.primary{color:white;background:#173e57}.primary:hover{background:#245775}.secondary{background:#edf3f5;border-color:#d7e2e6;color:#254e63}.wide{width:100%;display:flex;justify-content:space-between;margin-top:15px}.privacy-note{display:flex;gap:10px;border-top:1px solid #e5ecec;padding-top:23px;margin-top:25px;font-size:11px;color:#697f89;line-height:1.6}.help-link{display:block;font-size:12px;text-decoration:none;margin-top:22px;color:#3c7781}.notice{font-size:13px;background:#edf5f4;padding:15px;border-radius:6px}.site-footer{padding:24px 5vw;border-top:1px solid #dce5e8;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.5px;color:#7d9199}.page-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.page-heading h1{margin:12px 0;font-size:38px}.page-heading p{margin:0;font-size:14px}.filterbar{display:flex;gap:20px;align-items:center;margin:25px 0 30px}.search{position:relative;margin:0;flex:1;max-width:420px}.search span{position:absolute;left:14px;top:12px;font-size:20px}.search input{padding-left:43px!important}#projectCount{margin-left:auto;font-size:12px;color:#6b8088}.project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(275px,1fr));gap:24px}.project-card{background:white;border:1px solid #dfe8eb;border-radius:12px;overflow:hidden}.card-art{height:115px;background:linear-gradient(155deg,#e3efee,#c9dfe3);position:relative;overflow:hidden}.card-art:before,.card-art:after{content:'';position:absolute;width:230px;height:130px;border:1px solid #7ba3ad;border-radius:50%;transform:rotate(-25deg);top:50px;left:35px;box-shadow:0 0 0 14px #c9dfe3,0 0 0 15px #7ba3ad,0 0 0 29px #c9dfe3,0 0 0 30px #7ba3ad}.card-art:after{left:210px;top:95px}.card-body{padding:22px}.card-body h2{margin:10px 0;font-size:21px;font-weight:500}.card-body p{font-size:13px;min-height:43px;margin-bottom:22px}.badge{font-size:9px;text-transform:uppercase;letter-spacing:1.4px;color:#4d7e85}.card-actions{display:flex;gap:10px}.card-actions .primary{flex:1}.empty{padding:55px 25px;background:#fff;border:1px dashed #b6cbd2;border-radius:12px;text-align:center;grid-column:1/-1}.empty h2{font-weight:500}.empty p{font-size:14px}.error{color:#9c3d37!important}.success{color:#2f7470!important}[role=status]{font-size:13px;line-height:1.5}dialog{border:1px solid #d7e3e6;border-radius:14px;width:min(600px,calc(100vw - 24px));padding:28px;color:#19374b;max-height:90vh}dialog::backdrop{background:#102a43a8;backdrop-filter:blur(3px)}.dialog-heading{display:flex;justify-content:space-between;align-items:start;margin-bottom:22px}.dialog-heading h2{margin:8px 0;font-weight:500}.close{font-size:26px;background:none;border:0;padding:0;min-width:36px}.checks{margin:20px 0}.checks label{display:flex;align-items:center;gap:7px;margin:12px 0}input[type=checkbox]{accent-color:#275a76}textarea{margin-bottom:12px}#projectTitle{margin-bottom:18px}hr{border:0;border-top:1px solid #e1e9eb;margin:25px 0}h3{font-weight:500;font-size:18px}.small{font-size:12px}.inline-form{display:flex;gap:10px}.inline-form button{white-space:nowrap}#accessList{padding:0;list-style:none}#accessList li{display:flex;justify-content:space-between;align-items:center;font-size:12px;border-bottom:1px solid #ecf1f3;padding:8px 0;overflow-wrap:anywhere}#uploadModel{margin-top:12px}#viewerDialog{width:100vw;max-width:none;height:100dvh;max-height:none;border:0;border-radius:0;margin:0;padding:0;background:#edf2f5}.viewer-heading{height:63px;display:flex;gap:20px;align-items:center;padding:10px 20px;border-bottom:1px solid #d7e3e6;background:white}.viewer-heading strong{font-size:14px;font-weight:500}#viewerStatus{margin-left:auto;font-size:12px}#viewerHost{height:calc(100dvh - 63px)}#viewerHost iframe{border:0;width:100%;height:100%;display:block}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(max-width:760px){.topbar{height:80px;padding:0 20px;gap:17px}.portal-label{font-size:9px;padding-left:17px;letter-spacing:1px}#accountEmail{display:none}main{padding:35px 22px}.login-layout{grid-template-columns:1fr;gap:30px;padding:0}.intro h1{font-size:35px}.intro>p{font-size:14px}.terrain-art{display:none}.login-card{max-width:none;padding:28px}.site-footer{gap:20px;font-size:9px}.page-heading{align-items:start;gap:15px}.page-heading h1{font-size:30px}.page-heading button{white-space:nowrap}.filterbar{flex-wrap:wrap}.search{max-width:none}#projectCount{display:none}dialog{padding:22px}.viewer-heading{gap:10px;padding:10px}.viewer-heading strong{font-size:12px}#viewerStatus{display:none}}

/* Public website navigation remains visible before and after sign-in. */
.home-link{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:10px 15px;border:1px solid #d7e2e6;border-radius:6px;background:#edf3f5;text-decoration:none;font-size:13px;font-weight:600;margin-left:auto;white-space:nowrap}.home-link:hover{background:#dfecef}#account{margin-left:0}.brand{flex-shrink:0}@media(max-width:760px){.topbar{height:auto;min-height:80px;flex-wrap:wrap;padding:15px 20px;gap:12px}.portal-label{display:none}#account{margin-left:auto}.home-link{padding:10px 12px}}
