.learning-dashboard {
  display:grid;
  grid-template-columns:1.2fr 1fr;
  gap:24px;
  padding-top:38px;
}
.learning-summary,.guide-invite {
  padding:28px 30px;
  border:1px solid var(--line);
  border-radius:14px;
  min-width:0;
}
.learning-summary {background:#fff;}
.learning-summary h2,.guide-invite h2 {
  font:600 23px/1.5 var(--sans);
}
.learning-metrics {display:flex;gap:36px;margin:22px 0;}
.learning-metrics>div {display:flex;flex-direction:column;min-width:0;}
.learning-metrics b {font:500 29px/1.5 var(--sans);color:var(--plum);}
.learning-metrics b small {font-size:15px;}
.learning-metrics span {font-size:12px;color:var(--muted);}
.learning-summary>.local-note {display:inline-block;margin-left:14px;font-size:11px;}
.guide-invite {position:relative;background:#e2eee7;color:var(--jade);padding-right:66px;}
.guide-invite p {font-size:14px;color:var(--muted);margin-top:15px;}
.guide-count {display:inline-block;font-size:12px;margin-bottom:12px;}
.guide-invite>.view-cue {position:absolute;right:24px;bottom:28px;}
.guide-invite:hover {background:#d9e9df;}
.reading-overview {
  display:flex;align-items:center;gap:20px;
  padding:14px 18px;margin-bottom:20px;
  background:#e6eee8;border-radius:8px;font-size:13px;
}
.reading-overview progress {min-width:60px;flex:1;height:9px;accent-color:var(--jade);}
.reading-overview .local-note {font-size:11px;}
.chapter-completion {display:flex;align-items:center;gap:15px;margin-top:23px;flex-wrap:wrap;}
.chapter-completion small {font-size:11px;color:var(--muted);}
.chapter-completion .button {min-height:42px;font-size:12px;}
.notebook-toolbar {display:flex;align-items:end;gap:15px;flex-wrap:wrap;margin:25px 0 13px;}
.notebook-toolbar label {font-size:12px;color:var(--muted);min-width:0;}
.notebook-toolbar select {display:block;width:185px;max-width:100%;margin-top:7px;padding:10px 12px;border:1px solid #b8c8d7;border-radius:7px;background:#fff;color:var(--ink);font-size:14px;}
.notebook-toolbar>span {font-size:12px;color:var(--muted);padding-block:10px;}
.notebook-toolbar>.button {margin-left:auto;min-height:43px;font-size:12px;}
.notebook-list {margin-top:15px;}
.notebook-row {display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.2fr);gap:24px;padding:25px 0;border-bottom:1px solid var(--line);}
.notebook-entry {position:relative;min-width:0;align-self:start;padding-right:44px;}
.notebook-entry>.save-button {top:8px;right:0;}
.notebook-open {width:100%;padding:0;display:grid;grid-template-columns:64px auto;align-items:center;gap:5px 15px;text-align:left;}
.notebook-open>.glyph {grid-row:1/4;font-size:66px;line-height:1.5;color:var(--blue);}
.notebook-open b {font-family:var(--serif);font-size:28px;font-weight:400;}
.notebook-open small {font-size:12px;color:var(--muted);overflow-wrap:anywhere;}
.notebook-open .view-cue {width:25px;height:25px;color:var(--plum);}
.notebook-open .view-cue svg {width:16px;height:16px;}
.notebook-open:hover {color:var(--plum);}
.notebook-fields {min-width:0;}
.notebook-fields .field-label:first-child {margin-top:0;}
.notebook-fields .field-label input,.notebook-fields .field-label textarea {font-size:14px;padding:10px 12px;}
.note-status {display:block;font-size:11px;color:var(--muted);margin-top:9px;}
.detail-actions {flex-wrap:wrap;}
.tour-position {display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 24px 23px 0;padding-bottom:13px;border-bottom:1px solid var(--line);font-size:12px;}
.tour-position a {color:var(--plum);text-decoration:underline;text-underline-offset:4px;}
.tour-controls {display:flex;gap:12px;flex-wrap:wrap;margin-top:24px;}
.guide-page {display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:38px;align-items:start;padding-bottom:70px;}
.guide-stops {display:grid;gap:15px;}
.guide-stop {display:grid;grid-template-columns:30px 65px minmax(0,1fr) 32px;gap:18px;align-items:center;padding:20px;text-align:left;background:#fff;border:1px solid #c3d1dc;border-radius:12px;}
.guide-stop:nth-child(2n) {background:#e9f1ec;}
.guide-stop:nth-child(3n) {background:#f2e6ee;}
.stop-number {font-size:13px;color:var(--muted);}
.guide-stop>.glyph {font-size:61px;line-height:1.3;color:var(--blue);text-align:center;}
.guide-stop b {display:block;font:500 28px var(--serif);}
.guide-stop small {display:block;font-size:12px;color:var(--muted);margin-top:9px;}
.guide-stop .view-cue {color:var(--plum);}
.guide-stop:hover {border-color:var(--plum);box-shadow:0 0 0 2px #79527515;}
.guide-aside {background:#f3e8d7;border-radius:12px;padding:26px;}
.guide-aside h2 {font:500 23px/1.6 var(--serif);}
.guide-aside p {font-size:14px;color:var(--muted);margin:15px 0 20px;}
.guide-aside .local-note {font-size:12px;}
.qr-dialog {width:min(520px,94vw);padding:35px;text-align:center;}
.qr-dialog h2 {font:500 27px/1.5 var(--serif);padding-inline:16px;margin:8px 0 22px;}
.qr-image {max-width:280px;margin:0 auto 18px;background:#fff;padding:10px;border:1px solid var(--line);}
.qr-image svg {display:block;width:100%;height:auto;}
.qr-dialog p {font-size:14px;}
.qr-dialog .local-note {font-size:12px;max-width:340px;margin:12px auto 18px;}
.qr-dialog .field-label {text-align:left;}
.qr-dialog input {font-size:12px;}
.qr-actions {display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:23px;}
.qr-actions .button {font-size:12px;padding-inline:15px;}
@media(max-width:800px) {
  .learning-dashboard {gap:18px;}
  .learning-summary,.guide-invite {padding:24px;}
  .learning-metrics {gap:24px;}
  .guide-page {grid-template-columns:minmax(0,1fr) 250px;gap:24px;}
  .guide-stop {grid-template-columns:22px 50px minmax(0,1fr) 28px;gap:10px;padding:16px;}
  .guide-stop>.glyph {font-size:49px;}
  .guide-stop b {font-size:25px;}
  .guide-stop small {font-size:11px;}
  .guide-stop .view-cue {width:27px;height:27px;}
}
@media(max-width:600px) {
  .learning-dashboard {grid-template-columns:1fr;padding-top:26px;gap:16px;}
  .learning-summary h2,.guide-invite h2 {font-size:21px;}
  .learning-summary>.local-note {display:block;margin:15px 0 0;}
  .learning-metrics {justify-content:space-between;gap:15px;}
  .learning-metrics b {font-size:25px;}
  .learning-metrics span {font-size:11px;}
  .guide-invite {padding-right:55px;}
  .guide-invite p {font-size:13px;}
  .reading-overview {flex-wrap:wrap;gap:10px 15px;}
  .reading-overview .local-note {flex-basis:100%;}
  .notebook-toolbar>.button {margin-left:0;}
  .notebook-row {grid-template-columns:1fr;gap:19px;}
  .notebook-entry {max-width:100%;}
  .notebook-open {grid-template-columns:60px auto auto 25px;gap:12px;}
  .notebook-open>.glyph {grid-row:auto;font-size:57px;}
  .notebook-open b {font-size:25px;}
  .notebook-open small {font-size:10px;}
  .notebook-open .view-cue {width:23px;height:23px;}
  .guide-page {grid-template-columns:1fr;gap:25px;padding-bottom:50px;}
  .guide-stop {grid-template-columns:20px 46px minmax(0,1fr) 25px;}
  .guide-stop .view-cue {width:25px;height:25px;}
  .guide-stop small {font-size:12px;}
  .tour-position {margin-right:15px;}
  .qr-dialog {padding:32px 23px 25px;}
  .qr-dialog h2 {font-size:23px;}
  .qr-image {max-width:250px;}
  .qr-actions {gap:10px;}
}
