.oc-form,.oc-count,.oc-list,#oc-empty{max-width:660px}.oc-form{margin-bottom:var(--s-6)}.oc-grid{display:grid;gap:var(--s-4);margin-top:var(--s-5)}@media (min-width: 560px){.oc-grid{grid-template-columns:1fr 1fr}.oc-grid__wide{grid-column:1 / -1}}.ac-field__label em{font-style:normal;font-weight:var(--fw-regular);color:var(--text-subtle)}.oc-actions{display:flex;align-items:center;gap:var(--s-2);margin-top:var(--s-5)}.oc-count{font-size:var(--fs-sm);color:var(--text-subtle);margin-bottom:var(--s-2)}.oc-year{font-family:var(--font-head);font-size:var(--fs-over);line-height:var(--lh-over);letter-spacing:var(--ls-over);font-weight:var(--fw-medium);color:var(--text-subtle);padding:var(--s-5) 0 var(--s-2) 34px}.oc-list>.oc-year:first-child{padding-top:0}.oc-row{position:relative;display:flex;gap:var(--s-4);padding-bottom:var(--s-5)}.oc-rail{position:relative;flex:0 0 auto;width:18px;margin-left:8px}.oc-rail:before{content:"";position:absolute;left:50%;top:20px;bottom:calc(var(--s-5) * -1);width:1.5px;transform:translate(-50%);background:var(--border)}.oc-row:last-child .oc-rail:before,.oc-row:has(+.oc-year) .oc-rail:before{display:none}.oc-rail:after{content:"";position:absolute;left:50%;top:8px;width:9px;height:9px;margin-left:-4.5px;border-radius:var(--r-full);background:var(--bg);box-shadow:0 0 0 2px var(--sp-blue)}.oc-body{flex:1;min-width:0;padding:var(--s-4) var(--s-5);border:1px solid var(--border);border-radius:var(--r-lg);transition:border-color var(--t-hover) var(--ease-out),background var(--t-hover) var(--ease-out)}.oc-row[data-editing] .oc-body{border-color:var(--sp-blue);background:var(--blue-tint)}.oc-row[data-flash] .oc-body{animation:oc-flash 1.2s var(--ease-out)}@keyframes oc-flash{0%{background:var(--blue-tint)}to{background:transparent}}.oc-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s-4)}.oc-exam{font-family:var(--font-head);font-size:var(--fs-h4);line-height:var(--lh-h4);font-weight:var(--fw-medium);color:var(--text-heading);min-width:0;overflow-wrap:anywhere}.oc-score{flex:0 0 auto;font-family:var(--font-head);font-size:1.5rem;font-weight:var(--fw-bold);line-height:1.1;color:var(--text-heading)}.oc-date{margin-top:4px;display:flex;align-items:center;flex-wrap:wrap;gap:var(--s-2);font-size:var(--fs-sm);color:var(--text-muted)}.oc-result{display:inline-block;padding:3px 10px;border-radius:var(--r-full);background:var(--status-ok-bg);color:var(--sp-navy);font-size:var(--fs-sm);font-weight:var(--fw-medium)}.oc-note{margin-top:8px;font-size:var(--fs-sm);line-height:var(--lh-sm);color:var(--text-muted)}.oc-tools{display:flex;gap:var(--s-3);margin-top:var(--s-3)}.oc-tool{font-family:var(--font-ui);font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text-link);background:none;border:0;padding:2px 0;cursor:pointer}.oc-tool--danger{color:var(--error)}@media (hover: hover) and (pointer: fine){.oc-tool:hover{text-decoration:underline}}.oc-confirm{display:flex;align-items:center;flex-wrap:wrap;gap:var(--s-3);margin-top:var(--s-3);padding:10px 14px;border-radius:var(--r-md);background:var(--error-bg);font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--error)}@media (prefers-reduced-motion: reduce){.oc-row[data-flash] .oc-body{animation:none}}.oc-list{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;max-width:820px}@media (min-width: 700px){.oc-list{grid-template-columns:repeat(2,minmax(0,1fr))}}.oc-year{grid-column:1 / -1;justify-self:start;margin:10px 0 0;padding:3px 8px;border-radius:3px;background:var(--sp-navy);color:var(--sp-white);font-size:.8125rem;font-weight:700;letter-spacing:.02em}.oc-row{margin:0;padding:16px 16px 12px;border:0;border-radius:4px;box-shadow:inset 0 0 0 1px var(--border-strong);background:var(--bg)}.oc-rail{display:none}.oc-head{align-items:flex-end}.oc-exam{font-size:1rem;font-weight:700;font-variation-settings:"SHRP" 100}.oc-body{padding:0;border:0;border-radius:0;background:none}.oc-score{font-size:clamp(1.25rem,1rem + 1.2vw,1.75rem);text-align:right;overflow-wrap:anywhere;font-weight:800;line-height:1;font-variation-settings:"SHRP" 100;color:var(--sp-blue)}.oc-result{border-radius:3px;background:var(--sp-navy);color:var(--sp-white)}.oc-tool{min-height:40px;border-radius:4px}.oc-form{max-width:820px;margin-bottom:20px}.oc-count{display:none}@media (min-width: 700px){.oc-year{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}}
