/* Shared site chrome for the standalone tools. Kept separate from blog and Bootstrap component styles. */
:root{--pt-bg:#111412;--pt-panel:#1b211c;--pt-ink:#f0eee5;--pt-muted:#abb0a3;--pt-green:#c1dda0;--pt-amber:#edb57b;--pt-line:#343c32;--pt-mono:ui-monospace,SFMono-Regular,Consolas,monospace;--pt-sans:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.pt-header{box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:30px;width:100%;max-width:1240px;margin:0 auto;padding:31px 48px 29px;border-bottom:1px solid var(--pt-line);font-family:var(--pt-sans);line-height:1.2}
.pt-header .pt-brand{display:flex;align-items:center;gap:12px;color:var(--pt-ink);font-size:24px;font-weight:750;letter-spacing:-1px;text-decoration:none}.pt-light{font-weight:400}.pt-brand small{display:block;font:9px var(--pt-mono);letter-spacing:2.4px;margin-top:8px;color:var(--pt-muted)}.pt-mark{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:var(--pt-green);border-radius:10px;font:700 30px var(--pt-mono);color:#172016}.pt-header nav{display:flex;gap:27px;font-size:14px}.pt-header nav a{color:#c2c6ba;text-decoration:none}.pt-header nav a:hover,.pt-header nav a[aria-current]{color:var(--pt-green)}.pt-header nav a[aria-current]{text-decoration:underline;text-underline-offset:9px}.pt-header a:focus-visible,.pt-footer a:focus-visible{outline:3px solid var(--pt-amber);outline-offset:5px}.pt-skip{position:fixed;top:-90px;left:12px;z-index:2000;padding:12px;color:#111412;background:var(--pt-green)}.pt-skip:focus{top:12px}.pt-footer{box-sizing:border-box;width:100%;max-width:1240px;margin:56px auto 0;padding:32px 48px;border-top:1px solid var(--pt-line);font:12px/1.8 var(--pt-sans);color:var(--pt-muted)}.pt-footer a,.pt-footer button{color:var(--pt-muted);font:inherit;text-underline-offset:4px}.pt-footer .pt-footer-brand{font:600 20px var(--pt-mono);color:var(--pt-ink);text-decoration:none}.pt-footer p{margin:8px 0 15px}.pt-footer nav{display:flex;flex-wrap:wrap;gap:10px 22px}.pt-footer button{border:0;padding:0;background:none;cursor:pointer}.pt-footer a:hover,.pt-footer button:hover{color:var(--pt-green)}.pt-kicker{font:11px/1.6 var(--pt-mono);letter-spacing:1.7px;color:var(--pt-green);text-transform:uppercase}.pt-intro h1{font-size:clamp(38px,5vw,62px);line-height:1.13;letter-spacing:-1.5px;font-weight:730;margin:16px 0 20px}.pt-intro p:last-child{max-width:680px;color:var(--pt-muted);font-size:18px;line-height:1.75}
@media(max-width:900px){.pt-header,.pt-footer{padding-left:28px;padding-right:28px}.pt-header nav{gap:16px}}
@media(max-width:650px){.pt-header{padding:24px 22px 20px;flex-direction:column;align-items:flex-start;gap:24px}.pt-header nav{width:100%;justify-content:space-between;gap:8px;font-size:13px}.pt-footer{padding:28px 22px}.pt-kicker{font-size:10px;letter-spacing:1.2px}}
@media print{.pt-header,.pt-footer,.pt-skip{display:none!important}}

.pt-header .pt-brand-logo{display:block;flex:0 0 auto;width:96px;height:96px;object-fit:contain;border-radius:8px}.pt-header{padding-top:14px;padding-bottom:14px}.pt-header .pt-brand{gap:15px}@media(max-width:650px){.pt-header .pt-brand-logo{width:80px;height:80px}.pt-header{padding-top:12px;padding-bottom:20px;gap:18px}}
