:root {
  /* Shared CDL brand foundation, aligned with Chronos-CDL/frontend/src/index.css. */
  --ink:#1b2430; --muted:#5b6b66;
  --teal:#2f6f5e; --teal-dark:#1f4a3d; --aqua:#eaf2ee; --page:#fbfbfa;
  --white:#fff; --line:#dcdeda; --soft:#f5f6f4; --amber:#a9772e; --green:#1c6b4c;
  --red:#b3413a; --navy:#1f4a3d; --navy-2:#2f6f5e;
  --radius:8px; --shadow:0 1px 3px rgba(20,30,25,.06);
  --sp-1:4px; --sp-2:8px; --sp-3:12px; --sp-4:16px; --sp-5:24px; --sp-6:32px;
}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font:14px/1.5 -apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--ink);background:var(--page);-webkit-font-smoothing:antialiased}
a{color:var(--teal-dark);text-decoration:none}button,input,select{font:inherit}.sidebar{position:fixed;inset:0 auto 0 0;width:266px;background:var(--navy);color:#dbe6ef;padding:26px 18px 18px;display:flex;flex-direction:column;z-index:10}.logo{display:flex;align-items:center;gap:11px;color:#fff;font-size:16px;font-weight:750;padding:0 8px 24px}.logo-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:linear-gradient(135deg,#11a3a1,#59c4ba);font:800 19px Georgia}.logo small{display:block;color:#8fa5b9;text-transform:uppercase;letter-spacing:.11em;font-size:9px;margin-top:1px}.nav-section{margin:11px 0}.nav-label{display:block;color:#7790a6;text-transform:uppercase;letter-spacing:.13em;font-weight:700;font-size:10px;padding:0 12px 7px}.nav-item{display:flex;align-items:center;gap:11px;color:#bdd0df;padding:9px 11px;margin:3px 0;border-radius:7px;font-weight:550}.nav-item>span{width:18px;color:#87a0b4;text-align:center}.nav-item:hover{background:#1a334c;color:#fff}.nav-item.active{background:#24415a;color:#fff;box-shadow:inset 3px 0 #40b9b3}.nav-item.active>span{color:#4cc3bc}.study-switch{margin:10px 3px 8px;padding:12px;display:flex;align-items:center;gap:10px;background:#182f47;border:1px solid #28445d;border-radius:9px}.study-avatar{display:grid;place-items:center;width:33px;height:33px;border-radius:8px;background:#dff3f1;color:#0c7173;font-weight:800;font-size:12px}.study-switch div{min-width:0;flex:1}.study-switch small,.profile small{display:block;color:#8fa5b9;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.study-switch b{display:block;color:#fff;font-size:13px}.chevron{color:#7890a5}.sidebar-bottom{margin-top:auto;border-top:1px solid #294159;padding:17px 7px 0}.profile{display:flex;align-items:center;gap:10px}.profile-avatar{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#2c4c66;color:#fff;font-weight:700}.profile div{min-width:0}.profile b{display:block;font-size:12px;color:#eef5f8}.signout{border:0;background:transparent;color:#8fa5b9;padding:9px 0 0;cursor:pointer;font-size:12px}.workspace{margin-left:266px;min-height:100vh}.topbar{height:62px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 38px;color:var(--muted);font-size:12px}.environment-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#29a77f;margin-right:7px}.secure{border:1px solid var(--line);border-radius:99px;padding:5px 10px}.workspace main{max-width:1240px;margin:0 auto;padding:38px 42px 64px}.guest-main{min-height:100vh;display:grid;place-items:center;padding:30px;background:radial-gradient(circle at 15% 10%,#dff3f1,transparent 30%),linear-gradient(135deg,#f6fafb,#edf3f5)}
/* Typography and page furniture */
h1{font-size:30px;line-height:1.2;letter-spacing:-.025em;margin:4px 0 8px;color:#142f49}h2{font-size:17px;margin:0 0 14px}h3{font-size:14px;margin:0 0 6px}.eyebrow{margin:0 0 3px;color:var(--teal);font-weight:750;font-size:11px;letter-spacing:.12em;text-transform:uppercase}.lede{max-width:760px;color:var(--muted);font-size:16px;margin:0}.title{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:27px}.actions{display:flex;gap:9px;align-items:center}.button,button{display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:7px;background:var(--teal);color:#fff;padding:9px 14px;font-weight:700;cursor:pointer;box-shadow:0 1px 2px rgba(0,0,0,.05)}.button:hover,button:hover{background:var(--teal-dark)}.button.secondary,.secondary{background:#fff;color:var(--ink);border-color:var(--line)}.button.ghost{background:var(--soft);color:var(--ink)}.button.small{font-size:12px;padding:6px 10px}.panel{background:#fff;border:1px solid var(--line);border-radius:11px;padding:22px;margin:18px 0;box-shadow:var(--shadow)}.panel-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:14px}.panel-heading p{margin:2px 0;color:var(--muted);font-size:13px}.subtle-panel{background:#f8fafb;box-shadow:none}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:20px 0}.metric{background:#fff;border:1px solid var(--line);border-radius:10px;padding:18px;box-shadow:0 4px 14px rgba(18,36,58,.04)}.metric b{display:block;font-size:25px;color:#16344e}.metric span{color:var(--muted);font-size:12px}.metric .metric-note{margin-top:6px;color:var(--green);font-size:11px}.metric-icon{float:right;width:32px;height:32px;border-radius:8px;background:var(--aqua);display:grid;place-items:center;color:var(--teal);font-weight:800}
/* Data */
.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px 10px;border-bottom:1px solid #e7edf0;vertical-align:middle}th{font-size:10px;color:#738598;text-transform:uppercase;letter-spacing:.08em;background:#f8fafb}tr:last-child td{border-bottom:0}code{background:#eff4f6;border-radius:4px;padding:2px 5px;color:#27485f;font:12px ui-monospace,SFMono-Regular,Menlo,monospace}.badge{display:inline-flex;align-items:center;border-radius:99px;padding:3px 8px;font-size:10px;font-weight:750;letter-spacing:.03em;background:#edf3f5;color:#526a7a}.badge.green{background:#e4f5ed;color:#126748}.badge.amber{background:#fff1db;color:#8d5709}.badge.blue{background:#e4f2f7;color:#17627c}.badge.red{background:#fdeaea;color:#963535}.good{color:var(--green);font-weight:700}.warn{color:var(--amber);font-weight:700}.muted,.hint{color:var(--muted)}.flash{border-radius:8px;padding:11px 14px;margin:0 0 18px;border:1px solid}.flash.success{background:#e7f7ee;color:#135f3d;border-color:#bfe6d1}.flash.error{background:#fff0f0;color:#8d2525;border-color:#f1c8c8}.catalogue-row{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:15px 3px;border-bottom:1px solid #e7edf0}.catalogue-row:last-child{border-bottom:0}.catalogue-row p{margin:4px 0;color:var(--muted);font-size:12px}.history{opacity:.6}dl{display:grid;grid-template-columns:190px 1fr;gap:10px 18px}dt{color:var(--muted);font-size:12px}dd{margin:0;font-weight:600}.check-list{display:grid;gap:9px;margin:15px 0}.check-row{display:flex;align-items:center;gap:10px;padding:11px 12px;background:#f8fafb;border:1px solid var(--line);border-radius:8px}.check-icon{display:grid;place-items:center;width:21px;height:21px;border-radius:50%;background:#daf2e7;color:var(--green);font-size:11px;font-weight:900}.check-icon.fail{background:#fdeaea;color:var(--red)}
/* Forms */
label{display:block;font-weight:700;margin:14px 0;color:#29475e;font-size:12px}input,select{display:block;width:100%;margin-top:6px;border:1px solid #c8d6de;background:#fff;border-radius:7px;padding:10px 11px;color:var(--ink);outline:none}input:focus,select:focus{border-color:#4ca9aa;box-shadow:0 0 0 3px rgba(11,127,130,.1)}.check input{display:inline;width:auto;margin:0 8px 0 0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.form-grid .full{grid-column:1/-1}.two{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:20px}.login{width:min(920px,100%);display:grid;grid-template-columns:1.05fr .95fr;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 24px 70px rgba(18,36,58,.13);overflow:hidden}.login-brand{padding:48px;background:var(--navy);color:#dce8ef}.login-brand h1{color:#fff;font-size:35px;margin-top:25px}.login-brand p{color:#9fb2c2}.login-form{padding:48px}.login-form h2{font-size:23px}.login-note{margin-top:23px;padding:12px;background:#f1f7f8;border-radius:8px;color:#5a7480;font-size:12px}.numbered{counter-reset:steps;display:grid;gap:13px;margin:20px 0}.step{position:relative;padding:16px 18px 16px 58px;border:1px solid var(--line);border-radius:9px;background:#fff}.step:before{counter-increment:steps;content:counter(steps);position:absolute;left:17px;top:16px;width:26px;height:26px;display:grid;place-items:center;border-radius:50%;background:var(--aqua);color:var(--teal-dark);font-weight:800}.step p{margin:4px 0;color:var(--muted)}.folder-tree{font:13px/1.85 ui-monospace,SFMono-Regular,Menlo,monospace;background:#132b40;color:#d9e8ef;border-radius:9px;padding:18px 21px;white-space:pre}.callout{border-left:3px solid var(--teal);background:#edf8f7;padding:13px 16px;border-radius:0 8px 8px 0;margin:16px 0}.callout.warning{border-color:#dfa238;background:#fff8e9}.study-card-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.study-card{background:#fff;border:1px solid var(--line);border-radius:11px;padding:20px;box-shadow:var(--shadow)}.study-card-top{display:flex;justify-content:space-between;gap:15px}.study-card h3{font-size:17px}.study-meta{display:flex;gap:18px;margin:17px 0;color:var(--muted);font-size:12px}.study-path{padding:9px 10px;background:#f4f7f8;border-radius:7px;color:#597080;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* Study selection and setup */
.study-picker{position:relative}.study-picker>summary{list-style:none;cursor:pointer}.study-picker>summary::-webkit-details-marker{display:none}.study-menu{position:absolute;left:3px;right:3px;top:65px;background:#fff;border-radius:9px;padding:7px;box-shadow:0 18px 40px rgba(0,0,0,.25);z-index:20}.study-menu a{display:block;padding:9px;border-radius:6px;color:var(--ink)}.study-menu a:hover{background:var(--soft)}.study-menu small{display:block;color:var(--muted)}.setup-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;border-radius:9px;overflow:hidden;margin:20px 0;background:var(--line)}.setup-steps span{background:#fff;padding:11px 14px;color:var(--muted);font-size:12px;font-weight:700}.setup-steps span.active{color:var(--teal-dark);box-shadow:inset 0 -3px var(--teal)}.sponsor-selector{display:grid;grid-template-columns:minmax(260px,.55fr) 1fr;gap:28px;align-items:center}.sponsor-selector label{margin:0}.sponsor-selector p{color:var(--muted);margin:0}.folder-status{display:flex;gap:10px;align-items:center;background:#f4faf8;border:1px solid #d8ede5;border-radius:8px;padding:11px 13px}.folder-status small{display:block;color:var(--muted)}.template-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.template-card{margin:0;cursor:pointer}.template-card input{position:absolute;opacity:0;width:1px}.template-choice{height:100%;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:10px;padding:17px;background:#fff}.template-card input:checked+.template-choice{border-color:var(--teal);box-shadow:0 0 0 3px rgba(11,127,130,.1);background:#f7fbfb}.template-choice b{font-size:16px;margin:7px 0 1px}.template-choice small{color:var(--teal);font-weight:800}.template-choice p{color:var(--muted);font-weight:400;font-size:12px;margin:10px 0 0}.template-depth{align-self:flex-start;background:var(--soft);padding:3px 7px;border-radius:99px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.06em}.empty-state{text-align:center;padding:28px;color:var(--muted)}.empty-state.compact{padding:10px}.empty-state p{margin:4px 0}
/* Catalogue configuration and filing */
.config-metrics{margin-top:8px}.catalogue-config{padding:25px}.config-group{border:1px solid var(--line);border-radius:10px;padding:15px;margin:12px 0;background:#fbfcfd}.config-group>.config-children>.config-group{margin-left:18px;background:#fff}.config-group h3{font-size:15px;padding:3px 2px 10px}.config-artifact{background:#fff;border:1px solid var(--line);border-radius:8px;margin:7px 0}.config-artifact>summary,.tree-branch>summary,.portal-branch>summary,.version-history>summary{list-style:none;cursor:pointer}.config-artifact>summary{display:flex;justify-content:space-between;gap:16px;padding:13px}.config-artifact>summary::-webkit-details-marker,.tree-branch>summary::-webkit-details-marker,.portal-branch>summary::-webkit-details-marker,.version-history>summary::-webkit-details-marker{display:none}.artifact-form{padding:0 15px 16px;border-top:1px solid var(--line)}.compact-grid{grid-template-columns:repeat(3,1fr)}.activation-panel{background:linear-gradient(145deg,#122f47,#16465a);color:#dce9ef}.activation-panel h2{color:#fff}.activation-panel .eyebrow{color:#58cac2}.tree-panel{padding:16px 22px}.tree-branch{border-left:2px solid #d9e7eb;margin:8px 0 8px 5px;padding-left:13px}.tree-branch>summary{display:flex;justify-content:space-between;padding:10px 3px;font-weight:750}.tree-children{padding-left:9px}.artifact-card{display:flex;justify-content:space-between;align-items:center;gap:20px;border:1px solid var(--line);border-radius:8px;padding:13px 15px;margin:7px 0;background:#fff}.artifact-main p{margin:4px 0 0;color:var(--muted);font-size:12px}.artifact-state{display:flex;gap:9px;align-items:center;flex-shrink:0}.source-choice{display:grid;grid-template-columns:1fr auto 1fr;gap:18px;align-items:stretch}.source-choice>div:not(.choice-divider){border:1px solid var(--line);border-radius:9px;padding:17px}.choice-divider{align-self:center;color:var(--muted);font-size:11px;text-transform:uppercase}.destination-preview{display:grid;gap:9px;background:#142f49;color:#e2edf3;border-radius:10px;padding:18px;margin:15px 0}.destination-preview span{color:#68c8c2;font-size:11px;text-transform:uppercase;letter-spacing:.1em}.destination-preview code{white-space:normal}.danger{background:var(--red)}.danger:hover{background:#842b2b}
/* Sponsor catalogue */
.portal-tree{display:grid;gap:14px}.portal-branch{background:#fff;border:1px solid var(--line);border-radius:11px;box-shadow:var(--shadow);overflow:hidden}.portal-branch>summary{display:flex;justify-content:space-between;padding:16px 20px;background:#f9fbfc;font-weight:800}.portal-branch>div{padding:10px 18px 18px}.portal-branch .portal-branch{box-shadow:none;margin:10px 0;border-radius:8px}.portal-artifact{border:1px solid var(--line);border-radius:9px;padding:16px;margin:10px 0;background:#fff}.portal-artifact-heading{display:flex;justify-content:space-between}.portal-artifact-heading h3{font-size:16px}.current-document{display:flex;justify-content:space-between;gap:20px;align-items:center;background:#f4faf8;border:1px solid #d9ece6;border-radius:8px;padding:14px;margin-top:12px}.current-document p{margin:3px 0 0;color:var(--muted);font-size:12px}.version-history{margin-top:10px;border-top:1px solid var(--line);padding-top:10px}.version-history>summary{color:var(--teal-dark);font-weight:700;font-size:12px}.history-row{display:flex;justify-content:space-between;align-items:center;padding:11px 4px;border-bottom:1px solid #edf1f3;font-size:12px}.history-row span{display:block;color:var(--muted)}.empty-placeholder{display:flex;gap:10px;align-items:center;background:#fff9ed;border-radius:7px;padding:11px;margin-top:10px;color:var(--muted)}.portal-footnote{text-align:center;color:var(--muted);font-size:11px;margin-top:20px}
/* Chronos-aligned application shell and component finish */
.sidebar{width:216px;background:#fff;color:var(--ink);padding:0;border-right:1px solid var(--line)}
.logo{font-family:Georgia,"Times New Roman",serif;font-size:20px;font-weight:400;color:var(--teal-dark);padding:24px 16px 16px;gap:8px}
.logo-mark{width:28px;height:28px;border-radius:50%;background:var(--teal);color:var(--aqua);font:600 15px Georgia,"Times New Roman",serif;box-shadow:inset 0 0 0 1px var(--teal-dark)}
.logo small{color:var(--muted);font-family:-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-size:9px;font-weight:600;letter-spacing:.08em}
.nav-section{margin:0;padding:0 12px 20px}.nav-label{color:var(--muted);font-size:10.5px;letter-spacing:.06em;padding:12px 12px 4px}
.nav-item{color:var(--ink);padding:7px 12px;margin:1px 0;border-radius:6px;font-size:13.5px;font-weight:500;gap:8px}
.nav-item>span{color:var(--muted)}.nav-item:hover{background:var(--soft);color:var(--ink)}.nav-item.active{background:var(--aqua);color:var(--teal-dark);font-weight:600;box-shadow:none}.nav-item.active>span{color:var(--teal)}
.study-switch{margin:4px 12px 16px;padding:10px;background:var(--soft);border:1px solid var(--line);border-radius:var(--radius)}
.study-avatar{background:var(--aqua);color:var(--teal-dark);border-radius:6px}.study-switch small,.profile small{color:var(--muted)}.study-switch b{color:var(--ink)}.chevron{color:var(--muted)}
.sidebar-bottom{border-top:1px solid var(--line);padding:16px}.profile-avatar{background:var(--aqua);color:var(--teal-dark)}.profile b{color:var(--ink)}.signout{color:var(--muted);font-weight:500}.signout:hover{background:transparent;color:var(--teal-dark)}
.sidebar-actions{display:flex;align-items:center;gap:10px;margin-top:10px}.lang-switch{display:inline-flex;margin:0}.lang-switch.joined{margin-left:-11px}.lang-switch button{border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--muted);padding:3px 7px;font-size:11px;line-height:1.4;box-shadow:none}.lang-switch.joined button{border-radius:0 6px 6px 0;border-left:0}.lang-switch:not(.joined) button{border-radius:6px 0 0 6px}.lang-switch button[aria-pressed="true"]{background:var(--teal-dark);border-color:var(--teal-dark);color:#fff}.sidebar-actions .signout{padding:4px 0;margin-left:auto}
.workspace{margin-left:216px}.topbar{height:52px;padding:0 32px;background:#fff;border-color:var(--line)}.environment-dot{background:var(--teal)}.secure{background:var(--soft)}.workspace main{max-width:1400px;padding:24px 32px 64px}
.guest-main{background:radial-gradient(circle at 15% 10%,var(--aqua),transparent 30%),linear-gradient(135deg,var(--page),var(--soft))}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;font-weight:400;color:var(--ink);text-wrap:balance}h1{font-size:26px;letter-spacing:0;margin:0 0 4px}h2{font-size:21px}h3{font-size:16px}.eyebrow{color:var(--teal);font-size:10.5px;letter-spacing:.08em}.lede{font-size:13.5px}.title{margin-bottom:24px}
.button,button{border-radius:6px;background:var(--teal-dark);border-color:var(--teal-dark);padding:7px 14px;font-size:13px;line-height:1;font-weight:600;box-shadow:none;transition:background-color .12s ease,border-color .12s ease}.button:hover,button:hover{background:var(--teal);border-color:var(--teal)}.button.secondary,.secondary{color:var(--teal-dark);border-color:var(--line)}.button.ghost{background:transparent;color:var(--teal-dark);border-color:transparent}.button.ghost:hover{background:var(--aqua)}
.panel,.study-card,.metric,.portal-branch{border-radius:var(--radius);box-shadow:var(--shadow)}.panel{padding:24px}.subtle-panel{background:var(--soft)}.metric{padding:16px}.metric b{font-family:Georgia,"Times New Roman",serif;font-weight:400;color:var(--ink)}.metric-icon{border-radius:6px;background:var(--aqua);color:var(--teal-dark)}
label{color:var(--muted);font-size:12.5px;font-weight:500}input,select{border-color:var(--line);border-radius:6px;padding:7px 10px;font-size:13.5px}input:focus,select:focus{border-color:var(--teal);box-shadow:0 0 0 3px var(--aqua)}
th{color:var(--muted);background:transparent;font-size:10.5px;letter-spacing:.04em}th,td{padding:8px 10px;border-color:var(--line)}tr:hover td{background:var(--soft)}code{background:var(--soft);color:var(--ink)}
.login{border-radius:var(--radius);box-shadow:0 12px 36px rgba(20,30,25,.1)}.login-brand{background:var(--teal-dark);color:var(--aqua)}.login-brand p{color:#c8d8d1}.login-note{background:var(--aqua);color:var(--muted)}
.activation-panel{background:var(--teal-dark);color:var(--aqua)}.activation-panel .eyebrow{color:#b9d9cd}.folder-tree,.destination-preview{background:#24362f;color:#eaf2ee}.destination-preview span{color:#b9d9cd}
.template-card input:checked+.template-choice{border-color:var(--teal);box-shadow:0 0 0 3px var(--aqua);background:#fbfdfc}.config-group,.check-row,.portal-branch>summary{background:var(--soft)}.tree-branch{border-color:var(--line)}.current-document,.folder-status{background:var(--aqua);border-color:#cfe1d9}
@media(max-width:980px){.sidebar{width:220px}.workspace{margin-left:220px}.metrics{grid-template-columns:repeat(2,1fr)}.study-card-grid,.template-grid{grid-template-columns:1fr}.workspace main{padding:30px 25px}.two{grid-template-columns:1fr}.compact-grid{grid-template-columns:1fr 1fr}.source-choice{grid-template-columns:1fr}.choice-divider{text-align:center}}
@media(max-width:700px){.sidebar{position:static;width:auto;min-height:auto}.authenticated{display:block}.workspace{margin-left:0}.sidebar-bottom{margin-top:20px}.topbar{display:none}.workspace main{padding:24px 16px}.metrics,.form-grid,.compact-grid,.setup-steps{grid-template-columns:1fr}.title{display:block}.actions{margin-top:15px;flex-wrap:wrap}.login{grid-template-columns:1fr}.login-brand,.login-form{padding:30px}.folder-tree{overflow:auto}dl{grid-template-columns:1fr}.nav-section{display:flex;flex-wrap:wrap}.nav-label{width:100%}.sponsor-selector{grid-template-columns:1fr}.artifact-card,.current-document,.history-row{align-items:flex-start;flex-direction:column}.artifact-state{flex-wrap:wrap}}
/* Chronos-style mobile drawer for narrow app and Teams/browser panels. */
.mobile-topbar,.sidebar-backdrop{display:none}
@media(max-width:700px){
  .mobile-topbar{display:flex;align-items:center;gap:12px;position:sticky;top:0;z-index:120;height:52px;padding:8px 16px;background:#fff;border-bottom:1px solid var(--line)}
  .mobile-nav-toggle{background:transparent;border:0;color:var(--ink);font-size:21px;padding:6px;box-shadow:none}.mobile-nav-toggle:hover{background:var(--soft);color:var(--ink)}
  .mobile-topbar-brand{display:flex;align-items:center;gap:8px;color:var(--teal-dark);font:18px Georgia,"Times New Roman",serif}.mobile-topbar-brand .logo-mark{width:24px;height:24px;font-size:13px}
  .sidebar{position:fixed;inset:0 auto 0 0;z-index:200;width:260px;max-width:82vw;height:100vh;min-height:0;transform:translateX(-100%);box-shadow:2px 0 16px rgba(20,30,25,.18);transition:transform .2s ease;overflow-y:auto}.sidebar.sidebar-open{transform:translateX(0)}
  .sidebar-backdrop.visible{display:block;position:fixed;inset:0;z-index:190;width:100%;height:100%;padding:0;border:0;border-radius:0;background:rgba(20,30,25,.28);box-shadow:none}
  .nav-section{display:block}.sidebar-bottom{margin-top:auto}.workspace{margin-left:0}.workspace main{padding:24px 16px}.topbar{display:none}
}
/* Configurable metadata, evidence readiness and staged intake */
.framework-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0}.framework-card{display:flex;gap:10px;margin:0;padding:14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--soft)}.framework-card>input{width:auto;margin:3px 0 0}.framework-card span{display:grid;gap:2px}.framework-card small,.framework-card em{display:block;color:var(--muted);font-weight:400;font-style:normal}.framework-card.readonly{color:var(--ink)}.metadata-toolbar{display:flex;justify-content:flex-end;gap:8px;margin:14px 0}.metadata-group{border:1px solid var(--line);border-radius:var(--radius);margin:10px 0;background:#fff}.metadata-group>summary,.document-metadata>summary{display:flex;justify-content:space-between;align-items:center;cursor:pointer;padding:12px 14px;font-weight:650;list-style:none}.metadata-group>summary::-webkit-details-marker,.document-metadata>summary::-webkit-details-marker{display:none}.metadata-group>.table-wrap,.metadata-group>.form-grid{padding:0 14px 14px}.metadata-table td:first-child{min-width:230px}.metadata-table td:first-child small{display:block;color:var(--muted);font-weight:400;max-width:330px}.metadata-table td:not(:first-child){text-align:center}.metadata-table input[type=checkbox]{width:auto;margin:auto}.metadata-table input,.metadata-table select{min-width:120px}.mapping-badges{display:flex;flex-wrap:wrap;gap:4px;min-width:190px}.required{color:var(--red);font-size:10px;text-transform:uppercase;letter-spacing:.05em}.metadata-review{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;margin:12px 0 20px}.metadata-review>div{background:#fff;padding:10px 12px}.metadata-review span,.metadata-review b{display:block}.metadata-review span{color:var(--muted);font-size:11px}.metadata-review b{font-size:13px;margin-top:2px}.document-metadata{border-top:1px solid var(--line);margin-top:10px}.sticky-submit{position:sticky;bottom:12px;display:flex;justify-content:space-between;align-items:center;gap:16px;background:var(--teal-dark);color:#fff;padding:14px 18px;border-radius:var(--radius);box-shadow:0 8px 26px rgba(20,30,25,.22);z-index:3}.sticky-submit span{font-size:12px;color:#d7e6df}.sticky-submit button{background:#fff;color:var(--teal-dark);border-color:#fff}.intake-item{border-left:4px solid var(--line)}.intake-item.ready{border-left-color:var(--green)}.intake-item.attention{border-left-color:var(--amber)}.destination-preview.compact{padding:12px;margin:10px 0}.submit-panel{border-color:#b9d9cd;background:#fbfdfc}.check-row small{display:block;color:var(--muted)}
@media(max-width:980px){.framework-grid{grid-template-columns:1fr}}
@media(max-width:700px){.metadata-review{grid-template-columns:1fr}.sticky-submit{align-items:flex-start;flex-direction:column}}
.filter-chips{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 16px}.filter-chips a{padding:5px 10px;border:1px solid var(--line);border-radius:99px;color:var(--muted);font-size:11px}.filter-chips a.active{background:var(--aqua);border-color:#c7ddd4;color:var(--teal-dark);font-weight:700}.inbox-table td:first-child{width:34px}.inbox-table input[type=checkbox]{width:auto;margin:0}.inbox-table td:nth-child(2){min-width:220px}.inbox-table td:nth-child(5){min-width:150px}.inbox-table small,.inbox-table a{display:block;color:var(--muted);font-size:11px;margin-top:3px}.batch-bar{display:flex;justify-content:flex-end;align-items:end;gap:12px;margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.batch-bar label{margin:0;min-width:300px}.inbox-metrics{margin-top:8px}
@media(max-width:700px){.batch-bar{align-items:stretch;flex-direction:column}.batch-bar label{min-width:0}.inbox-metrics{grid-template-columns:1fr 1fr}}
/* PM/DM operating guide */
.guide-nav{display:flex;flex-wrap:wrap;gap:7px;margin:-7px 0 20px}.guide-nav a{padding:6px 10px;border:1px solid var(--line);border-radius:99px;background:#fff;color:var(--muted);font-size:11px}.guide-nav a:hover{background:var(--aqua);color:var(--teal-dark);border-color:#c7ddd4}.section-heading{margin:30px 0 14px}.section-heading h2{margin-bottom:4px}.section-heading p:last-child{max-width:820px;margin:0;color:var(--muted)}.setup-guide,.publication-guide{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.setup-guide .step,.publication-guide .step{margin:0}.folder-guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.folder-purpose{border:1px solid var(--line);border-radius:var(--radius);padding:20px;background:#fff;box-shadow:var(--shadow)}.folder-purpose.inbox-purpose{border-top:3px solid #4f93a9}.folder-purpose.viewer-purpose{border-top:3px solid var(--green)}.folder-purpose-heading{display:flex;align-items:center;gap:12px}.folder-purpose-heading h3{margin:5px 0 0}.folder-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--aqua);color:var(--teal-dark);font-size:18px;font-weight:800}.folder-purpose p{color:var(--muted)}.folder-purpose ul,.plain-checks{margin:12px 0 0;padding-left:19px;color:var(--muted)}.folder-purpose li,.plain-checks li{margin:7px 0}.guide-folder-detail{align-items:start;margin:14px 0 30px}.guide-folder-detail .folder-tree{margin-top:16px}.intake-methods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.intake-methods article{position:relative;border:1px solid var(--line);border-radius:var(--radius);padding:17px 17px 17px 56px;background:var(--soft)}.intake-methods p{margin:4px 0 0;color:var(--muted);font-size:12px}.method-number{position:absolute;left:16px;top:16px;display:grid;place-items:center;width:27px;height:27px;border-radius:6px;background:var(--teal-dark);color:#fff;font-weight:750}.guide-table td:first-child{min-width:150px}.guide-table td{vertical-align:top}.guide-table td:not(:first-child){color:var(--muted)}.routine-review{margin-top:30px}.compact-checks{grid-template-columns:repeat(2,minmax(0,1fr))}.compact-checks .check-row{align-items:flex-start}
@media(max-width:980px){.setup-guide,.publication-guide,.folder-guide-grid,.intake-methods{grid-template-columns:1fr}}
@media(max-width:700px){.guide-nav{overflow:auto;flex-wrap:nowrap;padding-bottom:4px}.guide-nav a{white-space:nowrap}.compact-checks{grid-template-columns:1fr}.folder-purpose{padding:17px}}
/* Immediate feedback while the live SharePoint hierarchy is being discovered. */
.loading-overlay{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:24px;background:rgba(27,36,48,.32);backdrop-filter:blur(2px)}.loading-overlay[hidden]{display:none}.loading-dialog{display:flex;align-items:center;gap:16px;width:min(440px,100%);padding:20px 22px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:0 18px 50px rgba(20,30,25,.2)}.loading-dialog b,.loading-dialog small{display:block}.loading-dialog b{font:400 19px Georgia,"Times New Roman",serif;color:var(--ink)}.loading-dialog small{margin-top:3px;color:var(--muted);font-size:12px}.loading-spinner{flex:0 0 auto;width:34px;height:34px;border:3px solid var(--aqua);border-top-color:var(--teal);border-radius:50%;animation:etmf-spin .8s linear infinite}@keyframes etmf-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.loading-spinner{animation-duration:1.8s}}
/* Administrator catalogue-template library and draft editor. */
textarea{display:block;width:100%;margin-top:6px;border:1px solid var(--line);background:#fff;border-radius:6px;padding:7px 10px;color:var(--ink);outline:none;resize:vertical;font:inherit}textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px var(--aqua)}
.template-metrics{grid-template-columns:repeat(3,1fr)}.template-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.template-admin-card{margin:0;min-width:0}.template-summary{display:flex;align-items:center;flex-wrap:wrap;gap:8px 18px;margin:12px 0 18px;color:var(--muted);font-size:12px}.template-summary span b{color:var(--ink);font-size:16px}.template-coverage>summary{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-top:1px solid var(--line);cursor:pointer;font-weight:650}.template-tree-preview,.template-tree-editor{display:grid;gap:6px}.template-node{position:relative}.template-node-children{display:grid;gap:6px;margin:6px 0 4px 18px;padding-left:14px;border-left:1px solid var(--line)}.template-node-line,.template-node>details>summary{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 10px;border:1px solid var(--line);border-radius:6px;background:var(--soft);list-style:none}.template-node.artifact>.template-node-line,.template-node.artifact>details>summary{background:#fff}.template-node>details>summary::-webkit-details-marker{display:none}.template-card-actions{margin-top:16px}.template-node-form{padding:12px;border:1px solid var(--line);border-top:0;border-radius:0 0 6px 6px}.template-node-grid{grid-template-columns:1fr 2fr .6fr}.template-node-grid label{margin:5px 0}.template-delete-form{margin:8px 0 14px}.button.danger{background:#fff;color:var(--red);border-color:#e8c4c1}.button.danger:hover{background:#fff0f0}.publish-template-panel{display:flex;align-items:center;justify-content:space-between;gap:24px;border-color:#c7ddd4}.publish-template-panel p{color:var(--muted)}.validation-list{color:var(--red);padding-left:20px}button:disabled{opacity:.45;cursor:not-allowed}.template-create-form{max-width:900px}@media(max-width:1000px){.template-admin-grid{grid-template-columns:1fr}}@media(max-width:700px){.template-metrics,.template-node-grid{grid-template-columns:1fr}.publish-template-panel{align-items:flex-start;flex-direction:column}.template-node-line,.template-node>details>summary{align-items:flex-start;flex-direction:column}}
