: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; place-items:center; padding:24px; background:radial-gradient(circle at 50% 0,#262b25 0,#101310 42%,#090b09 100%); }
.admin-login[hidden] { display:none; }
.login-card { width:min(420px,100%); padding:38px; border:1px solid rgba(255,255,255,.08); border-radius:18px; background:#fff; box-shadow:0 30px 90px rgba(0,0,0,.38); }
.login-card .brand-mark { margin-bottom:24px; }
.login-card h1 { margin:8px 0; font:800 28px 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; }
.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; }
.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; cursor:pointer; }.report-card:hover { border-color:#d1b000; }.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; }
.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; }
@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; }
.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: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}}
.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}}
