@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@1,500;1,600&display=swap";:root{font-family:DM Sans,sans-serif;color:#163247;background:#f5fbff;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px}button,textarea,input{font:inherit}button{border:0;cursor:pointer}.app-shell{min-height:100vh;overflow:hidden;padding-bottom:104px;position:relative;background:radial-gradient(circle at 10% 10%,#e5f6ff 0,transparent 36%),linear-gradient(135deg,#f5fbff,#eaf7fc 52%,#f8fbff)}.app-content{max-width:850px;margin:auto;padding:34px 32px 42px;position:relative;z-index:1}.ambient{border-radius:50%;filter:blur(1px);opacity:.35;position:absolute;pointer-events:none}.ambient-one{background:#bceafe;height:210px;right:-80px;top:170px;width:210px}.ambient-two{background:#d3d6ff;height:150px;left:-80px;top:570px;width:150px}.topbar{align-items:center;display:flex;justify-content:space-between}.topbar-actions{align-items:center;display:flex;gap:8px}.brand{align-items:center;color:#183e56;display:flex;font-size:16px;font-weight:700;gap:10px;letter-spacing:-.3px}.brand-mark{align-items:center;background:#b8e7fa;border-radius:11px;box-shadow:0 5px 14px #a4d5e955;display:flex;height:32px;justify-content:center;width:32px}svg{fill:none;height:18px;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8;width:18px}.brand-mark svg{color:#16759c;height:18px;stroke-width:1.5}.icon-button{align-items:center;background:#ffffff92;border:1px solid #ffffff;border-radius:50%;color:#54768a;display:flex;height:36px;justify-content:center;width:36px}.icon-button svg{height:17px;width:17px}.profile-button.signed-in{background:#c6edfc;color:#23708d}.hero{padding:83px 0 36px}.eyebrow,.section-kicker{color:#5791a8;font-size:10px;font-weight:700;letter-spacing:2.2px;margin:0 0 14px}h1{color:#123a51;font-size:clamp(42px,7vw,63px);letter-spacing:-2.8px;line-height:.98;margin:0}h1 em{color:#388baa;font-family:Playfair Display,serif;font-weight:500;letter-spacing:-2.5px}.hero-copy{color:#658695;font-size:15px;margin:22px 0 0}.glass-card{background:#ffffff8a;border:1px solid #ffffff;box-shadow:0 12px 30px #5695ad12,inset 0 1px #ffffffb8;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.note-composer{border-radius:20px;margin-bottom:58px;padding:19px 21px 13px}.title-input{background:transparent;border:0;border-bottom:1px solid #cfe8f080;color:#1a455c;display:block;font-size:18px;font-weight:700;outline:0;padding:0 0 11px;width:100%}.title-input::placeholder{color:#9ab4bf;font-weight:500}textarea{background:transparent;border:0;color:#1a455c;display:block;font-size:16px;line-height:1.55;outline:0;overflow:hidden;resize:vertical;width:100%}textarea::placeholder{color:#9ab4bf}.deadline-row{align-items:center;border-top:1px solid #cfe8f080;color:#6f98a7;display:flex;font-size:11px;justify-content:space-between;margin-top:12px;padding-top:11px}.deadline-row label span{color:#a5bbc3}.deadline-row input{background:#effaff;border:1px solid #c3e6f1;border-radius:8px;color:#4b8194;font-size:11px;padding:7px 8px}.composer-footer{align-items:center;border-top:1px solid #cfe8f080;color:#94aeb9;display:flex;font-size:11px;justify-content:space-between;margin-top:12px;padding-top:12px}.add-button{align-items:center;background:#173f56;border-radius:12px;color:#fff;display:flex;font-size:12px;font-weight:600;gap:9px;padding:10px 13px 10px 16px;transition:transform .2s,opacity .2s}.add-button.large{font-size:14px;justify-content:center;padding:14px 18px;width:100%}.add-button:hover:not(:disabled){transform:translateY(-2px)}.add-button:disabled{cursor:not-allowed;opacity:.4}.add-button span{align-items:center;background:#78bfd8;border-radius:50%;display:flex;height:18px;justify-content:center;width:18px}.add-button svg{height:13px;stroke-width:2.4;width:13px}.section-heading{align-items:flex-end;display:flex;justify-content:space-between;margin-bottom:17px}h2{color:#24495c;font-size:20px;letter-spacing:-.7px;margin:0}.section-kicker{font-size:9px;letter-spacing:1.8px;margin-bottom:8px}.count-badge{align-items:center;background:#c6edfc;border-radius:20px;color:#23708d;display:flex;font-size:11px;font-weight:700;height:26px;justify-content:center;min-width:26px;padding:0 9px}.count-badge.muted{background:#e1edf1;color:#7794a0}.notes-list{display:grid;gap:10px}.note-card{align-items:center;animation:appear .45s both;animation-delay:var(--delay, 0ms);border-radius:16px;display:flex;gap:14px;min-height:71px;padding:14px 17px;transition:transform .25s,box-shadow .25s}.note-card:hover{box-shadow:0 16px 32px #5695ad22,inset 0 1px #ffffffb8;transform:translateY(-2px)}.complete-button{align-items:center;background:#effaff;border:1px solid #a9d8e8;border-radius:50%;color:transparent;display:flex;flex:0 0 auto;height:24px;justify-content:center;width:24px}.complete-button:hover{background:#d8f4ff;color:#55a1bc}.complete-button.selected{background:#8fcee1;border-color:#8fcee1;color:#fff}.complete-button svg{height:14px;stroke-width:2.5;width:14px}.note-main{flex:1;min-width:0}.note-main h3{color:#24495c;font-size:14px;letter-spacing:-.2px;margin:0 0 3px}.note-card p{color:#426779;font-size:13px;line-height:1.45;margin:0}.deadline-label{color:#5b9ab0;display:inline-block;font-size:10px;font-weight:600;margin-top:7px}.note-actions{display:flex;gap:4px;opacity:0;transition:opacity .2s}.note-card:hover .note-actions,.note-actions:focus-within{opacity:1}.note-actions button{background:transparent;border-radius:7px;color:#83a5b3;padding:6px}.note-actions button:hover{background:#e1f4fb;color:#347e9b}.note-actions svg{height:15px;width:15px}.completed-section{margin-top:53px;opacity:.8}.completed .note-card p,.completed p{color:#809ca8;text-decoration:line-through}.empty-state{border:1px dashed #b9dce8;border-radius:16px;color:#7b9ba7;font-size:14px;padding:28px;text-align:center}footer{align-items:center;color:#82a2af;display:flex;font-size:11px;gap:7px;justify-content:center;margin-top:80px}footer strong{color:#578193;font-weight:600}.footer-dot{background:#73c8df;border-radius:50%;height:6px;width:6px}.footer-separator{color:#bbd1d9}.calendar-hero{padding:83px 0 36px}.calendar-card{border-radius:20px;padding:20px}.calendar-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.calendar-header h2{text-transform:capitalize}.calendar-arrow{align-items:center;background:#e9f8fd;border-radius:10px;color:#4c91aa;display:flex;height:32px;justify-content:center;width:32px}.calendar-arrow:hover{background:#d6f1fa}.calendar-arrow svg{height:17px;width:17px}.weekday-row,.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);text-align:center}.weekday-row{color:#8caab5;font-size:10px;font-weight:700;margin-bottom:8px}.calendar-day{align-items:center;background:transparent;border-radius:11px;color:#527687;display:flex;flex-direction:column;font-size:13px;gap:4px;justify-content:flex-start;min-height:47px;padding:7px 3px;position:relative;width:100%}.calendar-day:not(.blank):hover{background:#e7f7fc}.calendar-day.today{background:#d5f2fc;color:#1e7f9d;font-weight:700}.calendar-day.has-notes>span{color:#255e76;font-weight:700}.calendar-date-button{background:transparent;border-radius:6px;color:inherit;font-size:13px;font-weight:700;padding:0 4px}.calendar-date-button:hover{background:#b9e6f2}.calendar-events{display:grid;gap:2px;max-width:100%;width:100%}.calendar-event{background:#9fd9e9;border-radius:4px;color:#205c72;display:block;font-size:8px;overflow:hidden;padding:2px 3px;text-align:left;text-overflow:ellipsis;white-space:nowrap;width:100%}.calendar-event:hover{background:#75c3d9}.calendar-event.completed{background:#9ed4aa;color:#28653a;text-decoration:line-through}.calendar-event.completed:hover{background:#7fc491}.calendar-day.blank{opacity:0}.deadline-list{margin-top:53px}.event-detail{border-radius:20px;padding:24px}.event-detail h2{font-size:26px;margin:8px 0 12px}.event-detail p{color:#426779;line-height:1.55;margin:0 0 12px}.detail-edit{background:#173f56;border-radius:11px;color:#fff;font-size:12px;font-weight:600;margin-top:22px;padding:11px 16px}.event-picker{margin-top:10px}.event-option{align-items:center;border-radius:16px;color:#426779;display:flex;gap:10px;padding:15px 16px;text-align:left;width:100%}.event-option span:not(.event-option-title){flex:1;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-option-title{color:#24495c;font-size:14px;font-weight:700}.event-option>svg{color:#78a7b6;flex:0 0 auto;height:16px;width:16px}.modal-backdrop{align-items:flex-end;background:#173f5666;display:flex;top:0;right:0;bottom:0;left:0;justify-content:center;padding:18px;position:fixed;z-index:20}.event-modal{animation:modal-up .25s ease-out;border-radius:24px;max-width:470px;padding:27px 23px 22px;position:relative;width:100%}.event-modal h2{font-size:26px;margin:8px 0 12px}.event-modal p{color:#426779;line-height:1.55;margin:0 0 8px}.modal-close{align-items:center;background:#e8f7fc;border-radius:50%;color:#5b8797;display:flex;height:32px;justify-content:center;position:absolute;right:18px;top:18px;width:32px}.modal-close svg{height:16px;width:16px}.modal-actions{border-top:1px solid #cfe8f080;display:flex;gap:10px;justify-content:center;margin-top:28px;padding-top:18px}.modal-action{align-items:center;background:#e8f7fc;border-radius:13px;color:#347d96;display:flex;height:46px;justify-content:center;width:52px}.modal-action:hover,.modal-action.is-selected{background:#9bd8e9;color:#fff}.modal-action.danger:hover{background:#e99eaa;color:#fff}.modal-action svg{height:20px;width:20px}.picker-modal h2{margin-bottom:20px}.modal-event-list{display:grid;gap:9px}.modal-event-list .event-option{background:#fff8;border:1px solid #ffffff}@keyframes modal-up{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.bottom-nav{align-items:center;background:#ffffffc7;border:1px solid #ffffff;border-radius:18px;box-shadow:0 10px 25px #5695ad18;display:flex;justify-content:space-around;left:50%;margin:0;max-width:310px;padding:7px;position:fixed;bottom:max(16px,env(safe-area-inset-bottom));transform:translate(-50%);width:calc(100% - 36px);z-index:10;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.bottom-nav button{align-items:center;background:transparent;border-radius:13px;color:#8aa8b3;display:flex;flex:1;flex-direction:column;font-size:10px;gap:3px;padding:7px}.bottom-nav button.active{background:#d9f3fb;color:#277e99;font-weight:700}.bottom-nav svg{height:17px;width:17px}.night-mode{background:radial-gradient(circle at 10% 10%,#233e55 0,transparent 36%),linear-gradient(135deg,#142d3c,#193d50 52%,#142a3b)}.night-mode .brand,.night-mode h1,.night-mode h2{color:#e5f6ff}.night-mode h1 em{color:#8bd0e6}.night-mode .hero-copy,.night-mode .note-card p,.night-mode .composer-footer,.night-mode footer{color:#a6c2cc}.night-mode .glass-card{background:#254d628c;border-color:#ffffff18;box-shadow:0 12px 30px #06192345,inset 0 1px #ffffff16}.night-mode textarea{color:#e8f7fc}.night-mode textarea::placeholder{color:#91aeb9}.night-mode .note-card p{color:#c0d8df}.night-mode .section-kicker{color:#8ac5d8}.night-mode .icon-button{background:#ffffff15;border-color:#ffffff20;color:#b4d3dd}.night-mode .profile-button.signed-in{background:#28657a;color:#e8f7fc}.night-mode .complete-button{background:#ffffff12;border-color:#70b4c9}.night-mode .note-actions button:hover{background:#ffffff14}.night-mode .title-input,.night-mode .note-main h3,.night-mode .event-option-title{color:#e8f7fc}.night-mode .deadline-row{color:#a6c2cc}.night-mode .deadline-row input,.night-mode .calendar-arrow{background:#ffffff14;border-color:#ffffff20;color:#c0dce4}.night-mode .calendar-day{color:#c0d8df}.night-mode .calendar-day.today,.night-mode .bottom-nav button.active{background:#28657a;color:#e8f7fc}.night-mode .bottom-nav{background:#1f43558f;border-color:#ffffff20}.night-mode .event-detail p,.night-mode .event-option{color:#c0d8df}.night-mode .calendar-day:not(.blank):hover{background:#ffffff14}.night-mode .calendar-event{background:#367b8f;color:#e8f7fc}.night-mode .calendar-event.completed{background:#4f8e63;color:#ecfff0}.night-mode .modal-backdrop{background:#071b29a8}.night-mode .modal-close,.night-mode .modal-action{background:#ffffff14;border-color:#ffffff20;color:#b9d9e3}.night-mode .modal-event-list .event-option{background:#ffffff12;border-color:#ffffff20}.profile-modal p,.auth-modal p{color:#426779;line-height:1.5}.link-code-button,.logout-button{border-radius:11px;display:block;font-size:12px;font-weight:600;padding:12px 14px;width:100%}.link-code-button{background:#d9f3fb;color:#277e99}.logout-button{background:transparent;color:#bb6875;margin-top:10px}.generated-code{align-items:center;background:#effaff;border:1px dashed #a9d8e8;border-radius:12px;display:flex;flex-direction:column;gap:3px;margin-top:14px;padding:12px}.generated-code span{color:#7c9eaa;font-size:10px}.generated-code strong{color:#1e708a;font-size:25px;letter-spacing:4px}.auth-input{background:#effaff;border:1px solid #c3e6f1;border-radius:11px;color:#1a455c;display:block;font-size:16px;margin:18px 0 10px;outline:0;padding:13px 14px;width:100%}.code-input{letter-spacing:4px;text-align:center}.auth-error{color:#b45360!important;font-size:12px}.auth-switch{background:transparent;color:#4e92a7;font-size:12px;margin-top:19px;padding:4px;width:100%}.night-mode .profile-modal p,.night-mode .auth-modal p{color:#c0d8df}.night-mode .link-code-button,.night-mode .auth-input,.night-mode .generated-code{background:#ffffff12;border-color:#ffffff20;color:#e8f7fc}.night-mode .generated-code strong{color:#bce8f3}@keyframes appear{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:560px){.app-content{max-width:430px;padding:25px 18px calc(30px + env(safe-area-inset-bottom))}.hero,.calendar-hero{padding:68px 0 30px}.note-composer{margin-bottom:45px}.note-actions{opacity:1}footer{flex-wrap:wrap;margin-top:35px}.footer-separator{display:none}.bottom-nav{margin-top:45px}}
