/* v0.10.5: phone-friendly owner pages (setup, reset) and show-password buttons. */
.owner-page{max-width:520px;margin:5vh auto;padding:0 18px 40px;font-size:17px;line-height:1.5}
.owner-page h1{font-size:30px;margin:10px 0}
.owner-page label{display:block;margin:18px 0 6px;color:#c1d2e8;font-size:15px}
.owner-page input{width:100%;box-sizing:border-box;font-size:18px;padding:14px;border-radius:10px;border:1px solid #3b5e86;background:#071425;color:#fff}
.owner-page button[type=submit],.owner-page .big{width:100%;margin-top:22px;font-size:18px;padding:15px;border-radius:12px;border:0;background:#276bd2;color:#fff;font-weight:700}
.owner-page .secondary{background:#1a3351;border:1px solid #325174}
.owner-page .codes{font-family:ui-monospace,Consolas,monospace;font-size:22px;letter-spacing:.08em;background:#0b1727;border:1px solid #39577c;border-radius:12px;padding:16px;display:grid;grid-template-columns:1fr 1fr;gap:8px 20px}
.owner-page .warn{color:#ffd27a}
.owner-page [role=status]{min-height:24px;margin-top:16px;font-weight:600}
.pw-wrap{position:relative;display:block}
.pw-wrap input{padding-right:64px !important}
.pw-eye{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:transparent;border:0;color:#9cbbdf;font-size:22px;padding:8px;cursor:pointer;width:auto !important;margin:0 !important}

/* v0.13: the Server panel is a full page with tabs. */
.admin-panel{width:min(980px,100vw);max-width:100vw;height:100dvh;max-height:100dvh;margin:0 auto;border-radius:0;padding:0 18px 40px;overflow-y:auto;font-size:16px}
.admin-panel .admin-top{position:sticky;top:0;background:#101d30;display:flex;justify-content:space-between;align-items:center;padding:14px 0 6px;z-index:2}
.admin-panel .admin-top h2{margin:0}
.admin-panel .admin-x{background:transparent;border:0;color:#cfe0f5;font-size:28px;padding:4px 10px}
.admin-panel .admin-tabs{position:sticky;top:56px;background:#101d30;display:flex;gap:6px;overflow-x:auto;padding:6px 0 10px;z-index:2;border-bottom:1px solid #2a415d}
.admin-panel .admin-tabs button{flex:0 0 auto;border:1px solid #34516f;background:#1d3048;color:#b9d2ee;border-radius:999px;padding:10px 14px;font-size:15px}
.admin-panel .admin-tabs button.active{background:#276dd1;color:#fff;border-color:#276dd1}
.admin-panel section{padding-top:8px}
.admin-panel section button{margin:6px 6px 6px 0;padding:11px 14px;border-radius:10px;border:1px solid #325174;background:#1a3351;color:#fff;font-size:15px}
.admin-panel #admin-message{min-height:22px;color:#8be0b5;font-weight:600}
.scan-card{border:1px solid #2a415d;border-radius:14px;padding:14px;margin:12px 0;background:#0d1a2b}
.scan-card h4{margin:0 0 6px;font-size:19px}
.scan-state{color:#a9bdd5;margin-bottom:8px}.scan-state.ready{color:#7ee0a8}.scan-state.failed{color:#ff8f8f}.scan-state.empty{color:#7f95b5}
.scan-form{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:8px}
.scan-form input[type=password]{flex:1 1 260px}
