/* Beyond app-family foundation: warm orange, confident charcoal, soft depth. */
:root{
  color-scheme:light;
  --accent:#e4572e;--accent-deep:#bf3a18;--accent-soft:#fff0ea;
  --accent-wash:#fff8f4;--brand-ink:#17181b;--brand-glow:rgba(228,87,46,.18);
  --bg:#f7f7f5;--panel:#fff;--panel-raised:#fff;--side:#fcfcfb;
  --text:#202124;--text-strong:#111214;--muted:#6b7280;--subtle:#9096a0;
  --border:#e5e5e2;--border-strong:#d4d4d0;--input:#fff;
  --shadow:0 1px 2px rgba(16,24,40,.06),0 1px 3px rgba(16,24,40,.10);
  --control-shadow:0 2px 5px rgba(16,24,40,.10);
  --hover-shadow:0 7px 18px rgba(16,24,40,.14);
  --ok:#0e8a63;--okbg:#e6f6ef;--warn:#a84d08;--warnbg:#fff3d6;
  --danger:#bd3732;--dangerbg:#feeeee;--info:#3157a4;--infobg:#eef4ff;
  --facebook:#1877f2;--instagram:#c13584;--google:#4285f4;
  --radius-sm:10px;--radius:14px;--radius-lg:20px;
  --sidebar:264px;--font:"Segoe UI Variable Text","Segoe UI",system-ui,-apple-system,sans-serif;
}
:root[data-theme="dark"]{
  color-scheme:dark;
  --accent:#f06b45;--accent-deep:#d94b25;--accent-soft:#3a251f;--accent-wash:#2d211e;
  --brand-ink:#f5f5f4;--brand-glow:rgba(228,87,46,.24);
  --bg:#191a1d;--panel:#242529;--panel-raised:#292a2f;--side:#202125;
  --text:#ecedee;--text-strong:#fff;--muted:#a2a7af;--subtle:#858b94;
  --border:#34363b;--border-strong:#484a51;--input:#2b2d32;
  --shadow:0 2px 5px rgba(0,0,0,.34);
  --control-shadow:0 2px 6px rgba(0,0,0,.32);
  --hover-shadow:0 8px 20px rgba(0,0,0,.42);
  --ok:#39d39b;--okbg:#133229;--warn:#f6bd58;--warnbg:#3b2d13;
  --danger:#ff7a73;--dangerbg:#3e2020;--info:#8eb4ff;--infobg:#202d49;
}

*{box-sizing:border-box}
html{height:100%;scroll-behavior:smooth}
body{min-height:100%;margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit}
button{color:inherit;box-shadow:var(--control-shadow)}
button,input,select,textarea{-webkit-tap-highlight-color:transparent}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
[hidden]{display:none!important}
.skip-link{position:fixed;z-index:1000;left:12px;top:8px;transform:translateY(-150%);background:var(--text-strong);color:var(--panel);padding:10px 14px;border-radius:8px;text-decoration:none}
.skip-link:focus{transform:translateY(0)}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

.app-shell[aria-hidden="true"]{pointer-events:none;user-select:none}

/* Permission-only client authorization page */
.access-request-mode,.team-invite-mode{background:var(--bg);overflow-x:hidden}.access-request-mode>.skip-link,.team-invite-mode>.skip-link{display:none}
.authorization-overlay{position:fixed;z-index:300;inset:0;display:grid;place-items:start center;overflow:auto;padding:clamp(18px,5vw,54px) 18px;background:radial-gradient(circle at 50% 0,color-mix(in srgb,var(--accent) 12%,var(--bg)),var(--bg) 42%)}
.authorization-card{width:min(760px,100%);min-width:0;padding:clamp(22px,4vw,38px);border:1px solid color-mix(in srgb,var(--accent) 22%,var(--border));border-radius:var(--radius-lg);background:var(--panel);box-shadow:0 24px 70px rgba(0,0,0,.18)}
.authorization-card>picture{display:grid;place-items:center;margin:-8px auto 4px}.authorization-card>picture img{display:block;object-fit:contain}
.authorization-heading-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.authorization-heading-row .eyebrow{margin:0}
.authorization-card h1{margin:8px 0 6px;color:var(--text-strong);font-size:clamp(26px,5vw,38px);letter-spacing:-.04em;line-height:1.12}.authorization-card>p:not(.privacy-note){margin:0 0 18px;color:var(--muted)}
.authorization-boundary{margin:20px 0;padding:15px;border:1px solid color-mix(in srgb,var(--ok) 34%,var(--border));border-radius:13px;background:var(--okbg);color:var(--text)}.authorization-boundary strong{display:block;color:var(--text-strong)}.authorization-boundary p{margin:4px 0 0;color:var(--muted);font-size:12px}
.authorization-business-summary{display:grid;gap:1px;margin-bottom:14px}.authorization-business-summary>span,.authorization-business-summary>small{color:var(--muted);font-size:11px}.authorization-business-summary>strong{font-size:18px;color:var(--text-strong)}
.authorization-provider-list{display:grid;gap:10px}.authorization-provider{display:grid;grid-template-columns:44px minmax(0,1fr) auto minmax(132px,auto);align-items:center;gap:12px;min-width:0;padding:14px;border:1px solid var(--border);border-radius:13px;background:var(--bg)}.authorization-provider>div{min-width:0}.authorization-provider strong,.authorization-provider small{display:block;overflow-wrap:anywhere}.authorization-provider small{margin-top:2px;color:var(--muted);font-size:11px}.authorization-provider button{min-height:44px}.authorization-status{margin-top:14px!important}.privacy-note{margin:18px 0 0;padding-top:15px;border-top:1px solid var(--border);color:var(--subtle);font-size:11px}
.team-invitation-form{display:grid;gap:6px;margin-top:18px}.team-invitation-form .lbl{margin-top:0}.team-invitation-form .actions{margin-top:10px}

.app-shell{min-height:100vh;display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr)}
.mobile-topbar,.bottom-nav{display:none}

