  .rb15-dashboard{max-width:1540px;margin:0 auto 18px;display:grid;gap:12px;direction:inherit}
  .rb15-dashboard *{box-sizing:border-box}
  .rb15-dashboard-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:2px 2px 0}
  .rb15-dashboard-title{display:flex;align-items:center;gap:10px;min-width:0}
  .rb15-dashboard-title span{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:linear-gradient(145deg,#e8f2ff,#dff7fb);color:#155cc1;font-size:15px;font-weight:900}
  .rb15-dashboard-title strong{color:#183453;font-size:13px;letter-spacing:.01em}
  .rb15-dashboard-title small{display:block;color:#7b8da4;font-size:9px;margin-top:1px}
  .rb15-scope{display:flex;align-items:center;gap:8px;color:#68809b;font-size:9px;font-weight:800}
  .rb15-scope select{min-width:190px;max-width:330px;height:36px;padding:0 32px 0 10px;border:1px solid #cbd9e8;border-radius:9px;background:#fff;color:#23486f;font-size:10px;font-weight:750;outline:0}
  .rb15-scope select:focus{border-color:#78a2df;box-shadow:0 0 0 3px #2170ec16}
  .rb15-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:10px}
  .rb15-card{grid-column:span 4;min-width:0;background:#fff;border:1px solid #d5e1ed;border-radius:14px;padding:14px;box-shadow:0 7px 22px rgba(18,48,83,.055);overflow:hidden}
  .rb15-card.rb15-wide{grid-column:span 6}
  .rb15-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:11px}
  .rb15-card h3{margin:0;color:#170a61;font-size:11px;font-weight:850;letter-spacing:.01em}
  .rb15-card header small{display:block;color:#8494a8;font-size:8px;margin-top:2px}
  .rb15-icon{flex:none;display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:#eff6ff;color:#2868bd;font-size:13px}
  .rb15-metric{display:flex;align-items:baseline;gap:6px;color:#12395f}
  .rb15-metric strong{font-size:27px;line-height:1;font-weight:850;letter-spacing:-.04em}
  .rb15-metric span{color:#7489a1;font-size:9px;font-weight:750}
  .rb15-progress{height:7px;margin-top:11px;border-radius:99px;background:#edf2f7;overflow:hidden}
  .rb15-progress>i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2f73df,#20a8bc)}
  .rb15-subline{display:flex;justify-content:space-between;gap:9px;margin-top:8px;color:#6b8199;font-size:8px;line-height:1.4}
  .rb15-link{border:0;background:transparent;padding:0;color:#276ac1;cursor:pointer;font-size:8px;font-weight:850}
  .rb15-link:hover{text-decoration:underline}
  .rb15-empty{min-height:55px;display:grid;place-items:center;text-align:center;color:#7b8da2;background:#f8fbfe;border:1px dashed #d8e3ee;border-radius:10px;padding:10px;font-size:9px;line-height:1.45}
  .rb15-session-list{display:grid;gap:6px}
  .rb15-session{width:100%;border:1px solid #dce6f0;background:#fbfdff;border-radius:9px;padding:8px 9px;display:grid;grid-template-columns:48px minmax(0,1fr);gap:8px;text-align:left;cursor:pointer}
  .rb15-session:hover{background:#f3f8fe;border-color:#b9cfe8}
  .rb15-session time{color:#1766bd;font-size:10px;font-weight:900}
  .rb15-session strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#274765;font-size:9px}
  .rb15-session small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;color:#7d8fa4;font-size:7px}
  .rb15-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px}
  .rb15-action{min-height:39px;border:1px solid #cbd9e8;border-radius:9px;background:#f9fbfe;color:#315a86;cursor:pointer;padding:8px 9px;font-size:9px;font-weight:820;text-align:left}
  .rb15-action:hover{border-color:#91b2dc;background:#f1f7ff;color:#1558ad}
  .rb15-action.primary{color:#fff;border-color:#1e66d2;background:linear-gradient(145deg,#2776e5,#1d60c8)}
  .rb15-action:disabled{opacity:.45;cursor:not-allowed}
  .rb15-deadline{display:grid;gap:5px}
  .rb15-deadline strong{color:#175f6a;font-size:19px;line-height:1.15}
  .rb15-deadline span{color:#6d829a;font-size:9px}
  .rb15-deadline small{color:#8293a8;font-size:8px}
  .rb15-workload{display:grid;gap:8px}
  .rb15-loadrow{display:grid;grid-template-columns:minmax(85px,.7fr) minmax(80px,1.3fr) auto;align-items:center;gap:8px}
  .rb15-loadrow strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#31506f;font-size:8px}
  .rb15-loadbar{height:6px;border-radius:99px;background:#edf2f6;overflow:hidden}
  .rb15-loadbar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#4e83d8,#32a7b2)}
  .rb15-loadrow span{color:#627b95;font-size:8px;font-weight:850;min-width:36px;text-align:end}
  .rb15-toggle-list{display:grid;gap:7px}
  .rb15-toggle{display:grid;grid-template-columns:minmax(0,1fr) 34px;align-items:center;gap:10px;padding:8px 9px;border:1px solid #dbe5ef;border-radius:9px;background:#fbfdff;cursor:pointer}
  .rb15-toggle span{color:#395775;font-size:8px;font-weight:760;line-height:1.35}
  .rb15-toggle input{position:absolute;opacity:0;pointer-events:none}
  .rb15-switch{width:34px;height:19px;border-radius:99px;background:#cbd6e1;padding:2px;transition:.15s}
  .rb15-switch::after{content:"";display:block;width:15px;height:15px;border-radius:50%;background:#fff;box-shadow:0 1px 4px #183a6033;transition:.15s}
  .rb15-toggle input:checked + .rb15-switch{background:#2673d7}
  .rb15-toggle input:checked + .rb15-switch::after{transform:translateX(15px)}
  [dir="rtl"] .rb15-toggle input:checked + .rb15-switch::after{transform:translateX(-15px)}
  .rb15-note{margin-top:8px;color:#8494a8;font-size:7px;line-height:1.45}
  .rb15-toast{position:fixed;right:18px;bottom:18px;z-index:99999;max-width:min(360px,calc(100vw - 36px));padding:11px 13px;border-radius:11px;background:#0d315a;color:#fff;box-shadow:0 14px 38px #071d3940;font-size:10px;line-height:1.45;animation:rb15in .18s ease-out}
  @keyframes rb15in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
  @media(max-width:1100px){.rb15-card{grid-column:span 6}}
  @media(max-width:720px){
    .rb15-dashboard-head{align-items:stretch;flex-direction:column}
    .rb15-scope{justify-content:space-between}.rb15-scope select{flex:1;min-width:0;max-width:none}
    .rb15-card,.rb15-card.rb15-wide{grid-column:1/-1}
    .rb15-actions{grid-template-columns:1fr}
  }

/* ResearchBook 1.54 dashboard hierarchy and readability */
.rb15-dashboard{gap:14px}
.rb15-dashboard-head{padding:4px 4px 1px}
.rb15-dashboard-title span{width:38px;height:38px;border-radius:11px;font-size:18px}
.rb15-dashboard-title strong{font-size:18px;line-height:1.15;letter-spacing:-.015em}
.rb15-dashboard-title small{font-size:10px;margin-top:3px}
.rb15-scope{font-size:10px}
.rb15-scope select{height:39px;font-size:11px}
.rb15-card{padding:16px;border-radius:15px}
.rb15-card h3{font-size:14px;line-height:1.2}
.rb15-card header small{font-size:9.5px;line-height:1.35;margin-top:3px}
.rb15-icon,.rb15-enhance-icon,.rb15-role-icon{width:30px!important;height:30px!important;flex:0 0 30px!important;border-radius:9px!important;font-size:14px!important}
.rb15-icon-button{cursor:pointer;border:1px solid #d5e3f1;transition:transform .12s ease,box-shadow .12s ease,filter .12s ease,border-color .12s ease}
.rb15-icon-button:hover{filter:brightness(.98);border-color:#9fbce0;box-shadow:0 5px 12px rgba(25,77,133,.10)}
.rb15-icon-button:active{transform:translateY(1px);box-shadow:inset 0 2px 5px rgba(20,55,91,.18)}
.rb15-active-experiments-card{grid-column:1/-1;background:linear-gradient(135deg,#ffffff,#f7fbff)}
.rb15-active-experiments-card>header{margin-bottom:12px}
.rb15-experiment-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
.rb15-experiment-tile{min-width:0;display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:9px;text-align:left;cursor:pointer;padding:11px;border:1px solid #d6e3ef;border-radius:11px;background:#fff;color:#294c70;box-shadow:0 4px 13px rgba(20,58,94,.035);transition:transform .13s ease,border-color .13s ease,box-shadow .13s ease,background .13s ease}
.rb15-experiment-tile:hover{transform:translateY(-1px);border-color:#9dbce0;background:#f9fcff;box-shadow:0 8px 18px rgba(25,72,123,.09)}
.rb15-experiment-tile:active{transform:translateY(1px);box-shadow:inset 0 2px 6px rgba(25,65,105,.16)}
.rb15-experiment-tile-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:#edf5ff;font-size:17px}
.rb15-experiment-tile-copy{min-width:0;display:grid;gap:3px}
.rb15-experiment-tile-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:#244666}
.rb15-experiment-tile-copy small{font-size:9px;color:#71859b}
.rb15-experiment-tile-copy em{font-style:normal;font-size:9px;color:#2d6db4;font-weight:750}
.rb15-experiment-tile>i{font-style:normal;font-size:18px;color:#7d95ad}
.rb15-today-card{grid-column:span 8;background:linear-gradient(135deg,#f8fbff,#eef6ff);border-color:#bfd3ea;box-shadow:0 9px 26px rgba(30,82,139,.075)}
.rb15-today-card h3{font-size:17px;color:#103f72}
.rb15-quick-card{grid-column:span 4}
.rb15-session{padding:10px 11px;grid-template-columns:54px minmax(0,1fr);gap:9px}
.rb15-session time{font-size:12px}
.rb15-session strong{font-size:11px}
.rb15-session small{font-size:9px}
.rb15-metric strong{font-size:30px}
.rb15-metric span,.rb15-deadline span{font-size:10px}
.rb15-subline,.rb15-link,.rb15-loadrow strong,.rb15-loadrow span,.rb15-toggle span{font-size:10.5px}
.rb15-deadline strong{font-size:21px}
.rb15-deadline small,.rb15-note{font-size:10px}
.rb15-action{font-size:11.5px;min-height:41px;transition:transform .12s ease,box-shadow .12s ease,background .12s ease,border-color .12s ease}
.rb15-action:hover:not(:disabled){box-shadow:0 5px 12px rgba(30,76,126,.08)}
.rb15-action:active:not(:disabled){transform:translateY(1px);box-shadow:inset 0 2px 5px rgba(25,63,101,.16)}
@media(max-width:1250px){.rb15-experiment-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.rb15-today-card{grid-column:span 7}.rb15-quick-card{grid-column:span 5}}
@media(max-width:900px){.rb15-today-card,.rb15-quick-card{grid-column:1/-1}}
@media(max-width:620px){.rb15-experiment-tiles{grid-template-columns:1fr}}

/* 1.56: text-first dashboard headers. Decorative symbol boxes were removed. */
.rb15-card-action{appearance:none;border:1px solid #c8d8e8;border-radius:8px;background:#fff;color:#2b5f91;padding:6px 9px;font:800 11px/1.1 inherit;cursor:pointer;box-shadow:0 1px 2px rgba(18,52,88,.04);transition:background .12s ease,border-color .12s ease,box-shadow .12s ease,transform .12s ease}
.rb15-card-action:hover{background:#f5f9fe;border-color:#9dbad8;box-shadow:0 4px 10px rgba(18,52,88,.08)}
.rb15-card-action:active{transform:translateY(1px);box-shadow:inset 0 2px 4px rgba(18,52,88,.12)}
.rb15-card-action:focus-visible{outline:2px solid #5a9be8;outline-offset:2px}
.rb15-experiment-tile{grid-template-columns:minmax(0,1fr) auto!important}
