.app{min-height:100vh;display:flex;flex-direction:column;gap:24px;padding:40px 32px}.app--shell{flex-direction:row;gap:0;padding:0}.app__sidebar{width:240px;min-height:100vh;background:#0f1b1df2;color:#f6f2e8;padding:32px 24px;display:flex;flex-direction:column;gap:28px}.app__sidebar h1{margin:0;font-size:1.8rem}.app__subtitle{margin:6px 0 0;color:#d0d6d3}.app__nav{display:flex;flex-direction:column;gap:10px}.app__nav button{background:transparent;border:1px solid rgba(246,242,232,.2);color:inherit;padding:10px 12px;border-radius:10px;text-align:left;cursor:pointer}.app__nav button.active{background:#f6f2e81f;border-color:#f6f2e880}.app__health{display:grid;gap:6px;font-size:.9rem}.app__content{flex:1;padding:36px 40px;background:transparent}.app__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.app__header h2{margin:0;font-size:2rem}.app__header p{margin:6px 0 0;color:#3c4c4d}.app__header-meta{display:flex;gap:12px;align-items:center}.app__ghost{border:1px solid #0f1b1d;background:transparent;color:#0f1b1d;padding:6px 12px;border-radius:8px;cursor:pointer}.app__panel{background:#fffc;border-radius:20px;padding:24px;box-shadow:0 20px 50px #08191e1f;margin-bottom:24px}.app__panel--compact{padding:18px}.app__panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;gap:16px}.app__calendar-controls{display:flex;flex-direction:column;gap:12px;align-items:flex-end}.app__nav-group{display:flex;gap:8px}.app__toggle{display:inline-flex;gap:6px;background:#0f1b1d14;padding:4px;border-radius:10px}.app__toggle button{border:none;background:transparent;padding:6px 10px;border-radius:8px;cursor:pointer}.app__toggle button.active{background:#0f1b1d;color:#f6f2e8}.app__muted{color:#4b5e60;font-size:.95rem}.app__error{color:#7f1d1d;background:#fee2e2;padding:10px 12px;border-radius:10px;margin:0 0 16px}.app__form{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-top:16px}.app--login{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at top,#f6f2e8,#d6e1e3)}.login-card{width:min(420px,90vw);background:#fff;border-radius:18px;padding:28px;box-shadow:0 18px 40px #0f1b1d26}.login-card__banner{background:#b91c1c;color:#fff7ed;font-weight:700;text-align:center;padding:10px 12px;border-radius:10px;margin-bottom:16px}.login-card h1{margin:0 0 6px}.login-card .app__auth-actions{margin-top:6px}.app__auth{margin-bottom:24px}.app__auth-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-top:12px}.app__auth-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.app__form h4{grid-column:1 / -1;margin:0}.app__field{display:flex;flex-direction:column;gap:6px}.app__field label{font-weight:600}.app__field input,.app__field textarea,.app__field select{padding:10px 12px;border-radius:10px;border:1px solid #b7c5c7;font-family:inherit;font-size:.95rem}.app__field--full{grid-column:1 / -1}.app__checkbox{display:flex;align-items:center;gap:8px;font-weight:600}.app__checkbox .done{text-decoration:line-through;opacity:.6}.app__button{border:none;background:#0f1b1d;color:#f6f2e8;padding:10px 16px;border-radius:10px;font-size:.95rem;cursor:pointer;justify-self:start}.app__button--danger{background:#7f1d1d}.app__list{display:grid;gap:16px}.app__event{display:flex;justify-content:space-between;gap:16px;padding:16px;border-radius:14px;background:#0f1b1d14}.app__event h3,.app__event h4{margin:0 0 8px}.app__event p{margin:4px 0}.app__empty{margin:0;color:#4b5e60}.app__task{display:grid;gap:6px}.app__subtasks{margin-top:8px;display:grid;gap:6px}.app__subtask{font-weight:500;display:flex;align-items:center;gap:8px}.app__subtask-form{display:flex;gap:8px;align-items:center}.app__subtask-form input{flex:1}.app__details{margin-top:12px;background:#ffffffb3;padding:12px;border-radius:12px;display:grid;gap:6px}.app__details-panel{margin-top:16px}.app__link{border:none;background:transparent;color:#0f1b1d;cursor:pointer;font-weight:600}.calendar{display:grid;gap:8px;margin-bottom:16px}.calendar--month{grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:minmax(100px,auto)}.calendar__cell{border:1px solid rgba(15,27,29,.15);border-radius:12px;padding:8px;display:flex;flex-direction:column;gap:6px}.calendar__cell-header{font-weight:700}.calendar__cell-body{display:grid;gap:4px}.calendar__item{display:flex;align-items:center;gap:6px;background:#0f1b1d14;border:none;border-radius:8px;padding:4px 6px;cursor:pointer;text-align:left}.calendar__item.done{opacity:.6;text-decoration:line-through}.calendar--week,.calendar--day{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.calendar__column{border:1px solid rgba(15,27,29,.15);border-radius:12px;padding:8px;display:grid;gap:8px}.calendar__column-header{display:flex;justify-content:space-between;font-weight:700}.calendar__all-day{display:grid;gap:4px}.calendar__hours{display:grid;gap:6px}.calendar__hour{display:grid;grid-template-columns:50px 1fr;gap:8px;align-items:start}.calendar__hour-label{font-size:.85rem;color:#4b5e60}.calendar__hour-body{display:grid;gap:4px}.app__todo-group{margin-bottom:20px}.app__todo-item{display:grid;gap:6px;padding:12px;border-radius:12px;border:1px solid rgba(15,27,29,.12);margin-top:8px}.app__output{margin:0;padding:16px;background:#0f1b1d;color:#f6f2e8;border-radius:12px;min-height:120px;overflow-x:auto}@media (max-width: 900px){.app--shell{flex-direction:column}.app__sidebar{width:100%;min-height:auto;flex-direction:row;flex-wrap:wrap;justify-content:space-between}.app__nav{flex-direction:row;flex-wrap:wrap}.app__content{padding:24px}}@media (max-width: 640px){.app__panel{padding:18px}.app__event{flex-direction:column;align-items:flex-start}.calendar--month{grid-template-columns:repeat(2,minmax(0,1fr))}}:root{color-scheme:light;font-family:Iowan Old Style,Palatino Linotype,Book Antiqua,Palatino,serif;line-height:1.5;font-weight:400;color:#122023;background:radial-gradient(circle at top,#f6f2e8,#e5efe9 50%,#d7e3ee)}*{box-sizing:border-box}body{margin:0;min-height:100vh}#root{min-height:100vh}