/* Sidebar */
.side{position:sticky;top:0;height:100vh;z-index:40;display:flex;flex-direction:column;min-width:0;padding:14px;background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 3%,var(--side)) 0,var(--side) 34%);border-right:1px solid var(--border);overflow-y:auto;overscroll-behavior:contain}
.brand{display:flex;flex-direction:column;align-items:center;text-align:center;margin:0 6px 14px;padding:0 4px 18px;border-bottom:1px solid var(--border)}
.brand-mark{width:150px;height:150px;display:grid;place-items:center}
.brand-mark picture{display:grid;place-items:center}
.brand-logo{width:150px;height:150px;display:block;object-fit:contain}
.product-name{margin-top:4px;color:var(--brand-ink);font-size:16px;font-weight:760;letter-spacing:-.25px;line-height:1.2}
.product-kicker{margin-top:4px;color:var(--muted);font-size:11px;letter-spacing:.02em}
.workspace-control{margin:0 4px 14px}
.workspace-control label{display:block;margin:0 4px 6px;color:var(--muted);font-size:10px;font-weight:750;letter-spacing:.09em;text-transform:uppercase}
.workspace-select{width:100%;min-height:42px;padding:8px 34px 8px 11px;border:1px solid var(--border);border-radius:10px;background:var(--input);color:var(--text);font-weight:600;box-shadow:var(--shadow)}
.workspace-control-actions{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-top:6px}
.workspace-action{appearance:none;min-height:30px;padding:3px 5px;border:0;background:transparent;color:var(--muted);box-shadow:none;cursor:pointer;font-size:10px;font-weight:700}
.workspace-action:hover{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
.nav{display:flex;flex-direction:column;gap:3px}
.navitem{appearance:none;display:grid;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:44px;padding:9px 11px;border:0;border-radius:10px;background:transparent;color:var(--muted);text-align:left;cursor:pointer;position:relative;box-shadow:none}
.navitem svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.navitem:hover{background:var(--panel);color:var(--text);box-shadow:var(--control-shadow);transform:translateY(-1px)}
.navitem.active{background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent);font-weight:680}
.navitem.active::before{content:"";position:absolute;left:3px;top:10px;bottom:10px;width:3px;border-radius:99px;background:var(--accent)}
.nav-count{min-width:20px;padding:1px 6px;border-radius:99px;background:var(--accent);color:#fff;font-size:10px;text-align:center}
.sidefoot{margin-top:auto;display:grid;gap:8px;padding:16px 4px 4px}
.connection-line{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px;padding:0 5px}
.runtime-dot{width:8px;height:8px;border-radius:50%;background:var(--warn);box-shadow:0 0 0 4px color-mix(in srgb,var(--warn) 12%,transparent)}
.runtime-dot.ok{background:var(--ok);box-shadow:0 0 0 4px color-mix(in srgb,var(--ok) 12%,transparent)}
.runtime-dot.err{background:var(--danger);box-shadow:0 0 0 4px color-mix(in srgb,var(--danger) 12%,transparent)}
.theme-button{width:100%;display:flex;align-items:center;justify-content:center;gap:7px}
.ver{padding-left:5px;color:var(--subtle);font-size:11px}
.drawer-scrim{display:none;box-shadow:none}

/* Main and shared surfaces */
.main{min-width:0;overflow:auto;padding:30px clamp(22px,3vw,48px) 52px}
.view{width:min(1440px,100%);margin:0 auto;animation:view-in .22s ease both}
@keyframes view-in{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
.vhead{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin:0 0 22px}
.vhead h1{margin:0;color:var(--text-strong);font-size:clamp(24px,2.5vw,34px);font-weight:730;letter-spacing:-.035em;line-height:1.15}
.hero-head{align-items:flex-end;padding:10px 0 4px}
.hero-head h1{max-width:720px;font-size:clamp(30px,4vw,48px)}
.eyebrow{margin:0 0 5px;color:var(--accent);font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.head-note{max-width:760px;margin:7px 0 0;color:var(--muted);font-size:14px}
.head-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}
.panel,.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:22px}
.panel h2,.card h2{margin:0;color:var(--text-strong);font-size:17px;letter-spacing:-.015em}
.panel h3{margin:0;color:var(--text-strong);font-size:14px}
.panel-copy,.section-heading p{margin:6px 0 0;color:var(--muted);font-size:13px}
.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}
.section-heading{padding-bottom:14px;border-bottom:1px solid var(--border)}
.section-heading h2{margin:0;font-size:17px}
.muted{color:var(--muted)}
.field-note{margin:7px 0 0;color:var(--muted);font-size:12px}
.lbl{display:block;margin:18px 0 7px;color:var(--text-strong);font-size:12px;font-weight:700}
.lbl:first-child{margin-top:0}
.label-row{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}
.character-count{color:var(--muted);font-size:11px}
.input{width:100%;min-height:44px;padding:10px 12px;border:1px solid var(--border-strong);border-radius:10px;background:var(--input);color:var(--text);outline:0;box-shadow:inset 0 1px 1px rgba(16,24,40,.03)}
.input:hover{border-color:color-mix(in srgb,var(--accent) 42%,var(--border));box-shadow:var(--control-shadow);transform:translateY(-1px)}
.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}
.input:disabled{opacity:.62;cursor:not-allowed;transform:none;box-shadow:none}
textarea.input{resize:vertical;min-height:96px}
.caption-input{line-height:1.55}
.actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:22px}
.status{min-height:20px;color:var(--muted);font-size:12px}
.status.ok{color:var(--ok)}.status.err{color:var(--danger)}

/* Buttons */
.primary,.ghost,.text-button,.icon-btn,.segmented-control button,.filter-tabs button{appearance:none;min-height:44px;border-radius:10px;cursor:pointer;font-weight:650}
.primary{border:0;padding:10px 18px;background:linear-gradient(135deg,var(--accent),var(--accent-deep));color:#fff}
.primary:hover{filter:brightness(1.06);box-shadow:0 8px 18px color-mix(in srgb,var(--accent) 28%,transparent);transform:translateY(-2px)}
.primary:disabled{opacity:.5;cursor:not-allowed;filter:none;transform:none;box-shadow:none}
.ghost{padding:9px 14px;border:1px solid var(--border-strong);background:var(--panel);color:var(--text)}
.app-link-button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
.ghost:hover{background:var(--panel-raised);border-color:color-mix(in srgb,var(--accent) 38%,var(--border));box-shadow:var(--hover-shadow);transform:translateY(-2px)}
.ghost:disabled{opacity:.48;cursor:not-allowed;transform:none;box-shadow:none}
.text-button{min-height:36px;padding:4px 2px;border:0;background:transparent;color:var(--accent);box-shadow:none}
.text-button:hover{text-decoration:underline;text-underline-offset:3px;box-shadow:none}
.full-width{width:100%}
.compact{min-height:38px;padding:7px 11px}
.icon-only{width:44px;height:44px;padding:0;border:0;background:transparent;box-shadow:none}
.pill{display:inline-flex;align-items:center;justify-content:center;min-height:26px;padding:4px 10px;border-radius:999px;background:var(--warnbg);color:var(--warn);font-size:11px;font-weight:750;white-space:nowrap}
.pill.ok{background:var(--okbg);color:var(--ok)}
.pill.err{background:var(--dangerbg);color:var(--danger)}
.pill.neutral{background:color-mix(in srgb,var(--muted) 11%,transparent);color:var(--muted)}
.pill.info{background:var(--infobg);color:var(--info)}
.segmented-control{display:inline-flex;align-items:center;padding:3px;border:1px solid var(--border);border-radius:11px;background:var(--bg)}
.segmented-control button,.segmented-control label span{display:flex;align-items:center;justify-content:center;min-height:36px;padding:7px 12px;border:0;border-radius:8px;background:transparent;color:var(--muted);box-shadow:none;cursor:pointer;font-size:12px;font-weight:650}
.segmented-control button.active,.segmented-control button[aria-pressed="true"],.segmented-control label input:checked+span{background:var(--panel);color:var(--text-strong);box-shadow:var(--control-shadow)}
.segmented-control label{position:relative}
.segmented-control label input{position:absolute;opacity:0;pointer-events:none}
.segmented-control label input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}

