*{box-sizing:border-box}html,body{color:#27364a;background:#f4f5f7;min-height:100%;margin:0;font-family:Microsoft YaHei,PingFang SC,Arial,sans-serif;font-size:14px}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{text-decoration:none}.primary{color:#fff!important;background:#5c50f5!important;border-color:#5c50f5!important}.danger{color:#f56c6c!important;background:#fff!important;border-color:#f56c6c!important}.link{color:#534bfa!important;background:0 0!important;border:0!important;padding:0 10px!important}.boot{color:#5f6d7e;background:#f3f5f7;justify-content:center;align-items:center;gap:12px;height:100vh;display:flex}.error-boot{flex-direction:column}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.login-page{background:#0e2b39;justify-content:flex-end;align-items:center;height:100vh;min-height:620px;padding-right:12vw;display:flex;position:relative;overflow:hidden}.login-video{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.login-shade{background:linear-gradient(90deg,#001b2826,#00142238 52%,#0013238f);position:absolute;inset:0}.login-card{z-index:1;background:#fffffffa;border-top:4px solid #5967e9;width:400px;padding:36px 42px;box-shadow:0 18px 50px #00121c47}.login-brand{border-bottom:1px solid #e7e9ee;align-items:center;gap:12px;padding-bottom:22px;display:flex}.brand-mark,.mini-logo{color:#fff;clip-path:polygon(0 24%,100% 0,79% 43%,100% 74%,8% 100%,24% 59%);background:#f0ae00;justify-content:center;align-items:center;font-style:italic;font-weight:800;display:inline-flex}.brand-mark{width:44px;height:44px;font-size:25px}.login-brand strong{color:#1c2b3e;font-size:19px;display:block}.login-brand small{color:#8d97a6;margin-top:4px;display:block}.login-card h1{text-align:center;margin:27px 0 23px;font-size:22px}.login-card label{color:#546174;margin:17px 0 7px;display:block}.login-card label>input,.captcha-line input{background:#fff;border:1px solid #d9dfe8;border-radius:2px;outline:none;width:100%;height:42px;padding:0 12px}.login-card input:focus{border-color:#5d59e8;box-shadow:0 0 0 2px #5c50f51a}.captcha-line{grid-template-columns:1fr 118px;gap:8px;display:grid}.captcha{color:#303b4e;background:#f3f5f8;border:1px solid #d9dfe8;height:42px;font-weight:700}.login-button{border:0;width:100%;height:44px;margin-top:12px;font-size:16px}.form-error{color:#e84b4b;margin:8px 0}.login-footer{text-align:center;color:#ffffffc7;width:400px;font-size:12px;position:absolute;bottom:22px;right:12vw}.app-shell{min-width:1180px;min-height:100vh}.topbar{color:#fff;background:#111a2a;align-items:stretch;height:60px;display:flex;position:relative}.system-name{white-space:nowrap;align-items:center;gap:10px;width:158px;padding-left:8px;display:flex}.mini-logo{width:25px;height:25px;font-size:14px}.system-name strong{font-size:15px}.split{background:#89909c;align-self:center;width:1px;height:20px;margin-right:16px}.topbar nav{flex:1;height:60px;display:flex}.topbar nav button{color:#fff;background:0 0;border:0;height:60px;padding:0 24px;position:relative}.topbar nav button:hover,.topbar nav button.active{background:#0d1524}.topbar nav button.active:after{content:"";background:#5c50f5;height:3px;position:absolute;bottom:0;left:22px;right:22px}.platform-switch{white-space:nowrap;color:#cfd6e1;background:#202b3c;align-items:center;gap:8px;height:60px;padding:0 12px;display:flex}.platform-switch select{color:#fff;background:#111a2a;border:1px solid #526076;outline:0;height:34px;padding:0 9px}.header-search{background:#172337;border-left:1px solid #253248;align-items:center;width:178px;height:60px;padding:0 14px;display:flex}.header-search input{color:#fff;background:0 0;border:0;outline:0;width:140px}.header-search input::placeholder{color:#d2d7df}.account{color:#fff;background:#182131;border:0;align-items:center;gap:8px;height:60px;padding:0 14px;display:flex}.account i{background:#718096;width:1px;height:18px;margin:0 4px}.account-menu{color:#2c3748;z-index:30;background:#fff;border:1px solid #e4e8ef;width:180px;position:absolute;top:54px;right:8px;box-shadow:0 6px 20px #0000002e}.account-menu p{border-bottom:1px solid #eee;margin:0;padding:14px 16px}.account-menu p strong,.account-menu p small{display:block}.account-menu p small{color:#8993a2;margin-top:4px}.account-menu button{text-align:left;color:#4d5969;background:#fff;border:0;gap:8px;width:100%;padding:12px 16px;display:flex}.page-title{color:#667286;background:#f0f1f3;height:62px;padding:20px 4px}.notice{z-index:100;background:#fff;border:1px solid #e1e6ed;align-items:center;gap:8px;min-width:250px;padding:12px 16px;display:flex;position:fixed;top:76px;right:24px;box-shadow:0 8px 22px #15213026}.notice.success{border-left:4px solid #39a875}.notice.error{border-left:4px solid #ef5966}.project-panel,.module-card{background:#fff;margin:0 3px 22px}.summary-line{border-bottom:1px solid #cbd2dc;align-items:center;gap:22px;height:60px;padding:0 14px;display:flex}.summary-line strong{color:#27364a;margin-left:8px;font-size:22px}.summary-line>div{gap:10px;margin-left:auto;display:flex}.summary-line button,.module-tools button,.filter-actions button,.modal-actions button,.setting-form button{color:#4e5b6d;background:#fff;border:1px solid #d6dde8;align-items:center;gap:5px;height:34px;padding:0 15px;display:inline-flex}.filters{border-bottom:1px solid #cbd2dc;grid-template-columns:repeat(6,minmax(160px,1fr));gap:16px 20px;padding:16px 14px 12px;display:grid}.filters label,.module-tools label{white-space:nowrap;color:#435166;align-items:center;gap:10px;display:flex}.filters input,.filters select,.module-tools input,.module-tools select{color:#566477;background:#fff;border:1px solid #d4dce8;outline:0;flex:1;min-width:0;height:34px;padding:0 12px}.filters input:focus,.filters select:focus{border-color:#665cff}.wide-label{grid-column:span 2}.filter-actions{grid-column:span 2;justify-content:flex-end;align-items:center;gap:10px;display:flex}.table-wrap{overflow-x:auto}.data-table{border-collapse:collapse;color:#4d596b;width:100%;min-width:1420px}.data-table th{color:#344157;text-align:left;white-space:nowrap;background:#fbfcfd;height:45px;font-weight:600}.data-table td{text-overflow:ellipsis;max-width:190px;height:66px;overflow:hidden}.data-table th,.data-table td{border:1px solid #d8dee7;padding:8px 10px}.data-table th:first-child,.data-table td:first-child{text-align:center;width:40px}.data-table tr:hover td{background:#f8f9ff}.project-name{color:#303e50;font-weight:500}.status{white-space:nowrap;background:#edf1f5;border-radius:12px;padding:4px 9px;display:inline-block}.status-submitted,.status-expert_review{color:#3769c8;background:#edf4ff}.status-scored,.status-starred{color:#169363;background:#eaf8f2}.status-returned,.status-city_timeout{color:#d7604b;background:#fff0ed}.empty{text-align:center;color:#9ba5b2;padding:70px}.pager-row{justify-content:space-between;height:72px;padding:18px 20px;display:flex}.pager-row>div{gap:8px;display:flex}.pager-row select,.pager-row button{background:#fff;border:1px solid #d8dfe9;height:30px;padding:0 12px}.pager-row .page-active{color:#fff;background:#5c50f5;border-color:#5c50f5}.modal-backdrop{z-index:90;background:#00000075;justify-content:center;align-items:center;padding:28px;display:flex;position:fixed;inset:0}.modal{background:#fff;border-radius:6px;flex-direction:column;width:700px;max-height:92vh;display:flex;overflow:hidden;box-shadow:0 10px 36px #00000040}.modal-wide{width:min(1240px,94vw)}.modal>header{border-bottom:1px solid #e1e5eb;flex:none;align-items:center;height:54px;padding:0 20px;display:flex}.modal>header h2{margin:0;font-size:16px;font-weight:500}.modal>header button{background:0 0;border:0;margin-left:auto}.modal-body{padding:20px;overflow:auto}.modal-actions{border-top:1px solid #e1e5eb;flex:none;justify-content:flex-end;align-items:center;gap:10px;min-height:58px;padding:10px 20px;display:flex}.detail-summary{background:#f8f9fb;gap:50px;padding:16px 20px;display:flex}.detail-summary b{color:#4e49ed}.tabs{border-bottom:1px solid #dfe4eb;padding:0 20px;display:flex}.tabs button{color:#687487;background:#fff;border:0;height:46px;padding:0 22px;position:relative}.tabs button.active{color:#5148ed}.tabs button.active:after{content:"";background:#5148ed;height:2px;position:absolute;bottom:0;left:10px;right:10px}.info-grid{border-top:1px solid #e0e5ec;border-left:1px solid #e0e5ec;grid-template-columns:1fr 1fr;display:grid}.info-grid>div{border-bottom:1px solid #e0e5ec;border-right:1px solid #e0e5ec;grid-template-columns:150px 1fr;min-height:48px;display:grid}.info-grid .info-wide{grid-column:span 2}.info-grid dt{color:#687486;background:#f7f8fa;padding:14px}.info-grid dd{color:#303d4f;margin:0;padding:14px}.inner-table{border-collapse:collapse;width:100%}.inner-table th,.inner-table td{text-align:left;border:1px solid #dce2e9;padding:11px 12px}.inner-table th{color:#465368;background:#f7f8fa}.expert-grid{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px;display:grid}.expert-card{border:1px solid #dce2e9;grid-template-columns:22px 1fr;padding:14px;display:grid}.expert-card.selected{background:#f6f5ff;border-color:#645af2}.expert-card span,.expert-card small{color:#758093;grid-column:2;margin-top:5px}.expert-results{margin-top:18px}.score-form h3{margin-top:0}.acting-expert{color:#586679;background:#f7f8fb;align-items:center;gap:12px;padding:12px;display:flex}.acting-expert select{background:#fff;border:1px solid #d4dbe6;min-width:280px;height:36px;padding:0 10px}.score-row{border-bottom:1px solid #e4e7ed;grid-template-columns:1.2fr .5fr 1fr;align-items:end;gap:16px;padding:14px 0;display:grid}.score-row div small{color:#8490a0;margin-top:6px;display:block}.score-row label{color:#667386;gap:6px;display:grid}.score-row input{border:1px solid #d6dde8;height:34px;padding:0 10px}.score-form>.primary{border:0;height:36px;margin-top:18px;padding:0 18px}.expert-opinion-list{gap:14px;display:grid}.expert-opinion-list>article{background:#fff;border:1px solid #e0e5ec;border-radius:6px;overflow:hidden}.expert-opinion-list>article>header{background:#f7f9fb;border-bottom:1px solid #e5e9ef;justify-content:space-between;align-items:center;min-height:48px;padding:0 16px;display:flex}.expert-opinion-list>article>header strong{color:#344256}.expert-opinion-list time{color:#8d98a7;font-size:12px}.expert-opinion-list>article>div{padding:4px 16px}.expert-opinion-list section{border-top:1px solid #edf0f4;grid-template-columns:150px 1fr;gap:18px;padding:13px 0;display:grid}.expert-opinion-list section:first-child{border-top:0}.expert-opinion-list section span{color:#687588}.expert-opinion-list section p{color:#334155;margin:0;line-height:1.7}.expert-opinion-empty{text-align:center;color:#7d8999;padding:70px 20px}.expert-opinion-empty strong{color:#455267;font-size:15px;display:block}.expert-opinion-empty p{margin:8px 0 0}.project-form-body{background:#f5f7fa;padding:18px 22px 26px}.form-section{background:#fff;border:1px solid #e1e6ed;border-radius:7px;padding:20px}.form-section+.form-section{margin-top:18px}.form-section-heading{border-bottom:1px solid #edf0f4;align-items:center;gap:13px;padding-bottom:16px;display:flex}.form-section-heading>span{color:#574cf1;background:#eeedff;border-radius:6px;justify-content:center;align-items:center;width:36px;height:36px;font-weight:700;display:flex}.form-section-heading h3{color:#2f3d50;margin:0;font-size:16px}.form-section-heading p{color:#8792a1;margin:5px 0 0;font-size:13px}.project-form{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:18px;display:grid}.field{color:#506073;gap:7px;display:grid}.field-wide{grid-column:span 3}.field span i,.permission-title i{color:#f04444;margin-right:4px;font-style:normal}.field input,.field textarea,.field select,.compact-form input,.compact-form select{color:#506073;background:#fff;border:1px solid #d5dce6;border-radius:4px;outline:0;min-width:0;padding:9px 11px;transition:border-color .15s,box-shadow .15s}.field input:focus,.field textarea:focus,.field select:focus{border-color:#6c63ee;box-shadow:0 0 0 3px #5c50f514}.field input,.field select{height:38px}.material-list{grid-template-columns:1fr;gap:10px;margin-top:16px;display:grid}.material-card{color:#59687b;background:#fff;border:1px solid #e0e5ec;border-radius:6px;transition:border-color .15s,box-shadow .15s;overflow:hidden}.material-card:hover{border-color:#c9d1dc;box-shadow:0 3px 12px #2533460d}.material-card.has-file{border-color:#b9dccd}.material-card-head{align-items:center;gap:13px;min-height:66px;padding:11px 14px;display:flex}.material-index{color:#718096;background:#f1f3f6;border-radius:5px;flex:none;justify-content:center;align-items:center;width:34px;height:34px;font-size:12px;font-weight:700;display:flex}.material-card.has-file .material-index{color:#16855e;background:#e9f7f1}.material-copy{min-width:0;margin-right:auto}.material-copy strong,.material-copy small{display:block}.material-copy strong{color:#344256;font-size:14px}.material-copy small{color:#929caa;margin-top:5px;font-size:12px}.material-card.has-file .material-copy small{color:#16855e}.material-upload-action{white-space:nowrap;color:#536174;cursor:pointer;background:#fff;border:1px solid #cfd6e0;border-radius:4px;align-items:center;gap:6px;height:34px;padding:0 12px;display:flex}.material-upload-action:hover{color:#534bfa;background:#f7f6ff;border-color:#746bf2}.material-upload-action input{display:none}.material-files{background:#fbfcfd;border-top:1px solid #e9edf2;padding:0 14px}.material-file{color:#647185;border-top:1px solid #edf0f3;align-items:center;gap:10px;min-height:58px;font-size:13px;display:flex}.material-file:first-child{border-top:0}.material-file>svg{color:#728196;flex:none}.material-file-copy{min-width:0;margin-right:auto}.material-file-copy strong,.material-file-copy small{display:block}.material-file-copy strong{text-overflow:ellipsis;white-space:nowrap;color:#3f4e62;max-width:650px;font-weight:500;overflow:hidden}.material-file-copy small{color:#929caa;margin-top:4px}.material-file-actions{white-space:nowrap;align-items:center;gap:13px;display:flex}.material-file-actions a,.material-file-actions button{color:#534bfa;background:0 0;border:0;padding:3px 0}.material-file-actions button{color:#ef4f59}.material-progress{border-top:1px solid #edf0f3;grid-template-columns:minmax(0,1fr) auto;gap:7px 14px;padding:12px 0;display:grid}.material-progress>div{min-width:0}.material-progress strong,.material-progress small{display:block}.material-progress strong{text-overflow:ellipsis;white-space:nowrap;color:#3f4e62;font-size:13px;font-weight:500;overflow:hidden}.material-progress small{color:#929caa;margin-top:3px}.material-progress em{color:#5b55e8;white-space:nowrap;align-self:center;font-style:normal}.material-progress>i{background:#e5e9ef;border-radius:5px;grid-column:span 2;height:5px;overflow:hidden}.material-progress>i b{background:#5c50f5;height:100%;transition:width .1s linear;display:block}.material-progress.is-done em{color:#169363}.material-progress.is-done>i b{background:#39a875}.form-scroll{max-height:calc(92vh - 112px)}.compact-form{grid-template-columns:1fr 1fr;gap:16px;display:grid}.compact-form .field-wide{grid-column:span 2}.upload-error-backdrop{z-index:130;background:#111a2a6b;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.upload-error-dialog{background:#fff;border-radius:8px;grid-template-columns:44px 1fr;gap:0 14px;width:min(460px,100%);padding:24px;display:grid;box-shadow:0 18px 55px #0d182942}.upload-error-icon{color:#e2574c;background:#fff0ee;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.upload-error-dialog h3{color:#2e3b4e;margin:2px 0 8px;font-size:17px}.upload-error-dialog p{color:#596679;word-break:break-word;margin:0;line-height:1.7}.upload-error-dialog small{color:#929caa;margin-top:8px;display:block}.upload-error-dialog>button{border:0;grid-column:2;justify-self:end;min-width:78px;height:34px;margin-top:20px}.analysis-page{padding:0 18px}.stat-cards{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.stat-cards>div,.chart-card{background:#fff;border:1px solid #e2e6ec;padding:20px}.stat-cards span{color:#7c8796;display:block}.stat-cards strong{color:#2f3b4c;margin-top:13px;font-size:28px;display:block}.chart-card{height:360px;margin-top:16px}.chart-card h3{margin:0}.bars{border-bottom:1px solid #dce2e8;align-items:flex-end;gap:4%;height:280px;padding:30px 4% 0;display:flex}.bars>div{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;height:100%;display:flex}.bars i{background:#5e55ef;width:38px;display:block}.bars span{margin-bottom:6px}.bars small{white-space:nowrap;color:#687486;margin-top:8px}.module-card{padding-bottom:1px}.module-tools{border-bottom:1px solid #dce2e9;align-items:center;gap:12px;min-height:74px;padding:16px 18px;display:flex}.module-tools label{height:34px}.module-tools input{width:190px}.module-tools button:first-of-type{margin-left:auto}.config-layout{grid-template-columns:150px 1fr;gap:18px;margin:0 3px 24px;display:grid}.config-layout aside{background:#fff;min-height:630px;padding:12px 0}.config-layout aside button{text-align:left;color:#415066;background:#fff;border:0;width:100%;height:48px;padding:0 25px}.config-layout aside button.active{color:#5046ee;background:#f1f0ff;border-right:3px solid #594ff3}.config-content{margin:0;overflow:hidden}.config-content>h3{border-bottom:1px solid #e0e5eb;height:54px;margin:0;padding:17px 20px}.setting-form{padding:25px}.setting-form label{align-items:center;gap:15px;display:flex}.setting-form input{border:1px solid #d6dde8;height:36px;padding:0 10px}.setting-form button{margin-top:18px}.config-note{color:#6b7788;padding:24px}.permission-title{margin:4px 0 10px;display:block}.permission-tree{border:1px solid #d9dfe8;grid-template-columns:1fr 1fr;max-height:280px;margin-bottom:18px;padding:10px 20px;display:grid;overflow:auto}.permission-tree label{padding:8px}.permission-tree input{margin-right:8px}.danger-link{color:#ef4f59!important}.score-config-input{border:1px solid #d6dde8;width:90px;height:34px;padding:0 8px}.config-save{justify-content:flex-end;padding:16px 20px;display:flex}.config-save button{border:0;height:36px;padding:0 18px}@media (width<=1300px){.topbar nav button{padding:0 15px}.header-search{width:160px}.filters{grid-template-columns:repeat(4,1fr)}.filter-actions{grid-column:span 2}}@media (width<=800px){.app-shell{min-width:0}.topbar{flex-wrap:wrap;height:auto;min-height:58px}.system-name{width:auto}.split,.header-search{display:none}.topbar nav{order:3;width:100%;height:48px;overflow-x:auto}.topbar nav button{white-space:nowrap;height:48px}.account{margin-left:auto}.filters{grid-template-columns:1fr 1fr}.wide-label,.filter-actions{grid-column:span 2}.modal-backdrop{padding:8px}.modal-wide{width:100%}.project-form-body{padding:12px}.form-section{padding:14px}.project-form{grid-template-columns:1fr}.field-wide{grid-column:span 1}.material-card-head{flex-wrap:wrap;align-items:flex-start}.material-upload-action{margin-left:47px}.material-file{flex-wrap:wrap;align-items:flex-start;padding:11px 0}.material-file-actions{width:100%;margin-left:27px}.material-progress{grid-template-columns:1fr}.material-progress em{white-space:normal}.material-progress>i{grid-column:span 1}.info-grid{grid-template-columns:1fr}.info-grid .info-wide{grid-column:span 1}.login-page{justify-content:center;padding:16px}.login-card{width:min(400px,100%)}.login-footer{width:100%;right:auto}.stat-cards{grid-template-columns:1fr 1fr}.config-layout{grid-template-columns:1fr}.config-layout aside{min-height:0;display:flex;overflow:auto}.config-layout aside button{min-width:110px}.expert-grid,.score-row{grid-template-columns:1fr}}
