.ic-context,.ic-summary,#modalBody{--ic-ink:var(--text,#263b39);--ic-muted:var(--text-muted,#697a74);--ic-card:var(--card,#fffdf6);--ic-line:var(--border,#d9dfd2);--ic-moss:var(--primary,#50745f)}
[data-theme="dark"] .ic-shell{--ic-ink:var(--text);--ic-muted:var(--text-muted);--ic-card:var(--card);--ic-line:var(--border);--ic-moss:#a2c8af}
[data-theme="dark"] .ic-hero{background:var(--card);border-color:var(--border)}
[data-theme="dark"] .ic-hero h2,[data-theme="dark"] .ic-hero p,[data-theme="dark"] .ic-card h3,[data-theme="dark"] .ic-record h4,[data-theme="dark"] .ic-stat strong{color:var(--text)}
[data-theme="dark"] .ic-small,[data-theme="dark"] .ic-help,[data-theme="dark"] .ic-nav button,[data-theme="dark"] .ic-record p,[data-theme="dark"] .ic-field,[data-theme="dark"] .ic-local,[data-theme="dark"] .ic-checkline{color:var(--text-muted)}
[data-theme="dark"] .ic-btn,[data-theme="dark"] .ic-tag{background:var(--card);color:var(--text);border-color:var(--border)}
[data-theme="dark"] .ic-btn.primary{background:var(--primary);color:var(--on-primary,#fff)}
[data-theme="dark"] .ic-shell input,[data-theme="dark"] .ic-shell select,[data-theme="dark"] .ic-shell textarea,[data-theme="dark"] .ic-empty{background:var(--card);color:var(--text);border-color:var(--border)}
.ic-card{overflow-wrap:anywhere}
.ic-btn:focus-visible,.ic-nav button:focus-visible,.ic-scroll:focus-visible{outline:2px solid var(--ic-moss,#50745f);outline-offset:3px}
.ic-shell{--ic-ink:#263b39;--ic-muted:#697a74;--ic-paper:#f5f4eb;--ic-card:#fffdf6;--ic-line:#d9dfd2;--ic-moss:#50745f;--ic-ochre:#c38c45;--ic-clay:#a95949;color:var(--ic-ink);padding:4px 0 28px}
.ic-shell *{box-sizing:border-box}
.ic-hero{position:relative;overflow:hidden;border-radius:20px;padding:26px 30px;background:linear-gradient(112deg,#e7eee1,#f4eddb 78%);border:1px solid #dbe2d3;margin:0 0 18px}
.ic-hero:after{content:"";position:absolute;right:-38px;top:-92px;width:260px;height:260px;border-radius:50%;border:1px solid rgba(68,106,81,.2);box-shadow:0 0 0 24px rgba(68,106,81,.035),0 0 0 52px rgba(68,106,81,.035)}
.ic-kicker{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ic-moss);font-weight:800}
.ic-hero h2{font-size:clamp(24px,3vw,34px);line-height:1.12;margin:8px 0 7px;max-width:800px;color:#29463c}
.ic-hero p{margin:0;max-width:760px;color:#586b60;font-size:14px;line-height:1.55}
.ic-nav{display:flex;gap:6px;flex-wrap:wrap;border-bottom:1px solid var(--ic-line);margin:0 0 18px;padding:0 2px}
.ic-nav button{border:0;background:transparent;padding:11px 13px;color:var(--ic-muted);font:inherit;font-size:13px;font-weight:600;border-bottom:2px solid transparent;cursor:pointer}
.ic-nav button.is-active{color:#315c44;border-color:#568166}
.ic-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px}
.ic-card{background:var(--ic-card);border:1px solid var(--ic-line);border-radius:14px;padding:17px;min-width:0;box-shadow:0 2px 8px rgba(42,69,51,.035)}
.ic-card h3,.ic-card h4{margin:0 0 12px;color:#345344}
.ic-span-3{grid-column:span 3}.ic-span-4{grid-column:span 4}.ic-span-5{grid-column:span 5}.ic-span-6{grid-column:span 6}.ic-span-7{grid-column:span 7}.ic-span-8{grid-column:span 8}.ic-span-12{grid-column:span 12}
.ic-stat{display:flex;flex-direction:column;gap:5px;min-height:105px;justify-content:space-between}
.ic-stat strong{font:600 34px/1 Georgia,serif;color:#39634b}.ic-stat span{font-size:12px;color:var(--ic-muted)}
.ic-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 0 14px}
.ic-toolbar h3{margin:0}
.ic-controls{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.ic-overview{margin-top:24px}
.ic-controls [data-institution-action="new-institution"]{white-space:normal;text-align:center;min-height:44px;max-width:100%}
.ic-shell select,.ic-shell input,.ic-shell textarea{max-width:100%;border:1px solid #cbd5c9;border-radius:7px;background:#fffef9;color:#2e433a;padding:8px 10px;font:inherit;font-size:13px}
.ic-shell textarea{min-height:82px;resize:vertical;width:100%}
.ic-field{display:flex;flex-direction:column;gap:5px;margin:0 0 12px;font-size:12px;font-weight:700;color:#52665b}
.ic-field small,.ic-help{font-size:11px;font-weight:400;color:var(--ic-muted);line-height:1.45}
.ic-formgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 13px}
.ic-formgrid .wide{grid-column:1/-1}
.ic-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid #cbd7c9;border-radius:7px;background:#fffef8;color:#355544;padding:8px 11px;font:inherit;font-size:12px;font-weight:600;cursor:pointer;text-decoration:none;white-space:nowrap}
.ic-btn:hover{background:#edf2e9}.ic-btn.primary{background:#4c7158;color:white;border-color:#4c7158}.ic-btn.quiet{background:transparent}.ic-btn.danger{color:#9b4a3e}
.ic-links{display:flex;flex-wrap:wrap;gap:6px}.ic-tag{display:inline-flex;border-radius:999px;padding:4px 9px;background:#edf1e8;color:#47634e;font-size:11px;font-weight:700}
.ic-tag.warn{background:#f6e9d8;color:#875c2d}.ic-tag.private{background:#f5e5df;color:#984f40}
.ic-record{border-left:3px solid #8aa68b}.ic-record h4{margin:0 0 4px;font-size:16px}.ic-record p{font-size:12px;line-height:1.5;color:#63736b;margin:6px 0}
.ic-record-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.ic-small{font-size:11px;color:var(--ic-muted);line-height:1.5}.ic-empty{padding:24px;text-align:center;color:var(--ic-muted);border:1px dashed #c8d3c5;border-radius:10px;background:#fbfbf4;font-size:13px}
.ic-scroll{overflow:auto}.ic-matrix{width:100%;border-collapse:collapse;font-size:12px}.ic-matrix th,.ic-matrix td{padding:10px 9px;border-bottom:1px solid #e4e8dd;text-align:left;vertical-align:top}.ic-matrix th{color:#53705b;font-size:11px;text-transform:uppercase;letter-spacing:.06em}.ic-matrix td:first-child{font-weight:700;white-space:nowrap}
.ic-disclosure{border-top:1px solid var(--ic-line);margin-top:14px;padding-top:12px}
.ic-local{font-size:12px;color:#65766c}.ic-flag{display:inline-block;width:7px;height:7px;border-radius:50%;background:#76a17e;margin-right:5px}.ic-flag.off{background:#c5a16b}
.ic-checkline{display:flex;align-items:flex-start;gap:8px;font-size:12px;color:#586c60;margin:9px 0}.ic-checkline input{margin:2px 0 0}
.ic-brief{max-width:920px;margin:auto}.ic-brief h2{font:600 27px Georgia,serif;color:#315b43}.ic-brief-section{padding:14px 0;border-bottom:1px solid #d8dfd2}.ic-brief-section h4{margin:0 0 8px;color:#50725a}.ic-brief-section p{white-space:pre-wrap;line-height:1.55;font-size:13px}
.ic-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}
.ic-skeleton{height:70px;border-radius:10px;background:linear-gradient(90deg,#edf0e8,#f6f6ef,#edf0e8);background-size:200% 100%;animation:ic-shimmer 1.5s ease infinite}
.ic-role-info{min-width:44px;min-height:44px;flex:none}
.ic-type-control{display:flex;gap:8px;align-items:center;min-width:0}
.ic-type-control select{flex:1;min-width:0}
.ic-help-notice{border-left:3px solid var(--accent);padding:10px 12px;background:var(--card)}
.ic-help-role{border-top:1px solid var(--border);padding:10px 0;overflow-wrap:anywhere}
.ic-help-role summary{cursor:pointer;min-height:44px;line-height:1.5;font-weight:600;padding:10px 0}
.ic-help-role h4{margin:14px 0 6px}
.ic-help-role ol{padding-left:24px;line-height:1.6}
.ic-help-role li{margin-bottom:10px}
.ic-help-role small{color:var(--text-muted)}
.ic-local{flex-wrap:wrap}
@keyframes ic-shimmer{to{background-position:-200% 0}}
@media(max-width:760px){.ic-hero{padding:22px 20px}.ic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ic-span-3,.ic-span-4,.ic-span-5,.ic-span-6,.ic-span-7,.ic-span-8,.ic-span-12{grid-column:1/-1}.ic-formgrid{grid-template-columns:1fr}.ic-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}.ic-nav button{white-space:normal;min-height:44px;text-align:left}.ic-toolbar{align-items:flex-start}.ic-matrix{min-width:680px}}
@media print{.ic-nav,.ic-toolbar .ic-controls,.ic-actions,.ic-hero:after{display:none!important}.ic-shell{padding:0}.ic-card{box-shadow:none;break-inside:avoid}.ic-hero{background:#eef2e9!important}}
