/* Persistent task navigation; restrained surfaces retain the CyCastle identity. */
@media(max-width:700px){body.shell30 .shell>aside{display:block!important;overflow:visible}body.shell30 .shell30-pages{width:100%;box-sizing:border-box}body.shell30 #header #orgToggle .org-selected{display:grid!important;text-align:left;gap:4px}body.shell30 #header #orgToggle .org-selected strong{display:block!important;font-size:15px}body.shell30 #header #orgToggle .org-selected small{display:block!important;font-size:9px}body.shell30 #header #orgToggle .org-symbol{display:flex!important}body.shell30 #header #orgToggle{display:flex!important;gap:12px;justify-content:flex-start}body.shell30 #header #orgToggle .org-chevron{margin-left:auto}.shell30 .shell30-context{width:100%}}
body.shell30,body.shell30 :is(button,input,select,textarea,table){font-family:'IBM Plex Sans','Segoe UI',sans-serif!important}body.shell30 :is(h1,h2,h3){font-family:Archivo,'IBM Plex Sans',sans-serif!important;font-weight:650;letter-spacing:-.025em}body.shell30 :is(.f26-technical,.r27-tech,.court-cvss,code,kbd){font-family:'IBM Plex Mono',Consolas,monospace!important}body.shell30{font-variant-numeric:tabular-nums}.shell30 .shell30-areas a.active svg{color:inherit!important;stroke:currentColor}.shell30 .shell31-subnav{display:flex;gap:6px;flex-wrap:wrap;border-bottom:1px solid #183d4920;margin:0 0 24px;padding:0 0 10px}.shell31-subnav a{padding:9px 14px;text-decoration:none;color:#4c6069;font-size:14px;border-bottom:2px solid transparent}.shell31-subnav a[aria-current=page]{color:#1c5e65;border-color:#245f67;font-weight:600}.shell31-subnav.secondary{margin-top:-12px}.shell31-subnav.secondary a{font-size:13px}.shell31-journey{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:24px 0 40px}.shell31-journey a{display:grid;gap:12px;padding:24px;background:#fbfcfa;border:1px solid #183d4920;border-top:2px solid #245f67;border-radius:4px;text-decoration:none;color:#183d49}.shell31-journey b{font-size:12px;color:#7c4055}.shell31-journey strong{font-size:21px}.shell31-journey span{font-size:14px;color:#4c6069}.shell31-directory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.shell31-directory h2{font-size:18px;margin-bottom:16px}.shell31-directory a{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid #183d4914;text-decoration:none;color:#183d49;font-size:14px}.shell31-directory a:hover{color:#245f67;background:#245f6706}.shell31-summary{display:flex;gap:32px;flex-wrap:wrap;margin:0 0 24px;padding:20px 0;border-block:1px solid #183d491a}.shell31-summary a{display:flex;align-items:center;gap:12px;color:#183d49;text-decoration:none;font-size:14px}.shell31-summary strong{font-size:26px;letter-spacing:-.03em}.shell31-summary>a:last-child{margin-left:auto;color:#245f67}.shell30 .shell30-admin{margin-top:24px}.shell30 .shell30-pages a{font-size:14px!important}.shell30 .shell31-reference summary{padding:16px;font-size:14px;cursor:pointer}
@media(max-width:700px){.shell31-journey,.shell31-directory{grid-template-columns:1fr}.shell31-journey{gap:12px}.shell31-summary{gap:16px}.shell31-summary>a:last-child{margin-left:0}.shell31-journey a{padding:20px}}
.shell30 .shell>main{width:calc(100% - var(--shell30-width))!important;box-sizing:border-box}.shell30 .analysis-layout:has(.shell30-findings)>.analysis-aside{display:none}
body.shell30{--shell30-width:246px}
.shell30 #header{position:sticky;top:0;margin-left:var(--shell30-width);width:calc(100% - var(--shell30-width));min-height:78px;padding:12px 28px;display:flex;gap:20px;z-index:45;box-sizing:border-box;background:#fbfcfa;border-bottom:1px solid #183d491a}
.shell30 #header .utilities{margin-left:auto}.shell30 #header .shell30-context{margin:0;padding:0;border:0;min-width:240px;background:none;flex:1}.shell30-context>span{display:none}
.shell30 .shell{display:block}.shell30 .shell>aside{position:fixed;inset:0 auto 0 0;width:var(--shell30-width);height:100vh;overflow:auto;box-sizing:border-box;padding:24px 16px;background:#eef1ee;border-right:1px solid #183d491c;z-index:50}
.shell30 .shell>main{margin-left:var(--shell30-width);min-width:0}.shell30 #page{padding:32px!important}.shell30 aside .brand{display:flex;padding:0 4px 24px;margin:0;gap:10px}.shell30 aside .brand img{max-width:190px;max-height:48px}.shell30 aside .brand svg{width:38px;height:38px}.shell30 aside .brand strong{font-size:23px}.shell30 aside .brand small{font-size:8px;letter-spacing:.12em}
.shell30 .shell30-areas{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;padding:4px;border:1px solid #183d4920;border-radius:6px;margin-bottom:24px;background:#fbfcfa}.shell30 .shell30-areas>a{display:flex;flex-direction:column;justify-content:center;gap:6px;padding:12px 2px!important;margin:0!important;font-size:12px!important;border:0!important;border-radius:3px}.shell30 .shell30-areas svg{width:18px;height:18px}.shell30 .shell30-areas>a.active{background:#245f67!important;color:#fff!important}
.shell30 aside>.eyebrow{margin:0 12px 12px;font-size:10px}.shell30 .shell30-pages>a,.shell30 .shell30-admin>a,.shell30-admin details a{display:flex;align-items:center;gap:10px;font-size:13px!important;line-height:1.35;padding:11px 12px!important;margin:2px 0!important;border-radius:4px;min-height:40px;box-sizing:border-box}.shell30 aside nav a svg{width:17px;height:17px;flex:none}.shell30 aside nav a.active{background:#dde8e5;color:#174d55;border-left:2px solid #245f67}.shell30 .shell30-admin{margin-top:24px;padding-top:16px;border-top:1px solid #183d491a}.shell30-admin summary{padding:12px;font-size:12px;cursor:pointer;color:#4c6069}.shell30-admin details a{font-size:12px!important;padding-left:20px!important}
.shell30 #simpleUtilities{gap:10px}.shell30 .s-search{min-width:180px}.shell30 .s-demo{font-size:11px}.shell30 #header .org-selected{min-height:46px}.shell30 .shell30-findings{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(320px,1fr);gap:24px;align-items:start}.shell30 #findingRows{min-width:0;overflow:auto}.shell30 #shell30Detail{border:1px solid #183d491c;border-top:3px solid #245f67;border-radius:5px;background:#fbfcfa;padding:24px;position:sticky;top:100px;max-height:calc(100vh - 132px);overflow:auto;min-width:0;box-sizing:border-box}.shell30 #shell30Detail h2{font-size:22px;line-height:1.3;margin-top:8px}.shell30 #shell30Detail .court-chain{grid-template-columns:1fr 1fr}.shell30 #shell30Detail .court-chain>i{display:none}.shell30 #shell30Detail .court-next-step{display:block}.shell30 #shell30Detail .court-next-step .btn{margin-top:12px}.shell30 #shell30Detail .detailgrid{grid-template-columns:1fr 1fr}.shell30 #findingRows table{min-width:530px}
.shell30 .analysis-layout:has(.shell30-findings){display:block;min-width:0}.shell30 .analysis-layout:has(.shell30-findings)>.analysis-side{display:none}.shell30 .analysis-layout:has(.shell30-findings)>.workbench{min-width:0;width:100%;box-sizing:border-box}.shell30 #shell30Detail .court-chain strong{overflow-wrap:anywhere}.shell30 #shell30Detail .court-chain>div{min-width:0}.shell30 #shell30Detail .audit-tabs{display:flex;gap:8px;flex-wrap:wrap}.shell30 .shell>main{overflow:clip}.shell30 .shell30-findings #findingRows table{width:100%;min-width:0}.shell30 #shell30Detail .court-next-step{border-left:0}
@media(min-width:1500px){.shell30 .shell30-findings{grid-template-columns:minmax(0,1.7fr) minmax(340px,1fr)}}
@media(max-width:1100px){body.shell30{--shell30-width:218px}.shell30 #header{padding:12px 18px;flex-wrap:wrap}.shell30 .s-search span,.shell30 .s-search kbd{display:none}.shell30 .s-search{min-width:36px}.shell30 .shell30-findings{grid-template-columns:1fr}.shell30 #shell30Detail{position:static;max-height:none}.shell30 #page{padding:24px!important}}
@media(max-width:700px){body.shell30{--shell30-width:0px}.shell30 .shell>aside{position:relative;width:100%;height:auto;max-height:none;padding:16px}.shell30 aside .brand{padding-bottom:16px}.shell30 .shell30-pages{display:flex;overflow:auto;gap:6px}.shell30 .shell30-pages>a{white-space:nowrap}.shell30 .shell30-admin{margin-top:12px;padding-top:8px}.shell30 .shell30-admin> a{display:inline-flex}.shell30 aside>.eyebrow{display:none}.shell30 .shell30-areas{margin-bottom:12px}.shell30 #header{position:relative;width:100%;margin:0;gap:10px}.shell30 #header .shell30-context{min-width:200px}.shell30 #page{padding:20px!important}.shell30 #shell30Detail{padding:20px}}

/* Operational density: compact spacing, unchanged reading sizes. */
body.shell30 #header{min-height:64px;padding-top:8px;padding-bottom:8px}
body.shell30 #page{padding:20px 28px!important}
body.shell30 #page .pagehead{margin-bottom:18px!important;gap:16px}
body.shell30 #page .pagehead h1{margin-top:4px;margin-bottom:6px}
body.shell30 #page .pagehead .eyebrow{margin-bottom:6px}
body.shell30 #page .pagehead p:not(.eyebrow){margin-top:6px;margin-bottom:0}
body.shell30 .shell31-summary{margin:0 0 16px;padding:12px 0;gap:24px}
body.shell30 .ia25-map-purpose{margin:12px 0;padding:10px 14px}
body.shell30 #page :is(.panel,.workbench){margin-bottom:16px}
body.shell30 #page :is(.panelhead,.panel-head){padding:14px 16px}
body.shell30 #page :is(.grid,.ia25-decision-grid,.campaign-layout,.report-workspace,.court-cti-layout){gap:16px}
body.shell30 #page :is(.panelbody,.panel-body){padding:16px}
body.shell30 #page :is(.filters,.s-filter-status){padding-top:10px;padding-bottom:10px;margin-bottom:12px}
body.shell30 #page table :is(th,td){padding-top:10px;padding-bottom:10px}
body.shell30 #page table td small{margin-top:4px;line-height:1.4}
body.shell30 #page :is(.listrow,.r-task-row){padding-top:12px;padding-bottom:12px}
body.shell30 #page .shell31-subnav{margin-bottom:16px;padding-bottom:6px}
body.shell30 #page :is(.d-instrument,.court-module-stamp,.ia25-context-link){margin-top:16px;margin-bottom:16px}
body.shell30 #page .d-instrument-heading{padding-top:12px;padding-bottom:12px}
body.shell30 #page .d-instrument-body{padding-top:14px;padding-bottom:14px}
body.shell30 #page .shell31-journey{gap:16px;margin:16px 0 24px}
body.shell30 .shell31-journey a{padding:18px;gap:8px}
body.shell30 .shell31-directory{gap:24px}
body.shell30 #shell30Detail{top:80px;max-height:calc(100vh - 104px);padding:18px}
body.shell30 .shell30-findings{gap:16px}
@media(max-width:700px){body.shell30 #page{padding:16px!important}body.shell30 #shell30Detail{max-height:none}body.shell30 .shell31-summary{gap:12px}}

/* Reference canvas: exact light cool-neutral background from the approved artifact. */
body.shell30.court-app .shell>main{background:#ecf0ef;background-image:none}

/* Warm mineral canvas, clear ivory surfaces and saturated brand accents. */
body.shell30{--canvas:#f1ebe1;--surface:#fffdf8;--paper:#fffdf8;--line:#dbd2c6;--muted:#566268;--court-petrol:#146760;--court-burgundy:#99394e;--red:#a52c40}
body.shell30.court-app .shell>main{background:#f1ebe1;background-image:none}
body.shell30.court-app #header{background:#fffdf8;border-bottom-color:#d9d1c5}
body.shell30.court-app .shell>aside{background:#eeeae2;border-right-color:#d8cec0}
body.shell30.court-app #page :is(.panel,.report-sheet,.court-cti-dossier,.court-cti-register,.d-instrument,.workbench,.map-inspector,.map-canvas-panel,.ia25-asset-register,.ia25-asset-detail,.ai-workspace,.ai-center){background:#fffdf8;border-color:#d9d1c5}
body.shell30.court-app #page :is(.panelhead,.panel-head,.map-toolbar,.map-legend){background:#fffdf8;border-color:#ded6ca}
body.shell30 .shell30-areas{background:#fffdf8;border-color:#d8cec0}
body.shell30 .shell30-areas>a.active{background:#146760!important;color:#fff!important}
body.shell30 aside nav a.active{background:#dce9df;color:#174f47;border-left-color:#146760}
body.shell30.court-app :is(#page,#overlay) .btn.primary:not(:disabled){background:#146760;border-color:#146760;color:#fff}
body.shell30.court-app :is(#page,#overlay) .btn.primary:not(:disabled):hover{background:#0d514b;border-color:#0d514b}
body.shell30.court-app #page :is(.badge.critical){color:#a52c40}
body.shell30.court-app #page :is(.badge.high){color:#a6531e}
body.shell30.court-app #page :is(.badge.medium){color:#8a641e}
body.shell30.court-app #page .ia25-map-purpose{background:#e5e8db;border-top-color:#476b55;color:#2c5048}
body.shell30.court-app #page .map-canvas{background-color:#faf6ec;background-image:radial-gradient(#cbbfa866 .7px,transparent .7px)}
body.shell30.court-app #page .map-zone.internal{background:#dce9dca6;border-color:#b6cbb5}
body.shell30.court-app #page .map-zone.web{background:#f0e0dca6;border-color:#d8bcb3}
body.shell30.court-app #page .map-connections path{stroke:#4c8973;stroke-width:1.6}
body.shell30.court-app #page .map-connections .web-path{stroke:#a76563}
body.shell30.court-app #page .map-node{background:#fffdf8;border-color:#cbbfac}
body.shell30.court-app #page .map-node.group-node{background:#d3e7d9;border-color:#80ae96}
body.shell30.court-app #page .map-node.group-node.web-node{background:#ecd8d2;border-color:#bb8c81}
body.shell30.court-app #page .map-node .icon{color:#206b51}
body.shell30.court-app #page .map-node.web-node .icon{color:#9a4152}
body.shell30.court-app #page .map-node.root-node{background:#146760;border-color:#146760;color:#fff}
body.shell30.court-app #page .map-node.root-node :is(.icon,small){color:#fff}
body.shell30.court-app #page .map-node.is-selected{border-color:#9a4152;box-shadow:0 0 0 2px #9a41521a}
body.shell30.court-app #page .map-node .node-count{background:#f0dbb5;color:#704315}
body.shell30.court-app #page .map-inspector{border-top-color:#9a4152}
body.shell30.court-app #page :is(.map-switch,.s-severity,.filters){background:#f4f0e8}
body.shell30.court-app #page :is(tr.court-selected,.court-cti-row.selected,.ia25-asset-row.active){background:#e3eddf}
body.shell30.court-app #page .mini-plot path:not([stroke-dasharray]){stroke:#146760}
body.shell30.court-app #page .mini-plot circle{fill:#146760}
body.shell30.court-app #page .ai-side{background:#eee5db;border-color:#d8c9b9}
body.shell30.court-app #page :is(.r27-prompts button,.s-ai-tasks button){background:#fff9ef;border-color:#d9c5ac}
body.shell30.court-app #page :is(.ai-composer,.court-ai-brief){border-color:#b68b66}
body.shell30.court-app #page :is(.s-ai-tasks svg,.ai-core){color:#9a4152}
body.shell30 .shell31-journey a{background:#fffdf8;border-color:#d9d1c5;border-top-color:#146760}
body.shell30 #shell30Detail{background:#fffdf8;border-color:#d9d1c5;border-top-color:#146760}
.map35-group-list{padding:12px}.map35-group-list>button{display:flex;justify-content:space-between;gap:12px;width:100%;padding:14px 12px;background:#fffdf8;border:1px solid #d9d1c5;margin:8px 0;color:#234f49;text-align:left}.map35-group-list p,.map35-large>p{font-size:13px;color:#566268;line-height:1.5}.map35-pagination{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:12px;font-size:13px;border-bottom:1px solid #d9d1c5}.map35-pagination span{flex:1}.map35-pagination button{background:#fffdf8;border:1px solid #d9d1c5;padding:7px 10px;border-radius:3px}.map35-pagination button:disabled{opacity:.45}.map35-large{padding:16px;background:#faf6ec}.map35-root-grid,.map35-leaf-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.map35-large .map-node{position:static;transform:none;max-width:none;min-width:0;width:100%;box-shadow:none}.map35-leaf-grid{margin-top:12px}

/* Legacy module palettes used important rules; keep the approved shared palette authoritative. */
body.shell30.court-app #page .ai-side.d-ai-rail{background:#eee5db!important;border-color:#d8c9b9!important}
body.shell30.court-app #page .ai-console{background:#fffdf8!important;border-color:#d9d1c5!important}
body.shell30.court-app #page :is(.ai-topline,.court-ai-brief,.d-instrument-body){background:#f4efe4!important}
body.shell30.court-app :is(#page,#overlay) .btn.primary:not(:disabled){background:#146760!important;border-color:#146760!important;color:#fff!important}
