:root{--bg:#f4efe2;--panel:rgba(255,251,243,0.88);--panel-strong:#fffaf0;--ink:#1f2b1e;--muted:#5d6757;--line:rgba(31,43,30,0.1);--brand:#2d6a4f;--brand-2:#b85c38;--accent:#dfc27d;--shadow:0 18px 55px rgba(47,56,42,0.12);--radius:24px;font-family:Segoe UI,Aptos,system-ui,sans-serif}*{box-sizing:border-box}html{min-height:100%;background:radial-gradient(circle at top left,rgba(223,194,125,.35),transparent 28%),radial-gradient(circle at top right,rgba(45,106,79,.2),transparent 32%),linear-gradient(180deg,#faf4e7,#f1ead9)}body{margin:0;color:var(--ink);min-height:100vh}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.page-shell{max-width:1240px;margin:0 auto;padding:32px 20px 48px}.hero{padding:32px;border-radius:32px;background:linear-gradient(135deg,rgba(45,106,79,.94),rgba(88,129,87,.82)),linear-gradient(180deg,rgba(255,255,255,.12),transparent);color:#fefcf5;box-shadow:var(--shadow);position:relative;overflow:hidden}.hero:after{content:"";position:absolute;inset:auto -8% -30% auto;width:260px;height:260px;border-radius:50%;background:rgba(223,194,125,.2);filter:blur(8px)}.hero h1,.hero h2{margin:0;font-size:clamp(2rem,4vw,3.4rem);line-height:.95;letter-spacing:-.04em}.hero p{margin:14px 0 0;line-height:1.55;color:rgba(255,252,245,.9)}.hero-copy{width:100%;max-width:none}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}.hero-link{display:inline-flex;align-items:center;justify-content:center;min-width:150px;background:rgba(255,250,240,.92);color:var(--brand)}.hero-meta{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}.pill{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.16);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:.95rem}.layout-grid{display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);grid-gap:20px;gap:20px;margin-top:24px}.query-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:20px;gap:20px}.home-top-grid{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(0,1.1fr);grid-gap:20px;gap:20px;align-items:start}.query-panel{display:flex;flex-direction:column}.query-tabs-panel{min-height:100%}.tab-header{display:inline-flex;gap:10px;padding:6px;margin-bottom:20px;border-radius:999px;background:rgba(45,106,79,.08);border:1px solid rgba(31,43,30,.08);width:-moz-fit-content;width:fit-content}.tab-btn{border:0;border-radius:999px;padding:10px 18px;background:transparent;color:var(--muted);cursor:pointer;transition:background .18s ease,color .18s ease,transform .18s ease}.tab-btn:hover{transform:translateY(-1px)}.tab-btn.active{background:var(--brand);color:#fefcf5}.query-panel-body{flex:1 1}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.panel-pad{padding:22px}.section-title{margin:0 0 8px;font-size:1.15rem;letter-spacing:-.02em}.section-copy{margin:0 0 18px;color:var(--muted);line-height:1.5}.stack{grid-gap:14px}.filter-grid,.stack{display:grid;gap:14px}.filter-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px}.field{display:grid;grid-gap:8px;gap:8px}.field label{font-weight:600;font-size:.95rem}.field input,.field select,.field textarea{width:100%;border:1px solid rgba(31,43,30,.14);border-radius:16px;padding:12px 14px;background:rgba(255,253,248,.92);color:var(--ink)}.field textarea{min-height:120px;resize:vertical}.chat-query{min-height:212px}.actions{display:flex;flex-wrap:wrap;gap:12px}.query-surface-toggle{display:flex;justify-content:flex-end;margin:0 0 18px}.surface-checkbox{display:inline-flex;align-items:center;gap:10px;padding:10px 14px;border-radius:999px;border:1px solid rgba(31,43,30,.12);background:rgba(255,253,248,.9);font-weight:600}.surface-checkbox input{margin:0}.query-actions{margin-top:auto;align-items:center}.btn{border:0;border-radius:999px;padding:12px 18px;background:var(--brand);color:#fefcf5;cursor:pointer;transition:transform .18s ease,opacity .18s ease}.btn:hover{transform:translateY(-1px)}.btn.secondary{background:#e7dbc0;color:var(--ink)}.btn.ghost{background:rgba(255,255,255,.45);color:var(--ink);border:1px solid rgba(31,43,30,.1)}.btn:disabled{cursor:wait;opacity:.72;transform:none}.admin-grid,.chat-log,.results-list,.stats-grid{display:grid;grid-gap:14px;gap:14px}.results-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:18px;flex-wrap:wrap}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.stat{padding:18px;border-radius:20px;background:rgba(255,250,240,.82);border:1px solid rgba(31,43,30,.08)}.stat-centered{text-align:center;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px}.stat strong{display:block;font-size:1.65rem;margin-top:8px}.stat-centered strong{margin-top:2px}.stat-impact{background:linear-gradient(135deg,rgba(232,245,234,.96),rgba(219,239,223,.92)),rgba(255,253,248,.9);border-color:rgba(45,106,79,.18);box-shadow:inset 0 1px 0 rgba(255,255,255,.55)}.card{padding:18px;border-radius:22px;background:rgba(255,253,248,.9);border:1px solid rgba(31,43,30,.08)}.card h3{margin:0 0 6px;font-size:1.12rem}.result-title-link{color:var(--brand)}.result-title-link:hover{color:#1f5a40}.card p{margin:0;color:var(--muted);line-height:1.5}.results-panel{width:100%}.results-list-two-col{grid-template-columns:repeat(2,minmax(0,1fr))}.result-card{position:relative;overflow:hidden;padding-top:62px}.result-card-top{display:block}.match-score-high{background:linear-gradient(135deg,rgba(236,251,241,.96),rgba(221,247,230,.92)),rgba(255,253,248,.9);border-color:rgba(45,106,79,.18)}.match-score-medium{background:linear-gradient(135deg,rgba(255,248,219,.96),rgba(251,240,191,.92)),rgba(255,253,248,.9);border-color:rgba(184,144,48,.18)}.match-score-pill{display:inline-flex;align-items:center;justify-content:center;position:absolute;top:18px;right:18px;white-space:nowrap;min-width:132px;max-width:calc(100% - 36px);padding:10px 14px;border-radius:999px;font-size:.92rem;font-weight:700;line-height:1.25;text-align:center;overflow:hidden;text-overflow:ellipsis}.match-score-pill.match-score-high{color:#1f5a40;background:rgba(45,106,79,.12);border:1px solid rgba(45,106,79,.18)}.match-score-pill.match-score-medium{color:#7a5a11;background:rgba(223,194,125,.24);border:1px solid rgba(184,144,48,.22)}.result-link{color:var(--brand-2);font-weight:700}.result-link:hover{color:#8f3f21}.meta-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.tag{padding:7px 10px;border-radius:999px;background:rgba(223,194,125,.22);color:#6f4924;font-size:.9rem}.chat-bubble{padding:18px;border-radius:22px;line-height:1.65}.chat-bubble.user{background:rgba(184,92,56,.13);border:1px solid rgba(184,92,56,.14)}.chat-bubble.assistant{background:rgba(45,106,79,.11);border:1px solid rgba(45,106,79,.12)}.split{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:center}.notice{padding:14px 16px;border-radius:18px;border:1px solid rgba(45,106,79,.12);background:rgba(45,106,79,.08);line-height:1.5}.notice.warn{border-color:rgba(184,92,56,.16);background:rgba(184,92,56,.08)}.mono{font-family:Consolas,Courier New,monospace}.map-panel{min-height:780px}.map-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(240px,.8fr);grid-gap:16px;gap:16px;align-items:start}.map-layout-full{grid-template-columns:minmax(0,1fr)}.map-toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.map-canvas-shell,.mappls-shell{position:relative;overflow:hidden;min-height:680px;border-radius:24px;border:1px solid rgba(31,43,30,.08);background:rgba(255,253,248,.88)}.mappls-canvas{width:100%;height:680px;display:inline-block}.map-popup-panel{position:absolute;top:18px;right:18px;z-index:5;width:min(380px,calc(100% - 36px));max-height:calc(100% - 36px);display:grid;grid-gap:12px;gap:12px;padding:16px;border-radius:20px;border:1px solid rgba(31,43,30,.12);background:rgba(255,252,245,.96);box-shadow:0 18px 48px rgba(20,30,18,.16);overflow:hidden}.mappls-provider-marker{width:18px;height:18px;border:3px solid #fefcf5;border-radius:999px;background:var(--brand);box-shadow:0 0 0 8px rgba(45,106,79,.14);cursor:pointer}.map-scroll{overflow:auto;max-height:680px;cursor:-webkit-grab;cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.map-scroll-panning{cursor:-webkit-grabbing;cursor:grabbing}.map-stage{position:relative}.india-map-image,.india-map-overlay{display:block}.india-map-image{position:relative;z-index:1}.india-map-overlay{position:absolute;inset:0;z-index:2}.provider-dot{transition:transform .18s ease,opacity .18s ease}.provider-dot-hit{cursor:pointer}.provider-dot-count{font-size:12px;font-weight:700;fill:var(--brand)}.map-popup-content{max-height:100%;overflow-y:auto;padding-right:4px}.map-popup-header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.map-popup-close{border:0;border-radius:999px;background:rgba(45,106,79,.12);color:var(--ink);padding:8px 12px;font:inherit;cursor:pointer}.map-popup-offerings{margin-top:14px;display:grid;grid-gap:10px;gap:10px;max-height:min(360px,50vh);overflow-y:auto;padding-right:4px}.provider-offering{display:grid;grid-gap:4px;gap:4px;padding:12px 14px;border-radius:16px;background:rgba(45,106,79,.08)}.provider-offering span{color:var(--muted);line-height:1.5}.provider-offering-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:4px}.provider-application-heading{margin:0;color:var(--ink);font-size:1rem}.provider-tags-heading{color:var(--ink);font-size:.92rem}.map-admin-link-wrap{display:flex;justify-content:flex-end}.subtle-admin-link{color:var(--muted);font-size:.92rem;text-decoration:none}.subtle-admin-link:hover{color:var(--ink)}.page-bottom-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:24px;padding-bottom:8px}.detail-hero-top{justify-content:space-between;margin-bottom:20px}.detail-hero-actions-left,.detail-hero-top{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-start}.detail-hero-back{margin-left:auto}.detail-hero-main{display:flex;align-items:stretch;justify-content:space-between;gap:20px}.detail-hero-copy{min-width:0;flex:1 1 auto;display:flex;flex-direction:column;justify-content:center;min-height:260px;padding:22px 24px;border:1px solid rgba(31,43,30,.08);border-radius:18px;background:rgba(255,255,255,.76)}.detail-hero-copy h1{color:#182717}.detail-hero-copy .hero-copy{color:#2d3b2c;line-height:1.7}.detail-hero-image-wrap{flex:0 0 300px;width:300px;min-height:260px;height:auto;padding:18px;border-radius:18px;overflow:hidden;border:1px solid rgba(31,43,30,.08);background:rgba(255,255,255,.76);display:flex;align-items:center;justify-content:center}.detail-hero-image{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:center;display:block}.detail-stack{display:grid;grid-gap:20px;gap:20px}.provider-email-action{display:grid;grid-gap:10px;gap:10px}.provider-email-panel{width:min(420px,calc(100vw - 48px));border:1px solid rgba(40,84,60,.18);background:linear-gradient(180deg,rgba(255,251,242,.98),rgba(243,248,239,.96));box-shadow:0 18px 40px rgba(27,56,40,.14)}.provider-email-panel .section-title{color:#173121}.provider-email-panel .field label,.provider-email-panel .section-copy{color:#2a3d31}.provider-email-status{border:0;border-radius:16px;padding:12px 14px;text-align:left;line-height:1.5;cursor:pointer}.provider-email-status-success{background:#dff4e5;color:#174f2c;border:1px solid #9ed1ac}.provider-email-status-error{background:#fff0ea;color:#8f3c1f;border:1px solid #e3b19b}.detail-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);grid-gap:20px;gap:20px}.detail-panel-copy{color:var(--ink)}.detail-table{width:100%;border-collapse:collapse}.detail-table td,.detail-table th{padding:12px 10px;border-bottom:1px solid rgba(31,43,30,.08);text-align:left;vertical-align:top}.detail-table th{width:34%;color:var(--ink);font-weight:700}.detail-table td{color:var(--muted);line-height:1.6}.offering-chat-log{display:grid;grid-gap:14px;gap:14px;max-height:420px;overflow:auto}.offering-chat-input{min-height:140px}@media (max-width:900px){.detail-grid,.filter-grid,.home-top-grid,.layout-grid,.map-layout,.query-grid,.results-list-two-col{grid-template-columns:1fr}.result-card-top{display:block}.detail-hero-main{flex-direction:column}.detail-hero-copy{min-height:0;padding:20px}.detail-hero-top{flex-direction:column-reverse;align-items:stretch}.detail-hero-actions-left{width:100%}.detail-hero-back{margin-left:0;align-self:flex-end}.detail-hero-image-wrap{width:100%;max-width:none;min-height:240px;height:240px}.page-shell{padding:18px 14px 36px}.hero{padding:24px}}