:root{font-family:Inter,"Segoe UI",Arial,sans-serif;color:#15354b;background:#f5f7f8;font-synthesis:none;--navy:#10354e;--deep:#0b263a;--sun:#f9b917;--muted:#607581;--border:#dce3e8;--white:#fff}*{box-sizing:border-box}body{margin:0;min-height:100dvh;display:flex;flex-direction:column}button,input,select,textarea{font:inherit}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}[hidden]{display:none!important}:focus-visible{outline:3px solid var(--sun);outline-offset:4px}.skip-link{position:absolute;top:-80px;left:12px;z-index:100;background:#fff;padding:12px}.skip-link:focus{top:12px}.header{min-height:94px;display:flex;align-items:center;justify-content:space-between;padding:18px max(28px,calc((100vw - 1180px)/2));gap:24px;background:var(--white);border-bottom:1px solid var(--border)}.brand{display:flex;align-items:center;gap:24px;text-decoration:none}.brand img{width:225px;height:auto;display:block}.brand>span{font-size:10px;letter-spacing:1.8px;color:var(--muted);border-left:1px solid var(--border);padding-left:24px;white-space:nowrap}.account{display:flex;align-items:center;gap:18px}.account-name{font-size:13px;max-width:250px;overflow-wrap:anywhere}.main{width:min(1180px,calc(100% - 56px));margin:0 auto;flex:1;padding:52px 0 72px}.eyebrow{font-size:11px;letter-spacing:1.8px;font-weight:650;color:var(--muted);margin:0 0 14px}h1{font-size:34px;line-height:1.15;letter-spacing:-1px;font-weight:650;margin:0}h2{font-size:20px;letter-spacing:-.3px;font-weight:600;margin:0}.subtitle{color:var(--muted);font-size:14px;margin:14px 0 0;line-height:1.7}.button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:28px;padding:12px 18px;border:1px solid transparent;border-radius:6px;text-decoration:none;font-size:13px;font-weight:600;white-space:nowrap;transition:background .12s}.button-primary{background:var(--sun);color:var(--deep)}.button-primary:hover{background:#edac0b}.button-secondary{background:var(--white);border-color:var(--border);color:var(--navy)}.button-secondary:hover{background:#edf2f5}.button-quiet{background:transparent;color:var(--muted);padding:10px}.button-quiet:hover{background:#f3f5f6}.welcome{display:grid;grid-template-columns:1.25fr 1fr;align-items:center;min-height:500px;gap:60px}.welcome h1{font-size:clamp(40px,5vw,62px);line-height:1.1;letter-spacing:-2px}.welcome .lead{max-width:460px;font-size:17px;line-height:1.8;color:var(--muted);margin:25px 0 30px}.welcome-note{font-size:12px;line-height:1.8;color:var(--muted);max-width:370px;margin:20px 0 0}.welcome-mark{position:relative;height:370px;overflow:hidden;isolation:isolate}.mark-ring{border:1px solid #d0dce2;border-radius:50%;position:absolute;width:310px;height:310px;top:15px;left:calc(50% - 155px)}.ring-inner{width:220px;height:220px;top:60px;left:calc(50% - 110px)}.mark-sun{position:absolute;width:60px;height:60px;border-radius:50%;background:var(--sun);top:50px;left:calc(50% + 70px)}.mark-shape{position:absolute;left:calc(50% - 65px);top:100px;width:130px;height:145px;clip-path:polygon(45% 0,68% 0,100% 100%,72% 100%,61% 66%,38% 66%,25% 100%,0 100%);background:var(--navy);transform:skew(-6deg)}.mark-label{position:absolute;bottom:8px;left:0;right:0;text-align:center;font-size:10px;letter-spacing:1.8px;color:var(--muted)}.page-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:36px}.project-list{display:grid;gap:16px}.project{display:grid;grid-template-columns:68px 1fr auto;align-items:center;gap:25px;padding:26px 28px;background:var(--white);border:1px solid var(--border);border-radius:8px}.project-symbol{width:64px;height:64px;display:grid;place-items:center;background:#fdf5dc;border-radius:8px;color:var(--navy);font-size:28px}.project-kind{font-size:10px;font-weight:650;letter-spacing:1.3px;color:var(--muted);text-transform:uppercase;margin:0 0 7px}.project-description{font-size:13px;line-height:1.7;color:var(--muted);margin:9px 0 0;max-width:600px;overflow-wrap:anywhere}.project-meta{font-size:11px;color:var(--muted);margin:9px 0 0}.empty{padding:50px 0;border-top:1px solid var(--border)}.empty p{color:var(--muted);line-height:1.8;font-size:14px;max-width:620px}.empty .button{margin-top:12px}.admin{margin-top:64px;padding-top:36px;border-top:1px solid var(--border)}.admin-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.admin-note{font-size:13px;line-height:1.8;color:var(--muted);margin:18px 0 25px}.admin-project{padding:16px 0;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:20px}.admin-project>div{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.admin-project h3{font-size:14px;font-weight:600;margin:0}.badge{display:inline-flex;align-items:center;gap:6px;border-radius:4px;padding:5px 8px;background:#e9f3ef;color:#336c54;font-size:10px}.badge-inactive{color:#687884;background:#e9edef}.footer{width:min(1180px,calc(100% - 56px));margin:0 auto;display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--border);padding:22px 0 26px;color:var(--muted);font-size:11px}.footer span:first-child{font-weight:600}.loading{min-height:200px;display:flex;align-items:center;justify-content:center;gap:12px;color:var(--muted);font-size:14px}.loading-dot{width:8px;height:8px;background:var(--sun);border-radius:50%;animation:pulse 1.3s infinite}.notice{border-left:3px solid var(--sun);background:#fff7df;padding:14px 18px;font-size:13px;line-height:1.6;margin-bottom:30px}.notice-error{border-color:#a5444b;background:#fceef0;color:#87363d}.dialog{border:1px solid var(--border);border-radius:10px;width:min(520px,calc(100vw - 30px));padding:28px;color:var(--navy);max-height:calc(100dvh - 40px);overflow:auto}.dialog::backdrop{background:#0b263a99}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.icon-button{background:transparent;border:0;width:36px;height:36px;font-size:27px;color:var(--muted)}.dialog p{font-size:13px;line-height:1.8;color:var(--muted)}.dialog label{display:flex;flex-direction:column;font-size:12px;font-weight:600;gap:8px;margin:18px 0}.dialog input,.dialog select,.dialog textarea{width:100%;border:1px solid #cdd8df;background:#fff;color:var(--navy);padding:11px 12px;border-radius:5px;font-size:14px;min-height:44px}.dialog textarea{resize:vertical}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:26px}.form-error{color:#933d45!important;background:#fceef0;padding:10px 12px;border-radius:4px}.member{display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid var(--border);padding:12px 0;font-size:13px}.member>span{overflow-wrap:anywhere}.member-empty{color:var(--muted);font-size:13px}.danger-button{color:#933d45}.access-revoke-confirm{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.access-revoke-confirm .button{font-size:11px;padding:6px 10px;min-height:36px}@keyframes pulse{50%{opacity:.35}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}@media(max-width:800px){.header{padding:16px 22px;min-height:82px}.brand img{width:190px}.brand>span{display:none}.main{width:calc(100% - 44px);padding-top:34px}.footer{width:calc(100% - 44px)}.welcome{grid-template-columns:1fr;min-height:auto;padding-top:34px;gap:30px}.welcome-mark{height:270px}.mark-ring{width:220px;height:220px;top:0;left:calc(50% - 110px)}.ring-inner{width:156px;height:156px;top:32px;left:calc(50% - 78px)}.mark-sun{width:44px;height:44px;top:25px;left:calc(50% + 49px)}.mark-shape{width:94px;height:102px;left:calc(50% - 47px);top:65px}.mark-label{bottom:15px}.project{grid-template-columns:48px 1fr;gap:18px;padding:22px}.project-symbol{width:48px;height:48px;font-size:23px}.project>.button{grid-column:2;justify-self:start;margin-top:4px}.account{gap:8px}.account-name{max-width:140px;font-size:11px}}@media(max-width:480px){.header{padding:14px 18px;flex-wrap:wrap;gap:12px}.brand img{width:172px}.account{width:100%;justify-content:space-between;border-top:1px solid var(--border);padding-top:10px}.account-name{max-width:none}.main{width:calc(100% - 36px);padding:28px 0 48px}.welcome{padding-top:25px}.welcome h1{font-size:42px}.welcome .lead{font-size:15px}.welcome-mark{height:245px}.page-heading{gap:14px}h1{font-size:28px}.project{gap:14px;padding:20px 18px;grid-template-columns:38px 1fr}.project-symbol{width:38px;height:38px;font-size:20px}.project h2{font-size:18px}.project-description{font-size:12px}.admin-heading{align-items:flex-start}.admin-heading h2{font-size:18px}.admin-heading .button{font-size:11px;padding:10px}.admin-project{align-items:flex-start}.admin-project>.button{font-size:11px;padding:10px}.footer{width:calc(100% - 36px);flex-wrap:wrap}.dialog{padding:22px}.dialog-actions{flex-wrap:wrap}.project>.button{gap:20px}}
.users-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:30px;margin-top:40px}.users-heading .admin-note{margin:12px 0 20px;max-width:660px}.user-search{display:flex;flex-direction:column;gap:8px;font-size:11px;color:var(--muted);flex-shrink:0}.user-search input{font:inherit;font-size:13px;min-height:40px;padding:10px 12px;border:1px solid var(--border);border-radius:5px;width:230px;background:#fff;color:var(--navy)}.user-table-wrap{overflow-x:auto}.user-table{border-collapse:collapse;width:100%;font-size:13px;text-align:left}.user-table th{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:var(--muted);padding:12px 14px;border-bottom:1px solid var(--border);font-weight:600}.user-table td{padding:18px 14px;border-bottom:1px solid var(--border);vertical-align:middle}.user-table th:first-child,.user-table td:first-child{padding-left:0}.user-table td:last-child{text-align:right}.user-table strong{font-size:13px;font-weight:600;overflow-wrap:anywhere}.user-detail{display:block;font-size:11px;color:var(--muted);margin-top:5px}.user-date{color:var(--muted);font-size:12px;white-space:nowrap}.role-select{border:1px solid var(--border);border-radius:5px;padding:10px;font:inherit;font-size:12px;color:var(--navy);background:#fff;min-height:40px}.badge-owner{background:#fff1c6;color:var(--navy)}.user-table .button{min-height:40px;padding:10px 14px;font-size:11px}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}@media(max-width:700px){.users-heading{flex-direction:column;gap:4px}.user-search{width:100%;margin-bottom:20px}.user-search input{width:100%}.user-table th,.user-table td{padding:12px 9px}.user-table .user-date{display:none}.user-table th:nth-child(3){display:none}.user-table td:last-child{min-width:84px}.role-select{max-width:130px}.user-table{font-size:12px}.user-table strong{font-size:12px}}
.project-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.sharing-policy{flex-direction:row!important;align-items:center;line-height:1.7}.sharing-policy input{width:20px!important;min-height:20px!important;flex:0 0 20px}.share-row{display:flex;justify-content:space-between;gap:16px;padding:15px 0;border-top:1px solid var(--border);font-size:13px}.share-row>div{min-width:0;overflow-wrap:anywhere}.share-dialog{width:min(620px,calc(100vw - 30px))}.share-dialog h3{font-size:15px;margin-top:28px}#share-url{overflow-wrap:anywhere;font-size:12px}@media(max-width:800px){.project-actions{grid-column:2;justify-content:flex-start}}@media(max-width:480px){.share-row{flex-direction:column}.share-row>.button{align-self:flex-start}.project-actions .button{white-space:normal;text-align:center}}

/* AeroFuture UX 2026-10-13: public navigation and help. */
.public-navigation{display:flex;align-items:center;gap:20px;margin-left:auto;font-size:13px}.public-navigation a{min-height:44px;display:flex;align-items:center;color:#12354b;text-decoration:none}.portal-languages{display:flex}.portal-languages button{min-width:44px;min-height:44px;border:0;background:transparent;font:600 13px/1.4 "Segoe UI",Arial,sans-serif;border-radius:4px;cursor:pointer;color:#12354b}.portal-languages [aria-pressed=true]{background:#0c2d42;color:white}.access-help{font-size:14px;color:#526774;line-height:1.7;margin:24px 0}.welcome-note{font-size:14px;color:#526774}.public-navigation :focus-visible{outline:3px solid #007da3;outline-offset:3px}@media(max-width:1100px){.header{flex-wrap:wrap}.account{margin-left:auto}}@media(max-width:700px){.public-navigation{width:100%;order:3;justify-content:space-between;gap:8px}.public-navigation a{font-size:12px}.account{margin-left:auto}}

/* Project permissions use existing administrator controls. */
.member{flex-wrap:wrap}.member-access{min-width:170px;max-width:100%;padding:9px 10px;border:1px solid #c6d5df;border-radius:5px;background:#fff;color:#10354e;font:inherit;font-size:12px}#access-form{flex-wrap:wrap}#access-level{min-width:170px}

.button-danger{background:#a82732;color:#fff;border-color:#a82732}.button-danger:hover{background:#84212a}
.button-danger:disabled{opacity:.45;cursor:not-allowed}.deletion-summary{display:flex;gap:32px;flex-wrap:wrap;background:#f4f7f9;padding:16px;border-radius:12px}.deletion-summary dt{font-size:12px;color:#5d7280}.deletion-summary dd{margin:6px 0 0;font-size:20px;font-weight:700}#delete-project-title{overflow-wrap:anywhere}.deletion-progress{font-size:12px;color:#5d7280}#deletion-jobs{margin-top:24px}
