/* Scoped extension of GlobalFund's warm editorial / practical workspace system. */
.ref-program{margin-top:2rem;border-top:1px solid var(--line);padding-top:2rem;text-align:left}
.ref-program h2,.ref-program h3,.ref-admin h3{font-family:Fraunces,serif;letter-spacing:-.025em}
.ref-intro{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(220px,.6fr);gap:2rem;align-items:start}
.ref-intro h2{font-size:2rem;line-height:1.15;margin:.45rem 0 .75rem}
.ref-intro p{color:var(--muted);max-width:660px}
.ref-rules{background:var(--accent);border:1px solid var(--line);border-radius:14px;padding:1.2rem}
.ref-rules strong{display:block;font-family:Fraunces,serif;font-size:1.45rem;color:var(--primary)}
.ref-rules p{font-size:.86rem;margin:.5rem 0}
.ref-rules hr{border:0;border-top:1px solid var(--line);margin:.9rem 0}
.ref-notice{border-left:4px solid var(--gold);background:var(--accent);padding:.9rem 1.1rem;border-radius:0 10px 10px 0;margin:1rem 0;color:var(--ink)}
.ref-landing{margin:1rem 8vw 0}
.ref-landing p{margin:.25rem 0 .6rem}
.ref-workspace{margin-top:1.5rem}
.ref-workspace-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:1rem}
.ref-panel{border:1px solid var(--line);border-radius:14px;padding:1.25rem;background:var(--bg);min-width:0}
.ref-panel h3{margin:0 0 .6rem;font-size:1.25rem}
.ref-panel p{color:var(--muted);font-size:.88rem}
.ref-summary{display:flex;flex-wrap:wrap;gap:1rem 2rem;padding:1.2rem 0;border-bottom:1px solid var(--line);margin-bottom:1.3rem}
.ref-summary>div{min-width:0;max-width:100%}
.ref-currency{width:min(100%,300px)}
.ref-summary strong{display:block;font-family:Fraunces,serif;font-size:1.8rem;color:var(--primary)}
.ref-summary span{font-size:.8rem;color:var(--muted)}
.ref-balance strong{font-size:2.7rem}
.ref-form{display:grid;gap:.75rem}
.ref-form label{display:grid;gap:.3rem;font-size:.86rem;font-weight:700}
.ref-form input,.ref-form select,.ref-form textarea,.ref-link-row input{width:100%;min-width:0;padding:.7rem .8rem;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--ink)}
.ref-program .ref-form select{margin:0}
.ref-form .ref-check{display:flex;align-items:start;gap:.6rem}
.ref-check input{width:auto;margin-top:.3rem}
.ref-link-row{display:flex;gap:.5rem}
.ref-link-row input{flex:1}
.ref-share{display:flex;flex-wrap:wrap;gap:.45rem;margin:1rem 0}
.ref-share .button{font-size:.78rem;padding:.5rem .7rem}
.ref-invitation{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--surface);border:1px dashed var(--line);border-radius:9px;padding:.85rem;font-size:.88rem}
.ref-help{font-size:.8rem!important;color:var(--muted);margin:.6rem 0}
.ref-status{min-height:1.5em;font-size:.88rem;font-weight:650;white-space:pre-wrap;overflow-wrap:anywhere}
.ref-status.error{color:var(--danger)}
.ref-status.success{color:var(--primary)}
.ref-history{margin-top:1.3rem}
.ref-history summary{cursor:pointer;font-weight:700;padding:.8rem 0}
.ref-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:10px;margin:.5rem 0 1rem}
.ref-table{width:100%;border-collapse:collapse;font-size:.83rem;text-align:left}
.ref-table th{background:var(--accent);font-size:.73rem;letter-spacing:.04em}
.ref-table th,.ref-table td{padding:.7rem .85rem;border-bottom:1px solid var(--line);white-space:nowrap}
.ref-table tr:last-child td{border-bottom:0}
.ref-empty{border:1px dashed var(--line);border-radius:10px;padding:1rem;background:var(--surface);font-size:.86rem;color:var(--muted)}
.ref-loading{height:70px;border-radius:10px;background:var(--accent);animation:ref-pulse 1.4s ease-in-out infinite}
.ref-program button:disabled,.ref-admin button:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}
.ref-admin{margin-top:1rem}
.ref-admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1rem 0}
.ref-review{display:grid;gap:.7rem;margin:.8rem 0;padding:1rem;border:1px solid var(--line);border-radius:12px;background:var(--bg)}
.ref-review p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
.ref-review-actions{display:flex;flex-wrap:wrap;gap:.6rem}
.ref-footer-links{grid-column:1/-1;display:flex;justify-content:center;gap:1.5rem;flex-wrap:wrap;font-size:.85rem}
.ref-footer-links a{color:#f4cf7d;text-decoration:underline;text-underline-offset:3px}
@keyframes ref-pulse{50%{opacity:.45}}
@media(max-width:767px){.ref-intro,.ref-workspace-grid,.ref-admin-grid{grid-template-columns:1fr}.ref-intro{gap:1rem}.ref-link-row{flex-direction:column}.ref-summary{gap:1rem}.ref-landing{margin:1rem 5vw 0}.ref-panel{padding:1rem}.ref-footer-links{justify-content:start}}
@media(prefers-reduced-motion:reduce){.ref-loading{animation:none}}
