/* v8.11: native-like calendar event blocks, thin interactive Items, optical geometry, no visual glass */
:root {--folio-cover:#f1efec;--folio-page:#faf9f7;--folio-ink:#2e2d2a;--folio-rule:#dedbd5;--folio-muted:#888680;}
html,body{margin:0!important;padding:0!important;overflow:hidden!important;width:100%;height:100%;background:var(--folio-cover)!important}
body,.app-shell{overscroll-behavior:none!important}
.app-shell{
  display:flex!important;flex-direction:column!important;overflow:hidden!important;
  height:100dvh!important;min-height:0!important;max-height:100dvh!important;
  padding:env(safe-area-inset-top,0px) 0 0!important;
  background:var(--folio-cover)!important;
}
/* Apple safe-area stays inside the footer background, rather than a detached gap beneath it. */
.app-header{
  height:40px!important;min-height:40px!important;flex:0 0 40px!important;
  padding:3px 12px!important;display:flex!important;gap:8px!important;
  align-items:center!important;background:var(--folio-cover)!important;
  position:relative!important;z-index:25!important;
  filter:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  box-shadow:none!important;opacity:1!important;
}
.branding,.brand-name{color:#3f3e3b!important;opacity:1!important;filter:none!important;text-shadow:none!important;font-size:10px!important;letter-spacing:.04em!important}
.header-controls{height:34px!important;gap:5px!important;filter:none!important;opacity:1!important}
.header-controls button,#chatBtn{
  flex:0 0 30px!important;min-width:30px!important;width:30px!important;height:30px!important;
  background:#f8f7f4!important;border:1px solid #d7d5cf!important;border-radius:50%!important;
  color:#45443f!important;box-shadow:none!important;opacity:1!important;filter:none!important;
  -webkit-backdrop-filter:none!important;backdrop-filter:none!important;
}
.header-controls button svg,#chatBtn svg{display:block!important;width:17px!important;height:17px!important;stroke-width:1.8!important;color:inherit!important;stroke:currentColor!important;overflow:visible}
.header-controls button::after{content:none!important}
#settingsBtn{background:#34332f!important;border-color:#34332f!important;color:white!important}
#settingsBtn svg{width:18px!important;height:18px!important;stroke:currentColor!important}
#cloudSyncBtn{font-size:0!important}
#jumpToday{font-size:0!important}
#notionRefBtn{font-size:0!important}
.page-heading{z-index:1;background:var(--folio-page)!important}
/* No full page scrolling: the main region absorbs remaining viewport height. */
.main-view{overflow:hidden!important;min-height:0!important;max-height:none!important;flex:1 1 0%!important}
.tab-bar{
  position:relative!important;bottom:auto!important;left:auto!important;
  transform:none!important;flex:0 0 calc(42px + env(safe-area-inset-bottom,0px))!important;
  min-height:calc(42px + env(safe-area-inset-bottom,0px))!important;
  height:calc(42px + env(safe-area-inset-bottom,0px))!important;
  padding:6px 8px env(safe-area-inset-bottom,0px)!important;
  margin:0 12px!important;width:auto!important;display:flex!important;
  align-items:center!important;justify-content:flex-start!important;
  background:var(--folio-cover)!important;box-shadow:none!important;
  border:0!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
}
.tab{height:28px!important;min-height:28px!important}
.tab span{padding:5px 7px!important}
.quick-add{position:fixed!important;bottom:calc(55px + env(safe-area-inset-bottom,0px))!important}
/* Optional week width toggle remains; the pinch gestures do the zooming. */
.week-compact-tools{height:27px;min-height:27px;display:flex;align-items:center;justify-content:flex-end;background:var(--folio-page);border-bottom:1px solid var(--folio-rule);padding:1px 12px}
.week-compact-tools .mode-toggle{font-size:9px!important;padding:4px 8px!important;line-height:1.1;background:transparent!important;border:1px solid #d7d5cf!important;color:#74716b!important;border-radius:2px!important}
.zoom-buttons,.day-zoom-hint{display:none!important}
/* Slim, standard iOS-like outline task circle, while keeping real form checkbox. */
.time-block.check-card input[type=checkbox],.all-day-item.check-card input[type=checkbox]{
  appearance:none;-webkit-appearance:none;display:inline-grid;place-items:center;
  width:14px!important;height:14px!important;min-width:14px!important;
  flex:0 0 14px!important;border:1.8px solid #9c9d9c;border-radius:50%!important;
  background:#fff!important;margin:2px 5px 0 0!important;cursor:pointer;position:relative;
}
.time-block.check-card input[type=checkbox]:checked,.all-day-item.check-card input[type=checkbox]:checked{background:#535b59!important;border-color:#535b59!important}
.time-block.check-card input[type=checkbox]:checked::after,.all-day-item.check-card input[type=checkbox]:checked::after{content:'';width:5px;height:8px;border-right:1.7px solid white;border-bottom:1.7px solid white;transform:translateY(-1px) rotate(45deg)}
/* Event = duration-shaped filled calendar strip, no checkbox, calendar color identifiable. */
.time-block.event-card{
  background:#e5ecee!important;color:#29393b!important;
  border:1px solid #ccd6d6!important;border-left:4px solid #8da9ae!important;
  border-radius:4px!important;display:block!important;padding:5px 7px!important;
  box-shadow:none!important;min-height:23px!important;
}
.time-block.event-card .item-type{font-size:8px!important;color:#5e7779!important;opacity:1!important;margin-bottom:3px!important}
.time-block.event-card .block-title{font-weight:650!important;font-size:11px!important;line-height:1.25!important;color:#293a3c!important}
.time-block.event-card .block-time{color:#667f81!important}
.time-block.event-card.calendar-primary{background:#e6eff2!important;border-color:#cbdde0!important;border-left-color:#86aebd!important}
.time-block.event-card.calendar-schedule{background:#e9f0eb!important;border-color:#d0ded4!important;border-left-color:#87b5a0!important}
.time-block.event-card.calendar-travel{background:#eaf2f0!important;border-color:#d2e3df!important;border-left-color:#a7c8c1!important}
.time-block.event-card.calendar-sleep{background:#edecf1!important;border-color:#d8d6df!important;border-left-color:#a6a2bb!important}
.all-day-item.event-card{
  background:#e8efee!important;border:1px solid #d1dcda!important;border-left:4px solid #8eaaa6!important;
  border-radius:4px!important;padding:6px 7px!important;min-height:30px!important;
}
.all-day-item.event-card.calendar-primary{background:#e8eff2!important;border-left-color:#86aebd!important}
.all-day-item.event-card.calendar-schedule{background:#e9f0eb!important;border-left-color:#87b5a0!important}
.all-day-item.event-card.calendar-travel{background:#eaf2f0!important;border-left-color:#a7c8c1!important}
.all-day-item.event-card.calendar-sleep{background:#edecf1!important;border-left-color:#a6a2bb!important}
.all-day-item.event-card .item-type{color:#667a7b!important}
.all-day-item.event-card .all-text{color:#2d3a3a!important;font-weight:580!important}
/* Items = outlined light label, with a quiet duration guide if taller than one row. */
.time-block.check-card,.time-block.kind-task.check-card,.time-block.kind-log.check-card,.time-block.kind-wish.check-card,.time-block.kind-shopping.check-card{
  background:transparent!important;border:0!important;border-left:2px solid #d1cfc9!important;
  border-radius:0!important;color:#41413d!important;
  padding:1px 1px 1px 5px!important;box-shadow:none!important;
  display:flex!important;align-items:flex-start!important;gap:0!important;
  min-height:23px!important;overflow:visible!important;
}
.time-block.check-card input[type=checkbox]{margin:5px 4px 0 0!important;z-index:1}
.time-block.check-card .inline-edit{
  display:block!important;width:100%!important;min-height:24px!important;
  background:var(--folio-page)!important;border:1px solid #d7d6d2!important;
  border-radius:4px!important;padding:4px 6px!important;
  color:#393934!important;flex:1 1 auto!important;
  overflow:hidden!important;
}
.time-block.check-card .item-type{font-size:7px!important;color:#86847e!important;letter-spacing:.5px!important;line-height:1.1!important}
.time-block.check-card .block-title{font-size:10px!important;font-weight:570!important;line-height:1.2!important}
.time-block.check-card .block-time{font-size:8px!important;color:#898782!important}
.time-block.check-card.done .inline-edit{opacity:.6}
.all-day-item.check-card{
  background:transparent!important;border:0!important;border-bottom:1px solid #dfddd8!important;
  border-radius:0!important;padding:4px 1px!important;min-height:25px!important;
}
.all-day-item.check-card .all-text{color:#46443f!important}
/* Remove large dead separators, keep event and items on actual paper. */
.day-fixed-events{padding:7px 12px!important}
.day-items-strip{padding:6px 12px!important}
.day-section-label{font-size:8px!important;line-height:1.2!important}
.day-timeline-grid .time-block{left:4px!important;right:5px!important}
/* High contrast header must stay completely opaque on all Safari rendering modes. */
.app-header,.header-controls,.header-controls button,.branding{transform:none!important;perspective:none!important;text-shadow:none!important}
@media(max-width:370px){.header-controls button,#chatBtn{flex:0 0 27px!important;min-width:27px!important;width:27px!important;height:27px!important}.header-controls{gap:3px!important}.branding,.brand-name{font-size:9px!important}.page-heading{padding-left:8px!important;padding-right:8px!important}}
@supports not (height:100dvh){.app-shell{height:100vh!important;max-height:100vh!important}}
