:root{--blue: #007aff;--green: #34c759;--orange: #ff9500;--red: #ff3b30;--gray: #8e8e93;--bg: #f2f2f7;--bg-elevated: #ffffff;--bg-tertiary: #e5e5ea;--text: #000000;--text-secondary: #6c6c70;--text-tertiary: #ababaf;--separator: rgba(60, 60, 67, .29);--fill: rgba(120, 120, 128, .12);--shadow-sheet: 0 -8px 30px rgba(0, 0, 0, .12);--shadow-card: 0 1px 2px rgba(0, 0, 0, .06)}@media (prefers-color-scheme: dark){:root{--blue: #0a84ff;--green: #30d158;--orange: #ff9f0a;--red: #ff453a;--gray: #8e8e93;--bg: #000000;--bg-elevated: #1c1c1e;--bg-tertiary: #2c2c2e;--text: #ffffff;--text-secondary: #98989f;--text-tertiary: #6c6c70;--separator: rgba(84, 84, 88, .65);--fill: rgba(120, 120, 128, .24);--shadow-sheet: 0 -8px 30px rgba(0, 0, 0, .5);--shadow-card: 0 1px 2px rgba(0, 0, 0, .4)}}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text)}button{font-family:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;cursor:pointer;color:inherit}h1,h3,h4{margin:0;letter-spacing:-.02em}.app{min-height:100vh;padding:12px 16px calc(96px + env(safe-area-inset-bottom));background:var(--bg);color:var(--text)}.app__header{display:flex;justify-content:space-between;align-items:center;padding:8px 2px 16px}.app__header h1{font-size:30px;font-weight:700}.app__header-actions{display:flex;gap:8px}.icon-btn{position:relative;width:38px;height:38px;border-radius:50%;background:var(--fill);font-size:17px;display:flex;align-items:center;justify-content:center}.icon-btn:active{background:var(--bg-tertiary)}.icon-btn__badge{position:absolute;top:-2px;right:-2px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--red);color:#fff;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center}.fab{position:fixed;right:20px;bottom:calc(24px + env(safe-area-inset-bottom));width:56px;height:56px;border-radius:50%;background:var(--blue);color:#fff;font-size:28px;font-weight:300;line-height:1;box-shadow:0 4px 14px #007aff66;display:flex;align-items:center;justify-content:center;z-index:25;transition:transform .15s ease}.fab:active{transform:scale(.92)}.agenda__strip-nav{display:flex;align-items:center;gap:4px}.agenda__nav-btn{flex:0 0 auto;width:28px;height:28px;border-radius:50%;background:var(--fill);font-size:16px;display:flex;align-items:center;justify-content:center;color:var(--blue)}.agenda__strip{flex:1;display:flex;justify-content:space-between;gap:4px;overflow-x:auto;scrollbar-width:none}.agenda__strip::-webkit-scrollbar{display:none}.agenda__day-pill{flex:1;min-width:40px;display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 4px 10px;border-radius:14px;background:transparent;color:var(--text)}.agenda__day-label{font-size:11px;color:var(--text-secondary);font-weight:600;text-transform:uppercase}.agenda__day-num{font-size:17px;font-weight:600;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%}.agenda__day-pill--today .agenda__day-num{color:var(--blue)}.agenda__day-pill--active .agenda__day-num{background:var(--blue);color:#fff}.agenda__day-pill--active .agenda__day-label{color:var(--blue)}.agenda__day-dot{width:4px;height:4px;border-radius:2px;background:var(--orange);margin-top:-6px}.agenda__day-pill--active .agenda__day-dot{background:#fff}.agenda__date-heading{display:flex;align-items:baseline;gap:8px;font-size:20px;font-weight:700;padding:18px 2px 10px}.agenda__today-tag{font-size:12px;font-weight:600;color:var(--blue);background:#007aff1f;padding:2px 8px;border-radius:8px}.agenda__count-tag{font-size:12px;font-weight:500;color:var(--text-secondary);margin-left:auto}.agenda__loading,.agenda__empty{color:var(--text-secondary);text-align:center;padding:40px 16px;font-size:14px}.agenda__list{display:flex;flex-direction:column;gap:8px}.agenda-row{width:100%;display:flex;align-items:center;gap:12px;background:var(--bg-elevated);border-radius:14px;padding:12px 14px;box-shadow:var(--shadow-card);text-align:left;transition:transform .1s ease}.agenda-row:active{transform:scale(.98)}.agenda-row__position{flex:0 0 auto;width:22px;height:22px;border-radius:50%;background:var(--fill);color:var(--text-secondary);font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;font-variant-numeric:tabular-nums}.agenda-row__time{flex:0 0 auto;width:46px;display:flex;flex-direction:column;font-variant-numeric:tabular-nums}.agenda-row__time span:first-child{font-size:14px;font-weight:600}.agenda-row__time-end{font-size:11px;color:var(--text-tertiary)}.agenda-row__dot{flex:0 0 auto;width:8px;height:8px;border-radius:50%}.dot--blue{background:var(--blue)}.dot--gray{background:var(--gray)}.dot--orange{background:var(--orange)}.agenda-row__body{flex:1;min-width:0}.agenda-row__title{font-size:15px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;align-items:center;gap:6px}.agenda-row__title--muted{color:var(--text-secondary)}.agenda-row__badge-num{font-size:12px;font-weight:500;color:var(--text-secondary)}.agenda-row__meta{font-size:12px;color:var(--text-secondary);margin-top:2px}.agenda-row__chevron{color:var(--text-tertiary);font-size:18px;flex:0 0 auto}.agenda-row--static{opacity:.55;cursor:default}.agenda-row--static:active{transform:none}.modal-backdrop,.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:flex-end;justify-content:center;z-index:40;animation:fade-in .15s ease}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.modal{width:100%;max-width:480px;max-height:86vh;overflow-y:auto;background:var(--bg-elevated);color:var(--text);border-radius:20px 20px 0 0;padding:8px 18px calc(20px + env(safe-area-inset-bottom));box-shadow:var(--shadow-sheet);animation:slide-up .22s cubic-bezier(.32,.72,0,1)}.modal__handle{width:36px;height:5px;border-radius:3px;background:var(--separator);margin:6px auto 14px}.modal h3{font-size:19px;font-weight:700;margin-bottom:4px}.modal__title-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px}.modal__title-row h3{margin-bottom:0}.policy-notice{background:#ff95001f;border:1px solid rgba(255,149,0,.3);border-radius:12px;padding:10px 12px;margin:10px 0}.policy-notice p{color:var(--text);font-size:13px;line-height:1.4;margin:4px 0}.policy-notice strong{color:var(--orange)}.modal label{display:block;font-size:13px;font-weight:500;color:var(--text-secondary);margin:14px 0 6px}.modal input[type=text],.modal input[type=date],.modal input[type=time],.modal input[type=number],.modal select{width:100%;padding:11px 12px;font-size:16px;border:none;border-radius:10px;background:var(--fill);color:var(--text)}.modal input:focus,.modal select:focus{outline:2px solid var(--blue);outline-offset:1px}.modal label:has(input[type=checkbox]){display:flex;align-items:center;gap:8px;font-size:15px;color:var(--text);margin:14px 0}.modal input[type=checkbox]{width:20px;height:20px;accent-color:var(--blue)}.modal p{font-size:14px;color:var(--text-secondary);line-height:1.4}.modal__hint{font-size:12px}.modal__error{color:var(--red);font-size:13px}.modal__link-btn{background:none;color:var(--blue);font-size:15px;font-weight:500;padding:4px 0}.modal__actions{display:flex;flex-direction:column;gap:10px;margin-top:22px}.modal__actions button{width:100%;padding:14px;border-radius:12px;font-size:16px;font-weight:600;background:var(--fill);color:var(--blue)}.modal__actions button:first-of-type{background:var(--blue);color:#fff}.modal__actions button:active{opacity:.7}.modal__actions button.modal__danger{background:#ff3b301f;color:var(--red)}.modal__actions button:disabled{opacity:.4}.action-sheet{width:100%;max-width:480px;padding:0 8px calc(8px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:8px;animation:slide-up .22s cubic-bezier(.32,.72,0,1)}.action-sheet__group{background:var(--bg-elevated);border-radius:14px;overflow:hidden}.action-sheet__title{padding:12px 16px;font-size:12px;color:var(--text-secondary);text-align:center;border-bottom:1px solid var(--separator)}.action-sheet__option{width:100%;background:none;padding:16px;font-size:17px;color:var(--blue);border-bottom:1px solid var(--separator)}.action-sheet__option:last-child{border-bottom:none}.action-sheet__option:active{background:var(--fill)}.action-sheet__option--destructive{color:var(--red)}.action-sheet__cancel{background:var(--bg-elevated);border-radius:14px;padding:16px;font-size:17px;font-weight:600;color:var(--blue)}.action-sheet__cancel:active{background:var(--fill)}.clients-list{list-style:none;padding:0;margin:10px 0;max-height:340px;overflow-y:auto}.clients-list li{display:flex;justify-content:space-between;align-items:center;padding:13px 4px;border-bottom:1px solid var(--separator);cursor:pointer;font-size:16px}.clients-list li:active{background:var(--fill)}.clients-list__count{color:var(--text-secondary);font-size:14px}.pending-list{list-style:none;padding:0;margin:10px 0;max-height:360px;overflow-y:auto}.pending-list li{padding:12px 4px;border-bottom:1px solid var(--separator);display:flex;justify-content:space-between;align-items:center;gap:10px}.pending-list__from{font-size:12px;color:var(--text-tertiary);text-decoration:line-through}.pending-list__to{font-size:13px;color:var(--text);margin-top:2px}.pending-list__actions{display:flex;flex-direction:column;gap:6px;flex:0 0 auto}.pending-list__actions button{padding:8px 14px;border-radius:10px;font-size:13px;font-weight:600;background:var(--fill);color:var(--blue)}.pending-list__actions button.modal__danger{color:var(--red)}.client-card__history{list-style:none;padding:0;margin:10px 0;max-height:220px;overflow-y:auto;font-size:14px}.client-card__history li{padding:8px 4px;border-bottom:1px solid var(--separator);color:var(--text-secondary)}.client-card__count-edit{background:var(--fill);border-radius:12px;padding:10px 12px;margin:8px 0}.client-card__count-edit-actions{display:flex;gap:8px;margin-top:10px}.client-card__count-edit-actions button{flex:1;padding:10px;border-radius:10px;font-size:14px;font-weight:600;background:var(--blue);color:#fff}.client-card__count-edit-actions button:last-child{background:var(--bg-elevated);color:var(--text)}
