.adminshell{max-width:1250px;margin:auto;padding:35px 4% 80px}.adminheader{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:30px}.adminheader h1{font-size:36px;letter-spacing:-1px;margin:10px 0}.adminheader p{font-size:13px}.adminnav{display:flex;gap:8px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:30px}.adminnav a{padding:10px 16px;background:#e6ebdf;font-size:13px}.adminnav .chosen{background:var(--green);color:white}.adminpanel{background:white;border:1px solid var(--line);padding:30px;margin:20px 0}.adminpanel h2{font-size:25px}.adminpanel label{display:block;font-size:13px;font-weight:700;margin:16px 0}.adminpanel input:not([type=checkbox]):not([type=color]),.adminpanel select,.adminpanel textarea{display:block;width:100%;border:1px solid #bdc9be;background:#fff;color:#203d37;padding:10px;margin-top:6px;border-radius:0}.adminpanel input[type=color]{display:block;width:100%;height:45px;background:white;border:1px solid #bdc9be;margin-top:6px}.adminpanel button,.adminheader button,.smallbutton{border:1px solid #bcc9ba;background:#eaf0e0;padding:10px 17px;cursor:pointer;font-size:13px;display:inline-block}.adminpanel .primary{background:var(--green);color:#fff}.admingrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 25px}.adminpanel small{font-weight:400;color:#627064}.flash{padding:15px 20px;background:#e1efc8;border-left:4px solid #587e28;margin:20px 0}.flash.error{background:#fce9e0;border-color:#a33f20}.media-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.media-grid img{width:100%;height:130px;object-fit:contain;background:repeating-conic-gradient(#eee 0% 25%,#fff 0% 50%) 50%/20px 20px}.media-grid .adminpanel{padding:18px}.admin-table{width:100%;border-collapse:collapse;font-size:13px}.admin-table th,.admin-table td{padding:13px 10px;text-align:left;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.scroll-table{overflow-x:auto}.loginbox{max-width:500px;margin:65px auto}.hint{font-size:13px;color:#5d6d61}.status-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.status-grid strong{display:block;font-size:40px}.danger{color:#96350e!important;border-color:#ba7155!important}.nav-group{position:relative}.nav-children{display:none;position:absolute;background:white;color:var(--ink);min-width:220px;padding:15px;z-index:5;border:1px solid var(--line);box-shadow:0 8px 20px #0001}.nav-children a{display:block;padding:8px}.nav-group:hover>.nav-children,.nav-group:focus-within>.nav-children{display:block}.nav-children .nav-children{position:static;box-shadow:none;border:0;border-left:1px solid var(--line);margin:0 0 0 8px}.portal-logo{max-width:220px;max-height:70px;object-fit:contain}.partner-logo{max-width:130px;max-height:30px;object-fit:contain;vertical-align:middle}.page-body{white-space:pre-wrap;line-height:1.9;overflow-wrap:anywhere}.pagechildren{border-top:1px solid var(--line);margin-top:40px;padding-top:25px}.pagechildren a{display:block;padding:12px 0;text-decoration:underline}.crumbs{font-size:13px;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:25px}.loginbox h1{font-size:32px;letter-spacing:-1px}@media(max-width:700px){.admingrid,.media-grid,.status-grid{grid-template-columns:1fr}.adminheader{align-items:start;flex-wrap:wrap}.adminpanel{padding:20px}.adminnav{gap:6px}.adminnav a{padding:9px 10px;font-size:12px}.nav-children{left:auto;right:0}.portal-logo{max-width:180px}.topline .partner-logo{max-width:85px}}
.project-editor-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:25px 0}.project-editor-heading p{margin:0;font-size:14px}.project-media-picker{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;max-height:480px;overflow:auto;padding:8px;border:1px solid var(--line)}.project-media-picker label{border:1px solid var(--line);padding:12px;margin:0;font-size:11px;overflow-wrap:anywhere}.project-media-picker img{display:block;width:100%;height:70px;object-fit:contain;background:white;margin:8px 0}.project-document-picker{max-height:320px;overflow:auto;border:1px solid var(--line);padding:10px 20px}.project-document-picker label{font-weight:400}.project-savebar{border-top:1px solid var(--line);margin-top:30px;padding-top:15px}@media(max-width:700px){.project-media-picker{grid-template-columns:repeat(2,minmax(0,1fr))}.project-editor-heading{align-items:flex-start;flex-wrap:wrap}}
.project-table{min-width:720px}.project-table td:last-child{min-width:85px;white-space:nowrap}.project-date{white-space:nowrap}
.media-grid img.logo-dark,.project-media-picker img.logo-dark{background:#263143;padding:12px}.logo-source{text-decoration:underline;text-underline-offset:3px}.logo-audit{margin-top:25px;border-top:1px solid var(--line);padding-top:20px}.logo-audit summary,.adminpanel>summary{cursor:pointer;font-weight:700}.logo-audit li{font-size:13px;margin:8px 0}
/* Focused editorial workflows and explicit access scopes. */
.adminnav{position:sticky;top:0;z-index:5;background:var(--paper,#f7f8f2);padding-block:12px;flex-wrap:wrap}.adminnav a:focus-visible,summary:focus-visible{outline:3px solid currentColor;outline-offset:4px}fieldset{border:1px solid #bcc7bd;border-radius:6px;padding:20px;margin:24px 0}legend{font-weight:700;padding:0 8px}.editor-section{border-block:1px solid #d8dfd5;margin:24px 0;padding:20px 0}summary{font-weight:700;cursor:pointer;min-height:30px}.permission-picker{max-height:320px;overflow:auto;padding:12px;background:#f5f6f2}.permission-picker label{display:flex;align-items:baseline;gap:10px;margin:0;padding:8px}.permission-picker input{flex:none;width:auto}.project-savebar{background:#fff;border:1px solid #bcc7bd;padding:20px;border-radius:6px}.status-grid a{text-decoration:none;color:inherit}.status-grid a:hover{box-shadow:0 0 0 2px currentColor}.adminpanel details[open] summary{margin-bottom:16px}@media(max-width:700px){.adminnav{position:static}.adminnav a{padding:10px}.adminpanel{padding:18px}fieldset{padding:12px}}
.permission-picker label[hidden]{display:none}.admin-table th:nth-last-child(2){word-break:normal}
.project-links-editor{margin:32px 0}.project-link-row{display:flex;gap:16px;align-items:start;background:#f5f6f2;border:1px solid #d8dfd5;border-radius:6px;padding:20px;margin:12px 0}.link-row-fields{display:grid;grid-template-columns:minmax(160px,1fr) minmax(180px,2fr);gap:0 20px;flex:1;min-width:0}.link-url-field{grid-column:1/-1}.project-link-row label{margin-bottom:12px}.project-link-row .remove-project-link{margin-top:26px;background:white}.project-links-editor #project-link-feedback{margin-left:12px}@media(max-width:650px){.project-link-row{display:block;padding:14px}.link-row-fields{grid-template-columns:1fr}.project-link-row .remove-project-link{margin-top:0}}
.internal-project-field{border-left:3px solid #8c997c;background:#f5f6f2;padding:16px 20px;margin:20px 0}.internal-project-field label{max-width:480px}.internal-project-field .hint{margin-bottom:0}
/* Project lifecycle indicators: always retain the text label. */
.admin-table .project-status-cell{white-space:nowrap;overflow-wrap:normal;min-width:145px}.admin-project-status{display:inline-flex;align-items:center;gap:8px;padding:6px 11px;border:1px solid var(--status-border);border-radius:6px;background:var(--status-bg);color:var(--status-ink);font-size:12px;font-weight:700;line-height:1.5;white-space:nowrap}.status-indicator{width:9px;height:9px;flex:0 0 9px;border-radius:50%;background:var(--status-ink)}.status-ongoing{--status-bg:#e9f6ee;--status-ink:#17643a;--status-border:#97bca5}.status-completed{--status-bg:#edf0f5;--status-ink:#465468;--status-border:#a4aebc}.status-upcoming{--status-bg:#eaf1fd;--status-ink:#245a9a;--status-border:#99afd0}.status-pending{--status-bg:#fff3da;--status-ink:#805000;--status-border:#c4a362}.status-draft{--status-bg:#f3ebfa;--status-ink:#70418b;--status-border:#b49ac4}.status-unknown{--status-bg:#f1f1ef;--status-ink:#55574f;--status-border:#adb0a4}.status-completed .status-indicator{border-radius:2px}.status-pending .status-indicator{border-radius:2px;transform:rotate(45deg)}.status-draft .status-indicator,.status-unknown .status-indicator{background:transparent;border:2px solid var(--status-ink)}
