:root{--turq:#0cbab7;--blue:#2667dd;--violet:#8055d9;--yellow:#f9c746;--ink:#14263c;--muted:#586b80}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:#fff;margin:0;font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}.nav{background:#fff;border-bottom:1px solid #e9eef3;justify-content:space-between;align-items:center;height:84px;padding:0 max(5vw,24px);display:flex}.brand{letter-spacing:-1px;align-items:center;gap:12px;font-size:23px;font-weight:800;display:flex}.brand small{letter-spacing:3px;color:var(--violet);margin-top:2px;font-size:10px;display:block}.mark{background:linear-gradient(135deg,var(--turq),var(--blue),var(--violet));color:#fff;border-radius:12px;place-items:center;width:43px;height:43px;display:grid}.nav nav{gap:26px;font-size:14px;font-weight:600;display:flex}.nav nav a:hover{color:var(--blue)}.hero{background:radial-gradient(circle at 93% 20%,#d8f7f4,#0000 32%),radial-gradient(circle at 85% 88%,#ece2ff,#0000 34%),#f8fbff;padding:100px max(8vw,24px) 95px}.eyebrow,.section-label{letter-spacing:2px;color:var(--violet);font-size:12px;font-weight:800}h1{letter-spacing:-2.5px;max-width:950px;margin:22px 0;font-size:clamp(38px,5vw,70px);line-height:1.1}h1:first-line{color:#116a9a}.hero p{max-width:700px;color:var(--muted);font-size:20px;line-height:1.65}.actions{flex-wrap:wrap;gap:14px;margin-top:30px;display:flex}.btn{background:var(--blue);color:#fff;border-radius:12px;padding:16px 24px;font-weight:700}.btn.ghost{color:var(--blue);background:#fff;border:1px solid #c6d8f2}.tags{color:#466274;flex-wrap:wrap;gap:18px;margin-top:44px;font-size:13px;display:flex}.modules{padding:85px max(8vw,24px)}h2{letter-spacing:-1.3px;margin:12px 0 18px;font-size:clamp(30px,3vw,44px)}.modules>p{max-width:760px;color:var(--muted);line-height:1.7}.grid{grid-template-columns:repeat(3,1fr);gap:20px;margin-top:36px;display:grid}.module{border:1px solid #e4ebf1;border-radius:20px;padding:30px;box-shadow:0 10px 35px #16335708}.num{color:var(--turq);font-size:13px;font-weight:800}h3{margin:24px 0 10px;font-size:21px}.module p,.vision p{color:var(--muted);line-height:1.65}.vision{background:#f6f5ff;grid-template-columns:1.5fr 1fr;align-items:center;gap:45px;padding:80px max(8vw,24px);display:grid}.notice{border-left:5px solid var(--yellow);background:#fff;border-radius:14px;padding:28px}footer{color:var(--muted);justify-content:space-between;gap:16px;padding:32px max(8vw,24px);font-size:13px;display:flex}@media (max-width:760px){.nav{flex-wrap:wrap;gap:18px;height:auto;padding:20px 24px}.nav nav{gap:16px}.hero{padding-top:65px;padding-bottom:70px}.hero p{font-size:17px}.grid,.vision{grid-template-columns:1fr}.tags{gap:12px}footer{flex-direction:column}}.setup{max-width:1180px;margin:auto;padding:30px 24px 90px}.back{color:var(--blue);font-size:14px;font-weight:700}.setup-head{padding:60px 0 38px}.setup-head h1{max-width:850px;font-size:clamp(35px,4.6vw,60px)}.setup-head>p,.setup-files>p,.setup-help>p{color:var(--muted);max-width:750px;font-size:18px;line-height:1.65}.setup-state{border-left:5px solid var(--yellow);background:#fff8e6;border-radius:14px;flex-direction:column;gap:8px;max-width:830px;margin-top:30px;padding:22px 26px;line-height:1.6;display:flex}.setup-state span{color:#665b3f}.setup-steps{border:1px solid #e4ebf1;border-radius:20px;margin:28px 0 65px;padding:0;list-style:none;overflow:hidden}.setup-steps li{border-bottom:1px solid #e4ebf1;align-items:center;gap:22px;padding:22px 28px;display:flex}.setup-steps li:last-child{border:0}.step-circle{color:#fff;background:linear-gradient(135deg,var(--turq),var(--blue));border-radius:14px;flex:0 0 44px;place-items:center;width:44px;height:44px;font-weight:800;display:grid}.setup-steps li>div{flex:1}.setup-steps h3,.setup-file h3{margin:0 0 7px;font-size:19px}.setup-steps p,.setup-file p{color:var(--muted);margin:0;line-height:1.5}.step-status{color:var(--violet);white-space:nowrap;background:#f4efff;border-radius:999px;padding:9px 12px;font-size:12px;font-weight:800}.setup-files{padding:42px 0}.setup-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:30px 0;display:grid}.setup-file{border:1px solid #e4ebf1;border-radius:18px;flex-direction:column;align-items:flex-start;gap:14px;padding:24px;display:flex;box-shadow:0 8px 30px #16335708}.file-icon{color:#087c7b;background:#e6fbf8;border-radius:12px;place-items:center;width:44px;height:44px;font-size:28px;display:grid}.setup-file .btn{margin-top:auto;padding:13px 15px;font-size:13px}.setup-tip{background:#f2f8ff;border-radius:16px;padding:22px 26px;line-height:1.6}.setup-tip p{color:var(--muted);margin:6px 0 0}.setup-help{background:#f6f5ff;border-radius:22px;margin-top:35px;padding:35px}.setup-help .btn{margin-top:12px;display:inline-block}@media (max-width:900px){.setup-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.setup{padding:22px 16px 60px}.setup-head{padding-top:40px}.setup-steps li{flex-wrap:wrap;align-items:flex-start;gap:12px;padding:20px 16px}.setup-steps li>div{flex-basis:calc(100% - 60px)}.step-status{margin-left:56px}.setup-grid{grid-template-columns:1fr}.setup-file .btn{text-align:center;width:100%}}.academic-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:15px 0 48px;display:grid}.academic-title{letter-spacing:-.5px;margin:18px 0 12px;font-size:26px}.academic-fields{color:var(--muted);margin:18px 0 26px;padding-left:22px;line-height:1.8}.academic-grid .module{flex-direction:column;align-items:flex-start;display:flex}.academic-grid .step-status{margin-top:auto}@media (max-width:850px){.academic-grid{grid-template-columns:1fr}}.hours-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:22px 0;display:grid}.hours-form label{flex-direction:column;gap:8px;font-size:14px;font-weight:700;display:flex}.hours-form input{width:100%;font:inherit;color:var(--ink);background:#fff;border:1px solid #b9cde1;border-radius:10px;padding:13px}.hours-form input:focus-visible{outline:3px solid var(--turq);outline-offset:2px}.hours-results{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding-left:22px;display:grid}.hours-results li{padding:6px}@media (max-width:600px){.hours-form,.hours-results{grid-template-columns:1fr}}.hours-form textarea,.hours-form input{width:100%;font:inherit;color:var(--ink);background:#fff;border:1px solid #b9cde1;border-radius:10px;padding:13px}.hours-form textarea:focus-visible{outline:3px solid var(--turq);outline-offset:2px}.setup-help button.btn{cursor:pointer;border:0}.setup-help button.btn:disabled{opacity:.5;cursor:not-allowed}.draft-preview{overflow-wrap:anywhere;background:#fff;border:1px solid #d6d6f5;border-radius:14px;margin-top:24px;padding:20px}.draft-preview dl{grid-template-columns:minmax(100px,160px) minmax(0,1fr);gap:12px;display:grid}.draft-preview dt{font-weight:700}.draft-preview dd{white-space:pre-wrap;margin:0}@media (max-width:600px){.draft-preview dl{grid-template-columns:1fr}}.panel-modulos{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:8px 0 56px;display:grid}.panel-modulo{background:#fff;border:1px solid #e7edf3;border-radius:20px;align-items:flex-start;gap:15px;min-height:152px;padding:22px 18px;display:flex;position:relative;box-shadow:0 8px 22px #1b35500a}.panel-icon{border-radius:16px;flex:0 0 54px;place-items:center;width:54px;height:54px;font-size:29px;font-weight:700;display:grid}.panel-blue{color:#2384b3;background:#e7f0f7}.panel-turq{color:#00a989;background:#e2f8f0}.panel-yellow{color:#b7841c;background:#fff3d5}.panel-violet{color:#94619a;background:#f1e9f4}.panel-rose{color:#ac6170;background:#f3e7e8}.panel-modulo-content{min-width:0}.panel-modulo h2{letter-spacing:-.4px;margin:7px 0;font-size:18px}.panel-modulo p{color:var(--muted);margin:0 0 12px;font-size:12px;line-height:1.5}.panel-status{color:#657589;font-size:11px;font-weight:700}.panel-access{color:var(--blue);font-size:12px;font-weight:800;position:absolute;bottom:15px;right:18px}.panel-access:focus-visible{outline:3px solid var(--turq);outline-offset:4px}@media (max-width:1080px){.panel-modulos{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:780px){.panel-modulos{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:510px){.panel-modulos{grid-template-columns:1fr}.panel-modulo{min-height:126px}}.book-shell{background:#f4f7fb;min-height:100vh}.book-top{background:#fff;border-bottom:1px solid #e3eaf2;justify-content:space-between;align-items:center;gap:16px;padding:18px clamp(18px,4vw,60px);display:flex}.book-top-link{color:var(--blue);font-weight:700}.book-layout{grid-template-columns:270px minmax(0,1fr);max-width:1600px;margin:auto;display:grid}.book-sidebar{background:#fff;border-right:1px solid #e2eaf2;align-self:start;min-height:calc(100vh - 80px);padding:34px 20px;position:sticky;top:0}.book-sidebar h2{margin:12px 0;font-size:25px}.book-sidebar>p:not(.section-label){color:var(--muted);font-size:14px;line-height:1.6}.book-sidebar nav{gap:8px;margin:30px 0;display:grid}.book-sidebar nav a{border-radius:12px;padding:13px;font-size:14px;font-weight:700}.book-sidebar nav a:hover,.book-sidebar nav a:focus-visible{color:#096b82;background:#eaf7fa}.book-sidebar nav span{color:var(--violet);margin-right:8px}.book-sidebar .btn{text-align:center;display:block}.book-pages{min-width:0;padding:35px clamp(18px,3vw,48px) 50px}.book-welcome{background:linear-gradient(115deg,#e2faf6,#e8efff 60%,#f2eaff);border-radius:24px;padding:36px}.book-welcome h1{margin:15px 0;font-size:clamp(30px,3.5vw,48px)}.book-welcome p{max-width:720px;color:var(--muted);font-size:16px;line-height:1.6}.book-quick{flex-wrap:wrap;gap:10px;margin-top:25px;display:flex}.book-quick a{color:#1958aa;background:#fff;border:1px solid #d8e5f2;border-radius:10px;padding:12px 16px;font-size:14px;font-weight:700}.book-warning{border-left:4px solid var(--yellow);background:#fff9e9;border-radius:10px;margin:20px 0 34px;padding:15px 20px;font-size:14px;line-height:1.6}.book-chapter{margin:36px 0 55px;scroll-margin-top:20px}.book-chapter-head{border-bottom:2px solid #dce6f0;margin-bottom:18px;padding-bottom:15px}.book-chapter-number{letter-spacing:1.5px;color:var(--violet);font-size:12px;font-weight:800}.book-chapter-head h2{margin:8px 0;font-size:28px}.book-chapter-head p{color:var(--muted);margin:0}.book-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.book-card{background:#fff;border:1px solid #e0e9f2;border-radius:17px;flex-direction:column;min-height:205px;padding:21px;display:flex;box-shadow:0 6px 20px #1b355009}.book-card-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.book-dot{background:var(--blue);border-radius:5px;width:13px;height:13px}.book-dot-turq{background:var(--turq)}.book-dot-violet{background:var(--violet)}.book-dot-yellow{background:var(--yellow)}.book-dot-rose{background:#e18a9e}.book-card-state{color:#64748b;font-size:11px;font-weight:700}.book-card h3{margin:20px 0 8px;font-size:19px}.book-card p{color:var(--muted);margin:0 0 20px;font-size:13px;line-height:1.55}.book-card-link{color:var(--blue);margin-top:auto;font-size:13px;font-weight:800}.book-card-disabled{color:#64748b;margin-top:auto;font-size:12px}.book-footer{color:var(--muted);border-top:1px solid #dce6f0;justify-content:space-between;gap:12px;padding:24px 0;font-size:13px;display:flex}.book-shell a:focus-visible{outline:3px solid var(--turq);outline-offset:3px}@media (max-width:1050px){.book-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.book-layout{display:block}.book-sidebar{border-bottom:1px solid #e2eaf2;border-right:0;min-height:0;padding:20px;position:static}.book-sidebar nav{gap:6px;margin:16px 0;display:flex;overflow-x:auto}.book-sidebar nav a{white-space:nowrap;background:#f4f7fb}.book-sidebar .btn{display:inline-block}.book-pages{padding:20px 16px}.book-welcome{padding:25px}.book-card-grid{grid-template-columns:1fr}.book-card{min-height:175px}.book-footer{flex-direction:column}}.book-course-layout{grid-template-columns:245px minmax(0,1fr);max-width:1600px;margin:auto;display:grid}.book-course-side{background:#fff;border-right:1px solid #dfe8f2;min-height:calc(100vh - 80px);padding:30px 18px}.book-course-side h2{overflow-wrap:anywhere;font-size:24px}.book-course-side p{color:var(--muted);font-size:13px;line-height:1.6}.book-course-side nav{gap:7px;margin:26px 0;display:grid}.book-tab{text-align:left;font:inherit;cursor:pointer;color:var(--ink);background:0 0;border:0;border-radius:11px;padding:14px 12px;font-size:14px}.book-tab.active,.book-tab:hover{color:#087d82;background:#e9f9f7;font-weight:700}.book-tab:disabled{opacity:.5;cursor:not-allowed}.book-course-main{min-width:0;padding:30px}.book-course-main .book-welcome{padding:26px}.book-course-main .book-welcome h1{font-size:35px}.book-course-tabs,.book-course-subtabs{border-bottom:1px solid #d8e3ed;gap:5px;margin-top:22px;display:flex;overflow-x:auto}.book-course-tabs button,.book-course-subtabs button{white-space:nowrap;font:inherit;cursor:pointer;color:#51677d;background:0 0;border:0;border-bottom:3px solid #0000;padding:14px 17px}.book-course-tabs button.active{border-color:var(--blue);color:var(--blue);font-weight:800}.book-course-subtabs{margin-top:10px}.book-course-subtabs button.active{border-color:var(--turq);color:#087d82;font-weight:700}.book-course-content{background:#fff;border:1px solid #e0e9f2;border-radius:17px;min-height:240px;margin-top:18px;padding:30px}.book-course-content h2{font-size:25px}.book-course-content p{max-width:780px;color:var(--muted);line-height:1.7}.book-course-layout button:focus-visible{outline:3px solid var(--turq);outline-offset:2px}@media (max-width:800px){.book-course-layout{display:block}.book-course-side{border-bottom:1px solid #dfe8f2;border-right:0;min-height:0;padding:18px}.book-course-side nav{margin:16px 0;display:flex;overflow-x:auto}.book-tab{white-space:nowrap}.book-course-main{padding:18px}.book-course-content{padding:20px}}.book-course-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:24px 0;display:grid}.book-course-summary>div{background:#f8fbff;border:1px solid #e0e9f2;border-radius:14px;flex-direction:column;gap:10px;padding:20px;display:flex}.book-course-summary span{color:var(--muted);font-size:13px}.book-course-summary strong{overflow-wrap:anywhere;color:#175a89;font-size:25px}@media (max-width:650px){.book-course-summary{grid-template-columns:1fr}}.course-config-form{flex-wrap:wrap;align-items:end;gap:14px;display:flex}.course-config-form label,.course-config-card label{flex-direction:column;gap:7px;font-size:13px;font-weight:700;display:flex}.course-config-form input,.course-config-form select,.course-config-card input,.course-config-card select{font:inherit;min-width:100px;max-width:100%;color:var(--ink);background:#fff;border:1px solid #bacbda;border-radius:9px;padding:11px}.course-config-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.course-config-card{border:1px solid #dae6f1;border-top:5px solid var(--blue);background:#fff;border-radius:12px;flex-direction:column;align-items:stretch;gap:12px;padding:18px;display:flex}.course-config-card strong{font-size:18px}.course-config-card button{color:#9d334c;cursor:pointer;background:#fff7f8;border:1px solid #d8b9c1;border-radius:8px;align-self:flex-start;padding:8px 12px}.course-config-card button:focus-visible,.course-config-form input:focus-visible,.course-config-form select:focus-visible{outline:3px solid var(--turq)}@media (max-width:850px){.course-config-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:500px){.course-config-grid{grid-template-columns:1fr}}.course-month{flex-wrap:wrap;align-items:center;gap:12px;margin:20px 0;display:flex}.course-month label{font-weight:700}.course-month select{color:var(--ink);background:#fff;border:1px solid #cad8e6;border-radius:9px;padding:10px 16px}.course-attendance-scroll{border:1px solid #dce6f0;border-radius:12px;max-width:100%;overflow-x:auto}.course-attendance-table{border-collapse:collapse;width:max-content;min-width:100%;font-size:13px}.course-attendance-table th,.course-attendance-table td{text-align:center;border:1px solid #e3eaf2;min-width:35px;padding:12px 8px}.course-attendance-table th:first-child{z-index:1;text-align:left;background:#f5faff;min-width:160px;position:sticky;left:0}.course-attendance-table thead th{color:#225b7b;background:#f0f7fb}.course-attendance-table small{color:#728294;font-weight:400;display:block}.course-legend{color:var(--muted);font-size:12px}.course-register{background:#f7fdfd;border:1px solid #cce5e7;border-radius:14px;margin:20px 0;padding:20px}.course-register>label{margin-bottom:8px;font-weight:700;display:block}.course-register input,.course-register select{color:var(--ink);font:inherit;background:#fff;border:1px solid #c5d5e4;border-radius:9px;padding:10px}.course-register-rows{gap:8px;max-height:440px;margin:20px 0;display:grid;overflow:auto}.course-register-rows label{background:#fff;border:1px solid #e1e9f0;border-radius:9px;justify-content:space-between;align-items:center;gap:12px;padding:10px;display:flex}.course-register-rows span{font-size:14px}.course-register .btn{margin-top:12px}@media (max-width:550px){.course-register-rows label{flex-direction:column;align-items:stretch}}
