:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}body{margin:0}#root{text-align:left;box-sizing:border-box;flex-direction:column;width:100%;height:100vh;margin:0;display:flex;overflow:hidden}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}:root{--tf-hover-green:#20b977;--tf-hover-green-bg:#ecfdf5;--tf-hover-neutral-bg:#f3f4f6;--tf-focus-ring:#2fc98752}.tf-hover-button,.tf-tab-button,.tf-group-row,.tf-group-image-button,.tf-group-action-button,.tf-menu-item,.tf-add-calendar-button,.tf-day-cell,.tf-more-button,.tf-event-item{transition:background-color .16s,color .16s,border-color .16s,box-shadow .16s,filter .16s,transform .16s}.tf-hover-button:hover,.tf-hover-button:focus-visible{background-color:var(--tf-hover-green-bg)!important;color:var(--tf-hover-green)!important;border-color:#c8f1df!important}.tf-hover-button:focus-visible,.tf-tab-button:focus-visible,.tf-group-image-button:focus-visible,.tf-group-action-button:focus-visible,.tf-menu-item:focus-visible,.tf-add-calendar-button:focus-visible,.tf-more-button:focus-visible,.tf-event-item:focus-visible{outline-offset:2px;outline:2px solid var(--tf-focus-ring)!important}.tf-tab-button:not(.is-active):hover,.tf-tab-button:not(.is-active):focus-visible{background-color:var(--tf-hover-green-bg)!important;color:var(--tf-hover-green)!important}.tf-group-row:hover{transform:translateY(-1px);box-shadow:0 6px 18px #0f172a17;background-color:#f7f8f8!important}.tf-group-row.is-selected{background-color:#e4e7eb!important}.tf-group-row.is-selected:hover{transform:translateY(-1px);box-shadow:0 6px 18px #0f172a17;background-color:#dce0e5!important}.tf-group-row.is-dragging{box-shadow:0 12px 28px #15213d29;cursor:grabbing!important;background-color:#fff!important}.tf-group-image-button:hover{filter:brightness(.92);transform:scale(1.02)}.tf-group-action-button:hover,.tf-group-action-button:focus-visible{background-color:var(--tf-hover-green-bg)!important;color:var(--tf-hover-green)!important}.tf-menu-item:hover,.tf-menu-item:focus-visible{background-color:var(--tf-hover-neutral-bg)!important}.tf-menu-item-danger:hover,.tf-menu-item-danger:focus-visible{color:#dc2626!important;background-color:#fef2f2!important}.tf-add-calendar-button:hover,.tf-add-calendar-button:focus-visible{background-color:#f8faf9!important}.tf-add-calendar-button:hover .tf-add-calendar-icon,.tf-add-calendar-button:focus-visible .tf-add-calendar-icon{background-color:var(--tf-hover-green-bg)!important;color:var(--tf-hover-green)!important;border-color:#a7e8cd!important}.tf-add-calendar-button:hover .tf-add-calendar-label,.tf-add-calendar-button:focus-visible .tf-add-calendar-label{color:var(--tf-hover-green)!important}.tf-day-cell:hover{background-color:#f8faf9!important}.tf-day-cell.is-selected:hover{background-color:#eceeef!important}.tf-more-button:hover,.tf-more-button:focus-visible{transform:translateY(-1px);background-color:#4b5563!important;border-color:#374151!important}.tf-event-item:hover,.tf-event-item:focus-visible{filter:brightness(.94);transform:translateY(-1px);box-shadow:0 2px 6px #0f172a2e}.tf-tooltip{z-index:10000;color:#fff;text-align:center;white-space:nowrap;pointer-events:none;background-color:#202124;border-radius:7px;max-width:240px;padding:8px 11px;font-size:12px;font-weight:600;line-height:1.25;animation:.12s ease-out tf-tooltip-in;position:fixed;box-shadow:0 4px 12px #0003}.tf-tooltip-arrow{background-color:#202124;width:8px;height:8px;position:absolute;transform:rotate(45deg)}.tf-tooltip-bottom .tf-tooltip-arrow{margin-left:-4px;top:-4px;left:50%}.tf-tooltip-top .tf-tooltip-arrow{margin-left:-4px;bottom:-4px;left:50%}.tf-tooltip-left .tf-tooltip-arrow{margin-top:-4px;top:50%;right:-4px}.tf-tooltip-right .tf-tooltip-arrow{margin-top:-4px;top:50%;left:-4px}@keyframes tf-tooltip-in{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}@media (hover:none){.tf-tooltip{display:none}}.tf-vertical-toolbar-button{transition:background-color .16s,border-color .16s,box-shadow .16s}.tf-vertical-toolbar-button:not(.is-selected):hover,.tf-vertical-toolbar-button:not(.is-selected):focus-visible{background-color:#371f09!important;border-left-color:#0000!important}.tf-vertical-toolbar-button.is-selected:hover,.tf-vertical-toolbar-button.is-selected:focus-visible{background-color:#371f09!important}.tf-vertical-toolbar-button:focus-visible{outline-offset:-2px;outline:2px solid #ef444447}.tf-vertical-toolbar-icon{transition:opacity .16s,transform .16s;display:inline-flex}.tf-vertical-toolbar-button:hover .tf-vertical-toolbar-icon,.tf-vertical-toolbar-button:focus-visible .tf-vertical-toolbar-icon{transform:scale(1.08);opacity:1!important}.tf-day-event-row{transition:background-color .12s}.tf-day-event-row:hover,.tf-day-event-row:focus-visible{background-color:#f7f8f8!important}.tf-day-event-row:focus-visible{outline-offset:-2px;z-index:1;outline:2px solid #2fc98747;position:relative}.tf-day-list-close-button{transition:background-color .14s,color .14s}.tf-day-list-close-button:hover,.tf-day-list-close-button:focus-visible{outline:none;color:#111827!important;background-color:#f3f4f6!important}.tf-event-save-button,.tf-event-delete-button{cursor:pointer;border-radius:8px;min-width:64px;height:36px;padding:0 14px;font-size:14px;font-weight:700;line-height:1;transition:background-color .14s,border-color .14s,color .14s,transform .1s}.tf-event-save-button{color:#fff;background-color:#2fc987;border:1px solid #2fc987}.tf-event-save-button:hover,.tf-event-save-button:focus-visible{background-color:#25b979;border-color:#25b979;outline:none}.tf-event-delete-button{color:#fff;background-color:#ef4444;border:1px solid #ef4444}.tf-event-delete-button:hover,.tf-event-delete-button:focus-visible{color:#fff;background-color:#dc2626;border-color:#dc2626;outline:none}.tf-event-save-button:active,.tf-event-delete-button:active{transform:translateY(1px)}.tf-date-picker{width:100%;min-width:0}.tf-date-picker-trigger{text-align:left;white-space:nowrap;cursor:pointer;box-sizing:border-box;appearance:none;border:1px solid #e5e7eb;border-radius:10px;justify-content:space-between;align-items:center;gap:8px;width:100%;height:44px;padding:0 12px;font-family:inherit;font-size:14px;transition:border-color .15s,box-shadow .15s,background-color .15s;display:flex;color:#202124!important;background-color:#f9fafb!important}.tf-date-picker-trigger span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.tf-date-picker-trigger svg{color:#6b7280;flex-shrink:0}.tf-date-picker-trigger:hover{border-color:#bfe9d6;background-color:#fff!important}.tf-date-picker-trigger:focus-visible,.tf-date-picker-trigger.is-open{border-color:#2fc987;outline:none;box-shadow:0 0 0 3px #2fc98724}.tf-date-picker-trigger:disabled{cursor:default;color:#9ca3af!important;background-color:#f3f4f6!important}.tf-date-picker-popup{z-index:12000;box-sizing:border-box;background-color:#fff;border:1px solid #e5e7eb;border-radius:14px;width:320px;padding:16px;position:fixed;box-shadow:0 14px 34px #0f172a2e}.tf-date-picker-header{justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px;display:flex}.tf-date-picker-month{color:#20b977;white-space:nowrap;font-size:16px;font-weight:700}.tf-date-picker-navigation{align-items:center;gap:6px;display:flex}.tf-date-picker-today,.tf-date-picker-nav-button{color:#6b7280;cursor:pointer;appearance:none;background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;height:34px;font-family:inherit}.tf-date-picker-today{padding:0 10px;font-size:12px;font-weight:600}.tf-date-picker-nav-button{width:34px;padding:0;font-size:22px;line-height:1}.tf-date-picker-today:hover,.tf-date-picker-nav-button:hover,.tf-date-picker-today:focus-visible,.tf-date-picker-nav-button:focus-visible{color:#20b977;background-color:#ecfdf5;border-color:#bfe9d6;outline:none}.tf-date-picker-weekdays,.tf-date-picker-days{grid-template-columns:repeat(7,1fr);display:grid}.tf-date-picker-weekdays{margin-bottom:8px}.tf-date-picker-weekdays span{color:#6b7280;justify-content:center;align-items:center;height:28px;font-size:12px;font-weight:600;display:flex}.tf-date-picker-weekdays .is-sunday,.tf-date-picker-day.is-sunday{color:#ef4444}.tf-date-picker-weekdays .is-saturday,.tf-date-picker-day.is-saturday{color:#3b82f6}.tf-date-picker-day{color:#374151;cursor:pointer;appearance:none;background-color:#0000;border:1px solid #0000;border-radius:50%;justify-self:center;width:36px;height:36px;padding:0;font-family:inherit;font-size:13px;line-height:1}.tf-date-picker-day:hover,.tf-date-picker-day:focus-visible{color:#20b977;background-color:#ecfdf5;outline:none}.tf-date-picker-day.is-outside{color:#c4c9d1}.tf-date-picker-day.is-today:not(.is-selected){border-color:#2fc987}.tf-date-picker-day.is-selected{color:#fff;background-color:#2fc987;border-color:#2fc987;font-weight:700}.tf-date-picker-day.is-disabled{color:#d1d5db;cursor:not-allowed;background-color:#0000;border-color:#0000}.tf-time-picker{width:100%;min-width:0}.tf-time-picker-trigger{color:#202124;text-align:left;white-space:nowrap;cursor:pointer;box-sizing:border-box;appearance:none;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;justify-content:space-between;align-items:center;gap:6px;width:100%;height:44px;padding:0 12px;font-family:inherit;font-size:14px;transition:border-color .15s,box-shadow .15s,background-color .15s;display:flex}.tf-time-picker-trigger span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.tf-time-picker-trigger svg{color:#6b7280;flex-shrink:0}.tf-time-picker-trigger:hover{background-color:#fff;border-color:#bfe9d6}.tf-time-picker-trigger:focus-visible,.tf-time-picker-trigger.is-open{border-color:#2fc987;outline:none;box-shadow:0 0 0 3px #2fc98724}.tf-time-picker-trigger:disabled{color:#9ca3af;cursor:default;background-color:#f3f4f6}.tf-time-picker-placeholder{color:#9ca3af}.tf-time-picker-popup{z-index:12000;box-sizing:border-box;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background-color:#fff;border:1px solid #e5e7eb;border-radius:12px;max-height:300px;padding:6px;position:fixed;overflow-y:auto;box-shadow:0 14px 34px #0f172a2e}.tf-time-picker-option{color:#374151;text-align:left;cursor:pointer;appearance:none;background-color:#0000;border:none;border-radius:8px;justify-content:space-between;align-items:center;width:100%;height:42px;padding:0 12px;font-family:inherit;font-size:14px;display:flex}.tf-time-picker-option:hover,.tf-time-picker-option:focus-visible{background-color:#f3f4f6;outline:none}.tf-time-picker-option.is-selected{color:#20b977;background-color:#ecfdf5;font-weight:700}.tf-time-picker-check{color:#20b977;font-size:15px;font-weight:700}.tf-event-datetime-card{box-sizing:border-box;background-color:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:16px;padding:12px 14px}.tf-event-all-day-row{border-bottom:1px solid #eef0f2;justify-content:space-between;align-items:center;min-height:26px;margin-bottom:10px;padding-bottom:10px;display:flex}.tf-event-all-day-label{color:#374151;font-size:14px;font-weight:600}.tf-event-all-day-switch{cursor:pointer;box-sizing:border-box;appearance:none;background-color:#9ca3af;border:none;border-radius:999px;flex-shrink:0;width:48px;height:28px;padding:3px;transition:background-color .16s,box-shadow .16s;position:relative}.tf-event-all-day-switch:hover:not(:disabled){background-color:#858b94}.tf-event-all-day-switch:focus-visible{outline:none;box-shadow:0 0 0 3px #2fc9873d}.tf-event-all-day-switch.is-active{background-color:#2fc987}.tf-event-all-day-switch.is-active:hover:not(:disabled){background-color:#25b979}.tf-event-all-day-switch:disabled{opacity:.55;cursor:default}.tf-event-all-day-knob{background-color:#fff;border-radius:50%;width:22px;height:22px;transition:transform .16s;display:block;transform:translate(0);box-shadow:0 1px 3px #0f172a3d}.tf-event-all-day-switch.is-active .tf-event-all-day-knob{transform:translate(20px)}.tf-event-datetime-row{grid-template-columns:40px minmax(0,1fr) 100px;align-items:center;gap:8px;display:grid}.tf-event-datetime-row+.tf-event-datetime-row{margin-top:8px}.tf-event-datetime-row.is-all-day{grid-template-columns:40px minmax(0,1fr)}.tf-event-datetime-label{color:#4b5563;font-size:13px;font-weight:600}.tf-event-datetime-row .tf-date-picker-trigger,.tf-event-datetime-row .tf-time-picker-trigger{border-color:#e5e7eb;height:40px;padding-left:10px;padding-right:10px;font-size:13px;color:#202124!important;background-color:#f7f8fa!important}.tf-event-datetime-row .tf-date-picker-trigger:hover,.tf-event-datetime-row .tf-time-picker-trigger:hover{border-color:#bfe9d6;background-color:#fff!important}@media (width<=520px){.tf-event-datetime-card{padding-left:12px;padding-right:12px}.tf-event-datetime-row{grid-template-columns:36px minmax(0,1fr) 88px;gap:6px}.tf-event-datetime-row.is-all-day{grid-template-columns:36px minmax(0,1fr)}.tf-event-datetime-label{font-size:12px}}@media (prefers-reduced-motion:reduce){.tf-hover-button,.tf-tab-button,.tf-group-row,.tf-group-image-button,.tf-group-action-button,.tf-menu-item,.tf-add-calendar-button,.tf-day-cell,.tf-more-button,.tf-event-item,.tf-tooltip,.tf-date-picker-trigger,.tf-time-picker-trigger,.tf-event-all-day-switch,.tf-event-all-day-knob{transition:none;animation:none}}.tf-date-picker-day.is-in-range:not(.is-selected){color:#158f63;background-color:#dcfce7}.tf-date-picker-day.is-range-start:not(.is-selected),.tf-date-picker-day.is-range-end:not(.is-selected){border-color:#34d399;box-shadow:inset 0 0 0 1px #b1dece}.tf-date-picker-day.is-in-range:not(.is-selected):hover{color:#107a55;background-color:#c8f5df}.tf-date-picker-day.is-selected{color:#fff;box-shadow:none;background-color:#2fc987;border-color:#2fc987}.tf-event-title-input::placeholder{color:#b8bdc5;opacity:1;font-size:17px;font-weight:700}.tf-toast-backdrop{z-index:20000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background-color:#0f172a2e;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.tf-toast{background-color:#fff;border:1px solid #e5e7eb;border-radius:16px;width:min(100vw - 48px,400px);animation:.18s ease-out both tf-toast-open;overflow:hidden;box-shadow:0 22px 55px #0f172a2e,0 5px 14px #0f172a17}.tf-toast-main{align-items:flex-start;gap:14px;padding:22px 22px 18px;display:flex}.tf-toast-icon{color:#e05260;background-color:#fff1f2;border-radius:12px;flex:none;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.tf-toast-content{min-width:0;padding-top:1px}.tf-toast-title{color:#202124;font-size:15px;font-weight:700;line-height:1.4}.tf-toast-message{color:#69707a;white-space:normal;word-break:keep-all;margin-top:6px;font-size:13px;font-weight:500;line-height:1.55}.tf-toast-actions{border-top:1px solid #f0f1f3;justify-content:flex-end;padding:12px 18px 16px;display:flex}.tf-toast-confirm{color:#fff;cursor:pointer;background-color:#16845b;border:0;border-radius:10px;min-width:76px;height:38px;padding:0 20px;font-size:13px;font-weight:700;transition:background-color .16s,transform .16s}.tf-toast-confirm:hover{background-color:#116d4b}.tf-toast-confirm:active{transform:scale(.97)}.tf-toast-confirm:focus-visible{outline-offset:2px;outline:3px solid #16845b38}@keyframes tf-toast-open{0%{opacity:0;transform:translateY(-8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=520px){.tf-toast-backdrop{padding:18px}.tf-toast{width:100%}}@media (prefers-reduced-motion:reduce){.tf-toast{animation:none}}.tf-toast-invite .tf-toast-icon,.tf-toast-success .tf-toast-icon{color:#16845b;background-color:#ecfdf5}.tf-toast-actions{gap:8px}.tf-toast-cancel{color:#646b75;cursor:pointer;background-color:#fff;border:1px solid #dfe3e8;border-radius:10px;min-width:76px;height:38px;padding:0 20px;font-size:13px;font-weight:700;transition:background-color .16s,border-color .16s}.tf-toast-cancel:hover{background-color:#f7f8f9;border-color:#cbd1d8}.tf-toast-cancel:disabled,.tf-toast-confirm:disabled{cursor:default;opacity:.55}.tf-toast-has-input{width:min(100vw - 48px,460px)}.tf-toast-has-input .tf-toast-main{align-items:flex-start;padding:22px 22px 20px}.tf-toast-has-input .tf-toast-content{flex:1;width:100%;min-width:0}.tf-toast-has-input .tf-toast-message{color:#747a83;text-overflow:initial;white-space:normal;margin-top:5px;font-size:13px;font-weight:500;line-height:1.5;overflow:visible}.tf-toast-has-input .tf-toast-input-wrap{flex-direction:column;align-items:stretch;width:100%;margin-top:17px;display:flex}.tf-toast-has-input .tf-toast-input-label{color:#555c65;margin:0 0 7px;font-size:12px;font-weight:700;line-height:1.4;display:block}.tf-toast-has-input .tf-toast-input{appearance:none;color:#202124;caret-color:#16845b;width:100%;height:46px;box-shadow:none;box-sizing:border-box;background:#f7f8f9;border:1px solid #e0e4e8;border-radius:12px;outline:none;margin:0;padding:0 14px;font-family:inherit;font-size:14px;font-weight:600;line-height:46px;transition:border-color .16s,background-color .16s,box-shadow .16s;display:block}.tf-toast-has-input .tf-toast-input::placeholder{color:#adb2b9;opacity:1;font-weight:500}.tf-toast-has-input .tf-toast-input:hover{background-color:#f4f6f7;border-color:#cfd5db}.tf-toast-has-input .tf-toast-input:focus{background-color:#fff;border-color:#2fc987;box-shadow:0 0 0 3px #2fc98726}.tf-toast-has-input .tf-toast-input:disabled{color:#8b9097;cursor:default;opacity:.75;background-color:#f1f3f4;border-color:#e5e7eb}.tf-toast-has-input .tf-toast-input-error{color:#e05260;margin-top:7px;font-size:12px;font-weight:600;line-height:1.4}.tf-toast-has-input .tf-toast-actions{gap:9px;padding:13px 20px 17px}@media (width<=520px){.tf-toast-has-input{width:100%}}@media (width<=768px){.tf-toast-has-input .tf-toast-input{font-size:16px}}.tf-memo-panel{box-sizing:border-box;background-color:#f5f6f8;border-left:1px solid #e5e7eb;flex-direction:column;flex-shrink:0;width:25vw;min-width:25vw;height:100%;min-height:0;display:flex;overflow:hidden}.tf-memo-header{box-sizing:border-box;background-color:#fff;border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;gap:12px;height:50px;min-height:50px;padding:0 18px;display:flex}.tf-memo-title{color:#202124;margin:0;font-size:18px;font-weight:700}.tf-memo-header-actions{align-items:center;gap:8px;display:flex}.tf-memo-create-button{color:#fff;cursor:pointer;background-color:#20a76f;border:none;border-radius:8px;height:32px;padding:0 12px;font-family:inherit;font-size:12px;font-weight:700}.tf-memo-create-button:hover{opacity:.9}.tf-memo-delete-button{color:#fff;cursor:pointer;box-sizing:border-box;background-color:#ef4444;border:none;border-radius:8px;height:32px;padding:0 16px;font-family:inherit;font-size:13px;font-weight:600}.tf-memo-delete-button:hover{opacity:.9}.tf-memo-search-wrap{background-color:#fff;padding:12px 14px 0}.tf-memo-search-box{box-sizing:border-box;background-color:#f8f9fa;border:1px solid #e5e7eb;border-radius:10px;align-items:center;gap:8px;height:40px;padding:0 12px;display:flex}.tf-memo-search-icon{flex-shrink:0;font-size:13px}.tf-memo-search-input{color:#202124;background-color:#0000;border:none;outline:none;flex:1;min-width:0;font-family:inherit;font-size:13px}.tf-memo-search-input::placeholder{color:#a3a8b1}.tf-memo-tabs-wrap{background-color:#fff;border-bottom:1px solid #e9eaec;padding:12px 14px}.tf-memo-tabs{box-sizing:border-box;background-color:#eef0f2;border-radius:10px;grid-template-columns:1fr 1fr 1fr;height:40px;padding:3px;display:grid}.tf-memo-tab{color:#8b9099;cursor:pointer;background-color:#0000;border:none;border-radius:8px;min-width:0;font-family:inherit;font-size:13px;font-weight:700;transition:background-color .15s,color .15s,box-shadow .15s}.tf-memo-tab:hover{color:#4b5563}.tf-memo-tab.is-active{color:#202124;background-color:#fff;box-shadow:0 1px 4px #0f172a1f}.tf-memo-scroll{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:#d1d5db transparent;flex:1;min-height:0;padding:14px;overflow:hidden auto}.tf-memo-scroll::-webkit-scrollbar{width:6px}.tf-memo-scroll::-webkit-scrollbar-track{background-color:#0000}.tf-memo-scroll::-webkit-scrollbar-thumb{background-color:#d1d5db;border-radius:999px}.tf-memo-empty{box-sizing:border-box;text-align:center;flex-direction:column;justify-content:center;align-items:center;height:100%;padding:60px 16px;display:flex}.tf-memo-empty-icon{margin-bottom:12px;font-size:30px}.tf-memo-empty-title{color:#6b7280;margin-bottom:6px;font-size:14px;font-weight:700}.tf-memo-empty-description{color:#a3a8b1;font-size:12px;line-height:1.6}.tf-memo-card{text-align:left;cursor:pointer;box-sizing:border-box;background-color:#fff;border:1px solid #eceef1;border-radius:12px;width:100%;margin:0 0 10px;padding:15px 15px 12px;font-family:inherit;transition:border-color .15s,box-shadow .15s,transform .15s;display:block;box-shadow:0 1px 3px #0f172a0a}.tf-memo-card:hover{border-color:#dfe2e6;box-shadow:0 4px 12px #0f172a12}.tf-memo-card-header{justify-content:space-between;align-items:center;gap:10px;min-width:0;margin-bottom:8px;display:flex}.tf-memo-card-title{color:#202124;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:14px;font-weight:750;line-height:1.4;overflow:hidden}.tf-memo-type-badge{white-space:nowrap;border-radius:999px;flex-shrink:0;padding:4px 7px;font-size:10px;font-weight:700;line-height:1}.tf-memo-type-badge.is-event{color:#17845a;background-color:#e8f8f1}.tf-memo-type-badge.is-general{color:#7b818a;background-color:#f1f3f5}.tf-memo-type-badge.is-voice{color:#d65a4a;background-color:#fff0ed}.tf-memo-card-content{color:#6b7280;word-break:keep-all;min-width:0;margin-bottom:11px;font-size:12px;font-weight:500;line-height:1.55}.tf-memo-card-content.is-text-preview{-webkit-line-clamp:5;white-space:normal;overflow-wrap:anywhere;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.tf-memo-voice-duration{color:#7b818a;font-variant-numeric:tabular-nums;align-items:center;font-size:12px;font-weight:600;line-height:1.4;display:inline-flex}.tf-memo-event-info{color:#8b9099;align-items:center;gap:4px;min-width:0;margin-top:4px;font-size:11px;display:flex}.tf-memo-event-icon{flex-shrink:0;font-size:11px}.tf-memo-event-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.tf-memo-event-separator{color:#c0c4ca;flex-shrink:0}.tf-memo-event-date{white-space:nowrap;flex-shrink:0}.tf-memo-card-footer{border-top:1px solid #f1f2f4;justify-content:flex-end;align-items:center;margin-top:10px;padding-top:9px;display:flex}.tf-memo-updated-at{color:#a3a8b1;font-size:10px;font-weight:500}.tf-live-dot{font-size:9px;animation:1.6s ease-in-out infinite tf-live-blink}.tf-memo-creator-name,.tf-memo-updated-at{color:#777;white-space:nowrap;background:#f3f4f6;border-radius:999px;align-items:center;height:22px;padding:0 8px;font-size:11px;line-height:1;display:inline-flex}.tf-memo-creator-name{text-overflow:ellipsis;max-width:90px;overflow:hidden}.tf-memo-updated-at{margin-left:auto}@keyframes tf-live-blink{0%,to{opacity:1}50%{opacity:.25}}.tf-memo-card.has-attachments{align-items:stretch;gap:12px;display:flex}.tf-memo-card-body{flex-direction:column;flex:1;min-width:0;display:flex}.tf-memo-attachment-preview{pointer-events:auto;flex:0 0 86px;align-self:center;width:86px;height:76px;position:relative;overflow:visible}.tf-memo-attachment-main{box-sizing:border-box;background-color:#f3f4f6;border:1px solid #e5e7eb;border-radius:9px;width:70px;height:70px;position:absolute;top:0;left:0;overflow:hidden}.tf-memo-attachment-main img{object-fit:cover;cursor:zoom-in;width:100%;height:100%;display:block}.tf-memo-attachment-file-icon{color:#6b7280;justify-content:center;align-items:center;width:100%;height:100%;display:flex}.tf-memo-attachment-small{color:#6b7280;box-sizing:border-box;background-color:#f3f4f6;border:2px solid #fff;border-radius:7px;justify-content:center;align-items:center;width:30px;height:30px;display:flex;position:absolute;overflow:hidden;box-shadow:0 1px 4px #0f172a29}.tf-memo-attachment-small img{object-fit:cover;cursor:zoom-in;width:100%;height:100%;display:block}.tf-memo-attachment-small.is-second{z-index:2;bottom:10px;right:8px}.tf-memo-attachment-small.is-third{z-index:3;bottom:2px;right:0}.tf-memo-attachment-more{z-index:4;color:#fff;box-sizing:border-box;background-color:#1f2937e0;border:2px solid #fff;border-radius:999px;justify-content:center;align-items:center;min-width:24px;height:20px;padding:0 5px;font-size:9px;font-weight:700;line-height:1;display:flex;position:absolute;bottom:-4px;right:-2px}.tf-memo-card.has-attachments .tf-memo-card-content.is-text-preview{-webkit-line-clamp:3}.tf-memo-card.has-attachments .tf-memo-card-footer{margin-top:auto}.tf-member-search-wrap{background-color:#fff;padding:12px 0 0}.tf-member-search-box{box-sizing:border-box;background-color:#f8f9fa;border:1px solid #e5e7eb;border-radius:10px;align-items:center;gap:8px;height:40px;padding:0 12px;display:flex}.tf-member-search-icon{flex-shrink:0;font-size:13px}.tf-member-search-input{color:#202124;background-color:#0000;border:none;outline:none;flex:1;min-width:0;font-family:inherit;font-size:13px}.tf-member-search-input::placeholder{color:#a3a8b1}.tf-members-section-header{color:#85898f;border-bottom:1px solid #eceeef;justify-content:space-between;align-items:center;min-height:38px;padding:0 4px;font-size:13px;font-weight:600;display:flex}.tf-member-badges{align-items:center;gap:5px;min-height:16px;display:flex}.tf-member-badge{color:#4b4f54;background-color:#fff;border:1px solid #d9dcdf;border-radius:8px;align-items:center;min-height:16px;padding:1px 6px;font-size:10px;font-weight:600;line-height:1.2;display:inline-flex}.tf-member-badge.is-me{color:#fff;background-color:#202124;border-color:#202124}.tf-member-visibility-switch{cursor:pointer;box-sizing:border-box;background-color:#969ba0;border:none;border-radius:999px;flex-shrink:0;width:44px;height:24px;padding:2px;transition:background-color .16s,opacity .16s;position:relative}.tf-member-visibility-switch.is-active{background-color:#2fc987}.tf-member-visibility-switch:disabled{opacity:.55;cursor:default}.tf-member-visibility-switch:focus-visible{outline:none;box-shadow:0 0 0 3px #2fc9873d}.tf-member-visibility-knob{background-color:#fff;border-radius:50%;width:20px;height:20px;transition:transform .16s;display:block;transform:translate(0);box-shadow:0 1px 3px #0f172a40}.tf-member-visibility-switch.is-active .tf-member-visibility-knob{transform:translate(20px)}.tf-system-event-wrap{box-sizing:border-box;justify-content:center;width:100%;margin:7px 0;display:flex}.tf-system-event-card{box-sizing:border-box;background-color:#fffffff5;border:1px solid #dee4e9e6;border-radius:11px;align-items:center;gap:10px;width:calc(100% - 12px);min-height:66px;padding:10px 13px 10px 17px;display:flex;position:relative;overflow:hidden;box-shadow:0 2px 7px #36495914}.tf-system-event-color-line{border-radius:0 999px 999px 0;width:3px;position:absolute;top:9px;bottom:9px;left:0}.tf-system-event-calendar-icon{box-sizing:border-box;opacity:.9;border:1.5px solid;border-radius:4px;flex-shrink:0;width:18px;height:17px;position:relative}.tf-system-event-calendar-icon:before{content:"";background-color:currentColor;width:100%;height:1.5px;position:absolute;top:3px;left:0}.tf-system-event-calendar-icon:after{content:"";box-sizing:content-box;border-left:1.5px solid;border-right:1.5px solid;width:2px;height:5px;position:absolute;top:-3px;left:4px}.tf-system-event-calendar-icon>span{background-color:currentColor;border-radius:50%;width:3px;height:3px;position:absolute;top:8px;left:7px}.tf-system-event-content{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.tf-system-event-title{color:#292d33;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;font-weight:750;line-height:1.35;overflow:hidden}.tf-system-event-meta{color:#8b929c;white-space:nowrap;align-items:center;gap:5px;min-width:0;font-size:10.5px;font-weight:500;line-height:1.35;display:flex;overflow:hidden}.tf-system-event-date{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.tf-system-event-meta-divider{color:#c1c6cd;flex-shrink:0}.tf-system-event-actor{color:#66707b;text-overflow:ellipsis;white-space:nowrap;flex-shrink:0;max-width:48%;font-weight:650;overflow:hidden}.tf-system-event-card{transition:border-color .15s,box-shadow .15s,transform .15s}.tf-system-event-card:hover{border-color:#cdd5dcf2;transform:translateY(-1px);box-shadow:0 4px 11px #3649591c}@media (width<=1200px){.tf-system-event-card{width:100%}.tf-system-event-actor{max-width:42%}}.tf-notice-banner{box-sizing:border-box;-webkit-backdrop-filter:blur(10px);background:#ffffff24;border-top:1px solid #ffffff2e;border-bottom:1px solid #47556924;flex-shrink:0;margin:0;position:relative;overflow:hidden}.tf-notice-banner--hidden{background:#ffffff14;border-bottom-color:#4755691a}.tf-notice-banner__header{box-sizing:border-box;justify-content:space-between;align-items:center;min-height:36px;padding:5px 10px 4px 16px;display:flex}.tf-notice-banner__heading{align-items:center;gap:7px;min-width:0;display:flex}.tf-notice-banner__heading-icon{background:#2bcf9329;border:1px solid #18a87429;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:13px;display:inline-flex}.tf-notice-banner__label{color:#334155;letter-spacing:-.01em;font-size:12px;font-weight:750}.tf-notice-banner__count{color:#fdfdfd;box-sizing:border-box;background:#ff0808;border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:10px;font-weight:700;display:inline-flex}.tf-notice-dialog__close{cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;transition:color .15s,background-color .15s,transform .15s;display:inline-flex}.tf-notice-banner__switch-wrap{cursor:pointer;-webkit-user-select:none;user-select:none;flex-shrink:0;align-items:center;gap:7px;display:inline-flex}.tf-notice-banner__switch-label{color:#1f9a70;letter-spacing:.04em;text-align:right;min-width:20px;font-size:9px;font-weight:800;transition:color .16s}.tf-notice-banner--hidden .tf-notice-banner__switch-label{color:#94a3b8}.tf-notice-banner__switch-input{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.tf-notice-banner__switch{box-sizing:border-box;background:#cbd5e1;border:1px solid #4755691a;border-radius:999px;flex-shrink:0;align-items:center;width:38px;height:22px;padding:2px;transition:background-color .18s,box-shadow .18s;display:inline-flex;position:relative;box-shadow:inset 0 1px 2px #0f172a1a}.tf-notice-banner__switch-thumb{background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .18s;display:block;transform:translate(0);box-shadow:0 1px 4px #0f172a3d}.tf-notice-banner__switch-input:checked+.tf-notice-banner__switch{background:#31c995;box-shadow:inset 0 1px 2px #0f76521f,0 0 0 2px #31c99514}.tf-notice-banner__switch-input:checked+.tf-notice-banner__switch .tf-notice-banner__switch-thumb{transform:translate(16px)}.tf-notice-banner__switch-wrap:hover .tf-notice-banner__switch{box-shadow:inset 0 1px 2px #0f172a1a,0 0 0 3px #64748b14}.tf-notice-banner__switch-input:checked+.tf-notice-banner__switch:hover{background:#28b986}.tf-notice-banner__list{overflow:hidden}.tf-notice-banner__list--expanded{overscroll-behavior:contain;max-height:240px;overflow-y:auto}.tf-notice-banner__item{width:100%;min-height:48px;color:inherit;text-align:left;cursor:pointer;box-sizing:border-box;background:0 0;border:none;border-top:1px solid #47556917;align-items:center;gap:10px;padding:8px 13px 8px 16px;transition:background-color .15s,padding-left .15s;display:flex}.tf-notice-banner__item:hover{background:#ffffff38;padding-left:19px}.tf-notice-banner__item:active{background:#ffffff4d}.tf-notice-banner__item-icon{box-sizing:border-box;background:#ffffff47;border:1px solid #47556914;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:14px;display:inline-flex}.tf-notice-banner__item-icon--pinned{background:#fff7db8c;border-color:#d9900629}.tf-notice-banner__item-main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.tf-notice-banner__title{color:#26374a;letter-spacing:-.015em;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:680;line-height:1.35;overflow:hidden}.tf-notice-banner__meta{color:#3341559e;text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:4px;font-size:10px;line-height:1.3;display:flex;overflow:hidden}.tf-notice-banner__meta-dot{opacity:.65}.tf-notice-banner__arrow{color:#3341557a;flex-shrink:0;font-size:22px;font-weight:300;line-height:1;transition:color .15s,transform .15s;transform:translate(-2px)}.tf-notice-banner__item:hover .tf-notice-banner__arrow{color:#334155;transform:translate(1px)}.tf-notice-banner__more{color:#526477;cursor:pointer;box-sizing:border-box;background:#ffffff14;border:none;border-top:1px solid #4755691a;justify-content:center;align-items:center;gap:5px;width:100%;min-height:34px;padding:0 12px;font-size:11px;font-weight:650;transition:background-color .15s,color .15s;display:flex}.tf-notice-banner__more:hover{color:#26374a;background:#ffffff38}.tf-notice-banner__chevron{font-size:13px;line-height:1;transition:transform .18s;display:inline-block}.tf-notice-banner__chevron--up{transform:rotate(180deg)}.tf-notice-dialog-backdrop{z-index:2000;box-sizing:border-box;-webkit-backdrop-filter:blur(4px);background:#0f172a7a;justify-content:center;align-items:center;padding:20px;animation:.17s ease-out tf-notice-backdrop-open;display:flex;position:fixed;inset:0}.tf-notice-dialog{background:#fff;border:1px solid #ffffffb8;border-radius:20px;flex-direction:column;width:100%;max-width:460px;max-height:min(76vh,680px);animation:.19s ease-out tf-notice-dialog-open;display:flex;overflow:hidden;box-shadow:0 28px 70px #0f172a40,0 8px 24px #0f172a1f}.tf-notice-dialog__header{background:linear-gradient(135deg,#e7faf3e0,#f4f8fcb8);border-bottom:1px solid #e8edf2;align-items:flex-start;gap:12px;padding:20px 18px 17px 20px;display:flex}.tf-notice-dialog__icon{background:#e7f8f1;border:1px solid #d1f1e4;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:18px;display:inline-flex;box-shadow:0 4px 12px #1a976c14}.tf-notice-dialog__icon--pinned{background:#fff6dd;border-color:#f7e7b7;box-shadow:0 4px 12px #d9900614}.tf-notice-dialog__heading{flex-direction:column;flex:1;gap:4px;min-width:0;padding-top:1px;display:flex}.tf-notice-dialog__eyebrow{color:#1f9a70;letter-spacing:.06em;font-size:10px;font-weight:750}.tf-notice-dialog__title{color:#1f2937;letter-spacing:-.025em;overflow-wrap:anywhere;margin:0;font-size:18px;font-weight:750;line-height:1.42}.tf-notice-dialog__close{color:#64748b;border-radius:10px;flex-shrink:0;width:32px;height:32px;font-size:23px;line-height:1}.tf-notice-dialog__close:hover{color:#1f2937;background:#ffffffb8;transform:rotate(3deg)}.tf-notice-dialog__body{color:#374151;letter-spacing:-.01em;overflow-wrap:anywhere;white-space:pre-wrap;min-height:100px;padding:22px;font-size:14px;line-height:1.75;overflow-y:auto}.tf-notice-dialog__footer{color:#94a3b8;box-sizing:border-box;background:#f8fafc;border-top:1px solid #edf1f5;justify-content:space-between;align-items:center;gap:12px;min-height:48px;padding:11px 20px;font-size:11px;display:flex}.tf-notice-dialog__author{color:#64748b;text-overflow:ellipsis;white-space:nowrap;font-weight:650;overflow:hidden}.tf-notice-dialog__date{flex-shrink:0}.tf-notice-banner button:focus-visible,.tf-notice-banner__switch-input:focus-visible+.tf-notice-banner__switch,.tf-notice-dialog button:focus-visible{outline-offset:-2px;outline:2px solid #1f9a70bf}@keyframes tf-notice-backdrop-open{0%{opacity:0}to{opacity:1}}@keyframes tf-notice-dialog-open{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=640px){.tf-notice-banner__header,.tf-notice-banner__item,.tf-notice-banner__item:hover{padding-left:13px}.tf-notice-dialog-backdrop{align-items:flex-end;padding:12px}.tf-notice-dialog{border-radius:18px;max-height:82vh}}@media (prefers-reduced-motion:reduce){.tf-notice-banner *,.tf-notice-dialog,.tf-notice-dialog-backdrop{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.tf-activity-panel{box-sizing:border-box;background-color:#f5f6f8;border-left:1px solid #e5e7eb;flex-direction:column;flex-shrink:0;width:25vw;min-width:25vw;height:100%;min-height:0;display:flex;overflow:hidden}.tf-activity-header{box-sizing:border-box;background-color:#fff;border-bottom:1px solid #e5e7eb;align-items:center;height:50px;min-height:50px;padding:0 18px;display:flex}.tf-activity-title{color:#202124;margin:0;font-size:18px;font-weight:700}.tf-activity-tabs-wrap{background-color:#fff;border-bottom:1px solid #e9eaec;padding:12px 14px}.tf-activity-tabs{box-sizing:border-box;background-color:#eef0f2;border-radius:10px;grid-template-columns:1fr 1fr;height:40px;padding:3px;display:grid}.tf-activity-tab{color:#8b9099;cursor:pointer;background-color:#0000;border:none;border-radius:8px;min-width:0;font-family:inherit;font-size:13px;font-weight:700;transition:background-color .15s,color .15s,box-shadow .15s}.tf-activity-tab:hover{color:#4b5563}.tf-activity-tab.is-active{color:#202124;background-color:#fff;box-shadow:0 1px 4px #0f172a1f}.tf-activity-scroll{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:#d1d5db transparent;flex:1;min-height:0;padding:14px;overflow:hidden auto}.tf-activity-scroll::-webkit-scrollbar{width:6px}.tf-activity-scroll::-webkit-scrollbar-track{background-color:#0000}.tf-activity-scroll::-webkit-scrollbar-thumb{background-color:#d1d5db;border-radius:999px}.tf-activity-event-card{background-color:#fff;border:1px solid #eceef1;border-radius:14px;margin-bottom:14px;position:relative;overflow:hidden;box-shadow:0 1px 3px #0f172a0d}.tf-activity-event-card:hover{border-color:#dfe2e6;box-shadow:0 4px 12px #0f172a12}.tf-activity-event-line{border-radius:999px;width:3px;position:absolute;top:20px;bottom:66px;left:14px}.tf-activity-event-summary{box-sizing:border-box;min-height:82px;padding:16px 16px 14px 27px;display:flex}.tf-activity-event-content{flex-direction:column;gap:6px;min-width:0;display:flex}.tf-activity-event-title{color:#202124;text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:750;line-height:1.4;overflow:hidden}.tf-activity-event-date{color:#8b9099;font-size:12px;font-weight:500;line-height:1.5}.tf-activity-action-row{box-sizing:border-box;border-top:1px solid #f0f1f3;justify-content:space-between;align-items:center;gap:10px;min-height:56px;padding:10px 14px;display:flex}.tf-activity-action-user{align-items:center;gap:9px;min-width:0;display:flex}.tf-activity-avatar,.tf-activity-avatar-fallback{border-radius:50%;flex-shrink:0;width:30px;height:30px}.tf-activity-avatar{object-fit:cover;background-color:#eef0f2;display:block}.tf-activity-avatar-fallback{color:#20a76f;background-color:#e8f8f1;justify-content:center;align-items:center;font-size:12px;font-weight:800;display:flex}.tf-activity-action-text{flex-direction:column;gap:2px;min-width:0;display:flex}.tf-activity-action-text strong{color:#4b5563;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700;overflow:hidden}.tf-activity-action-text span{color:#9ca3af;font-size:11px;line-height:1.3}.tf-activity-time{color:#a3a8b1;white-space:nowrap;flex-shrink:0;font-size:10px;font-weight:500}.tf-activity-general-card{box-sizing:border-box;background-color:#fff;border:1px solid #eceef1;border-radius:12px;align-items:flex-start;gap:11px;margin-bottom:10px;padding:13px 14px;display:flex}.tf-activity-general-icon{background-color:#f4f5f7;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:14px;font-weight:800;display:flex}.tf-activity-general-body{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.tf-activity-general-message{color:#4b5563;word-break:keep-all;font-size:13px;font-weight:650;line-height:1.5}.tf-activity-general-time{color:#a3a8b1;font-size:11px}.tf-activity-empty{color:#a3a8b1;text-align:center;padding:60px 16px;font-size:13px}.tf-activity-loading{color:#9ca3af;text-align:center;padding:16px;font-size:12px}@media (width<=1200px){.tf-activity-event-title{font-size:14px}.tf-activity-action-row{flex-direction:column;align-items:flex-start}.tf-activity-time{padding-left:39px}}.tf-alarm-toast-stack{z-index:12000;pointer-events:none;flex-direction:column;gap:10px;width:360px;max-width:calc(100vw - 48px);display:flex;position:fixed;bottom:24px;right:24px}.tf-alarm-toast{box-sizing:border-box;pointer-events:auto;background:#fffffffa;border:1px solid #00000014;border-radius:14px;align-items:center;gap:12px;width:100%;min-height:72px;padding:14px 16px;animation:.28s ease-out tf-alarm-toast-in;display:flex;box-shadow:0 10px 32px #0000002e}.tf-alarm-toast-icon{background:#eef7ef;border-radius:10px;justify-content:center;align-items:center;width:38px;min-width:38px;height:38px;font-size:20px;display:flex}.tf-alarm-toast-content{flex:1;min-width:0}.tf-alarm-toast-label{color:#4f8f5b;margin-bottom:3px;font-size:11px;font-weight:700}.tf-alarm-toast-title{white-space:nowrap;text-overflow:ellipsis;color:#222;font-size:14px;font-weight:700;overflow:hidden}.tf-alarm-toast-time{color:#777;margin-top:3px;font-size:12px}.tf-alarm-toast-actions{align-items:center;gap:6px;display:flex}.tf-alarm-toast-actions button{cursor:pointer;border:0;border-radius:7px;height:30px;padding:0 10px;font-size:12px;font-weight:600}.tf-alarm-toast-open{color:#397747;background:#edf6ef}.tf-alarm-toast-close{color:#fff;background:#333}.tf-alarm-toast-open:hover{background:#e0f0e3}.tf-alarm-toast-close:hover{background:#111}@keyframes tf-alarm-toast-in{0%{opacity:0;transform:translate(36px)}to{opacity:1;transform:translate(0)}}.tf-image-viewer-backdrop{z-index:100000;background:#000000e0;flex-direction:column;display:flex;position:fixed;inset:0}.tf-image-viewer-toolbar{color:#fff;flex:none;justify-content:space-between;align-items:center;gap:16px;min-height:58px;padding:0 18px;display:flex}.tf-image-viewer-file-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:14px;font-weight:500;overflow:hidden}.tf-image-viewer-actions{align-items:center;gap:8px;display:flex}.tf-image-viewer-action-button{color:#fff;cursor:pointer;background:#ffffff1f;border:none;border-radius:10px;justify-content:center;align-items:center;width:38px;height:38px;padding:0;display:flex}.tf-image-viewer-action-button:hover{background:#ffffff38}.tf-image-viewer-content{flex:auto;justify-content:center;align-items:center;min-height:0;padding:12px 24px 28px;display:flex}.tf-image-viewer-image{object-fit:contain;-webkit-user-select:none;user-select:none;max-width:100%;max-height:100%;display:block}@media (width<=768px){.tf-image-viewer-toolbar{padding:0 12px}.tf-image-viewer-content{padding:8px 10px 18px}}.tf-image-viewer-counter{color:#fff;box-sizing:border-box;background:#ffffff1f;border-radius:999px;justify-content:center;align-items:center;min-width:44px;height:30px;padding:0 9px;font-size:12px;font-weight:600;display:flex}.tf-image-viewer-nav{z-index:2;color:#fff;cursor:pointer;background:#ffffff24;border:none;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;padding:0;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.tf-image-viewer-nav:hover:not(:disabled){background:#ffffff40}.tf-image-viewer-nav:disabled{opacity:.2;cursor:default}.tf-image-viewer-nav.is-previous{left:20px}.tf-image-viewer-nav.is-next{right:20px}@media (width<=768px){.tf-image-viewer-nav{width:42px;height:42px}.tf-image-viewer-nav.is-previous{left:8px}.tf-image-viewer-nav.is-next{right:8px}}.tf-admin-detail-overlay{z-index:1000;background:#11182738;justify-content:flex-end;display:flex;position:fixed;inset:0}.tf-admin-detail-panel{box-sizing:border-box;background:#fff;border-left:1px solid #e5e7eb;width:420px;max-width:90vw;height:100vh;animation:.18s ease-out tf-admin-detail-slide-in;overflow-y:auto;box-shadow:-8px 0 30px #00000014}@keyframes tf-admin-detail-slide-in{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}.tf-admin-detail-header{box-sizing:border-box;border-bottom:1px solid #eceef1;justify-content:space-between;align-items:center;height:72px;padding:0 22px;display:flex}.tf-admin-detail-title{color:#1f2937;font-size:17px;font-weight:700}.tf-admin-detail-subtitle{color:#8a8f98;margin-top:4px;font-size:11px}.tf-admin-detail-close{color:#5f6670;cursor:pointer;background:#fff;border:1px solid #e1e4e8;border-radius:8px;width:34px;height:34px;padding:0;font-size:22px;line-height:1}.tf-admin-detail-profile{border-bottom:1px solid #f0f1f2;align-items:center;gap:14px;padding:24px 22px;display:flex}.tf-admin-detail-avatar{color:#4b5563;background:#eef1f4;border-radius:50%;flex:none;justify-content:center;align-items:center;width:48px;height:48px;font-size:18px;font-weight:700;display:flex}.tf-admin-detail-name{color:#1f2937;font-size:16px;font-weight:700}.tf-admin-detail-email{color:#7a8089;margin-top:5px;font-size:12px}.tf-admin-detail-section{padding:22px}.tf-admin-detail-section-title{color:#5d636c;margin-bottom:12px;font-size:12px;font-weight:700}.tf-admin-detail-row{border-bottom:1px solid #f1f2f3;justify-content:space-between;align-items:center;gap:20px;min-height:44px;display:flex}.tf-admin-detail-row span{color:#7a8089;font-size:12px}.tf-admin-detail-row strong{color:#374151;text-align:right;font-size:12px;font-weight:600}.tf-admin-detail-value{background:#f1f3f5;border-radius:6px;padding:4px 8px}.tf-admin-detail-value-business{background:#e8f4ee;color:#327052!important}.tf-admin-detail-value-active{background:#edf7ef;color:#39734a!important}.tf-admin-detail-value-suspended{background:#fff0ef;color:#b44c47!important}.tf-admin-detail-value-admin{background:#eeeefd;color:#5551a6!important}.tf-admin-detail-note{color:#7a8089;background:#f8f9fa;border-radius:8px;margin:0 22px 22px;padding:12px;font-size:11px;line-height:1.5}.tf-admin-detail-audit-section{border-top:1px solid #f0f1f2}.tf-admin-audit-list{flex-direction:column;gap:10px;display:flex}.tf-admin-audit-item{background:#fafafa;border:1px solid #eceef1;border-radius:9px;padding:12px}.tf-admin-audit-item-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.tf-admin-audit-item-header strong{color:#374151;font-size:12px}.tf-admin-audit-item-header span{color:#9aa0a8;flex:none;font-size:10px}.tf-admin-audit-change{align-items:center;gap:7px;margin-top:10px;font-size:11px;font-weight:700;display:flex}.tf-admin-audit-old-value{color:#6b7280;background:#f1f3f5;border-radius:5px;padding:4px 7px}.tf-admin-audit-new-value{color:#327052;background:#e8f4ee;border-radius:5px;padding:4px 7px}.tf-admin-audit-arrow{color:#9aa0a8}.tf-admin-audit-admin{color:#8a8f98;margin-top:9px;font-size:10px}.tf-admin-audit-message{color:#8a8f98;padding:18px 0;font-size:11px}.tf-admin-audit-error{color:#b42318;padding:14px 0;font-size:11px}.tf-admin-page{color:#1f2937;box-sizing:border-box;background:#f6f7f8;flex-direction:column;width:100%;height:100vh;display:flex;overflow:hidden}.tf-admin-header{box-sizing:border-box;background:#fff;border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;height:72px;padding:0 32px;display:flex}.tf-admin-brand{font-size:20px;font-weight:700}.tf-admin-subtitle{color:#8a8f98;margin-top:3px;font-size:12px}.tf-admin-header-actions{align-items:center;gap:10px;display:flex}.tf-admin-current-user{margin-right:8px;font-size:13px;font-weight:600}.tf-admin-main{box-sizing:border-box;flex:1;width:100%;max-width:1400px;min-height:0;margin:0 auto;padding:28px 32px 60px;overflow:hidden auto}.tf-admin-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:22px;display:grid}.tf-admin-summary-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:18px 20px}.tf-admin-summary-card span{color:#7a8089;margin-bottom:8px;font-size:12px;display:block}.tf-admin-summary-card strong{font-size:25px;font-weight:700}.tf-admin-user-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.tf-admin-section-header{border-bottom:1px solid #eceef1;justify-content:space-between;align-items:center;gap:20px;padding:20px 22px;display:flex}.tf-admin-section-header p{color:#8a8f98;margin:6px 0 0;font-size:12px}.tf-admin-table-wrap{width:100%;overflow:auto}.tf-admin-table{border-collapse:collapse;width:100%;font-size:13px}.tf-admin-table th{text-align:left;color:#737983;background:#fafafa;border-bottom:1px solid #eceef1;padding:12px 14px;font-size:11px;font-weight:600}.tf-admin-table td{white-space:nowrap;border-bottom:1px solid #f0f1f2;padding:14px}.tf-admin-table tbody tr:hover{background:#fafbfb}.tf-admin-user-name{font-weight:600}.tf-admin-badge{color:#555c65;background:#f1f3f5;border-radius:6px;align-items:center;min-height:24px;padding:0 8px;font-size:11px;font-weight:700;display:inline-flex}.tf-admin-badge-business{color:#327052;background:#e8f4ee}.tf-admin-badge-active{color:#39734a;background:#edf7ef}.tf-admin-badge-suspended{color:#b44c47;background:#fff0ef}.tf-admin-badge-admin{color:#5551a6;background:#eeeefd}.tf-admin-message,.tf-admin-error{padding:30px 22px;font-size:13px}.tf-admin-error{color:#b42318}.tf-admin-secondary-button{color:#374151;cursor:pointer;background:#fff;border:1px solid #d8dce1;border-radius:8px;height:34px;padding:0 13px;font-size:12px;font-weight:600}.tf-admin-section-header h1{color:#1f2937;margin:0;font-size:18px;font-weight:700}.tf-admin-user-tools{align-items:center;gap:8px;display:flex}.tf-admin-search-input{color:#1f2937;box-sizing:border-box;background:#fff;border:1px solid #d8dce1;border-radius:8px;outline:none;width:240px;height:36px;padding:0 11px;font-size:12px}.tf-admin-search-input:focus{border-color:#9da6b1}.tf-admin-filter-select{color:#374151;cursor:pointer;background:#fff;border:1px solid #d8dce1;border-radius:8px;height:36px;padding:0 30px 0 10px;font-size:12px}.tf-admin-value-select{color:#555c65;cursor:pointer;background:#f1f3f5;border:1px solid #0000;border-radius:6px;height:28px;padding:0 26px 0 8px;font-size:11px;font-weight:700}.tf-admin-value-select-business{color:#327052;background:#e8f4ee}.tf-admin-value-select-active{color:#39734a;background:#edf7ef}.tf-admin-value-select-suspended{color:#b44c47;background:#fff0ef}.tf-admin-value-select:disabled{opacity:.55;cursor:wait}.tf-admin-operation-message{border-radius:8px;margin:14px 22px 0;padding:10px 12px;font-size:12px}.tf-admin-operation-success{color:#39734a;background:#edf7ef}.tf-admin-operation-error{color:#b44c47;background:#fff0ef}.tf-admin-user-row{cursor:pointer}
