.scanPage{background:var(--background,var(--color-f4f6f5));min-height:100vh;color:var(--text,var(--color-17211d));gap:18px;padding:24px;display:grid}.scanHero{background:var(--panel,var(--color-ffffff));border:1px solid var(--border,var(--color-d9dfdc));border-radius:20px;justify-content:space-between;align-items:flex-start;gap:24px;width:100%;max-width:1440px;margin:0 auto;padding:24px;display:flex;box-shadow:0 14px 40px #121f1814}.scanHero h1{margin:.15rem 0 .55rem;font-size:clamp(2rem,4vw,3.3rem)}.scanHero p{max-width:780px;color:var(--muted,var(--color-5d6b64));margin:0;line-height:1.55}.scanEyebrow{text-transform:uppercase;letter-spacing:.13em;color:var(--theme-accent,var(--color-7d1818));margin:0;font-size:.72rem;font-weight:900}.scanAccess{text-align:right;justify-items:end;gap:8px;display:grid}.scanAccess span{font-weight:900}.scanAccess a{color:var(--theme-accent,var(--color-7d1818));font-weight:800}.scanNotice{border:1px solid var(--color-d99526);background:var(--color-fff8e8);border-radius:14px;width:100%;max-width:1440px;margin:0 auto;padding:13px 16px;font-weight:800}.scanNotice.success{border-color:var(--color-2c9863);background:var(--color-edf9f2)}.scanWorkspace{grid-template-columns:minmax(360px,.9fr) minmax(430px,1.1fr);align-items:start;gap:18px;width:100%;max-width:1440px;margin:0 auto;display:grid}.scanCard{background:var(--panel,var(--color-ffffff));border:1px solid var(--border,var(--color-d9dfdc));border-radius:20px;padding:20px;box-shadow:0 12px 32px #121f180f}.scanSectionHeading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.scanSectionHeading h2{margin:.2rem 0 0;font-size:1.35rem}.scanSectionHeading>span{color:var(--muted,var(--color-5d6b64));text-align:right;font-size:.78rem;font-weight:800}.scanCameraButton{text-align:center;border:2px dashed var(--theme-accent,var(--color-7d1818));background:var(--panel-2,var(--color-f7f9f8));cursor:pointer;border-radius:16px;gap:6px;padding:19px;display:grid}.scanCameraButton input{opacity:0;pointer-events:none;position:absolute}.scanCameraButton strong{font-size:1.05rem}.scanCameraButton span{color:var(--muted,var(--color-5d6b64));font-size:.8rem}.scanCameraButton.busy{opacity:.65;cursor:wait}.scanControls{gap:12px;margin-top:16px;display:grid}.scanControls label{grid-template-columns:auto 1fr auto;align-items:center;gap:10px;font-size:.8rem;font-weight:900;display:grid}.scanControls input[type=range]{width:100%}.scanRotation{flex-wrap:wrap;gap:8px;display:flex}.scanRotation button,.scanBusinessSwitch button{border:1px solid var(--border,var(--color-d9dfdc));background:var(--panel-2,var(--color-f7f9f8));color:var(--text,var(--color-17211d));cursor:pointer;border-radius:10px;padding:9px 12px;font-weight:800}.scanPreview{border:1px solid var(--border,var(--color-d9dfdc));background:var(--color-1f2421);border-radius:16px;place-items:center;min-height:420px;margin-top:16px;display:grid;position:relative;overflow:hidden}.scanPreview img{object-fit:contain;max-width:100%;max-height:70vh;display:block}.scanPreviewEmpty,.scanProcessing{color:var(--color-ffffff);text-align:center;place-items:center;gap:8px;padding:28px;display:grid}.scanPreviewEmpty span,.scanProcessing span{opacity:.72}.scanProcessing i{border:4px solid #ffffff4d;border-top-color:var(--color-ffffff);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite scanSpin}@keyframes scanSpin{to{transform:rotate(360deg)}}.scanDimensions{color:var(--muted,var(--color-5d6b64));text-align:right;margin-top:8px;display:block}.scanDetailsCard{gap:15px;display:grid}.scanBusinessSwitch{grid-template-columns:1fr 1fr;gap:8px;display:grid}.scanBusinessSwitch button.active{background:var(--theme-accent,var(--color-7d1818));border-color:var(--theme-accent,var(--color-7d1818));color:var(--theme-accent-text,var(--color-ffffff))}.scanBusinessSwitch button:disabled{cursor:not-allowed;opacity:.75}.scanDetailsCard label{color:var(--muted,var(--color-5d6b64));gap:6px;font-size:.78rem;font-weight:900;display:grid}.scanDetailsCard input,.scanDetailsCard select,.scanDetailsCard textarea{box-sizing:border-box;border:1px solid var(--border,var(--color-d9dfdc));background:var(--panel-2,var(--color-f7f9f8));width:100%;color:var(--text,var(--color-17211d));font:inherit;border-radius:11px;padding:11px 12px}.scanDetailsCard textarea{resize:vertical}.scanDetailsCard small{color:var(--color-b23e36);font-weight:700}.scanFieldGrid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.scanOcrStatus{border-radius:14px;gap:4px;padding:13px 15px;display:grid}.scanOcrStatus.ready{background:var(--color-edf9f2);border:1px solid var(--color-8bc7a7)}.scanOcrStatus.missing{background:var(--color-fff2ef);border:1px solid var(--color-e4a39c)}.scanOcrStatus span{color:var(--muted,var(--color-5d6b64));font-size:.78rem;line-height:1.45}.scanSubmit{background:var(--theme-accent,var(--color-7d1818));color:var(--theme-accent-text,var(--color-ffffff));cursor:pointer;border:0;border-radius:13px;padding:14px 18px;font-size:1rem;font-weight:900}.scanSubmit:disabled{opacity:.5;cursor:not-allowed}.scanResultCard{grid-template-columns:1fr auto;align-items:center;gap:18px;width:100%;max-width:1440px;margin:0 auto;display:grid}.scanResultCard h2{margin:.2rem 0}.scanResultCard p{color:var(--muted,var(--color-5d6b64));margin:0}.scanResultMeta{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.scanResultMeta span{background:var(--panel-2,var(--color-f7f9f8));border:1px solid var(--border,var(--color-d9dfdc));border-radius:999px;padding:7px 10px;font-size:.75rem;font-weight:900}.scanResultCard details{grid-column:1/-1}.scanResultCard li{margin:.35rem 0}@media (max-width:900px){.scanPage{padding:14px}.scanHero{padding:18px;display:grid}.scanAccess{text-align:left;justify-items:start}.scanWorkspace{grid-template-columns:1fr}.scanPreview{min-height:330px}.scanResultCard{grid-template-columns:1fr}.scanResultMeta{justify-content:flex-start}}@media (max-width:560px){.scanPage{padding:9px}.scanHero,.scanCard{border-radius:15px;padding:15px}.scanFieldGrid{grid-template-columns:1fr}.scanSectionHeading{display:grid}.scanSectionHeading>span{text-align:left}.scanControls label{grid-template-columns:1fr auto}.scanControls input[type=range]{grid-column:1/-1}.scanPreview{min-height:280px}.scanRotation{grid-template-columns:1fr 1fr;display:grid}.scanRotation button:last-child{grid-column:1/-1}}
