/* Phone-first exploration flow: name -> profile -> relationship -> receipt */
.directory-toolbar{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(190px,.7fr);gap:.7rem;margin:1.25rem 0 1rem}
.directory-toolbar input,.directory-toolbar select{width:100%;min-height:48px;padding:.75rem .8rem;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink-deep);font:inherit}
.directory-grid{margin-top:1rem}
.directory-card{width:100%;text-align:left;font:inherit;appearance:none;-webkit-appearance:none}
.directory-card h3{color:var(--ink-deep)}
.profile-panel{scroll-margin-top:92px;margin:1rem 0 1.5rem;padding:clamp(1rem,3vw,1.6rem);border:1px solid var(--line);border-top:5px solid var(--accent);border-radius:18px;background:var(--paper-card);box-shadow:var(--shadow)}
.profile-panel[hidden]{display:none}
.profile-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}
.profile-panel-head h2{margin:.15rem 0 .75rem;max-width:18ch;font-size:clamp(2rem,5vw,3.2rem)}
.profile-close{flex:0 0 auto;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--ink-deep);font-size:1.6rem;line-height:1;cursor:pointer}
.profile-summary{font-size:1.08rem;color:var(--ink-soft);max-width:76ch}
.profile-why{margin:1rem 0;padding:1rem 1.05rem;border-left:4px solid var(--accent);border-radius:0 12px 12px 0;background:var(--paper-warm)}
.profile-why p{margin:.3rem 0 0;color:var(--ink-soft)}
.profile-actions{display:flex;flex-wrap:wrap;gap:.65rem;margin:1rem 0 1.4rem}
.profile-relations-head{display:flex;align-items:end;justify-content:space-between;gap:1rem;padding-top:.4rem;border-top:1px solid var(--line)}
.profile-relations-head h3{margin:1rem 0 .2rem}.profile-relations-head span{color:var(--ink-soft);font-size:.85rem;font-weight:800}
.profile-relations{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin-top:.8rem}
.profile-relation{min-width:0;padding:.9rem;border:1px solid var(--line);border-radius:14px;background:#fff}
.profile-relation p{margin:.55rem 0;color:var(--ink-soft);font-size:.9rem;overflow-wrap:anywhere}
.profile-related-name{display:flex;align-items:flex-start;justify-content:space-between;gap:.7rem;width:100%;padding:0;border:0;background:transparent;color:var(--ink-deep);text-align:left;font:inherit;cursor:pointer}
.profile-related-name strong{font-size:1.02rem}.profile-related-name span{flex:0 0 auto;color:var(--blue);font-size:.75rem;font-weight:850}
.receipt-button{width:100%;min-height:44px;padding:.55rem .7rem;border:1px solid var(--accent);border-radius:10px;background:var(--accent-soft);color:var(--accent-dark);font:inherit;font-weight:850;cursor:pointer}
.receipt-button:hover,.receipt-button:focus-visible{background:var(--accent);color:#fff}
.timeline-links{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.7rem}
.timeline-links button,.trace-name,.inline-link-button{border:0;background:transparent;color:var(--blue);padding:0;font:inherit;font-weight:850;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.timeline-links button{padding:.35rem .55rem;border:1px solid var(--line);border-radius:999px;background:var(--paper-card);text-decoration:none}
.inline-link-button{display:inline}
#receipt-dialog{max-height:88dvh;overflow:auto}
@media(max-width:760px){.directory-toolbar,.profile-relations{grid-template-columns:1fr}.profile-actions{display:grid;grid-template-columns:1fr}.profile-actions .launch-button{width:100%}.profile-relations-head{align-items:flex-start;flex-direction:column;gap:.1rem}.profile-related-name{display:grid;grid-template-columns:1fr}.profile-related-name span{font-size:.78rem}}
@media(max-width:620px){#directory{padding-top:2.8rem}.directory-grid{gap:.7rem}.directory-card{padding:1rem;min-height:0}.directory-card p{font-size:.92rem;line-height:1.45}.directory-card .directory-cta{display:block;margin-top:.65rem}.profile-panel{margin-inline:-.05rem;padding:1rem;border-radius:14px}.profile-panel-head h2{font-size:2rem;max-width:100%}.profile-summary{font-size:1rem}.profile-relation{padding:.85rem}.receipt-button{min-height:48px}#receipt-dialog{width:calc(100% - .8rem)!important;max-height:92dvh;border-radius:14px!important;padding:1rem}}
