/* Private notebook: shared geometry; color roles are overridden by the appearance palettes.
   Scoped to the Web workspace; native, mini-program and public website are unchanged. */
.workspace-redesign {
  --nav-width: 232px;
  --workspace-chip: #E7ECF3;
  --workspace-hover: #E9EEF6;
  --workspace-shadow: #24354B08;
  --workspace-warning: #FFF5E4;
  --workspace-composer: #FAFBFE;
  --workspace-focus: #315DD51A;
  --workspace-note: #EFF3FC;
  --workspace-source: #F5F7FC;
  --color-bg: #F3F6FA;
  --color-surface: #FFFFFF;
  --color-text: #24354B;
  --color-muted: #607086;
  --color-brand: #315DD5;
  --color-brand-hover: #254CBB;
  --color-brand-active: #1E409F;
  --color-tint: #EDF2FF;
  --color-border: #E3E8EF;
  --color-control-border: #8B9AB0;
  --color-gold: #A17D40;
  background: var(--color-surface);
}
.workspace-redesign .sidebar {
  padding: 34px 20px 22px;
  background: var(--color-bg);
  border-right: 1px solid var(--color-border);
  overflow-y: auto;
}
.workspace-redesign .app-brand { margin: 0 9px 40px; gap: 10px; }
.workspace-redesign .app-brand .brand-mark {
  width: 34px; height: 40px; color: var(--color-brand);
}
.workspace-redesign .app-brand .brand-name { font-size: 19px; letter-spacing: .08em; }
.workspace-redesign .app-brand .brand-name small {
  font-size: 7px; letter-spacing: .13em; margin-top: 5px;
}
.workspace-redesign .space-label { margin: 0 12px 20px; padding: 0; font-size: 12px; gap: 8px; }
.workspace-redesign .mini-badge {
  border: 0; background: var(--workspace-chip); font: 10px/20px var(--font-body); padding: 0 6px;
}
.workspace-redesign .app-nav { gap: 7px; }
.workspace-redesign .app-nav a {
  min-height: 50px; padding: 12px 16px; border-radius: 12px; gap: 13px;
}
.workspace-redesign .app-nav a:hover { background: var(--workspace-hover); }
.workspace-redesign .app-nav a.active {
  background: var(--color-surface); color: var(--color-brand); font-weight: 600;
  box-shadow: 0 3px 12px var(--workspace-shadow);
}
.workspace-redesign .app-nav a.active:after { width: 5px; height: 5px; }
.workspace-redesign .sidebar-note { margin: auto 15px 36px; padding-top: 48px; }
.workspace-redesign .sidebar-note p { font-size: 18px; line-height: 1.95; letter-spacing: .04em; }
.workspace-redesign .sidebar-note > span:last-child { font-size: 11px; }
.workspace-redesign .sidebar-bottom { padding-top: 16px; }
.workspace-redesign .nav-quiet { font-size: 12px; min-height: 44px; padding: 10px 12px; border-radius: 8px; }
.workspace-redesign .nav-quiet:hover { background: var(--workspace-hover); }
.workspace-redesign .profile { padding: 18px 6px 0; gap: 10px; }
.workspace-redesign .profile strong { font-size: 12px; }
.workspace-redesign .profile small { display: block; margin-top: 3px; font-size: 10px; }
.workspace-redesign .avatar { background: var(--color-tint); }
.workspace-redesign .app-shell { display: flex; flex-direction: column; }
.workspace-redesign .app-topbar {
  display: grid; grid-template-columns: auto minmax(0, 1fr) auto;
  min-height: 76px; height: auto; padding: 14px 48px; border: 0; background: var(--color-surface);
}
.workspace-redesign .crumb { font-size: 12px; gap: 14px; }
.workspace-redesign .crumb strong { font-weight: 500; }
.workspace-redesign .topbar-actions { gap: 14px; }
.workspace-redesign .pwa-bar {
  min-width: 0; min-height: 36px; justify-content: flex-end; flex-wrap: wrap;
  padding: 0; border: 0; font-size: 11px; gap: 6px 10px;
}
.workspace-redesign .pwa-bar #pwa-status:before {
  content: ''; display: inline-block; width: 5px; height: 5px;
  margin-right: 7px; border-radius: 50%; background: var(--color-muted); vertical-align: 2px;
}
.workspace-redesign .pwa-bar.offline {
  padding: 0 10px; border-radius: 8px; background: var(--workspace-warning);
}
.workspace-redesign .pwa-bar button { border-color: var(--color-border); color: var(--color-brand); }
.workspace-redesign .app-main {
  width: 100%; max-width: 1340px; padding: 30px 48px 64px; flex: 1;
}
.workspace-redesign .page-heading { margin: 0 0 40px; min-height: 112px; align-items: center; }
.workspace-redesign .page-heading .eyebrow {
  font: 12px/22px var(--font-body); letter-spacing: .08em; margin-bottom: 14px;
}
.workspace-redesign .page-heading h1 {
  font-size: clamp(30px, 2.65vw, 40px); line-height: 1.45;
  letter-spacing: .04em; font-weight: 500; margin-bottom: 12px;
}
.workspace-redesign .page-heading p { font-size: 14px; line-height: 1.9; }
.workspace-redesign .page-heading .heading-action { padding-top: 20px; }
.workspace-redesign .sample-notice {
  border: 0; background: var(--color-bg); padding: 10px 14px;
  font-size: 12px; margin-top: -14px; margin-bottom: 28px;
}
.workspace-redesign .sample-notice button { font-size: 12px; min-height: 32px; }
.workspace-redesign .flow-layout {
  grid-template-columns: minmax(0, 1fr) 252px; gap: clamp(32px, 4vw, 64px);
}
.workspace-redesign .flow-main { width: 100%; max-width: none; }
.workspace-redesign .composer {
  border: 1px solid var(--color-border); border-radius: 18px; padding: 22px 24px 16px;
  background: var(--workspace-composer); box-shadow: 0 5px 24px var(--workspace-shadow);
  transition: border-color 160ms, box-shadow 160ms;
}
.workspace-redesign .composer:focus-within {
  border-color: var(--color-brand); box-shadow: 0 0 0 3px var(--workspace-focus);
}
.workspace-redesign .composer-heading {
  display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-bottom: 22px;
}
.workspace-redesign .composer-heading > span:first-child {
  display: flex; align-items: center; gap: 8px; color: var(--color-brand); font-size: 12px; font-weight: 500;
}
.workspace-redesign .composer-heading > span:last-child { color: var(--color-muted); font-size: 11px; }
.workspace-redesign .composer textarea {
  min-height: 108px; height: 108px; font-size: 18px; line-height: 1.9; letter-spacing: .025em;
}
.workspace-redesign .composer textarea::placeholder { color: var(--color-muted); }
.workspace-redesign .preview-attachments:empty { display: none; }
.workspace-redesign .composer-toolbar { margin-top: 12px; gap: 10px; }
.workspace-redesign .composer-tools { gap: 4px; margin-left: -8px; }
.workspace-redesign .tool-button { font-size: 12px; padding: 0 8px; }
.workspace-redesign .composer-actions { gap: 14px; }
.workspace-redesign .button { border-radius: 10px; font-size: 13px; }
.workspace-redesign .composer .button.primary { min-width: 124px; box-shadow: 0 3px 9px var(--workspace-shadow); }
.workspace-redesign .composer .button.primary:disabled { box-shadow: none; background: var(--color-disabled-bg); color: var(--color-muted); }
.workspace-redesign .composer-bottom {
  margin-top: 13px; padding-top: 12px; font-size: 10px; border-color: var(--color-border);
}
.workspace-redesign .input-error:empty { display: none; }
.workspace-redesign .stream-heading { display: flex; align-items: baseline; justify-content: space-between; margin-top: 38px; }
.workspace-redesign .stream-heading h2 { font-size: 15px; font-weight: 600; letter-spacing: .04em; }
.workspace-redesign .stream-heading > span { font-size: 11px; color: var(--color-muted); }
.workspace-redesign .list-toolbar { margin: 16px 0 24px; gap: 8px; }
.workspace-redesign .search-field {
  min-height: 40px; border: 1px solid var(--color-border); border-radius: 9px; padding: 0 12px;
}
.workspace-redesign .search-field input { font-size: 12px; }
.workspace-redesign .filter-select { min-height: 40px; border-color: transparent; background: var(--color-bg); padding: 8px; font-size: 11px; }
.workspace-redesign .date-divider { margin: 24px 0 0; padding: 0 0 0 29px; font-size: 12px; line-height: 24px; position: relative; }
.workspace-redesign .date-divider:before {
  content: ''; position: absolute; left: 4px; top: 8px; height: 7px; width: 7px;
  border: 1px solid var(--color-brand); border-radius: 50%; background: var(--color-surface);
}
.workspace-redesign .date-divider:after { margin-left: 4px; background: var(--color-border); }
.workspace-redesign .date-divider span { display: none; }
.workspace-redesign .fragment {
  border: 0; border-radius: 0; padding: 22px 0 26px 29px; margin: 0;
  background: transparent; position: relative;
}
.workspace-redesign .fragment:before {
  content: ''; position: absolute; top: 0; bottom: 0; left: 7px; width: 1px; background: var(--color-border);
}
.workspace-redesign .fragment + .fragment { border-top: 1px solid var(--color-border); }
.workspace-redesign .fragment-top { margin-bottom: 10px; }
.workspace-redesign .fragment-meta { font-size: 11px; gap: 9px; }
.workspace-redesign .fragment-meta time { font-size: 11px; }
.workspace-redesign .fragment .icon-button { min-height: 44px; min-width: 44px; margin: -10px -8px -10px 0; }
.workspace-redesign .fragment-text { font-size: 15px; line-height: 2; letter-spacing: .015em; }
.workspace-redesign .fragment-bottom { margin-top: 14px; }
.workspace-redesign .fragment .tag { font-size: 11px; border: 0; background: var(--color-bg); padding: 3px 10px; }
.workspace-redesign .fragment .button { min-height: 36px; padding: 6px 8px; font-size: 11px; color: var(--color-muted); }
.workspace-redesign .voice-line { background: var(--color-bg); }
.workspace-redesign .flow-main .empty-state {
  padding: 28px 24px 32px; border: 1px dashed var(--color-control-border); border-radius: 14px; background: var(--color-surface);
}
.workspace-redesign .flow-main .empty-state > span {
  width: 36px; height: 36px; margin-bottom: 12px; background: transparent; color: var(--color-muted);
}
.workspace-redesign .flow-main .empty-state > span svg { width: 24px; height: 24px; }
.workspace-redesign .flow-main .empty-state h2 { font-family: var(--font-display); font-weight: 500; font-size: 22px; }
.workspace-redesign .flow-main .empty-state p { font-size: 12px; margin-bottom: 14px; }
.workspace-redesign .flow-main .empty-state .button { min-height: 40px; font-size: 12px; }
.workspace-redesign .flow-rail { padding-top: 8px; gap: 30px; }
.workspace-redesign .rail-card { border: 0; padding: 0; background: transparent; border-radius: 0; }
.workspace-redesign .rail-heading { font-size: 13px; margin-bottom: 20px; }
.workspace-redesign .rail-heading > span:first-child { display: flex; align-items: center; gap: 9px; }
.workspace-redesign .rail-caption { color: var(--color-muted); font-size: 10px; font-weight: 400; }
.workspace-redesign .rail-empty { font-size: 12px; line-height: 2; color: var(--color-muted); }
.workspace-redesign .topic-row { margin: 0; min-height: 44px; border-bottom: 1px solid var(--color-border); font-size: 13px; }
.workspace-redesign .topic-row b { display: flex; align-items: center; gap: 7px; }
.workspace-redesign .topic-row .topic-dot { border: 0; background: var(--color-control-border); height: 5px; width: 5px; }
.workspace-redesign .topic-row:hover { color: var(--color-brand); }
.workspace-redesign .rail-link { font-size: 12px; min-height: 40px; margin-top: 16px; }
.workspace-redesign .emerging-note { border: 0; padding: 24px; border-radius: 14px; background: var(--workspace-note); }
.workspace-redesign .note-kicker { display: flex; align-items: center; gap: 7px; font-size: 11px; }
.workspace-redesign .emerging-note h3 { font-size: 23px; line-height: 1.75; margin: 20px 0 15px; letter-spacing: .02em; }
.workspace-redesign .emerging-note p { font-size: 12px; line-height: 1.95; }
.workspace-redesign .emerging-note .rail-link { margin-top: 14px; }
.workspace-redesign .quiet-note { border-top: 1px solid var(--color-border); padding: 24px 2px 0; font-size: 12px; }
.workspace-redesign .quiet-note strong { display: flex; align-items: center; gap: 8px; font-size: 13px; margin-bottom: 12px; }
.workspace-redesign .quiet-note .rail-link { color: var(--color-muted); margin-top: 10px; }
.workspace-redesign .app-footer { font-size: 11px; padding-bottom: 26px; }
.workspace-redesign .theme-list { background: var(--color-bg); border: 0; border-radius: 14px; }
.workspace-redesign .theme-option { min-height: 62px; }
.workspace-redesign .theme-option.active { background: var(--color-surface); box-shadow: 0 2px 10px var(--workspace-shadow); }
.workspace-redesign .theme-detail { border-radius: 18px; border-color: var(--color-border); padding: 32px; }
.workspace-redesign .source-excerpt { background: var(--workspace-source); border-left-color: var(--color-control-border); border-radius: 0 8px 8px 0; }
.workspace-redesign .source-excerpt p { font-size: 14px; line-height: 2; }
.workspace-redesign .observation-card { padding: 32px; border-radius: 18px; }
.workspace-redesign .observation-card h2 { font-size: 29px; font-weight: 500; }
.workspace-redesign .observation-aside { border: 0; background: var(--color-bg); border-radius: 14px; }
.workspace-redesign .segmented { background: var(--color-bg); border: 0; padding: 4px; }
.workspace-redesign .segmented button { min-height: 40px; }
.workspace-redesign .segmented button.active { background: var(--color-surface); box-shadow: 0 2px 7px var(--workspace-shadow); }
.workspace-redesign .detail-panel { width: min(560px, 100vw); }
.workspace-redesign .panel-header { padding: 20px 28px; }
.workspace-redesign .panel-content { padding: 30px 28px; }
.workspace-redesign .full-record { font-size: 17px; line-height: 2.1; }
.workspace-redesign .panel-content .source-excerpt { padding: 16px; }
@media (min-width: 1600px) {
  .workspace-redesign .app-main { padding-top: 42px; }
  .workspace-redesign .flow-layout { grid-template-columns: minmax(0, 1fr) 280px; }
}
@media (max-width: 1199px) and (min-width: 1024px) {
  .workspace-redesign { --nav-width: 212px; }
  .workspace-redesign .sidebar { padding-left: 14px; padding-right: 14px; }
  .workspace-redesign .app-main { padding: 24px 32px 48px; }
  .workspace-redesign .app-topbar { padding: 0 32px; }
  .workspace-redesign .flow-layout { grid-template-columns: minmax(0, 1fr) 216px; gap: 28px; }
  .workspace-redesign .composer { padding: 20px 18px 14px; }
  .workspace-redesign .composer-heading > span:last-child { display: none; }
  .workspace-redesign .char-count { display: none; }
  .workspace-redesign .pwa-bar { font-size: 10px; }
}
@media (max-width: 1023px) and (min-width: 768px) {
  .workspace-redesign .sidebar { width: 80px; padding: 26px 12px 20px; }
  .workspace-redesign .app-brand { margin: 0 auto 34px; }
  .workspace-redesign .app-shell { margin-left: 80px; }
  .workspace-redesign .app-nav a { padding: 12px; }
  .workspace-redesign .app-main { max-width: 860px; padding: 28px 36px 56px; }
  .workspace-redesign .flow-layout { display: block; }
  .workspace-redesign .flow-rail { display: none; }
  .workspace-redesign .app-topbar { padding: 0 36px; }
  .workspace-redesign .page-heading { max-width: none; }
  .workspace-redesign .theme-layout { grid-template-columns: 160px minmax(0, 1fr); }
  .workspace-redesign .theme-detail { padding: 24px; }
}
@media (max-width: 767px) {
  .workspace-redesign .sidebar { display: none; }
  .workspace-redesign .app-shell { margin-left: 0; padding-bottom: 82px; }
  .workspace-redesign .app-topbar {
    grid-template-columns: minmax(0, 1fr) auto; gap: 6px 12px;
    height: auto; min-height: 92px; padding: 10px 22px 0;
  }
  .workspace-redesign .crumb { gap: 11px; }
  .workspace-redesign .crumb strong { font-size: 13px; }
  .workspace-redesign .topbar-actions { gap: 4px; }
  .workspace-redesign .topbar-actions { grid-column: 2; grid-row: 1; }
  .workspace-redesign .topbar-actions > .icon-button { display: inline-flex; }
  .workspace-redesign .pwa-bar {
    grid-column: 1 / -1; grid-row: 2; padding: 0 0 12px; justify-content: flex-start;
    min-height: 28px; font-size: 10px; gap: 7px; border-bottom: 1px solid var(--color-border);
  }
  .workspace-redesign .pwa-bar.offline { padding: 8px 10px; }
  .workspace-redesign .pwa-bar button { min-height: 36px; }
  .workspace-redesign .app-main { padding: 28px 22px 40px; }
  .workspace-redesign .page-heading { min-height: 0; margin-bottom: 28px; gap: 14px; align-items: flex-start; }
  .workspace-redesign .page-heading .eyebrow { font-size: 11px; margin-bottom: 12px; letter-spacing: .03em; }
  .workspace-redesign .page-heading h1 { font-size: 30px; letter-spacing: .025em; margin-bottom: 10px; }
  .workspace-redesign .page-heading p { font-size: 12px; }
  .workspace-redesign .page-heading .heading-action { padding-top: 0; }
  .workspace-redesign .sample-notice { margin-top: -6px; padding: 10px; font-size: 10px; }
  .workspace-redesign .sample-notice button { font-size: 10px; min-height: 36px; }
  .workspace-redesign .flow-layout { display: block; }
  .workspace-redesign .flow-rail { display: none; }
  .workspace-redesign .composer { padding: 18px 16px 13px; border-radius: 15px; }
  .workspace-redesign .composer-heading { margin-bottom: 20px; }
  .workspace-redesign .composer-heading > span:last-child { display: none; }
  .workspace-redesign .composer textarea { height: 108px; min-height: 108px; font-size: 16px; }
  .workspace-redesign .composer-toolbar { flex-wrap: nowrap; gap: 4px; }
  .workspace-redesign .composer-tools { gap: 0; margin-left: -5px; }
  .workspace-redesign .tool-button { padding: 0 6px; font-size: 11px; gap: 5px; }
  .workspace-redesign .char-count { display: none; }
  .workspace-redesign .composer .button.primary { min-width: 100px; padding: 10px 12px; font-size: 12px; }
  .workspace-redesign .composer-bottom { font-size: 9px; margin-top: 10px; }
  .workspace-redesign .composer-bottom > span:last-child { display: none; }
  .workspace-redesign .stream-heading { margin-top: 30px; }
  .workspace-redesign .list-toolbar { margin-top: 12px; margin-bottom: 20px; gap: 5px; }
  .workspace-redesign .search-field { padding: 0 8px; min-width: 104px; gap: 6px; }
  .workspace-redesign .search-field input { font-size: 11px; }
  .workspace-redesign .filter-select { max-width: 88px; padding: 8px 4px; font-size: 10px; }
  .workspace-redesign .flow-main .empty-state { padding: 24px 12px; }
  .workspace-redesign .flow-main .empty-state h2 { font-size: 20px; }
  .workspace-redesign .flow-main .empty-state p { font-size: 11px; }
  .workspace-redesign .fragment { padding: 18px 0 22px 25px; }
  .workspace-redesign .fragment-text { font-size: 14px; line-height: 1.95; }
  .workspace-redesign .fragment-meta { gap: 7px; font-size: 10px; }
  .workspace-redesign .date-divider { padding-left: 25px; font-size: 11px; }
  .workspace-redesign .fragment-bottom { gap: 6px; }
  .workspace-redesign .fragment .tag { font-size: 10px; }
  .workspace-redesign .app-footer { font-size: 10px; padding: 0 22px 20px; }
  .workspace-redesign .mobile-nav { background: var(--color-surface); border-color: var(--color-border); }
  .workspace-redesign .mobile-nav a { font-size: 11px; gap: 5px; }
  .workspace-redesign .mobile-nav a.active:before {
    content: ''; position: absolute; top: 0; width: 24px; height: 2px; background: var(--color-brand); border-radius: 2px;
  }
  .workspace-redesign .theme-detail { padding: 20px; min-height: 0; }
  .workspace-redesign .source-excerpt p { font-size: 13px; }
  .workspace-redesign .observation-card { padding: 22px; }
  .workspace-redesign .observation-card h2 { font-size: 25px; }
  .workspace-redesign .theme-list { padding: 6px; }
  .workspace-redesign .theme-option { min-height: 44px; }
  .workspace-redesign .panel-header { padding: 14px 20px; }
  .workspace-redesign .panel-content { padding: 24px 20px; }
}
@media (prefers-reduced-motion: reduce) {
  .workspace-redesign *, .workspace-redesign *:before, .workspace-redesign *:after { transition: none; scroll-behavior: auto; }
}
.workspace-redesign .workspace-account-link {display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:6px 10px;border:1px solid var(--color-border);border-radius:6px;font-size:11px;white-space:nowrap;color:var(--color-brand)}
.workspace-redesign .workspace-account-link:hover {background:var(--color-tint)}
.workspace-redesign .workspace-language-button {display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:8px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);color:var(--color-brand);font-size:12px;flex-shrink:0}
.workspace-redesign .workspace-language-button:disabled {opacity:.5;cursor:not-allowed}
.workspace-redesign .appearance-options {margin-left:auto}
.workspace-redesign .panel-header-actions {display:flex;align-items:center;gap:8px}
html[lang=en-US] .workspace-redesign .page-heading h1 {letter-spacing:-.025em;line-height:1.25}
html[lang=en-US] .workspace-redesign .sidebar-note p {letter-spacing:0;font-size:17px}
html[lang=en-US] .workspace-redesign .app-topbar {grid-template-columns:minmax(0,auto) minmax(0,1fr) auto;gap:12px}
html[lang=en-US] .workspace-redesign .theme-option strong {overflow-wrap:anywhere}
@media(max-width:767px){html[lang=en-US] .workspace-redesign .appearance-label{display:none}html[lang=en-US] .workspace-redesign .appearance-options{margin-left:0}html[lang=en-US] .workspace-redesign .appearance-bar{justify-content:space-between}html[lang=en-US] .workspace-redesign .app-topbar{grid-template-columns:minmax(0,1fr) auto}html[lang=en-US] .workspace-redesign .crumb>span:not(.mobile-brand){display:none}html[lang=en-US] .workspace-redesign .composer-toolbar{flex-wrap:wrap}html[lang=en-US] .workspace-redesign .composer-actions{margin-left:auto}html[lang=en-US] .workspace-redesign .list-toolbar{flex-wrap:wrap}html[lang=en-US] .workspace-redesign .search-field{flex:1 1 100%}html[lang=en-US] .workspace-redesign .filter-select{max-width:none;flex:1}html[lang=en-US] .workspace-redesign .wide-toolbar{flex-wrap:wrap;gap:12px}html[lang=en-US] .workspace-redesign .page-heading{flex-direction:column}html[lang=en-US] .workspace-redesign .setting-row{gap:12px;flex-wrap:wrap}}
@media(max-width:359px){.workspace-redesign .workspace-account-link{padding-left:6px;padding-right:6px;font-size:10px}.workspace-redesign .topbar-actions>.icon-button{display:none}}
