body{margin:0}button{-webkit-tap-highlight-color:transparent}.app-shell{--line: light-dark(#e8e6eb, #37353c);--soft: light-dark(#f1eef8, #302a3b);--muted: light-dark(#77747e, #aaa6b3);min-height:100vh}.login-screen{min-height:100vh;display:flex;align-items:center;justify-content:center}.app-header{background:light-dark(#fff,#222227);border-bottom:1px solid var(--line)}.header-inner{min-height:58px;display:flex!important;align-items:center;gap:22px}.brand{color:light-dark(#6552a0,#b5a0f0);font-size:19px!important;font-weight:700!important;letter-spacing:-.05em!important}.desktop-nav{display:flex;align-items:center;gap:3px;margin-left:auto}.desktop-nav .MuiButton-root{color:var(--muted);padding:6px 11px;min-width:0}.desktop-nav .MuiButton-root.nav-active{color:light-dark(#6552a0,#b5a0f0);background:var(--soft)}.header-actions{display:flex;margin-left:5px}.app-content{padding-top:28px;padding-bottom:60px}.page-column{width:min(100%,750px);margin:0 auto}.entry-editor{padding:17px;border:1px solid var(--line);border-radius:6px;background:light-dark(#fff,#222227)}.entry-editor .MuiOutlinedInput-root{background:light-dark(#fff,#222227)}.editor-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:11px}.feed-section{margin-top:31px}.section-title{display:flex;align-items:baseline;gap:10px;margin-bottom:9px}.entry-card{padding:16px 0 10px;border-bottom:1px solid var(--line)}.entry-card:first-child{border-top:1px solid var(--line)}.entry-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.62!important;margin-top:7px!important}.entry-text-collapsed{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}.entry-expand{margin:5px 0 0 -6px!important;padding:3px 6px!important;min-width:0!important}.entry-actions{margin-top:2px}.entry-actions .MuiIconButton-root{color:var(--muted)}.loading-block{display:flex;justify-content:center;padding:28px}.archive-section{margin-top:38px}.archive-year{border-bottom:1px solid var(--line)}.archive-year:first-of-type{border-top:1px solid var(--line)}.archive-toggle{display:flex!important;align-items:center;justify-content:flex-start!important;gap:10px;min-height:47px;padding:8px 2px!important;color:inherit!important;text-transform:none!important}.archive-toggle strong{font-weight:600}.archive-toggle .archive-chevron{color:var(--muted);transition:transform .15s}.archive-toggle .archive-chevron.open{transform:rotate(90deg)}.archive-count{margin-left:auto;color:var(--muted);font-size:12px}.archive-months{padding-left:23px}.archive-month{border-top:1px solid var(--line)}.archive-content{padding:0 0 10px 23px}.archive-content .entry-card:first-child{border-top:0}.search-controls,.calendar-panel{padding:20px;background:light-dark(#fff,#222227);border:1px solid var(--line);border-radius:6px}.search-controls{display:flex;flex-direction:column;gap:16px}.calendar-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(370px,440px);gap:24px;align-items:start}.calendar-entries{min-width:0;scroll-margin-top:16px}.calendar-entry-heading{margin-bottom:18px}.calendar-entry-heading .section-title{margin-bottom:12px}.calendar-entry-nav{display:flex;flex-wrap:wrap;gap:8px}.calendar-back-link{display:none!important}.calendar-panel{position:sticky;top:16px;max-height:calc(100vh - 32px);overflow-y:auto}.calendar-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}.calendar-heading>div{display:flex;align-items:center}.calendar-months{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 14px}.calendar-month{min-width:0}.calendar-month-title{font-size:13px!important;font-weight:600!important;text-transform:capitalize;margin-bottom:4px!important}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px}.calendar-weekday{color:var(--muted);text-align:center;font-size:10px;padding:3px 0}.calendar-day{border:0;color:inherit;border-radius:4px;min-height:28px;padding:1px;display:grid;grid-template-rows:minmax(0,1fr) 9px;justify-items:center;align-items:center;line-height:1;font:inherit;font-size:11px;cursor:pointer}.calendar-day>span{grid-row:1}.calendar-day small{grid-row:2;font-size:9px;line-height:1}.calendar-day.density-0{background:light-dark(#f3f2f5,#302f34)}.calendar-day.density-1{background:light-dark(#e5def5,#443859)}.calendar-day.density-2{background:light-dark(#c9b6ef,#655183)}.calendar-day.density-3{background:light-dark(#a487db,#876bab);color:light-dark(#271a42,#fff)}.calendar-day.density-4{background:light-dark(#6d4eaa,#b395e0);color:light-dark(#fff,#21152f)}.calendar-day:hover{outline:2px solid light-dark(#6552a0,#b5a0f0);outline-offset:-2px}.calendar-day.today{box-shadow:inset 0 0 0 2px light-dark(#6552a0,#d4b8ff)}.calendar-day.selected{outline:2px solid light-dark(#292235,#fff);outline-offset:-2px}.calendar-day:focus-visible{outline:2px solid light-dark(#292235,#fff);outline-offset:1px}.mobile-nav{display:none}@media(max-width:900px){.calendar-layout{grid-template-columns:minmax(0,1fr) 370px;gap:16px}.calendar-panel{padding:12px}}@media(max-width:700px){.header-inner{min-height:53px}.desktop-nav{display:none}.header-actions{margin-left:auto}.app-content{padding-top:20px;padding-bottom:90px}.mobile-nav{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:10;justify-content:space-around;padding:4px 8px max(4px,env(safe-area-inset-bottom));background:light-dark(#fff,#222227);border-top:1px solid var(--line)}.mobile-nav button{border:0;background:transparent;color:var(--muted);font:inherit;font-size:11px;display:flex;flex-direction:column;align-items:center;gap:2px;min-width:58px;min-height:44px;padding:3px;cursor:pointer}.mobile-nav button.selected{color:light-dark(#6552a0,#b5a0f0)}.mobile-nav svg{width:20px;height:20px}.calendar-layout{display:flex;flex-direction:column}.calendar-panel{order:0;position:static;max-height:none;overflow:visible;width:100%}.calendar-entries{order:1;width:100%;min-height:calc(100vh - 20px)}.calendar-back-link{display:inline-flex!important;margin-top:8px!important}.calendar-day{min-height:35px;font-size:12px}}@media(max-width:380px){.entry-editor,.search-controls,.calendar-panel{padding:12px}.editor-footer .MuiTypography-root{max-width:120px}.calendar-grid{gap:2px}}@media(max-width:560px){.calendar-months{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 6px}.calendar-grid{gap:1px}.calendar-day{min-height:31px;font-size:10px}.calendar-day small{font-size:8px}}@media(max-width:340px){.calendar-months{grid-template-columns:1fr}.calendar-day{min-height:38px;font-size:12px}}
