/* taaha.ai — public profile page (compact, about half the height of the first version) */
.pf-wrap{ max-width:520px; margin:0 auto; padding:10px 10px calc(24px + var(--sab)); display:grid; gap:8px; }
.pf-card{ background:var(--surface); border:1px solid var(--line); border-radius:14px; padding:12px; box-shadow:var(--shadow); }
.pf-loading{ color:var(--muted); padding:8px 0; font-size:.9rem; }
.pf-head{ display:flex; align-items:center; gap:10px; }
.pf-avatar{ width:44px; height:44px; border-radius:50%; background:var(--accent-soft) center/cover no-repeat; color:var(--accent);
  font:700 .95rem var(--font-display); display:inline-flex; align-items:center; justify-content:center; flex:none; }
.pf-avatar.is-tappable{ cursor:zoom-in; }
/* the full-size photo (a Play review asked for it, 23 Sep 2026): same look as the app's post lightbox */
.lightbox{ position:fixed; inset:0; z-index:70; background:rgba(0,0,0,.92); display:flex; align-items:center; justify-content:center; padding:16px; cursor:zoom-out; touch-action:none; overscroll-behavior:contain; }
.lightbox img{ max-width:100%; max-height:100%; border-radius:8px; }
.lightbox-x{ position:absolute; top:calc(12px + var(--sat)); right:14px; width:44px; height:44px; border-radius:50%; border:1px solid rgba(255,255,255,.35); background:rgba(0,0,0,.55); color:#fff; font-size:1.7rem; line-height:1; display:grid; place-items:center; cursor:pointer; font-family:inherit; padding:0 0 3px; }
.pf-id{ min-width:0; }
.pf-name{ font-size:1.1rem; line-height:1.15; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.pf-handle{ color:var(--accent); font-weight:600; font-size:.8rem; margin-top:1px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.pf-role{ color:var(--muted); font-weight:500; }
/* the stars from reviews (11 Oct 2026): one gold line under the handle, a link to all the reviews when signed in */
.pf-rate{ display:block; width:max-content; max-width:100%; font-size:.74rem; font-weight:600; color:var(--accent); margin-top:1px; text-decoration:none; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
/* Taaha Verified (15 Oct 2026): a gold seal line under the handle, then the facts */
.pf-verified{ display:block; margin-top:3px; font-size:.74rem; color:var(--ok); line-height:1.4; }   /* GREEN (owner, 15 Oct 2026); flows as text: the facts may take a second line on a narrow phone, the words never split */
.pf-verified i{ display:inline-grid; place-items:center; width:16px; height:16px; margin-right:5px; vertical-align:-4px; border-radius:50%; background:var(--ok); color:#fff; font-style:normal; font-size:.62rem; font-weight:700; }
.pf-verified b{ font-weight:700; white-space:nowrap; }
.pf-verified span{ font-weight:500; color:var(--muted); }
.pf-meta{ color:var(--muted); font-size:.78rem; line-height:1.4; margin-top:6px; }
.pf-skills{ display:flex; flex-wrap:wrap; gap:4px; margin-top:6px; }
.pf-skill{ font-size:.68rem; font-weight:600; padding:3px 8px; border-radius:999px; background:var(--accent-soft); color:var(--accent); }
.pf-bio{ color:var(--fg); font-size:.82rem; line-height:1.4; margin-top:6px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.pf-actions{ display:flex; gap:6px; margin-top:8px; }
.pf-actions .btn{ flex:1 1 0; height:34px; padding:0 8px; font-size:.82rem; border-radius:9px; }
.pf-cal-head{ display:flex; align-items:baseline; justify-content:space-between; gap:8px; flex-wrap:wrap; margin-bottom:4px; }
.pf-cal-head h2{ font-size:.95rem; }
.pf-cal-head span{ color:var(--muted); font-size:.72rem; }
.pf-cal .pc-bar{ margin:2px 0 4px; }
.pf-cal .pc-bar b{ font-size:1rem; }
.pf-cal .pc-nav{ width:30px; height:30px; }
.pf-cal .pc-cell{ min-height:42px; font-size:.8rem; border-radius:9px; padding:4px 12px 4px 4px; }
.pf-cal .pc-cell b{ width:20px; height:20px; }
.pf-cal .pc-grid{ gap:3px; }
.pf-cal .pc-dow{ font-size:.68rem; }
.pf-cal .pc-legend{ font-size:.68rem; margin-top:6px; }
.pf-cal .pc-day{ font-size:.78rem; margin-top:4px; }
.pf-foot{ text-align:center; color:var(--muted); font-size:.74rem; margin-top:2px; }
.pf-foot a{ color:var(--accent); font-weight:600; }
.pf-join{ display:grid; gap:10px; margin-top:4px; }   /* the line, then ONE gold button, full width */
.pf-join .pf-foot{ margin:0; }
/* Back + header on the person's page (27 Sep 2026, a Play review: no way back from someone's page inside the app). The header keeps
   Sign in / Open Taaha on phones too (site.css hides .nav-cta under 420 px for the landing's menu, which this page doesn't have). */
.pf-body .nav-in{ height:56px; gap:10px; }
.pf-body .nav-cta{ margin-left:auto; }
.pf-back{ display:inline-flex; align-items:center; gap:2px; height:36px; padding:0 13px 0 7px; border:1px solid var(--line); border-radius:999px;
  background:var(--surface); color:var(--fg); font:600 .88rem var(--font-body); text-decoration:none; flex:none; cursor:pointer; }
.pf-back svg{ width:19px; height:19px; flex:none; }
.pf-back:active{ border-color:var(--accent); }
@media (max-width:420px){ .pf-body .nav-cta{ display:inline-flex; height:36px; padding:0 13px; font-size:.86rem; border-radius:10px; } }
@media (max-width:359px){ .pf-body .brand{ font-size:0; } .pf-body .brand .brand-mark{ margin-right:0; } }   /* the smallest phones: the mark alone */
/* Calendar · Posts · Reviews under the card (13 Oct 2026): the same segmented row as Me, compact like the rest of this page */
.pf-more{ display:grid; gap:8px; }
.pf-tabs{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); background:var(--surface-2); border-radius:12px; padding:3px; }   /* four since the Team tab (8 Nov 2026) */
.pf-tab{ border:0; background:transparent; padding:8px 3px; border-radius:10px; font:inherit; font-size:.84rem; font-weight:600; color:var(--muted); cursor:pointer;
  display:inline-flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:2px 5px; white-space:nowrap; }   /* a count may drop under its label where four tabs are narrow */
.pf-tab.is-on{ background:var(--surface); color:var(--fg); box-shadow:0 1px 3px rgba(0,0,0,.16), 0 0 0 1px var(--line-2); }
.pf-tab-n{ font-size:.7rem; font-weight:600; color:var(--accent); background:var(--accent-soft); border-radius:999px; padding:1px 6px; }
.pf-panel{ display:grid; gap:8px; }
.pf-note{ color:var(--muted); font-size:.82rem; line-height:1.45; }
/* the Team tab (8 Nov 2026): one row per member, the public page's own small shape (app.css .me-person is not loaded here) */
.pf-team{ display:grid; }
.pf-person{ display:flex; align-items:center; gap:10px; min-height:56px; padding:8px 0; color:inherit; text-decoration:none; }
.pf-person + .pf-person{ border-top:1px solid var(--line); }
.pf-pavatar{ width:40px; height:40px; flex:none; border-radius:50%; background:var(--accent-soft) center/cover no-repeat; color:var(--accent); box-shadow:0 0 0 1px var(--line);
  font:700 .85rem var(--font-display); display:inline-flex; align-items:center; justify-content:center; }
.pf-person-main{ display:grid; min-width:0; }
.pf-person-main b{ font-weight:600; font-size:.95rem; line-height:1.3; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.pf-person-main small{ color:var(--muted); font-size:.78rem; line-height:1.3; }
.pf-one{ justify-self:start; height:36px; padding:0 14px; font-size:.84rem; border-radius:9px; }
