.sample-scanner-runtime{position:absolute;inset:0;z-index:24;pointer-events:none}.sample-scanner-target,.sample-scanner-display,.sample-scanner-source{position:absolute;box-sizing:border-box;left:var(--region-x);top:var(--region-y);width:var(--region-width);height:var(--region-height)}.sample-scanner-target{display:grid;place-items:center;overflow:hidden;border:2px dashed rgba(79,187,244,.72);border-radius:10px;background:rgba(30,130,190,.08);color:#fff;font-size:.62rem;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.sample-scanner-target i{position:absolute;inset:18%;border:2px solid rgba(186,224,245,.5);border-radius:6px;transition:transform .5s ease,opacity .35s ease}.sample-scanner-display{display:grid;place-items:center;overflow:hidden;border:1px solid rgba(73,184,244,.38);border-radius:5px;background:rgba(3,20,31,.28);color:#d9f3ff}.sample-scanner-display.is-author{border:2px solid #d7b264;background:rgba(8,30,44,.48)}.sample-scanner-display>b{padding:3px 5px;border-radius:4px;background:#d7b264;color:#10283c;font-size:.52rem}.sample-scanner-display>[data-sample-scanner-result]{display:grid;width:100%;height:100%;place-items:center;overflow:hidden}.sample-scanner-display img{display:block;width:100%;height:100%;object-fit:contain;background:#06121c}.sample-scanner-display.has-result{box-shadow:inset 0 0 18px rgba(71,187,245,.2)}.sample-scanner-status{display:grid;gap:2px;place-items:center;padding:5%;color:#dff5ff;text-align:center;text-shadow:0 1px 3px #000}.sample-scanner-status strong{font-size:clamp(.42rem,1.15vw,.88rem);letter-spacing:.08em}.sample-scanner-status span,.sample-scanner-status small{font-size:clamp(.3rem,.7vw,.58rem)}.sample-scanner-source{padding:0;border:1px solid transparent;border-radius:7px;background:transparent;pointer-events:auto;cursor:grab;touch-action:none}.sample-scanner-source>span{position:absolute;inset:0;overflow:hidden;border-radius:6px;box-shadow:0 6px 14px rgba(0,0,0,.28)}.sample-scanner-source img{position:absolute;left:var(--crop-left);top:var(--crop-top);width:var(--crop-width);height:var(--crop-height);max-width:none;object-fit:fill;pointer-events:none}.sample-scanner-source>b{position:absolute;left:50%;bottom:-18px;padding:2px 5px;border-radius:5px;background:rgba(4,20,32,.86);color:#fff;font-size:.5rem;transform:translateX(-50%);white-space:nowrap}.sample-scanner-source>i{position:absolute;right:-6px;top:-6px;z-index:2;display:none;width:18px;height:18px;border-radius:50%;background:#2b9569;color:#fff;font-size:.68rem;font-style:normal;line-height:18px;text-align:center}.sample-scanner-source.is-scanned>i{display:block}.sample-scanner-source.is-author{border-color:#d7b264}.sample-scanner-ghost{z-index:70;left:0;top:0;transform:translate(-50%,-50%) scale(1.06);filter:drop-shadow(0 12px 16px rgba(0,0,0,.48));transition:all .26s ease}.sample-scanner-ghost.is-returning{opacity:0;transform:translate(-50%,-50%) scale(.7)}.sample-scanner-ghost.is-loading{left:calc(var(--target-x,75%));top:calc(var(--target-y,50%));opacity:0;transform:translate(28px,-50%) scale(.72)}.sample-scanner-runtime.is-scanning .sample-scanner-target{box-shadow:0 0 24px rgba(72,190,255,.7);animation:scanner-pulse .55s ease-in-out infinite alternate}.sample-scanner-runtime.is-scanning .sample-scanner-target i{transform:translateX(35%);opacity:.4}.sample-scanner-scanline{display:grid;width:100%;height:100%;place-items:center;background:linear-gradient(180deg,transparent 40%,rgba(77,199,255,.42) 50%,transparent 60%);background-size:100% 35%;color:#dff7ff;font-size:.52rem;font-weight:850;letter-spacing:.08em;animation:scanner-sweep .75s linear infinite}.sample-scanner-machine-status{position:absolute;right:2%;top:2%;display:grid;gap:1px;padding:5px 8px;border:1px solid rgba(106,200,246,.5);border-radius:7px;background:rgba(2,19,30,.82);color:#e3f8ff;font-size:.53rem;letter-spacing:.05em}.sample-scanner-machine-status span{color:#a6cfdf;font-size:.46rem}.sample-scanner-return{position:absolute;right:2%;bottom:2%;padding:6px 9px;border:1px solid #d7b264;border-radius:7px;background:#102d43;color:#fff;font-size:.58rem;font-weight:800;pointer-events:auto}.sample-scanner-region-draft{position:absolute;border:2px solid #67c8ff;border-radius:7px;background:rgba(75,184,242,.15)}
@keyframes scanner-pulse{to{background:rgba(58,179,242,.25)}}@keyframes scanner-sweep{to{background-position:0 140%}}
.sample-scanner-config{gap:14px}.sample-scanner-config>header>div{display:grid}.sample-scanner-config>header small{color:#667d8c;font-size:.68rem}.sample-scanner-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin:0;padding:0;list-style:none}.sample-scanner-steps li{display:grid;grid-template-columns:24px 1fr;gap:2px 6px;align-items:center;padding:9px;border:1px solid #dbe4ea;border-radius:9px;background:#f7f9fb}.sample-scanner-steps li>span{grid-row:1/3;display:grid;width:24px;height:24px;place-items:center;border-radius:50%;background:#dce6ec;color:#3b586b;font-size:.68rem;font-weight:850}.sample-scanner-steps strong{font-size:.65rem}.sample-scanner-steps small{color:#6d808d;font-size:.58rem}.sample-scanner-steps .is-complete>span{background:#28845f;color:#fff}.sample-scanner-steps .is-current{border-color:#d7b264;background:#fff9e9}.sample-scanner-config>section{display:grid;gap:8px;padding:12px;border:1px solid #dce5ea;border-radius:10px;background:#fbfcfd}.sample-scanner-config>section>header{display:flex;justify-content:space-between;gap:8px}.sample-scanner-config>section>header strong{font-size:.7rem;letter-spacing:.03em}.sample-scanner-config>section>header span,.sample-scanner-config>section>p{margin:0;color:#657c8c;font-size:.65rem}.sample-scanner-screen-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.sample-scanner-cards{display:grid;gap:8px}.sample-scanner-card{border:1px solid #dbe4ea;border-radius:9px;background:#fff}.sample-scanner-summary{display:flex;width:100%;align-items:center;justify-content:space-between;padding:10px;border:0;background:transparent;color:#16364e;text-align:left}.sample-scanner-summary span{font-size:.65rem}.sample-scanner-card.is-ready .sample-scanner-summary span{color:#247252}.sample-scanner-card.is-incomplete .sample-scanner-summary span{color:#955d19}.sample-scanner-sample-workflow{display:grid;gap:10px;padding:11px;border-top:1px solid #e2e8ed}.sample-scanner-mini-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.sample-scanner-mini-steps span{padding:5px;border-radius:6px;background:#edf2f5;color:#6a7d8a;font-size:.58rem;font-weight:850;text-align:center}.sample-scanner-mini-steps .active{background:#fff1c9;color:#6b4c08}.sample-scanner-mini-steps .done{background:#dcefe7;color:#246f50}.sample-scanner-sample-workflow label{display:grid;gap:4px;color:#506a7b;font-size:.65rem;font-weight:750}.sample-scanner-sample-workflow input,.sample-scanner-config select{width:100%;box-sizing:border-box;padding:8px;border:1px solid #c5d3dc;border-radius:7px}.sample-scanner-sample-workflow fieldset{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:0;padding:11px;border:1px solid #d9e3e9;border-radius:9px}.sample-scanner-sample-workflow legend{color:#18374e;font-size:.68rem;font-weight:850}.sample-scanner-upload img{width:90px;height:58px;border-radius:6px;object-fit:contain;background:#07131c}.sample-scanner-missing{margin:0;padding-left:18px;color:#85521b;font-size:.66rem}.sample-scanner-authoring-status{border-style:solid}
.sample-scanner-current-step{display:grid;gap:10px;padding:12px;border:1px solid #d8e2e8;border-radius:9px;background:#fbfcfd}.sample-scanner-current-step>header{display:grid;gap:3px}.sample-scanner-current-step>header strong{color:#17364e;font-size:.7rem;letter-spacing:.03em}.sample-scanner-current-step>header span{color:#607888;font-size:.65rem}.sample-scanner-current-step>.primary-action{justify-self:start}
.sample-scanner-sample-workflow fieldset.sample-scanner-result-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.sample-scanner-result-cards>section{display:grid;grid-template-rows:auto minmax(150px,1fr) auto auto;gap:8px;min-width:0;padding:10px;border:1px solid #d9e3e9;border-radius:10px;background:#f8fafb}.sample-scanner-result-cards>section>header{display:grid;grid-template-columns:1fr auto;gap:2px 8px}.sample-scanner-result-cards>section>header b{grid-column:1/-1;color:#668091;font-size:.56rem;letter-spacing:.08em}.sample-scanner-result-cards>section>header strong{color:#15364e;font-size:.72rem}.sample-scanner-result-cards>section>header small{color:#247252;font-size:.58rem;font-weight:850}.sample-scanner-result-cards p{margin:0;color:#687e8d;font-size:.6rem}.sample-scanner-card-preview{display:grid;min-height:150px;place-items:center;overflow:hidden;border:1px solid #203f52;border-radius:8px;background:#06151f;color:#adc3cf;font-size:.62rem;text-align:center}.sample-scanner-card-preview>img{display:block;width:100%;height:100%;object-fit:contain}.sample-scanner-result-cards .sample-scanner-upload{position:relative;display:block;padding:7px;border:1px solid #c8d6de;border-radius:7px;background:#fff;color:#23475e;text-align:center;cursor:pointer}.sample-scanner-result-cards .sample-scanner-upload input{position:absolute;width:1px;height:1px;opacity:0}.sample-scanner-lab-panel{display:grid;width:100%;height:100%;box-sizing:border-box;align-content:center;gap:8px;padding:9%;background:radial-gradient(circle at 50% 20%,#12394b,#061823 70%);color:#dff7ff;text-align:left}.sample-scanner-lab-panel header{display:flex;justify-content:space-between;gap:5px;color:#75c8ed;font-size:clamp(.28rem,.55vw,.5rem);letter-spacing:.07em}.sample-scanner-lab-panel header b{color:#67e0a4}.sample-scanner-lab-panel>strong{overflow:hidden;color:#fff;font-size:clamp(.5rem,1.15vw,.95rem);letter-spacing:.08em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.sample-scanner-wave{display:flex;height:25%;min-height:18px;align-items:end;justify-content:space-around;border-block:1px solid rgba(92,196,241,.2)}.sample-scanner-wave i{width:5%;height:35%;border-radius:2px 2px 0 0;background:#54c6f3;box-shadow:0 0 5px rgba(84,198,243,.6)}.sample-scanner-wave i:nth-child(2),.sample-scanner-wave i:nth-child(6){height:72%}.sample-scanner-wave i:nth-child(3),.sample-scanner-wave i:nth-child(7){height:48%}.sample-scanner-wave i:nth-child(4){height:90%}.sample-scanner-wave i:nth-child(5){height:60%}.sample-scanner-wave+dl{display:grid;gap:3px;margin:0}.sample-scanner-wave+dl div{display:flex;justify-content:space-between;gap:4px;border-top:1px solid rgba(142,205,232,.15);padding-top:3px;font-size:clamp(.25rem,.5vw,.44rem)}.sample-scanner-wave+dl dt{color:#88aebe}.sample-scanner-wave+dl dd{margin:0;color:#78e5ad;font-weight:850}.sample-scanner-specimen{position:relative;width:100%;height:100%;min-height:120px;overflow:hidden;background:#06121c}.sample-scanner-specimen>span{position:absolute;inset:0;overflow:hidden}.sample-scanner-specimen img{position:absolute;left:var(--crop-left);top:var(--crop-top);width:var(--crop-width);height:var(--crop-height);max-width:none}.sample-scanner-specimen footer{position:absolute;right:0;bottom:0;left:0;display:grid;padding:7px 9px;background:linear-gradient(transparent,rgba(3,17,26,.94));color:#fff;text-align:left}.sample-scanner-specimen footer strong{font-size:clamp(.42rem,.85vw,.72rem)}.sample-scanner-specimen footer small{color:#74dfa8;font-size:clamp(.28rem,.5vw,.46rem);font-weight:850;letter-spacing:.08em}
.sample-scanner-display>[data-sample-scanner-result]>img{object-fit:cover}.sample-scanner-runtime.is-dragging-sample .sample-scanner-target{border-color:rgba(116,213,255,.95);box-shadow:0 0 24px rgba(72,190,255,.7);animation:scanner-pulse .55s ease-in-out infinite alternate}.sample-scanner-ghost{left:auto;top:auto;transition:left .26s ease,top .26s ease,opacity .26s ease,transform .26s ease}.sample-scanner-ghost.is-loading{left:var(--target-x,75%)!important;top:var(--target-y,50%)!important;transform:translate(-50%,-50%) scale(.72)}.sample-scanner-idle{display:grid;gap:4px;place-items:center;padding:8%;color:#b8d3df;text-align:center}.sample-scanner-idle strong{font-size:clamp(.34rem,.72vw,.6rem);letter-spacing:.08em}.sample-scanner-idle span{color:#7194a4;font-size:clamp(.28rem,.55vw,.48rem)}
.sample-scanner-progress-panel{display:grid;width:100%;height:100%;box-sizing:border-box;align-content:center;gap:4px;padding:7%;background:radial-gradient(circle at 50% 18%,#12394b,#061823 72%);color:#dff7ff;text-align:center}.sample-scanner-progress-panel header{color:#73c5e9;font-size:clamp(.25rem,.48vw,.42rem);letter-spacing:.09em}.sample-scanner-progress-panel>strong{font-size:clamp(.3rem,.58vw,.5rem);letter-spacing:.08em}.sample-scanner-progress-panel>b{color:#93aebb;font-size:clamp(.27rem,.5vw,.43rem);letter-spacing:.06em}.sample-scanner-progress-panel output{color:#fff;font-size:clamp(.7rem,1.7vw,1.35rem);font-weight:900}.sample-scanner-progress-track{display:block;height:4px;overflow:hidden;border-radius:4px;background:#17394a}.sample-scanner-progress-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#45b9ee,#69e4a6);transition:width .35s ease}.sample-scanner-progress-panel dl{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin:0}.sample-scanner-progress-panel dl div{display:grid;padding:3px;border:1px solid rgba(119,194,226,.18);border-radius:4px}.sample-scanner-progress-panel dt{color:#83a4b2;font-size:clamp(.2rem,.4vw,.34rem)}.sample-scanner-progress-panel dd{margin:0;color:#fff;font-size:clamp(.3rem,.55vw,.48rem);font-weight:850}.sample-scanner-progress-panel footer{color:#6ee0a5;font-size:clamp(.22rem,.42vw,.37rem);font-weight:850;letter-spacing:.06em}
@media(max-width:850px){.sample-scanner-steps{grid-template-columns:1fr}.sample-scanner-screen-actions,.sample-scanner-sample-workflow fieldset{grid-template-columns:1fr}.sample-scanner-machine-status{font-size:.45rem}}