/* Overview */
.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}
.metric-card{min-width:0;padding:18px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow)}
.metric-card>span{display:block;color:var(--muted);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.metric-card strong{display:block;margin:7px 0 2px;color:var(--text-strong);font-size:30px;line-height:1;font-variant-numeric:tabular-nums}
.metric-card small{display:block;overflow:hidden;color:var(--subtle);font-size:11px;text-overflow:ellipsis;white-space:nowrap}
.brand-metric{background:linear-gradient(140deg,var(--accent-wash),var(--panel) 72%);border-color:color-mix(in srgb,var(--accent) 24%,var(--border))}
.overview-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.75fr);gap:16px}
.compact-list{display:grid;gap:2px}
.compact-post{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:62px;padding:8px 4px;border-bottom:1px solid var(--border)}
.compact-post:last-child{border-bottom:0}
.compact-date{display:grid;place-items:center;width:44px;height:44px;border-radius:11px;background:var(--bg);color:var(--muted);font-size:10px;font-weight:750;line-height:1.15;text-transform:uppercase}
.compact-date strong{color:var(--text-strong);font-size:17px}
.compact-post-copy{min-width:0}.compact-post-copy strong,.compact-post-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.compact-post-copy small{color:var(--muted);font-size:11px}
.readiness-list{list-style:none;margin:2px 0 20px;padding:0;display:grid;gap:4px}
.readiness-list li{display:grid;grid-template-columns:26px minmax(0,1fr);gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--border)}
.readiness-list li:last-child{border-bottom:0}.readiness-list strong,.readiness-list small{display:block}.readiness-list small{color:var(--muted);font-size:11px}
.check-indicator{display:grid;place-items:center;width:22px;height:22px;border:1px solid var(--border-strong);border-radius:50%;color:var(--muted);font-size:12px}
.check-indicator.ok{border-color:var(--ok);background:var(--okbg);color:var(--ok)}.check-indicator.ok::after{content:"✓"}
.check-indicator.warn{border-color:var(--warn);background:var(--warnbg);color:var(--warn)}.check-indicator.warn::after{content:"!"}

/* Empty states */
.empty-state{display:grid;justify-items:center;padding:50px 22px;border:1px dashed var(--border-strong);border-radius:var(--radius);background:color-mix(in srgb,var(--panel) 78%,var(--bg));text-align:center}
.empty-state h2,.empty-state h3{margin:11px 0 4px}.empty-state p{max-width:480px;margin:0 0 16px;color:var(--muted);font-size:13px}
.empty-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:var(--accent-soft);color:var(--accent);font-size:20px;font-weight:700}
.compact-empty{padding:28px 18px}.compact-empty h3{font-size:14px}.compact-empty p{margin-bottom:0;font-size:12px}

