.zl{vertical-align:middle;--zl-shine-duration:3.2s;--zl-ease-pop:cubic-bezier(.34, 1.56, .64, 1);display:inline-block;overflow:visible}.zl .zl-art{transform-box:view-box;transform-origin:50%;transition:transform .35s var(--zl-ease-pop)}.zl .zl-z,.zl .play,.zl .play-hole{transform-box:fill-box;transform-origin:50%}.zl .zl-orbit{stroke-dasharray:1;stroke-dashoffset:0}.zl .zl-shine{opacity:0;stroke-dasharray:.14 2;stroke-dashoffset:.14px}@keyframes zl-pop{0%{opacity:0;transform:scale(.6)}55%{opacity:1;transform:scale(1.06)}75%{transform:scale(.98)}to{opacity:1;transform:scale(1)}}@keyframes zl-draw{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}@keyframes zl-shine{0%{stroke-dashoffset:.14px}57%,to{stroke-dashoffset:-1px}}@keyframes zl-shine-front{0%,57%{stroke-dashoffset:.14px}to{stroke-dashoffset:-1px}}@keyframes zl-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.12)}}@keyframes zl-spin{0%{stroke-dashoffset:.45px}57%,to{stroke-dashoffset:-1px}}@keyframes zl-spin-front{0%,57%{stroke-dashoffset:.45px}to{stroke-dashoffset:-1px}}@keyframes zl-breathe{0%,to{transform:scale(1)}50%{transform:scale(.95)}}@keyframes zl-fade-in{0%{opacity:0}to{opacity:1}}.zl--loop .zl-shine,.zl--intro .zl-shine{opacity:.85}.zl--loop .zl-shine--back{animation:zl-shine var(--zl-shine-duration) linear infinite}.zl--loop .zl-shine--front{animation:zl-shine-front var(--zl-shine-duration) linear infinite}.zl--loop .play{animation:2.4s ease-in-out infinite zl-pulse}.zl--intro .zl-z{animation:zl-pop .8s var(--zl-ease-pop) both}.zl--intro .zl-orbit{animation:.9s cubic-bezier(.65,0,.35,1) .3s both zl-draw}.zl--intro .orbit-front .zl-orbit{animation-delay:.75s}.zl--intro .play{animation:zl-pop .5s var(--zl-ease-pop) .9s both, zl-pulse 2.4s ease-in-out 2s infinite}.zl--intro .zl-shine--back{animation:zl-fade-in .3s ease 1.6s both, zl-shine var(--zl-shine-duration) linear 1.6s infinite}.zl--intro .zl-shine--front{animation:zl-fade-in .3s ease 1.6s both, zl-shine-front var(--zl-shine-duration) linear 1.6s infinite}.zl--loader .zl-orbit{opacity:.22}.zl--loader .zl-shine{opacity:1;stroke:currentColor;stroke-width:15px;stroke-dasharray:.45 2}.zl--loader .orbit-back .zl-shine{color:#f5072b;animation:1.1s linear infinite zl-spin}.zl--loader .orbit-front .zl-shine{color:#ff2e63;animation:1.1s linear infinite zl-spin-front}.zl--loader .zl-z{animation:1.1s ease-in-out infinite zl-breathe}.zl--loader .play{animation:1.1s ease-in-out infinite zl-pulse}.zl:not(.zl--static):hover .zl-art{transform:rotate(-4deg)scale(1.03)}.zl--loop:hover,.zl--intro:hover{--zl-shine-duration:1.4s}@media (prefers-reduced-motion:reduce){.zl,.zl *{transition:none!important;animation:none!important}.zl .zl-shine{opacity:0!important}.zl .zl-orbit{opacity:1!important}.zl:hover .zl-art{transform:none!important}}:root{--zoodo-red:#f5072b;--zoodo-ink:#0b0b0d;--sider-bg:#0b0b0d;--surface-muted:#f4f4f6;--text-muted:#0000008c;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}:root[data-theme=dark]{--surface-muted:#1b1b1f;--text-muted:#ffffff8c}body{background:var(--zoodo-ink);margin:0}.full-loader{background:var(--zoodo-ink);color:#fff9;z-index:1000;flex-direction:column;justify-content:center;align-items:center;gap:18px;display:flex;position:fixed;inset:0}.full-loader__label{letter-spacing:.02em;font-size:13px}.content-loader{justify-content:center;align-items:center;min-height:320px;display:flex}.app-shell{min-height:100vh}.app-sider{border-inline-end:1px solid #ffffff0f;height:100vh;top:0;overflow:hidden;position:sticky!important}.sider-inner{background:var(--sider-bg);flex-direction:column;height:100%;min-height:100vh;display:flex}.sider-menu{flex:1;padding-bottom:24px;overflow-y:auto;border-inline-end:none!important}.sider-menu .ant-menu-item-group-title{letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:600;padding-top:16px!important}.sider-brand{color:#fff;align-items:center;gap:12px;min-height:72px;padding:18px 18px 14px;text-decoration:none;display:flex}.sider-brand--collapsed{justify-content:center;padding-inline:0}.sider-brand__text{flex-direction:column;min-width:0;line-height:1.2;display:flex}.sider-brand__name{letter-spacing:-.01em;color:#fff;white-space:nowrap;text-overflow:ellipsis;min-height:22px;font-size:18px;font-weight:800;overflow:hidden}.sider-brand__sub{text-transform:uppercase;letter-spacing:.1em;color:var(--zoodo-red);font-size:11px;font-weight:600}.app-header{z-index:20;border-bottom:1px solid #7f7f8c29;justify-content:space-between;align-items:center;gap:12px;line-height:normal;display:flex;position:sticky;top:0}.app-header__user{height:auto!important;padding:4px 8px!important}.app-header__identity{flex-direction:column;align-items:flex-start;line-height:1.2;display:flex}.app-content{min-width:0;padding:24px}.app-footer{text-align:center;color:var(--text-muted);padding:12px 24px 20px;font-size:12px}@media (max-width:991px){.app-content{padding:16px 12px}}@media (max-width:575px){.app-content{padding:12px 8px}.ant-page-header{padding-inline:4px!important}}.page-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:16px;display:flex}.filter-bar{margin-bottom:16px}.ant-table-wrapper .ant-table{font-size:13px}.cell-muted{color:var(--text-muted);font-size:12px}.thumb{object-fit:cover;background:#000;border-radius:8px;width:44px;height:78px;display:block}.thumb--empty{color:#ffffff80;justify-content:center;align-items:center;display:flex}.kpi-card .ant-card-body{padding:18px 20px}.kpi-card__icon{width:38px;height:38px;color:var(--zoodo-red);background:#f5072b1a;border-radius:10px;justify-content:center;align-items:center;font-size:18px;display:inline-flex}.kpi-card__value{letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin-top:12px;font-size:28px;font-weight:800;line-height:1.1}.kpi-card__label{color:var(--text-muted);margin-top:4px;font-size:13px}.chart-box{width:100%;height:300px}.video-player{aspect-ratio:9/16;background:#000;border-radius:14px;width:100%;max-width:360px;margin-inline:auto;position:relative;overflow:hidden}.video-player video{object-fit:contain;background:#000;width:100%;height:100%}.video-player__empty{color:#ffffffb3;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:16px;display:flex;position:absolute;inset:0}.image-upload__preview{background:var(--surface-muted);border:1px dashed #7f7f8c66;border-radius:12px;justify-content:center;align-items:center;display:flex;overflow:hidden}.markdown-preview{border:1px solid #7f7f8c40;border-radius:10px;min-height:360px;padding:12px 16px;line-height:1.6;overflow:auto}.markdown-preview img{max-width:100%}.settings-tabs .ant-tabs-nav{margin-bottom:20px}.settings-form{max-width:760px}.settings-section-title{margin:8px 0 16px!important}.color-swatch{vertical-align:middle;border:1px solid #7f7f8c4d;border-radius:5px;width:18px;height:18px;display:inline-block}pre.json-block{background:var(--surface-muted);white-space:pre-wrap;word-break:break-word;border-radius:8px;max-height:280px;margin:0;padding:10px 12px;font-size:12px;overflow:auto}.login-page{background:var(--zoodo-ink);box-sizing:border-box;justify-content:center;align-items:center;min-height:100vh;padding:32px 16px;display:flex}.login-page__inner{flex-direction:column;align-items:center;gap:28px;width:100%;max-width:420px;display:flex}.login-page__brand{text-align:center;flex-direction:column;align-items:center;display:flex}.login-page__name{letter-spacing:-.03em;color:#fff;margin:14px 0 0;font-size:34px;font-weight:800;line-height:1.1}.login-page__name-placeholder{height:51px}.login-page__tagline{text-transform:uppercase;letter-spacing:.16em;color:var(--zoodo-red);margin:6px 0 0;font-size:12px;font-weight:700}.login-card{box-sizing:border-box;border:1px solid;border-radius:18px;width:100%;padding:28px 28px 18px;box-shadow:0 24px 60px #0000008c}.login-card__title{margin-top:0!important;margin-bottom:18px!important}.login-card__link{margin-top:10px}.login-alert{margin-bottom:18px}@media (max-width:480px){.login-card{padding:22px 18px 14px}.login-page__name{font-size:28px}}
