:root{--ink:#172034;--muted:#697289;--paper:#f7f3eb;--cream:#ece5d8;--brand-deep:#101a5c;--brand-bright:#45f3ff;--orange:var(--brand-deep);--orange-dark:var(--brand-deep);--green:#24936a;--blue:var(--brand-deep)}*{box-sizing:border-box}html{background:var(--paper)}body{background:radial-gradient(circle at 12% 3%, #45f3ff1f, transparent 27rem), radial-gradient(circle at 91% 24%, #101a5c17, transparent 25rem), linear-gradient(90deg, #17203406 1px, transparent 1px), linear-gradient(#17203406 1px, transparent 1px), var(--paper);color:var(--ink);background-size:auto,auto,32px 32px,32px 32px,auto;margin:0;font-family:PingFang SC,Microsoft YaHei,system-ui,sans-serif}button{font:inherit}button:focus-visible,summary:focus-visible{outline-offset:3px;outline:3px solid #45f3ff80}.shell{flex-direction:column;min-height:100vh;display:flex}.topbar{border-bottom:1px solid #1720341f;justify-content:space-between;align-items:center;width:min(1180px,100% - 40px);margin:0 auto;padding:24px 0;display:flex}.brand{align-items:center;gap:14px;display:flex}.brand img{object-fit:contain;width:68px;height:68px}.brand p{color:var(--brand-deep);letter-spacing:.03em;margin:0 0 4px;font-size:17px;font-weight:780}.brand span{color:var(--muted);font-size:12px}.prototype{color:var(--muted);background:#ffffff80;border:1px solid #1720342e;border-radius:99px;padding:7px 12px;font-size:12px}.hero{text-align:center;width:min(980px,100% - 40px);margin:0 auto;padding:60px 0 58px}.eyebrow{color:var(--orange-dark);letter-spacing:.14em;align-items:center;gap:9px;font-size:13px;font-weight:850;display:inline-flex}.eyebrow span{background:var(--brand-bright);width:24px;height:3px}h1{letter-spacing:-.055em;max-width:760px;margin:18px auto;font-size:clamp(42px,7vw,76px);font-weight:880;line-height:1.06}.lead{max-width:710px;color:var(--muted);margin:0 auto 36px;font-size:17px;line-height:1.8}.acceptance-banner{color:#704c08;background:#fff2ca;border:1px solid #e3b34b;border-radius:13px;justify-content:center;gap:10px;width:min(780px,100%);margin:-16px auto 22px;padding:12px 16px;font-size:12px;line-height:1.5;display:flex}.acceptance-banner strong{flex:none}.connection-card{text-align:left;background:#ffffffd1;border:1px solid #17203424;border-radius:28px;grid-template-columns:186px 1fr;align-items:center;gap:38px;width:min(780px,100%);margin:0 auto;padding:28px 38px;display:grid;box-shadow:0 28px 70px #302a2217}.connection-card.success{border-color:#24936a6b}.connection-card.error{border-color:#c13a2657}.board-visual{width:150px;height:172px;box-shadow:inset 0 0 0 2px #65708a, 11px 12px 0 var(--cream);background:#34425d;border:7px solid #202b42;border-radius:21px;margin:0 auto;position:relative}.screen{color:#fff;background:radial-gradient(circle at 50% 30%,#324767,#07101e 74%);border:4px solid #0f1728;border-radius:11px;place-items:center;font:700 20px/1 ui-monospace,monospace;display:grid;position:absolute;inset:19px 14px 27px}.pin{background:var(--brand-bright);border-radius:50%;width:6px;height:6px;position:absolute;bottom:8px}.pin-a{left:23px}.pin-b{left:44px}.pin-c{right:44px}.pin-d{right:23px}.status-line{align-items:center;gap:10px;margin-bottom:10px;display:flex}.status-dot{background:#a4a9b5;border-radius:50%;width:11px;height:11px;box-shadow:0 0 0 5px #eceef1}.status-dot.waiting{background:#e8a227;animation:1.1s infinite pulse;box-shadow:0 0 0 5px #fff0d2}.status-dot.success{background:var(--green);box-shadow:0 0 0 5px #dff2e9}.status-dot.error{background:#c13a26;box-shadow:0 0 0 5px #f8ded9}.connection-copy strong{font-size:21px}.connection-copy>p{color:var(--muted);margin:0 0 22px;line-height:1.6}.connection-copy>button,.work-copy button,.action-buttons button{color:#fff;background:var(--orange);cursor:pointer;border:0;border-radius:13px;justify-content:space-between;align-items:center;width:100%;padding:15px 18px;font-weight:800;transition:transform .16s,box-shadow .16s,opacity .16s;display:flex;box-shadow:0 7px #080f3b}.connection-copy>button:hover,.work-copy button:hover,.action-buttons button:hover{transform:translateY(2px);box-shadow:0 5px #c93c22}.connection-copy>button:disabled,.work-copy button:disabled,.action-buttons button:disabled{opacity:.52;cursor:not-allowed;transform:none}.connection-copy .secondary-button{color:var(--ink);background:#edf0f5;box-shadow:0 7px #cdd3dc}.connection-copy .secondary-button:hover{box-shadow:0 5px #cdd3dc}.error-box{color:#8f2d20;background:#fff0ed;border-radius:13px;margin-top:19px;padding:14px 15px;font-size:13px;line-height:1.55}.error-box>strong{font-size:14px;display:block}.error-box details{margin-top:8px}.error-box summary,.technical-details summary,.operation-card summary{cursor:pointer}.error-box code,.operation-card code{color:#7f271c;background:#f7d8d2;border-radius:5px;margin-top:7px;padding:2px 7px;display:inline-block}.error-box p{margin:6px 0 0}.current-card{text-align:left;background:#eefaf4d1;border:1px solid #24936a47;border-radius:21px;justify-content:space-between;align-items:center;gap:24px;width:min(780px,100%);margin:20px auto 0;padding:22px 26px;display:flex}.current-kicker{color:#39755e;letter-spacing:.1em;font-size:11px;font-weight:850}.current-card h2{margin:5px 0 4px;font-size:23px}.current-card p{color:#5f776d;margin:0;font-size:12px}.confirmed-badge{color:#267353;background:#fff;border-radius:99px;flex:none;align-items:center;gap:8px;padding:9px 12px;font-size:12px;font-weight:800;display:inline-flex}.confirmed-badge i{background:var(--green);border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #dff2e9}.catalog-section{width:min(900px,100%);margin:48px auto 0}.section-heading{text-align:left;justify-content:space-between;align-items:flex-end;gap:25px;margin-bottom:20px;display:flex}.section-heading span,.safety-actions>div>span{color:var(--orange-dark);letter-spacing:.12em;font-size:11px;font-weight:850}.section-heading h2,.safety-actions h2{margin:4px 0 0;font-size:27px}.section-heading p{color:var(--muted);margin:0 0 3px;font-size:12px}.work-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.work-card{text-align:left;background:#ffffffd1;border:1px solid #17203421;border-radius:24px;overflow:hidden;box-shadow:0 16px 36px #302a220f}.work-preview{background:#1d2940;place-items:center;min-height:145px;padding:24px;display:grid}.work-2 .work-preview{background:#24374f}.work-preview:before{content:"";position:absolute}.work-preview span{color:#fff;text-align:center;background:radial-gradient(circle at 50% 28%,#3b5274,#08111e 76%);border:4px solid #0d1422;border-radius:10px;width:86%;padding:32px 12px;font:700 13px/1.3 ui-monospace,monospace;box-shadow:8px 9px #ffffff14}.work-copy{padding:21px 22px 23px}.work-meta{color:var(--muted);justify-content:space-between;font-size:10px;display:flex}.work-meta span{color:var(--orange-dark);font-weight:800}.work-copy h3{margin:9px 0 7px;font-size:20px}.work-copy p{min-height:38px;color:var(--muted);margin:0 0 18px;font-size:13px;line-height:1.55}.work-copy button:disabled{color:#416b5b;background:#dceee6;box-shadow:0 7px #bed9cd}.operation-card{text-align:left;background:#f0f5ff;border:1px solid #101a5c40;border-radius:19px;gap:15px;width:min(780px,100%);margin:22px auto 0;padding:20px 22px;display:flex}.operation-card.done{background:#eefaf4;border-color:#24936a4d}.operation-card.error{background:#fff0ed;border-color:#c13a2647}.operation-icon{width:34px;height:34px;color:var(--brand-deep);background:var(--brand-bright);border-radius:50%;flex:none;place-items:center;font-weight:900;animation:1.4s linear infinite spin;display:grid}.operation-card.done .operation-icon{background:var(--green);animation:none}.operation-card.error .operation-icon{background:#c13a26;animation:none}.operation-copy{flex:1;min-width:0}.operation-copy strong{font-size:15px}.operation-copy>p{color:var(--muted);margin:4px 0 0;font-size:13px}.operation-copy details{color:#8f2d20;margin-top:8px;font-size:11px}.progress-wrap{margin-top:14px}.progress-track{background:#d7e1f3;border-radius:99px;height:7px;overflow:hidden}.progress-track i{border-radius:inherit;background:var(--blue);height:100%;transition:width .25s;display:block}.progress-wrap ol{color:#8b94a6;justify-content:space-between;margin:7px 0 0;padding:0;font-size:10px;list-style:none;display:flex}.progress-wrap li.active{color:var(--blue);font-weight:800}.safety-actions{text-align:left;background:#ffffff9e;border:1px solid #17203421;border-radius:22px;grid-template-columns:1.2fr 1fr;align-items:center;gap:28px;width:min(780px,100%);margin:42px auto 0;padding:25px 27px;display:grid}.safety-actions h2{font-size:23px}.safety-actions p{color:var(--muted);margin:8px 0 0;font-size:12px;line-height:1.6}.action-buttons{gap:11px;display:grid}.action-buttons button{color:var(--ink);background:#e8ebf1;padding:13px 15px;font-size:12px;box-shadow:0 6px #cdd3dc}.action-buttons button:hover{box-shadow:0 4px #cdd3dc}.action-buttons button:last-child{color:#7b3528;background:#f8e7e1;box-shadow:0 6px #e3c3b8}.action-buttons button:last-child:hover{box-shadow:0 4px #e3c3b8}.technical-details{width:min(780px,100%);color:var(--muted);text-align:left;background:#ffffff6b;border-radius:14px;margin:17px auto 0;padding:13px 17px;font-size:11px}.technical-details dl{grid-template-columns:1fr 1fr;gap:8px;margin:13px 0 0;display:grid}.technical-details dl div{background:#ffffffa6;border-radius:9px;padding:10px 11px}.technical-details dt{margin-bottom:3px}.technical-details dd{color:var(--ink);overflow-wrap:anywhere;margin:0}.before-connect{text-align:left;grid-template-columns:repeat(3,1fr);gap:12px;width:min(780px,100%);margin:22px auto 0;display:grid}.before-connect>div{background:#ffffff85;border:1px solid #1720341a;border-radius:16px;gap:11px;padding:17px;display:flex}.before-connect>div>span{background:var(--cream);border-radius:8px;flex:none;place-items:center;width:25px;height:25px;font-size:11px;font-weight:900;display:grid}.before-connect p{margin:1px 0 0}.before-connect strong,.before-connect small{display:block}.before-connect strong{font-size:12px}.before-connect small{color:var(--muted);margin-top:4px;font-size:10px;line-height:1.4}footer{color:#858c9c;border-top:1px solid #1720341a;justify-content:space-between;width:min(1180px,100% - 40px);margin:auto auto 0;padding:18px 0 24px;font-size:11px;display:flex}.dialog-backdrop{z-index:20;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0f162394;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.confirm-dialog{text-align:center;background:#fffdf8;border-radius:25px;width:min(470px,100%);padding:30px;box-shadow:0 28px 90px #00000047}.dialog-mark{color:#fff;background:var(--orange);border-radius:50%;place-items:center;width:45px;height:45px;margin:0 auto;font-size:21px;font-weight:900;display:grid}.confirm-dialog h2{margin:16px 0 9px;font-size:23px}.confirm-dialog p{max-width:390px;color:var(--muted);margin:0 auto 23px;font-size:13px;line-height:1.7}.confirm-dialog>div{grid-template-columns:1fr 1.2fr;gap:11px;display:grid}.confirm-dialog button{cursor:pointer;border:0;border-radius:12px;padding:13px 12px;font-weight:800}.cancel-button{color:var(--ink);background:#e9ecf1}.confirm-button{color:#fff;background:var(--orange)}@keyframes pulse{50%{opacity:.55;transform:scale(.72)}}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=720px){.topbar{width:min(100% - 28px,1180px);padding:16px 0}.brand img{width:56px;height:56px}.brand p{font-size:14px}.prototype{display:none}.hero{width:min(100% - 28px,980px);padding:43px 0}h1{font-size:44px}.lead{font-size:15px}.acceptance-banner{text-align:left;flex-direction:column;align-items:flex-start}.connection-card{text-align:center;grid-template-columns:1fr;gap:25px;padding:28px 23px}.status-line{justify-content:center}.current-card,.section-heading{flex-direction:column;align-items:flex-start}.work-grid,.safety-actions,.technical-details dl,.before-connect{grid-template-columns:1fr}.work-preview{min-height:126px}footer{text-align:center;flex-direction:column;gap:5px;width:min(100% - 28px,1180px)}}.portal-choice{grid-template-columns:.85fr 1.15fr;align-items:center;gap:64px;max-width:1180px;margin:0 auto;padding:96px 28px;display:grid}.portal-choice h1{color:#101a5c;margin:12px 0 18px;font-size:clamp(42px,5vw,72px);line-height:1.04}.portal-choice p{color:#5d6680;line-height:1.8}.portal-choice-grid{gap:18px;display:grid}.portal-choice-grid a{color:#101a5c;background:#fff;border:1px solid #dce3ef;border-radius:22px;grid-template-columns:1fr auto;gap:8px 24px;padding:28px;text-decoration:none;transition:transform .2s,border-color .2s;display:grid;box-shadow:0 16px 40px #101a5c14}.portal-choice-grid a:hover{border-color:#45c9d5;transform:translateY(-3px)}.portal-choice-grid small,.portal-choice-grid span{color:#667085;grid-column:1}.portal-choice-grid strong{grid-column:1;font-size:34px}.portal-choice-grid b{color:#087f8c;grid-area:2/2/4;align-self:center}.portal-mismatch{background:#fff;border:1px solid #dce3ef;border-radius:24px;max-width:760px;margin:90px auto;padding:44px;box-shadow:0 20px 54px #101a5c1a}.portal-mismatch h1{color:#101a5c;margin:12px 0;font-size:36px}.portal-mismatch p{color:#667085;line-height:1.7}.portal-mismatch div{gap:12px;margin-top:24px;display:flex}.portal-mismatch a,.portal-mismatch button{color:#fff;font:inherit;cursor:pointer;background:#101a5c;border:0;border-radius:10px;padding:12px 18px;font-weight:750;text-decoration:none}.portal-mismatch button{color:#101a5c;background:#eef1f7}.dashboard-layout.dashboard-layout-student{grid-template-columns:1fr;width:min(1800px,100% - 28px);min-width:1120px;padding-top:10px}.dashboard-layout-student .dashboard-sidebar{display:none}.dashboard-layout-student .dashboard-main{background:0 0;border:0;border-radius:0;padding:0}.student-workspace-topbar{z-index:20;background:#fffffff0;border:1px solid #101a5c1a;border-radius:15px;grid-template-columns:auto minmax(150px,1fr) auto auto auto;align-items:center;gap:10px;min-height:56px;padding:7px 12px;display:grid;position:relative;box-shadow:0 8px 24px #101a5c0f}.student-workspace-brand{min-width:0;color:var(--brand-deep);white-space:nowrap;align-items:center;gap:8px;text-decoration:none;display:flex}.student-workspace-brand img{object-fit:contain;flex:none;width:42px;height:42px}.student-workspace-brand>span{text-overflow:ellipsis;font-size:14px;font-weight:900;overflow:hidden}.student-workspace-nav{align-self:stretch;align-items:center;gap:3px;min-width:0;margin-left:24px;display:flex}.student-workspace-nav button{min-width:54px;color:var(--muted);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:8px;align-self:stretch;place-items:center;padding:0 12px;font-size:11px;font-weight:850;transition:color .16s,background .16s;display:grid;position:relative}.student-workspace-nav button:hover{color:var(--brand-deep);background:#eef4f8}.student-workspace-nav button.is-active{color:var(--brand-deep);box-shadow:inset 0 -2px 0 var(--brand-bright);background:#45f3ff40}.student-workspace-nav .student-workspace-home-tab{min-width:92px;padding:0 8px}.student-workspace-home-mark{height:28px;color:inherit;font:inherit;font-size:inherit;font-weight:inherit;white-space:nowrap;background:#fff;border:1px solid #101a5c2e;border-radius:999px;justify-content:center;align-items:center;padding:0 10px;line-height:1;transition:border-color .16s,background .16s,box-shadow .16s,transform .16s;display:inline-flex;box-shadow:0 2px 7px #101a5c14}.student-workspace-nav button:hover .student-workspace-home-mark{border-color:#087f8c6b;transform:translateY(-1px);box-shadow:0 3px 10px #101a5c1f}.student-workspace-nav button.is-active .student-workspace-home-mark{border-color:var(--brand-bright);background:#45f3ff61;box-shadow:0 0 0 2px #45f3ff24}.student-workspace-account summary{cursor:pointer;list-style:none}.student-workspace-account summary::-webkit-details-marker{display:none}.student-workspace-account{justify-self:end;position:relative}.student-workspace-account>summary{border-radius:10px;grid-template-columns:34px 1fr auto;align-items:center;gap:8px;min-width:150px;padding:3px 5px;display:grid}.student-workspace-account>summary:hover,.student-workspace-account[open]>summary{background:#eef4f8}.student-workspace-account>summary>span:nth-child(2) strong,.student-workspace-account>summary>span:nth-child(2) small{display:block}.student-workspace-account>summary>span:nth-child(2) strong{color:var(--brand-deep);font-size:12px}.student-workspace-account>summary>span:nth-child(2) small{color:var(--muted);margin-top:2px;font-size:10px}.student-workspace-account>summary>i{color:#087f8c;font-size:11px;font-style:normal}.student-workspace-device{border-left:1px solid #101a5c17;grid-template-columns:34px 1fr;align-items:center;gap:8px;min-width:150px;padding:3px 5px;display:grid}.student-workspace-device>span:last-child{min-width:0}.student-workspace-device strong,.student-workspace-device small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.student-workspace-device strong{color:var(--brand-deep);font-size:11px}.student-workspace-device small{color:var(--muted);margin-top:2px;font-size:9px}.student-bean-icon{background:#263449;border:3px solid #172034;border-radius:9px;width:30px;height:34px;display:block;position:relative;transform:rotate(-3deg);box-shadow:inset 0 0 0 1px #60708c}.student-bean-icon:before{content:"";background:radial-gradient(circle at 42% 28%,#31537d,#0b1323 72%);border:2px solid #0b1323;border-radius:4px;position:absolute;inset:5px 4px 9px}.student-bean-icon:after{content:"";background:var(--brand-bright);width:3px;height:3px;box-shadow:7px 0 0 var(--brand-bright), 14px 0 0 var(--brand-bright);border-radius:50%;position:absolute;bottom:3px;left:5px}.student-account-panel{background:#fff;border:1px solid #101a5c1f;border-radius:11px;gap:10px;width:240px;padding:12px;display:grid;position:absolute;top:calc(100% + 9px);right:0;box-shadow:0 16px 40px #101a5c26}.student-account-status{color:#17663a;align-items:center;gap:7px;font-size:11px;font-weight:800;display:flex}.student-account-status>i{background:var(--green);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #24936a1f}.student-account-panel label{color:var(--brand-deep);gap:5px;font-size:11px;font-weight:850;display:grid}.student-account-panel select{color:var(--ink);font:inherit;background:#fff;border:1px solid #101a5c29;border-radius:7px;padding:7px;font-size:11px}.student-account-panel button{color:var(--brand-deep);cursor:pointer;background:#edf2f7;border:0;border-radius:8px;padding:8px;font-size:11px;font-weight:800}.student-account-panel button:disabled{cursor:wait;opacity:.55}.student-workspace-placeholder{text-align:center;background:#ffffffd6;border:1px solid #101a5c1a;border-radius:16px;place-content:center;justify-items:center;min-height:calc(100vh - 86px);margin-top:10px;display:grid;box-shadow:0 12px 30px #101a5c0d}.student-workspace-placeholder>span{color:#087f8c;letter-spacing:.12em;font-size:11px;font-weight:900}.student-workspace-placeholder>div{width:64px;height:64px;color:var(--brand-deep);background:#45f3ff47;border-radius:20px;place-items:center;margin-top:16px;font-size:23px;font-weight:900;display:grid}.student-workspace-placeholder h1{color:var(--brand-deep);letter-spacing:-.02em;margin:14px 0 8px;font-size:28px}.student-workspace-placeholder p{max-width:500px;color:var(--muted);margin:0;font-size:12px;line-height:1.7}.student-workspace-placeholder small{color:#8a91a2;margin-top:8px;font-size:10px}.student-desktop-required{background:#fff;border:1px solid #101a5c1f;border-radius:24px;justify-items:start;width:min(680px,100% - 40px);margin:90px auto;padding:44px;display:grid;box-shadow:0 22px 60px #101a5c1a}.student-desktop-required>div{border:8px solid var(--brand-deep);width:72px;height:72px;color:var(--brand-deep);background:var(--brand-bright);border-radius:22px;place-items:center;display:grid;box-shadow:inset 0 0 0 4px #fff}.student-desktop-required>div span{font-size:12px;font-weight:950}.student-desktop-required>span{color:#087f8c;letter-spacing:.08em;margin-top:24px;font-size:11px;font-weight:900}.student-desktop-required h1{max-width:none;color:var(--brand-deep);text-align:left;margin:8px 0 14px;font-size:32px}.student-desktop-required p{color:var(--muted);margin:0;font-size:13px;line-height:1.8}.student-desktop-required button{color:#fff;background:var(--brand-deep);cursor:pointer;font:inherit;border:0;border-radius:9px;margin-top:24px;padding:10px 16px;font-size:12px;font-weight:850}.platform-release-switcher{min-width:118px;color:var(--muted);gap:2px;font-size:9px;font-weight:800;line-height:1;display:grid}.platform-release-switcher>span{white-space:nowrap;padding-left:2px}.platform-release-switcher select{width:100%;min-height:29px;color:var(--brand-deep);font:inherit;cursor:pointer;background:#f7fafc;border:1px solid #101a5c29;border-radius:8px;padding:5px 22px 5px 8px;font-size:10px;font-weight:850}.platform-release-switcher select:disabled{cursor:default;opacity:.65}.student-studio{--works-width:190px;--versions-width:210px;--files-width:190px;grid-template-columns:var(--works-width) var(--versions-width) var(--files-width) minmax(430px, 1fr) 280px;gap:10px;min-height:calc(100vh - 86px);margin-top:10px;transition:grid-template-columns .18s,gap .18s;display:grid}.student-studio-works-collapsed{--works-width:42px}.student-studio-versions-collapsed{--versions-width:42px}.student-studio-files-collapsed{--files-width:42px}.student-studio-collapse-1{gap:7px}.student-studio-collapse-2{gap:4px}.student-studio-collapse-3{gap:2px}.student-studio-collapse-2 .student-studio-versions,.student-studio-collapse-3 .student-studio-versions,.student-studio-collapse-3 .student-studio-files{margin-left:-5px}.student-studio-collapse-2 .student-studio-works,.student-studio-collapse-2 .student-studio-versions,.student-studio-collapse-3 .student-studio-works,.student-studio-collapse-3 .student-studio-versions,.student-studio-collapse-3 .student-studio-files{box-shadow:3px 8px 18px #101a5c17}.student-studio-panel{background:#fffffff5;border:1px solid #101a5c1f;border-radius:16px;min-width:0;overflow:hidden;box-shadow:0 12px 30px #101a5c0d}.student-studio-panel>header{border-bottom:1px solid #101a5c17;justify-content:space-between;align-items:center;gap:10px;min-height:62px;padding:14px;display:flex}.student-studio-panel>header div>span{color:#087f8c;letter-spacing:.08em;font-size:11px;font-weight:900;display:block}.student-studio-panel>header div>strong{color:var(--brand-deep);text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:13px;display:block;overflow:hidden}.studio-panel-collapse{width:30px;height:30px;color:var(--brand-deep);cursor:pointer;background:#eaf1f7;border:0;border-radius:8px;flex:none;font-size:20px;line-height:1}.student-studio-works-collapsed .student-studio-works>header,.student-studio-versions-collapsed .student-studio-versions>header,.student-studio-files-collapsed .student-studio-files>header{flex-direction:column-reverse;justify-content:flex-end;gap:10px;min-height:104px;padding:9px 6px}.student-studio-works-collapsed .student-studio-works>header div,.student-studio-versions-collapsed .student-studio-versions>header div,.student-studio-files-collapsed .student-studio-files>header div{display:block}.student-studio-works-collapsed .student-studio-works>header div>strong,.student-studio-versions-collapsed .student-studio-versions>header div>strong,.student-studio-files-collapsed .student-studio-files>header div>strong{display:none}.student-studio-works-collapsed .student-studio-works>header div>span,.student-studio-versions-collapsed .student-studio-versions>header div>span,.student-studio-files-collapsed .student-studio-files>header div>span{letter-spacing:0;white-space:nowrap}.studio-panel-content{min-width:0;transition:opacity .18s}.student-studio-works-collapsed .studio-works-content,.student-studio-versions-collapsed .studio-versions-content,.student-studio-files-collapsed .studio-files-content{pointer-events:none;opacity:.58;-webkit-mask-image:linear-gradient(90deg,#000 0 29px,#0000 41px);mask-image:linear-gradient(90deg,#000 0 29px,#0000 41px)}.student-studio-works-collapsed .studio-works-content{width:190px}.student-studio-versions-collapsed .studio-versions-content{width:210px}.student-studio-files-collapsed .studio-files-content{width:190px}.studio-create-button{width:calc(100% - 20px);color:var(--brand-deep);cursor:pointer;background:#f7fbfc;border:1px dashed #101a5c47;border-radius:9px;margin:10px;padding:9px;font-size:11px;font-weight:850}.studio-create-form{background:#f4f7fb;border-radius:10px;gap:8px;margin:0 10px 12px;padding:10px;display:grid}.student-studio .management-field>span{font-size:11px}.student-studio .management-field input,.student-studio .management-field select{font-size:12px}.student-studio .management-submit,.student-studio .management-feedback{font-size:11px}.studio-work-items,.studio-version-items{gap:5px;padding:6px 8px 12px;display:grid}.studio-work-items>button,.studio-version-items>button{width:100%;min-width:0;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;gap:4px;padding:10px;display:grid}.studio-work-items>button:hover,.studio-version-items>button:hover{background:#f2f6fa}.studio-work-items>button.is-active,.studio-version-items>button.is-active{box-shadow:inset 3px 0 0 var(--brand-bright);background:#eaf7f8;border-color:#101a5c24}.studio-work-items span,.studio-version-items span{color:var(--brand-deep);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:850;overflow:hidden}.studio-work-items small,.studio-version-items small{color:var(--muted);font-size:11px;line-height:1.45}.studio-work-items p,.studio-version-items p{color:var(--muted);padding:14px 8px;font-size:11px;line-height:1.6}.studio-version-items>button{grid-template-columns:auto 1fr;align-items:center}.studio-version-items>button strong{color:var(--brand-deep);grid-row:1/3;font-size:18px}.studio-version-items>button span,.studio-version-items>button small{grid-column:2}.studio-draft-version>strong{font-size:14px!important}.studio-file-items{gap:4px;padding:7px 8px;display:grid}.studio-file-items>button{width:100%;min-width:0;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:9px;grid-template-columns:30px 1fr;align-items:center;gap:8px;padding:8px;display:grid}.studio-file-items>button:hover{background:#f2f6fa}.studio-file-items>button.is-active{box-shadow:inset 3px 0 0 var(--brand-bright);background:#eaf7f8;border-color:#101a5c24}.studio-file-items>button>span{min-width:0}.studio-file-items strong,.studio-file-items small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.studio-file-items strong{color:var(--brand-deep);font-size:11px}.studio-file-items small{color:var(--muted);margin-top:3px;font-size:10px}.studio-file-icon{color:#087f8c;background:#e7f7f8;border-radius:8px;place-items:center;width:30px;height:30px;font-size:10px;font-style:normal;font-weight:900;display:grid}.studio-file-header{color:#6b4ca3;background:#f0eafb}.studio-file-image{color:#9a5c12;background:#fff0d7}.studio-file-config{color:#596273;background:#edf1f5}.studio-files-note{color:var(--muted);background:#f4f7fb;border-radius:9px;margin:2px 10px 12px;padding:9px;font-size:10px;line-height:1.55}.studio-version-actions{border-top:1px solid #101a5c17;gap:8px;margin:0 10px 12px;padding-top:10px;display:grid}.studio-version-actions button,.studio-version-more summary{width:100%;color:var(--brand-deep);cursor:pointer;background:#fff;border:1px solid #101a5c26;border-radius:8px;padding:9px 8px;font-size:11px;font-weight:800;line-height:1.35}.studio-version-actions .studio-install-primary{border-color:var(--brand-deep);color:#fff;background:var(--brand-deep);box-shadow:0 5px 13px #101a5c2e}.studio-version-actions button:disabled{cursor:wait;opacity:.5}.studio-version-more summary{text-align:center;background:#f1f5f9;list-style:none}.studio-version-more summary::-webkit-details-marker{display:none}.studio-version-more summary:after{content:"⌄";color:#087f8c;margin-left:6px}.studio-version-more[open] summary:after{content:"⌃"}.studio-version-more>div{gap:6px;margin-top:7px;display:grid}.studio-version-more button.is-danger{color:#a63446;background:#fff7f7}.student-studio-editor{flex-direction:column;display:flex}.student-studio-editor>header{align-items:center}.student-studio-editor>.studio-editor-toolbar{flex-wrap:nowrap;gap:6px;min-height:48px;padding:6px 8px;overflow:auto hidden}.studio-toolbar-identity{flex:none;max-width:66px}.student-studio-editor .studio-toolbar-identity>span,.student-studio-editor .studio-toolbar-identity>small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.student-studio-editor .studio-toolbar-identity>span{color:#087f8c;letter-spacing:.06em;font-size:9px;font-weight:900}.student-studio-editor .studio-toolbar-identity>small{color:var(--muted);margin-top:2px;font-size:8px}.studio-toolbar-field{background:#f7fafc;border:1px solid #101a5c1f;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:5px;min-width:0;height:34px;padding:3px 6px;display:grid}.studio-toolbar-field>span,.studio-toolbar-chip>span{color:var(--muted);white-space:nowrap;font-size:8px;font-weight:850}.studio-toolbar-field input,.studio-toolbar-field select{min-width:0;color:var(--brand-deep);font:inherit;background:0 0;border:0;outline:0;padding:3px 4px;font-size:10px;font-weight:800}.studio-toolbar-project{flex:0 0 150px}.studio-toolbar-project input{width:112px}.studio-toolbar-chip{background:#f7fafc;border:1px solid #101a5c1f;border-radius:8px;align-items:center;gap:5px;min-width:0;height:34px;padding:4px 7px;display:flex}.student-studio-editor .studio-toolbar-chip strong{max-width:130px;color:var(--brand-deep);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:9px;overflow:hidden}.studio-toolbar-base{background:#eef7f7;flex:none}.studio-toolbar-base>i{color:#39755e;background:#fff;border-radius:99px;padding:2px 4px;font-size:7px;font-style:normal;font-weight:850}.studio-toolbar-frozen{background:#fff5d8}.studio-editor-tabs{background:#edf2f7;border-radius:9px;flex:none;padding:3px;display:flex}.studio-editor-tabs button{color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:7px;padding:6px 8px;font-size:9px;font-weight:850}.studio-editor-tabs button.is-active{color:var(--brand-deep);background:#fff;box-shadow:0 2px 7px #101a5c1a}.studio-editor-form{flex-direction:column;flex:1;gap:12px;padding:14px;display:flex}.studio-code-editor{color:#dce9ff;background:#10182b;border-radius:12px;flex:1;min-height:230px;overflow:hidden}.studio-code-editor>div{border-bottom:1px solid #ffffff17;justify-content:space-between;align-items:center;gap:12px;padding:10px 13px;display:flex}.studio-code-editor>div span{color:#45f3ff;font-size:11px;font-weight:850}.studio-code-editor>div small{color:#ffffff94;font-size:11px}.studio-code-editor pre{color:inherit;white-space:pre-wrap;margin:0;padding:18px;font:14px/1.7 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.studio-code-logic pre{color:#f5f7ff;font-family:inherit}.studio-image-file-preview{background:#10182b;grid-template-columns:minmax(130px,200px) 1fr;align-items:center;gap:20px;min-height:230px;padding:18px;display:grid}.studio-image-checker{aspect-ratio:240/284;background-color:#1b2740;background-image:linear-gradient(45deg,#ffffff0a 25%,#0000 25%),linear-gradient(-45deg,#ffffff0a 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#ffffff0a 75%),linear-gradient(-45deg,#0000 75%,#ffffff0a 75%);background-position:0 0,0 8px,8px -8px,-8px 0;background-size:16px 16px;border:1px solid #ffffff26;border-radius:10px;place-items:center;padding:14px;display:grid}.studio-image-checker span{color:#fff;text-align:center;font-size:12px;font-weight:800}.studio-image-file-preview p{color:#ffffffb3;font-size:11px;line-height:1.7}.studio-live-preview{background:#f4f7fb;border:1px solid #101a5c21;border-radius:13px;overflow:hidden}.studio-preview-body{grid-template-columns:118px minmax(0,1fr);align-items:stretch;gap:10px;padding:9px;display:grid}.studio-black-bean{background:#222b39;border:4px solid #111827;border-radius:15px;width:118px;height:176px;padding:7px;display:flex;box-shadow:0 6px 14px #0f172a2e}.studio-black-bean-screen{color:#fff;text-align:center;background:radial-gradient(circle at 35% 22%,#2a4a76 0%,#10182b 65%);border-radius:8px;flex:1;place-items:center;width:100%;padding:10px;animation:.36s ease-out preview-screen-in;display:grid;overflow:hidden}.studio-black-bean-screen span{overflow-wrap:anywhere;font-size:11px;font-weight:800;line-height:1.45}.studio-preview-info{flex-direction:column;gap:5px;min-width:0;height:176px;display:flex}.studio-preview-info>header{justify-content:space-between;align-items:center;gap:8px;min-height:28px;display:flex}.studio-preview-info>header span{color:#087f8c;letter-spacing:.05em;font-size:10px;font-weight:900;display:block}.studio-preview-info>header strong{color:var(--brand-deep);margin-top:1px;font-size:11px;display:block}.studio-preview-info>header button{color:var(--brand-deep);cursor:pointer;background:#fff;border:1px solid #101a5c26;border-radius:7px;padding:5px 8px;font-size:9px;font-weight:800}.studio-preview-info dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:0;display:grid}.studio-preview-info dl div{background:#fff;border-radius:7px;min-width:0;padding:5px 7px}.studio-preview-info dt{color:var(--muted);font-size:9px}.studio-preview-info dd{color:var(--brand-deep);text-overflow:ellipsis;white-space:nowrap;margin:2px 0 0;font-size:10px;font-weight:800;line-height:1.35;overflow:hidden}.studio-feedback-console{background:#10182b;border:1px solid #101a5c1a;border-radius:7px;flex:1;grid-template-rows:auto 1fr;min-height:0;display:grid;overflow:hidden}.studio-feedback-console>header{border-bottom:1px solid #ffffff14;justify-content:space-between;padding:3px 6px;display:flex}.studio-feedback-console>header strong{color:#45f3ff;font-size:8px}.studio-feedback-console>header small{color:#ffffff80;font-size:7px}.studio-feedback-scroll{scrollbar-width:thin;min-height:0;padding:4px 6px;overflow-y:auto}.studio-feedback-scroll p{color:#dbe6f8;margin:0 0 3px;font:8px/1.4 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.studio-feedback-scroll p i{color:#0e1730;background:#9fe7d1;border-radius:3px;margin-right:5px;padding:1px 3px;font-family:inherit;font-size:7px;font-weight:700;line-height:1.4}.studio-feedback-scroll p.is-error i{background:#ff9f93}.studio-feedback-scroll p.is-warning i{background:#ffd274}.studio-feedback-scroll p.is-success i{background:#9fe7d1}.studio-feedback-scroll progress{width:100%;height:4px;accent-color:var(--brand-bright)}.studio-preview-actions{justify-content:flex-end;gap:4px;display:flex}.studio-preview-actions button{min-height:24px;color:var(--brand-deep);cursor:pointer;font:inherit;white-space:nowrap;background:#fff;border:1px solid #101a5c26;border-radius:6px;padding:3px 7px;font-size:8px;font-weight:850}.studio-preview-actions button.is-primary{border-color:var(--brand-deep);color:#fff;background:var(--brand-deep)}.studio-preview-actions button.is-danger{color:#a63446;background:#fff7f7}.studio-preview-actions button:disabled{cursor:wait;opacity:.5}.studio-empty{text-align:center;margin:auto;padding:30px}.studio-empty strong{color:var(--brand-deep);font-size:18px}.studio-empty p{color:var(--muted);font-size:12px}.installation-progress{color:#165a63;background:#eefbfc;border:1px solid #b8dfe3;border-radius:13px;gap:8px;padding:15px;display:grid}.installation-progress strong,.installation-progress span{font-size:12px}.installation-progress progress{accent-color:#101a5c;width:100%}.installation-done{color:#17663a;background:#f0fbf4;border-color:#b8dfc7}.student-studio-assistant{background:#f8fafc;flex-direction:column;display:flex}.student-avatar{width:34px;height:34px;color:var(--brand-deep);background:var(--brand-bright);border-radius:10px;place-items:center;font-size:15px;font-weight:900;display:grid}.student-studio-assistant>header i{color:#7b642c;background:#fff2c8;border-radius:99px;padding:5px 7px;font-size:11px;font-style:normal;font-weight:900}.studio-chat-messages{flex-direction:column;flex:1;gap:10px;padding:12px;display:flex}.studio-chat-messages article{background:#fff;border-radius:11px 11px 11px 3px;padding:11px;box-shadow:0 6px 18px #101a5c0f}.studio-chat-messages article span{color:#087f8c;font-size:11px;font-weight:900}.studio-chat-messages article p{color:#4e5870;margin:6px 0 0;font-size:12px;line-height:1.65}.studio-chat-notice{color:#765f25;background:#fff5d8;border-radius:9px;margin-top:auto;padding:9px;font-size:11px;line-height:1.5}.studio-chat-composer{background:#fff;border:1px solid #101a5c1f;border-radius:11px;grid-template-columns:1fr auto;gap:7px;margin:0 10px 10px;padding:8px;display:grid}.studio-chat-composer textarea{resize:none;min-height:54px;color:var(--muted);font:inherit;background:0 0;border:0;outline:0;font-size:11px;line-height:1.5}.studio-chat-composer button{color:#8d95a5;background:#e8ecf2;border:0;border-radius:8px;align-self:end;padding:7px 9px;font-size:11px;font-weight:850}@keyframes preview-screen-in{0%{opacity:.35;transform:scale(.985)}to{opacity:1;transform:scale(1)}}@media (width<=1380px){.student-studio{--works-width:minmax(150px, .8fr);--versions-width:minmax(175px, .9fr);--files-width:minmax(175px, .9fr);grid-template-columns:var(--works-width) var(--versions-width) var(--files-width) minmax(390px, 2fr)}.student-studio-works-collapsed{--works-width:42px}.student-studio-versions-collapsed{--versions-width:42px}.student-studio-files-collapsed{--files-width:42px}.student-studio-assistant{grid-column:1/-1;min-height:360px}}@media (width<=820px){.portal-choice{grid-template-columns:1fr;padding-top:56px}.portal-choice-grid a{grid-template-columns:1fr}.portal-choice-grid b{grid-area:auto/1}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.top-actions{align-items:center;gap:10px;display:flex}.top-actions>a{color:var(--brand-deep);background:#45f3ff33;border-radius:99px;padding:8px 12px;font-size:12px;font-weight:800;text-decoration:none}.platform-shell{background:linear-gradient(145deg,#f8f5ef 0%,#eef9fa 58%,#f6f3eb 100%);min-height:100vh}.platform-topbar{border-bottom:1px solid #101a5c1f;justify-content:space-between;align-items:center;width:min(1240px,100% - 48px);margin:0 auto;padding:22px 0;display:flex}.platform-brand{color:var(--ink);align-items:center;gap:13px;text-decoration:none;display:flex}.platform-brand img{object-fit:contain;width:60px;height:60px}.platform-brand span,.platform-brand strong,.platform-brand small{display:block}.platform-brand strong{color:var(--brand-deep);font-size:16px}.platform-brand small{color:var(--muted);margin-top:4px;font-size:11px}.platform-topbar nav{align-items:center;gap:10px;display:flex}.platform-topbar nav a,.platform-topbar nav span{border-radius:99px;padding:8px 12px;font-size:11px;font-weight:800;text-decoration:none}.platform-topbar nav a{color:var(--brand-deep);background:#fff}.platform-topbar nav span{color:var(--brand-deep);background:var(--brand-bright)}.platform-login-underlay{opacity:.72;filter:saturate(.72);pointer-events:none;-webkit-user-select:none;user-select:none}.platform-checking-panel{align-content:center;gap:14px;min-height:330px;display:grid}.platform-checking-panel span{background:linear-gradient(90deg,#edf1f6,#f7f9fb,#edf1f6) 0 0/200% 100%;border-radius:13px;height:54px;animation:1.4s linear infinite platform-checking-shimmer}.platform-session-check-overlay{z-index:100;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#101a5c1a;place-items:center;display:grid;position:fixed;inset:0}.platform-session-check-dialog{background:#fffffff0;border:0;border-radius:18px;align-items:center;gap:14px;min-width:290px;padding:18px 22px;display:flex;box-shadow:0 22px 60px #101a5c2e}.platform-session-check-dialog>i{border:3px solid #101a5c24;border-top-color:var(--brand-deep);border-radius:50%;flex:none;width:28px;height:28px;animation:.8s linear infinite platform-session-spin}.platform-session-check-dialog strong,.platform-session-check-dialog small{display:block}.platform-session-check-dialog strong{color:var(--brand-deep);font-size:13px}.platform-session-check-dialog small{color:var(--muted);margin-top:4px;font-size:10px}@keyframes platform-session-spin{to{transform:rotate(360deg)}}@keyframes platform-checking-shimmer{to{background-position:-200% 0}}.login-layout{grid-template-columns:.84fr 1.16fr;align-items:center;gap:70px;width:min(1180px,100% - 48px);min-height:calc(100vh - 105px);margin:0 auto;padding:70px 0 90px;display:grid}.login-intro{padding-left:18px}.platform-eyebrow{color:var(--brand-deep);letter-spacing:.15em;align-items:center;gap:9px;font-size:12px;font-weight:900;display:inline-flex}.platform-eyebrow:before{content:"";background:var(--brand-bright);width:28px;height:3px}.login-intro h1{max-width:none;color:var(--brand-deep);text-align:left;margin:20px 0 24px;font-size:clamp(48px,6vw,76px);line-height:1.04}.login-intro>p{max-width:470px;color:var(--muted);margin:0;font-size:16px;line-height:1.85}.login-promise{max-width:470px;color:var(--brand-deep);background:#ffffffa8;border:1px solid #101a5c1f;border-radius:15px;align-items:center;gap:11px;margin-top:28px;padding:15px 17px;font-size:12px;font-weight:750;display:flex}.login-promise i{background:var(--brand-bright);border-radius:50%;flex:none;width:10px;height:10px;box-shadow:0 0 0 5px #45f3ff2e}.role-panel{background:#ffffffd9;border:1px solid #101a5c1f;border-radius:30px;padding:28px;box-shadow:0 28px 80px #101a5c14}.role-panel-heading{justify-content:space-between;align-items:end;gap:24px;margin-bottom:18px;display:flex}.role-panel-heading span{color:var(--brand-deep);font-size:17px;font-weight:900}.role-panel-heading p{color:var(--muted);margin:0;font-size:10px}.test-login-form{color:#fff;background:var(--brand-deep);border-radius:17px;grid-template-columns:1.2fr 1fr 1fr auto;align-items:end;gap:10px;margin-bottom:14px;padding:16px;display:grid}.test-login-form>div strong,.test-login-form>div small,.test-login-form label span{display:block}.test-login-form>div strong{font-size:12px}.test-login-form>div small{color:#ffffffa8;margin-top:4px;font-size:8px;line-height:1.4}.test-login-form label span{color:#ffffffb8;margin-bottom:5px;font-size:8px;font-weight:800}.test-login-form input{width:100%;min-width:0;color:var(--brand-deep);font:inherit;background:#fff;border:1px solid #fff3;border-radius:9px;padding:10px 11px;font-size:11px}.test-login-form input:focus{border-color:var(--brand-bright);outline:3px solid #45f3ff59}.test-login-form button{color:var(--brand-deep);background:var(--brand-bright);cursor:pointer;border:0;border-radius:9px;padding:11px 13px;font-size:10px;font-weight:900}.test-login-form button:disabled{cursor:wait;opacity:.7}.role-login-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.role-login{min-height:172px;color:var(--ink);text-align:left;cursor:pointer;background:#f8f8fb;border:1px solid #101a5c1c;border-radius:19px;flex-direction:column;align-items:flex-start;padding:18px;transition:transform .16s,border-color .16s,box-shadow .16s;display:flex}.role-login:hover:not(:disabled){border-color:var(--brand-deep);transform:translateY(-2px);box-shadow:0 11px 28px #101a5c17}.role-login.role-selected{border-color:var(--brand-deep);box-shadow:inset 0 0 0 2px var(--brand-bright)}.role-login:disabled{cursor:not-allowed;opacity:.64}.role-login>span{width:28px;height:28px;color:var(--brand-deep);background:var(--brand-bright);border-radius:9px;place-items:center;font-size:10px;font-weight:900;display:grid}.role-login strong{color:var(--brand-deep);margin-top:16px;font-size:17px}.role-login small{min-height:32px;color:var(--muted);margin-top:5px;font-size:10px;line-height:1.55}.role-login b{color:var(--brand-deep);margin-top:auto;font-size:10px}.role-1{background:#f0f2ff}.role-2{background:#effbfc}.role-3{background:#fff9eb}.role-4{background:#eef9f3}.student-login-ceremony{background:linear-gradient(135deg,#0f1a5c 0%,#162579 54%,#0d7989 140%);border:1px solid #101a5c24;border-radius:22px;grid-template-columns:126px 1fr;align-items:center;gap:24px;min-height:236px;padding:24px;display:grid;position:relative;overflow:hidden;box-shadow:0 16px 38px #101a5c24}.student-login-ceremony:after{content:"";pointer-events:none;border:1px solid #45f3ff47;border-radius:50%;width:210px;height:210px;position:absolute;top:-110px;right:-92px;box-shadow:0 0 0 28px #45f3ff0a,0 0 0 58px #45f3ff06}.student-bean-mark{width:116px;height:116px;color:var(--brand-deep);background:var(--brand-bright);border:1px solid #45f3ff7a;border-radius:42% 58% 55% 45%/50% 43% 57% 50%;place-items:center;display:grid;position:relative;transform:rotate(-8deg);box-shadow:inset -13px -13px #0088991f,0 12px 30px #01072f47}.student-bean-mark:before{content:"";border-top:5px solid #ffffff85;border-radius:50%;width:52px;height:28px;position:absolute;top:13px;right:12px;transform:rotate(28deg)}.student-bean-mark span{letter-spacing:.08em;font-size:18px;font-weight:950;transform:rotate(8deg)}.student-login-identity{z-index:1;color:#fff;min-width:0;position:relative}.student-found-label{color:var(--brand-bright);letter-spacing:.08em;align-items:center;gap:8px;font-size:11px;font-weight:900;display:inline-flex}.student-found-label i{background:#55efb5;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 5px #55efb524}.student-login-identity h2{color:#fff;text-align:left;max-width:none;margin:10px 0 8px;font-size:25px;line-height:1.28}.student-login-identity>p{color:#ffffffdb;margin:0 0 17px;font-size:12px;font-weight:800}.student-login-identity>p small{color:#ffffff94;margin-top:4px;font-size:10px;font-weight:600;display:block}.student-confirm-actions{align-items:center;gap:9px;display:flex}.student-confirm-actions button{cursor:pointer;border-radius:10px;padding:11px 15px;font-size:11px;font-weight:900}.student-confirm-actions button:disabled{cursor:wait;opacity:.66}.student-confirm-primary{color:var(--brand-deep);background:var(--brand-bright);border:0;box-shadow:0 7px 18px #45f3ff2e}.student-confirm-secondary{color:#fff;background:0 0;border:1px solid #ffffff47}.student-confirm-proof{color:#ffffff91;margin-top:12px;font-size:9px;line-height:1.55;display:block}.platform-error{color:#8f2d20;background:#fff0ed;border-radius:12px;margin-top:14px;padding:12px 14px;font-size:11px}.development-note{color:#8b92a2;text-align:center;margin:16px 0 0;font-size:9px}.dashboard-layout{grid-template-columns:260px 1fr;gap:24px;width:min(1240px,100% - 48px);min-height:calc(100vh - 105px);margin:0 auto;padding:34px 0 70px;display:grid}.dashboard-sidebar{background:#fffc;border:1px solid #101a5c1f;border-radius:24px;align-self:start;padding:25px 22px;position:sticky;top:20px}.role-chip{color:var(--brand-deep);background:var(--brand-bright);border-radius:99px;padding:6px 9px;font-size:10px;font-weight:900;display:inline-block}.dashboard-sidebar h1{max-width:none;color:var(--brand-deep);text-align:left;letter-spacing:-.03em;margin:16px 0 7px;font-size:25px;line-height:1.2}.dashboard-sidebar>p{color:var(--muted);margin:0;font-size:11px;line-height:1.6}.sidebar-rule{background:#101a5c1c;height:1px;margin:20px 0}.dashboard-sidebar>a{color:var(--brand-deep);background:#eef3f8;border-radius:10px;margin-bottom:8px;padding:11px 12px;font-size:11px;font-weight:800;text-decoration:none;display:block}.sidebar-section-label{color:var(--muted);letter-spacing:.08em;margin-bottom:9px;font-size:9px;font-weight:850;display:block}.dashboard-module-nav{gap:5px;display:grid}.dashboard-module-nav a{color:var(--muted);border-radius:9px;padding:10px 12px 10px 17px;font-size:10px;font-weight:800;text-decoration:none;transition:color .15s,background .15s;display:block;position:relative}.dashboard-module-nav a:before{content:"";background:0 0;border-radius:99px;width:3px;height:14px;position:absolute;top:50%;left:6px;transform:translateY(-50%)}.dashboard-module-nav a:hover{color:var(--brand-deep);background:#f2f6fa}.dashboard-module-nav a.is-active{color:var(--brand-deep);background:#eaf1f7}.dashboard-module-nav a.is-active:before{background:var(--brand-bright)}.dashboard-sidebar>button{width:100%;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:10px;margin-top:12px;padding:10px;font-size:10px}.dashboard-main{background:#ffffffb8;border:1px solid #101a5c1a;border-radius:27px;min-width:0;padding:28px}.dashboard-heading{justify-content:space-between;align-items:center;gap:20px;display:flex}.dashboard-heading span{color:var(--brand-deep);letter-spacing:.08em;font-size:10px;font-weight:850}.dashboard-heading h2{margin:5px 0 0;font-size:29px}.online-badge{background:#edf9f3;border-radius:99px;align-items:center;gap:8px;padding:9px 12px;display:inline-flex}.online-badge i{background:var(--green);border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #24936a21}.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-top:24px;display:grid}.metric-card{color:#fff;background:var(--brand-deep);border-radius:18px;flex-direction:column;justify-content:space-between;min-height:118px;padding:20px;display:flex}.metric-card:nth-child(2){color:var(--brand-deep);background:var(--brand-bright)}.metric-card:nth-child(3){color:var(--brand-deep);background:#e7eaf6}.metric-card strong{font-size:38px;line-height:1}.metric-card span{font-size:10px;font-weight:800}.dashboard-columns{grid-template-columns:1fr 1fr;gap:14px;display:grid}.data-list{background:#fff;border:1px solid #101a5c1a;border-radius:18px;margin-top:18px;padding:20px}.data-list h3{color:var(--brand-deep);margin:0 0 14px;font-size:15px}.data-list>div>p{color:var(--muted);font-size:11px}.data-row{border-top:1px solid #101a5c14;justify-content:space-between;align-items:center;gap:15px;padding:12px 0;display:flex}.data-row:first-child{border-top:0}.data-row span{align-items:center;gap:9px;font-size:12px;font-weight:800;display:flex}.data-row i{background:var(--brand-bright);border-radius:50%;width:8px;height:8px}.data-row small{color:var(--muted);font-size:9px}.data-row>div{text-align:right;justify-content:flex-end;align-items:center;gap:10px;display:flex}.row-action{min-width:48px;color:var(--brand-deep);cursor:pointer;background:#fff;border:1px solid #101a5c29;border-radius:8px;padding:7px 9px;font-size:9px;font-weight:850}.row-action:hover{border-color:var(--brand-deep)}.row-action:disabled{cursor:wait;opacity:.55}.management-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px;display:grid}.management-panel{background:#fffffff0;border:1px solid #101a5c1c;border-radius:18px;margin-top:18px;padding:20px}.management-grid .management-panel{margin-top:0}.management-panel-heading{margin-bottom:15px}.management-panel-heading h3{color:var(--brand-deep);margin:0;font-size:15px}.management-panel-heading p{color:var(--muted);margin:5px 0 0;font-size:9px;line-height:1.55}.management-form{gap:10px;display:grid}.management-form-three{grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end}.management-field{gap:5px;min-width:0;display:grid}.management-field>span{color:var(--brand-deep);font-size:9px;font-weight:850}.management-field input,.management-field select,.management-field textarea{width:100%;min-width:0;color:var(--ink);font:inherit;box-sizing:border-box;background:#fbfcff;border:1px solid #101a5c2b;border-radius:9px;outline:none;padding:9px 10px;font-size:10px}.management-field textarea{resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;line-height:1.45}.management-field input:focus,.management-field select:focus,.management-field textarea:focus{border-color:var(--brand-deep);box-shadow:0 0 0 3px #45f3ff3d}.management-submit{color:var(--brand-deep);background:var(--brand-bright);cursor:pointer;border:0;border-radius:9px;padding:10px 13px;font-size:10px;font-weight:900}.management-submit:hover{filter:brightness(.96)}.management-submit:disabled{cursor:not-allowed;opacity:.5}.management-secondary{color:var(--brand-deep);cursor:pointer;background:#eef3f8;border:1px solid #101a5c2e;border-radius:9px;padding:10px 12px;font-size:10px;font-weight:850}.management-secondary:hover{border-color:var(--brand-deep)}.management-secondary:disabled{cursor:wait;opacity:.55}.management-relation-form+.management-relation-form{border-top:1px solid #101a5c14;margin-top:13px;padding-top:13px}.management-feedback{border-radius:10px;margin-top:14px;padding:11px 13px;font-size:10px;font-weight:750}.management-feedback-success{color:#116149;background:#eaf8f3}.management-feedback-error{color:#8f2d20;background:#fff0ed}.operator-action-grid{grid-template-columns:minmax(260px,.8fr) minmax(380px,1.2fr);gap:14px;display:grid}.operator-single-action .management-panel{margin-top:18px}.management-form-device{grid-template-columns:minmax(150px,.9fr) minmax(190px,1fr) minmax(190px,1fr) auto;align-items:end}.management-form-device .management-feedback{grid-column:1/-1;margin-top:0}.operator-action-grid .management-form-device{grid-template-columns:1fr 1fr}.operator-table-card{background:#fff;border:1px solid #101a5c1a;border-radius:18px;margin-top:18px;overflow:hidden}.operator-table-heading{border-bottom:1px solid #101a5c14;justify-content:space-between;align-items:flex-end;gap:20px;padding:18px 20px;display:flex}.operator-table-heading span{color:var(--muted);letter-spacing:.08em;font-size:9px;font-weight:800}.operator-table-heading h3{color:var(--brand-deep);margin:4px 0 0;font-size:16px}.operator-table-heading small{color:var(--muted);font-size:9px}.operator-toolbar{background:#f7f9fc;border:1px solid #101a5c17;border-radius:13px;grid-template-columns:minmax(210px,1fr) 150px auto;align-items:end;gap:10px;margin-top:18px;padding:12px 14px;display:grid}.operator-table-card .operator-toolbar{border:0;border-bottom:1px solid #101a5c14;border-radius:0;margin:0}.operator-toolbar label{gap:5px;display:grid}.operator-toolbar label span{color:var(--brand-deep);font-size:9px;font-weight:850}.operator-toolbar input,.operator-toolbar select{width:100%;color:var(--ink);font:inherit;box-sizing:border-box;background:#fff;border:1px solid #101a5c26;border-radius:9px;outline:none;padding:9px 10px;font-size:10px}.operator-toolbar input:focus,.operator-toolbar select:focus{border-color:var(--brand-deep);box-shadow:0 0 0 3px #45f3ff33}.operator-toolbar small{color:var(--muted);white-space:nowrap;padding-bottom:9px;font-size:9px}.operator-table-scroll{overflow-x:auto}.operator-table{border-collapse:collapse;width:100%;min-width:650px}.operator-table th,.operator-table td{text-align:left;vertical-align:middle;border-bottom:1px solid #101a5c12;padding:13px 20px;font-size:10px}.operator-table th{color:var(--muted);letter-spacing:.05em;background:#f7f9fc;font-size:9px;font-weight:850}.operator-table tbody tr:hover{background:#f8fbfd}.operator-table tbody tr:last-child td{border-bottom:0}.operator-table td strong{color:var(--brand-deep);font-size:11px}.table-status{align-items:center;gap:7px;font-weight:800;display:inline-flex}.table-status i{background:var(--green);border-radius:50%;width:7px;height:7px}.table-status-suspended{color:var(--muted)}.table-status-suspended i{background:#a3a9b8}.table-device-inventory i{background:#d89a20}.table-device-frozen,.table-device-retired{color:var(--muted)}.table-device-frozen i,.table-device-retired i{background:#a3a9b8}.table-code{color:var(--brand-deep);background:#edf3f8;border-radius:7px;margin:2px 6px 2px 0;padding:4px 7px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:9px;display:inline-block}.table-empty,.operator-table-empty{color:var(--muted)}.operator-table-empty{text-align:center!important;padding:34px 20px!important}.table-actions{white-space:nowrap;align-items:center;gap:6px;display:flex}.table-actions>button{min-width:46px;color:var(--brand-deep);cursor:pointer;background:#fff;border:1px solid #101a5c29;border-radius:8px;padding:7px 9px;font-size:9px;font-weight:850}.table-actions>button:hover{border-color:var(--brand-deep)}.table-actions>button:disabled{cursor:wait;opacity:.55}.table-actions>button.is-danger{color:#8f2d20}.table-subline{color:var(--muted);margin-top:5px;font-size:8px;font-weight:650;display:block}.operator-dialog-backdrop{z-index:30;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#070f376b;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.operator-dialog{background:#fff;border:1px solid #101a5c1f;border-radius:20px;width:min(460px,100%);padding:22px;box-shadow:0 24px 70px #0812463d}.operator-dialog>header{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px;display:flex}.operator-dialog>header span{color:var(--muted);letter-spacing:.08em;font-size:9px;font-weight:850}.operator-dialog>header h3{color:var(--brand-deep);margin:4px 0 0;font-size:19px}.operator-dialog>header button{width:32px;height:32px;color:var(--muted);cursor:pointer;background:#eef3f8;border:0;border-radius:9px;font-size:20px;line-height:1}.operator-dialog footer{justify-content:flex-end;gap:8px;margin-top:8px;display:flex}.student-welcome{color:#fff;background:var(--brand-deep);border-radius:21px;margin-top:24px;padding:28px}.student-welcome span{color:var(--brand-bright);letter-spacing:.08em;font-size:10px;font-weight:850}.student-welcome h2{margin:8px 0;font-size:28px}.student-welcome p{color:#ffffffb8;max-width:600px;margin:0;font-size:12px;line-height:1.7}.device-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px;display:grid}.device-grid article{background:#fff;border:1px solid #101a5c1c;border-radius:19px;padding:22px}.device-grid article>i{border:8px solid var(--brand-deep);width:34px;height:34px;box-shadow:inset 0 0 0 3px var(--brand-bright);border-radius:10px;display:block}.device-grid article>span{color:var(--muted);margin-top:16px;font-size:9px;display:block}.device-grid h3{color:var(--brand-deep);margin:5px 0;font-size:18px}.device-grid p{color:var(--green);margin:0 0 18px;font-size:10px}.device-grid a{color:var(--brand-deep);font-size:11px;font-weight:850;text-decoration:none}@media (width<=860px){.platform-topbar{width:min(100% - 28px,1240px)}.platform-brand strong{font-size:13px}.platform-topbar nav a{display:none}.login-layout{grid-template-columns:1fr;gap:40px;width:min(100% - 28px,700px);padding-top:45px}.login-intro{padding-left:0}.login-intro h1{font-size:48px}.test-login-form{grid-template-columns:1fr 1fr}.test-login-form>div,.test-login-form button{grid-column:1/-1}.dashboard-layout{grid-template-columns:1fr;width:min(100% - 28px,800px)}.dashboard-sidebar{position:static}.operator-action-grid{grid-template-columns:1fr}.management-form-device{grid-template-columns:1fr 1fr}.operator-toolbar{grid-template-columns:1fr 140px}.operator-toolbar small{grid-column:1/-1;padding-bottom:0}}@media (width<=580px){.platform-brand img{width:50px;height:50px}.platform-brand small{display:none}.role-panel{padding:18px}.role-panel-heading{flex-direction:column;align-items:flex-start;gap:5px}.test-login-form,.role-login-grid,.dashboard-columns,.device-grid,.metric-grid,.management-grid,.management-form-three{grid-template-columns:1fr}.student-login-ceremony{grid-template-columns:1fr;gap:16px;padding:20px}.student-bean-mark{border-radius:25px;width:76px;height:76px}.student-bean-mark span{font-size:14px}.student-login-identity h2{font-size:21px}.student-confirm-actions{flex-direction:column;align-items:stretch}.management-form-device,.operator-toolbar{grid-template-columns:1fr}.operator-toolbar small{grid-column:auto}.role-login{min-height:150px}.dashboard-main{padding:20px}.dashboard-heading{flex-direction:column;align-items:flex-start}.data-row{align-items:flex-start}.data-row>div{flex-direction:column;align-items:flex-end}}