/* Compose */
.composer-layout{display:grid;grid-template-columns:minmax(0,760px) minmax(280px,380px);gap:18px;align-items:start}
.composer-panel{padding:24px}
.target-fieldset,.inline-fieldset,.scope-grid{min-width:0;margin:20px 0 0;padding:0;border:0}
.target-fieldset legend,.inline-fieldset legend,.scope-grid legend{margin:0 0 8px;color:var(--text-strong);font-size:12px;font-weight:700}
.target-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.target-card{position:relative;display:grid;grid-template-columns:36px minmax(0,1fr) 20px;align-items:center;gap:9px;min-height:76px;padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--panel);cursor:pointer}
.target-card>input{position:absolute;opacity:0;pointer-events:none}
.target-card strong,.target-card small{display:block}.target-card strong{font-size:12px}.target-card small{overflow:hidden;color:var(--muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}
.target-card:has(input:checked){border-color:color-mix(in srgb,var(--accent) 56%,var(--border));background:var(--accent-wash);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 22%,transparent)}
.target-card:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}
.target-card:has(input:disabled){opacity:.48;cursor:not-allowed}
.check-box{display:grid;place-items:center;width:19px;height:19px;border:1px solid var(--border-strong);border-radius:6px;background:var(--input)}
.target-card input:checked~.check-box{border-color:var(--accent);background:var(--accent);color:#fff}.target-card input:checked~.check-box::after{content:"✓";font-size:12px;font-weight:800}
.platform-mark{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;color:#fff;font-size:19px;font-weight:800;line-height:1}
.facebook-mark{background:var(--facebook)}.instagram-mark{background:linear-gradient(135deg,#833ab4,#fd1d1d,#fcb045)}.google-mark{background:var(--google)}
.media-picker{display:flex;align-items:center;gap:14px;min-height:84px;padding:13px;border:1px dashed var(--border-strong);border-radius:12px;background:var(--bg)}
.media-picker.dragging{border-color:var(--accent);background:var(--accent-wash)}
.media-picker-copy{display:flex;align-items:center;gap:11px;min-width:0;flex:1}.media-picker-copy div{min-width:0}.media-picker-copy strong,.media-picker-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-picker-copy small{color:var(--muted);font-size:11px}
.media-picker-icon{display:grid;place-items:center;flex:0 0 38px;height:38px;border-radius:11px;background:var(--accent-soft);color:var(--accent);font-size:20px}
.schedule-choice{margin-bottom:8px}.schedule-row{display:grid;grid-template-columns:minmax(150px,1fr) minmax(130px,.8fr);gap:10px;padding:12px;border-radius:12px;background:var(--bg)}
.schedule-row label span{display:block;margin-bottom:5px;color:var(--muted);font-size:10px;font-weight:700;text-transform:uppercase}.schedule-row small{grid-column:1/-1;color:var(--muted)}
.publish-actions{padding-top:4px;border-top:1px solid var(--border)}
.preflight-panel{position:sticky;top:24px}
.preflight-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}
.preflight-list{list-style:none;margin:18px 0;padding:0;display:grid;gap:3px}
.preflight-list li{display:grid;grid-template-columns:24px minmax(0,1fr);gap:10px;padding:11px 0;border-bottom:1px solid var(--border)}
.preflight-list li:last-child{border-bottom:0}.preflight-list strong,.preflight-list small{display:block}.preflight-list strong{font-size:12px}.preflight-list small{margin-top:2px;color:var(--muted);font-size:11px}
.preflight-icon{display:grid;place-items:center;width:22px;height:22px;border:1px solid var(--border-strong);border-radius:50%;color:var(--muted);font-size:11px;font-weight:800}
.preflight-list li.pass .preflight-icon{border-color:var(--ok);background:var(--okbg);color:var(--ok)}.preflight-list li.pass .preflight-icon::after{content:"✓"}
.preflight-list li.fail .preflight-icon{border-color:var(--danger);background:var(--dangerbg);color:var(--danger)}.preflight-list li.fail .preflight-icon::after{content:"×"}
.preflight-list li.pending .preflight-icon{border-color:var(--warn);background:var(--warnbg);color:var(--warn)}.preflight-list li.pending .preflight-icon::after{content:"!"}

/* Calendar */
.calendar-head{align-items:flex-start}
.calendar-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:8px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);box-shadow:0 4px 14px rgba(16,24,40,.10)}
.month-nav{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.month-nav h2{min-width:150px;margin:0 0 0 5px;font-size:17px}
.icon-btn{display:grid;place-items:center;width:40px;min-height:40px;padding:0;border:1px solid var(--border);background:var(--panel);color:var(--text);font-size:0;line-height:0}
.icon-btn::before{content:"";display:block;width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor}
#prevMonthBtn::before{transform:rotate(135deg)}#nextMonthBtn::before{transform:rotate(-45deg)}
.icon-btn:hover{background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 42%,var(--border));color:var(--accent);box-shadow:var(--hover-shadow);transform:translateY(-2px)}
.calendar-actions{display:grid;justify-items:end;gap:9px;min-width:0}.calendar-filters{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.filter-input{width:150px;padding:8px 10px}.search-input{width:210px;padding:8px 10px}.calendar-summary{min-height:22px;margin:6px 2px 10px;color:var(--muted);font-size:12px}
.calendar-shell{min-width:0}.month-calendar{min-width:0;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius);background:var(--border);box-shadow:var(--shadow)}
.weekday-row,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));width:100%;min-width:0}
.weekday-row{gap:1px;background:var(--border)}.weekday-row div{padding:9px 8px;background:var(--panel);color:var(--muted);font-size:10px;font-weight:750;letter-spacing:.05em;text-align:center;text-transform:uppercase}
.calendar-grid{gap:1px;background:var(--border)}
.calendar-day{min-width:0;min-height:154px;padding:7px;background:var(--bg);overflow:hidden}.calendar-day.outside{background:color-mix(in srgb,var(--bg) 55%,var(--panel));opacity:.58}.calendar-day.today{box-shadow:inset 0 0 0 2px var(--accent)}
.day-number{display:flex;align-items:center;justify-content:space-between;gap:4px;min-height:25px;margin-bottom:5px;color:var(--muted);font-size:11px;font-weight:700}.day-number time{display:grid;place-items:center;width:25px;height:25px;border-radius:50%}.calendar-day.today .day-number time{background:var(--accent);color:#fff}.day-count{overflow:hidden;font-size:9px;text-overflow:ellipsis;white-space:nowrap}
.day-posts{display:grid;gap:5px}.post-card{min-width:0;overflow:hidden;border:1px solid var(--border);border-radius:9px;background:var(--panel);box-shadow:0 3px 9px rgba(16,24,40,.11)}.post-card:hover{box-shadow:var(--hover-shadow);transform:translateY(-2px)}
.post-media{position:relative;aspect-ratio:16/9;overflow:hidden;background:#16171a}.post-media img,.post-media video{display:block;width:100%;height:100%;object-fit:cover;background:#16171a}.post-media video{object-fit:contain}.post-media img:not(.loaded){opacity:0}
.media-missing{height:100%;display:grid;place-items:center;padding:10px;color:#c7c9ce;text-align:center;white-space:pre-line;font-size:10px}.media-kind{position:absolute;right:5px;top:5px;padding:2px 6px;border-radius:99px;background:rgba(16,17,20,.82);color:#fff;font-size:8px;font-weight:750;text-transform:uppercase}.video-load{position:absolute;inset:0;border:0;background:#16171a;color:#fff;cursor:pointer;font-size:10px;font-weight:650}.video-load:hover{background:#292b30;box-shadow:inset 0 0 0 2px var(--accent);transform:none}.video-load:disabled{opacity:.75;cursor:wait;transform:none}
.post-body{min-width:0;padding:7px}.post-company{overflow:hidden;margin-bottom:5px;font-size:10px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.post-meta{display:flex;align-items:center;gap:3px;min-width:0;margin-bottom:5px}.platform-badge,.status-badge{display:inline-flex;align-items:center;padding:2px 5px;border-radius:99px;color:#fff;font-size:8px;font-weight:750}.platform-badge.facebook{background:var(--facebook)}.platform-badge.instagram{background:var(--instagram)}.platform-badge.google,.platform-badge.google_business{background:var(--google)}.status-badge{background:var(--ok);text-transform:capitalize}.status-badge.failed,.status-badge.error,.status-badge.rejected,.status-badge.blocked,.status-badge.published_not_on_timeline,.status-badge.overdue_without_timeline{background:var(--danger)}.status-badge.pending,.status-badge.approval,.status-badge.approval_required,.status-badge.scheduled_without_timeline,.status-badge.published_visibility_unknown,.status-badge.published_not_public,.status-badge.overdue_unpublished,.status-badge.provider_unknown,.status-badge.partial{background:var(--warn);color:#2a1b00}.status-badge.canceled{background:var(--muted)}.post-time{margin-left:auto;color:var(--muted);font-size:8px;white-space:nowrap}.post-caption{display:-webkit-box;overflow:hidden;margin:0;color:var(--text);font-size:9px;line-height:1.35;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:3}.post-warning{display:block;margin:6px 0 0;color:var(--danger);font-size:9px;font-weight:750;line-height:1.35;white-space:normal}.hashtag-row{display:flex;gap:3px;flex-wrap:wrap;margin-top:5px;padding-top:5px;border-top:1px solid var(--border)}.hashtag{color:var(--accent);font-size:8px;font-weight:650}
.calendar-shell[data-mode="month"] .agenda-list{display:none}.calendar-shell[data-mode="agenda"] .month-calendar{display:none}.calendar-shell[data-mode="agenda"] .agenda-list{display:grid}
.agenda-list{gap:10px}.agenda-day{display:grid;grid-template-columns:92px minmax(0,1fr);gap:12px;padding:14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow)}.agenda-date{padding:4px 8px 0;color:var(--muted);font-size:11px;text-transform:uppercase}.agenda-date strong{display:block;color:var(--text-strong);font-size:20px}.agenda-items{display:grid;gap:7px}.agenda-card{display:grid;grid-template-columns:8px minmax(0,1fr) auto;gap:10px;align-items:center;min-height:56px;padding:10px;border:1px solid var(--border);border-radius:11px;background:var(--bg)}.agenda-accent{align-self:stretch;border-radius:99px;background:var(--accent)}.agenda-copy{min-width:0}.agenda-copy strong,.agenda-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.agenda-copy small{color:var(--muted);font-size:11px}.agenda-meta{text-align:right}.agenda-meta time{display:block;font-size:11px;font-weight:700}.agenda-platforms{display:flex;justify-content:flex-end;gap:3px;margin-top:4px}
.import-status{margin:8px 2px 0}

/* Connections */
.oauth-return-banner{margin-bottom:16px}.oauth-return-banner.error-banner{border-color:color-mix(in srgb,var(--danger) 40%,var(--border));background:var(--dangerbg);color:var(--danger)}
.workspace-setup-panel{margin-bottom:16px}.workspace-panel-head{margin-bottom:0}.workspace-create-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:12px;margin-top:18px;padding-top:18px;border-top:1px solid var(--border)}
.session-recovery-form{display:grid;grid-template-columns:minmax(220px,1fr) auto;align-items:end;gap:10px;margin-top:18px;padding:14px;border:1px solid color-mix(in srgb,var(--warn) 38%,var(--border));border-radius:12px;background:var(--warnbg)}.session-recovery-form .lbl{margin-top:0}.session-recovery-form .status{grid-column:1/-1}
.workspace-create-form .lbl{margin-top:0}.bootstrap-owner-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-column:1/-1;gap:0 12px;margin:0;padding:14px;border:1px solid color-mix(in srgb,var(--accent) 25%,var(--border));border-radius:12px;background:var(--accent-wash)}.bootstrap-owner-fields legend{padding:0 6px;color:var(--accent);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.workspace-create-actions{grid-column:1/-1;margin-top:2px}.workspace-form-status{grid-column:1/-1;margin:0}.workspace-create-form.bootstrap-mode{grid-template-columns:repeat(2,minmax(0,1fr))}
.connection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px}.connection-card{display:flex;flex-direction:column;min-height:246px;padding:20px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow)}.connection-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.connection-card h2{margin:17px 0 6px;font-size:17px}.connection-card p{margin:0 0 18px;color:var(--muted);font-size:13px}.connect-button{width:100%;margin-top:auto}.manage-profiles-button{margin-top:5px}.connection-note{display:block;margin-top:5px;color:var(--subtle);text-align:center;font-size:10px}
.profile-selection-panel{margin-bottom:16px;border-color:color-mix(in srgb,var(--accent) 30%,var(--border));box-shadow:0 8px 26px color-mix(in srgb,var(--accent) 10%,transparent)}.profile-choice-fieldset{min-width:0;margin:0;padding:0;border:0}.profile-choice-list{display:grid;gap:8px}.profile-choice-group{display:grid;gap:7px}.profile-choice-group+.profile-choice-group{margin-top:16px}.profile-choice-group h3{margin:0;color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.profile-choice{position:relative;display:grid;grid-template-columns:24px 40px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:64px;padding:10px 12px;border:1px solid var(--border);border-radius:11px;background:var(--bg);cursor:pointer}.profile-choice:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--border));background:var(--accent-wash)}.profile-choice>input{width:19px;height:19px;margin:0;accent-color:var(--accent)}.profile-choice strong,.profile-choice small{display:block}.profile-choice small{color:var(--muted);font-size:11px}.profile-choice-current{color:var(--ok);font-size:10px;font-weight:750}.profile-choice:has(input:checked){border-color:color-mix(in srgb,var(--accent) 55%,var(--border));background:var(--accent-wash)}
.invite-result{margin-top:14px;padding:13px;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border));border-radius:12px;background:var(--accent-wash)}.invite-result strong{display:block;color:var(--text-strong)}.invite-result p{margin:4px 0 10px;color:var(--muted);font-size:12px}.invite-link-row{display:flex;gap:8px}.invite-link-row .input{min-width:0}.profiles-panel{margin-top:0}.profile-list{display:grid;gap:8px}.profile-row{display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:11px;padding:10px;border:1px solid var(--border);border-radius:11px}.profile-row strong,.profile-row small{display:block}.profile-row small{color:var(--muted);font-size:11px}.profile-platforms{display:flex;gap:4px;flex-wrap:wrap;justify-content:flex-end}

