/* Rivora Finance v7.15 — clean workspace refinement
   Additive styling only: preserves existing screens, IDs, and application behavior. */

:root{
  --rv-surface:#ffffff;
  --rv-surface-soft:#f8fafc;
  --rv-border:#e5e9ef;
  --rv-text:#17283a;
  --rv-muted:#6f7d8b;
  --rv-shadow:0 10px 30px rgba(20,35,55,.045);
  --rv-radius:16px;
}

/* Overall workspace */
.app-shell{background:#f6f8fb}
.main{padding:26px 30px 48px;min-width:0}
.view{max-width:1540px;margin:0 auto}
.topbar{
  position:sticky;top:0;z-index:70;
  margin:-26px -30px 24px;padding:17px 30px 15px;
  background:rgba(246,248,251,.94);border-bottom:1px solid rgba(222,228,235,.92);
  backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)
}
.topbar h1{font-size:27px;color:var(--rv-text)}
.topbar p{margin-top:4px;font-size:12px}
.topbar-actions{align-items:center;gap:9px}
.user-badge{padding:7px 11px;border:1px solid var(--rv-border);border-radius:11px;background:#fff}
.user-badge span{font-size:8px;letter-spacing:.05em;text-transform:uppercase}
.user-badge strong{font-size:11px}

/* Sidebar: cleaner hierarchy without changing navigation */
.sidebar{width:252px;padding:22px 15px 18px;background:#0e1722;border-right:1px solid rgba(255,255,255,.04)}
.rivora-finance-brand{padding:0 8px 20px;margin-bottom:7px;border-bottom:1px solid rgba(255,255,255,.07)}
.sidebar-brand-mark{width:36px;height:36px}
.sidebar-wordmark{font-size:22px}
.sidebar .nav{gap:3px;padding:5px 0}
.sidebar .nav-link{
  display:flex;align-items:center;gap:10px;min-height:42px;padding:9px 11px;
  border-radius:10px;color:#aeb9c5;font-size:12px;font-weight:600;transition:.16s ease
}
.sidebar .nav-link:hover{background:rgba(255,255,255,.065);color:#fff}
.sidebar .nav-link.active{background:#1c2a3a;color:#fff;box-shadow:inset 3px 0 0 #c89b32}
.sidebar .nav-icon{width:23px;height:23px;display:grid;place-items:center;border-radius:7px;background:rgba(255,255,255,.055);font-size:12px;flex:0 0 auto}
.sidebar .nav-link.active .nav-icon{background:rgba(200,155,50,.14);color:#dfbb61}
.sidebar-footer{padding-top:15px}

/* Panels and section rhythm */
.panel{
  border:1px solid var(--rv-border)!important;border-radius:var(--rv-radius)!important;
  box-shadow:var(--rv-shadow)!important;padding:20px!important;background:var(--rv-surface)
}
.view>.panel,.settings-section{margin-bottom:16px}
.panel-header{align-items:flex-start}
.panel-header h2,.section-heading h2{color:var(--rv-text);letter-spacing:-.015em}
.panel-header p{max-width:760px;color:var(--rv-muted);line-height:1.55}
.eyebrow{letter-spacing:.1em}

/* Buttons and controls */
.btn{border-radius:10px!important;min-height:40px;padding:9px 14px;font-weight:700;box-shadow:none!important}
.btn.btn-small{min-height:34px;padding:7px 11px}
.btn-primary{background:#17283a!important;border-color:#17283a!important}
.btn-primary:hover{background:#20364d!important;border-color:#20364d!important;transform:translateY(-1px)}
.btn-secondary{background:#fff!important;border-color:#dce2e8!important;color:#26394d!important}
.btn-secondary:hover{background:#f7f9fb!important;border-color:#cbd4dd!important}
.btn-danger-soft{background:#fff5f4!important;border:1px solid #f1c9c5!important;color:#a93228!important}
.btn-danger-soft:hover{background:#feecea!important;border-color:#eeb4ae!important}
.text-action,.danger-link{font-size:11px;font-weight:700}

input,select,textarea{
  border:1px solid #dce2e8!important;border-radius:10px!important;background:#fff;
  min-height:43px;padding:10px 12px;transition:border-color .15s,box-shadow .15s,background .15s
}
textarea{min-height:88px}
input:hover,select:hover,textarea:hover{border-color:#c8d1da!important}
input:focus,select:focus,textarea:focus{border-color:#8797a8!important;box-shadow:0 0 0 3px rgba(38,57,77,.08)!important}
label>span{color:#536476}
.form-grid{gap:13px 14px}
.filter-row,.filters{gap:9px}

/* Data surfaces */
.table-wrap{border:1px solid #e7ebef;border-radius:13px;overflow:auto;background:#fff}
table.data-table{background:#fff}
.data-table th{background:#f8fafc;color:#657383;padding:10px 12px;border-bottom:1px solid #e6ebef;white-space:nowrap}
.data-table td{padding:12px;border-bottom:1px solid #edf0f3;vertical-align:middle}
.data-table tbody tr:last-child td{border-bottom:0}
.data-table tbody tr:hover td{background:#fbfcfd}
.empty-state{border-radius:12px}
.status-badge,.pill,.info-badge,.plan-badge{border-radius:999px}

/* Dashboard: a little calmer and easier to scan */
.crm-dashboard-head{margin-bottom:14px}
.crm-kpi-grid{gap:12px}
.crm-kpi-card{border-radius:15px!important;box-shadow:0 7px 22px rgba(20,35,55,.04)!important}
.crm-dashboard-grid{gap:14px}
.crm-pipeline-panel,.rivora-pulse-panel{margin-top:14px}

/* Forms / quote / invoice editor */
.invoice-layout{gap:18px}
.form-panel{position:relative}
.client-link-heading{margin-top:20px}
.record-client-picker{background:#f8fafc!important;border-color:#e1e6eb!important}
.finance-layout{gap:14px}
.editor-actions{gap:8px;flex-wrap:wrap}

/* Settings hub */
.settings-jump-v715{
  position:sticky;top:82px;z-index:55;display:flex;align-items:center;gap:7px;
  margin:0 0 14px;padding:8px;border:1px solid var(--rv-border);border-radius:13px;
  background:rgba(255,255,255,.94);box-shadow:0 8px 25px rgba(20,35,55,.04);
  backdrop-filter:blur(12px);overflow-x:auto;scrollbar-width:none
}
.settings-jump-v715::-webkit-scrollbar{display:none}
.settings-jump-v715 button{white-space:nowrap;border:0;background:transparent;color:#5f6f80;border-radius:9px;padding:8px 11px;font-size:10px;font-weight:800;cursor:pointer}
.settings-jump-v715 button:hover{background:#f2f5f8;color:#203348}
.settings-jump-v715 button.admin-shortcut{color:#936f19;background:#fbf8ef}
.settings-card{border:1px solid #e5e9ed!important;border-radius:14px!important;background:#fff!important;box-shadow:none!important}
.settings-section>.panel-header{padding-bottom:3px}
.team-org-toolbar,.team-invite-panel,.calendar-integration-toolbar{background:#f8fafc!important;border-color:#e4e9ee!important}
.team-directory{gap:9px}
.team-member-card{border-color:#e4e9ee!important;border-radius:12px!important;background:#fff!important}
.appearance-options{gap:10px}
.theme-choice{border-radius:13px!important}

/* v7.15 private profile documents */
.rivora-documents-v715{margin-top:18px;padding-top:18px;border-top:1px solid var(--rv-border)}
.rivora-documents-head{display:flex;gap:18px;align-items:flex-start;justify-content:space-between}
.rivora-documents-head h4{margin:3px 0 4px;font-size:1rem;color:var(--rv-text)}
.rivora-documents-head p{margin:0;color:var(--rv-muted);font-size:.78rem;line-height:1.5;max-width:640px}
.rivora-doc-actions{display:flex;align-items:center;gap:8px}
.rivora-doc-status{min-height:20px;margin:8px 0 4px;font-size:.76rem;color:var(--rv-muted)}
.rivora-doc-status.success{color:#198754}.rivora-doc-status.error{color:#b42318}
.rivora-document-list{display:grid;gap:8px}
.rivora-document-row{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--rv-border);border-radius:11px;background:#fbfcfd}
.rivora-document-type{width:48px;height:34px;display:grid;place-items:center;border-radius:8px;background:#eef2f6;color:#42566b;font-size:.59rem;font-weight:800;letter-spacing:.04em}
.rivora-document-info{min-width:0;display:grid;gap:2px;flex:1}
.rivora-document-info strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.84rem}
.rivora-document-info span{font-size:.68rem;color:var(--rv-muted)}
.rivora-document-row-actions{display:flex;align-items:center;gap:10px}
.client-documents-card-v715.span-all{grid-column:1/-1}
.business-documents-wrap-v715{margin-top:18px}
.business-danger-zone-v715{margin-top:20px;padding:14px 15px;border:1px solid rgba(180,35,24,.22);border-radius:12px;background:#fffafa;display:flex;align-items:center;justify-content:space-between;gap:20px}
.business-danger-zone-v715>div{display:grid;gap:3px}.business-danger-zone-v715 strong{color:#a93228;font-size:12px}.business-danger-zone-v715 span{font-size:.74rem;color:var(--rv-muted);max-width:650px}.platform-delete-user-v715{font-weight:800}

/* Dark theme compatibility */
html[data-theme="dark"] .app-shell{background:#091522}
html[data-theme="dark"] .app-shell .main{background:#091522}
html[data-theme="dark"] .app-shell .settings-jump-v715{background:rgba(11,27,44,.96);border-color:#263d52;box-shadow:none}
html[data-theme="dark"] .app-shell .settings-jump-v715 button{color:#aebdca}
html[data-theme="dark"] .app-shell .settings-jump-v715 button:hover{background:#132a41;color:#fff}
html[data-theme="dark"] .app-shell .settings-jump-v715 button.admin-shortcut{background:#302814;color:#e7c668}
html[data-theme="dark"] .app-shell .rivora-document-row{background:#0d1e30;border-color:#294158}
html[data-theme="dark"] .app-shell .rivora-document-type{background:#172d42;color:#c7d4df}
html[data-theme="dark"] .app-shell .business-danger-zone-v715{background:#25191b;border-color:#5d3133}
html[data-theme="dark"] .app-shell .btn-secondary{background:#102236!important;border-color:#294158!important;color:#dce7f0!important}
html[data-theme="dark"] .app-shell .user-badge{background:#0d1e30;border-color:#294158}

@media(max-width:1100px){
  .main{padding:22px 20px 42px}
  .topbar{margin:-22px -20px 20px;padding:15px 20px 13px}
}
@media(max-width:820px){
  .main{padding:16px 14px 92px}
  .topbar{position:relative;top:auto;margin:-16px -14px 16px;padding:15px 14px;background:transparent;border-bottom:0;backdrop-filter:none}
  .settings-jump-v715{position:relative;top:auto;margin-bottom:12px}
  .panel{padding:16px!important;border-radius:14px!important}
  .rivora-documents-head,.business-danger-zone-v715{flex-direction:column}
  .rivora-document-row{align-items:flex-start}.rivora-document-row-actions{margin-left:auto}
  .rivora-doc-actions{width:100%}.rivora-doc-actions .btn{width:100%}
}
@media(max-width:560px){
  .topbar h1{font-size:23px}
  .panel{padding:14px!important}
  .form-grid{gap:10px}
  .rivora-document-row{display:grid;grid-template-columns:48px 1fr}.rivora-document-row-actions{grid-column:2;justify-self:start;margin-left:0}
}
