/* TP V4 — minimal modern reset */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
    margin: 0;
    background: var(--tp4-bg);
    color: var(--tp4-text);
    font-family: var(--tp4-font-sans);
    font-size: var(--tp4-fs-base);
    line-height: var(--tp4-lh-base);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}
h1, h2, h3, h4, h5, h6 {
    margin: 0;
    font-family: var(--tp4-font-display);
    font-weight: var(--tp4-fw-bold);
    line-height: var(--tp4-lh-tight);
    letter-spacing: var(--tp4-tracking-tight);
    color: var(--tp4-c-gray-900);
}
p { margin: 0 0 var(--tp4-s-4); }
img, svg { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; transition: color var(--tp4-dur) var(--tp4-ease); }
a:hover { color: var(--tp4-c-brand); }
ul, ol { margin: 0; padding: 0; list-style: none; }
button, input, select, textarea { font: inherit; color: inherit; }
button { background: none; border: 0; padding: 0; cursor: pointer; }
input, select, textarea { background: var(--tp4-c-white); border: 1px solid var(--tp4-border); border-radius: var(--tp4-r-md); padding: var(--tp4-s-3) var(--tp4-s-4); transition: border-color var(--tp4-dur) var(--tp4-ease), box-shadow var(--tp4-dur) var(--tp4-ease); }
input:focus, select:focus, textarea:focus { outline: none; border-color: var(--tp4-c-brand); box-shadow: 0 0 0 3px var(--tp4-c-brand-soft); }
code { font-family: ui-monospace, 'SF Mono', Menlo, Consolas, monospace; font-size: 0.9em; background: var(--tp4-c-gray-100); padding: 0.1em 0.3em; border-radius: var(--tp4-r-sm); }

/* Hide WP admin bar when active on V4 routes */
body.admin-bar { padding-top: 0 !important; }
#wpadminbar { display: none !important; }
html { margin-top: 0 !important; }
