/* The portal section's dashboard (2026-11-11): one framed sheet drawn from the client portal's own series
   (assets/portal-sample.js, built by tools/portal-sample). Square corners and hairlines, like the rest of the
   site; one frame with ruled divisions, no cards inside cards. Colours: revenue and oil #E36410, wells and
   condensate #4C8DF6, gas #1FA893, NGL #9A74E8 (checked with the dataviz palette validator on #0E1A2B). */
.pd{margin:0;padding:0;background:#0c1727;border:1px solid var(--border-medium);box-shadow:0 30px 80px rgba(0,0,0,.45),0 6px 16px rgba(0,0,0,.28);
  font-family:var(--font-body);color:var(--text-primary);--pd-pad:26px;--pd-line:var(--border-subtle)}
.pd-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px var(--pd-pad);border-bottom:1px solid var(--pd-line);background:#0a1422}
.pd-id{display:flex;align-items:baseline;gap:12px;min-width:0}
.pd-id b{font-family:var(--font-display);font-weight:500;font-size:15px;letter-spacing:-.005em;white-space:nowrap}
.pd-id span{font-size:13px;color:var(--text-muted);white-space:nowrap}
.pd-seg{display:inline-flex;border:1px solid var(--border-medium);background:var(--bg-base);flex:none}
.pd-seg button{font:inherit;font-size:13px;color:var(--text-secondary);background:none;border:0;padding:0 14px;min-height:34px;cursor:pointer}
.pd-seg button+button{border-left:1px solid var(--border-medium)}
.pd-seg button:hover{color:var(--text-primary)}
.pd-seg button[aria-pressed="true"]{background:var(--bg-elevated);color:var(--text-primary);font-weight:500}
.pd button:focus-visible,.pd-plot:focus-visible{outline:2px solid var(--brand-blue);outline-offset:2px}

.pd-tiles{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--pd-line)}
.pd-tile{padding:20px var(--pd-pad) 18px;display:flex;flex-direction:column;gap:6px;min-width:0}
.pd-tile+.pd-tile{border-left:1px solid var(--pd-line)}
.pd-tile span{font-size:13px;color:var(--text-muted)}
.pd-tile b{font-family:var(--font-display);font-weight:400;font-size:clamp(26px,2.6vw,34px);line-height:1;letter-spacing:-.025em;font-feature-settings:"tnum"}

.pd-grid{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(0,1fr);border-bottom:1px solid var(--pd-line)}
.pd-sec{position:relative;padding:22px var(--pd-pad) 20px;min-width:0}
.pd-grid .pd-sec+.pd-sec{border-left:1px solid var(--pd-line)}
.pd-h{font-family:var(--font-display);font-weight:500;font-size:16px;letter-spacing:-.005em;margin:0 0 3px}
.pd-sub{font-size:13px;line-height:1.45;color:var(--text-muted);margin:0 0 14px}
.pd-legend{display:flex;flex-wrap:wrap;gap:6px 18px;list-style:none;margin:0 0 8px;padding:0;font-size:13px;color:var(--text-secondary)}
.pd-legend li{display:flex;align-items:center;gap:8px;white-space:nowrap}
.pd-legend b{font-weight:500;color:var(--text-primary);font-feature-settings:"tnum"}
.pd-key{display:inline-block;width:14px;height:2px;border-radius:1px;flex:none}
.pd-key.box{width:10px;height:10px;border-radius:2px}
.pd-key.est{width:10px;height:10px;border-radius:2px;background:repeating-linear-gradient(135deg,rgba(227,100,16,.75) 0 2px,transparent 2px 4px);outline:1px solid rgba(227,100,16,.75);outline-offset:-1px}
.pd-plot{position:relative;outline:none;touch-action:pan-y}
.pd-plot svg{display:block;width:100%;overflow:visible}
.pd-plot text{font-family:var(--font-body);font-size:12px;fill:var(--text-muted);font-feature-settings:"tnum"}
.pd-plot .pd-cap{fill:var(--text-secondary)}
.pd-plot+.pd-legend{margin-top:16px}
.pd-tip{position:absolute;z-index:5;left:0;top:0;min-width:168px;padding:10px 12px;background:rgba(8,17,28,.97);border:1px solid var(--border-medium);box-shadow:0 14px 34px rgba(0,0,0,.5);
  font-size:13px;pointer-events:none;opacity:0;transition:opacity .12s}
.pd-tip.on{opacity:1}
.pd-tip-t{color:var(--text-secondary);margin-bottom:6px}
.pd-tip-r{display:flex;align-items:center;gap:8px;white-space:nowrap;color:var(--text-secondary)}
.pd-tip-r+.pd-tip-r{margin-top:3px}
.pd-tip-r b{margin-left:auto;padding-left:16px;color:var(--text-primary);font-weight:500;font-feature-settings:"tnum"}

.pd-audit-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:12px}
.pd-audit-head .pd-sub{margin-bottom:0}
.pd-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
.pd-table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px;font-feature-settings:"tnum"}
.pd-table th,.pd-table td{padding:0;text-align:right;white-space:nowrap;font-weight:400}
.pd-table thead th{padding:0 9px 9px;color:var(--text-muted);border-bottom:1px solid var(--border-medium)}
.pd-table thead th small{display:block;font-size:11px;color:var(--text-muted);opacity:.8}
.pd-table tbody th,.pd-table tfoot th{text-align:left;color:var(--text-primary);padding:0 14px 0 0;position:sticky;left:0;background:#0c1727;z-index:1;max-width:250px;overflow:hidden;text-overflow:ellipsis}
.pd-table tbody td,.pd-table tfoot td{padding:2px 1px}
.pd-table td i{display:block;font-style:normal;padding:8px 8px;color:var(--text-primary)}
.pd-table td.gap i{color:var(--text-muted);opacity:.5}
.pd-table tbody tr:hover th{color:#fff}
.pd-table td.tot i,.pd-table th.tot{font-weight:500}
.pd-table td.tot{padding-left:10px}
.pd-table tfoot th,.pd-table tfoot td{border-top:1px solid var(--border-medium);font-weight:500}
.pd-table tfoot td i{font-weight:500}
.pd-more{margin-top:14px;font:inherit;font-size:13px;color:var(--text-secondary);background:none;border:1px solid var(--border-medium);padding:0 14px;min-height:36px;cursor:pointer}
.pd-more:hover{color:var(--text-primary);border-color:var(--text-muted)}
.pd-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

@media(max-width:1000px){
  .pd-grid{grid-template-columns:minmax(0,1fr)}
  .pd-grid .pd-sec+.pd-sec{border-left:0;border-top:1px solid var(--pd-line)}
}
@media(max-width:700px){
  .pd{--pd-pad:16px}
  .pd-id span{display:none}
  .pd-tiles{grid-template-columns:1fr}
  .pd-tile{flex-direction:row;align-items:baseline;justify-content:space-between;padding:13px var(--pd-pad)}
  .pd-tile+.pd-tile{border-left:0;border-top:1px solid var(--pd-line)}
  .pd-tile b{font-size:22px}
  .pd-table tbody th,.pd-table tfoot th{max-width:132px}
  .pd-audit-head{flex-direction:column;align-items:flex-start;gap:6px}
}
@media(prefers-reduced-motion:reduce){.pd-tip{transition:none}}
