#login{display:grid;gap:8px;margin-top:24px}
#login label{display:block;font-size:13px;color:var(--muted);margin-top:8px}
#login input{display:block;box-sizing:border-box;width:100%;min-width:0;min-height:48px;border:1px solid var(--line);border-radius:12px;background:var(--raised);color:var(--ink);padding:12px 14px;font:inherit;font-size:16px}
#login input:focus-visible{outline:3px solid #aeb8ff;outline-offset:2px}
#login button{margin-top:16px}
#login[hidden]{display:none}
#message{overflow-wrap:anywhere}

.conflict-panel{padding:16px;margin-bottom:14px;border:1px solid var(--warning);border-radius:14px;color:var(--warning);font-size:13px;line-height:1.5}
.ai-open{margin:0 0 14px}.ai-photos{display:flex;gap:8px;flex-wrap:wrap}.ai-photos>div{position:relative;width:80px;height:80px}.ai-photos img{width:100%;height:100%;object-fit:cover;border-radius:10px}.ai-photos button{position:absolute;right:0;top:0;min-height:32px;padding:2px 10px}.ai-upload{display:flex;gap:8px;margin-top:16px}.ai-upload label{position:relative;flex:1;text-align:center;overflow:hidden;font-size:13px}.ai-upload input{position:absolute;inset:0;opacity:0;width:100%;cursor:pointer}.ai-result{margin-top:18px;font-size:13px;overflow-wrap:anywhere}.ai-result p{white-space:pre-wrap}.conflict-dialog{color:var(--ink);background:var(--surface)}

.receipt-history{padding:14px;border:1px solid var(--line);border-radius:14px;margin:14px 0;font-size:13px}.receipt-history summary{cursor:pointer;min-height:32px;line-height:32px}.receipt-history p{margin:6px 0}.posting-preview{margin-top:16px;font-size:13px;overflow-wrap:anywhere}.posting-preview h3{font-size:14px;margin-top:20px}.posting-preview p{line-height:1.5}

.posting-confirm{width:min(420px,calc(100vw - 48px));box-sizing:border-box;border:1px solid var(--line);border-radius:20px;padding:22px}.posting-confirm h2{font-size:18px}.posting-confirm p{white-space:pre-line;line-height:1.7;font-size:14px}.posting-confirm::backdrop{background:#0009}

.preview-label:empty{display:none}

.ai-upload{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;gap:10px}.ai-upload label.secondary{display:flex;align-items:center;justify-content:center;min-width:0;min-height:48px;margin:0;padding:12px 10px;font-size:13px;line-height:1.25;font-weight:600;text-align:center}.ai-upload input{height:100%;margin:0}.ai-upload label:focus-within{outline:2px solid #aeb8ff;outline-offset:2px}

.crop-dialog{width:min(460px,calc(100vw - 24px));padding:18px;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:18px;max-height:94dvh;overflow:auto}.crop-dialog h2{font-size:18px;margin:0 0 8px}.crop-dialog>.notice{margin:0 0 14px}.crop-stage{position:relative;overflow:hidden;touch-action:none;background:#0b0d10;margin:0 auto;border-radius:8px}.crop-stage>img{width:100%;height:100%;max-height:none;max-width:none;display:block;margin:0;object-fit:fill;pointer-events:none;user-select:none}.crop-selection{position:absolute;border:2px solid #fff;box-shadow:0 0 0 9999px #0009;touch-action:none;cursor:move}.crop-selection>span{position:absolute;width:36px;height:36px;touch-action:none}.crop-selection>span:after{content:'';display:block;width:12px;height:12px;background:#8e95f0;border:2px solid #fff;border-radius:3px;position:absolute}.crop-selection [data-corner=nw]{left:0;top:0}.crop-selection [data-corner=ne]{right:0;top:0}.crop-selection [data-corner=sw]{left:0;bottom:0}.crop-selection [data-corner=se]{right:0;bottom:0}.crop-selection [data-corner=ne]:after,.crop-selection [data-corner=se]:after{right:0}.crop-selection [data-corner=sw]:after,.crop-selection [data-corner=se]:after{bottom:0}.crop-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.crop-actions button{min-height:46px}.ai-photos>div{width:96px;height:104px}.ai-photos .ai-crop-thumb{position:relative;inset:auto;width:96px;height:104px;padding:0;border:0;border-radius:10px;overflow:hidden;background:var(--raised);color:var(--ink)}.ai-crop-thumb img{width:100%;height:80px;border-radius:0;object-fit:cover}.ai-crop-thumb>span{display:block;font-size:10px;line-height:24px;text-align:center}.ai-photos>div>.secondary{z-index:1;right:3px;top:3px;width:30px;height:30px;padding:0;min-height:30px;background:#171c23dd}

.connection-status{display:grid;gap:6px;margin:0 0 14px;padding:12px;border:1px solid #efb07340;border-radius:12px;background:#efb0730a;color:var(--warning);font-size:12px;line-height:1.5}.connection-status>strong{font-size:13px}.connection-status .secondary{min-height:40px;padding:8px 12px;margin-top:4px;font-size:12px}
.crop-rotation{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0}.crop-rotation .secondary{min-height:44px;margin:0;padding:8px;font-size:14px}[data-reconcile-status]{font-weight:600;overflow-wrap:anywhere}
