html,body,#root{height:100%;margin:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.rich-text-editor-content .ProseMirror{outline:none}.rich-text-editor-content .ProseMirror,.rich-text-viewer-content{line-height:1.4}.rich-text-editor-content .ProseMirror p,.rich-text-editor-content .ProseMirror h1,.rich-text-editor-content .ProseMirror h2,.rich-text-editor-content .ProseMirror h3,.rich-text-editor-content .ProseMirror ul,.rich-text-editor-content .ProseMirror ol,.rich-text-viewer-content p,.rich-text-viewer-content h1,.rich-text-viewer-content h2,.rich-text-viewer-content h3,.rich-text-viewer-content ul,.rich-text-viewer-content ol{margin:0 0 6px}.rich-text-editor-content .ProseMirror>:last-child,.rich-text-viewer-content>:last-child{margin-bottom:0}.rich-text-editor-content .ProseMirror a,.rich-text-viewer-content a{color:#1677ff;text-decoration:underline}.timetable-holiday-row td{background-color:#fff1f0!important}.imat-calendar .ant-picker-panel{background:0 0;border:none}.imat-calendar .ant-picker-body{padding:0!important}.imat-calendar .ant-picker-content{border-collapse:collapse;table-layout:fixed;width:100%}.imat-calendar .ant-picker-content thead th{color:#8c8c8c;text-transform:uppercase;letter-spacing:.5px;text-align:left;background:#fafafa;font-size:11px;font-weight:600;border:none!important;border-bottom:1px solid #e8e8e8!important;padding:10px 8px!important}.imat-calendar .ant-picker-cell{vertical-align:top;border:1px solid #f0f0f0;padding:0!important}.imat-calendar .ant-picker-cell:before{display:none}.imat-calendar .ant-picker-cell .ant-picker-calendar-date{background:#fff;flex-direction:column;align-items:flex-start;height:92px;margin:0;padding:6px 8px;transition:background .12s;display:flex}.imat-calendar .ant-picker-cell:hover .ant-picker-calendar-date{background:#fafafa}.imat-calendar .ant-picker-cell:not(.ant-picker-cell-in-view) .ant-picker-calendar-date{background:#fcfcfc}.imat-calendar .ant-picker-calendar-date-value{color:#262626;font-size:13px;font-weight:600;line-height:20px}.imat-calendar .ant-picker-cell:not(.ant-picker-cell-in-view) .ant-picker-calendar-date-value{color:#c2c2c2;font-weight:400}.imat-calendar .ant-picker-cell-today .ant-picker-calendar-date-value{color:#fff;background:#1677ff;border-radius:10px;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 6px;display:inline-flex}.imat-calendar .ant-picker-cell-selected .ant-picker-calendar-date{background:#e6f4ff;box-shadow:inset 0 0 0 2px #1677ff}.imat-calendar .ant-picker-calendar-date-content{flex:1;width:100%;margin-top:4px;overflow:auto}.mascot-dock{z-index:900;flex-direction:column;align-items:flex-end;gap:10px;display:flex;position:fixed;bottom:24px;right:24px}.mascot-button{cursor:pointer;background:#fff;border:none;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;padding:4px;transition:transform .15s;display:flex;box-shadow:0 6px 18px #1b2a4a38}.mascot-button:hover{transform:scale(1.06)}.mascot-button:focus-visible{outline-offset:2px;outline:3px solid #4f7be8}.mascot-figure-wrap{display:inline-block;position:relative}.mascot-figure{object-fit:contain;animation:3s ease-in-out infinite mascot-bob;display:block}.mascot-party{font-size:18px;animation:1.6s ease-in-out infinite mascot-confetti;position:absolute;top:-6px;right:-8px}.mascot-bubble__avatar{object-fit:contain;background:#fff;border-radius:50%;flex:none}.mascot-bubble{background:#fff;border-radius:14px;flex-direction:column;width:340px;max-width:calc(100vw - 48px);max-height:70vh;animation:.18s ease-out mascot-pop;display:flex;position:relative;box-shadow:0 12px 32px #1b2a4a3d}.mascot-bubble:after{content:"";background:#fff;width:16px;height:16px;position:absolute;bottom:-8px;right:24px;transform:rotate(45deg);box-shadow:4px 4px 8px #1b2a4a14}.mascot-bubble__head{background:linear-gradient(#f3f6ff 0%,#fff 100%);border-bottom:1px solid #eef1f7;border-radius:14px 14px 0 0;justify-content:space-between;align-items:flex-start;gap:10px;padding:14px 10px 10px 16px;display:flex}.mascot-bubble__sub{color:#0000008c;margin-top:2px;font-size:12px}.mascot-bubble__body{padding:6px 8px 10px;overflow-y:auto}.mascot-section{padding:6px 8px 2px}.mascot-section__title{letter-spacing:.06em;text-transform:uppercase;color:#00000073;margin-bottom:4px;font-size:11px;font-weight:600}.mascot-row{border-radius:8px;align-items:flex-start;gap:8px;padding:6px 4px;font-size:13px;line-height:1.4;display:flex}.mascot-row:hover{background:#f7f9fd}.mascot-row--birthday{background:#fff7e6}.mascot-row--done{color:#0009}.mascot-row__icon{text-align:center;flex:none;width:20px}.mascot-row__text{flex:auto}.mascot-row__actions{flex:none;margin:-4px -2px 0 0;display:flex}@keyframes mascot-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes mascot-confetti{0%,to{opacity:1;transform:translateY(0)}50%{opacity:.6;transform:translateY(-3px)}}@keyframes mascot-pop{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.mascot-figure,.mascot-party,.mascot-bubble{animation:none}}@media print{.mascot-dock{display:none}}
