.assembly-tile[data-v-46f27ebd]{isolation:isolate;width:100%;min-width:0;height:100%;min-height:0;position:relative}.assembly-content[data-v-46f27ebd]{transform-origin:50%;opacity:1;filter:none;width:100%;min-width:0;height:100%;min-height:0;position:relative;transform:none}.assembly-frame[data-v-46f27ebd]{z-index:4;pointer-events:none;opacity:0;visibility:hidden;border:1px solid #4bc9f42b;border-radius:12px;transition:opacity .14s,visibility .14s;position:absolute;inset:0;overflow:hidden}.assembly-active .assembly-frame[data-v-46f27ebd]{opacity:1;visibility:visible}.assembly-grid[data-v-46f27ebd]{background:linear-gradient(90deg,#53bce80c 1px,#0000 1px) 0 0/32px 32px,linear-gradient(#53bce80c 1px,#0000 1px) 0 0/32px 32px,radial-gradient(at 50% 45%,#0d446223,#0000 72%) 0 0/100% 100%;border-radius:12px;position:absolute;inset:0}.assembly-corner[data-v-46f27ebd]{opacity:.9;filter:drop-shadow(0 0 5px #38bdf846);border:0 solid #79ddf5;width:24px;height:24px;position:absolute}.assembly-corner.top-left[data-v-46f27ebd]{border-top-width:2px;border-left-width:2px;border-top-left-radius:11px;top:0;left:0}.assembly-corner.top-right[data-v-46f27ebd]{border-top-width:2px;border-right-width:2px;border-top-right-radius:11px;top:0;right:0}.assembly-corner.bottom-left[data-v-46f27ebd]{border-bottom-width:2px;border-left-width:2px;border-bottom-left-radius:11px;bottom:0;left:0}.assembly-corner.bottom-right[data-v-46f27ebd]{border-bottom-width:2px;border-right-width:2px;border-bottom-right-radius:11px;bottom:0;right:0}.assembly-position[data-v-46f27ebd]{color:#78adca;letter-spacing:1px;font-variant-numeric:tabular-nums;background:#10283bd9;border-radius:4px;align-items:center;gap:8px;padding:2px 7px;font-size:10px;line-height:16px;display:flex;position:absolute;top:11px;right:14px}.assembly-position i[data-v-46f27ebd]{background:#4a7993;width:1px;height:8px}.assembly-scan[data-v-46f27ebd]{opacity:0;pointer-events:none;background:linear-gradient(90deg,#0000 2%,#54d4f4 35%,#dbfbff 50%,#54d4f4 65%,#0000 98%);height:2px;position:absolute;top:0;left:0;right:0;box-shadow:0 -7px 19px #38bdf825,0 2px 12px #38bdf84d}.assembly-status[data-v-46f27ebd]{z-index:5;white-space:nowrap;pointer-events:none;color:#bfeafa;letter-spacing:1px;background:#10283de8;border:1px solid #3f819859;border-radius:7px;align-items:center;gap:10px;padding:9px 15px;font-size:14px;line-height:20px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 6px 24px #020e1b55}.assembly-status-mark[data-v-46f27ebd]{align-items:center;gap:3px;height:15px;display:flex}.assembly-status-mark i[data-v-46f27ebd]{background:#57d3ed;border-radius:1px;width:3px;height:7px;display:block}.assembly-status-mark i[data-v-46f27ebd]:nth-child(2){background:#a2f2ff;height:13px}.assembly-status-mark i[data-v-46f27ebd]:nth-child(3){height:10px}.assembly-reduced .assembly-frame[data-v-46f27ebd]{transition:none}.assembly-reduced .assembly-corner[data-v-46f27ebd]{filter:none}.assembly-reduced .assembly-scan[data-v-46f27ebd]{display:none}@media (prefers-reduced-motion:reduce){.assembly-tile[data-v-46f27ebd] *{transition:none!important;animation:none!important}.assembly-corner[data-v-46f27ebd]{filter:none}.assembly-scan[data-v-46f27ebd]{display:none}}:root{color:#e2e8f0;font-synthesis:none;text-rendering:optimizelegibility;font-smooth:always;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#0b1220;font-family:Microsoft YaHei,Noto Sans SC,PingFang SC,Arial,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer;color:inherit;background:0 0;border:0;justify-content:center;align-items:center;gap:8px;transition:background .16s,color .16s,border-color .16s,opacity .16s;display:inline-flex}button:disabled{opacity:.38;cursor:not-allowed}button:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline-offset:3px;outline:2px solid #67e8f9}button:not(:disabled):active{transform:translateY(1px)}svg{flex-shrink:0}p,h1,h2,h3{margin:0}textarea{resize:none}.app-shell{background:radial-gradient(at 50% 0,#192b40 0,#0000 65%),#0b1220;width:100vw;height:100dvh;position:relative;overflow:hidden}.dashboard-stage{transform-origin:50%;background-color:#0f172a;background-image:linear-gradient(#1e293b20 1px,#0000 1px),linear-gradient(90deg,#1e293b20 1px,#0000 1px);background-position:0 0;background-repeat:repeat;background-size:40px 40px;background-attachment:scroll;background-origin:padding-box;background-clip:border-box;width:1920px;height:1080px;position:absolute;top:50%;left:50%;overflow:hidden}.page-header{width:1872px;height:72px;position:absolute;top:24px;left:24px}.heading{align-items:center;gap:40px;max-width:880px;height:40px;display:flex}.heading h1{letter-spacing:.5px;white-space:nowrap;font-size:32px;font-weight:700}.school-name{color:#9baec5;white-space:nowrap;font-size:19px}.header-actions{align-items:center;gap:12px;height:40px;display:flex;position:absolute;top:0;right:0}.demo-badge{color:#fcd34d;background:#453713;border:1px solid #846b2a;border-radius:20px;padding:6px 18px;font-size:17px;font-weight:600}.source-date{color:#b7c7d9;margin-right:8px;font-size:18px}.header-button{color:#c0cee0;background:#1a2a3e;border:1px solid #33465f;border-radius:8px;height:40px;padding:0 15px;font-size:17px}.header-button:not(:disabled):hover{background:#233951;border-color:#5e7895}.header-button.icon-only{width:44px;padding:0}.header-subrow{color:#7d93ae;justify-content:space-between;align-items:center;height:32px;padding-top:7px;font-size:16px;display:flex}.system-status{align-items:center;gap:24px;display:flex}.connection-label,.runtime-label,.history-link{color:#8198b3;padding:2px 0;font-size:15px}.connection-label.online{color:#84b8ba}.connection-label.offline{color:#fbbf24}.runtime-label.unavailable{color:#bda56f}.history-link:hover,.runtime-label:hover{color:#c4eafa}.status-dot{background:#34d399;border-radius:50%;flex-shrink:0;width:7px;height:7px;display:inline-block}.connection-label.offline .status-dot{background:#fbbf24}.scope-row{align-items:center;gap:16px;width:1872px;height:36px;display:flex;position:absolute;top:112px;left:24px}.scope-chip{color:#c4d3e4;white-space:nowrap;background:#19293d;border:1px solid #30435b;border-radius:8px;height:36px;padding:0 16px;font-size:18px}.term-chip{align-items:center;min-width:375px;display:inline-flex}.department-chip{text-overflow:ellipsis;justify-content:space-between;max-width:255px;overflow:hidden}.week-chip{min-width:145px}.current-question{color:#a6bad0;white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:80px;font-size:18px;overflow:hidden}.layout-locked{color:#97adc6;align-items:center;gap:4px;font-size:15px;display:flex}.run-state{white-space:nowrap;color:#6ee7b7;align-items:center;gap:9px;font-size:18px;display:flex}.run-state.running{color:#67e8f9}.run-state.failed{color:#fda4af}.run-state.failed .status-dot{background:#fb7185}.spinner{opacity:.8;border:2px solid;border-right-color:#0000;border-radius:50%;width:17px;height:17px;animation:.8s linear infinite spin;display:inline-block}.widget-slot{position:absolute}.widget-card{background:#142031;border:1px solid #293b52;border-radius:12px;flex-direction:column;width:100%;height:100%;padding:17px 20px 14px;transition:border-color .15s,box-shadow .15s;display:flex;position:relative;overflow:hidden}.widget-card:hover{border-color:#46627f}.widget-card.selected{border-color:#22d3ee;box-shadow:0 0 0 1px #22d3ee40,inset 0 0 30px #0e749012}.widget-head{flex-shrink:0;align-items:flex-start;gap:10px;min-height:30px;padding-right:0;display:flex}.widget-head h2{white-space:nowrap;text-overflow:ellipsis;letter-spacing:.1px;flex:1;font-size:22px;font-weight:600;line-height:30px;overflow:hidden}.widget-indicators{align-items:center;gap:7px;min-height:28px;display:flex}.pin-indicator{color:#67e8f9;display:flex}.metric-scope{color:#879db9;white-space:nowrap;text-overflow:ellipsis;max-width:170px;font-size:16px;overflow:hidden}.card-status{color:#67e8f9;white-space:nowrap;background:#20364a;border-radius:5px;padding:3px 8px;font-size:14px}.card-status.error,.card-status.stale{color:#fcd34d;background:#4b391a}.widget-toolbar{opacity:0;visibility:hidden;z-index:4;background:#122237f5;border:1px solid #3c5570;border-radius:8px;align-items:center;gap:2px;padding:4px;transition:opacity .15s;display:flex;position:absolute;top:11px;right:12px;box-shadow:0 4px 16px #0004}.widget-card:hover .widget-toolbar,.widget-card:focus-within .widget-toolbar,.widget-card.selected .widget-toolbar{opacity:1;visibility:visible;pointer-events:auto}.icon-button{color:#a6bcd5;border-radius:6px;width:31px;height:31px;padding:0;display:inline-flex}.icon-button:hover:not(:disabled){color:#e4f2ff;background:#29425e}.icon-button.active{color:#67e8f9;background:#104055}.icon-button.danger:hover:not(:disabled){color:#fda4af;background:#662a3f}.toolbar-divider{background:#3b4e65;width:1px;height:17px;margin:0 3px}.metric-card:before{content:"";background:#38bdf8;border-radius:5px;width:66px;height:3px;position:absolute;top:0;left:16px}.metric-card:first-child{--metric-color:#e9f1fb}.widget-slot:nth-of-type(4n+1) .metric-card:before{background:#a78bfa}.widget-slot:nth-of-type(4n+2) .metric-card:before{background:#94a3b8}.widget-slot:nth-of-type(4n+3) .metric-card:before{background:#34d399}.metric-card .widget-head h2{color:#aebfd3;font-size:20px;font-weight:400}.metric-body{flex-direction:column;flex:1;justify-content:center;min-height:0;display:flex}.metric-number{letter-spacing:.6px;color:#eef5ff;font-variant-numeric:tabular-nums;align-items:baseline;gap:12px;font-size:54px;font-weight:700;line-height:1.15;display:flex}.metric-number span{color:#99aec6;letter-spacing:0;font-size:18px;font-weight:400}.metric-note{color:#8299b4;white-space:nowrap;text-overflow:ellipsis;margin-top:4px;font-size:16px;overflow:hidden}.chart-canvas{flex:1;width:100%;min-height:0;margin-top:5px}.widget-foot{color:#839ab6;flex-shrink:0;justify-content:space-between;gap:12px;height:21px;font-size:14px;line-height:21px;display:flex}.widget-foot>span:first-child{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.widget-foot>span:last-child{white-space:nowrap}.stale-message{color:#fbbf24}.data-table-wrap{flex:1;min-height:0;margin-top:10px;overflow:hidden}.data-table{border-collapse:collapse;table-layout:fixed;font-variant-numeric:tabular-nums;width:100%;font-size:17px}.data-table th{color:#9db2cb;text-align:left;white-space:nowrap;text-overflow:ellipsis;background:#1e3046;height:30px;padding:0 12px;font-size:15px;font-weight:400;overflow:hidden}.data-table td{color:#c7d4e4;white-space:nowrap;text-overflow:ellipsis;border-bottom:1px solid #27395044;height:28px;padding:0 12px;overflow:hidden}.data-table th:first-child,.data-table td:first-child{width:30%}.data-table .numeric{text-align:right}.data-table tr:nth-child(2n) td{background:#19283b}.data-table tbody td:last-child{color:#6ee7b7}.compact .widget-head h2{font-size:20px}.compact .widget-foot{font-size:13px}.compact .metric-scope{max-width:130px}.card-empty{color:#718ba8;text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:10px;padding:10px;display:flex}.card-empty strong{color:#adbed1;font-size:18px;font-weight:500}.card-empty p{max-width:90%;font-size:15px;line-height:1.5}.text-button{color:#67e8f9;background:#103547;border:1px solid #2f7188;border-radius:6px;padding:6px 12px;font-size:16px}.card-skeleton{flex-direction:column;flex:1;justify-content:center;gap:14px;padding:14px 0;display:flex}.card-skeleton span{background:linear-gradient(90deg,#1b2c42,#27405a,#1b2c42) 0 0/200% 100%;border-radius:4px;width:75%;height:18px;animation:1.6s infinite shimmer}.card-skeleton span:nth-child(2){width:92%}.card-skeleton span:nth-child(3){width:58%}.refresh-indicator{background:linear-gradient(90deg,#0000,#22d3ee,#0000) 0 0/50% 100%;height:2px;animation:1.2s infinite shimmer;position:absolute;top:0;left:0;right:0}.reserved-note{color:#6f88a5;font-size:14px;position:absolute;top:925px;left:24px}.composer{background:#19273b;border:1px solid #3b5572;border-radius:14px;align-items:center;gap:18px;width:1872px;height:96px;padding:15px 19px;display:flex;position:absolute;top:960px;left:24px;box-shadow:0 -5px 25px #00000010}.composer.listening{border-color:#1cb8c8;box-shadow:0 0 28px #22d3ee12}.composer-symbol{color:#67e8f9;background:#123c52;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.composer-main{flex:1;min-width:0}.composer-main textarea{color:#e8f1fc;scrollbar-width:thin;background:0 0;border:0;outline:none;width:100%;height:34px;padding:1px 0;font-size:22px;line-height:30px;display:block;overflow:auto}.composer-main textarea:focus-visible{outline:none}.composer-main textarea::placeholder{color:#7f96b2}.composer-meta{align-items:center;gap:14px;min-height:24px;margin-top:5px;font-size:15px;display:flex}.input-hint{color:#8099b7;white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:8px;display:flex;overflow:hidden}.input-hint .status-dot{background:#597a94;width:6px;height:6px}.input-hint.listening{color:#67e8f9}.clear-selection,.retry-send{color:#8cacc9;text-underline-offset:3px;white-space:nowrap;font-size:14px;text-decoration:underline}.retry-send{color:#fcd34d}.composer-actions{flex-shrink:0;align-items:center;gap:14px;display:flex}.mic-button{color:#c6e0f8;background:#23394f;border:1px solid #466482;border-radius:10px;width:58px;height:56px}.mic-button:not(:disabled):hover{background:#2d4965;border-color:#7dcbdc}.mic-button.recording{color:#fb7185;background:#492d40;border-color:#fb7185;animation:1.2s infinite pulse}.send-button,.stop-button{border-radius:10px;min-width:154px;height:56px;padding:0 22px;font-size:20px;font-weight:600}.send-button{color:#083344;background:#22d3ee}.send-button:not(:disabled):hover{background:#67e8f9}.stop-button{color:#fda4af;background:#4a263b;border:1px solid #854256}.stop-button:not(:disabled):hover{background:#663149}.voice-level{align-items:center;gap:3px;height:16px;display:flex}.voice-level i{background:#34d399;border-radius:2px;width:3px;height:9px;animation:.6s infinite alternate wave}.voice-level i:nth-child(2){height:15px;animation-delay:.15s}.voice-level i:nth-child(3){height:12px;animation-delay:.3s}.voice-level i:nth-child(4){height:6px;animation-delay:.4s}.answer-peek{z-index:9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#102a3bed;border:1px solid #2c6277;border-radius:9px;align-items:center;gap:12px;max-width:1350px;padding:9px 14px;font-size:16px;display:flex;position:absolute;bottom:129px;left:50%;transform:translate(-50%);box-shadow:0 5px 18px #0004}.answer-peek p{text-overflow:ellipsis;white-space:nowrap;color:#cce3ef;max-width:1120px;overflow:hidden}.answer-peek>button{color:#7dd3fc;white-space:nowrap;padding:3px}.answer-peek .answer-close{color:#6ee7b7}.answer-peek.clarification{background:#3b311cec;border-color:#957529}.empty-dashboard{background:radial-gradient(at 50% 18%,#1732468c,#0000 58%);border:1px solid #27395080;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;width:1872px;height:780px;display:flex;position:absolute;top:164px;left:24px}.empty-orbit{color:#67e8f9;background:linear-gradient(140deg,#164e63,#1e2947);border:1px solid #316076;border-radius:26px;justify-content:center;align-items:center;width:100px;height:100px;margin-bottom:25px;display:flex;box-shadow:0 0 100px #22d3ee0b}.eyebrow{letter-spacing:3px;text-transform:uppercase;color:#61bccd;font-size:14px;font-weight:500}.empty-dashboard h2{letter-spacing:.4px;color:#f0f6ff;margin-top:13px;font-size:43px;font-weight:600}.empty-dashboard>p{color:#9ab0c9;text-align:center;margin-top:20px;font-size:21px;line-height:1.9}.empty-actions{gap:16px;margin-top:28px;display:flex}.primary-button,.secondary-button{border-radius:9px;min-height:46px;padding:10px 20px;font-size:18px;font-weight:500}.primary-button{color:#083344;background:#22d3ee}.primary-button:not(:disabled):hover{background:#67e8f9}.secondary-button{color:#c4d9ed;background:#1c3048;border:1px solid #3b5877}.secondary-button:not(:disabled):hover{background:#2a405a}.sample-caption{color:#758da9;margin-top:16px;font-size:15px}.example-questions{gap:18px;margin-top:44px;display:flex}.example-questions button{color:#acc4dc;background:#16253a;border:1px solid #2c435f;border-radius:10px;justify-content:space-between;width:318px;padding:18px 21px;font-size:18px}.example-questions button:hover{background:#1b3449;border-color:#487a93}.example-questions svg{color:#58849e}.empty-config-note{color:#b5a67b;align-items:center;gap:9px;max-width:1100px;margin-top:24px;font-size:15px;display:flex}.empty-config-note button{color:#e8c67d;text-underline-offset:3px;text-decoration:underline}.filter-panel{z-index:20;background:#17283d;border:1px solid #3a5573;border-radius:12px;width:390px;padding:21px;font-size:17px;position:absolute;top:158px;left:416px;box-shadow:0 12px 60px #0008}.popover-title{color:#d5e8fa;justify-content:space-between;align-items:center;margin-bottom:13px;font-size:18px;display:flex}.filter-panel label{color:#94acc7;flex-direction:column;gap:8px;font-size:15px;display:flex}.filter-panel select{color:#d2e2f3;background:#102033;border:1px solid #3a536e;border-radius:7px;width:100%;min-height:40px;padding:6px 11px}.week-fields{gap:14px;margin-top:14px;display:flex}.week-fields label{flex:1}.filter-panel p{color:#7f98b3;margin:17px 0;font-size:14px;line-height:1.5}.filter-panel .primary-button{width:100%;font-size:17px}.notice{z-index:100;color:#d7ebf9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#173148f5;border:1px solid #3c6481;border-radius:11px;align-items:center;gap:12px;max-width:min(760px,100vw - 32px);padding:13px 15px 13px 18px;font-size:15px;line-height:1.6;display:flex;position:fixed;top:22px;left:50%;transform:translate(-50%);box-shadow:0 10px 40px #0006}.notice.error{color:#f7d5ad;background:#362d26f5;border-color:#83523c}.notice.success{color:#b9f1da;background:#14382ff5;border-color:#2e7563}.notice>.icon-button{flex-shrink:0}.toast-enter-active,.toast-leave-active{transition:opacity .2s,top .2s}.toast-enter-from,.toast-leave-to{opacity:0;top:10px}.overlay{z-index:50;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#030b16a6;position:fixed;inset:0}.history-drawer{background:#122033;border-left:1px solid #31475f;flex-direction:column;width:min(560px,100vw);display:flex;position:absolute;top:0;bottom:0;right:0;box-shadow:-18px 0 50px #0003}.history-drawer header,.config-modal header{border-bottom:1px solid #2a3c52;justify-content:space-between;align-items:center;padding:25px 27px;display:flex}.history-drawer header h2{margin-top:6px;font-size:23px}.history-drawer header .eyebrow{letter-spacing:2px;font-size:11px}.history-scroll{scrollbar-color:#46607c transparent;scrollbar-width:thin;flex:1;min-height:0;padding:25px 24px;overflow:auto}.history-message{background:#17283d;border:1px solid #2e425c;border-radius:12px;margin-bottom:20px;padding:18px}.history-message.user{background:#163246;border-color:#285a70}.message-role{color:#7ec7dc;align-items:center;gap:8px;margin-bottom:11px;font-size:13px;display:flex}.message-role>span{color:#8496ad;margin-left:auto;font-size:11px}.history-message p{white-space:pre-wrap;overflow-wrap:anywhere;color:#ccd9e8;font-size:15px;line-height:1.8}.history-empty{color:#8499b2;margin-top:30px;font-size:15px;line-height:1.8}.history-drawer footer{color:#7690ad;border-top:1px solid #2a3c52;justify-content:space-between;align-items:center;gap:12px;padding:18px 24px;font-size:12px;display:flex}.history-drawer footer button{min-height:38px;padding:8px 14px;font-size:14px}.overlay.centered{justify-content:center;align-items:center;padding:24px;display:flex}.config-modal{background:#132236;border:1px solid #3a5069;border-radius:17px;width:610px;max-width:100%;max-height:90vh;overflow:auto;box-shadow:0 22px 80px #0008}.config-modal header{padding:21px 25px}.config-modal h2{font-size:22px}.connection-card{border-bottom:1px solid #2b3f55;gap:18px;margin:22px 25px;padding-bottom:22px;display:flex}.connection-icon{color:#88c8e6;background:#1c354d;border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;width:47px;height:47px;display:flex}.connection-card h3{align-items:center;gap:9px;margin-bottom:9px;font-size:16px;font-weight:500;display:flex}.connection-card p{color:#9bb4cf;overflow-wrap:anywhere;font-size:14px;line-height:1.7}.connection-card small{color:#748da9;overflow-wrap:anywhere;margin-top:7px;font-size:12px;display:block}.connection-pill{color:#d8ba78;background:#44351c;border-radius:5px;padding:4px 7px;font-size:11px}.connection-pill.good{color:#83d8b7;background:#154333}.connection-pill.demo{color:#b7b0e4;background:#333251}.config-modal footer{justify-content:flex-end;gap:12px;padding:0 25px 25px;display:flex}.config-modal footer button{min-height:42px;font-size:15px}.boot-screen{flex-direction:column;justify-content:center;align-items:center;gap:24px;height:100%;display:flex}.boot-mark{color:#67e8f9;background:#133949;border:1px solid #246075;border-radius:22px;justify-content:center;align-items:center;width:78px;height:78px;display:flex}.boot-screen h1{font-size:29px}.boot-screen p{color:#90a7c2;text-align:center;max-width:600px;padding:0 24px;font-size:16px;line-height:1.7}.boot-screen .spinner{color:#67e8f9;width:24px;height:24px}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes wave{0%{transform:scaleY(.4)}to{transform:scaleY(1)}}@keyframes pulse{50%{box-shadow:0 0 0 5px #fb718519}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important}}@media (width<=700px){.notice{font-size:13px;top:12px}.config-modal header,.connection-card{margin-left:16px;margin-right:16px}.config-modal header{padding-left:0;padding-right:0}.school-name{display:none}}.page-header .heading{gap:18px;max-width:950px;height:72px;position:absolute;top:0;left:0}.school-logo{object-fit:contain;flex-shrink:0;width:252px;height:66px;display:block}.brand-divider{background:#3a5068;flex-shrink:0;width:1px;height:44px}.brand-copy{flex-direction:column;justify-content:center;gap:8px;min-width:0;display:flex}.page-header .heading h1{letter-spacing:.7px;font-size:26px;font-weight:650;line-height:30px}.page-header .school-name{color:#c0d2e7;align-items:center;gap:16px;font-size:18px;line-height:23px;display:flex}.brand-caption{color:#8da8c6;letter-spacing:.8px;font-size:16px;line-height:23px}.page-header .header-subrow{justify-content:flex-end;max-width:920px;height:28px;padding-top:0;position:absolute;top:44px;left:auto;right:0}.page-header .header-subrow>span{display:none}.boot-logo{object-fit:contain;width:min(380px,76vw);height:auto;display:block}.boot-product{color:#95b9d3;letter-spacing:3px;margin-top:-8px;font-size:20px}@media (width<=700px){.page-header .school-name{display:flex}.boot-screen h1{font-size:24px}}@font-face{font-family:CampusDisplay;src:url(/fonts/campus-title.woff)format("woff");font-weight:400;font-style:normal;font-display:swap}.page-header .heading .system-title,.boot-screen .system-title{letter-spacing:3px;color:#fff;-webkit-text-fill-color:#fff;-webkit-text-stroke:.25px #f2fdff73;text-shadow:0 2px #3b6684,0 0 13px #7dddff7a,0 0 28px #2db6ff38;font-family:CampusDisplay,Microsoft YaHei,sans-serif;font-size:38px;font-weight:400;line-height:1.08;animation:.8s cubic-bezier(.2,.7,.25,1) both system-title-enter;display:inline-block;position:relative}.system-title:after{content:"";pointer-events:none;transform-origin:0;background:linear-gradient(90deg,#fff,#72dcff 38%,#0000);width:65%;height:2px;animation:1.1s ease-out .15s both system-title-line;position:absolute;bottom:-7px;left:2px;box-shadow:0 0 12px #38bdf870}.page-header .brand-copy{gap:11px;overflow:visible}.page-header .brand-caption{letter-spacing:2px;color:#a3c3df;font-size:15px;line-height:18px}.boot-screen{isolation:isolate;background:radial-gradient(at 50% 38%,#12314760,#0000 55%)}.boot-screen .boot-logo{width:min(390px,72vw);margin-bottom:12px}.boot-screen .system-title{margin:0 0 2px;font-size:52px;line-height:1.18}.boot-screen .boot-caption{color:#9dbcd5;letter-spacing:5px;font-size:17px}.boot-screen>p{letter-spacing:1px;color:#819db9;margin-top:6px;font-size:15px}.boot-loading-track{background:#244158;border-radius:3px;width:180px;height:3px;position:relative;overflow:hidden}.boot-loading-track span{background:linear-gradient(90deg,#0000,#b9f1ff,#fff);border-radius:3px;width:55%;height:100%;animation:1.5s ease-in-out infinite boot-track;display:block;box-shadow:0 0 15px #70d8ff}.boot-screen .boot-logo{animation:1.1s cubic-bezier(.2,.7,.25,1) both brand-appear}.boot-screen .boot-caption{animation:.9s ease-out .35s both brand-appear}.boot-screen .system-title{animation-duration:1.1s;animation-delay:.18s}.widget-slot{perspective:1400px}.widget-card{transform-origin:50% 90%;animation:panel-arrive .85s cubic-bezier(.18,.75,.22,1) var(--card-delay,0s) both;box-shadow:0 9px 18px #030a162b,inset 0 1px #a6dcff0a}.widget-card:before{box-shadow:0 0 10px}.metric-body{animation:metric-reveal .75s ease-out var(--card-delay,0s) both}.metric-number{text-shadow:0 3px #203e53,0 0 22px #b5efff17}.data-table tbody tr{animation:table-row-enter .55s ease-out calc(var(--card-delay,0s) + var(--row-delay,0s)) both}@keyframes system-title-enter{0%{opacity:0;filter:blur(5px);transform:translateY(6px)}to{opacity:1;filter:none;transform:none}}@keyframes system-title-line{0%{opacity:0;transform:scaleX(0)}to{opacity:.88;transform:scaleX(1)}}@keyframes boot-track{0%{transform:translate(-110%)}to{transform:translate(285%)}}@keyframes panel-arrive{0%{opacity:0;transform:translateY(22px)rotateX(-7deg)scale(.985)}to{opacity:1;transform:none}}@keyframes metric-reveal{0%{opacity:.12;filter:blur(2px);transform:translateY(10px)}to{opacity:1;filter:none;transform:none}}@keyframes table-row-enter{0%{opacity:.1;transform:translateY(7px)}to{opacity:1;transform:none}}@keyframes brand-appear{0%{opacity:0;filter:blur(4px);transform:translateY(12px)}to{opacity:1;filter:none;transform:none}}.scene-active .widget-slot{z-index:2;transition:left .85s cubic-bezier(.22,.7,.25,1),top .85s cubic-bezier(.22,.7,.25,1)}.scene-assembly-field{pointer-events:none;z-index:1;background:radial-gradient(at 50% 48%,#0b658629,#0000 70%);border-radius:14px;width:1872px;height:780px;position:absolute;top:164px;left:24px;overflow:hidden}.scene-trace{opacity:0;background:linear-gradient(90deg,#0000,#a7f1ff,#0000);display:block;position:absolute;box-shadow:0 0 18px #54d6ff70}.scene-trace-x{width:100%;height:1px;animation:1.5s cubic-bezier(.2,.65,.3,1) .1s both field-scan-down;top:0;left:0}.scene-trace-y{background:linear-gradient(#0000,#a7f1ff,#0000);width:1px;height:100%;animation:1.4s ease-out .15s both field-cross;top:0;left:50%}.scene-field-flash{opacity:0;border:1px solid #76e4ff50;border-radius:14px;position:absolute;inset:0}.scene-assembly-field.settling .scene-field-flash{animation:.9s ease-out both field-complete}.empty-assembly{z-index:2;pointer-events:none;width:1872px;height:780px;position:absolute;top:164px;left:24px}.empty-assembly-grid{opacity:.7;grid-template-rows:repeat(2,1fr);grid-template-columns:repeat(4,1fr);gap:16px;height:100%;display:grid}.empty-assembly-grid>div{animation:ghost-slot .75s var(--ghost-delay) both;background-color:#0b203336;background-image:linear-gradient(#2e728617 1px,#0000 1px),linear-gradient(90deg,#2e728617 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:28px 28px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;border:1px solid #3b91aa65;border-radius:12px;position:relative}.empty-assembly-grid i{border-top:2px solid #87eaff;border-left:2px solid #87eaff;width:22px;height:22px;position:absolute;top:-1px;left:-1px}.empty-assembly-grid span{border-bottom:2px solid #87eaff;border-right:2px solid #87eaff;width:22px;height:22px;position:absolute;bottom:-1px;right:-1px}.empty-assembly-message{color:#c5f2ff;background:#0c2438ee;border:1px solid #428698;border-radius:14px;flex-direction:column;align-items:center;gap:15px;padding:28px 52px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 80px #2ab4d222}.empty-assembly-message h2{letter-spacing:3px;font-size:24px;font-weight:500}.empty-assembly-message p{letter-spacing:2px;color:#86aec4;font-size:16px}@keyframes field-scan-down{0%{opacity:0;transform:translateY(0)}20%{opacity:.9}to{opacity:0;transform:translateY(760px)}}@keyframes field-cross{0%{opacity:0;transform:scaleY(0)}35%{opacity:.7}to{opacity:0;transform:scaleY(1)}}@keyframes field-complete{0%{opacity:0}30%{opacity:.8}to{opacity:0}}@keyframes ghost-slot{0%{opacity:0;transform:scale(.94)translateY(30px)}to{opacity:1;transform:none}}@media (width<=700px){.boot-screen .system-title{letter-spacing:2px;font-size:34px}.boot-screen .boot-caption{letter-spacing:3px;font-size:14px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
