@charset "UTF-8";.header{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:linear-gradient(135deg,#0f172a,#1e293b);color:#f8fafc;padding:1.25rem 1.5rem;box-shadow:0 4px 20px #0f172a40}.header__logout{flex-shrink:0;padding:.4rem .85rem;font-size:.875rem;border-radius:8px;border:1px solid rgba(248,250,252,.25);background:#ffffff0f;color:#f8fafc;cursor:pointer}.header__logout:hover{background:#ffffff1f}.header__title{margin:0;font-size:1.35rem;font-weight:700;letter-spacing:.02em}.home-page{padding:1rem 1.5rem;max-width:90vw;margin:0 auto;width:100%}.home-page--choice{flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.home-page__heading{margin:0 0 2rem;font-size:1.5rem;font-weight:700;color:#0f172a;letter-spacing:.02em}.home-page__tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;width:100%;max-width:640px}.home-page__tile{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:.5rem;min-height:140px;padding:1.75rem 1.5rem;background:linear-gradient(145deg,#fff,#f8fafc);border:1px solid rgba(148,163,184,.35);border-radius:16px;text-align:left;text-decoration:none;font:inherit;color:#0f172a;box-shadow:0 4px 20px #0f172a14,0 1px 3px #0000000a;transition:transform .2s ease,box-shadow .25s ease,border-color .2s ease;position:relative;overflow:hidden}.home-page__tile:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,#6366f1,#4f46e5);opacity:0;transition:opacity .2s ease}.home-page__tile--crm:hover,.home-page__tile--stats:hover,.home-page__tile--ai:hover{border-color:#6366f166;box-shadow:0 12px 40px #6366f126,0 4px 20px #0f172a1a;transform:translateY(-4px)}.home-page__tile--crm:hover:before,.home-page__tile--stats:hover:before,.home-page__tile--ai:hover:before{opacity:1}.home-page__tile--crm:active,.home-page__tile--stats:active,.home-page__tile--ai:active{transform:translateY(-1px)}.home-page__tile-title{font-weight:700;font-size:1.2rem;line-height:1.35;color:#0f172a;letter-spacing:.01em}.home-page__tile-note{font-size:.9rem;color:#64748b;font-weight:500}.back-button{display:inline-flex;align-items:center;gap:.6rem;padding:.75rem 1.4rem;margin-bottom:1.5rem;background:linear-gradient(135deg,#334155,#1e293b);border:none;border-radius:12px;cursor:pointer;font:inherit;font-size:1rem;font-weight:600;color:#f8fafc;box-shadow:0 4px 14px #0f172a59;transition:transform .15s ease,box-shadow .2s ease,background .2s ease}.back-button:before{content:"←";font-size:1.2rem;font-weight:700;color:#f8fafc}.back-button:hover{background:linear-gradient(135deg,#1e293b,#0f172a);box-shadow:0 6px 20px #0f172a66;transform:translate(-2px)}.back-button:active{transform:translate(0)}.category-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.5rem;padding:.5rem 0}.category-tiles__tile{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:.5rem;min-height:130px;padding:1.75rem 1.5rem;background:linear-gradient(145deg,#fff,#f8fafc);border:1px solid rgba(148,163,184,.35);border-radius:16px;cursor:pointer;text-align:left;font:inherit;color:#0f172a;box-shadow:0 4px 20px #0f172a14,0 1px 3px #0000000a;transition:transform .2s ease,box-shadow .25s ease,border-color .2s ease;position:relative;overflow:hidden}.category-tiles__tile:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,#6366f1,#4f46e5);opacity:0;transition:opacity .2s ease}.category-tiles__tile:hover{border-color:#6366f166;box-shadow:0 12px 40px #6366f126,0 4px 20px #0f172a1a;transform:translateY(-4px)}.category-tiles__tile:hover:before{opacity:1}.category-tiles__tile:active{transform:translateY(-1px)}.category-tiles__title{font-weight:700;font-size:1.2rem;line-height:1.35;color:#0f172a;letter-spacing:.01em}.category-tiles__count{font-size:.9rem;color:#64748b;font-weight:600}.table-list{padding:.5rem 0}.table-list__heading{margin:0 0 1.5rem;font-size:1.5rem;font-weight:700;color:#0f172a;letter-spacing:.02em}.table-list__items{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1rem}.table-list__item{display:block;width:100%;padding:1.35rem 1.5rem;text-align:left;background:linear-gradient(145deg,#fff,#f8fafc);border:1px solid rgba(148,163,184,.35);border-radius:16px;cursor:pointer;font:inherit;font-size:1.1rem;font-weight:600;color:#334155;box-shadow:0 4px 20px #0f172a14,0 1px 3px #0000000a;transition:transform .2s ease,box-shadow .25s ease,border-color .2s ease;position:relative;overflow:hidden}.table-list__item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,#6366f1,#4f46e5);opacity:0;transition:opacity .2s ease}.table-list__item:hover{border-color:#6366f166;background:linear-gradient(145deg,#fff,#f1f5f9);box-shadow:0 12px 40px #6366f11f,0 4px 20px #0f172a14;transform:translateY(-3px)}.table-list__item:hover:before{opacity:1}.table-list__item:active{transform:translateY(0)}.edit-row-modal--overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.edit-row-modal__box{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0003;max-width:480px;width:100%;max-height:90vh;overflow:auto}.edit-row-modal__title{margin:0;padding:1.25rem 1.5rem .75rem;font-size:1.2rem;font-weight:600;color:#111827}.edit-row-modal__form{padding:0 1.5rem 1.5rem}.edit-row-modal__field{display:flex;flex-direction:column;gap:.35rem;margin-bottom:1rem}.edit-row-modal__label{font-size:.85rem;font-weight:500;color:#374151}.edit-row-modal__field input{padding:.5rem .75rem;border:1px solid #e5e7eb;border-radius:8px;font:inherit;font-size:.95rem}.edit-row-modal__field input:disabled,.edit-row-modal__field input:read-only{background:#f3f4f6;color:#6b7280;cursor:not-allowed}.edit-row-modal__error{margin:0 0 1rem;color:#dc2626;font-size:.9rem}.edit-row-modal__actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.25rem}.edit-row-modal__btn{padding:.5rem 1.25rem;border-radius:8px;font:inherit;font-weight:500;cursor:pointer;transition:background .15s,border-color .15s}.edit-row-modal__btn--cancel{background:#fff;border:1px solid #e5e7eb;color:#374151}.edit-row-modal__btn--cancel:hover{background:#f9fafb}.edit-row-modal__btn--save{background:#1a1a2e;border:1px solid #1a1a2e;color:#fff}.edit-row-modal__btn--save:hover:not(:disabled){background:#2d2d44}.edit-row-modal__btn--save:disabled{opacity:.6;cursor:not-allowed}.data-table{padding:.5rem 0;height:100%;display:flex;flex-direction:column;min-height:0}.data-table--loading{justify-content:center;align-items:center;color:#64748b;font-weight:600}.data-table__heading{margin:0 0 1.25rem;font-size:1.5rem;font-weight:700;color:#0f172a;letter-spacing:.02em;flex-shrink:0}.data-table__toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1rem;flex-shrink:0}.data-table__search-wrap{display:flex;align-items:center;gap:.5rem;flex:1;min-width:200px;position:relative}.data-table__search-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:#64748b;pointer-events:none;display:flex;align-items:center;justify-content:center}.data-table__search{width:100%;padding:.7rem 1rem .7rem 2.75rem;border:1px solid rgba(148,163,184,.5);border-radius:12px;background:linear-gradient(145deg,#fff,#f8fafc);font:inherit;font-size:.95rem;color:#0f172a;box-shadow:0 2px 8px #0f172a0f;transition:border-color .2s ease,box-shadow .2s ease}.data-table__search::placeholder{color:#94a3b8}.data-table__search:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f133}.data-table__search-btn{flex-shrink:0;padding:.5rem 1rem;border:1px solid rgba(148,163,184,.5);border-radius:10px;background:linear-gradient(145deg,#6366f1,#4f46e5);color:#fff;font:inherit;font-size:.9rem;font-weight:600;cursor:pointer;transition:opacity .15s}.data-table__search-btn:hover{opacity:.95}.data-table__clear-btn{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;padding:0;border:none;border-radius:10px;background:#dc2626;color:#fff;cursor:pointer;transition:background .15s,opacity .15s}.data-table__clear-btn:hover{background:#b91c1c;opacity:.95}.data-table__sort{display:flex;align-items:center;gap:.5rem}.data-table__sort-label{font-size:.9rem;font-weight:600;color:#64748b}.data-table__sort-btn{padding:.5rem .75rem;border:1px solid rgba(148,163,184,.5);border-radius:10px;background:linear-gradient(145deg,#fff,#f8fafc);font:inherit;font-size:1rem;font-weight:600;color:#475569;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.data-table__sort-btn:hover{border-color:#6366f1;color:#6366f1;background:#fff}.data-table__sort-btn--active{background:linear-gradient(135deg,#6366f1,#4f46e5);border-color:#4f46e5;color:#fff}.data-table__refresh-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;margin-left:auto;padding:0;border:1px solid rgba(148,163,184,.5);border-radius:10px;background:linear-gradient(145deg,#fff,#f8fafc);color:#475569;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.data-table__refresh-btn:hover{border-color:#6366f1;color:#6366f1;background:#fff}.data-table__scroll{flex:1;min-height:0;overflow:auto;border:1px solid rgba(148,163,184,.35);border-radius:16px;background:linear-gradient(145deg,#fff,#f8fafc);box-shadow:0 4px 20px #0f172a14,0 1px 3px #0000000a}.data-table__table{width:100%;border-collapse:collapse;font-size:.9rem}.data-table__table th,.data-table__table td{padding:.7rem 1rem;text-align:left;border-bottom:1px solid #e2e8f0;vertical-align:top}.data-table__table th{background:linear-gradient(180deg,#f1f5f9,#e2e8f0);font-weight:700;color:#334155;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;position:sticky;top:0;z-index:1;white-space:nowrap}.data-table__table tbody tr{transition:background .1s ease}.data-table__table tbody tr:hover td{background:#f8fafc}.data-table__table tbody tr:last-child td{border-bottom:none}.data-table__table td{color:#1e293b;word-break:break-word;max-width:280px}.data-table__no-match{text-align:center;padding:2rem;color:#64748b;font-weight:600}.data-table__empty{margin:1rem 0;color:#64748b;font-weight:600}.data-table__no-results{margin-top:1rem;padding:2rem;text-align:center;background:#f8fafc;border-radius:12px;border:1px solid #e2e8f0}.data-table__no-results-text{margin:0 0 1rem;color:#475569;font-weight:600;font-size:1rem}.data-table__back-to-table-btn{padding:.55rem 1.25rem;border-radius:10px;border:1px solid #6366f1;background:#6366f1;color:#fff;font:inherit;font-size:.95rem;font-weight:600;cursor:pointer;transition:opacity .2s}.data-table__back-to-table-btn:hover{opacity:.95}.data-table__th-actions{width:56px;text-align:center}.data-table__td-actions{text-align:center;vertical-align:middle;white-space:nowrap}.data-table__stats-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;margin-right:.25rem;border:none;border-radius:10px;background:transparent;color:#475569;cursor:pointer;transition:background .15s,color .15s}.data-table__stats-btn:hover{background:#10b98126;color:#0d9488}.data-table__chat-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;margin-right:.25rem;border:none;border-radius:10px;background:transparent;color:#475569;cursor:pointer;transition:background .15s,color .15s}.data-table__chat-btn:hover{background:#6366f126;color:#6366f1}.data-table__edit-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:none;border-radius:10px;background:transparent;color:#475569;cursor:pointer;transition:background .15s,color .15s}.data-table__edit-btn:hover{background:#6366f126;color:#6366f1}.data-table__pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin-top:1rem;padding:.75rem 0;border-top:1px solid #e2e8f0;flex-shrink:0}.data-table__pagination-label{font-size:.9rem;color:#64748b;font-weight:600}.data-table__pagination-btns{display:flex;gap:.5rem}.data-table__pagination-btn{padding:.5rem 1rem;border:1px solid rgba(148,163,184,.5);border-radius:10px;background:linear-gradient(145deg,#fff,#f8fafc);font:inherit;font-size:.9rem;font-weight:600;color:#475569;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.data-table__pagination-btn:hover:not(:disabled){border-color:#6366f1;color:#6366f1;background:#fff}.data-table__pagination-btn:disabled{opacity:.5;cursor:not-allowed}.user-chat{display:flex;flex-direction:column;height:100%;min-height:0;background:linear-gradient(145deg,#fff,#f8fafc);border-radius:16px;border:1px solid rgba(148,163,184,.35);box-shadow:0 4px 20px #0f172a14}.user-chat__header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid #e2e8f0;flex-shrink:0}.user-chat__title{margin:0;font-size:1.25rem;font-weight:700;color:#0f172a}.user-chat__close{width:36px;height:36px;padding:0;border:none;border-radius:10px;background:transparent;color:#64748b;font-size:1.25rem;cursor:pointer;transition:background .15s,color .15s}.user-chat__close:hover{background:#ef44441a;color:#dc2626}.user-chat__toolbar{display:flex;gap:.75rem;padding:.75rem 1.25rem;border-bottom:1px solid #e2e8f0;flex-shrink:0}.user-chat__search{flex:1;min-width:0;padding:.5rem 1rem;border:1px solid rgba(148,163,184,.5);border-radius:10px;font:inherit;font-size:.95rem;color:#0f172a;background:#fff}.user-chat__search:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 2px #6366f133}.user-chat__clear-btn{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;padding:0;border:none;border-radius:10px;background:#dc2626;color:#fff;cursor:pointer;transition:background .15s,opacity .15s}.user-chat__clear-btn:hover{background:#b91c1c;opacity:.95}.user-chat__export{padding:.5rem 1rem;border:1px solid rgba(148,163,184,.5);border-radius:10px;background:linear-gradient(145deg,#fff,#f8fafc);font:inherit;font-size:.9rem;font-weight:600;color:#475569;cursor:pointer;transition:border-color .15s,color .15s}.user-chat__export:hover{border-color:#6366f1;color:#6366f1}.user-chat__list{flex:1;min-height:0;overflow:auto;padding:1rem 1.25rem;display:flex;flex-direction:column;gap:.75rem}.user-chat__loading,.user-chat__empty{margin:auto;color:#64748b;font-weight:600}.user-chat__bubble{max-width:85%;display:flex}.user-chat__bubble--user{align-self:flex-end;margin-left:auto}.user-chat__bubble--bot{align-self:flex-start;margin-right:auto}.user-chat__message{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem .5rem;padding:.6rem 1rem;border-radius:12px;font-size:.95rem;line-height:1.4;width:100%}.user-chat__message--user{background:#6366f11f;border:1px solid rgba(99,102,241,.25);border-right:3px solid #6366f1}.user-chat__message--bot{background:#94a3b81f;border:1px solid rgba(148,163,184,.25);border-left:3px solid #64748b}.user-chat__message-author{font-weight:700;color:#475569;flex-shrink:0;width:100%}.user-chat__message-body{flex:1;min-width:0;word-break:break-word;color:#1e293b}.user-chat__message-body b{font-weight:700}.user-chat__message-body i{font-style:italic}.user-chat__message-body a{color:#6366f1;text-decoration:underline}.user-chat__message-body a:hover{color:#4f46e5}.user-chat__message-body br{display:block;margin-top:.25em}.user-chat__message-time{font-size:.75rem;color:#94a3b8;flex-shrink:0;margin-left:auto}.date-picker__trigger{min-width:140px;cursor:pointer;text-align:left;box-sizing:border-box}.date-picker__popover{position:fixed;z-index:10000;background:#fff;border-radius:12px;box-shadow:0 10px 40px #00000026,0 2px 10px #00000014;border:1px solid #e2e8f0;padding:.75rem;font-size:.9rem}.date-picker__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem;gap:.5rem}.date-picker__nav{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;border-radius:8px;background:#f1f5f9;color:#475569;font:inherit;font-size:1.25rem;cursor:pointer;transition:background .2s,color .2s}.date-picker__nav:hover:not(:disabled){background:#e2e8f0;color:#0f172a}.date-picker__nav:disabled{opacity:.4;cursor:not-allowed}.date-picker__month{font-weight:700;color:#0f172a}.date-picker__weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:4px}.date-picker__weekday{text-align:center;font-size:.75rem;font-weight:600;color:#64748b}.date-picker__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.date-picker__day{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:none;border-radius:8px;background:transparent;font:inherit;font-size:.85rem;color:#0f172a;cursor:pointer;transition:background .2s,color .2s}.date-picker__day:hover:not(:disabled):not(.date-picker__day--selected){background:#f1f5f9}.date-picker__day--other{color:#94a3b8}.date-picker__day--disabled{color:#cbd5e1;cursor:not-allowed}.date-picker__day--selected{background:#6366f1;color:#fff;font-weight:600}.user-stats-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1.5rem;box-sizing:border-box}.user-stats-modal__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0f172a66;cursor:pointer}.user-stats-modal__box{position:relative;width:100%;max-width:90vw;max-height:90vh;background:linear-gradient(145deg,#fff,#f8fafc);border-radius:16px;box-shadow:0 20px 60px #0003,0 4px 20px #0f172a14;border:1px solid rgba(148,163,184,.3);display:flex;flex-direction:column;overflow:hidden}.user-stats-modal__header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:2px solid #6366f1;background:linear-gradient(135deg,#6366f114,#8b5cf60f);flex-shrink:0}.user-stats-modal__title{margin:0;font-size:1.35rem;font-weight:700;color:#0f172a}.user-stats-modal__close{width:40px;height:40px;padding:0;border:none;border-radius:10px;background:transparent;color:#64748b;font-size:1.75rem;line-height:1;cursor:pointer;transition:background .15s,color .15s}.user-stats-modal__close:hover{background:#ef44441a;color:#dc2626}.user-stats-modal__body{flex:1;overflow-y:auto;padding:1.25rem 1.5rem}.user-stats-modal__loading{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:3rem}.user-stats-modal__loader-dot{width:10px;height:10px;border-radius:50%;background:#6366f1;animation:user-stats-modal-bounce .6s ease-in-out infinite both}.user-stats-modal__loader-dot:nth-child(2){animation-delay:.1s}.user-stats-modal__loader-dot:nth-child(3){animation-delay:.2s}@keyframes user-stats-modal-bounce{0%,80%,to{transform:scale(.8);opacity:.6}40%{transform:scale(1.2);opacity:1}}.user-stats-modal__error{margin:0;padding:1.5rem;color:#dc2626;font-weight:600}.user-stats-modal__section{margin-bottom:1.75rem}.user-stats-modal__section:last-child{margin-bottom:0}.user-stats-modal__section-title{margin:0 0 .75rem;font-size:1.05rem;font-weight:700;color:#4338ca;padding-bottom:.35rem;border-bottom:1px solid #c7d2fe}.user-stats-modal__dl{margin:0;display:flex;flex-direction:column;gap:.5rem}.user-stats-modal__row{display:flex;justify-content:space-between;align-items:baseline;gap:1rem}.user-stats-modal__row dt{margin:0;font-size:.95rem;color:#475569;font-weight:500}.user-stats-modal__row dd{margin:0;font-size:.95rem;font-weight:600;color:#0f172a}.user-stats-modal__list{margin:0;padding-left:1.25rem;list-style:disc}.user-stats-modal__list--stats{list-style:none;padding-left:0}.user-stats-modal__list--stats li{margin-bottom:.35rem}.user-stats-modal__list--cards{list-style:none;padding-left:0;display:grid;gap:.5rem}.user-stats-modal__card{padding:.6rem .9rem;background:#f1f5f9;border-radius:10px;border-left:4px solid #6366f1;display:flex;flex-direction:column;gap:.2rem}.user-stats-modal__card-name{font-weight:600;color:#0f172a}.user-stats-modal__card-meta{font-size:.85rem;color:#64748b}.user-stats-modal__empty{margin:0;font-size:.95rem;color:#94a3b8;font-style:italic}.user-stats-modal__section--period{padding-bottom:.5rem}.user-stats-modal__period-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}@media (max-width: 900px){.user-stats-modal__period-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 500px){.user-stats-modal__period-cards{grid-template-columns:1fr}}.user-stats-modal__period-card{display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:1rem;border-radius:12px;border:1px solid #c7d2fe;background:#f8fafc;color:#4338ca;font-size:.9rem;text-align:left}.user-stats-modal__period-card-label{font-weight:700;font-size:1rem;color:#0f172a;margin-bottom:.5rem;padding-bottom:.35rem;border-bottom:1px solid #c7d2fe;width:100%}.user-stats-modal__period-card-meta{font-size:.8rem;color:#64748b;font-weight:500}.user-stats-modal__period-card-stats{margin:0;padding:0;list-style:none;font-size:.8rem;color:#475569;line-height:1.45;width:100%}.user-stats-modal__period-card-stats li{margin-bottom:.3rem;padding-left:0}.user-stats-modal__period-card-stats li:last-child{margin-bottom:0}.user-stats-modal__period-card-stats strong{color:#0f172a;font-weight:600}.user-stats-modal__loading--inline{padding:1rem 0}.user-stats-modal__custom-result{margin-top:1rem;padding-top:1rem;border-top:1px solid #e2e8f0}.user-stats-modal__period-btns{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.user-stats-modal__period-btn{padding:.45rem .85rem;border-radius:8px;border:1px solid #c7d2fe;background:#f8fafc;color:#4338ca;font-weight:600;font-size:.9rem;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.user-stats-modal__period-btn:hover{background:#eef2ff;border-color:#6366f1}.user-stats-modal__period-btn--active{background:#6366f1;border-color:#6366f1;color:#fff}.user-stats-modal__period-btn--active:hover{background:#4f46e5;border-color:#4f46e5;color:#fff}.user-stats-modal__custom-hint{margin:0 0 1rem;font-size:.9rem;color:#64748b}.user-stats-modal__custom-form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:1rem;margin-bottom:.75rem}.user-stats-modal__custom-label{display:flex;flex-direction:column;gap:.35rem;font-size:.9rem;font-weight:600;color:#4338ca}.user-stats-modal__custom-label span{font-size:.85rem;color:#475569}.user-stats-modal__custom-input{padding:.5rem .75rem;border:1px solid rgba(99,102,241,.4);border-radius:10px;font:inherit;font-size:.95rem;color:#0f172a;background:#fff;min-width:140px}.user-stats-modal__custom-input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 2px #6366f133}.user-stats-modal__group-by{margin-top:.75rem;margin-bottom:.5rem}.user-stats-modal__group-by-label{display:block;font-size:.9rem;color:#475569;font-weight:600;margin-bottom:.5rem}.user-stats-modal__group-by-btns{display:flex;flex-wrap:wrap;gap:.5rem}.user-stats-modal__group-by-btn{padding:.4rem .8rem;border-radius:8px;border:1px solid #c7d2fe;background:#f8fafc;color:#4338ca;font-weight:600;font-size:.85rem;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.user-stats-modal__group-by-btn:hover{background:#eef2ff;border-color:#6366f1}.user-stats-modal__group-by-btn--active{background:#6366f1;border-color:#6366f1;color:#fff}.user-stats-modal__group-by-btn--active:hover{background:#4f46e5;border-color:#4f46e5;color:#fff}.user-stats-modal__apply-btn{padding:.55rem 1.25rem;border-radius:10px;border:1px solid rgba(99,102,241,.5);background:linear-gradient(145deg,#6366f1,#4f46e5);color:#fff;font:inherit;font-size:.95rem;font-weight:600;cursor:pointer;transition:opacity .2s}.user-stats-modal__apply-btn:hover:not(:disabled){opacity:.95}.user-stats-modal__apply-btn:disabled{opacity:.6;cursor:not-allowed}.user-stats-modal__period-hint{margin:0;font-size:.85rem;color:#64748b}.user-stats-modal__section--summary .user-stats-modal__list--stats li{margin-bottom:.4rem}.user-stats-modal__section--chart .user-stats-modal__chart-wrap{min-height:360px;background:#f8fafc;border-radius:12px;padding:.75rem;border:1px solid #e2e8f0}.user-stats-modal__chart-tooltip{padding:.25rem 0}.user-stats-modal__chart-tooltip-date{font-weight:700;margin-bottom:.35rem;color:#0f172a;font-size:.9rem}.user-stats-modal__chart-tooltip-list{margin:0;padding-left:1rem;list-style:none}.user-stats-modal__chart-tooltip-item{display:flex;align-items:center;gap:.4rem;font-size:.85rem;margin-bottom:.2rem}.user-stats-modal__chart-tooltip-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.user-stats-modal__chart-tooltip-label{color:#475569}.user-stats-modal__chart-tooltip-value{font-weight:600;color:#0f172a}.crm-page{padding:1rem 1.5rem;max-width:90vw;margin:0 auto;width:100%}.crm-page--single-screen{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column}.crm-page__loading,.crm-page__error{margin:1rem 0;font-weight:600;color:#64748b}.crm-page__error{color:#dc2626}.stats-card{padding:1.25rem 1.5rem;background:linear-gradient(145deg,#fff,#f8fafc);border:1px solid rgba(148,163,184,.35);border-radius:16px;box-shadow:0 4px 20px #0f172a14,0 1px 3px #0000000a;position:relative;overflow:hidden}.stats-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;opacity:.9}.stats-card--messages:before{background:linear-gradient(180deg,#6366f1,#4f46e5)}.stats-card--users:before{background:linear-gradient(180deg,#0d9488,#0f766e)}.stats-card--users .stats-card__loader-dot{background:#0d9488}.stats-card--reservations:before{background:linear-gradient(180deg,#d97706,#b45309)}.stats-card--reservations .stats-card__loader-dot{background:#d97706}.stats-card--attendance:before{background:linear-gradient(180deg,#7c3aed,#5b21b6)}.stats-card--attendance .stats-card__loader-dot{background:#7c3aed}.stats-card__title{margin:0 0 .35rem;font-size:1.1rem;font-weight:700;color:#0f172a}.stats-card__dates{margin:0 0 1rem;font-size:.85rem;color:#64748b;font-weight:500}.stats-card__metrics{margin:0;display:flex;flex-direction:column;gap:.6rem}.stats-card__metric{display:flex;justify-content:space-between;align-items:baseline;gap:.75rem}.stats-card__metric dt{margin:0;font-size:.9rem;color:#475569;font-weight:500;flex:1}.stats-card__metric dd{margin:0;font-size:1.1rem;font-weight:700;color:#0f172a}.stats-card__loader{display:flex;align-items:center;justify-content:center;gap:.4rem;padding:1rem 0}.stats-card__loader-dot{width:8px;height:8px;border-radius:50%;background:#6366f1;animation:stats-card-bounce .6s ease-in-out infinite both}.stats-card__loader-dot:nth-child(2){animation-delay:.1s}.stats-card__loader-dot:nth-child(3){animation-delay:.2s}@keyframes stats-card-bounce{0%,80%,to{transform:scale(.8);opacity:.6}40%{transform:scale(1.2);opacity:1}}.stats-card__error{margin:0;font-size:.9rem;color:#dc2626;font-weight:600}.messages-chart{padding:1rem 0;background:linear-gradient(145deg,#fff,#f8fafc);border:1px solid rgba(148,163,184,.35);border-radius:16px;box-shadow:0 4px 20px #0f172a14;overflow:hidden}.messages-chart--empty{display:flex;align-items:center;justify-content:center;min-height:200px}.messages-chart--empty p{margin:0;color:#64748b;font-weight:500}.messages-chart__title{margin:0 0 0 1rem;font-size:1rem;font-weight:700;color:#334155}.messages-chart-tooltip{padding:.25rem 0;min-width:140px;background:#fff}.messages-chart-tooltip__date{font-weight:700;font-size:.9rem;color:#0f172a;margin-bottom:.5rem;padding-bottom:.35rem;border-bottom:1px solid #e2e8f0}.messages-chart-tooltip__list{margin:0;padding:0;list-style:none}.messages-chart-tooltip__item{display:flex;align-items:center;gap:.5rem;font-size:.85rem;margin-top:.25rem}.messages-chart-tooltip__dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.messages-chart-tooltip__label{color:#475569}.messages-chart-tooltip__value{font-weight:700;color:#0f172a;margin-left:auto}.messages-stats-view{width:100%}.messages-stats-view__section{margin-bottom:2rem}.messages-stats-view__section:last-child{margin-bottom:0}.messages-stats-view__section-title{margin:0 0 1rem;font-size:1.15rem;font-weight:700;color:#334155}.messages-stats-view__section--default .messages-stats-view__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}@media (max-width: 640px){.messages-stats-view__section--default .messages-stats-view__grid{grid-template-columns:1fr}}.messages-stats-view__section--custom{padding-top:1.5rem;border-top:1px solid #e2e8f0}.messages-stats-view__hint{margin:0 0 1rem;font-size:.9rem;color:#64748b}.messages-stats-view__form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:1rem;margin-bottom:1rem}.messages-stats-view__label{display:flex;flex-direction:column;gap:.35rem;font-size:.9rem;font-weight:600;color:#475569}.messages-stats-view__label span{font-size:.85rem}.messages-stats-view__input{padding:.5rem .75rem;border:1px solid rgba(148,163,184,.5);border-radius:10px;font:inherit;font-size:.95rem;color:#0f172a;background:#fff;min-width:140px}.messages-stats-view__input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 2px #6366f133}.messages-stats-view__find-btn{padding:.55rem 1.25rem;border:1px solid rgba(99,102,241,.5);border-radius:10px;background:linear-gradient(145deg,#6366f1,#4f46e5);color:#fff;font:inherit;font-size:.95rem;font-weight:600;cursor:pointer;transition:opacity .2s}.messages-stats-view__find-btn:hover:not(:disabled){opacity:.95}.messages-stats-view__find-btn:disabled{opacity:.6;cursor:not-allowed}.messages-stats-view__group-by{margin-bottom:1rem}.messages-stats-view__group-by-label{display:block;font-size:.9rem;font-weight:600;color:#475569;margin-bottom:.5rem}.messages-stats-view__group-by-btns{display:flex;flex-wrap:wrap;gap:.5rem}.messages-stats-view__group-by-btn{padding:.45rem .9rem;border:1px solid rgba(148,163,184,.5);border-radius:10px;background:#fff;font:inherit;font-size:.9rem;font-weight:500;color:#475569;cursor:pointer;transition:border-color .2s,background .2s,color .2s}.messages-stats-view__group-by-btn:hover{border-color:#6366f1;color:#6366f1}.messages-stats-view__group-by-btn--active{background:linear-gradient(145deg,#6366f1,#4f46e5);border-color:#4f46e5;color:#fff}.messages-stats-view__group-by-btn--active:hover{color:#fff;opacity:.95}.messages-stats-view__custom-result{width:100%;max-width:100%}.messages-stats-view__custom-row{display:flex;flex-direction:row;gap:1.5rem;align-items:flex-start;width:100%}@media (max-width: 768px){.messages-stats-view__custom-row{flex-direction:column}}.messages-stats-view__custom-summary{flex-shrink:0;max-width:420px}.messages-stats-view__custom-chart{flex:1;min-width:0}.messages-stats-view__loader{display:flex;align-items:center;justify-content:flex-start;gap:.4rem;padding:1rem 0}.messages-stats-view__loader-dot{width:8px;height:8px;border-radius:50%;background:#6366f1;animation:messages-stats-view-bounce .6s ease-in-out infinite both}.messages-stats-view__loader-dot:nth-child(2){animation-delay:.1s}.messages-stats-view__loader-dot:nth-child(3){animation-delay:.2s}@keyframes messages-stats-view-bounce{0%,80%,to{transform:scale(.8);opacity:.6}40%{transform:scale(1.2);opacity:1}}.users-chart{padding:1rem 0;background:linear-gradient(145deg,#fff,#f8fafc);border:1px solid rgba(148,163,184,.35);border-radius:16px;box-shadow:0 4px 20px #0f172a14;margin-top:1rem;overflow:hidden}.users-chart--empty{display:flex;align-items:center;justify-content:center;min-height:200px}.users-chart--empty p{margin:0;color:#64748b;font-weight:500}.users-chart__title{margin:0 0 0 1rem;font-size:1rem;font-weight:700;color:#334155}.users-chart-tooltip{padding:.25rem 0;min-width:140px;background:#fff}.users-chart-tooltip__date{font-weight:700;font-size:.9rem;color:#0f172a;margin-bottom:.5rem;padding-bottom:.35rem;border-bottom:1px solid #e2e8f0}.users-chart-tooltip__list{margin:0;padding:0;list-style:none}.users-chart-tooltip__item{display:flex;align-items:center;gap:.5rem;font-size:.85rem;margin-top:.25rem}.users-chart-tooltip__dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.users-chart-tooltip__label{color:#475569}.users-chart-tooltip__value{font-weight:700;color:#0f172a;margin-left:auto}.users-stats-view{width:100%}.users-stats-view__section{margin-bottom:2rem}.users-stats-view__section:last-child{margin-bottom:0}.users-stats-view__section-title{margin:0 0 1rem;font-size:1.15rem;font-weight:700;color:#134e4a}.users-stats-view__section--default .users-stats-view__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}@media (max-width: 640px){.users-stats-view__section--default .users-stats-view__grid{grid-template-columns:1fr}}.users-stats-view__section--custom{padding-top:1.5rem;border-top:1px solid #99f6e4}.users-stats-view__hint{margin:0 0 1rem;font-size:.9rem;color:#0f766e}.users-stats-view__form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:1rem;margin-bottom:1rem}.users-stats-view__label{display:flex;flex-direction:column;gap:.35rem;font-size:.9rem;font-weight:600;color:#115e59}.users-stats-view__label span{font-size:.85rem}.users-stats-view__input{padding:.5rem .75rem;border:1px solid rgba(13,148,136,.4);border-radius:10px;font:inherit;font-size:.95rem;color:#0f172a;background:#fff;min-width:140px}.users-stats-view__input:focus{outline:none;border-color:#0d9488;box-shadow:0 0 0 2px #0d948833}.users-stats-view__find-btn{padding:.55rem 1.25rem;border:1px solid rgba(13,148,136,.5);border-radius:10px;background:linear-gradient(145deg,#0d9488,#0f766e);color:#fff;font:inherit;font-size:.95rem;font-weight:600;cursor:pointer;transition:opacity .2s}.users-stats-view__find-btn:hover:not(:disabled){opacity:.95}.users-stats-view__find-btn:disabled{opacity:.6;cursor:not-allowed}.users-stats-view__group-by{margin-bottom:1rem}.users-stats-view__group-by-label{display:block;font-size:.9rem;font-weight:600;color:#115e59;margin-bottom:.5rem}.users-stats-view__group-by-btns{display:flex;flex-wrap:wrap;gap:.5rem}.users-stats-view__group-by-btn{padding:.45rem .9rem;border:1px solid rgba(13,148,136,.4);border-radius:10px;background:#fff;font:inherit;font-size:.9rem;font-weight:500;color:#115e59;cursor:pointer;transition:border-color .2s,background .2s,color .2s}.users-stats-view__group-by-btn:hover{border-color:#0d9488;color:#0d9488}.users-stats-view__group-by-btn--active{background:linear-gradient(145deg,#0d9488,#0f766e);border-color:#0f766e;color:#fff}.users-stats-view__group-by-btn--active:hover{color:#fff;opacity:.95}.users-stats-view__custom-result{width:100%;max-width:100%}.users-stats-view__custom-row{display:flex;flex-direction:row;gap:1.5rem;align-items:flex-start;width:100%}@media (max-width: 768px){.users-stats-view__custom-row{flex-direction:column}}.users-stats-view__custom-summary{flex-shrink:0;max-width:420px}.users-stats-view__custom-chart{flex:1;min-width:0}.users-stats-view__loader{display:flex;align-items:center;justify-content:flex-start;gap:.4rem;padding:1rem 0}.users-stats-view__loader-dot{width:8px;height:8px;border-radius:50%;background:#0d9488;animation:users-stats-view-bounce .6s ease-in-out infinite both}.users-stats-view__loader-dot:nth-child(2){animation-delay:.1s}.users-stats-view__loader-dot:nth-child(3){animation-delay:.2s}@keyframes users-stats-view-bounce{0%,80%,to{transform:scale(.8);opacity:.6}40%{transform:scale(1.2);opacity:1}}.reservations-chart{padding:1rem 0;background:linear-gradient(145deg,#fffbeb,#fef3c7);border:1px solid rgba(217,119,6,.35);border-radius:16px;box-shadow:0 4px 20px #92400e14;margin-top:1rem;overflow:hidden}.reservations-chart--empty{display:flex;align-items:center;justify-content:center;min-height:200px}.reservations-chart--empty p{margin:0;color:#92400e;font-weight:500}.reservations-chart__title{margin:0 0 0 1rem;font-size:1rem;font-weight:700;color:#78350f}.reservations-chart-tooltip{padding:.25rem 0;min-width:160px;background:#fff}.reservations-chart-tooltip__date{font-weight:700;font-size:.9rem;color:#78350f;margin-bottom:.5rem;padding-bottom:.35rem;border-bottom:1px solid #fde68a}.reservations-chart-tooltip__list{margin:0;padding:0;list-style:none}.reservations-chart-tooltip__item{display:flex;align-items:center;gap:.5rem;font-size:.85rem;margin-top:.25rem}.reservations-chart-tooltip__dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.reservations-chart-tooltip__label{color:#92400e}.reservations-chart-tooltip__value{font-weight:700;color:#78350f;margin-left:auto}.reservations-stats-view{width:100%}.reservations-stats-view__section{margin-bottom:2rem}.reservations-stats-view__section:last-child{margin-bottom:0}.reservations-stats-view__section-title{margin:0 0 1rem;font-size:1.15rem;font-weight:700;color:#78350f}.reservations-stats-view__section--default .reservations-stats-view__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}@media (max-width: 640px){.reservations-stats-view__section--default .reservations-stats-view__grid{grid-template-columns:1fr}}.reservations-stats-view__section--custom{padding-top:1.5rem;border-top:1px solid #fde68a}.reservations-stats-view__hint{margin:0 0 1rem;font-size:.9rem;color:#92400e}.reservations-stats-view__form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:1rem;margin-bottom:1rem}.reservations-stats-view__label{display:flex;flex-direction:column;gap:.35rem;font-size:.9rem;font-weight:600;color:#92400e}.reservations-stats-view__label span{font-size:.85rem}.reservations-stats-view__input{padding:.5rem .75rem;border:1px solid rgba(217,119,6,.4);border-radius:10px;font:inherit;font-size:.95rem;color:#0f172a;background:#fff;min-width:140px}.reservations-stats-view__input:focus{outline:none;border-color:#d97706;box-shadow:0 0 0 2px #d9770633}.reservations-stats-view__find-btn{padding:.55rem 1.25rem;border:1px solid rgba(217,119,6,.5);border-radius:10px;background:linear-gradient(145deg,#d97706,#b45309);color:#fff;font:inherit;font-size:.95rem;font-weight:600;cursor:pointer;transition:opacity .2s}.reservations-stats-view__find-btn:hover:not(:disabled){opacity:.95}.reservations-stats-view__find-btn:disabled{opacity:.6;cursor:not-allowed}.reservations-stats-view__group-by{margin-bottom:1rem}.reservations-stats-view__group-by-label{display:block;font-size:.9rem;font-weight:600;color:#92400e;margin-bottom:.5rem}.reservations-stats-view__group-by-btns{display:flex;flex-wrap:wrap;gap:.5rem}.reservations-stats-view__group-by-btn{padding:.45rem .9rem;border:1px solid rgba(217,119,6,.4);border-radius:10px;background:#fff;font:inherit;font-size:.9rem;font-weight:500;color:#92400e;cursor:pointer;transition:border-color .2s,background .2s,color .2s}.reservations-stats-view__group-by-btn:hover{border-color:#d97706;color:#d97706}.reservations-stats-view__group-by-btn--active{background:linear-gradient(145deg,#d97706,#b45309);border-color:#b45309;color:#fff}.reservations-stats-view__group-by-btn--active:hover{color:#fff;opacity:.95}.reservations-stats-view__custom-result{width:100%;max-width:100%}.reservations-stats-view__custom-row{display:flex;flex-direction:row;gap:1.5rem;align-items:flex-start;width:100%}@media (max-width: 768px){.reservations-stats-view__custom-row{flex-direction:column}}.reservations-stats-view__custom-summary{flex-shrink:0;max-width:420px}.reservations-stats-view__custom-chart{flex:1;min-width:0}.reservations-stats-view__loader{display:flex;align-items:center;justify-content:flex-start;gap:.4rem;padding:1rem 0}.reservations-stats-view__loader-dot{width:8px;height:8px;border-radius:50%;background:#d97706;animation:reservations-stats-view-bounce .6s ease-in-out infinite both}.reservations-stats-view__loader-dot:nth-child(2){animation-delay:.1s}.reservations-stats-view__loader-dot:nth-child(3){animation-delay:.2s}@keyframes reservations-stats-view-bounce{0%,80%,to{transform:scale(.8);opacity:.6}40%{transform:scale(1.2);opacity:1}}.attendance-chart{padding:1rem 0;background:linear-gradient(145deg,#fff,#f8fafc);border:1px solid rgba(148,163,184,.35);border-radius:16px;box-shadow:0 4px 20px #0f172a14;margin-top:1rem;overflow:hidden}.attendance-chart--empty{display:flex;align-items:center;justify-content:center;min-height:200px}.attendance-chart--empty p{margin:0;color:#64748b;font-weight:500}.attendance-chart__title{margin:0 0 0 1rem;font-size:1rem;font-weight:700;color:#334155}.attendance-chart-tooltip{padding:.25rem 0;min-width:140px;background:#fff}.attendance-chart-tooltip__date{font-weight:700;font-size:.9rem;color:#0f172a;margin-bottom:.5rem;padding-bottom:.35rem;border-bottom:1px solid #e2e8f0}.attendance-chart-tooltip__list{margin:0;padding:0;list-style:none}.attendance-chart-tooltip__item{display:flex;align-items:center;gap:.5rem;font-size:.85rem;margin-top:.25rem}.attendance-chart-tooltip__dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.attendance-chart-tooltip__label{color:#475569}.attendance-chart-tooltip__value{font-weight:700;color:#0f172a;margin-left:auto}.attendance-stats-view{width:100%}.attendance-stats-view__section{margin-bottom:2rem}.attendance-stats-view__section:last-child{margin-bottom:0}.attendance-stats-view__section-title{margin:0 0 1rem;font-size:1.15rem;font-weight:700;color:#5b21b6}.attendance-stats-view__section--default .attendance-stats-view__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}@media (max-width: 640px){.attendance-stats-view__section--default .attendance-stats-view__grid{grid-template-columns:1fr}}.attendance-stats-view__section--custom{padding-top:1.5rem;border-top:1px solid #c4b5fd}.attendance-stats-view__hint{margin:0 0 1rem;font-size:.9rem;color:#6d28d9}.attendance-stats-view__form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:1rem;margin-bottom:1rem}.attendance-stats-view__label{display:flex;flex-direction:column;gap:.35rem;font-size:.9rem;font-weight:600;color:#5b21b6}.attendance-stats-view__label span{font-size:.85rem}.attendance-stats-view__input{padding:.5rem .75rem;border:1px solid rgba(124,58,237,.4);border-radius:10px;font:inherit;font-size:.95rem;color:#0f172a;background:#fff;min-width:140px}.attendance-stats-view__input:focus{outline:none;border-color:#7c3aed;box-shadow:0 0 0 2px #7c3aed33}.attendance-stats-view__find-btn{padding:.55rem 1.25rem;border:1px solid rgba(124,58,237,.5);border-radius:10px;background:linear-gradient(145deg,#7c3aed,#5b21b6);color:#fff;font:inherit;font-size:.95rem;font-weight:600;cursor:pointer;transition:opacity .2s}.attendance-stats-view__find-btn:hover:not(:disabled){opacity:.95}.attendance-stats-view__find-btn:disabled{opacity:.6;cursor:not-allowed}.attendance-stats-view__group-by{margin-bottom:1rem}.attendance-stats-view__group-by-label{display:block;font-size:.9rem;font-weight:600;color:#5b21b6;margin-bottom:.5rem}.attendance-stats-view__group-by-btns{display:flex;flex-wrap:wrap;gap:.5rem}.attendance-stats-view__group-by-btn{padding:.45rem .9rem;border:1px solid rgba(124,58,237,.4);border-radius:10px;background:#fff;font:inherit;font-size:.9rem;font-weight:500;color:#5b21b6;cursor:pointer;transition:border-color .2s,background .2s,color .2s}.attendance-stats-view__group-by-btn:hover{border-color:#7c3aed;color:#7c3aed}.attendance-stats-view__group-by-btn--active{background:linear-gradient(145deg,#7c3aed,#5b21b6);border-color:#5b21b6;color:#fff}.attendance-stats-view__group-by-btn--active:hover{color:#fff;opacity:.95}.attendance-stats-view__custom-result{width:100%;max-width:100%}.attendance-stats-view__custom-row{display:flex;flex-direction:row;gap:1.5rem;align-items:flex-start;width:100%}@media (max-width: 768px){.attendance-stats-view__custom-row{flex-direction:column}}.attendance-stats-view__custom-summary{flex-shrink:0;max-width:420px}.attendance-stats-view__custom-chart{flex:1;min-width:0}.attendance-stats-view__loader{display:flex;align-items:center;justify-content:flex-start;gap:.4rem;padding:1rem 0}.attendance-stats-view__loader-dot{width:8px;height:8px;border-radius:50%;background:#7c3aed;animation:attendance-stats-view-bounce .6s ease-in-out infinite both}.attendance-stats-view__loader-dot:nth-child(2){animation-delay:.1s}.attendance-stats-view__loader-dot:nth-child(3){animation-delay:.2s}@keyframes attendance-stats-view-bounce{0%,80%,to{transform:scale(.8);opacity:.6}40%{transform:scale(1.2);opacity:1}}.stats-page{padding:1.25rem 1.5rem;max-width:90vw;margin:0 auto;width:100%;flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.stats-page__toolbar{display:flex;align-items:center;gap:1rem;margin-bottom:1.75rem;flex-wrap:wrap}.stats-page__back{padding:.5rem 1rem;border:1px solid rgba(148,163,184,.5);border-radius:10px;background:linear-gradient(145deg,#fff,#f8fafc);font:inherit;font-size:.9rem;font-weight:600;color:#475569;cursor:pointer;transition:border-color .2s,color .2s}.stats-page__back:hover{border-color:#6366f1;color:#6366f1}.stats-page__title{margin:0;font-size:1.5rem;font-weight:700;color:#0f172a;letter-spacing:.02em;flex:1}.stats-page__tabs{display:flex;gap:.25rem;padding:.25rem;border-radius:12px;background:#e2e8f0;border:1px solid #cbd5e1;box-shadow:inset 0 1px 2px #0000000f}.stats-page__source-tabs{display:flex;gap:.25rem;padding:.25rem;border-radius:12px;background:#dbeafe;border:1px solid #bfdbfe;box-shadow:inset 0 1px 2px #1e40af14}.stats-page__source-tab{padding:.6rem 1.1rem;font:inherit;font-size:.92rem;font-weight:700;color:#1e40af;background:transparent;border:none;border-radius:8px;cursor:pointer;transition:background .2s,color .2s,box-shadow .2s}.stats-page__source-tab:hover{background:#ffffffb3}.stats-page__source-tab--active{background:#fff;color:#1e3a8a;box-shadow:0 1px 3px #1e40af29,0 1px 2px #1e40af1a}.stats-page__tab{padding:.6rem 1.25rem;font:inherit;font-size:.95rem;font-weight:600;color:#475569;background:transparent;border:none;border-radius:8px;cursor:pointer;transition:background .2s,color .2s,box-shadow .2s}.stats-page__tab:hover{background:#ffffffb3;color:#334155}.stats-page__tab--active{background:#fff;color:#0f172a;box-shadow:0 1px 3px #0000001f,0 1px 2px #00000014}.stats-page__tab--active:hover{background:#fff;color:#0f172a}.stats-page__refresh{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:1px solid rgba(148,163,184,.5);border-radius:10px;background:linear-gradient(145deg,#fff,#f8fafc);color:#64748b;cursor:pointer;transition:border-color .2s,color .2s}.stats-page__refresh:hover{border-color:#6366f1;color:#6366f1}.stats-page__content{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden}.ai-manager-page{display:flex;flex-direction:column;flex:1;min-height:0;padding:1rem 1.5rem;max-width:90vw;margin:0 auto;width:100%}.ai-manager-page__toolbar{display:flex;align-items:center;gap:1rem;margin-bottom:1rem;flex-shrink:0}.ai-manager-page__back{padding:.5rem 1rem;border:1px solid rgba(148,163,184,.5);border-radius:10px;background:linear-gradient(145deg,#fff,#f8fafc);font:inherit;font-size:.9rem;font-weight:600;color:#475569;cursor:pointer;transition:border-color .15s,color .15s}.ai-manager-page__back:hover{border-color:#6366f1;color:#6366f1}.ai-manager-page__title{margin:0;font-size:1.5rem;font-weight:700;color:#0f172a;letter-spacing:.02em}.ai-manager-page__media-banner{flex-shrink:0;margin-bottom:.75rem;padding:.85rem 1.1rem;border-radius:12px;border:1px solid rgba(99,102,241,.35);background:linear-gradient(135deg,#6366f114,#f8fafc);box-shadow:0 2px 12px #0f172a0f}.ai-manager-page__media-banner-text{margin:0 0 .75rem;font-size:.875rem;line-height:1.45;color:#334155}.ai-manager-page__media-banner-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.65rem}.ai-manager-page__media-banner-btn{padding:.45rem 1rem;border:none;border-radius:8px;background:linear-gradient(145deg,#6366f1,#4f46e5);font:inherit;font-size:.85rem;font-weight:600;color:#fff;cursor:pointer;transition:opacity .15s}.ai-manager-page__media-banner-btn:hover:not(:disabled){opacity:.95}.ai-manager-page__media-banner-btn:disabled{opacity:.65;cursor:not-allowed}.ai-manager-page__media-banner-dismiss{padding:.4rem .75rem;border:1px solid rgba(148,163,184,.55);border-radius:8px;background:#fff;font:inherit;font-size:.8rem;font-weight:600;color:#64748b;cursor:pointer;transition:border-color .15s,color .15s}.ai-manager-page__media-banner-dismiss:hover{border-color:#94a3b8;color:#475569}.ai-manager-page__media-banner-status{margin:0;padding-left:1.15rem;font-size:.8rem;font-weight:600;color:#64748b}.ai-manager-page__media-banner-status-item--ok{color:#15803d}.ai-manager-page__media-banner-note{margin:.5rem 0 0;font-size:.8rem;line-height:1.4;color:#b45309}.ai-manager-page__pending-other-hint{margin:0 0 .65rem;padding:.55rem .85rem;border-radius:10px;border:1px solid rgba(14,165,233,.35);background:#0ea5e914;font-size:.82rem;line-height:1.4;color:#0c4a6e;flex-shrink:0}.ai-manager-page__mode-wrap{display:flex;align-items:center;gap:.75rem;margin-left:auto;flex-wrap:wrap;justify-content:flex-end}.ai-manager-page__speak-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;padding:0;border:1px solid rgba(148,163,184,.55);border-radius:10px;background:linear-gradient(145deg,#fff,#f8fafc);color:#64748b;cursor:pointer;transition:border-color .15s,color .15s,box-shadow .15s,background .15s;flex-shrink:0}.ai-manager-page__speak-icon-btn:hover{border-color:#6366f1;color:#6366f1}.ai-manager-page__speak-icon-btn--on{border-color:#6366f1;color:#6366f1;background:linear-gradient(145deg,#6366f11f,#6366f10f);box-shadow:0 0 0 2px #6366f133}.ai-manager-page__mode-label{font-size:.9rem;font-weight:600;color:#475569;white-space:nowrap}.ai-manager-page__llm-toggle{display:inline-flex;align-items:center;gap:.35rem;padding:2px 6px 2px 2px;border-radius:999px;background:#94a3b81f;box-shadow:inset 0 0 0 1px #94a3b847}.ai-manager-page__llm-toggle-label{font-size:.75rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.04em;padding-left:.4rem;white-space:nowrap}.ai-manager-page__llm-btn{border:none;background:transparent;font:inherit;font-size:.8rem;font-weight:600;color:#64748b;padding:.22rem .65rem;border-radius:999px;cursor:pointer;transition:background-color .15s,color .15s,box-shadow .15s;white-space:nowrap}.ai-manager-page__llm-btn--active{background:linear-gradient(135deg,#0ea5e9,#0284c7);color:#fff;box-shadow:0 2px 8px #0ea5e959}.ai-manager-page__llm-btn:hover:not(.ai-manager-page__llm-btn--active){background:#ffffffd9;color:#0f172a}.ai-manager-page__mode-toggle{display:inline-flex;align-items:center;flex-wrap:wrap;padding:2px;border-radius:999px;background:#94a3b826;box-shadow:inset 0 0 0 1px #94a3b859;gap:2px}.ai-manager-page__mode-btn{border:none;background:transparent;font:inherit;font-size:.85rem;font-weight:500;color:#64748b;padding:.25rem .75rem;border-radius:999px;cursor:pointer;transition:background-color .15s,color .15s,box-shadow .15s;white-space:nowrap}.ai-manager-page__mode-btn--active{background:linear-gradient(135deg,#0f766e,#2563eb);color:#fff;box-shadow:0 4px 10px #4f46e559}.ai-manager-page__mode-btn:hover:not(.ai-manager-page__mode-btn--active){background:#ffffffe6;color:#0f172a}.ai-manager-page__chat{display:flex;flex-direction:column;flex:1;min-height:0;background:linear-gradient(145deg,#fff,#f8fafc);border-radius:16px;border:1px solid rgba(148,163,184,.35);box-shadow:0 4px 20px #0f172a14}@keyframes ai-manager-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes ai-manager-drawer-in{0%{transform:translate(100%);opacity:.94}to{transform:translate(0);opacity:1}}.ai-manager-page__session-meta-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#0f172a52;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:ai-manager-backdrop-in .22s ease forwards}.ai-manager-page__session-meta-drawer{position:fixed;top:0;right:0;z-index:101;display:flex;flex-direction:column;width:min(22rem,100vw - .75rem);max-width:100%;height:100%;max-height:100dvh;background:linear-gradient(165deg,#fff,#f1f5f9 55%,#f8fafc);border-left:1px solid rgba(148,163,184,.4);box-shadow:-20px 0 56px #0f172a2e;animation:ai-manager-drawer-in .34s cubic-bezier(.22,1,.36,1) forwards}.ai-manager-page__session-meta-drawer-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:1rem 1rem .85rem;border-bottom:1px solid rgba(226,232,240,.95);flex-shrink:0;background:#ffffffa6}.ai-manager-page__session-meta-drawer-title{margin:0;font-size:1.05rem;font-weight:700;color:#0f172a;letter-spacing:.02em;line-height:1.25}.ai-manager-page__session-meta-drawer-close{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;margin:0;padding:0;border:1px solid rgba(148,163,184,.45);border-radius:10px;background:#fff;color:#64748b;font-size:1.35rem;line-height:1;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.ai-manager-page__session-meta-drawer-close:hover{border-color:#6366f173;color:#4f46e5;background:#6366f10f}.ai-manager-page__session-meta-drawer-body{flex:1;min-height:0;overflow:auto;padding:1rem 1rem .75rem}.ai-manager-page__session-meta-drawer-footer{flex-shrink:0;padding:.85rem 1rem 1rem;border-top:1px solid rgba(226,232,240,.95);background:#ffffff8c}.ai-manager-page__session-meta-actions{display:flex;gap:.55rem}.ai-manager-page__session-meta-hide{flex:1;border:1px solid rgba(239,68,68,.35);border-radius:10px;background:#ef444414;color:#b91c1c;font:inherit;font-size:.85rem;font-weight:700;padding:.55rem .9rem;cursor:pointer;transition:background .15s,border-color .15s}.ai-manager-page__session-meta-hide:hover:not(:disabled){border-color:#ef444480;background:#ef444424}.ai-manager-page__session-meta-hide:disabled{opacity:.55;cursor:not-allowed}.ai-manager-page__session-meta-fields{display:flex;flex-direction:column;gap:.65rem;min-width:0}.ai-manager-page__session-meta-label{display:flex;flex-direction:column;gap:.28rem;font-size:.74rem;font-weight:600;color:#64748b}.ai-manager-page__session-meta-label span{letter-spacing:.01em}.ai-manager-page__session-meta-label input{font:inherit;font-size:.9rem;padding:.5rem .65rem;border-radius:10px;border:1px solid #cbd5e1;background:#fff;color:#0f172a;min-width:0}.ai-manager-page__session-meta-label input:focus{outline:none;border-color:#6366f18c;box-shadow:0 0 0 3px #6366f124}.ai-manager-page__session-meta-label input:disabled{opacity:.65}.ai-manager-page__session-meta-save{flex:1;border:1px solid rgba(99,102,241,.45);border-radius:10px;background:linear-gradient(135deg,#6366f124,#4f46e51a);color:#4338ca;font:inherit;font-size:.85rem;font-weight:700;padding:.55rem 1rem;cursor:pointer;transition:background .15s,box-shadow .15s}.ai-manager-page__session-meta-save:hover:not(:disabled){background:linear-gradient(135deg,#6366f138,#4f46e529);box-shadow:0 4px 14px #4f46e533}.ai-manager-page__session-meta-save:disabled{opacity:.55;cursor:not-allowed}@media (max-width: 480px){.ai-manager-page__session-meta-drawer{width:100%;max-width:100%;border-left:none}}.ai-manager-page__workspace{display:flex;gap:.9rem;flex:1;min-height:0}.ai-manager-page__sessions{width:290px;min-width:260px;max-width:320px;border-radius:16px;border:1px solid rgba(148,163,184,.35);background:linear-gradient(145deg,#fff,#f8fafc);box-shadow:0 4px 20px #0f172a0f;display:flex;flex-direction:column;min-height:0;overflow:hidden}.ai-manager-page__sessions-head{padding:.75rem;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between;gap:.5rem}.ai-manager-page__sessions-title{font-size:.9rem;font-weight:700;color:#0f172a;min-width:0}.ai-manager-page__sessions-head-actions{display:flex;align-items:center;gap:.35rem;flex-shrink:0}.ai-manager-page__sessions-refresh{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;border:1px solid rgba(148,163,184,.45);border-radius:8px;background:#fff;color:#64748b;cursor:pointer}.ai-manager-page__sessions-refresh:hover:not(:disabled){border-color:#6366f173;color:#4f46e5;background:#6366f10f}.ai-manager-page__sessions-refresh:disabled{opacity:.55;cursor:not-allowed}.ai-manager-page__new-chat-btn{border:1px solid rgba(99,102,241,.45);border-radius:8px;background:#6366f114;color:#4f46e5;font:inherit;font-size:.78rem;font-weight:700;padding:.35rem .65rem;cursor:pointer}.ai-manager-page__new-chat-btn:disabled{opacity:.55;cursor:not-allowed}.ai-manager-page__sessions-list{padding:.6rem;overflow:auto;display:flex;flex-direction:column;gap:.7rem;flex:1;min-height:0}.ai-manager-page__sessions-empty{font-size:.82rem;color:#64748b;text-align:center;padding:1rem .5rem}.ai-manager-page__sessions-group{display:flex;flex-direction:column;gap:.35rem}.ai-manager-page__sessions-group-title{margin:0;padding:0 .15rem;font-size:.72rem;text-transform:uppercase;letter-spacing:.03em;color:#94a3b8;font-weight:700}.ai-manager-page__sessions-group-items{display:flex;flex-direction:column;gap:.32rem}.ai-manager-page__session-item-wrap{display:flex;align-items:stretch;gap:.28rem;width:100%}.ai-manager-page__session-item{flex:1;min-width:0;border:1px solid rgba(148,163,184,.28);border-radius:10px;background:#fff;text-align:left;padding:.52rem .62rem;display:flex;flex-direction:column;gap:.2rem;cursor:pointer}.ai-manager-page__session-item-gear{flex-shrink:0;width:2rem;align-self:stretch;min-height:2.75rem;display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid rgba(148,163,184,.28);border-radius:10px;background:#fff;color:#94a3b8;cursor:pointer}.ai-manager-page__session-item-gear:hover{border-color:#6366f173;color:#4f46e5;background:#6366f10f}.ai-manager-page__session-item-wrap:has(.ai-manager-page__session-item--active) .ai-manager-page__session-item-gear{border-color:#6366f18c;background:#6366f114;color:#4f46e5}.ai-manager-page__session-item:hover{border-color:#6366f173;background:#6366f10a}.ai-manager-page__session-item--active{border-color:#6366f1b3;background:#6366f11a;box-shadow:inset 0 0 0 1px #6366f133}.ai-manager-page__session-item-title{font-size:.82rem;font-weight:700;color:#1e293b;line-height:1.25;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.ai-manager-page__session-item-subtitle{font-size:.72rem;font-weight:600;color:#6366f1;line-height:1.2;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.ai-manager-page__session-item-preview{font-size:.76rem;color:#64748b;line-height:1.28;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ai-manager-page__session-item-sources{display:flex;flex-wrap:wrap;gap:.25rem;margin-top:.15rem}.ai-manager-page__source-badge{display:inline-flex;align-items:center;border-radius:999px;padding:.05rem .35rem;background:#2563eb14;color:#1d4ed8;font-size:.66rem;font-weight:700;line-height:1.35}.ai-manager-page__tabs{display:flex;gap:0;padding:0 1rem;border-bottom:1px solid #e2e8f0;flex-shrink:0}.ai-manager-page__tab{padding:.75rem 1.25rem;border:none;background:transparent;font:inherit;font-size:.95rem;font-weight:600;color:#64748b;cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-1px;display:flex;align-items:center;gap:.5rem;transition:color .15s,border-color .15s}.ai-manager-page__tab:hover{color:#475569}.ai-manager-page__tab--active{color:#6366f1;border-bottom-color:#6366f1}.ai-manager-page__tab-badge{background:#6366f1;color:#fff;font-size:.75rem;font-weight:700;padding:.15rem .5rem;border-radius:999px;min-width:1.25rem;text-align:center}.ai-manager-page__messages{flex:1;min-height:0;overflow:auto;padding:1.5rem;display:flex;flex-direction:column}.ai-manager-page__history-sentinel{width:100%;height:1px;margin:0 0 .35rem;flex-shrink:0;pointer-events:none;visibility:hidden}.ai-manager-page__history-loading{align-self:center;margin-bottom:.75rem;padding:.25rem .7rem;border-radius:999px;font-size:.8rem;color:#475569;background:#94a3b82e}.ai-manager-page__sql-panel{flex:1;min-height:0;overflow:auto;padding:1.5rem}.ai-manager-page__sql-empty{margin:auto;color:#64748b;font-size:1rem;font-weight:500;text-align:center;padding:2rem}.ai-manager-page__sql-list{display:flex;flex-direction:column;gap:1.5rem}.ai-manager-page__sql-block{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:1rem;overflow:hidden}.ai-manager-page__sql-label{font-size:.8rem;font-weight:700;color:#475569;margin-bottom:.35rem}.ai-manager-page__sql-query,.ai-manager-page__sql-result{margin:0 0 .75rem;padding:.75rem;background:#fff;border:1px solid #e2e8f0;border-radius:6px;font-family:ui-monospace,monospace;font-size:.85rem;line-height:1.4;white-space:pre-wrap;word-break:break-word;overflow-x:auto;max-height:12rem;overflow-y:auto}.ai-manager-page__sql-block .ai-manager-page__sql-result:last-child{margin-bottom:0}.ai-manager-page__placeholder{margin:auto;color:#64748b;font-size:1rem;font-weight:500;text-align:center}.ai-manager-page__input-wrap{display:flex;gap:.75rem;padding:1rem 1.25rem;border-top:1px solid #e2e8f0;flex-shrink:0}.ai-manager-page__input{flex:1;min-width:0;padding:.65rem 1rem;border:1px solid rgba(148,163,184,.5);border-radius:10px;font:inherit;font-size:.95rem;color:#0f172a;background:#fff;resize:none}.ai-manager-page__textarea{min-height:4.5rem;max-height:10rem;overflow-y:auto;line-height:1.4}.ai-manager-page__input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 2px #6366f133}.ai-manager-page__input:disabled{background:#f1f5f9;color:#94a3b8;cursor:not-allowed}.ai-manager-page__input-actions{display:flex;flex-direction:column;gap:.5rem;align-self:flex-end;flex-shrink:0}.ai-manager-page__mic{display:inline-flex;align-items:center;justify-content:center;min-width:3rem;min-height:3rem;padding:.35rem;border:1px solid rgba(148,163,184,.6);border-radius:10px;background:linear-gradient(145deg,#fff,#f1f5f9);color:#475569;cursor:pointer;transition:border-color .15s,color .15s,box-shadow .15s,transform .1s;touch-action:none;user-select:none;-webkit-user-select:none}.ai-manager-page__mic-inner{display:inline-flex;flex-direction:column;align-items:center;gap:.1rem;line-height:1}.ai-manager-page__mic-svg{flex-shrink:0}.ai-manager-page__mic-label{font-size:.7rem;font-weight:700;color:#6366f1}.ai-manager-page__mic:hover:not(:disabled){border-color:#6366f1;color:#6366f1}.ai-manager-page__mic:active:not(:disabled){transform:scale(.97)}@keyframes ai-manager-mic-recording{0%,to{box-shadow:0 0 0 2px #dc26268c,0 0 12px #dc262659;filter:brightness(1)}50%{box-shadow:0 0 0 3px #dc262659,0 0 20px #dc262633;filter:brightness(1.08)}}.ai-manager-page__mic--recording{border-color:#dc2626!important;color:#fff!important;background:linear-gradient(145deg,#ef4444,#b91c1c)!important;animation:ai-manager-mic-recording .9s ease-in-out infinite}.ai-manager-page__mic--recording:hover:not(:disabled){border-color:#b91c1c!important;color:#fff!important}.ai-manager-page__mic:disabled{opacity:.55;cursor:not-allowed}.ai-manager-page__send{padding:.4rem .9rem;border:none;border-radius:8px;background:linear-gradient(145deg,#6366f1,#4f46e5);font:inherit;font-size:.875rem;font-weight:600;color:#fff;cursor:pointer;transition:opacity .15s}.ai-manager-page__send:hover:not(:disabled){opacity:.95}.ai-manager-page__send:disabled{opacity:.5;cursor:not-allowed}.ai-manager-page__bubble{max-width:85%;min-width:0;display:flex;flex-direction:column;gap:.25rem;padding:.6rem 1rem;border-radius:12px;font-size:.95rem;line-height:1.4;content-visibility:auto;contain-intrinsic-size:auto 140px}.ai-manager-page__bubble--user{align-self:flex-end;margin-left:auto;background:#6366f11f;border:1px solid rgba(99,102,241,.25);border-right:3px solid #6366f1}.ai-manager-page__bubble--assistant{align-self:flex-start;margin-right:auto;background:#94a3b81f;border:1px solid rgba(148,163,184,.25);border-left:3px solid #64748b}.ai-manager-page__bubble-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.ai-manager-page__bubble-actions{display:flex;align-items:center;gap:.35rem;flex-shrink:0}.ai-manager-page__bubble-role{font-weight:700;font-size:.8rem;color:#475569}.ai-manager-page__icon-btn{flex-shrink:0;min-width:2rem;padding:.2rem .45rem;border:1px solid rgba(148,163,184,.6);border-radius:6px;background:#fff;font:inherit;font-size:.75rem;font-weight:700;color:#6366f1;cursor:pointer;line-height:1.2;transition:background-color .15s,border-color .15s}.ai-manager-page__icon-btn:hover:not(:disabled){background:#6366f114;border-color:#6366f1}.ai-manager-page__icon-btn:disabled{opacity:.5;cursor:not-allowed}.ai-manager-page__icon-btn--speak{display:inline-flex;align-items:center;justify-content:center;min-width:2.25rem;min-height:2.25rem;padding:.35rem}.ai-manager-page__tts-bar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;padding:.55rem 1.25rem;border-top:1px solid #e2e8f0;background:linear-gradient(90deg,#6366f10f,#f8fafc);flex-shrink:0}.ai-manager-page__tts-bar-label{font-size:.85rem;font-weight:600;color:#475569}.ai-manager-page__tts-bar-actions{display:flex;align-items:center;gap:.5rem}.ai-manager-page__tts-bar-btn{padding:.35rem .85rem;border:1px solid rgba(148,163,184,.55);border-radius:8px;background:#fff;font:inherit;font-size:.8rem;font-weight:600;color:#475569;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.ai-manager-page__tts-bar-btn:hover{border-color:#6366f1;color:#6366f1;background:#6366f10f}.ai-manager-page__tts-bar-btn--stop{border-color:#dc262673;color:#b91c1c}.ai-manager-page__tts-bar-btn--stop:hover{border-color:#dc2626;color:#dc2626;background:#dc26260f}.ai-manager-page__bubble-content{max-width:100%;min-width:0;overflow-wrap:anywhere;word-break:break-word;color:#1e293b;white-space:pre-wrap}.ai-manager-page__bubble-content--html{white-space:normal;overflow-x:auto;font-size:.95rem;line-height:1.55}.ai-manager-page__bubble-content--html>*:first-child{margin-top:0}.ai-manager-page__bubble-content--html>*:last-child{margin-bottom:0}.ai-manager-page__bubble-content--html p{margin:.5rem 0}.ai-manager-page__bubble-content--html h1,.ai-manager-page__bubble-content--html h2,.ai-manager-page__bubble-content--html h3,.ai-manager-page__bubble-content--html h4{margin:.85rem 0 .45rem;font-weight:700;color:#0f172a;line-height:1.3}.ai-manager-page__bubble-content--html h1{font-size:1.2rem}.ai-manager-page__bubble-content--html h2{font-size:1.1rem}.ai-manager-page__bubble-content--html h3,.ai-manager-page__bubble-content--html h4{font-size:1rem}.ai-manager-page__bubble-content--html ul,.ai-manager-page__bubble-content--html ol{margin:.45rem 0;padding-left:1.35rem}.ai-manager-page__bubble-content--html li{margin:.2rem 0}.ai-manager-page__bubble-content--html li>p{margin:.15rem 0}.ai-manager-page__bubble-content--html blockquote{margin:.5rem 0;padding:.45rem .75rem;border-left:3px solid #6366f1;background:#6366f10f;color:#334155}.ai-manager-page__bubble-content--html hr{border:none;border-top:1px solid #e2e8f0;margin:.75rem 0}.ai-manager-page__bubble-content--html pre{max-width:100%;margin:.5rem 0;padding:.65rem .85rem;border-radius:8px;background:#0f172a;color:#e2e8f0;font-size:.82rem;overflow-x:hidden;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;line-height:1.45}.ai-manager-page__bubble-content--html code{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:.88em;padding:.1em .35em;border-radius:4px;background:#0f172a14;color:#4338ca}.ai-manager-page__bubble-content--html pre code{padding:0;background:transparent;color:inherit;font-size:inherit;white-space:inherit;overflow-wrap:inherit;word-break:inherit}.ai-manager-page__bubble-content--html a{color:#4f46e5;text-decoration:underline;text-underline-offset:2px;word-break:break-word}.ai-manager-page__bubble-content--html a:hover{color:#4338ca}.ai-manager-page__bubble-content--html .table-wrap{margin:.65rem 0;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:10px;border:1px solid #e2e8f0;background:#fff;box-shadow:0 1px 3px #0f172a0f}.ai-manager-page__bubble-content--html table{width:100%;min-width:420px;max-width:100%;border-collapse:collapse;font-size:.9rem;margin:0}.ai-manager-page__bubble-content--html thead th{background:#6366f126;border:1px solid rgba(99,102,241,.3);padding:.45rem .65rem;text-align:left;font-weight:600;white-space:nowrap}.ai-manager-page__bubble-content--html tbody td{border:1px solid #e2e8f0;padding:.4rem .65rem;vertical-align:top}.ai-manager-page__bubble-content--html thead th:nth-child(1),.ai-manager-page__bubble-content--html tbody td:nth-child(1){text-align:left;width:auto;min-width:10rem}.ai-manager-page__bubble-content--html thead th,.ai-manager-page__bubble-content--html tbody td{white-space:normal;word-break:normal;overflow-wrap:break-word}.ai-manager-page__bubble-content--html thead th:nth-child(n+3),.ai-manager-page__bubble-content--html tbody td:nth-child(n+3){text-align:right;font-variant-numeric:tabular-nums}.ai-manager-page__bubble-content--html tbody tr:nth-child(2n){background:#f8fafccc}.ai-manager-page__bubble-content--html strong{font-weight:700;color:#0f172a}.ai-manager-page__typing{color:#64748b;font-style:italic}.ai-manager-page__error{padding:.5rem 1.25rem;margin:0;font-size:.9rem;color:#dc2626;background:#dc262614;border-top:1px solid rgba(220,38,38,.2)}@media (max-width: 1100px){.ai-manager-page__workspace{flex-direction:column}.ai-manager-page__sessions{width:100%;max-width:none;min-width:0;max-height:260px}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:linear-gradient(160deg,#1a1d26,#0f1117)}.login-page__form{width:100%;max-width:22rem;padding:2rem;border-radius:12px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);box-shadow:0 12px 40px #00000059}.login-page__title{margin:0 0 .5rem;font-size:1.35rem;font-weight:600;color:#e8eaef}.login-page__hint{margin:0 0 1.5rem;font-size:.875rem;color:#e8eaefa6;line-height:1.4}.login-page__field{display:flex;flex-direction:column;gap:.35rem;margin-bottom:1rem;font-size:.8rem;color:#e8eaefd9}.login-page__field span{font-weight:500}.login-page__field input{padding:.55rem .65rem;border-radius:8px;border:1px solid rgba(255,255,255,.12);background:#00000040;color:#e8eaef;font-size:1rem}.login-page__field input:focus{outline:none;border-color:#6495ed99}.login-page__field input:disabled{opacity:.6}.login-page__error{margin:0 0 1rem;font-size:.85rem;color:#f08080}.login-page__submit{width:100%;margin-top:.25rem;padding:.65rem 1rem;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;background:linear-gradient(180deg,#5b7fd4,#3d5a9e);color:#fff}.login-page__submit:hover:not(:disabled){filter:brightness(1.06)}.login-page__submit:disabled{opacity:.65;cursor:not-allowed}.app{display:flex;flex-direction:column;height:100vh;min-height:0;overflow:hidden}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:linear-gradient(160deg,#f1f5f9,#e2e8f0);min-height:100vh}#root{min-height:100vh;display:flex;flex-direction:column}
