/* OCR layout; shared visual components are defined in application.css. */
.brand{text-decoration:none;color:inherit}
.ocr-user{margin-left:auto;display:flex;align-items:center;gap:16px}
.ocr-login{max-width:440px;margin:48px auto}
.ocr-login form{margin-top:24px}
.ocr-login h1{font-size:26px}
.ocr-login .primary{width:100%}
.ocr-note{font-size:13px;color:var(--muted);line-height:1.6;margin-top:20px}
.ocr-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr);gap:24px;align-items:start}
.ocr-grid p,.ocr-login p{line-height:1.6;color:var(--muted)}
.ocr-grid form{margin-top:24px}
.ocr-token-form{display:flex;gap:12px;align-items:flex-end}
.ocr-token-form .field{flex:1;min-width:0;margin-bottom:0}
.ocr-token-form button{flex-shrink:0}
.ocr-token-row{padding:20px 0;border-bottom:1px solid var(--line);display:flex;gap:16px;align-items:center}
.ocr-token-info{flex:1;min-width:0;overflow-wrap:anywhere}
.ocr-token-meta{font-size:13px;color:var(--muted);margin-top:6px;line-height:1.6}
.ocr-token-row button{color:#b04a40;flex-shrink:0}
#notice{padding:16px;margin-bottom:20px;border:1px solid var(--line);border-radius:8px;background:white;overflow-wrap:anywhere}
#notice.error{color:#a63f32;border-color:#e4b7b0}
#token-dialog{width:560px}
#token-dialog p{line-height:1.6}
#issued-token{width:100%;resize:none;min-height:80px;overflow-wrap:anywhere}
button:disabled{opacity:.5;cursor:default}
@media(max-width:850px){.ocr-grid{grid-template-columns:1fr}}
@media(max-width:600px){.ocr-user>span{display:none}header>span{display:none}.ocr-login{margin:16px auto}.ocr-token-form{align-items:stretch;flex-direction:column}.ocr-token-row{align-items:flex-start}.ocr-token-row button{min-width:80px}}