/* Agency client -> business -> profile hierarchy */
.client-create-form,.business-create-form,.access-request-form{margin-bottom:16px}.client-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:14px}.client-form-grid>label{display:grid;gap:5px;min-width:0}.client-form-grid>label>span,.compose-context-grid label>span{color:var(--muted);font-size:11px;font-weight:750}.client-form-grid.compact-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.clients-layout{display:grid;grid-template-columns:minmax(250px,310px) minmax(0,1fr);gap:16px;align-items:start;margin-bottom:16px}.client-master{position:sticky;top:24px;min-width:0}.client-list{display:grid;gap:6px}.client-list-item{appearance:none;display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;min-height:58px;padding:8px 9px;border:1px solid transparent;border-radius:11px;background:transparent;box-shadow:none;text-align:left;cursor:pointer}.client-list-item:hover,.client-list-item.active{border-color:color-mix(in srgb,var(--accent) 30%,var(--border));background:var(--accent-wash)}.client-list-item.active{color:var(--accent)}.client-avatar{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:var(--accent-soft);font-weight:800}.client-list-item strong,.client-list-item small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-list-item small{color:var(--muted);font-size:10px}.client-list-chevron{font-size:22px}.client-detail,.client-detail-content{min-width:0}.client-detail-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}.client-detail-head h2{margin:0}.business-list{display:grid;gap:12px}.business-card{min-width:0;padding:18px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow)}.business-card.selected{border-color:color-mix(in srgb,var(--accent) 46%,var(--border));box-shadow:0 8px 26px color-mix(in srgb,var(--accent) 9%,transparent)}.business-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.business-card-head h3{margin:1px 0 2px;font-size:18px}.business-card-head small{color:var(--muted);overflow-wrap:anywhere}.business-profiles{display:grid;gap:9px;margin-top:14px}.business-profile-group{display:grid;gap:5px}.business-profile-group h4,.access-request-history h4{margin:0;color:var(--muted);font-size:10px;letter-spacing:.08em;text-transform:uppercase}.business-profile-row{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:9px;min-width:0;padding:8px 9px;border:1px solid var(--border);border-radius:10px;background:var(--bg)}.business-profile-row strong,.business-profile-row small{display:block;overflow-wrap:anywhere}.business-profile-row small{color:var(--muted);font-size:10px}.business-no-profiles{margin:0;padding:10px;border:1px dashed var(--border);border-radius:10px;color:var(--muted);font-size:12px}.business-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.business-actions button{min-height:44px}.access-request-history{display:grid;gap:6px;margin-top:14px}.access-request-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:9px;padding:9px;border:1px solid var(--border);border-radius:10px}.access-request-row strong,.access-request-row small{display:block;overflow-wrap:anywhere}.access-request-row small{color:var(--muted);font-size:10px}.access-request-form{scroll-margin-top:18px}.access-provider-fieldset{display:grid;gap:7px;margin:12px 0;padding:12px;border:1px solid var(--border);border-radius:11px}.access-provider-fieldset legend{padding:0 5px;font-weight:750}.access-provider-fieldset label{display:flex;align-items:center;gap:9px;min-height:44px}.access-provider-fieldset input{width:19px;height:19px;accent-color:var(--accent)}.direct-access-section{min-width:0;margin-top:22px;scroll-margin-top:18px}.direct-access-section>.section-heading{margin-bottom:12px}

