.aksharkosh-ocr { margin: 1.5em 0; font-family: inherit; color: inherit; }
.aksharkosh-ocr .ocr-heading h1 { margin: 0; }
.aksharkosh-ocr .ocr-heading p { margin: .2em 0 1em; font-size: 1.15em; }
.aksharkosh-ocr .ocr-note { max-width: 60rem; }
.aksharkosh-ocr .ocr-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.aksharkosh-ocr .ocr-panel { min-width: 0; padding: 1rem; border: 1px solid var(--aksharkosh-border, #d9dce8); border-radius: 10px; background: #fff; }
.aksharkosh-ocr .ocr-drop { display: flex; min-height: 9rem; flex-direction: column; align-items: center; justify-content: center; gap: .35rem; padding: 1rem; border: 2px dashed #abb1d8; border-radius: 8px; text-align: center; cursor: pointer; }
.aksharkosh-ocr .ocr-drop.ocr-over { border-color: var(--dl-accent, #3b47c4); background: #f5f6ff; }
.aksharkosh-ocr .ocr-drop small { opacity: .7; }
.aksharkosh-ocr input[type=file] { position: absolute; width: 1px; height: 1px; opacity: 0; }
.aksharkosh-ocr input[type=file]:focus-visible + .ocr-image { outline: 2px solid var(--dl-accent, #3b47c4); }
.aksharkosh-ocr .ocr-image { display: block; max-width: 100%; max-height: 28rem; margin: 1rem auto; object-fit: contain; }
.aksharkosh-ocr .ocr-image[hidden] { display: none; }
.aksharkosh-ocr .ocr-result label { display: block; margin-bottom: .5rem; font-weight: 600; }
.aksharkosh-ocr .ocr-result .ocr-lines { display: flex; align-items: center; gap: .4rem; font-weight: 400; }
.aksharkosh-ocr textarea { box-sizing: border-box; width: 100%; min-height: 20rem; padding: .75rem; border: 1px solid var(--aksharkosh-border, #d9dce8); border-radius: 6px; color: inherit; background: #fff; font: inherit; line-height: 1.7; resize: vertical; }
.aksharkosh-ocr .ocr-actions { display: flex; flex-wrap: wrap; gap: .5rem; }
.aksharkosh-ocr button { margin-top: .75rem; padding: .45em 1em; border: 1px solid var(--dl-accent, #3b47c4); border-radius: 999px; background: #fff; color: var(--dl-accent, #3b47c4); font: inherit; cursor: pointer; }
.aksharkosh-ocr button.ocr-primary { background: var(--dl-accent, #3b47c4); color: #fff; }
.aksharkosh-ocr button:disabled { opacity: .5; cursor: default; }
.aksharkosh-ocr button:focus-visible, .aksharkosh-ocr textarea:focus-visible, .aksharkosh-ocr .ocr-drop:focus-within { outline: 2px solid var(--dl-accent, #3b47c4); outline-offset: 2px; }
.aksharkosh-ocr .ocr-error { color: #b42318; }
.aksharkosh-ocr .ocr-status, .aksharkosh-ocr .ocr-usage { margin: .75rem 0 0; }
@media (max-width: 720px) { .aksharkosh-ocr .ocr-grid { grid-template-columns: 1fr; } }
