/* نبض حصاد — مركز صناعة القرار. يستهلك رموز #app (--ink --muted --line --paper --white --green --gold --red --navy --amber) ولا يعرّف لوحة ألوان خاصة. */
.pulse-shell{display:flex;flex-direction:column;min-height:0;height:100%;max-height:100%;overflow:hidden;flex:1 1 auto;position:relative;background:var(--paper);color:var(--ink)}
.pulse-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;padding:10px 20px;border-bottom:1px solid var(--line);background:var(--white)}
.pulse-toolbar [data-pulse-status]{flex:1 1 260px;min-width:0}
.pulse-status-line{font-size:13px;color:var(--muted)}
.pulse-status-line.is-stale{color:var(--red);font-weight:700}
.pulse-period{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}
.pulse-period>span{font-size:13px;color:var(--muted)}
.pulse-period>small{font-size:12px;color:var(--muted)}
.pulse-period button{min-height:34px;border:1px solid var(--line);border-radius:8px;background:var(--white);color:var(--ink);padding:6px 12px;font:inherit;font-size:13px;cursor:pointer}
.pulse-period button[aria-pressed="true"]{background:var(--green);border-color:var(--green);color:var(--white);font-weight:700}
.pulse-toolbar>button{min-height:36px}
.pulse-role{font-size:12px;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:4px 10px;background:var(--white)}
.pulse-content{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:16px 20px 32px;display:flex;flex-direction:column;gap:16px}
.pulse-embed{min-height:400px}
.pulse-skeleton{display:grid;gap:12px;padding:20px}
.pulse-skeleton i{display:block;height:88px;border-radius:14px;background:linear-gradient(90deg,var(--line),var(--white),var(--line));background-size:200% 100%;animation:pulse-shimmer 1.4s linear infinite}
@keyframes pulse-shimmer{to{background-position:-200% 0}}
.pulse-failure{margin:24px auto;max-width:560px;padding:24px;border:1px solid var(--line);border-radius:14px;background:var(--white);text-align:center}
.pulse-failure h2{margin:0 0 8px;font-size:18px;color:var(--red)}
.pulse-failure p{margin:0 0 16px;color:var(--muted)}
.pulse-empty{padding:14px;color:var(--muted);font-size:14px;text-align:center}

/* الحالة واللون: النص يحمل المعنى دائمًا، واللون تأكيد فقط */
.pulse-tone-red{--pulse-tone:var(--red)}
.pulse-tone-amber{--pulse-tone:var(--amber)}
.pulse-tone-green{--pulse-tone:var(--green)}
.pulse-tone-unknown,.pulse-tone-neutral{--pulse-tone:var(--muted)}
.pulse-dot{width:12px;height:12px;border-radius:50%;background:var(--pulse-tone,var(--muted));box-shadow:0 0 0 4px color-mix(in srgb,var(--pulse-tone,var(--muted)) 18%,transparent)}

