:root{font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif;color:#172039;background:#f8f9fb;font-size:16px;font-synthesis:none;--blue: #3861f6;--line: #e7eaf1;--muted: #657089}*{box-sizing:border-box}body{margin:0;min-width:375px;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #7c9cff;outline-offset:3px}input,select,textarea{border:1px solid #d7ddea;background:#fff;border-radius:5px;color:#172039;padding:7px 11px;min-height:34px;max-width:100%}input::placeholder,textarea::placeholder{color:#6b758b}input[readonly]{background:#f4f5f8;color:#535c72}input[type=checkbox]{width:16px;min-height:16px;accent-color:var(--blue)}textarea{resize:vertical;line-height:1.7}h1,h2,h3,p{margin:0}h1{font-size:28px;letter-spacing:.2px;font-weight:650}h2{font-size:18px;font-weight:600}h3{font-size:15px;font-weight:600}small{font-size:12px;color:var(--muted)}.muted{color:var(--muted)}.nowrap{white-space:nowrap}.mono{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.topbar{height:64px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 40px;gap:122px}.brand{display:flex;align-items:center;gap:10px;flex-shrink:0;white-space:nowrap}.brand svg{color:var(--blue)}.brand strong{font-size:24px;font-weight:650;letter-spacing:.5px}.topbar nav{display:flex;align-self:stretch;gap:62px}.topbar nav a{position:relative;display:flex;align-items:center;padding:0 15px;font-size:18px;font-weight:550;color:#424a60;white-space:nowrap}.topbar nav a.active{color:var(--blue)}.topbar nav a.active:after{content:"";position:absolute;bottom:0;height:3px;background:var(--blue);left:12px;right:12px;border-radius:3px}.topbar-right{margin-left:auto;display:flex;align-items:center;gap:14px}.environment-label{color:#8b94a5;background:#f1f3f7;font-size:11px;padding:3px 7px;border-radius:4px;white-space:nowrap}.icon-button{border:0;background:transparent;color:#5d6680;border-radius:5px;padding:6px;min-width:30px;min-height:30px;display:inline-flex;align-items:center;justify-content:center}.icon-button:hover{background:#eff2f8;color:var(--blue)}.profile-button{display:flex;align-items:center;gap:7px;border:0;background:none;color:#616b81;padding:4px 0}.workspace{padding:38px 40px 40px}.page-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px;min-height:32px;gap:12px}.page-note{font-size:12px;color:#939aab}.toolbar{display:flex;align-items:center;gap:10px;margin-bottom:28px;min-height:38px;flex-wrap:wrap}.toolbar .spacer{flex:1}.button{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:7px 16px;border:1px solid #d9deea;background:#fff;color:#36415a;border-radius:5px;font-size:15px;line-height:22px;white-space:nowrap;transition:background .12s,border-color .12s}.button:hover:not(:disabled){border-color:#9caee4;color:var(--blue);background:#f8faff}.button.primary{background:var(--blue);border-color:var(--blue);color:#fff}.button.primary:hover:not(:disabled){background:#2850df;border-color:#2850df}.button.quiet{border-color:transparent;background:transparent;color:var(--blue);padding:3px 6px;min-height:28px}.button.quiet:hover:not(:disabled){background:#edf2ff}.button.danger{color:#c24343}.button.danger:hover:not(:disabled){background:#fff2f2;border-color:#edc3c3}.button svg{flex-shrink:0}.search{width:360px;max-width:100%;min-height:36px;display:flex;align-items:center;gap:8px;border:1px solid #d5dbe8;border-radius:5px;padding:0 10px;background:#fff;color:#838ca2}.search input{min-height:38px;flex:1;width:100%;outline:none!important;border:0;padding:5px 0;background:transparent}.table-wrap{overflow-x:auto;background:#fff;border-bottom:1px solid var(--line)}table{width:100%;border-collapse:collapse;text-align:left;font-size:16px;white-space:nowrap}th{height:48px;background:#eef1f7;color:#5e6982;font-weight:550;padding:10px 22px;border-bottom:1px solid #e2e7f0}th:first-child{border-top-left-radius:6px}th:last-child{border-top-right-radius:6px}td{height:48px;padding:9px 22px;border-bottom:1px solid var(--line);vertical-align:middle}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#f8faff}.cell-actions{display:flex;align-items:center;gap:8px;min-height:28px}.code-cell{display:flex;align-items:center;gap:6px}.code-cell .icon-button{opacity:0}tr:hover .code-cell .icon-button,.code-cell .icon-button:focus-visible{opacity:1}.badge{font-size:12px;display:inline-block;line-height:20px;white-space:nowrap;padding:1px 9px;border-radius:4px;background:#eff1f5;color:#7a8397;font-weight:500}.badge-active{background:#fff0d9;color:#a26822;font-weight:650}.badge-available{background:#eaf5ee;color:#398559}.badge-failed,.badge-expired,.badge-paused{background:#fff0eb;color:#b96a49}.badge-pending{background:#edf2ff;color:#5577cf}.badge-used,.badge-resolved{background:#eaf5ee;color:#398559}.badge-authorized,.badge-connected{background:#eef2fc;color:#526ba0}.pager{display:flex;justify-content:space-between;align-items:center;padding:18px 0;color:#8890a1;font-size:13px}.pager>div{display:flex;align-items:center;gap:8px}.pager .button{padding:5px 7px;min-height:30px}.page-number{display:flex;align-items:center;justify-content:center;min-width:30px;height:30px;border-radius:5px;background:var(--blue);color:#fff}.page-total{margin-right:4px}.empty{text-align:center;padding:72px 20px;color:#8d96a7;display:flex;flex-direction:column;align-items:center;gap:10px;background:#fff}.empty p{color:#606b83;font-size:15px}.empty .button{margin-top:10px}.notice{display:flex;align-items:flex-start;gap:8px;background:#f0f4fd;border:1px solid #e3eafb;color:#5d7099;padding:10px 13px;border-radius:5px;margin-bottom:16px;line-height:1.6}.notice-error{background:#fff5f2;border-color:#f3ded5;color:#ad5b40}.notice svg{margin-top:2px;flex-shrink:0}.error-text{font-size:12px;color:#bc5a46}.section{background:#fff;padding:24px;border:1px solid var(--line);border-radius:6px}.section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.stats{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border:1px solid var(--line);border-radius:6px;margin-bottom:28px;padding:22px 0}.stat{padding:0 28px;border-right:1px solid var(--line)}.stat:last-child{border:0}.stat>span{color:#7c8597}.stat strong{display:block;font-size:30px;font-weight:600;margin-top:9px;font-variant-numeric:tabular-nums}.overview-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:24px}.todo-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:62px;border-bottom:1px solid var(--line)}.todo-row:last-child{border:0}.todo-row>span{display:flex;gap:10px;align-items:center}.todo-row svg{color:#93a2be}.activity-row{display:flex;justify-content:space-between;gap:10px;padding:13px 0;border-bottom:1px solid var(--line)}.activity-row:last-child{border:0}.activity-row p{font-size:13px;line-height:1.5}.activity-row span{font-size:12px;color:#8c95a6;white-space:nowrap}.source-strip{display:flex;align-items:center;gap:28px;flex-wrap:wrap;background:#fff;border:1px solid var(--line);padding:17px 20px;border-radius:6px;margin-bottom:22px}.source-strip>div{display:flex;flex-direction:column;gap:6px}.source-strip small{color:#8a93a6}.source-strip strong{font-size:14px;font-weight:550}.source-strip .source-actions{margin-left:auto;display:flex;flex-direction:row;gap:8px}.state-dot{display:inline-flex;gap:7px;align-items:center}.state-dot:before{content:"";width:6px;height:6px;border-radius:50%;background:#a4acbb;flex-shrink:0}.state-dot.is-on:before{background:#479165}.settings-list{display:flex;flex-direction:column;gap:4px}.settings-list button{justify-content:flex-start;padding:12px;gap:10px;border:0;font-size:14px;background:transparent;color:#44516d}.settings-list button:hover{background:#f4f6fa}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#1b233626;display:flex;align-items:center;justify-content:center;z-index:100;padding:28px}.modal{width:min(var(--modal-width),100%);max-height:calc(100dvh - 56px);background:#fff;border-radius:8px;box-shadow:0 12px 48px #19233e29;display:flex;flex-direction:column;outline:0;overflow:hidden}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 14px;gap:16px}.modal-header h2{font-size:24px;font-weight:600}.modal-body{padding:16px 24px 22px;overflow:auto;min-height:0}.modal-footer{display:flex;justify-content:flex-end;gap:10px;margin:0 24px;border-top:1px solid var(--line);padding:16px 0}.field{display:grid;grid-template-columns:105px minmax(0,1fr);align-items:start;gap:14px;margin-bottom:16px;min-height:34px}.field>span{color:#5e6b82;padding-top:7px}.field-value{min-width:0;display:flex;flex-direction:column;gap:6px}.field-value input,.field-value select,.field-value textarea{width:100%}.field-value small{line-height:1.5}.field:last-child{margin-bottom:0}#membership-form{padding:0 32px;font-size:18px}#membership-form .field{grid-template-columns:105px minmax(0,1fr);gap:24px}.search:focus-within{outline:2px solid #7c9cff;outline-offset:3px}.load-error{padding:38px 20px;background:#fff;color:#ad5b40;text-align:center}.form-actions{display:flex;gap:8px;align-items:center}.modal .table-wrap{margin-top:5px}.modal th,.modal td{padding:10px 13px;font-size:13px}.modal .empty{padding:36px 12px}.modal .toolbar{margin-bottom:14px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px 28px;margin-bottom:24px}.detail-grid>div{display:flex;align-items:center;gap:15px;min-height:22px}.detail-grid label{color:#5e6b82;font-size:15px;min-width:65px}.modal-section{padding-top:18px;margin-top:20px;border-top:1px solid var(--line)}.modal-section h3{margin-bottom:14px}.device-row{display:flex;align-items:center;gap:12px;padding:12px 0;flex-wrap:wrap}.device-row>div{display:flex;flex-direction:column;gap:4px}.device-row small{margin-left:auto}.inline-confirm{display:inline-flex;align-items:center;gap:4px;flex-wrap:wrap}.check-field{display:flex;gap:8px;align-items:center;min-height:34px;color:#4e5a72}.subtle-note{font-size:12px;line-height:1.7;color:#8993a6;margin-top:12px}.codes-form{display:grid;grid-template-columns:minmax(150px,2fr) 90px 130px auto;align-items:end;gap:12px;margin-bottom:20px}.codes-form label{display:flex;flex-direction:column;gap:8px;font-size:13px;color:#778198}.note-form{display:flex;align-items:center;gap:12px}.note-form label{color:#7f899d;font-size:13px}.note-form input{flex:1;min-width:0}.note-form label{min-width:44px}.codes-output{margin:16px 0;padding:14px;background:#f5f8ff;border:1px solid #e4eafd;border-radius:5px}.codes-output textarea{width:100%;min-height:90px;font-family:ui-monospace,monospace;font-size:12px;margin:10px 0}.codes-output>div{display:flex;justify-content:space-between;align-items:center;gap:10px}.modal-subnav{display:flex;gap:10px;margin-bottom:18px}.modal-subnav .button{font-size:13px}.content-preview{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.85;color:#5e6a81;max-height:400px;overflow:auto}.content-editor{width:100%;min-height:260px}.upload-box{border:1px dashed #cdd7eb;border-radius:6px;padding:28px 16px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px;color:#73809b}.upload-box input{border:0;max-width:100%;font-size:12px}.source-preview{margin-top:20px}.source-preview dl{display:grid;grid-template-columns:100px 1fr;gap:12px;margin:0}.source-preview dt{color:#8290a7}.source-preview dd{margin:0}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.toast{position:fixed;top:82px;left:50%;transform:translate(-50%);z-index:150;display:flex;align-items:center;gap:8px;color:#36724d;background:#fff;border:1px solid #dbeadf;padding:12px 20px;border-radius:7px;box-shadow:0 4px 20px #182b4d12;max-width:90vw;font-size:14px}.initial-loading{display:grid;place-items:center;min-height:100vh;color:#9099aa}.login-page{min-height:100vh;display:grid;place-items:center;background:#f7f9fc;padding:24px}.login-form{width:350px;max-width:100%;display:flex;flex-direction:column;gap:18px;padding:36px;background:#fff;border:1px solid var(--line);border-radius:8px}.login-form .brand{justify-content:center;margin-bottom:12px}.login-form h1{font-size:20px;text-align:center;margin-bottom:8px}.login-form label{display:flex;flex-direction:column;gap:8px;color:#778198;font-size:13px}.login-form input{height:38px}.login-form .button{width:100%;height:38px}.login-form .notice{margin:0}.ticket-link{color:var(--blue);cursor:pointer}.conversation{background:#fff;border:1px solid var(--line);border-radius:6px;max-width:1100px;margin:0 auto;overflow:hidden}.conversation-header{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-bottom:1px solid var(--line)}.messages{min-height:320px;max-height:50vh;overflow:auto;padding:24px;display:flex;flex-direction:column;gap:22px}.message{max-width:75%;align-self:flex-start}.message.support{align-self:flex-end}.message-meta{font-size:12px;color:#8a93a5;margin-bottom:7px}.message p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.75;padding:10px 14px;background:#f3f5f9;border-radius:6px}.message.support p{background:#eef3ff;color:#43618e}.reply-box{padding:18px 24px;border-top:1px solid var(--line)}.reply-box textarea{width:100%;min-height:90px}.reply-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:10px}.content-row{display:flex;justify-content:space-between;align-items:center;padding:15px 0;border-bottom:1px solid var(--line)}.content-row:last-child{border:0}.content-row>div{display:flex;align-items:center;gap:12px}.break{white-space:normal;overflow-wrap:anywhere;max-width:300px}.caption{font-size:12px;color:#9099ab}@media(min-width:1700px){.workspace{padding-left:48px;padding-right:48px}}@media(max-width:1000px){.topbar{gap:25px;padding:0 24px}.topbar nav{gap:5px}.topbar nav a{padding:0 12px}.workspace{padding:26px 24px}.overview-grid{grid-template-columns:1fr}.source-strip{gap:22px}.topbar-right{gap:8px}.profile-button span{display:none}}@media(max-width:700px){#membership-form{padding:0}#membership-form .field{grid-template-columns:83px minmax(0,1fr);gap:8px}.codes-form{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.codes-form label:first-child{grid-column:1 / -1}.codes-form .button{grid-column:1 / -1;align-self:end}.content-row>div{flex-wrap:wrap;gap:6px}.topbar{height:auto;flex-wrap:wrap;gap:0;padding:13px 18px 0}.brand strong{font-size:21px}.topbar .brand svg{width:27px}.topbar nav{order:3;width:100%;height:48px;justify-content:space-between;margin-top:8px;gap:0}.topbar nav a{font-size:14px;padding:0 9px}.topbar-right{margin-left:auto}.workspace{padding:22px 16px}.page-heading{margin-bottom:18px}h1{font-size:22px}.toolbar{gap:8px}.toolbar .search{width:100%}.toolbar .spacer{display:none}.toolbar .button{padding:6px 10px}.table-wrap table{min-width:740px}td,th{padding:10px 14px}.stats{grid-template-columns:1fr 1fr;row-gap:22px}.stat{padding:0 20px}.stat:nth-child(2){border:0}.stat strong{font-size:27px}.section{padding:18px}.source-strip{padding:15px;gap:16px}.source-strip .source-actions{width:100%;margin:0}.modal-backdrop{padding:14px}.modal{max-height:calc(100dvh - 28px)}.modal-header{padding:17px 18px 12px}.modal-body{padding:12px 18px 18px}.modal-footer{margin:0 18px;padding:14px 0}.field{grid-template-columns:83px 1fr;gap:8px}.detail-grid{grid-template-columns:1fr;gap:14px}.modal .table-wrap table{min-width:570px}.message{max-width:92%}.conversation-header,.reply-box{padding:14px}.messages{padding:16px}.page-note{display:none}.device-row small{margin-left:0}.pager{gap:10px;font-size:12px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.users-table th:nth-child(1){width:14%}.users-table th:nth-child(2){width:20%}.users-table th:nth-child(3){width:17%}.users-table th:nth-child(4){width:20%}.users-table th:nth-child(5){width:12%}.users-table th:nth-child(6){width:17%}.toolbar>select{min-width:146px;min-height:38px}.user-extra{border-top:1px solid var(--line);margin-top:20px;padding-top:14px}.user-extra summary{cursor:pointer;color:#66738c;font-size:13px;width:fit-content;padding:5px 0}.user-extra summary:focus-visible{outline:2px solid #7c9cff;outline-offset:3px}.note-detail>span{overflow-wrap:anywhere;min-width:0}.note-detail .button{margin-left:auto}.caption,.page-note,.pager,.activity-row span,.source-strip small,.subtle-note,.message-meta,.codes-form label{color:var(--muted)}.device-row small{color:var(--muted);font-size:13px}
