*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--canvas);color:var(--ink);font-family:Tahoma,Arial,sans-serif;line-height:1.65}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}a{color:var(--blue-700)}img,svg{max-width:100%}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}:focus-visible{outline:3px solid #f5b700;outline-offset:3px}.skip-link{position:fixed;inset-block-start:8px;inset-inline-start:8px;z-index:9999;transform:translateY(-150%);background:#000;color:#fff;padding:.7rem 1rem;border-radius:8px}.skip-link:focus{transform:none}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.boot-screen{min-height:100vh;display:grid;place-content:center;text-align:center;color:var(--muted)}.spinner{display:block;width:40px;height:40px;margin:auto;border:4px solid var(--line);border-top-color:var(--green-700);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
h1,h2,h3{line-height:1.3;margin-block:0 .7rem}h1{font-size:clamp(1.55rem,3vw,2.15rem)}h2{font-size:1.3rem}p{margin-block:.2rem 1rem}.muted{color:var(--muted)}.danger-text{color:var(--red-700)}.success-text{color:var(--green-700)}
