
:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#252b2f;background:#f3f5f6;font-size:14px;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}button{border:1px solid #d8dcdf;border-radius:8px;padding:10px 15px;background:white;color:#252b2f;font-weight:600}button:hover{background:#ebeff2}button.primary{background:#ffc125;border-color:#ffc125;color:#192b37}button.dark{background:#303842;color:white;border-color:#303842}button.danger{color:#a13232}button.small{padding:6px 10px;font-size:12px}a{color:#147ea5}h1,h2,h3,p{margin-top:0}h1{font-size:30px;letter-spacing:-1px;margin-bottom:8px;font-weight:650}h2{font-size:19px;letter-spacing:-.3px}h3{font-size:15px}p{line-height:1.6}.muted{color:#717a80}.eyebrow{text-transform:uppercase;font-size:10px;letter-spacing:1.8px;font-weight:700;color:#7d8a93}.shell{display:grid;grid-template-columns:235px 1fr;min-height:100vh}.sidebar{background:#303842;color:#dee2e5;padding:32px 20px;display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0;width:235px}.brand{font-size:32px;letter-spacing:5px;color:#ffc125;font-weight:800;padding-left:12px}.brand-sub{font-size:10px;letter-spacing:2px;color:#919ba3;margin:7px 0 48px 13px}.sidebar .eyebrow{margin:0 12px 12px}.nav{display:grid;gap:7px}.nav button{border:0;color:#aeb8bf;text-align:left;background:transparent;display:flex;gap:13px;align-items:center;padding:13px 14px;font-weight:500}.nav button:hover{background:#272d32}.nav button.active{background:#ffc125;color:#272d32;font-weight:700}.nav-icon{width:20px;font-size:19px}.side-note{border:1px solid #3a444c;padding:16px;border-radius:10px;margin-top:auto;font-size:12px;color:#9eaab3;line-height:1.7}.side-note strong{display:block;color:#dee2e5;margin-bottom:4px}.profile{margin-top:22px;display:flex;align-items:center;gap:10px}.avatar{width:34px;height:34px;border-radius:50%;background:#dfe7ec;color:#4f5d67;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0}.profile .avatar{background:#3a444c;color:#ffc125}.profile small{display:block;font-size:10px;color:#a4aeb6;margin-top:4px}.profile button{margin-left:auto;padding:5px;background:transparent;color:#a4aeb6;border:0}.workspace{grid-column:2;min-width:0}.topbar{height:76px;background:#fff;border-bottom:1px solid #dfe4e7;display:flex;align-items:center;justify-content:space-between;padding:0 40px;font-size:12px;color:#717a80}.topbar strong{color:#374047;font-weight:500}.top-right{display:flex;gap:20px;align-items:center}.live-dot{display:inline-block;background:#27acd1;width:6px;height:6px;border-radius:50%;margin-right:7px}.content{padding:36px 40px;max-width:1650px;margin:auto}.heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:28px}.heading p{font-size:13px;margin-bottom:0}.actions{display:flex;gap:8px;flex-wrap:wrap}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:30px}.stat{background:#fff;border:1px solid #dde2e5;border-radius:12px;padding:20px 23px}.stat .label{font-size:12px;color:#6c757b}.stat .number{display:block;font-size:34px;font-weight:600;margin:15px 0 7px;letter-spacing:-1px}.stat small{color:#808990;font-size:11px}.stat.highlight{background:#e2e9ee;border-color:#d5dbdf}.section-head{display:flex;justify-content:space-between;align-items:center;margin:30px 0 16px}.section-head h2{margin:0}.section-head span{font-size:12px;color:#7a8288}.panel{background:white;border:1px solid #dde2e5;border-radius:12px;overflow:hidden}.toolbar{display:flex;gap:12px;align-items:center;padding:17px 20px;border-bottom:1px solid #e5e9ec}.toolbar input{max-width:310px}.toolbar select{width:auto;margin-left:auto}.toolbar .muted{margin-left:auto}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th{text-align:left;padding:13px 22px;background:#f9fbfc;color:#899095;font-size:10px;letter-spacing:1px;text-transform:uppercase;font-weight:600}td{padding:19px 22px;border-top:1px solid #e9edf0;font-size:12px}td strong{font-size:13px;display:block;margin-bottom:6px}td small{font-size:11px;color:#8a9297}.row-link{border:0;background:none;padding:0;text-align:left}.row-link:hover{background:none;color:#1485ad}.pill{display:inline-flex;align-items:center;padding:5px 9px;border-radius:5px;font-size:10px;font-weight:600;background:#e9edf0;color:#677279;white-space:nowrap}.pill.progress,.pill.ready{background:#e0e5e8;color:#335771}.pill.blocked,.pill.failed{background:#fbe8e3;color:#b35545}.pill.completed,.pill.done{background:#e3e9ee;color:#355b76}.pill.planned{background:#edf0f7;color:#697a9b}.pill.production{background:#f5e9dc;color:#987349}.progress-track{height:5px;background:#e7ecf0;width:100px;border-radius:9px;overflow:hidden}.progress-fill{height:100%;background:#26acd1;border-radius:9px}.progress-cell{display:flex;gap:10px;align-items:center;font-size:10px;color:#78838b}.grid-two{display:grid;grid-template-columns:1.6fr 1fr;gap:22px}.activity-item{display:flex;gap:12px;padding:16px 20px;border-bottom:1px solid #e9edf0}.activity-item:last-child{border:0}.activity-text{font-size:12px;line-height:1.6;overflow-wrap:anywhere}.activity-text small{display:block;color:#899197;font-size:10px;margin-top:3px}.card-body{padding:23px}.empty{text-align:center;padding:55px 25px;color:#798289}.empty h3{color:#384249;margin:12px 0}.empty-icon{font-size:28px;color:#8aa7b5}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.env-card,.template-card{padding:24px}.env-card h2,.template-card h2{margin:15px 0 10px}.card-footer{border-top:1px solid #e5eaed;margin-top:20px;padding-top:16px;display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#798289}.info-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.info-grid label{font-size:10px;color:#7f8990;text-transform:uppercase;letter-spacing:.8px;display:block;margin-bottom:8px}.info-grid p{font-size:13px;margin:0}.upgrade-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:22px;margin-top:22px}.phase{margin-bottom:18px}.phase-title{display:flex;align-items:center;gap:12px;padding:17px 20px;background:#f8fafb;border-bottom:1px solid #e0e4e7}.phase-number{border:1px solid #dadfe3;border-radius:6px;padding:5px 8px;font-size:11px;color:#6d808e}.phase-title h3{margin:0}.phase-title small{margin-left:auto;font-size:11px;color:#848f97}.task-row{display:flex;gap:12px;align-items:flex-start;padding:18px 20px;border-bottom:1px solid #e9edf0}.task-row:last-child{border:0}.task-check{border:1px solid #cdd3d8;border-radius:50%;width:22px;height:22px;display:flex;align-items:center;justify-content:center;font-size:11px;flex-shrink:0;color:#1587ae}.task-check.done{background:#e0e5e8}.task-main{flex:1;min-width:0}.task-title{border:0;background:transparent;text-align:left;padding:0;font-size:13px}.task-title:hover{background:none;color:#1485ad}.task-main p{font-size:11px;color:#848e95;margin:7px 0 0}.task-meta{display:flex;align-items:center;gap:9px;margin-top:10px;font-size:10px;color:#808d97}.task-main .pill{padding:3px 6px;font-size:9px}.task-owner{font-size:10px;color:#75838d;margin-top:3px}.rail .panel{margin-bottom:18px}.rail h3{margin-bottom:12px}.rail p{font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere}.notice{border:1px solid #d0d6da;background:#eaeff2;padding:13px 16px;border-radius:8px;font-size:12px;line-height:1.6;margin-bottom:20px;color:#586873}.auth{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.auth-story{background:#303842;color:#e2e9ee;padding:60px;display:flex;flex-direction:column;justify-content:center}.auth-story .brand{padding:0}.auth-story h1{font-size:52px;line-height:1.15;max-width:530px;margin:60px 0 25px}.auth-story p{color:#a9b5bd;max-width:420px}.auth-form{display:flex;align-items:center;justify-content:center;padding:35px}.auth-form form{width:100%;max-width:390px}.auth-form h2{font-size:28px;margin-bottom:10px}label.field{display:block;margin-bottom:17px;font-size:12px;font-weight:600}label.field>span{display:block;margin-bottom:7px}input,select,textarea{width:100%;border:1px solid #d9dee1;border-radius:7px;background:white;color:#374148;padding:11px 12px;min-width:0}textarea{resize:vertical;min-height:85px;line-height:1.5}input:focus,select:focus,textarea:focus{border-color:#7a8c99;outline:2px solid #e0e4e7}input[type=checkbox]{width:auto;accent-color:#169bc5}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.form-grid .wide{grid-column:1/-1}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px;padding-top:18px;border-top:1px solid #e2e6e8}.error{color:#a54039;font-size:12px;line-height:1.5;margin-bottom:14px}.help{font-size:11px;font-weight:400;color:#778690;line-height:1.5;display:block;margin-top:7px}dialog{border:1px solid #d7dce0;border-radius:16px;padding:28px;width:min(740px,95vw);max-height:90vh;color:#252b2f;box-shadow:0 20px 90px #0a1f2533}dialog::backdrop{background:#26344188;backdrop-filter:blur(3px)}.dialog-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.dialog-head h2{margin:0}.close{padding:3px 8px;font-size:21px;border:0}.template-task{background:#f4f6f8;border:1px solid #dde2e5;padding:15px;border-radius:8px;margin-bottom:12px}.template-task .form-grid{grid-template-columns:2fr 1fr}.checks{display:flex;gap:18px;align-items:center;margin:8px 0;font-size:12px}.attachment{display:block;padding:7px 0;font-size:12px;overflow-wrap:anywhere}.loading{padding:70px;text-align:center}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#192b38;color:white;border-radius:9px;padding:13px 22px;z-index:10;display:none;font-size:13px;box-shadow:0 6px 25px #0002}.mobile-brand{display:none}.spacer{height:12px}.full{width:100%}.nowrap{white-space:nowrap}.text-link{color:#1485ad;background:none;border:0;padding:0;font-size:12px}.account-note{font-size:11px;color:#7b8993;margin-top:30px}.metric-line{display:flex;justify-content:space-between;font-size:12px;padding:8px 0}.mobile-menu{display:none}@media(min-width:1500px){.content{padding-top:44px}}@media(max-width:1150px){.sidebar{width:195px;padding:28px 14px}.shell{grid-template-columns:195px 1fr}.content{padding:28px 24px}.topbar{padding:0 24px}.upgrade-layout{grid-template-columns:1fr}.rail{display:grid;grid-template-columns:1fr 1fr;gap:18px}.cards{grid-template-columns:repeat(2,1fr)}.info-grid{grid-template-columns:1fr 1fr}.stat{padding:17px}.grid-two{grid-template-columns:1fr}}@media(max-width:740px){.shell{display:block}.sidebar{position:relative;width:100%;padding:16px;display:block}.brand{font-size:23px}.brand-sub,.side-note,.sidebar>.eyebrow,.profile{display:none}.nav{display:flex;overflow:auto;margin-top:15px;gap:5px}.nav button{white-space:nowrap;padding:9px;font-size:11px}.nav-icon{display:none}.topbar{height:50px;padding:0 18px}.top-right{gap:10px;font-size:10px}.content{padding:25px 18px}.heading{flex-wrap:wrap}h1{font-size:26px}.stats{grid-template-columns:1fr 1fr;gap:10px}.stat .number{font-size:29px}.cards,.grid-two,.rail{grid-template-columns:1fr}.info-grid{gap:18px}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.toolbar{flex-wrap:wrap}.toolbar input{max-width:none}.toolbar select{width:100%}.auth{display:block}.auth-story{padding:28px}.auth-story h1{font-size:30px;margin:25px 0 15px}.auth-story p{display:none}.auth-form{padding:30px 22px}.task-row{padding:15px 12px}.task-owner{display:none}.template-task .form-grid{grid-template-columns:1fr}.checks{flex-wrap:wrap}}


