.homework-photo-box{margin-top:12px;border:1px solid #cbd5e1;border-radius:10px;padding:12px;background:#f8fafc;color:#1e293b}
.homework-photo-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:8px 0;overflow-wrap:anywhere}
.homework-photo-state{display:inline-block;border-radius:6px;padding:4px 9px;font-size:13px}.homework-photo-state.done{color:#166534;background:#dcfce7}.homework-photo-state.pending{color:#9a3412;background:#ffedd5}
.homework-photo-upload{position:relative;display:inline-flex;align-items:center;min-height:42px;padding:8px 16px;border-radius:8px;background:#2563eb;color:#fff;font-weight:700;cursor:pointer;overflow:hidden}.homework-photo-upload input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.homework-photo-upload:focus-within{outline:3px solid #93c5fd;outline-offset:2px}.homework-photo-upload:has(input:disabled){opacity:.5;cursor:wait}
.homework-photo-chip{display:inline-flex;flex-wrap:wrap;border:1px solid #cbd5e1;border-radius:8px;overflow:hidden}.homework-photo-chip button{border:0;background:#fff;color:#1d4ed8;padding:9px;font:inherit;font-size:12px;cursor:pointer}.homework-photo-chip button+button{border-left:1px solid #cbd5e1;color:#b91c1c}
.homework-photo-message{font-size:12px;overflow-wrap:anywhere}.homework-photo-message.error{color:#b91c1c}.homework-photo-status-list{margin-top:12px}.homework-photo-status-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(130px,1fr);gap:12px;padding:12px 0;border-top:1px solid var(--bd,#cbd5e1);overflow-wrap:anywhere}.homework-photo-status-row small{color:var(--tx3,#64748b)}
.homework-photo-dialog{position:fixed;inset:0;margin:auto;border:1px solid #475569;border-radius:12px;background:#111827;color:#fff;padding:14px;width:min(900px,94vw);max-height:92vh;overflow:auto}.homework-photo-dialog::backdrop{background:rgba(0,0,0,.7)}.homework-photo-dialog img{display:block;max-width:100%;max-height:75vh;object-fit:contain;margin:auto}.homework-photo-dialog .homework-photo-actions{justify-content:space-between}.homework-photo-box .btn{background:#e2e8f0;color:#1e293b}
@media(max-width:480px){.homework-photo-status-row{grid-template-columns:minmax(0,1fr)}.homework-photo-box{padding:10px}.homework-photo-dialog{padding:10px}}
