:root{color:#17312d;font-synthesis:none;background:#f6f2e9;font-family:Georgia,Times New Roman,serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{width:min(1100px,100%);min-height:100svh;margin:auto;padding:34px clamp(18px,4vw,54px) 56px}.app-header{border-bottom:2px solid #17312d;justify-content:space-between;align-items:start;gap:24px;padding-bottom:25px;display:flex}.eyebrow{color:#a33b26;text-transform:uppercase;margin:0 0 7px;font-family:ui-monospace,Consolas,monospace;font-size:.8rem;font-weight:600}h1{letter-spacing:0;margin:0;font-size:clamp(2rem,5vw,3.8rem);line-height:1}h2{margin:24px 0 12px;font-size:1rem}.app-header p:not(.eyebrow){color:#51645f;margin:11px 0 0}.catalog-link,.ai-info-link{color:#a33b26;font-family:ui-sans-serif,system-ui,sans-serif;font-size:.8rem;font-weight:700}.catalog-link{margin-top:12px;display:inline-block}.language{color:#51645f;gap:6px;font-family:ui-sans-serif,system-ui,sans-serif;font-size:.8rem;font-weight:600;display:grid}.language select{min-width:70px}.tabs{border-bottom:1px solid #b8c4bb;gap:4px;margin:26px 0;display:flex}.tabs button{color:#51645f;background:0 0;border:0;border-bottom:3px solid #0000;padding:11px 15px;font-family:ui-sans-serif,system-ui,sans-serif;font-weight:700}.tabs button[aria-selected=true]{color:#17312d;border-color:#a33b26}.workspace{background:#fffdf8;border:1px solid #d6d3c9;padding:clamp(18px,3vw,30px)}.ai-picker{border-top:1px solid #d6d3c9;grid-template-columns:minmax(180px,1fr) minmax(180px,2fr) auto;gap:10px;margin-top:22px;padding-top:20px;display:grid}.selected-ai-fields{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.ai-picker button{color:#17312d;background:#fff;border:1px solid #17312d;border-radius:3px;padding:8px 12px;font-weight:700}.ai-info-link{white-space:nowrap;align-self:center}.generic-warning{color:#8b6414;font-size:.78rem}.form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}label{color:#28413b;gap:7px;font-family:ui-sans-serif,system-ui,sans-serif;font-size:.86rem;font-weight:700;display:grid}label.wide{grid-column:span 3}input,select,textarea{color:#17312d;background:#fff;border:1px solid #9daea4;border-radius:3px;width:100%;padding:10px}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible{outline-offset:2px;outline:3px solid #e6b642}.primary-action{color:#fff;background:#17312d;border:0;border-radius:3px;margin-top:22px;padding:12px 17px;font-family:ui-sans-serif,system-ui,sans-serif;font-weight:700}.compact{max-width:720px}.field-help{color:#51645f;font-size:.78rem;font-weight:400}.scan-controls{flex-wrap:wrap;align-items:center;gap:10px;margin-top:18px;display:flex}.scan-controls input[type=file]{width:auto;max-width:100%;padding:7px}.scan-controls button{color:#fff;background:#17312d;border:1px solid #17312d;border-radius:3px;padding:8px 12px;font-family:ui-sans-serif,system-ui,sans-serif;font-weight:700}.camera-preview{background:#17312d;border-radius:3px;width:min(100%,460px)}.notice{color:#51645f;margin:20px 0 0}.result{margin-top:20px}.message,.error-list{overflow-wrap:anywhere;background:#fff;border-left:4px solid;margin:0 0 12px;padding:12px 14px;font-family:ui-monospace,Consolas,monospace;font-size:.84rem}.success{border-color:#39805c}.error,.error-list{color:#702417;border-color:#b74732}.notice{border-color:#d29a22}.error-list{padding-left:32px}.qr-preview{width:min(320px,100%);image-rendering:pixelated;border:1px solid #d6d3c9;margin:18px 0;display:block}.downloads{flex-wrap:wrap;gap:9px;display:flex}.downloads button{color:#17312d;background:0 0;border:1px solid #17312d;border-radius:3px;padding:8px 11px;font-family:ui-monospace,Consolas,monospace;font-size:.78rem}.analysis-output dl{background:#fffdf8;border:1px solid #d6d3c9;grid-template-columns:max-content 1fr;margin:0;display:grid}.analysis-output dt,.analysis-output dd{border-bottom:1px solid #e6e1d6;margin:0;padding:9px 12px;font-family:ui-monospace,Consolas,monospace;font-size:.84rem}.analysis-output dt{background:#f0ede4;font-weight:700}@media (width<=720px){.app-shell{padding-top:22px}.app-header{flex-direction:column}.form-grid,.selected-ai-fields{grid-template-columns:1fr}label.wide{grid-column:auto}.ai-picker{grid-template-columns:1fr}.tabs{overflow-x:auto}.tabs button{white-space:nowrap}}
