/* AP Physics C v2.0 practice, model-exam, review and study-plan system */
.sapc-practice-engine{min-width:0;padding:18px;border:1px solid #c9dce7;border-radius:18px;background:linear-gradient(145deg,#fff,#f7fbfd)}
.sapc-practice-controls{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:10px;align-items:end}
.sapc-practice-controls label{display:grid;gap:5px;color:#284a61;font-size:.79rem;font-weight:850}
.sapc-practice-controls select,.sapc-practice-controls input,.sapc-practice-controls textarea{width:100%;min-height:44px;padding:8px 10px;border:1px solid #bfced8;border-radius:10px;background:#fff;color:#16344a;font:inherit}
.sapc-practice-controls .sapc-btn{min-width:0;width:100%}
.sapc-practice-status{margin:14px 0;padding:11px 13px;border:1px solid #cfe1e9;border-radius:12px;background:#eef8fc;color:#35556b;font-weight:760}
.sapc-practice-card{margin-top:14px;padding:19px;border:1px solid #d2e0e8;border-radius:17px;background:#fff;box-shadow:0 8px 22px rgba(16,46,70,.05)}
.sapc-practice-meta{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:9px}.sapc-practice-meta span{display:inline-flex;padding:4px 8px;border-radius:999px;background:#eef5f8;color:#486476;font-size:.72rem;font-weight:850}.sapc-practice-meta .hard{background:#fff1e6;color:#874513}.sapc-practice-meta .practice{background:#eef1ff;color:#4d4b8c}
.sapc-practice-stem{font-size:1.08rem;font-weight:820;color:#123149;line-height:1.5;margin:10px 0 13px}
.sapc-choicegrid{display:grid;gap:9px}.sapc-choice{position:relative;width:100%;padding:12px 14px 12px 48px;border:1px solid #cbdbe4;border-radius:12px;background:#fff;text-align:left;color:#23465d;font:inherit;cursor:pointer}.sapc-choice:before{content:attr(data-letter);position:absolute;left:12px;top:10px;display:grid;place-items:center;width:27px;height:27px;border-radius:8px;background:#edf5f9;color:#176ea6;font-weight:900}.sapc-choice:hover{border-color:#7eb1ca;background:#f8fcfe}.sapc-choice.is-selected{border-color:#176ea6;box-shadow:0 0 0 2px rgba(23,110,166,.12)}.sapc-choice.is-correct{border-color:#56a98c;background:#f0faf6}.sapc-choice.is-wrong{border-color:#d69b71;background:#fff6ef}.sapc-choice[disabled]{cursor:default;opacity:1}
.sapc-practice-feedback{margin-top:12px;padding:13px 14px;border-radius:12px;background:#f6fafc;border:1px solid #d7e4eb}.sapc-practice-feedback strong{color:#123149}.sapc-practice-feedback p{margin:.35rem 0}.sapc-practice-feedback .correct{color:#12674f}.sapc-practice-feedback .wrong{color:#98531e}
.sapc-practice-toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:12px}.sapc-practice-toolbar .sapc-btn{width:auto;min-height:40px;padding:8px 12px}.sapc-practice-toolbar button.secondary{background:#fff;color:#126291;border:1px solid #b9d2e2}.sapc-practice-toolbar .grow{margin-left:auto}.sapc-practice-progress{height:9px;margin:11px 0;border-radius:999px;background:#e6eef3;overflow:hidden}.sapc-practice-progress span{display:block;height:100%;width:0;background:#176ea6;transition:width .2s ease}
.sapc-practice-summary{margin-top:15px}.sapc-practice-summary .sapc-statgrid{margin-top:10px}.sapc-breakdown{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.sapc-breakdown>div{padding:12px;border:1px solid #d7e4eb;border-radius:12px;background:#fff}.sapc-breakdown b{display:block}.sapc-breakdown small{color:#607585}
.sapc-frq-card{margin-top:15px;padding:18px;border:1px solid #d2e0e8;border-radius:17px;background:#fff}.sapc-frq-scenario{padding:14px;border-left:4px solid #6754a5;background:#f5f2ff;border-radius:0 12px 12px 0}.sapc-frq-part{margin-top:13px;padding:14px;border:1px solid #d9e5ec;border-radius:13px;background:#fbfdfe}.sapc-frq-part h4{margin:.1rem 0 .5rem;color:#14364f}.sapc-frq-part textarea{width:100%;min-height:130px;padding:10px 11px;border:1px solid #bdced9;border-radius:10px;background:#fff;color:#18384e;font:inherit;line-height:1.5;resize:vertical}.sapc-frq-rubric{margin-top:12px;padding:13px;border:1px solid #d9d3ef;border-radius:12px;background:#faf8ff}.sapc-frq-rubric label{display:flex;gap:9px;align-items:flex-start;margin:7px 0;color:#3b4f61}.sapc-frq-rubric input{margin-top:.25rem}.sapc-evidence{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.sapc-evidence span{padding:4px 7px;border-radius:999px;background:#edf2f5;color:#617482;font-size:.72rem}.sapc-evidence span.hit{background:#e8f7f1;color:#12674f}.sapc-evidence span.miss{background:#fff2e8;color:#8a4e1e}
.sapc-model-nav{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin:12px 0}.sapc-model-nav button{min-height:36px;border:1px solid #ccdce5;border-radius:8px;background:#fff;color:#31536a;font-weight:800;cursor:pointer}.sapc-model-nav button.is-current{background:#176ea6;color:#fff;border-color:#176ea6}.sapc-model-nav button.is-answered{background:#edf8f4;border-color:#8cc9b3}.sapc-model-timer{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 12px;border-radius:11px;background:#102e46;color:#fff}.sapc-model-timer strong{font-size:1.1rem}.sapc-model-frqs{display:grid;gap:12px}.sapc-model-frq{padding:15px;border:1px solid #d5e2e9;border-radius:14px;background:#fff}.sapc-model-frq ol{padding-left:1.3rem}.sapc-model-scorebox{margin-top:14px;padding:15px;border:1px solid #c9dce7;border-radius:14px;background:#f7fbfd}.sapc-model-scorebox input{width:110px;min-height:40px;padding:7px 9px;border:1px solid #bdced9;border-radius:9px}
.sapc-review-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.sapc-review-card{padding:14px;border:1px solid #d5e2e9;border-radius:14px;background:#fff}.sapc-review-card b{display:block;font-size:1.25rem;color:#14364f}.sapc-review-card span{font-size:.8rem;color:#657a89}.sapc-weak-list{display:grid;gap:9px;margin-top:14px}.sapc-weak-row{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(140px,.7fr) auto;gap:10px;align-items:center;padding:12px;border:1px solid #d6e3ea;border-radius:12px;background:#fff}.sapc-weak-row strong{display:block}.sapc-weak-row small{color:#687b89}.sapc-weak-bar{height:8px;border-radius:999px;background:#e7eef2;overflow:hidden}.sapc-weak-bar span{display:block;height:100%;background:#d96c2b}.sapc-weak-row a{text-decoration:none;font-weight:800}
.sapc-plan-summary{margin:14px 0;padding:14px;border-left:4px solid #167c67;border-radius:0 12px 12px 0;background:#eff9f5}.sapc-plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.sapc-plan-day{min-width:0;padding:14px;border:1px solid #d3e2ea;border-radius:14px;background:#fff}.sapc-plan-day header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.sapc-plan-day h3{margin:.1rem 0}.sapc-plan-day small{color:#667b8a}.sapc-plan-day ul{margin:.6rem 0}.sapc-plan-day li{margin:.35rem 0}.sapc-plan-day .links{display:flex;flex-wrap:wrap;gap:6px}.sapc-plan-day .links a{display:inline-flex;padding:5px 8px;border:1px solid #c8dbe6;border-radius:999px;text-decoration:none;font-size:.76rem;font-weight:780}.sapc-plan-check{display:flex;gap:8px;align-items:center;margin-top:8px;font-size:.82rem;font-weight:800;color:#3c5d71}.sapc-plan-check input{width:18px;height:18px}.sapc-plan-day.is-done{background:#f1faf6;border-color:#9bcfbd}.sapc-plan-progress{margin:12px 0}.sapc-plan-progress strong{display:block;margin-bottom:6px}.sapc-plan-progress .bar{height:10px;border-radius:999px;background:#e6eef3;overflow:hidden}.sapc-plan-progress .bar span{display:block;height:100%;background:#167c67}
.sapc-data-error{padding:15px;border:1px solid #ecc9b0;border-left:4px solid #d96c2b;border-radius:0 12px 12px 0;background:#fff6ee;color:#6c431f}.sapc-practice-empty{padding:16px;border:1px dashed #c3d6e1;border-radius:12px;color:#617787;background:#fbfdfe}
@media(max-width:1100px){.sapc-practice-controls{grid-template-columns:repeat(3,minmax(0,1fr))}.sapc-review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.sapc-practice-controls{grid-template-columns:1fr}.sapc-breakdown,.sapc-plan-grid{grid-template-columns:1fr}.sapc-model-nav{grid-template-columns:repeat(6,minmax(0,1fr))}.sapc-review-grid{grid-template-columns:1fr 1fr}.sapc-weak-row{grid-template-columns:1fr}.sapc-practice-toolbar .sapc-btn{width:100%}.sapc-practice-toolbar .grow{margin-left:0}.sapc-model-timer{display:grid}.sapc-frq-part textarea{min-height:160px}}
@media(max-width:420px){.sapc-review-grid{grid-template-columns:1fr}.sapc-model-nav{grid-template-columns:repeat(5,minmax(0,1fr))}.sapc-practice-card,.sapc-frq-card,.sapc-practice-engine{padding:13px}.sapc-choice{padding-left:44px}}
@media print{.sapc-practice-controls,.sapc-practice-toolbar,.sapc-model-nav,.sapc-plan-check,[data-r-reset],[data-r-refresh],[data-r-export]{display:none!important}.sapc-practice-engine,.sapc-practice-card,.sapc-frq-card,.sapc-plan-day{box-shadow:none;background:#fff}.sapc-plan-grid{grid-template-columns:1fr 1fr}.sapc-frq-part textarea{border:1px solid #999;min-height:160px}}
