:root{--ink:#103D52;--blue:#103D52;--paper:#FAF9F6;--gold:#A17B46;--green:#427967;--line:#d9e1df;--muted:#52666f}body{background:var(--paper);color:var(--ink)}header{background:var(--paper)}button,input,select,textarea{font-family:inherit}button{min-height:44px;border-radius:12px}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #477C9D;outline-offset:3px}main.navigation-compact{padding-left:24px;max-width:1180px}.navigation-compact .focus-sidebar{display:none}.navigation-open .focus-sidebar{display:block;box-shadow:0 12px 40px #103d5230}.navigation-toggle{margin:12px 0;background:#fff;border:1px solid var(--line);color:var(--ink);padding:10px 18px}.focus-home{padding:20px 0 28px}.focus-home h1{font-size:clamp(24px,4vw,36px);line-height:1.2;margin:12px 0}.focus-home p{color:var(--muted)}.focus-destinations{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:24px}.destination{display:flex;align-items:center;gap:16px;min-height:112px;padding:22px;background:#fff;border:1px solid var(--line);box-shadow:0 3px 10px #103d5208;color:var(--ink);text-align:left;font-size:16px}.destination svg{width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:1.5;flex-shrink:0}.destination[data-destination=plan]{background:#103D52;color:#fff}.destination[data-destination=focus]{background:#F6F0E5;color:#76582e}.destination[data-destination=cards]{background:#E9F1EC;color:#32604f}.destination[data-destination=timer]{background:#E8F2F2;color:#28616d}.destination:hover{box-shadow:0 5px 16px #103d521c;transform:translateY(-1px)}main.at-home>:not(.focus-home):not(.navigation-toggle):not(.focus-sidebar):not(.profile-bar):not(footer){display:none!important}.focus-home[hidden]{display:none}.planner-heading h1{font-size:28px}.planner-heading p{font-size:14px}.plan-stats{background:#edf2f4;padding:16px}.plan-task{border:1px solid var(--line);border-left:3px solid #103D52;box-shadow:none;padding:16px}.plan-task.is-done{background:#E9F1EC}.plan-task h3{line-height:1.5}.controls,.review-panel,.review-route,.card-library,#plan-settings{box-shadow:none;border-color:var(--line);background:#fff}.focus-card{border-top-color:#427967;background:#fff;box-shadow:0 3px 12px #103d5208}.focus-card .card-answer{background:#E9F1EC;border-color:#cbded2;border-left-color:#427967}.recall-card{border-top:3px solid #477C9D;background:#fff}.focal-answer{background:#EAF2F7;border-color:#c9dce8;border-left-color:#477C9D}.focus-brand{color:#A17B46}.card-actions button,.recall-actions button{min-height:44px}.timer-center{background:#E8F2F2;border-radius:18px;padding:24px}.timer-center output{font-variant-numeric:tabular-nums}.session-message{background:#E8F2F2;color:#103D52}.session-message blockquote,.session-message .eyebrow,.session-message .quote-signature{color:#103D52}.card-group-grid button{border-left-color:#427967}.profile-bar{border-radius:14px}.card-question,.focal-prompt{overflow-wrap:anywhere}@media(max-width:850px){main.navigation-compact{padding:0 14px}.focus-destinations{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.destination{min-height:112px;padding:16px 10px;flex-direction:column;text-align:center;font-size:14px;gap:10px}.navigation-open .focus-sidebar{position:static;margin:0 0 12px}.focus-home{padding-top:10px}.planner-heading h1{font-size:25px}.plan-stats strong{font-size:18px}.card-library{padding:12px}.focus-card{padding:16px}.focus-card .card-question{font-size:18px}.plan-fields label{min-width:120px}}
.account-menu summary,.advanced-filters summary{cursor:pointer;min-height:44px;padding:12px;font-weight:650}.advanced-filters{width:100%;border-top:1px solid var(--line)}.advanced-filters[open]{display:flex;flex-wrap:wrap;gap:12px}.advanced-filters label{display:inline-flex;flex-direction:column;margin:8px;max-width:100%}#priority-filters [data-priority="0"][aria-pressed=true]{background:#A17B46;color:white}#priority-filters [data-priority="1"][aria-pressed=true]{background:#477C9D;color:white}#priority-filters [data-priority="2"][aria-pressed=true]{background:#427967;color:white}

.card-question,.card-answer{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.65}.card-answer img,.card-question img{display:block;max-width:100%;height:auto;margin:12px auto}.card-answer mark,.card-question mark{background:#f6e3a9;color:#103D52;border-radius:3px;padding:0 2px}

.cloze-answer mark{background:#f6df9d;color:#103d52;font-weight:800;padding:2px 5px;border-radius:4px}.card-answer{line-height:1.5!important}.card-answer:before{margin-bottom:10px}.card-question{line-height:1.45!important}

/* Compact responsive forms and accessible motion */
input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #477C9D;outline-offset:2px}button:disabled{cursor:not-allowed;opacity:.6}.plan-tasks{border-left:2px solid var(--line);padding-left:12px}.plan-fields input,.plan-fields select{max-width:100%;box-sizing:border-box}.card-editor{max-width:min(640px,calc(100vw - 32px));max-height:85dvh;overflow:auto}.card-editor textarea{min-height:140px;resize:vertical}.card-actions,.recall-actions,.plan-actions{flex-wrap:wrap}@media(max-width:600px){.plan-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.plan-fields label{min-width:0}.plan-task{gap:10px}.plan-stats{flex-wrap:wrap;gap:12px}.card-question,.focal-prompt{font-size:18px}.plan-actions button{white-space:normal}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}.destination:hover{transform:none}}

.destination[data-destination=map],.destination[data-destination=radar]{background:#EAF2F7;color:#103D52}.focus-home h1:focus{outline:none}.timer-history summary{min-height:44px;cursor:pointer;padding:12px 0}.timer-summary{gap:12px;flex-wrap:wrap}.plan-empty{background:#f3f6f5;border:1px dashed var(--line);border-radius:12px;padding:24px}.plan-task>div{min-width:0}.plan-task h3{overflow-wrap:anywhere}.timer-center output{font-size:clamp(42px,8vw,72px)}
.timer-center .timer-dial{display:grid;place-items:center;inline-size:min(100%,230px);aspect-ratio:1;margin:0 auto 12px;border:5px solid #397e8c;border-radius:50%;background:#faf9f6;color:#103d52}.timer-dial output{font-variant-numeric:tabular-nums}.card-editor li{margin:.5rem 0;overflow-wrap:anywhere}.destination:active{box-shadow:inset 0 0 0 2px currentColor}

/* Keep the page within the viewport; only data tables scroll sideways. */
@media (max-width: 600px) {
  header { gap: 8px 14px; }
  header .brand { min-inline-size: 0; max-inline-size: 100%; }
  header .brand img { flex-shrink: 0; }
  header .brand-word, header .brand-word small { overflow-wrap: anywhere; white-space: normal; }
  main.navigation-compact > *, .profile-bar > *, .profile-create > *,
  .controls > *, .resultbar > *, .review-stats > *, .plan-fields > *,
  .timer-summary > *, .focus-workspace > *, .focus-destinations > *,
  .form-pair > *, .card-head > *, .card-group-grid > * { min-inline-size: 0; }
  .account-gate { width: calc(100% - 28px); box-sizing: border-box; padding: clamp(16px, 5vw, 28px); }
  .profile-bar, .profile-create, .card-head, .timer-heading, .timer-center,
  .timer-actions, .resultbar, .controls, .filters, .bankrow, .segmented,
  .tabs, .review-bottom, .focus-free-actions { flex-wrap: wrap; }
  .profile-bar, .card-head, .timer-heading, .review-stats, .resultbar,
  .controls, .plan-stats, .timer-summary, .destination { overflow-wrap: anywhere; }
  .controls input, .controls select, .profile-create input, .plan-fields input,
  .plan-fields select, .card-filters input, .card-filters select,
  .account-gate input, .review-panel input, .review-panel select,
  .review-panel textarea, .card-editor input, .card-editor select,
  .card-editor textarea { min-inline-size: 0; max-inline-size: 100%; box-sizing: border-box; font-size: 16px; }
  .advanced-filters label { box-sizing: border-box; max-inline-size: calc(100% - 16px); }
  .card-group-grid { grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)); }
  .form-pair, .focus-workspace { grid-template-columns: minmax(0, 1fr); }
  .timer-summary { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .timer-live, .timer-history-row b, .entry-badge, .notebook-nav button,
  .bankrow button, .tabs button, .destination { white-space: normal; }
  .notebook-nav button, .plan-actions button, .profile-actions button { overflow-wrap: anywhere; max-inline-size: 100%; }
  .annual-scroll { max-inline-size: 100%; }
  dialog { box-sizing: border-box; max-inline-size: calc(100vw - 24px); }
}
@media (max-width: 360px) {
  .plan-fields { grid-template-columns: minmax(0, 1fr); }
  .timer-summary { gap: 6px; }
}
