/* SocialManager v3 - customer-isolated publishing workspace */
:root {
  --bg:#f7f8fc; --surface:#fff; --surface-2:#f8f9fd; --line:#e7eaf2;
  --ink:#20263d; --secondary:#66718a; --muted:#8c94a8;
  --brand:#6b5ce7; --brand-ink:#5847ca; --brand-soft:#eeeaff;
  --blue:#5078d5; --violet:#8069e5;
  --shadow:0 9px 24px rgba(43,51,83,.035);
  --side:242px;
}
body {font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:-.15px}
.sidebar {padding:24px 12px 14px;overflow-y:auto;scrollbar-width:thin}
.brand{font-size:19px;letter-spacing:-.8px;padding:0 10px 18px}
.brand-mark {background:linear-gradient(135deg,#7869ee,#5545d7);border-radius:12px;box-shadow:0 7px 22px rgba(104,89,226,.18)}
.section-label {margin:21px 11px 6px;letter-spacing:1px;font-size:10px}
.nav {padding:10px 12px;margin:2px 0;border-radius:9px;font-size:12px;font-weight:650;gap:11px}
.nav.active {box-shadow:inset 3px 0 0 var(--brand)}
.nav svg {width:17px;height:17px}
.sidebar-help {background:#f2efff;color:#6255a3}
.topbar {height:70px;padding:0 28px}
.searchbox {border-color:#edf0f6;width:296px}
.content {max-width:1600px;padding:29px 30px 65px}
.heading {margin-bottom:22px}
.heading h1{font-size:25px;letter-spacing:-.9px;font-weight:750}
.heading p{font-size:12.5px;line-height:1.6;color:var(--secondary)}
.card{border:1px solid var(--line);box-shadow:var(--shadow)}
.btn {font-size:12px;font-weight:700;border-radius:9px}
.btn.primary {box-shadow:0 8px 18px rgba(105,87,226,.16)}
.btn.primary:hover {background:#5c4bcd;border-color:#5c4bcd}
.stat .value{font-weight:750}
.datatable th{color:#8d95aa}
.datatable td{font-size:12.5px}
.datatable tr:hover td{background:var(--surface-2)}
.account-glyph {border-radius:11px}
body.dark {
  --bg:#111522;--surface:#191e2d;--surface-2:#212638;--line:#2e3549;
  --ink:#e9eaf4;--secondary:#a5adc2;--muted:#8792aa;
  --brand:#9283fa;--brand-ink:#b7adff;--brand-soft:#302d50;
}
body.dark .sidebar-help{background:#292743;color:#c6bfff}
body.dark .tag.blue{background:#293453;color:#b5c7ff}
body.dark .topbar .searchbox{border-color:var(--line)}
body.dark .nav.active{color:#c5baff}

.publisher {
  display:grid;grid-template-columns:minmax(215px,244px) minmax(380px,1fr) minmax(285px,326px);
  align-items:start;gap:16px;
}
.pub-column {border:1px solid var(--line);background:var(--surface);border-radius:14px;min-width:0;box-shadow:var(--shadow)}
.pub-accounts {padding:19px 14px}
.pub-section-title {padding:3px 4px 12px}
.pub-section-title>div:first-child {display:flex;align-items:center;justify-content:space-between;gap:8px}
.pub-section-title b{font-size:13px;letter-spacing:-.2px}
.pub-smalldesc{font-size:11px;line-height:1.65;color:var(--muted);margin-top:9px}
.pub-pill {background:var(--brand-soft);border-radius:100px;padding:5px 9px;color:var(--brand-ink);font-weight:750;font-size:10px;white-space:nowrap}
.pub-action-row {padding:6px 4px 11px;display:flex;justify-content:space-between;gap:10px}
.pub-link-btn {border:0;background:transparent;color:var(--brand);font-weight:700;font-size:10.5px;padding:5px 0}
.pub-link-btn:hover{text-decoration:underline}
.pub-account-list {display:grid;gap:7px}
.pub-account-choice {display:flex;align-items:center;gap:9px;position:relative;padding:9px 8px;border-radius:10px;cursor:pointer;border:1px solid transparent;min-width:0;transition:background .12s,border-color .12s}
.pub-account-choice:hover{background:var(--surface-2)}
.pub-account-choice.is-selected {background:var(--brand-soft);border-color:#cfc7ff}
.pub-account-choice>input{accent-color:var(--brand);width:15px;height:15px;flex:none;margin:0}
.pub-account-logo>.account-glyph{width:34px;height:34px;font-size:12px}
.pub-account-meta{flex:1;min-width:0}
.pub-account-meta b{font-size:11px;font-weight:750;display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.pub-account-meta small{display:block;color:var(--muted);font-size:9.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:4px}
.pub-connection-dot{width:7px;height:7px;border-radius:100%;background:#e6b85a;flex:none}
.pub-connection-dot.connected{background:#35b695}
.pub-add-account {border:1px dashed var(--line);background:transparent;display:flex;gap:8px;align-items:center;justify-content:center;width:100%;color:var(--secondary);font-weight:750;border-radius:9px;padding:11px;margin-top:13px;font-size:11px}
.pub-add-account:hover{color:var(--brand);border-color:var(--brand)}
.pub-add-account svg{width:15px;height:15px}
.pub-account-foot {margin:20px 4px 2px;padding-top:13px;border-top:1px solid var(--line);color:var(--muted);font-size:10.3px;line-height:1.55;display:flex;gap:8px;align-items:flex-start}
.pub-account-foot svg{width:14px;height:14px;flex-shrink:0}
.pub-empty-accounts {display:flex;align-items:center;flex-direction:column;padding:25px 6px;gap:7px;color:var(--muted);text-align:center;font-size:11px}
.pub-empty-accounts svg{width:25px;height:25px}
.pub-empty-accounts b{color:var(--ink)}

.pub-editor {overflow:hidden}
.pub-editor-top {display:flex;align-items:center;justify-content:space-between;padding:22px 24px;border-bottom:1px solid var(--line);gap:12px}
.pub-eyebrow {font-size:9.5px;font-weight:800;letter-spacing:1.1px;color:var(--brand)}
.pub-editor-top h2 {font-size:18px;margin:6px 0 0;font-weight:760;letter-spacing:-.5px}
.pub-editor #post-form {padding:0}
.pub-edit-block {padding:20px 24px;border-bottom:1px solid var(--line)}
.pub-field-caption{display:flex;align-items:center;justify-content:space-between;margin-bottom:11px;gap:12px}
.pub-field-caption label{font-size:12px;font-weight:760}
.pub-field-caption span{font-size:10px;color:var(--muted)}
#postText {width:100%;min-height:185px;border:1px solid var(--line);border-radius:11px;padding:16px;line-height:1.75;background:var(--surface-2);color:var(--ink);font-size:13px;outline:none;resize:vertical}
#postText:focus,.pub-caption-row textarea:focus{border-color:#a59afd;box-shadow:0 0 0 3px rgba(105,87,226,.08)}
#postText::placeholder,.pub-caption-row textarea::placeholder{color:#9fa7b6}
.pub-edit-tools {display:flex;gap:10px;justify-content:space-between;margin-top:11px;color:var(--muted);font-size:10px;line-height:1.55}
.pub-edit-tools>span:last-child{display:flex;align-items:center;gap:5px;flex:none}
.pub-edit-tools svg{width:12px;height:12px}
.pub-customize{border-bottom:1px solid var(--line)}
.pub-customize summary{display:flex;align-items:center;gap:11px;cursor:pointer;list-style:none;padding:16px 24px}
.pub-customize summary::-webkit-details-marker{display:none}
.pub-customize summary svg{width:17px;height:17px;color:var(--brand)}
.pub-customize summary>span:nth-child(2){flex:1;min-width:0;display:grid;gap:4px}
.pub-customize summary b{font-size:12px}
.pub-customize summary small{font-size:10px;color:var(--muted)}
.pub-customize summary svg:last-child{color:var(--muted);width:14px;height:14px;transform:rotate(90deg)}
.pub-customize[open] summary svg:last-child{transform:rotate(-90deg)}
.pub-customize-body{padding:0 24px 20px}
.pub-customize-body>p{color:var(--muted);font-size:10.5px;line-height:1.6;margin:0 0 14px}
.pub-caption-row{background:var(--surface-2);border-radius:10px;padding:12px;margin-bottom:10px;border:1px solid var(--line)}
.pub-caption-row[hidden]{display:none}
.pub-caption-name{display:flex;align-items:center;gap:8px;margin-bottom:9px}
.pub-caption-name .account-glyph{width:25px;height:25px;font-size:10px;border-radius:7px}
.pub-caption-name b{font-size:11px}
.pub-caption-name small{font-size:10px;color:var(--muted)}
.pub-caption-row textarea {width:100%;min-height:100px;resize:vertical;padding:11px;border:1px solid var(--line);background:var(--surface);border-radius:8px;font-size:12px;line-height:1.6;color:var(--ink);outline:0}
.pub-media-picker{display:flex;gap:13px;align-items:center}
.pub-media-icon{width:51px;height:51px;border:1px dashed #c9c0f2;color:var(--brand);background:var(--brand-soft);border-radius:12px;display:grid;place-items:center;flex:none}
.pub-media-icon svg{width:22px;height:22px}
.pub-media-controls {flex:1;min-width:0}
.pub-media-controls select{font-size:11px;max-width:100%}
.pub-media-buttons{display:flex;gap:11px;align-items:center;margin-top:10px;flex-wrap:wrap}
.pub-small-button{font-size:10.5px;display:inline-flex;align-items:center;gap:5px;background:none;border:0;padding:0;color:var(--brand);font-weight:750;cursor:pointer}
.pub-small-button svg{width:14px;height:14px}
.pub-schedule>.input{height:42px;font-size:12px}
.pub-quick-time {display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}
.pub-quick-time button{border:1px solid var(--line);background:var(--surface-2);border-radius:7px;color:var(--secondary);font-size:10px;font-weight:650;padding:7px 10px}
.pub-quick-time button:hover {border-color:var(--brand);color:var(--brand)}
.pub-api-message{display:flex;align-items:flex-start;gap:8px;margin:18px 24px 0;padding:12px 13px;background:var(--surface-2);border:1px solid var(--line);color:var(--secondary);border-radius:9px;font-size:10.5px;line-height:1.65}
.pub-api-message svg{height:15px;width:15px;flex:none;color:var(--brand);margin-top:1px}
.pub-submit-bar{padding:18px 24px 24px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.pub-submit-primary{display:flex;gap:8px;flex-wrap:wrap}
.pub-submit-bar .btn{min-height:40px}
.pub-draft-btn{color:var(--secondary)}

.pub-preview-col{padding:19px 15px 21px}
.pub-live-indicator {width:7px;height:7px;border-radius:99px;background:#37bfa6;box-shadow:0 0 0 3px #37bfa624}
.pub-preview-tabs {display:flex;flex-wrap:wrap;gap:5px;padding:5px 3px 13px;min-height:50px}
.pub-preview-tab{border:1px solid var(--line);background:var(--surface-2);padding:5px 7px;border-radius:8px;display:flex;gap:5px;align-items:center;min-width:0;color:var(--secondary);font-size:9.5px;font-weight:750}
.pub-preview-tab.active{border-color:#b4a8ff;color:var(--brand-ink);background:var(--brand-soft)}
.pub-preview-tab .account-glyph{height:21px;width:21px;font-size:9px;border-radius:6px}
.pub-no-preview{font-size:10px;color:var(--muted);line-height:1.6}
.pub-preview-device {border:1px solid var(--line);border-radius:20px;background:var(--surface);overflow:hidden;box-shadow:0 12px 28px rgba(22,33,62,.07)}
.pub-device-head{height:36px;padding:0 14px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);font-weight:750;font-size:9.5px;color:var(--secondary)}
.pub-device-head svg{width:14px;height:14px;color:var(--brand)}
.pub-device-dots{letter-spacing:2px}
.pub-mock-author{display:flex;gap:8px;align-items:center;padding:13px 12px}
.pub-mock-avatar{height:34px;width:34px;display:grid;place-items:center;background:linear-gradient(135deg,#887af2,#c6b6fa);border-radius:50%;color:white;font-size:14px;font-weight:750;flex:none}
.pub-mock-author b {font-size:11px;display:block;max-width:185px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pub-mock-author small{font-size:9px;color:var(--muted);display:block;margin-top:3px}
.pub-mock-more{margin-left:auto;letter-spacing:1px;color:var(--muted)}
.pub-mock-media{background:linear-gradient(145deg,#f2f0ff,#e9f3ff);height:190px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:#998be0;text-align:center;font-size:10px;padding:8px;overflow:hidden}
.pub-mock-media svg{width:40px;height:40px;opacity:.65}
.pub-mock-media img{width:100%;height:100%;object-fit:cover}
.pub-mock-actions{padding:11px 13px 7px;display:flex;gap:11px;font-size:19px;line-height:1}
.pub-mock-caption{font-size:11.2px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere;padding:7px 14px 18px;min-height:75px;max-height:280px;overflow:auto;color:var(--ink)}
.pub-preview-foot{margin-top:13px;color:var(--muted);line-height:1.6;font-size:10px;text-align:center}
body.dark .pub-account-choice.is-selected{border-color:#6c60af}
body.dark .pub-media-icon{border-color:#615695}
body.dark .pub-mock-media{background:linear-gradient(145deg,#272845,#262d4c)}
body.dark .pub-preview-device{box-shadow:none}

@media (max-width:1400px){
  .publisher{grid-template-columns:minmax(198px,224px) minmax(330px,1fr) minmax(250px,293px);gap:12px}
  .pub-editor-top,.pub-edit-block{padding-left:18px;padding-right:18px}
  .pub-submit-bar{padding-left:18px;padding-right:18px}
  .pub-customize summary{padding-left:18px;padding-right:18px}
  .pub-customize-body{padding-left:18px;padding-right:18px}
  .pub-api-message{margin-left:18px;margin-right:18px}
}
@media (max-width:1180px){
  .publisher{grid-template-columns:210px minmax(0,1fr)}
  .pub-preview-col{grid-column:2}
  .pub-preview-device{max-width:370px;margin:auto}
}
@media (max-width:940px){
  .publisher{grid-template-columns:minmax(0,1fr)}
  .pub-preview-col{grid-column:auto}
  .pub-account-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .pub-preview-device{max-width:400px}
}
@media (max-width:600px){
  :root{--side:242px}
  .content{padding:18px 13px 60px}
  .publisher{gap:12px}
  .pub-column{border-radius:12px}
  .pub-editor-top{padding:18px 16px}
  .pub-edit-block{padding:17px 16px}
  .pub-submit-bar{padding:17px 16px;flex-direction:column;align-items:stretch}
  .pub-submit-primary{display:grid;grid-template-columns:1fr 1fr}
  .pub-submit-bar .btn{width:100%}
  .pub-customize summary{padding:14px 16px}
  .pub-customize-body{padding:0 16px 14px}
  .pub-api-message{margin:15px 16px 0}
  .pub-account-list{grid-template-columns:1fr}
  .pub-edit-tools{flex-direction:column}
  .pub-media-picker{align-items:flex-start}
}
