.mobile-nav-toggle{display:none}@media (max-width:760px){.page-nav.mobile-nav-ready{position:sticky;top:8px;z-index:60;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:8px;margin-bottom:16px;padding:8px;border:1px solid rgba(255,255,255,.72);border-radius:20px;background:rgba(255,255,255,.88);box-shadow:0 12px 30px rgba(18,31,31,.1);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.mobile-nav-toggle{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 14px;border:0;border-radius:999px;color:#fff;background:linear-gradient(135deg,var(--accent,#0f7c72),var(--accent-dark,#09524d));font:inherit;font-weight:900;cursor:pointer}.page-nav.mobile-nav-ready>.page-nav-link,.page-nav.mobile-nav-ready>.nav-links .page-nav-link{min-height:42px;align-items:center;justify-content:flex-start}.page-nav.mobile-nav-ready>.page-nav-link:not(.active),.page-nav.mobile-nav-ready>.nav-links .page-nav-link:not(.active),.page-nav.mobile-nav-ready>.auth-nav{display:none}.page-nav.mobile-nav-ready.mobile-nav-open>.page-nav-link,.page-nav.mobile-nav-ready.mobile-nav-open>.nav-links .page-nav-link,.page-nav.mobile-nav-ready.mobile-nav-open>.auth-nav{display:flex}.page-nav.mobile-nav-ready>.nav-links{display:flex;min-width:0;overflow:visible;flex-wrap:wrap;gap:8px}.page-nav.mobile-nav-ready:not(.mobile-nav-open)>.nav-links{overflow:hidden}.page-nav.mobile-nav-ready:not(.mobile-nav-open)>.nav-links .page-nav-link.active{display:flex}.page-nav.mobile-nav-ready.mobile-nav-open>.nav-links{grid-column:1/-1}.page-nav.mobile-nav-ready>.auth-nav{grid-column:1/-1;flex-wrap:wrap}.page-nav.mobile-nav-ready>.nav-actions{justify-self:end}.page-nav.mobile-nav-ready.mobile-nav-open>.nav-actions{grid-column:1/-1;justify-self:stretch}}
.page-nav{display:flex;gap:8px;margin-bottom:28px;flex-wrap:wrap}.page-nav-link{padding:10px 14px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-weight:800;text-decoration:none;background:rgba(255,250,240,.7)}.page-nav-link:hover,.page-nav-link.active{color:var(--accent-dark);background:#d9efea;border-color:#b9dad4}.calendar-panel{width:min(1040px,100%)}.calendar-header{align-items:flex-start}.calendar-toolbar{display:grid;grid-template-columns:auto 1fr auto auto;gap:10px;align-items:center;margin:0 0 20px}.calendar-toolbar h2{margin:0;text-align:center;font-family:Fraunces,serif;font-size:clamp(1.6rem,4vw,2.4rem)}.calendar-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:24px;align-items:start}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.calendar-weekdays{margin-bottom:8px;color:var(--muted);font-size:.78rem;font-weight:800;text-align:center;text-transform:uppercase}.calendar-day{min-height:86px;padding:10px;display:flex;align-items:flex-start;justify-content:space-between;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:rgba(255,250,240,.7);text-align:left}.calendar-day-spacer{background:transparent;border-color:transparent}.calendar-day.has-events{border-color:#b9dad4;background:#edf8f5}.calendar-day.today{outline:3px solid rgba(15,124,114,.2);outline-offset:0}.calendar-day.selected{color:#fff;background:var(--accent-dark);border-color:var(--accent-dark)}.calendar-day-number{font-weight:900}.calendar-event-marker{min-width:24px;height:24px;display:grid;place-items:center;border-radius:50%;color:#fff;background:var(--accent);font-size:.78rem;font-weight:900}.calendar-day.selected .calendar-event-marker{color:var(--accent-dark);background:#fff}.event-sidebar{padding:18px;border:1px solid var(--line);border-radius:8px;background:var(--paper)}.event-list-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.event-list-header h2{margin:0;font-family:Fraunces,serif;font-size:1.7rem}.small-button{min-height:34px;font-size:.85rem}.event-list{min-height:auto}.event-item{grid-template-columns:auto 1fr;padding:12px 0}.event-date-badge{width:58px;min-height:54px;display:grid;place-items:center;padding:6px;border-radius:8px;color:#fff;background:var(--ink);font-size:.78rem;font-weight:900;text-align:center}.status-badge{width:max-content;padding:3px 8px;border-radius:999px;color:var(--accent-dark);background:#d9efea;font-size:.72rem;font-weight:900;text-transform:uppercase}.status-badge.done{color:var(--muted);background:#ece8dc}.compact-empty-state{min-height:180px}.compact-empty-state h2{font-size:1.7rem}.projects-panel{width:min(960px,100%)}.project-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.project-card{position:relative;display:flex;flex-direction:column;justify-content:space-between;gap:16px;min-height:280px;padding:52px 18px 18px;border:1px solid var(--line);border-radius:14px;box-shadow:0 16px 40px rgba(35,48,47,.12)}.project-card-icon{position:absolute;top:14px;left:14px;width:30px;height:30px;display:grid;place-items:center;border-radius:10px;background:rgba(255,255,255,.75);box-shadow:0 8px 18px rgba(35,48,47,.1)}.project-card h2{margin-bottom:8px;font-family:Fraunces,serif;font-size:1.55rem}.project-card p{color:var(--muted);font-size:.92rem}.project-tip{margin:12px 0 0;padding:10px;border-radius:10px;background:rgba(255,255,255,.62)}.project-tip strong{color:var(--accent-dark)}.project-card-actions{display:flex;gap:8px;flex-wrap:wrap}.project-card .small-button{min-height:30px;padding:0 10px;border:0;border-radius:999px;color:#fff;background:var(--accent);font-size:.78rem;font-weight:800}.project-card .small-button:last-child{color:var(--accent-dark);background:#fff}.project-card-blue{background:linear-gradient(135deg,#eaf2ff,#d7e6ff)}.project-card-green{background:linear-gradient(135deg,#edf8f5,#ccece4)}.project-card-orange{background:linear-gradient(135deg,#fff0df,#ffd9b0)}@media(max-width:780px){.calendar-toolbar{grid-template-columns:1fr 1fr}.calendar-toolbar h2{grid-column:1/-1;grid-row:1}.calendar-layout{grid-template-columns:1fr}.calendar-day{min-height:68px;padding:8px}.project-card-grid{grid-template-columns:1fr}}@media(max-width:520px){.calendar-weekdays,.calendar-grid{gap:4px}.calendar-day{min-height:52px;font-size:.9rem}.calendar-event-marker{min-width:20px;height:20px}.event-list-header{align-items:flex-start;flex-direction:column}}
