:root{--ink:#202235;--muted:#777b8e;--paper:#f7f8fc;--white:#fff;--line:#eceef4;--purple:#7665c9;--purple-soft:#eeeaff;--peach:#fff0e8;--green:#e5f4ed;--shadow:0 10px 30px rgba(38,39,68,.06)}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;-webkit-font-smoothing:antialiased}.app-shell{max-width:560px;margin:0 auto;min-height:100vh;padding:env(safe-area-inset-top) 20px calc(100px + env(safe-area-inset-bottom))}.topbar{display:flex;align-items:center;justify-content:space-between;padding:22px 0 18px}.eyebrow{font-size:10px;letter-spacing:1.5px;font-weight:700;color:#999bb0;margin:0 0 7px}.topbar h1{font:800 25px -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;letter-spacing:-.8px;margin:0}.icon-button,.small-icon,.close-button{border:0;background:var(--white);color:var(--ink);border-radius:14px;width:42px;height:42px;font-size:20px;box-shadow:var(--shadow)}.welcome{background:#eeecfb;border-radius:25px;padding:23px 22px;display:flex;justify-content:space-between;align-items:center;overflow:hidden}.welcome h2{font:800 22px -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;letter-spacing:-.7px;margin:0 0 7px;max-width:260px}.welcome p.muted{font-size:12px;line-height:1.5;margin:0;color:#77748d;max-width:250px}.welcome-mark{font-size:65px;color:#8e80d7;opacity:.8;transform:rotate(-12deg);padding-right:5px}.stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:15px 0 28px}.stat-card{background:var(--white);border-radius:19px;padding:15px;box-shadow:var(--shadow);display:grid;grid-template-columns:30px 1fr;column-gap:9px;align-items:center}.stat-card strong{font:800 23px -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}.stat-card>span:last-child{grid-column:2;color:var(--muted);font-size:11px}.stat-icon{width:29px;height:29px;border-radius:10px;display:grid;place-items:center;font-weight:700}.lavender{background:var(--purple-soft);color:var(--purple)}.peach{background:var(--peach);color:#d18a61}.section-head{display:flex;justify-content:space-between;align-items:end;margin:0 1px 13px}.section-head h2{font:800 19px -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;margin:0;letter-spacing:-.5px}.text-button{border:0;background:none;color:var(--purple);font-weight:700;font-size:12px;padding:8px 0}.event-list{display:grid;gap:10px}.event-card{background:var(--white);border-radius:17px;padding:13px;display:flex;align-items:center;gap:12px;box-shadow:var(--shadow);cursor:pointer}.date-tile{width:49px;min-width:49px;height:54px;border-radius:13px;background:#f0effb;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--purple)}.date-tile strong{font:800 19px -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;line-height:1.1}.date-tile span{font-size:9px;text-transform:uppercase;font-weight:700;letter-spacing:.8px}.event-info{min-width:0;flex:1}.event-info strong{display:block;font-size:13px;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.event-info small{color:var(--muted);font-size:10px}.event-tag{font-size:9px;font-weight:700;background:#f3f2fa;color:#7665c9;padding:6px 8px;border-radius:9px;white-space:nowrap}.empty-state{background:#fff;border:1px dashed #dcddea;border-radius:17px;padding:22px;text-align:center;color:var(--muted);font-size:12px;line-height:1.6}.empty-state b{display:block;color:var(--ink);font:700 14px -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;margin-bottom:4px}.calendar-heading{margin-top:29px}.month-controls{display:flex;align-items:center;gap:9px;font-size:11px;font-weight:700}.small-icon{width:27px;height:27px;border-radius:9px;font-size:19px;box-shadow:none;background:#fff}.calendar-card{background:#fff;border-radius:19px;padding:14px 10px;box-shadow:var(--shadow)}.weekday-row,.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);text-align:center}.weekday-row span{font-size:9px;color:#a1a3b3;font-weight:700;padding:5px 0 10px}.day{height:39px;border:0;background:none;border-radius:11px;font:500 11px 'DM Sans';color:var(--ink);position:relative}.day.muted-day{color:#c8c9d2}.day.today{background:#f0effb;color:var(--purple);font-weight:800}.day.selected{outline:1.5px solid var(--purple)}.day .mini-dots{position:absolute;bottom:4px;left:0;right:0;display:flex;justify-content:center;gap:3px}.dot{width:4px;height:4px;border-radius:50%;display:inline-block}.event-dot{background:#8b7bd7}.task-dot{background:#e6a17b}.calendar-legend{display:flex;justify-content:center;gap:17px;margin-top:10px;color:var(--muted);font-size:9px}.calendar-legend .dot{margin-right:4px}.actions-head{margin-top:28px}.task-list{display:grid;gap:8px}.task-row{display:flex;align-items:center;gap:10px;background:#fff;border-radius:14px;padding:12px;box-shadow:var(--shadow)}.task-row input{accent-color:var(--purple);width:17px;height:17px}.task-text{flex:1;font-size:12px;font-weight:600}.task-text small{display:block;color:var(--muted);font-size:10px;font-weight:400;margin-top:3px}.done .task-text{text-decoration:line-through;color:#a4a5b0}.bottom-nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:min(560px,100%);padding:10px 18px calc(10px + env(safe-area-inset-bottom));background:rgba(255,255,255,.96);backdrop-filter:blur(16px);display:flex;justify-content:space-between;align-items:center;border-top:1px solid #eff0f5;z-index:5}.nav-item{border:0;background:none;color:#a1a3b2;font-size:9px;display:flex;flex-direction:column;align-items:center;gap:3px;min-width:48px}.nav-item span{font-size:19px}.nav-item.active{color:var(--purple);font-weight:700}.nav-add{border:0;background:var(--purple);color:white;width:48px;height:48px;border-radius:17px;font-size:28px;box-shadow:0 6px 15px #7665c955;margin-top:-25px}.modal-backdrop{position:fixed;inset:0;background:rgba(27,28,45,.42);z-index:10;display:flex;align-items:flex-end;justify-content:center;padding:12px}.modal{background:#fff;border-radius:25px 25px 18px 18px;padding:22px;width:min(560px,100%);max-height:92vh;overflow:auto;box-shadow:0 20px 70px #17182a33}.modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.modal h2{font:800 21px -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;margin:0}.close-button{box-shadow:none;background:#f5f5f9;width:34px;height:34px;font-size:23px}label{display:block;font-size:11px;font-weight:700;color:#5d6074;margin:12px 0}input,select,textarea{display:block;width:100%;margin-top:6px;border:1px solid #e7e8ef;border-radius:12px;padding:12px;background:#fbfbfd;color:var(--ink);font:500 13px 'DM Sans';outline:none}input:focus,select:focus,textarea:focus{border-color:#9c91dc}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.primary-button,.secondary-button{width:100%;border:0;border-radius:13px;padding:14px;background:var(--purple);color:white;font-weight:700;font-size:13px;margin-top:12px}.secondary-button{background:#f0effb;color:var(--purple)}.danger-link{display:block;border:0;background:none;color:#c45c62;font-size:11px;font-weight:700;margin:14px auto 0}.privacy-note{background:#f2f7f4;border-radius:14px;padding:14px;font-size:12px;line-height:1.5}.privacy-note p{margin:5px 0 0;color:var(--muted)}.import-label{display:block;padding:12px;border:1px dashed #d9d9e5;border-radius:12px;text-align:center}.import-label input{border:0;padding:5px;background:none}.tiny{font-size:10px;line-height:1.5}.muted{color:var(--muted)}.hidden{display:none!important}.toast{position:fixed;bottom:90px;left:50%;transform:translate(-50%,15px);background:#292a3d;color:#fff;padding:11px 16px;border-radius:12px;font-size:11px;opacity:0;pointer-events:none;transition:.2s;z-index:20;white-space:nowrap}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(min-width:600px){.app-shell{padding-left:26px;padding-right:26px}.modal-backdrop{align-items:center}.modal{border-radius:24px}}
