:root {
  --ink: #16201c;
  --muted: #718079;
  --line: #e7ebe8;
  --paper: #f6f8f6;
  --card: #ffffff;
  --green: #f6c900;
  --green-dark: #8a7000;
  --green-soft: #fff8cc;
  --dark: #0b0b0b;
  --orange: #f6c900;
  --purple: #8264e8;
  --blue: #4294eb;
  --shadow: 0 10px 30px rgba(22, 32, 28, .06);
}
* { box-sizing: border-box; }
body { margin: 0; color: var(--ink); background: var(--paper); font-family: Inter, "Segoe UI", system-ui, sans-serif; }
button, input, select, textarea { font: inherit; }
button { color: inherit; }
.app-shell { min-height: 100vh; display: flex; }
.app-shell[hidden] { display:none; }
.admin-login { min-height:100vh; display:grid; grid-template-rows:auto 1fr auto; background:linear-gradient(135deg,#fff 0%,#fff 58%,#fff9d9 100%); color:#101713; }
.admin-login[hidden] { display:none; }
.landing-nav { width:min(1440px,100%); margin:auto; padding:24px 54px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid #edf0ee; }
.landing-brand { display:flex;align-items:center;gap:12px; }.landing-brand strong,.landing-brand small { display:block; }.landing-brand strong { font:900 22px/1 Manrope; }.landing-brand small { margin-top:5px;color:#7c8781;font-size:9px;letter-spacing:1.3px;text-transform:uppercase; }.landing-brand .brand-mark { border-color:#ead76b; }
.landing-nav>span { color:#6d7872;font-size:12px; }
.landing-main { width:min(1440px,100%); margin:auto; padding:60px 54px 70px; display:grid;grid-template-columns:minmax(320px,.9fr) minmax(390px,1.2fr) minmax(300px,.72fr);gap:54px;align-items:center; }
.landing-copy h1 { max-width:540px;margin:14px 0 20px;font:800 clamp(36px,4vw,62px)/1.03 Manrope;letter-spacing:-2.7px; }.landing-copy>p { max-width:520px;margin:0;color:#5f6b65;font-size:16px;line-height:1.7; }.landing-features { display:flex;gap:9px;flex-wrap:wrap;margin-top:28px; }.landing-features span { padding:9px 12px;border:1px solid #e7e1b8;border-radius:30px;background:#fffdf0;color:#554b17;font-size:10px;font-weight:700; }
.landing-product { position:relative;min-height:430px;display:grid;place-items:center; }.product-window { width:100%;max-width:610px;border:1px solid #dde3df;border-radius:20px;background:#fff;overflow:hidden;box-shadow:0 30px 80px rgba(23,33,28,.15);transform:perspective(1200px) rotateY(-4deg) rotateX(1deg); }.product-bar { height:46px;display:flex;align-items:center;gap:7px;padding:0 16px;border-bottom:1px solid #edf0ee;background:#fbfcfb; }.product-bar i { width:7px;height:7px;border-radius:50%;background:#d9dfdc; }.product-bar b { margin-left:8px;color:#68736d;font-size:9px; }.product-body { min-height:315px;display:grid;grid-template-columns:58px 1fr; }.product-body>aside { display:grid;align-content:start;justify-items:center;gap:19px;padding:17px 0;background:#101310; }.product-body>aside em { width:30px;height:30px;display:grid;place-items:center;border-radius:9px;background:#f6c900;color:#111;font-style:normal;font-weight:900; }.product-body>aside i { width:17px;height:17px;border:2px solid #56615b;border-radius:5px; }.product-body>section { padding:30px; }.product-body section>small { color:#9a8200;font-size:9px;font-weight:800;letter-spacing:1px; }.product-body h2 { margin:8px 0 24px;font-size:24px; }.product-kpis { display:grid;grid-template-columns:repeat(3,1fr);gap:9px; }.product-kpis span { padding:14px;border:1px solid #eaeeeb;border-radius:10px;background:#fafbfa; }.product-kpis b,.product-kpis small { display:block; }.product-kpis b { font-size:22px; }.product-kpis small { margin-top:5px;color:#7a8580;font-size:8px; }.product-chart { height:125px;display:flex;align-items:flex-end;gap:12px;margin-top:24px;padding:15px;border-radius:12px;background:#f6f8f6; }.product-chart i { flex:1;border-radius:5px 5px 1px 1px;background:linear-gradient(#f6c900,#ffe77c); }.product-chart i:nth-child(1){height:38%}.product-chart i:nth-child(2){height:62%}.product-chart i:nth-child(3){height:49%}.product-chart i:nth-child(4){height:82%}.product-chart i:nth-child(5){height:70%}.product-chart i:nth-child(6){height:94%}.floating-chip { position:absolute;padding:11px 15px;border-radius:30px;background:#111;color:#fff;font-size:10px;font-weight:800;box-shadow:0 12px 35px rgba(0,0,0,.18); }.chip-workflow { left:-10px;top:82px; }.chip-insight { right:-14px;bottom:68px;background:#f6c900;color:#111; }
.login-card { width:100%; padding:34px; border:1px solid #e5e9e6; border-radius:18px; background:rgba(255,255,255,.96); box-shadow:0 24px 65px rgba(22,32,28,.12); }
.login-card h2 { margin:9px 0 7px; font:800 27px Manrope; color:var(--ink); }
.login-card>p { margin:0 0 25px; color:var(--muted); font-size:12px; }
.login-card form,.login-card label { display:grid; gap:8px; }
.login-card form { gap:16px; }
.login-card label { color:#58665f; font-size:11px; font-weight:700; }
.login-card input { height:46px; padding:0 13px; border:1px solid #dfe5e1; border-radius:9px; background:#fbfcfb; outline:none; }
.login-card input:focus { border-color:#b79b00; box-shadow:0 0 0 3px rgba(246,201,0,.14); }
.login-card .primary-button { height:46px; justify-content:center; }
.login-card small { min-height:16px; color:#a52b2b; font-size:10px; }
.landing-footer { display:flex;justify-content:center;gap:42px;flex-wrap:wrap;padding:22px 30px;border-top:1px solid #edf0ee;background:#fafbfa;color:#707b75;font-size:10px;font-weight:700;letter-spacing:.2px; }
@media(max-width:1180px){.landing-main{grid-template-columns:1fr 1fr}.landing-product{grid-column:1/3;grid-row:2}.login-card{align-self:center}.landing-copy h1{font-size:48px}}
@media(max-width:760px){.landing-nav{padding:18px 20px}.landing-nav>span{display:none}.landing-main{padding:40px 20px;grid-template-columns:1fr;gap:30px}.landing-copy h1{font-size:39px;letter-spacing:-1.8px}.landing-product{grid-column:auto;grid-row:auto;min-height:310px}.product-window{transform:none}.chip-workflow{left:0}.chip-insight{right:0}.landing-footer{gap:15px}.product-body>section{padding:20px}.product-body{min-height:260px}}
.sidebar { position: fixed; inset: 0 auto 0 0; z-index: 20; width: 256px; padding: 26px 18px 18px; display: flex; flex-direction: column; background: var(--dark); color: #dfe7e2; }
.brand { display: flex; align-items: center; gap: 11px; padding: 0 9px 25px; }
.brand-mark { width: 38px; height: 38px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.18); border-radius: 11px; background: var(--green); color: #050505; font-family: Manrope; font-weight: 900; font-size: 20px; transform: rotate(-5deg); }
.brand-mark span { transform: rotate(5deg); }
.brand strong { display: block; color: white; font: 800 19px/1 Manrope; letter-spacing: -.4px; }
.brand small { display: block; color: #809089; font-size: 10px; margin-top: 5px; text-transform: uppercase; letter-spacing: 1px; }
.create-button { margin: 0 5px 22px; border: 0; border-radius: 10px; padding: 11px 14px; background: var(--green); color: #080808; font-weight: 800; text-align: left; cursor: pointer; box-shadow: 0 8px 22px rgba(246,201,0,.16); }
.create-button span { margin-right: 7px; font-size: 18px; }
.nav { overflow-y: auto; scrollbar-width: none; }
.nav-label { margin: 16px 12px 7px; color: #64736c; font-size: 9px; font-weight: 700; text-transform: uppercase; letter-spacing: 1.4px; }
.nav-item { width: 100%; display: flex; align-items: center; gap: 12px; margin: 2px 0; padding: 10px 12px; border: 0; border-radius: 8px; background: transparent; color: #9caaa3; font-size: 13px; cursor: pointer; text-align: left; transition: .2s; }
.nav-item:hover { color: white; background: rgba(255,255,255,.04); }
.nav-item.active { color: white; background: rgba(255,255,255,.08); }
.nav-item.active .icon { color: var(--green); }
.icon { width: 18px; color: #74847c; font-size: 18px; text-align: center; }
.beta { margin-left: auto; padding: 2px 5px; border-radius: 4px; background: rgba(56,216,137,.14); color: var(--green); font-size: 7px; letter-spacing: .6px; }
.sidebar-footer { margin-top: auto; }
.usage { padding: 14px 10px; border-top: 1px solid rgba(255,255,255,.08); }
.usage div:first-child { display: flex; justify-content: space-between; color: #7e8d86; font-size: 9px; }
.usage b { color: #9daba4; font-weight: 500; }
.progress { height: 3px; margin-top: 8px; border-radius: 5px; background: #27302c; overflow: hidden; }
.progress i { display: block; width: 24%; height: 100%; background: var(--green); }
.profile-card { width: 100%; display: flex; align-items: center; gap: 9px; padding: 12px 9px 4px; border: 0; border-top: 1px solid rgba(255,255,255,.08); background: transparent; color: white; text-align: left; }
.avatar { width: 32px; height: 32px; display: grid; place-items: center; border-radius: 9px; background: #24312b; color: var(--green); font-size: 10px; font-weight: 700; }
.profile-card b, .profile-card small { display: block; }
.profile-card b { font-size: 10px; }.profile-card small { color: #72817a; font-size: 9px; margin-top: 2px; }.more { margin-left: auto; color: #64736c; }
.main { min-width: 0; flex: 1; margin-left: 256px; }
.topbar { height: 68px; display: flex; align-items: center; justify-content: space-between; padding: 0 35px; border-bottom: 1px solid var(--line); background: rgba(255,255,255,.85); backdrop-filter: blur(12px); position: sticky; top: 0; z-index: 10; }
.breadcrumb { display: flex; gap: 10px; align-items: center; font-size: 12px; }.breadcrumb span,.breadcrumb b { color: #a6b0ab; }.breadcrumb b { font-weight: 400; }.breadcrumb strong { font-weight: 600; }
.top-actions { display: flex; align-items: center; gap: 7px; }.icon-button { position: relative; width: 34px; height: 34px; border: 1px solid var(--line); border-radius: 9px; background: white; cursor: pointer; }.notification i { position: absolute; width: 5px; height: 5px; border-radius: 50%; background: #f36565; right: 7px; top: 7px; border: 1px solid white; }.period-button { height: 34px; padding: 0 12px; border: 1px solid var(--line); border-radius: 9px; background: white; font-size: 11px; cursor: pointer; }.period-button span { margin-left: 10px; color: #9aa69f; }
.client-context { display:flex; align-items:center; gap:7px; height:34px; padding:0 5px 0 10px; border:1px solid var(--line); border-radius:9px; background:white; }.client-context span { color:#8a9690; font-size:8px; font-weight:700; text-transform:uppercase; letter-spacing:.5px; }.client-context select { max-width:180px; border:0; background:transparent; outline:none; font-size:10px; font-weight:700; }
.mobile-menu { display: none; border: 0; background: transparent; font-size: 20px; }
.view { padding: 32px 35px 55px; max-width: 1500px; margin: 0 auto; }
.page-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; margin-bottom: 27px; }.eyebrow { color: var(--green-dark); font-size: 9px; font-weight: 800; letter-spacing: 1.3px; }.page-heading h1 { margin: 6px 0 5px; font: 800 26px/1.1 Manrope; letter-spacing: -.8px; }.page-heading p { margin: 0; color: var(--muted); font-size: 12px; }.primary-button,.secondary-button { border-radius: 9px; padding: 10px 14px; font-size: 11px; font-weight: 700; cursor: pointer; }.primary-button { border: 1px solid var(--dark); background: var(--dark); color: white; }.secondary-button { border: 1px solid var(--line); background: white; }
.stats-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 13px; margin-bottom: 14px; }.stat-card { min-width: 0; padding: 17px; border: 1px solid var(--line); border-radius: 12px; background: var(--card); box-shadow: 0 3px 12px rgba(10,25,18,.02); }.stat-top { display: flex; justify-content: space-between; align-items: center; color: var(--muted); font-size: 10px; }.stat-icon { width: 26px; height: 26px; display: grid; place-items: center; border-radius: 7px; background: var(--green-soft); color: var(--green-dark); font-weight: 700; }.stat-value { margin: 12px 0 7px; font: 800 23px Manrope; letter-spacing: -.7px; }.delta { color: var(--green-dark); font-size: 9px; font-weight: 700; }.delta.neutral { color: var(--muted); }.delta.down { color: #dc6868; }.delta-note { color: #9aa59f; font-size: 9px; margin-left: 4px; }
.dashboard-grid { display: grid; grid-template-columns: minmax(0,1.55fr) minmax(300px,.85fr); gap: 14px; }.card { border: 1px solid var(--line); border-radius: 12px; background: var(--card); box-shadow: 0 3px 12px rgba(10,25,18,.02); overflow: hidden; }.card-header { display: flex; align-items: center; justify-content: space-between; padding: 17px 19px; border-bottom: 1px solid var(--line); }.card-header h2 { margin: 0; font: 700 13px Manrope; }.card-header p { margin: 4px 0 0; color: var(--muted); font-size: 9px; }.text-button { border: 0; background: none; color: var(--green-dark); font-size: 10px; font-weight: 700; cursor: pointer; }
.performance { min-height: 318px; }.chart-wrap { padding: 18px 20px 14px; }.chart-legend { display: flex; gap: 17px; margin-bottom: 8px; color: var(--muted); font-size: 9px; }.chart-legend i { display: inline-block; width: 7px; height: 7px; border-radius: 50%; margin-right: 5px; background: var(--green); }.chart-legend span:last-child i { background: #c8d1cc; }.chart { width: 100%; height: 190px; overflow: visible; }.grid-line { stroke: #edf0ee; stroke-width: 1; }.chart-fill { fill: url(#areaGradient); }.chart-main { fill: none; stroke: var(--green); stroke-width: 2.5; stroke-linecap: round; stroke-linejoin: round; }.chart-secondary { fill: none; stroke: #cbd3cf; stroke-width: 1.5; stroke-dasharray: 4 5; }.chart-point { fill: white; stroke: var(--green); stroke-width: 2; }.axis { display: flex; justify-content: space-between; margin: -8px 3px 0; color: #a2aca7; font-size: 8px; }
.performance-kpis { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; padding: 28px 20px 12px; }.performance-kpis div { padding: 14px; border-radius: 14px; background: #f5f8f6; }.performance-kpis span { display: block; color: var(--muted); font-size: 10px; }.performance-kpis b { display: block; margin-top: 6px; color: var(--ink); font-size: 24px; letter-spacing: -.06em; }.performance-note { margin: 4px 20px 18px; color: var(--muted); font-size: 11px; line-height: 1.55; }.performance-note a { color: var(--ink); font-weight: 700; }.connection-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
.schedule-list { padding: 7px 18px 10px; }.schedule-item { display: grid; grid-template-columns: 38px 34px 1fr auto; gap: 10px; align-items: center; padding: 11px 0; border-bottom: 1px solid #f0f2f1; }.schedule-item:last-child { border: 0; }.date-box { text-align: center; }.date-box b { display: block; font: 700 15px Manrope; }.date-box span { color: var(--muted); font-size: 8px; text-transform: uppercase; }.client-dot { width: 31px; height: 31px; display: grid; place-items: center; border-radius: 9px; background: #edf4f0; color: var(--green-dark); font-size: 9px; font-weight: 800; }.schedule-info b { display: block; max-width: 155px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; font-size: 10px; }.schedule-info span { color: var(--muted); font-size: 8px; }.status { padding: 4px 7px; border-radius: 20px; background: #f0f2f1; color: #6d7973; font-size: 7px; font-weight: 700; text-transform: uppercase; }.status.scheduled { background: var(--green-soft); color: var(--green-dark); }.status.review { background: #fff2df; color: #b36c18; }
.lower-grid { display: grid; grid-template-columns: 1.2fr .8fr; gap: 14px; margin-top: 14px; }.client-table { width: 100%; border-collapse: collapse; }.client-table th { padding: 10px 18px; background: #fafbfa; color: #94a099; font-size: 8px; text-align: left; text-transform: uppercase; letter-spacing: .5px; }.client-table td { padding: 12px 18px; border-top: 1px solid #f0f2f1; font-size: 9px; }.client-name { display: flex; align-items: center; gap: 8px; font-weight: 600; }.mini-avatar { width: 25px; height: 25px; display: grid; place-items: center; border-radius: 7px; background: #eaf2ee; color: var(--green-dark); font-size: 8px; font-weight: 800; }.mini-progress { width: 70px; height: 4px; border-radius: 5px; background: #edf0ee; }.mini-progress i { display: block; height: 100%; border-radius: inherit; background: var(--green); }
.insight { padding: 18px; background: linear-gradient(145deg, #14221c, #0f1814); color: white; min-height: 205px; position: relative; overflow: hidden; }.insight::after { content:"✦"; position: absolute; right: -12px; top: -30px; color: rgba(56,216,137,.08); font-size: 140px; }.insight .ai-label { color: var(--green); font-size: 8px; font-weight: 800; letter-spacing: 1px; }.insight h3 { max-width: 300px; margin: 14px 0 9px; font: 700 15px/1.35 Manrope; }.insight p { max-width: 350px; margin: 0 0 17px; color: #a9b7b0; font-size: 9px; line-height: 1.55; }.insight button { border: 1px solid rgba(255,255,255,.13); border-radius: 8px; padding: 8px 10px; background: rgba(255,255,255,.06); color: white; font-size: 9px; cursor:pointer; }
.module-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }.module-card { min-height: 170px; padding: 20px; border: 1px solid var(--line); border-radius: 12px; background: white; }.module-card .big-icon { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 10px; background: var(--green-soft); color: var(--green-dark); font-size: 18px; }.module-card h3 { margin: 16px 0 7px; font: 700 14px Manrope; }.module-card p { margin: 0; color: var(--muted); font-size: 10px; line-height: 1.55; }.empty-state { padding: 58px 25px; text-align: center; }.empty-state .empty-icon { width: 52px; height: 52px; display: grid; place-items: center; margin: 0 auto 14px; border-radius: 15px; background: var(--green-soft); color: var(--green-dark); font-size: 23px; }.empty-state h3 { margin: 0 0 8px; font: 700 15px Manrope; }.empty-state p { margin: 0 auto 18px; max-width: 340px; color: var(--muted); font-size: 10px; line-height: 1.5; }
.modal-backdrop { position: fixed; inset: 0; z-index: 50; display: grid; place-items: center; padding: 20px; background: rgba(7,14,11,.68); backdrop-filter: blur(5px); }.modal-backdrop[hidden] { display: none; }.modal { position: relative; width: min(480px,100%); padding: 28px; border-radius: 16px; background: white; box-shadow: 0 25px 90px rgba(0,0,0,.25); }.modal-close { position: absolute; right: 17px; top: 14px; border: 0; background: transparent; color: #8a958f; font-size: 24px; cursor: pointer; }.modal h2 { margin: 8px 0 6px; font: 800 22px Manrope; }.modal > p { margin: 0 0 22px; color: var(--muted); font-size: 11px; }.modal form { display: grid; gap: 14px; }.modal label { display: grid; gap: 6px; color: #58665f; font-size: 10px; font-weight: 700; }.modal input,.modal select { width: 100%; height: 40px; padding: 0 11px; border: 1px solid #dfe5e1; border-radius: 8px; background: #fbfcfb; color: var(--ink); outline: none; }.modal input:focus,.modal select:focus { border-color: var(--green); box-shadow: 0 0 0 3px rgba(56,216,137,.1); }.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }.modal .primary-button { margin-top: 5px; height: 42px; }
.toast { position: fixed; right: 24px; bottom: 24px; z-index: 80; padding: 12px 16px; border-radius: 9px; background: var(--dark); color: white; font-size: 10px; opacity: 0; transform: translateY(10px); pointer-events: none; transition: .25s; box-shadow: var(--shadow); }.toast.show { opacity: 1; transform: translateY(0); }
@media (max-width: 1050px) { .stats-grid { grid-template-columns: repeat(2,1fr); }.dashboard-grid,.lower-grid { grid-template-columns: 1fr; }.module-grid { grid-template-columns: repeat(2,1fr); } }
@media (max-width: 720px) { .sidebar { transform: translateX(-100%); transition: .25s; box-shadow: 20px 0 50px rgba(0,0,0,.25); }.sidebar.open { transform: none; }.main { margin-left: 0; }.topbar { padding: 0 16px; }.mobile-menu { display: block; }.breadcrumb span,.breadcrumb b { display:none; }.top-actions .icon-button,.period-button { display:none; }.client-context span { display:none; }.client-context select { max-width:130px; }.view { padding: 25px 16px 45px; }.page-heading { align-items: flex-start; flex-direction: column; }.page-heading h1 { font-size: 23px; }.stats-grid,.module-grid { grid-template-columns: 1fr; }.form-row { grid-template-columns: 1fr; }.client-table th:nth-child(3),.client-table td:nth-child(3) { display:none; } }

/* RLabs operational UI */
.modal input,.modal select,.modal textarea { width:100%; padding:0 11px; border:1px solid #dfe5e1; border-radius:8px; background:#fbfcfb; color:var(--ink); outline:none; }
.modal input,.modal select { height:40px; }.modal textarea { padding-top:10px; resize:vertical; }
.modal input:focus,.modal select:focus,.modal textarea:focus { border-color:var(--green); box-shadow:0 0 0 3px rgba(246,201,0,.14); }
.kanban { display:grid; grid-template-columns:repeat(7,minmax(180px,1fr)); gap:12px; overflow-x:auto; padding-bottom:12px; }
.kanban-column { min-height:390px; border:1px solid var(--line); border-top:3px solid var(--green); border-radius:11px; background:#f0f2f0; }
.kanban-head { display:flex; align-items:center; justify-content:space-between; padding:13px 12px; background:white; border-radius:8px 8px 0 0; font-size:10px; font-weight:800; }
.kanban-head span { min-width:20px; padding:3px 6px; border-radius:20px; background:#f1f2f1; text-align:center; }
.kanban-body { display:grid; gap:8px; padding:9px; }.kanban-card { padding:11px; border:1px solid #e2e5e3; border-radius:8px; background:white; box-shadow:0 2px 7px rgba(0,0,0,.03); }
.kanban-card b { display:block; margin-bottom:7px; font-size:10px; line-height:1.35; }.kanban-card small { color:var(--muted); font-size:8px; }
.kanban-card .kanban-meta { display:flex; align-items:center; justify-content:space-between; margin-top:10px; }.kanban-card .mini-avatar { width:22px;height:22px; }.kanban-empty { padding:30px 10px; color:#98a19c; font-size:9px; text-align:center; }
.client-meta { display:flex; gap:6px; flex-wrap:wrap; margin-top:13px; }.client-meta span { padding:4px 7px; border-radius:20px; background:#f4f5f4; color:#67736c; font-size:8px; }
.module-card.client-card { min-height:205px; position:relative; }.client-card .connected-dot { position:absolute; right:18px; top:18px; width:8px; height:8px; border-radius:50%; background:var(--green); box-shadow:0 0 0 4px var(--green-soft); }.client-card .connected-dot.offline { background:#aab1ad;box-shadow:0 0 0 4px #f0f2f1; }.client-card-actions { display:flex;gap:6px;flex-wrap:wrap; }.client-card-actions .social-action { border-color:#d1b000;background:#fffdf2; }
.card-action { margin-top:14px; padding:7px 10px; border:1px solid var(--line); border-radius:8px; background:white; color:var(--ink); font-size:9px; font-weight:700; cursor:pointer; }.card-action:hover { border-color:var(--green); background:#fffdf2; }
.toolbar { display:flex; gap:8px; align-items:center; margin-bottom:14px; }.toolbar select,.toolbar input { height:36px; padding:0 10px; border:1px solid var(--line); border-radius:8px; background:white; font-size:10px; }
.calendar-card { overflow-x:auto; }.calendar-title { text-align:center; }.calendar-title h2 { font-size:14px; }.weekdays,.calendar-grid { min-width:760px; display:grid; grid-template-columns:repeat(7,1fr); }.weekdays { background:#fafbfa; border-bottom:1px solid var(--line); }.weekdays span { padding:10px; color:#87928c; font-size:9px; font-weight:700; text-align:center; text-transform:uppercase; }.calendar-day { min-height:118px; padding:8px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); background:white; }.calendar-day:nth-child(7n) { border-right:0; }.calendar-day.outside { background:#fafbfa; }.day-number { display:grid; place-items:center; width:23px; height:23px; margin-left:auto; border-radius:50%; color:#69756f; font-size:9px; }.calendar-day.today .day-number { background:var(--green); color:#090909; font-weight:800; }.calendar-post { width:100%; display:block; position:relative; margin-top:5px; padding:6px 6px 6px 10px; border:0; border-radius:6px; background:var(--green-soft); text-align:left; cursor:pointer; overflow:hidden; }.calendar-post i { position:absolute; inset:0 auto 0 0; width:3px; background:var(--green); }.calendar-post b,.calendar-post small { display:block; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }.calendar-post b { font-size:8px; }.calendar-post small { margin-top:2px; color:#7b847f; font-size:7px; }
.kanban-card { width:100%; color:var(--ink); text-align:left; cursor:pointer; }.permission-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; padding:12px; border:1px solid var(--line); border-radius:9px; }.permission-grid legend { padding:0 6px; color:#68746e; font-size:10px; font-weight:700; }.permission-grid label { display:flex!important; grid-template-columns:none!important; align-items:center; gap:7px!important; }.permission-grid input { width:15px!important; height:15px!important; }
.user-card { min-height:190px; }.role-badge { display:inline-flex; margin-top:8px; padding:4px 7px; border-radius:20px; background:var(--green-soft); color:#6e5a00; font-size:8px; font-weight:800; }.access-list { display:grid; gap:5px; margin-top:13px; }.access-row { display:flex; justify-content:space-between; gap:10px; padding-top:6px; border-top:1px solid #f0f2f1; color:#65716b; font-size:8px; }.access-row b { color:var(--ink); }
.detail-modal { width:min(720px,100%); max-height:88vh; overflow-y:auto; }.detail-summary { display:grid; grid-template-columns:1fr auto; gap:14px; padding:13px; border-radius:10px; background:#f6f7f6; }.detail-summary b,.detail-summary span { display:block; }.detail-summary span { margin-top:4px; color:var(--muted); font-size:9px; }.detail-section { margin-top:18px; }.detail-section h3 { margin:0 0 9px; font-size:11px; }.media-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:7px; }.media-thumb { aspect-ratio:1; border-radius:8px; object-fit:cover; width:100%; background:#ecefed; }.file-card { display:grid; place-items:center; aspect-ratio:1; border-radius:8px; background:#ecefed; color:#64716a; font-size:8px; text-align:center; padding:5px; }.comment { padding:9px 0; border-bottom:1px solid var(--line); }.comment b { display:block; font-size:9px; }.comment p { margin:4px 0 0; color:#64716a; font-size:9px; }.comment-form { display:flex; gap:7px; margin-top:9px; }.comment-form input { flex:1; height:36px; }.detail-actions { display:flex; gap:7px; flex-wrap:wrap; margin-top:16px; }.approval-card { padding:10px; border:1px solid var(--line); border-radius:8px; font-size:9px; }.approval-card + .approval-card { margin-top:6px; }
.danger-button { padding:10px 14px; border:1px solid #efb3b3; border-radius:9px; background:#fff7f7; color:#b52929; font-size:11px; font-weight:700; cursor:pointer; }.history-list { display:grid; gap:6px; }.history-item { display:flex; justify-content:space-between; gap:12px; padding:8px 10px; border-radius:8px; background:#f7f8f7; font-size:9px; }.history-item span { font-weight:700; }.history-item small { color:var(--muted); text-align:right; }
.approval-flow { flex:1 1 100%;display:grid;gap:7px;padding:10px;border-radius:9px;background:#f7f8f7; }.approval-flow input { width:100%;height:36px;padding:0 10px;border:1px solid var(--line);border-radius:7px;background:white; }.approval-flow>div { display:flex;gap:7px; }.client-approval-send { flex:1 1 100%;display:grid;grid-template-columns:1fr auto;gap:7px; }.client-approval-send select { min-height:38px;padding:0 9px;border:1px solid var(--line);border-radius:8px;background:white; }.approval-waiting { flex:1 1 100%;display:grid;gap:3px;padding:11px;border-left:3px solid var(--green);border-radius:7px;background:#fffbed;font-size:9px; }.approval-waiting span,.approval-hint { color:var(--muted);font-size:8px; }.approval-hint { flex:1 1 100%; }
.media-item { position:relative; }.media-item>span { position:absolute;left:6px;top:6px;display:grid;place-items:center;width:20px;height:20px;border-radius:6px;background:var(--dark);color:white;font-size:8px;font-weight:800; }.media-actions { display:grid;grid-template-columns:1fr 1fr 1fr;gap:3px;margin-top:4px; }.media-actions button { height:25px;border:1px solid var(--line);border-radius:6px;background:white;font-size:10px;cursor:pointer; }.media-actions button:last-child { color:#b52929; }.media-actions button:disabled { opacity:.35;cursor:not-allowed; }
.content-list { display:grid; gap:8px; }.content-row,.publishing-row { width:100%; display:flex; align-items:center; gap:12px; padding:12px 14px; border:1px solid var(--line); border-radius:10px; background:white; color:var(--ink); text-align:left; cursor:pointer; }.content-row:hover,.publishing-row:hover { border-color:#d1b000; box-shadow:0 5px 16px rgba(0,0,0,.04); }.content-main { min-width:0; flex:1; }.content-main b,.content-main small { display:block; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }.content-main b { font-size:10px; }.content-main small { margin-top:4px; color:var(--muted); font-size:8px; }.media-count { color:#78847d; font-size:8px; }.publishing-row { border:0; border-bottom:1px solid var(--line); border-radius:0; }.publishing-row:last-child { border-bottom:0; }.publishing-row .schedule-info { flex:1; }
.report-card { color:var(--ink); text-align:left; padding:0; overflow:hidden; }.report-card:hover { border-color:#d1b000; }.report-card-open { width:100%; padding:20px; border:0; background:transparent; color:inherit; text-align:left; cursor:pointer; }.report-card-open h3 { margin:12px 0 5px; }.report-card-open p { margin:0; }.report-card .report-delete { width:100%; padding:11px 20px; border:0; border-top:1px solid var(--line); background:#fffafa; text-align:left; cursor:pointer; }.report-builder-head { display:grid; grid-template-columns:auto 1fr auto; gap:18px; align-items:center; margin-bottom:18px; }.report-builder-head h1 { margin:5px 0 3px; font-size:20px; }.report-builder-head p { margin:0;color:var(--muted);font-size:9px; }.report-builder { display:grid; grid-template-columns:220px 1fr; gap:14px; min-height:650px; }.widget-catalog { padding:14px; border:1px solid var(--line); border-radius:12px; background:white; align-self:start; position:sticky; top:85px; }.widget-catalog h2 { margin:0;font-size:14px; }.widget-catalog>p { margin:4px 0 12px;color:var(--muted);font-size:9px; }.widget-catalog button { width:100%;display:flex;align-items:center;gap:9px;margin:5px 0;padding:9px;border:1px solid transparent;border-radius:7px;background:#f7f8f7;color:#4f5b55;font-size:9px;text-align:left;cursor:grab; }.widget-catalog button:hover { border-color:var(--green);background:var(--green-soft); }.widget-catalog button span { width:20px;color:#806900;font-size:14px;text-align:center; }.report-canvas { padding:18px;border:1px solid var(--line);border-radius:12px;background:#e9ecea; }.report-column { min-height:600px;padding:12px;border:2px dashed transparent;border-radius:9px;background:white;transition:.2s; }.report-column.drag-over { border-color:var(--green);background:#fffdf0; }.drop-empty { display:grid;place-items:center;height:560px;color:#9aa39e;font-size:10px; }.report-widget { margin-bottom:12px;border:1px solid var(--line);border-radius:9px;background:white;overflow:hidden;box-shadow:0 3px 10px rgba(0,0,0,.03); }.report-widget header { display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;padding:11px 13px;border-bottom:2px solid var(--green); }.report-widget header span { color:#806900; }.report-widget header b { font-size:10px; }.report-widget header button { border:0;background:none;color:#89948e;font-size:17px;cursor:pointer; }.widget-placeholder { min-height:150px;display:grid;place-content:center;text-align:center; }.widget-placeholder strong,.widget-placeholder small { display:block; }.widget-placeholder strong { color:#66716b;font-size:10px; }.widget-placeholder small { margin-top:5px;color:#9ba49f;font-size:8px; }
.report-context { display:flex;align-items:center;gap:9px;flex-wrap:wrap;color:var(--muted);font-size:10px; }.report-context label { display:flex;align-items:center;gap:6px;font-weight:700; }.report-context select { height:30px;padding:0 25px 0 9px;border:1px solid var(--line);border-radius:7px;background:white;color:var(--ink);font:inherit; }.report-context small::before { content:"·";margin-right:9px; }
.widget-kpis { display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:15px; }.widget-kpis>div { padding:12px;border-radius:8px;background:#f7f8f7; }.widget-kpis span,.widget-kpis b { display:block; }.widget-kpis span { color:var(--muted);font-size:8px; }.widget-kpis b { margin-top:6px;font-size:20px; }.widget-source { margin:0 15px 15px;color:var(--muted);font-size:8px; }.operational-funnel { display:flex;flex-direction:column;align-items:center;gap:5px;padding:18px; }.operational-funnel>div { min-width:180px;display:flex;justify-content:space-between;padding:10px 13px;border-radius:5px;background:linear-gradient(90deg,var(--green),#ffe566);font-size:9px; }.single-kpi { padding:28px;text-align:center; }.single-kpi span,.single-kpi b,.single-kpi small { display:block; }.single-kpi span { color:var(--muted);font-size:9px; }.single-kpi b { margin:7px 0;font-size:32px; }.single-kpi small { color:var(--muted);font-size:8px; }.widget-table-wrap { overflow-x:auto;padding:10px; }.widget-table { width:100%;border-collapse:collapse;font-size:8px; }.widget-table th,.widget-table td { padding:8px;border-bottom:1px solid var(--line);text-align:left; }.widget-table th { color:var(--muted);text-transform:uppercase; }.operational-bars { display:grid;gap:8px;padding:16px; }.operational-bars>small { margin-bottom:4px;color:var(--muted);font-size:8px; }.operational-bars>div { display:grid;grid-template-columns:110px 1fr 25px;gap:8px;align-items:center;font-size:8px; }.operational-bars i { height:9px;border-radius:9px;background:#f0f1ef;overflow:hidden; }.operational-bars i b { display:block;height:100%;border-radius:9px;background:var(--green); }.timeline-bars { min-height:190px;display:flex;align-items:flex-end;gap:8px;padding:25px 16px 16px;overflow-x:auto; }.timeline-bars>div { min-width:40px;display:grid;justify-items:center;gap:4px; }.timeline-bars i { width:18px;border-radius:5px 5px 0 0;background:var(--green); }.timeline-bars span,.timeline-bars b { font-size:7px; }.widget-insight { margin:15px;padding:16px;border-left:3px solid var(--green);border-radius:7px;background:#fffbed; }.widget-insight span,.widget-insight strong { display:block; }.widget-insight span { color:#806900;font-size:8px;font-weight:800; }.widget-insight strong { margin-top:8px;font-size:10px; }.widget-insight p { margin:7px 0 0;color:#5f6964;font-size:9px;line-height:1.55; }
.social-line-chart { padding:18px 18px 12px; }.social-line-chart svg { width:100%;height:210px;overflow:visible; }.social-line-chart line { stroke:#e0e5e2;stroke-width:2; }.social-line-chart polyline { fill:none;stroke:var(--green);stroke-width:5;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke; }.social-line-labels { display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:9px; }.social-line-labels b { color:var(--ink); }.pie-widget { display:grid;grid-template-columns:180px 1fr;gap:28px;align-items:center;padding:24px; }.pie-ring { width:170px;aspect-ratio:1;display:grid;place-content:center;border-radius:50%;position:relative;text-align:center; }.pie-ring::after { content:"";position:absolute;inset:30px;border-radius:50%;background:white; }.pie-ring b,.pie-ring span { position:relative;z-index:1;display:block; }.pie-ring b { font-size:28px; }.pie-ring span { color:var(--muted);font-size:9px; }.pie-legend { display:grid;gap:10px; }.pie-legend>div { display:grid;grid-template-columns:12px 1fr auto;gap:8px;align-items:center;font-size:10px; }.pie-legend i { width:10px;height:10px;border-radius:50%; }.top-posts { display:grid;padding:8px 16px 18px; }.top-posts a { display:grid;grid-template-columns:28px 1fr auto;gap:11px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none; }.top-posts a>span { width:27px;height:27px;display:grid;place-items:center;border-radius:50%;background:var(--green-soft);font-weight:800; }.top-posts a b,.top-posts a small { display:block; }.top-posts a b { font-size:10px; }.top-posts a small { margin-top:4px;color:var(--muted);font-size:8px; }.top-posts a>strong { color:#8a7100; }
.report-preview-modal { width:min(1040px,96vw);max-height:92vh;padding:0;overflow:auto; }.report-preview-heading { padding:34px 38px 24px;border-bottom:1px solid var(--line); }.report-preview-heading h2 { margin:8px 0 5px;font-size:28px; }.report-preview-heading p { margin:0;color:var(--muted);font-size:11px; }.report-preview-body { display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:24px 38px;background:#f6f7f6; }.report-preview-widget { overflow:hidden;border:1px solid var(--line);border-radius:11px;background:white; }.report-preview-widget:has(.widget-kpis),.report-preview-widget:has(.widget-table-wrap),.report-preview-widget:has(.social-line-chart),.report-preview-widget:has(.top-posts) { grid-column:1/-1; }.report-preview-widget>h3 { margin:0;padding:13px 16px;border-bottom:2px solid var(--green);font-size:12px; }.report-preview-actions { display:flex;justify-content:flex-end;gap:9px;padding:18px 38px;border-top:1px solid var(--line);background:white; }
@media(max-width:850px){.report-builder{grid-template-columns:1fr}.widget-catalog{position:static}.widget-catalog button{display:inline-flex;width:auto;margin:3px}.report-builder-head{grid-template-columns:1fr}.report-builder-head>button{justify-self:start}.widget-kpis{grid-template-columns:1fr 1fr}}
.integration-grid { display:grid;grid-template-columns:repeat(2,1fr);gap:13px; }.integration-card { display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:start;padding:20px;border:1px solid var(--line);border-radius:12px;background:white; }.integration-card.disabled { opacity:.65; }.integration-logo { width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:var(--green-soft);color:#8a7000;font-size:20px; }.integration-card h3 { margin:2px 0 6px;font-size:13px; }.integration-card p { margin:0;color:var(--muted);font-size:9px;line-height:1.5; }.integration-checklist { grid-column:2/4;display:flex;gap:7px;flex-wrap:wrap;margin-top:7px; }.integration-checklist span { padding:5px 8px;border-radius:20px;background:#f0f2f1;color:#79847e;font-size:8px; }.integration-checklist span.done { background:var(--green-soft);color:#6e5900; }.integration-note { margin-top:13px;padding:18px; }.integration-note h3 { margin:0 0 6px;font-size:12px; }.integration-note p { margin:0;color:var(--muted);font-size:9px; }
.social-connections { margin-top:14px;border:1px solid var(--line);border-radius:12px;background:white;overflow:hidden; }.social-connections>.card-header { padding:18px 20px;border-bottom:1px solid var(--line); }.connection-list { display:grid; }.connection-row { display:grid;grid-template-columns:auto minmax(150px,1fr) auto auto;gap:13px;align-items:center;padding:14px 20px;border-bottom:1px solid var(--line); }.connection-row:last-child { border-bottom:0; }.connection-avatar { width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:var(--dark);color:var(--green);font-size:9px;font-weight:800; }.connection-row b,.connection-row small,.connection-row em { display:block; }.connection-row b { font-size:10px; }.connection-row small { margin-top:3px;color:var(--muted);font-size:8px; }.connection-row em { margin-top:4px;color:#b52929;font-size:8px;font-style:normal; }.connection-row .primary-button,.connection-row .secondary-button { min-width:125px;justify-content:center; }.status.failed { background:#fff0f0;color:#b52929; }
@media(max-width:760px){.integration-grid{grid-template-columns:1fr}.integration-card{grid-template-columns:auto 1fr}.integration-card>.status{grid-column:2}.integration-checklist{grid-column:1/3}}
@media(max-width:680px){.connection-row{grid-template-columns:auto 1fr}.connection-row>.status,.connection-row>button{grid-column:2;justify-self:start}}

/* RLabs usability and legibility pass */
body { font-size:14px; }
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible { outline:3px solid rgba(246,201,0,.35);outline-offset:2px; }
.topbar { height:76px;padding:0 38px; }
.breadcrumb { font-size:14px; }
.top-actions { position:relative;gap:9px; }
.icon-button { width:40px;height:40px;font-size:16px; }
.period-button { height:40px;padding:0 14px;font-size:13px; }
.client-context { height:40px;padding:0 8px 0 12px; }
.client-context span { font-size:10px; }
.client-context select { min-width:155px;max-width:220px;font-size:13px;cursor:pointer; }
.view { padding:38px 38px 64px;max-width:1560px; }
.page-heading { margin-bottom:30px;align-items:center; }
.eyebrow { font-size:11px;letter-spacing:1.4px; }
.page-heading h1 { margin-top:8px;font-size:32px; }
.page-heading p { font-size:14px;line-height:1.5; }
.primary-button,.secondary-button { min-height:42px;padding:11px 16px;font-size:13px; }
.stat-card { padding:20px;border-radius:13px; }
.stat-top { font-size:12px; }.stat-icon { width:32px;height:32px;font-size:14px; }
.stat-value { margin:13px 0 8px;font-size:28px; }.delta,.delta-note { font-size:11px; }
.card-header { padding:19px 21px; }.card-header h2 { font-size:16px; }.card-header p { font-size:12px;line-height:1.45; }.text-button { font-size:12px; }
.schedule-list { overflow:hidden; }.schedule-item { grid-template-columns:42px 38px minmax(0,1fr) auto;padding:13px 0; }.date-box b { font-size:18px; }.date-box span { font-size:10px; }.client-dot { width:36px;height:36px;font-size:11px; }.schedule-info { min-width:0; }.schedule-info b { max-width:230px;font-size:12px; }.schedule-info span { font-size:10px;line-height:1.4; }.schedule-item>.status { max-width:88px;white-space:normal;text-align:center;line-height:1.25; }.status { padding:5px 8px;font-size:9px; }
.client-table th { padding:12px 20px;font-size:10px; }.client-table td { padding:14px 20px;font-size:12px; }.mini-avatar { width:30px;height:30px;font-size:10px; }
.insight { padding:24px; }.insight .ai-label { font-size:10px; }.insight h3 { font-size:18px; }.insight p,.insight button { font-size:12px; }
.module-grid { gap:17px; }.module-card { min-height:200px;padding:24px; }.module-card h3 { font-size:17px; }.module-card p { font-size:13px; }.client-meta span,.role-badge,.access-row { font-size:10px; }.card-action { min-height:38px;padding:9px 12px;font-size:11px; }
.empty-state h3 { font-size:18px; }.empty-state p { max-width:460px;font-size:13px; }
.modal { width:min(560px,100%);padding:32px; }.modal h2 { font-size:26px; }.modal>p { font-size:13px;line-height:1.5; }.modal form { gap:17px; }.modal label { font-size:12px; }.modal input,.modal select { height:46px; }.modal textarea { font-size:13px; }.modal .primary-button { height:46px; }.detail-modal { width:min(820px,100%); }
.toolbar { gap:10px;margin-bottom:18px;flex-wrap:wrap; }.toolbar select,.toolbar input { height:42px;min-width:180px;padding:0 12px;font-size:12px; }.toolbar-hint { margin-left:auto;color:var(--muted);font-size:11px; }
.calendar-title h2 { font-size:18px; }.weekdays span { padding:12px;font-size:11px; }.calendar-day { min-height:138px;padding:9px; }.calendar-day-head { display:flex;align-items:center;justify-content:space-between; }.day-number { margin:0;font-size:11px; }.day-add { width:28px;height:28px;border:1px solid transparent;border-radius:7px;background:transparent;color:#8b7a13;font-size:15px;cursor:pointer;opacity:.35; }.calendar-day:hover .day-add,.day-add:focus-visible { opacity:1;border-color:#ead76b;background:#fffbed; }.calendar-post { padding:8px 7px 8px 11px; }.calendar-post b { font-size:10px; }.calendar-post small { font-size:9px; }
.kanban { grid-template-columns:repeat(7,minmax(230px,1fr));gap:14px; }.kanban-column { min-height:460px; }.kanban-head { padding:15px 14px;font-size:12px; }.kanban-body { min-height:405px;padding:11px;transition:.18s; }.kanban-body.drag-over { background:#fff9d9;box-shadow:inset 0 0 0 2px var(--green); }.kanban-card { padding:14px;cursor:grab;transition:transform .15s,box-shadow .15s,opacity .15s; }.kanban-card:hover { transform:translateY(-2px);box-shadow:0 8px 18px rgba(0,0,0,.08); }.kanban-card.dragging { opacity:.45;transform:rotate(1deg); }.kanban-card b { font-size:12px; }.kanban-card small { font-size:10px;line-height:1.4; }.kanban-empty { padding:40px 10px;font-size:11px; }.drag-label { display:block;margin-top:10px;padding-top:8px;border-top:1px solid var(--line);color:#9aa39e;font-size:9px;letter-spacing:.2px; }
.kanban-body { align-content:start; }.kanban-card { padding:0;overflow:hidden; }.kanban-open { width:100%;padding:14px;border:0;background:white;text-align:left;cursor:pointer; }.kanban-card-footer { display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;border-top:1px solid var(--line);background:#fafbfa; }.kanban-card-footer .drag-label { margin:0;padding:0;border:0;color:#9aa39e;font-size:9px; }.kanban-card-footer label { display:flex;align-items:center;gap:5px;color:#7b8580;font-size:9px; }.kanban-card-footer select { width:30px;height:28px;border:1px solid var(--line);border-radius:6px;background:white;color:transparent;cursor:pointer; }.kanban-card-footer select:focus { width:150px;color:var(--ink); }
.content-row,.publishing-row { padding:15px 17px; }.content-main b { font-size:13px; }.content-main small,.media-count { font-size:10px; }
.user-card { min-height:220px; }.detail-section h3 { font-size:14px; }.detail-summary span,.comment b,.comment p,.history-item,.approval-card { font-size:11px; }
.integration-card h3 { font-size:16px; }.integration-card p,.integration-note p { font-size:12px; }.integration-note h3 { font-size:15px; }.integration-checklist span { font-size:10px; }.connection-row b { font-size:13px; }.connection-row small,.connection-row em { font-size:10px; }
.top-popover { position:absolute;z-index:40;top:49px;right:0;width:280px;padding:10px;border:1px solid var(--line);border-radius:12px;background:white;box-shadow:0 18px 55px rgba(0,0,0,.16); }.top-popover[hidden] { display:none; }.top-popover strong { display:block;padding:7px 9px 10px;font-size:13px; }.period-menu button,.notification-menu button { width:100%;padding:11px 10px;border:0;border-radius:8px;background:white;text-align:left;font-size:12px;cursor:pointer; }.period-menu button:hover,.notification-menu button:hover { background:#fff9db; }.notification-menu { width:340px;right:48px; }.popover-title { display:flex;align-items:center;justify-content:space-between; }.popover-title span { display:grid;place-items:center;min-width:24px;height:24px;border-radius:20px;background:var(--green);font-size:11px;font-weight:800; }.notification-menu button { border-top:1px solid var(--line); }.notification-menu button b,.notification-menu button small { display:block; }.notification-menu button b { font-size:12px; }.notification-menu button small { margin-top:4px;color:var(--muted);font-size:10px;line-height:1.4; }
.search-modal { width:min(680px,100%); }.search-field { display:grid!important;grid-template-columns:auto 1fr!important;align-items:center!important;height:50px;padding:0 14px;border:1px solid var(--line);border-radius:10px;background:#fafbfa; }.search-field span { font-size:20px; }.search-field input { height:48px!important;border:0!important;background:transparent!important;box-shadow:none!important;font-size:14px; }.global-search-results { display:grid;gap:5px;max-height:430px;margin-top:14px;overflow-y:auto; }.global-result { display:grid;grid-template-columns:72px 1fr auto;gap:12px;align-items:center;padding:12px;border:1px solid transparent;border-radius:9px;background:white;text-align:left;cursor:pointer; }.global-result:hover { border-color:#ead76b;background:#fffdf0; }.global-result>span { color:#8a7000;font-size:10px;font-weight:800;text-transform:uppercase; }.global-result b,.global-result small { display:block; }.global-result b { font-size:13px; }.global-result small { margin-top:3px;color:var(--muted);font-size:10px; }.global-result i { font-style:normal; }.search-empty { padding:24px;color:var(--muted);font-size:12px;text-align:center; }
.compact-stats { margin-bottom:18px; }.analytics-layout { display:grid;grid-template-columns:1.15fr .85fr;gap:16px; }.source-body { display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:start;padding:28px; }.source-icon { width:58px;height:58px;display:grid;place-items:center;border-radius:16px;background:var(--green-soft);color:#806900;font-size:28px; }.source-body h3 { margin:0 0 8px;font-size:18px; }.source-body p { margin:0 0 17px;color:var(--muted);font-size:13px;line-height:1.55; }.unlock-grid { display:grid;grid-template-columns:1fr 1fr;gap:0;padding:14px 20px 22px; }.unlock-grid>div { display:flex;align-items:center;gap:9px;padding:12px;border-bottom:1px solid var(--line); }.unlock-grid span { color:#a28a00;font-size:18px; }.unlock-grid b { font-size:12px; }
.analytics-sync-bar { display:flex;justify-content:space-between;gap:18px;align-items:center;margin:0 0 16px;padding:16px 19px;border:1px solid #ead76b;border-radius:12px;background:#fffbed; }.analytics-sync-bar b,.analytics-sync-bar span { display:block; }.analytics-sync-bar b { font-size:13px; }.analytics-sync-bar span { margin-top:3px;color:var(--muted);font-size:10px; }.analytics-chart-grid { display:grid;grid-template-columns:1.35fr .65fr;gap:16px;margin-bottom:16px; }.analytics-chart-card { overflow:hidden; }.analytics-top-card { margin-bottom:16px; }.analytics-operational-note { display:flex;gap:8px;align-items:center;padding:17px 20px; }.analytics-operational-note b { font-size:11px; }.analytics-operational-note span { color:var(--muted);font-size:10px; }
.ai-hero { padding:30px;border-radius:16px;background:linear-gradient(135deg,#0b0b0b,#24220f);color:white;box-shadow:0 18px 45px rgba(0,0,0,.12); }.ai-hero>span { color:var(--green);font-size:11px;font-weight:800;letter-spacing:1px; }.ai-hero h2 { margin:10px 0 8px;font-size:25px; }.ai-hero>p { max-width:760px;margin:0;color:#c8ccc9;font-size:13px;line-height:1.6; }.ai-summary { display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:24px; }.ai-summary>div { padding:16px;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:rgba(255,255,255,.05); }.ai-summary b,.ai-summary span { display:block; }.ai-summary b { color:var(--green);font-size:21px; }.ai-summary span { margin-top:4px;color:#b5bcb8;font-size:10px; }.actionable-list { display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:16px; }.actionable-list button { display:grid;grid-template-columns:auto 1fr;gap:12px;padding:20px;border:1px solid var(--line);border-radius:12px;background:white;text-align:left;cursor:pointer; }.actionable-list button:hover { border-color:#d6ba17;box-shadow:var(--shadow); }.actionable-list>button>span { width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:var(--green);font-size:17px; }.actionable-list b,.actionable-list small { display:block; }.actionable-list b { font-size:14px; }.actionable-list small { margin-top:6px;color:var(--muted);font-size:11px;line-height:1.45; }
@media(max-width:1000px){.analytics-layout{grid-template-columns:1fr}.actionable-list{grid-template-columns:1fr}.ai-summary{grid-template-columns:1fr 1fr}}
@media(max-width:1000px){.analytics-chart-grid{grid-template-columns:1fr}.report-preview-body{grid-template-columns:1fr}.report-preview-widget{grid-column:1/-1}}
@media(max-width:720px){.topbar{height:66px}.view{padding:26px 16px 48px}.page-heading h1{font-size:26px}.toolbar-hint{width:100%;margin-left:0}.calendar-day{min-height:120px}.notification-menu{position:fixed;top:62px;right:12px;left:12px;width:auto}.ai-summary{grid-template-columns:1fr}.unlock-grid{grid-template-columns:1fr}.analytics-sync-bar{align-items:flex-start;flex-direction:column}.pie-widget{grid-template-columns:1fr;justify-items:center}.report-preview-heading,.report-preview-body,.report-preview-actions{padding-left:18px;padding-right:18px}.widget-kpis{grid-template-columns:1fr 1fr}}

@media print {
  body * { visibility:hidden!important; }
  #reportPreviewModal,#reportPreviewModal * { visibility:visible!important; }
  #reportPreviewModal { position:absolute;inset:0;display:block;padding:0;background:white; }
  #reportPreviewModal .report-preview-modal { width:100%;max-height:none;overflow:visible;box-shadow:none; }
  #reportPreviewModal .modal-close,#reportPreviewModal .report-preview-actions { display:none!important; }
  #reportPreviewModal .report-preview-body { background:white; }
}

/* Calendário editorial central */
.editorial-toolbar { display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-bottom:16px; }
.editorial-toolbar select { height:42px; min-width:170px; padding:0 12px; border:1px solid var(--line); border-radius:9px; background:white; color:var(--ink); font-size:11px; }
.hide-completed { display:flex; align-items:center; gap:8px; min-height:42px; padding:0 11px; border:1px solid var(--line); border-radius:9px; background:white; color:#607069; font-size:10px; font-weight:700; }
.hide-completed input { accent-color:var(--green-dark); }
.weekly-scoreboard { margin-bottom:16px; padding:16px 18px; border:1px solid var(--line); border-radius:12px; background:linear-gradient(135deg,#fffef7,#fff); box-shadow:0 3px 12px rgba(10,25,18,.02); }
.section-label { display:flex; align-items:baseline; justify-content:space-between; gap:12px; margin-bottom:11px; }.section-label span { color:#817000; font-size:9px; font-weight:800; letter-spacing:1px; }.section-label small { color:var(--muted); font-size:10px; }
.scoreboard-list { display:flex; gap:9px; overflow-x:auto; padding-bottom:2px; }.scorecard { min-width:190px; padding:11px 13px; border:1px solid #e7e9e7; border-left:4px solid var(--client-accent); border-radius:9px; background:white; text-align:left; cursor:pointer; }.scorecard:hover { border-color:var(--client-accent); box-shadow:0 6px 16px rgba(0,0,0,.06); }.scorecard b,.scorecard span,.scorecard small { display:block; }.scorecard b { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:11px; }.scorecard span { margin-top:5px; color:#627069; font-size:9px; }.scorecard small { margin-top:2px; color:#8f7700; font-size:9px; font-weight:800; }.scoreboard-empty { margin:2px 0; color:var(--muted); font-size:10px; }
.editorial-calendar { overflow-x:auto; }.editorial-weekdays,.editorial-week { min-width:940px; display:grid; grid-template-columns:repeat(7,minmax(130px,1fr)); }.editorial-weekdays { border-bottom:1px solid var(--line); background:#f7f8f7; }.editorial-weekdays span { padding:12px 10px; color:#839089; font-size:10px; font-weight:800; text-align:center; text-transform:uppercase; letter-spacing:.6px; }
.editorial-week { border-bottom:1px solid var(--line); }.editorial-week:last-child { border-bottom:0; }.editorial-day { min-height:152px; padding:9px; border-right:1px solid var(--line); background:white; transition:background .15s,box-shadow .15s; }.editorial-day:last-child { border-right:0; }.editorial-day.outside { background:#fafbfa; }.editorial-day.outside .day-number { color:#b3bbb6; }.editorial-day.today .day-number { background:var(--dark); color:white; }.editorial-day header { display:flex; align-items:center; justify-content:space-between; min-height:26px; }.editorial-day .day-number { display:grid; place-items:center; width:25px; height:25px; border-radius:50%; color:#65746d; font-size:10px; font-weight:800; }.editorial-day .day-add { width:25px; height:25px; border:1px solid transparent; border-radius:7px; background:transparent; color:#907900; cursor:pointer; opacity:.2; font-size:15px; }.editorial-day:hover .day-add,.editorial-day .day-add:focus-visible { border-color:#ead76b; background:#fffbed; opacity:1; }
.editorial-week.current-week { position:relative; background:#fffdf3; box-shadow:inset 0 3px 0 var(--green); }.editorial-week.current-week::before { content:"SEMANA ATUAL"; position:absolute; z-index:1; top:8px; left:10px; color:#827100; font-size:8px; font-weight:800; letter-spacing:.8px; }.editorial-week.current-week .editorial-day { min-height:294px; padding-top:26px; background:linear-gradient(180deg,#fffef9,#fff); }.editorial-week.current-week .editorial-day.outside { background:#fafaf6; }
.editorial-post { display:block; width:100%; position:relative; margin-top:7px; padding:9px 8px 8px 12px; border:1px solid #e6e9e7; border-left:4px solid var(--client-accent); border-radius:8px; background:white; color:var(--ink); text-align:left; cursor:grab; box-shadow:0 2px 6px rgba(0,0,0,.025); }.editorial-post:hover { border-color:var(--client-accent); box-shadow:0 7px 14px rgba(0,0,0,.06); }.editorial-post.dragging { opacity:.42; cursor:grabbing; }.editorial-post span,.editorial-post b,.editorial-post small { display:block; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }.editorial-client { color:#53645b; font-size:8px; font-weight:800; }.editorial-post b { margin-top:3px; font-size:10px; line-height:1.3; }.editorial-post small { margin-top:4px; color:#7d8983; font-size:8px; }.editorial-post.compact { margin-top:5px; padding:6px 6px 6px 9px; }.editorial-post.compact .editorial-client { display:none; }.editorial-post.compact b { font-size:8px; }.editorial-post.compact small { display:none; }.more-posts { display:block; margin:7px 2px; color:#7a6900; font-size:8px; font-weight:800; }.editorial-day.drag-over { background:#fff7ca!important; box-shadow:inset 0 0 0 2px var(--green); }
.seasonal-marker { display:block; margin:5px 0 2px; overflow:hidden; color:#987b00; font-size:8px; font-weight:800; white-space:nowrap; text-overflow:ellipsis; }.seasonal-list { display:grid; gap:7px; max-height:180px; margin-top:16px; overflow:auto; }.seasonal-list>p { margin:0; color:var(--muted); font-size:10px; }.seasonal-list-item { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:8px 9px; border:1px solid var(--line); border-radius:8px; background:#fafbfa; }.seasonal-list-item b,.seasonal-list-item small { display:block; }.seasonal-list-item b { font-size:10px; }.seasonal-list-item small { margin-top:2px; color:var(--muted); font-size:8px; }.seasonal-list-item button { width:25px; height:25px; border:1px solid #edd2d2; border-radius:6px; background:#fff7f7; color:#b52929; cursor:pointer; }
@media(max-width:720px){.editorial-toolbar>*{flex:1 1 150px}.section-label{align-items:flex-start;flex-direction:column}.weekly-scoreboard{padding:14px}.editorial-weekdays,.editorial-week{min-width:770px}.editorial-week.current-week .editorial-day{min-height:250px}}
.kanban-card-footer select { width:110px;color:var(--ink);font-size:9px; }
.report-builder-head h1 { font-size:25px; }.report-builder-head p,.widget-catalog>p { font-size:11px; }.widget-catalog { width:240px; }.widget-catalog button { padding:11px;font-size:11px; }.report-widget header b { font-size:13px; }.widget-placeholder strong { font-size:13px; }.widget-placeholder small,.widget-source { font-size:10px; }.widget-kpis span { font-size:10px; }.widget-table { font-size:10px; }.operational-bars>small,.operational-bars>div,.single-kpi span,.single-kpi small { font-size:10px; }.operational-funnel>div { font-size:11px; }.widget-insight strong { font-size:13px; }.widget-insight p { font-size:11px; }.toast { font-size:12px; }
.report-builder { grid-template-columns:250px 1fr; }
@media(max-width:850px){.report-builder{grid-template-columns:1fr}.widget-catalog{width:auto}}

/* RLabs adaptive navigation */
.sidebar { transition:width .3s ease,padding .3s ease,transform .25s ease; }
.main { transition:margin-left .3s ease; }
.topbar { transition:height .28s ease,padding .28s ease,box-shadow .28s ease; }
.mobile-menu { width:40px;height:40px;display:grid;place-items:center;border:1px solid var(--line);border-radius:9px;background:white;cursor:pointer;transition:.2s; }
.mobile-menu:hover { border-color:#d8bf2a;background:#fffbed; }
.app-shell.sidebar-collapsed .sidebar { width:82px;padding-left:12px;padding-right:12px; }
.app-shell.sidebar-collapsed .main { margin-left:82px; }
.app-shell.sidebar-collapsed .brand { justify-content:center;padding-left:0;padding-right:0; }
.app-shell.sidebar-collapsed .brand>div:last-child,.app-shell.sidebar-collapsed .nav-label,.app-shell.sidebar-collapsed .usage,.app-shell.sidebar-collapsed .profile-card>span:nth-child(2),.app-shell.sidebar-collapsed .profile-card .more,.app-shell.sidebar-collapsed .beta { display:none; }
.app-shell.sidebar-collapsed .create-button { width:48px;height:46px;margin-left:auto;margin-right:auto;padding:0;font-size:0;text-align:center; }
.app-shell.sidebar-collapsed .create-button span { margin:0;font-size:22px; }
.app-shell.sidebar-collapsed .nav-item { justify-content:center;padding-left:0;padding-right:0;font-size:0; }
.app-shell.sidebar-collapsed .nav-item .icon { width:auto;font-size:19px; }
.app-shell.sidebar-collapsed .profile-card { justify-content:center;padding-left:0;padding-right:0; }
.app-shell.header-compact .topbar { height:56px;padding-left:26px;padding-right:26px;box-shadow:0 8px 25px rgba(20,29,24,.07); }
.app-shell.header-compact .topbar .icon-button,.app-shell.header-compact .topbar .period-button,.app-shell.header-compact .topbar .client-context,.app-shell.header-compact .topbar .mobile-menu { height:34px; }
.app-shell.header-compact .breadcrumb span,.app-shell.header-compact .breadcrumb b { max-width:0;opacity:0;overflow:hidden;transition:max-width .25s,opacity .2s; }
@media(max-width:720px){.app-shell.sidebar-collapsed .sidebar{width:256px;padding:26px 18px 18px}.app-shell.sidebar-collapsed .main{margin-left:0}.app-shell.sidebar-collapsed .brand>div:last-child,.app-shell.sidebar-collapsed .nav-label,.app-shell.sidebar-collapsed .profile-card>span:nth-child(2),.app-shell.sidebar-collapsed .profile-card .more,.app-shell.sidebar-collapsed .beta{display:block}.app-shell.sidebar-collapsed .usage{display:block}.app-shell.sidebar-collapsed .nav-item{justify-content:flex-start;padding:9px 10px;font-size:12px}.app-shell.sidebar-collapsed .create-button{width:auto;height:auto;margin:0 5px 22px;padding:11px 14px;font-size:12px;text-align:left}.app-shell.sidebar-collapsed .create-button span{margin-right:7px;font-size:18px}.mobile-menu{display:grid}.app-shell.header-compact .topbar{padding-left:12px;padding-right:12px}}

/* RLabs mLabs-inspired visual refresh */
:root {
  --ink: #071b35;
  --muted: #667085;
  --line: #e8edf4;
  --paper: #f4f8fc;
  --card: #ffffff;
  --green: #ff7a1a;
  --green-dark: #f05a28;
  --green-soft: #fff1e8;
  --dark: #071b35;
  --orange: #ff7a1a;
  --purple: #c827c8;
  --blue: #1976f3;
  --shadow: 0 18px 45px rgba(8, 35, 73, .08);
}

body {
  background:
    radial-gradient(circle at 88% -8%, rgba(255, 122, 26, .12), transparent 28%),
    linear-gradient(180deg, #f9fbff 0%, #f4f8fc 100%);
  color: var(--ink);
  font-family: Poppins, Inter, "Segoe UI", system-ui, sans-serif;
  -webkit-font-smoothing: antialiased;
}

.admin-login {
  background:
    radial-gradient(circle at 68% 18%, rgba(255, 122, 26, .18), transparent 28%),
    radial-gradient(circle at 82% 28%, rgba(25, 118, 243, .10), transparent 24%),
    linear-gradient(180deg, #ffffff 0%, #f4f8fc 100%);
}

.landing-nav {
  border-bottom: 0;
}

.landing-copy h1,
.login-card h2,
.page-heading h1,
.modal h2 {
  font-family: Poppins, Manrope, sans-serif;
  color: #071b35;
}

.landing-copy h1 {
  font-weight: 800;
  letter-spacing: -2.4px;
}

.landing-copy>p,
.page-heading p,
.module-card p,
.card-header p {
  color: #5f6f86;
}

.eyebrow {
  color: #f05a28;
}

.brand-mark {
  border: 0;
  background: linear-gradient(135deg, #ff5a1f 0%, #ff9f12 52%, #ffc400 100%);
  color: #ffffff;
  box-shadow: 0 10px 24px rgba(255, 122, 26, .24);
  transform: none;
}

.brand-mark span {
  transform: none;
}

.login-card,
.product-window,
.card,
.stat-card,
.module-card,
.social-connections,
.integration-card {
  border-color: rgba(214, 224, 238, .9);
  box-shadow: 0 18px 42px rgba(8, 35, 73, .07);
}

.login-card {
  border-radius: 24px;
}

.login-card input,
.modal input,
.modal select,
.modal textarea,
.toolbar select,
.toolbar input {
  border-color: #dfe7f2;
  border-radius: 12px;
  background: #fbfdff;
}

.login-card input:focus,
.modal input:focus,
.modal select:focus,
.modal textarea:focus,
.toolbar input:focus,
.toolbar select:focus {
  border-color: #1976f3;
  box-shadow: 0 0 0 4px rgba(25, 118, 243, .12);
}

.modal textarea {
  min-height: 92px;
  padding: 12px;
  resize: vertical;
}

.permission-grid.muted-permissions {
  opacity: .52;
}

.permission-grid.muted-permissions input,
.permission-grid.muted-permissions label {
  pointer-events: none;
}

.danger-link {
  border-color: var(--line) !important;
  color: var(--danger-ink) !important;
  background: var(--danger-surface) !important;
}

.heading-actions {
  display:flex;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
  justify-content:flex-end;
}

.sidebar {
  width: 258px;
  padding: 22px 14px 18px;
  background: #ffffff;
  color: #667085;
  border-right: 1px solid #e8edf4;
  box-shadow: 12px 0 35px rgba(8, 35, 73, .04);
}

.brand {
  min-height: 56px;
  padding: 0 10px 22px;
}

.brand strong {
  color: #071b35;
  font: 800 22px/1 Poppins, sans-serif;
}

.brand small {
  color: #8b98aa;
  font-size: 9px;
  letter-spacing: .9px;
}

.create-button {
  margin: 0 6px 20px;
  border-radius: 14px;
  background: #1976f3;
  color: #ffffff;
  box-shadow: 0 14px 28px rgba(25, 118, 243, .22);
}

.nav-label {
  color: #a3adbb;
}

.nav-item {
  position: relative;
  min-height: 43px;
  padding: 11px 13px;
  border-radius: 13px;
  color: #6d7787;
  font-weight: 500;
}

.nav-item:hover {
  color: #071b35;
  background: #f5f8fc;
}

.nav-item.active {
  color: #071b35;
  background: linear-gradient(90deg, #fff3eb 0%, #f7fbff 100%);
  box-shadow: inset 3px 0 0 #ff6b17;
}

.nav-item.active .icon,
.icon {
  color: #ff6b17;
}

.beta {
  background: #eaf3ff;
  color: #1976f3;
}

.usage,
.profile-card {
  border-top-color: #edf1f7;
}

.usage div:first-child,
.usage b,
.profile-card small,
.more {
  color: #8b98aa;
}

.profile-card {
  color: #071b35;
}

.avatar,
.client-dot,
.mini-avatar,
.connection-avatar {
  background: #fff1e8;
  color: #f05a28;
}

.main {
  margin-left: 258px;
}

.topbar {
  height: 74px;
  border-bottom: 1px solid rgba(232, 237, 244, .95);
  background: rgba(255, 255, 255, .92);
  box-shadow: 0 10px 28px rgba(8, 35, 73, .035);
}

.breadcrumb {
  font-weight: 500;
}

.breadcrumb strong {
  color: #071b35;
  font-weight: 700;
}

.icon-button,
.period-button,
.client-context,
.mobile-menu {
  border-color: #e1e8f2;
  border-radius: 13px;
  background: #ffffff;
  color: #344054;
}

.icon-button:hover,
.period-button:hover,
.client-context:hover,
.mobile-menu:hover {
  border-color: #b7d4fb;
  background: #f7fbff;
}

.view {
  max-width: 1540px;
}

.page-heading {
  padding: 6px 0 4px;
}

.page-heading h1 {
  font-size: clamp(30px, 2.8vw, 42px);
  font-weight: 800;
  letter-spacing: -1.4px;
}

.primary-button {
  border: 1px solid #1976f3;
  border-radius: 14px;
  background: #1976f3;
  color: #ffffff;
  box-shadow: 0 12px 26px rgba(25, 118, 243, .20);
}

.primary-button:hover {
  background: #0d66dd;
  border-color: #0d66dd;
}

.secondary-button,
.text-button {
  color: #1976f3;
}

.stat-card,
.card,
.module-card {
  border-radius: 20px;
}

.stat-icon,
.module-card .big-icon,
.empty-state .empty-icon,
.source-icon,
.integration-logo {
  background: #fff1e8;
  color: #ff6b17;
}

.stat-value {
  color: #071b35;
}

.delta,
.status.scheduled,
.integration-checklist span.done {
  color: #f05a28;
}

.status.scheduled,
.integration-checklist span.done {
  background: #fff1e8;
}

.status.review {
  background: #eef5ff;
  color: #1976f3;
}

.chart-main,
.chart-point {
  stroke: #ff6b17;
}

.chart-legend i,
.mini-progress i,
.progress i,
.timeline-bars i,
.operational-bars i b {
  background: linear-gradient(90deg, #ff6b17, #ffb000);
}

.chart-fill {
  fill: rgba(255, 107, 23, .10);
}

.insight,
.ai-hero {
  background: linear-gradient(135deg, #071b35 0%, #172d52 54%, #ff6b17 190%);
}

.insight .ai-label,
.ai-hero>span,
.ai-summary b {
  color: #ffb000;
}

.kanban-head {
  color: #071b35;
}

.kanban-card {
  border-color: #e8edf4;
  border-radius: 16px;
  box-shadow: 0 12px 28px rgba(8, 35, 73, .06);
}

.kanban-card-footer {
  background: #f8fbff;
}

.kanban-body.drag-over {
  background: #eef5ff;
  box-shadow: inset 0 0 0 2px #1976f3;
}

.app-shell.sidebar-collapsed .sidebar {
  width: 84px;
}

.app-shell.sidebar-collapsed .main {
  margin-left: 84px;
}

.app-shell.header-compact .topbar {
  box-shadow: 0 14px 32px rgba(8, 35, 73, .07);
}

@media(max-width:720px) {
  .sidebar {
    width: 258px;
  }
  .main,
  .app-shell.sidebar-collapsed .main {
    margin-left: 0;
  }
}

/* Planejamento detalhado: texto confortável e formatação leve. */
.modal #contentForm,.modal #seasonalForm { gap:16px; }
.modal #contentForm input,.modal #contentForm select,.modal #contentForm textarea,.modal #seasonalForm input,.modal #seasonalForm select,.modal #seasonalForm textarea { line-height:1.45; }
.content-plan-row { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.1fr); gap:12px; align-items:end; }
.content-plan-row > label { margin:0; }
.color-field { min-width:0; margin:0; padding:0; border:0; }
.color-field legend { margin-bottom:8px; color:var(--ink-soft); font-size:14px; font-weight:650; }
.color-picker { display:flex; align-items:center; gap:9px; min-height:38px; }
.color-swatch { width:27px; height:27px; padding:0; border:2px solid transparent; border-radius:50%; cursor:pointer; box-shadow:0 0 0 1px rgba(15,23,42,.14); transition:transform .15s ease, box-shadow .15s ease; }
.color-swatch:hover { transform:scale(1.08); }
.color-swatch.selected { box-shadow:0 0 0 2px var(--card), 0 0 0 4px var(--ink); }
.color-swatch.orange,.text-color.orange { background:#ff7a1a; }
.color-swatch.green,.text-color.green { background:#39b983; }
.color-swatch.blue,.text-color.blue { background:#4b8dff; }
.color-swatch.violet,.text-color.violet { background:#9b7bff; }
.color-swatch.yellow,.text-color.yellow { background:#d5ad20; }
.outline-field { display:block; }
.outline-field .field-label { display:block; color:var(--ink-soft); font-size:13px; font-weight:650; }
.rich-text-toolbar { display:flex; flex-wrap:wrap; gap:6px; align-items:center; margin:8px 0 0; padding:8px; border:1px solid var(--line); border-bottom:0; border-radius:12px 12px 0 0; background:var(--surface-muted); }
.rich-text-toolbar button { min-height:29px; padding:3px 8px; border:1px solid var(--line); border-radius:7px; background:var(--surface); color:var(--ink); font:inherit; font-size:12px; cursor:pointer; }
.rich-text-toolbar button:hover { border-color:#8aa5ca; }
.rich-text-toolbar .text-color { width:23px; min-height:23px; padding:0; border-radius:50%; }
.toolbar-divider { width:1px; height:23px; margin:0 2px; background:var(--line); }
.rich-text-editor { min-height:176px; max-height:340px; overflow:auto; padding:13px 14px; border:1px solid var(--line); border-radius:0 0 12px 12px; outline:0; background:var(--field); color:var(--ink); font-size:15px; font-weight:400; line-height:1.62; white-space:pre-wrap; }
.rich-text-editor:focus { border-color:#4b8dff; box-shadow:0 0 0 3px rgba(75,141,255,.16); }
.rich-text-editor:empty::before { content:attr(data-placeholder); color:var(--muted); pointer-events:none; }
.rich-text-editor p { margin:0 0 10px; }
.rich-text-editor ul,.rich-text-editor ol { margin:0 0 10px; padding-left:24px; }
.rich-text-editor > :last-child { margin-bottom:0; }
.outline-field small { display:block; margin-top:7px; color:var(--muted); font-size:12px; font-weight:500; line-height:1.4; }
.outline-color-orange { color:#d85c06; }.outline-color-green { color:#208f62; }.outline-color-blue { color:#276bd0; }.outline-color-violet { color:#7555d2; }.outline-color-yellow { color:#9b7900; }
html[data-theme="dark"] .outline-color-orange { color:#ff9d59; }html[data-theme="dark"] .outline-color-green { color:#69d4a6; }html[data-theme="dark"] .outline-color-blue { color:#8db6ff; }html[data-theme="dark"] .outline-color-violet { color:#c0acff; }html[data-theme="dark"] .outline-color-yellow { color:#ecd46e; }

.import-modal { width:min(720px,100%); }
.import-preview { margin:16px 0; padding:14px; border:1px solid var(--line); border-radius:12px; background:var(--surface-muted); color:var(--ink-soft); }
.import-preview > p { margin:0; color:var(--muted); }
.import-preview > small { display:block; margin-top:12px; color:var(--muted); line-height:1.4; }
.import-summary { display:flex; flex-wrap:wrap; gap:8px 14px; align-items:center; margin-bottom:10px; color:var(--ink); font-size:13px; }
.import-summary span { font-size:12px; font-weight:700; }
.import-new { color:#1e8e62; }.import-duplicate { color:#916b00; }.import-invalid,.import-error { color:#b52929; }
.import-preview ul { display:grid; gap:7px; max-height:280px; margin:0; padding:0; overflow:auto; list-style:none; }
.import-item { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:5px 12px; padding:10px 11px; border:1px solid var(--line); border-left:4px solid var(--muted); border-radius:9px; background:var(--surface); }
.import-item span b,.import-item span small { display:block; }.import-item span b { color:var(--ink); font-size:13px; }.import-item span small { margin-top:3px; color:var(--muted); font-size:11px; }
.import-item strong { align-self:center; font-size:11px; }.import-item em { grid-column:1/-1; color:var(--muted); font-size:11px; font-style:normal; }
.import-new { border-left-color:#2ca875; }.import-duplicate { border-left-color:#d49b22; }.import-invalid { border-left-color:#d64545; }
.import-actions { display:flex; justify-content:flex-end; gap:10px; }

.editorial-post { position:relative; overflow:hidden; padding:8px 8px 8px 12px; border-left:4px solid var(--client-accent); text-align:left; }
.editorial-post::before { content:""; position:absolute; left:0; top:0; bottom:0; width:4px; background:var(--client-accent); }
.seasonal-marker { display:block; width:max-content; max-width:100%; margin:5px 0; padding:3px 7px; border-radius:7px; background:color-mix(in srgb, var(--seasonal-color) 14%, transparent); color:var(--seasonal-color); font-size:11px; font-weight:750; line-height:1.25; }
.seasonal-list-item { border-left:4px solid var(--seasonal-color); }
.seasonal-month-panel { margin-top:18px; padding:17px 18px; border:1px solid var(--line); border-radius:16px; background:var(--card); box-shadow:var(--shadow); }
.seasonal-month-list { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:10px; margin-top:12px; }
.seasonal-month-item { display:grid; grid-template-columns:48px minmax(0,1fr) auto; gap:11px; align-items:center; padding:11px; border:1px solid var(--line); border-left:4px solid var(--seasonal-color); border-radius:11px; background:var(--surface); }
.seasonal-month-item time { color:var(--seasonal-color); font-size:14px; font-weight:800; }
.seasonal-month-item b,.seasonal-month-item span,.seasonal-month-item small { display:block; }
.seasonal-month-item b { font-size:14px; color:var(--ink); }
.seasonal-month-item span,.seasonal-month-item small,.seasonal-month-empty { margin-top:2px; color:var(--muted); font-size:12px; line-height:1.35; }
.seasonal-month-item small { text-align:right; }
.detail-outline p,.detail-outline ul,.detail-outline ol { font-size:15px; line-height:1.65; }
.detail-outline p { margin:0 0 10px; }.detail-outline ul,.detail-outline ol { margin:0 0 10px; padding-left:23px; }
.preserved-text { white-space:pre-wrap; font-size:15px; line-height:1.65; }

@media(max-width:720px) {
  .content-plan-row { grid-template-columns:1fr; }
  .seasonal-month-item { grid-template-columns:44px minmax(0,1fr); }
  .seasonal-month-item small { grid-column:2; text-align:left; }
}

/* Edição de conteúdo: rolagem pertence à janela, não à página desfocada. */
#modalBackdrop {
  align-items:start;
  z-index:70;
  overflow-y:auto;
  overscroll-behavior:contain;
}

/* Client profiles can include briefing fields and the photo editor; keep the
   dialog usable on short screens while the backdrop itself scrolls. */
#clientModal {
  align-items: flex-start;
  overflow-y: auto;
  overscroll-behavior: contain;
}
#clientModal > .modal {
  max-height: calc(100dvh - 40px);
  overflow-y: auto;
  overscroll-behavior: contain;
}

#detailModal { z-index:60; }

body.content-modal-open { overflow:hidden; }
body.content-detail-open { overflow:hidden; }
.detail-modal { overscroll-behavior:contain; scrollbar-gutter:stable; }

#modalBackdrop .modal {
  width:min(900px, calc(100vw - 40px));
  max-height:calc(100dvh - 40px);
  margin:auto 0;
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-gutter:stable;
}

#modalBackdrop .modal-close, #detailModal .modal-close {
  position:sticky;
  top:-16px;
  z-index:2;
  display:block;
  margin:-16px -16px -22px auto;
  width:40px;
  height:40px;
  border-radius:10px;
  background:var(--surface);
  color:var(--ink-soft);
}

/* Hierarquia operacional acima da grade mensal. */
.page-heading h1 {
  font-family:var(--system-font);
  font-size:34px;
  font-weight:700;
  letter-spacing:-.95px;
}

/* Tema persistente e fontes disponíveis no sistema, sem downloads externos. */
:root {
  color-scheme: light;
  --system-font: "Helvetica Neue", Helvetica, Arial, sans-serif;
  --surface: #ffffff;
  --surface-muted: #f7f9fc;
  --field: #fbfdff;
  --ink-soft: #5f6f86;
  --sidebar-surface: #ffffff;
  --sidebar-ink: #667085;
  --sidebar-strong: #071b35;
  --topbar-surface: rgba(255,255,255,.92);
  --calendar-outside: #f7f8fa;
  --calendar-current: #fffaf4;
}

html[data-theme="dark"] {
  color-scheme: dark;
  --ink: #f4f6fb;
  --muted: #a8b0bf;
  --line: #2a303d;
  --paper: #0b0d12;
  --card: #161a22;
  --dark: #f4f6fb;
  --green-soft: #312519;
  --surface: #161a22;
  --surface-muted: #1d222c;
  --field: #1d222c;
  --ink-soft: #b4bdcb;
  --sidebar-surface: #11141b;
  --sidebar-ink: #adb6c6;
  --sidebar-strong: #f4f6fb;
  --topbar-surface: rgba(17,20,27,.86);
  --calendar-outside: #12161d;
  --calendar-current: #1c1c1b;
  --shadow: 0 20px 50px rgba(0,0,0,.28);
}

body,
button,
input,
select,
textarea {
  font-family: var(--system-font);
}

body {
  background: radial-gradient(circle at 88% -8%, rgba(255,122,26,.15), transparent 28%), linear-gradient(180deg, var(--surface-muted) 0%, var(--paper) 100%);
}

.brand-mark,.landing-brand strong,.date-box b,.insight h3,
.landing-copy h1,
.login-card h2,
.page-heading h1,
.modal h2,
.brand strong,
.card-header h2,
.stat-value,
.module-card h3,
.editorial-post b {
  font-family: var(--system-font);
}

.landing-copy h1,
.login-card h2,
.page-heading h1,
.modal h2 { color:var(--ink); }

.theme-toggle {
  display:inline-flex;
  align-items:center;
  gap:7px;
  height:40px;
  padding:0 12px;
  border:1px solid #e1e8f2;
  border-radius:13px;
  background:#ffffff;
  color:#344054;
  font-size:12px;
  font-weight:700;
  cursor:pointer;
}

.theme-toggle:hover { border-color:#b7d4fb; background:#f7fbff; }
.theme-toggle span:first-child { font-size:15px; line-height:1; }

.sidebar { background:var(--sidebar-surface); color:var(--sidebar-ink); border-right-color:var(--line); }
.brand strong,.profile-card { color:var(--sidebar-strong); }
.topbar { border-bottom-color:var(--line); background:var(--topbar-surface); }
.breadcrumb strong,.stat-value,.kanban-head { color:var(--ink); }
.icon-button,.period-button,.client-context,.mobile-menu,.theme-toggle { border-color:var(--line); background:var(--surface); color:var(--ink); }
.icon-button:hover,.period-button:hover,.client-context:hover,.mobile-menu:hover,.theme-toggle:hover { border-color:#4d6385; background:var(--surface-muted); }
.client-context select { color:var(--ink); }
.login-card,.product-window,.card,.stat-card,.module-card,.social-connections,.integration-card { background:var(--card); border-color:var(--line); box-shadow:var(--shadow); }
.login-card input,.modal input,.modal select,.modal textarea,.toolbar select,.toolbar input,.editorial-toolbar select { background:var(--field); border-color:var(--line); color:var(--ink); }
.secondary-button { background:var(--surface); color:var(--ink); }
.modal { background:var(--card); color:var(--ink); }
.modal label { color:var(--ink-soft); }
.top-popover,.period-menu button,.notification-menu button,.global-result,.kanban-open,.kanban-card-footer,.actionable-list button { background:var(--surface); color:var(--ink); }
.top-popover,.notification-menu button,.kanban-card-footer { border-color:var(--line); }
.view,.editorial-day,.editorial-post,.scorecard,.seasonal-list-item { color:var(--ink); }
.editorial-weekdays { background:var(--surface-muted); }
.editorial-weekdays span { color:var(--muted); font-size:12px; }
.editorial-day { background:var(--surface); }
.editorial-day.outside { background:var(--calendar-outside); }
.editorial-day.outside .day-number { color:#8490a2; }
.editorial-day .day-number { color:var(--ink); font-size:15px; }
.editorial-day.today .day-number { background:var(--orange); color:#201004; }
.editorial-week.current-week { background:var(--calendar-current); }
.editorial-week.current-week .editorial-day { background:linear-gradient(180deg,var(--calendar-current),var(--surface)); }
.editorial-week.current-week .editorial-day.outside { background:var(--calendar-outside); }
.editorial-post,.scorecard { background:var(--surface); border-color:var(--line); }
.editorial-client,.editorial-post small,.scorecard span { color:var(--muted); }
.weekly-scoreboard { background:linear-gradient(135deg,var(--surface-muted),var(--surface)); }
.hide-completed { background:var(--surface); border-color:var(--line); color:var(--ink-soft); }
.seasonal-list-item { background:var(--surface-muted); }
.detail-summary,.history-item,.approval-flow,.file-card { background:var(--surface-muted); color:var(--ink); }
.detail-summary span,.history-item small,.comment p { color:var(--ink-soft); }
.detail-summary .status { background:var(--surface); color:var(--ink-soft); }
.approval-waiting { background:var(--surface-muted); color:var(--ink); }
.client-approval-send select,.approval-flow input { background:var(--field); color:var(--ink); border-color:var(--line); }

html[data-theme="dark"] .admin-login { background:radial-gradient(circle at 68% 18%, rgba(255,122,26,.17), transparent 28%), linear-gradient(180deg,#11141b 0%,#0b0d12 100%); }
html[data-theme="dark"] .nav-item { color:var(--sidebar-ink); }
html[data-theme="dark"] .nav-item:hover { color:var(--sidebar-strong); background:#1b202a; }
html[data-theme="dark"] .nav-item.active { color:var(--sidebar-strong); background:linear-gradient(90deg,#30231a 0%,#19202b 100%); }
html[data-theme="dark"] .brand small,.usage div:first-child,.usage b,.profile-card small,.more { color:#8994a7; }
html[data-theme="dark"] .page-heading p,.landing-copy>p,.module-card p,.card-header p { color:var(--ink-soft); }
html[data-theme="dark"] .modal-backdrop { background:rgba(0,0,0,.72); }
html[data-theme="dark"] .toast { background:#f4f6fb; color:#11141b; }
html[data-theme="dark"] .seasonal-list-item button { background:#2c1b20; border-color:#5d343b; }
html[data-theme="dark"] .editorial-day:hover .day-add,html[data-theme="dark"] .editorial-day .day-add:focus-visible { background:#33291a; border-color:#785a25; }

/* Escala operacional única: vale também para cartões fora da semana atual. */
.brand strong { font-size:23px; }
.brand small { font-size:12px; }
.nav-label { font-size:13px; font-weight:600; letter-spacing:.8px; color:var(--ink-soft); }
.nav-item { font-size:16px; }
.beta { font-size:11px; letter-spacing:.3px; }
.profile-card b { font-size:16px; }
.profile-card small,.usage div:first-child,.usage b { font-size:13px; }
.usage div:first-child { gap:8px; flex-wrap:wrap; }
.eyebrow { font-size:14px; font-weight:600; letter-spacing:.8px; }
.page-heading p { font-size:16px; }
.create-button,.primary-button,.secondary-button,.danger-button { font-size:16px; font-weight:600; min-height:44px; }
.theme-toggle,.client-context select,.period-button,.breadcrumb { font-size:14px; }
.editorial-toolbar select,.hide-completed { font-size:16px; font-weight:400; min-height:44px; }
.section-label span { font-size:14px; font-weight:600; letter-spacing:.6px; color:var(--ink-soft); }
.section-label small,.scoreboard-empty { font-size:14px; }
.scorecard { min-width:210px; padding:14px; }
.scorecard b { font-size:17px; font-weight:600; }
.scorecard span,.scorecard small { font-size:14px; line-height:1.5; }
.scorecard small { color:var(--ink-soft); font-weight:600; }
.calendar-title h2 { font-size:22px; font-weight:600; }
.calendar-title p { font-size:14px; }
.editorial-weekdays span { font-size:15px; font-weight:600; }
.editorial-day .day-number { font-size:17px; font-weight:600; }
.editorial-week.current-week::before { font-size:12px; font-weight:600; letter-spacing:.4px; color:var(--ink-soft); }
.editorial-week.current-week .editorial-day { padding-top:32px; }
.editorial-post,.editorial-post.compact { padding:9px 9px 9px 12px; margin-top:7px; border:1px solid color-mix(in srgb,var(--stage-accent) 50%,var(--line)); border-radius:10px; background:color-mix(in srgb,var(--stage-accent) 14%,var(--surface)); box-shadow:0 2px 4px rgba(7,27,53,.035); }
html[data-theme="dark"] .editorial-post { background:color-mix(in srgb,var(--stage-accent) 18%,var(--surface)); }
.editorial-post::before { width:4px; top:0; bottom:0; border-radius:0; background:var(--stage-accent); }
.editorial-post:hover { border-color:var(--stage-accent); box-shadow:0 4px 12px rgba(7,27,53,.09); }
.editorial-post:focus-visible { outline:3px solid var(--blue); outline-offset:2px; }
.editorial-post .editorial-client,.editorial-post.compact .editorial-client { display:block; white-space:normal; overflow-wrap:anywhere; font-size:16px; font-weight:600; line-height:1.35; color:var(--ink); }
.editorial-post b,.editorial-post.compact b { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; white-space:normal; overflow-wrap:anywhere; margin:7px 0 0; font-size:15px; font-weight:400; line-height:1.4; }
.editorial-post small,.editorial-post.compact small { display:block; white-space:normal; font-size:14px; font-weight:400; line-height:1.4; color:var(--ink-soft); }
.editorial-post .editorial-format { display:flex; align-items:center; gap:6px; margin-top:5px; }
.editorial-format svg { flex-shrink:0; color:var(--ink-soft); }
.editorial-post .editorial-format span { white-space:normal; overflow-wrap:anywhere; }
.editorial-post .editorial-card-footer { display:flex; flex-wrap:wrap; align-items:center; gap:4px 6px; margin-top:7px; padding-top:0; border-top:0; overflow:visible; white-space:normal; }
.editorial-post.calendar-insert-before { box-shadow:0 -4px 0 var(--blue); }
.editorial-day.calendar-insert-end { box-shadow:inset 0 -4px 0 var(--blue); }
.calendar-order-menu { position:fixed; z-index:90; width:180px; padding:5px; border:1px solid var(--line); border-radius:10px; background:var(--surface); box-shadow:0 6px 24px #0003; }
.calendar-order-menu button { display:block; width:100%; min-height:42px; border:0; border-radius:6px; background:transparent; color:var(--ink); text-align:left; font:inherit; font-size:15px; padding:8px; cursor:pointer; }
.calendar-order-menu button:hover,.calendar-order-menu button:focus-visible { background:var(--surface-muted); outline:2px solid var(--blue); }
.calendar-order-menu button:disabled { opacity:.45; cursor:default; }
.editorial-post .editorial-stage { display:inline-flex; max-width:100%; padding:4px 7px; border-radius:6px; overflow-wrap:anywhere; white-space:normal; font-size:13px; font-weight:600; line-height:1.35; color:var(--stage-ink); background:var(--stage-bg); }
.editorial-post .editorial-card-heading { display:flex; align-items:flex-start; gap:7px; overflow:visible; white-space:normal; }
.editorial-card-heading .editorial-client { flex:1; min-width:0; }
.editorial-time { flex-shrink:0; margin-left:auto; white-space:nowrap; color:var(--ink-soft); font-size:14px; font-weight:400; line-height:1.4; font-variant-numeric:tabular-nums; }
[data-stage-tone="neutral"] { --stage-accent:#758399; --stage-ink:#4b5b72; --stage-bg:#edf1f6; }
[data-stage-tone="cyan"] { --stage-accent:#168ba5; --stage-ink:#126075; --stage-bg:#e3f5fa; }
[data-stage-tone="blue"] { --stage-accent:#3479df; --stage-ink:#1654a3; --stage-bg:#eaf2ff; }
[data-stage-tone="violet"] { --stage-accent:#9862cf; --stage-ink:#7040a5; --stage-bg:#f3edfb; }
[data-stage-tone="amber"] { --stage-accent:#cc8c20; --stage-ink:#88530c; --stage-bg:#fff1d6; }
[data-stage-tone="green"] { --stage-accent:#289467; --stage-ink:#166447; --stage-bg:#e5f5ee; }
[data-stage-tone="teal"] { --stage-accent:#23837d; --stage-ink:#185c57; --stage-bg:#e0f2ef; }
[data-stage-tone="red"] { --stage-accent:#d15464; --stage-ink:#aa2e39; --stage-bg:#ffedf0; }
html[data-theme="dark"] [data-stage-tone="cyan"] { --stage-ink:#a0ddec; --stage-bg:#193e49; }
html[data-theme="dark"] [data-stage-tone="teal"] { --stage-ink:#99d9d0; --stage-bg:#203e3a; }
html[data-theme="dark"] [data-stage-tone="neutral"] { --stage-ink:#ccd5e3; --stage-bg:#2a3341; }
html[data-theme="dark"] [data-stage-tone="blue"] { --stage-ink:#acd0ff; --stage-bg:#1c3556; }
html[data-theme="dark"] [data-stage-tone="violet"] { --stage-ink:#d9bdff; --stage-bg:#39284f; }
html[data-theme="dark"] [data-stage-tone="amber"] { --stage-ink:#f7d08d; --stage-bg:#46351c; }
html[data-theme="dark"] [data-stage-tone="green"] { --stage-ink:#99e1bc; --stage-bg:#1c3e30; }
html[data-theme="dark"] [data-stage-tone="red"] { --stage-ink:#ffb2bd; --stage-bg:#4a2530; }
.more-posts { font-size:14px; }
.seasonal-marker { width:fit-content; padding:5px 8px; font-size:14px; font-weight:600; white-space:normal; overflow-wrap:anywhere; }
.seasonal-month-item b,.seasonal-list-item b { font-size:16px; font-weight:600; }
.seasonal-month-item span,.seasonal-month-item small,.seasonal-month-empty,.seasonal-list-item small { font-size:14px; }
.modal h2 { font-size:26px; font-weight:600; line-height:1.3; }
.modal label,.outline-field .field-label,.color-field legend { font-size:15px; font-weight:500; }
.modal input,.modal select,.modal textarea,.rich-text-editor { font-size:16px; font-weight:400; }
.modal>p,.outline-field small,.modal label small,.approval-hint { font-size:14px; line-height:1.5; }
.rich-text-toolbar button { font-size:14px; min-height:34px; }
.detail-section h3,.detail-summary b { font-size:17px; font-weight:600; }
.detail-section p,.detail-outline p,.detail-outline ul,.detail-outline ol,.preserved-text { font-size:16px; line-height:1.65; }
.detail-summary span,.history-item,.history-item small,.comment b,.comment p,.approval-card { font-size:14px; line-height:1.5; }
.history-item { flex-wrap:wrap; }
.history-item small { text-align:left; }
.detail-actions { gap:10px; }
.client-planning-open { margin:14px 0 4px; width:100%; }
.client-planning > .page-heading { margin-top:22px; }
.client-planning-summary { font-size:16px; color:var(--ink); line-height:1.6; }
.client-planning-summary > span { display:block; font-size:14px; color:var(--ink-soft); }
.client-planning-tabs { display:flex; flex-wrap:wrap; gap:8px; margin:20px 0; }
.client-planning-tabs button { border:1px solid var(--line); border-radius:9px; padding:10px 16px; min-height:44px; background:var(--surface); color:var(--ink); font:inherit; cursor:pointer; }
.client-planning-tabs button[aria-pressed="true"] { border-color:var(--blue); box-shadow:inset 0 -3px var(--blue); }
.client-planning-tabs button:focus-visible,.client-planning-row:focus-visible { outline:3px solid var(--blue); outline-offset:2px; }
.client-planning-list { display:grid; gap:10px; }
.client-planning-row { display:flex; align-items:center; justify-content:space-between; gap:16px; width:100%; padding:16px; background:var(--surface); color:var(--ink); border:1px solid var(--line); border-radius:10px; text-align:left; font:inherit; cursor:pointer; }
.client-planning-row > span:first-child { min-width:0; overflow-wrap:anywhere; }
.client-planning-row b { font-size:16px; }
.client-planning-row small { display:block; margin-top:5px; color:var(--ink-soft); font-size:14px; }
.client-planning-row .editorial-stage { padding:5px 8px; border-radius:6px; font-size:14px; color:var(--stage-ink); background:var(--stage-bg); }
@media(max-width:720px) { .client-planning-row { flex-wrap:wrap; } }
.detail-editorial-info dl { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr)); gap:14px; margin:0; padding:14px; border:1px solid var(--line); border-radius:10px; background:var(--surface-muted); }
.detail-editorial-info dt { color:var(--ink-soft); font-size:14px; margin-bottom:5px; }
.detail-editorial-info dd { margin:0; color:var(--ink); font-size:16px; line-height:1.5; overflow-wrap:anywhere; }
.media-grid > p { grid-column:1 / -1; }
.detail-modal .media-actions button { font-size:15px; min-height:32px; }
.editorial-week { display:block; }
.editorial-week-toggle { width:100%; min-height:48px; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:8px 20px; padding:12px 16px; border:0; border-bottom:1px solid var(--line); background:var(--surface-muted); color:var(--ink); font:inherit; font-size:15px; text-align:left; cursor:pointer; }
.editorial-week-toggle:hover { background:var(--calendar-current); }
.editorial-week-toggle:focus-visible { outline:3px solid var(--blue); outline-offset:-3px; }
.week-heading { display:flex; align-items:center; gap:12px; }
.week-heading b { font-weight:600; }
.week-chevron { display:inline-block; transform:rotate(-90deg); font-size:20px; }
.editorial-week-toggle[aria-expanded="true"] .week-chevron { transform:none; }
.week-summary { color:var(--ink-soft); font-size:14px; }
.week-current-label { color:var(--ink-soft); font-size:13px; }
.editorial-week-days { display:grid; grid-template-columns:repeat(7,minmax(130px,1fr)); }
.editorial-week-days[hidden] { display:none; }
.editorial-week.current-week::before { content:none; }
.editorial-week.current-week .editorial-day { padding-top:9px; }
.editorial-week.current-week .editorial-week-toggle { box-shadow:inset 3px 0 0 var(--orange); }
@media(max-width:720px) { .editorial-weekdays,.editorial-week-days { grid-template-columns:repeat(7,minmax(110px,1fr)); } }
.calendar-display { display:inline-flex; gap:4px; padding:4px; margin-bottom:18px; border:1px solid var(--line); border-radius:12px; background:var(--surface-muted); }
.calendar-display button { min-height:44px; padding:10px 22px; border:1px solid transparent; border-radius:9px; background:transparent; color:var(--ink-soft); font:inherit; font-size:16px; cursor:pointer; }
.calendar-display button[aria-pressed="true"] { border-color:var(--line); background:var(--surface); color:var(--ink); box-shadow:0 2px 5px rgba(0,0,0,.08); }
.calendar-display button:focus-visible,.feed-card:focus-visible { outline:3px solid var(--blue); outline-offset:3px; }
.editorial-feed { padding:0; overflow:hidden; }
.editorial-feed .card-header { margin:0; padding:22px; border-bottom:1px solid var(--line); }
.feed-description { margin:0; padding:18px 24px; color:var(--ink-soft); font-size:14px; line-height:1.6; }
#feedContent { max-width:1040px; margin:0 auto; padding:0 24px 28px; }
.feed-client + .feed-client { margin-top:38px; padding-top:24px; border-top:1px solid var(--line); }
.feed-client-header { display:flex; align-items:baseline; justify-content:space-between; gap:12px; margin:0 0 16px; }
.feed-client-header h3 { margin:0; color:var(--ink); font-size:22px; font-weight:600; }
.feed-client-header > span { font-size:14px; color:var(--ink-soft); }
.feed-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; align-items:start; }
.feed-card { min-width:0; padding:0; border:1px solid var(--line); border-radius:12px; overflow:hidden; background:var(--surface); color:var(--ink); text-align:left; font:inherit; cursor:pointer; }
.feed-card:hover { border-color:var(--blue); }
.feed-cover { position:relative; display:flex; flex-direction:column; aspect-ratio:4 / 5; overflow:hidden; background:var(--surface-muted); }
.feed-image { width:100%; height:100%; object-fit:cover; }
.feed-text-cover { padding:22px; gap:22px; border-bottom:1px solid var(--line); }
.feed-cover-label { color:var(--ink-soft); font-size:13px; line-height:1.5; }
.feed-outline { display:-webkit-box; -webkit-line-clamp:9; -webkit-box-orient:vertical; overflow:hidden; white-space:pre-wrap; overflow-wrap:anywhere; color:var(--ink); font-size:20px; line-height:1.5; font-weight:500; }
.feed-media-badge { position:absolute; top:10px; right:10px; padding:5px 9px; border-radius:6px; background:rgba(0,0,0,.78); color:#fff; font-size:13px; }
.feed-card-info { display:flex; flex-direction:column; gap:7px; padding:14px; overflow-wrap:anywhere; }
.feed-date,.feed-format { color:var(--ink-soft); font-size:14px; line-height:1.4; }
.feed-title { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; font-size:17px; line-height:1.4; font-weight:600; }
.feed-status { color:var(--ink); font-size:13px; line-height:1.4; }
.feed-empty { margin:12px 0; padding:28px; text-align:center; color:var(--ink-soft); line-height:1.6; }
@media(max-width:720px) {
  .editorial-feed .card-header { padding:16px 10px; }
  .editorial-feed .calendar-title h2 { font-size:20px; }
  .feed-description { padding:14px 12px; }
  #feedContent { padding:0 10px 20px; }
  .feed-grid { gap:6px; }
  .feed-client-header h3 { font-size:19px; }
  .feed-client-header > span { font-size:13px; }
  .feed-text-cover { padding:8px; gap:8px; }
  .feed-cover-label { font-size:12px; }
  .feed-outline { font-size:14px; -webkit-line-clamp:4; }
  .feed-card-info { padding:9px 6px; gap:6px; }
  .feed-title { font-size:14px; }
  .feed-date,.feed-format,.feed-status { font-size:12px; }
  .feed-media-badge { top:5px; right:5px; padding:4px; font-size:11px; }
}
.publication-preview { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); gap:22px; align-items:start; }
.publication-gallery { min-width:0; border:1px solid var(--line); border-radius:14px; overflow:hidden; background:var(--surface-muted); }
.publication-stage { display:grid; place-items:center; min-height:220px; }
.publication-media { display:block; width:100%; max-height:480px; object-fit:contain; background:var(--surface-muted); }
.publication-navigation { display:flex; justify-content:space-between; align-items:center; padding:10px; gap:12px; }
.publication-navigation[hidden] { display:none; }
.publication-navigation button { width:44px; height:40px; border:1px solid var(--line); border-radius:10px; background:var(--surface); color:var(--ink); cursor:pointer; font-size:20px; }
.publication-navigation button:disabled { opacity:.35; cursor:default; }
.publication-counter { font-size:14px; color:var(--ink-soft); }
.publication-caption { white-space:pre-wrap; overflow-wrap:anywhere; font-size:16px; line-height:1.6; }
.publication-copy { min-width:0; }
.publication-outline { min-width:0; padding:16px; border:1px solid var(--line); border-radius:14px; background:var(--surface); color:var(--ink); }
.publication-outline h3 { margin:0 0 12px; font-size:16px; }
.publication-outline p,.publication-outline li { margin:0 0 9px; white-space:pre-wrap; overflow-wrap:anywhere; font-size:15px; line-height:1.55; }
.publication-outline ul,.publication-outline ol { margin:0; padding-left:24px; }
.publication-stage.publication-text-stage { display:block; height:420px; overflow:auto; overscroll-behavior:contain; }
.publication-text-stage .publication-outline { width:100%; min-height:100%; border:0; border-radius:0; padding:28px; }
.publication-outline p:empty { min-height:1.55em; }
.publication-text-stage .publication-outline p,.publication-text-stage .publication-outline li { font-size:17px; line-height:1.65; }
.publication-preview-label { padding:12px 16px; border-bottom:1px solid var(--line); color:var(--ink-soft); font-size:13px; }
.publication-modes { display:flex; gap:6px; padding:10px; border-bottom:1px solid var(--line); }
.publication-modes[hidden] { display:none; }
.publication-modes button { flex:1; padding:10px; border:1px solid var(--line); border-radius:9px; background:var(--surface); color:var(--ink); cursor:pointer; font:inherit; font-size:15px; }
.publication-modes button[aria-pressed="true"] { border-color:var(--blue); box-shadow:inset 0 0 0 1px var(--blue); }
.publication-script-hint { margin:0; padding:12px 16px; border-top:1px solid var(--line); color:var(--ink-soft); font-size:13px; line-height:1.5; }
.publication-script-notes { border-top:1px solid var(--line); padding:12px 16px; font-size:14px; }
.publication-script-notes summary { cursor:pointer; }
.publication-copy h3 { margin:0 0 12px; font-size:16px; }
.publication-empty { padding:22px; color:var(--ink-soft); font-size:15px; line-height:1.6; }
.publication-empty button { display:block; margin-top:12px; }
.publication-file { padding:24px; color:var(--ink); overflow-wrap:anywhere; }
.calendar-preview { position:fixed; z-index:45; width:min(340px,calc(100vw - 16px)); max-height:calc(100dvh - 16px); overflow:auto; overscroll-behavior:contain; padding:16px; border:1px solid var(--line); border-radius:18px; background:var(--card); color:var(--ink); box-shadow:0 16px 50px rgba(0,0,0,.3); }
.calendar-preview[hidden] { display:none; }
.calendar-preview .publication-preview { display:block; }
.calendar-preview .publication-stage { height:270px; min-height:0; }
.calendar-preview .publication-media { height:270px; max-height:270px; }
.calendar-preview .publication-copy { margin-top:16px; }
.calendar-preview .publication-text-stage { height:270px; }
.calendar-preview .publication-outline { margin:0; padding:16px; }
.calendar-preview .publication-outline h3 { font-size:15px; }
.calendar-preview .publication-outline p,.calendar-preview .publication-outline li { font-size:14px; }
.calendar-preview .publication-caption { max-height:100px; overflow:auto; font-size:14px; }
.calendar-preview .primary-button { width:100%; }
/* Etapa 7: escala operacional e superfícies compartilhadas entre telas. */
:root {
  --text-body:16px;
  --text-meta:14px;
  --text-label:13px;
  --action-ink:#145dc0;
  --danger-ink:#ad2525;
  --danger-surface:#fff3f3;
}
html[data-theme="dark"] {
  --action-ink:#9ac4ff;
  --danger-ink:#ffb4b4;
  --danger-surface:#382027;
}
.view { font-size:var(--text-body); line-height:1.5; }
.view h2,.view h3 { font-family:var(--system-font); }
.card-header { gap:16px; flex-wrap:wrap; }
.card-header h2,.module-card h3 { font-size:18px; line-height:1.4; }
.card-header p,.module-card p,.empty-state p,.insight p,.integration-card p,
.integration-note p { font-size:var(--text-body); color:var(--ink-soft); line-height:1.55; }
.stat-top,.delta,.delta-note,.toolbar-hint,.chart-legend,.axis,
.performance-kpis span,.client-meta span,.role-badge,.access-row,
.schedule-info span,.content-main small,.media-count,.connection-row small,
.connection-row em,.integration-checklist span { font-size:var(--text-meta); line-height:1.5; }
.delta-note,.media-count,.access-row,.toolbar-hint { color:var(--ink-soft); }
.stat-value { font-size:32px; line-height:1.2; }
.text-button { font-size:var(--text-meta); color:var(--action-ink); padding:8px 0; }
.card-action,.insight button { font-size:var(--text-meta); min-height:42px; }
.card-action,.client-card-actions .social-action { background:var(--surface); color:var(--ink); border-color:var(--line); }
.card-action:hover,.client-card-actions .social-action:hover { background:var(--surface-muted); border-color:var(--action-ink); }
.client-meta span,.role-badge { background:var(--surface-muted); color:var(--ink-soft); }
.client-card-actions { gap:8px; }
.client-card-actions .card-action { margin-top:12px; }
.module-grid { grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr)); }
.module-card,.integration-card,.connection-row>div { min-width:0; overflow-wrap:anywhere; }
.client-table { width:100%; }
.client-table th { background:var(--surface-muted); color:var(--ink-soft); font-size:var(--text-label); }
.client-table td { font-size:var(--text-meta); border-color:var(--line); }
.client-table .client-name { font-size:var(--text-body); }
.schedule-item,.access-row { border-color:var(--line); }
.schedule-info b,.content-main b,.connection-row b { font-size:var(--text-body); line-height:1.45; }
.schedule-info b,.content-main b,.content-main small { max-width:none; white-space:normal; overflow-wrap:anywhere; }
.content-row,.publishing-row { background:var(--surface); color:var(--ink); gap:14px; padding:16px; }
.content-row:hover,.publishing-row:hover { background:var(--surface-muted); border-color:var(--action-ink); }
.content-list { gap:10px; }
.status { font-size:var(--text-label); line-height:1.4; text-transform:none; white-space:normal; background:var(--surface-muted); color:var(--ink-soft); }
.schedule-item>.status { max-width:140px; }
.schedule-item { grid-template-columns:38px 34px minmax(0,1fr); }
.schedule-item>.status { grid-column:3; justify-self:start; margin-top:-4px; }
.insight { background:var(--surface); color:var(--ink); }
.insight h3,.insight button { color:var(--ink); }
.insight button { background:var(--surface-muted); border-color:var(--line); }
.mini-progress,.client-card .progress { background:var(--surface-muted); }
.integration-checklist span,.integration-checklist span.done { background:var(--surface-muted); color:var(--ink-soft); }
.analytics-sync-bar,.widget-insight { background:var(--surface-muted); border-color:var(--line); }
.source-body p,.ai-hero>p,.actionable-list b,.unlock-grid b { font-size:var(--text-body); line-height:1.5; }
.actionable-list small,.ai-summary span,.analytics-sync-bar span,.analytics-operational-note span { font-size:var(--text-meta); line-height:1.5; }
.analytics-sync-bar b,.analytics-operational-note b { font-size:var(--text-body); }
.ai-hero>p,.ai-summary span { color:#d2dbea; }
.status.scheduled { background:var(--green-soft); color:var(--action-ink); }
.status.review { background:var(--surface-muted); color:var(--ink-soft); }
.status[data-stage-tone],.detail-summary .status[data-stage-tone] { background:var(--stage-bg); color:var(--stage-ink); }
.date-box span,.mini-avatar,.client-dot,.connection-avatar { font-size:var(--text-label); }
.mini-avatar,.client-dot,.connection-avatar,.stat-icon,.module-card .big-icon,
.empty-state .empty-icon,.integration-logo { background:var(--surface-muted); color:var(--action-ink); }
.toolbar input,.toolbar select { min-height:44px; font-size:var(--text-body); max-width:100%; }
.kanban { grid-template-columns:none; grid-auto-flow:column; grid-auto-columns:280px; align-items:stretch; }
.kanban-column { background:var(--surface-muted); border-top-color:var(--stage-accent,var(--line)); }
.kanban-head { background:var(--surface); color:var(--ink); min-height:70px; gap:12px; font-size:var(--text-body); line-height:1.4; }
.kanban-head span { flex-shrink:0; background:var(--surface-muted); color:var(--ink-soft); font-size:var(--text-meta); }
.kanban-card { background:var(--surface); border-color:var(--line); }
.kanban-card b { font-size:var(--text-body); line-height:1.45; overflow-wrap:anywhere; }
.kanban-card small,.kanban-empty { font-size:var(--text-meta); line-height:1.5; color:var(--ink-soft); }
.kanban-card-footer { flex-wrap:wrap; background:var(--surface); }
.kanban-card-footer label { min-width:0; flex:1; flex-wrap:wrap; color:var(--ink-soft); font-size:var(--text-meta); }
.kanban-card-footer .drag-label { color:var(--ink-soft); font-size:var(--text-label); }
.kanban-card-footer select,.kanban-card-footer select:focus { width:100%; min-width:0; min-height:40px; background:var(--field); color:var(--ink); font-size:var(--text-meta); }
.kanban-body.drag-over { background:var(--surface-muted); box-shadow:inset 0 0 0 2px var(--action-ink); }
.danger-button,.card-action.danger-link,.report-card .report-delete,.status.failed { background:var(--danger-surface); color:var(--danger-ink); border-color:var(--line); }
.widget-catalog,.report-widget,.report-column { background:var(--surface); color:var(--ink); }
.report-canvas,.widget-kpis>div { background:var(--surface-muted); }
.widget-catalog button,.report-context select { background:var(--field); color:var(--ink); font-size:var(--text-meta); }
.widget-catalog>p,.report-context,.report-context small,.widget-source,
.widget-placeholder small,.widget-kpis span,.widget-table,.operational-bars>small,
.operational-bars>div,.single-kpi span,.single-kpi small,.widget-insight p { font-size:var(--text-meta); color:var(--ink-soft); line-height:1.5; }
.widget-placeholder strong,.report-widget header b,.widget-insight strong { font-size:var(--text-body); color:var(--ink); }
.empty-state h3 { font-size:20px; }
.view button:focus-visible,.view input:focus-visible,.view select:focus-visible { outline:2px solid var(--action-ink); outline-offset:3px; }
.view button:disabled { opacity:.6; cursor:not-allowed; }
@media(max-width:720px) {
  .page-heading { flex-wrap:wrap; }
  .card-header { padding:16px; }
  .content-row { display:grid; grid-template-columns:32px minmax(0,1fr); gap:10px; }
  .content-row .media-count { grid-column:2; }
  .content-row .status { grid-column:2; justify-self:start; }
  .publishing-row { flex-wrap:wrap; }
  .publishing-row .schedule-info { flex-basis:calc(100% - 60px); }
  .publishing-row>.status { margin-left:50px; }
  .schedule-item { grid-template-columns:36px 32px minmax(0,1fr); }
  .schedule-item>.status { grid-column:3; justify-self:start; }
  .toolbar>* { min-width:0; max-width:100%; }
  .toolbar-hint { margin-left:0; }
  .client-table th,.client-table td { padding:10px 8px; }
}
.preview-client { font-size:16px; }
.preview-title { margin:6px 0; font-size:16px; font-weight:500; overflow-wrap:anywhere; }
.preview-format { margin:0 0 12px; font-size:14px; color:var(--muted); }
@media(max-width:720px) { .publication-preview { grid-template-columns:1fr; } .publication-media { max-height:380px; } }

/* Confirmação e fila de envios reais do Instagram. */
#instagramPublicationModal { z-index:75; }
.instagram-publication-modal { width:min(940px,100%);max-height:90vh;overflow:auto;background:var(--surface);color:var(--ink); }
.instagram-publication-modal h2 { font-size:24px;margin:5px 0 18px; }
.instagram-review-post { border:1px solid var(--line);border-radius:14px;overflow:hidden; }
.instagram-review-profile { display:flex;align-items:center;gap:12px;padding:14px 18px;border-bottom:1px solid var(--line); }
.instagram-review-avatar { display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:50%;background:var(--surface-muted);color:var(--action-ink);font-weight:700;font-size:14px; }
.instagram-review-profile>div { min-width:0;flex:1; }
.instagram-review-profile b,.instagram-review-profile>div>span { display:block;overflow-wrap:anywhere; }
.instagram-review-profile b { font-size:14px; }
.instagram-review-profile>div>span,.instagram-review-format { color:var(--ink-soft);font-size:12px; }
.instagram-review-post .publication-preview { grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:0;align-items:stretch; }
.instagram-review-post .publication-gallery { position:relative;border:0;border-radius:0;border-right:1px solid var(--line);background:#fff; }
.instagram-review-post .publication-preview-label { display:none; }
.instagram-review-post .publication-stage { height:410px;min-height:0;background:#fff; }
.instagram-review-post .publication-media { width:100%;height:100%;max-height:410px;object-fit:contain;background:#fff; }
.instagram-review-post .publication-navigation { position:absolute;inset:0;pointer-events:none;padding:12px; }
.instagram-review-post .publication-navigation button { pointer-events:auto;border:0;border-radius:50%;width:34px;height:34px;background:rgba(255,255,255,.94);color:#17202c;box-shadow:0 1px 6px #0003; }
.instagram-review-post .publication-navigation button:disabled { visibility:hidden; }
.instagram-review-post .publication-counter { position:absolute;top:12px;right:12px;padding:5px 10px;border-radius:20px;background:#17202cbb;color:#fff;font-size:12px; }
.instagram-review-post .publication-copy { padding:22px;max-height:410px;overflow:auto; }
.instagram-review-post .publication-copy h3 { font-size:13px;color:var(--ink-soft);margin-bottom:14px; }
.instagram-review-post .publication-caption { margin:0;font-size:14px;line-height:1.7; }
.instagram-review-post .publication-navigation button:focus-visible { outline:3px solid var(--action-ink);outline-offset:3px; }
@media(max-width:720px) {
  .instagram-review-post .publication-preview { grid-template-columns:1fr; }
  .instagram-review-post .publication-gallery { border-right:0;border-bottom:1px solid var(--line); }
  .instagram-review-post .publication-stage { height:auto;aspect-ratio:4/5; }
  .instagram-review-post .publication-media { max-height:100%; }
  .instagram-review-post .publication-copy { padding:16px;max-height:210px; }
  .instagram-review-profile { padding:12px;gap:8px; }
  .instagram-review-format { display:none; }
}
.publication-review { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px; }
.publication-review>div { padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--surface-muted);min-width:0; }
.publication-review span,.publication-review b { display:block;overflow-wrap:anywhere; }
.publication-review span { color:var(--ink-soft);font-size:11px;margin-bottom:5px; }
.publication-review b { font-size:14px; }
.publication-review-block { padding:15px 0;border-bottom:1px solid var(--line); }
.publication-review-block h3 { margin:0 0 8px;font-size:14px; }
.publication-review-block ol { margin:0;padding-left:22px;line-height:1.7;font-size:13px; }
.publication-review-block p { margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.6;max-height:140px;overflow:auto; }
.publication-review-block small { display:block;margin-top:8px;color:var(--ink-soft); }
.publication-mode { display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:17px 0 12px; }
.publication-mode button { min-height:44px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--ink);font:inherit;font-size:13px;cursor:pointer; }
.publication-mode button[aria-pressed="true"] { border-color:var(--action-ink);box-shadow:inset 0 0 0 1px var(--action-ink);background:var(--surface-muted);font-weight:700; }
.instagram-publication-modal .publication-schedule[hidden] { display:none; }
.publication-timezone { margin:12px 0;color:var(--ink-soft);font-size:12px;line-height:1.5; }
.publication-actions { display:flex;justify-content:flex-end;gap:9px;margin-top:16px; }
.publication-planned { margin-top:18px; }
.publication-job { cursor:default; }
.publication-job-open { display:flex;align-items:center;gap:12px;flex:1;min-width:0;padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer; }
.publication-job>.status { flex:none; }
.publication-job>small { width:100%;padding-left:50px;color:var(--ink-soft); }
.publication-job [data-cancel-publication] { flex:none; }
.publication-job-open:focus-visible,.publication-mode button:focus-visible,.publication-actions button:focus-visible { outline:3px solid var(--action-ink);outline-offset:3px; }
@media(max-width:720px) { .publication-review { grid-template-columns:1fr; }.publication-actions { flex-direction:column-reverse; }.publication-job-open { width:100%;flex-basis:100%; } }

@media(max-width:720px) {
  .top-actions .theme-toggle { display:inline-flex; }
  .theme-toggle { width:38px; justify-content:center; padding:0; }
  .theme-toggle span:last-child { display:none; }
  .main { margin-left:0; }
  .topbar { padding:0 12px; gap:8px; }
  .topbar .mobile-menu { flex-shrink:0; }
  .breadcrumb { min-width:0; flex:1; }
  .breadcrumb strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .top-actions { flex-shrink:0; }
  .client-context select { min-width:0; max-width:110px; }
}