/* المستوى الأول */
.pulse-judgment{display:grid;grid-template-columns:minmax(280px,1.1fr) minmax(0,2fr);gap:16px;padding:18px;border:1px solid var(--line);border-inline-start:6px solid var(--pulse-tone,var(--muted));border-radius:16px;background:var(--white)}
.pulse-judgment-main{display:grid;gap:6px;text-align:start;border:0;background:transparent;color:inherit;font:inherit;padding:0;cursor:pointer}
.pulse-judgment-main:focus-visible,.pulse-axis:focus-visible,.pulse-row:focus-visible,.pulse-metric:focus-visible,.pulse-strip button:focus-visible,.pulse-detail-button:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.pulse-eyebrow{font-size:13px;color:var(--muted);font-weight:700}
.pulse-judgment-main strong{font-size:26px;line-height:1.2;color:var(--pulse-tone,var(--ink))}
.pulse-judgment-main p{margin:0;font-size:15px;line-height:1.6;color:var(--ink)}
.pulse-axes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;align-content:start}
.pulse-axis{display:grid;gap:3px;text-align:start;border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:var(--paper);color:var(--ink);font:inherit;cursor:pointer;border-inline-start:4px solid var(--pulse-tone,var(--muted))}
.pulse-axis span{font-size:13px;color:var(--muted)}
.pulse-axis b{font-size:15px;color:var(--pulse-tone,var(--ink))}
.pulse-axis small{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pulse-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:16px}
.pulse-stack{display:grid;gap:16px;align-content:start}
.pulse-panel{border:1px solid var(--line);border-radius:16px;background:var(--white);overflow:hidden}
.pulse-panel>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--line)}
.pulse-panel>header p{margin:0;font-size:12px;font-weight:700;color:var(--gold)}
.pulse-panel>header h2{margin:2px 0 0;font-size:16px;color:var(--navy,var(--ink))}
.pulse-panel>header span{font-size:13px;color:var(--muted)}
.pulse-panel>p{margin:0;padding:12px 16px;font-size:14px;line-height:1.7;color:var(--ink)}
.pulse-list{list-style:none;margin:0;padding:8px}
.pulse-list li{margin:0}
.pulse-row{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;text-align:start;border:1px solid transparent;border-inline-start:4px solid var(--pulse-tone,var(--muted));border-radius:12px;padding:10px 12px;background:transparent;color:inherit;font:inherit;cursor:pointer}
.pulse-row:hover{background:var(--paper);border-color:var(--line);border-inline-start-color:var(--pulse-tone,var(--muted))}
.pulse-row i{width:26px;height:26px;display:grid;place-items:center;border-radius:50%;background:var(--pulse-tone,var(--muted));color:var(--white);font-style:normal;font-size:13px;font-weight:700}
.pulse-row span{display:grid;gap:2px;min-width:0}
.pulse-row strong{font-size:14px;color:var(--ink)}
.pulse-row small{font-size:13px;color:var(--muted);line-height:1.5}
.pulse-row em{font-size:12px;font-style:normal;color:var(--muted)}
.pulse-row b{font-size:13px;color:var(--pulse-tone,var(--ink));white-space:nowrap}
/* صفوف بلا أيقونة (أخطر المخاطر): النص في عمود 1fr دائمًا، لا في عمود auto الذي يتمدد بطول النص فيُخرج المبلغ عن البطاقة. */
.pulse-row>span{grid-column:2}
.pulse-changes{list-style:none;margin:0;padding:8px 16px 12px;display:grid;gap:6px}
.pulse-changes li{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:baseline;font-size:14px;padding:6px 0;border-bottom:1px dashed var(--line)}
.pulse-changes li:last-child{border-bottom:0}
.pulse-changes span{color:var(--ink)}
.pulse-changes b{color:var(--ink);white-space:nowrap}
.pulse-changes em{font-style:normal;font-size:13px;color:var(--muted);white-space:nowrap}
.pulse-changes em.is-up{color:var(--green)}
.pulse-changes em.is-down{color:var(--red)}
.pulse-strip{display:grid;grid-template-columns:minmax(220px,1.2fr) repeat(4,minmax(110px,1fr));gap:8px;align-items:center;padding:12px 16px;border:1px solid var(--line);border-radius:16px;background:var(--white)}
.pulse-strip>button{display:grid;gap:2px;text-align:start;border:0;background:transparent;color:inherit;font:inherit;padding:0;cursor:pointer}
.pulse-strip strong{font-size:15px;color:var(--ink)}
.pulse-strip small{font-size:12px;color:var(--muted)}
.pulse-strip>div{display:grid;gap:2px;padding:8px 10px;border-radius:12px;background:var(--paper)}
.pulse-strip>div span{font-size:12px;color:var(--muted)}
.pulse-strip>div b{font-size:15px;color:var(--pulse-tone,var(--ink))}
.pulse-coverage{border-inline-start:6px solid var(--pulse-tone,var(--muted))}

/* المستوى الثاني */
.pulse-domains{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.pulse-domain{display:grid;grid-template-rows:auto minmax(0,1fr) auto;border:1px solid var(--line);border-top:5px solid var(--pulse-tone,var(--muted));border-radius:16px;background:var(--white);overflow:hidden}
.pulse-domain>header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border-bottom:1px solid var(--line)}
.pulse-domain h3{margin:0;font-size:15px;color:var(--ink)}
.pulse-domain>header small{display:block;margin-top:2px;font-size:12px;color:var(--pulse-tone,var(--muted));font-weight:700}
.pulse-metrics{list-style:none;margin:0;padding:6px 8px}
.pulse-metric{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:8px;text-align:start;border:0;border-radius:10px;padding:8px 8px;background:transparent;color:inherit;font:inherit;cursor:pointer}
.pulse-metric:hover{background:var(--paper)}
.pulse-metric i{font-style:normal;font-size:11px;font-weight:700;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:1px 7px;white-space:nowrap}
.pulse-metric span{font-size:13px;color:var(--ink);min-width:0}
.pulse-metric b{font-size:14px;color:var(--pulse-tone,var(--ink));white-space:nowrap}
.pulse-metric em{font-style:normal;font-size:12px;color:var(--muted)}
.pulse-metric em.is-up{color:var(--green)}
.pulse-metric em.is-down{color:var(--red)}
.pulse-domain>footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;border-top:1px solid var(--line);background:var(--paper)}
.pulse-domain>footer span{font-size:12px;color:var(--muted)}
.pulse-domain>footer div{display:flex;gap:6px}
.pulse-domain>footer button{min-height:32px;font-size:13px;padding:4px 10px}

/* المنهج */
.pulse-method{display:grid;gap:16px}
.pulse-table{width:100%;border-collapse:collapse;font-size:13px}
.pulse-table th,.pulse-table td{padding:8px 12px;border-bottom:1px solid var(--line);text-align:start;vertical-align:top}
.pulse-table th{color:var(--muted);font-weight:700;background:var(--paper)}
.pulse-table tr.pulse-tone-unknown td:nth-child(2){color:var(--muted)}
.pulse-table tr.pulse-tone-amber td:nth-child(2){color:var(--amber);font-weight:700}
.pulse-dl{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:6px 16px;margin:0;padding:12px 16px;font-size:14px}
.pulse-dl dt{color:var(--muted)}
.pulse-dl dd{margin:0;color:var(--ink)}

