.cep-hero{position:relative;overflow:hidden;padding:clamp(7rem,12vw,10rem) 0 5rem;color:#fff;background:radial-gradient(circle at 80% 15%,rgba(166,227,63,.18),transparent 28%),linear-gradient(135deg,#061827,#0b3149 60%,#0c2638)}
.cep-hero:after{content:"";position:absolute;inset:auto -8% -42% 42%;height:42rem;border:1px solid rgba(166,227,63,.16);border-radius:50%;transform:rotate(-12deg)}
.cep-hero-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:clamp(2rem,5vw,5rem);align-items:center;position:relative;z-index:1}.cep-hero h1{color:#fff;max-width:13ch}.cep-boundary{max-width:68ch;font-size:.86rem;color:rgba(255,255,255,.68);margin-top:1.4rem}.cep-overview{padding:2rem;border:1px solid rgba(255,255,255,.16);border-radius:1.6rem;background:rgba(255,255,255,.08);box-shadow:0 24px 70px rgba(0,0,0,.22);backdrop-filter:blur(18px)}.cep-overview>span{font-size:.72rem;letter-spacing:.16em;color:#b6ed59}.cep-overview h2{color:#fff;font-size:1.65rem}.cep-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin:1.4rem 0}.cep-stats div{padding:1rem .7rem;background:rgba(255,255,255,.08);border-radius:1rem;text-align:center}.cep-stats b{display:block;font-size:1.6rem;color:#b6ed59}.cep-stats small{color:rgba(255,255,255,.66)}.cep-meter{height:.55rem;background:rgba(255,255,255,.12);border-radius:99px;overflow:hidden}.cep-meter i{display:block;height:100%;width:0;background:linear-gradient(90deg,#9ede39,#d8ff8a);transition:width .35s ease}
.cep-track-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem}.cep-track{display:flex;flex-direction:column;padding:1.5rem;border:1px solid #dce6e4;border-radius:1.35rem;background:#fff;box-shadow:0 16px 45px rgba(7,26,45,.07)}.cep-track .track-top{display:flex;justify-content:space-between;gap:1rem;align-items:center}.cep-track .track-icon{display:grid;place-items:center;width:2.8rem;height:2.8rem;border-radius:50%;background:#eff7e4;color:#426213;font-weight:800}.cep-track .track-progress{font-size:.76rem;font-weight:800;color:#527327}.cep-track ul{padding-left:1.1rem;color:#53636a;flex:1}.cep-track li+li{margin-top:.45rem}.cep-track .track-actions{display:flex;gap:.6rem;align-items:center;justify-content:space-between;margin-top:1rem}.cep-track button{border:0;background:none;font:inherit;cursor:pointer}.favorite{font-size:1.3rem;color:#8a979c}.favorite.is-active{color:#6b931e}.complete-track{padding:.7rem .9rem;border-radius:.75rem!important;background:#eff7e4!important;color:#385610!important;font-weight:800!important}
.cep-toolbar{display:flex;justify-content:space-between;gap:1rem;align-items:end;margin-bottom:1.5rem}.cep-toolbar label{flex:1}.cep-toolbar label span,.cep-note-form span{display:block;font-size:.78rem;font-weight:800;letter-spacing:.04em;margin-bottom:.45rem}.cep-toolbar input,.cep-note-form input,.cep-note-form textarea{width:100%;padding:.85rem 1rem;border:1px solid #cad8d5;border-radius:.8rem;background:#fff;font:inherit}.cep-filters{display:flex;gap:.45rem;flex-wrap:wrap}.cep-filters button{border:1px solid #cddbd7;border-radius:99px;background:#fff;padding:.65rem .85rem;font:inherit;font-weight:700;cursor:pointer}.cep-filters button.is-active{background:#0b2b42;color:#fff;border-color:#0b2b42}.cep-resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.cep-resource{padding:1.3rem;border-radius:1.1rem;background:#fff;border:1px solid #d9e4e1}.cep-resource .tag{font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;color:#668527;font-weight:800}.cep-resource a{font-weight:800}.cep-resource button{float:right;border:0;background:none;font-size:1.1rem;cursor:pointer}.cep-resource button.is-active{color:#6b931e}
.cep-handout-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.1rem}.cep-handout-grid article{padding:1.5rem;border:1px solid rgba(255,255,255,.15);border-radius:1.25rem;background:rgba(255,255,255,.07)}.cep-handout-grid article>span{color:#b6ed59;font-weight:800}.cep-handout-grid h3{color:#fff}.cep-handout-grid p{color:rgba(255,255,255,.72)}
.cep-workspace{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start}.cep-note-form{display:grid;gap:1rem}.cep-note-form textarea{min-height:150px;resize:vertical}.cep-note-panel{padding:1.4rem;border:1px solid #d9e4e1;border-radius:1.25rem;background:#f8fbfa}.cep-panel-head{display:flex;justify-content:space-between;align-items:center}.text-button{border:0;background:none;color:#4f7022;font-weight:800;cursor:pointer}.cep-notes{display:grid;gap:.75rem}.cep-note{padding:1rem;border-radius:.9rem;background:#fff;border:1px solid #dde7e4}.cep-note header{display:flex;justify-content:space-between;gap:1rem}.cep-note time{font-size:.72rem;color:#78878c}.cep-note button{border:0;background:none;cursor:pointer}.cep-empty{color:#68787e;font-style:italic}
@media(max-width:960px){.cep-hero-grid,.cep-workspace{grid-template-columns:1fr}.cep-track-grid,.cep-resource-grid,.cep-handout-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cep-toolbar{align-items:stretch;flex-direction:column}}
@media(max-width:640px){.cep-track-grid,.cep-resource-grid,.cep-handout-grid{grid-template-columns:1fr}.cep-stats{grid-template-columns:1fr}.cep-filters{overflow:auto;flex-wrap:nowrap;padding-bottom:.25rem}.cep-filters button{white-space:nowrap}}
@media(prefers-reduced-motion:reduce){.cep-meter i{transition:none}}
