.bank-upload{position:relative;display:inline-flex;align-items:center;overflow:hidden;cursor:pointer}
.bank-upload input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}
.bank-upload:focus-within{outline:2px solid #2563eb;outline-offset:3px}
.photo-mode{display:block;max-width:360px;margin:20px 0 12px}.photo-mode select{display:block;width:100%;margin-top:6px}
.photo-workbench{scroll-margin-top:20px;min-width:0}.photo-question-tabs{display:flex;gap:8px;overflow:auto;padding:12px 0 20px}
.photo-question-tabs button{flex-shrink:0}.photo-question-tabs [aria-current=page],[data-review-source] [aria-current=page]{background:#e8f0de;border-color:#627b4e;color:#293f2c}
.photo-review-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px}.photo-review-grid>section{min-width:0}
.photo-paper{position:relative;background:#f0f1ec;line-height:0}.photo-paper img{display:block;width:100%;height:auto}
.photo-region{position:absolute;box-sizing:border-box;border:3px dashed #c16b19;background:#f5c44119;pointer-events:none}
.photo-source{align-self:start;position:sticky;top:12px}.photo-review-result h4{margin-top:26px}.photo-review-result h5{font-size:1em}
.photo-review-result textarea{display:block;width:100%;box-sizing:border-box;resize:vertical;min-height:100px;font:inherit;padding:12px;border:1px solid #b9c6a9;border-radius:10px;margin:8px 0 12px}
.photo-review-result select{max-width:100%}.photo-review-result .math-prose{overflow-x:auto}.photo-verdict{font-size:1.25em;font-weight:700;color:#98481b}.photo-verdict[data-verdict=correct]{color:#345e3a}.photo-verdict[data-verdict=review]{color:#6b5c2e}
.photo-correction{border-left:3px solid #c66b3c;background:#fcf7ef;padding:14px 18px;margin:12px 0}.photo-followups{border-top:1px solid #d9dfd0;margin-top:28px;padding-top:8px}
.photo-followups article{padding:12px 0;border-bottom:1px solid #e2e5dd}.photo-correct-form{margin-top:24px}.photo-correct-form summary{cursor:pointer;padding:12px 0}
.photo-study{box-sizing:border-box;width:96vw;max-width:1400px;height:94vh;max-height:94vh;padding:12px;border:1px solid #b9c6a9;border-radius:12px}.photo-study[open]{display:flex;flex-direction:column;gap:10px}.photo-study::backdrop{background:#17251dbb}.photo-study>button{align-self:flex-start;flex-shrink:0}.photo-study iframe{flex:1;min-height:0;width:100%;border:0}
@media(max-width:860px){.photo-review-grid{grid-template-columns:minmax(0,1fr)}.photo-source{position:static}.photo-paper{max-width:600px;margin:auto}.photo-study{width:100vw;height:96vh;border-radius:6px;padding:8px}}
.bank-photos{display:flex;gap:16px;flex-wrap:wrap;padding:0;list-style:none}
.bank-photos li{display:grid;gap:8px;width:140px}
.bank-photos img{width:140px;height:180px;object-fit:contain;background:#f6f7f9;border:1px solid #e5e7eb;border-radius:6px}
.bank-question{border-top:1px solid #e5e7eb;padding:22px 0;overflow-wrap:anywhere}
.bank-text{white-space:pre-wrap;line-height:1.8;overflow-wrap:anywhere}
.bank-question textarea{display:block;width:100%;box-sizing:border-box;resize:vertical;font:inherit;padding:12px;border:1px solid #cbd5e1;border-radius:6px}
.bank-question form{max-width:850px}.bank-question label{display:block;margin:14px 0}
.bank-question select,[data-filter]{max-width:100%}
.bank-original{max-width:min(1000px,94vw);width:94vw;box-sizing:border-box;max-height:92vh;overflow:auto}
.bank-original img{display:block;max-width:100%;height:auto;margin:0 auto 24px}.bank-original::backdrop{background:#0008}
.bank-original>button{position:sticky;top:0;z-index:1}
@media(max-width:600px){.bank-photos{gap:12px}.bank-photos li,.bank-photos img{width:120px}.bank-photos img{height:155px}.bank-question input,.bank-question select{width:100%;box-sizing:border-box}}
.question-figures{margin:1rem 0;padding:1rem;background:#f5f8fc;border:1px solid #dce3ec;border-radius:12px;min-width:0}
.question-figures figure{margin:0 0 1rem;max-width:100%}
.question-figures figcaption{font-size:.85rem;color:#536078;margin-top:.4rem}
.question-figure-zoom{display:block;border:0;padding:0;background:#fff;max-width:100%;cursor:zoom-in}
.question-figure-zoom img{display:block;max-width:100%;max-height:480px;object-fit:contain;object-position:left top}
.question-figure-dialog{box-sizing:border-box;width:min(1000px,96vw);max-height:94dvh;overflow:auto;padding:20px;border:1px solid #ccd7e4;border-radius:16px}
.question-figure-dialog::backdrop{background:#11203388}
.question-figure-dialog img{display:block;max-width:100%;height:auto}
.question-figure-dialog [data-figure-status]{white-space:pre-wrap;color:#92400e}
.figure-selector{position:relative;max-width:720px;margin:1rem 0;touch-action:none;cursor:crosshair;user-select:none}
.figure-selector img{width:100%;pointer-events:none}
.figure-selector span{position:absolute;border:2px solid #d9480f;background:#ffb66b33;pointer-events:none;box-sizing:border-box}
.figure-coordinates{display:flex;flex-wrap:wrap;gap:10px;margin:.5rem 0}
.figure-coordinates label{width:130px}
.figure-coordinates input{width:100%;box-sizing:border-box}
@media(max-width:600px){.question-figures{padding:.6rem}.question-figure-dialog{padding:12px}.figure-coordinates label{width:calc(50% - 5px)}}
