.wb-sidebar-foot{display:block!important;padding:12px 10px!important}
.wb-sidebar-user{position:relative}
.wb-user-btn{display:flex!important;align-items:center;gap:7px;width:100%;height:48px;padding:0 6px;border:0!important;border-radius:8px!important;background:transparent!important;box-shadow:none!important;cursor:pointer;text-align:left;transition:background .15s}
.wb-user-btn:hover,.wb-user-btn.is-guest:hover{background:#f5f3ef!important;border:0!important}
.wb-user-btn.is-guest{justify-content:flex-start}
.wb-user-btn:not(.is-guest){position:relative;justify-content:flex-start}
.wb-user-avatar{display:grid!important;width:38px!important;height:38px!important;border-radius:50%!important;place-items:center;overflow:hidden;flex-shrink:0;background:#dedede!important;color:#999!important;font-size:16px!important;font-weight:600!important}
.wb-user-avatar img,.profile-avatar img{display:none;width:100%;height:100%;object-fit:cover}
.wb-user-avatar.has-image img,.profile-avatar.has-image img{display:block}
.wb-user-avatar.has-image>span,.profile-avatar.has-image>span{display:none}
.wb-user-avatar.logged-in{background:#ffd888!important;color:#3c2909!important}
.wb-user-meta{display:flex!important;flex:1;min-width:0;flex-direction:row!important;align-items:center}
.wb-user-meta strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#2d2a26!important;font-size:13px!important;font-weight:600!important}
.wb-user-btn.is-guest .wb-user-meta strong{color:#817b73!important;font-weight:500!important}
.wb-user-btn.is-guest .wb-user-meta{flex:0 1 auto}
.wb-user-btn:not(.is-guest) .wb-user-meta{flex:0 1 auto}
.wb-user-meta small{display:none!important}
.wb-user-caret{width:14px;height:14px;color:#8d877e;flex-shrink:0}
.wb-user-btn.is-guest .wb-user-caret{display:none}
.wb-user-btn:not(.is-guest) .wb-user-caret{position:absolute;right:6px}
.wb-user-menu{display:none;position:absolute;bottom:100%;left:0;right:0;z-index:1000;margin-bottom:8px;padding:5px;background:#fff;border:1px solid #e5e0d8;border-radius:11px;box-shadow:0 12px 32px rgba(33,26,17,.12)}
.wb-user-menu.show{display:block}
.wb-user-menu a{display:flex;align-items:center;gap:9px;padding:9px 11px;border-radius:7px;color:#403c37;font-size:13px;text-decoration:none;transition:background .12s}
.wb-user-menu a:hover{background:#f6f3ed}
.wb-user-menu a svg{flex-shrink:0}

/* ---- Login modal ---- */
.login-card{width:min(390px,calc(100vw - 32px));max-width:390px!important;padding:0!important;overflow:hidden;background:#fff;border:1px solid rgba(216,210,200,.8);border-radius:14px!important;box-shadow:0 22px 60px rgba(32,26,17,.16)}
.login-close{top:16px!important;right:18px!important;width:30px;height:30px;padding:0;border-radius:50%;color:#766f66;font-size:21px!important;line-height:30px}
.login-close:hover{background:#f3f0ea;color:#292622}
.login-heading{display:flex;align-items:center;gap:14px;padding:30px 32px 24px;border-bottom:1px solid #eeeae3;background:#fdfcf9}
.login-brand-mark{display:grid;width:42px;height:42px;place-items:center;flex:0 0 auto;border-radius:10px;background:#ffae12;color:#352400;font-size:18px;font-weight:800;box-shadow:0 7px 18px rgba(230,151,0,.2)}
.login-heading h2{margin:0!important;color:#26231f;font-size:20px;line-height:1.25}
.login-heading p{margin:0!important;color:#8b857c!important;font-size:12px;line-height:1.5!important}
.login-form{display:flex;flex-direction:column;gap:17px;padding:25px 32px 20px}
.login-form label{display:flex;flex-direction:column;gap:7px}
.login-form label>span{color:#655f57;font-size:12px}
.login-form input{width:100%;height:42px;padding:0 12px;border:1px solid #ded9d1;border-radius:7px;background:#fff;color:#292622;font:inherit;font-size:14px;outline:none;transition:border-color .15s,box-shadow .15s}
.login-form input:hover{border-color:#c9c1b7}
.login-form input:focus{border-color:#d7920e;box-shadow:0 0 0 3px rgba(228,156,20,.12)}
.login-form input::placeholder{color:#aaa49c}
.login-submit{height:43px;margin-top:3px;border:1px solid #e59a0c;border-radius:7px;background:#f6a000;color:#2f2106;font:inherit;font-size:14px;font-weight:700;cursor:pointer;transition:background .15s,transform .15s}
.login-submit:hover{background:#ffad0f}
.login-submit:active{transform:translateY(1px)}
.login-register{display:flex;align-items:center;justify-content:center;gap:5px;padding:0 32px 26px;color:#928b81;font-size:12px}
.login-register button{padding:3px;border:0;background:none;color:#9b6500;font:inherit;font-weight:600;cursor:pointer}
.login-register button:hover{text-decoration:underline;text-underline-offset:3px}
.login-close:focus-visible,.login-submit:focus-visible,.login-register button:focus-visible{outline:3px solid rgba(181,131,33,.22);outline-offset:2px}

#profileModal{position:fixed;inset:auto auto 76px 12px;z-index:1100;display:block;place-items:initial;width:auto;height:auto;background:transparent;pointer-events:none;isolation:isolate}
#profileModal[hidden]{display:none}
.profile-card{position:relative;width:min(324px,calc(100vw - 24px));max-width:324px!important;padding:0!important;overflow:hidden;pointer-events:auto;background:#fff;border:1px solid #e5dfd5;border-radius:12px!important;box-shadow:0 14px 42px rgba(32,26,17,.16)}
.profile-card>.modal-close{position:absolute!important;top:12px!important;right:12px!important;left:auto!important;z-index:2;display:grid;place-items:center;width:24px;height:24px;padding:0;border:0;border-radius:50%;background:transparent;color:#766f66;font-size:17px!important;font-weight:300;line-height:1}
.profile-card>.modal-close:hover{background:#f3f0ea;color:#292622}
.profile-heading{display:flex;align-items:center;gap:15px;padding:22px 24px 24px;border-bottom:1px solid #e9e2d7;background:#fbf7ef}
.profile-heading>div{min-width:0}
.profile-heading h2{margin:0;color:#25221e;font-size:23px;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.profile-avatar-control{position:relative;display:block;flex:0 0 auto;cursor:pointer}
.profile-avatar{display:grid;width:62px;height:62px;border-radius:50%;place-items:center;overflow:hidden;background:#ffd682;color:#4d3300;font-size:21px;font-weight:700;box-shadow:0 0 0 4px #fff}
.profile-avatar-action{position:absolute;left:50%;bottom:-7px;transform:translateX(-50%);padding:3px 6px;border:1px solid #e6d6b8;border-radius:10px;background:#fff;color:#76500a;font-size:9px;line-height:1;white-space:nowrap;box-shadow:0 2px 7px rgba(24,20,15,.08)}
.profile-form{padding:8px 24px 20px}
.profile-fields{display:grid;grid-template-columns:1fr}
.profile-fields label{display:grid;grid-template-columns:62px minmax(0,1fr);align-items:center;min-width:0;min-height:57px;border-bottom:1px solid #eee9e1}
.profile-fields label:last-child{border-bottom:0}
.profile-fields label>span{color:#8a8379;font-size:12px}
.profile-fields input{width:100%;height:36px;box-sizing:border-box;padding:0 8px;border:1px solid transparent;border-radius:6px;background:transparent;color:#292622;font:inherit;font-size:14px;outline:none;transition:border-color .15s,background .15s,box-shadow .15s}
.profile-fields input[readonly]{cursor:default}
.profile-fields input[readonly]:hover{background:transparent;border-color:transparent}
.profile-form.is-editing .profile-fields input:hover{background:#faf8f4;border-color:#ece5da}
.profile-form.is-editing .profile-fields input:focus{background:#fff;border-color:#d7920e;box-shadow:0 0 0 3px rgba(228,156,20,.1)}
.profile-fields input::placeholder{color:#aaa49d}
.profile-actions{display:flex;justify-content:flex-end;gap:6px;margin-top:0}
.profile-cancel-btn,.profile-save-btn{height:28px;min-width:50px;padding:0 11px;border-radius:6px;font:inherit;font-size:12px;cursor:pointer}
.profile-cancel-btn{border:1px solid #d9d2c8;background:#fff;color:#514c46}
.profile-save-btn{border:1px solid #e59a0c;background:#f6a000;color:#2f2106;font-weight:700}
.profile-cancel-btn:hover{background:#f7f5f2}
.profile-save-btn:hover{background:#ffad0f}
.profile-cancel-btn:focus-visible,.profile-save-btn:focus-visible,.profile-avatar-control:focus-within,.wb-user-btn:focus-visible,.wb-user-menu a:focus-visible{outline:3px solid rgba(181,131,33,.2);outline-offset:2px}
.profile-card:not(.is-editing) .profile-avatar-control{pointer-events:none}
.profile-card:not(.is-editing) .profile-avatar-action{color:#9b948b;border-color:#e4dfd7;box-shadow:none}

@media(max-width:560px){
  .login-heading{padding:26px 22px 21px}
  .login-form{padding:22px 22px 18px}
  .login-register{padding:0 22px 23px}
  #profileModal{right:12px;left:12px;bottom:12px}
  .profile-card{width:100%;max-width:none!important}
  .profile-heading{padding:22px}
  .profile-form{padding:8px 22px 18px}
}

@media(prefers-reduced-motion:reduce){
  .wb-user-btn,.wb-user-menu a,.profile-fields input,.login-form input,.login-submit{transition:none}
}

.profile-card{
  position:relative;
}
.profile-card>.modal-close{
  position:absolute!important;
  top:12px!important;
  right:12px!important;
  left:auto!important;
  z-index:2;
  display:grid;
  place-items:center;
  width:24px;
  height:24px;
  padding:0;
  border:0;
  border-radius:50%;
  background:transparent;
  color:#766f66;
  font-size:17px!important;
  font-weight:300;
  line-height:1;
}
