*{box-sizing:border-box;margin:0;padding:0}body{font-family:Segoe UI,Hiragino Sans,sans-serif;color:#1f2328}.dd-page,body{background:#f0f2f5}.dd-page{min-height:100vh;color:#182330;font-size:14px}.dd-header{height:54px;padding:0 28px;background:#20252b;color:#fff;display:flex;align-items:center;justify-content:space-between}.dd-main{max-width:1240px;margin:30px auto;padding:0 24px 45px}.dd-title{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}.dd-title h1{font-size:24px;margin:0 0 8px}.dd-note,.dd-title p{color:#627186;line-height:1.7;margin:0}.dd-panel{background:#fff;border:1px solid #dce2e9;border-radius:8px;padding:24px;margin:0 0 22px}.dd-panel h2{font-size:19px;margin:0 0 20px}.dd-actions,.dd-toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:18px}.dd-actions{margin-top:24px;margin-bottom:0}.dd-page button{font:inherit;padding:9px 17px;border:1px solid #2861bc;border-radius:5px;background:#2861bc;color:#fff;cursor:pointer;white-space:nowrap}.dd-page button.secondary{background:#fff;color:#35465b;border-color:#c8d1dc}.dd-page button.danger{background:#fff;color:#a42d3c;border-color:#e2b7bd}.dd-page button:disabled{opacity:.5;cursor:default}.dd-page button:focus-visible,.dd-page input:focus,.dd-page select:focus,.dd-page textarea:focus{outline:2px solid #83adeb;outline-offset:2px}.dd-header button{border-color:#fff;background:transparent;padding:5px 14px}.dd-page input,.dd-page select,.dd-page textarea{font:inherit;box-sizing:border-box;border:1px solid #bcc8d6;border-radius:4px;padding:9px 10px;background:#fff;color:#243245}.dd-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px 22px}.dd-grid label,.dd-label{display:block;font-size:13px;font-weight:600}.dd-grid input,.dd-grid select,.dd-grid textarea,.dd-label textarea{display:block;width:100%;margin-top:7px;font-weight:400}.dd-grid .wide{grid-column:1/-1}.dd-page small{display:block;color:#738197;font-size:12px;margin-top:5px;line-height:1.5}.dd-check{display:flex!important;gap:9px;align-items:center;font-weight:400!important}.dd-check input{width:16px!important;height:16px!important;margin:0!important}.dd-table-wrap{overflow:auto}.dd-page table{width:100%;border-collapse:collapse;font-size:13px}.dd-page th{background:#f1f5fa;color:#526277;text-align:left;white-space:nowrap}.dd-page td,.dd-page th{padding:12px;border-bottom:1px solid #e1e7ee;line-height:1.6;vertical-align:middle}.dd-page td button{padding:5px 10px;font-size:12px}.dd-badge{display:inline-block;border-radius:4px;padding:2px 8px;background:#e8f3ec;color:#286140;white-space:nowrap}.dd-badge.testing{background:#fff3d9;color:#8a611c}.dd-badge.draft,.dd-badge.stopped{background:#e9edf2;color:#677282}.dd-message{padding:12px 16px;margin-bottom:18px;border-radius:4px;background:#e8f3ec;color:#286140;white-space:pre-line}.dd-message.error{background:#fff0f0;color:#a1333e}.dd-tabs{display:flex;gap:7px;border-bottom:1px solid #dce2e9;margin-bottom:20px}.dd-tabs button{background:transparent;color:#67778b;border:0;border-bottom:3px solid transparent;border-radius:0}.dd-tabs button.active{color:#2158a9;border-bottom-color:#2861bc;font-weight:600}.dd-section{border-top:1px solid #e1e7ee;margin-top:24px;padding-top:20px}.dd-readonly{background:#f4f6f9!important}.dd-empty{text-align:center;padding:25px!important;color:#738197}.dd-page code{overflow-wrap:anywhere}.dd-login{max-width:430px;margin:50px auto}.dd-login label{display:block;margin-bottom:18px}.dd-login input{display:block;width:100%;margin-top:8px}.dd-detail{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}.dd-native-note{font-size:12px;color:#627186}@media (max-width:850px){.dd-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dd-title{align-items:flex-start}.dd-main{padding:0 14px 30px}}@media (max-width:580px){.dd-grid{grid-template-columns:1fr}.dd-title{flex-direction:column}.dd-panel{padding:16px}}.login-wrapper[data-v-4d89b450]{display:flex;justify-content:center;align-items:center;min-height:100vh;background:#f0f2f5}.login-card[data-v-4d89b450]{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:48px 40px;width:360px}.title[data-v-4d89b450]{font-size:18px;font-weight:700;text-align:center;margin-bottom:4px}.subtitle[data-v-4d89b450]{font-size:14px;color:#57606a;text-align:center;margin-bottom:32px}.form-group[data-v-4d89b450]{margin-bottom:16px}.form-group label[data-v-4d89b450]{display:block;font-size:13px;font-weight:600;margin-bottom:6px}.form-group input[data-v-4d89b450]{width:100%;padding:9px 12px;border:1px solid #e5e7eb;border-radius:6px;font-size:14px;outline:none}.form-group input[data-v-4d89b450]:focus{border-color:#3b82d4}.error-msg[data-v-4d89b450]{color:#d73a49;font-size:13px;margin-bottom:12px}.btn[data-v-4d89b450]{width:100%;padding:10px;border:none;border-radius:6px;font-size:15px;cursor:pointer}.btn-primary[data-v-4d89b450]{background:#3b82d4;color:#fff;font-weight:600}.btn-primary[data-v-4d89b450]:hover:not(:disabled){background:#2f6bbf}.btn-primary[data-v-4d89b450]:disabled{opacity:.6;cursor:not-allowed}.page[data-v-c78eeaae]{min-height:100vh;background:#f0f2f5}.header[data-v-c78eeaae]{background:#1f2328;color:#fff;padding:0 24px;height:52px;display:flex;align-items:center;justify-content:space-between}.header-title[data-v-c78eeaae]{font-size:16px;font-weight:700}.btn-logout[data-v-c78eeaae]{background:transparent;border:1px solid #fff;color:#fff;padding:5px 14px;border-radius:4px;cursor:pointer;font-size:13px}.btn-logout[data-v-c78eeaae]:hover{background:hsla(0,0%,100%,.1)}.main[data-v-c78eeaae]{max-width:900px;margin:60px auto;padding:0 16px}.page-title[data-v-c78eeaae]{font-size:20px;font-weight:700;margin-bottom:6px}.welcome[data-v-c78eeaae]{color:#57606a;font-size:14px;margin-bottom:40px}.menu-cards[data-v-c78eeaae]{display:flex;gap:24px;flex-wrap:wrap}.menu-card[data-v-c78eeaae]{flex:1;background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:40px 20px;text-align:center;cursor:pointer;transition:box-shadow .15s;min-width:200px;font:inherit;color:inherit}.menu-card[data-v-c78eeaae]:hover{box-shadow:0 4px 16px rgba(0,0,0,.09)}.card-icon[data-v-c78eeaae]{font-size:40px;margin-bottom:16px}.card-label[data-v-c78eeaae]{font-size:15px;font-weight:600;line-height:1.6}