:root{--d-ink:var(--theme-text);--d-deep:var(--theme-header);--d-blue:var(--theme-primary);--d-aqua:var(--theme-secondary);--d-lime:var(--theme-danger);--d-gold:var(--theme-accent);--d-red:var(--theme-danger);--d-bg:var(--theme-page);--d-line:var(--theme-line);--d-muted:var(--theme-muted)}
body{background:radial-gradient(circle at 92% 3%,var(--theme-subtle) 0,transparent 30rem),linear-gradient(180deg,var(--theme-subtle),var(--theme-subtle));color:var(--d-ink)}.profile-header{padding:1rem clamp(1rem,3vw,2.5rem);background:var(--d-deep);color:var(--theme-inverse);border-bottom:4px solid var(--d-aqua);display:flex;align-items:center;justify-content:space-between;gap:1rem}.profile-brand{display:flex;align-items:center;gap:.85rem}.profile-brand p{margin:0;color:var(--theme-muted);font-size:.78rem;letter-spacing:.12em;text-transform:uppercase}.profile-brand h1{margin:.15rem 0 0}.orbit-mark{width:58px;height:58px;border:2px solid var(--d-aqua);border-radius:50%;display:grid;place-items:center;position:relative}.orbit-mark i{position:absolute;inset:7px;border:1px dashed var(--d-gold);border-radius:50%}.orbit-mark b{font-size:.72rem}.module-nav{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem}.module-nav a{color:var(--theme-text);text-decoration:none;border:1px solid var(--theme-line);border-radius:5px;padding:.42rem .55rem;font-size:.8rem}.export-button{background:var(--d-gold);color:var(--theme-inverse)}.village-picker{position:sticky;top:0;z-index:15;display:flex;align-items:center;gap:.75rem;padding:.7rem clamp(1rem,3vw,2.5rem);background:var(--theme-panel);border-bottom:1px solid var(--d-line);box-shadow:0 5px 18px color-mix(in srgb,var(--theme-shadow-colour) 7.06%,transparent)}.village-picker label{font-weight:800}.village-picker select{min-width:min(460px,55vw)}.village-picker span{color:var(--d-muted);font-size:.8rem}.profile-main{max-width:1580px;margin:auto;padding:1.1rem clamp(1rem,3vw,2.5rem) 3rem}.panel{border-radius:11px;border-color:var(--d-line);box-shadow:0 9px 28px color-mix(in srgb,var(--theme-shadow-colour) 4.71%,transparent)}.identity-card{display:grid;grid-template-columns:1.35fr repeat(5,minmax(100px,.6fr));gap:.7rem;align-items:center;background:linear-gradient(120deg,var(--theme-panel),var(--theme-subtle));border-left:6px solid var(--d-aqua)}.identity-title p{margin:0;color:var(--d-muted)}.identity-title h2{margin:.2rem 0;font-size:clamp(1.5rem,3vw,2.35rem)}.identity-stat{padding:.65rem;border-left:1px solid var(--d-line)}.identity-stat small{display:block;color:var(--d-muted)}.identity-stat strong{font-size:1.05rem}.quality-pill,.badge{display:inline-block;padding:.24rem .55rem;border-radius:999px;background:var(--theme-subtle);color:var(--theme-text);font-size:.72rem;font-weight:800}.badge.warn{background:var(--theme-warning-soft);color:var(--theme-warning)}.profile-tabs{display:flex;gap:.35rem;overflow:auto;margin:1rem 0;padding:.35rem;background:var(--theme-subtle);border-radius:8px;scrollbar-width:thin}.profile-tabs button{white-space:nowrap;border:0;background:transparent;padding:.65rem .8rem;border-radius:6px;color:var(--d-ink);font-weight:750;cursor:pointer}.profile-tabs button.active{background:var(--d-deep);color:var(--theme-inverse)}.tab-content{min-height:480px}.hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:1rem}.narrative-card{background:linear-gradient(145deg,var(--d-deep),var(--theme-primary));color:var(--theme-inverse);padding:1.25rem}.narrative-card .section-kicker{color:var(--theme-text)}.index-number{font-size:3.3rem;font-weight:900;color:var(--theme-inverse)}.dimension-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem}.metric-card{padding:.8rem;background:var(--theme-panel);border:1px solid var(--d-line);border-radius:8px}.metric-card strong{display:block;font-size:1.55rem}.metric-card small{color:var(--d-muted)}.metric-card.accent{border-top:4px solid var(--d-aqua)}.metric-card.warn{border-top:4px solid var(--d-gold)}.section-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1rem}.section-grid.two{grid-template-columns:repeat(2,1fr)}.content-card{padding:1rem}.content-card h2,.content-card h3{margin-top:0}.fact-list,.tag-list,.bar-list{display:grid;gap:.5rem}.fact{padding:.6rem;border-bottom:1px solid var(--d-line)}.fact small{display:block;color:var(--d-muted)}.tag-list{display:flex;flex-wrap:wrap}.tag{padding:.3rem .55rem;background:var(--theme-subtle);border-radius:999px;font-size:.75rem}.bar-row{display:grid;grid-template-columns:minmax(150px,1fr) 2fr 52px;gap:.55rem;align-items:center;font-size:.8rem}.bar-row i{height:10px;background:var(--theme-subtle);border-radius:999px;overflow:hidden}.bar-row i span{display:block;height:100%;background:linear-gradient(90deg,var(--d-blue),var(--d-aqua))}.bar-row b{text-align:right}.source-note{padding:.65rem;background:var(--theme-subtle);color:var(--d-muted);font-size:.77rem;border-radius:6px}.warning-note{padding:.75rem;background:var(--theme-warning-soft);border-left:4px solid var(--d-gold);color:var(--theme-warning)}.trace-list{display:grid;gap:.55rem}.trace-list details{border:1px solid var(--d-line);border-radius:7px;padding:.6rem;background:var(--theme-panel)}.trace-list summary{cursor:pointer;font-weight:750}.trace-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem;margin-top:.6rem}.trace-grid div{padding:.5rem;background:var(--theme-subtle)}.trace-grid small{display:block;color:var(--d-muted)}.table-shell{overflow:auto;max-height:640px}.link-row{display:flex;gap:.5rem;flex-wrap:wrap}.link-row a{text-decoration:none}.empty-state{padding:1rem;border:1px dashed var(--theme-line);background:var(--theme-subtle);border-radius:8px}.comparison-table{width:100%}.comparison-table th:first-child{text-align:left}.comparison-table td:not(:first-child),.comparison-table th:not(:first-child){text-align:right}.toast{display:none;position:fixed;right:1rem;bottom:1rem;z-index:30;padding:.8rem 1rem;background:var(--d-deep);color:var(--theme-inverse);border-radius:7px}.toast.show{display:block}
.suggested-analyses{margin-top:1rem;padding:1rem;border-left:5px solid var(--d-gold);background:linear-gradient(120deg,var(--theme-subtle),var(--theme-panel))}.suggestion-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem}.suggestion-heading h2{margin:.15rem 0}.suggestion-heading>p{max-width:620px;margin:0;color:var(--d-muted);font-size:.85rem}.suggestion-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem;margin-top:.9rem}.suggestion-card{display:flex;gap:.7rem;align-items:flex-start;padding:.85rem;border:1px solid var(--d-line);border-radius:8px;background:var(--theme-subtle);color:var(--d-ink);text-decoration:none}.suggestion-card:hover{border-color:var(--d-aqua);background:var(--theme-subtle)}.suggestion-card>span:last-child{display:grid;gap:.15rem}.suggestion-card small{color:var(--d-muted)}.suggestion-card b{font-size:.78rem;color:var(--d-blue);margin-top:.25rem}.suggestion-rank{display:grid;place-items:center;flex:0 0 28px;height:28px;border-radius:50%;background:var(--d-gold);color:var(--theme-inverse);font-weight:900}.suggestion-actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:.8rem}.suggestion-actions a{font-size:.8rem;font-weight:750;color:var(--d-blue)}
.date-context{max-width:760px!important;margin:.4rem 0!important;padding:.45rem .6rem;background:var(--theme-subtle);border-radius:6px;font-size:.76rem;line-height:1.45}.quality-definition{margin-top:.35rem;line-height:1.35}
@media(max-width:1100px){.profile-header{display:block}.module-nav{margin-top:1rem}.identity-card{grid-template-columns:repeat(3,1fr)}.identity-title{grid-column:1/-1}.hero-grid,.section-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.village-picker{position:static;display:grid}.village-picker select{min-width:0;width:100%}.identity-card,.hero-grid,.section-grid,.section-grid.two,.dimension-grid,.trace-grid,.suggestion-grid{grid-template-columns:1fr}.suggestion-heading{display:grid;gap:.4rem}.identity-title{grid-column:auto}.identity-stat{border-left:0;border-top:1px solid var(--d-line)}.bar-row{grid-template-columns:1fr 1fr 42px}}

/* Shell dimuat terakhir; pertahankan kontras kartu narasi terhadap aturan panel bersama. */
.design-system-v1 .narrative-card{background:linear-gradient(145deg,var(--d-deep),var(--theme-primary))!important;color:var(--theme-inverse)!important;border-color:var(--theme-line)!important}
.design-system-v1 .narrative-card h2,.design-system-v1 .narrative-card p,.design-system-v1 .narrative-card .index-number{color:var(--theme-inverse)!important}
.design-system-v1 .narrative-card .source-note{background:color-mix(in srgb,var(--theme-panel) 12.0%,transparent)!important;color:var(--theme-muted)!important}
