.navlink[data-v-8fe18341]{margin-left:18px;font-size:14px}.auth[data-v-8fe18341]{margin-left:auto;display:flex;align-items:center;gap:10px}.tabs[data-v-db389849]{margin-bottom:12px}.count[data-v-db389849]{opacity:.7;font-weight:400;margin-left:4px}.table-wrap[data-v-db389849]{overflow-x:auto}table.data[data-v-db389849]{border-collapse:collapse;width:100%;font-size:13.5px}table.data th[data-v-db389849],table.data td[data-v-db389849]{border-bottom:1px solid var(--border);padding:4px 6px;text-align:left;vertical-align:middle}table.data th[data-v-db389849]{color:var(--text-2);font-weight:600;font-size:12.5px;white-space:nowrap}table.data td.num[data-v-db389849],table.data th.num[data-v-db389849]{text-align:right;white-space:nowrap;width:1%}table.data td.wide[data-v-db389849]{min-width:220px}table.data td.num input.cell[data-v-db389849]{width:7em}table.data input.cell[data-v-db389849]{font:inherit;width:100%;min-width:60px;padding:4px 6px;border-radius:6px;border:1px solid transparent;background:transparent;color:var(--text)}table.data td.num input.cell[data-v-db389849]{text-align:right}table.data input.cell[data-v-db389849]:hover{border-color:var(--border)}table.data input.cell[data-v-db389849]:focus{border-color:var(--accent-2);background:var(--card);outline:none}table.data tr.draft td[data-v-db389849]{background:var(--accent-soft)}table.data tr.draft input.cell[data-v-db389849]{background:var(--card);border-color:var(--border)}button.small[data-v-db389849]{padding:2px 8px;border-radius:8px;font-size:13px}.actions[data-v-db389849]{width:1%;white-space:nowrap}:root{--accent: #1f5bd7;--accent-2: #00afff;--accent-grad: linear-gradient(135deg, #1f5bd7, #00afff);--accent-soft: rgba(0, 175, 255, .12);--text: #21242c;--text-2: #5a6472;--bg: #f2f9ff;--card: #ffffff;--border: #d9e8f5;--ok: #006848;--warn: #b45c00;--err: #8b3a3a}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif;background:var(--bg);color:var(--text)}.topbar{display:flex;align-items:center;gap:12px;padding:10px 20px;background:var(--card);border-bottom:1px solid var(--border)}.topbar .logo{font-weight:800;font-size:18px;letter-spacing:1px;text-decoration:none;background:var(--accent-grad);-webkit-background-clip:text;background-clip:text;color:transparent}.topbar .sub{color:var(--text-2);font-size:13px}main{max-width:1100px;margin:0 auto;padding:20px}h1{font-size:20px;margin:8px 0 16px}h2{font-size:15px;margin:20px 0 10px;color:var(--text-2);font-weight:600}.card{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:14px 16px}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.demo-qr{width:148px;height:148px;border:1px solid var(--border);border-radius:10px;background:#fff}.project-card{cursor:pointer;transition:box-shadow .15s ease,border-color .15s ease}.project-card:hover{border-color:var(--accent-2);box-shadow:0 4px 14px #1f5bd724}.project-card .name{font-weight:600;margin-bottom:6px}.project-card .meta{font-size:12.5px;color:var(--text-2)}.badge{display:inline-block;font-size:12px;font-weight:600;padding:2px 10px;border-radius:999px;background:var(--accent-soft);color:var(--accent)}.badge.ok{background:#0068481a;color:var(--ok)}.badge.warn{background:#ff830024;color:var(--warn)}.badge.muted{background:#5a64721a;color:var(--text-2)}.row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}button{font:inherit;padding:8px 14px;border-radius:10px;border:1px solid var(--border);background:var(--card);color:var(--text);cursor:pointer}button.primary{background:var(--accent-grad);border:none;color:#fff;font-weight:600}button:disabled{opacity:.5;cursor:default}a.button-link{display:inline-block;padding:8px 14px;border-radius:10px;border:1px solid var(--border);background:var(--card);color:var(--text);text-decoration:none;font-weight:600}a.button-link:hover{border-color:var(--accent-2)}input[type=text],select{font:inherit;padding:8px 12px;border-radius:10px;border:1px solid var(--border);background:var(--card);color:var(--text);min-width:220px}.error{margin:10px 0;padding:10px 14px;border-radius:10px;background:#8b3a3a14;border:1px solid rgba(139,58,58,.3);color:var(--err);font-size:14px}.hint{font-size:12.5px;color:var(--text-2)}.editor-frame{width:100%;height:calc(100vh - 260px);min-height:480px;border:1px solid var(--border);border-radius:14px;background:#fff}.empty{color:var(--text-2);padding:24px 0}.version-row{padding:6px 0;border-bottom:1px solid var(--border)}.version-row:last-of-type{border-bottom:none}