.business-profile-row.available{border-style:dashed}.profile-availability{max-width:150px;color:var(--info);font-size:10px;font-weight:750;text-align:right;overflow-wrap:anywhere}.available-profiles h4{color:var(--info)}

/* Explicit compose context and exact-profile selection */
.compose-context-fieldset,.compose-profile-group{min-width:0;margin:0 0 16px;padding:14px;border:1px solid var(--border);border-radius:12px}.compose-context-fieldset>legend,.compose-profile-group>legend{padding:0 6px;color:var(--text-strong);font-weight:800}.compose-context-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.compose-context-grid label{display:grid;gap:5px;min-width:0}.legacy-compose-select{display:none!important}.compose-profile-groups{display:grid;gap:10px}.compose-profile-group{display:grid;gap:7px;margin:0;background:var(--bg)}.compose-profile-choice{display:grid;grid-template-columns:24px 40px minmax(0,1fr) 20px;align-items:center;gap:10px;min-width:0;min-height:60px;padding:9px 10px;border:1px solid var(--border);border-radius:10px;background:var(--panel);cursor:pointer}.compose-profile-choice:has(input:checked){border-color:color-mix(in srgb,var(--accent) 55%,var(--border));background:var(--accent-wash)}.compose-profile-choice>input{width:19px;height:19px;margin:0;accent-color:var(--accent)}.compose-profile-choice strong,.compose-profile-choice small{display:block;overflow-wrap:anywhere}.compose-profile-choice small{color:var(--muted);font-size:10px}.compose-profiles-empty{padding:14px;border:1px dashed var(--border);border-radius:11px;background:var(--bg)}.compose-profiles-empty p{margin:0 0 9px;color:var(--muted)}

/* Approvals */
.filter-tabs{display:flex;gap:4px;margin-bottom:14px;padding:3px;border-bottom:1px solid var(--border)}.filter-tabs button{min-height:40px;padding:8px 13px;border:0;border-bottom:2px solid transparent;border-radius:7px 7px 0 0;background:transparent;color:var(--muted);box-shadow:none}.filter-tabs button.active{border-color:var(--accent);color:var(--accent)}
.approval-list{display:grid;gap:10px}.approval-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;padding:18px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow)}.approval-card h2{margin:0 0 5px;font-size:15px}.approval-card p{display:-webkit-box;overflow:hidden;margin:0;color:var(--muted);font-size:12px;-webkit-box-orient:vertical;-webkit-line-clamp:3}.approval-meta{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-top:10px}.approval-actions{display:flex;align-items:center;gap:7px}.approval-decision{display:grid;gap:7px;margin-top:14px;max-width:620px}.approval-decision .approval-actions{justify-content:flex-start}.approval-findings,.approval-reason{margin-top:9px!important}.approve-button{border-color:color-mix(in srgb,var(--ok) 50%,var(--border));color:var(--ok)}.reject-button{border-color:color-mix(in srgb,var(--danger) 45%,var(--border));color:var(--danger)}
.approval-content-match{display:flex;align-items:flex-start;gap:8px;padding:10px;border:1px solid var(--border);border-radius:10px;background:var(--accent-wash);color:var(--text);font-size:12px;line-height:1.45}.approval-content-match input{flex:0 0 auto;margin-top:2px}
.approval-intent-review{display:grid;gap:7px;margin-top:12px;padding:11px;border:1px solid color-mix(in srgb,var(--accent) 32%,var(--border));border-radius:11px;background:var(--accent-wash)}.approval-intent-review h3{margin:0;color:var(--text-strong);font-size:12px}.approval-intent-review .approval-intent-schedule,.approval-intent-review .approval-intent-label{display:block;overflow:visible;color:var(--text);font-size:11px;-webkit-line-clamp:unset}.approval-intent-review time{font-weight:750}.approval-intent-label{font-weight:750}.approval-intent-targets{display:grid;gap:4px;margin:0;padding-left:18px;color:var(--text);font-size:11px}.approval-intent-targets li{overflow-wrap:anywhere}.approval-intent-missing{color:var(--danger);font-weight:750}
.post-target-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.danger-text{color:var(--danger)}

/* Brand Truth */
.brand-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.brand-layout .form-footer{grid-column:1/-1;display:flex;align-items:center;gap:13px}

/* Agents and audit */
.invite-form{max-width:760px;margin-bottom:16px}.scope-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.scope-grid label{display:flex;align-items:center;gap:8px;min-height:42px;padding:8px 10px;border:1px solid var(--border);border-radius:10px;background:var(--bg);cursor:pointer}.scope-grid input{width:18px;height:18px;accent-color:var(--accent)}.scope-grid>.field-note{grid-column:1/-1}
.agent-profile-options{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.agent-profile-options:empty::before{content:"Connect profiles before granting dispatch access.";grid-column:1/-1;padding:10px;color:var(--muted);font-size:12px}.workspace-wide-agent-scope{grid-column:1/-1}
.agent-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.agent-list{display:grid;gap:8px}.agent-row{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;border:1px solid var(--border);border-radius:11px}.agent-avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:var(--accent-soft);color:var(--accent);font-weight:800;text-transform:uppercase}.agent-copy strong,.agent-copy small{display:block}.agent-copy small{color:var(--muted);font-size:11px}.scope-pills{display:flex;gap:4px;flex-wrap:wrap;margin-top:5px}.scope-pill{padding:2px 6px;border-radius:99px;background:var(--bg);color:var(--muted);font-size:9px}.audit-list{list-style:none;margin:0;padding:0;display:grid;gap:2px}.audit-item{position:relative;padding:8px 4px 10px 22px;border-bottom:1px solid var(--border)}.audit-item::before{content:"";position:absolute;left:3px;top:14px;width:7px;height:7px;border-radius:50%;background:var(--accent)}.audit-item strong,.audit-item small{display:block}.audit-item strong{font-size:12px}.audit-item small{color:var(--muted);font-size:10px}
.revision-media-review{display:grid;gap:8px;margin-top:12px;padding:10px;border:1px solid var(--border);border-radius:12px;background:var(--bg)}.revision-media-review img,.revision-media-review video{display:block;width:100%;max-height:360px;object-fit:contain;border-radius:9px;background:#111}.revision-media-review small,.revision-media-review code{overflow-wrap:anywhere;color:var(--muted);font-size:10px}.approval-media-review{margin:12px 0}

/* Settings */
.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.setting-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;min-height:70px;padding:12px 0;border-bottom:1px solid var(--border)}.setting-row:last-child{border-bottom:0}.setting-row strong,.setting-row small{display:block}.setting-row small{margin-top:3px;color:var(--muted);font-size:11px}.web-runtime .legacy-settings{display:none}
.settings-wide{grid-column:1/-1}.team-access-form{display:grid;grid-template-columns:minmax(220px,1fr) minmax(150px,.35fr);gap:8px 12px;align-items:end}.team-access-form .actions{grid-column:1/-1}.team-access-link{margin:16px 0;padding:14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-subtle)}.copy-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.team-access-link small{display:block;margin-top:8px;color:var(--muted)}.team-access-list{display:grid;gap:8px;margin-top:16px}.team-access-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:12px;border:1px solid var(--border);border-radius:var(--radius-sm)}.team-access-row strong,.team-access-row small{display:block}.team-access-row small{margin-top:3px;color:var(--muted)}

