/* The shared camera dialog owns its layout instead of inheriting form-dialog spacing. */
#invoice-scanner-dialog{width:min(640px,calc(100% - 32px));max-height:calc(100dvh - 32px);padding:0;overflow:hidden;background:#fff}
#invoice-scanner-dialog[open]{display:flex;flex-direction:column}
#invoice-scanner-dialog .dialog-header{flex:none;align-items:center;gap:16px;padding:16px 20px;border-bottom:1px solid var(--line)}
#invoice-scanner-dialog h2{margin:0;font-size:20px;line-height:1.25;letter-spacing:-.015em}
#invoice-scanner-dialog .dialog-header p{margin:6px 0 0;font-size:13px;line-height:1.4}
#invoice-scanner-dialog .icon-button{display:grid;place-items:center;flex:none;width:44px;min-width:44px;height:44px;min-height:44px;padding:10px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--muted)}
#invoice-scanner-dialog .invoice-scanner-body{display:grid;grid-template-rows:minmax(0,1fr) auto auto;flex:1 1 auto;height:min(62dvh,540px);min-height:0;gap:10px;padding:16px 20px 10px;overflow:hidden}
#invoice-scanner-dialog .invoice-scanner-viewport{position:relative;min-height:0;height:100%;overflow:hidden;border-radius:16px;background:#10203a}
#invoice-scanner-dialog video{display:block;width:100%;height:100%;min-height:0;max-height:none;object-fit:contain;border-radius:0}
#invoice-scanner-dialog .invoice-scanner-frame{inset:26% 11%;width:auto;height:auto;border:2px solid #fff;border-radius:12px;box-shadow:0 0 0 999px #101a2938}
#invoice-scanner-dialog .invoice-scanner-viewport[data-state="success"] .invoice-scanner-frame{border-color:#9ce8b9}
#invoice-scanner-dialog .invoice-scanner-tools{position:static;display:flex;justify-content:center;gap:8px;min-width:0}
#invoice-scanner-dialog .invoice-scanner-tools .button{flex:1;max-width:200px;min-width:0;min-height:44px;padding:8px 10px;font-size:14px;gap:6px;background:#f7faff}
#invoice-scanner-dialog svg{flex:none;width:20px;height:20px}
#invoice-scanner-dialog .invoice-scanner-status{min-height:20px;margin:0;padding:0;background:none;border-radius:0;text-align:center;color:var(--muted);font-size:13px;line-height:1.4;overflow-wrap:anywhere}
#invoice-scanner-dialog .invoice-scanner-feedback{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none;padding:12px}
#invoice-scanner-dialog .invoice-scanner-feedback[hidden]{display:none}
#invoice-scanner-dialog .scanner-feedback-content{display:flex;align-items:center;gap:12px;max-width:100%;padding:16px 20px;border-radius:16px;background:#fff;color:#1768ee;box-shadow:0 8px 28px #08132838}
#invoice-scanner-dialog .scanner-feedback-content>svg{width:32px;height:32px}
#invoice-scanner-dialog .scanner-feedback-content>div{min-width:0}
#invoice-scanner-dialog .scanner-feedback-content strong{display:block;font-size:21px;line-height:1.2;font-weight:750}
#invoice-scanner-dialog .scanner-feedback-content span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;margin-top:5px;color:var(--text);font-size:13px;line-height:1.35}
#invoice-scanner-dialog [data-state="success"] .scanner-feedback-content{color:#087a49}
#invoice-scanner-dialog [data-state="duplicate"] .scanner-feedback-content{color:#8b5200}
#invoice-scanner-dialog [data-state="error"] .scanner-feedback-content{color:#b52b3b}
#invoice-scanner-dialog .dialog-footer{flex:none;position:static;display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:12px 20px 16px;border-top:1px solid var(--line);background:#fff}
#invoice-scanner-dialog .dialog-footer .button{display:flex;align-items:center;justify-content:center;justify-self:stretch;gap:8px;min-width:0;min-height:48px;width:auto;margin:0;padding:10px 12px;font-size:14px;line-height:1.3;white-space:normal}
#invoice-scanner-dialog :focus-visible{outline:2px solid #1768ee;outline-offset:3px}
@media(max-width:700px){
 #invoice-scanner-dialog[open]{inset:0;width:100%;max-width:100%;height:100dvh;max-height:100dvh;margin:0;border:0;border-radius:0}
 #invoice-scanner-dialog .dialog-header{padding:calc(10px + env(safe-area-inset-top)) 14px 10px}
 #invoice-scanner-dialog .dialog-header p{display:none}
 #invoice-scanner-dialog .invoice-scanner-body{height:auto;padding:12px 12px 10px}
 #invoice-scanner-dialog .invoice-scanner-viewport{height:100%}
 #invoice-scanner-dialog .dialog-footer{padding:10px 12px calc(10px + env(safe-area-inset-bottom))}
}
@media(max-height:450px){
 #invoice-scanner-dialog .dialog-header{padding-top:6px;padding-bottom:6px}
 #invoice-scanner-dialog .invoice-scanner-body{gap:6px;padding-top:6px;padding-bottom:6px}
 #invoice-scanner-dialog .scanner-feedback-content{padding:10px 16px;gap:10px}
 #invoice-scanner-dialog .scanner-feedback-content strong{font-size:19px}
 #invoice-scanner-dialog .scanner-feedback-content>svg{width:24px;height:24px}
 #invoice-scanner-dialog .dialog-footer{padding-top:6px;padding-bottom:max(6px,env(safe-area-inset-bottom))}
}
