@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Noto+Sans+TC:wght@400;500;600;700;800;900&display=swap');
:root{--ink:#061913;--deep:#08251d;--panel:#0d2e25;--green:#12c58b;--mint:#65e7bb;--paper:#f4f7f5;--text:#15251f;--muted:#71807a;--line:#dce5e1;--danger:#e76662}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--text);font-family:Inter,'Noto Sans TC',sans-serif}a{text-decoration:none;color:inherit}button,input{font:inherit}.eyebrow{margin:0 0 12px;color:#08a976;font-size:11px;font-weight:800;letter-spacing:.2em}.button{border:0;border-radius:10px;padding:14px 20px;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;gap:22px}.button.primary{background:var(--green);color:#041a13;box-shadow:0 10px 28px rgba(18,197,139,.2)}.button:disabled{opacity:.35;cursor:not-allowed}.button.subtle{background:#edf4f1}.brand,.brand-xl{display:flex;align-items:center;gap:12px}.brand b,.brand-xl b{display:block;color:#fff;letter-spacing:.08em}.brand small,.brand-xl small{color:var(--mint);font-size:9px;letter-spacing:.18em}.brand-mark{width:37px;height:42px;position:relative;display:inline-block}.brand-mark i{position:absolute;width:4px;background:var(--green);border-radius:4px}.brand-mark i:before{content:'';position:absolute;width:9px;height:9px;border-radius:50%;background:var(--green);left:-2.5px;top:-3px}.brand-mark i:nth-child(1){left:5px;top:14px;height:22px}.brand-mark i:nth-child(2){left:17px;top:4px;height:37px}.brand-mark i:nth-child(3){left:29px;top:12px;height:24px}.topbar{height:78px;background:var(--ink);display:flex;align-items:center;padding:0 4vw;color:#d9e8e2;border-bottom:1px solid rgba(255,255,255,.08);position:sticky;top:0;z-index:20}.topbar nav{display:flex;gap:32px;margin-left:auto}.topbar nav a{font-size:14px}.identity{margin-left:36px;padding-left:24px;border-left:1px solid rgba(255,255,255,.15)}.identity span,.identity small{display:block}.identity small{font-size:10px;color:#68bba0;margin-top:3px;text-transform:uppercase}.footer{background:var(--ink);color:#7f9b91;padding:26px 4vw;display:flex;justify-content:space-between;font-size:12px}.login-shell{min-height:calc(100vh - 68px);display:grid;grid-template-columns:1.35fr .65fr;background:var(--ink)}.login-story{padding:8vh 8vw;color:#dbeae4;position:relative;overflow:hidden;background:radial-gradient(circle at 80% 20%,rgba(18,197,139,.16),transparent 34%),linear-gradient(145deg,#051812,#0b2b22)}.login-story:after{content:'';position:absolute;width:520px;height:520px;border:1px solid rgba(101,231,187,.12);border-radius:50%;right:-190px;bottom:-250px;box-shadow:0 0 0 70px rgba(101,231,187,.03),0 0 0 140px rgba(101,231,187,.02)}.brand-xl{margin-bottom:15vh}.brand-xl b{font-size:22px}.login-story h1{font-size:clamp(42px,5vw,72px);line-height:1.16;letter-spacing:-.05em;margin:0 0 28px;max-width:760px}.login-story h1 em{font-style:normal;color:var(--mint)}.login-story>p:not(.eyebrow){max-width:650px;font-size:18px;line-height:1.9;color:#a9bdb5}.signal-card{margin-top:8vh;border-left:3px solid var(--green);padding:18px 24px;background:rgba(255,255,255,.04);max-width:600px}.signal-card span,.signal-card b,.signal-card small{display:block}.signal-card span{color:var(--mint);font-size:10px;letter-spacing:.15em}.signal-card b{font-size:18px;margin:8px 0}.signal-card small{color:#94aaa1}.login-panel{background:#f5f8f6;display:grid;place-items:center;padding:5vw}.login-panel>div{width:min(390px,100%)}.login-panel h2{font-size:34px;margin:0 0 8px}.muted{color:var(--muted)}form label{display:block;font-weight:700;font-size:13px;margin:24px 0}form input:not([type=radio]){display:block;width:100%;margin-top:9px;border:1px solid #cfdcd7;border-radius:9px;padding:15px;background:#fff;outline:none}form input:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(18,197,139,.12)}.login-panel form .button{width:100%;justify-content:space-between;margin-top:12px}.security-note{display:block;text-align:center;margin-top:22px;color:#889891}.alert{background:#fff0ef;color:#9c312d;padding:12px;border-radius:8px;margin-top:18px}.page{max-width:1440px;margin:auto;padding:64px 5vw 100px}.hero-dashboard{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:38px}.hero-dashboard h1{font-size:46px;margin:0 0 12px;letter-spacing:-.04em}.hero-dashboard>div>p:last-child{color:var(--muted);max-width:720px;line-height:1.8}.trust-score{background:var(--deep);color:#fff;padding:22px 28px;min-width:220px}.trust-score span,.trust-score small{display:block;font-size:10px;letter-spacing:.12em;color:#8ab3a5}.trust-score strong{font-size:48px;color:var(--mint)}.trust-score sup,.metrics sup{font-size:.45em}.metrics{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border:1px solid var(--line);margin-bottom:58px}.metrics article{padding:24px 28px;border-right:1px solid var(--line)}.metrics article:last-child{border:0}.metrics span,.metrics small,.metrics b{display:block}.metrics span{font-size:11px;color:var(--muted)}.metrics b{font-size:30px;margin:8px 0}.metrics small{font-size:11px;color:#92a09a}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:20px}.section-head h2,.panel h2{margin:0;font-size:28px}.due{font-size:12px;color:#697a73}.course-card{display:grid;grid-template-columns:.9fr 1.1fr;background:#fff;border:1px solid var(--line);min-height:400px}.course-visual{background:radial-gradient(circle at 55% 45%,rgba(38,212,154,.2),transparent 26%),linear-gradient(145deg,#061a14,#0b3328);position:relative;display:grid;place-items:center;overflow:hidden}.mail-window{width:64%;background:#f7faf8;border-radius:8px;padding:25px;box-shadow:0 28px 80px #000;color:#67756f;transform:rotate(-3deg);z-index:2}.mail-window span,.mail-window b,.mail-window i{display:block}.mail-window span{font-size:10px}.mail-window b{color:#172721;margin:16px 0}.mail-window i{font-size:10px;border:1px solid #dce6e2;padding:10px;font-style:normal}.threat-ring{position:absolute;width:420px;height:420px;border:1px solid rgba(91,239,188,.18);border-radius:50%;box-shadow:0 0 0 45px rgba(91,239,188,.025),0 0 0 90px rgba(91,239,188,.018)}.course-copy{padding:60px}.chips{display:flex;gap:8px}.chips span,.status,.badge{font-size:10px;font-weight:800;padding:7px 10px;background:#e7f7f1;color:#087956;border-radius:99px}.course-copy h3{font-size:32px;line-height:1.35;margin:25px 0 14px}.course-copy p{color:var(--muted);line-height:1.8}.progress-line,.bar{height:5px;background:#e6ece9;margin:35px 0}.progress-line i,.bar i{height:100%;display:block;background:var(--green)}.course-meta{display:flex;align-items:center;justify-content:space-between;color:#798980;font-size:12px}.course-shell{display:grid;grid-template-columns:340px 1fr;min-height:calc(100vh - 78px)}.course-nav{background:#09231b;color:#c6d9d1;padding:42px 32px;position:sticky;top:78px;height:calc(100vh - 78px)}.course-nav .back{font-size:12px;color:#83a298}.course-nav h2{font-size:22px;line-height:1.5;color:#fff;margin:12px 0 28px}.course-progress>div{height:4px;background:#244238}.course-progress i{height:100%;display:block;background:var(--mint);width:0;transition:.3s}.course-progress span{font-size:10px;color:#7e9b90}.course-nav ol{list-style:none;padding:24px 0;margin:0}.course-nav li{display:flex;gap:15px;padding:18px 4px;border-top:1px solid rgba(255,255,255,.07);opacity:.45;cursor:pointer}.course-nav li.is-active,.course-nav li.is-complete{opacity:1}.course-nav li>span{color:var(--mint);font-size:11px}.course-nav li b,.course-nav li small{display:block}.course-nav li b{font-size:13px}.course-nav li small{font-size:10px;color:#789388;margin-top:5px}.lesson-stage{background:#edf2ef}.lesson{display:none;max-width:1050px;margin:auto;padding:72px 6vw 110px}.lesson.is-active{display:block}.lesson>header{display:flex;justify-content:space-between;align-items:start}.lesson>header span{font-size:11px;color:#778880}.lesson h1{font-size:48px;letter-spacing:-.045em;margin:14px 0 42px}.chapter-number{font-size:90px;font-weight:900;color:#d9e4df}.scene{display:grid;grid-template-columns:1.2fr .8fr;background:#fff;min-height:380px}.scene-office{background:linear-gradient(rgba(3,20,15,.22),rgba(3,20,15,.72)),radial-gradient(circle at 65% 40%,#256955,#0c2b22 55%,#051611);position:relative;display:grid;place-items:center}.clock{position:absolute;top:22px;right:22px;color:#a2c9bb;font-size:12px}.inbox{width:60%;background:#f7faf8;padding:25px;box-shadow:0 25px 70px #03100c}.inbox small,.inbox b,.inbox i{display:block}.inbox b{margin:18px 0}.inbox i{height:7px;background:#dfe7e4;margin:9px 0}.story{padding:45px;display:grid;align-items:center}.story p,.lesson-point p{font-size:18px;line-height:1.95}.dialogues{padding:55px 8%}.dialogues>div{display:flex;gap:15px;margin:22px 0;max-width:75%}.dialogues>div.right{margin-left:auto;flex-direction:row-reverse}.dialogues>div>span{width:42px;height:42px;border-radius:50%;background:var(--deep);color:var(--mint);display:grid;place-items:center;font-weight:800;flex:none}.dialogues p{background:#fff;padding:16px 20px;margin:0;line-height:1.7;border-radius:0 15px 15px 15px}.dialogues .right p{background:#dff4ec;border-radius:15px 0 15px 15px}.dialogues b{display:block;font-size:11px;color:#698078;margin-bottom:5px}.lesson-point{background:var(--deep);color:#dbeae4;padding:55px}.lesson-point>span{font-size:10px;color:var(--mint);letter-spacing:.18em}.lesson-point h2{font-size:31px;line-height:1.45;color:#fff}.humor{border-left:4px solid var(--green);padding:22px 28px;background:#fff;margin:35px 0}.humor b{font-size:10px;letter-spacing:.15em;color:#07956a}.humor p{font-size:17px;line-height:1.75;margin-bottom:0}.micro-quiz{background:#fff;padding:52px;margin-top:45px}.micro-quiz h2{font-size:27px}.micro-quiz>div{display:grid;gap:10px;margin-top:28px}.micro-quiz button{border:1px solid var(--line);background:#fff;padding:16px;text-align:left;border-radius:8px;cursor:pointer}.micro-quiz button span{display:inline-grid;place-items:center;width:30px;height:30px;background:#edf3f0;margin-right:14px}.micro-quiz button.is-correct{border-color:var(--green);background:#eafff7}.micro-quiz button.is-wrong{border-color:var(--danger);background:#fff1f0}.quiz-feedback{font-weight:700;line-height:1.6}.quiz-feedback.success{color:#087b59}.quiz-feedback.error{color:#a23c38}.lesson-actions{display:flex;justify-content:space-between;align-items:center;margin-top:35px;color:#7a8983;font-size:11px}.exam-page{max-width:980px;margin:auto;padding:70px 5vw 110px}.exam-page>header{text-align:center;margin-bottom:55px}.exam-page h1{font-size:42px;margin:8px}.exam-page>header>p:last-child{color:var(--muted)}.exam-form fieldset{border:0;background:#fff;margin:18px 0;padding:30px}.exam-form legend{font-size:19px;font-weight:800;padding-top:25px}.exam-form legend span{color:var(--green);margin-right:15px}.exam-form label{display:flex;align-items:center;border:1px solid var(--line);padding:14px;margin:10px 0;cursor:pointer}.exam-form label i{width:28px;height:28px;background:#edf3f0;display:grid;place-items:center;font-style:normal;margin-right:12px}.exam-submit{margin-top:30px;float:right}.exam-result{text-align:center;background:#fff;padding:70px}.exam-result>span{color:var(--green);letter-spacing:.2em}.exam-result strong{display:block;font-size:90px}.exam-result h2{margin-bottom:30px}.admin-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:22px}.panel{background:#fff;border:1px solid var(--line);padding:30px}.panel>header{display:flex;justify-content:space-between}.campaign{display:grid;grid-template-columns:130px 1fr;gap:30px;align-items:center;margin-top:28px}.campaign-ring{width:120px;height:120px;border-radius:50%;border:10px solid #cceee2;display:grid;place-content:center;text-align:center;box-shadow:inset 0 0 0 4px var(--green)}.campaign-ring b{font-size:28px}.campaign-ring span{font-size:9px}.risk-list{list-style:none;padding:8px 0}.risk-list li{display:grid;grid-template-columns:30px 1fr 45px;gap:12px;align-items:center;margin:22px 0}.risk-list li>span{color:#12a779;font-size:10px}.risk-list b{font-size:13px}.risk-list i{height:4px;background:#e6ece9;display:block;margin-top:8px}.risk-list em{display:block;height:100%;background:var(--green)}.table-panel{margin-top:22px}.table-panel table{width:100%;border-collapse:collapse;margin-top:25px}.table-panel th,.table-panel td{text-align:left;padding:16px;border-bottom:1px solid var(--line);font-size:13px}.table-panel th{font-size:10px;color:#7b8b84}.badge.done{background:#e4f8f0}.badge.active{background:#edf3ff;color:#375ca1}.badge.pending{background:#f1f1f1;color:#777}
@media(max-width:900px){.login-shell{grid-template-columns:1fr}.login-story{min-height:560px}.login-panel{padding:70px 8vw}.topbar nav{gap:15px}.identity{display:none}.metrics{grid-template-columns:1fr 1fr}.course-card{grid-template-columns:1fr}.course-visual{min-height:330px}.course-shell{grid-template-columns:1fr}.course-nav{position:relative;top:0;height:auto}.course-nav ol{display:none}.scene{grid-template-columns:1fr}.scene-office{min-height:320px}.admin-grid{grid-template-columns:1fr}}@media(max-width:600px){.topbar{padding:0 18px}.topbar nav a:nth-child(1){display:none}.page{padding:38px 18px 70px}.hero-dashboard{display:block}.hero-dashboard h1{font-size:34px}.trust-score{margin-top:25px}.metrics{grid-template-columns:1fr 1fr}.metrics article{padding:18px}.course-copy{padding:28px}.course-copy h3{font-size:25px}.lesson{padding:45px 18px}.lesson h1{font-size:36px}.chapter-number{font-size:50px}.story,.lesson-point,.micro-quiz{padding:28px}.dialogues{padding:35px 0}.dialogues>div{max-width:92%}.lesson-actions{align-items:flex-end;gap:15px}.footer{display:block}.footer span{display:block;margin:5px}.table-panel{overflow:auto}}
