/* HAEBOM v3.4.1 — Quiet Entry Editor. One component, one stylesheet. */
:root { --editor-ink:#272322; --editor-muted:#837c77; --editor-hairline:#e9e5e0; --editor-brand:#735761; }
html.haebom-modal-root{overscroll-behavior:none;}
body.haebom-modal-open{width:100%;overflow:hidden;}
dialog.journal-editor{
  display:none;position:fixed!important;inset:0!important;margin:auto!important;
  padding:0!important;border:0!important;color:var(--editor-ink)!important;
  width:min(600px,calc(100vw - 32px))!important;max-width:min(600px,calc(100vw - 32px))!important;
  height:min(790px,calc(100dvh - 36px))!important;max-height:min(790px,calc(100dvh - 36px))!important;
  border-radius:22px!important;background:#fff!important;overflow:hidden!important;
  box-shadow:0 22px 65px rgba(22,18,19,.16)!important;overscroll-behavior:contain!important;
}
dialog.journal-editor[open]{display:block!important;}
dialog.journal-editor::backdrop{background:rgba(26,23,23,.35)!important;backdrop-filter:blur(2px)}
.journal-editor,.journal-editor *{box-sizing:border-box!important;}
.journal-editor .editor-shell{display:flex;flex-direction:column;min-width:0;min-height:0;height:100%;background:#fff;overflow:hidden;}
.journal-editor .editor-header{display:grid;flex:0 0 auto;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center;min-height:64px;padding:10px 23px;border-bottom:1px solid var(--editor-hairline);background:#fff;z-index:2;}
.journal-editor .editor-header h2{margin:0;font-size:16px;line-height:1.3;font-weight:750;letter-spacing:-.03em;white-space:nowrap;}
.journal-editor .editor-text-button{justify-self:start;border:0!important;background:transparent!important;min-width:44px;min-height:44px;padding:0!important;color:#6e6965!important;font-size:15px;font-weight:600;box-shadow:none!important;}
.journal-editor .editor-save{justify-self:end;min-width:60px;min-height:38px;padding:8px 15px!important;border:0!important;border-radius:12px!important;background:var(--editor-brand)!important;color:#fff!important;font-size:14px;font-weight:750;box-shadow:none!important;white-space:nowrap;}
.journal-editor .editor-save:disabled{opacity:.55;cursor:wait}
.journal-editor .editor-body{flex:1 1 auto;min-height:0;display:block;margin:0!important;padding:27px 28px 90px!important;overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y pinch-zoom;background:#fff!important;}
.journal-editor .editor-title-block{display:flex;flex-direction:column;gap:10px;padding:0 0 24px;border-bottom:1px solid var(--editor-hairline);}
.journal-editor .editor-eyebrow{display:block;color:var(--editor-muted);font-size:13px;font-weight:650;letter-spacing:-.005em;}
.journal-editor textarea.editor-title-input{display:block;width:100%;height:auto;min-height:94px;max-width:100%;margin:0;padding:0!important;border:0!important;border-radius:0!important;resize:none;background:transparent!important;box-shadow:none!important;outline:none!important;font-size:clamp(24px,4vw,32px)!important;font-weight:730;letter-spacing:-.05em;line-height:1.4;color:var(--editor-ink)!important;overflow-y:auto;}
.journal-editor .editor-title-input::placeholder{color:#bab5b0;opacity:1;}
.journal-editor textarea.editor-title-input:focus{outline:0!important;box-shadow:none!important;border:0!important;}
.journal-editor .editor-photo-section{padding:22px 0 20px;border-bottom:1px solid var(--editor-hairline);}
.journal-editor .editor-media-trigger{display:inline-flex;align-items:center;justify-content:flex-start;gap:8px;min-height:44px;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;color:#504949!important;font-size:15px;font-weight:700;white-space:nowrap;}
.journal-editor .editor-media-trigger svg{width:20px;height:20px;flex:0 0 20px;}
.journal-editor .editor-media-trigger small{font-size:12px;margin-left:4px;color:var(--editor-muted);font-weight:500}
.journal-editor .editor-media-trigger:disabled{opacity:.5;}
.journal-editor .editor-photo-options{display:flex;gap:9px;padding:10px 0 6px;flex-wrap:wrap}
.journal-editor .editor-photo-options.hidden{display:none!important}
.journal-editor .editor-photo-options button{padding:11px 15px!important;min-height:44px;border:1px solid #e5e0dc!important;border-radius:13px!important;background:#f8f7f5!important;color:#453f3d!important;font-size:13px;font-weight:700;white-space:nowrap;box-shadow:none!important}
.journal-editor .editor-photo-previews{display:flex;flex-wrap:wrap;gap:9px;margin:9px 0 0;}
.journal-editor .editor-photo-tile{position:relative;width:76px;height:76px;flex:0 0 76px;border-radius:11px;overflow:hidden;background:#f4f1ee;}
.journal-editor .editor-photo-tile img{width:100%;height:100%;display:block;object-fit:cover;}
.journal-editor .editor-photo-remove{position:absolute;top:3px;right:3px;width:26px;height:26px;border:0!important;border-radius:50%!important;background:rgba(20,20,20,.8)!important;color:#fff!important;font-size:19px;line-height:1;padding:0!important;display:grid;place-items:center;}
.journal-editor .editor-status{color:#796b69;font-size:12px;line-height:1.5;margin:5px 0 0;}
.journal-editor .editor-status:empty{display:none}
.journal-editor .editor-meta{margin-top:4px;}
.journal-editor .editor-meta-row{display:grid;grid-template-columns:100px minmax(0,1fr);gap:14px;align-items:center;min-height:66px;padding:12px 0;border-bottom:1px solid var(--editor-hairline);}
.journal-editor .editor-meta-row>label{font-size:14px;font-weight:700;color:var(--editor-ink);}
.journal-editor .editor-meta-control{display:flex;gap:7px;align-items:center;justify-content:flex-end;min-width:0;max-width:100%}
.journal-editor .editor-meta-control input,.journal-editor .editor-meta-control select{min-width:0;max-width:100%;flex:0 1 auto;width:auto;border:0!important;border-radius:0!important;background:transparent!important;color:#514b48!important;padding:7px 0!important;box-shadow:none!important;font-size:15px!important;text-align:right;outline:none!important;line-height:1.5;}
.journal-editor .editor-meta-control select{max-width:170px;text-align-last:right;appearance:auto;}
.journal-editor .editor-meta-control input[type=date]{min-width:145px;}
.journal-editor .editor-meta-control input[type=time]{min-width:105px;}
.journal-editor .editor-clear-date{padding:7px 4px!important;border:0!important;background:transparent!important;color:#a09891!important;font-size:12px!important;min-height:38px;box-shadow:none!important;white-space:nowrap;}
.journal-editor .editor-clear-date.hidden{display:none!important;}
.journal-editor .editor-small-add{flex:0 0 33px;width:33px;height:33px;padding:0!important;border:1px solid #e9e5e0!important;border-radius:50%!important;background:#fff!important;color:var(--editor-brand)!important;font-size:21px;line-height:1;box-shadow:none!important;}
.journal-editor .editor-note-block{padding:23px 0 25px;border-bottom:1px solid var(--editor-hairline);}
.journal-editor .editor-note-block label{display:block;margin-bottom:12px;color:var(--editor-ink);font-size:14px;font-weight:700;}
.journal-editor label span{font-weight:500;color:var(--editor-muted);font-size:12px;margin-left:5px;}
.journal-editor .editor-note-block textarea,.journal-editor .editor-plan-extra-field textarea{display:block;width:100%;max-width:100%;min-height:98px;padding:11px 12px!important;border:1px solid #eee9e5!important;border-radius:13px!important;background:#fbfaf9!important;color:#3b3533!important;font-size:14px;line-height:1.7;resize:vertical;box-shadow:none!important;}
.journal-editor .editor-note-block textarea::placeholder,.journal-editor .editor-plan-extra-field textarea::placeholder{color:#a39a95;}
.journal-editor .editor-extras{padding:18px 0;border-bottom:1px solid var(--editor-hairline);}
.journal-editor .editor-extras>summary{display:flex;justify-content:space-between;align-items:center;cursor:pointer;font-size:13px;color:#706661;font-weight:700;list-style:none;min-height:32px;}
.journal-editor .editor-extras>summary::-webkit-details-marker{display:none;}
.journal-editor .editor-extras summary svg{width:17px;height:17px;transition:transform .2s ease}
.journal-editor .editor-extras[open] summary svg{transform:rotate(180deg)}
.journal-editor .editor-extras>label{display:block;font-size:13px;font-weight:700;margin:14px 0 9px;}
.journal-editor .editor-extras>select{width:100%;min-height:44px;padding:10px 12px!important;border:1px solid #eee9e5!important;border-radius:12px!important;background:#fbfaf9!important;color:var(--editor-ink)!important;}
.journal-editor .editor-tail-note{margin:21px 0 0;color:#948b86;font-size:12px;line-height:1.6;}
.journal-editor .editor-plan-title-block{margin-bottom:15px;}
.journal-editor .editor-plan-meta{margin:0;}
.journal-editor .editor-plan-kind{margin:14px 0 21px;font-size:13px;color:var(--editor-muted);line-height:1.65;}
.journal-editor .editor-plan-extra-field{padding:17px 0 5px;}
.journal-editor .editor-plan-extra-field label{display:block;margin-bottom:10px;font-size:13px;font-weight:700;}
.journal-editor .editor-plan-extra-field>.editor-meta-control{justify-content:flex-start;}
.journal-editor .editor-plan-extra-field>.editor-meta-control select{flex:1;max-width:none;text-align-last:left;padding:10px!important;border:1px solid #eee9e5!important;border-radius:12px!important;}
.journal-editor .editor-plan-extra-field textarea{min-height:95px;}
.journal-editor .editor-body-plan .editor-title-input{min-height:100px;}
.journal-editor button:focus-visible,.journal-editor select:focus-visible,.journal-editor input:focus-visible{outline:2px solid #93818a!important;outline-offset:3px!important;}
@media(max-width:650px){
  dialog.journal-editor{width:100vw!important;max-width:100vw!important;min-width:0!important;height:100dvh!important;max-height:100dvh!important;min-height:0!important;inset:0!important;margin:0!important;border-radius:0!important;box-shadow:none!important;}
  .journal-editor .editor-header{min-height:61px;padding:calc(8px + env(safe-area-inset-top,0px)) 18px 9px;}
  .journal-editor .editor-header h2{font-size:16px;}
  .journal-editor .editor-save{padding:7px 14px!important;}
  .journal-editor .editor-body{padding:23px 21px calc(74px + env(safe-area-inset-bottom,0px))!important;}
  .journal-editor textarea.editor-title-input{font-size:27px!important;min-height:105px;}
  .journal-editor .editor-meta-row{grid-template-columns:90px minmax(0,1fr);gap:6px;}
  .journal-editor .editor-meta-control{gap:4px;}
  .journal-editor .editor-meta-control input[type=date]{min-width:0;width:145px;font-size:16px!important;}
  .journal-editor .editor-meta-control select{max-width:148px;font-size:16px!important;}
  .journal-editor .editor-clear-date{font-size:11px!important;}
  .journal-editor .editor-meta-row>label{font-size:14px;}
  .journal-editor .editor-photo-tile{width:71px;height:71px;flex-basis:71px;}
}
@media(max-width:370px){.journal-editor .editor-body{padding-left:17px!important;padding-right:17px!important}.journal-editor .editor-meta-row{grid-template-columns:78px minmax(0,1fr)}}

/* HAEBOM 3.4 — consistent controls instead of browser-native dropdown UI. */
.journal-editor .category-native-select{position:absolute!important;width:1px!important;height:1px!important;clip-path:inset(50%)!important;opacity:0!important;pointer-events:none!important;overflow:hidden!important}
.journal-editor .editor-category-choice{display:inline-flex;align-items:center;justify-content:flex-end;gap:7px;max-width:100%;min-height:44px;padding:6px 4px!important;border:0!important;border-radius:8px!important;background:transparent!important;color:#4e4745!important;text-align:right;font-size:15px;font-weight:650;white-space:nowrap;box-shadow:none!important}
.editor-category-choice .editor-category-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.editor-category-choice svg{flex:0 0 18px;color:#9d9490}
.journal-editor .editor-small-add{border-color:transparent!important;background:#f4f0ed!important;color:#79636a!important;width:32px;height:32px;flex-basis:32px;font-size:20px}
.journal-editor .editor-plan-extra-field .editor-meta-control{justify-content:space-between;gap:10px}
.journal-editor .editor-plan-extra-field .editor-category-choice{justify-content:flex-start;flex:1}
@media(max-width:650px){
  .journal-editor .editor-body{padding-top:17px!important;padding-left:20px!important;padding-right:20px!important;padding-bottom:calc(88px + env(safe-area-inset-bottom,0px))!important}
  .journal-editor .editor-header{min-height:62px;padding-left:20px;padding-right:20px}
  .journal-editor .editor-title-block{padding-top:13px;padding-bottom:18px}
  .journal-editor textarea.editor-title-input{font-size:clamp(25px,7.2vw,31px)!important;min-height:89px;line-height:1.35}
  .journal-editor .editor-photo-section{padding:16px 0}
  .journal-editor .editor-meta-row{min-height:60px;padding:9px 0}
  .journal-editor .editor-note-block{padding:17px 0 21px}
  .journal-editor .editor-note-block textarea{border:0!important;border-radius:0!important;background:transparent!important;padding:4px 0!important;min-height:92px}
  .journal-editor .editor-note-block textarea:focus{outline:0!important}
  .journal-editor .editor-category-choice{font-size:14px;padding-right:0!important}
}

/* v3.4.1 — iOS Safari automatically magnifies focused controls below 16 CSS px.
   Limit this to mobile; titles retain their larger editorial typography. */
@media(max-width:760px){
  .journal-editor .editor-meta-control input,
  .journal-editor .editor-meta-control select,
  .journal-editor .editor-note-block textarea,
  .journal-editor .editor-plan-extra-field textarea,
  .journal-editor .editor-extras>select{font-size:16px!important}
}
