*{box-sizing:border-box}body{margin:0;font-family:Inter,PingFang SC,system-ui,sans-serif;background:#f5f6fa;color:#20212a}button,input,select,textarea{font:inherit}.shell{display:flex;min-height:100vh}aside{width:224px;background:#15151c;color:#fff;padding:26px 18px;position:fixed;inset:0 auto 0 0}.brand{display:flex;align-items:center;gap:11px;font-weight:700}.brand>span{display:grid;place-items:center;width:38px;height:38px;background:#7259f0;border-radius:11px}.brand small{display:block;color:#878793;font-size:11px;margin-top:3px;font-weight:400}nav{margin-top:38px;display:grid;gap:7px}nav button{border:0;color:#a8a8b4;background:transparent;text-align:left;padding:12px 14px;border-radius:9px;cursor:pointer}nav button.active{background:#2c293a;color:#fff}.asideFoot{position:absolute;bottom:24px;color:#666674;font-size:11px}main{margin-left:224px;padding:32px 38px;width:calc(100% - 224px)}header{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px}h1{font-size:25px;margin:0 0 5px}header p{color:#757683;margin:0;font-size:13px}.primary{background:#6750e8!important;color:#fff!important;border:0!important;border-radius:8px!important;padding:10px 17px!important;cursor:pointer}.primary:disabled{opacity:.45}.card{background:#fff;border:1px solid #e9e9ee;border-radius:13px;box-shadow:0 2px 8px #25254408}.toolbar{padding:18px 20px;border-bottom:1px solid #eee;display:flex;gap:12px}.toolbar span{color:#999;font-size:13px}table{border-collapse:collapse;width:100%;font-size:13px}th{text-align:left;color:#888;font-weight:500;background:#fafafd}th,td{padding:15px 19px;border-bottom:1px solid #eee}td strong,td small{display:block}td small{color:#9a9aa4;margin-top:5px}td i{display:inline-block;background:#f0edff;color:#6248d8;border-radius:5px;font-style:normal;font-size:11px;padding:2px 6px;margin:5px 4px 0 0}em{font-style:normal;padding:4px 8px;border-radius:10px;font-size:11px;background:#f2f2f4}.ready,.published{color:#20804b;background:#e9f8ef}.pending,.draft{color:#94721e;background:#fff6da}.link{border:0;background:transparent;color:#5b45d0;cursor:pointer;padding:3px 6px}.empty{text-align:center;padding:80px;color:#858591}.empty h2{color:#222}.empty a{color:#6750e8}.error{padding:10px 14px;background:#fff0f0;color:#b83232;border-radius:8px;margin-bottom:15px}.grid{display:grid;grid-template-columns:340px 1fr;gap:20px}.form{padding:22px;height:max-content}.form h3{margin-top:0}label{display:block;color:#555;font-size:13px;margin:15px 0 7px}input,select,textarea{display:block;width:100%;margin-top:7px;border:1px solid #dcdce3;border-radius:8px;padding:10px;background:#fff;outline:none}textarea{resize:vertical;min-height:70px}.taxonomy{padding:10px 24px}.taxonomy section{padding:11px 0 18px;border-bottom:1px solid #eee}.taxonomy h3{font-size:15px}.taxonomy h3 small{font-weight:400;color:#999;margin-left:10px}.taxonomy span{display:inline-block;border:1px solid #dedee5;border-radius:7px;padding:7px 10px;margin:4px}.tagCloud{padding:25px;align-content:start}.tagCloud>span{display:inline-flex;flex-direction:column;vertical-align:top;min-width:130px;margin:7px;padding:12px;border:1px solid #e5e3f1;border-radius:9px;color:#5a44cb;background:#faf9ff}.tagCloud small{color:#999;margin-top:5px}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#17172280;display:grid;place-items:center;z-index:10}.modal{width:min(720px,90vw);max-height:92vh;overflow:auto;background:#fff;border-radius:15px;padding:22px 26px}.modalHead{display:flex;align-items:center;justify-content:space-between}.modalHead h2{font-size:19px}.modalHead button{border:0;background:transparent;font-size:25px;color:#888;cursor:pointer}.drop{border:1.5px dashed #bdb7e6;background:#faf9ff;border-radius:10px;padding:24px;text-align:center;color:#6750e8;cursor:pointer}.drop input{display:none}.drop small{display:block;color:#999;margin-top:8px}.two{display:grid;grid-template-columns:1fr 1fr;gap:15px}.checks{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.checks button{border:1px solid #dedee5;border-radius:15px;padding:5px 10px;background:#fff;color:#777}.checks button.on{color:#6046dc;border-color:#8e7aea;background:#f2efff}.actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.actions>button{border:1px solid #ddd;background:#fff;border-radius:8px;padding:9px 16px}.drawer{position:fixed;z-index:20;right:0;top:0;bottom:0;width:min(580px,90vw);background:#fff;box-shadow:-10px 0 30px #1112;padding:20px 25px;overflow:auto}.detail h3{font-size:14px;margin-top:25px}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:15px 0}.metrics span{padding:13px;background:#f7f7fa;border-radius:8px;color:#888;font-size:11px}.metrics b{display:block;color:#333;font-size:16px}.detail pre{font-size:11px;line-height:1.6;background:#171720;color:#dbdbea;padding:14px;border-radius:9px;max-height:340px;overflow:auto;white-space:pre-wrap}.analysisEmpty{padding:20px;background:#f7f6ff;border-radius:9px;color:#777}.download{display:inline-block;margin:25px 0;color:#6750e8}@media (max-width:800px){aside{width:72px}.brand div,nav button:not(.active),.asideFoot{display:none}main{margin-left:72px;width:calc(100% - 72px);padding:22px}.grid,.two{grid-template-columns:1fr}table{min-width:900px}.card{overflow:auto}}.previewOverlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#0c0a16b8;display:flex;align-items:center;justify-content:center;padding:28px}.previewOverlay section{width:min(1440px,96vw);height:min(900px,94vh);background:#fff;border-radius:18px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 30px 80px #00000059}.previewOverlay header{min-height:64px;padding:0 22px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #eceaf2;margin:0}.previewOverlay header h2{font-size:20px;margin:0}.previewOverlay header span{display:block;color:#888;font-size:12px;margin-top:4px}.previewOverlay header button{border:0;background:none;font-size:30px;color:#666;cursor:pointer}.previewSlides{flex:1;overflow:auto;background:#e9eaf0;padding:24px;scroll-behavior:smooth}.previewSlides figure{position:relative;width:min(1180px,100%);margin:0 auto 24px;background:#fff;box-shadow:0 4px 18px #14142329;line-height:0}.previewSlides img{display:block;width:100%;height:auto;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.previewSlides figcaption{position:absolute;right:10px;bottom:10px;padding:5px 9px;border-radius:12px;background:#14141cb8;color:#fff;font-size:11px;line-height:1}.previewLink:disabled{opacity:.35;cursor:not-allowed}.jobProgress{padding:13px 15px;background:#f7f6ff;border-radius:9px;margin-bottom:12px}.jobProgress>div{height:7px;background:#e5e0ff;border-radius:9px;overflow:hidden}.jobProgress>div span{display:block;height:100%;background:#6750e8;transition:width .3s}.jobProgress p{font-size:12px;color:#6750e8;margin:8px 0 0}.templateName{display:flex;align-items:center;gap:10px;min-width:220px}.templateCover{width:72px;height:41px;object-fit:cover;border-radius:5px;border:1px solid #e5e5eb;background:#f3f2f9}.templateCover.placeholder{display:grid;place-items:center;color:#8d82cb;font-size:10px}.detail button.download{border:0;background:transparent;padding:0;cursor:pointer;font:inherit}.link.danger{color:#c33c3c}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:18px}.stats .card{padding:18px 20px}.stats small,.stats span{color:#92929e;font-size:12px}.stats b{display:block;font-size:27px;margin:7px 0 2px}.userToolbar{display:flex;justify-content:space-between;align-items:center;padding:17px 20px;border-bottom:1px solid #eee;color:#888;font-size:13px}.userToolbar form{display:flex;gap:8px;width:min(520px,70%)}.userToolbar input{margin:0}.userName{display:flex;align-items:center;gap:10px}.userName>div{width:34px;height:34px;border-radius:10px;background:#eeeaff;color:#6248d8;display:grid;place-items:center;font-weight:700}.plan{display:inline-block;border-radius:12px;padding:4px 9px;font-size:11px}.plan.free{background:#f0f1f4;color:#6f7079}.plan.paid{background:#e9f8ef;color:#20804b}.credit{color:#5842ce}.debt{color:#c33c3c}.compact{padding:28px}.pagination{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:16px 20px}.pagination button{border:1px solid #ddd;background:#fff;border-radius:7px;padding:7px 12px}.pagination button:disabled{opacity:.45}@media (max-width:800px){.stats{grid-template-columns:1fr}.userToolbar{align-items:flex-start;gap:10px}.userToolbar form{width:100%}}.userStatus{display:inline-block;border-radius:12px;padding:4px 9px;font-size:11px}.userStatus.enabled{background:#e9f8ef;color:#20804b}.userStatus.disabled{background:#fff0f0;color:#b83232}.disabledUser{background:#fafafa;color:#8c8c94}.disabledUser .userName>div{filter:grayscale(1);opacity:.6}.feedbackFilters{display:flex;align-items:center;gap:10px;margin-bottom:18px;padding:14px 16px}.feedbackFilters select{width:145px;margin:0}.feedbackFilters form{display:flex;gap:8px;flex:1}.feedbackFilters input{margin:0}.feedbackFilters form button{flex:0 0 auto}.feedbackFilters>span{color:#92929d;font-size:12px}.feedbackLayout{display:grid;grid-template-columns:minmax(330px,40%) 1fr;gap:18px;height:calc(100vh - 190px)}.feedbackList,.feedbackDetail{overflow:auto}.feedbackList>button{display:block;width:100%;padding:15px 17px;border:0;border-bottom:1px solid #eee;background:#fff;text-align:left;cursor:pointer}.feedbackList>button:hover,.feedbackList>button.active{background:#f5f3ff}.feedbackList>button>div{display:flex;align-items:center;gap:8px;color:#858591;font-size:11px}.feedbackList time{margin-left:auto}.feedbackList strong{display:-webkit-box;overflow:hidden;margin:9px 0 6px;color:#30303a;font-size:13px;line-height:1.5;-webkit-line-clamp:2;-webkit-box-orient:vertical}.feedbackList small{color:#9696a1}.feedbackStatus{padding:4px 8px;border-radius:12px;font-size:10px}.feedbackStatus.open{color:#946d0c;background:#fff4d3}.feedbackStatus.in_progress{color:#5943c6;background:#efecff}.feedbackStatus.resolved{color:#19734a;background:#e7f8ef}.feedbackDetail{padding:22px}.feedbackTitle{display:flex;align-items:flex-start;justify-content:space-between}.feedbackTitle>div{display:flex;align-items:center;gap:10px}.feedbackTitle h2{margin:0;font-size:19px}.feedbackTitle code{color:#999;font-size:11px}.feedbackDetail article{margin:20px 0;padding:15px;border-radius:9px;background:#f7f7fa;white-space:pre-wrap;line-height:1.65}.feedbackImages{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}.feedbackImages img{width:150px;height:105px;object-fit:cover;border:1px solid #e1e1e8;border-radius:8px}.feedbackDetail dl{display:grid;grid-template-columns:145px minmax(0,1fr);gap:9px 13px;font-size:12px}.feedbackDetail dt{color:#8d8d98}.feedbackDetail dd{margin:0;overflow-wrap:anywhere}.feedbackDetail details{margin:20px 0}.feedbackDetail summary{color:#6750e8;cursor:pointer;font-size:12px}.feedbackDetail pre{max-height:260px;overflow:auto;padding:13px;border-radius:8px;background:#171720;color:#dbdbea;font-size:11px;white-space:pre-wrap}.feedbackActions{display:flex;gap:8px;margin-top:12px}.feedbackActions button{padding:8px 11px;border:1px solid #dddde5;border-radius:7px;background:#fff;cursor:pointer}.feedbackActions button.resolved{border-color:#238354;background:#238354;color:#fff}.feedbackActions button:disabled{cursor:not-allowed;opacity:.4}.resolvedMeta{display:block;margin-top:11px;color:#738078}.compact{padding:35px!important}@media (max-width:980px){.feedbackLayout{grid-template-columns:1fr;height:auto}.feedbackList{max-height:420px}.feedbackFilters{flex-wrap:wrap}.feedbackFilters form{min-width:100%}}.runtimeStats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:18px}.runtimeStats .card{padding:18px 20px}.runtimeStats small,.runtimeStats span{color:#92929e;font-size:12px}.runtimeStats b{display:block;font-size:27px;margin:7px 0 2px}.runtimeToolbar{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:16px;margin-bottom:18px}.runtimeToolbar form{display:flex;gap:8px}.runtimeToolbar input,.runtimeToolbar select{margin:0}.runtimeToolbar select{width:132px}.runtimeToolbar button{white-space:nowrap}.runtimeTable{overflow:auto}.runtimeTable table{min-width:1180px}.runtimeState{display:inline-block;padding:4px 9px;border-radius:12px;font-size:11px}.runtimeState.running{color:#16724a;background:#e7f8ef}.runtimeState.preparing{color:#886b15;background:#fff5d5}.runtimeState.stopped{color:#666;background:#f0f1f4}.runtimeState.failed{color:#af3030;background:#ffebeb}.runtimeError{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#b63232}.runtimeImage{display:block;max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.runtimeTable .danger{color:#bd3434}@media (max-width:980px){.runtimeStats,.runtimeToolbar{grid-template-columns:1fr}.runtimeToolbar form{flex-wrap:wrap}}.adminLogin{min-height:100vh;display:grid;place-items:center;padding:24px;background:#f5f6fa}.adminLogin form{width:min(420px,100%);padding:32px;display:grid;gap:18px}.adminLogin .brand{margin-bottom:6px}.adminLogin h1{font-size:26px;margin:4px 0 0}.adminLogin p{color:#72727e;margin:0}.adminLogin label{display:grid;gap:8px;font-size:13px;font-weight:600}.adminLogin input{margin:0}.adminLogin button{height:44px}.adminLogin>a{text-align:center;color:#5d5fef;font-size:13px}
