:root{--blue:#2768ed;--deep:#2447d7;--violet:#5841df;--ink:#14203a;--muted:#748097;--line:#e8edf5;--paper:#fff;--bg:#f4f7fb;--green:#12ad83;--orange:#f28a3b;--red:#e95860;--purple:#9b44e8}*{box-sizing:border-box}html{background:#eef2f8}body{color:var(--ink);-webkit-font-smoothing:antialiased;background:#eef2f8;margin:0;font-family:PingFang SC,Microsoft YaHei,Arial,sans-serif}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}p{line-height:1.6}.row{justify-content:space-between;align-items:center;display:flex}.loading-page{background:linear-gradient(150deg,#f9fcff,#edf1ff);place-content:center;justify-items:center;min-height:100vh;display:grid}.loading-page h1{font-size:24px}.loading-dot{background:linear-gradient(90deg,var(--blue),var(--violet));border-radius:5px;width:34px;height:5px;animation:1s ease-in-out infinite pulse}.brand-mark,.mini-logo{color:#fff;background:linear-gradient(145deg,var(--blue),var(--violet));place-items:center;display:grid;box-shadow:0 12px 28px #315cdb36}.brand-mark{border-radius:23px;width:72px;height:72px;font-size:30px;font-weight:900}.mini-logo{border-radius:11px;width:34px;height:34px;font-size:15px;font-weight:900}@keyframes pulse{50%{opacity:.55;transform:scaleX(.55)}}.login-page{background:radial-gradient(circle at 12% 15%,#cfe4ff 0,#0000 28%),radial-gradient(circle at 90% 80%,#dbd6ff 0,#0000 30%),linear-gradient(145deg,#fafdff,#edf2ff 55%,#f9f8ff);grid-template-columns:minmax(300px,460px) minmax(330px,430px);justify-content:center;align-items:center;gap:90px;min-height:100vh;padding:48px;display:grid;position:relative;overflow:hidden}.login-ornament{border:1px solid #5275ef1d;border-radius:50%;position:absolute}.login-ornament.one{width:520px;height:520px;bottom:-250px;left:-230px}.login-ornament.two{width:260px;height:260px;top:-90px;right:-70px}.login-intro{z-index:1;position:relative}.login-intro .brand-mark{margin-bottom:28px}.login-intro .eyebrow{color:var(--blue);letter-spacing:.22em;margin:0 0 10px;font-size:11px;font-weight:900}.login-intro h1{letter-spacing:.04em;margin:0;font-size:48px}.login-intro>p:not(.eyebrow){color:var(--muted);margin:13px 0 34px;font-size:17px}.intro-pills{gap:10px;display:flex}.intro-pills span{color:#53627a;background:#ffffffa8;border:1px solid #dbe3f5;border-radius:999px;padding:9px 14px;font-size:12px}.login-card{z-index:1;background:#fffffff2;border:1px solid #fffc;border-radius:28px;padding:34px;position:relative;box-shadow:0 28px 80px #334f881c}.login-card-title{flex-direction:column;margin-bottom:27px;display:flex}.login-card-title span{font-size:24px;font-weight:900}.login-card-title small{color:var(--muted);margin-top:5px}.login-card label{color:#4d5970;margin:0 0 17px;font-size:13px;font-weight:800;display:block}.login-card input{background:#f8faff;border:1px solid #dfe5ef;border-radius:14px;outline:none;width:100%;margin-top:8px;padding:15px 16px}.login-card input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #2867ed17}.input-wrap{background:#f8faff;border:1px solid #dfe5ef;border-radius:14px;align-items:center;margin-top:8px;display:flex}.input-wrap:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px #2867ed17}.input-wrap span{color:#5a6880;border-right:1px solid #e4e8f0;padding:0 12px 0 16px}.input-wrap input{border:0;margin:0;box-shadow:none!important}.primary-btn{color:#fff;background:linear-gradient(110deg,var(--blue),var(--violet));border:0;border-radius:14px;width:100%;padding:15px 18px;font-weight:900;box-shadow:0 10px 24px #345bd329}.primary-btn span{float:right}.primary-btn:disabled{opacity:.65}.login-note{text-align:center;color:#98a2b3;margin:15px 0 0;font-size:12px}.admin-link{color:#61718d;text-underline-offset:3px;background:0 0;border:0;margin:18px auto 0;font-size:12px;text-decoration:underline;display:block}.form-error{color:#c94b54;background:#fff0f1;border-radius:9px;margin:0 0 12px;padding:9px 12px;font-size:12px}.nurse-shell{min-height:100vh}.mobile-page{background:var(--bg);width:min(100%,480px);min-height:100vh;margin:auto;padding-bottom:88px;box-shadow:0 0 50px #23406b13}.app-header{z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff0;border-bottom:1px solid #edf0f5;align-items:center;gap:12px;height:66px;padding:0 18px;display:flex;position:sticky;top:0}.app-header>button{color:#344159;background:#f1f4f9;border:0;border-radius:50%;width:34px;height:34px;font-size:28px;line-height:28px}.app-header strong{flex:1;font-size:17px}.header-badge{color:var(--deep);background:#eaf0ff;border-radius:20px;padding:6px 10px;font-size:11px;font-weight:800}.mobile-content{padding:22px 18px}.section-title{justify-content:space-between;align-items:flex-end;margin:25px 0 15px;display:flex}.section-title small{color:var(--blue);letter-spacing:.14em;font-size:10px;font-weight:900}.section-title h2{margin:4px 0 0;font-size:21px}.section-title>span{color:var(--muted);font-size:12px}.card-progress,.hero-line{background:#e9edf3;border-radius:7px;height:7px;overflow:hidden}.card-progress i,.hero-line i,.table-progress i{border-radius:inherit;background:linear-gradient(90deg,#20c39d,#2482e9);height:100%;display:block}.home-hero{color:#fff;background:radial-gradient(circle at 90% 15%,#8875ff58 0,#0000 34%),linear-gradient(120deg,#1675ef,#5034da);min-height:250px;padding:28px 24px}.hero-top{justify-content:space-between;align-items:center;display:flex}.hero-top span,.hero-top em{background:#ffffff13;border:1px solid #ffffff1d;border-radius:20px;padding:7px 11px;font-size:11px;font-style:normal}.home-hero>p{color:#dce8ff;margin:30px 0 5px;font-size:14px}.home-hero h1{margin:0;font-size:27px}.hero-progress{justify-content:space-between;align-items:flex-end;margin-top:27px;display:flex}.hero-progress span{color:#e9efff;font-size:13px}.hero-progress b{font-size:22px}.hero-progress em{font-size:25px;font-style:normal;font-weight:900}.hero-line{background:#ffffff21;margin-top:11px}.hero-line i{background:#fff}.home-content{background:var(--bg);border-radius:22px 22px 0 0;margin-top:-17px}.quick-actions{grid-template-columns:1fr 1fr;gap:11px;display:grid}.quick-actions button{text-align:left;background:#fff;border:1px solid #eef1f6;border-radius:17px;align-items:center;gap:11px;padding:14px;display:flex;box-shadow:0 8px 18px #2e4d7c09}.quick-actions button>span{width:42px;height:42px;color:var(--blue);background:#eaf1ff;border-radius:13px;place-items:center;font-size:20px;display:grid}.quick-actions button:nth-child(2)>span{color:#8b43df;background:#f2eaff}.quick-actions b,.quick-actions small{display:block}.quick-actions b{font-size:14px}.quick-actions small{color:#8d97a8;margin-top:3px;font-size:10px}.training-card{background:#fff;border-radius:23px;overflow:hidden;box-shadow:0 14px 35px #31558610}.training-cover{color:#fff;background:linear-gradient(120deg,#16ad92,#077b86);flex-direction:column;justify-content:flex-end;height:132px;padding:19px;display:flex;position:relative;overflow:hidden}.training-cover .cover-orb{border:38px solid #ffffff0d;border-radius:50%;width:190px;height:190px;position:absolute;top:-90px;right:-50px}.training-cover span{font-size:26px;font-weight:900}.training-cover b{letter-spacing:.16em;font-size:13px}.training-cover small{color:#c9fff1;position:absolute;bottom:20px;right:18px}.training-body{padding:19px}.training-body .row small{color:#939cab;font-size:11px}.training-body .status{color:var(--orange);font-size:11px;font-weight:900}.training-body .status.done{color:var(--green)}.training-body h3{margin:10px 0 4px;font-size:20px}.training-body p{color:var(--muted);margin:0 0 17px;font-size:12px}.training-body .row b{color:var(--blue);font-size:12px}.training-body .card-progress{margin:0 0 8px}.training-body .primary-btn{margin-top:16px}.tip-card{background:#fff9ef;border:1px solid #ffe4c6;border-radius:17px;align-items:center;gap:13px;margin-top:16px;padding:16px;display:flex}.tip-card>span{color:#fff;background:var(--orange);border-radius:50%;place-items:center;width:35px;height:35px;font-weight:900;display:grid}.tip-card b{font-size:13px}.tip-card p{color:#8e7d6c;margin:2px 0 0;font-size:11px}.project-hero{color:#fff;background:linear-gradient(120deg,#2472ed,#5339d9);justify-content:space-between;align-items:center;padding:28px 23px;display:flex}.project-hero span{color:#dce6ff;font-size:12px}.project-hero h1{margin:5px 0;font-size:25px}.project-hero p{color:#dce4ff;margin:0;font-size:11px}.circle-progress,.donut{--progress:0deg;background:conic-gradient(#fff var(--progress),#ffffff26 0);border-radius:50%;place-items:center;display:grid}.circle-progress{width:76px;height:76px}.circle-progress:before,.donut:before{content:"";border-radius:50%;grid-area:1/1}.circle-progress:before{background:#3d54da;width:61px;height:61px}.circle-progress b,.circle-progress small{z-index:1;grid-area:1/1}.circle-progress b{margin-top:-10px;font-size:17px}.circle-progress small{color:#cfd8ff;margin-top:25px;font-size:9px}.course-tabs,.detail-tabs{background:#fff;display:flex}.course-tabs button,.detail-tabs button{color:#798397;background:0 0;border:0;flex:1;padding:17px;font-weight:800;position:relative}.course-tabs button.active,.detail-tabs button.active{color:var(--blue)}.course-tabs button.active:after,.detail-tabs button.active:after{content:"";background:var(--blue);border-radius:4px;height:3px;position:absolute;bottom:0;left:34%;right:34%}.course-content{padding-top:19px}.chapter-head{background:linear-gradient(120deg,#eef4ff,#f4f1ff);border-radius:18px;align-items:center;gap:14px;margin-bottom:16px;padding:16px;display:flex}.chapter-head>span{color:#fff;background:linear-gradient(140deg,var(--blue),var(--violet));border-radius:14px;place-items:center;width:48px;height:48px;font-weight:900;display:grid}.chapter-head b,.chapter-head small{display:block}.chapter-head small{color:var(--muted);margin-top:4px;font-size:11px}.course-stack{gap:10px;display:grid}.course-card{background:#fff;border:1px solid #edf0f5;border-radius:18px;grid-template-columns:51px 1fr auto;align-items:center;gap:12px;padding:14px;display:grid}.kind-icon{border-radius:15px;place-items:center;width:51px;height:51px;font-size:22px;font-weight:900;display:grid}.kind-icon.blue,.table-kind.blue{color:#2c6ce5;background:#eaf1ff}.kind-icon.green,.table-kind.green{color:#11a57c;background:#e6faf4}.kind-icon.red,.table-kind.red{color:#e55761;background:#ffedef}.kind-icon.purple,.table-kind.purple{color:#9b3fe0;background:#f5e9ff}.course-info{min-width:0}.course-info>small{color:#a2abba;letter-spacing:.08em;font-size:9px}.course-info h3{margin:3px 0 8px;font-size:16px}.course-info>div{align-items:center;gap:5px;display:flex}.kind-label,.required,.completed,.not-started{border-radius:5px;padding:3px 5px;font-size:9px}.kind-label.blue{color:#2765dc;background:#eaf1ff}.kind-label.green{color:#0b9c76;background:#e6faf4}.kind-label.red{color:#df4f59;background:#ffedef}.kind-label.purple{color:#9539d8;background:#f5e9ff}.required{color:#d94e5b;background:#fff0f1}.completed{color:#0ba478}.not-started{color:#98a0ad}.course-card>button{color:#fff;background:linear-gradient(110deg,#1db689,#0c9b74);border:0;border-radius:10px;padding:10px 13px;font-size:12px;font-weight:900}.exam-entry{color:#98a2b1;text-align:left;background:#e9edf2;border:0;border-radius:18px;align-items:center;gap:14px;width:100%;margin-top:16px;padding:16px;display:flex}.exam-entry.ready{color:#fff;background:linear-gradient(100deg,#fa8f1d,#f25b0b);box-shadow:0 12px 25px #f1722530}.exam-entry>span{font-size:24px}.exam-entry div{flex:1}.exam-entry b,.exam-entry small{display:block}.exam-entry small{opacity:.84;margin-top:2px;font-size:10px}.exam-entry em{font-size:22px;font-style:normal}.detail-heading{background:#fff;gap:14px;padding:25px 20px 21px;display:flex}.kind-icon.large{flex:none;width:58px;height:58px}.detail-heading>div:last-child{min-width:0}.detail-heading span{color:var(--green);font-size:10px;font-weight:800}.detail-heading h1{margin:4px 0;font-size:22px}.detail-heading p{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:11px;overflow:hidden}.video-player{color:#fff;background:radial-gradient(circle at 20% 10%,#525fb7 0,#0000 40%),linear-gradient(145deg,#18233f,#0b1020);border-radius:22px;place-items:center;height:244px;display:grid;position:relative;overflow:hidden;box-shadow:0 14px 30px #1e2b4c2b}.video-player>span{color:#dce3f8;font-size:12px;position:absolute;top:17px;left:18px}.play-button{color:#3755cc;background:#fffe;border:7px solid #ffffff26;border-radius:50%;place-items:center;width:68px;height:68px;padding-left:5px;font-size:22px;display:grid}.video-controls{align-items:center;gap:9px;display:flex;position:absolute;bottom:15px;left:15px;right:15px}.video-controls i{background:linear-gradient(90deg,#5d7cff 35%,#ffffff43 35%);border-radius:4px;flex:1;height:4px}.video-controls b,.video-controls em{font-size:9px;font-style:normal}.material-preview{background:#fff;border-radius:22px;flex-direction:column;justify-content:center;align-items:center;height:245px;display:flex;box-shadow:0 14px 30px #2d527512}.material-preview>span{font-size:40px}.material-preview small{color:#8b95a7;letter-spacing:.08em;margin-top:12px}.material-preview h2{margin:7px 0 3px;font-size:26px}.material-preview p{color:#99a2b1;margin:0;font-size:11px}.material-preview.green{background:linear-gradient(145deg,#effffb,#fff)}.material-preview.red{background:linear-gradient(145deg,#fff4f5,#fff)}.material-preview.blue{background:linear-gradient(145deg,#eff5ff,#fff)}.lesson-card,.progress-card{background:#fff;border:1px solid #edf0f5;border-radius:20px;margin-top:16px;padding:19px}.lesson-kicker{align-items:center;gap:10px;display:flex}.lesson-kicker span{color:#fff;background:var(--blue);letter-spacing:.1em;border-radius:6px;padding:5px 8px;font-size:8px}.lesson-kicker b{font-size:17px}.lesson-card>p{color:var(--muted);margin:14px 0;font-size:12px}.lesson-card ol{margin:0;padding:0;list-style:none}.lesson-card li{border-top:1px solid #f0f2f6;align-items:center;gap:10px;padding:10px 0;display:flex}.lesson-card li span{width:24px;height:24px;color:var(--blue);background:#eaf1ff;border-radius:8px;place-items:center;font-size:10px;font-weight:900;display:grid}.lesson-card li p{margin:0;font-size:12px}.notice{background:#fff8eb;border-radius:12px;padding:12px}.notice b{color:#c87926;font-size:11px}.notice p{color:#8a7868;margin:3px 0 0;font-size:10px}.progress-card .row b{font-size:14px}.progress-card .row strong{color:var(--green);font-size:24px}.progress-card .card-progress{margin:12px 0}.progress-meta{color:#8a94a5;justify-content:space-between;font-size:10px;display:flex}.complete-btn{color:#fff;background:linear-gradient(110deg,var(--green),#087f86);border:0;border-radius:15px;width:100%;margin-top:16px;padding:16px;font-weight:900}.complete-btn.is-done{color:#0a9b74;box-shadow:none;background:#e5faf4}.exam-page{padding-bottom:90px}.exam-hero{color:#fff;background:linear-gradient(115deg,#5c42df,#2871ed);justify-content:space-between;align-items:flex-end;padding:25px 22px;display:flex}.exam-hero span{color:#dce4ff;font-size:11px}.exam-hero h1{margin:5px 0;font-size:24px}.exam-hero p{color:#dce4ff;margin:0;font-size:10px}.exam-hero>b{font-size:25px}.question-list{gap:14px;display:grid}.question-card{background:#fff;border:1px solid #e9edf4;border-radius:20px;padding:20px}.question-number{justify-content:space-between;align-items:center;display:flex}.question-number span{color:var(--blue);font-size:20px;font-weight:900}.question-number small{color:#7051dc;background:#f0ebff;border-radius:6px;padding:4px 7px}.question-card h3{margin:15px 0;font-size:16px;line-height:1.6}.options{gap:9px;display:grid}.options button{color:#566278;text-align:left;background:#fafbfe;border:1px solid #e7ebf2;border-radius:12px;align-items:center;gap:11px;padding:12px;display:flex}.options button i{background:#fff;border:1px solid #dce2ec;border-radius:8px;place-items:center;width:27px;height:27px;font-size:10px;font-style:normal;display:grid}.options button.selected{color:#2449bf;background:#eff4ff;border-color:#809ef2}.options button.selected i{border-color:var(--blue);color:#fff;background:var(--blue)}.exam-submit{z-index:25;background:#fff;border-top:1px solid #e5eaf2;align-items:center;gap:15px;width:min(100%,480px);padding:12px 18px;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.exam-submit span{color:#7f8999;flex:1;font-size:11px}.exam-submit button{color:#fff;background:linear-gradient(110deg,var(--blue),var(--violet));border:0;border-radius:13px;padding:13px 22px;font-weight:900}.result-page{background:#f5f7fb}.result-hero{color:#fff;text-align:center;background:linear-gradient(145deg,#f46a40,#ed3b57);flex-direction:column;justify-content:center;align-items:center;height:350px;display:flex}.result-hero.pass{background:radial-gradient(circle at 50% 15%,#53d7b5,#0000 28%),linear-gradient(145deg,#0baa83,#087d8b)}.result-hero>span{border:2px solid #ffffff7a;border-radius:50%;place-items:center;width:56px;height:56px;font-size:26px;display:grid}.result-hero p{margin:16px 0 3px}.result-hero h1{margin:0;font-size:70px}.result-hero h1 small{font-size:20px}.result-hero em{color:#ffffffd3;font-size:12px;font-style:normal}.result-page .mobile-content{margin-top:-38px}.result-stats{background:#fff;border-radius:20px;grid-template-columns:repeat(3,1fr);padding:17px;display:grid;box-shadow:0 12px 30px #22416c1c}.result-stats div{border-right:1px solid #edf0f4;flex-direction:column;align-items:center;display:flex}.result-stats div:last-child{border:0}.result-stats b{font-size:24px}.result-stats small{color:#8a94a5;margin-top:3px}.result-message{text-align:center;background:#fff;border-radius:20px;margin:17px 0;padding:24px}.result-message span{color:#177f72;background:#e8faf5;border-radius:7px;padding:5px 9px;font-size:10px}.result-message h2{margin:12px 0 5px;font-size:20px}.result-message p{color:var(--muted);margin:0;font-size:12px}.cert-heading{color:#fff;background:linear-gradient(120deg,#2573ed,#553bd9);padding:30px 22px}.cert-heading p{color:#c9d8ff;letter-spacing:.16em;margin:0;font-size:9px}.cert-heading h1{margin:6px 0;font-size:25px}.cert-heading span{color:#dce6ff;font-size:11px}.certificate{background:#fff;border-radius:23px;overflow:hidden;box-shadow:0 16px 35px #263f6f17}.cert-top{border-bottom:1px solid #eef0f4;align-items:center;padding:16px 18px;display:flex}.cert-logo{color:#fff;background:linear-gradient(145deg,var(--blue),var(--violet));border-radius:10px;place-items:center;width:32px;height:32px;font-weight:900;display:grid}.cert-top>span{flex:1;margin-left:9px;font-weight:900}.cert-top em{color:#a87b28;background:#fff5dc;border-radius:8px;padding:5px 8px;font-size:9px;font-style:normal}.cert-main{text-align:center;background:radial-gradient(circle,#f5f8ff,#fff 65%);padding:34px 29px 38px;position:relative}.cert-main>small{color:#a18852;letter-spacing:.2em;font-size:8px}.cert-main h2{margin:8px 0 28px;font-family:serif;font-size:29px}.cert-main p{color:#677286;margin:8px 0;font-size:11px}.cert-main h3{border-bottom:1px solid #b89a59;margin:3px 0 7px;padding:0 20px 6px;font-size:24px;display:inline-block}.cert-seal{color:#d34e50;border:3px double #d34e50;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:70px;height:70px;margin:24px auto 0;font-size:22px;font-weight:900;display:flex;transform:rotate(-7deg)}.cert-seal small{font-size:8px}.cert-bottom{color:#8a94a5;background:#fafbfe;justify-content:space-between;padding:14px 18px;font-size:9px;display:flex}.empty-cert{text-align:center;background:#fff;border-radius:23px;padding:44px 25px}.empty-cert>div{color:#8a57df;background:#f2ebff;border-radius:50%;place-items:center;width:75px;height:75px;margin:auto;font-size:31px;display:grid}.empty-cert h2{margin:20px 0 7px}.empty-cert p{color:var(--muted);margin:0 0 25px;font-size:12px}.profile-head{color:#fff;background:linear-gradient(120deg,#2472ed,#543ad9);align-items:center;gap:13px;padding:26px 22px;display:flex}.avatar{background:#ffffff28;border:2px solid #ffffffa3;border-radius:19px;place-items:center;width:58px;height:58px;font-size:24px;font-weight:900;display:grid}.profile-head>div:nth-child(2){flex:1}.profile-head h1{margin:0;font-size:22px}.profile-head p{color:#dce6ff;margin:3px 0;font-size:11px}.profile-head>span{background:#ffffff1e;border-radius:20px;padding:6px 9px;font-size:10px}.profile-stats{background:#fff;border-radius:20px;grid-template-columns:repeat(3,1fr);padding:20px;display:grid}.profile-stats div{border-right:1px solid #edf0f5;flex-direction:column;align-items:center;display:flex}.profile-stats div:last-child{border:0}.profile-stats b{font-size:24px}.profile-stats span{color:#8c96a7;margin-top:4px;font-size:9px}.profile-list{background:#fff;border-radius:20px;margin-top:16px}.profile-list div{border-bottom:1px solid #eef1f5;grid-template-columns:32px 1fr auto;align-items:center;padding:17px;display:grid}.profile-list div:last-child{border:0}.profile-list>div>span{color:var(--blue);font-size:18px}.profile-list b{font-size:13px}.profile-list em{color:#8b95a5;font-size:10px;font-style:normal}.logout-btn{color:#d5535e;background:#fff;border:1px solid #f0d9dc;border-radius:15px;width:100%;margin-top:16px;padding:15px;font-weight:800}.bottom-nav{z-index:30;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffed;border-top:1px solid #e6ebf3;width:min(100%,480px);height:72px;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.bottom-nav button{color:#9ca5b5;background:0 0;border:0;flex:1;font-size:20px}.bottom-nav span{margin-top:4px;font-size:9px;display:block}.bottom-nav button.active{color:var(--blue)}.admin-login{background:radial-gradient(circle at 15% 10%,#cfe5ff,#0000 30%),radial-gradient(circle at 90% 80%,#e4dcff,#0000 32%),#f4f7fc;place-items:center;min-height:100vh;padding:30px;display:grid}.back-login{color:#64728a;background:0 0;border:0;position:absolute;top:25px;left:28px}.admin-login>section{background:#fff;border-radius:28px;width:min(100%,430px);padding:38px;box-shadow:0 30px 80px #2f4b811c}.admin-login .brand-mark{border-radius:18px;width:58px;height:58px;font-size:23px}.admin-login section>p{color:var(--blue);letter-spacing:.16em;margin:20px 0 6px;font-size:9px;font-weight:900}.admin-login h1{margin:0 0 25px;font-size:24px}.admin-login label{color:#526079;margin-bottom:15px;font-size:12px;font-weight:800;display:block}.admin-login input{border:1px solid #dde3ee;border-radius:12px;outline:none;width:100%;margin-top:7px;padding:14px}.admin-login form>span{color:#d24f59;margin-bottom:10px;font-size:11px;display:block}.admin-login>section>small{color:#98a2b1;text-align:center;margin-top:14px;display:block}.admin-shell{background:#f4f7fb;grid-template-columns:250px 1fr;min-height:100vh;display:grid}.admin-sidebar{color:#fff;background:#111d38;flex-direction:column;height:100vh;padding:22px 15px;display:flex;position:sticky;top:0}.admin-brand{border-bottom:1px solid #ffffff13;align-items:center;gap:11px;padding:0 7px 23px;display:flex}.admin-brand>span{background:linear-gradient(145deg,#3182ef,#6a47e3);border-radius:12px;place-items:center;width:40px;height:40px;font-weight:900;display:grid}.admin-brand b,.admin-brand small{display:block}.admin-brand b{font-size:15px}.admin-brand small{color:#71809f;letter-spacing:.1em;margin-top:3px;font-size:7px}.admin-sidebar nav{gap:5px;margin-top:24px;display:grid}.admin-sidebar nav button{color:#8e9ab5;text-align:left;background:0 0;border:0;border-radius:11px;align-items:center;gap:12px;padding:13px 14px;font-size:13px;font-weight:700;display:flex}.admin-sidebar nav button>span{font-size:17px}.admin-sidebar nav button.active{color:#fff;background:linear-gradient(100deg,#2c6ce6,#5642dc);box-shadow:0 10px 22px #14295b}.admin-user{border-top:1px solid #ffffff12;align-items:center;gap:10px;margin-top:auto;padding:13px 9px;display:flex}.admin-user>div{color:#2f61cd;background:#e5edff;border-radius:10px;place-items:center;width:34px;height:34px;font-weight:900;display:grid}.admin-user b,.admin-user small{display:block}.admin-user b{font-size:11px}.admin-user small{color:#6f7d99;margin-top:2px;font-size:8px}.admin-main{min-width:0;padding:0 32px 40px}.admin-main>header{justify-content:space-between;align-items:center;height:93px;display:flex}.admin-main header small{color:var(--blue);font-size:10px;font-weight:800}.admin-main header h1{margin:4px 0 0;font-size:25px}.admin-header-actions{align-items:center;gap:12px;display:flex}.admin-header-actions button{color:#526078;background:#fff;border:1px solid #dfe5ee;border-radius:10px;padding:10px 14px;font-size:11px}.admin-header-actions span{color:#8490a3;font-size:11px}.metric-grid{grid-template-columns:repeat(4,minmax(160px,1fr));gap:15px;display:grid}.metric-card{background:#fff;border:1px solid #e7ebf3;border-radius:18px;padding:19px;box-shadow:0 8px 22px #2a466d09}.metric-top{justify-content:space-between;display:flex}.metric-top>span{border-radius:12px;place-items:center;width:38px;height:38px;font-size:18px;display:grid}.metric-card.blue .metric-top>span{color:#2869e9;background:#eaf1ff}.metric-card.green .metric-top>span{color:#0ca77c;background:#e4f9f3}.metric-card.orange .metric-top>span{color:#e98030;background:#fff2e5}.metric-card.purple .metric-top>span{color:#9141d9;background:#f3e9ff}.metric-top em{color:#8b95a5;background:#f4f6f9;border-radius:7px;padding:4px 7px;font-size:8px;font-style:normal}.metric-card>small{color:#788397;margin-top:15px;font-size:10px;display:block}.metric-card>b{margin-top:3px;font-size:30px;display:block}.metric-card>p{color:#9aa3b2;margin:4px 0 0;font-size:9px}.admin-grid{grid-template-columns:minmax(420px,1.7fr) minmax(260px,1fr);gap:15px;margin-top:15px;display:grid}.panel{background:#fff;border:1px solid #e7ebf3;border-radius:18px;box-shadow:0 8px 24px #2a466d09}.panel-title{border-bottom:1px solid #eef1f5;justify-content:space-between;align-items:center;padding:19px 21px;display:flex}.panel-title h2{margin:0;font-size:15px}.panel-title span{color:#7d889a;font-size:10px}.fake-chart{height:245px;padding:21px;display:flex}.y-axis{color:#9ba4b2;flex-direction:column;justify-content:space-between;padding-bottom:22px;font-size:8px;display:flex}.chart-area{background:repeating-linear-gradient(#fff 0 48px,#edf0f4 49px);border-bottom:1px solid #edf0f4;border-left:1px solid #edf0f4;flex:1;margin-left:12px;position:relative}.line-segment{z-index:2;transform-origin:0;background:linear-gradient(90deg,#3572ed,#7650e4);border-radius:3px;height:3px;position:absolute}.line-segment:after{content:"";background:#4a6ee7;border:2px solid #fff;border-radius:50%;width:8px;height:8px;position:absolute;top:-3px;right:-3px}.line-segment.a{width:17%;top:73%;left:0;transform:rotate(-11deg)}.line-segment.b{width:17%;top:70%;left:16%;transform:rotate(-22deg)}.line-segment.c{width:17%;top:63%;left:32%;transform:rotate(-10deg)}.line-segment.d{width:17%;top:60%;left:48%;transform:rotate(-31deg)}.line-segment.e{width:18%;top:49%;left:63%;transform:rotate(-12deg)}.line-segment.f{width:20%;top:45%;left:80%;transform:rotate(-23deg)}.x-axis{color:#9ba4b2;justify-content:space-between;font-size:7px;display:flex;position:absolute;bottom:-20px;left:0;right:0}.progress-panel{flex-direction:column;display:flex}.donut{background:conic-gradient(var(--green) var(--progress),#edf0f5 0);width:145px;height:145px;margin:22px auto}.donut:before{background:#fff;width:112px;height:112px}.donut>div{z-index:1;flex-direction:column;grid-area:1/1;align-items:center;display:flex}.donut b{font-size:25px}.donut span{color:#929bab;font-size:8px}.legend{color:#6f7a8e;justify-content:center;gap:20px;margin-top:auto;padding:0 0 22px;font-size:9px;display:flex}.legend i{border-radius:50%;width:7px;height:7px;margin-right:5px;display:inline-block}.legend i.green{background:var(--green)}.legend i.gray{background:#dce1e9}.recent-panel{margin-top:15px}.management-panel{overflow:hidden}.toolbar{justify-content:space-between;align-items:center;padding:22px;display:flex}.toolbar h2{margin:0;font-size:17px}.toolbar p{color:#8a94a5;margin:4px 0 0;font-size:10px}.toolbar>button{color:#fff;background:linear-gradient(110deg,var(--blue),var(--violet));border:0;border-radius:10px;padding:11px 15px;font-size:11px;font-weight:800}.management-panel table,.nurse-table{border-collapse:collapse;width:100%}.management-panel th,.management-panel td,.nurse-table th,.nurse-table td{text-align:left;border-top:1px solid #edf0f5;padding:14px 18px;font-size:11px}.management-panel th,.nurse-table th{color:#8b95a6;background:#fafbfc;font-size:9px;font-weight:800}.management-panel td>b,.management-panel td>small{display:block}.management-panel td>small{color:#949dac;white-space:nowrap;text-overflow:ellipsis;max-width:290px;margin-top:3px;font-size:8px;overflow:hidden}.sort-number{width:30px;height:30px;color:var(--blue);background:#eaf1ff;border-radius:9px;place-items:center;font-weight:900;display:grid}.table-kind{border-radius:7px;padding:5px 8px;font-size:9px;display:inline-block}.switch{vertical-align:middle;background:#cfd5de;border:0;border-radius:20px;width:31px;height:18px;padding:2px}.switch i{background:#fff;border-radius:50%;width:14px;height:14px;transition:all .2s;display:block}.switch.on{background:var(--green)}.switch.on i{transform:translate(13px)}.management-panel td>.switch+span{color:#778295;margin-left:6px;font-size:9px}.text-action{color:var(--blue);background:0 0;border:0;margin-right:9px;font-size:10px}.task-admin-card{background:#fafcff;border:1px solid #e7ebf3;border-radius:16px;grid-template-columns:58px 1fr 80px auto;align-items:center;gap:18px;margin:0 22px 22px;padding:20px;display:grid}.task-admin-icon{color:#fff;background:linear-gradient(145deg,#19aa8a,#087d86);border-radius:16px;place-items:center;width:58px;height:58px;font-size:20px;font-weight:900;display:grid}.task-admin-card h2{margin:6px 0 2px;font-size:16px}.task-admin-card p{color:#8792a3;margin:0;font-size:9px}.live-dot{color:#10a57c;font-size:9px}.task-ring{flex-direction:column;align-items:center;display:flex}.task-ring b{color:var(--green);font-size:23px}.task-ring small{color:#8c96a7}.search-input{border:1px solid #dfe5ee;border-radius:10px;outline:none;width:220px;padding:10px 13px;font-size:10px}.nurse-name{align-items:center;gap:9px;display:flex}.nurse-name>span{color:#2d63d4;background:#e9f0ff;border-radius:9px;place-items:center;width:31px;height:31px;font-weight:900;display:grid}.nurse-name b,.nurse-name small{display:block}.nurse-name small{color:#9099a7;margin-top:2px;font-size:8px}.table-progress{vertical-align:middle;background:#e8ecf2;border-radius:5px;width:70px;height:5px;display:inline-block;overflow:hidden}.table-progress+small{color:#7d8798;margin-left:6px}.certified-chip,.waiting-chip{border-radius:7px;padding:5px 8px;font-size:8px;display:inline-block}.certified-chip{color:#0a9b74;background:#e5f9f2}.waiting-chip{color:#d17d2c;background:#fff2e5}.empty-table{color:#97a1b0;text-align:center!important;padding:40px!important}@media (min-width:760px){.mobile-page{border-radius:27px 27px 0 0;min-height:calc(100vh - 36px);margin-top:18px;overflow:hidden}.bottom-nav,.exam-submit{border-radius:0 0 27px 27px;bottom:18px}.login-page{min-height:100vh}}@media (max-width:980px){.login-page{grid-template-columns:1fr;gap:28px;padding:34px 20px}.login-intro{text-align:center}.login-intro .brand-mark{margin:0 auto 18px}.login-intro h1{font-size:34px}.intro-pills{justify-content:center}.login-card{justify-self:center;width:min(100%,430px)}.admin-shell{grid-template-columns:76px 1fr}.admin-brand div,.admin-sidebar nav button:not(.active){font-size:0}.admin-brand{justify-content:center}.admin-brand>span{flex:none}.admin-sidebar nav button{justify-content:center}.admin-sidebar nav button>span{font-size:19px}.admin-user span{display:none}.admin-user{justify-content:center}.metric-grid{grid-template-columns:repeat(2,1fr)}.admin-grid{grid-template-columns:1fr}.admin-main{padding:0 18px 30px}}@media (max-width:640px){.login-page{flex-direction:column;justify-content:center;display:flex}.login-intro>p:not(.eyebrow),.intro-pills{display:none}.login-intro h1{font-size:29px}.login-card{padding:26px}.admin-shell{display:block}.admin-sidebar{height:auto;padding:12px;display:block;position:static}.admin-brand{justify-content:flex-start;padding-bottom:11px}.admin-brand div{display:block}.admin-sidebar nav{grid-template-columns:repeat(5,1fr);margin-top:10px}.admin-sidebar nav button,.admin-sidebar nav button:not(.active){text-align:center;padding:9px 3px;font-size:8px;display:block}.admin-sidebar nav button>span{margin-bottom:3px;display:block}.admin-user{display:none}.admin-main{padding:0 10px 25px}.admin-main>header{height:75px}.admin-header-actions span{display:none}.metric-grid{grid-template-columns:1fr 1fr;gap:8px}.metric-card{padding:13px}.metric-card>b{font-size:24px}.management-panel{overflow-x:auto}.management-panel table,.nurse-table{min-width:720px}.admin-grid{min-width:0}.trend-panel{overflow:hidden}.task-admin-card,.toolbar{min-width:650px}}