/* Runtime notices and toast */
.app-banner{display:flex;align-items:center;gap:9px;margin:0 auto 16px;padding:10px 13px;border:1px solid color-mix(in srgb,var(--warn) 35%,var(--border));border-radius:11px;background:var(--warnbg);color:var(--warn);font-size:12px}.status-dot{width:8px;height:8px;border-radius:50%;background:currentColor}
.toast-region{position:fixed;z-index:100;right:18px;bottom:18px;display:grid;gap:8px;max-width:min(360px,calc(100vw - 32px));pointer-events:none}.toast{padding:11px 14px;border:1px solid var(--border);border-radius:11px;background:var(--text-strong);color:var(--panel);box-shadow:var(--hover-shadow);font-size:12px;animation:toast-in .2s ease both}.toast.err{background:var(--danger);color:#fff}@keyframes toast-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

.offline-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--bg)}.offline-card{width:min(480px,100%);padding:34px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--hover-shadow);text-align:center}.offline-card img{width:110px;height:110px}.offline-card h1{margin:8px 0;font-size:28px}.offline-card p{margin:0 0 20px;color:var(--muted)}

.workspace-action,.workspace-select,.icon-btn,.filter-tabs button,.scope-grid label{min-height:44px}.icon-btn{width:44px}
button,.input,.workspace-select,.target-card,.post-card,.connection-card,.metric-card{transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease,border-color .16s ease,color .16s ease,filter .16s ease}
button:active:not(:disabled),.target-card:active{transform:translateY(0) scale(.98)}

@media (max-width:1180px){
  :root{--sidebar:236px}
  .main{padding-inline:22px}
  .target-grid{grid-template-columns:1fr}
  .target-card{min-height:66px}
  .calendar-toolbar{flex-direction:column}
  .calendar-actions{width:100%;justify-items:start}.calendar-filters{justify-content:flex-start;width:100%}.search-input{flex:1;min-width:190px}
  .calendar-day{min-height:134px;padding:5px}.post-media{display:none}.post-caption{-webkit-line-clamp:2}
}

@media (max-width:900px){
  .metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .overview-grid,.composer-layout,.agent-layout{grid-template-columns:1fr}
  .preflight-panel{position:static}
  .connection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.connection-card:last-child{grid-column:1/-1}
  .brand-layout,.settings-grid{grid-template-columns:1fr}.brand-layout .form-footer{grid-column:auto}
  .team-access-form{grid-template-columns:1fr}.team-access-form .actions{grid-column:auto}.copy-row,.team-access-row{grid-template-columns:1fr}.team-access-row .pill{justify-self:start}
  .workspace-create-form{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width:760px){
  .app-shell{display:block;padding-top:calc(58px + env(safe-area-inset-top));padding-bottom:calc(70px + env(safe-area-inset-bottom))}
  .mobile-topbar{position:fixed;z-index:35;inset:0 0 auto 0;height:calc(58px + env(safe-area-inset-top));display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:end;padding:env(safe-area-inset-top) 10px 7px;background:color-mix(in srgb,var(--panel) 92%,transparent);border-bottom:1px solid var(--border);backdrop-filter:blur(14px)}
  .topbar-menu{display:grid;align-content:center;gap:4px}.topbar-menu span{display:block;width:19px;height:2px;margin:auto;border-radius:99px;background:var(--text)}
  .mobile-brand{display:flex;align-items:center;justify-content:center;gap:7px;color:var(--text-strong);font-size:13px;font-weight:750}.mobile-brand img{display:block;object-fit:contain}.mobile-topbar>.runtime-dot{justify-self:center;align-self:center}
  .side{position:fixed;z-index:60;inset:0 auto 0 0;width:min(306px,88vw);height:100dvh;padding-top:max(14px,env(safe-area-inset-top));transform:translateX(-105%);box-shadow:var(--hover-shadow);transition:transform .22s ease}
  .app-shell.drawer-open .side{transform:translateX(0)}
  .drawer-scrim{position:fixed;z-index:55;inset:0;display:block;border:0;background:rgba(13,14,16,.42);opacity:0;pointer-events:none;transition:opacity .2s ease}
  .app-shell.drawer-open .drawer-scrim{opacity:1;pointer-events:auto}
  .brand-mark{width:112px;height:112px}.brand-logo{width:112px;height:112px}
  .main{padding:20px 16px 30px;overflow:visible}
  .bottom-nav{position:fixed;z-index:45;inset:auto 0 0 0;display:grid;grid-template-columns:repeat(5,1fr);min-height:calc(66px + env(safe-area-inset-bottom));padding:5px 6px env(safe-area-inset-bottom);border-top:1px solid var(--border);background:color-mix(in srgb,var(--panel) 94%,transparent);backdrop-filter:blur(16px)}
  .bottom-navitem{appearance:none;display:grid;place-items:center;align-content:center;gap:1px;min-height:54px;padding:4px;border:0;border-radius:10px;background:transparent;color:var(--muted);box-shadow:none}.bottom-navitem>span{font-size:19px;line-height:1}.bottom-navitem small{font-size:9px;font-weight:700}.bottom-navitem.active{background:var(--accent-soft);color:var(--accent)}
  .toast-region{bottom:calc(78px + env(safe-area-inset-bottom))}
  .vhead,.hero-head{align-items:flex-start;flex-direction:column;gap:14px;margin-bottom:18px}.hero-head{padding-top:2px}.vhead h1{font-size:27px}.hero-head h1{font-size:32px}.head-actions{justify-content:flex-start;width:100%}
  .connection-grid{grid-template-columns:1fr}.connection-card:last-child{grid-column:auto}.connection-card{min-height:224px}
  .clients-layout{grid-template-columns:1fr}.client-master{position:static}.client-detail-head{align-items:flex-start}.business-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.business-actions button{width:100%}
  .calendar-toolbar{padding:11px}.calendar-actions{display:block}.calendar-mode{display:none}.calendar-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:10px}.search-input{grid-column:1/-1;width:100%;min-width:0}.filter-input{width:100%}
  .calendar-shell .month-calendar{display:none!important}.calendar-shell .agenda-list{display:grid!important}
  .agenda-day{grid-template-columns:1fr;gap:8px}.agenda-date{display:flex;align-items:baseline;gap:7px;padding:0}.agenda-date strong{font-size:17px}.agenda-card{grid-template-columns:7px minmax(0,1fr)}.agenda-meta{grid-column:2;text-align:left}.agenda-platforms{justify-content:flex-start}
  .approval-card{grid-template-columns:1fr}.approval-actions{justify-content:flex-start}
}

