#notebook-view { letter-spacing: 0; }
.nb-profile-tools { display: flex; align-items: center; gap: 8px; flex-shrink: 0; max-width: 100%; }
.nb-profile-tools .top-profile-wrap { min-width: 0; }
#notebook-open.nb-launcher { width: 42px; height: 42px; flex-basis: 42px; background: #fff2a8; border: 1px solid #e1cf77; border-radius: 6px; }
#notebook-open.nb-launcher:hover { background: #ffe984; }
#notebook-open.nb-launcher img { width: 22px; height: 22px; }
.nb-context-access { display: inline-flex; align-items: center; margin-left: auto; margin-right: 8px; flex-shrink: 0; }
.nb-context-access:empty { display: none; }
.nb-form-access { display: flex; justify-content: flex-end; margin-bottom: 8px; }
.nb-drawer-access { position: sticky; float: right; top: 12px; margin: 12px 60px -54px 0; z-index: 10; }
.task-drawer:has(.nb-drawer-access:not(:empty)) .task-detail-head { padding-right: 98px; }
body.notebook-overlay-open { overflow: hidden; }
#notebook-dialog.nb-overlay { width: min(1180px, calc(100vw - 48px)); height: min(780px, calc(100dvh - 64px)); max-width: none; max-height: none; padding: 0; border: 1px solid #cddad3; border-radius: 8px; background: #f4f7f5; color: var(--ink, #233b30); overflow: hidden; }
#notebook-dialog[open] { display: flex; flex-direction: column; }
#notebook-dialog::backdrop { background: #16392b59; }
.nb-overlay-heading { display: flex; align-items: center; gap: 10px; flex-shrink: 0; padding: 16px 24px; }
.nb-overlay-heading h2 { flex: 1; margin: 0; font-size: 20px; }
#notebook-view { padding: 0 24px 24px; overflow: auto; min-height: 0; flex: 1; overscroll-behavior: contain; }
.nb-toolbar { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; padding-bottom: 18px; border-bottom: 1px solid var(--line, #dce4e0); }
.nb-toolbar .primary { display: inline-flex; align-items: center; gap: 8px; }
.nb-toolbar .primary img { filter: brightness(0) invert(1); }
.nb-search { display: flex; align-items: center; gap: 8px; min-width: 160px; max-width: 330px; flex: 1; margin-right: auto; border: 1px solid var(--line, #dce4e0); padding: 0 12px; border-radius: 6px; background: var(--surface, #fff); }
.nb-search input { min-width: 0; width: 100%; border: 0; box-shadow: none; background: transparent; padding: 10px 0; }
.nb-icon { display: inline-flex; justify-content: center; align-items: center; flex: 0 0 32px; width: 32px; height: 32px; padding: 6px; border: 0; border-radius: 4px; background: transparent; color: inherit; cursor: pointer; }
.nb-icon:hover { background: #176b5214; }
.nb-icon:focus-visible { outline: 2px solid #176b52; outline-offset: 2px; }
.nb-icon img { width: 18px; height: 18px; flex-shrink: 0; }
.nb-icon:disabled { opacity: .4; cursor: wait; }
.nb-save-state { display: flex; align-items: center; gap: 8px; min-height: 38px; color: var(--muted, #60716a); font-size: 12px; flex-wrap: wrap; }
.nb-save-state button { font-size: 12px; padding: 3px 8px; }
.nb-layout { display: grid; grid-template-columns: minmax(0, 1fr) 270px; gap: 24px; align-items: start; }
.nb-board { min-width: 0; }
.nb-section-heading { display: flex; align-items: center; gap: 8px; min-height: 40px; margin-bottom: 10px; }
.nb-section-heading h2 { margin: 0; font-size: 16px; }
.nb-section-heading > span { font-size: 12px; color: var(--muted, #60716a); }
.nb-section-heading button { margin-left: auto; }
.nb-notes { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(250px, 100%), 1fr)); gap: 16px; align-items: start; }
.nb-note { min-width: 0; background: #fff2a8; color: #343626; border: 1px solid #e1cf77; border-top: 4px solid #e8cd63; border-radius: 4px; box-shadow: 0 2px 4px #2f40200b; padding: 7px 14px 8px; overflow: hidden; }
.nb-note.pinned { border-top-color: #176b52; }
.nb-note-tools { display: flex; align-items: center; gap: 2px; min-height: 32px; margin: 0 -6px; }
.nb-note-date { flex: 1; font-size: 11px; color: #666440; margin-left: 2px; }
.nb-note-title, .nb-note-text { display: block; box-sizing: border-box; width: 100%; min-width: 0; border: 0; box-shadow: none; color: #343626; background: transparent; border-radius: 0; padding: 7px 0; }
.nb-note-title { font-size: 16px; line-height: 1.5; font-weight: 700; }
.nb-note-text { font-size: 14px; line-height: 1.65; height: 176px; min-height: 120px; max-height: 460px; resize: vertical; overflow-wrap: anywhere; }
.nb-note-title:focus, .nb-note-text:focus { outline: none; box-shadow: 0 1px 0 #948347; }
.nb-note-title::placeholder, .nb-note-text::placeholder { color: #817b56; }
.nb-note footer { display: flex; align-items: center; justify-content: space-between; gap: 4px; margin-top: 8px; padding-top: 5px; border-top: 1px solid #cfb75a60; }
.nb-note footer > div { display: flex; }
.nb-note-state { font-size: 10px; color: #6a684c; }
[data-nb-action="drag"] { cursor: grab; touch-action: none; user-select: none; }
.nb-dragging { opacity: .65; }
.nb-drop-target { outline: 3px solid #176b52; outline-offset: 3px; }
.nb-links-panel { border-left: 1px solid var(--line, #dce4e0); padding-left: 22px; min-width: 0; }
.nb-links { list-style: none; padding: 0; margin: 0; }
.nb-links > li { border-bottom: 1px solid var(--line, #dce4e0); padding: 8px 0; }
.nb-bookmark-link { display: flex; align-items: center; gap: 10px; padding: 4px 0; text-decoration: none; color: inherit; min-width: 0; }
.nb-bookmark-link > span:nth-child(2) { flex: 1; min-width: 0; }
.nb-bookmark-link strong, .nb-bookmark-link small { display: block; overflow-wrap: anywhere; }
.nb-bookmark-link strong { font-size: 14px; font-weight: 600; line-height: 1.5; }
.nb-bookmark-link small { font-size: 11px; color: var(--muted, #60716a); margin-top: 1px; }
.nb-bookmark-link > img { width: 14px; height: 14px; flex-shrink: 0; opacity: .6; }
.nb-bookmark-link:hover strong { text-decoration: underline; color: var(--green, #176b52); }
.nb-service-mark { display: flex; align-items: center; justify-content: center; width: 32px; height: 32px; flex: 0 0 32px; background: #e4efea; color: #176b52; font-weight: 700; border-radius: 6px; }
.nb-links > li:nth-child(3n + 2) .nb-service-mark { background: #eaf0fa; color: #315f9f; }
.nb-links > li:nth-child(3n) .nb-service-mark { background: #f4e6eb; color: #91506a; }
.nb-bookmark-tools { display: flex; justify-content: flex-end; margin-top: 2px; }
.nb-bookmark-tools .nb-icon { width: 28px; height: 28px; flex-basis: 28px; padding: 5px; }
.nb-empty { color: var(--muted, #60716a); font-size: 14px; margin: 36px 0; }
.nb-empty > img { display: block; opacity: .5; margin-bottom: 12px; }
.nb-conflict { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; padding: 12px 0; margin-bottom: 12px; border-bottom: 1px solid #bc8e32; color: #805d16; }
.nb-conflict p { flex: 1 1 260px; margin: 0; font-size: 13px; }
.nb-conflict button { font-size: 12px; }
.nb-mobile-tabs { display: none; }
.nb-dialog { width: min(460px, calc(100vw - 32px)); box-sizing: border-box; max-height: calc(100dvh - 32px); overflow-y: auto; padding: 24px; border: 1px solid #d4ded8; border-radius: 8px; background: var(--surface, #fff); color: var(--text, #20372d); }
.nb-dialog::backdrop { background: #11291e66; }
.nb-dialog header { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 16px; }
.nb-dialog h2 { margin: 0; font-size: 18px; }
.nb-dialog label { display: grid; gap: 6px; margin-bottom: 16px; font-size: 13px; }
.nb-dialog input { width: 100%; box-sizing: border-box; min-width: 0; padding: 10px 12px; border: 1px solid var(--line, #dce4e0); border-radius: 5px; background: #fff; color: inherit; font: inherit; font-size: 14px; }
.nb-dialog footer { display: flex; justify-content: flex-end; margin-top: 16px; }
.nb-dialog [role="alert"] { color: #b42318; font-size: 13px; overflow-wrap: anywhere; }
.nb-workspace-link { display: none; }
.notebook-popout .app-shell { display: none; }
.notebook-popout .sidebar, .notebook-popout .global-search, .notebook-popout #notification-toggle, .notebook-popout #quick-task-open, .notebook-popout .role-switch { display: none; }
.notebook-popout .nb-workspace-link { display: inline-flex; }
.notebook-popout [data-nb-action="window"] { display: none; }
.notebook-popout #notebook-close { display: none; }
.notebook-popout #notebook-dialog { width: 100vw; height: 100dvh; margin: 0; border: 0; border-radius: 0; }
.notebook-popout .main { padding-bottom: 28px; }
@media (max-width: 1100px) { .nb-layout { grid-template-columns: minmax(0, 1fr) 230px; gap: 18px; } .nb-links-panel { padding-left: 16px; } }
@media (max-width: 760px) {
  #notebook-dialog.nb-overlay { width: calc(100vw - 16px); height: calc(100dvh - 24px); }
  .nb-overlay-heading { padding: 12px 14px; }
  #notebook-view { padding: 0 14px 18px; }
  .notebook-popout #notebook-dialog { width: 100vw; height: 100dvh; }
  .nb-mobile-tabs { display: flex; margin: 4px 0 16px; }
  .nb-mobile-tabs button { flex: 1; }
  .nb-layout { grid-template-columns: minmax(0, 1fr); }
  .nb-links-panel { border: 0; padding: 0; }
  #notebook-view[data-pane="notes"] .nb-links-panel, #notebook-view[data-pane="links"] .nb-board { display: none; }
  .nb-search { max-width: none; flex-basis: calc(100% - 54px); }
  .nb-toolbar .primary { order: 1; }
  .nb-note-text { font-size: 16px; }
  .nb-note-title { font-size: 16px; }
  .nb-dialog { padding: 18px; }
  .nb-dialog input { font-size: 16px; }
}
