.settings-panel{width:min(760px,100%);max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);overflow-y:auto;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y}
.settings-layout{display:grid;grid-template-columns:150px minmax(0,1fr);gap:18px;margin-top:18px}
.settings-nav{display:flex;flex-direction:column;gap:4px}
.settings-nav-btn{border:0;border-radius:7px;background:transparent;color:#77736c;padding:9px 10px;text-align:left;font:700 9px ui-monospace,monospace;cursor:pointer}
.settings-nav-btn:hover,.settings-nav-btn.active{background:#ebe8df;color:#292924}
.settings-content{min-width:0;min-height:310px;padding:2px 2px 0}
.settings-section{display:none}
.settings-section.active{display:block}
.settings-section-kicker{color:#8b8880;font:700 8px/1 ui-monospace,monospace;letter-spacing:.12em}
.settings-section h3{margin:8px 0 7px;font-size:15px}
.settings-section p{margin:0 0 14px;color:#6d6962;font-size:11px;line-height:1.65}
.settings-note{margin-top:12px;padding:10px 11px;border-radius:8px;background:#eeece5;color:#77736c;font:9px/1.6 ui-monospace,monospace}
.path-list{display:grid;gap:6px}
.path-row{display:grid;grid-template-columns:minmax(130px,.8fr) minmax(0,1.2fr);gap:12px;align-items:center;padding:10px 11px;border-radius:8px;background:#efede6}
.path-row span{color:#77736c;font:700 9px ui-monospace,monospace}
.path-row b{min-width:0;color:#45423d;font:700 9px/1.4 ui-monospace,monospace;overflow-wrap:anywhere}
.source-row{display:grid;grid-template-columns:minmax(118px,.8fr) minmax(105px,.8fr) minmax(145px,1.2fr) auto;gap:8px;align-items:end;padding:10px 11px;border-radius:8px;background:#efede6}
.source-meta{align-self:center;min-width:0}
.source-meta>span{display:block;color:#45423d;font:700 9px/1.3 ui-monospace,monospace}
.source-state{display:inline-block;margin-top:4px;color:#98938a;font:700 7px/1 ui-monospace,monospace;letter-spacing:.06em}
.source-state.live{color:#637467}
.source-field{display:grid;gap:4px;min-width:0}
.source-field>span{color:#8a857c;font:700 7px/1 ui-monospace,monospace;letter-spacing:.06em;text-transform:uppercase}
.source-field input{width:100%;min-width:0;box-sizing:border-box;border:1px solid #d6d1c7;border-radius:6px;background:#fff;color:#3f3c37;padding:8px 9px;font:9px/1.2 ui-monospace,monospace;outline:none}
.source-field input:focus{border-color:#969087;box-shadow:0 0 0 2px rgba(120,115,106,.08)}
.source-check{min-height:31px;border:0;border-radius:6px;background:#e1ded6;color:#55514b;padding:0 9px;cursor:pointer;font:700 8px/1 ui-monospace,monospace}
.source-check:disabled{opacity:.5;cursor:default}
.source-check-status{grid-column:2/-1;min-height:11px;color:#7f7a72;font:700 7px/1.4 ui-monospace,monospace}
.source-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;padding-top:5px}
.source-save-status{margin-right:auto;color:#868178;font:700 8px/1.3 ui-monospace,monospace}
.source-save-status.error{color:#a35f58}
.system-status{height:32px!important}
.status-system{width:32px!important;height:32px!important;min-width:32px;border-radius:7px}
.status-system:hover{background:rgba(235,232,223,.8)}
.status-mail{position:relative;display:flex;align-items:center;justify-content:center;width:32px;height:32px;min-width:32px;padding:0;border:0;border-radius:7px;background:transparent;color:#77736c;opacity:.58;transition:opacity .14s,transform .14s,background .14s}
.status-mail:hover{opacity:1;transform:translateY(-1px);background:rgba(235,232,223,.8)}
.mail-glyph{position:relative;width:14px;height:10px;border:1.4px solid currentColor;border-radius:2px}
.mail-glyph::after,.mail-glyph::before{content:"";position:absolute;top:1px;width:8px;height:1.4px;background:currentColor}
.mail-glyph::before{left:0;transform:rotate(32deg);transform-origin:left center}
.mail-glyph::after{right:0;transform:rotate(-32deg);transform-origin:right center}
.mail-count{position:absolute;right:1px;top:1px;min-width:13px;height:13px;padding:0 3px;border-radius:7px;background:#b8665d;color:#fff;font:700 7px/13px ui-monospace,monospace;text-align:center}
.status-mail.has-unread{opacity:1;color:#4f4b45}
.status-mail.mail-error{color:#a35f58;opacity:.8}
@media(max-width:620px){
  .settings-panel{max-height:calc(100vh - env(safe-area-inset-top) - 12px);max-height:calc(100dvh - env(safe-area-inset-top) - 12px);padding-bottom:calc(18px + env(safe-area-inset-bottom))}
  .settings-layout{grid-template-columns:1fr;gap:12px}
  .settings-nav{flex-direction:row;overflow-x:auto;padding-bottom:3px}
  .settings-nav-btn{flex:0 0 auto;min-height:40px}
  .settings-content{min-height:0;padding-bottom:8px}
  .path-row{grid-template-columns:1fr;gap:4px}
  .source-row{grid-template-columns:1fr 1fr;gap:8px}
  .source-meta{grid-column:1/-1}
  .source-folder{grid-column:1/-1}
  .source-check{min-height:40px}
  .source-check-status{grid-column:1/-1}
  .source-actions{flex-wrap:wrap;justify-content:stretch;padding-bottom:4px}
  .source-save-status{width:100%;margin:0 0 2px}
  .source-actions .token-btn{flex:1;min-height:40px}
  .system-status{height:40px!important}
  .status-mail,.status-system{width:40px!important;height:40px!important;min-width:40px}
}

.app-settings-list{display:grid;gap:7px;margin:4px 0 10px}
.app-setting-row{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(180px,1.2fr);gap:12px;align-items:center;padding:11px;border-radius:8px;background:#efede6}
.app-setting-copy{display:grid;gap:4px;min-width:0}
.app-setting-copy b{color:#45423d;font:700 9px/1.3 ui-monospace,monospace}
.app-setting-copy small{color:#8a857c;font:700 7px/1.35 ui-monospace,monospace}
.app-setting-row select{width:100%;min-width:0;border:1px solid #d6d1c7;border-radius:6px;background:#fff;color:#3f3c37;padding:9px;font:9px/1.2 ui-monospace,monospace;outline:none}
.app-setting-row select:focus{border-color:#969087;box-shadow:0 0 0 2px rgba(120,115,106,.08)}
.app-setting-status{color:#77736c;font:700 8px/1.3 ui-monospace,monospace;text-align:right}
@media(max-width:620px){.app-setting-row{grid-template-columns:1fr;gap:8px}.app-setting-row select{min-height:40px}.app-setting-status{text-align:left}}
