*{box-sizing:border-box;margin:0;padding:0}
:root{--ink:#14142b;--mut:#5d6075;--v:#7c5cff;--v2:#b18cff}
body{font-family:"Plus Jakarta Sans",system-ui,sans-serif;color:var(--ink);background:#eef0f5;line-height:1.55;padding:12px;min-height:100vh;position:relative;overflow-x:hidden}
.bg{position:fixed;inset:0;z-index:-1;overflow:hidden}.bg i{position:absolute;border-radius:50%;filter:blur(90px);opacity:.55}
.b1{width:480px;height:480px;background:#d9ccff;top:-120px;right:-100px}.b2{width:420px;height:420px;background:#dfe8ff;bottom:-140px;left:-120px}
.glass{background:rgba(255,255,255,.58);border:1px solid rgba(255,255,255,.9);box-shadow:0 10px 30px rgba(60,50,120,.07);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.top,main{max-width:1100px;margin:0 auto}
.top{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 18px;border-radius:999px;position:sticky;top:10px;z-index:5;margin-bottom:14px}
.top b{font-size:16px}.top small{display:block;font-size:11px;color:var(--mut)}
.src{font-size:11px;color:var(--mut);text-align:right}
.tools{border-radius:22px;padding:14px;margin-bottom:14px}
input,select{font:inherit;font-size:14px;border:1px solid #e3e1f0;background:rgba(255,255,255,.8);border-radius:12px;padding:10px 12px;color:var(--ink);width:100%}
input:focus,select:focus{outline:2px solid var(--v2);outline-offset:1px}
.sel{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}
.count{font-size:12px;color:var(--mut);margin-top:10px}
.list{display:grid;gap:12px}
@media(min-width:720px){.sel{grid-template-columns:repeat(5,1fr)}.list{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}body{padding:20px}}
.card{border-radius:20px;padding:16px;cursor:pointer;text-align:left;font:inherit;color:inherit;transition:transform .15s,box-shadow .15s;border-left:5px solid #ccc;width:100%}
.card:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(60,50,120,.12)}
.s-wait{border-left-color:#f2c94c}.s-ok{border-left-color:#27ae60}.s-rev{border-left-color:#eb5757}
.meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:11px;color:var(--mut)}
.pill{display:inline-block;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:600;background:#efeaff;color:#5a3fd6}
.st.s-wait{background:#fff4d1;color:#8a6500}.st.s-ok{background:#dcf5e6;color:#17733e}.st.s-rev{background:#fde2e2;color:#a32626}
.card h3{font-size:16px;line-height:1.35;margin:8px 0 6px}
.hook{font-size:13px;color:var(--mut);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.perf{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;margin-top:12px;text-align:center}
.perf div{background:rgba(255,255,255,.7);border-radius:10px;padding:6px 2px}.perf b{display:block;font-size:13px}.perf span{font-size:9.5px;color:var(--mut)}
.empty{padding:30px;text-align:center;color:var(--mut);border-radius:20px}
.formulas{border-radius:20px;padding:14px 16px;margin-top:14px}.formulas summary{font-weight:600;cursor:pointer}
.frow{padding:10px 0;border-top:1px solid #ebe8f5;font-size:13px}.frow:first-child{border:0}.frow b{color:var(--v)}
dialog{border:0;border-radius:24px;max-width:760px;width:calc(100% - 16px);max-height:92vh;margin:auto;padding:0;background:#f7f6fc;box-shadow:0 30px 80px rgba(20,20,60,.3)}
dialog::backdrop{background:rgba(20,20,43,.35);backdrop-filter:blur(4px)}
#det{padding:20px}.x{float:right;border:0;background:#ece8fb;border-radius:999px;width:34px;height:34px;font-size:18px;cursor:pointer}
#det h2{font-size:19px;line-height:1.3;margin:8px 0 12px}
.blk{background:#fff;border-radius:16px;padding:12px 14px;margin-top:10px}
.blk h4{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--v);margin-bottom:6px}
.kv{display:grid;grid-template-columns:120px 1fr;gap:4px 10px;font-size:13px}.kv dt{color:var(--mut)}
.blk p{font-size:13.5px;white-space:pre-line}
.blk a{color:var(--v);word-break:break-all}
.scene{border-top:1px solid #efedf7;padding:10px 0;font-size:13px}.scene:first-of-type{border:0}
.scene b{font-size:12px}.scene .t{color:var(--mut);font-size:11px}.scene .vo{margin:4px 0}.scene .vis{color:var(--mut)}
.btn{font:inherit;font-weight:600;font-size:14px;border:0;border-radius:999px;padding:11px 18px;background:linear-gradient(135deg,var(--v),var(--v2));color:#fff;cursor:pointer;margin-top:12px;width:100%}
.na{color:#a3a5b8;font-style:italic}
