@import url('/static/perystyl/fonts.css?v=1.14.2');
@import url('/static/perystyl/perystyl.bundle.css?v=1.14.2');
@import url('/static/css/sentinel-tokens.css?v=2');
:root { --text: var(--ink); --text-muted: var(--muted); --border: var(--line); color-scheme: light; }
body { margin: 0; background: var(--bg); color: var(--text); font-family: var(--font-text); }
.public-header, .public-footer { display: flex; gap: 1.5rem; flex-wrap: wrap; align-items: center; padding: 1rem 1.5rem; border-bottom: 1px solid var(--border); }
.public-header a, .public-footer a, .public-confirmation a { color: var(--accent); }
.public-header button { margin-left: auto; }
.public-header img { width: 8rem; height: auto; }
.public-confirmation { max-width: 40rem; padding: 2rem 1.5rem; margin: auto; line-height: 1.6; }
.public-confirmation button, .public-header button { padding: .75rem 1rem; min-height: 44px; border: 1px solid var(--border); border-radius: var(--r-button, 8px); background: var(--accent); color: var(--on-accent, white); font: inherit; cursor: pointer; }

body { min-height: 100vh; display: flex; flex-direction: column; }
.public-footer { margin-top: auto; border-top: 1px solid var(--line); border-bottom: 0; }
.public-header { flex-wrap: nowrap; }
.public-header .py-suitebar__switch { width: auto; min-width: 44px; }
.public-header .py-switcher a { color: var(--ink); }
.public-header .py-suitebar__app, .public-header .py-suitebar__account { color: var(--on-action); }
.public-header .py-suitebar__end { display: flex; gap: 1rem; align-items: center; margin-left: auto; }
[data-theme="dark"] { color-scheme: dark; }
@media (max-width: 600px) { .public-header { gap: .5rem; padding: .75rem; } .public-header img { width: 5rem; } .public-header .py-suitebar__account { display: none; } }

button, input, select, textarea { font-family: var(--font-text); }
h1, h2, h3, h4, h5, h6 { font-family: var(--font-display); }
code, pre, kbd, samp { font-family: var(--font-mono); }
