.confirm-msg[data-v-83dd8e29]{color:var(--txt1);white-space:pre-wrap;word-break:break-all;margin:0 0 10px;font-size:13px;line-height:1.6}*{box-sizing:border-box;margin:0;padding:0}:root{--bg:#f7f8fa;--bg2:#fff;--bg3:#eef0f3;--line:#00000014;--txt:#1f2329;--txt2:#5c626b;--accent:#14b8a6;--danger:#d94848}html,body,#app{height:100%}body{background:var(--bg);color:var(--txt);-webkit-font-smoothing:antialiased;font:14px/1.6 system-ui,Segoe UI,Microsoft YaHei,sans-serif}a{color:var(--accent);cursor:pointer;text-decoration:none}.layout{height:100%;display:flex}.sidebar{background:var(--bg2);border-right:1px solid var(--line);flex-direction:column;flex-shrink:0;width:130px;display:flex}.sidebar .brand{border-bottom:1px solid var(--line);flex-direction:column;align-items:center;gap:6px;padding:14px 10px 12px;display:flex}.sidebar .brand-logo{border-radius:8px;flex-shrink:0;width:34px;height:34px}.sidebar .brand-txt{color:#0b4f48;letter-spacing:2px;margin-right:-2px;font-size:13px;font-weight:700}.side-nav{flex-direction:column;flex:1;gap:4px;padding:14px 10px;display:flex}.sidebar .side-tab{text-align:left;color:#3d434b;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:7px;width:100%;padding:8px 10px;font-size:13px;font-weight:500;transition:background .15s,color .15s;display:flex}.sidebar .side-ico{flex-shrink:0;width:15px;height:15px;display:inline-flex}.sidebar .side-ico svg{width:100%;height:100%}.sidebar .side-tab:hover{color:#111;background:#0000000b}.sidebar .side-tab.active{color:var(--accent);background:#14b8a61c;font-weight:600}.side-foot{border-top:1px solid var(--line);flex-direction:column;gap:9px;padding:12px;display:flex}.foot-user{align-items:center;gap:8px;display:flex}.side-foot .avatar{width:28px;height:28px;color:var(--accent);background:#14b8a624;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:inline-flex}.side-foot-name{min-width:0;color:var(--txt);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:13px;font-weight:500;overflow:hidden}.foot-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.foot-btn{border:1px solid var(--line);background:var(--bg2);width:28px;height:28px;color:var(--txt2);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;padding:0;display:inline-flex}.foot-btn:hover{color:var(--txt);background:#fafbfc;border-color:#00000040}.foot-btn svg{width:15px;height:15px}.main-col{flex-direction:column;flex:1;min-width:0;display:flex}.main-content{flex:1;padding:24px 28px 40px;overflow:auto}.page-card{background:var(--bg2);border:1px solid var(--line);border-radius:10px;padding:14px 16px;box-shadow:0 1px 2px #1018280a,0 2px 8px #10182808}.page-head{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px;display:flex}.page-head h2{letter-spacing:.5px;font-size:18px;font-weight:700}.page-head .spacer{flex:1}.page-title{flex-direction:column;gap:1px;display:flex}.btn{border:1px solid var(--line);background:var(--bg2);color:var(--txt);cursor:pointer;white-space:nowrap;border-radius:7px;justify-content:center;align-items:center;gap:4px;padding:6px 14px;font-size:13.5px;line-height:1;display:inline-flex}.btn:hover{background:#fafbfc;border-color:#00000040}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.btn.primary:hover{filter:brightness(1.06);background:var(--accent)}.btn.danger{color:var(--danger);border-color:#d9484866}.btn.danger:hover{border-color:var(--danger);background:#d948480d}.btn.sm{border-radius:6px;padding:3px 9px;font-size:12px;line-height:1}.data td .btn+.btn{margin-left:6px}.btn.link{color:var(--txt2);background:0 0;border-color:#0000;padding:3px 7px}.btn.link:hover{color:var(--txt);background:#0000000a}input:not([type=checkbox]):not([type=radio]):not([type=file]),input[type=text],input[type=password],input[type=number],input[type=datetime-local],select,textarea{background:var(--bg2);border:1px solid var(--line);color:var(--txt);border-radius:8px;outline:none;padding:7px 12px;font-family:inherit;font-size:13.5px}select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%235c626b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;padding-right:30px}select option{color:#1f2329;background:#fff}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #14b8a61f}textarea{resize:vertical;min-height:90px;line-height:1.7}label.form-label{color:var(--txt2);margin:12px 0 5px;font-size:12px;display:block}.form-row{align-items:center;gap:10px;display:flex}.form-row>*{flex-shrink:0}.form-row input,.form-row select{flex-shrink:1}table.data{border-collapse:collapse;width:100%;font-size:13.5px}table.data th{text-align:left;color:var(--txt2);letter-spacing:.3px;border-bottom:1px solid var(--line);white-space:nowrap;background:#f2f4f6;padding:9px 12px;font-size:12.5px;font-weight:600}table.data th:first-child{border-radius:8px 0 0 8px}table.data th:last-child{border-radius:0 8px 8px 0}table.data td{vertical-align:middle;border-bottom:1px solid #0000000d;padding:10px 12px}table.data .ta-c{text-align:center}table.data tr:hover td{background:#00000005}.tag{border-radius:20px;padding:1px 8px;font-size:12px;display:inline-block}.tag.on{color:#1a9a55;background:#1a9a551a}.tag.off{color:#c23a3a;background:#d948481a}.tag.muted{color:var(--txt2);background:#0000000f}.code-text{letter-spacing:1px;font-family:Consolas,monospace}.ellipsis{text-overflow:ellipsis;white-space:nowrap;max-width:260px;overflow:hidden}.stat-cards{flex-wrap:wrap;gap:12px;margin-bottom:16px;display:flex}.stat-card{background:var(--bg2);border:1px solid var(--line);border-radius:10px;align-items:center;gap:12px;width:232px;padding:14px 18px;display:flex;position:relative;box-shadow:0 1px 2px #1018280a,0 2px 8px #10182808}.stat-ico{width:38px;height:38px;color:var(--accent);background:#14b8a61a;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.stat-ico svg{width:19px;height:19px}.stat-card .num{font-size:22px;font-weight:700;line-height:1.25}.stat-card .lbl{color:var(--txt2);font-size:12px}.stat-card .stat-range{border-radius:6px;width:auto;padding:1px 20px 1px 6px;font-size:12px;position:absolute;top:9px;right:10px}.sub-tabs{border-bottom:1px solid var(--line);gap:22px;margin-bottom:14px;display:flex}.sub-tab{color:var(--txt2);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;margin-bottom:-1px;padding:8px 2px;font-size:13.5px}.sub-tab:hover{color:var(--txt)}.sub-tab.active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.pagination{color:var(--txt2);justify-content:flex-end;align-items:center;gap:8px;margin-top:12px;font-size:13px;display:flex}.modal-overlay{z-index:100;background:#00000059;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--bg2);border:1px solid var(--line);border-radius:12px;width:min(520px,100vw - 40px);max-height:calc(100vh - 80px);padding:18px 20px;overflow:auto;box-shadow:0 8px 30px #0000001f}.modal h3{margin-bottom:6px;font-size:15px}.modal .modal-foot{justify-content:flex-end;gap:10px;margin-top:18px;display:flex}.toast-box{background:var(--bg2);color:var(--txt);border:1px solid var(--line);z-index:200;pointer-events:none;border-radius:8px;padding:9px 20px;font-size:13.5px;transition:transform .22s;position:fixed;top:18px;left:50%;transform:translate(-50%)translateY(-80px);box-shadow:0 4px 16px #0000001a}.toast-box.show{transform:translate(-50%)translateY(0)}.toast-box.error{color:var(--danger);border-color:#d9484880}.login-wrap{justify-content:center;align-items:center;height:100%;display:flex}.login-box{background:var(--bg2);border:1px solid var(--line);border-radius:14px;width:340px;padding:30px 28px;box-shadow:0 6px 24px #00000014}.login-box h1{text-align:center;letter-spacing:3px;color:#0b4f48;flex-direction:column;align-items:center;gap:10px;margin-bottom:22px;margin-right:-3px;font-size:17px;display:flex}.login-box h1 img{border-radius:11px;width:52px;height:52px}.login-box .btn{width:100%;margin-top:18px;padding:9px}.cat-row{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:12px;display:flex}.cat-chip{border:1px solid var(--line);background:var(--bg2);color:var(--txt2);cursor:pointer;border-radius:20px;padding:4px 13px;font-size:12px;line-height:1}.cat-chip.active{color:var(--accent);background:#14b8a61a;border-color:#14b8a673}.cat-chip:hover{color:var(--txt)}.upload-progress{background:var(--bg3);border-radius:4px;height:6px;margin-top:8px;overflow:hidden}.upload-progress i{background:var(--accent);height:100%;transition:width .2s;display:block}.cover-thumb{object-fit:cover;background:var(--bg3);border-radius:6px;width:46px;height:46px}.empty-tip{text-align:center;color:var(--txt2);border:1px dashed var(--line);border-radius:10px;margin:4px 0;padding:36px 0;font-size:13px}.material-page{flex-direction:column;height:100%;display:flex}.material-page .page-head{flex-shrink:0}.prompt-main{flex:1;align-items:stretch;gap:14px;min-height:0;display:flex}.prompt-side{flex-direction:column;flex-shrink:0;gap:10px;width:330px;min-width:0;min-height:0;display:flex}.prompt-panel{background:var(--bg2);border:1px solid var(--line);border-radius:10px;flex:1;min-height:0;padding:10px;display:flex}.prompt-list{flex-direction:column;flex:1;gap:8px;min-height:0;padding-right:2px;display:flex;overflow:auto}.prompt-empty{color:var(--txt2);flex:1;justify-content:center;align-items:center;font-size:13px;display:flex}.prompt-item{border:1px solid var(--line);background:var(--bg2);cursor:pointer;border-radius:10px;padding:9px 12px}.prompt-item:hover{border-color:#00000040}.prompt-item.active{border-color:var(--accent);background:#14b8a60d}.prompt-item-title{align-items:center;gap:6px;min-width:0;display:flex}.prompt-item-title .tag,.prompt-item-title .usage-pill{white-space:nowrap;flex-shrink:0}.prompt-item-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:13.5px;font-weight:600;overflow:hidden}.prompt-detail{background:var(--bg2);border:1px solid var(--line);border-radius:10px;flex-direction:column;flex:1;min-width:0;min-height:0;padding:14px 16px;display:flex;overflow:hidden}.prompt-detail-empty{color:var(--txt2);justify-content:center;align-items:center;display:flex}.prompt-content{resize:none;flex:1;min-height:0}.prompt-toprow{flex-wrap:nowrap;justify-content:flex-start;align-items:center;gap:10px;display:flex}.prompt-toplabel{color:var(--txt2);flex-shrink:0;font-size:13px}.usage-pills{flex-shrink:0;align-items:center;gap:8px;display:flex}.usage-pill{border:1px solid var(--line);background:var(--bg2);cursor:pointer;color:var(--txt);border-radius:999px;padding:4px 16px;font-size:12px;line-height:1}.usage-pill.active{background:var(--pill,var(--accent));border-color:var(--pill,var(--accent));color:#fff}.usage-pill:disabled{opacity:.45;cursor:not-allowed}.usage-pill.mini{color:var(--pill,var(--txt2));background:var(--bg3);padding:1px 10px;font-size:12px}.prompt-detail-foot{flex-shrink:0;align-items:center;gap:10px;margin-top:10px;display:flex}.form-hint{color:var(--txt2);margin-left:6px;font-size:12px;font-weight:400}.section-title{margin:18px 0 10px;font-size:15px;font-weight:600}.sys-config-card{align-items:stretch;gap:24px;display:flex}.sys-config-main{flex:1;min-width:0}.sys-config-side{border-left:1px solid var(--line);flex-direction:column;flex-shrink:0;align-items:center;gap:10px;width:160px;padding-left:24px;display:flex}.qrcode-box{cursor:pointer;border-radius:8px;width:120px;height:120px;position:relative}.qrcode-box.is-empty{border:1px dashed var(--line);color:var(--txt2);place-items:center;font-size:12.5px;display:grid}.qrcode-box.is-empty:hover{border-color:var(--accent);color:var(--accent)}.qrcode-thumb{object-fit:cover;border:1px solid var(--line);border-radius:8px;width:100%;height:100%;display:block}.qrcode-empty-text{pointer-events:none}.qrcode-remove{border:1px solid var(--line);width:20px;height:20px;color:var(--danger);cursor:pointer;background:#fff;border-radius:50%;place-items:center;padding:0;font-size:14px;line-height:1;display:grid;position:absolute;top:-8px;right:-8px}.qrcode-remove:hover{background:var(--danger);border-color:var(--danger);color:#fff}.device-cell{flex-direction:column;line-height:1.4;display:flex}.device-cell .code-text{max-width:200px}.device-remark{color:var(--txt2);font-size:12px}.device-geo{color:var(--txt2);opacity:.85;font-size:12px}.check-line{align-items:center;gap:7px;margin:8px 0;font-size:13.5px;display:flex}.check-line input[type=checkbox]{width:15px;height:15px;accent-color:var(--accent)}