/* Preserve the supplied logo colours and aspect ratio on a light backing. */
.brand{display:inline-flex;align-items:center;align-self:flex-start;background:#fff;border-radius:8px;padding:12px 14px;line-height:0;letter-spacing:normal}.brand img{display:block;width:144px;height:auto;max-width:100%;object-fit:contain}.auth-story .brand{padding:15px 18px;margin-bottom:18px}.sidebar .brand-sub{margin-top:14px}@media(max-width:740px){.brand{padding:9px 12px}.brand img{width:120px}.auth-story .brand{padding:12px 15px;margin-bottom:12px}}

#env-import-preview{margin-top:16px;max-height:280px;overflow:auto}#env-import-preview:empty{display:none}

.upgrade-filters{align-items:end;flex-wrap:wrap}.filter-field{display:grid;gap:7px;flex:1;min-width:170px;font-size:11px;color:#5f6c76}.filter-field input{max-width:none}.filter-field select{width:100%;margin:0}.list-caption{padding:12px 20px;color:#748089;font-size:11px;background:#f9fafb}.due-badge{display:inline-block;font-size:10px;font-weight:650;border-radius:5px;padding:4px 7px;margin:6px 0 0 5px}.due-badge.due-overdue{color:#a43a2e;background:#fbe5df}.due-badge.due-soon{color:#8c650d;background:#fff0c9}.due-badge.due-active{color:#434f58;background:#e4eaee}tr.due-overdue{background:#fff9f6}tr.due-soon{background:#fffdf5}.task-tick{width:21px!important;height:21px;flex-shrink:0;margin:0;cursor:pointer;accent-color:#169bc5}.workflow-strip{display:flex;gap:18px;align-items:center;flex-wrap:wrap;padding:17px 0 0;font-size:12px;color:#5d6d79}.workflow-strip button{margin-left:auto}@media(max-width:740px){.filter-field{min-width:100%;width:100%}.workflow-strip{gap:10px}.workflow-strip button{margin-left:0}}

.changes-table .change-summary{min-width:240px;max-width:460px;white-space:normal}.change-description{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;line-height:1.6;margin:10px 0;color:#5f6c76}.changes-table td{vertical-align:top}.changes-table a{font-size:12px}

#environment-change-log{min-height:390px;font-size:14px;line-height:1.8}.log-heading{margin-top:0;gap:15px;flex-wrap:wrap}#environment-log-form .field{margin-top:18px}#environment-log-form .form-actions{position:sticky;bottom:0;background:#fff;padding-bottom:10px}

.environment-summary{display:flex;gap:25px;flex-wrap:wrap;margin-bottom:20px;color:#748089;font-size:12px}.environment-summary strong{color:#394249;font-size:17px;margin-right:4px}.environment-table td{padding:13px 18px}.environment-table th{padding:13px 18px}.environment-table .env-name{max-width:260px;min-width:180px}.environment-table strong{margin:0}.env-note{display:block;max-width:240px;overflow:hidden;text-overflow:ellipsis;margin-top:5px}.env-log-time{display:block;margin-top:6px}.pagination{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:16px 20px;border-top:1px solid #dfe7ec;font-size:11px;color:#6b7a84}.pagination label{margin-left:auto;display:flex;align-items:center;gap:6px}.pagination select{width:70px;padding:6px}.log-workspace{display:grid;grid-template-columns:260px minmax(0,1fr);gap:20px;align-items:start}.log-directory{position:sticky;top:20px}.log-picker-controls{padding:18px;display:grid;gap:10px;border-bottom:1px solid #dee2e5}.log-picker-controls h3{margin:0}.log-picker-controls input,.log-picker-controls select{font-size:12px}.log-picker-list{max-height:530px;overflow:auto;padding:7px}.log-env-item{display:block;width:100%;text-align:left;border:0;background:transparent;padding:13px 12px;margin-bottom:4px;font-weight:400}.log-env-item strong{display:block;font-size:12px;overflow-wrap:anywhere}.log-env-item span{display:block;font-size:11px;color:#76838c;margin-top:5px}.log-env-item small{font-size:10px;color:#7f8f9b;display:block;margin-top:5px}.log-env-item.selected{background:#e2e8ed;box-shadow:inset 3px 0 #27acd1}.log-workspace #environment-change-log{min-height:430px}@media(max-width:1000px){.log-workspace{grid-template-columns:215px minmax(0,1fr);gap:14px}}@media(max-width:740px){.log-workspace{grid-template-columns:1fr}.log-directory{position:static}.log-picker-list{max-height:180px}.pagination label{margin-left:0}.environment-summary{gap:15px}}

.environment-table-scroll{max-height:52vh;overflow:auto}.environment-table th{position:sticky;top:0;z-index:1}.environment-table td{padding-top:10px;padding-bottom:10px}.environment-table-scroll .environment-table{min-width:800px}

/* NEON logo palette and full-width navigation. */
:root{color:#343d48;background:#f4f6f8;--neon-blue:#27acd1;--neon-yellow:#ffc125;--neon-charcoal:#303842}
.shell{display:block;min-height:100vh}.workspace{width:100%;min-width:0}.app-navigation{display:grid;grid-template-columns:165px minmax(0,1fr) auto;align-items:center;gap:24px;padding:14px 32px 12px;background:#fff;border-top:4px solid var(--neon-yellow);border-bottom:1px solid #e1e6eb;position:sticky;top:0;z-index:30}.app-brand .brand{padding:0;background:transparent;border-radius:0}.app-brand .brand img{width:132px}.app-brand .brand-sub{margin:6px 0 0;font-size:9px;color:#84909c;letter-spacing:1.7px}.app-navigation .nav{display:flex;align-items:center;gap:4px;overflow-x:auto;scrollbar-width:thin}.app-navigation .nav button{flex-shrink:0;color:#647181;border:0;border-radius:7px;padding:11px 13px;background:transparent;font-size:13px;font-weight:550;white-space:nowrap}.app-navigation .nav button:hover{background:#eff7fb;color:#157fa6}.app-navigation .nav button.active{background:#e5f5fc;color:#147fa8;box-shadow:inset 0 -3px var(--neon-blue);font-weight:700}.app-navigation .profile{margin:0;gap:9px;color:#343d48;font-size:12px;min-width:0}.app-navigation .profile-details{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-navigation .profile small{color:#87929d;font-size:10px;margin-top:4px}.app-navigation .profile .avatar{background:#eaf1f6;color:#42627c}.app-navigation .profile button{color:#7b8793;background:transparent;padding:7px}.topbar{height:46px;padding:0 32px;background:#fafbfd;border-bottom:1px solid #e7ecf0}.topbar strong{color:#556473}.top-right{gap:15px}.top-right button{font-size:11px;padding:5px 9px}.content{width:100%;max-width:none;padding:26px 32px 36px}.heading{margin-bottom:23px}button.dark{background:var(--neon-charcoal);border-color:var(--neon-charcoal);color:#fff}button.dark:hover{background:#475460;border-color:#475460}button.primary{background:var(--neon-yellow);border-color:var(--neon-yellow);color:#3c4148}button:hover{background:#f0f7fb}a,.text-link{color:#147fa8}.progress-fill{background:var(--neon-blue)}.live-dot{background:var(--neon-blue)}.stat.highlight{background:#eaf6fc;border-color:#d9edf6}.pill.completed,.pill.done,.pill.progress,.pill.ready{background:#e4f3fb;color:#197da5}.notice{background:#f0f7fc;border-color:#d9e9f2;color:#526e83}.log-env-item.selected{background:#e7f5fc;box-shadow:inset 3px 0 var(--neon-blue)}.log-directory{top:110px}.log-workspace{grid-template-columns:250px minmax(0,1fr)}.auth-story{background:var(--neon-charcoal)}.auth-story p{color:#b7c3cf}.auth-story .eyebrow,.auth-story .account-note{color:#a5b9c8}.auth-story h1{color:#fff}input[type=checkbox],.task-tick{accent-color:var(--neon-blue)}input:focus,select:focus,textarea:focus{border-color:#65b9d4;outline:2px solid #e1f2fa}.environment-table-scroll{max-height:58vh}#toast{background:#303e4b}
@media(min-width:1500px){.content{padding:28px 40px 40px}.app-navigation,.topbar{padding-left:40px;padding-right:40px}}
@media(max-width:1150px){.app-navigation{grid-template-columns:145px minmax(0,1fr) auto;gap:12px;padding-left:24px;padding-right:24px}.app-navigation .nav button{padding:11px 9px;font-size:12px}.profile-details{display:none}.content{padding:24px}.topbar{padding:0 24px}}
@media(max-width:800px){.app-navigation{grid-template-columns:1fr auto;padding:12px 18px 0;gap:10px}.app-navigation .nav{grid-column:1/-1;grid-row:2;padding-bottom:10px}.app-navigation .profile{grid-column:2;grid-row:1;display:flex}.app-brand .brand img{width:113px}.app-brand .brand-sub{font-size:8px}.topbar{padding:0 18px}.content{padding:22px 18px}.log-workspace{grid-template-columns:1fr}.log-directory{position:static}.log-picker-list{max-height:190px}.top-right>span{display:none}}
