/* Research hub, inheriting the site's accessibility and theme settings. */
.sidebar{min-height:0;overflow-y:auto}.sidebar>*{flex-shrink:0}
.pj-root{max-width:1240px;margin:0 auto}.pj-root *{min-width:0;box-sizing:border-box}.pj-header{max-width:900px;margin:0 0 26px}.pj-eyebrow{font-size:.67rem;font-weight:800;letter-spacing:.1em;color:var(--accent);text-transform:uppercase}.pj-header h1{font-size:clamp(1.9rem,3.4vw,3.15rem);line-height:1.12;letter-spacing:-.04em;margin:15px 0}.pj-header>p{font-size:1.05rem;line-height:1.7;color:var(--muted);max-width:76ch}.pj-nav{display:flex;flex-wrap:wrap;gap:9px;padding-bottom:22px;margin-bottom:24px;border-bottom:1px solid var(--line)}.pj-nav>a{border:1px solid var(--line);border-radius:10px;padding:13px 17px;font-weight:750;font-size:.85rem;color:var(--muted)}.pj-nav>a[aria-current]{background:var(--accent);color:var(--bg);border-color:var(--accent)}.pj-feature{background:radial-gradient(ellipse at top right,rgba(102,228,176,.13),transparent 68%),var(--panel);border:1px solid var(--line);border-radius:20px;padding:30px;display:grid;grid-template-columns:1fr 140px;gap:30px;margin-bottom:25px}.pj-feature h2{font-size:1.8rem;letter-spacing:-.03em;margin:12px 0}.pj-feature p{max-width:65ch;line-height:1.7;color:var(--muted)}.pj-feature-numbers{display:grid;grid-template-columns:auto 1fr;gap:7px 12px;align-items:center;border-left:1px solid var(--line);padding-left:24px}.pj-feature-numbers strong{font-size:3rem;font-weight:800;color:var(--accent);line-height:1.4}.pj-feature-numbers span{font-size:.75rem;color:var(--muted)}.pj-filter,.pj-links{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.pj-filter{margin:24px 0 10px}.pj-chip{background:var(--panel);border:1px solid var(--line);color:var(--muted);border-radius:30px;font:inherit;font-size:.75rem;min-height:44px;padding:10px 15px;cursor:pointer}.pj-chip[aria-pressed=true]{color:var(--accent);border-color:var(--accent);background:var(--panel2)}.pj-task-grid,.pj-source-grid,.pj-data-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:20px 0 28px}.pj-card,.pj-panel{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:25px}.pj-panel{margin:22px 0}.pj-card{display:flex;flex-direction:column}.pj-card h2{font-size:1.3rem;line-height:1.3;letter-spacing:-.02em;margin:12px 0}.pj-card p{font-size:.91rem;line-height:1.7;margin:10px 0;color:var(--muted)}.pj-card .pj-links{margin-top:auto;padding-top:16px}.pj-links>a:not(.btn){font-size:.8rem;color:var(--accent);font-weight:650;line-height:1.5;padding:8px 0}.pj-card-top{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:23px}.pj-card-top>span:last-child{font-size:.75rem;color:var(--muted)}.pj-number{font-size:1.35rem;font-weight:800;color:var(--accent);border-bottom:2px solid var(--accent);padding-bottom:5px}.pj-root .btn{min-height:44px;white-space:normal;text-align:center}.pj-root .btn-outline{color:var(--accent);border-color:var(--accent)}.pj-root .btn-outline:hover{background:var(--panel2);color:var(--text)}.pj-text-button{font:inherit;font-size:.75rem;font-weight:700;min-height:44px;border:0;background:transparent;color:var(--accent);padding:10px;cursor:pointer}.pj-small,.pj-save-info{font-size:.75rem;color:var(--muted);line-height:1.65}.pj-small a,.pj-save-info a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}.pj-save-info{padding:12px 16px;background:var(--panel2);border-radius:10px}.pj-panel h2{font-size:1.3rem;line-height:1.4;margin:0 0 15px}.pj-panel h3{font-size:1.05rem;margin:22px 0 10px}.pj-panel p{line-height:1.7}.pj-panel summary,.pj-help summary{min-height:44px;padding:12px 0;font-weight:750;cursor:pointer;line-height:1.5}.pj-detail-meta{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.pj-detail-meta>span,.pj-badge{font-size:.73rem;background:var(--panel2);border:1px solid var(--line);border-radius:30px;padding:8px 12px;color:var(--muted)}.pj-detail-meta>.btn{margin-left:auto}.pj-detail-grid{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(230px,1fr);gap:20px}.pj-goal{font-size:1.1rem;color:var(--accent);font-weight:600}.pj-steps{list-style:none;counter-reset:steps;padding:0;margin:22px 0}.pj-steps li{position:relative;counter-increment:steps;padding:4px 0 22px 43px;line-height:1.75;font-size:.96rem}.pj-steps li:before{content:counter(steps);position:absolute;left:0;top:4px;display:grid;place-items:center;background:var(--panel2);color:var(--accent);font-weight:800;border-radius:9px;width:28px;height:30px}.pj-help{border-top:1px solid var(--line);font-size:.86rem}.pj-help p{color:var(--muted)}.pj-note{border-left:3px solid var(--accent);padding:10px 15px;background:var(--panel2);font-size:.83rem;color:var(--muted);line-height:1.65;border-radius:0 8px 8px 0}.pj-tool-stack{display:grid;gap:10px}.pj-source-list{padding:0;list-style:none}.pj-source-list li{padding:12px 0;border-bottom:1px solid var(--line)}.pj-source-list a{color:var(--accent);font-size:.9rem;text-decoration:underline;text-underline-offset:3px}.pj-source-list small{display:block;font-size:.7rem;line-height:1.5;color:var(--muted);margin-top:5px}.pj-section-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:20px}.pj-section-heading h2{margin:0}.pj-section-heading>a{font-size:.8rem;color:var(--accent)}.pj-field{display:block;margin:24px 0}.pj-field>span{display:block;font-size:.92rem;font-weight:700;line-height:1.6;margin-bottom:10px}.pj-field textarea{font:inherit;font-size:.95rem;line-height:1.7;width:100%;resize:vertical;border:1px solid var(--line);border-radius:12px;padding:16px;background:var(--bg);color:var(--text)}.pj-checks{padding:20px;border:1px solid var(--line);border-radius:12px;margin-top:25px}.pj-checks legend{font-size:.9rem;font-weight:750;padding:0 8px}.pj-checks label{display:flex;align-items:start;gap:12px;padding:10px 0;font-size:.9rem;line-height:1.5}.pj-checks input{accent-color:var(--accent);width:19px;height:19px;flex-shrink:0;margin-top:2px}.pj-notice{font-size:.9rem;color:var(--muted);background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:20px;line-height:1.7}.pj-section-title{font-size:1.5rem;margin:30px 0 18px}.pj-owner{font-size:.73rem!important;color:var(--accent)!important}.pj-data-meta{margin:15px 0}.pj-data-meta>div{display:grid;grid-template-columns:70px 1fr;gap:10px;padding:5px 0;font-size:.75rem}.pj-data-meta dt{color:var(--muted)}.pj-data-meta dd{margin:0;overflow-wrap:anywhere}.pj-filename{font-size:.66rem;color:var(--muted);margin-top:14px;overflow-wrap:anywhere}.pj-download-guide{border-color:var(--accent)}.pj-download-guide ol{padding-left:24px;line-height:1.8;font-size:.9rem}.pj-download-guide li{margin-bottom:10px}.pj-country-selects{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin:22px 0}.pj-country-selects label,.pj-chart-head label{display:flex;flex-direction:column;gap:8px;font-size:.78rem;color:var(--muted)}.pj-root select{width:100%;min-height:46px;font:inherit;font-size:.88rem;color:var(--text);background:var(--bg);border:1px solid var(--line);border-radius:9px;padding:10px}.pj-table-wrap{width:100%;overflow:auto;border:1px solid var(--line);border-radius:12px}.pj-table{width:100%;border-collapse:collapse;min-width:550px;font-size:.88rem}.pj-table caption{padding:14px;color:var(--muted);font-size:.75rem;text-align:left}.pj-table th,.pj-table td{padding:16px;text-align:right;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums}.pj-table th:first-child{text-align:left}.pj-table th small{font-weight:400;color:var(--muted);font-size:.7rem;display:block;margin-top:6px}.pj-table thead{background:var(--panel2)}.pj-table tr:last-child>*{border-bottom:0}.pj-exports{margin-top:20px}.pj-chart-head{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-top:30px}.pj-chart-head label{width:min(300px,60%)}.pj-bars{margin:20px 0 25px}.pj-bars figcaption{font-size:.75rem;color:var(--muted);line-height:1.6;margin-bottom:20px}.pj-bar-row{display:grid;grid-template-columns:120px 1fr 100px;gap:14px;align-items:center;margin:16px 0;font-size:.88rem}.pj-bar-row strong{text-align:right;font-size:.82rem;font-variant-numeric:tabular-nums}.pj-bar-track{height:22px;background:var(--bg);border-radius:4px;overflow:hidden}.pj-bar-track i{height:100%;display:block;background:var(--pj-bar);border-radius:3px}.pj-panel>a:not(.btn){color:var(--accent);text-decoration:underline;text-underline-offset:3px}.pj-root a:focus-visible,.pj-root button:focus-visible,.pj-root input:focus-visible,.pj-root select:focus-visible,.pj-root textarea:focus-visible,.pj-root summary:focus-visible{outline:3px solid var(--accent);outline-offset:4px}body.light-mode .pj-root{--blue:#3b57b2;--orange:#a14c12}body.light-mode .pj-nav>a[aria-current]{color:#fff}.pj-home{margin:30px 0}.pj-home h2{font-size:1.8rem}.nav-projects{border:1px solid rgba(102,228,176,.35)}
@media(max-width:1100px){.pj-country-selects{grid-template-columns:repeat(2,1fr)}.pj-detail-grid{grid-template-columns:1fr}.pj-detail-grid>.pj-panel{margin-bottom:0}.pj-bar-row{grid-template-columns:95px 1fr 95px}}
@media(max-width:680px){.pj-task-grid,.pj-source-grid,.pj-data-grid{grid-template-columns:1fr}.pj-header h1{font-size:2rem}.pj-nav{gap:8px}.pj-nav>a{flex:1 1 43%;text-align:center;padding:12px 9px;font-size:.75rem}.pj-feature{grid-template-columns:1fr;padding:22px}.pj-feature-numbers{display:none}.pj-feature h2{font-size:1.55rem}.pj-card,.pj-panel{padding:20px}.pj-detail-meta>.btn{margin-left:0}.pj-section-heading>.btn{width:100%}.pj-detail-grid{gap:0}.pj-steps li{padding-left:38px;font-size:.92rem}.pj-country-selects{gap:10px}.pj-bar-row{grid-template-columns:83px minmax(0,1fr) 89px;gap:7px;font-size:.77rem}.pj-chart-head{align-items:end}.pj-chart-head h3{font-size:.95rem}.pj-chart-head label{width:55%}.pj-links .btn{font-size:.78rem}.pj-checks{padding:14px}.pj-checks label{font-size:.85rem}.pj-table{font-size:.8rem}.pj-home h2{font-size:1.5rem}}

/* Clear, project-specific file workflow. */
.pj-csv-guide{border-color:var(--accent);scroll-margin-top:100px}.pj-csv-guide>h2{font-size:1.6rem}.pj-csv-guide a:not(.btn){color:var(--accent);text-decoration:underline;text-underline-offset:3px}.pj-csv-step{padding:24px 0;border-top:1px solid var(--line);margin-top:24px}.pj-csv-step:last-child{padding-bottom:0}.pj-csv-step h3{display:flex;align-items:center;gap:12px;margin:0 0 16px;font-size:1.15rem;line-height:1.5}.pj-csv-step h3>span{display:grid;place-items:center;width:36px;height:36px;flex-shrink:0;border-radius:50%;background:var(--accent);color:var(--bg);font-weight:800}.pj-csv-step>p{color:var(--muted);font-size:.92rem;line-height:1.75}.pj-csv-files{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0}.pj-csv-files article{border:1px solid var(--line);border-radius:12px;padding:20px;background:var(--bg)}.pj-csv-files strong{display:block;font-size:.95rem;line-height:1.5}.pj-csv-files code{display:block;color:var(--muted);font-size:.77rem;overflow-wrap:anywhere;margin:8px 0 18px}.pj-csv-files .btn{font-size:.77rem;padding:12px}.pj-csv-upload{display:flex;flex-direction:column;gap:15px;padding:24px;border:2px dashed var(--accent);border-radius:12px;background:var(--bg);cursor:pointer}.pj-csv-upload strong{font-size:1.1rem;color:var(--accent)}.pj-csv-upload input{font:inherit;width:100%;padding:10px;min-height:50px;color:var(--text);border:1px solid var(--line);border-radius:8px;background:var(--panel)}.pj-csv-upload input::file-selector-button{font:inherit;padding:10px 14px;border:0;border-radius:6px;margin-right:15px;background:var(--accent);color:var(--bg);cursor:pointer}.pj-csv-upload>span{font-size:.8rem;line-height:1.6;color:var(--muted)}.pj-csv-empty{padding:25px;border:1px solid var(--line);border-radius:12px;color:var(--muted);font-size:.9rem;line-height:1.7;margin-top:20px}.pj-csv-message{font-size:.9rem;line-height:1.7}.pj-csv-message.is-error{border-left:4px solid var(--danger);padding:15px;background:var(--bg);color:var(--text)}.pj-csv-loaded{margin-top:25px}.pj-csv-loaded>.pj-section-heading strong{color:var(--accent)}.pj-csv-filters{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0}.pj-csv-filters label{display:flex;flex-direction:column;gap:8px;font-size:.8rem;flex:1 1 160px;color:var(--muted)}.pj-csv-table td{font-size:.78rem;max-width:350px;white-space:pre-wrap;overflow-wrap:anywhere;text-align:left;line-height:1.6}.pj-csv-table th{text-align:left!important;min-width:100px;font-size:.82rem}.pj-csv-table th small{white-space:normal;overflow-wrap:anywhere}.pj-csv-pages{margin:18px 0}.pj-csv-pages button:disabled{opacity:.45;cursor:default}.pj-csv-help{border:1px solid var(--line);border-radius:10px;padding:8px 20px;margin-top:25px}.pj-csv-help summary{font-size:.92rem;line-height:1.6}.pj-csv-help ol{padding-left:22px;line-height:1.8;font-size:.9rem}.pj-csv-help li{padding:7px 0}.pj-csv-uses{padding-top:18px;margin-top:18px;border-top:1px solid var(--line)}.pj-csv-uses strong{display:block;font-size:.75rem;color:var(--muted);margin-bottom:5px}.pj-csv-uses a{display:block;font-size:.8rem;line-height:1.6;color:var(--accent);padding:7px 0;text-decoration:underline;text-underline-offset:3px}#pjCsvResult{scroll-margin-top:100px}.pj-tool-stack{margin-top:12px}body.light-mode .pj-csv-step h3>span,body.light-mode .pj-csv-upload input::file-selector-button{color:white}
@media(max-width:680px){.pj-csv-files{grid-template-columns:1fr}.pj-csv-step h3{font-size:1.02rem;align-items:flex-start}.pj-csv-upload{padding:16px}.pj-csv-upload input{font-size:.8rem}.pj-csv-files article{padding:16px}.pj-csv-guide>h2{font-size:1.4rem}.pj-csv-help{padding:8px 14px}}