/* المستوى الثالث: الدرج */
.pulse-drawer{position:fixed;inset-block:0;inset-inline-end:0;inset-inline-start:auto;width:min(560px,96vw);max-width:none;max-height:none;height:100dvh;margin:0;padding:0;border:0;border-inline-start:1px solid var(--line);background:var(--paper);color:var(--ink);box-shadow:-16px 0 40px rgba(0,0,0,.18);display:none;grid-template-rows:auto minmax(0,1fr)}
.pulse-drawer[open]{display:grid}
.pulse-drawer::backdrop{background:rgba(23,51,44,.35)}
.pulse-drawer>header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px;border-bottom:1px solid var(--line);background:var(--white)}
.pulse-drawer>header p{margin:0;font-size:12px;font-weight:700;color:var(--gold)}
.pulse-drawer>header h2{margin:2px 0 0;font-size:16px;color:var(--ink)}
.pulse-drawer>header button{width:38px;height:38px;font-size:22px;line-height:1}
.pulse-drawer-body{overflow:auto;padding:14px 16px 24px;display:grid;gap:8px;align-content:start}
.pulse-drawer-hero{padding:14px;border:1px solid var(--line);border-inline-start:5px solid var(--pulse-tone,var(--muted));border-radius:14px;background:var(--white)}
.pulse-drawer-hero strong{display:block;font-size:18px;color:var(--pulse-tone,var(--ink))}
.pulse-drawer-hero p{margin:6px 0 0;font-size:14px;line-height:1.6;color:var(--ink)}
.pulse-detail{display:grid;gap:2px;padding:9px 12px;border:1px solid var(--line);border-radius:12px;background:var(--white);font:inherit;text-align:start;color:inherit}
.pulse-detail span{font-size:12px;color:var(--muted)}
.pulse-detail strong{font-size:14px;color:var(--pulse-tone,var(--ink));line-height:1.5;word-break:break-word}
.pulse-detail small{font-size:12px;color:var(--muted)}
.pulse-detail-button{cursor:pointer;width:100%}
.pulse-detail-button:hover{background:var(--paper)}
.pulse-drawer-section{display:grid;gap:6px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--white)}
.pulse-drawer-section h3{margin:0 0 4px;font-size:14px;color:var(--ink)}
.pulse-note{margin:0;padding:10px 12px;border-radius:12px;background:var(--white);border:1px dashed var(--line);font-size:13px;line-height:1.7;color:var(--muted)}
.pulse-drawer-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;padding-top:6px}
.pulse-drawer-actions button{min-height:38px}

/* الرقابة المستضافة */
.institutional-oversight-center.is-embedded{min-height:auto;border:0;border-radius:0;box-shadow:none;background:transparent;overflow:visible}
.institutional-oversight-center.is-embedded .institutional-oversight-content{overflow:visible;min-height:0}
.institutional-oversight-center.is-embedded .institutional-oversight-drawer{position:fixed;inset-block:0;height:100dvh;z-index:60}

/* الطباعة */
@media print{.pulse-toolbar button,.pulse-period,.pulse-drawer,.pulse-domain>footer div,.pulse-drawer-actions{display:none!important}.pulse-content{overflow:visible;padding:0}.pulse-grid,.pulse-domains{grid-template-columns:1fr}.pulse-panel,.pulse-domain,.pulse-judgment,.pulse-strip{break-inside:avoid}}

/* الاستجابة: نقاط كسر المنتج */
@media (max-width:900px){.pulse-judgment{grid-template-columns:1fr}.pulse-axes{grid-template-columns:repeat(2,minmax(0,1fr))}.pulse-grid{grid-template-columns:1fr}.pulse-domains{grid-template-columns:repeat(2,minmax(0,1fr))}.pulse-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.pulse-strip>button{grid-column:1 / -1}}
@media (max-width:760px){.pulse-content{padding:12px}.pulse-toolbar{padding:8px 12px}.pulse-domains{grid-template-columns:1fr}.pulse-axes{grid-template-columns:1fr}.pulse-row{grid-template-columns:auto minmax(0,1fr)}.pulse-row b{grid-column:2;justify-self:start}.pulse-drawer{width:100vw}.pulse-metric{grid-template-columns:auto minmax(0,1fr)}.pulse-metric b,.pulse-metric em{grid-column:2;justify-self:start}.pulse-changes li{grid-template-columns:minmax(0,1fr) auto}.pulse-changes em{grid-column:1 / -1}}
@media (max-width:620px){.pulse-strip{grid-template-columns:1fr}.pulse-dl{grid-template-columns:1fr}.pulse-period small{flex-basis:100%}}
@media (prefers-reduced-motion:reduce){.pulse-skeleton i{animation:none}}
\n@media (max-width:700px){.pulse-shell{height:auto;max-height:none;overflow:visible}.pulse-content{overflow:visible;scrollbar-gutter:auto}}\n