/* Public credits page (/pricing/tokens), Flicko identity (brand sweep 20/10/2026).
   Colours, type, radii and glass come from src/flicko-tokens.css (loaded just before this file); nothing here hard-codes
   a brand colour. Sober mode: no mascot, no scenery beyond the brand fruits of the page background. */
.pt-body{margin:0;min-height:100vh;background:var(--fk-scene);background-attachment:fixed;color:var(--fk-text);font-family:var(--fk-font-text)}
.pt-header{position:relative;z-index:20}
.pt-main{padding-bottom:96px}
.pt-wrap{max-width:1180px;margin:0 auto;padding-inline:24px;box-sizing:content-box}
.pt-back{display:inline-flex;align-items:center;gap:6px;margin-top:32px;font-size:.9375rem;color:var(--fk-text-muted);text-decoration:none}
.pt-back:hover{color:var(--fk-text)}
.pt-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:center;gap:56px;padding-top:24px}
.pt-eyebrow{margin:0;font-size:.75rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--fk-text-brand)}
.pt-hero h1{margin:14px 0 0;font-family:var(--fk-font-display);font-weight:800;font-size:clamp(2.25rem,1.5rem + 2.6vw,3.75rem);line-height:1.02;letter-spacing:-.035em}
.pt-lead{max-width:580px;margin:20px 0 0;font-size:1.0625rem;line-height:1.65;color:var(--fk-text-soft)}
.pt-note{display:flex;gap:10px;max-width:580px;margin:14px 0 0;font-size:.9375rem;line-height:1.6;color:var(--fk-text-soft)}
.pt-note svg{flex-shrink:0;margin-top:2px;color:var(--fk-text-brand)}
.pt-actions{display:flex;flex-wrap:wrap;align-items:center;gap:24px;margin-top:32px}
.pt-primary{display:inline-flex;align-items:center;gap:8px;min-height:48px;padding:0 22px;border-radius:var(--fk-radius-sm);background:var(--fk-primary);color:var(--fk-on-primary);font-weight:700;font-size:.9375rem;text-decoration:none;box-shadow:var(--fk-elev-2);transition:transform var(--fk-dur-tap) var(--fk-ease-settle)}
.pt-primary:hover{transform:translateY(-1px)}
.pt-link{font-weight:700;color:var(--fk-text);text-underline-offset:4px}
.pt-primary:focus-visible,.pt-link:focus-visible,.pt-back:focus-visible{outline:2px solid var(--fk-focus);outline-offset:3px}
.pt-figure,.pt-group,.pt-card,.pt-cards li{background:var(--fk-glass-fill);border:1px solid var(--fk-glass-border);box-shadow:var(--fk-glass-highlight),var(--fk-glass-shadow);-webkit-backdrop-filter:var(--fk-glass-blur);backdrop-filter:var(--fk-glass-blur)}
.pt-figure{margin:0;padding:28px;border-radius:var(--fk-radius-xl)}
.pt-figure-title{margin:0 0 16px;font-family:var(--fk-font-display);font-size:1.125rem;font-weight:700}
.pt-plans{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.pt-plan{padding:18px;border-radius:var(--fk-radius-md);background:var(--fk-surface);border:1px solid var(--fk-border)}
.pt-plan-name{margin:0;font-size:.8125rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--fk-text-muted)}
.pt-plan-n{display:flex;align-items:center;gap:8px;margin:10px 0 0;font-family:var(--fk-font-display);font-size:2.25rem;font-weight:800;line-height:1;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.pt-plan-l{margin:6px 0 0;font-size:.875rem;color:var(--fk-text-soft)}
.pt-plan-s{margin:10px 0 0;font-size:.8125rem;color:var(--fk-text-muted)}
.pt-figure-note{margin:14px 0 0;font-size:.875rem;color:var(--fk-text-muted)}
.pt-costs,.pt-balance-rules,.pt-why{padding-top:96px}
.pt-costs>h2,.pt-balance-rules>h2,.pt-why>h2{margin:0;font-family:var(--fk-font-display);font-weight:800;font-size:clamp(1.75rem,1.3rem + 1.4vw,2.5rem);letter-spacing:-.025em;line-height:1.1}
.pt-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:28px}
.pt-group,.pt-card{padding:24px;border-radius:var(--fk-radius-lg)}
.pt-group h3,.pt-card h3{margin:0 0 6px;font-family:var(--fk-font-display);font-size:1.125rem;font-weight:700}
.pt-group dl,.pt-packs{margin:0}
.pt-group-note{margin:8px 0 0;font-size:.8125rem;color:var(--fk-text-muted)}
.pt-row,.pt-pack{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:10px 0;border-bottom:1px dashed var(--fk-line)}
.pt-row:last-child,.pt-pack:last-child{border-bottom:0}
.pt-row dt{font-size:.9375rem;color:var(--fk-text-soft)}
.pt-row dd,.pt-pack dd{margin:0;flex-shrink:0}
.pt-value{display:inline-flex;align-items:center;gap:6px;font-weight:700;font-variant-numeric:tabular-nums}
.pt-credit{flex-shrink:0;border-radius:28%}
.pt-badge{display:inline-block;padding:2px 8px;border-radius:var(--fk-radius-xs);font-size:.75rem;font-weight:700;background:color-mix(in srgb,var(--fk-caju) 28%,transparent);color:var(--fk-text)}
.pt-row[data-cost-row="browse_suggestions"] .pt-badge,.pt-row[data-cost-row="setup"] .pt-badge{background:color-mix(in srgb,var(--fk-success) 18%,transparent)}
.pt-foot{margin:16px 0 0;font-size:.8125rem;color:var(--fk-text-muted)}
.pt-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:28px}
.pt-card-lead{margin:0 0 8px;font-size:.9375rem;line-height:1.6;color:var(--fk-text-soft)}
.pt-pack dt{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-variant-numeric:tabular-nums}
.pt-pack dd{font-weight:600;color:var(--fk-text-soft);font-variant-numeric:tabular-nums}
.pt-list{display:grid;gap:10px;margin:14px 0 0;padding:0;list-style:none}
.pt-list li{display:flex;gap:10px;font-size:.9375rem;line-height:1.55;color:var(--fk-text-soft)}
.pt-check{flex-shrink:0;margin-top:3px;color:var(--fk-success)}
.pt-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:28px 0 0;padding:0;list-style:none}
.pt-cards li{padding:24px;border-radius:var(--fk-radius-lg)}
.pt-cards svg{display:block;color:var(--fk-text-brand)}
.pt-cards h3{margin:14px 0 0;font-family:var(--fk-font-display);font-weight:700;font-size:1.125rem;line-height:1.25}
.pt-cards p{margin:8px 0 0;font-size:.875rem;line-height:1.65;color:var(--fk-text-soft)}
@media(max-width:1023px){.pt-hero{grid-template-columns:1fr}.pt-figure{max-width:520px}.pt-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.pt-grid,.pt-two,.pt-cards{grid-template-columns:1fr}.pt-costs,.pt-balance-rules,.pt-why{padding-top:64px}.pt-wrap{padding-inline:16px}.pt-row{align-items:flex-start}}
@media(max-width:380px){.pt-plans{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.pt-primary{transition:none}}
/* D13 (layout audit 20/10/2026): the footer is copied from the home (1100 px container); here it follows this page grid (.pt-wrap). */
main:has(.pt-wrap) ~ footer .mx-auto.max-w-\[1100px\]{max-width:1180px;box-sizing:content-box;padding-inline:24px}
