:root{--brand:#df315f;--brand-hover:#c42650;--brand-soft:#df315f14;--brand-faint:#df315f0a;--brand-line:#df315f66;--ok:#16a34a;--ok-soft:#16a34a14;--ok-line:#16a34a66;--warn:#d97706;--warn-ink:#92400e;--warn-soft:#d977061a;--warn-line:#d9770666;--err:#dc2626;--err-soft:#dc262614;--ink:#111;--ink-2:#0009;--ink-3:#00000073;--ink-4:#00000052;--ink-5:#0003;--line:#00000014;--line-2:#0000001f;--line-3:#0000003d;--fill:#0000000a;--fill-2:#00000012;--surface:#f5f4f2;--surface-2:#faf9f7;--card:#fff;--fs-1:10px;--fs-2:11px;--fs-3:12px;--fs-4:13px;--fs-5:15px;--fs-6:20px;--fs-7:26px;--ls-label:.14em;--ls-ui:.1em;--ls-text:.06em;--ls-title:-.01em;--lh:1.5;--h-badge:20px;--h-sm:28px;--h-md:36px;--h-lg:44px;--h-bar:56px;--r-xs:4px;--r-sm:6px;--r-md:8px;--r-lg:12px;--r-xl:16px;--r-pill:999px;--shadow-card:0 6px 24px #00000014;--shadow-modal:0 24px 80px #00000038;--t:.15s}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--surface);height:100%;color:var(--ink);-webkit-font-smoothing:antialiased;font-family:PPNeueMontreal,system-ui,sans-serif;overflow:hidden}button,input,select,textarea{font-family:inherit}.btn-create,.btn-upload-top,.btn-generate,.login-btn,.acm-cancel,.acm-save,.up-btn,.el-topbar-btn,.el-content-bar button,.add-slide-btn,.filter-pill,.r-view,.r-publish-btn,.upload-btn,.slide-attach-btn,.el-ver-restore,.mode-btn{white-space:nowrap;font-size:var(--fs-1);text-transform:uppercase;letter-spacing:var(--ls-ui);cursor:pointer;transition:background var(--t),border-color var(--t),color var(--t);flex-shrink:0;justify-content:center;align-items:center;font-weight:700;line-height:1;text-decoration:none;display:inline-flex}.btn-generate,.login-btn{height:var(--h-lg);border-radius:var(--r-md);border:none;gap:8px;width:100%;padding:0 16px}.btn-create,.btn-upload-top,.acm-cancel,.acm-save,.up-btn,.el-topbar-btn,.el-content-bar button,.add-slide-btn{height:var(--h-md);border-radius:var(--r-md);gap:8px;padding:0 16px}.btn-create i,.btn-upload-top i,.up-btn i,.el-topbar-btn i,.add-slide-btn i,.btn-generate i{font-size:var(--fs-5)}.filter-pill,.r-view,.r-publish-btn,.upload-btn,.slide-attach-btn,.el-ver-restore,.mode-btn{height:var(--h-sm);border-radius:var(--r-sm);gap:6px;padding:0 12px}.filter-pill i,.r-view i,.r-publish-btn i,.upload-btn i,.slide-attach-btn i{font-size:var(--fs-4)}.mc-close,.el-close-btn,.tb-back,.r-ibtn,.sb-add-btn,.client-del,.up-x,.slide-rm{font-size:var(--fs-5);cursor:pointer;transition:background var(--t),border-color var(--t),color var(--t);flex-shrink:0;justify-content:center;align-items:center;padding:0;line-height:1;display:inline-flex}.mc-close,.el-close-btn,.tb-back{width:var(--h-md);height:var(--h-md);border-radius:var(--r-md);border:1px solid var(--line-2);background:var(--card);color:var(--ink-3)}.mc-close:hover,.el-close-btn:hover,.tb-back:hover{border-color:var(--brand);color:var(--brand)}.r-ibtn,.sb-add-btn,.client-del,.up-x,.slide-rm{width:var(--h-sm);height:var(--h-sm);border-radius:var(--r-sm);color:var(--ink-4);background:0 0;border:none}.r-ibtn:hover{background:var(--fill-2);color:var(--ink)}.r-ibtn.del:hover,.client-del:hover,.up-x:hover,.slide-rm:hover{background:var(--err-soft);color:var(--err)}.r-ibtn.unpub:hover{background:var(--warn-soft);color:var(--warn-ink)}.btn-create,.acm-save:not([disabled]),.up-btn.primary,.cc-save,.btn-generate:not([disabled]),.login-btn{background:var(--brand);color:#fff;border:1px solid var(--brand)}.btn-create:hover,.acm-save:not([disabled]):hover,.up-btn.primary:hover,.cc-save:hover,.btn-generate:not([disabled]):hover,.login-btn:hover{background:var(--brand-hover);border-color:var(--brand-hover);color:#fff}.btn-upload-top,.acm-cancel,.up-btn,.el-topbar-btn,.filter-pill{background:var(--card);color:var(--ink-3);border:1px solid var(--line-2)}.btn-upload-top,.up-btn{color:var(--ink)}.btn-upload-top:hover,.up-btn:hover{border-color:var(--brand);color:var(--brand)}.acm-cancel:hover,.el-topbar-btn:hover,.filter-pill:hover{border-color:var(--line-3);color:var(--ink)}.btn-create:disabled,.acm-save[disabled],.btn-generate[disabled]{background:var(--fill-2);color:var(--ink-4);cursor:not-allowed;border:1px solid #0000}.upload-btn,.slide-attach-btn{border:1px dashed var(--line-3);color:var(--ink-4);background:0 0}.add-slide-btn{border:1.5px dashed var(--line-3);width:100%;color:var(--ink-4);background:0 0}.upload-btn:hover,.slide-attach-btn:hover,.add-slide-btn:hover{border-color:var(--brand-line);color:var(--brand);border-style:solid}.mc-select,.mc-input,.acm-input,.login-input{width:100%;height:var(--h-md);background:var(--card);border:1px solid var(--line-2);border-radius:var(--r-md);font-size:var(--fs-4);color:var(--ink);appearance:none;transition:border-color var(--t),background var(--t);outline:none;padding:0 12px;font-weight:500}.login-input{height:var(--h-lg);background:var(--surface);padding:0 16px}.mc-select{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%23999' d='M5 6L0 0h10z'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:32px}.acm-ta,textarea.chat-ta,textarea.slide-ta{background:var(--card);border:1px solid var(--line-2);border-radius:var(--r-md);width:100%;font-size:var(--fs-4);color:var(--ink);resize:none;transition:border-color var(--t);outline:none;padding:11px 12px;line-height:20px}.mc-select:focus,.mc-input:focus,.acm-input:focus,.acm-ta:focus,textarea.chat-ta:focus,textarea.slide-ta:focus,.sort-sel:focus{border-color:var(--brand)}.login-input:focus{border-color:var(--brand);background:var(--card)}::placeholder{color:var(--ink-4);font-weight:400}.sb-section,.sb-clients-label,.mc-label,.acm-label,.login-label,.login-tag,.stat-lbl,.up-stat span,.el-preview-loading span{font-size:var(--fs-1);text-transform:uppercase;letter-spacing:var(--ls-label);color:var(--ink-4);font-weight:700;line-height:1}.mc-label,.acm-label,.login-label{margin-bottom:8px;display:block}.opt{text-transform:none;letter-spacing:0;color:var(--ink-4);font-weight:400}.r-type,.r-status,.r-chip,.el-badge,.cc,.sb-head-label{height:var(--h-badge);border-radius:var(--r-pill);font-size:var(--fs-1);text-transform:uppercase;letter-spacing:var(--ls-ui);white-space:nowrap;background:var(--fill);color:var(--ink-4);flex-shrink:0;justify-content:center;align-items:center;gap:4px;padding:0 8px;font-weight:700;line-height:1;display:inline-flex}.r-dot{background:currentColor;border-radius:50%;width:6px;height:6px;display:inline-block}.mc-head-title,.acm-title,.el-ver-title,.et,.chat-welcome-title{font-size:var(--fs-3);text-transform:uppercase;letter-spacing:var(--ls-ui);color:var(--ink);font-weight:700;line-height:1.25}.ei,.chat-welcome-icon,.up-drop-icon{border-radius:var(--r-lg);width:48px;height:48px;font-size:var(--fs-6);justify-content:center;align-items:center;margin:0 auto 16px;display:flex}.ei{background:var(--fill);color:var(--ink-5)}.chat-welcome-icon,.up-drop-icon{background:var(--brand-soft);color:var(--brand)}.el-ver-icon,.ca{border-radius:var(--r-md);width:28px;height:28px;font-size:var(--fs-4);flex-shrink:0;justify-content:center;align-items:center;display:flex}.spin{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;flex-shrink:0;width:12px;height:12px;animation:.7s linear infinite spin;display:inline-block}.spin.dark{border-color:var(--line);border-top-color:var(--ink)}.spin.lg{border-width:2px;border-color:var(--line-2);border-top-color:var(--ink-4);width:24px;height:24px}.btn-busy{align-items:center;gap:8px;display:inline-flex}@keyframes spin{to{transform:rotate(360deg)}}#app{height:100%;display:flex;overflow:hidden}#sidebar{background:var(--card);border-right:1px solid var(--line);flex-direction:column;flex-shrink:0;width:224px;height:100%;display:flex;overflow:hidden}.sb-head{height:var(--h-bar);border-bottom:1px solid var(--line);flex-shrink:0;align-items:center;gap:8px;padding:0 16px;display:flex}.sb-head img{height:20px}.sb-section{padding:20px 16px 8px}.sb-section-nav{flex-shrink:0;padding:8px}.sb-nav-item,.sb-foot-btn,.client-item{border-radius:var(--r-md);cursor:pointer;-webkit-user-select:none;user-select:none;width:100%;font-size:var(--fs-2);text-transform:uppercase;letter-spacing:var(--ls-text);color:var(--ink-3);transition:background var(--t),color var(--t);align-items:center;font-weight:700;display:flex;position:relative}.sb-nav-item,.sb-foot-btn{height:var(--h-md);background:0 0;border:none;gap:8px;margin-bottom:2px;padding:0 8px}.sb-nav-item i,.sb-foot-btn i{font-size:var(--fs-5);text-align:center;flex-shrink:0;width:20px}.sb-nav-item:hover,.sb-foot-btn:hover,.client-item:hover{background:var(--fill);color:var(--ink)}.sb-nav-item.active,.client-item.active,.sb-foot-btn.active{background:var(--brand-faint);color:var(--brand)}.sb-nav-item.active:before,.client-item.active:before{content:"";background:var(--brand);border-radius:2px;width:2px;position:absolute;top:8px;bottom:8px;left:0}.sb-nav-divider,.sb-divider{background:var(--line);height:1px;margin:8px}.sb-clients-hd{flex-shrink:0;align-items:center;padding:12px 8px 8px 16px;display:flex}.sb-clients-label{flex:1}.sb-add-btn{border:1px solid var(--line-2)}.sb-add-btn:hover{border-color:var(--brand);color:var(--brand);background:var(--brand-faint)}.client-list{flex:1;padding:0 8px 12px;overflow-y:auto}.client-list::-webkit-scrollbar{width:4px}.client-list::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:2px}.client-item{height:var(--h-lg);gap:8px;margin-bottom:2px;padding:0 8px}.ca{font-size:var(--fs-1);letter-spacing:0;font-weight:700}.cn{font-size:var(--fs-2);color:var(--ink);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.client-item.active .cn{color:var(--brand)}.cc{min-width:var(--h-badge);padding:0 6px}.client-item.active .cc{background:var(--brand-soft);color:var(--brand)}.client-del{opacity:0;position:absolute;right:4px}.client-arch{opacity:0;width:var(--h-sm);height:var(--h-sm);color:var(--ink-4);border-radius:var(--r-sm);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex;position:absolute;right:32px}.client-arch:hover{background:var(--surface);color:var(--ink)}.client-item:hover .client-del,.client-item:hover .client-arch{opacity:1}.client-item:hover .cc{opacity:0}.sb-foot{flex-shrink:0;padding:0 8px 8px}.sb-foot-btn.logout:hover{background:var(--err-soft);color:var(--err)}#main{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}#topbar{height:var(--h-bar);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f5f4f2f2;flex-shrink:0;align-items:center;gap:12px;padding:0 24px;display:flex}#tb-title{font-size:var(--fs-5);text-transform:uppercase;letter-spacing:var(--ls-title);color:var(--ink);font-weight:700;line-height:1}.tb-sep{background:var(--line-2);width:1px;height:16px}#tb-sub{font-size:var(--fs-1);text-transform:uppercase;letter-spacing:var(--ls-label);color:var(--ink-4);font-weight:700}#tb-title,#tb-sub{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}@media (max-width:900px){#tb-sub,.tb-sep{display:none}}.tb-actions{align-items:center;gap:8px;margin-left:auto;display:flex}#content{flex:1;padding:24px 24px 64px;overflow-y:auto}#content::-webkit-scrollbar{width:4px}#content::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:2px}.stats-row{flex-wrap:wrap;gap:12px;margin-bottom:24px;display:flex}.stat-chip{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);min-width:112px;padding:12px 16px}.stat-chip.wide{min-width:160px}.stat-num{font-size:var(--fs-6);color:var(--ink);align-items:center;height:24px;font-weight:700;line-height:24px;display:flex}.stat-num.sm{font-size:var(--fs-5)}.stat-num.warn{color:var(--warn)}.stat-num.brand{color:var(--brand)}.stat-lbl{margin-top:8px}.filter-bar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;display:flex}.filter-pill.active{border-color:var(--brand);color:var(--brand);background:var(--brand-faint)}.filter-spacer{margin-left:auto}.sort-sel{height:var(--h-sm);background:var(--card) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%23999' d='M5 6L0 0h10z'/%3E%3C/svg%3E") no-repeat right 12px center;border:1px solid var(--line-2);border-radius:var(--r-sm);font-size:var(--fs-1);text-transform:uppercase;letter-spacing:var(--ls-ui);color:var(--ink-3);cursor:pointer;appearance:none;transition:border-color var(--t);outline:none;padding:0 32px 0 12px;font-weight:700}.reports-grid{grid-template-columns:repeat(auto-fill,minmax(256px,1fr));gap:16px;display:grid}.r-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);flex-direction:column;transition:box-shadow .2s,transform .2s;animation:.3s both fadeUp;display:flex;overflow:hidden}.r-card:hover{box-shadow:var(--shadow-card);transform:translateY(-2px)}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.r-accent,.r-gen-bar{flex-shrink:0;height:4px}.r-body{flex:1;padding:16px}.r-hdr{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.rt-report{background:var(--brand-soft);color:var(--brand)}.r-date{font-size:var(--fs-1);color:var(--ink-4);font-weight:700}.r-title{font-size:var(--fs-4);text-transform:uppercase;letter-spacing:var(--ls-title);color:var(--ink);margin-bottom:4px;font-weight:700;line-height:1.25}.r-period{font-size:var(--fs-1);text-transform:uppercase;letter-spacing:var(--ls-ui);color:var(--ink-4);font-weight:700;line-height:1.5}.r-meta{flex-wrap:wrap;gap:4px;margin-top:12px;display:flex}.r-status{margin:0}.rs-live{background:var(--ok-soft);color:var(--ok)}.rs-draft{background:var(--warn-soft);color:var(--warn)}.r-chip.warn{background:var(--warn-soft);color:var(--warn-ink)}button.r-chip{cursor:pointer;border:0;font-family:inherit}button.r-chip:hover{filter:brightness(.97)}#font-modal{flex-direction:column;max-width:560px;max-height:calc(100vh - 48px);display:flex}#font-modal .acm-body{overflow:auto}.fm-sec{font-size:var(--fs-2);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3,#888);margin:4px 0 6px;font-weight:700}.fm-row{border:1px solid var(--line);border-radius:var(--r-sm);font-size:var(--fs-3);align-items:center;gap:10px;margin-bottom:6px;padding:8px 10px;display:flex}.fm-row .fm-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600;overflow:hidden}.fm-row .fm-sub{font-size:var(--fs-2);color:var(--ink-3,#888);white-space:nowrap}.fm-row.miss{border-color:var(--warn-line);background:var(--warn-soft)}.fm-row.miss .fm-sub{white-space:normal}.fm-row button{height:var(--h-sm);border:1px solid var(--line-2);border-radius:var(--r-sm);background:var(--card);font-size:var(--fs-2);cursor:pointer;padding:0 10px;font-weight:600}.fm-row button:hover{border-color:var(--err);color:var(--err)}.fm-empty{font-size:var(--fs-3);color:var(--ink-3,#888);padding:6px 0 10px}.fm-drop{border:1.5px dashed var(--line-2);border-radius:var(--r-md);text-align:center;font-size:var(--fs-3);color:var(--ink-2,#555);margin-bottom:14px;padding:16px}.fm-drop.over{border-color:var(--brand);background:var(--brand-faint)}.el-topbar-btn.warn{border-color:var(--warn-line);color:var(--warn);background:var(--warn-soft)}.r-footer,.r-gen-footer{height:var(--h-lg);border-top:1px solid var(--line);flex-shrink:0;align-items:center;gap:4px;display:flex}.r-footer{padding:0 8px}.r-view{color:var(--ink-3);background:0 0;border:none;margin-right:auto}.r-view:hover{color:var(--brand);background:var(--brand-soft)}.r-publish-btn{border:1px solid var(--ok-line);background:var(--ok-soft);color:var(--ok);margin-right:auto}.r-publish-btn:hover{border-color:var(--ok)}.r-publish-btn:disabled{opacity:.6;cursor:default}.r-ibtn.confirm-del,.r-ibtn.confirm-del:hover{background:var(--err);color:#fff}.skel{border-radius:var(--r-lg);background:linear-gradient(90deg,#f0efed 25%,#e8e7e5 50%,#f0efed 75%) 0 0/200% 100%;height:184px;animation:1.3s infinite shimmer}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.r-card.generating{pointer-events:none}.r-gen-bar{background:linear-gradient(90deg,var(--brand) 0%,#ff8fab 45%,var(--brand) 100%);background-size:200% 100%;animation:1.5s ease-in-out infinite genSlide}@keyframes genSlide{0%{background-position:200% 0}to{background-position:-200% 0}}.r-gen-status{height:var(--h-badge);font-size:var(--fs-1);text-transform:uppercase;letter-spacing:var(--ls-ui);color:var(--ink-4);align-items:center;gap:8px;margin-top:12px;font-weight:700;display:inline-flex}.r-gen-spinner{border:2px solid var(--line);border-top-color:var(--brand);border-radius:50%;flex-shrink:0;width:10px;height:10px;animation:.8s linear infinite spin}.r-gen-footer{font-size:var(--fs-1);text-transform:uppercase;letter-spacing:var(--ls-ui);color:var(--ink-4);gap:8px;padding:0 16px;font-weight:700}.r-gen-dot{background:var(--brand);border-radius:50%;flex-shrink:0;width:6px;height:6px;animation:1.2s ease-in-out infinite genPulse}@keyframes genPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}.empty-state{text-align:center;padding:80px 24px}.et{color:var(--ink-4);margin-bottom:8px}.es{font-size:var(--fs-3);color:var(--ink-4);line-height:var(--lh);margin-bottom:24px}.es-actions{justify-content:center;gap:8px;display:flex}#create-overlay,#add-client-overlay,#dup-overlay,#acct-overlay,#user-overlay,#font-overlay,#det-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000073;justify-content:center;align-items:center;padding:24px;display:none;position:fixed;inset:0}#create-overlay{z-index:200}#add-client-overlay{z-index:400}#dup-overlay{z-index:450}#acct-overlay,#user-overlay,#font-overlay,#det-overlay{z-index:500}#create-overlay.open,#add-client-overlay.open,#dup-overlay.open,#acct-overlay.open,#user-overlay.open,#font-overlay.open,#det-overlay.open{display:flex}#create-modal,#add-client-modal,#dup-modal,#acct-modal,#user-modal,#font-modal,#det-modal{background:var(--card);border-radius:var(--r-xl);width:100%;box-shadow:var(--shadow-modal);overflow:hidden}#create-modal{max-width:960px;height:min(88vh,704px);display:flex}#add-client-modal,#dup-modal,#user-modal{max-width:480px}#acct-modal{max-width:520px}.acct-warn{border-radius:var(--r-md);background:var(--warn-soft);color:var(--warn-ink);font-size:var(--fs-2);cursor:pointer;margin:0 12px 8px;padding:8px 10px;line-height:1.4;display:none}.acct-warn.on{display:block}.r-search{height:var(--h-sm);background:var(--card);border:1px solid var(--line-2);border-radius:var(--r-sm);color:var(--ink-4);align-items:center;gap:6px;margin-right:8px;padding:0 10px;display:inline-flex}.r-search:focus-within{border-color:var(--brand)}.r-search input{font:inherit;font-size:var(--fs-3);color:var(--ink);background:0 0;border:0;outline:0;width:180px}#cf-overlay{z-index:3000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000073;justify-content:center;align-items:center;padding:24px;display:none;position:fixed;inset:0}#cf-overlay.open{display:flex}#cf-box{background:var(--card);border-radius:var(--r-xl);width:100%;max-width:420px;box-shadow:var(--shadow-modal);padding:24px}#cf-msg{font-size:var(--fs-4);line-height:var(--lh);color:var(--ink);white-space:pre-line;margin-bottom:20px}#cf-box .acm-footer{border-top:0;margin:0;padding:0}#cf-ok.danger{background:var(--err);border-color:var(--err);color:#fff}.bn-list{gap:12px;display:grid}.bn-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}.bn-head{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:12px 16px;display:flex}.bn-head b{font-size:var(--fs-4)}.bn-head span{font-size:var(--fs-2);color:var(--ink-3)}.bn-head .sp{flex:1}.bn-row{border-bottom:1px solid var(--line);font-size:var(--fs-3);align-items:center;gap:12px;padding:10px 16px;display:flex}.bn-row:last-child{border-bottom:0}.bn-row .t{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.bn-row .m{color:var(--ink-3);font-size:var(--fs-2);white-space:nowrap}.bn-empty{text-align:center;color:var(--ink-3);font-size:var(--fs-3);background:var(--card);border:1px dashed var(--line-2);border-radius:var(--r-lg);padding:40px 16px}.toast-undo{color:#fff;font:inherit;cursor:pointer;background:0 0;border:0;margin-left:12px;font-weight:700;text-decoration:underline}#edit-lightbox.el-readonly .el-topbar-btn{display:none!important}.r-client{font-size:var(--fs-2);letter-spacing:var(--ls-ui);text-transform:uppercase;color:var(--ink-3);margin-bottom:4px;font-weight:700}.ls-step[hidden]{display:none!important}.ls-text{font-size:var(--fs-3);color:var(--ink-3);line-height:var(--lh);text-align:center;margin-bottom:16px}.ls-text b{color:var(--ink)}.ls-link{color:var(--ink-3);font-size:var(--fs-2);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;margin:12px auto 0;text-decoration:underline;display:block}.ls-link:hover{color:var(--brand)}.ls-cmd{font-family:ui-monospace,Menlo,monospace;font-size:var(--fs-3);text-align:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);-webkit-user-select:all;user-select:all;margin-bottom:16px;padding:10px}.ls-code-input{text-align:center;letter-spacing:.3em;font-variant-numeric:tabular-nums;font-size:22px!important}.tfa-qr{border:1px solid var(--line);border-radius:var(--r-md);background:#fff;width:184px;height:184px;margin:0 auto 12px;padding:8px}.tfa-qr svg{width:100%;height:100%;display:block}.tfa-secret{font-family:ui-monospace,Menlo,monospace;font-size:var(--fs-3);text-align:center;letter-spacing:.06em;color:var(--ink-2);word-break:break-all;-webkit-user-select:all;user-select:all;margin-bottom:16px}.ac-sec{border-bottom:1px solid var(--line);padding-bottom:20px}.ac-sec:last-child{border-bottom:0;padding-bottom:0}.ac-h{font-size:var(--fs-4);align-items:center;gap:8px;margin-bottom:4px;font-weight:700;display:flex}.ac-p{font-size:var(--fs-3);color:var(--ink-3);line-height:var(--lh);margin-bottom:12px}.ac-grid{gap:10px;display:grid}.ac-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.ac-btn{height:var(--h-sm);border:1px solid var(--line-2);border-radius:var(--r-md);background:var(--card);color:var(--ink);font-size:var(--fs-2);cursor:pointer;align-items:center;gap:6px;padding:0 12px;font-weight:600;display:inline-flex}.ac-btn:hover{border-color:var(--brand);color:var(--brand)}.ac-btn.danger:hover{border-color:var(--err);color:var(--err)}.ac-btn.primary{background:var(--brand);border-color:var(--brand);color:#fff}.ac-msg{font-size:var(--fs-2);min-height:14px;color:var(--err)}.ac-msg.ok{color:var(--ok,#15803d)}.badge{border-radius:var(--r-pill);height:20px;font-size:var(--fs-1);letter-spacing:var(--ls-ui);text-transform:uppercase;white-space:nowrap;align-items:center;gap:4px;padding:0 8px;font-weight:700;display:inline-flex}.badge.ok{color:#15803d;background:#15803d1a}.badge.warn{background:var(--warn-soft);color:var(--warn-ink)}.badge.bad{background:var(--err-soft);color:var(--err)}.badge.mute{background:var(--surface);color:var(--ink-3)}.ac-sessions{font-size:var(--fs-3);gap:6px;display:grid}.ac-sessions div{color:var(--ink-2);justify-content:space-between;gap:12px;display:flex}.ac-sessions span:last-child{color:var(--ink-3);white-space:nowrap}.us-head{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:16px;display:flex}.us-title{font-size:var(--fs-5);font-weight:700}.us-sub{font-size:var(--fs-3);color:var(--ink-3);margin-top:4px}.us-table{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);overflow:auto}.us-table table{border-collapse:collapse;width:100%;font-size:var(--fs-3)}.us-table th{text-align:left;font-size:var(--fs-1);letter-spacing:var(--ls-ui);text-transform:uppercase;color:var(--ink-3);border-bottom:1px solid var(--line);white-space:nowrap;padding:10px 12px;font-weight:700}.us-table td{border-bottom:1px solid var(--line);vertical-align:middle;padding:10px 12px}.us-table tr:last-child td{border-bottom:0}.us-name b{font-weight:600;display:block}.us-name span{color:var(--ink-3);font-size:var(--fs-2)}.us-table select{border:1px solid var(--line-2);border-radius:var(--r-sm);background:var(--card);height:28px;font-size:var(--fs-2);padding:0 6px}.us-acts{justify-content:flex-end;gap:4px;display:flex}.us-acts button{border-radius:var(--r-sm);width:28px;height:28px;color:var(--ink-3);cursor:pointer;font-size:var(--fs-5);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.us-acts button:hover{border-color:var(--line-2);color:var(--brand)}.us-acts button.danger:hover{color:var(--err)}.us-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);margin-top:16px;padding:16px}.us-toggle{font-size:var(--fs-4);cursor:pointer;align-items:center;gap:10px;font-weight:600;display:flex}.us-note{font-size:var(--fs-2);color:var(--ink-3);margin:6px 0 0 26px}.us-log{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);max-height:420px;margin-top:12px;overflow:auto}.us-log table{border-collapse:collapse;width:100%;font-size:var(--fs-2)}.us-log td{border-bottom:1px solid var(--line);vertical-align:top;padding:7px 12px}.us-log td:first-child{white-space:nowrap;color:var(--ink-3);font-variant-numeric:tabular-nums}.us-log .ev{white-space:nowrap;font-weight:600}.us-log td:nth-child(3){white-space:nowrap}.us-log .ev.bad{color:var(--err)}.tmp-pass{letter-spacing:.06em;text-align:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);-webkit-user-select:all;user-select:all;padding:14px;font-family:ui-monospace,Menlo,monospace;font-size:20px}.acm-head,.mc-head,.mc-chat-head{height:var(--h-bar);border-bottom:1px solid var(--line);flex-shrink:0;align-items:center;gap:12px;padding:0 24px;display:flex}.acm-head,.mc-chat-head{justify-content:space-between}.mc-head{flex-direction:column;justify-content:center;align-items:flex-start;gap:4px}.mc-head-sub{font-size:var(--fs-2);color:var(--ink-4);line-height:1}.acm-body{flex-direction:column;gap:20px;max-height:60vh;padding:24px;display:flex;overflow-y:auto}.acm-footer,.mc-footer{border-top:1px solid var(--line);flex-shrink:0;padding:16px 24px}.acm-footer{justify-content:flex-end;align-items:center;gap:8px;display:flex}.acm-err{font-size:var(--fs-2);color:var(--err);text-align:left;flex:1}.acm-ta{min-height:80px}.acm-upload-zone{border:1.5px dashed var(--line-2);border-radius:var(--r-lg);background:var(--surface-2);opacity:.6;align-items:center;gap:12px;padding:12px 16px;display:flex}.acm-upload-zone i{font-size:var(--fs-6);color:var(--ink-5);text-align:center;flex-shrink:0;width:28px}.acm-uz-info{flex:1;min-width:0}.acm-uz-title{font-size:var(--fs-2);color:var(--ink-3);font-weight:700}.acm-uz-sub{font-size:var(--fs-1);color:var(--ink-4);margin-top:4px}.dup-row{grid-template-columns:3fr 2fr;gap:8px;display:grid}.dup-hint{font-size:var(--fs-2);color:var(--ink-3);line-height:var(--lh)}.mc-config{border-right:1px solid var(--line);background:var(--surface-2);flex-direction:column;flex-shrink:0;width:280px;display:flex;overflow-y:auto}.mc-config::-webkit-scrollbar{width:4px}.mc-config::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:2px}.mc-body{flex-direction:column;flex:1;gap:20px;padding:20px 24px;display:flex}.mc-input{font-weight:400}.type-opts{flex-direction:column;gap:8px;display:flex}.type-opt{height:var(--h-md);border-radius:var(--r-md);border:1px solid var(--line-2);background:var(--card);cursor:pointer;transition:all var(--t);font-size:var(--fs-2);text-transform:uppercase;letter-spacing:var(--ls-text);color:var(--ink-3);align-items:center;gap:8px;padding:0 12px;font-weight:700;display:flex}.type-opt:hover{color:var(--brand);background:var(--brand-faint);border-color:#df315f4d}.type-opt.sel{border-color:var(--brand);color:var(--brand);background:var(--brand-faint)}.type-radio{border:2px solid;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;display:flex}.type-opt.sel .type-radio:after{content:"";background:var(--brand);border-radius:50%;width:6px;height:6px;display:block}.period-row{grid-template-columns:3fr 2fr;gap:8px;display:grid}.proto-note{font-size:var(--fs-1);color:var(--ink-4);text-align:center;justify-content:center;align-items:center;gap:4px;min-height:28px;margin-top:8px;line-height:14px;display:flex}.proto-note i{font-size:var(--fs-3);flex-shrink:0}.mc-chat{flex-direction:column;flex:1;min-width:0;display:flex}.mode-toggle{height:var(--h-md);background:var(--fill);border-radius:var(--r-md);align-items:center;gap:4px;padding:4px;display:flex}.mode-btn{color:var(--ink-3);border-radius:var(--r-xs);background:0 0;border:none}.mode-btn:hover{color:var(--ink)}.mode-btn.active{background:var(--card);color:var(--ink);box-shadow:0 1px 3px #0000001a}.up-panel::-webkit-scrollbar{width:4px}.up-panel::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:2px}.blank-card{cursor:default}.up-panel{flex-direction:column;flex:1;gap:16px;min-height:0;padding:24px;display:none;overflow-y:auto}.up-src{gap:8px;display:flex}.up-src-opt{border:1px solid var(--line-2);border-radius:var(--r-lg);cursor:pointer;background:var(--card);text-align:left;transition:border-color var(--t),background var(--t);flex:1;padding:12px 16px}.up-src-opt:hover{border-color:var(--line-3)}.up-src-opt.sel{border-color:var(--brand);background:var(--brand-faint)}.up-src-t{font-size:var(--fs-3);color:var(--ink);align-items:center;gap:8px;font-weight:700;display:flex}.up-src-d{font-size:var(--fs-2);color:var(--ink-3);line-height:var(--lh);margin-top:4px}.up-drop{border:1.5px dashed var(--line-3);border-radius:var(--r-lg);text-align:center;background:var(--surface-2);transition:border-color var(--t),background var(--t);padding:32px 24px}.up-drop.over{border-color:var(--brand);background:var(--brand-faint)}.up-drop-t{font-size:var(--fs-4);color:var(--ink);font-weight:700}.up-drop-s{font-size:var(--fs-3);color:var(--ink-3);line-height:var(--lh);margin-top:4px}.up-drop-btns{justify-content:center;gap:8px;margin-top:16px;display:flex}.up-file{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface-2);align-items:center;gap:12px;padding:12px 8px 12px 16px;display:flex}.up-file i.big{font-size:var(--fs-6);color:var(--brand);flex-shrink:0}.up-file-info{flex:1;min-width:0}.up-file-n{font-size:var(--fs-3);color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-weight:700;overflow:hidden}.up-file-m{font-size:var(--fs-2);color:var(--ink-3);margin-top:4px}.up-opts{flex-direction:column;gap:12px;margin-top:16px;display:flex}.up-check{font-size:var(--fs-3);color:var(--ink);line-height:var(--lh);cursor:pointer;align-items:flex-start;gap:8px;display:flex}.up-check input{width:16px;height:16px;accent-color:var(--brand);flex-shrink:0;margin-top:1px}.up-check small{font-size:var(--fs-2);color:var(--ink-3);display:block}.up-prog{flex-direction:column;gap:8px;display:none}.up-bar{border-radius:var(--r-pill);background:var(--fill-2);height:6px;overflow:hidden}.up-bar i{background:var(--brand);border-radius:var(--r-pill);width:0;height:100%;transition:width .2s;display:block}.up-prog-t{font-size:var(--fs-2);color:var(--ink-2);font-weight:600}.up-err,.up-note{font-size:var(--fs-3);line-height:var(--lh);border-radius:var(--r-md);padding:12px}.up-err{color:var(--err);background:var(--err-soft);display:none}.up-note{background:var(--warn-soft);color:var(--warn-ink)}.up-note.info{background:var(--fill);color:var(--ink-2)}.up-note ul{margin:4px 0 0 16px}.up-note code,.up-howto code{font-size:var(--fs-2);background:var(--fill);border-radius:var(--r-xs);padding:2px 4px}.up-result{flex-direction:column;gap:12px;display:none}.up-ok{font-size:var(--fs-4);color:var(--ok);align-items:center;gap:8px;font-weight:700;display:flex}.up-ok i{font-size:var(--fs-6)}.up-stats{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;display:grid}.up-stat{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-md);padding:12px}.up-stat b{font-size:var(--fs-5);color:var(--ink);margin-bottom:4px;line-height:20px;display:block}.up-actions{gap:8px;display:flex}.up-howto{font-size:var(--fs-2);color:var(--ink-3);line-height:var(--lh);border-top:1px solid var(--line);padding-top:16px}.up-howto b{color:var(--ink-2)}.up-howto ol{margin:4px 0 0 16px}#edit-lightbox{z-index:300;background:var(--surface);flex-direction:column;display:none;position:fixed;inset:0}#edit-lightbox.open{display:flex}.el-topbar{height:var(--h-bar);background:var(--card);border-bottom:1px solid var(--line);flex-shrink:0;align-items:center;gap:8px;padding:0 16px;display:flex}.el-logo{opacity:.65;height:16px}.el-sep{background:var(--line-2);flex-shrink:0;width:1px;height:16px;margin:0 4px}.el-title{font-size:var(--fs-4);text-transform:uppercase;letter-spacing:var(--ls-title);color:var(--ink);white-space:nowrap;text-overflow:ellipsis;flex:1;font-weight:700;overflow:hidden}.el-badge.draft{background:var(--warn-soft);color:var(--warn)}.el-badge.published{background:var(--ok-soft);color:var(--ok)}.el-live{flex-shrink:0;align-items:center;gap:4px;display:flex}.el-live:empty{display:none}.lv-av{width:26px;height:26px;font-size:var(--fs-1);letter-spacing:var(--ls-ui);color:#fff;text-transform:uppercase;box-shadow:0 0 0 2px var(--card);cursor:default;background:#6b7280;border-radius:50%;justify-content:center;align-items:center;font-weight:700;display:inline-flex;position:relative}.lv-av.editing{background:#df315f}.lv-av.editing:after{content:"";width:9px;height:9px;box-shadow:0 0 0 2px var(--card);background:#16a34a;border-radius:50%;position:absolute;bottom:-1px;right:-1px}.el-badge.el-lockmsg{background:var(--warn-soft);color:var(--warn-ink)}.el-badge[hidden],.el-topbar-btn[hidden]{display:none!important}.sns-home{cursor:pointer;border-radius:var(--r-sm);align-items:center;display:inline-flex}:is(.el-topbar-btn,.btn-create,.btn-upload-top,.sb-foot-btn,.sb-nav-item,.r-view,.r-publish-btn,.cc-cancel,.cc-save,.acm-save,.acm-cancel,.ctx-t,.filter-pill,.up-btn)>i.ph{position:relative;top:.5px}.sns-home:hover img{opacity:.8}#det-modal{max-width:480px}.det-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.el-title-btn{cursor:pointer;text-align:left;background:0 0;border:0;flex:1;align-items:center;gap:8px;min-width:0;padding:0;display:flex}.el-title-btn .el-title{flex:initial}.el-title-btn .ph-pencil-simple{font-size:var(--fs-4);color:var(--ink-3);opacity:0;transition:opacity .15s}.el-title-btn:hover .ph-pencil-simple,.el-title-btn:focus-visible .ph-pencil-simple{opacity:1}.el-title-btn .el-period{font-size:var(--fs-2);color:var(--ink-3);white-space:nowrap;font-weight:600}.el-cmt-drawer{background:var(--card);border-left:1px solid var(--line);z-index:31;flex-direction:column;width:360px;max-width:100%;transition:transform .24s cubic-bezier(.4,0,.2,1);display:flex;position:absolute;top:0;bottom:0;right:0;transform:translate(105%);box-shadow:-12px 0 40px #0000001f}.el-cmt-drawer.open{transform:translate(0)}.cm-tools{border-bottom:1px solid var(--line);font-size:var(--fs-2);color:var(--ink-2);align-items:center;gap:8px;padding:10px 16px;display:flex}.cm-tools label{cursor:pointer;align-items:center;gap:6px;display:flex}.cm-tools .cm-add{margin-left:auto}.cm-list{flex-direction:column;flex:1;gap:10px;padding:12px 16px;display:flex;overflow:auto}.cm-empty{font-size:var(--fs-3);color:var(--ink-3);text-align:center;padding:24px 8px}.cm{border:1px solid var(--line);border-radius:var(--r-md);background:var(--card);padding:10px 12px}.cm.done{background:var(--surface);opacity:.8}.cm-h{align-items:center;gap:8px;margin-bottom:6px;display:flex}.cm-h .lv-av{width:24px;height:24px;box-shadow:none;flex-shrink:0}.cm-who{font-size:var(--fs-3);color:var(--ink);font-weight:700}.cm-when{font-size:var(--fs-2);color:var(--ink-3);white-space:nowrap;margin-left:auto}.cm-body{font-size:var(--fs-3);color:var(--ink);white-space:pre-wrap;word-break:break-word;line-height:1.45}.cm-body .mention{color:var(--brand);font-weight:700}.cm-f{align-items:center;gap:6px;margin-top:8px;display:flex}.cm-f .cm-page{font-size:var(--fs-2);color:var(--ink-3);margin-right:auto}.cm-act{border:1px solid var(--line-2);border-radius:var(--r-sm);background:var(--card);width:28px;height:28px;color:var(--ink-2);cursor:pointer;font-size:var(--fs-4);justify-content:center;align-items:center;display:inline-flex}.cm-act.ok:hover{border-color:var(--ok);color:var(--ok)}.cm-act.no:hover,.cm-act.del:hover{border-color:var(--err);color:var(--err)}.cm-act.re:hover{border-color:var(--brand);color:var(--brand)}.cm-sec{font-size:var(--fs-1);letter-spacing:var(--ls-ui);text-transform:uppercase;color:var(--ink-3);margin:8px 0 0;font-weight:700}.cm-new{border:1px solid var(--brand);border-radius:var(--r-md);flex-direction:column;gap:8px;padding:10px;display:flex;position:relative}.cm-new textarea{resize:vertical;border:1px solid var(--line-2);border-radius:var(--r-sm);width:100%;min-height:84px;font:inherit;font-size:var(--fs-3);color:var(--ink);background:var(--card);padding:8px 10px}.cm-new textarea:focus{border-color:var(--brand);outline:none}.cm-new .cm-new-f{justify-content:flex-end;align-items:center;gap:6px;display:flex}.cm-new .cm-hint{font-size:var(--fs-2);color:var(--ink-3);margin-right:auto}.cm-draw{z-index:2500;cursor:crosshair;background:#1111112e;position:fixed;inset:0}.cm-draw .cm-draw-page{pointer-events:none;outline:2px dashed #ffffffe6;position:fixed}.cm-draw .cm-draw-box{pointer-events:none;background:#df315f1f;border:2px solid #df315f;border-radius:2px;position:fixed}.cm-draw .cm-draw-hint{background:var(--ink,#111);color:#fff;font-size:var(--fs-3);pointer-events:none;white-space:nowrap;border-radius:999px;padding:8px 14px;font-weight:600;position:fixed;top:16px;left:50%;transform:translate(-50%)}.cm-hl{z-index:40;pointer-events:none;border:2px solid #df315f;border-radius:3px;animation:1.2s ease-out 2 cmPulse;position:fixed;box-shadow:0 0 0 9999px #11111147}@keyframes cmPulse{0%{outline:0 solid #df315f99}to{outline:14px solid #df315f00}}.cm.has-area{cursor:pointer}.cm.has-area:hover{border-color:#df315f}.cm.shown{border-color:#df315f;box-shadow:0 0 0 1px #df315f}.cm-area-tag{font-size:var(--fs-2);color:var(--brand);align-items:center;gap:4px;font-weight:600;display:inline-flex}.cm-new .cm-area-row{font-size:var(--fs-2);color:var(--ink-2);align-items:center;gap:8px;display:flex}.cm-new .cm-area-row button{border:1px solid var(--line-2);border-radius:var(--r-sm);background:var(--card);height:28px;color:var(--ink);font-size:var(--fs-2);cursor:pointer;align-items:center;gap:6px;padding:0 10px;font-weight:600;display:inline-flex}.cm-new .cm-area-row button:hover{border-color:var(--brand);color:var(--brand)}.cm-new .cm-area-row .cm-area-on{color:var(--ok);font-weight:700}.cm-mlist{background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);z-index:5;max-height:220px;margin-top:4px;padding:6px;position:absolute;top:100%;left:10px;right:10px;overflow:auto;box-shadow:0 12px 32px #00000024}.cm-mlist div{border-radius:var(--r-sm);font-size:var(--fs-3);cursor:pointer;align-items:center;gap:8px;padding:6px 8px;display:flex}.cm-mlist div.cur{background:var(--surface)}.cm-mlist .lv-av{width:22px;height:22px;box-shadow:none}.cm-mlist small{color:var(--ink-3);font-size:var(--fs-2);margin-left:auto}.el-topbar-btn .cnt,.bell-btn .cnt{font-variant-numeric:tabular-nums;background:var(--brand);color:#fff;min-width:19px;height:19px;line-height:1;font-size:var(--fs-1);border-radius:10px;justify-content:center;align-items:center;padding:0 5px;font-weight:700;display:inline-flex}.el-topbar-btn .cnt:empty,.bell-btn .cnt:empty{display:none}.bell-btn{width:var(--h-md);height:var(--h-md);border:1px solid var(--line-2);border-radius:var(--r-md);background:var(--card);color:var(--ink);cursor:pointer;font-size:var(--fs-5);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:relative}.bell-btn:hover{border-color:var(--brand);color:var(--brand)}.bell-btn .cnt{position:absolute;top:-6px;right:-6px}.nt-panel{z-index:1500;background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg,12px);flex-direction:column;width:360px;max-width:calc(100vw - 16px);max-height:min(480px,100vh - 80px);display:flex;position:fixed;box-shadow:0 16px 48px #00000029}.nt-head{border-bottom:1px solid var(--line);font-size:var(--fs-4);text-transform:uppercase;letter-spacing:var(--ls-title);justify-content:space-between;align-items:center;padding:12px 14px;font-weight:700;display:flex}.nt-head button{color:var(--brand);font-size:var(--fs-2);cursor:pointer;text-transform:none;letter-spacing:0;background:0 0;border:0;font-weight:700}.nt-list{overflow:auto}.nt-item{border-bottom:1px solid var(--line);cursor:pointer;gap:10px;padding:10px 14px;display:flex}.nt-item:hover{background:var(--surface)}.nt-item.unread{background:var(--brand-faint)}.nt-item .lv-av{width:28px;height:28px;box-shadow:none;flex-shrink:0}.nt-t{font-size:var(--fs-3);color:var(--ink);line-height:1.4}.nt-t b{font-weight:700}.nt-q{font-size:var(--fs-3);color:var(--ink-2);text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:2px;display:-webkit-box;overflow:hidden}.nt-s{font-size:var(--fs-2);color:var(--ink-3);margin-top:4px}.nt-empty{text-align:center;font-size:var(--fs-3);color:var(--ink-3);padding:28px 14px}.r-live{font-size:var(--fs-2);color:var(--brand);flex-wrap:wrap;gap:4px 10px;margin-top:8px;font-weight:600;display:flex}.r-live:empty{display:none}.r-live span{align-items:center;gap:4px;display:inline-flex}.r-live span:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.el-topbar-btn.publish{border-color:var(--ok-line);color:var(--ok);background:var(--ok-soft)}.el-topbar-btn.publish:hover{border-color:var(--ok)}.el-topbar-btn.unpublish{border-color:var(--warn-line);color:var(--warn);background:var(--warn-soft)}.el-topbar-btn.unpublish:hover{border-color:var(--warn)}.el-topbar-btn.active{background:var(--brand);color:#fff;border-color:var(--brand)}.el-topbar-btn:disabled{opacity:.6;cursor:default}.el-body{flex:1;display:flex;position:relative;overflow:hidden}.el-preview{transition:margin-right .24s cubic-bezier(.4,0,.2,1)}@media (min-width:1100px){.el-body:has(.el-cmt-drawer.open) .el-preview{margin-right:360px}.el-body:has(.el-ver-drawer.open) .el-preview{margin-right:384px}}@media (max-width:1099px){.el-cmt-drawer,.el-ver-drawer{width:min(360px,100%)}}.el-ctx{z-index:25;background:var(--card);min-height:56px;color:var(--ink);flex-wrap:wrap;justify-content:center;align-items:center;gap:4px;padding:10px 16px;display:none;position:absolute;top:0;left:0;right:0}.el-ctx.on{display:flex}.el-ctx .ctx-label{font-size:var(--fs-1);text-transform:uppercase;letter-spacing:var(--ls-ui);white-space:nowrap;margin-right:4px;font-weight:700}.el-ctx .ctx-dims{font-size:var(--fs-1);color:var(--ink-3);font-variant-numeric:tabular-nums;white-space:nowrap;margin-right:4px}.el-ctx .ctx-grp{border-left:1px solid var(--line);align-items:center;gap:2px;margin-left:4px;padding-left:8px;display:none}.el-ctx .ctx-grp.row-start{border-left:0;margin-left:0;padding-left:0}.el-ctx .ctx-b,.el-ctx .ctx-color{height:var(--h-sm);min-width:var(--h-sm);border-radius:var(--r-sm);color:var(--ink-2);font-size:var(--fs-1);letter-spacing:var(--ls-ui);text-transform:uppercase;cursor:pointer;white-space:nowrap;transition:background var(--t);background:0 0;border:0;justify-content:center;align-items:center;gap:4px;padding:0 6px;font-weight:700;display:inline-flex}.el-ctx .ctx-b i,.el-ctx .ctx-color i{font-size:var(--fs-5)}.el-ctx .ctx-t i{font-size:var(--fs-4)}.el-ctx .ctx-b:hover,.el-ctx .ctx-color:hover,.el-ctx .ctx-menu-w.open>.ctx-b{background:var(--surface);color:var(--ink)}.el-ctx .ctx-b:disabled{opacity:.35;cursor:default;background:0 0}.el-ctx .ctx-color{position:relative;overflow:hidden}.el-ctx .ctx-color input{opacity:0;cursor:pointer;border:0;width:100%;height:100%;padding:0;position:absolute;inset:0}.el-ctx .ctx-sel{border:1px solid var(--line-2);border-radius:var(--r-sm);background:var(--card);height:28px;color:var(--ink);font-size:var(--fs-2);cursor:pointer;padding:0 4px}.el-ctx .ctx-font{width:150px}.el-ctx .ctx-size{width:62px}.el-ctx .ctx-sel:focus{border-color:var(--brand);outline:none}select.sns-sel-native{display:none!important}.sns-sel{text-align:left;cursor:pointer;color:var(--ink);white-space:nowrap;justify-content:space-between;align-items:center;gap:8px;min-width:0;font-family:inherit;display:inline-flex;overflow:hidden;background-image:none!important;padding-right:10px!important}.sns-sel .sns-sel-t{text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.sns-sel .sns-sel-c{font-size:var(--fs-2);color:var(--ink-3);transition:transform .15s}.sns-sel.open{border-color:var(--brand)}.sns-sel.open .sns-sel-c{transform:rotate(180deg)}.sns-sel:disabled{opacity:.55;cursor:default}.sns-sel[hidden]{display:none}.us-table .sns-sel{border:1px solid var(--line-2);border-radius:var(--r-sm);background:var(--card);height:28px;font-size:var(--fs-2);padding:0 6px}.sns-sel-list{z-index:2000;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);font-size:var(--fs-3);color:var(--ink);outline:none;padding:6px;position:fixed;overflow:auto;box-shadow:0 12px 32px #00000024}.sns-sel-o{border-radius:var(--r-sm);cursor:pointer;white-space:nowrap;align-items:center;min-height:32px;padding:0 10px 0 28px;display:flex;position:relative}.sns-sel-o.in{padding-left:28px}.sns-sel-o.cur{background:var(--surface)}.sns-sel-o.on{color:var(--brand);font-weight:600}.sns-sel-o.on:before{content:"";border:0 solid;border-width:0 0 2px 2px;width:10px;height:6px;position:absolute;top:50%;left:10px;transform:translateY(-70%)rotate(-45deg)}.sns-sel-o.off{opacity:.45;cursor:default}.sns-sel-g{font-size:var(--fs-1);letter-spacing:var(--ls-ui);text-transform:uppercase;color:var(--ink-3);padding:8px 10px 4px;font-weight:700}.el-ctx #ctx-link.on{background:var(--brand-faint);color:var(--brand)}.el-ctx .ctx-link-box{gap:8px;min-width:320px;padding:10px}.el-ctx .ctx-link-url{border:1px solid var(--line-2);border-radius:var(--r-sm);height:32px;font-size:var(--fs-3);color:var(--ink);background:var(--card);padding:0 10px}.el-ctx .ctx-link-url:focus{border-color:var(--brand);outline:none}.el-ctx .ctx-link-acts{gap:6px;display:flex}.el-ctx .ctx-link-acts button{border:1px solid var(--line-2);border-radius:var(--r-sm);background:var(--card);height:30px;color:var(--ink);font-size:var(--fs-2);cursor:pointer;flex:1;justify-content:center;align-items:center;gap:6px;font-weight:600;display:inline-flex}.el-ctx .ctx-link-acts button:hover{border-color:var(--brand);color:var(--brand)}.el-ctx .ctx-link-acts button.danger:hover{border-color:var(--err);color:var(--err)}.el-ctx .ctx-cur{border:1px solid var(--line-3,#00000040);width:18px;height:18px;box-shadow:inset 0 0 0 2px var(--card);border-radius:50%}.el-ctx .ctx-sws{grid-template-columns:repeat(6,24px);gap:8px;padding:6px 4px 10px;display:grid}.el-ctx .ctx-sw{cursor:pointer;border:1px solid #0000002e;border-radius:50%;width:24px;height:24px;padding:0}.el-ctx .ctx-sw:hover{transform:scale(1.12)}.el-ctx .ctx-sw.on{box-shadow:0 0 0 2px var(--card),0 0 0 4px var(--brand)}.el-ctx .ctx-menu .ctx-custom{border-top:1px solid var(--line);height:32px;font-size:var(--fs-3);color:var(--ink);cursor:pointer;border-radius:0 0 var(--r-sm) var(--r-sm);align-items:center;gap:8px;margin-top:2px;padding:0 10px;display:flex;position:relative}.el-ctx .ctx-menu .ctx-custom:hover{background:var(--surface)}.el-ctx .ctx-menu .ctx-custom input{opacity:0;cursor:pointer;border:0;width:100%;height:100%;padding:0;position:absolute;inset:0}.el-ctx #ctx-lock.locked{background:var(--brand);color:#fff}.el-ctx .ctx-hint{font-size:var(--fs-2);color:var(--ink-3);white-space:nowrap;margin-right:4px}.el-ctx .ctx-menu-w{display:inline-flex;position:relative}.el-ctx .ctx-caret{opacity:.6;font-size:var(--fs-2)!important}.el-ctx .ctx-menu{z-index:30;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);flex-direction:column;min-width:190px;padding:6px;display:none;position:absolute;top:calc(100% + 8px);left:0;box-shadow:0 12px 32px #00000024}.el-ctx .ctx-menu-w.open .ctx-menu{display:flex}.el-ctx .ctx-menu>button{border-radius:var(--r-sm);height:32px;color:var(--ink);font-size:var(--fs-3);text-align:left;white-space:nowrap;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:0 10px;display:flex}.el-ctx .ctx-menu>button i{font-size:var(--fs-5)}.el-ctx .ctx-menu>button:hover{background:var(--surface)}.el-ctx .ctx-menu>button.danger{color:var(--err)}.el-ctx .ctx-menu>button:disabled{opacity:.35;cursor:default;background:0 0}.el-preview{background:#d8d7d5;flex:1;position:relative;overflow:hidden}.el-pages{background:var(--card);border-right:1px solid var(--line);flex-direction:column;flex:none;width:184px;display:flex}.el-pages[hidden]{display:none}.el-pages-list{flex-direction:column;flex:1;gap:12px;padding:12px 12px 4px 4px;display:flex;overflow-y:auto}.pg{align-items:flex-start;gap:6px;display:flex;position:relative}.pg-n{text-align:right;width:20px;font-size:var(--fs-2);color:var(--ink-3);font-variant-numeric:tabular-nums;flex:none;padding-top:2px;font-weight:700}.pg-t{border:1.5px solid var(--line-2);border-radius:var(--r-md);cursor:pointer;min-width:0;transition:border-color var(--t);background:#fff;flex:1;position:relative;overflow:hidden}.pg-t:hover{border-color:var(--ink-4)}.pg.on .pg-t{border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-soft)}.pg.on .pg-n{color:var(--brand)}.pg-t iframe{transform-origin:0 0;pointer-events:none;background:#fff;border:0;position:absolute;top:0;left:0}.pg-acts{gap:2px;display:none;position:absolute;top:4px;right:4px}.pg:hover .pg-acts,.pg:focus-within .pg-acts{display:flex}.pg-acts button{border-radius:var(--r-sm);color:#fff;cursor:pointer;width:24px;height:24px;font-size:var(--fs-4);background:#111111d1;border:0;justify-content:center;align-items:center;display:inline-flex}.pg-acts button:hover{background:#111}.pg-acts button.del:hover{background:var(--err)}.el-pages-foot{border-top:1px solid var(--line);padding:8px 12px 12px}.el-pages-foot button{width:100%;height:var(--h-sm);border:1px dashed var(--line-2);border-radius:var(--r-md);color:var(--ink-2);font-size:var(--fs-2);letter-spacing:var(--ls-ui);text-transform:uppercase;cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:6px;font-weight:700;display:inline-flex}.el-pages-foot button:hover{border-color:var(--brand);color:var(--brand)}#edit-lightbox.el-readonly .pg-acts,#edit-lightbox.el-readonly .el-pages-foot{display:none!important}.el-canvas{position:absolute;inset:0;overflow:hidden}.el-preview.editing{background:var(--surface)}.el-preview.editing .el-canvas{top:var(--ctx-strip,56px);border-top:1px solid var(--line)}.el-preview.editing:before{content:"";height:var(--ctx-strip,56px);background:var(--card);z-index:1;position:absolute;top:0;left:0;right:0}.el-ctx>*{flex:none}.el-canvas.zoomed{overflow:auto}.el-preview iframe{border:none;width:100%;height:100%;transition:opacity .3s;display:block}.el-canvas.zoomed iframe{transform-origin:0 0;position:absolute;top:0;left:0}.el-zoomspace{pointer-events:none;width:1px;height:1px;position:absolute;top:0;left:0}.el-zoom{z-index:25;height:var(--h-lg);background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-card);align-items:center;gap:2px;padding:0 8px;display:flex;position:absolute;bottom:6px;right:16px}.el-zoom button{height:var(--h-sm);min-width:var(--h-sm);border-radius:var(--r-sm);color:var(--ink);font-size:var(--fs-1);letter-spacing:var(--ls-ui);text-transform:uppercase;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0 8px;font-weight:700;display:inline-flex}.el-zoom button i{font-size:var(--fs-5)}.el-zoom button:hover{background:var(--fill)}.el-zoom .el-zoom-fit{border:1px solid var(--line-2);margin-left:4px}.el-zoom .el-zoom-fit.on{border-color:var(--brand);color:var(--brand);background:var(--brand-faint)}.el-zoom-lbl{letter-spacing:0;text-align:center;min-width:48px;font-size:var(--fs-3);font-variant-numeric:tabular-nums;font-weight:700}.el-preview-loading{pointer-events:none;background:#d8d7d5;flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex;position:absolute;inset:0}.el-content-bar{flex:1;align-items:center;gap:8px;min-width:0;display:none}.el-content-bar.on{display:flex}.el-content-bar .cc-hint{min-width:0;font-size:var(--fs-2);color:var(--ink-3);flex:1;align-items:center;gap:8px;padding:0 8px;font-weight:500;display:flex}.el-content-bar .cc-hint i{font-size:var(--fs-5);color:var(--brand);flex-shrink:0}.el-content-bar .cc-hint-t{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.el-content-bar .cc-icon{width:var(--h-md);padding:0}.el-content-bar .cc-icon i{font-size:var(--fs-5)}.el-content-bar .cc-icon:disabled{opacity:.35;cursor:default}.el-topbar.editing .el-topbar-btn{display:none!important}.el-topbar.editing .el-title{flex:0 auto;max-width:28%}.cc-save:disabled{opacity:.6;cursor:default}.cc-status{font-size:var(--fs-2);color:var(--ink-3,#888);white-space:nowrap;align-items:center;gap:6px;font-weight:600;display:inline-flex}.cc-status.saving{color:var(--ink-3,#888)}.cc-status.saved{color:var(--ok)}.cc-status.error{color:var(--err)}.el-ver-filter{border-bottom:1px solid var(--line);font-size:var(--fs-2);color:var(--ink-2,#555);align-items:center;gap:8px;padding:10px 16px;display:flex}.el-ver-now{border-bottom:1px solid var(--line);background:var(--surface);padding:10px 16px}.el-ver-now .el-ver-name{font-weight:700}.el-ver-acts{flex-shrink:0;gap:6px;display:flex}.el-ver-prev{height:var(--h-sm);border:1px solid var(--line-2);border-radius:var(--r-sm);background:var(--card);color:var(--ink);font-size:var(--fs-2);cursor:pointer;padding:0 10px;font-weight:600}.el-ver-prev:hover{border-color:var(--brand);color:var(--brand)}.el-ctx .ctx-stroke-box{gap:8px;min-width:220px;padding:10px}.ctx-stroke-w{grid-template-columns:repeat(5,1fr);gap:4px;display:grid}.ctx-stroke-w button,.ctx-stroke-c button{border:1px solid var(--line-2);border-radius:var(--r-sm);background:var(--card);height:30px;color:var(--ink);font-size:var(--fs-2);cursor:pointer;font-weight:600}.ctx-stroke-w button.on{border-color:var(--brand);color:var(--brand);background:var(--brand-faint)}.ctx-stroke-c{grid-template-columns:repeat(8,1fr);gap:4px;display:grid}.ctx-stroke-c button{height:22px;padding:0}.ctx-stroke-c button.on{box-shadow:0 0 0 2px var(--card),0 0 0 4px var(--brand)}.il-drop{border:1.5px dashed var(--line-2);border-radius:var(--r-md);text-align:center;font-size:var(--fs-2);color:var(--ink-2);margin:12px 16px 0;padding:12px}.il-drop.over{border-color:var(--brand);background:var(--brand-faint)}.il-grid{flex:1;grid-template-columns:repeat(2,1fr);align-content:start;gap:10px;padding:12px 16px;display:grid;overflow:auto}.il-item{border:1px solid var(--line);border-radius:var(--r-md);cursor:pointer;background:repeating-conic-gradient(#eee 0 25%,#fff 0 50%) 0 0/14px 14px;position:relative;overflow:hidden}.il-item:hover{border-color:var(--brand)}.il-item img{object-fit:contain;width:100%;height:110px;display:block}.il-item .il-name{font-size:var(--fs-1);color:var(--ink-3);background:var(--card);white-space:nowrap;text-overflow:ellipsis;padding:4px 8px;display:block;overflow:hidden}.il-item .il-del{border:1px solid var(--line-2);border-radius:var(--r-sm);background:var(--card);width:26px;height:26px;color:var(--ink-2);cursor:pointer;justify-content:center;align-items:center;display:none;position:absolute;top:6px;right:6px}.il-item:hover .il-del{display:inline-flex}.il-item .il-del:hover{border-color:var(--err);color:var(--err)}.il-empty{font-size:var(--fs-3);color:var(--ink-3);text-align:center;grid-column:1/-1;padding:24px 8px}.el-ctx .ctx-sp-box{gap:6px;min-width:260px;padding:12px}.ctx-sp-l{font-size:var(--fs-1);letter-spacing:var(--ls-ui);text-transform:uppercase;color:var(--ink-3);margin-top:4px;font-weight:700}.ctx-sp-row{align-items:center;gap:8px;display:flex}.ctx-sp-row input[type=range]{accent-color:var(--brand);flex:1}.ctx-sp-row b{text-align:right;min-width:44px;font-size:var(--fs-2);font-variant-numeric:tabular-nums}.ctx-sp-row button{border:1px solid var(--line-2);border-radius:var(--r-sm);background:var(--card);height:26px;font-size:var(--fs-2);cursor:pointer;color:var(--ink);flex:1;font-weight:600}.ctx-sp-row button.on{border-color:var(--brand);color:var(--brand);background:var(--brand-faint)}.ctx-sp-note{font-size:var(--fs-2);color:var(--ink-3);margin-top:4px}.ce-cm .ce-cm-sub{position:relative}.ce-cm .ce-cm-sub>button .ph-caret-right{font-size:var(--fs-2);margin-left:auto}.ce-cm{z-index:2100;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);min-width:220px;max-width:300px;font-size:var(--fs-3);color:var(--ink);padding:6px;position:fixed;box-shadow:0 12px 32px #00000029}.ce-cm button{border-radius:var(--r-sm);width:100%;height:32px;color:inherit;font:inherit;text-align:left;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:0;align-items:center;gap:8px;padding:0 10px;display:flex;overflow:hidden}.ce-cm button:hover,.ce-cm button:focus-visible{background:var(--surface);outline:none}.ce-cm button i{font-size:var(--fs-5);color:var(--ink-2);flex-shrink:0}.ce-cm button.danger,.ce-cm button.danger i{color:var(--err)}.ce-cm button .kbd{font-size:var(--fs-2);color:var(--ink-3);margin-left:auto}.ce-cm hr{border:0;border-top:1px solid var(--line);margin:4px 2px}.ce-cm .ce-cm-h{font-size:var(--fs-1);letter-spacing:var(--ls-ui);text-transform:uppercase;color:var(--ink-3);padding:6px 10px 2px;font-weight:700}.ce-cm .on{color:var(--brand);font-weight:600}.el-ctx .ctx-icons{grid-template-columns:repeat(4,44px);gap:6px;min-width:0;padding:8px;display:none}.el-ctx .ctx-menu-w.open .ctx-icons{display:grid}.el-ctx .ctx-icons button{border:1px solid var(--line);border-radius:var(--r-sm);background:repeating-conic-gradient(#eee 0 25%,#fff 0 50%) 0 0/12px 12px;cursor:pointer;width:44px;height:44px;padding:6px}.el-ctx .ctx-icons button:hover{border-color:var(--brand)}.el-ctx .ctx-icons img{width:100%;height:100%;display:block}.cc-cancel{background:var(--card);color:var(--ink-3);border:1px solid var(--line-2)!important}.cc-cancel:hover:not(:disabled){color:var(--ink);border-color:var(--line-3)!important}.el-ver-head{height:var(--h-bar);border-bottom:1px solid var(--line);flex-shrink:0;align-items:center;gap:12px;padding:0 16px;display:flex}.el-ver-drawer{background:var(--card);border-left:1px solid var(--line);z-index:30;flex-direction:column;width:384px;max-width:100%;transition:transform .24s cubic-bezier(.4,0,.2,1);display:flex;position:absolute;top:0;bottom:0;right:0;transform:translate(105%);box-shadow:-12px 0 40px #0000001f}.el-ver-drawer.open{transform:translate(0)}.el-ver-head{justify-content:space-between}.el-ver-list{flex-direction:column;flex:1;gap:8px;padding:16px;display:flex;overflow-y:auto}.el-ver-item{border-radius:var(--r-md);border:1px solid var(--line);align-items:center;gap:12px;padding:12px;display:flex}.el-ver-icon{background:var(--fill);color:var(--ink-4)}.el-ver-info{flex:1;min-width:0}.el-ver-name{font-size:var(--fs-2);color:var(--ink);font-weight:700}.el-ver-sub{font-size:var(--fs-1);color:var(--ink-4);margin-top:4px}.el-ver-restore{color:var(--brand);background:var(--brand-soft);border:none}.el-ver-restore:hover{background:#df315f26}.el-ver-empty{text-align:center;color:var(--ink-4);font-size:var(--fs-2);line-height:var(--lh);padding:40px 16px}#toast{min-height:var(--h-md);background:var(--ink);color:#fff;font-size:var(--fs-1);text-transform:uppercase;letter-spacing:var(--ls-ui);border-radius:var(--r-md);opacity:0;pointer-events:none;z-index:500;white-space:nowrap;align-items:center;padding:0 16px;font-weight:700;transition:all .28s;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)translateY(12px)}#toast.show{opacity:1;pointer-events:auto;transform:translate(-50%)translateY(0)}#toast a{color:var(--brand)}#login-screen{background:var(--surface);z-index:1000;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.login-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-xl);width:100%;max-width:360px;padding:40px 32px;box-shadow:0 12px 48px #00000014}.login-logo{height:24px;margin:0 auto 12px;display:block}.login-tag{text-align:center;margin-bottom:32px}.login-field{margin-bottom:16px}.login-input{font-weight:400}.login-btn{margin-top:8px}.login-err{font-size:var(--fs-2);color:var(--err);text-align:center;min-height:16px;margin-top:12px}@media (max-width:1180px){.el-topbar-btn{width:var(--h-md);gap:0;padding:0;font-size:0}.el-topbar-btn i{font-size:var(--fs-5)}}@media (max-width:760px){#create-modal{flex-direction:column;height:92vh}.mc-config{border-right:none;border-bottom:1px solid var(--line);width:100%;max-height:44%}.tb-actions .btn-upload-top span{display:none}.btn-upload-top{width:var(--h-md);padding:0}}
