.brand-logo{display:block;width:39px;height:39px;object-fit:contain;border-radius:9px;background:#fff;padding:3px;flex:none}
.privacy-modal{width:min(840px,calc(100vw - 32px));max-height:min(92dvh,880px);border:0;border-radius:16px;padding:0;color:#17394e;box-shadow:0 24px 70px #07182766}
.privacy-modal::backdrop{background:#071827c2}
.privacy-modal form{display:flex;flex-direction:column;max-height:min(92dvh,880px)}
.privacy-modal-head{padding:22px 28px 16px;border-bottom:1px solid #e1e9ed}
.privacy-modal-head h2{font-size:24px;line-height:1.2;letter-spacing:-.025em;margin:0 0 5px}
.privacy-modal-head p{font-size:13px;line-height:1.5;color:#5c7280;margin:0}
.privacy-scroll{overflow:auto;overscroll-behavior:contain;padding:22px 28px;background:#fff;min-height:135px;flex:1;scrollbar-color:#9fb5bd transparent}
.privacy-document{color:#19394d;font-size:14px;line-height:1.65}
.privacy-document h1{font-size:22px;line-height:1.25;margin:0 0 7px;letter-spacing:-.02em}
.privacy-document h2{font-size:16px;line-height:1.35;margin:25px 0 9px}
.privacy-document p{margin:0 0 11px;overflow-wrap:anywhere}
.privacy-bullet,.privacy-number{padding-left:16px}
.privacy-signoff{padding:16px 28px 13px;border-top:1px solid #e1e9ed;background:#f8fafb}
.privacy-consent{display:flex;align-items:flex-start;gap:11px;font-size:13px;line-height:1.45;font-weight:600;color:#25465a;cursor:pointer}
.privacy-consent input{width:19px;height:19px;flex:none;margin:0;accent-color:#0b947d}
.signature-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:14px 0 8px}
.signature-heading div{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.signature-heading strong{font-size:14px}.signature-heading span{font-size:12px;color:#627b88}
.signature-clear{border:0;background:transparent;color:#087b68;font-size:12px;font-weight:700;cursor:pointer;padding:6px 0}
.signature-clear:hover{text-decoration:underline;text-underline-offset:3px}
#signature-pad{display:block;width:100%;height:116px;background:#fff;border:1px solid #cbdbe1;border-radius:9px;touch-action:none;cursor:crosshair}
.signature-fallback{display:block;font-size:12px;line-height:1.45;color:#45616f;margin:10px 0 5px}
#signature-name{display:block;width:100%;height:38px;padding:8px 11px;border:1px solid #cbdbe1;border-radius:8px;background:#fff;color:#17394e;font-size:13px}
.signature-help{font-size:11px;color:#667e89;margin:8px 0 0}
.signature-error{font-size:12px;color:#a23737;margin:8px 0 0;font-weight:700}
.privacy-modal .btn{font-size:13px;padding:13px 16px;min-height:45px}
.privacy-submit{width:auto!important;margin:0 28px 22px}
.privacy-modal :is(button,input,canvas,.privacy-scroll):focus-visible,.login-card :is(input,button,a):focus-visible{outline:3px solid #0b947d;outline-offset:3px}
.login-card form[inert]{opacity:1}
.login-card form{max-width:410px}
.login-card h2{font-size:29px}
.login-card form>p:not(.overline){font-size:13px;line-height:1.55;color:#516b79;margin-bottom:25px}
.login-card label{font-size:13px;color:#3c5664;margin:17px 0;font-weight:650}
.login-card input{height:47px;font-size:15px;border-color:#bfced5}
.login-card .btn{min-height:47px;font-size:14px}
.privacy-note{font-size:12px;line-height:1.5;color:#5f7783;margin-top:18px}
.privacy-public{max-width:900px;margin:32px auto;padding:0 18px}
.privacy-public>.btn{margin-bottom:16px}
.privacy-public .privacy-document{padding:30px}
.privacy-note a{text-decoration:underline;color:#0b8f76}
.user-table{background:#fff;border:1px solid var(--line);border-radius:14px;padding:0 18px;overflow-x:auto}
.user-head,.user-row{display:grid;grid-template-columns:1.4fr .65fr 1.3fr .6fr .75fr;min-width:760px;gap:12px;align-items:center}
.user-head{padding:15px 7px;color:#7d919d;font-size:9px;font-weight:800;letter-spacing:.08em}
.user-row{padding:13px 7px;border-top:1px solid #edf0f2;font-size:11px}
.user-row .name-cell strong{font-size:11px}
.user-row .name-cell small{font-size:9px}
.privacy-record{display:flex;align-items:flex-start;flex-direction:column;gap:3px;font-size:11px;font-variant-numeric:tabular-nums}
.privacy-record a{color:#087b68;font-weight:700;text-decoration:underline;text-underline-offset:2px}
.privacy-record small{color:#617985;font-size:10px}
.settings-panel{max-width:850px}
.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:20px}
.settings-grid .full{grid-column:1/-1}
.settings-grid label{display:block;color:#546d7b;font-size:11px;font-weight:700}
.settings-grid label small{display:block;margin-top:4px;font-size:9px;color:#8396a1;font-weight:400}
.settings-grid input{display:block;width:100%;height:42px;margin-top:6px;padding:8px 11px;border:1px solid #d9e3e8;border-radius:9px;background:#fff;color:#17394e;font-size:12px}
.settings-grid input[type=file]{height:auto}
.logo-preview{display:flex;align-items:center;gap:12px;margin-bottom:18px;font-size:10px;color:#6b8290}
.logo-preview img{max-width:110px;max-height:80px;object-fit:contain;border:1px solid #dce6e9;border-radius:10px;padding:6px}
@media(max-width:900px){.login-shell{grid-template-columns:minmax(0,1fr)}.login-visual{min-height:280px;padding:35px}.login-visual .brand{margin-bottom:28px}.login-visual h1{font-size:29px;max-width:520px}}
@media(max-width:650px){.privacy-modal{width:calc(100vw - 16px);max-height:96dvh}.privacy-modal form{max-height:96dvh;overflow:auto}.privacy-modal-head{padding:17px 18px 12px}.privacy-scroll{padding:16px 18px;min-height:125px;flex:0 1 30dvh}.privacy-signoff{padding:13px 18px 11px}.signature-heading{margin-top:11px}.signature-heading div{gap:3px;flex-direction:column}#signature-pad{height:100px}.privacy-submit{margin:0 18px 17px}.settings-grid{grid-template-columns:1fr}.settings-grid .full{grid-column:auto}}
@media(max-height:620px){.privacy-modal form{overflow:auto}.privacy-scroll{flex:0 0 180px}}
@media(prefers-reduced-motion:reduce){.privacy-modal *{scroll-behavior:auto}}
