:root{--background:#f7f7f7;--surface:#ffffffeb;--surface-secondary:#fff;--text:#08060d;--text-secondary:#6b6375;--text-muted:#8b8792;--border:#ececec;--accent:#7c3aed;--accent-dark:#5b21b6;--success:#16a34a;--warning:#f98e42;--danger:#dc2626;--shadow:0 8px 24px #2a1b4d14;--background-image:url(/assets/app-bg-DX-N1Pq2.png)}:root[data-theme=dark]{--background:#171717;--surface:#242428f0;--surface-secondary:#2a2a2f;--text:#fff;--text-secondary:#d1d5db;--text-muted:#9ca3af;--border:#3a3a3f;--accent:#8b5cf6;--accent-dark:#7c3aed;--success:#22c55e;--warning:#fb923c;--danger:#ef4444;--shadow:0 8px 24px #00000059;--background-image:url(/assets/app-bg-DX-N1Pq2.png)}*{box-sizing:border-box}html,body{min-height:100vh;margin:0;padding:0}body{color:var(--text);background-color:var(--background);background-image:var(--background-image);background-position:50%;background-repeat:no-repeat;background-size:cover;background-attachment:fixed;font-family:Inter,Arial,sans-serif;transition:background-color .25s,color .25s}#root{min-height:100vh}button,input,textarea,select{font-family:inherit}button{transition:background .2s,color .2s,box-shadow .2s,border-color .2s}p{margin:0}.home-page{padding:30px 30px 100px}.home-hero{text-align:center;padding-top:80px}.home-title{color:var(--text);margin-top:24px;margin-bottom:12px;font-size:24px;font-weight:700}.home-description{max-width:280px;color:var(--text-secondary);margin:0 auto 24px;font-size:15px;line-height:1.4}.home-sticker{width:260px;height:auto;margin:0 auto 24px;display:block}.home-button{background:linear-gradient(135deg, var(--accent), var(--accent-dark));color:#fff;cursor:pointer;width:100%;height:60px;box-shadow:var(--shadow);border:none;border-radius:20px;font-size:20px;font-weight:700}.home-button:active{transform:scale(.98)}.home-stats{gap:12px;margin-top:32px;display:flex}.bottom-nav-add{background:linear-gradient(135deg, var(--accent), var(--accent-dark));color:#fff;width:64px;height:64px;box-shadow:var(--shadow);z-index:1001;border-radius:50%;justify-content:center;align-items:center;font-size:32px;text-decoration:none;display:flex;position:fixed;bottom:42px;left:50%;transform:translate(-50%)}.bottom-nav{background:var(--surface);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:1000;border-top-left-radius:20px;border-top-right-radius:20px;justify-content:space-around;align-items:center;height:70px;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -6px 24px #00000014}:root[data-theme=dark] .bottom-nav{box-shadow:0 -6px 24px #00000059}.bottom-nav__spacer{width:64px}.bottom-nav__icon{width:24px;height:24px;transition:all .2s}.bottom-nav__icon--inactive{opacity:.45}.bottom-nav__icon--active{opacity:1}.bottom-nav a{justify-content:center;align-items:center;display:flex}.user-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.user-header__left{align-items:center;gap:10px;display:flex}.user-header__avatar{object-fit:cover;border-radius:50%;flex-shrink:0;width:40px;height:40px;box-shadow:0 4px 12px #00000014}.user-header__greeting{color:var(--text-secondary);text-align:left;font-size:10px;line-height:12px}.user-header__name{color:var(--text);text-align:left;margin-top:2px;font-size:14px;font-weight:700;line-height:18px}.user-header__actions{gap:8px;margin-left:auto;display:flex}.user-header__icon{cursor:pointer;background:#fff;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;transition:transform .2s,box-shadow .2s;display:flex;box-shadow:0 4px 12px #0000001f}.user-header__icon:active{transform:scale(.96)}.user-header__icon-image{width:18px;height:18px;display:block}.recipient-picker{background:var(--surface);box-shadow:var(--shadow);border-radius:24px;margin-bottom:24px;padding:16px;position:relative}.recipient-picker__title{color:var(--text-secondary);margin-bottom:12px;font-size:12px;font-weight:600}.recipient-picker__selected{cursor:pointer;color:var(--text);align-items:center;gap:12px;display:flex}.recipient-picker__avatar{object-fit:cover;background:var(--border);border-radius:50%;flex-shrink:0;width:36px;height:36px}.recipient-picker__arrow{color:var(--text-secondary);margin-left:auto}.recipient-picker__list{z-index:1000;background:var(--surface);box-shadow:var(--shadow);border-radius:20px;max-height:240px;padding:8px 16px;position:absolute;top:calc(100% + 8px);left:0;right:0;overflow-y:auto}.recipient-picker__list::-webkit-scrollbar{width:6px}.recipient-picker__list::-webkit-scrollbar-thumb{background:var(--border);border-radius:999px}.recipient-picker__item{width:100%;color:var(--text);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:12px;padding:10px 0;display:flex}.recipient-picker__item--active{color:var(--accent);font-weight:700}.recipient-picker__empty{color:var(--text-secondary);text-align:center;padding:12px 0}.create-page{padding:22px 22px 140px}.create-page__title{color:var(--text);margin-bottom:24px;font-size:19px;font-weight:600}.description-card,.date-card,.create-sticker-card,.recipient-card{background:var(--surface);box-shadow:var(--shadow);border-radius:24px;margin-bottom:24px;padding:20px}.section-title,.create-sticker-title{color:var(--text-secondary);margin-bottom:12px;font-size:11px;font-weight:600}.description-textarea{resize:none;width:100%;min-height:90px;color:var(--text);background:0 0;border:none;outline:none;font-size:14px}.description-textarea::placeholder{color:var(--text-muted)}.create-sticker-slider{scroll-snap-type:x mandatory;gap:24px;padding:10px 40px;display:flex;overflow-x:auto}.create-sticker-slider::-webkit-scrollbar{display:none}.create-sticker-slide{opacity:.45;scroll-snap-align:center;flex:0 0 220px;transition:all .2s}.create-sticker-slide--active{opacity:1;transform:scale(1.08)}.create-sticker-slide-image{width:100%;display:block}.date-row{align-items:center;display:flex;position:relative}.date-display{color:var(--text);font-size:16px;font-weight:600}.date-button{cursor:pointer;z-index:1;background:0 0;border:none;width:44px;height:44px;margin-left:auto;position:relative}.date-button__icon{width:24px;height:24px}.date-input-hidden{opacity:0;cursor:pointer;width:44px;height:44px;position:absolute;top:0;right:0}.create-button{background:linear-gradient(135deg, var(--accent), var(--accent-dark));color:#fff;cursor:pointer;width:100%;height:60px;box-shadow:var(--shadow);border:none;border-radius:20px;font-size:20px;font-weight:700}.create-button:active{transform:scale(.98)}.motivation-card{border-radius:20px;margin-bottom:24px;padding:20px}.motivation-card--active{background:#fff7ed;border:1px solid #fb923c}:root[data-theme=dark] .motivation-card--active{background:#3b2d1b;border-color:#fb923c}.motivation-card--completed{background:#ecfdf5;border:1px solid #4ade80}:root[data-theme=dark] .motivation-card--completed{background:#193222;border-color:#4ade80}.motivation-card__text{color:var(--text);margin-bottom:16px;font-size:14px;line-height:20px}.motivation-card__footer{justify-content:space-between;align-items:center;display:flex}.motivation-card__button{background:var(--surface);color:var(--text);cursor:pointer;border:none;border-radius:12px;padding:10px 16px;font-weight:600}.motivation-card__percent{color:var(--text);font-size:22px;font-weight:700}.z-card{box-sizing:border-box;background:var(--surface);width:100%;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:24px;margin-bottom:16px;padding:16px;position:relative}.z-card__sticker{width:120px;margin-bottom:12px;display:block}.z-card__description{color:var(--text);text-align:left;margin-bottom:12px;font-size:16px;line-height:1.45}.z-card__author{align-items:center;gap:8px;margin-bottom:12px;display:flex}.z-card__avatar{object-fit:cover;background:var(--border);border-radius:50%;width:32px;height:32px}.z-card__label{color:var(--text-secondary);font-size:10px}.z-card__name{color:var(--text);font-size:14px;font-weight:600}.z-card__button{background:linear-gradient(135deg, var(--accent), var(--accent-dark));color:#fff;cursor:pointer;width:140px;height:44px;box-shadow:var(--shadow);border:none;border-radius:14px;margin-top:8px;font-size:14px;font-weight:700}.z-card__button:active{transform:scale(.98)}.z-card__badge{background:var(--success);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:72px;height:28px;font-size:12px;font-weight:700;display:flex;position:absolute;top:20px;right:20px}.z-card__completed-date{color:var(--text-muted);text-align:right;font-size:11px;position:absolute;top:54px;right:20px}.inbox-page{min-height:100vh;padding:22px 22px 100px}.inbox-title{color:var(--text);text-align:left;margin:0 0 20px;font-size:18px;font-weight:700}.inbox-progress{background:var(--warning);color:#fff;box-shadow:var(--shadow);border-radius:24px;margin-bottom:24px;padding:24px}.inbox-progress__text{margin-bottom:16px;font-size:14px;line-height:20px}.inbox-progress__footer{justify-content:space-between;align-items:center;display:flex}.inbox-progress__button{background:var(--surface);width:120px;height:36px;color:var(--warning);cursor:pointer;border:none;border-radius:18px;font-weight:700}.inbox-progress__percent{font-size:28px;font-weight:700}.inbox-empty{color:var(--text-secondary);text-align:center;padding:40px 20px}.inbox-empty h3{color:var(--text)}.inbox-empty__title{margin-top:12px;margin-bottom:8px}.calendar-week{gap:8px;margin-bottom:24px;padding-bottom:12px;display:flex;overflow-x:auto}.calendar-week::-webkit-scrollbar{display:none}.calendar-day{background:var(--surface);min-width:60px;height:69px;box-shadow:var(--shadow);cursor:pointer;border:none;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;padding:8px 12px;display:flex}.calendar-day__weekday{color:var(--text-muted);margin-bottom:8px;font-size:10px}.calendar-day__number{color:var(--text);font-size:19px;font-weight:600}.calendar-day__month{color:var(--text-muted);margin-top:6px;font-size:11px}.calendar-day--active{background:linear-gradient(180deg, var(--accent), var(--accent-dark))}.calendar-day--active .calendar-day__weekday,.calendar-day--active .calendar-day__number,.calendar-day--active .calendar-day__month{color:#fff}.calendar-day--disabled{opacity:.55;cursor:default}.calendar-day--disabled .calendar-day__weekday,.calendar-day--disabled .calendar-day__number,.calendar-day--disabled .calendar-day__month{color:var(--text-muted)}.calendar-progress{background:var(--warning);color:#fff;border-radius:24px;margin-bottom:24px;padding:24px}.calendar-progress__text{margin-bottom:16px;line-height:20px}.calendar-progress__footer{justify-content:space-between;align-items:center;display:flex}.calendar-progress__button{background:var(--surface);width:120px;height:36px;color:var(--warning);cursor:pointer;border:none;border-radius:18px;font-weight:700}.calendar-progress__percent{font-size:28px;font-weight:700}.sent-tabs{gap:12px;margin-bottom:24px;display:flex}.sent-tab{background:var(--surface);color:var(--text);box-shadow:var(--shadow);cursor:pointer;border:none;border-radius:999px;padding:12px 20px;transition:all .2s}.sent-tab--active{background:linear-gradient(135deg, var(--accent), var(--accent-dark));color:#fff}.my-contacts-page{padding:22px 22px 140px}.my-contacts-title{color:var(--text);margin:0 0 24px;font-size:22px;font-weight:700}.invite-button{background:linear-gradient(135deg, var(--accent), var(--accent-dark));color:#fff;cursor:pointer;width:100%;box-shadow:var(--shadow);border:none;border-radius:18px;margin-bottom:24px;padding:14px 18px;font-size:16px;font-weight:700;transition:transform .15s,opacity .2s}.invite-button:active{transform:scale(.98)}.invite-button:hover{opacity:.95}.my-contacts-list{gap:12px;display:grid}.my-contact{background:var(--surface);min-height:72px;box-shadow:var(--shadow);border-radius:20px;align-items:center;gap:14px;padding:14px 16px;display:flex}.my-contact__avatar{object-fit:cover;background:var(--border);border-radius:50%;flex-shrink:0;width:44px;height:44px}.my-contact__content{min-width:0}.my-contact__name{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:700;line-height:20px;overflow:hidden}.my-contacts-state,.my-contacts-empty{background:var(--surface);color:var(--text-secondary);text-align:center;border-radius:20px;padding:28px 20px}.my-contacts-state--error{color:var(--danger)}.my-contacts-empty h2{color:var(--text);margin:0 0 8px;font-size:18px}.my-contacts-empty p{color:var(--text-secondary);font-size:14px;line-height:20px}
