.curriculum-panel{padding:32px 0 8px;color:#f5f1e8}.curriculum-loading,.curriculum-unavailable{padding:38px;border:1px solid rgba(225,178,67,.24);border-radius:22px;background:linear-gradient(145deg,rgba(10,27,44,.94),rgba(6,17,29,.98))}.curriculum-loading h3,.curriculum-unavailable h3,.curriculum-heading h3{margin:9px 0 8px;font-size:clamp(1.55rem,3vw,2.35rem);line-height:1.08}.curriculum-loading p,.curriculum-unavailable p,.curriculum-heading p{margin:0;color:#bfc9d4}.curriculum-heading{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;margin-bottom:22px}.curriculum-save-state{flex:0 0 auto;padding:9px 13px;border:1px solid rgba(225,178,67,.32);border-radius:999px;color:#e7c86f;background:rgba(225,178,67,.07);font-size:.78rem;font-weight:700}.curriculum-save-state.is-saving{color:#dbe7f2;border-color:#607890}.curriculum-save-state.is-error{color:#ffb7ad;border-color:#944d45}.curriculum-metrics{display:grid;grid-template-columns:1.3fr repeat(3,1fr);gap:12px;margin-bottom:18px}.curriculum-metrics article{min-width:0;padding:18px;border:1px solid rgba(255,255,255,.09);border-radius:17px;background:#091827}.curriculum-metrics span{display:block;color:#9eb0c2;font-size:.76rem;text-transform:uppercase;letter-spacing:.08em}.curriculum-metrics strong{display:block;margin:7px 0 3px;color:#f3cc64;font-size:1.75rem}.curriculum-metrics small{color:#aab8c6}.curriculum-metrics i{display:block;height:7px;margin-top:10px;border-radius:999px;background:#1a2a3a;overflow:hidden}.curriculum-metrics i b{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#d49b27,#f0cf72);transition:width .25s ease}.curriculum-guide{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:20px}.curriculum-guide>div{display:flex;gap:11px;align-items:center;padding:13px;border:1px solid rgba(255,255,255,.07);border-radius:14px;background:rgba(8,23,37,.64)}.curriculum-guide b{display:grid;place-items:center;width:29px;height:29px;border-radius:50%;background:#e1b243;color:#07111d}.curriculum-guide span{color:#9fafbd;font-size:.78rem}.curriculum-guide strong{display:block;color:#f3f0e8;font-size:.88rem}.curriculum-tools{display:flex;align-items:end;justify-content:space-between;gap:16px;margin:24px 0 13px}.curriculum-tools label{display:grid;gap:6px;flex:1;max-width:520px}.curriculum-tools label span{font-size:.76rem;color:#e6c96f;text-transform:uppercase;letter-spacing:.08em}.curriculum-tools input{width:100%;padding:12px 14px;border:1px solid #314052;border-radius:12px;background:#071421;color:#fff;font:inherit}.curriculum-tools>span{color:#9fafbd;font-size:.85rem}.curriculum-list{display:grid;gap:12px}.curriculum-discipline{border:1px solid rgba(225,178,67,.21);border-radius:17px;overflow:hidden;background:#081625}.curriculum-discipline[open]{border-color:rgba(225,178,67,.43)}.curriculum-discipline summary{display:grid;grid-template-columns:1fr auto;align-items:center;gap:16px;padding:18px 20px;cursor:pointer;list-style:none}.curriculum-discipline summary::-webkit-details-marker{display:none}.curriculum-discipline summary h4{margin:0 0 4px;font-size:1.04rem}.curriculum-discipline summary p{margin:0;color:#93a5b6;font-size:.8rem}.curriculum-discipline summary>span{display:flex;align-items:center;gap:12px}.curriculum-discipline summary>span b{color:#efc95e}.curriculum-discipline summary>span i{display:grid;place-items:center;width:29px;height:29px;border:1px solid #3d4b59;border-radius:50%;font-style:normal;color:#e9c45d}.curriculum-discipline[open] summary>span i{transform:rotate(45deg)}.curriculum-table-head,.curriculum-topic{display:grid;grid-template-columns:minmax(0,1fr) 106px 106px 106px;align-items:center}.curriculum-table-head{padding:9px 20px;border-top:1px solid rgba(255,255,255,.07);border-bottom:1px solid rgba(255,255,255,.07);color:#8fa1b2;font-size:.68rem;text-transform:uppercase;letter-spacing:.05em}.curriculum-table-head span:not(:first-child){text-align:center}.curriculum-topic{min-height:64px;padding:9px 20px;border-bottom:1px solid rgba(255,255,255,.055)}.curriculum-topic:last-child{border-bottom:0}.curriculum-topic>span{padding-right:18px;line-height:1.4;color:#dce3e9;font-size:.88rem}.curriculum-check{display:grid;place-items:center}.curriculum-check input{position:absolute;opacity:0;pointer-events:none}.curriculum-check b{display:grid;place-items:center;width:27px;height:27px;border:1px solid #4a5968;border-radius:8px;color:transparent;cursor:pointer;transition:.16s ease;background:#0a1a29}.curriculum-check input:focus-visible+b{outline:2px solid #f0c75e;outline-offset:3px}.curriculum-check input:checked+b{border-color:#dfae38;background:#dfae38;color:#07111d}.curriculum-check input:checked+b:after{content:'✓';font-size:.9rem;font-weight:900}.curriculum-topic.is-complete{background:rgba(225,178,67,.045)}.curriculum-note{margin:18px 0 0;padding:13px 15px;border-left:3px solid #d8a62e;background:rgba(216,166,46,.06);color:#aebbc7;font-size:.82rem}.curriculum-empty-search{padding:30px;text-align:center;color:#aab6c2}.curriculum-discipline[hidden]{display:none}
@media(max-width:760px){.curriculum-panel{padding-top:23px}.curriculum-heading{display:grid}.curriculum-save-state{justify-self:start}.curriculum-metrics{grid-template-columns:1fr 1fr}.curriculum-guide{grid-template-columns:1fr}.curriculum-table-head{display:none}.curriculum-topic{grid-template-columns:1fr repeat(3,54px);padding:13px 10px}.curriculum-topic>span{grid-column:1/-1;padding:0 4px 11px;font-size:.84rem}.curriculum-check:before{display:block;margin-bottom:5px;color:#8495a5;font-size:.58rem;text-transform:uppercase}.curriculum-check[data-field="studied"]:before{content:'Estudo'}.curriculum-check[data-field="questions"]:before{content:'Questões'}.curriculum-check[data-field="reviewed"]:before{content:'Revisão'}.curriculum-discipline summary{padding:16px}.curriculum-tools{align-items:stretch;flex-direction:column}.curriculum-tools label{max-width:none}.curriculum-tools>span{align-self:flex-end}}
@media(max-width:430px){.curriculum-metrics{grid-template-columns:1fr}.curriculum-loading,.curriculum-unavailable{padding:25px 20px}}
