/* Compact settings panels share typography, surfaces and native controls. */
:is(#logOv,#profileOv,#pwdOv){position:fixed;inset:0;z-index:870;display:none;align-items:center;justify-content:center;padding:32px;box-sizing:border-box;background:#5360803d;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
#logOv:has(#logPop.show),#profileOv.show,#pwdOv.show{display:flex}
body.locked :is(#logOv,#profileOv,#pwdOv){display:none}
:is(#logPop,#profileBox,#pwdBox){box-sizing:border-box;border:1px solid #ffffffeb;border-radius:30px;color:#252d50;background:linear-gradient(115deg,#e8edff 0%,#fafaff 40%,#f3f4ff 100%);box-shadow:inset 0 1px 3px #fff,0 24px 70px #394a782b;font-family:Arial,"Microsoft YaHei",sans-serif;overflow:hidden}
:is(#logPop,#profileBox,#pwdBox) h2{margin:0;color:#1e2749;line-height:1.25;letter-spacing:0;font-size:30px;font-weight:700}
:is(#logPop,#profileBox,#pwdBox):focus{outline:none}
:is(#logPop,#profileBox,#pwdBox) button{display:inline-flex;align-items:center;justify-content:center;flex:none;min-height:44px;padding:10px 20px;margin:0;border:1px solid #d9dffd;border-radius:999px;background:#f4f5ff;color:#596a9a;font:600 15px/1.4 Arial,"Microsoft YaHei",sans-serif;white-space:nowrap;box-shadow:none;backdrop-filter:none;cursor:pointer;transition:background-color .15s,box-shadow .15s;transform:none;filter:none}
:is(#logPop,#profileBox,#pwdBox) button:hover{background:#e6eaff;box-shadow:0 5px 14px #8194dd1f;transform:none;filter:none}
:is(#logPop,#profileBox,#pwdBox) button:focus-visible{outline:3px solid #8395f0;outline-offset:3px}
:is(#logPop,#profileBox,#pwdBox) .settings-primary{color:white;border-color:#a7b5ff;background:linear-gradient(135deg,#8587ff,#607efd);box-shadow:inset 0 1px 2px #ffffff70,0 8px 20px #637ff532}
:is(#logPop,#profileBox,#pwdBox) .settings-primary:hover{background:linear-gradient(135deg,#7375f3,#4d6feb);box-shadow:0 8px 20px #637ff545}
#logPop{display:none;position:relative;width:min(960px,100%);height:min(540px,calc(100dvh - 96px));max-width:100%;max-height:calc(100dvh - 64px);padding:0}
#logPop.show{display:grid;grid-template-columns:28% minmax(0,1fr)}
.settings-log-art{position:relative;min-width:0;overflow:hidden;pointer-events:none}
.settings-log-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none}
.settings-log-main{display:flex;flex-direction:column;min-width:0;min-height:0;padding:28px 28px 28px 12px}
.settings-log-head{display:flex;align-items:flex-start;justify-content:space-between;flex:none;gap:16px;margin-bottom:20px;flex-wrap:wrap}
.settings-log-head p{margin:8px 0 0;color:#8995b4;font-size:14px;line-height:1.5}
.settings-log-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
#logPop .settings-log-actions button{font-size:13px;padding:10px 14px;min-height:40px}
.settings-log-scroll{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#c8cfee transparent;padding:3px}
#logPop .logItem{display:flex;align-items:center;gap:16px;min-height:78px;box-sizing:border-box;padding:16px 18px;margin-bottom:12px;border:1px solid #e1e5fa;border-radius:17px;background:#ffffffb8;color:#414b71;font-size:15px;line-height:1.6}
#logPop .logItem:last-child{margin-bottom:0}
#logPop .logItem::before{content:'';flex:none;width:10px;height:10px;border-radius:50%;background:linear-gradient(135deg,#b7c0ff,#646dfb);box-shadow:0 0 0 6px #dce2ff38}
#logPop .logTime{flex:none;color:#8995b4;font-size:13px;font-variant-numeric:tabular-nums;white-space:nowrap}
#logPop .logMessage{border-left:1px solid #cfd5eb;padding-left:16px;min-width:0;overflow-wrap:anywhere}
.settings-cleared-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 16px;color:#7884a6;font-size:14px;flex-wrap:wrap}
.settings-log-empty{display:grid;place-items:center;min-height:160px;border:1px solid #e1e5fa;border-radius:17px;background:#ffffff80;color:#8a94b1;font-size:16px;padding:24px;box-sizing:border-box}
#logPop [hidden]{display:none!important}
:is(#profileBox,#pwdBox){position:relative;width:min(640px,100%);max-height:calc(100dvh - 64px);padding:32px 36px;overflow:auto;background:linear-gradient(115deg,#f8f9ff 0%,#eef1ff 65%,#e8edff 100%)}
.settings-profile-art{position:absolute;right:38px;top:12px;width:245px;height:158px;object-fit:contain;pointer-events:none}
.settings-profile-head{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;min-height:102px}
#profileTitle{padding-top:6px}
#profileBox .settings-close{min-height:36px;width:36px;height:36px;padding:0;border:0;background:#f8f9ffd6;color:#7c8ab3;font-size:28px;line-height:1;font-weight:400;position:relative;right:-16px;top:-16px}
#profileBox .settings-close:hover{background:#fff}
.profile-body{position:relative;display:flex;flex-direction:column;gap:14px}
.profile-body label{font-size:19px;color:#45547b;font-weight:600;line-height:1.4}
#profileHireDate,#pwdBox input{display:block;box-sizing:border-box;width:100%;min-width:0;height:60px;margin:0;border:1px solid #d3dcfc;border-radius:18px;background:#ffffffb8;box-shadow:inset 0 1px 2px #fff;padding:15px 20px;font:400 18px/1.5 Arial,"Microsoft YaHei",sans-serif;color:#293b68;color-scheme:light;outline:none}
#profileHireDate:focus,#pwdBox input:focus{border-color:#8199f1;box-shadow:0 0 0 3px #9eaffe30}
#profileHireDate::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.62;padding:4px}
.profile-note{font-size:14px;color:#7d8caf;line-height:1.6;margin-top:0;overflow-wrap:anywhere}
.profile-btns,.pwdBtns{display:flex;justify-content:flex-end;gap:12px;margin-top:10px;flex-wrap:wrap}
#profileBox .profile-btns button,#pwdBox .pwdBtns button{font-size:16px;min-height:46px;min-width:100px;padding:11px 24px}
#pwdBox{width:min(600px,100%)}
.settings-password-art{position:absolute;right:20px;top:12px;width:190px;height:170px;object-fit:contain;pointer-events:none}
.settings-password-head{position:relative;min-height:128px;box-sizing:border-box;padding-top:16px;padding-right:160px}
.settings-password-head p{font-size:15px;line-height:1.7;color:#7d8caf;margin:12px 0 0}
.settings-password-fields{position:relative;display:grid;gap:16px}
#pwdBox input::placeholder{color:#8590aa;opacity:1}
#pwdHint{font-size:14px;color:#b23d59;line-height:1.5;margin-top:12px;overflow-wrap:anywhere}
#pwdHint:empty{display:none}
.pwdBtns{margin-top:24px;position:relative}
@media(max-width:1000px){
 #logPop.show{grid-template-columns:24% minmax(0,1fr)}
 #logPop .logItem{gap:10px 14px;flex-wrap:wrap}
 #logPop .logMessage{flex-basis:100%;border:0;padding-left:24px}
}
@media(max-width:760px){
 :is(#logOv,#profileOv,#pwdOv){padding:16px}
 #logPop{height:min(580px,calc(100dvh - 32px));max-height:calc(100dvh - 32px);border-radius:25px}
 #logPop.show{display:flex;flex-direction:column}
 .settings-log-art{display:none}
 .settings-log-main{flex:1;padding:24px 18px;min-height:0}
 #logTitle{font-size:26px}
 .settings-log-head{gap:16px;margin-bottom:18px}
 .settings-log-head p{font-size:14px;margin-top:7px}
 .settings-log-actions{gap:8px;width:100%}
 #logPop #logClose{margin-left:auto}
 #logPop .logItem{font-size:14px;border-radius:16px}
 :is(#profileBox,#pwdBox){padding:24px;max-height:calc(100dvh - 32px);border-radius:26px}
}
@media(max-width:480px){
 :is(#logOv,#profileOv,#pwdOv){padding:12px}
 #logPop{max-height:calc(100dvh - 24px)}
 #logPop .settings-log-actions button{font-size:12px;padding:9px 11px}
 :is(#profileBox,#pwdBox){padding:24px 20px;max-height:calc(100dvh - 24px)}
 :is(#profileBox,#pwdBox) h2{font-size:27px}
 .settings-profile-art{width:170px;height:118px;right:14px;top:44px}
 .settings-profile-head{min-height:130px}
 #profileBox .settings-close{right:-8px;top:-10px}
 .profile-body label{font-size:18px}
 #profileHireDate,#pwdBox input{height:54px;padding:13px 16px;font-size:16px}
 .profile-btns{gap:10px}
 #profileBox .profile-btns button,#pwdBox .pwdBtns button{min-width:0;font-size:15px;padding:11px 20px}
 .settings-password-head{min-height:122px;padding-right:106px;padding-top:10px}
 .settings-password-head p{font-size:13px;margin-top:10px}
 .settings-password-art{width:125px;height:125px;right:5px;top:23px}
 .settings-password-fields{gap:14px}
}
