.bottom-nav{position:fixed;bottom:0;left:0;right:0;background:#1c1c1e;box-shadow:0 -1px #ffffff14;padding:16px 16px 24px;-webkit-tap-highlight-color:transparent;overflow:visible}.bottom-nav__inner{display:flex;align-items:flex-start;max-width:480px;margin:0 auto;width:100%}.bottom-nav__link{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;text-decoration:none;color:#6b7280;font-size:12px;position:relative;z-index:1;min-height:44px}.bottom-nav__icon{display:flex;align-items:center;justify-content:center;will-change:filter;transition:filter .1s ease}.bottom-nav__link svg{transition:color .1s ease}.bottom-nav__link.active .bottom-nav__icon{filter:drop-shadow(0 0 6px #2D7FF9)}.bottom-nav__link.active svg{color:#2d7ff9}.bottom-nav__link.active .bottom-nav__fab-icon svg{color:#fff}.bottom-nav__link--fab{transform:translateY(-5px)}.bottom-nav__label{font-size:11px;color:#6b7280;transition:color .1s ease}.bottom-nav__link.active .bottom-nav__label{color:#2d7ff9}.bottom-nav__fab-icon{width:55px;height:55px;border-radius:50%;background:#2d7ff9;color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 0 18px #2d7ff98c}.bottom-nav__link.active .bottom-nav__fab-icon{box-shadow:0 0 28px #2d7ff9d9}@keyframes slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes slide-down{0%{transform:translateY(0)}to{transform:translateY(100%)}}@keyframes backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes backdrop-out{0%{opacity:1}to{opacity:0}}.bottom-sheet__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;z-index:99;animation:backdrop-in .3s ease}.bottom-sheet__backdrop--closing{animation:backdrop-out .3s ease forwards}.bottom-sheet{border:none;padding:0;margin:0;max-width:none;max-height:none;width:100%;background:#1c1c1e;border-radius:20px 20px 0 0;box-sizing:border-box;position:fixed;bottom:0;left:0;right:0;display:flex;flex-direction:column;animation:slide-up .3s ease;z-index:100}.bottom-sheet--closing{animation:slide-down .3s ease forwards}.bottom-sheet__handle{width:36px;height:4px;background:#3a3a3c;border-radius:2px;margin:12px auto 0;flex-shrink:0}.home{display:flex;flex-direction:column;height:100dvh;max-width:480px;margin:0 auto;padding:20px 16px 0}.home__tx-scroll{flex:1;overflow-y:auto;padding-bottom:90px}.home__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.home__analytics-btn{display:flex;align-items:center;justify-content:center;background:none;border:none;padding:4px;color:#2d7ff9;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:color .15s;flex-shrink:0}.home__analytics-btn:active{opacity:.75}.home__title{font-size:28px;font-weight:700;color:#f8fafc;margin:0}.analytics-sheet{height:90dvh;padding:24px 16px 40px;display:flex;flex-direction:column;gap:12px}.analytics-sheet__title{font-size:20px;font-weight:700;color:#f8fafc;margin:0 0 4px}.analytics-block{display:flex;align-items:center;gap:14px;width:100%;background:#2c2c2e;border:none;border-radius:16px;padding:16px;cursor:pointer;font:inherit;text-align:left;-webkit-tap-highlight-color:transparent;transition:opacity .15s}.analytics-block:active{opacity:.75}.analytics-block__icon{width:40px;height:40px;border-radius:12px;background:#2d7ff926;color:#2d7ff9;display:flex;align-items:center;justify-content:center;flex-shrink:0}.analytics-block__info{flex:1;display:flex;flex-direction:column;gap:3px;min-width:0}.analytics-block__title{font-size:15px;font-weight:600;color:#f8fafc}.analytics-block__subtitle{font-size:13px;color:#8e8e93}.analytics-block__chevron{color:#3a3a3c;flex-shrink:0}.comparison-sheet{height:90dvh}.comparison-sheet__header{padding:16px 16px 0;flex-shrink:0}.comparison-sheet__title{font-size:20px;font-weight:700;color:#f8fafc;margin:0}.comparison-sheet__scroll{flex:1;overflow-y:auto;padding:16px 16px 60px;display:flex;flex-direction:column;gap:20px}.comparison-sheet__loading{display:flex;align-items:center;justify-content:center;padding:40px 0;color:#8e8e93}.comparison-sheet__error{font-size:14px;color:#f87171;text-align:center;margin:0;padding:24px 0}.comparison-periods{display:flex;flex-direction:column;gap:10px;flex-shrink:0}.comparison-period-card{background:#2c2c2e;border-radius:16px;padding:14px 16px;display:flex;flex-direction:column;gap:10px}.comparison-period-card__label{font-size:12px;font-weight:600;color:#8e8e93;text-transform:uppercase;letter-spacing:.4px}.comparison-period-card__selectors{display:flex;align-items:center;gap:8px}.comparison-period-card__arrow{color:#8e8e93;flex-shrink:0}.comparison-results{display:flex;flex-direction:column;gap:12px}.comparison-metric{background:#2c2c2e;border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:12px}.comparison-metric__header{display:flex;justify-content:space-between;align-items:center}.comparison-metric__label-wrap{display:flex;align-items:center;gap:10px}.comparison-metric__icon{width:32px;height:32px;border-radius:10px;background:#2d7ff926;color:#2d7ff9;display:flex;align-items:center;justify-content:center;flex-shrink:0}.comparison-metric__label{font-size:15px;font-weight:600;color:#f8fafc}.comparison-metric__period-row{display:flex;justify-content:space-between;align-items:center}.comparison-metric__value{font-size:17px;font-weight:700;color:#f8fafc}.comparison-metric__period-label{font-size:13px;color:#8e8e93}.comparison-metric__delta{font-size:13px;font-weight:600;color:#8e8e93;text-align:right;white-space:nowrap}.comparison-metric__delta--pos{color:#4ade80}.comparison-metric__delta--neg{color:#f87171}.top-tx-sheet{height:90dvh;display:flex;flex-direction:column}.top-tx-sheet__header{display:flex;align-items:center;justify-content:space-between;padding:16px 16px 12px;flex-shrink:0}.top-tx-sheet__title{font-size:20px;font-weight:700;color:#f8fafc;margin:0}.year-selector{display:flex;align-items:center;background:#2c2c2e;border-radius:10px;padding:2px 4px}.year-selector__arrow{background:none;border:none;color:#94a3b8;font-size:22px;line-height:1;padding:4px 10px;cursor:pointer;-webkit-tap-highlight-color:transparent}.year-selector__arrow:disabled{opacity:.25;cursor:default}.year-selector__label{font-size:14px;font-weight:600;color:#f8fafc;min-width:38px;text-align:center}.top-tx-sheet__controls{display:flex;align-items:center;gap:8px}.top-tx-filter-wrap{position:relative;flex-shrink:0}.top-tx-filter-btn{display:flex;align-items:center;gap:6px;background:#2c2c2e;border:none;border-radius:10px;padding:6px 10px;color:#8e8e93;font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}.top-tx-filter-btn--active{color:#2d7ff9}.top-tx-filter-badge{font-size:11px;font-weight:700;background:#2d7ff9;color:#fff;border-radius:10px;padding:1px 6px}.top-tx-dropdown-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10}.top-tx-dropdown{position:absolute;top:calc(100% + 6px);right:0;background:#2c2c2e;border-radius:14px;overflow:hidden;z-index:11;min-width:200px;box-shadow:0 8px 24px #00000080}.top-tx-dropdown-item{display:flex;align-items:center;gap:10px;width:100%;padding:13px 16px;border:none;border-bottom:1px solid rgba(255,255,255,.05);background:none;color:#f8fafc;font:inherit;font-size:14px;cursor:pointer;text-align:left;-webkit-tap-highlight-color:transparent}.top-tx-dropdown-item:last-child{border-bottom:none}.top-tx-dropdown-item:active{background:#ffffff0d}.top-tx-dropdown-item__name{flex:1}.top-tx-dropdown-item__check{color:#2d7ff9;flex-shrink:0}.top-tx-list{flex:1;overflow-y:auto;padding:0 16px 60px;display:flex;flex-direction:column;gap:8px}.top-tx-item{display:flex;align-items:center;gap:12px;padding:12px;background:#2c2c2e;border-radius:14px;width:100%;border:none;font:inherit;color:inherit;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .15s}.top-tx-item:active{background:#3a3a3c}.top-tx-item__rank{font-size:13px;font-weight:600;color:#8e8e93;min-width:24px;text-align:center;flex-shrink:0}.top-tx-item__icon{width:36px;height:36px;border-radius:50%;background:#2d7ff9;color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0}.top-tx-item__info{flex:1;display:flex;flex-direction:column;gap:3px;min-width:0}.top-tx-item__category{font-size:14px;font-weight:600;color:#f8fafc;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.top-tx-item__date{font-size:12px;color:#8e8e93}.top-tx-item__note{font-size:12px;color:#8e8e93;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.top-tx-item__right{display:flex;flex-direction:column;align-items:flex-end;gap:3px;flex-shrink:0}.top-tx-item__amount{font-size:15px;font-weight:700}.top-tx-item__amount--income{color:#4ade80}.top-tx-item__amount--expense{color:#f8fafc}.summary-card{display:flex;gap:12px;margin-bottom:28px}.summary-card__tile{flex:1;display:flex;flex-direction:column;gap:6px;background:#2c2c2e;border-radius:20px;padding:20px 16px;border:1px solid #3a3a3c;font:inherit;color:inherit;text-align:left}.summary-card__tile--clickable{cursor:pointer;transition:opacity .15s;-webkit-tap-highlight-color:transparent}.summary-card__tile--clickable:active{opacity:.75}.summary-card__value{font-size:22px;font-weight:700;color:#f8fafc}.summary-card__footer{display:flex;align-items:center;justify-content:space-between}.summary-card__label{font-size:14px;color:#8e8e93}.summary-card__chevron{color:#8e8e93}.transaction-item{display:flex;align-items:center;gap:16px;padding:16px;background:#1c1c1e;border-radius:16px;margin-bottom:10px;width:100%;border:none;text-align:left;font:inherit;color:inherit;cursor:default;-webkit-tap-highlight-color:transparent}.transaction-item__icon{width:48px;height:48px;color:#fff;background:#2d7ff9;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.transaction-item__info{flex:1;display:flex;flex-direction:column;gap:4px;min-width:0}.transaction-item__title{font-size:15px;font-weight:600;color:#f8fafc;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.transaction-item__category{font-size:13px;color:#94a3b8}.transaction-item__right{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex-shrink:0}.transaction-item__amount{font-size:15px;font-weight:600}.transaction-item__amount--income{color:#4ade80}.transaction-item__amount--expense{color:#f8fafc}.all-tx-sheet{height:85dvh}.all-tx-sheet__list{flex:1;overflow-y:auto;padding:0 16px 80px;display:flex;flex-direction:column;gap:16px}.tx-group{display:flex;flex-direction:column;gap:8px}.tx-group__header{display:flex;justify-content:space-between;align-items:baseline;padding:4px 0}.tx-group__date{font-size:20px;font-weight:700;color:#f8fafc}.tx-group__total{font-size:15px;color:#8e8e93}.all-tx-sheet .transaction-item{margin-bottom:0}.transaction-item--clickable{cursor:pointer;transition:background .15s}.transaction-item--clickable:active{background:#2c2c2e}.tx-sheet-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99}.tx-sheet-overlay--top{z-index:103}.tx-detail-sheet__content{padding:16px 16px 32px;display:flex;flex-direction:column;gap:20px}.tx-detail-sheet__header{display:flex;align-items:center;gap:16px}.tx-detail-sheet__header-info{flex:1;display:flex;flex-direction:column;gap:4px;min-width:0}.tx-detail-sheet__category{font-size:18px;font-weight:600;color:#f8fafc}.tx-detail-sheet__note{font-size:13px;color:#94a3b8}.tx-detail-sheet__amount{font-size:28px;font-weight:700}.tx-detail-sheet__amount--income{color:#4ade80}.tx-detail-sheet__amount--expense{color:#f8fafc}.tx-detail-sheet__actions{display:flex;flex-direction:column;gap:10px;margin-top:12px}.tx-detail-sheet__btn{width:100%;padding:14px;border-radius:14px;font-size:16px;font-weight:600;border:none;cursor:pointer}.tx-detail-sheet__btn--edit{background:#2d7ff9;color:#fff}.tx-detail-sheet__btn--delete{background:transparent;border:2px solid #2D7FF9;color:#2d7ff9}.tx-detail-sheet__confirm{display:flex;flex-direction:column;gap:10px}.tx-detail-sheet__confirm-text{text-align:center;font-size:14px;color:#8e8e93}.tx-detail-sheet__confirm-btns{display:flex;gap:10px}.tx-detail-sheet__confirm-btns .tx-detail-sheet__btn{flex:1}.tx-detail-sheet__btn--secondary{background:#2c2c2e;color:#8e8e93}.tx-detail-sheet__btn--delete-confirm{background:#ef4444;color:#fff}.edit-tx-sheet__form{padding:16px 16px 32px;display:flex;flex-direction:column;gap:20px}.edit-tx-sheet__title{font-size:20px;font-weight:700;color:#f8fafc;margin:0}.edit-tx-sheet__field{display:flex;flex-direction:column;gap:8px}.edit-tx-sheet__label{font-size:14px;color:#8e8e93}.edit-tx-sheet__input{background:#2c2c2e;border:none;border-radius:12px;padding:14px 16px;font-size:16px;color:#f8fafc;width:100%;box-sizing:border-box;-webkit-appearance:none;color-scheme:dark}.edit-tx-sheet__input:focus{outline:2px solid #2D7FF9;outline-offset:-2px}.edit-tx-sheet__footer{display:flex;gap:10px}.edit-tx-sheet__btn{flex:1;padding:14px;border-radius:14px;font-size:16px;font-weight:600;border:none;cursor:pointer}.edit-tx-sheet__btn--save{background:#2d7ff9;color:#fff}.edit-tx-sheet__btn--cancel{background:#2c2c2e;color:#8e8e93}.month-selector{display:flex;align-items:center;gap:4px;background:#2c2c2e;border-radius:10px;padding:6px 10px;border:none;cursor:pointer;font:inherit;-webkit-tap-highlight-color:transparent}.month-selector__label{font-size:13px;color:#94a3b8}.month-selector__chevron{color:#94a3b8;flex-shrink:0}.month-picker-sheet{padding:16px 16px 32px}.month-picker__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.month-picker__year{font-size:18px;font-weight:700;color:#f8fafc}.month-picker__arrow{background:none;border:none;color:#94a3b8;font-size:24px;line-height:1;padding:8px 16px;cursor:pointer;-webkit-tap-highlight-color:transparent}.month-picker__arrow:disabled{opacity:.25;cursor:default}.month-picker__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.month-picker__cell{height:52px;border:none;border-radius:12px;background:#2c2c2e;color:#f8fafc;font-size:15px;font-weight:500;font-family:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .15s}.month-picker__cell:disabled{color:#3a3a3c;cursor:default}.month-picker__cell--selected{background:#2d7ff9;color:#fff;box-shadow:0 0 10px #2d7ff9}.breakdown-sheet{height:85dvh}.breakdown-sheet__header{display:flex;align-items:center;justify-content:space-between;padding:16px 16px 0;flex-shrink:0}.breakdown-sheet__title{font-size:20px;font-weight:700;color:#f8fafc;margin:0}.breakdown-sheet__scroll{flex:1;overflow-y:auto;padding:0 16px 80px}.breakdown-sheet__loading{display:flex;align-items:center;justify-content:center;padding:48px 0;color:#8e8e93}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.breakdown-sheet__spinner{animation:spin 1s linear infinite}.breakdown-sheet__empty{text-align:center;color:#8e8e93;font-size:15px;padding:48px 0}.breakdown-sheet__chart{padding:16px 0 8px}.breakdown-sheet__donut-wrap{position:relative}.breakdown-sheet__donut-center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;gap:2px}.breakdown-sheet__donut-total{font-size:20px;font-weight:700;color:#f8fafc}.breakdown-sheet__donut-label{font-size:12px;color:#8e8e93}.breakdown-sheet__legend{display:flex;flex-wrap:wrap;gap:8px;padding:8px 0 16px}.breakdown-sheet__legend-item{display:flex;align-items:center;gap:6px;background:#2c2c2e;border:none;border-radius:20px;padding:6px 12px;cursor:pointer;font:inherit;-webkit-tap-highlight-color:transparent;transition:opacity .15s}.breakdown-sheet__legend-item:active{opacity:.7}.breakdown-sheet__legend-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.breakdown-sheet__legend-name{font-size:13px;color:#f8fafc}.breakdown-sheet__legend-pct{font-size:13px;color:#8e8e93}.breakdown-sheet__categories{display:flex;flex-direction:column;gap:16px}.breakdown-cat{display:flex;flex-direction:column;gap:8px;border-radius:16px;padding:4px;transition:background .3s}.breakdown-cat--active{background:#2d7ff914}.breakdown-cat__header{display:flex;align-items:center;gap:12px;padding:4px 8px}.breakdown-cat__icon{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;background:#2d7ff9;flex-shrink:0}.breakdown-cat__name{flex:1;font-size:16px;font-weight:600;color:#f8fafc}.breakdown-cat__total{font-size:15px;font-weight:600}.breakdown-cat__total--income{color:#4ade80}.breakdown-cat__total--expense{color:#f8fafc}.breakdown-cat .transaction-item{margin-bottom:0}.breakdown-tx-item{display:flex;align-items:center;justify-content:space-between;padding:12px 12px 12px 16px;background:#1c1c1e;border-radius:14px;border:none;font:inherit;cursor:pointer;width:100%;-webkit-tap-highlight-color:transparent;transition:background .15s}.breakdown-tx-item:active{background:#2c2c2e}.breakdown-tx-item__left{display:flex;flex-direction:column;align-items:flex-start;gap:2px;flex:1;min-width:0}.breakdown-tx-item__date{font-size:15px;color:#f8fafc}.breakdown-tx-item__note{font-size:13px;color:#8e8e93;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.breakdown-tx-item__amount{font-size:15px;font-weight:600}.breakdown-tx-item__amount--income{color:#4ade80}.breakdown-tx-item__amount--expense{color:#f8fafc}.scroll-top-btn{position:fixed;bottom:96px;right:20px;width:44px;height:44px;border-radius:50%;background:#2d7ff9;color:#fff;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 16px #2d7ff966;-webkit-tap-highlight-color:transparent;animation:scroll-top-in .2s ease;z-index:10}.scroll-top-btn--hiding{animation:scroll-top-out .2s ease forwards}.scroll-top-btn:active{opacity:.8}@keyframes scroll-top-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes scroll-top-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(8px)}}.add{display:flex;flex-direction:column;height:100dvh;padding-bottom:100px;max-width:480px;margin:0 auto}.add__top{flex:1;overflow-y:auto;min-height:0;padding:16px 16px 0}.add__bottom{flex-shrink:0;padding:0 16px 12px}.add__toggle{display:flex;background:#1c1c1e;border-radius:12px;padding:4px;gap:4px;margin-bottom:20px}.add__toggle-btn{flex:1;padding:10px;border:none;border-radius:9px;font-size:15px;font-weight:600;cursor:pointer;background:transparent;color:#94a3b8;transition:background .15s,color .15s,box-shadow .15s;-webkit-tap-highlight-color:transparent}.add__toggle-btn--active{background:#2d7ff9;color:#fff;box-shadow:0 0 10px #2d7ff9}.add__categories{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding-bottom:12px}.category-item{display:flex;flex-direction:column;align-items:center;gap:6px;background:transparent;border:none;border-radius:16px;padding:10px 4px;cursor:pointer;-webkit-tap-highlight-color:transparent}.category-item__icon{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background .15s,transform .15s,box-shadow .15s}.category-item--selected .category-item__icon{transform:scale(1.15);box-shadow:0 0 0 1px #2d7ff926,0 0 16px 4px #2d7ff9b3}.category-item__title{font-size:11px;color:#94a3b8;text-align:center;line-height:1.3}.add__amount{font-size:48px;font-weight:700;color:#f8fafc;text-align:right;padding:12px 0 8px;letter-spacing:-1px}.add__meta{display:flex;gap:10px;margin-bottom:12px}.add__date-btn{background:#1c1c1e;border:none;border-radius:12px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;flex-shrink:0;cursor:pointer;-webkit-tap-highlight-color:transparent}.add__note{flex:1;background:#1c1c1e;border:none;border-radius:12px;padding:10px 14px;font-size:16px;color:#f8fafc;outline:none;min-width:0;font-family:inherit}.add__note::placeholder{color:#4b5563}.numpad{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}.numpad__key{background:#1c1c1e;border:none;border-radius:12px;height:52px;font-size:22px;font-weight:500;color:#f8fafc;cursor:pointer;display:flex;align-items:center;justify-content:center;-webkit-tap-highlight-color:transparent;transition:opacity .1s}.numpad__key:active{opacity:.6}.add__save{width:100%;height:52px;border:none;border-radius:14px;font-size:17px;font-weight:600;cursor:pointer;background:#1c1c1e;color:#4b5563;font-family:inherit;transition:background .35s,color .35s,box-shadow .35s;-webkit-tap-highlight-color:transparent;display:flex;align-items:center;justify-content:center;gap:6px}.add__save--active{background:#2d7ff9;color:#fff;box-shadow:0 0 10px #2d7ff9}.add__save--saved{background:#16a34a;color:#fff;box-shadow:0 0 10px #16a34a}.calendar{padding:20px 20px 40px}.calendar__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.calendar__nav{background:#2c2c2e;border:none;border-radius:8px;width:36px;height:36px;font-size:20px;color:#f8fafc;cursor:pointer;display:flex;align-items:center;justify-content:center;-webkit-tap-highlight-color:transparent}.calendar__month{font-size:16px;font-weight:600;color:#f8fafc;text-transform:capitalize}.calendar__weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:8px}.calendar__weekday{text-align:center;font-size:12px;color:#94a3b8;font-weight:500}.calendar__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.calendar__day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;border:none;border-radius:8px;font-size:14px;color:#f8fafc;background:transparent;cursor:pointer;font-family:inherit}.calendar__day:not(:disabled):not(.calendar__day--selected):hover{background:#2c2c2e}.calendar__day:disabled{cursor:default}.calendar__day--today{color:#2d7ff9;font-weight:600}.calendar__day--selected{background:#2d7ff9;color:#fff;font-weight:600}.settings{padding:20px 16px 100px;max-width:480px;margin:0 auto}.settings__title{font-size:28px;font-weight:700;color:#f8fafc;margin:0 0 20px}.settings__list{display:flex;flex-direction:column;gap:24px}.settings__section{display:flex;flex-direction:column;gap:12px}.settings__section-header{display:flex;align-items:center;gap:14px;padding:16px 16px 0}.settings__section-title{font-size:20px;font-weight:700;color:#f8fafc;margin-left:6px}.settings__group{background:#1c1c1e;border-radius:16px;overflow:hidden;box-shadow:0 1px 4px #0003;padding:0 0 8px}.settings__item{display:flex;align-items:center;gap:14px;background:none;border:none;padding:16px;width:100%;cursor:pointer;text-align:left;-webkit-tap-highlight-color:transparent;transition:background .1s ease}.settings__item:active{background:#ffffff0a}.settings__item-text{display:flex;flex-direction:column;gap:4px}.settings__item-label{font-size:1rem;font-weight:500;color:#dcdce0}.settings__item-description{font-size:.875rem;color:#94a3b8}.settings__item-icon{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-left:6px}.settings__item-icon--green{background:#2d7ff9}.settings__status{margin-top:16px;font-size:.875rem;color:#94a3b8}.import-dialog{border:none;padding:24px;margin:auto auto 0;max-width:none;max-height:none;width:100%;background:#1c1c1e;border-radius:20px 20px 0 0;box-sizing:border-box;position:fixed;bottom:0;left:0;right:0}.import-dialog__title{font-size:1rem;font-weight:700;color:#f8fafc;margin:0 0 8px;text-align:center}.import-dialog__body{font-size:.875rem;color:#94a3b8;text-align:center;margin:0 0 24px}.import-dialog__actions{display:flex;flex-direction:column;gap:10px}.import-dialog__btn{width:100%;height:52px;border:none;border-radius:14px;font-size:1rem;font-weight:600;cursor:pointer;font-family:inherit;-webkit-tap-highlight-color:transparent}.import-dialog__btn--danger{background:#ef4444;color:#fff}.import-dialog__btn--primary{background:#2d7ff9;color:#fff}.import-dialog__btn--cancel{background:#2c2c2e;color:#94a3b8}*{box-sizing:border-box;margin:0;padding:0;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;scrollbar-width:none;-ms-overflow-style:none}*::-webkit-scrollbar{display:none}input,textarea{user-select:text;-webkit-user-select:text}body{font-family:system-ui,-apple-system,sans-serif;background:#000;color:#f8fafc;overscroll-behavior:none}.app{display:flex;flex-direction:column;min-height:100dvh}main{flex:1;width:100%}main>*{animation:screen-fade-in .2s ease}@keyframes screen-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.update-banner{position:fixed;top:24px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:12px;background:#1a1a1a;color:#f8fafc;padding:12px 20px;border-radius:12px;box-shadow:0 4px 24px #0006;white-space:nowrap}.update-banner button{background:#2d7ff9;color:#fff;border:none;padding:6px 16px;border-radius:8px;cursor:pointer;font-size:.875rem;font-weight:500}
