/* The navigator and the document own separate scroll areas, below fixed controls. */
#paco-workspace .p-journal-view{padding:0;height:100%;overflow:hidden}
.p-workspace-layout{display:grid;grid-template-columns:252px minmax(0,1fr);height:100%;min-height:0}
.p-calendar-column{border-right:1px solid #e0e7f0;background:#fbfcfe;min-height:0;overflow:hidden}
.p-month-nav{display:flex;flex-direction:column;min-height:0}
.p-month-tools{padding:15px 17px 12px;display:flex;gap:10px;align-items:center;border-bottom:1px solid #edf0f5}
#paco-workspace .p-month-tools button,.p-month-tools button{border:1px solid #dce4f0;border-radius:7px;color:var(--paco-accent-text);padding:7px 10px;background:white;font:inherit;cursor:pointer}
.p-month-tools label{min-width:0;font-size:10px;color:#77859a}
.p-month-tools input{display:block;border:0;background:transparent;color:#45546b;font-size:12px;max-width:145px;width:100%;margin-top:2px}
.p-month-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;overflow-anchor:none;scrollbar-width:thin;position:relative}
.p-months{position:relative;padding:4px 13px 30px}
.p-month{padding:14px 0 13px}
#paco-workspace .p-month h3,.p-month h3{font:600 13px/1.4 system-ui,sans-serif;margin:0 5px 12px;color:#273952}
.p-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));row-gap:3px;text-align:center;align-items:center}
.p-month-grid .p-weekday{font-size:10px;color:#8792a4;padding-bottom:5px}
#paco-workspace .p-month-grid button,.p-month-grid button{position:relative;height:33px;padding:0;border:0;background:none;color:#536178;display:flex;align-items:center;justify-content:center;border-radius:0;font:12px system-ui;cursor:pointer}
.p-month-grid button>span{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;margin-top:-3px;border:1px solid transparent}
#paco-workspace .p-month-grid button.in-week,.p-month-grid button.in-week{background:var(--paco-accent-soft);color:var(--paco-accent-text)}
.p-month-grid button:nth-child(7n+1).in-week{border-radius:6px 0 0 6px}.p-month-grid button:nth-child(7n).in-week{border-radius:0 6px 6px 0}
.p-month-grid button.is-selected>span{border-color:var(--paco-accent-ring);font-weight:650}
.p-month-grid button.is-today>span{background:var(--paco-accent)!important;color:white;border-color:var(--paco-accent)}
#paco-workspace .p-month-grid button:hover>span,.p-month-grid button:hover>span{background:var(--paco-accent-selected)}
.p-date-dots{display:flex;align-items:center;justify-content:center;gap:3px;height:5px;position:absolute;bottom:0;left:0;right:0}
.p-note-dot,.p-event-dot{display:inline-block;width:3px;height:3px;border-radius:50%;flex:none;background:#5686d6}
.p-event-dot{background:#d77778}
.p-calendar-legend{display:flex;justify-content:center;gap:15px;font-size:10px;color:#7a879b;padding:10px 5px;border-top:1px solid #edf0f5}
.p-calendar-legend span{display:flex;align-items:center;gap:5px}
.p-journal-pane{min-width:0;min-height:0;display:flex;flex-direction:column}
#paco-workspace .p-journal-pane .p-view-head{max-width:none;margin:0;padding:21px 28px 13px;flex-shrink:0;align-items:center}
#paco-workspace .p-journal-pane .p-view-head h1{font-size:25px}
.p-journal-controls{flex-shrink:0;padding:0 28px;background:#f6f8fc;z-index:2;border-bottom:1px solid #e2e8f1}
#paco-workspace .p-journal-controls .p-week-controls{justify-content:flex-start;margin-bottom:8px;gap:7px}
#paco-workspace button.p-week-label{font-size:13px;font-weight:550;min-height:34px;white-space:nowrap;border-radius:6px;padding:4px 8px;color:#3d4e69}
#paco-workspace button.p-week-label:hover{background:var(--paco-accent-hover)}
#paco-workspace .p-export-button{display:flex;gap:7px;align-items:center;background:white;color:var(--paco-accent-text)}
.p-tag-row{display:flex;align-items:center;gap:7px;overflow-x:auto;white-space:nowrap;padding:0 0 11px;scrollbar-width:none;overscroll-behavior-x:contain}
.p-tag-row::-webkit-scrollbar{display:none}
#paco-workspace .p-tag-row button{font-size:12px;color:var(--paco-accent-text);padding:5px 11px;border-radius:6px;background:var(--paco-accent-soft);flex:none;border:1px solid transparent}
#paco-workspace .p-tag-row button[aria-pressed=true]{background:var(--paco-accent-selected);border-color:var(--paco-accent-border);color:var(--paco-accent-strong)}
#paco-workspace .p-tag-row button:first-child{background:white;color:#66768c;border-color:#dde5f0}
.p-mobile-time-nav{display:none}
#p-view-reports .p-journal-controls{display:none}
.p-log-scroll,.p-report-scroll{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;overflow-anchor:none;scrollbar-width:thin;padding:16px 28px 30px;position:relative}
.p-week-stream{max-width:980px;margin:0 auto}
.p-log-week{margin-bottom:24px}
#paco-workspace .p-week-divider{display:flex;align-items:center;gap:10px;border-left:4px solid var(--paco-accent-ring);background:var(--paco-accent-hover);color:var(--paco-accent-muted);border-radius:5px;padding:12px 14px;margin:0 0 14px;font-size:14px;font-weight:650;letter-spacing:0;text-transform:none}
.p-week-divider small{margin-left:auto;white-space:nowrap;font-size:11px;font-weight:450;color:#687c99}
#paco-workspace .p-week-divider .paco-icon{width:18px;height:18px}
#paco-workspace .p-log-scroll .p-days{gap:13px}
#paco-workspace .p-log-scroll .p-day{flex:none}
#paco-workspace .p-day-content{padding:12px 16px}
#paco-workspace .p-day-heading{padding:10px 16px}
#paco-workspace .p-day-heading h2{display:flex;align-items:center;gap:11px;margin:0;font-size:14px;line-height:1.2}
#paco-workspace .p-day-number{font-size:30px;font-weight:750;letter-spacing:-1px;line-height:1;font-variant-numeric:tabular-nums;color:var(--p-ink)}
#paco-workspace .p-day-heading>.p-badge{background:var(--paco-accent);color:#fff;border-radius:999px;padding:3px 11px;font-size:10px;font-weight:500;line-height:1.4}
#paco-workspace .p-day-heading-text{display:flex;flex-direction:column;gap:3px}
#paco-workspace .p-day-month{font-size:11px;font-weight:400;color:#72819a;letter-spacing:0;text-transform:none}
.p-email-outlook{display:inline-flex;align-items:center;gap:4px;padding:5px 0;color:var(--paco-accent-text);font-size:12px;font-weight:500;text-decoration:none;white-space:nowrap}
.p-email-outlook:hover{text-decoration:underline}
#paco-workspace .p-log-scroll .p-editor textarea,.p-field-editor textarea{overscroll-behavior:contain}
.p-stream-status{font-size:11px;color:#8390a3;text-align:center;padding:12px 0}
#paco-workspace .p-stream-more{margin:14px auto;display:block;border:1px solid #d4e0f2;background:white;border-radius:7px;padding:9px 15px;color:var(--paco-accent-text)}
.p-filter-heading{max-width:980px;margin:0 auto 15px;display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:12px;color:#7b879a}
.p-filter-heading>b{color:var(--paco-accent-text);font-size:16px}.p-filter-heading button{margin-left:auto;color:var(--paco-accent-text)!important;font-size:12px}
.p-week-stream>.p-day{margin-bottom:15px}
#paco-workspace .p-report-scroll .p-report-paper{max-width:980px;margin:0 auto;padding:25px 28px}
.p-report-stack{display:flex;flex-direction:column;gap:20px;max-width:980px;margin:0 auto}
#paco-workspace .p-report-stack .p-report-paper{width:100%}
.p-report-jumps{display:flex;flex:none;gap:8px;overflow-x:auto;overscroll-behavior-x:contain;white-space:nowrap;padding:9px 28px 12px;border-bottom:1px solid var(--p-line);scrollbar-width:thin;touch-action:pan-x;cursor:grab;user-select:none}
.p-report-jumps:active{cursor:grabbing}
#paco-workspace .p-report-jumps button{display:flex;align-items:center;gap:8px;flex:none;min-height:36px;padding:7px 13px;border:1px solid var(--p-line);border-radius:999px;background:var(--p-surface);color:var(--p-muted);font-size:12px}
#paco-workspace .p-report-jumps button time{font-weight:650;font-variant-numeric:tabular-nums}
#paco-workspace .p-report-jumps button span{max-width:320px;overflow:hidden;text-overflow:ellipsis}
#paco-workspace .p-report-jumps button[aria-current=true]{background:var(--paco-accent-soft);border-color:var(--paco-accent-border);color:var(--paco-accent-text)}
/* Tags remain plain Markdown in storage; only their presentation changes. */
.paco-markdown .p-tag-inline,#paco-workspace .paco-markdown .p-tag-inline{display:inline-block;vertical-align:baseline;border:0;background:var(--paco-accent-soft);color:var(--paco-accent-text);border-radius:5px;font:inherit;font-size:.88em;line-height:1.4;padding:1px 6px;margin:0 2px;cursor:pointer;text-decoration:none}
.paco-markdown .p-tag-inline:hover{background:var(--paco-accent-selected)}
.p-tag-suggestions{position:fixed;z-index:180;max-height:240px;overflow:auto;width:245px;border:1px solid #d9e3f2;border-radius:8px;background:white;padding:5px;box-shadow:0 8px 28px #233a6322}
.p-tag-suggestions button,#paco-workspace .p-tag-suggestions button{display:block;width:100%;text-align:left;border:0;border-radius:5px;background:white;padding:7px 9px;color:var(--paco-accent-text);font:13px system-ui;cursor:pointer}
.p-tag-suggestions button[aria-selected=true],#paco-workspace .p-tag-suggestions button[aria-selected=true]{background:var(--paco-accent-hover)}
.p-tag-suggestions small{display:block;font:10px system-ui;color:#8995a6;padding:7px 9px 3px}
/* Native modal dialogs keep editor selection and provide keyboard focus containment. */
.paco-modal{width:min(560px,calc(100vw - 28px));max-height:calc(100dvh - 40px);overflow:auto;border:1px solid #d9e2ef;border-radius:13px;padding:24px;background:white;color:#263b57;box-shadow:0 20px 90px #1e36532b;font:14px/1.45 system-ui}
.paco-modal::backdrop{background:#1b2d4c55}
.paco-modal>header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:15px}
.paco-modal h2{margin:0;font-size:21px;letter-spacing:-.4px;color:#233854;text-transform:none}
.paco-modal>header button{font-size:24px;line-height:1;width:32px;height:32px;padding:0;border:0;background:none;color:#6c7b91;cursor:pointer}
.paco-modal p{color:#75859b;font-size:13px}
.paco-modal button{font:inherit;cursor:pointer;border:1px solid #d7e1ef;border-radius:7px;padding:8px 12px;background:white;color:var(--paco-accent-text)}
.paco-modal button.primary{background:var(--paco-accent);color:white;border-color:var(--paco-accent)}
.paco-modal button:disabled{opacity:.45;cursor:default}
.paco-modal :focus-visible{outline:2px solid var(--paco-accent-ring);outline-offset:2px}
.paco-modal input{border:1px solid #d7e1ef;border-radius:7px;padding:10px;color:#2d4261;background:white;font:inherit;min-width:0}
.paco-modal .p-date-range{display:grid;grid-template-columns:1fr 1fr;gap:17px;margin:23px 0 15px}
.p-date-range label{display:flex;flex-direction:column;gap:8px;font-weight:550}
.paco-modal footer{display:flex;justify-content:flex-end;gap:10px;padding-top:19px;margin-top:19px;border-top:1px solid #e5ebf3}
.paco-modal .p-export-error{color:#af4a43}
.p-calendar-picker{height:min(560px,65dvh);max-width:340px;margin:auto}
.p-record-search{width:100%}.p-picker-types{display:flex;gap:5px;margin:12px 0}
.p-picker-types button[aria-pressed=true]{background:var(--paco-accent-hover);border-color:var(--paco-accent-border)}
.p-record-results{max-height:45dvh;overflow:auto;padding:2px}
.p-record-results button{display:flex;width:100%;align-items:center;gap:11px;text-align:left;border:0;border-radius:7px;padding:10px}
.p-record-results button[aria-selected=true]{background:var(--paco-accent-soft)}
.p-record-results b{font-weight:550;font-size:13px}.p-record-results small{display:block;color:#8a95a7;font-size:11px;margin-top:3px}
.p-picker-icon{color:var(--paco-accent-muted);flex:none}
.p-local-path{display:block;width:100%;min-height:80px;padding:12px;border:1px solid #d7e1ef;border-radius:7px;color:#334b6b;resize:vertical;font:13px/1.5 monospace}
.p-open-local{display:inline-flex;align-items:center;padding:8px 12px;border-radius:7px;background:var(--paco-accent);color:white;text-decoration:none}
.paco-modal .p-month-grid button{border:0;padding:0;border-radius:0;background:transparent;font:12px system-ui}
.paco-modal .p-month-grid button.in-week{background:var(--paco-accent-soft);color:var(--paco-accent-text)}
.paco-modal .p-month-tools label{flex:1}
.paco-modal .p-month-tools input{border:0;padding:4px 0;max-width:none;width:100%;background:transparent;font-size:14px}
@media(max-width:760px){
  .p-workspace-layout{display:block}.p-calendar-column{display:none}.p-journal-pane{height:100%}
  #paco-workspace .p-journal-pane .p-view-head{padding:11px 14px 8px;flex-direction:row;gap:10px}
  #paco-workspace .p-journal-pane .p-view-head h1{font-size:21px}
  #paco-workspace .p-journal-pane .p-view-head .p-sub{display:none}
  .p-journal-controls{padding:0 12px}
  #paco-workspace .p-journal-controls .p-week-controls{gap:2px;justify-content:space-between;margin-bottom:5px}
  #paco-workspace button.p-week-label{font-size:12px;padding:3px 4px}
  #paco-workspace .p-journal-controls .p-icbtn{width:27px}
  .p-mobile-time-nav,#p-view-reports .p-journal-controls{display:block}
  .p-mobile-days{display:flex;width:100%;min-width:0;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;touch-action:pan-x;scrollbar-width:none;overflow-anchor:none;margin-bottom:10px}
  .p-mobile-days::-webkit-scrollbar{display:none}
  .p-mobile-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;flex:0 0 100%;min-width:0;scroll-snap-align:start;scroll-snap-stop:always}
  .p-mobile-days:focus-visible{outline:2px solid var(--paco-accent);outline-offset:2px;border-radius:7px}
  #paco-workspace .p-mobile-days button{position:relative;flex:1;display:flex;flex-direction:column;align-items:center;gap:1px;padding:4px 0 8px;border:1px solid transparent;border-radius:7px;color:#7d8ba0;font-size:10px;min-height:43px}
  .p-mobile-days button b{font-size:13px;font-weight:550}
  #paco-workspace .p-mobile-days button.is-selected{background:var(--paco-accent-hover);border-color:var(--paco-accent-border);color:var(--paco-accent-text)}
  #paco-workspace .p-mobile-days button.is-today{color:var(--paco-accent-strong);font-weight:650}
  #paco-workspace .p-mobile-days button.is-today b{background:var(--paco-accent);color:white;border-radius:50%;width:22px;line-height:22px;margin:-2px 0}
  .p-date-dots{bottom:2px}.p-tag-row{padding-bottom:8px;gap:6px}
  #paco-workspace .p-tag-row button{font-size:11px;padding:4px 10px}
  .p-log-scroll,.p-report-scroll{padding:12px 12px 25px}
  #paco-workspace .p-week-divider{font-size:12px;padding:11px 10px;gap:7px;margin-bottom:11px}
  .p-week-divider small{display:none}
  #paco-workspace .p-day-content{padding:10px 12px}#paco-workspace .p-day-heading{padding:10px 12px}
  #paco-workspace .p-day-heading h2{font-size:13px}#paco-workspace .p-day-number{font-size:28px}.p-email-outlook{min-height:34px}
  #paco-workspace .p-report-scroll .p-report-paper{padding:20px 16px}
  .p-report-jumps{padding:7px 12px 9px;gap:6px;scrollbar-width:none}.p-report-jumps::-webkit-scrollbar{display:none}
  #paco-workspace .p-report-jumps button{min-height:36px;font-size:11px;padding:6px 11px}
  #paco-workspace .p-report-jumps button span{max-width:220px}.p-report-stack{gap:14px}
  .paco-modal{padding:18px}.paco-modal input{font-size:16px}
  .paco-modal .p-date-range{gap:10px}.p-date-range input{width:100%}
}

/* On touch/compact screens the editor owns the visible space above the keyboard.
   Native dialog focus containment prevents iOS selection from reaching other days. */
#paco-workspace button[data-calendar-today],#paco-workspace button[data-mobile-today],.paco-modal button[data-calendar-today]{background:var(--paco-accent-strong);border-color:var(--paco-accent-strong);color:#fff;font-weight:650}
#paco-workspace button[data-calendar-today]:hover,#paco-workspace button[data-mobile-today]:hover,.paco-modal button[data-calendar-today]:hover{background:var(--paco-accent);border-color:var(--paco-accent)}
#paco-workspace .p-log-scroll .p-day.p-today{border:3px solid var(--paco-accent)}
#paco-workspace dialog.p-mobile-log-editor{position:fixed;inset:auto;top:var(--p-edit-top,0px);left:var(--p-edit-left,0px);width:var(--p-edit-width,100vw);height:var(--p-edit-height,100dvh);max-width:none;max-height:none;margin:0;padding:max(8px,env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left));border:0;box-sizing:border-box;overflow:hidden;background:#f6f8fc;color:var(--p-ink);overscroll-behavior:none}
.p-mobile-log-editor::backdrop{background:#f6f8fc}
#paco-workspace .p-mobile-log-editor .p-editor{display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden;border:1px solid #dce4f0;border-radius:10px;background:white}
#paco-workspace .p-edit-heading{flex:none;display:flex;align-items:center;gap:8px;padding:6px 10px;border-bottom:1px solid #e3e9f2;background:white}
#paco-workspace .p-edit-heading h2{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;line-height:1.3;text-transform:none;letter-spacing:0;margin:0;color:var(--p-ink)}
/* Keep autosave announcements accessible without taking space from the note. */
#paco-workspace .p-edit-heading .p-save-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
#paco-workspace .p-mobile-log-editor .p-toolbar{flex:none;display:flex;flex-wrap:nowrap;gap:0;padding:4px 2px}
#paco-workspace .p-mobile-log-editor .p-format-group{display:contents}
#paco-workspace .p-mobile-log-editor .p-format{flex:1 1 0;width:auto;min-width:0;height:40px}
#paco-workspace .p-mobile-log-editor .p-editor>textarea{flex:1 1 0;min-height:0;max-height:none;height:0;width:100%;resize:none;overflow:auto;overscroll-behavior:contain;font-size:16px;line-height:1.5;padding:12px;border-radius:0;box-sizing:border-box;scroll-behavior:auto;overflow-anchor:none}
#paco-workspace .p-mobile-log-editor [data-save-note]{flex:none;min-width:70px;min-height:40px;padding:7px 12px;border:0;border-radius:7px;background:var(--paco-accent);color:white;font-size:14px;font-weight:600;cursor:pointer}
#paco-workspace .p-mobile-log-editor [data-save-note]:disabled{opacity:.65;cursor:wait}
#paco-workspace .p-mobile-log-editor .p-conflict-mount{flex:none;max-height:35%;overflow:auto}
#paco-workspace .p-mobile-log-editor .p-conflict textarea{min-height:80px;max-height:120px}
#paco-workspace .p-mobile-log-editor .p-tag-suggestions{max-height:min(200px,calc(var(--p-edit-height,100dvh) - 130px))}