@media (max-width:560px){
  .panel,.card,.composer-panel{padding:17px;border-radius:12px}
  .metric-grid{gap:8px}.metric-card{padding:14px}.metric-card strong{font-size:25px}
  .target-grid,.scope-grid,.agent-profile-options{grid-template-columns:1fr}
  .media-picker{align-items:stretch;flex-direction:column}.media-picker .ghost{width:100%}
  .schedule-row{grid-template-columns:1fr}.schedule-row small{grid-column:auto}
  .publish-actions>.primary,.publish-actions>.ghost{flex:1;min-width:130px}
  .profile-row,.agent-row{grid-template-columns:38px minmax(0,1fr)}.profile-platforms,.agent-row>.ghost{grid-column:2;justify-content:flex-start}
  .setting-row{grid-template-columns:1fr}.setting-row>.pill,.setting-row>button{justify-self:start}
  .invite-link-row{flex-direction:column}.invite-link-row .ghost{width:100%}
  .authorization-overlay{padding:12px}.authorization-card{padding:22px}.authorization-heading-row{align-items:flex-start;flex-direction:column}.authorization-provider{grid-template-columns:40px minmax(0,1fr)}.authorization-provider>.pill,.authorization-provider>button{grid-column:2;justify-self:start}.authorization-provider>button{width:100%}
  .client-form-grid,.client-form-grid.compact-grid,.compose-context-grid{grid-template-columns:1fr}.client-detail-head{align-items:stretch;flex-direction:column}.client-detail-head>button{width:100%}.business-card-head{align-items:flex-start;flex-direction:column}.business-profile-row{grid-template-columns:36px minmax(0,1fr)}.business-profile-row>.pill{grid-column:2;justify-self:start}.access-request-row{grid-template-columns:1fr}.access-request-row>.pill,.access-request-row>button{justify-self:start}.business-actions{grid-template-columns:1fr}.compose-profile-choice{grid-template-columns:22px 36px minmax(0,1fr)}.compose-profile-choice>.check-box{grid-column:3}.client-create-form>.actions,.business-create-form>.actions,.access-request-form>.actions{align-items:stretch;flex-direction:column}.client-create-form>.actions button,.business-create-form>.actions button,.access-request-form>.actions button{width:100%}
  .workspace-panel-head{align-items:stretch;flex-direction:column}.workspace-panel-head>button{width:100%}.workspace-create-form,.workspace-create-form.bootstrap-mode,.bootstrap-owner-fields{grid-template-columns:1fr}.workspace-create-actions{align-items:stretch;flex-direction:column}.workspace-create-actions button{width:100%}
  .session-recovery-form{grid-template-columns:1fr}.session-recovery-form .status{grid-column:auto}.session-recovery-form .primary{width:100%}
  .profile-choice{grid-template-columns:22px 36px minmax(0,1fr)}.profile-choice>.platform-mark{width:36px;height:36px}.profile-choice-current{grid-column:3}
  .brand-layout .form-footer{align-items:stretch;flex-direction:column}.brand-layout .form-footer .primary{width:100%}
  .month-nav h2{order:-1;width:100%;margin:0 0 5px}
}

@media (max-width:560px){.business-profile-row>.profile-availability{grid-column:2;justify-self:start;max-width:none;text-align:left}}

@media (max-width:380px){.metric-grid{grid-template-columns:1fr}.calendar-filters{grid-template-columns:1fr}.search-input{grid-column:auto}}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
}

@media (forced-colors:active){.pill,.platform-mark,.target-card:has(input:checked),.runtime-dot{forced-color-adjust:auto}.navitem.active::before{background:Highlight}}

@media print{.side,.mobile-topbar,.bottom-nav,.drawer-scrim,.head-actions,.calendar-toolbar,.toast-region{display:none!important}.app-shell{display:block}.main{padding:0}.view[hidden]{display:none!important}.panel,.post-card,.calendar-day{box-shadow:none}}

/* Notifications — failure-first operator surface (workflow-parity gap 1). */
.notification-item{position:relative;padding-left:18px}
.notification-item::before{content:"";position:absolute;left:4px;top:14px;width:8px;height:8px;border-radius:50%;background:var(--muted)}
.notification-item.severity-warning::before{background:#e0a10b}
.notification-item.severity-critical::before{background:#d64545}
.notification-item.is-read{opacity:.6}
.notification-body{margin:4px 0 0;font-size:12px;color:var(--muted);overflow-wrap:anywhere}
.post-history{margin-top:10px;border-top:1px solid var(--line);padding-top:8px}
.vhead-actions{display:flex;gap:8px}

/* Login gate — full-screen signed-out front door (replaces the empty dashboard). */
.login-gate{position:fixed;z-index:400;inset:0;display:grid;place-items:center;overflow:auto;padding:clamp(16px,5vw,48px);
  background:radial-gradient(circle at 50% -10%,color-mix(in srgb,var(--accent) 16%,var(--bg)),var(--bg) 55%)}
.login-card{width:min(420px,100%);padding:clamp(24px,4vw,38px);border:1px solid color-mix(in srgb,var(--accent) 18%,var(--border));
  border-radius:var(--radius-lg);background:var(--panel);box-shadow:0 24px 70px rgba(0,0,0,.20);text-align:center}
.login-brand{display:grid;place-items:center;gap:2px;margin-bottom:14px}
.login-brand img{display:block;object-fit:contain}
.login-product{margin:6px 0 0;font-weight:700;color:var(--text-strong);letter-spacing:-.02em}
.login-tagline{margin:0;font-size:12px;color:var(--muted)}
.login-card h1{margin:10px 0 6px;color:var(--text-strong);font-size:clamp(22px,4vw,28px);letter-spacing:-.03em}
.login-copy{margin:0 0 18px;color:var(--muted);font-size:14px}
.login-body{display:grid;gap:12px;text-align:left}
.login-body .lbl{margin-bottom:-6px}
.login-body .input{width:100%}
.login-body .primary{width:100%;justify-content:center;margin-top:4px}
.login-body .ghost{width:100%;justify-content:center}
.login-hint{margin:2px 0 0;font-size:12px;color:var(--muted)}
.login-divider{display:flex;align-items:center;gap:10px;margin:18px 0 12px;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em}
.login-divider::before,.login-divider::after{content:"";flex:1;height:1px;background:var(--border)}
.login-federated-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.login-federated-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px;border:1px solid var(--border);
  border-radius:var(--radius);background:var(--bg-surface-2,transparent);color:var(--text-strong);font-weight:600;font-size:13px;cursor:not-allowed;opacity:.6}
.login-federated-note{margin:10px 0 0;font-size:11px;color:var(--muted);text-align:center}
.login-status:empty{display:none}
.login-status{margin:14px 0 0;text-align:center}
.login-legal{margin-top:18px;justify-content:center;text-align:center}
body.gated .app-shell,body.gated .bottom-nav{display:none!important}
