:root { color-scheme: light; font-family: "Microsoft JhengHei", system-ui, sans-serif; color: #16352f; background: #f1f5f2; }
* { box-sizing: border-box; }
body { margin: 0; padding: 32px 16px; }
.security-card { max-width: 660px; margin: 0 auto; background: white; border: 1px solid #d5e2d9; border-radius: 16px; padding: 32px; box-shadow: 0 8px 32px #183d3110; }
a { color: #176652; } h1 { margin: 8px 0 16px; font-size: 28px; } p { line-height: 1.65; }
.eyebrow { margin-bottom: 0; font-size: 13px; color: #58796c; }
label { display: block; font-weight: 600; margin: 20px 0; }
input[type=password] { width: 100%; margin-top: 8px; border: 1px solid #afc5b7; border-radius: 8px; padding: 12px; font: inherit; }
input:focus-visible, button:focus-visible, a:focus-visible { outline: 3px solid #96cfb2; outline-offset: 3px; }
small { display: block; margin-top: 8px; color: #5c7268; font-weight: 400; }
.acknowledge { display: flex; gap: 12px; align-items: flex-start; line-height: 1.65; font-size: 14px; }
.acknowledge input { margin-top: 5px; flex-shrink: 0; }
.actions { display: flex; gap: 12px; flex-wrap: wrap; justify-content: flex-end; }
button { border: 1px solid #afc5b7; border-radius: 8px; padding: 12px 16px; font: inherit; cursor: pointer; background: white; color: #16352f; }
button[type=submit] { background: #176652; color: white; border-color: #176652; } button:disabled { opacity: .55; cursor: wait; }
#security-error { color: #a02c34; } .footnote { color: #5c7268; font-size: 13px; margin-bottom: 0; }
[hidden] { display: none !important; }
@media (max-width: 440px) { body { padding: 16px 10px; } .security-card { padding: 22px 18px; } .actions button { width: 100%; } }
