/* 410 Today R40 · Universal Ledger visual parity
   Purpose: make the standalone Ledger feel native to the accepted Today interface.
   Scope: presentation only. No Ledger data, routing, promotion, or schema behavior changes.
*/

:root{
  --ledger-r40-canvas-top:#f7f7f9;
  --ledger-r40-canvas-bottom:#ececf1;
  --ledger-r40-surface:rgba(255,255,255,.92);
  --ledger-r40-surface-2:rgba(255,255,255,.78);
  --ledger-r40-line:rgba(29,29,31,.11);
  --ledger-r40-line-strong:rgba(29,29,31,.18);
  --ledger-r40-text:#1d1d1f;
  --ledger-r40-text-2:#515154;
  --ledger-r40-accent:#8e8e93;
  --ledger-r40-shadow:0 18px 46px rgba(0,0,0,.08);
}

html,body{background:linear-gradient(180deg,var(--ledger-r40-canvas-top),var(--ledger-r40-canvas-bottom));}
body.ledger-page{
  color:var(--ledger-r40-text)!important;
  background:linear-gradient(180deg,var(--ledger-r40-canvas-top),var(--ledger-r40-canvas-bottom))!important;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
}

/* Black-reference navigation, matching the accepted Today sidebar contract. */
.ledger-admin-sidebar{
  width:auto!important;
  padding:18px 14px!important;
  background:#1f1f21!important;
  color:#f5f5f7!important;
  border-right:1px solid #3a3a3d!important;
  box-shadow:none!important;
}
.ledger-brand{
  color:#f5f5f7!important;
  padding:7px 8px 10px!important;
}
.ledger-brand-mark{
  width:36px!important;
  height:36px!important;
  border-radius:12px!important;
  background:#fff!important;
  color:#111!important;
  box-shadow:0 0 0 1px rgba(255,255,255,.35)!important;
}
.ledger-brand strong{font-size:1rem!important;color:#f5f5f7!important}
.ledger-brand small{color:#a1a1a6!important;opacity:1!important;font-size:.76rem!important}

.ledger-admin-nav{gap:0!important}
.ledger-admin-nav button,
.ledger-sidebar-group button{
  min-height:46px!important;
  margin:5px 0!important;
  padding:11px 14px!important;
  border:1.5px solid #747478!important;
  border-radius:999px!important;
  background:transparent!important;
  color:#f5f5f7!important;
  font-size:.95rem!important;
  font-weight:650!important;
  box-shadow:none!important;
  opacity:1!important;
}
.ledger-admin-nav button span{opacity:1!important}
.ledger-admin-nav button:hover,
.ledger-sidebar-group button:hover{
  background:#29292c!important;
  border-color:#8c8c90!important;
  color:#fff!important;
}
.ledger-admin-nav button.active,
.ledger-sidebar-group button.active{
  background:#fff!important;
  color:#111!important;
  border-color:#707074!important;
  box-shadow:0 0 0 2px rgba(0,0,0,.72),0 1px 2px rgba(0,0,0,.16)!important;
}
.ledger-admin-nav button:focus-visible,
.ledger-sidebar-group button:focus-visible,
.ledger-back:focus-visible{
  outline:3px solid #0a84ff!important;
  outline-offset:3px!important;
}
.ledger-sidebar-group{
  gap:0!important;
  padding-top:10px!important;
  border-top:1px solid #3a3a3d!important;
}
.ledger-sidebar-group p{
  color:#a1a1a6!important;
  opacity:1!important;
  margin:15px 12px 4px!important;
  font-size:.69rem!important;
}
.ledger-back{
  margin-top:auto!important;
  min-height:44px!important;
  display:flex!important;
  align-items:center!important;
  padding:10px 14px!important;
  border:1.5px solid #747478!important;
  border-radius:999px!important;
  color:#f5f5f7!important;
  opacity:1!important;
}
.ledger-back:hover{background:#29292c!important;border-color:#8c8c90!important}

/* Today-style editorial canvas. */
.ledger-admin-main{
  background:transparent!important;
  color:var(--ledger-r40-text)!important;
}
.ledger-admin-header{
  padding:30px 34px 24px!important;
  background:transparent!important;
  border-bottom:0!important;
  align-items:center!important;
}
.ledger-eyebrow{
  color:#6e6e73!important;
  opacity:1!important;
  font-size:.78rem!important;
  letter-spacing:.09em!important;
}
.ledger-admin-header h1{
  color:var(--ledger-r40-text)!important;
  font-size:clamp(2.45rem,5vw,4.5rem)!important;
  line-height:.98!important;
  letter-spacing:-.045em!important;
  font-weight:780!important;
}
.ledger-admin-header p:last-child{
  color:var(--ledger-r40-text-2)!important;
  opacity:1!important;
  margin-top:8px!important;
  font-size:1rem!important;
}
.ledger-header-actions{gap:10px!important;align-items:center!important}
.ledger-search-wrap{color:var(--ledger-r40-text-2)!important;opacity:1!important;font-size:.78rem!important}
.ledger-search-wrap input,
.ledger-selects select,
.ledger-editor-field :is(input,textarea,select),
#ledgerEditForm>section>textarea{
  background:#fff!important;
  color:var(--ledger-r40-text)!important;
  border:1px solid var(--ledger-r40-line-strong)!important;
  border-radius:14px!important;
  box-shadow:none!important;
}
.ledger-search-wrap input{min-height:44px!important;padding:0 14px!important}
.ledger-new,
#ledgerEditForm button:not(.secondary){
  min-height:44px!important;
  border-radius:999px!important;
  background:#1d1d1f!important;
  color:#fff!important;
  border:1px solid #1d1d1f!important;
  box-shadow:none!important;
}
.ledger-new:hover,
#ledgerEditForm button:not(.secondary):hover{background:#343438!important}
#ledgerEditForm button.secondary,
.ledger-editor-head button.secondary{
  min-height:44px!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#1d1d1f!important;
  border:1px solid var(--ledger-r40-line-strong)!important;
  box-shadow:none!important;
}

/* Toolbar becomes a quiet material control strip. */
.ledger-toolbar{
  margin:0 26px 18px!important;
  min-height:58px!important;
  padding:9px 14px!important;
  background:var(--ledger-r40-surface-2)!important;
  border:1px solid var(--ledger-r40-line)!important;
  border-radius:18px!important;
  box-shadow:none!important;
}
.ledger-bulk-meta{color:var(--ledger-r40-text-2)!important;opacity:1!important;font-size:.86rem!important}
.ledger-selects select{height:38px!important;color:var(--ledger-r40-text)!important}

/* Main workspace mirrors Today chapter material instead of a dark admin console. */
.ledger-workspace{
  margin:0 26px 26px!important;
  min-height:0!important;
  gap:16px!important;
  background:transparent!important;
}
.ledger-table-pane,
.ledger-editor-pane{
  background:var(--ledger-r40-surface)!important;
  color:var(--ledger-r40-text)!important;
  border:1px solid var(--ledger-r40-line)!important;
  border-radius:24px!important;
  box-shadow:var(--ledger-r40-shadow)!important;
  overflow:auto!important;
}
.ledger-table-pane{border-right:1px solid var(--ledger-r40-line)!important}
.ledger-editor-pane{padding:24px!important}
.ledger-table-head{
  background:rgba(247,247,249,.96)!important;
  color:#6e6e73!important;
  border-bottom:1px solid var(--ledger-r40-line)!important;
  opacity:1!important;
  padding:12px 18px!important;
}
.ledger-record{
  color:var(--ledger-r40-text)!important;
  border-bottom:1px solid rgba(29,29,31,.065)!important;
  padding:12px 18px!important;
}
.ledger-record:hover{background:rgba(29,29,31,.035)!important}
.ledger-record.selected{
  background:#fff!important;
  box-shadow:inset 4px 0 0 var(--ledger-r40-accent)!important;
}
.ledger-record-name strong,.ledger-record-id{color:#1d1d1f!important}
.ledger-record-name small,.ledger-cell{color:#6e6e73!important;opacity:1!important}
.ledger-status{
  background:#fff!important;
  color:#515154!important;
  border:1px solid rgba(29,29,31,.14)!important;
  padding:4px 9px!important;
}
.ledger-status[data-status="succeeded"]{border-color:rgba(52,199,89,.42)!important;color:#237a3b!important}
.ledger-status[data-status="failed"]{border-color:rgba(255,59,48,.38)!important;color:#b02a22!important}
.ledger-status[data-status="pending"]{border-color:rgba(255,159,10,.42)!important;color:#95600a!important}

/* Editor reads like a Today chapter with calm white fields. */
.ledger-editor-empty{color:#6e6e73!important;opacity:1!important}
.ledger-editor-head{border-bottom:1px solid var(--ledger-r40-line)!important}
.ledger-editor-head h2{color:#1d1d1f!important;font-size:1.55rem!important;letter-spacing:-.025em!important}
.ledger-editor-id{color:#6e6e73!important}
.ledger-editor-section{border-bottom:1px solid var(--ledger-r40-line)!important;padding:18px 0!important}
.ledger-editor-section h3{color:#6e6e73!important;opacity:1!important;font-size:.75rem!important}
.ledger-editor-field{
  background:rgba(247,247,249,.9)!important;
  border:1px solid rgba(29,29,31,.07)!important;
  border-radius:14px!important;
  padding:10px 11px!important;
}
.ledger-editor-field span{color:#6e6e73!important;opacity:1!important}
.ledger-editor-field strong{color:#1d1d1f!important}
.ledger-editor-help,.ledger-original{color:#515154!important;opacity:1!important}
.ledger-event{border-left:3px solid rgba(29,29,31,.18)!important}
.ledger-event strong{color:#1d1d1f!important}
.ledger-event small{color:#6e6e73!important;opacity:1!important}

.ledger-project-card,.ledger-activity-row{border-bottom:1px solid rgba(29,29,31,.065)!important;color:#1d1d1f!important}
.ledger-project-card:hover{background:rgba(29,29,31,.035)!important}
.ledger-project-card p,.ledger-activity-row small,.ledger-activity-type{color:#6e6e73!important;opacity:1!important}
.ledger-activity-id{color:#515154!important}
.ledger-loading,.ledger-empty{color:#6e6e73!important;opacity:1!important}
.ledger-error{color:#b42318!important;opacity:1!important}
.ledger-success{color:#237a3b!important}

.ledger-page :is(button,input,textarea,select,a):focus-visible{
  outline:3px solid #0a84ff!important;
  outline-offset:3px!important;
}

@media(max-width:1100px){
  .ledger-admin-header{padding:24px 24px 18px!important;align-items:flex-start!important;flex-direction:column!important}
  .ledger-header-actions{width:100%!important}
  .ledger-search-wrap{flex:1!important}
  .ledger-search-wrap input{width:100%!important}
  .ledger-toolbar,.ledger-workspace{margin-left:18px!important;margin-right:18px!important}
}

@media(max-width:900px){
  .ledger-admin-shell{grid-template-columns:82px minmax(0,1fr)!important}
  .ledger-admin-sidebar{padding:14px 8px!important}
  .ledger-brand span:last-child{display:none!important}
  .ledger-admin-nav button{font-size:0!important;padding:10px!important;text-align:center!important}
  .ledger-admin-nav button span{width:auto!important;font-size:1rem!important}
  .ledger-sidebar-group,.ledger-back{display:none!important}
  .ledger-workspace{grid-template-columns:1fr!important}
  .ledger-editor-pane{inset:0 0 0 82px!important;border-radius:0!important}
}

@media(max-width:620px){
  .ledger-admin-shell{grid-template-columns:1fr!important}
  .ledger-admin-sidebar{position:static!important;height:auto!important;display:none!important}
  .ledger-admin-main{height:auto!important;min-height:100vh!important;overflow:visible!important}
  .ledger-admin-header{padding:20px 16px 14px!important}
  .ledger-admin-header h1{font-size:2.75rem!important}
  .ledger-header-actions{align-items:stretch!important;flex-direction:column!important}
  .ledger-toolbar{margin:0 12px 12px!important;align-items:flex-start!important;flex-direction:column!important}
  .ledger-selects{width:100%!important;flex-wrap:wrap!important}
  .ledger-workspace{margin:0 12px 12px!important}
  .ledger-table-pane{border-radius:20px!important}
  .ledger-editor-pane{position:fixed!important;inset:0!important;border-radius:0!important;z-index:20!important}
}

@media(prefers-reduced-motion:reduce){
  .ledger-page *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
